:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1119;--surface:#111b27;--surface-2:#162231;--surface-3:#1c2b3d;--text:#f7f9fc;--muted:#9fb1c6;--line:#293b50;--line-dark:#3a5068;--game-border:#6f8297;--accent:#e3ad39;--accent-hover:#f0bd4d;--accent-text:#111820;--success:#5fcf87;--danger:#ff7b72;--warning:#e3ad39;--shadow:0 8px 24px #00000038}*{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.shell{width:min(1180px,100% - 32px);margin:0 auto;padding:28px 0 60px}.loginShell{flex-direction:column;justify-content:center;gap:24px;min-height:100vh;display:flex}.topbar{min-height:74px;color:var(--text);border-bottom:1px solid var(--line);background:#0f1925;justify-content:space-between;align-items:center;gap:24px;padding:0 28px;display:flex}.brand{letter-spacing:.05em;color:#fff;font-size:20px;font-weight:800}.brand span{color:var(--accent);font-weight:800}.brand.big{text-align:center;color:#fff;font-size:30px}.topActions{align-items:center;gap:18px;display:flex}.bankroll{color:var(--muted);font-size:14px}.bankroll strong{color:#fff}.nav{border-bottom:1px solid var(--line);background:#0f1925;justify-content:center;gap:4px;padding:0 16px;display:flex;overflow-x:auto}.nav button{text-transform:capitalize;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;padding:15px 16px;font-weight:700}.nav button:hover{color:#fff}.nav button.active{color:#fff;border-bottom-color:var(--accent)}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;margin-bottom:18px;padding:22px}.loginCard{width:min(440px,100%);margin:0 auto}h1,h2,p{margin-top:0}h1{margin-bottom:8px;font-size:30px}h2{margin-bottom:10px;font-size:20px}p{line-height:1.5}.muted{color:var(--muted)}.error{color:var(--danger);font-weight:700}.notice{background:#14283a;border:1px solid #28506e;border-radius:8px;margin-bottom:18px;padding:14px 16px}.stack{flex-direction:column;gap:16px;display:flex}label{flex-direction:column;gap:7px;font-weight:700;display:flex}input,select{border:1px solid var(--line-dark);color:var(--text);background:#0d1621;border-radius:7px;padding:11px 12px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}button.primary{background:var(--accent);color:var(--accent-text);border:0;border-radius:7px;padding:11px 16px;font-weight:800}button.primary:hover{background:var(--accent-hover)}button.ghost{border:1px solid var(--line-dark);color:var(--text);background:0 0;border-radius:7px;padding:9px 13px}.pageHead{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:20px;display:flex}.pageHead p{color:var(--muted);margin-bottom:0}.sportsbookHead select{min-width:240px}.weekNavigator{background:var(--surface);border:1px solid var(--line);border-radius:9px;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin-bottom:12px;padding:10px 14px;display:grid}.weekButton{color:var(--text);background:0 0;border:0;padding:6px 8px;font-size:15px;font-weight:800}.weekButton:hover{color:var(--accent)}.weekButton:first-child{text-align:left}.weekButton:last-child{text-align:right}.weekTitle{text-align:center;flex-direction:column;gap:2px;display:flex}.weekTitle strong{font-size:16px}.weekTitle small{color:var(--muted);font-size:12px}.currentWeekWrap{text-align:center;margin-bottom:16px}.sportsDay{margin-top:22px}.dayHeading{color:#fff;text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--line);background:#1b2a3b;border-bottom:0;border-radius:7px 7px 0 0;padding:8px 12px;font-size:12px;font-weight:800}.oddsBoard{background:var(--surface);border:1px solid var(--line);border-radius:0 0 8px 8px;overflow:hidden}.oddsHeader{border-bottom:1px solid var(--line);text-transform:uppercase;color:var(--muted);background:#172333;grid-template-columns:minmax(260px,2.3fr) repeat(3,minmax(110px,1fr));font-size:11px;font-weight:800;display:grid}.oddsHeader>div{text-align:center;padding:8px 10px}.oddsHeader>div:first-child{text-align:left}.gameBlock{border:1px solid var(--game-border);background:#0f1925;border-radius:5px;margin:5px 6px;overflow:hidden}.gameBlock:last-child{margin-bottom:6px}.gameMetaLine{color:var(--muted);background:#0e1823;border-bottom:1px solid #3b4e63;justify-content:space-between;align-items:center;padding:4px 10px;font-size:11px;display:flex}.gameRow{border-bottom:1px solid #2a3b4e;grid-template-columns:minmax(260px,2.3fr) repeat(3,minmax(110px,1fr));min-height:40px;display:grid}.gameRow:last-child{border-bottom:0}.teamName{color:#fff;align-items:center;padding:5px 12px;font-size:16px;font-weight:700;line-height:1.15;display:flex}.homeTeam:before{content:"@";color:var(--muted);margin-right:8px;font-weight:400}.oddsCell{color:#fff;background:#1d3044;border:1px solid #31475e;border-radius:5px;min-height:34px;margin:2px 4px;font-size:16px;font-weight:800;line-height:1;transition:background .15s,border-color .15s}.oddsCell:hover{background:#29445f;border-color:#55728e}.oddsCell.selected{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.gameRow .oddsCell:disabled{color:#617286;background:#121d29;border-color:#233447}.betSlipOverlay{z-index:1000;background:#0000009e;justify-content:flex-end;display:flex;position:fixed;inset:0}.betSlip{width:min(430px,100%);height:100%;color:var(--text);background:#101a26;padding:24px;overflow-y:auto;box-shadow:-16px 0 36px #00000059}.betSlipTop{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;padding-bottom:16px;display:flex}.betSlipTop small{text-transform:uppercase;color:var(--accent);letter-spacing:.04em;font-weight:800}.closeBet{color:var(--muted);background:0 0;border:0;font-size:30px;line-height:1}.closeBet:hover{color:#fff}.betGame{margin-bottom:16px;font-weight:800}.betGame small{color:var(--muted);margin-top:5px;font-weight:400;display:block}.betEntry{background:var(--surface-2);border:1px solid var(--line);border-radius:7px;margin-bottom:18px;padding:12px}.betEntry span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.riskInput{margin-bottom:18px}.riskInput input{font-size:18px;font-weight:800}.wagerSummary{border:1px solid var(--line);border-radius:8px;margin-bottom:18px;overflow:hidden}.wagerSummary>div{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;gap:20px;padding:11px 13px;display:flex}.wagerSummary>div:last-child{border-bottom:0}.wagerSummary span{color:var(--muted)}.confirmBet{width:100%;font-size:16px}.betDisclaimer{color:var(--muted);text-align:center;margin-top:12px;font-size:12px}.tableWrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px 13px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;background:#172333;font-size:12px}tbody tr:hover{background:#142131}td small{color:var(--muted);margin-top:3px;display:block}.pointsColumn{color:#fff;font-size:16px}.pill{text-transform:uppercase;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-block}.pill.won{color:var(--success);background:#153924}.pill.lost{color:var(--danger);background:#3d1d1d}.pill.push{color:var(--warning);background:#3b3016}.entryGrid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.gameMeta{color:var(--muted);justify-content:space-between;gap:16px;margin-bottom:12px;font-size:13px;display:flex}.balanceBig{font-size:32px;font-weight:900}.balanceBig small{color:var(--muted);font-size:14px;font-weight:500}@media (max-width:820px){.topbar{flex-direction:column;align-items:flex-start;padding:18px}.topActions{justify-content:space-between;width:100%}.pageHead{flex-direction:column;align-items:stretch}.sportsbookHead select{width:100%}.weekNavigator{grid-template-columns:1fr 1fr}.weekTitle{grid-area:1/1/auto/-1}.weekButton:first-child{grid-column:1}.weekButton:last-child{grid-column:2}.oddsBoard{overflow-x:auto}.oddsHeader,.gameRow,.gameMetaLine,.gameBlock{min-width:660px}}@media (max-width:520px){.shell{width:min(100% - 18px,1180px);padding-top:18px}.brand.big{font-size:24px}h1{font-size:25px}.card{padding:17px}.betSlip{width:100%}}
