:root{--sand-50:#fdf8f1;--sand-100:#f7ecdb;--sand-200:#ecd9bb;--sand-300:#dcbd8c;--ink-900:#16181d;--ink-800:#22252c;--ink-700:#343842;--ink-500:#5c6472;--ink-400:#7b8494;--surf-600:#0d6e8c;--surf-500:#1189ad;--surf-100:#d6eef5;--win:#10796a;--win-bg:#d8f0ea;--loss:#a03232;--warn:#8a5a00;--warn-bg:#fdf0d2;--bg:var(--sand-50);--surface:#fff;--surface-2:var(--sand-100);--border:var(--sand-200);--text:var(--ink-900);--text-dim:var(--ink-500);--accent:var(--surf-600);--accent-soft:var(--surf-100);--radius:10px;--radius-lg:14px;--tap:48px;--gutter:16px;--shadow:0 1px 2px #16181d14, 0 4px 12px #16181d0f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:var(--ink-900);--surface:var(--ink-800);--surface-2:var(--ink-700);--border:#3a3f4a;--text:#f3f0ea;--text-dim:#a8b0bd;--accent:#4bb8d8;--accent-soft:#123c4a;--win:#5fd4bd;--win-bg:#10372f;--loss:#ef8b8b;--warn:#e8bd6a;--warn-bg:#3a2e12;--shadow:0 1px 2px #0006, 0 4px 12px #0000004d}}:root[data-theme=dark]{--bg:var(--ink-900);--surface:var(--ink-800);--surface-2:var(--ink-700);--border:#3a3f4a;--text:#f3f0ea;--text-dim:#a8b0bd;--accent:#4bb8d8;--accent-soft:#123c4a;--win:#5fd4bd;--win-bg:#10372f;--loss:#ef8b8b;--warn:#e8bd6a;--warn-bg:#3a2e12;--shadow:0 1px 2px #0006, 0 4px 12px #0000004d}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45}h1,h2,h3{letter-spacing:-.015em;margin:0 0 8px;line-height:1.2}h1{font-size:1.5rem;font-weight:750}h2{font-size:1.15rem;font-weight:700}h3{font-size:.95rem;font-weight:700}p{margin:0 0 12px}a{color:var(--accent)}.app{flex-direction:column;min-height:100%;display:flex}.page{width:100%;max-width:820px;padding:var(--gutter);flex:1;margin:0 auto;padding-bottom:96px}.topbar{z-index:20;padding:10px var(--gutter);background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1rem;font-weight:700;overflow:hidden}.brand{letter-spacing:-.03em;color:var(--accent);font-size:1.05rem;font-weight:800;text-decoration:none}.stack{flex-direction:column;gap:12px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row--tight{gap:6px}.spread{justify-content:space-between;align-items:center;gap:12px;display:flex}.grow{flex:1;min-width:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:14px}.card--flat{box-shadow:none}.card__link{color:inherit;text-decoration:none;display:block}.card__link:active{transform:scale(.995)}button,.btn{font:inherit;min-height:var(--tap);border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:650;text-decoration:none;display:inline-flex}button:disabled{opacity:.45;cursor:not-allowed}.btn--ghost{color:var(--text);border-color:var(--border);background:0 0}.btn--quiet{background:var(--surface-2);color:var(--text);border-color:#0000}.btn--danger{background:var(--loss)}.btn--sm{min-height:38px;padding:0 12px;font-size:.875rem}.btn--block{width:100%}input,select,textarea{font:inherit;width:100%;min-height:var(--tap);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);padding:10px 12px}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}label{color:var(--text-dim);margin-bottom:4px;font-size:.8rem;font-weight:650;display:block}.field{margin-bottom:12px}.fields-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fields-2>*{min-width:0}input[type=time],input[type=date]{text-align:left;min-width:0}.muted{color:var(--text-dim)}.small{font-size:.82rem}.tiny{font-size:.75rem}.mono{font-variant-numeric:tabular-nums}.center{text-align:center}.pill{background:var(--surface-2);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.pill--live{background:var(--win-bg);color:var(--win)}.pill--draft{background:var(--warn-bg);color:var(--warn)}.pill--done{background:var(--accent-soft);color:var(--accent)}.notice{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);padding:12px 14px;font-size:.9rem}.notice--warn{background:var(--warn-bg);color:var(--warn);border-color:#0000}.notice--error{color:var(--loss);background:#fde4e4;border-color:#0000}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .notice--error{background:#3d1c1c}}:root[data-theme=dark] .notice--error{background:#3d1c1c}.empty{text-align:center;color:var(--text-dim);padding:40px 20px}.tabs{padding:8px var(--gutter);background:var(--surface);border-bottom:1px solid var(--border);z-index:15;scrollbar-width:none;gap:4px;display:flex;position:sticky;top:57px;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{min-height:40px;color:var(--text-dim);white-space:nowrap;background:0 0;border:none;border-radius:999px;padding:0 14px;font-size:.9rem;font-weight:650}.tab[aria-selected=true]{background:var(--accent);color:#fff}.table{border-collapse:collapse;width:100%;font-size:.9rem}.table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px;font-size:.7rem}.table td{border-bottom:1px solid var(--border);padding:9px 6px}.table tr:last-child td{border-bottom:none}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.table .advancing td{background:var(--win-bg)}.table .advancing td:first-child{font-weight:750}.match{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.match__head{background:var(--surface-2);color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;gap:8px;padding:6px 10px;font-size:.72rem;font-weight:700;display:flex}.side{align-items:center;gap:10px;min-height:46px;padding:11px 12px;display:flex}.side+.side{border-top:1px solid var(--border)}.side__seed{color:var(--text-dim);font-variant-numeric:tabular-nums;min-width:18px;font-size:.7rem;font-weight:700}.side__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.side__score{font-variant-numeric:tabular-nums;letter-spacing:.02em;font-weight:750}.side--won{background:var(--win-bg)}.side--won .side__name{font-weight:750}.side--tbd .side__name{color:var(--text-dim);font-style:italic}.match__foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.bracket{scroll-snap-type:x proximity;gap:18px;padding-bottom:12px;display:flex;overflow-x:auto}.bracket__round{scroll-snap-align:start;flex-direction:column;flex:0 0 250px;gap:10px;min-width:250px;display:flex}.bracket__label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-size:.72rem;font-weight:750;position:sticky;top:0}.sheet-backdrop{z-index:50;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:520px;padding:18px var(--gutter) calc(18px + env(safe-area-inset-bottom));max-height:88vh;overflow-y:auto}@media (width>=560px){.sheet-backdrop{align-items:center}.sheet{border-radius:var(--radius-lg)}}.score-grid{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-bottom:10px;display:grid}.score-grid input{text-align:center;font-size:1.25rem;font-weight:700}.score-grid input[aria-invalid=true]{border-color:var(--loss);color:var(--loss);box-shadow:0 0 0 1px var(--loss)}.footer{padding:20px var(--gutter) 40px;text-align:center;color:var(--text-dim);font-size:.8rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
