*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0f;--bg2:#13131a;--border:#2a2a3a;--text:#c8c8d8;--text-h:#f0f0ff;--green:#22c55e;--yellow:#eab308;--orange:#f97316;--red:#ef4444;--accent:#6366f1;--accent2:#818cf8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:var(--bg);color:var(--text);line-height:1.6}a{color:var(--accent2);text-decoration:none}a:hover{text-decoration:underline}.nav{border-bottom:1px solid var(--border);background:var(--bg);z-index:10;justify-content:space-between;align-items:center;padding:1.25rem 2rem;display:flex;position:sticky;top:0}.logo{color:var(--text-h);align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;display:flex}.dot{background:var(--green);border-radius:50%;width:8px;height:8px;display:inline-block}.nav-links{align-items:center;gap:1.5rem;display:flex}.nav-links a,.btn-link{color:var(--text);cursor:pointer;background:0 0;border:none;font-size:.9rem}.cta{background:var(--accent);border-radius:6px;padding:.4rem .9rem;font-size:.85rem;color:#fff!important}.nav-burger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:4px;width:32px;height:32px;padding:0;display:none}.nav-burger span{background:var(--text-h);border-radius:2px;width:100%;height:2px}@media (width<=720px){.nav{flex-wrap:wrap;padding:1rem 1.25rem}.nav-burger{display:flex}.nav-links{flex-direction:column;order:3;align-items:flex-start;gap:0;width:100%;display:none}.nav-links-open{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem;display:flex}.nav-links a,.nav-links button{width:100%;padding:.6rem 0}.nav-links .cta{width:auto;margin-top:.5rem}}.btn{cursor:pointer;border:none;border-radius:8px;padding:.65rem 1.4rem;font-size:.95rem;font-weight:500;display:inline-block}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:#4f46e5;text-decoration:none}.btn-ghost{color:var(--text-h);border:1px solid var(--border);background:0 0}.btn-ghost:hover{border-color:var(--accent2);color:var(--accent2);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.hero{text-align:center;max-width:780px;margin:5rem auto;padding:0 2rem}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--accent2);font-size:.75rem}.hero h1{color:var(--text-h);margin:1rem 0;font-size:clamp(2rem,5vw,3.5rem);line-height:1.15}.accent{color:var(--accent2)}.lead{color:var(--text);max-width:580px;margin:0 auto 2rem;font-size:1.1rem}.actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.banner{background:#1a1a2e;border:1px solid #2d2d5e;border-radius:8px;max-width:900px;margin:0 auto 2rem;padding:1rem 1.5rem;font-size:.9rem}.stats-strip{flex-wrap:wrap;gap:2px;max-width:900px;margin:0 auto 3rem;display:flex}.stat{background:var(--bg2);text-align:center;border:1px solid var(--border);flex:1;min-width:140px;padding:1.5rem 1rem}.value{font-size:1.6rem;font-weight:700}.value.green{color:var(--green)}.value.yellow{color:var(--yellow)}.value.orange{color:var(--orange)}.value.red{color:var(--red)}.value.blue{color:var(--accent2)}.label{color:var(--text);margin-top:.25rem;font-size:.8rem}section{max-width:1000px;margin:0 auto;padding:4rem 2rem}.alt{background:var(--bg2);max-width:100%}.alt>*{max-width:1000px;margin:0 auto;padding:4rem 2rem}.section-head{text-align:center;margin-bottom:2.5rem}.section-head h2{color:var(--text-h);margin:.5rem 0;font-size:1.8rem}.section-head p{color:var(--text);max-width:560px;margin:0 auto}.grid{gap:1rem;display:grid}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:1.5rem}.card h3{color:var(--text-h);margin-bottom:.5rem}.icon{margin-bottom:.75rem;font-size:1.5rem}.price-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:2rem}.price-card.featured{border-color:var(--accent)}.price-card h3{color:var(--text-h);margin-bottom:.5rem}.price{color:var(--text-h);margin:1rem 0;font-size:2rem;font-weight:700}.price span{color:var(--text);font-size:1rem;font-weight:400}.price-card ul{flex-direction:column;gap:.5rem;margin:1rem 0 1.5rem;list-style:none;display:flex}.price-card li:before{content:"✓ ";color:var(--green)}.disclaimer{background:var(--bg2);border:1px solid var(--border);max-width:900px;color:var(--text);border-radius:8px;margin:2rem auto;padding:1rem 1.5rem;font-size:.8rem}footer{text-align:center;border-top:1px solid var(--border);color:var(--text);padding:2rem;font-size:.85rem}footer a{color:var(--text)}.backtest-chart{background:var(--bg2);border:1px solid var(--border);border-radius:12px;max-width:960px;margin:0 auto 2rem;padding:1.5rem}.backtest-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.backtest-toggle{border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.backtest-toggle button{background:var(--bg);color:var(--text);cursor:pointer;border:none;padding:.5rem .9rem;font-size:.82rem}.backtest-toggle button.active{background:var(--accent);color:#fff}.backtest-toggle button:disabled{cursor:default}.backtest-profile-toggle{flex-wrap:wrap;overflow:visible}.backtest-profile-toggle button{border-right:1px solid var(--border)}.backtest-profile-toggle button:last-child{border-right:none}.profile-badge{color:#e0a800}.strategy-verdict{background:var(--bg);border:1px solid var(--border);border-radius:10px;margin-bottom:1rem;padding:1rem 1.25rem}.strategy-verdict-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.strategy-verdict-title{color:var(--text);font-size:.9rem}.strategy-verdict-title strong{color:var(--text-h)}.strategy-badge{color:var(--accent2);border:1px solid var(--accent);background:#6366f126;border-radius:6px;padding:.2rem .6rem;font-size:.75rem;font-weight:600}.strategy-verdict-stats{flex-wrap:wrap;gap:1.5rem;display:flex}.strategy-verdict-stats>div{flex-direction:column;display:flex}.strategy-verdict-stats .value{font-size:1.25rem;font-weight:700}.strategy-verdict-stats .label{color:var(--text);font-size:.72rem}.strategy-verdict-note{margin-top:.75rem;font-size:.72rem;line-height:1.4}.sport-card{flex-direction:column;gap:.5rem;display:flex}.sport-card-link{color:inherit;text-decoration:none;transition:border-color .15s}.sport-card-link:hover{border-color:var(--accent2);text-decoration:none}.sport-card-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.sport-card-head h3{margin:0}.sport-status{white-space:nowrap;border-radius:6px;padding:.15rem .55rem;font-size:.72rem;font-weight:600}.sport-status-live{color:var(--green);border:1px solid var(--green)}.sport-status-research{color:var(--yellow);border:1px solid var(--yellow)}.sport-status-soon{color:var(--text);border:1px solid var(--border)}.sport-card-cta{color:var(--accent2);margin-top:auto;font-size:.85rem;font-weight:500}.backtest-bankroll{flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.82rem;display:flex}.backtest-bankroll button{background:var(--bg);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:.35rem .6rem;font-size:.8rem}.backtest-bankroll button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.backtest-bankroll-input{background:var(--bg);width:90px;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.35rem .5rem;font-size:.8rem}.backtest-export{gap:.4rem;display:flex}.backtest-playback{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.backtest-playback .btn{padding:.4rem .8rem;font-size:.82rem}.backtest-playback select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.35rem .5rem;font-size:.82rem}.backtest-scrubber{width:160px}.backtest-chart-stats{flex-wrap:wrap;gap:2.5rem;margin-bottom:1rem;display:flex}.backtest-chart-stats>div{flex-direction:column;display:flex}.backtest-chart-stats .value{font-size:1.4rem;font-weight:700}.backtest-chart-stats .label{color:var(--text);font-size:.8rem}.backtest-chart-svg-wrap{position:relative}.backtest-chart-svg{width:100%;height:280px;display:block}.backtest-chart-svg-interactive{cursor:pointer}.backtest-line{stroke:var(--green);stroke-width:2.5px;transition:d .35s ease-out}.grid-line{stroke:var(--border);stroke-width:1px;transition:y1 .35s ease-out,y2 .35s ease-out}.grid-label{fill:var(--text);font-size:11px;transition:y .35s ease-out}.point-win{fill:var(--green);transition:cx .35s ease-out,cy .35s ease-out}.point-loss{fill:var(--red);transition:cx .35s ease-out,cy .35s ease-out}.hover-guide{stroke:var(--accent2);stroke-width:1px;stroke-dasharray:3 3;opacity:.6;pointer-events:none}.hover-point{fill:var(--accent2);pointer-events:none}.backtest-tooltip{pointer-events:none;background:var(--bg2);border:1px solid var(--border);white-space:nowrap;z-index:2;border-radius:6px;flex-direction:column;gap:.15rem;padding:.4rem .6rem;font-size:.78rem;display:flex;position:absolute;transform:translate(-50%,-120%);box-shadow:0 4px 12px #0000004d}.tooltip-win{color:var(--green)}.tooltip-loss{color:var(--red)}.x-grid-line{stroke:var(--border);stroke-width:1px;stroke-dasharray:2 3;opacity:.6}.x-grid-label{fill:var(--text);font-size:11px}.x-tick{animation:.4s ease-out tickFadeIn}@keyframes tickFadeIn{0%{opacity:0}to{opacity:1}}.backtest-week-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin-top:1.25rem;padding:1rem}.backtest-week-head{flex-wrap:wrap;align-items:baseline;gap:1rem;margin-bottom:.85rem;display:flex}.backtest-week-head strong{color:var(--text-h);font-size:1rem}.backtest-bet-cards{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.75rem;display:grid}.bet-card{background:var(--bg2);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:8px;padding:.75rem}.bet-card.won{border-left-color:var(--green)}.bet-card.lost{border-left-color:var(--red)}.bet-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.bet-result{font-weight:700}.bet-result.won{color:var(--green)}.bet-result.lost{color:var(--red)}.bet-payout{color:var(--text-h);font-weight:600}.bet-stake{margin-left:auto;font-size:.75rem}.bet-legs{flex-direction:column;gap:.35rem;display:flex}.bet-leg{align-items:center;gap:.4rem;font-size:.8rem;display:flex}.bet-leg.leg-lost{opacity:.65}.leg-icon{margin-left:auto}.leg-won .leg-icon{color:var(--green)}.leg-lost .leg-icon{color:var(--red)}.leg-badge{border-radius:4px;flex-shrink:0;padding:.1rem .35rem;font-size:.65rem;font-weight:700}.leg-badge.leg-chalk{color:var(--accent2);background:#6366f126}.leg-badge.leg-dog{color:var(--orange);background:#f9731626}.leg-badge.leg-over{color:var(--green);background:#22c55e26}.backtest-legend{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:1rem;font-size:.8rem;display:flex}.dot-legend{border-radius:50%;width:9px;height:9px;margin-right:.4rem;display:inline-block}.backtest-legend .muted{color:var(--text);opacity:.7}@media (width<=600px){.backtest-chart{padding:1rem}.backtest-scrubber{width:100%}}.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;width:100%;max-width:400px;padding:2.5rem}.auth-card .logo{justify-content:center;margin-bottom:1.5rem}.auth-card h2{color:var(--text-h);text-align:center;margin-bottom:1.5rem}.auth-card label{margin-top:1rem;margin-bottom:.35rem;font-size:.85rem;display:block}.auth-card input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text-h);border-radius:6px;padding:.65rem .9rem;font-size:1rem}.auth-card input:focus{border-color:var(--accent);outline:none}.auth-card .btn{text-align:center;width:100%;margin-top:1.5rem}.auth-card p{text-align:center;margin-top:1.25rem;font-size:.9rem}.error{color:var(--red);margin-top:.75rem;font-size:.9rem}.dashboard{min-height:100vh}.dash-hero{text-align:center;padding:3rem 2rem 1.5rem}.dash-hero h1{color:var(--text-h);font-size:2rem}.sub{color:var(--text);margin-top:.25rem}.ticket-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;max-width:720px;margin:1.5rem auto;overflow:hidden}.ticket-header{border-bottom:1px solid var(--border);display:flex}.payout-block{text-align:center;border-right:1px solid var(--border);flex:1;padding:1.25rem}.payout-block:last-child{border-right:none}.payout-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text);font-size:.75rem}.payout-value{color:var(--text-h);margin-top:.25rem;font-size:1.6rem;font-weight:700}.payout-value.muted{color:var(--text)}.payout-sub{margin-top:.2rem;font-size:.68rem}.legs{padding:.5rem 0}.leg-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:1rem;padding:.9rem 1.25rem;display:flex}.leg-row:last-child{border-bottom:none}.leg-label{color:var(--text-h);flex:1;align-items:center;gap:.6rem;font-size:.95rem;display:flex}.leg-odds{flex-wrap:wrap;gap:.4rem;display:flex}.odds-pill{background:var(--bg);border:1px solid var(--border);color:var(--text-h);border-radius:4px;padding:.2rem .5rem;font-size:.8rem}.odds-pill.muted{color:var(--text)}.leg-prob{color:var(--text);white-space:nowrap;font-size:.8rem}.ticket-tip{background:#1a1a2e;padding:1rem 1.25rem;font-size:.85rem}.ticket-raw{max-width:720px;margin:1rem auto 3rem}.ticket-raw details{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:1rem}.ticket-raw summary{cursor:pointer;color:var(--text);font-size:.9rem}.ticket-raw pre{white-space:pre-wrap;color:var(--text);margin-top:.75rem;font-size:.8rem}.badge{text-transform:uppercase;border-radius:4px;padding:.15rem .45rem;font-size:.7rem;font-weight:700}.badge-chalk{color:#60a5fa;background:#1e3a5f}.badge-dog{color:#f87171;background:#3b1e1e}.badge-over,.badge-win{color:#4ade80;background:#1e3b2e}.badge-loss{color:#f87171;background:#3b1e1e}.results-page{min-height:100vh}.history-table{max-width:800px;margin:2rem auto 4rem;padding:0 1rem;overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text);border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.8rem}td{border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.9rem}tr.win td{background:#22c55e0a}tr.loss td{background:#ef44440a}.green{color:var(--green)}.red{color:var(--red)}.empty-state{text-align:center;color:var(--text);padding:4rem 2rem}.empty-state p{margin-bottom:1.5rem}.loading{text-align:center;color:var(--text);padding:4rem}.vite-env{display:none}
