:root{--color-bg: #0A0F0E;--color-bg-soft: #14201E;--color-bg-deep: #050908;--color-paper: #E6EFEC;--color-paper-ink: #0A0F0E;--color-slate: #14201E;--color-tyrian: #050908;--color-border: #1c2a27;--color-border-strong: #00C389;--color-fg: #E6EFEC;--color-muted: #8a949a;--color-dim: #4a5450;--color-accent: #00C389;--color-accent-hot: #2effad;--color-endzone: #00C389;--color-deep: #14201E;--color-tape: #00C389;--color-chalk: #E6EFEC;--color-danger: #ff5577;--color-yellow: #00C389;--team-saturation: 60%;--team-lightness: 48%;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 48px;--radius: 4px;--radius-lg: 8px;--radius-pill: 999px;--font-display: "Big Shoulders Display", "Oswald", Impact, sans-serif;--font-hud: "Oswald", "Big Shoulders Display", Impact, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--font-ui: "Oswald", "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--letter-display: .04em;--letter-label: .18em;--shadow-card: 0 1px 0 0 rgba(0,0,0,.6), 0 2px 0 0 rgba(0,0,0,.4);--shadow-lift: 0 0 0 1px var(--color-accent), 0 6px 16px rgba(0,0,0,.55);--shadow-pop: 0 0 0 2px var(--color-tape), 0 8px 22px rgba(0,0,0,.6);--shadow-deep: 0 18px 40px rgba(0,0,0,.7);--line-chalk: 1px solid color-mix(in oklab, var(--color-chalk) 18%, transparent);--ease-pop: cubic-bezier(.2,.9,.2,1.2);--ease-out: cubic-bezier(.2,.8,.2,1);--tex-noise: radial-gradient(rgba(255,255,255,.025) 1px, transparent 1px);--tex-noise-size: 3px 3px}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{background:var(--color-bg);color:var(--color-fg);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;background-image:var(--tex-noise),repeating-linear-gradient(0deg,transparent 0 119px,color-mix(in oklab,var(--color-chalk) 4%,transparent) 119px 120px),radial-gradient(ellipse at 0% 0%,color-mix(in oklab,var(--color-deep) 35%,transparent),transparent 60%),radial-gradient(ellipse at 100% 100%,color-mix(in oklab,var(--color-accent) 12%,transparent),transparent 55%);background-size:var(--tex-noise-size),auto,auto,auto;background-attachment:fixed}#app{min-height:100%;display:flex;flex-direction:column}a,.link{color:var(--color-tape);text-decoration:none}a:hover{color:var(--color-accent-hot)}::selection{background:var(--color-tape);color:#000}.screen{max-width:880px;margin:0 auto;padding:var(--space-5) var(--space-4) var(--space-10);width:100%}.screen.narrow{max-width:460px}.screen h1{font-family:var(--font-display);font-weight:400;font-size:clamp(32px,7vw,52px);line-height:.95;letter-spacing:var(--letter-display);text-transform:uppercase;margin:0 0 var(--space-5);color:var(--color-fg)}.screen h1 .accent{color:var(--color-accent)}.screen h2{font-family:var(--font-hud);font-weight:700;font-size:18px;letter-spacing:var(--letter-label);text-transform:uppercase;margin:var(--space-8) 0 var(--space-3);color:var(--color-muted);border-bottom:var(--line-chalk);padding-bottom:var(--space-2);position:relative}.screen h2:before{content:"";position:absolute;left:0;bottom:-1px;width:48px;height:3px;background:var(--color-accent)}.screen p{color:var(--color-muted);margin:0 0 var(--space-4)}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.field label{font-family:var(--font-hud);font-weight:700;font-size:12px;letter-spacing:var(--letter-label);text-transform:uppercase;color:var(--color-muted);display:inline-flex;align-items:center;gap:8px}.field label:before{content:"";display:inline-block;width:14px;height:3px;background:var(--color-tape)}.field input{background:var(--color-bg-deep);color:var(--color-fg);border:1px solid var(--color-border-strong);border-bottom:3px solid var(--color-accent);border-radius:var(--radius);padding:12px 14px;font:inherit;outline:none;transition:border-color .12s,box-shadow .12s}.field input:focus{border-color:var(--color-tape);border-bottom-color:var(--color-tape);box-shadow:0 0 0 2px color-mix(in oklab,var(--color-tape) 30%,transparent)}.field-error{color:var(--color-danger);font-size:13px}button.primary{background:var(--color-accent);color:#fff;border:none;border-bottom:4px solid #000;border-radius:var(--radius);padding:14px 22px;font-family:var(--font-display);font-size:18px;letter-spacing:var(--letter-label);text-transform:uppercase;cursor:pointer;width:100%;transition:transform 80ms var(--ease-out),background .12s;box-shadow:var(--shadow-card)}button.primary:hover:not(:disabled){background:var(--color-accent-hot);transform:translateY(-1px)}button.primary:active:not(:disabled){transform:translateY(2px);border-bottom-width:2px}button.primary:disabled{opacity:.4;cursor:not-allowed}button.secondary{background:transparent;color:var(--color-fg);border:2px solid var(--color-border-strong);border-radius:var(--radius);padding:10px 16px;font-family:var(--font-hud);font-weight:700;letter-spacing:var(--letter-label);text-transform:uppercase;cursor:pointer}button.secondary:hover{border-color:var(--color-tape);color:var(--color-tape)}button.secondary:disabled{opacity:.4;cursor:not-allowed}button.ghost{background:transparent;color:var(--color-muted);border:1px dashed var(--color-border-strong);border-radius:var(--radius);padding:8px 12px;font:inherit;cursor:pointer}.link-button{background:none;border:none;color:var(--color-tape);cursor:pointer;padding:0;font:inherit;font-family:var(--font-hud);font-weight:700;letter-spacing:var(--letter-label);text-transform:uppercase;font-size:13px}.link-button:hover{color:var(--color-accent-hot)}.banner{position:relative;background:color-mix(in oklab,var(--color-danger) 18%,var(--color-bg-soft));border:1px solid var(--color-danger);border-left:6px solid var(--color-danger);color:var(--color-fg);padding:var(--space-3) var(--space-4) var(--space-3) var(--space-5);border-radius:var(--radius);margin-bottom:var(--space-4);font-size:14px;overflow:hidden}.banner:before{content:"";position:absolute;top:-6px;right:-22px;width:90px;height:14px;background:var(--color-tape);transform:rotate(35deg);pointer-events:none}.banner:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent 0 10px,color-mix(in oklab,var(--color-danger) 10%,transparent) 10px 12px);pointer-events:none;opacity:.5}.toast-host{position:fixed;left:50%;bottom:var(--space-6);transform:translate(-50%);z-index:50;display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;width:min(420px,calc(100vw - 32px))}.toast{background:var(--color-bg-deep);color:var(--color-fg);padding:12px 18px;border-radius:var(--radius);font-size:14px;font-weight:600;box-shadow:var(--shadow-deep);pointer-events:auto;animation:toast-in .2s var(--ease-pop);border-left:6px solid var(--color-tape)}.toast.error{border-left-color:var(--color-danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}.muted{color:var(--color-muted);font-size:13px}.row-between{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.skeleton{background:var(--color-bg-soft);border-radius:var(--radius);height:14px;margin:var(--space-2) 0;animation:shimmer 1.2s infinite linear}.skeleton.lg{height:28px}.skeleton.card-sk{height:130px;margin:0}@keyframes shimmer{0%{opacity:.4}50%{opacity:.8}to{opacity:.4}}.topnav{display:flex;gap:0;align-items:stretch;padding:0 var(--space-3);background:var(--color-bg-deep);border-bottom:4px solid var(--color-accent);position:sticky;top:0;z-index:10;height:56px;overflow-x:auto;scrollbar-width:none}.topnav::-webkit-scrollbar{display:none}.topnav .brand{font-family:var(--font-display);font-size:24px;letter-spacing:var(--letter-display);color:var(--color-fg);margin-right:var(--space-4);display:flex;align-items:center;white-space:nowrap;text-transform:uppercase}.topnav .brand:before{content:"";display:inline-block;width:12px;height:22px;background:var(--color-accent);margin-right:10px;transform:skew(-12deg)}.topnav .brand-word{display:inline-block}.topnav .brand-accent{color:var(--color-accent)}.topnav .brand-sep{display:inline-block;color:var(--color-accent);margin:0 4px;font-size:.9em;vertical-align:middle;position:relative;top:-.06em}.topnav a{color:var(--color-muted);font-family:var(--font-hud);font-weight:700;font-size:14px;letter-spacing:var(--letter-label);text-transform:uppercase;padding:0 var(--space-3);display:flex;align-items:center;border-bottom:4px solid transparent;margin-bottom:-4px;white-space:nowrap;transition:color .12s,border-color .12s}.topnav a:hover{color:var(--color-fg)}.topnav a.active{color:var(--color-fg);border-bottom-color:var(--color-tape)}.topnav .link-button{margin-left:auto;padding:0 var(--space-3)}.topnav-links{display:contents}.topnav-burger{display:none}.header-strip{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--color-bg-deep);border:1px solid var(--color-border-strong);border-left:4px solid var(--color-accent);border-radius:var(--radius);margin-bottom:var(--space-6);overflow:hidden}.header-strip:after{content:"";position:absolute;top:0;right:0;width:64px;height:4px;background:var(--color-tape);pointer-events:none}.header-strip .stat{display:flex;flex-direction:column;gap:4px;padding:var(--space-3) var(--space-4);border-right:1px solid var(--color-border)}.header-strip .stat:last-child{border-right:none}.header-strip .stat .k{font-family:var(--font-hud);font-weight:700;font-size:11px;color:var(--color-muted);text-transform:uppercase;letter-spacing:var(--letter-label)}.header-strip .stat .v{font-family:var(--font-display);font-size:clamp(24px,5vw,32px);font-variant-numeric:tabular-nums;color:var(--color-fg);line-height:1}.header-strip .stat .v.accent{color:var(--color-tape)}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-3)}.card{position:relative;background:linear-gradient(180deg,color-mix(in oklab,var(--team-color, var(--color-accent)) 28%,var(--color-bg-soft)) 0%,var(--color-bg-soft) 55%);border:1px solid var(--color-border-strong);border-top:4px solid var(--team-color, var(--color-accent));border-radius:var(--radius);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .14s var(--ease-out),box-shadow .14s}.card:before{display:none}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.card .jersey-watermark{display:none}.card>*{position:relative;z-index:1}.card .name{font-family:var(--font-display);font-size:18px;letter-spacing:.02em;text-transform:uppercase;line-height:1.05;color:var(--color-fg);padding-right:84px;min-height:22px}.card .meta{position:absolute;top:10px;right:12px;font-family:var(--font-mono);font-size:11px;color:var(--color-muted);letter-spacing:.04em;text-align:right;z-index:2}.card .row{display:flex;justify-content:space-between;align-items:center}.card .pos{display:inline-block;padding:3px 9px;font-family:var(--font-hud);font-weight:900;font-size:12px;letter-spacing:var(--letter-label);background:var(--color-fg);color:var(--color-bg-deep);border-radius:2px;align-self:flex-start}.card .cap{font-family:var(--font-mono);font-size:12px;color:var(--color-muted)}.card .cap strong{font-family:var(--font-display);font-size:18px;color:var(--color-tape);font-weight:400}.card .card-pwr-watermark{position:absolute;right:-2px;bottom:-12px;display:flex;align-items:flex-end;gap:0;line-height:1;pointer-events:none;user-select:none;z-index:0}.card .card-pwr-watermark .card-pwr-num{font-family:var(--font-display);font-size:86px;font-weight:900;line-height:1;color:#ffffff6b;text-shadow:0 0 6px color-mix(in oklab,var(--team-color, var(--color-accent)) 55%,transparent),0 0 14px color-mix(in oklab,var(--team-color, var(--color-accent)) 35%,transparent);font-variant-numeric:tabular-nums;font-style:normal}.card .card-pwr-watermark .card-pwr-tag{font-family:var(--font-hud, var(--font-mono));font-size:9px;font-weight:700;letter-spacing:.18em;color:#ffffffb8;text-shadow:0 0 3px var(--team-color, var(--color-accent));font-style:normal;text-transform:uppercase;margin-bottom:18px;margin-right:2px}.card.disabled{opacity:.4;filter:grayscale(.7)}.card.disabled:before{display:none}.card .inline-err{color:var(--color-danger);font-size:11px;min-height:14px;font-weight:600}.tag{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-family:var(--font-hud);font-weight:700;font-size:11px;letter-spacing:var(--letter-label);background:var(--color-bg-deep);color:var(--color-muted);border:1px solid var(--color-border-strong);text-transform:uppercase}.picks-list{display:flex;flex-direction:column;gap:var(--space-2)}.picks-list .row{display:flex;align-items:center;gap:var(--space-3);background:var(--color-bg-soft);border:1px solid var(--color-border);border-left:4px solid var(--team-color, var(--color-accent));border-radius:var(--radius);padding:10px 14px}.picks-list .row .idx{font-family:var(--font-display);font-size:20px;color:var(--color-tape);font-variant-numeric:tabular-nums;width:36px}.picks-list .row .name{flex:1;font-family:var(--font-display);font-size:17px;letter-spacing:.02em;text-transform:uppercase}.lb-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.lb-table th,.lb-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--color-border);font-size:14px}.lb-table th{color:var(--color-muted);font-family:var(--font-hud);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:var(--letter-label);border-bottom:2px solid var(--color-accent);background:var(--color-bg-deep)}.lb-table td:nth-child(1),.lb-table td:nth-child(3){font-family:var(--font-display);font-size:22px}.lb-table tr.me{background:color-mix(in oklab,var(--color-tape) 14%,transparent)}.lb-table tr.me td:first-child{color:var(--color-tape)}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{background:var(--color-bg-soft);border:1px solid var(--color-border-strong);border-radius:var(--radius);padding:8px 14px;font-family:var(--font-hud);font-weight:700;font-size:13px;letter-spacing:var(--letter-label);text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}.chip .count{background:var(--color-tape);color:#000;font-family:var(--font-mono);font-size:11px;padding:2px 7px;border-radius:var(--radius-pill);font-weight:700}.chip.has-tip{position:relative;cursor:help;outline:none}.chip.has-tip:hover,.chip.has-tip:focus-visible{border-color:var(--color-tape);color:var(--color-tape)}.chip .chip-tip{position:fixed;top:0;left:0;background:var(--color-bg-deep);color:var(--color-fg);border:1px solid var(--color-border-strong);border-left:3px solid var(--color-tape);border-radius:var(--radius);padding:8px 10px;font-family:var(--font-body);font-weight:400;font-size:12px;line-height:1.4;text-transform:none;letter-spacing:0;white-space:normal;width:max-content;max-width:min(260px,calc(100vw - 16px));box-shadow:var(--shadow-deep);opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .12s,transform .12s;z-index:100}.chip.has-tip.tip-open .chip-tip{opacity:1;transform:translateY(0)}.cta-block{background:linear-gradient(135deg,color-mix(in oklab,var(--color-accent) 30%,var(--color-bg-deep)) 0%,var(--color-bg-deep) 70%);border:1px solid var(--color-border-strong);border-left:4px solid var(--color-tape);border-radius:var(--radius);padding:var(--space-6);margin:var(--space-4) 0;position:relative;overflow:hidden}.cta-block:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent 0 14px,color-mix(in oklab,var(--color-tape) 6%,transparent) 14px 16px);pointer-events:none}.cta-block>*{position:relative}.screen.narrow{margin-top:6vh;padding:var(--space-6);background:var(--color-bg-deep);border:1px solid var(--color-border-strong);border-top:6px solid var(--color-accent);border-radius:var(--radius);box-shadow:var(--shadow-deep);position:relative;overflow:hidden}.screen.narrow:after{content:"";position:absolute;top:18px;right:-32px;width:130px;height:18px;background:var(--color-tape);transform:rotate(35deg);pointer-events:none;box-shadow:0 1px #0006}.screen.narrow:before{content:"PRESS · GATE 12 · LOCKER";display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;color:var(--color-tape);margin-bottom:var(--space-4);padding:4px 8px;border:1px dashed color-mix(in oklab,var(--color-tape) 50%,transparent);align-self:flex-start;width:max-content;max-width:100%}.screen.narrow h1{font-size:clamp(28px,6vw,36px);position:relative;padding-left:14px}.screen.narrow h1:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:5px;background:var(--color-accent)}.match-screen{display:grid;grid-template-areas:"hud" "preview" "hand" "actions";grid-template-rows:auto auto 1fr auto;min-height:100vh;width:100%;max-width:1100px;margin:0 auto;padding:var(--space-3);padding-bottom:max(var(--space-3),env(safe-area-inset-bottom));gap:var(--space-3)}.match-hud{grid-area:hud;position:relative;display:flex;flex-direction:column;gap:12px;padding:14px 18px 12px;background:radial-gradient(ellipse at 50% 0%,color-mix(in oklab,var(--color-accent) 18%,var(--color-bg-deep)) 0%,var(--color-bg-deep) 70%);border:1px solid var(--color-border-strong);border-top:3px solid var(--color-accent);border-radius:var(--radius);box-shadow:var(--shadow-deep);overflow:hidden}.match-hud:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),color-mix(in oklab,var(--color-fg) 4%,transparent) calc(10% - 1px) 10%);pointer-events:none;opacity:.6}.match-hud>*{position:relative}.hud-meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.hud-chip{font-family:var(--font-hud);font-weight:700;font-size:10px;letter-spacing:var(--letter-label);text-transform:uppercase;padding:4px 8px;background:color-mix(in oklab,var(--color-fg) 6%,transparent);color:var(--color-muted);border:1px solid var(--color-border);border-radius:2px;font-variant-numeric:tabular-nums}.hud-chip-down{background:var(--color-accent);color:var(--color-bg-deep);border-color:var(--color-accent)}.hud-chip-boss{margin-left:auto;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:12px}.hud-side{display:flex;flex-direction:column;gap:2px;min-width:0}.hud-side-you{align-items:flex-start}.hud-side-boss{align-items:flex-end;text-align:right}.hud-side-label{font-family:var(--font-hud);font-weight:700;font-size:11px;letter-spacing:var(--letter-label);color:var(--color-muted);text-transform:uppercase}.hud-side-num{font-family:var(--font-display);font-weight:700;font-size:clamp(48px,13vw,88px);line-height:.85;letter-spacing:.02em;color:var(--color-fg);font-variant-numeric:tabular-nums}.hud-side-you .hud-side-num{color:var(--color-accent);text-shadow:0 0 24px color-mix(in oklab,var(--color-accent) 50%,transparent)}.hud-side-boss .hud-side-num{font-size:clamp(20px,5vw,28px);color:var(--color-muted);align-self:flex-end;padding-bottom:6px}.hud-target{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 10px;border-left:1px dashed color-mix(in oklab,var(--color-fg) 18%,transparent);border-right:1px dashed color-mix(in oklab,var(--color-fg) 18%,transparent)}.hud-target-label{font-family:var(--font-hud);font-weight:700;font-size:9px;letter-spacing:var(--letter-label);color:var(--color-muted);text-transform:uppercase}.hud-target-num{font-family:var(--font-display);font-weight:700;font-size:clamp(22px,5.5vw,32px);line-height:1;color:var(--color-fg);font-variant-numeric:tabular-nums}.hud-target-gap{font-family:var(--font-hud);font-weight:700;font-size:9px;letter-spacing:var(--letter-label);color:var(--color-accent);text-transform:uppercase;margin-top:2px}.hud-progress-bar{--progress: 0%;position:relative;height:4px;background:color-mix(in oklab,var(--color-fg) 8%,transparent);border-radius:2px;overflow:hidden}.hud-progress-bar:after{content:"";position:absolute;inset:0;width:var(--progress);background:var(--color-accent);box-shadow:0 0 8px color-mix(in oklab,var(--color-accent) 60%,transparent);transition:width .32s var(--ease-out)}.hud-defense-line{display:flex;gap:6px;flex-wrap:wrap}.def-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:color-mix(in oklab,var(--color-fg) 4%,transparent);border:1px solid var(--color-border);border-radius:999px;flex:1 1 0;min-width:0}.def-pill em{font-style:normal;font-family:var(--font-hud);font-weight:700;font-size:9px;letter-spacing:var(--letter-label);color:var(--color-muted);text-transform:uppercase}.def-pill i{flex:1 1 auto;height:3px;background:color-mix(in oklab,var(--color-fg) 8%,transparent);border-radius:2px;position:relative;overflow:hidden}.def-pill i:after{content:"";position:absolute;inset:0;width:var(--v, 0%);background:var(--color-muted);border-radius:2px;transition:width .22s var(--ease-out)}.def-pill.med i:after{background:color-mix(in oklab,var(--color-accent) 55%,var(--color-muted))}.def-pill.high i:after{background:var(--color-accent)}.def-pill.high{border-color:color-mix(in oklab,var(--color-accent) 50%,var(--color-border))}.def-pill.high em{color:var(--color-accent)}.match-fx-layer{position:fixed;inset:0;pointer-events:none;z-index:200}.match-fx-layer canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}.match-fx-layer:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(180deg,rgba(0,0,0,.18) 0px,rgba(0,0,0,.18) 1px,transparent 1px,transparent 3px);mix-blend-mode:multiply;opacity:0;transition:opacity .22s ease}.match-fx-layer:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.55) 100%);opacity:0;transition:opacity .22s ease}.match-fx-layer.active:before,.match-fx-layer.active:after{opacity:1}@keyframes match-shake-kf{0%,to{transform:translate(0)}20%{transform:translate(-3px,2px)}40%{transform:translate(3px,-2px)}60%{transform:translate(-2px,-3px)}80%{transform:translate(2px,3px)}}@keyframes match-shake-hard-kf{0%,to{transform:translate(0)}10%{transform:translate(-8px,4px)}25%{transform:translate(7px,-6px)}40%{transform:translate(-6px,-7px)}55%{transform:translate(8px,5px)}70%{transform:translate(-5px,7px)}85%{transform:translate(6px,-4px)}}.match-screen.match-shake{animation:match-shake-kf .22s var(--ease-out)}.match-screen.match-shake-hard{animation:match-shake-hard-kf .6s var(--ease-out)}.hand-card.combo-fire{animation:combo-fire .7s var(--ease-pop);border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent),0 8px 24px #0009;z-index:5}@keyframes combo-fire{0%{transform:translateY(-12px) scale(1.04)}40%{transform:translateY(-22px) scale(1.12) rotate(-2deg)}to{transform:translateY(-12px) scale(1.04)}}.hand-zone{grid-area:hand;display:contents}.hand-cards{grid-area:hand;display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-2);min-height:150px}.hand-card{position:relative;background:linear-gradient(180deg,color-mix(in oklab,var(--team-color, var(--color-accent)) 32%,var(--color-bg-soft)) 0%,var(--color-bg-soft) 65%);border:1px solid var(--color-border-strong);border-top:4px solid var(--team-color, var(--color-accent));border-radius:var(--radius);padding:var(--space-2) var(--space-3);cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:transform .16s var(--ease-pop),border-color .16s,box-shadow .16s;user-select:none;overflow:hidden;box-shadow:var(--shadow-card)}.hand-card .jersey-watermark{position:absolute;right:-6px;bottom:-22px;font-family:var(--font-display);font-size:90px;line-height:1;color:color-mix(in oklab,var(--team-color, var(--color-accent)) 26%,transparent);pointer-events:none;font-variant-numeric:tabular-nums;z-index:0}.hand-card>*{position:relative;z-index:1}.hand-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}.hand-card.selected{transform:translateY(-10px) scale(1.03);border-color:var(--color-accent);border-top-color:var(--color-accent);box-shadow:var(--shadow-pop)}.hand-card.bumped:after{content:"+15";position:absolute;top:6px;left:8px;background:var(--color-accent);color:var(--color-bg-deep);font-family:var(--font-display);font-size:12px;letter-spacing:.04em;padding:2px 7px;border-radius:2px;z-index:2}.hand-card .card-pwr-watermark{position:absolute;right:-2px;bottom:-16px;display:flex;align-items:flex-end;gap:0;line-height:1;pointer-events:none;user-select:none;z-index:0}.hand-card .card-pwr-watermark .card-pwr-num{font-family:var(--font-display);font-size:110px;font-weight:900;line-height:1;color:#ffffff6b;text-shadow:0 0 6px color-mix(in oklab,var(--team-color, var(--color-accent)) 55%,transparent),0 0 14px color-mix(in oklab,var(--team-color, var(--color-accent)) 35%,transparent);font-variant-numeric:tabular-nums;font-style:normal}.hand-card .card-pwr-watermark .card-pwr-tag{font-family:var(--font-hud, var(--font-mono));font-size:11px;font-weight:700;letter-spacing:.18em;color:#ffffffb8;text-shadow:0 0 3px var(--team-color, var(--color-accent));font-style:normal;text-transform:uppercase;margin-bottom:22px;margin-right:2px}.hand-card .pos{font-family:var(--font-hud);font-weight:700;font-size:11px;letter-spacing:var(--letter-label);background:var(--color-fg);color:var(--color-bg-deep);padding:2px 6px;border-radius:2px;align-self:flex-start}.hand-card .name{font-family:var(--font-display);font-size:15px;letter-spacing:.02em;line-height:1.05;text-transform:uppercase}.hand-card .meta{position:absolute;top:8px;right:10px;font-family:var(--font-mono);font-size:10px;color:var(--color-muted);letter-spacing:.04em;text-align:right;z-index:2}.hand-card.target-mode{border-color:var(--color-accent);animation:target-pulse 1s infinite;cursor:crosshair}@keyframes target-pulse{0%,to{box-shadow:0 0 color-mix(in oklab,var(--color-accent) 50%,transparent)}50%{box-shadow:0 0 0 10px color-mix(in oklab,var(--color-accent) 0%,transparent)}}.play-preview{grid-area:preview;display:flex;align-items:center;gap:var(--space-3);padding:10px var(--space-4);background:var(--color-bg-deep);border:1px solid var(--color-border-strong);border-left:4px solid var(--color-dim);border-radius:var(--radius);min-height:44px;transition:border-color .16s,background .16s;flex-wrap:wrap}.play-preview .hint{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--color-dim);text-transform:uppercase}.play-preview.live{border-left-color:var(--color-accent);background:linear-gradient(90deg,color-mix(in oklab,var(--color-accent) 12%,var(--color-bg-deep)) 0%,var(--color-bg-deep) 60%)}.play-preview.exact{border-left-color:var(--color-accent);background:linear-gradient(90deg,color-mix(in oklab,var(--color-accent) 18%,var(--color-bg-deep)) 0%,var(--color-bg-deep) 60%);animation:preview-lock .32s var(--ease-pop)}.play-preview.broken{border-left-color:var(--color-danger);background:color-mix(in oklab,var(--color-danger) 10%,var(--color-bg-deep))}.play-preview .play-tag{font-family:var(--font-hud);font-weight:700;font-size:10px;letter-spacing:var(--letter-label);color:var(--color-bg-deep);background:var(--color-fg);padding:4px 8px;border-radius:2px;text-transform:uppercase}.play-preview.exact .play-tag{background:var(--color-accent);color:var(--color-bg-deep)}.play-preview.broken .play-tag{background:var(--color-danger);color:#fff}.play-preview .play-name{font-family:var(--font-display);font-size:17px;letter-spacing:.04em;text-transform:uppercase;color:var(--color-fg)}.play-preview .play-mult{font-family:var(--font-display);font-size:20px;color:var(--color-accent);font-variant-numeric:tabular-nums;margin-left:auto}.play-preview.broken .play-mult{color:var(--color-danger)}.play-preview .play-note{font-family:var(--font-body);font-size:11px;color:var(--color-muted);font-style:italic;flex-basis:100%}.play-preview .play-pred{display:inline-flex;align-items:baseline;gap:4px;padding:3px 10px;background:color-mix(in oklab,var(--color-accent) 15%,var(--color-bg-deep));border:1px solid var(--color-accent);border-radius:3px;font-family:var(--font-mono);font-weight:700;font-size:14px;letter-spacing:.08em;color:var(--color-fg);font-variant-numeric:tabular-nums}.play-preview.broken .play-pred{background:color-mix(in oklab,var(--color-danger) 18%,var(--color-bg-deep));border-color:var(--color-danger)}@keyframes preview-lock{0%{transform:scale(.98)}50%{transform:scale(1.02)}to{transform:scale(1)}}.hand-actions{grid-area:actions;display:flex;gap:var(--space-3);align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-bg-deep);border:1px solid var(--color-border-strong);border-top:3px solid var(--color-accent);border-radius:var(--radius);flex-wrap:wrap}.hand-actions .selected-count{font-family:var(--font-hud);font-weight:700;font-size:12px;letter-spacing:var(--letter-label);color:var(--color-muted);text-transform:uppercase}.hand-actions .audibles-row{display:flex;gap:6px;flex-wrap:wrap}.hand-actions .audible-btn{position:relative;background:var(--color-bg-soft);border:1px solid var(--color-border-strong);border-radius:var(--radius);padding:8px 14px;font-family:var(--font-hud);font-weight:700;font-size:12px;letter-spacing:var(--letter-label);text-transform:uppercase;cursor:pointer;color:var(--color-fg);display:inline-flex;align-items:center;gap:8px;transition:border-color .12s,color .12s,background .12s}.hand-actions .audible-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.hand-actions .audible-btn:disabled{opacity:.4;cursor:not-allowed}.hand-actions .audible-btn .count{background:var(--color-accent);color:var(--color-bg-deep);font-family:var(--font-mono);font-size:10px;font-weight:700;padding:2px 6px;border-radius:var(--radius-pill)}.hand-actions .audible-btn .audible-tip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:var(--color-bg-deep);color:var(--color-fg);border:1px solid var(--color-border-strong);border-left:3px solid var(--color-accent);border-radius:var(--radius);padding:8px 10px;font-family:var(--font-body);font-size:12px;line-height:1.35;text-transform:none;letter-spacing:0;white-space:normal;width:max-content;max-width:220px;box-shadow:var(--shadow-deep);opacity:0;pointer-events:none;transition:opacity .12s,transform .12s;z-index:50}.hand-actions .audible-btn:hover .audible-tip,.hand-actions .audible-btn:focus-visible .audible-tip{opacity:1;transform:translate(-50%) translateY(0)}.hand-actions button.primary,.snap-btn{width:auto;padding:12px 22px;font-size:16px}.match-overlay{position:fixed;inset:0;background:#07090cf0;backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:100;animation:fade-in .24s var(--ease-out);padding:var(--space-6);overflow-y:auto}.match-overlay h1{font-family:var(--font-display);font-size:clamp(40px,9vw,72px);line-height:.95;letter-spacing:.12em;margin:0 0 var(--space-4);text-transform:uppercase}.match-overlay h1.win{color:var(--color-accent);text-shadow:0 0 18px var(--color-accent),0 0 40px var(--color-accent);animation:slam .6s var(--ease-pop)}.match-overlay h1.loss{color:var(--color-danger);text-shadow:0 0 18px var(--color-danger)}@keyframes slam{0%{transform:scale(1.4);opacity:0}60%{transform:scale(.95);opacity:1}to{transform:scale(1)}}.match-overlay .stat{font-family:var(--font-hud);font-weight:400;font-size:12px;letter-spacing:.06em;margin:8px 0;color:var(--color-muted);text-transform:uppercase}.match-overlay .stat strong{color:var(--color-fg);font-weight:400;font-size:22px;font-variant-numeric:tabular-nums;margin-left:8px;font-family:var(--font-display);text-shadow:0 0 8px currentColor}.match-overlay .stat.coins strong{color:var(--color-accent)}.match-overlay-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-top:var(--space-6)}.match-overlay button{width:auto;padding:14px 32px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (max-width: 720px){body{font-size:14px}.topnav{padding:0 10px;height:48px;gap:0;overflow:visible;align-items:center;position:sticky}.topnav .brand{font-size:16px;margin-right:auto;flex-shrink:0}.topnav .brand:before{width:10px;height:18px;margin-right:8px}.topnav-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:36px;height:36px;padding:0;background:transparent;border:1px solid var(--color-border-strong);cursor:pointer;flex-shrink:0;margin-left:auto}.topnav-burger span{display:block;width:18px;height:2px;background:var(--color-fg);margin:0 auto;transition:transform .16s ease,opacity .16s ease}.topnav.is-open .topnav-burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}.topnav.is-open .topnav-burger span:nth-child(2){opacity:0}.topnav.is-open .topnav-burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.topnav .topnav-links{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;top:100%;left:0;right:0;background:var(--color-bg-deep);border-bottom:4px solid var(--color-accent);box-shadow:0 12px 24px #0006;padding:6px 0;transform:translateY(-8px);opacity:0;pointer-events:none;transition:transform .16s ease,opacity .16s ease;z-index:20}.topnav.is-open .topnav-links{transform:translateY(0);opacity:1;pointer-events:auto}.topnav .topnav-links a,.topnav .topnav-links .link-button{height:44px;padding:0 16px;margin:0;font-size:13px;letter-spacing:.06em;border-bottom:1px solid var(--color-border);justify-content:flex-start;text-align:left}.topnav .topnav-links a.active{border-bottom-color:var(--color-border);border-left:4px solid var(--color-tape);padding-left:12px}.topnav .topnav-links .link-button{margin-left:0;border-bottom:none;color:var(--color-accent)}.header-strip{grid-template-columns:1fr 1fr 1fr}.header-strip .stat{padding:var(--space-2) var(--space-3)}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-2)}.card .name{padding-right:64px;font-size:15px}.card .meta{font-size:10px;top:8px;right:10px}.card .card-pwr-watermark .card-pwr-num{font-size:64px}.card .card-pwr-watermark .card-pwr-tag{font-size:8px;margin-bottom:13px}.match-screen{padding:6px;gap:6px;grid-template-rows:auto auto 1fr auto;height:calc(100dvh - 48px);min-height:0;overflow:hidden}.match-hud{padding:10px 12px;gap:8px}.hud-chip{font-size:9px;padding:3px 6px}.hud-side-label{font-size:9px}.hud-target{padding:0 8px}.hud-target-label,.hud-target-gap{font-size:8px}.def-pill{padding:2px 6px;gap:5px}.def-pill em{font-size:8px}.hand-cards{grid-template-columns:repeat(5,1fr);gap:4px;min-height:0;height:118px;align-self:stretch}.hand-card{padding:5px 5px 4px;gap:2px;border-top-width:3px;border-radius:3px;min-height:0;height:100%}.hand-card .pos{font-size:7px;padding:1px 3px;letter-spacing:.04em}.hand-card .name{font-size:10px;line-height:1.05;letter-spacing:0;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hand-card .meta{font-size:7px;letter-spacing:0;top:4px;right:5px}.hand-card .jersey-watermark{font-size:56px;bottom:-14px;right:-4px}.hand-card.selected{transform:translateY(-6px) scale(1.03)}.hand-card.bumped:after{font-size:8px;padding:1px 4px;top:3px;left:3px}.hand-card .card-pwr-watermark{right:2px;bottom:-4px}.hand-card .card-pwr-watermark .card-pwr-num{font-size:44px}.hand-card .card-pwr-watermark .card-pwr-tag{font-size:6px;letter-spacing:.12em;margin-bottom:8px;margin-right:1px}.hand-card .meta{max-width:calc(100% - 8px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand-card .name{padding-right:28px}.hand-card .pos{max-width:60%}.play-preview{padding:4px 8px;gap:6px;min-height:28px}.play-preview .hint{font-size:7px}.play-preview .play-tag{font-size:7px;padding:2px 4px}.play-preview .play-name{font-size:12px}.play-preview .play-mult{font-size:16px}.play-preview .play-note{display:none}.hand-actions{display:grid;grid-template-columns:1fr auto;grid-template-areas:"count submit" "audibles submit";align-items:center;gap:4px 8px;padding:6px 8px;flex-wrap:initial;overflow:visible}.hand-actions .selected-count{grid-area:count;font-size:8px;white-space:nowrap}.hand-actions .audibles-row{grid-area:audibles;gap:4px;flex-wrap:wrap}.hand-actions .audible-btn{padding:5px 7px;font-size:8px;flex-shrink:0;gap:5px}.hand-actions .audible-btn .count{font-size:7px;padding:1px 4px}.hand-actions button.primary,.snap-btn{grid-area:submit;width:auto;padding:12px 18px;font-size:14px;letter-spacing:.08em;align-self:stretch;box-shadow:0 4px #000,0 0 14px color-mix(in oklab,var(--color-danger) 60%,transparent),inset 0 2px #ffffff4d,inset 0 -3px #0006}.hand-actions .audible-btn .audible-tip{left:0;transform:translateY(4px);max-width:70vw}.hand-actions .audible-btn:hover .audible-tip,.hand-actions .audible-btn:focus-visible .audible-tip{transform:translateY(0)}.match-overlay{padding:var(--space-4);justify-content:flex-start;padding-top:12vh}.match-overlay h1{font-size:clamp(36px,11vw,56px)}.match-overlay .stat{font-size:11px}.match-overlay .stat strong{font-size:20px}.match-overlay-actions{margin-top:var(--space-4);width:100%}.match-overlay button{padding:12px 22px;font-size:14px;flex:1 1 140px;max-width:240px}.screen{padding:var(--space-4) var(--space-3) var(--space-8)}.screen.narrow{margin-top:4vh;padding:var(--space-4)}.lb-table{font-size:12px}.lb-table th,.lb-table td{padding:8px 10px}.lb-table td:nth-child(1),.lb-table td:nth-child(3){font-size:18px}}@media (max-width: 380px){.topnav .brand{font-size:18px}.header-strip .stat .v{font-size:22px}.hand-card .name{font-size:10px}.hand-card .pos{font-size:8px}}.landing{width:100%;max-width:980px;margin:0 auto;padding:var(--space-8) var(--space-4) var(--space-10)}.landing-hero{position:relative;text-align:center;padding:var(--space-10) var(--space-4) var(--space-10);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:radial-gradient(ellipse at 50% 0%,color-mix(in oklab,var(--color-accent) 22%,transparent),transparent 60%),linear-gradient(180deg,var(--color-bg-soft),var(--color-bg-deep));overflow:hidden}.landing-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 39px,color-mix(in oklab,var(--color-chalk) 5%,transparent) 39px 40px);pointer-events:none;opacity:.6}.landing-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:var(--color-accent);box-shadow:0 0 28px var(--color-accent)}.landing-tape{position:relative;display:inline-block;background:var(--color-tape);color:#000;font-family:var(--font-hud);font-weight:700;font-size:11px;letter-spacing:var(--letter-label);padding:4px 12px;transform:rotate(-2deg)}.landing-tape-row{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6)}.landing-title{position:relative;font-family:var(--font-display);font-weight:400;font-size:clamp(72px,18vw,168px);line-height:.85;letter-spacing:.02em;text-transform:uppercase;margin:0 0 var(--space-5);text-shadow:0 6px 0 #000,0 8px 24px rgba(0,0,0,.6)}.landing-title .line{display:inline-block;vertical-align:baseline}.landing-title .sep{display:inline-block;color:var(--color-accent);padding:0 .1em;letter-spacing:0;vertical-align:middle;font-size:.55em;position:relative;top:-.25em;text-shadow:0 4px 0 #000,0 0 32px color-mix(in oklab,var(--color-accent) 60%,transparent)}.landing-title .accent{color:var(--color-accent);text-shadow:0 4px 0 #000,0 0 32px color-mix(in oklab,var(--color-accent) 60%,transparent)}.landing-tag{position:relative;font-family:var(--font-hud);font-weight:700;font-size:clamp(14px,3.5vw,18px);letter-spacing:var(--letter-label);text-transform:uppercase;color:var(--color-accent);margin:0 0 var(--space-5)}.landing-sub{position:relative;max-width:560px;margin:0 auto var(--space-8);color:var(--color-fg);font-size:16px;line-height:1.55}.landing-sub strong{color:var(--color-tape);font-weight:700}.landing-cta{position:relative;display:flex;flex-direction:column;gap:var(--space-3);max-width:360px;margin:0 auto var(--space-6)}button.primary.big,button.ghost.big{font-size:20px;padding:18px 24px}button.ghost.big{font-family:var(--font-hud);font-weight:700;letter-spacing:var(--letter-label);text-transform:uppercase;color:var(--color-fg);border:2px solid var(--color-border-strong);border-radius:var(--radius);background:transparent;width:100%}button.ghost.big:hover{border-color:var(--color-tape);color:var(--color-tape)}.landing-meta{position:relative;display:flex;justify-content:center;gap:var(--space-5);flex-wrap:wrap;font-family:var(--font-hud);font-size:11px;letter-spacing:var(--letter-label);text-transform:uppercase;color:var(--color-muted)}.landing-pillars{display:grid;grid-template-columns:1fr;gap:var(--space-4);margin-top:var(--space-8)}@media (min-width: 720px){.landing-pillars{grid-template-columns:repeat(3,1fr)}}.pillar{position:relative;padding:var(--space-5);background:var(--color-bg-soft);border:1px solid var(--color-border);border-left:4px solid var(--color-accent);border-radius:var(--radius);overflow:hidden}.pillar-num{font-family:var(--font-display);font-size:56px;line-height:1;color:color-mix(in oklab,var(--color-accent) 28%,transparent);margin-bottom:var(--space-2)}.pillar h3{font-family:var(--font-display);font-size:22px;letter-spacing:var(--letter-display);text-transform:uppercase;margin:0 0 var(--space-2);color:var(--color-fg)}.pillar p{margin:0;color:var(--color-muted);font-size:14px;line-height:1.5}.landing-bottom{margin-top:var(--space-10);text-align:center;padding:var(--space-8) var(--space-4);border-top:1px dashed var(--color-border-strong)}.landing-stencil{font-family:var(--font-display);font-size:clamp(28px,7vw,44px);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in oklab,var(--color-accent) 75%,transparent);margin-bottom:var(--space-5)}.landing-bottom .primary.big{max-width:360px;margin:0 auto var(--space-4)}.landing-bottom .small{font-size:13px}@media (max-width: 480px){.landing{padding:var(--space-5) var(--space-3) var(--space-8)}.landing-hero{padding:var(--space-8) var(--space-3)}.landing-meta{gap:var(--space-3);font-size:10px}}.beta-badge{font-family:var(--font-display, var(--font-body));font-weight:900;font-size:11px;letter-spacing:.18em;padding:4px 8px;color:#000;background:var(--color-accent-hot, var(--color-accent, #ffcc00));border:2px solid #000;box-shadow:2px 2px #000;pointer-events:none;text-transform:uppercase;white-space:nowrap;line-height:1}body>.beta-badge{position:fixed;bottom:max(10px,env(safe-area-inset-bottom));left:max(10px,env(safe-area-inset-left));z-index:9999;transform:rotate(6deg)}body.on-landing>.beta-badge{display:none}.landing-tape-row .beta-badge{position:relative;transform:rotate(6deg)}.card.is-clickable{cursor:pointer}.card.is-clickable:hover{transform:translateY(-2px);transition:transform .12s}.player-modal-backdrop{position:fixed;inset:0;z-index:1000;background:color-mix(in oklab,#000 70%,transparent);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--space-3);animation:pm-fade .14s ease-out}@keyframes pm-fade{0%{opacity:0}to{opacity:1}}.player-modal{background:var(--color-bg-deep);border:1px solid var(--color-border-strong);border-left:4px solid var(--team-color, var(--color-tape));border-radius:var(--radius);box-shadow:var(--shadow-deep);width:100%;max-width:420px;padding:var(--space-5);position:relative;font-family:var(--font-body)}.player-modal .pm-close{position:absolute;top:8px;right:8px;background:transparent;border:0;color:var(--color-fg);font-size:22px;line-height:1;cursor:pointer;padding:6px 10px;font-family:var(--font-hud);font-weight:700}.player-modal .pm-close:hover{color:var(--color-tape)}.player-modal .pm-pos{display:inline-block;padding:4px 10px;background:var(--team-color, var(--color-tape));color:#fff;font-family:var(--font-hud);font-weight:800;letter-spacing:var(--letter-label);font-size:12px;border-radius:var(--radius-pill);text-transform:uppercase}.player-modal .pm-name{font-family:var(--font-display, var(--font-hud));font-size:clamp(22px,5vw,28px);font-weight:800;margin:var(--space-3) 0 var(--space-2);text-transform:uppercase;letter-spacing:.02em}.player-modal .pm-meta{color:var(--color-fg-muted);font-size:13px;margin-bottom:var(--space-4)}.player-modal .pm-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2) var(--space-3)}.player-modal .pm-stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:var(--color-bg-soft);border:1px solid var(--color-border-strong);border-radius:var(--radius)}.player-modal .pm-stat .k{font-family:var(--font-hud);font-size:10px;letter-spacing:var(--letter-label);text-transform:uppercase;color:var(--color-fg-muted)}.player-modal .pm-stat .v{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--color-fg)}.player-modal .pm-stat .v.accent{color:var(--color-accent)}.field-bar{display:flex;flex-direction:column;gap:6px;margin-top:4px}.field-track{position:relative;height:56px;border-radius:6px;background:linear-gradient(180deg,color-mix(in oklab,#1a4d2e 60%,var(--color-bg-deep)),color-mix(in oklab,#0f3520 60%,var(--color-bg-deep)));border:1px solid var(--color-border-strong);overflow:hidden}.field-line{position:absolute;top:0;bottom:0;width:1px;background:color-mix(in oklab,#fff 20%,transparent);transform:translate(-.5px)}.field-line-mid{background:color-mix(in oklab,#fff 45%,transparent);width:2px}.field-line-end{background:var(--color-accent);width:2px}.field-endzone{position:absolute;top:0;bottom:0;width:8%;background:repeating-linear-gradient(45deg,color-mix(in oklab,var(--color-accent) 35%,transparent) 0 6px,transparent 6px 12px);pointer-events:none}.field-endzone-near{left:0}.field-endzone-far{right:0}.field-ball{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:22px;color:var(--color-accent);text-shadow:0 0 12px var(--color-accent),0 2px 0 #000;transition:left .7s cubic-bezier(.2,.7,.2,1);z-index:3;pointer-events:none}.field-formation{position:absolute;inset:0;pointer-events:none}.field-token{position:absolute;transform:translate(-50%);font-family:var(--font-hud);font-weight:700;font-size:9px;letter-spacing:var(--letter-label);padding:2px 5px;background:color-mix(in oklab,var(--color-bg-deep) 85%,var(--color-accent));color:var(--color-fg);border:1px solid var(--color-accent);border-radius:3px;white-space:nowrap;animation:token-pop .22s var(--ease-pop);z-index:2}.field-token em{font-style:normal;margin-left:3px;color:var(--color-accent)}@keyframes token-pop{0%{opacity:0;transform:translate(-50%,-8px) scale(.7)}60%{opacity:1;transform:translate(-50%,2px) scale(1.08)}to{opacity:1;transform:translate(-50%) scale(1)}}.field-meta{display:flex;justify-content:space-between;font-family:var(--font-hud);font-weight:700;font-size:9px;letter-spacing:var(--letter-label);color:var(--color-muted);text-transform:uppercase}.play-preview .play-warn{display:inline-block;margin-top:4px;padding:3px 8px;background:color-mix(in oklab,#4a1a1a 80%,var(--color-bg-deep));color:#ffb89a;border:1px solid color-mix(in oklab,var(--color-accent-hot, #ff3d00) 60%,transparent);border-radius:3px;font-family:var(--font-hud);font-weight:700;font-size:10px;letter-spacing:var(--letter-label);text-transform:uppercase}.play-preview .play-warn.warn-strong{background:var(--color-accent-hot, #ff3d00);color:#000;animation:warn-pulse .9s ease-in-out infinite}@keyframes warn-pulse{50%{box-shadow:0 0 12px var(--color-accent-hot, #ff3d00)}}.play-preview.overloaded{border-color:color-mix(in oklab,var(--color-accent-hot, #ff3d00) 50%,var(--color-border))}.topnav-cutday{display:flex;align-items:center;margin:0 var(--space-3) 0 auto}.cutday-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);font-family:var(--font-hud);font-weight:700;font-size:11px;letter-spacing:var(--letter-label);text-transform:uppercase;color:var(--color-fg);user-select:none}.cutday-badge .cutday-dot{width:7px;height:7px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 6px var(--color-accent)}.cutday-badge .cutday-label{color:var(--color-muted);font-size:10px}.cutday-badge .cutday-eta{color:var(--color-fg);font-family:var(--font-mono)}.cutday-urgent{border-color:var(--color-accent)}.cutday-urgent .cutday-dot{animation:cutday-pulse 1.5s ease-in-out infinite}.cutday-critical{border-color:var(--color-danger);background:color-mix(in oklab,var(--color-danger) 15%,var(--color-bg))}.cutday-critical .cutday-dot{background:var(--color-danger);box-shadow:0 0 8px var(--color-danger);animation:cutday-pulse .7s ease-in-out infinite}.cutday-critical .cutday-eta{color:var(--color-danger)}@keyframes cutday-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.7}}@media (max-width: 540px){.cutday-badge .cutday-label{display:none}}.hud-milestones{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;padding:4px 0;border-top:1px solid var(--color-border)}.milestone{display:inline-flex;gap:6px;align-items:baseline;padding:3px 8px;background:var(--color-bg-deep);border:1px solid var(--color-border);border-radius:3px;font-family:var(--font-hud);font-weight:700;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);transition:border-color .2s,background .2s,color .2s}.milestone .milestone-label{font-style:normal}.milestone .milestone-score{font-family:var(--font-mono);font-style:normal;font-size:11px}.milestone.crossed{background:color-mix(in oklab,var(--color-accent) 20%,var(--color-bg-deep));border-color:var(--color-accent);color:var(--color-fg)}.milestone.crossed .milestone-score{color:var(--color-accent)}.milestone.crossed.flash{animation:milestone-flash 1.2s ease-out}@keyframes milestone-flash{0%{transform:scale(1);box-shadow:0 0 0 0 var(--color-accent)}20%{transform:scale(1.18);box-shadow:0 0 18px 4px var(--color-accent)}to{transform:scale(1);box-shadow:0 0 0 0 transparent}}body.cd-modal-open{overflow:hidden}.cd-modal-backdrop{position:fixed;inset:0;z-index:100;background:color-mix(in oklab,var(--color-bg) 92%,transparent);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:cd-modal-fade-in .22s var(--ease-out)}.cd-modal-backdrop.cd-modal-closing{animation:cd-modal-fade-out .16s forwards}@keyframes cd-modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes cd-modal-fade-out{0%{opacity:1}to{opacity:0}}.cd-modal{width:100%;max-width:760px;max-height:90vh;overflow-y:auto;background:var(--color-bg-deep);border:1px solid var(--color-border-strong);border-top:5px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-5);box-shadow:var(--shadow-deep)}.cd-modal-header{margin-bottom:var(--space-5)}.cd-modal-tape{display:inline-block;padding:2px 10px;background:var(--color-accent);color:var(--color-bg-deep);font-family:var(--font-hud);font-weight:700;font-size:11px;letter-spacing:var(--letter-label);text-transform:uppercase;margin-bottom:var(--space-2)}.cd-modal-header h1{font-family:var(--font-display);font-weight:400;font-size:clamp(28px,5vw,40px);line-height:1;letter-spacing:var(--letter-display);text-transform:uppercase;margin:0;color:var(--color-fg)}.cd-modal-subtitle{font-family:var(--font-body);color:var(--color-muted);margin:var(--space-2) 0 0}.cd-modal-section{margin-top:var(--space-5)}.cd-modal-section h2{font-family:var(--font-hud);font-weight:700;font-size:14px;letter-spacing:var(--letter-label);text-transform:uppercase;color:var(--color-fg);margin:0 0 var(--space-3);display:flex;align-items:center;gap:8px}.cd-modal-section-bullet{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:4px;font-size:12px;font-style:normal;color:var(--color-bg-deep)}.cd-modal-section-bullet.cd-cut{background:var(--color-danger);color:var(--color-fg)}.cd-modal-section-bullet.cd-fa{background:var(--color-accent)}.cd-modal-section-bullet.cd-mutator{background:var(--color-muted);color:var(--color-bg-deep)}.cd-modal-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3)}.cd-modal-card{padding:var(--space-3);border-radius:var(--radius);border-left:4px solid;background:var(--color-bg)}.cd-modal-card-cut{border-left-color:var(--color-danger)}.cd-modal-card-fa{border-left-color:var(--color-accent)}.cd-modal-card-pos{font-family:var(--font-hud);font-weight:700;font-size:12px;letter-spacing:var(--letter-label);color:var(--color-muted);text-transform:uppercase}.cd-modal-card-name{font-family:var(--font-display);font-size:18px;letter-spacing:.02em;margin:4px 0;color:var(--color-fg);text-transform:uppercase}.cd-modal-card-meta{display:flex;justify-content:space-between;gap:var(--space-2);font-family:var(--font-mono);font-size:11px;color:var(--color-muted)}.cd-modal-card-score{color:var(--color-fg)}.cd-modal-empty{color:var(--color-muted);font-style:italic;margin:0}.cd-modal-mutator-placeholder{margin:0;padding:var(--space-3);background:var(--color-bg);border-left:4px solid var(--color-muted);border-radius:var(--radius);font-family:var(--font-body);color:var(--color-muted);font-style:italic}.cd-modal-welcome{border-bottom:1px dashed var(--color-border);padding-bottom:var(--space-4)}.cd-modal-welcome-detail{font-family:var(--font-body);color:var(--color-fg);line-height:1.6;padding:var(--space-3);background:var(--color-bg);border-left:4px solid var(--color-accent);border-radius:var(--radius)}.cd-modal-footer{margin-top:var(--space-6);display:flex;justify-content:center}.cd-modal-footer .primary.big{padding:14px 28px;font-size:18px}
