@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-theme=lab-dark]{--bg: #0b0f14;--bg-grid: #121821;--surface: #121821;--surface-2: #18202b;--border: #233041;--text: #e6edf3;--muted: #8b98a9;--on-accent: #0b0f14;--evo: #3ddc97;--evo-soft: rgb(61 220 151 / .12);--arena: #a78bfa;--arena-soft: rgb(167 139 250 / .14);--warn: #fbbf24;--warn-soft: rgb(251 191 36 / .12);--danger: #f87171;--danger-soft: rgb(248 113 113 / .12);--info: #60a5fa;--info-soft: rgb(96 165 250 / .12);--chart-best: #3ddc97;--chart-avg: #60a5fa;--chart-worst: #fbbf24;--chart-envelope: rgb(61 220 151 / .12);--chart-grid: #233041;--chart-band: rgb(167 139 250 / .08);--radius: 12px;--radius-sm: 8px;--radius-pill: 999px;--border-w: 1px;--shadow: 0 1px 0 rgb(255 255 255 / .03) inset, 0 8px 24px rgb(0 0 0 / .35);--shadow-hover: 0 1px 0 rgb(255 255 255 / .04) inset, 0 12px 32px rgb(0 0 0 / .45);--ring: 0 0 0 3px rgb(61 220 151 / .35);--badge-tilt: 0deg;--font-display: "Inter", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-body: "Inter", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--display-transform: none;--display-tracking: normal;--fs-xs: 12px;--fs-sm: 13px;--fs-base: 15px;--fs-md: 18px;--fs-lg: 22px;--fs-xl: 28px;--fs-2xl: 36px;--texture: none;--hero-accent: linear-gradient(90deg, #3ddc97, #a78bfa);--motion-scale: 1;color-scheme:dark}[data-theme=lab-light]{--bg: #f6f8f7;--bg-grid: #eef2f0;--surface: #ffffff;--surface-2: #f1f5f3;--border: #d9e1dc;--text: #0f1a14;--muted: #55645b;--on-accent: #ffffff;--evo: #0a7350;--evo-soft: rgb(10 115 80 / .1);--arena: #6d4fd8;--arena-soft: rgb(109 79 216 / .1);--warn: #a15c00;--warn-soft: rgb(161 92 0 / .1);--danger: #c0262d;--danger-soft: rgb(192 38 45 / .1);--info: #1d5fd1;--info-soft: rgb(29 95 209 / .1);--chart-best: #0a7350;--chart-avg: #1d5fd1;--chart-worst: #a15c00;--chart-envelope: rgb(10 115 80 / .1);--chart-grid: #d9e1dc;--chart-band: rgb(109 79 216 / .06);--shadow: 0 1px 2px rgb(15 26 20 / .06), 0 4px 16px rgb(15 26 20 / .06);--shadow-hover: 0 2px 4px rgb(15 26 20 / .08), 0 8px 24px rgb(15 26 20 / .08);--ring: 0 0 0 3px rgb(10 115 80 / .3);--hero-accent: linear-gradient(90deg, #0a7350, #6d4fd8);color-scheme:light}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/anton-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Big Shoulders Stencil;font-style:normal;font-weight:700 900;font-display:swap;src:url(/fonts/big-shoulders-stencil-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}[data-theme=punk]{--bg: #0a0a0a;--bg-grid: #111111;--surface: #141414;--surface-2: #1e1e1e;--border: #f2efe6;--text: #f2efe6;--muted: #a8a49a;--on-accent: #0a0a0a;--evo: #c6ff00;--evo-soft: rgb(198 255 0 / .15);--arena: #ff2e88;--arena-soft: rgb(255 46 136 / .15);--warn: #ffd400;--warn-soft: rgb(255 212 0 / .15);--danger: #ff453a;--danger-soft: rgb(255 69 58 / .15);--info: #00e5ff;--info-soft: rgb(0 229 255 / .15);--chart-best: #c6ff00;--chart-avg: #f2efe6;--chart-worst: #ffd400;--chart-envelope: rgb(255 46 136 / .18);--chart-grid: #2a2a2a;--chart-band: rgb(0 229 255 / .08);--radius: 0;--radius-sm: 0;--radius-pill: 0;--border-w: 2px;--shadow: 4px 4px 0 var(--arena);--shadow-hover: 2px 2px 0 var(--arena);--ring: 0 0 0 3px var(--warn);--badge-tilt: -2deg;--font-display: "Anton", "Archivo Black", Impact, sans-serif;--display-transform: uppercase;--display-tracking: .02em;--texture: url(/textures/noise.svg);--hero-accent: repeating-linear-gradient(-45deg, var(--warn) 0 12px, #0a0a0a 12px 24px);color-scheme:dark}[data-theme=punk] .brand{font-family:Big Shoulders Stencil,Anton,Impact,sans-serif;font-size:var(--fs-lg);font-weight:900}[data-theme=punk] .card-hero:before{height:8px}[data-theme=punk] .hero{padding-top:48px;background-image:linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px);background-size:24px 24px,24px 24px}[data-theme=punk] .hero h1{font-family:Big Shoulders Stencil,Anton,Impact,sans-serif;font-weight:900;line-height:1}[data-theme=punk] :is(.card-hero,.empty-state) .btn{box-shadow:var(--shadow)}[data-theme=punk] :is(.card-hero,.empty-state) .btn:hover:not(:disabled){box-shadow:var(--shadow-hover);transform:translate(2px,2px)}[data-theme=punk] :is(.card-hero,.empty-state) .btn:active:not(:disabled){box-shadow:none;transform:translate(4px,4px)}[data-theme=punk] :is(.champion,.badge-arena,.champion-card-label){border:var(--border-w) solid var(--warn);box-shadow:4px 4px 0 var(--warn);font-family:var(--font-display);text-transform:var(--display-transform);letter-spacing:var(--display-tracking)}[data-theme=punk] .empty-state-icon{border:var(--border-w) solid var(--arena);border-radius:0;color:var(--arena)}[data-theme=punk] .toast{border-left-width:8px;box-shadow:var(--shadow)}@media (prefers-reduced-motion: no-preference){[data-theme=punk] .brand:hover,[data-theme=punk] .brand:focus-visible{animation:punk-glitch calc(.2s * var(--motion-scale)) steps(2,end)}[data-theme=punk] :is(.champion,.empty-state-icon,.badge-arena,.champion-card-label){transform:rotate(var(--badge-tilt))}[data-theme=punk] .toast{transform:rotate(calc(var(--badge-tilt) / 2))}}@keyframes punk-glitch{0%{text-shadow:-2px 0 var(--arena),2px 0 var(--info)}50%{text-shadow:2px 0 var(--arena),-2px 0 var(--info);transform:translate(1px)}to{text-shadow:none}}:root{font-family:var(--font-body);font-size:var(--fs-base);color:var(--text);background-color:var(--bg);background-image:var(--texture);accent-color:var(--evo)}*{box-sizing:border-box}body{margin:0;min-height:100vh}:focus-visible{outline:2px solid var(--evo);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}a,.btn,.chip,.segment,.tab,input,select,textarea,tbody tr,.app-header nav a{transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,opacity .15s ease}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}code{font-family:var(--font-mono);font-size:.92em}.app-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:24px;height:56px;padding:0 24px;background:color-mix(in srgb,var(--surface) 80%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:var(--border-w) solid var(--border)}.brand,.card-head h2{font-family:var(--font-display);text-transform:var(--display-transform);letter-spacing:var(--display-tracking)}.brand{display:inline-flex;flex:none;align-items:center;gap:8px;font-weight:700;font-size:var(--fs-md);color:var(--text);text-decoration:none}.brand-logo{flex:none}.brand-stop-evo{stop-color:var(--evo)}.brand-stop-arena{stop-color:var(--arena)}.brand-core{fill:var(--surface);opacity:.85}.header-panel{display:flex;flex:1;align-items:center;gap:16px;min-width:0;height:100%}.app-header nav{display:flex;gap:4px;min-width:0;height:100%;overflow-x:auto;scrollbar-width:none}.app-header nav a{display:inline-flex;flex:none;align-items:center;padding:0 10px;border-bottom:2px solid transparent;color:var(--muted);text-decoration:none;white-space:nowrap}.app-header nav a:hover{color:var(--text)}.app-header nav a.active{border-bottom-color:var(--evo);color:var(--text);font-weight:600}.header-tools{display:flex;flex:none;align-items:center;gap:8px;margin-left:auto}.app-header .header-burger{display:none}.health{display:inline-flex;align-items:center;gap:6px;padding:4px 6px;border-radius:var(--radius-sm);color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-xs);cursor:default}.health-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.health-ok .health-dot{background:var(--evo);animation:pulse 2.4s ease-in-out infinite}.health-down .health-dot{background:var(--danger)}.tooltip-below .tooltip-bubble{top:calc(100% + 6px);bottom:auto}.header-tools .tooltip-below .tooltip-bubble{right:0;left:auto;transform:none}.choice-button{padding:6px 8px}.language-code{font-size:var(--fs-sm);font-weight:600;letter-spacing:.04em}.theme-picker .menu-list button{display:flex;align-items:center;gap:10px}.header-sign-in{padding:6px 14px;white-space:nowrap}.account-button{padding:4px 8px 4px 4px;color:var(--text)}.avatar{display:inline-flex;flex:none;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--evo-soft);color:var(--evo);font-size:var(--fs-sm);font-weight:700}.account-name{max-width:160px;overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.menu-header{padding:6px 8px 8px;margin-bottom:4px;border-bottom:var(--border-w) solid var(--border);color:var(--muted);font-size:var(--fs-sm)}.account-role{display:flex;align-items:center;justify-content:space-between;gap:12px}@media (max-width: 767.98px){.app-header{gap:12px;padding:0 16px}.app-header .header-burger{display:inline-flex;margin-left:auto}.header-panel{position:absolute;top:100%;right:0;left:0;display:none;flex-direction:column;align-items:stretch;gap:12px;height:auto;max-height:calc(100vh - 56px);padding:12px 16px 16px;overflow-y:auto;background:var(--surface);border-bottom:var(--border-w) solid var(--border);box-shadow:var(--shadow-hover)}.app-header-open .header-panel{display:flex}.app-header nav{flex-direction:column;height:auto}.app-header nav a{padding:10px 12px;border-bottom:0;border-left:2px solid transparent}.app-header nav a.active{border-left-color:var(--evo);background:var(--surface-2)}.header-tools{flex-wrap:wrap;margin-left:0;padding-top:12px;border-top:var(--border-w) solid var(--border)}.header-tools>:last-child{margin-left:auto}.header-tools .choice-menu .menu-list,.header-tools .tooltip-below .tooltip-bubble{right:auto;left:0}}.theme-swatch{display:inline-flex;flex:none;align-items:center;gap:3px;padding:3px 5px;background:var(--bg);border:var(--border-w) solid var(--border);border-radius:var(--radius-pill)}.theme-swatch-auto{gap:0;padding:0;overflow:hidden}.theme-swatch-half{display:inline-flex;padding:3px 5px;background:var(--bg)}.swatch-dot{width:8px;height:8px;border-radius:50%}.swatch-evo{background:var(--evo)}.swatch-arena{background:var(--arena)}.theme-swatch-large{justify-content:flex-end;align-items:flex-end;width:100%;height:64px;padding:8px;border-radius:var(--radius-sm)}.theme-swatch-large .swatch-dot{width:14px;height:14px}.theme-swatch-large.theme-swatch-auto{padding:0}.theme-swatch-large .theme-swatch-half{flex:1;align-self:stretch;align-items:flex-end;justify-content:flex-end;padding:8px}.theme-choices{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.theme-choice{display:grid;gap:8px;padding:8px;border:var(--border-w) solid var(--border);border-radius:var(--radius);cursor:pointer}.theme-choice-active{border-color:var(--evo);box-shadow:var(--ring)}.theme-choice-name{display:flex;align-items:center;gap:8px}.actions{display:inline-flex;gap:8px}.auth-page{display:grid;grid-template-columns:minmax(0,1fr);min-height:min(720px,calc(100vh - 104px));background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.auth-aside{display:none}.auth-panel{display:grid;place-items:center;padding:40px 24px}.auth-form{display:grid;gap:24px;width:min(400px,100%)}.auth-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:var(--fs-lg);font-weight:700;letter-spacing:var(--display-tracking);text-transform:var(--display-transform)}.auth-brand-compact{justify-self:center}.auth-form .form{gap:20px}.auth-form .field-hint,.auth-form .field-rules{font-size:var(--fs-xs)}.auth-submit{min-height:44px}.auth-blocked{margin:-8px 0 0;font-size:var(--fs-xs)}@media (min-width: 1024px){.auth-page{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.auth-aside{display:grid;grid-template-rows:auto 1fr auto;gap:32px;padding:40px;border-right:var(--border-w) solid var(--border);background-color:var(--surface-2);background-image:radial-gradient(circle at 30% 70%,var(--evo-soft),transparent 65%),linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px);background-size:100% 100%,24px 24px,24px 24px}.auth-aside>div:nth-child(2){align-self:end}.auth-brand-compact{display:none}}.auth-pitch{max-width:20ch;margin:0 0 12px;font-family:var(--font-display);font-size:var(--fs-xl);font-weight:700;line-height:1.15;letter-spacing:var(--display-tracking);text-transform:var(--display-transform)}.auth-lead{max-width:44ch;margin:0;line-height:1.5;color:var(--muted)}.tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:var(--border-w) solid var(--border)}.tab{padding:8px 12px;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--muted);font:inherit;cursor:pointer}.tab-active{border-bottom-color:var(--evo);color:var(--text);font-weight:600}.link-button{padding:0;border:0;background:none;color:var(--info);font:inherit;cursor:pointer}.link-button:hover{text-decoration:underline}.forgot{justify-self:end;margin-top:-8px;font-size:var(--fs-sm)}.app-main{max-width:1180px;margin:0 auto;padding:24px}.stack{display:grid;gap:20px}.stack>*{min-width:0}.columns{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.card{background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.card-hero{position:relative;overflow:hidden}.card-hero:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--hero-accent)}.card-danger{border-color:var(--danger)}.card-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}.card-head h2{margin:0;font-size:var(--fs-md);font-weight:600}.card h3{margin:20px 0 10px;font-size:var(--fs-sm);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.card-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.form{display:grid;gap:14px}.form-row{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.form-row>.field{flex:1 1 180px}.filters{margin-bottom:16px}.filters>.field{flex:0 1 auto}.filters .field select{width:auto;max-width:100%}.field{display:grid;gap:4px}.field-check{align-self:center}.field-check label{display:flex;align-items:center;gap:8px}.field-submit{align-self:flex-end}.field label{font-size:var(--fs-sm);color:var(--muted)}.field-hint .icon{margin-right:4px;vertical-align:-1px}.field-rules{display:grid;gap:2px;margin:2px 0 0;padding:0;list-style:none;font-size:var(--fs-sm)}.field-rule{display:flex;align-items:center;gap:6px;color:var(--muted)}.field-rule .icon{flex:none}.field-rule-ok{color:var(--evo)}.field-rule-error{color:var(--danger)}input[aria-invalid=true]{border-color:var(--danger)}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap-reveal input{padding-right:40px}.input-wrap-reveal.input-wrap-status input{padding-right:64px}.input-reveal,.input-status{position:absolute;display:inline-grid;place-items:center}.input-reveal{right:4px;width:32px;height:32px;padding:0;border:0;border-radius:var(--radius-sm);background:none;color:var(--muted);cursor:pointer}.input-reveal:hover,.input-reveal[aria-pressed=true]{color:var(--text)}.input-reveal:focus-visible{outline:none;box-shadow:var(--ring)}.input-status{right:10px;pointer-events:none}.input-wrap-reveal .input-status{right:40px}.input-status-ok{color:var(--evo)}.input-status-error{color:var(--danger)}.strength{display:flex;align-items:center;gap:10px}.strength[hidden]{display:none}.strength-bar{display:grid;flex:1;grid-template-columns:repeat(4,1fr);gap:4px}.strength-bar>span{height:4px;border-radius:var(--radius-pill);background:var(--border);transition:background-color .15s ease}.strength-1 .strength-on{background:var(--danger)}.strength-2 .strength-on{background:var(--warn)}.strength-3 .strength-on{background:color-mix(in srgb,var(--warn) 35%,var(--evo))}.strength-4 .strength-on{background:var(--evo)}.strength small{flex:none;min-width:12ch;text-align:right;font-size:var(--fs-xs);color:var(--muted)}input,select,textarea{padding:8px 10px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font:inherit}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--muted)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--evo);box-shadow:var(--ring)}.field input:not([type=checkbox]):not([type=radio]),.field select{width:100%}input:disabled,select:disabled,textarea:disabled{color:var(--muted);opacity:.7;cursor:not-allowed}.fieldset{border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;display:grid;gap:10px}.fieldset legend{padding:0 6px;font-size:var(--fs-sm);color:var(--muted)}.button-row{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-weight:500;text-decoration:none;cursor:pointer}.btn:focus-visible{outline:none;box-shadow:var(--ring)}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--evo);border-color:var(--evo);color:var(--on-accent)}.btn-primary:hover:not(:disabled){background:var(--evo);filter:brightness(1.1)}.btn-danger{color:var(--danger);border-color:var(--danger)}.btn-arena{background:var(--arena);border-color:var(--arena);color:var(--on-accent)}.btn-arena:hover:not(:disabled){background:var(--arena);filter:brightness(1.1)}.btn-quiet{background:transparent;border-color:transparent;color:var(--muted)}.btn-quiet:hover:not(:disabled){color:var(--text)}.btn-icon{padding:6px;line-height:0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:8px 10px;text-align:left;border-bottom:var(--border-w) solid var(--border);white-space:nowrap}th{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--surface-2)}td:first-child{font-weight:600}tbody tr:nth-child(2n){background:color-mix(in srgb,var(--surface-2) 40%,transparent)}tbody tr:hover{background:var(--surface-2)}tr.row-link{cursor:pointer}tr.row-link:focus-visible{outline:2px solid var(--evo);outline-offset:-2px}td.right,th.right,td.numeric,th.numeric{text-align:right}td.numeric{font-family:var(--font-mono);font-variant-numeric:tabular-nums}td.numeric .pill{font-family:var(--font-body)}.row-actions{display:inline-flex;gap:8px;justify-content:flex-end}.error-text{display:block;color:var(--danger);white-space:normal}a{color:var(--info)}.muted{color:var(--muted);font-size:var(--fs-sm)}.banner{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;border-radius:var(--radius-sm);border:var(--border-w) solid transparent;border-left:3px solid var(--border);background:var(--surface-2)}.banner-error{background:var(--danger-soft);border-left-color:var(--danger);color:var(--danger)}.banner-warn{background:var(--warn-soft);border-left-color:var(--warn);color:var(--warn)}.banner-info{background:var(--info-soft);border-left-color:var(--info);color:var(--info)}.pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:500;border:var(--border-w) solid transparent;white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill-active:before{animation:pulse 1.6s ease-in-out infinite}.pill-muted:before{display:none}.pill-active{background:var(--info-soft);color:var(--info)}.pill-pending{background:var(--warn-soft);color:var(--warn)}.pill-done{background:var(--evo-soft);color:var(--evo)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-error{background:var(--danger-soft);color:var(--danger)}.pill-arena{background:var(--arena-soft);color:var(--arena)}.pill-neutral{background:var(--surface-2);color:var(--muted)}.pill-muted{background:transparent;color:var(--muted)}.metrics{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stat-tile{display:grid;align-content:start;gap:4px;padding:14px 16px;background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--radius-sm)}.stat-label{font-size:var(--fs-xs);color:var(--muted)}.stat-value{font-family:var(--font-mono);font-size:var(--fs-xl);font-weight:600;font-variant-numeric:tabular-nums;line-height:1.1}.stat-trend{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.stat-trend-good{color:var(--evo)}.stat-trend-bad{color:var(--danger)}.stat-trend-flat{color:var(--muted)}.definitions{display:grid;gap:10px 24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0 0 16px}.definitions dt{font-size:var(--fs-xs);color:var(--muted)}.definitions dd{margin:0}.progress{position:relative;width:100%;height:6px;margin-bottom:14px;overflow:hidden;background:var(--surface-2);border-radius:var(--radius-pill)}.progress-fill{display:block;height:100%;background:linear-gradient(90deg,var(--evo),var(--arena));border-radius:inherit;transition:width .3s ease}.progress-live .progress-fill{animation:pulse 2s ease-in-out infinite}.progress-indeterminate .progress-fill{width:33%;animation:sweep 1.4s ease-in-out infinite}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(300%)}}.chart{margin:0}.chart svg{display:block;width:100%;height:260px;background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius-sm)}.chart .grid{stroke:var(--chart-grid);stroke-width:1}.chart .axis{fill:var(--muted);font-size:var(--fs-xs)}.chart figcaption{display:flex;gap:16px;margin-top:8px;font-size:var(--fs-sm);color:var(--muted)}.legend{display:inline-flex;align-items:center;gap:6px}.legend-swatch{width:12px;height:3px;border-radius:var(--radius-pill)}.serie-best{stroke:var(--chart-best);background:var(--chart-best)}.serie-avg{stroke:var(--chart-avg);background:var(--chart-avg)}.serie-worst{stroke:var(--chart-worst);background:var(--chart-worst)}.hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:24px 40px;padding:40px;background-color:var(--surface);background-image:radial-gradient(circle at 75% 40%,var(--evo-soft),transparent 60%),linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px);background-size:100% 100%,24px 24px,24px 24px}.hero h1{margin:0 0 12px;font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:700;line-height:1.15;letter-spacing:var(--display-tracking);text-transform:var(--display-transform)}.hero-lead{max-width:46ch;margin:0 0 24px;font-size:var(--fs-md);line-height:1.5;color:var(--muted)}.hero-chart .chart svg{height:220px;background:transparent;border-color:transparent}.hero-chart>.muted{margin:4px 0 0}.hero-chart .serie-best{stroke-dasharray:4000;animation:draw-line 2.4s ease-out}@keyframes draw-line{0%{stroke-dashoffset:4000}}@media (max-width: 899.98px){.hero{grid-template-columns:minmax(0,1fr);padding:24px 20px}.hero h1{font-size:var(--fs-xl)}}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.game-card{display:flex;flex-direction:column;border:var(--border-w) solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.game-card:hover,.game-card:focus-within{transform:translateY(-2px);border-color:var(--evo);box-shadow:var(--shadow-hover)}.game-card-body{display:grid;align-content:start;gap:8px;padding:14px 16px;flex:1}.card .game-card-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0;font-size:var(--fs-md);font-weight:600}.game-card-slug{font-size:var(--fs-xs);font-weight:400;color:var(--muted)}.game-card-description{margin:0;font-size:var(--fs-sm);color:var(--muted)}.game-card-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 16px;border-top:var(--border-w) solid var(--border);font-size:var(--fs-sm)}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.tag{padding:2px 10px;border:var(--border-w) solid var(--border);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted)}.game-thumb{display:block;width:100%;height:120px;background:var(--surface-2);border-bottom:var(--border-w) solid var(--border)}.thumb-board{fill:var(--surface);stroke:var(--border)}.thumb-hole{fill:var(--surface-2)}.thumb-evo{fill:var(--evo)}.thumb-arena{fill:var(--arena)}.thumb-line,.thumb-x,.thumb-o{fill:none;stroke-width:3;stroke-linecap:round}.thumb-line{stroke:var(--border)}.thumb-x{stroke:var(--evo)}.thumb-o{stroke:var(--arena)}.thumb-tile{fill:var(--surface);stroke:var(--border)}.thumb-tile-moving{stroke:var(--evo);stroke-width:2}.thumb-tile-text{fill:var(--text);font-family:var(--font-mono);font-size:var(--fs-base);font-weight:600}.code-block{margin:0 0 12px;padding:12px;overflow-x:auto;border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--fs-sm)}.encounters{display:flex;flex-direction:column;gap:.25rem}.encounter{border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);padding:.5rem .75rem}.encounter>summary{cursor:pointer}.encounter[open]>summary{margin-bottom:.5rem}.tournament-name{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.4rem}.skeleton-group{display:grid;gap:10px;padding:4px 0}.skeleton{display:block;height:14px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-2) 25%,var(--border) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.skeleton:last-child{width:60%}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.empty-state{display:grid;justify-items:center;gap:12px;padding:32px 16px;text-align:center;color:var(--muted)}.empty-state p{max-width:48ch;margin:0}.empty-state-icon{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--surface-2);color:var(--muted)}.guest-prompt{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:16px 20px;border:var(--border-w) dashed var(--border);border-radius:var(--radius)}.guest-prompt p{flex:1 1 240px;margin:0}.guest-prompt-icon{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--arena-soft);color:var(--arena)}.live{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-sm);color:var(--muted);font-variant-numeric:tabular-nums}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--evo);animation:pulse 1.6s ease-in-out infinite}.live-paused .live-dot{background:var(--muted);animation:none}.gauge{display:inline-flex;align-items:center;gap:8px}.gauge-segments{display:inline-flex;gap:3px}.gauge-segments>span{width:10px;height:6px;border-radius:var(--radius-pill);background:var(--border)}.gauge-segments>.gauge-on,.gauge-bar>span{background:var(--evo)}.gauge-bar{display:inline-block;width:64px;height:6px;overflow:hidden;border-radius:var(--radius-pill);background:var(--border)}.gauge-bar>span{display:block;height:100%}.gauge-full .gauge-segments>.gauge-on,.gauge-full .gauge-bar>span{background:var(--warn)}.gauge-text{font-family:var(--font-mono);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.sparkline{display:inline-block;vertical-align:middle;overflow:visible}.sparkline polyline{fill:none;stroke:var(--chart-best);stroke-width:1.5;stroke-linejoin:round;vector-effect:non-scaling-stroke}.sparkline circle{fill:var(--chart-best)}.menu{position:relative;display:inline-block}.menu-list{position:absolute;top:calc(100% + 6px);z-index:20;display:grid;gap:2px;min-width:200px;margin:0;padding:6px;list-style:none;background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-hover)}.menu-end{right:0}.menu-start{left:0}.menu-list button,.menu-list a{display:block;width:100%;padding:6px 8px;border:0;border-radius:var(--radius-sm);background:none;color:var(--text);font:inherit;text-align:left;text-decoration:none;white-space:nowrap;cursor:pointer}.menu-list button:hover:not(:disabled),.menu-list button:focus-visible,.menu-list a:hover,.menu-list a:focus-visible{outline:none;background:var(--surface-2)}.menu-list button:disabled{color:var(--muted);cursor:not-allowed}.menu-list [aria-checked=true]{font-weight:600}.menu-list .menu-danger{color:var(--danger)}.menu-reason{display:block;padding:0 8px 6px;font-size:var(--fs-xs);color:var(--muted);white-space:normal}.tooltip{position:relative;display:inline-flex;vertical-align:middle}.tooltip-trigger{display:inline-flex;padding:2px;border:0;border-radius:50%;background:none;color:var(--muted);cursor:help}.tooltip-trigger:hover{color:var(--text)}.tooltip-bubble{position:absolute;bottom:calc(100% + 6px);left:50%;z-index:30;width:max-content;max-width:260px;padding:6px 10px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);box-shadow:var(--shadow);color:var(--text);font-size:var(--fs-xs);font-weight:400;text-align:left;text-transform:none;letter-spacing:normal;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%);transition:opacity .15s ease,visibility .15s ease}.tooltip:hover .tooltip-bubble,.tooltip:focus-within .tooltip-bubble{opacity:1;visibility:visible}.tooltip-dismissed .tooltip-bubble,.tooltip-dismissed:hover .tooltip-bubble,.tooltip-dismissed:focus-within .tooltip-bubble{opacity:0;visibility:hidden}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border:var(--border-w) solid var(--border);border-radius:var(--radius-pill);background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-sm);cursor:pointer}.chip:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.chip-on,.chip-on:hover:not(:disabled){background:var(--evo-soft);border-color:var(--evo);color:var(--evo)}.chip:focus-visible,.segment:focus-visible{outline:none;box-shadow:var(--ring)}.chip-count{font-family:var(--font-mono);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.segmented{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--radius-sm)}.segment{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:0;border-radius:var(--radius-sm);background:none;color:var(--muted);font:inherit;font-size:var(--fs-sm);cursor:pointer}.segment:hover:not(:disabled){color:var(--text)}.segment[aria-checked=true]{background:var(--surface);box-shadow:var(--shadow);color:var(--text);font-weight:600}.segmented-fill{display:flex}.segmented-fill .segment{flex:1;justify-content:center;padding:8px 12px}.segment:disabled{opacity:.5;cursor:not-allowed}.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;font-size:var(--fs-sm);color:var(--muted)}.breadcrumb li+li:before{content:"/";margin-right:6px;color:var(--border)}.breadcrumb a{color:var(--muted);text-decoration:none}.breadcrumb a:hover{color:var(--text);text-decoration:underline}.breadcrumb [aria-current=page]{color:var(--text)}.modal{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 64px);padding:0;border:var(--border-w) solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-hover);color:var(--text)}.modal-wide{width:min(880px,calc(100vw - 32px))}.modal::backdrop{background:color-mix(in srgb,var(--bg) 75%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-panel{display:grid;grid-template-rows:auto 1fr auto;max-height:inherit}.modal-head{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:var(--border-w) solid var(--border)}.modal-head h2{margin:0;font-family:var(--font-display);font-size:var(--fs-md);font-weight:600;text-transform:var(--display-transform);letter-spacing:var(--display-tracking)}.modal-head .btn-icon{margin-left:auto}.modal-body{padding:20px;overflow-y:auto}.modal-foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;padding:14px 20px;border-top:var(--border-w) solid var(--border)}.toasts{position:fixed;right:16px;bottom:16px;z-index:100;display:grid;gap:8px;width:min(360px,calc(100vw - 32px))}.toast{display:flex;align-items:center;gap:8px;padding:10px 8px 10px 14px;border:var(--border-w) solid var(--border);border-left:3px solid var(--info);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-hover);animation:toast-in .15s ease-out}.toast>:first-child{flex:1}.toast a{color:inherit}.toast-success{border-left-color:var(--evo)}.toast-warn{border-left-color:var(--warn)}.toast-error{border-left-color:var(--danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.tab{display:inline-flex;align-items:center;gap:6px}.tab-locked{cursor:not-allowed;opacity:.7}.game-thumb-mini{display:inline-block;flex:none;width:22px;height:22px;background:none;border:0;vertical-align:middle}.game-label{display:inline-flex;align-items:center;gap:8px}.tournament-cell{display:grid;gap:4px}.tournament-title{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.tournament-title .tournament-name a{color:var(--text);font-weight:600;text-decoration:none}.tournament-title .tournament-name a:hover{text-decoration:underline}.tournament-meta{display:flex;align-items:flex-start;gap:6px;font-size:var(--fs-xs);font-weight:400;color:var(--muted);white-space:normal}.moment{display:inline-flex;align-items:center;gap:6px}.tournament-meta .icon{flex:none;margin-top:1px}.tournament-card-body .champion{justify-self:start}.moment-mode{display:inline-flex;color:var(--muted)}.champion{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--arena-soft);color:var(--arena)}.champion-owner{font-size:var(--fs-xs);color:var(--muted)}.tournament-cards{display:none;margin:0;padding:0;list-style:none}@media (max-width: 767.98px){.tournament-table{display:none}.tournament-cards{display:grid;gap:10px}}.tournament-card{position:relative;display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface);transition:background-color .15s ease}.tournament-card:hover{background:var(--surface-2)}.tournament-card .game-thumb-mini{margin-top:2px}.tournament-card-body{display:grid;flex:1;gap:6px;min-width:0;font-size:var(--fs-sm)}.tournament-card .tournament-name a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.tournament-card .tournament-name a:focus-visible{outline:none}.tournament-card:focus-within{box-shadow:var(--ring)}.tournament-card .menu,.tournament-card .pill{position:relative;z-index:1}.card>.guest-prompt{margin-top:16px}.rankings-lead{margin:0 0 8px}.explain{margin-bottom:16px;font-size:var(--fs-sm);color:var(--muted)}.explain>summary{width:fit-content;color:var(--info);cursor:pointer}.explain>p{max-width:72ch;margin:8px 0 0}.rankings-controls{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 16px}.rankings-controls .filters{margin:0}.season-head{display:grid;gap:8px;padding:14px 16px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.season-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.card .season-title h3{margin:0}.season-progress{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted);white-space:nowrap}.season-progress .progress{flex:1;margin:0;background:var(--border)}.season-head>.muted{margin:0}.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;margin:0;padding:0;list-style:none}.podium-step{display:grid;justify-items:center;gap:4px;padding:16px 12px;border:var(--border-w) solid var(--border);border-top:3px solid var(--muted);border-radius:var(--radius-sm);background:var(--surface);text-align:center;min-width:0}.podium-1{order:2;padding-top:28px;box-shadow:var(--shadow)}.podium-2{order:1}.podium-3{order:3}.podium-1{border-top-color:var(--warn)}.podium-3{border-top-color:color-mix(in srgb,var(--warn) 55%,var(--danger))}.podium-medal{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--muted);color:var(--on-accent);font-family:var(--font-mono);font-weight:700}.podium-player{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium-1 .podium-medal{background:var(--warn)}.podium-3 .podium-medal{background:color-mix(in srgb,var(--warn) 55%,var(--danger))}.podium-rating{font-family:var(--font-mono);font-size:var(--fs-xl);font-variant-numeric:tabular-nums}@media (max-width: 479.98px){.podium{grid-template-columns:1fr}.podium-step{order:0}}.podium-art{width:192px;height:96px}.podium-art rect{fill:var(--surface-2);stroke:var(--border)}.podium-art text{fill:var(--muted);font-family:var(--font-mono);font-size:var(--fs-sm);font-weight:600}.record{display:inline-flex;align-items:center;gap:8px}.record-bar{display:inline-flex;width:72px;height:6px;overflow:hidden;border-radius:var(--radius-pill);background:var(--surface-2)}.record-wins{background:var(--evo)}.record-draws{background:var(--muted)}.record-losses{background:var(--danger)}.record-text{font-family:var(--font-mono);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--muted)}.game-sheets{display:grid;gap:12px}.game-sheet{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:16px 24px;padding:16px;border:var(--border-w) solid var(--border);border-radius:var(--radius);background:var(--surface)}.game-sheet-id{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:start;gap:16px}.game-sheet-id .game-thumb{height:96px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm)}.game-sheet-name{display:grid;gap:6px}.game-sheet-name p{margin:0}.game-sheet-facts{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:10px 16px;margin:0}.game-sheet-facts>div{display:contents}.game-sheet-facts dt{padding-top:3px;font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.game-sheet-facts dd{margin:0}.game-sheet-facts dd.numeric{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@media (max-width: 899.98px){.game-sheet{grid-template-columns:1fr}}@media (max-width: 479.98px){.game-sheet-id,.game-sheet-facts{grid-template-columns:1fr}.game-sheet-facts{gap:4px}.game-sheet-facts dd+dt,.game-sheet-facts>div+div dt{margin-top:8px}}.tag-sized{display:inline-flex;align-items:center;gap:6px}.tag-size{padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text)}.tag-on{border-color:var(--evo);color:var(--evo)}.network{display:grid;gap:6px;margin:0;max-width:240px}.network svg{display:block;width:100%;height:auto}.network-link{stroke:var(--border);stroke-width:2}.network-input{fill:var(--info)}.network-hidden{fill:var(--evo)}.network-output{fill:var(--arena)}.network figcaption{display:flex;flex-wrap:wrap;gap:4px 12px;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted)}.network-sizes{color:var(--text)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.page-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.page-head h1{margin:0 auto 0 0;font-family:var(--font-display);font-size:var(--fs-xl);font-weight:700;letter-spacing:var(--display-tracking);text-transform:var(--display-transform)}.page-head .menu-list{min-width:240px}.btn-warn{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.btn-danger-quiet{color:var(--danger)}.btn-primary[aria-disabled=true]{background:var(--surface-2);border-color:var(--border);color:var(--muted);opacity:1}.button-row-end{justify-content:flex-end}.bell-button{position:relative}.bell-badge{position:absolute;top:-2px;right:-4px;min-width:18px;padding:1px 5px;border-radius:var(--radius-pill);background:var(--danger);color:var(--on-accent);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:700;line-height:1.3;text-align:center}.bell-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:20;width:min(400px,calc(100vw - 32px));max-height:min(70vh,560px);overflow-y:auto;background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-hover)}.bell-head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 8px 10px 14px;background:var(--surface);border-bottom:var(--border-w) solid var(--border)}.bell-head .btn{flex:none;white-space:nowrap}.bell-panel:focus-visible{outline:none}.bell-head h2{margin:0;font-size:var(--fs-base);font-weight:600}.bell-empty,.bell-more{margin:0;padding:14px}.bell-group+.bell-group{border-top:var(--border-w) solid var(--border)}.bell-group-title{display:flex;align-items:center;gap:6px;margin:0;padding:10px 14px 4px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.bell-group-population .icon{color:var(--evo)}.bell-group-tournament .icon{color:var(--arena)}.bell-group ul{margin:0;padding:0 0 6px;list-style:none}.bell-item{display:flex;align-items:flex-start;gap:8px;padding:6px 8px 6px 14px}.bell-item:hover{background:var(--surface-2)}.bell-text{display:grid;flex:1;gap:2px;font-size:var(--fs-sm);line-height:1.4}.bell-text a{color:var(--text);text-decoration:none}.bell-text a:hover{text-decoration:underline}.bell-text time{font-size:var(--fs-xs)}.key-figures .stat-tile{align-content:start}.key-figures .skeleton-group{padding:14px 16px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm)}.stat-label-row{display:inline-flex;align-items:center;gap:4px}.gauge-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.dashboard-columns{display:grid;gap:20px}.dashboard-columns>*{min-width:0}@media (min-width: 1440px){.app-main:has(.dashboard-columns){max-width:1560px}.dashboard-columns{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start}}.catalogue>summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;cursor:pointer}.catalogue>summary h2{display:inline;margin:0;font-family:var(--font-display);font-size:var(--fs-md);font-weight:600;text-transform:var(--display-transform);letter-spacing:var(--display-tracking)}.catalogue[open]>summary{margin-bottom:8px}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:16px}.toolbar-menus{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-left:auto}.toolbar-menus .choice-button{display:inline-flex;align-items:center;gap:6px;color:var(--text)}.toolbar-menu-label{color:var(--muted)}.toolbar-select{display:inline-flex;align-items:center;gap:6px;padding:0 8px;font-size:var(--fs-sm)}.toolbar-select select{width:auto;max-width:180px}.view-switch{display:flex;justify-content:flex-end;margin-bottom:12px}.population-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:0;padding:0;list-style:none}.population-card{position:relative;display:flex;flex-direction:column;gap:10px;height:100%;padding:16px;border:var(--border-w) solid var(--border);border-radius:var(--radius);background:var(--surface);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.population-card:hover,.population-card:focus-within{transform:translateY(-2px);border-color:var(--evo);box-shadow:var(--shadow-hover)}.population-card-live{border-left:3px solid var(--evo)}.population-card-head{display:flex;align-items:center;gap:8px;min-height:32px}.population-card-title{flex:1;min-width:0;margin:0;overflow:hidden;font-size:var(--fs-md);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.card-link{color:var(--text);text-decoration:none}.card-link:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.card-link:focus-visible{outline:none}.card-link:focus-visible:after{box-shadow:var(--ring)}.population-card .menu,.population-card .btn,.population-card .sparkline{position:relative;z-index:1}.population-card-meta,.population-card-state{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:var(--fs-sm)}.population-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;margin:0;font-size:var(--fs-sm)}.population-progress .progress{margin:0}.population-progress>.muted{grid-column:1 / -1}.population-card-fitness{display:grid;gap:2px}.population-fitness{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.population-fitness>strong{font-size:var(--fs-lg)}.population-card-foot{display:flex;margin-top:auto;padding-top:4px}.population-action{min-width:112px}.dashboard-activity h3:first-of-type{margin-top:0}.activity-list{margin:0;padding:0;list-style:none}.activity-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px 0}.activity-row+.activity-row{border-top:var(--border-w) solid var(--border)}.activity-icon{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--evo-soft);color:var(--evo)}.activity-tournament .activity-icon{background:var(--arena-soft);color:var(--arena)}.activity-main{display:grid;gap:2px;min-width:0;font-size:var(--fs-sm)}.activity-title{overflow:hidden;font-size:var(--fs-base);text-overflow:ellipsis;white-space:nowrap}.activity-title a{color:var(--text);text-decoration:none}.activity-title a:hover{text-decoration:underline}.activity-progress{display:grid;grid-template-columns:minmax(96px,1fr) auto;align-items:center;gap:2px 10px}.activity-progress .progress{margin:0}.activity-progress>.muted{grid-column:1 / -1}.activity-side{display:grid;justify-items:end;gap:4px;text-align:right}.activity-when{font-size:var(--fs-xs);white-space:nowrap}.activity-rank{font-weight:600;color:var(--arena)}.activity-done{color:var(--evo)}.activity-more{margin-top:4px;padding-left:0;color:var(--info)}.wizard{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0}.wizard-steps{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 20px;padding:0;list-style:none;counter-reset:none}.wizard-step{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:var(--fs-sm)}.wizard-step+.wizard-step:before{content:"";width:24px;height:var(--border-w);background:var(--border)}.wizard-step-current{color:var(--text);font-weight:600}.wizard-step-number{display:inline-grid;place-items:center;width:22px;height:22px;border:var(--border-w) solid var(--border);border-radius:50%;font-family:var(--font-mono);font-size:var(--fs-xs)}.wizard-step-current .wizard-step-number{border-color:var(--evo);background:var(--evo);color:var(--on-accent)}.wizard-step-done .wizard-step-number{border-color:var(--evo);color:var(--evo)}.wizard-step-button{display:inline-flex;align-items:center;gap:8px;padding:2px 4px;border:0;border-radius:var(--radius-sm);background:none;color:inherit;font:inherit;cursor:pointer}.wizard-step-button:hover{color:var(--text)}.wizard-step-button:focus-visible{outline:none;box-shadow:var(--ring)}.game-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:0;padding:0;border:0}.game-choice{display:grid;overflow:hidden;border:var(--border-w) solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer}.game-choice:hover{border-color:var(--muted)}.game-choice:focus-within{box-shadow:var(--ring)}.game-choice-on,.game-choice-on:hover{border-color:var(--evo);outline:var(--border-w) solid var(--evo)}.game-choice .game-thumb{height:96px}.game-choice-body{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:10px 12px 12px}.wizard-network{min-height:72px}.wizard-group{margin:0;padding:0;border:0}.wizard-group>legend{margin-bottom:10px;padding:0;font-size:var(--fs-sm);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.wizard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px 20px}.wizard-grid .field-hint{min-height:2.6em}.wizard-summary{display:grid;gap:2px;margin:0;padding:12px 14px;border-radius:var(--radius-sm);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--fs-sm)}.wizard-summary .stat-label{font-family:var(--font-body)}.wizard-foot{align-items:center}.wizard-reason{flex:1;margin:0}@media (max-width: 599.98px){.wizard-grid{grid-template-columns:minmax(0,1fr)}}.layer-editor{margin:0;padding:0;border:0}.layer-editor legend{padding:0;margin-bottom:6px;font-size:var(--fs-sm);font-weight:500}.layer-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none}.layer-chip{display:inline-flex;align-items:center;border:var(--border-w) solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2)}.layer-chip:focus-within{border-color:var(--evo);box-shadow:var(--ring)}.layer-chip-invalid{border-color:var(--danger)}.layer-chip input{width:5ch;padding:4px 0 4px 10px;border:0;background:none;color:var(--text);font-family:var(--font-mono);font-size:var(--fs-sm);text-align:right;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.layer-chip input::-webkit-inner-spin-button,.layer-chip input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.layer-chip input:focus-visible{outline:none;box-shadow:none}.layer-remove{display:inline-flex;padding:6px 8px 6px 4px;border:0;background:none;color:var(--muted);cursor:pointer}.layer-remove:hover:not(:disabled){color:var(--danger)}.layer-remove:disabled{opacity:.4;cursor:not-allowed}.layer-add{border:var(--border-w) dashed var(--border);border-radius:var(--radius-pill)}.switch-field{display:grid;gap:4px}.switch{display:inline-flex;align-items:center;gap:10px;font-weight:500;cursor:pointer}.switch input{position:absolute;opacity:0;pointer-events:none}.switch-track{position:relative;flex:none;width:36px;height:20px;border-radius:var(--radius-pill);background:var(--border);transition:background .15s ease}.switch-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow);transition:transform .15s ease}.switch input:checked+.switch-track{background:var(--evo)}.switch input:checked+.switch-track:after{transform:translate(16px)}.switch input:focus-visible+.switch-track{box-shadow:var(--ring)}@media (max-width: 479.98px){.activity-row{grid-template-columns:auto minmax(0,1fr)}.activity-side{display:flex;flex-wrap:wrap;grid-column:2;align-items:center;justify-content:flex-start;gap:4px 10px;text-align:left}}@media (max-width: 767.98px){.bell-panel{position:fixed;top:64px;right:16px;left:16px;width:auto}.page-head h1{font-size:var(--fs-lg)}}.population-hero{display:grid;gap:16px}.population-hero-head{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:16px 20px}.population-hero-head .game-thumb{height:58px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm)}.population-hero h1{margin:0;font-family:var(--font-display);font-size:var(--fs-xl);font-weight:700;letter-spacing:var(--display-tracking);text-transform:var(--display-transform);overflow-wrap:anywhere}.population-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:4px 0 0;color:var(--muted)}.population-hero-meta>span:not(.pill)+span:not(.pill):before{content:"·";margin-right:10px}.population-hero-description{margin:6px 0 0;max-width:70ch}.population-hero-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.population-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.population-hero-run{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.population-hero-run .progress{margin:0}.population-tabs{margin-bottom:0;overflow-x:auto;scrollbar-width:thin}.population-tabs .tab{flex:none;color:var(--muted);text-decoration:none;white-space:nowrap}.population-tabs .tab:hover,.population-tabs .tab-active{color:var(--text)}@media (max-width: 767.98px){.population-hero-head{grid-template-columns:64px minmax(0,1fr)}.population-hero-head .game-thumb{height:40px}.population-hero-actions{grid-column:1 / -1;justify-content:flex-start}.population-hero h1{font-size:var(--fs-lg)}}.chart-frame{position:relative}.chart-tall svg{height:320px}.chart svg:focus-visible{outline:none;box-shadow:var(--ring)}.chart-selectable{cursor:pointer}.chart-envelope{fill:var(--chart-envelope);stroke:none}.chart-band-fill{fill:var(--chart-band)}.chart-band-edge{stroke:var(--chart-grid);stroke-dasharray:3 3}.chart-band-label{fill:var(--muted);font-family:var(--font-mono);font-size:var(--fs-xs)}.chart-cursor line{stroke:var(--muted);stroke-dasharray:2 3}.chart-cursor circle{stroke:var(--surface);stroke-width:1.5}.dot-best{fill:var(--chart-best)}.dot-avg{fill:var(--chart-avg)}.dot-worst{fill:var(--chart-worst)}.chart-tooltip{position:absolute;top:8px;z-index:2;display:grid;gap:4px;min-width:170px;padding:8px 10px;transform:translate(-50%);background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-hover);font-size:var(--fs-sm);pointer-events:none}.chart-tooltip dl{display:grid;gap:2px;margin:0}.chart-tooltip dl>div{display:flex;justify-content:space-between;gap:12px}.chart-tooltip dt{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.chart-tooltip dd{margin:0}.chart-tooltip small{font-size:var(--fs-xs)}.chart figcaption{flex-wrap:wrap}.legend-swatch-thick{height:4px}.legend-swatch-area{height:10px;background:var(--chart-envelope);border-top:2px solid var(--chart-best)}.legend-swatch-band{height:10px;background:var(--chart-band);border-left:var(--border-w) dashed var(--chart-grid)}.table-compact th,.table-compact td{padding-top:5px;padding-bottom:5px}.step-changed{color:var(--text);font-weight:700}.step-operators summary{cursor:pointer}.step-operators[open] .code-block{white-space:pre}tbody tr.row-focus{background:var(--evo-soft)}.bar-cell{position:relative;display:block;min-width:96px;padding:0 4px}.bar-cell-fill{position:absolute;inset:2px auto 2px 0;background:var(--evo-soft);border-radius:var(--radius-sm)}.bar-cell>span:last-child{position:relative}.kept{display:inline-flex;vertical-align:middle}.kept-whole{color:var(--evo)}.kept-best{color:var(--muted)}.kept-legend{display:flex;flex-wrap:wrap;gap:4px 16px;margin:8px 0 0;font-size:var(--fs-xs)}.kept-legend>span{display:inline-flex;align-items:center;gap:4px}.row-hover-action{opacity:0}tr:hover .row-hover-action,tr:focus-within .row-hover-action{opacity:1}@media (hover: none){.row-hover-action{opacity:1}}.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;margin-top:12px}.training-state{display:grid;gap:12px}.training-state-live{border-color:var(--evo)}.training-state-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.training-state-head h2{margin:0;font-size:var(--fs-md);font-weight:600}.training-state-stop{margin-left:auto}.training-state p{margin:0}.training-live{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}.training-live .progress{flex-basis:100%;margin:0}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:start;gap:14px 20px}.form-grid .field-hint{min-height:2.6em}.training-grid .switch-field{padding-top:26px}.range-field{display:flex;align-items:center;gap:10px}.range-field input[type=range]{flex:1;min-width:0;padding:0;background:none;border:0;accent-color:var(--evo)}.range-field output{min-width:3.5em;text-align:right}.opponent-mix{display:grid;gap:12px}.mix-bar{position:relative;display:flex;height:36px;margin:4px 0;touch-action:none}.mix-segment{display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;color:var(--on-accent);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.mix-segment:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.mix-segment:nth-last-child(1 of.mix-segment){border-radius:0 var(--radius-sm) var(--radius-sm) 0}.mix-segment:only-of-type{border-radius:var(--radius-sm)}.mix-segment-label{padding:0 6px;overflow:hidden;text-overflow:ellipsis}.mix-tone-0{background:var(--evo)}.mix-tone-1{background:var(--arena)}.mix-tone-2{background:var(--info)}.mix-tone-3{background:var(--warn)}.mix-handle{position:absolute;top:-5px;bottom:-5px;width:14px;margin-left:-7px;background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);cursor:ew-resize}.mix-handle:after{content:"";position:absolute;top:10px;right:5px;bottom:10px;left:5px;border-left:var(--border-w) solid var(--muted);border-right:var(--border-w) solid var(--muted)}.mix-handle:focus-visible{outline:none;box-shadow:var(--ring)}.mix-bar-disabled{opacity:.6}.mix-bar-disabled .mix-handle{cursor:not-allowed}.mix-legend{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;font-size:var(--fs-sm)}.mix-legend li{display:inline-flex;align-items:center;gap:6px}.mix-swatch{width:10px;height:10px;border-radius:50%}.config-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.config-head p{flex:1;margin:0;min-width:240px}.config-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;gap:16px;min-width:0;margin:0;padding:0;border:0}.config-cards:disabled{opacity:.7}.config-card{display:grid;gap:12px}.config-card .card-head{margin-bottom:0}.config-field{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px}.config-field-changed input,.config-field-changed select{border-color:var(--warn)}.config-dot{display:inline-block;width:8px;height:8px;margin-left:6px;border-radius:50%;background:var(--warn);vertical-align:middle}.config-reset{margin-bottom:3px;color:var(--warn)}.sticky-save{position:sticky;bottom:16px;z-index:5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:12px 16px;background:var(--surface);border:var(--border-w) solid var(--warn);border-radius:var(--radius);box-shadow:var(--shadow-hover)}.sticky-save-count{display:inline-flex;align-items:center;gap:8px;font-weight:600}.sticky-save-dot{width:8px;height:8px;border-radius:50%;background:var(--warn)}.genome{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);align-items:start;gap:16px 32px}.genome .definitions{margin:0}@media (max-width: 767.98px){.genome{grid-template-columns:minmax(0,1fr)}}.curriculum-export{display:grid;gap:10px}.curriculum-export p{margin:0}.dual-range-field{margin:0;padding:0;border:0;min-width:0}.dual-range-field legend{margin-bottom:6px;padding:0;font-weight:600;font-size:var(--fs-sm)}.dual-range-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px}.dual-range-bound{font-size:var(--fs-xs);color:var(--muted)}.dual-range-value{min-width:8ch;font-weight:600;text-align:right}.dual-range{position:relative;height:28px}.dual-range-track,.dual-range-fill{position:absolute;top:50%;height:6px;margin-top:-3px;border-radius:var(--radius-pill)}.dual-range-track{left:0;right:0;border:var(--border-w) solid var(--border);background:var(--surface-2)}.dual-range-fill{background:var(--arena)}.dual-range input[type=range]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;background:none;pointer-events:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dual-range input[type=range]::-webkit-slider-runnable-track{background:none}.dual-range input[type=range]::-moz-range-track{background:none}.dual-range input[type=range]::-webkit-slider-thumb{width:20px;height:20px;border:2px solid var(--arena);border-radius:50%;background:var(--surface);box-shadow:var(--shadow);cursor:grab;pointer-events:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dual-range input[type=range]::-moz-range-thumb{width:16px;height:16px;border:2px solid var(--arena);border-radius:50%;background:var(--surface);box-shadow:var(--shadow);cursor:grab;pointer-events:auto}.dual-range input[type=range]:focus-visible{outline:none;box-shadow:none}.dual-range input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:var(--ring)}.dual-range input[type=range]:focus-visible::-moz-range-thumb{box-shadow:var(--ring)}.stepper{display:inline-flex;align-items:center;gap:4px;width:fit-content;padding:2px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.field .stepper input{width:6ch;padding:4px;border:0;background:none;font-family:var(--font-mono);font-size:var(--fs-md);font-variant-numeric:tabular-nums;text-align:center;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.datetime{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:8px}.countdown{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-size:var(--fs-xs);color:var(--arena)}.wizard-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px 16px}.wizard-quota{display:grid;justify-items:end;gap:4px}.wizard-arena .wizard-step-current .wizard-step-number{border-color:var(--arena);background:var(--arena)}.wizard-arena .wizard-step-done .wizard-step-number{border-color:var(--arena);color:var(--arena)}.wizard-arena .game-choice-on,.wizard-arena .game-choice-on:hover{border-color:var(--arena);outline-color:var(--arena)}.wizard-arena .chip-on,.wizard-arena .chip-on:hover:not(:disabled){border-color:var(--arena);background:var(--arena-soft);color:var(--arena)}.game-choices-compact{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.game-choices-compact .game-choice .game-thumb{height:64px}.wizard-legend{margin-bottom:10px;padding:0;font-size:var(--fs-sm);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.wizard-group .field-hint{display:block;margin:6px 0 0}.wizard-group>.chips,.wizard-group>.field{margin-top:12px}.format-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:0;padding:0;border:0}.format-choice{display:flex;align-items:center;gap:14px;padding:14px;border:var(--border-w) solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer}.format-choice:hover{border-color:var(--muted)}.format-choice:focus-within{box-shadow:var(--ring)}.format-choice-on,.format-choice-on:hover{border-color:var(--arena);outline:var(--border-w) solid var(--arena);background:var(--arena-soft)}.format-choice-body{display:grid;gap:4px}.format-choice-body small{font-size:var(--fs-xs)}.format-art{flex:none;width:48px;height:48px}.format-art-on{fill:var(--arena);opacity:.75}.format-art-off{fill:var(--surface-2);stroke:var(--border)}.format-art-line{fill:none;stroke:var(--arena);stroke-width:2;stroke-linecap:round}.format-art-dot{fill:var(--arena)}.wizard-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.wizard-advanced>summary{width:fit-content;color:var(--info);font-size:var(--fs-sm);cursor:pointer}.wizard-advanced[open]>summary{margin-bottom:12px}.tab-count{min-width:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--muted);text-align:center}.tab-active .tab-count{background:var(--arena-soft);color:var(--arena)}.next-official{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:16px;padding:12px 14px;border:var(--border-w) solid var(--arena);border-radius:var(--radius-sm);background:var(--arena-soft)}.next-official p{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0}.badges{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border:var(--border-w) solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.badge:focus-visible{outline:none;box-shadow:var(--ring)}.badge-arena{border-color:transparent;background:var(--arena-soft);color:var(--arena)}.badge-warn{border-color:transparent;background:var(--warn-soft);color:var(--warn)}.tournament-hero{display:grid;gap:16px}.tournament-hero-head{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:16px 20px}.tournament-hero-head .game-thumb{height:58px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm)}.tournament-hero h1{margin:0;font-family:var(--font-display);font-size:var(--fs-xl);font-weight:700;letter-spacing:var(--display-tracking);text-transform:var(--display-transform);overflow-wrap:anywhere}.tournament-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:4px 0 0;color:var(--muted)}.tournament-hero-meta>span:not(.pill)+span:not(.pill):before{content:"·";margin-right:10px}.tournament-hero-description{margin:6px 0 0;max-width:70ch}.tournament-hero-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.tournament-hero-run{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.tournament-hero-run .progress{margin:0}.tournament-hero-note{margin:0;font-size:var(--fs-sm)}.timeline{display:flex;margin:0;padding:0;list-style:none;overflow-x:auto}.timeline-step{position:relative;display:grid;flex:1;justify-items:start;gap:2px;min-width:120px;padding-top:18px;font-size:var(--fs-xs)}.timeline-step:before{content:"";position:absolute;top:5px;left:12px;right:0;height:2px;background:var(--border)}.timeline-step:last-child:before{display:none}.timeline-done:before{background:var(--arena)}.timeline-dot{position:absolute;top:0;left:0;width:12px;height:12px;border:2px solid var(--border);border-radius:50%;background:var(--surface)}.timeline-done .timeline-dot{border-color:var(--arena);background:var(--arena)}.timeline-current .timeline-dot{border-color:var(--arena);animation:pulse 1.6s ease-in-out infinite}.timeline-label{font-weight:600;color:var(--text)}.timeline-todo .timeline-label{color:var(--muted)}.timeline time{font-family:var(--font-mono);color:var(--muted)}@media (max-width: 767.98px){.tournament-hero-head{grid-template-columns:64px minmax(0,1fr)}.tournament-hero-head .game-thumb{height:40px}.tournament-hero-actions{grid-column:1 / -1;justify-content:flex-start}}.standings{display:grid;gap:20px;min-width:0}@media (min-width: 1024px){.standings-with-champion{grid-template-columns:minmax(260px,1fr) minmax(0,2fr);align-items:start}}.standings>*{min-width:0}.champion-card{display:grid;gap:6px;background:linear-gradient(160deg,var(--arena-soft),var(--surface) 75%);border-color:var(--arena)}.champion-card-label{display:inline-flex;align-items:center;gap:8px;width:fit-content;margin:0;font-size:var(--fs-sm);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--arena)}.champion-card-name{font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:var(--display-tracking);text-transform:var(--display-transform);overflow-wrap:anywhere}.champion-card-record{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.podium-compact{margin-bottom:16px}.podium-compact .podium-step{padding:10px 8px}.podium-compact .podium-1{padding-top:18px}.podium-compact .podium-rating{font-size:var(--fs-md)}@media (max-width: 479.98px){.podium-compact{display:none}}.standings-hint{margin:0 0 12px;font-size:var(--fs-sm)}.rank-medal{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--muted);color:var(--on-accent);font-weight:700}.rank-medal-1{background:var(--warn)}.rank-medal-3{background:color-mix(in srgb,var(--warn) 55%,var(--danger))}tr.row-mine>td,tr.row-mine>th{background:var(--arena-soft)}.participant{display:grid;gap:2px}.participant-owner{font-size:var(--fs-xs);font-weight:400;color:var(--muted)}.score-cards{display:grid;gap:8px;margin:0;padding:0;list-style:none}.score-card{border:var(--border-w) solid var(--border);border-left:3px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.score-card-error{border-left-color:var(--danger)}.score-card>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 16px;padding:10px 14px;cursor:pointer;list-style:none}.score-card>summary::-webkit-details-marker{display:none}.score-card>summary:hover{background:var(--surface-2)}.score-card>summary:focus-visible{outline:none;box-shadow:var(--ring)}.score-card[open]>summary{border-bottom:var(--border-w) solid var(--border)}.score-card>:not(summary){margin:10px 14px}.score-round{font-size:var(--fs-xs);color:var(--muted)}.score-line{display:grid;grid-column:2;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px}.score-line>:first-child{justify-items:end;text-align:right}.score-side{display:grid;min-width:0}.score-side>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score{padding:2px 10px;border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--fs-md);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.score-extra{display:flex;flex-wrap:wrap;grid-column:3;align-items:center;justify-content:flex-end;gap:4px 10px}.pips{display:inline-flex;gap:3px}.pip{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;font-size:var(--fs-xs);font-weight:700}.pip-win{background:var(--evo-soft);color:var(--evo)}.pip-loss{background:var(--danger-soft);color:var(--danger)}.pip-draw{background:var(--surface-2);color:var(--muted)}@media (max-width: 767.98px){.score-card>summary{grid-template-columns:minmax(0,1fr)}.score-line,.score-extra{grid-column:1}.score-extra{justify-content:center}}.matrix{width:auto;border-collapse:separate;border-spacing:3px;font-size:var(--fs-sm)}.matrix th,.matrix td{padding:0;border:0;background:none}.matrix thead th{text-align:center}.matrix th{font-size:var(--fs-sm);letter-spacing:normal;text-transform:none}.matrix tbody th{padding-right:10px;font-weight:600;text-align:left;white-space:nowrap}.matrix-index{display:inline-grid;place-items:center;min-width:20px;margin-right:6px;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--muted)}.matrix thead .matrix-index{margin:0}.matrix-self{background:repeating-linear-gradient(135deg,var(--surface-2) 0 4px,transparent 4px 8px);border-radius:var(--radius-sm)}.matrix-pending{border:var(--border-w) dashed var(--border);border-radius:var(--radius-sm)}.matrix-cell button{width:100%;min-width:52px;padding:6px 8px;border:0;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;cursor:pointer}.matrix-cell button:focus-visible{outline:none;box-shadow:var(--ring)}.matrix-win button{background:var(--evo-soft);color:var(--evo)}.matrix-loss button{background:var(--danger-soft);color:var(--danger)}.matrix-error button{background:var(--warn-soft);color:var(--warn)}.matrix-self,.matrix-pending{min-width:52px;height:30px}.bracket{display:flex;gap:24px;margin:0;padding:0 0 8px;overflow-x:auto;list-style:none}.bracket-round{display:grid;flex:none;align-content:start;gap:8px;width:220px}.card .bracket-round h3{margin:0}.bracket-round ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}.bracket-match{display:grid;width:100%;padding:0;overflow:hidden;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.bracket-match:hover{border-color:var(--arena)}.bracket-match:focus-visible{outline:none;box-shadow:var(--ring)}.bracket-side{display:flex;justify-content:space-between;gap:8px;padding:6px 10px;font-size:var(--fs-sm);color:var(--muted)}.bracket-side+.bracket-side{border-top:var(--border-w) solid var(--border)}.bracket-through{font-weight:700;color:var(--text);background:var(--arena-soft)}.tournament-details>summary{cursor:pointer}.tournament-details>summary h2{display:inline;font-size:var(--fs-md)}.tournament-details[open]>summary{margin-bottom:12px}.app-main:has(.admin-shell){max-width:none}.admin-shell{display:grid;gap:20px;align-items:start}.admin-shell>*{min-width:0}.admin-strip{display:flex;align-items:center;gap:8px;margin:0;padding:8px 14px;border-top:3px solid var(--warn);border-radius:var(--radius-sm);background:var(--warn-soft);color:var(--warn);font-size:var(--fs-sm);font-weight:600}.admin-nav ul{display:flex;gap:4px;margin:0;padding:0;overflow-x:auto;list-style:none}.admin-nav a{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--radius-sm);color:var(--muted);font-weight:600;text-decoration:none;white-space:nowrap;border-left:3px solid transparent;transition:background .15s ease,color .15s ease}.admin-nav a:hover{background:var(--surface-2);color:var(--text)}.admin-nav a.active{border-left-color:var(--warn);background:var(--surface);box-shadow:var(--shadow);color:var(--text)}.admin-nav a:focus-visible{outline:none;box-shadow:var(--ring)}.admin-nav-label{flex:1}.admin-badge{display:inline-flex;align-items:center;gap:4px;min-width:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--warn-soft);color:var(--warn);font-family:var(--font-mono);font-size:var(--fs-xs);justify-content:center}.admin-badge-error{background:var(--danger-soft);color:var(--danger)}@media (min-width: 768px){.admin-shell{grid-template-columns:220px minmax(0,1fr)}.admin-strip{grid-column:1 / -1}.admin-nav{position:sticky;top:72px}.admin-nav ul{flex-direction:column;overflow:visible}}.admin-columns{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));align-items:start}.admin-columns>*{min-width:0}.settings-layout{display:grid;gap:20px;align-items:start}.settings-layout>*{min-width:0}.settings-toc ul{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.settings-toc-link{padding:6px 10px;border:0;border-radius:var(--radius-sm);background:none;color:var(--muted);font:inherit;font-size:var(--fs-sm);text-align:left;cursor:pointer}.settings-toc-link:hover{background:var(--surface-2);color:var(--text)}.settings-toc-link:focus-visible{outline:none;box-shadow:var(--ring)}@media (min-width: 1100px){.settings-layout{grid-template-columns:200px minmax(0,1fr)}.settings-toc{position:sticky;top:72px}.settings-toc ul{flex-direction:column}}.settings-groups{display:grid;gap:20px;max-width:1100px}.settings-group{scroll-margin-top:72px}.settings-group h2{margin:0 0 4px;font-size:var(--fs-md);font-weight:600}.setting-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px 24px;padding:12px 0;border-top:var(--border-w) solid var(--border)}.settings-group h2+.setting-row,.settings-group p+.setting-row{border-top:0}@media (min-width: 640px){.setting-row{grid-template-columns:minmax(0,1fr) auto}.setting-control{justify-items:end}}.setting-text{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.setting-text label{font-weight:600}.setting-text small{flex-basis:100%}.setting-control{display:grid;gap:4px}.setting-input{display:inline-flex;align-items:center;gap:8px}.setting-input input{width:120px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.setting-unit{min-width:88px;color:var(--muted);font-size:var(--fs-sm)}.setting-initial{display:inline-flex;align-items:center;gap:4px;color:var(--warn);font-size:var(--fs-xs)}.setting-row-changed .setting-input input{border-color:var(--warn)}.setting-row-error .setting-input input{border-color:var(--danger)}.setting-error{color:var(--danger);font-size:var(--fs-xs)}.setting-row-tight{grid-template-columns:minmax(0,1fr) auto;padding:8px 0;border-top:0}.setting-row-tight .setting-unit{min-width:0}.pill-badge:before{display:none}.offer-cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));margin-top:12px}.offer-card{padding:12px 16px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.offer-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}.card .offer-card-head h3{margin:0;color:var(--text);font-size:var(--fs-base);letter-spacing:normal;text-transform:none}.sticky-save-error{color:var(--danger);font-size:var(--fs-sm)}.change-list{display:grid;gap:8px;margin:0 0 16px;padding:0;list-style:none}.change-list li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}.change-values{margin-left:auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.change-values s{color:var(--muted)}.service-tiles,.worker-cards{display:grid;gap:12px;margin:0;padding:0;list-style:none}.service-tiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}.service-tile{display:grid;gap:4px;padding:12px 14px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.service-tile-down{border-color:var(--danger);background:var(--danger-soft)}.service-tile-name{display:inline-flex;align-items:center;gap:8px;font-weight:600}.service-dot{width:8px;height:8px;border-radius:50%;background:var(--evo)}.service-dot-down{background:var(--danger)}.service-tile-url,.service-tile-error{overflow:hidden;font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap}.service-tile-url{color:var(--muted)}.service-tile-error{color:var(--danger)}.worker-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}.worker-card{display:grid;gap:6px;padding:12px 14px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm)}.worker-card-silent{border-color:var(--warn)}.worker-card-dead{border-color:var(--danger);background:var(--danger-soft)}.worker-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.worker-id{font-weight:600}.worker-slots{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.worker-jobs,.failures-list,.drawer-list,.inbox-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.job-label{font-size:var(--fs-sm)}.failures-none{display:flex;align-items:center;gap:6px;margin:0;color:var(--evo)}.failures-list summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;color:var(--danger);cursor:pointer}.failure-error{margin:6px 0 0;padding:8px 10px;overflow-x:auto;border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);font-family:var(--font-mono);font-size:var(--fs-xs);white-space:pre-wrap}.admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:16px}.search-field{display:inline-flex;flex:1 1 220px;align-items:center;gap:8px;max-width:360px;padding:0 10px;border:var(--border-w) solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted)}.search-field:focus-within{box-shadow:var(--ring)}.search-field input{flex:1;min-width:0;padding:8px 0;border:0;background:none;color:var(--text);font:inherit;outline:none}.sort-button{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.sort-button:focus-visible{outline:none;box-shadow:var(--ring)}.sort-arrow{font-size:var(--fs-xs);opacity:.5}.sort-ascending .sort-arrow,.sort-descending .sort-arrow{opacity:1}tr.row-current td{background:var(--warn-soft)}.player-name{display:inline-flex;align-items:center;gap:10px}.player-name-text{display:grid}.tag-self{margin-left:6px;border-color:var(--evo);color:var(--evo)}.quota-gauges{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:2px 8px}.quota-gauges>span{display:contents}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.modal-drawer{width:min(480px,100vw);max-width:100vw;height:100vh;max-height:100vh;margin:0 0 0 auto;border-width:0 0 0 var(--border-w);border-radius:0}.modal-drawer .modal-panel{height:100%}.drawer-body{display:grid;gap:4px}.drawer-head{display:flex;align-items:center;gap:16px;padding-bottom:12px}.drawer-head-text{display:grid;gap:6px}.avatar-large{width:56px;height:56px;font-size:var(--fs-lg)}.drawer-section{display:grid;gap:10px;padding:16px 0;border-top:var(--border-w) solid var(--border)}.drawer-section h3{margin:0;color:var(--muted);font-size:var(--fs-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.drawer-section p{margin:0}.drawer-list li{display:flex;justify-content:space-between;gap:8px}.drawer-danger{padding:16px;border:var(--border-w) solid var(--danger);border-radius:var(--radius-sm)}.drawer-danger h3{color:var(--danger)}.danger-row{display:grid;gap:8px}.danger-row>span{display:grid;gap:2px}.danger-row .btn{justify-self:start}.danger-delete{padding-top:12px;border-top:var(--border-w) solid var(--border)}.inbox-empty{display:flex;align-items:center;gap:8px;margin:0;font-size:var(--fs-sm)}.inbox{border-color:var(--warn)}.inbox-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0}.inbox-item .game-thumb-mini{width:32px;height:32px}.inbox-text{display:grid;flex:1 1 240px}.game-card-withdrawn .game-thumb{opacity:.45}.game-card-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--evo-soft);color:var(--evo)}.game-card-admin{display:grid;gap:6px}.game-card-admin-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0}.game-card-admin-row .menu{margin-left:auto}.game-card-usage{font-size:var(--fs-sm)}.game-card-url{min-width:0;overflow:hidden;font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap}.series-cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))}.series-card{display:grid;align-content:start;gap:12px}.series-card-stopped{opacity:.7}.series-card-head{display:flex;align-items:center;gap:10px}.series-card-head .game-thumb-mini{width:36px;height:36px;flex:none}.series-card-title{display:grid;flex:1;min-width:0}.card .series-card-title h3{margin:0;color:var(--text);font-size:var(--fs-base);letter-spacing:normal;text-transform:none}.series-card-schedule{display:flex;align-items:center;gap:8px;margin:0}.series-card-occurrence,.series-card-champions{display:grid;gap:4px}.series-card-occurrence .countdown{display:flex}.series-card-champions ol{display:grid;gap:4px;margin:0;padding:0;list-style:none}.series-card-champions li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:var(--fs-sm)}.series-card-foot{padding-top:12px;border-top:var(--border-w) solid var(--border)}.timezone-field{display:grid;align-content:start;gap:4px}.timezone-field .link-button{justify-self:start;font-size:var(--fs-sm)}.series-preview{display:grid;gap:4px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
