:root{--pitch: #0b7a3b;--pitch-dark: #095f2e;--pitch-tint: #e7f4ec;--ink: #14201a;--ink-soft: #52605a;--paper: #fbfaf7;--card: #ffffff;--line: #e6e3dc;--gold: #f2b705;--good: #17915a;--bad: #c8452f;--neutral: #6b7280;--shadow: 0 1px 2px rgba(20, 32, 26, .06), 0 8px 24px rgba(20, 32, 26, .08);--shadow-lg: 0 2px 6px rgba(20, 32, 26, .08), 0 18px 48px rgba(20, 32, 26, .16);--r-lg: 20px;--r-md: 14px;--r-sm: 10px;--maxw: 720px;--font: "Assistant", "Rubik", "Heebo", "Segoe UI", system-ui, -apple-system, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font-family:inherit;cursor:pointer}.app{min-height:100%;display:flex;flex-direction:column;max-width:var(--maxw);margin:0 auto;background:var(--paper);position:relative}.screen{flex:1;padding:16px 16px 40px;animation:fade .22s ease both}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--pitch);color:#fff;box-shadow:var(--shadow)}.topbar .crest{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-size:17px;background:#ffffff29;flex:none}.topbar .club{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;min-width:3.5em}.topbar .stats{display:flex;gap:5px;flex:none}.topbar .stat{font-size:11px;font-weight:800;background:#ffffff26;padding:3px 7px;border-radius:999px;white-space:nowrap}.iconbtn{border:0;background:#ffffff29;color:#fff;width:34px;height:34px;border-radius:10px;font-size:16px;display:grid;place-items:center;flex:none}.iconbtn:active{transform:scale(.94)}h1,h2,h3{margin:0 0 8px;line-height:1.15}.h-hero{font-size:30px;font-weight:800;letter-spacing:-.5px}.h-title{font-size:22px;font-weight:800}.h-sub{font-size:15px;color:var(--ink-soft);font-weight:600}.muted{color:var(--ink-soft)}.tiny{font-size:12px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:14px;box-shadow:var(--shadow)}.stack>*+*{margin-top:12px}.stack-sm>*+*{margin-top:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:15px 18px;border:0;border-radius:var(--r-md);background:var(--pitch);color:#fff;font-size:17px;font-weight:800;box-shadow:var(--shadow);transition:transform .08s ease,filter .15s ease}.btn:active{transform:translateY(1px) scale(.995)}.btn:disabled{opacity:.5}.btn.secondary{background:#fff;color:var(--ink);border:1.5px solid var(--line);box-shadow:none}.btn.ghost{background:transparent;color:var(--pitch);box-shadow:none}.btn.gold{background:var(--gold);color:#3a2c00}.decisions{display:grid;gap:12px}.decision{text-align:start;background:var(--card);border:1.5px solid var(--line);border-radius:var(--r-md);padding:14px 15px;box-shadow:var(--shadow);transition:border-color .12s ease,transform .08s ease,background .12s ease}.decision:active{transform:translateY(1px) scale(.995)}.decision[data-selected=true]{border-color:var(--pitch);background:var(--pitch-tint)}.decision .d-title{font-size:17px;font-weight:800;margin-bottom:6px}.decision .d-row{display:flex;gap:7px;font-size:13.5px;margin-top:4px;align-items:baseline}.decision .d-tag{font-weight:800;flex:none}.decision .d-good .d-tag{color:var(--good)}.decision .d-bad .d-tag{color:var(--bad)}.decision .d-cost .d-tag{color:var(--neutral)}.decision .probs{margin-top:10px;display:grid;gap:5px}.prob{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;font-size:12.5px}.prob .bar{grid-column:1 / -1;height:6px;border-radius:999px;background:var(--line);overflow:hidden}.prob .bar>span{display:block;height:100%;background:var(--pitch)}.scoreline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:14px;background:var(--pitch-dark);color:#fff;border-radius:var(--r-md)}.scoreline .team{font-weight:800;font-size:15px}.scoreline .team.opp{text-align:start;opacity:.9}.scoreline .team.user{text-align:end}.scoreline .nums{font-variant-numeric:tabular-nums;font-weight:900;font-size:30px;letter-spacing:2px;background:#ffffff1f;padding:4px 14px;border-radius:12px}.scoreline.win .nums{background:var(--gold);color:#3a2c00}.scoreline.loss .nums{background:#00000040}.reveal{display:grid;gap:8px;margin:6px 0 4px}.reveal .opt{padding:12px 14px;border-radius:var(--r-sm);border:1.5px solid var(--line);font-weight:700;font-size:15px;background:#fff;opacity:.4;transition:opacity .18s ease,transform .18s ease,border-color .18s ease,background .18s ease}.reveal .opt[data-state=scan]{opacity:1;border-color:var(--ink);transform:scale(1.02)}.reveal .opt[data-state=dim]{opacity:.32}.reveal .opt[data-state=win]{opacity:1;border-color:var(--pitch);background:var(--pitch-tint);transform:scale(1.03)}.reveal .opt[data-tone=good][data-state=win]{border-color:var(--good)}.reveal .opt[data-tone=bad][data-state=win]{border-color:var(--bad);background:#fcecea}.deltas{display:flex;flex-wrap:wrap;gap:7px}.delta{font-size:13px;font-weight:800;padding:5px 10px;border-radius:999px;background:#eef0ee;color:var(--ink)}.delta.good{background:#e2f3ea;color:var(--good)}.delta.bad{background:#fbe9e5;color:var(--bad)}.ltable{width:100%;border-collapse:collapse;font-size:13px}.ltable th,.ltable td{padding:7px 6px;text-align:center}.ltable th{color:var(--ink-soft);font-weight:700;font-size:11.5px}.ltable td.name,.ltable th.name{text-align:start;font-weight:700}.ltable tr{border-bottom:1px solid var(--line)}.ltable tbody tr{border-top:1px solid var(--line)}.ltable tr[data-user=true]{background:var(--pitch-tint)}.ltable tr[data-user=true] td{font-weight:800}.ltable .promo td:first-child{border-inline-start:3px solid var(--pitch)}.ltable .playoff td:first-child{border-inline-start:3px solid var(--gold)}.metarow{display:flex;flex-wrap:wrap;gap:8px}.pill{font-size:12.5px;font-weight:700;padding:6px 11px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink-soft)}.pill.hot{background:#fdeede;border-color:#f4d9b0;color:#8a5a00}.imp{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800;color:var(--ink-soft)}.imp .track{flex:1;height:8px;border-radius:999px;background:var(--line);overflow:hidden}.imp .track>span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--bad))}.players{display:grid;gap:8px}.pchip{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm)}.pchip .pos{font-size:11px;font-weight:800;background:var(--pitch-tint);color:var(--pitch-dark);padding:3px 7px;border-radius:6px;flex:none}.pchip .pname{font-weight:800;font-size:14.5px}.pchip .ptrait{font-size:12px;color:var(--ink-soft)}.pchip .pstars{color:var(--gold);font-size:13px;letter-spacing:1px;white-space:nowrap}.pchip[data-role=true]{border-color:var(--gold);background:#fffdf5}.hero{text-align:center;padding:30px 10px 10px}.hero .badge{font-size:48px;width:92px;height:92px;margin:0 auto 14px;border-radius:24px;display:grid;place-items:center;background:var(--pitch-tint);box-shadow:var(--shadow)}.hero .kicker{font-size:13px;font-weight:800;letter-spacing:2px;color:var(--pitch);text-transform:uppercase}.statgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.statgrid .card{text-align:center;padding:12px 8px}.statgrid .big{font-size:22px;font-weight:900}.statgrid .lbl{font-size:11.5px;color:var(--ink-soft);font-weight:700}label.field{display:block;font-weight:800;font-size:13.5px;margin-bottom:6px}input[type=text]{width:100%;padding:13px 14px;border:1.5px solid var(--line);border-radius:var(--r-md);font-size:16px;font-family:inherit;background:#fff}input[type=text]:focus{outline:2px solid var(--pitch);border-color:var(--pitch)}.swatches{display:flex;gap:8px;flex-wrap:wrap}.swatch{width:38px;height:38px;border-radius:10px;border:2px solid #fff;box-shadow:0 0 0 1.5px var(--line);flex:none}.swatch[data-on=true]{box-shadow:0 0 0 3px var(--pitch)}.emojigrid{display:flex;flex-wrap:wrap;gap:8px}.emojibtn{width:44px;height:44px;font-size:22px;border-radius:10px;border:1.5px solid var(--line);background:#fff}.emojibtn[data-on=true]{border-color:var(--pitch);background:var(--pitch-tint)}.center{text-align:center}.divider{height:1px;background:var(--line);margin:14px 0}.celebrate{animation:pop .5s ease both}@keyframes pop{0%{transform:scale(.8);opacity:0}60%{transform:scale(1.06)}to{transform:scale(1);opacity:1}}.storystrip{display:grid;gap:6px;padding:12px 13px;border-radius:var(--r-md);background:#fff;border:1px dashed var(--gold)}.storystrip .s-title{font-weight:800;font-size:13.5px}.storystrip .s-line{font-size:12.5px;color:var(--ink-soft)}.debug{position:fixed;inset:auto 0 0;max-width:var(--maxw);margin:0 auto;background:#111;color:#b6f4c9;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;max-height:46vh;overflow:auto;padding:10px 12px 16px;z-index:50;border-top:2px solid var(--pitch);direction:ltr;text-align:left}.debug h4{color:#fff;margin:8px 0 4px}.debug button{background:#1f6f3f;color:#fff;border:0;border-radius:6px;padding:4px 8px;margin:2px;font:inherit}.debug pre{white-space:pre-wrap;margin:2px 0}
