:root{--bg:#0a0e14;--panel:#131a24;--panel2:#1b2430;--line:#263141;--gold:#f2c14e;--green:#35c37d;--red:#e5533c;--text:#e7edf3;--muted:#8a99ab;--off:#4aa3ff;--def:#ff7a59;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(1200px 600px at 50% -10%, #16202c, var(--bg));color:var(--text);min-height:100vh;margin:0}.wrap{max-width:1000px;margin:0 auto;padding:20px 16px 40px}.ad-bar{z-index:200;border-top:1px solid var(--line);padding:3px 8px calc(4px + env(safe-area-inset-bottom));background:#0c1219;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #00000059}.ad-label{letter-spacing:1.5px;text-transform:uppercase;color:#47566a;margin-bottom:2px;font-size:8px}.ad-placeholder{color:#5c6d7f;background:repeating-linear-gradient(45deg,#151d27,#151d27 10px,#131a24 10px 20px);border:1px dashed #2b3746;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:100%;max-width:728px;height:52px;font-size:12px;font-weight:700;display:flex}.ad-placeholder .ad-hint{color:#47566a;letter-spacing:.3px;font-size:9px;font-weight:400}.title{text-align:center;letter-spacing:1px;margin:10px 0 2px;font-size:clamp(26px,5vw,40px);font-weight:900}.title span{color:var(--gold)}.subtitle{text-align:center;color:var(--muted);margin:0 0 20px;font-size:14px}.layout{grid-template-columns:1fr 360px;align-items:start;gap:20px;display:grid}@media (width<=820px){.layout{grid-template-columns:1fr}}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px}.wheel-stage{flex-direction:column;align-items:center;gap:16px;display:flex}.reels{justify-content:center;align-items:flex-start;gap:12px;width:100%;display:flex}.reel{flex:1;max-width:230px}.reel.reel-narrow{flex:0 0 130px;max-width:130px}.reel-label{text-align:center;letter-spacing:2px;color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:800}.reel-window{border:2px solid var(--line);background:linear-gradient(#0c1219,#10171f);border-radius:12px;position:relative;overflow:hidden;box-shadow:inset 0 12px 20px #000000b3,inset 0 -12px 20px #000000b3}.reel-window:before,.reel-window:after{content:"";z-index:2;pointer-events:none;height:40px;position:absolute;left:0;right:0}.reel-window:before{background:linear-gradient(#0c1219,#0000);top:0}.reel-window:after{background:linear-gradient(#0000,#0c1219);bottom:0}.reel-highlight{z-index:1;pointer-events:none;border-top:2px solid var(--gold);border-bottom:2px solid var(--gold);background:#f2c14e12;position:absolute;left:0;right:0}.reel-strip{will-change:transform}.reel-item{text-align:center;text-overflow:ellipsis;justify-content:center;align-items:center;padding:0 8px;font-size:13px;font-weight:800;line-height:1.1;display:flex;overflow:hidden}.reel-narrow .reel-item{color:var(--gold);font-size:15px}.reroll-row{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px;display:flex}.reroll{background:var(--panel2);border:1px solid var(--line);color:var(--text);cursor:pointer;border-radius:8px;padding:7px 12px;font-size:11px;font-weight:700}.reroll:hover:not(:disabled){border-color:var(--gold)}.reroll:disabled{opacity:.4;cursor:not-allowed}.reroll-count{text-align:center;color:var(--gold);letter-spacing:.5px;margin-top:6px;font-size:11px}.card-preview-wrap{justify-content:center;margin:14px 0;display:flex}.card-preview{border:1px solid var(--line);border-radius:14px;width:70%;max-width:300px;box-shadow:0 10px 30px #00000080}.share-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.toast{color:var(--green);text-align:center;height:14px;margin-top:8px;font-size:12px}.shared-note{text-align:center;color:var(--muted);margin-bottom:10px;font-size:12px}.btn{letter-spacing:.5px;cursor:pointer;background:var(--gold);color:#1a1205;border:none;border-radius:10px;padding:13px 22px;font-size:15px;font-weight:800}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.ghost{color:var(--text);border:1px solid var(--line);background:0 0}.reveal-team{text-align:center;margin-bottom:6px}.reveal-team .decade{color:var(--gold);font-weight:800}.reveal-team .fr{font-size:22px;font-weight:900}.reveal-team .tag{color:var(--muted);font-size:13px;font-style:italic}.units{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.unit{text-align:left;background:var(--panel2);border:1px solid var(--line);cursor:pointer;border-radius:10px;padding:10px 12px;transition:transform 80ms,border-color .12s}.unit:hover:not(:disabled){border-color:var(--gold);transform:translateY(-2px)}.unit:disabled{opacity:.32;cursor:not-allowed}.unit .u-top{justify-content:space-between;align-items:center;display:flex}.unit .u-label{font-size:13px;font-weight:800}.unit .u-rating{font-size:18px;font-weight:900}.unit .u-stars{color:var(--muted);margin-top:3px;font-size:11px;line-height:1.35}.unit .u-side{letter-spacing:1px;color:var(--muted);font-size:9px}.side-OFFENSE .u-rating{color:var(--off)}.side-DEFENSE .u-rating{color:var(--def)}.roster h3{letter-spacing:1px;color:var(--muted);margin:2px 0 12px;font-size:14px}.slot{border:1px solid var(--line);background:var(--panel2);border-radius:9px;justify-content:space-between;align-items:center;margin-bottom:7px;padding:9px 11px;display:flex}.slot.filled{border-color:#33465c}.slot.empty{opacity:.6;border-style:dashed}.slot .s-label{font-size:12px;font-weight:700}.slot .s-pick{color:var(--muted);text-align:right;font-size:12px}.slot .s-pick b{color:var(--text)}.slot .s-rating{margin-left:10px;font-weight:900}.tag-off{color:var(--off)}.tag-def{color:var(--def)}.lottery{text-align:center}.lot-title{letter-spacing:3px;color:var(--gold);margin:4px 0 2px;font-size:26px;font-weight:900}.lot-strength{justify-content:center;gap:10px;margin:12px 0 4px;display:flex}.lot-strength .lot-stat{background:var(--panel2);border:1px solid var(--line);text-align:center;border-radius:10px;padding:8px 20px}.lot-strength .lot-stat .n{font-size:26px;font-weight:900;line-height:1}.lot-strength .lot-stat .l{letter-spacing:1.5px;color:var(--muted);margin-top:3px;font-size:9px}.lot-section{margin:18px 0}.lot-note{color:var(--muted);margin-top:8px;font-size:11px}.lot-ball.sm{width:26px;height:26px;font-size:10px}.lot-head{letter-spacing:2px;color:var(--muted);justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:11px;font-weight:800;display:flex}.lot-bin{letter-spacing:0;font-weight:400}.lot-bin .win,.win{color:var(--green);font-weight:800}.lot-bin .loss,.loss{color:var(--red);font-weight:800}.lot-balls{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.lot-ball{color:#06210f;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:900;display:flex}.lot-ball.win{background:radial-gradient(circle at 32% 30%, #5fe39a, var(--green));animation:.25s pop}.lot-ball.loss{background:radial-gradient(circle at 32% 30%, #ff7d68, var(--red));color:#2a0a06;animation:.25s pop}.lot-ball.empty{background:0 0;border:2px dashed #2b3746}@keyframes pop{0%{opacity:.2;transform:scale(.2)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.lot-tally{min-height:34px;margin-top:10px;font-size:30px;font-weight:900}.lot-rounds{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.lot-round{flex-direction:column;align-items:center;gap:6px;width:96px;display:flex}.lot-round-ball{border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:900;display:flex}.lot-round.win .lot-round-ball{background:radial-gradient(circle at 32% 30%, #5fe39a, var(--green));color:#06210f;animation:.3s pop}.lot-round.loss .lot-round-ball{background:radial-gradient(circle at 32% 30%, #ff7d68, var(--red));color:#2a0a06;animation:.3s pop}.lot-round.empty .lot-round-ball{background:var(--panel2);color:#47566a;border:2px dashed #2b3746}.lot-round-label{color:var(--muted);letter-spacing:.5px;font-size:10px}.lot-missed{color:var(--muted);padding:8px;font-size:13px}.result-hero{text-align:center;padding:8px 0 4px}.result-grade{font-size:64px;font-weight:900;line-height:1}.result-overall{color:var(--muted);letter-spacing:1px;font-size:13px}.result-record{margin-top:8px;font-size:30px;font-weight:900}.badge{letter-spacing:1px;border-radius:999px;margin-top:10px;padding:8px 16px;font-weight:900;display:inline-block}.badge.perfect{background:var(--gold);color:#1a1205}.badge.champ{background:var(--green);color:#062616}.badge.fail{background:var(--panel2);color:var(--muted);border:1px solid var(--line)}.od{justify-content:center;gap:10px;margin:14px 0;display:flex}.od .box{background:var(--panel2);border:1px solid var(--line);text-align:center;border-radius:10px;padding:10px 18px}.od .box .n{font-size:24px;font-weight:900}.od .box .l{letter-spacing:1px;color:var(--muted);font-size:10px}.games{max-height:220px;margin-top:10px;overflow-y:auto}.g-row{border-bottom:1px solid var(--line);justify-content:space-between;padding:4px 6px;font-size:12px;display:flex}.g-row .w{color:var(--green);font-weight:800}.g-row .l{color:var(--red);font-weight:800}.center{text-align:center}.mt{margin-top:16px}
