@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@500;700&display=swap";:root{--brand-1:#121a12;--brand-2:#1f2a1c;--on-brand:#f4f6f0;--primary:#c6f432;--on-primary:#11180a;--link:#3d5a00;--focus:#4f7a00;--pop:#c6f432;--pop-ink:#11180a;--live:#e5483a;--gold:#e0a52c;--silver:#aab3bf;--bg:#f4f6f0;--bg-tint:#e6ecdc;--surface:#fff;--surface-2:#eef2ea;--surface-3:#e1e7dc;--border:#dde3d8;--border-strong:#c5cdbf;--text:#0e140f;--text-dim:#556052;--text-faint:#7b8677;--grid-line:#0e140f0b;--glass-bg:#ffffffb8;--glass-border:#0e140f1a;--good:#17824f;--good-bg:#e2f3e8;--warn:#8a5f00;--warn-bg:#fbf0d6;--bad:#c0262b;--bad-bg:#fbe8e8;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans Tamil", "Noto Sans Devanagari", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--r-sm:6px;--r:10px;--r-lg:14px;--tally-host:#17915a;--tally-host-bg:#e4f6ec;--tally-play:#1b6fd4;--tally-play-bg:#e5effc;--tap:48px;--ease-out:cubic-bezier(.22, 1, .36, 1);--shadow-1:0 1px 2px #0e140f0d, 0 1px 3px #0e140f0a;--shadow-2:0 8px 24px #0e140f14, 0 2px 6px #0e140f0a;--shadow-brand:0 10px 30px #6e96002e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--brand-1:#e2e8f0;--brand-2:#cbd5e1;--on-brand:#0f172a;--primary:#e2e8f0;--on-primary:#0f172a;--link:#c6f432;--focus:#c6f432;--live:#ff6b5c;--bg:#020617;--bg-tint:#0b1430;--surface:#0f172a;--surface-2:#172036;--surface-3:#1e293b;--border:#1c2539;--border-strong:#334155;--text:#f8fafc;--text-dim:#94a3b8;--text-faint:#64748b;--grid-line:#94a3b80f;--glass-bg:#0f172a9e;--glass-border:#94a3b829;--good:#3ecf8e;--good-bg:#0f2b23;--warn:#e9b949;--warn-bg:#2e240c;--bad:#ff6b6b;--bad-bg:#331820;--tally-host:#3ecf8e;--tally-host-bg:#123026;--tally-play:#6aa9ff;--tally-play-bg:#11233d;--shadow-1:0 1px 2px #00000080;--shadow-2:0 10px 30px #00000073;--shadow-brand:0 10px 30px #c6f43214;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--brand-1:#e2e8f0;--brand-2:#cbd5e1;--on-brand:#0f172a;--primary:#e2e8f0;--on-primary:#0f172a;--link:#c6f432;--focus:#c6f432;--live:#ff6b5c;--bg:#020617;--bg-tint:#0b1430;--surface:#0f172a;--surface-2:#172036;--surface-3:#1e293b;--border:#1c2539;--border-strong:#334155;--text:#f8fafc;--text-dim:#94a3b8;--text-faint:#64748b;--grid-line:#94a3b80f;--glass-bg:#0f172a9e;--glass-border:#94a3b829;--good:#3ecf8e;--good-bg:#0f2b23;--warn:#e9b949;--warn-bg:#2e240c;--bad:#ff6b6b;--bad-bg:#331820;--shadow-1:0 1px 2px #00000080;--shadow-2:0 10px 30px #00000073;--shadow-brand:0 10px 30px #c6f43214;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--tally-host:#3ecf8e;--tally-host-bg:#123026;--tally-play:#6aa9ff;--tally-play-bg:#11233d}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-feature-settings:"cv11", "ss01";-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}body:before{content:"";background:radial-gradient(90% 60% at 50% -10%, var(--bg-tint) 0%, transparent 70%), linear-gradient(var(--grid-line) 1px, transparent 1px) 0 0 / 40px 40px, linear-gradient(90deg, var(--grid-line) 1px, transparent 1px) 0 0 / 40px 40px;pointer-events:none;z-index:0;position:fixed;inset:0}.app{z-index:1;max-width:720px;margin:0 auto;padding:0 16px 120px;position:relative}h1,h2,h3{letter-spacing:-.02em;margin:0 0 8px;font-weight:800;line-height:1.2}h1{font-size:1.6rem}h2{font-size:1.2rem}h3{font-size:.95rem;font-weight:700}p{margin:0 0 12px}a{color:var(--link);font-weight:600}.muted{color:var(--text-dim);font-size:.875rem}.faint{color:var(--text-faint)}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);font-size:.6875rem;font-weight:700}.topbar{z-index:20;background:linear-gradient(to bottom, var(--bg) 70%, transparent);align-items:center;gap:12px;padding:14px 0 12px;display:flex;position:sticky;top:0}.topbar h1{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:1.15rem;overflow:hidden}.iconbtn{width:var(--tap);height:var(--tap);min-height:var(--tap);background:var(--surface);border:1px solid var(--border);color:var(--text);box-shadow:var(--shadow-1);border-radius:13px;flex:none;place-items:center;padding:0;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-1);margin:14px 0;padding:18px;position:relative}.card.tight{padding:12px 14px}.card>h2:first-child,.card>h3:first-child{margin-top:0}.hero{border-radius:var(--r-lg);background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:var(--on-brand);box-shadow:var(--shadow-brand);margin:8px 0 18px;padding:26px 22px;position:relative;overflow:hidden}.hero:after{content:"";background:color-mix(in srgb, var(--on-brand) 10%, transparent);border-radius:50%;width:180px;height:180px;position:absolute;top:-40px;right:-40px}.hero h1{margin-bottom:6px;font-size:1.85rem}.hero p{opacity:.9;max-width:34ch;margin:0;font-size:.9375rem}.hero .mark{background:var(--pop);width:46px;height:46px;color:var(--pop-ink);border-radius:14px;place-items:center;margin-bottom:14px;display:grid}.row{align-items:center;gap:8px;display:flex}.row.wrap{flex-wrap:wrap}.spread{justify-content:space-between}.grow{flex:1;min-width:0}.stack>*+*{margin-top:12px}label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px;font-size:.6875rem;font-weight:700;display:block}input,select,textarea{width:100%;min-height:var(--tap);font:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:12px 14px;font-weight:500;transition:border-color .15s,background .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:focus,select:focus,textarea:focus{border-color:var(--focus);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 22%, transparent);outline:none}textarea{resize:vertical;min-height:80px}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.field{margin-bottom:14px}.field:last-child{margin-bottom:0}.fieldhint,.fielderror{margin:6px 0 0;font-size:.8125rem;line-height:1.4}.fieldhint{color:var(--text-dim)}.fielderror{color:var(--bad);font-weight:600}.field.invalid input{border-color:var(--bad);box-shadow:0 0 0 3px var(--bad-bg)}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.prefixed{position:relative}.prefixed span{color:var(--text-faint);pointer-events:none;font-weight:600;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.prefixed input{padding-left:30px}button{min-height:var(--tap);font:inherit;letter-spacing:.01em;color:var(--text);background:var(--surface-2);border-radius:var(--r-sm);cursor:pointer;transition:transform .12s var(--ease-out), background .15s, box-shadow .2s, border-color .15s;border:1px solid #0000;padding:12px 18px;font-weight:700}button:active:not(:disabled){transform:scale(.97)}button:hover:not(:disabled){border-color:var(--border-strong)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-brand);text-transform:uppercase;letter-spacing:.06em;font-weight:800}button.primary:hover:not(:disabled){box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 30%, transparent), var(--shadow-brand)}button.pop{background:var(--pop);color:var(--pop-ink)}button.danger{color:var(--bad)}button.ghost{border-color:var(--border);background:0 0}button.bare{min-height:var(--tap);background:0 0;border:0;padding:0}button.xbtn{min-width:var(--tap);min-height:var(--tap);color:var(--bad);background:0 0;border:0;flex:none;padding:0;font-size:1.05rem}button.full{width:100%}button.sm{min-height:var(--tap);padding:8px 14px;font-size:.875rem}button.iconlabel{justify-content:center;align-items:center;gap:6px;display:inline-flex}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{min-height:var(--tap);min-width:var(--tap);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-dim);border:1.5px solid #0000;padding:9px 16px;font-size:.9375rem;font-weight:700}.chip[aria-pressed=true]{background:var(--brand-1);border-color:var(--brand-1);color:var(--on-brand);box-shadow:var(--shadow-1)}.optioncard{text-align:left;border-radius:var(--r);background:var(--surface-2);border:1.5px solid #0000;width:100%;min-height:0;padding:14px 16px;font-weight:500;display:block}.optioncard[aria-pressed=true]{border-color:var(--brand-1);background:var(--surface);box-shadow:var(--shadow-2)}.badge{letter-spacing:.03em;text-transform:uppercase;background:var(--surface-3);color:var(--text-dim);border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:.6875rem;font-weight:800;display:inline-flex}.badge.live{background:var(--live);color:#fff}.badge.done{background:var(--good-bg);color:var(--good)}.badge.pop{background:var(--pop);color:var(--pop-ink)}.badge.bad{background:var(--bad-bg);color:var(--bad)}.courtchip{background:var(--surface-2);width:34px;height:34px;color:var(--text-dim);border-radius:11px;flex:none;place-items:center;font-size:.75rem;font-weight:800;display:grid}.rank{background:var(--surface-3);width:26px;height:26px;color:var(--text-dim);border-radius:9px;place-items:center;font-size:.8125rem;font-weight:800;display:grid}.rank.one{background:var(--gold);color:#3a2a00}.rank.two{background:var(--silver);color:#23272e}.notice{border-radius:var(--r-sm);background:var(--warn-bg);color:var(--warn);gap:10px;margin:14px 0;padding:12px 14px;font-size:.9375rem;font-weight:600;display:flex}.notice.bad{background:var(--bad-bg);color:var(--bad)}.notice.good{background:var(--good-bg);color:var(--good)}.notice p{margin:0}.stats{grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:10px;display:grid}.stat{border-radius:var(--r);background:var(--surface-2);padding:14px}.stat .k{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px;font-size:.6875rem;font-weight:800}.stat .v{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:800}.stat.hilite{background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:var(--on-brand)}.stat.hilite .k{color:color-mix(in srgb, var(--on-brand) 75%, transparent)}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.9375rem}th,td{text-align:right;border-bottom:1px solid var(--border);padding:10px 5px}tbody tr:last-child td{border-bottom:0}th:first-child,td:first-child{text-align:left;padding-left:0}th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);font-size:.6875rem;font-weight:800}tr.qualified td{background:linear-gradient(to right, var(--good-bg), transparent 60%)}.matchrow{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;border-radius:0;align-items:center;gap:12px;width:100%;min-height:0;padding:12px 0;font-weight:500;display:flex}.matchrow:last-child{border-bottom:0}.matchrow:active:not(:disabled){background:var(--surface-2);transform:none}.matchrow .teams{flex:1;min-width:0;font-size:.9375rem}.matchrow .vs{color:var(--text-faint);padding:0 2px;font-weight:600}.matchrow .meta{color:var(--text-faint);margin-top:2px;font-size:.75rem;font-weight:500;display:block}.matchrow .score{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1rem;font-weight:800}.winner{font-weight:800}.loser{color:var(--text-faint)}.scorepad{grid-template-columns:1fr 1fr;gap:12px;margin-top:4px;display:grid}.scoreside{border-radius:var(--r-lg);background:var(--surface);border:1.5px solid var(--border);box-shadow:var(--shadow-1);text-align:center;flex-direction:column;display:flex;overflow:hidden}.scoreside.leading{border-color:var(--brand-1)}.scoreside .head{padding:14px 12px 6px}.scoreside .name{letter-spacing:-.01em;justify-content:center;align-items:center;min-height:2.4em;font-size:1rem;font-weight:800;display:flex}.scoreside .players{color:var(--text-faint);min-height:1.2em;font-size:.75rem}.tapzone{background:0 0;border:0;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;width:100%;min-height:max(190px,34vh);padding:4px 0 18px;display:flex}.tapzone:active:not(:disabled){background:var(--surface-2);transform:none}.tapzone:disabled{opacity:1;cursor:default}.tapzone:disabled .taphint{opacity:.6}.scoreside.won{border-color:var(--good)}.scoreside.won .bignum{color:var(--good)}.scoreside.lost .bignum{color:var(--text-faint)}.bignum{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:4.8rem;font-weight:800;line-height:1}.taphint{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-size:.6875rem;font-weight:700}.matchpoint{color:var(--live);letter-spacing:.05em;text-transform:uppercase;min-height:1.1em;font-size:.75rem;font-weight:800}.scoreside .undo{border-top:1px solid var(--border);color:var(--text-dim);background:0 0;border-radius:0;min-height:44px;font-size:.875rem}.gamepills{justify-content:center;gap:8px;display:flex}.gamepill{background:var(--surface-2);font-variant-numeric:tabular-nums;color:var(--text-dim);border-radius:999px;padding:6px 12px;font-size:.875rem;font-weight:700}.gamepill.current{background:var(--brand-1);color:var(--on-brand)}.champion{text-align:center;border-radius:var(--r-lg);background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:var(--on-brand);box-shadow:var(--shadow-brand);margin:14px 0;padding:30px 20px}.champion .cup{background:var(--pop);width:62px;height:62px;color:var(--pop-ink);border-radius:20px;place-items:center;margin:0 auto 12px;display:grid}.champion h2{margin-bottom:2px;font-size:1.7rem}.bottomnav{z-index:30;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0}.bottomnav .inner{max-width:720px;margin:0 auto;position:relative}.bottomnav .tabs{display:flex}.bottomnav .half{flex:1;grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.bottomnav .homeslot{flex:0 0 76px}.bottomnav button.navhome{background:var(--primary);width:60px;height:60px;min-height:60px;color:var(--on-primary);box-shadow:0 10px 26px color-mix(in srgb, var(--primary) 35%, transparent), 0 0 0 5px var(--bg);border-radius:18px;justify-content:center;margin:-22px 0 0 -30px;padding:0;position:absolute;top:0;left:50%}.bottomnav button.navhome:active{transform:scale(.94)}.bottomnav button{min-height:58px;color:var(--text-faint);letter-spacing:-.01em;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:center;gap:3px;padding:9px 0 7px;font-size:.625rem;font-weight:700;display:flex}.bottomnav button[aria-selected=true]{color:var(--brand-1)}.bottomnav button:active{transform:none}.footerbar{z-index:30;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0}.footerbar .inner{max-width:720px;margin:0 auto}.statusdot{color:var(--text-faint);align-items:center;gap:5px;font-size:.6875rem;font-weight:700;display:inline-flex}.swtoast{left:12px;right:12px;bottom:calc(70px + env(safe-area-inset-bottom));z-index:40;border-radius:var(--r);background:var(--surface-3);max-width:696px;color:var(--text);box-shadow:var(--shadow-2);align-items:center;gap:8px;margin:0 auto;padding:10px 12px;font-size:.875rem;font-weight:600;display:flex;position:fixed}.betatag{letter-spacing:.05em;text-transform:uppercase;background:#fff3;border-radius:999px;margin-top:14px;padding:4px 11px;font-size:.6875rem;font-weight:800;display:inline-block}.linkbox{border-radius:var(--r-sm);background:var(--surface-2);word-break:break-all;color:var(--text-dim);padding:12px 14px;font-size:.875rem;font-weight:600}.namelist li{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:9px 0;font-weight:600;display:flex}.namelist li:last-child{border-bottom:0}.rsvpbuttons{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rsvpbuttons button{justify-content:center;align-items:center;gap:8px;min-height:54px;display:flex}.wizardbar{z-index:20;background:linear-gradient(to bottom, var(--bg) 72%, transparent);padding:14px 0 12px;position:sticky;top:0}.wizardbar .top{align-items:center;gap:12px;display:flex}.wizardbar .count{letter-spacing:.04em;color:var(--text-faint);text-transform:uppercase;font-size:.75rem;font-weight:800}.progress{gap:4px;margin-top:12px;display:flex}.progress span{background:var(--surface-3);border-radius:99px;flex:1;height:4px}.progress span.done{background:var(--brand-1)}.progress span.current{background:linear-gradient(90deg, var(--brand-1), var(--brand-2))}.steptitle{margin:4px 0 2px;font-size:1.5rem}.stepsub{color:var(--text-dim);margin-bottom:4px;font-size:.9375rem}.wizardnav{gap:10px;display:flex}.wizardnav .next{flex:1}.qrcard{text-align:center}.qrcanvas{width:min(320px,100vw - 80px);height:auto;image-rendering:pixelated;background:#fff;border-radius:12px;margin:0 auto;padding:8px;display:block}.qrplaceholder{aspect-ratio:1;color:#555;place-items:center;font-size:.875rem;display:grid}.scanframe{border-radius:var(--r-lg);aspect-ratio:3/4;background:#000;margin:12px 0;position:relative;overflow:hidden}.scanframe video{object-fit:cover;width:100%;height:100%;display:block}.scanreticle{border:3px solid var(--pop);pointer-events:none;border-radius:18px;position:absolute;inset:16% 12%;box-shadow:0 0 0 100vmax #00000059}.list-reset{margin:0;padding:0;list-style:none}.sectionhead{align-items:center;gap:10px;margin-bottom:14px;display:flex}.sectionhead .ic{background:var(--bg-tint);width:34px;height:34px;color:var(--brand-1);border-radius:11px;flex:none;place-items:center;display:grid}.sectionhead h2{margin:0}.empty{text-align:center;color:var(--text-dim);padding:30px 16px}.empty .ic{background:var(--surface-2);width:56px;height:56px;color:var(--text-faint);border-radius:18px;place-items:center;margin:0 auto 12px;display:grid}@media (width>=560px){.field-row.three{grid-template-columns:repeat(3,1fr)}.bignum{font-size:5.5rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important}button:active:not(:disabled){transform:none}}.slotrow{border-radius:var(--r-sm);background:var(--surface-2);align-items:center;gap:10px;padding:12px;display:flex}.slotrow .meta{color:var(--text-dim);margin-top:3px;font-size:.8125rem;display:block}.courttime{align-items:center;gap:8px;display:flex}.courttime input{flex:1;min-width:0}.framedots{justify-content:center;gap:6px;margin-top:12px;display:flex}.framedots span{background:var(--border-strong);border-radius:50%;width:7px;height:7px;transition:background .2s}.framedots span.on{background:var(--brand-1)}.frontdoors{grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 8px;display:grid}.frontdoor{border-radius:var(--r);background:var(--surface);border:1px solid var(--border);min-height:108px;box-shadow:var(--shadow-1);text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:16px 14px;display:flex}.frontdoor strong{margin-top:6px;font-size:.9375rem}.frontdoor span{color:var(--text-dim);font-size:.75rem;font-weight:500;line-height:1.3}.frontdoor.primary span{color:#ffffffd9}.listingcard{text-align:left;width:100%;min-height:0;font-weight:500;display:block}.listingcard .meta{color:var(--text-dim);margin-top:3px;font-size:.8125rem;display:block}:root{--court-1:#5b57f2;--court-2:#0d9488;--court-3:#d97706;--court-4:#db2777;--court-5:#15803d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--court-1:#7b78ff;--court-2:#2dd4bf;--court-3:#fbbf24;--court-4:#f472b6;--court-5:#4ade80}}:root[data-theme=dark]{--court-1:#7b78ff;--court-2:#2dd4bf;--court-3:#fbbf24;--court-4:#f472b6;--court-5:#4ade80}.c1{--court:var(--court-1)}.c2{--court:var(--court-2)}.c3{--court:var(--court-3)}.c4{--court:var(--court-4)}.c5{--court:var(--court-5)}.courtchip.c1,.courtchip.c2,.courtchip.c3,.courtchip.c4,.courtchip.c5{background:color-mix(in srgb, var(--court) 16%, transparent);color:var(--court)}.matchcard{border:1px solid var(--border);border-left:4px solid var(--court,var(--brand-1));border-radius:var(--r);background:var(--surface);text-align:left;width:100%;margin-bottom:10px;padding:14px 16px;display:block}.matchcard:last-child{margin-bottom:0}.matchcard .head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.matchcard .court{letter-spacing:.06em;text-transform:uppercase;color:var(--court,var(--brand-1));font-size:.6875rem;font-weight:800}.matchcard .sides{grid-template-columns:1fr auto;align-items:center;gap:4px 12px;display:grid}.matchcard .side{letter-spacing:-.01em;font-size:1.0625rem;font-weight:700}.matchcard .pts{font-variant-numeric:tabular-nums;text-align:right;font-size:1.5rem;font-weight:800;line-height:1}.matchcard .pts.dim{color:var(--text-faint);font-weight:700}.matchcard .go{border-radius:var(--r-sm);background:var(--court,var(--brand-1));color:#fff;width:100%;min-height:46px;margin-top:12px;font-weight:700}.matchlist[data-density=roomy] .matchrow{padding:14px 0}.matchlist[data-density=normal] .matchrow{padding:10px 0}.matchlist[data-density=tight] .matchrow{padding:6px 0}.matchlist[data-density=tight] .matchrow .meta{display:none}.matchlist[data-density=tight] .courtchip{border-radius:9px;width:28px;height:28px;font-size:.6875rem}.glance{grid-template-columns:repeat(auto-fit,minmax(74px,1fr));gap:8px;margin:14px 0;display:grid}.glance div{border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--border);min-width:0;padding:10px 11px}.glance .k{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:.625rem;font-weight:800}.glance .v{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:1.05rem;font-weight:800;overflow:hidden}@keyframes pointScored{0%{transform:scale(1)}40%{transform:scale(1.14)}to{transform:scale(1)}}.bignum{animation:.26s ease-out pointScored}@keyframes rowSettle{0%{background:color-mix(in srgb, var(--brand-1) 22%, transparent)}to{background:0 0}}tr.moved td{animation:1.1s ease-out rowSettle}@keyframes doneFlash{0%{background:color-mix(in srgb, var(--good) 20%, transparent)}to{background:0 0}}.matchrow.justdone,.matchcard.justdone{animation:1.2s ease-out doneFlash}@media (prefers-reduced-motion:reduce){.bignum,tr.moved td,.matchrow.justdone,.matchcard.justdone{animation:none}}.skiplink{z-index:1000;background:var(--surface,#fff);color:var(--text,#111);border-radius:10px;padding:10px 14px;font-weight:700;position:absolute;top:-60px;left:12px;box-shadow:0 4px 18px #00000040}.skiplink:focus{top:12px}abbr[title]{cursor:help;text-decoration:none}.appbar{z-index:30;padding:max(10px, env(safe-area-inset-top)) 16px 10px;background:color-mix(in srgb, var(--bg) 70%, transparent);-webkit-backdrop-filter:saturate(160%)blur(14px);border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);align-items:center;gap:10px;margin:0 -16px;display:flex;position:sticky;top:0}.appbar .brandlink{min-height:var(--tap);color:var(--text);letter-spacing:-.01em;text-transform:uppercase;align-items:center;gap:10px;font-size:.95rem;font-weight:900;text-decoration:none;display:flex}.appbar .spacer{flex:1}.controls{align-items:center;gap:8px;display:flex}.ctrl{min-width:var(--tap);min-height:var(--tap);background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text);-webkit-backdrop-filter:blur(10px);font-family:var(--font-mono);letter-spacing:.08em;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.75rem;font-weight:700;display:inline-flex}.ctrl.round{width:var(--tap);padding:0}.ctrl:hover:not(:disabled){border-color:var(--border-strong)}.ctrl .swap{animation:iconSwap .35s var(--ease-out);place-items:center;display:grid}@keyframes iconSwap{0%{opacity:0;transform:rotate(-90deg)scale(.6)}to{opacity:1;transform:none}}.menuwrap{position:relative}.menu{z-index:50;border-radius:var(--r);background:var(--surface);border:1px solid var(--border);min-width:200px;box-shadow:var(--shadow-2);transform-origin:100% 0;animation:menuIn .16s var(--ease-out);padding:6px;position:absolute;top:calc(100% + 8px);right:0}@keyframes menuIn{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:none}}.menu [role=menuitemradio]{border-radius:var(--r-sm);text-align:left;letter-spacing:0;background:0 0;border:0;align-items:center;gap:10px;width:100%;min-height:44px;padding:8px 12px;font-weight:600;display:flex}.menu [role=menuitemradio]:hover,.menu [role=menuitemradio]:focus-visible{background:var(--surface-2);outline:none}.menu [role=menuitemradio] .tick{color:var(--link);visibility:hidden;margin-left:auto}.menu [role=menuitemradio][aria-checked=true] .tick{visibility:visible}.menu .menulabel{padding:8px 12px 4px}.brandmark{border-radius:var(--r-sm);background:var(--brand-1);width:40px;height:40px;color:var(--on-brand);box-shadow:0 0 0 1px color-mix(in srgb, var(--brand-1) 20%, transparent), 0 8px 24px color-mix(in srgb, var(--pop) 18%, transparent);flex:none;place-items:center;display:grid;position:relative}.brandmark.lg{border-radius:var(--r);width:56px;height:56px}.brandmark.xl{border-radius:18px;width:84px;height:84px}.brandmark.loading svg{animation:shuttleBob 1.1s var(--ease-out) infinite alternate}.brandmark.loading:after{content:"";border-radius:inherit;background:conic-gradient(from 0deg, var(--pop) 0 25%, transparent 25% 100%);-webkit-mask-composite:xor;padding:2px;animation:1s linear infinite ringSpin;position:absolute;inset:-5px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes shuttleBob{0%{transform:translateY(2px)rotate(-8deg)}to{transform:translateY(-3px)rotate(8deg)}}@keyframes ringSpin{to{transform:rotate(360deg)}}.splash{z-index:100;background:var(--bg);align-content:center;place-items:center;gap:18px;animation:.2s ease-out fadeIn;display:grid;position:fixed;inset:0}.splash .splashline{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);font-size:.6875rem;font-weight:700}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.rise{animation:rise .45s var(--ease-out) both}.rise-1{animation-delay:50ms}.rise-2{animation-delay:.1s}.rise-3{animation-delay:.15s}.rise-4{animation-delay:.2s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.stagger>*{animation:rise .4s var(--ease-out) both}.stagger>:first-child{animation-delay:20ms}.stagger>:nth-child(2){animation-delay:60ms}.stagger>:nth-child(3){animation-delay:.1s}.stagger>:nth-child(4){animation-delay:.14s}.stagger>:nth-child(5){animation-delay:.18s}.stagger>:nth-child(n+6){animation-delay:.22s}.skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface-3) 50%, var(--surface-2) 100%) 0 0 / 200% 100%;animation:1.2s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.glassnav{left:50%;bottom:max(14px, env(safe-area-inset-bottom));z-index:40;background:var(--glass-bg);border:1px solid var(--glass-border);width:min(560px,100% - 24px);box-shadow:var(--shadow-2), inset 0 1px 0 #ffffff2e;-webkit-backdrop-filter:saturate(180%)blur(20px);animation:navIn .5s var(--ease-out) both;border-radius:22px;grid-template-columns:repeat(5,1fr);align-items:end;padding:6px;display:grid;position:fixed;transform:translate(-50%)}@keyframes navIn{0%{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%)}}.glassnav a{min-height:56px;color:var(--text-dim);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 2px;font-size:.625rem;font-weight:700;text-decoration:none;transition:color .2s,background .2s;display:flex;position:relative}.glassnav a:hover{color:var(--text)}.glassnav a[aria-current=page]{color:var(--text);background:color-mix(in srgb, var(--text) 7%, transparent)}.glassnav a[aria-current=page]:after{content:"";background:var(--pop);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px}.glassnav a.home{background:var(--primary);width:64px;height:64px;min-height:64px;color:var(--on-primary);box-shadow:0 10px 26px color-mix(in srgb, var(--primary) 35%, transparent), 0 0 0 6px var(--bg);border-radius:20px;place-self:center;margin-top:-26px}.glassnav a.home[aria-current=page]{background:var(--pop);color:var(--pop-ink)}.glassnav a.home[aria-current=page]:after{display:none}.visually-hidden,.glassnav a.home .label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app.withnav{padding-bottom:calc(120px + env(safe-area-inset-bottom))}.display{letter-spacing:-.03em;text-transform:uppercase;margin:10px 0 12px;font-size:clamp(2.2rem,9vw,3.4rem);font-weight:900;line-height:.95}.lede{color:var(--text-dim);max-width:38ch;font-size:1rem}.sectionhead{justify-content:space-between;align-items:baseline;gap:12px;margin:26px 0 8px;display:flex}.sectionhead h2{margin:0;font-size:1.15rem}.mono{font-family:var(--font-mono);letter-spacing:.04em}.rule{background:var(--border);border:0;height:1px;margin:22px 0}.divider{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);align-items:center;gap:12px;margin:16px 0;font-size:.6875rem;font-weight:700;display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.authpage{z-index:1;max-width:460px;min-height:100dvh;margin:0 auto;padding:0 20px 40px;position:relative}.authpage .topcontrols{padding-top:max(16px, env(safe-area-inset-top));justify-content:flex-end;display:flex}.authpage form>button.primary,.authpage .wide{width:100%;min-height:54px}.googlebtn{background:var(--surface);border:1px solid var(--border);width:100%;min-height:54px;color:var(--text);justify-content:center;align-items:center;gap:10px;display:flex}.passwrap{position:relative}.passwrap input{padding-right:56px}.passwrap .peek{width:var(--tap);min-height:var(--tap);color:var(--text-dim);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.statusstrip{border-top:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);justify-content:space-between;gap:12px;margin-top:28px;padding-top:16px;font-size:.625rem;font-weight:700;display:flex}.formhead{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.formhead h2{letter-spacing:-.01em;margin:4px 0 0;font-size:1.5rem;font-weight:600}.greeting{margin:18px 0 4px}.greeting h1{margin:6px 0 4px;font-size:1.75rem;font-weight:800}.tiles{grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0;display:grid}.tile{border-radius:var(--r);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-1);padding:14px}.tile .v{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800;display:block}.tile.pop{background:var(--pop);color:var(--pop-ink);border-color:#0000}.tile.pop .eyebrow{color:color-mix(in srgb, var(--pop-ink) 70%, transparent)}.tile{transition:transform .18s var(--ease-out), box-shadow .18s;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;position:relative}.tile.zoomed{z-index:1;box-shadow:var(--shadow-2);transform:scale(1.08)}.tcard{text-align:left;border-radius:var(--r);background:var(--surface);border:1px solid var(--border);width:100%;box-shadow:var(--shadow-1);letter-spacing:0;transition:transform .2s var(--ease-out), box-shadow .2s, border-color .2s;align-items:center;gap:14px;margin:10px 0;padding:14px 16px;font-weight:500;display:flex}.tcard:hover{box-shadow:var(--shadow-2);border-color:var(--border-strong);transform:translateY(-1px)}.tcard .date{border-radius:var(--r-sm);background:var(--surface-2);width:52px;min-height:52px;font-family:var(--font-mono);text-transform:uppercase;flex:none;place-items:center;line-height:1.1;display:grid}.tcard .date b{font-family:var(--font-sans);font-size:1.25rem;font-weight:800}.tcard .date small{letter-spacing:.1em;color:var(--text-dim);font-size:.625rem}.avatar{background:var(--surface-3);width:44px;height:44px;color:var(--text);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.profilelink{width:var(--tap);height:var(--tap);border-radius:50%;flex:none;place-items:center;text-decoration:none;display:grid}.profilelink .avatar{width:36px;height:36px;box-shadow:0 0 0 2px var(--bg), 0 0 0 3px var(--border-strong);transition:transform .2s var(--ease-out);font-size:.9rem}.profilelink:hover .avatar,.profilelink:active .avatar{transform:scale(1.08)}.wizardbar .spacer{flex:1}.avatar.lg{width:88px;height:88px;font-size:1.8rem}.avatarpick{align-items:center;gap:16px;display:flex}.plans{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.plan{text-align:left;border-radius:var(--r);background:var(--surface);border:1px solid var(--border);min-height:132px;box-shadow:var(--shadow-1);letter-spacing:0;flex-direction:column;align-items:flex-start;gap:4px;padding:16px;font-weight:500;display:flex}.plan[aria-pressed=true]{border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 22%, transparent), var(--shadow-2)}.plan .price{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800}.plan .what{color:var(--text-dim);font-size:.875rem}.orderrow{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.orderrow:first-child{border-top:0}.status{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:var(--surface-2);color:var(--text-dim);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:.625rem;font-weight:700;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status.ok{background:var(--good-bg);color:var(--good)}.status.warn{background:var(--warn-bg);color:var(--warn)}.status.bad{background:var(--bad-bg);color:var(--bad)}.adminshell{z-index:1;grid-template-columns:240px 1fr;min-height:100vh;display:grid;position:relative}.adminside{border-right:1px solid var(--border);background:color-mix(in srgb, var(--surface) 70%, transparent);-webkit-backdrop-filter:blur(14px);flex-direction:column;gap:4px;height:100vh;padding:18px 12px;display:flex;position:sticky;top:0}.adminside .brandrow{text-transform:uppercase;letter-spacing:-.01em;align-items:center;gap:10px;padding:4px 8px 18px;font-weight:900;display:flex}.adminside a{border-radius:var(--r-sm);min-height:44px;color:var(--text-dim);align-items:center;gap:10px;padding:8px 12px;font-weight:600;text-decoration:none;display:flex}.adminside a:hover{background:var(--surface-2);color:var(--text)}.adminside a[aria-current=page]{background:var(--brand-1);color:var(--on-brand)}.adminside .grow{flex:1}.adminmain{min-width:0;padding:0 28px 60px}.adminmain .appbar{margin:0 -28px 18px;padding-left:28px;padding-right:28px}.kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.kpi{border-radius:var(--r);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-1);padding:16px}.kpi .v{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:1.75rem;font-weight:800;display:block}.kpi .sub{color:var(--text-dim);font-size:.8125rem}.tablewrap{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:.9rem}table.data th{text-align:left;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:.625rem;font-weight:700}table.data td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}table.data tr:last-child td{border-bottom:0}table.data td button.bare{text-align:left;min-height:40px;font-weight:700}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:0 0 14px;display:flex}.toolbar .field{flex:220px;margin:0}.drawer{z-index:60;background:var(--surface);border-left:1px solid var(--border);width:min(520px,100%);box-shadow:var(--shadow-2);animation:drawerIn .28s var(--ease-out);padding:20px;position:fixed;inset:0 0 0 auto;overflow-y:auto}.scrim{z-index:55;background:#02061773;animation:.2s ease-out fadeIn;position:fixed;inset:0}@keyframes drawerIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@media (width<=860px){.adminshell{grid-template-columns:1fr}.adminside{z-index:35;border-right:0;border-bottom:1px solid var(--border);flex-direction:row;height:auto;padding:8px;position:sticky;top:0;overflow-x:auto}.adminside .brandrow,.adminside .grow{display:none}.adminside a{white-space:nowrap}.adminmain{padding:0 16px 60px}.adminmain .appbar{margin:0 -16px 14px}}@media (prefers-reduced-motion:reduce){.rise,.stagger>*,.glassnav,.menu,.drawer,.splash,.ctrl .swap,.brandmark.loading svg,.skeleton{animation:none}.brandmark.loading:after{animation-duration:3s}.tcard,.tcard:hover,.tile.zoomed,.profilelink:hover .avatar,.profilelink:active .avatar{transform:none}}.tcard.flat,.tcard.flat:hover{box-shadow:none;background:0 0;border:0;margin:0;padding:0;transform:none}button.frontdoor.primary{background:var(--primary);color:var(--on-primary);text-transform:none;letter-spacing:0}button.frontdoor.primary span{color:color-mix(in srgb, var(--on-primary) 72%, transparent)}.menu{min-width:240px}:root{--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}button,a.card,a.ctrl,.frontdoor,.glassnav a,.profilelink{transition:transform .4s var(--ease-spring), background .15s, box-shadow .2s, border-color .15s, color .15s, filter .15s;-webkit-tap-highlight-color:transparent}button:active:not(:disabled),a.card:active,a.ctrl:active,.frontdoor:active,.glassnav a:active,.profilelink:active{transition-duration:80ms;transform:scale(.96)}button.primary:active:not(:disabled),button.pop:active:not(:disabled){filter:brightness(1.08)}.cardactions{border-top:1px solid var(--border);gap:4px;margin-top:10px;padding-top:4px;display:flex}.cardactions button{border-radius:var(--r-sm);color:var(--text-dim);flex:1;padding:0 8px;font-size:.875rem}.cardactions button:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.cardactions button.danger{color:var(--bad)}.field>label{transition:color .2s}.field:focus-within>label{color:var(--focus)}input,textarea{caret-color:var(--focus)}input:focus,select:focus,textarea:focus{animation:focusRing .6s var(--ease-out)}@keyframes focusRing{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--focus) 45%, transparent)}to{box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 22%, transparent)}}input::placeholder,textarea::placeholder{transition:opacity .25s,color .25s}input:focus::placeholder,textarea:focus::placeholder{opacity:.55}.fieldhint{animation:hintIn .45s var(--ease-out) both;padding-left:10px;transition:color .2s;position:relative}.fieldhint:before{content:"";background:var(--focus);width:2px;transition:transform .3s var(--ease-out);border-radius:2px;position:absolute;top:.2em;bottom:.2em;left:0;transform:scaleY(0)}.field:focus-within .fieldhint{color:var(--text)}.field:focus-within .fieldhint:before{transform:scaleY(1)}.fielderror{animation:hintIn .3s var(--ease-out) both}@keyframes hintIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){button:active:not(:disabled),a.card:active,a.ctrl:active,.frontdoor:active,.glassnav a:active,.profilelink:active{transform:none}input:focus,select:focus,textarea:focus,.fieldhint,.fielderror{animation:none}}.tallies{gap:12px;margin:14px 0 4px;display:flex}.tally{background:var(--surface-2);width:72px;height:72px;color:var(--text-dim);cursor:pointer;border:2px solid #0000;border-radius:999px;place-items:center;padding:0;display:grid}.tally .n{font-size:1.25rem;font-weight:800;line-height:1.1}.tally .k{letter-spacing:.04em;text-transform:uppercase;font-size:.625rem;font-weight:800}.tally.hosted{background:var(--tally-host-bg);color:var(--tally-host)}.tally.playedtally{background:var(--tally-play-bg);color:var(--tally-play)}.tally.on{border-color:currentColor}.tally:focus-visible{outline:3px solid var(--brand-1);outline-offset:2px}
