*{box-sizing:border-box}:root{color-scheme:light;--page-bg: #fbfcf9;--surface: #fff;--surface-subtle: #fbfcfa;--surface-tint: #f1f5f0;--text: #1c2923;--text-strong: #1c2d26;--muted: #738078;--border: #e8e9e3;--border-soft: #eff0ec;--primary: #174d3b;--primary-strong: #245840;--primary-soft: #eaf2ee;--primary-soft-2: #e7f2e8;--primary-border: #8ca99a;--primary-focus: #28604d44;--track: #d7dfd9;--danger: #a3432b;--danger-soft: #fff1eb;--warning: #8c682e;--warning-soft: #f8f1df}html,body{background:var(--page-bg)}body{margin:0;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-shell{--page-bg: #f7f9fc;--surface: #fff;--surface-subtle: #fbfcfe;--surface-tint: #f0f4fa;--text: #263447;--text-strong: #1e2f46;--muted: #64758b;--border: #dfe6ef;--border-soft: #e9eef5;--primary: #315f9c;--primary-strong: #244b7d;--primary-soft: #eaf1f9;--primary-soft-2: #e2ecf8;--primary-border: #8daed5;--primary-focus: #315f9c44;--track: #d5deea;--danger: #a3432b;--danger-soft: #fff1eb;--warning: #8c682e;--warning-soft: #f8f1df;color:var(--text);background:var(--page-bg)}.admin-shell[data-theme=dark]{color-scheme:dark;--page-bg: #0f1724;--surface: #182334;--surface-subtle: #1d2a3d;--surface-tint: #202f45;--text: #d6e0ee;--text-strong: #edf3fb;--muted: #9eacc0;--border: #34445a;--border-soft: #2b3a4f;--primary: #78a9e8;--primary-strong: #9bc2f2;--primary-soft: #233a58;--primary-soft-2: #2a4567;--primary-border: #577ba7;--primary-focus: #78a9e844;--track: #3c4b60;--danger: #f09b8b;--danger-soft: #3b2528;--warning: #e7c37a;--warning-soft: #392f20}@media(prefers-color-scheme:dark){.admin-shell[data-theme=system]{color-scheme:dark;--page-bg: #0f1724;--surface: #182334;--surface-subtle: #1d2a3d;--surface-tint: #202f45;--text: #d6e0ee;--text-strong: #edf3fb;--muted: #9eacc0;--border: #34445a;--border-soft: #2b3a4f;--primary: #78a9e8;--primary-strong: #9bc2f2;--primary-soft: #233a58;--primary-soft-2: #2a4567;--primary-border: #577ba7;--primary-focus: #78a9e844;--track: #3c4b60;--danger: #f09b8b;--danger-soft: #3b2528;--warning: #e7c37a;--warning-soft: #392f20}}body[data-admin-theme=light],body[data-admin-theme=system]{background:#f7f9fc}body[data-admin-theme=dark]{background:#0f1724}@media(prefers-color-scheme:dark){body[data-admin-theme=system]{background:#0f1724}}@media(prefers-color-scheme:dark){html,body{color-scheme:dark;background:#0f1724}}body[data-public-theme=light]{color-scheme:light;background:#fbfcf9}body[data-public-theme=dark]{color-scheme:dark;--page-bg: #0f1724;--surface: #182334;--surface-subtle: #1d2a3d;--surface-tint: #202f45;--text: #d6e0ee;--text-strong: #edf3fb;--muted: #9eacc0;--border: #34445a;--border-soft: #2b3a4f;--primary: #78a9e8;--primary-strong: #9bc2f2;--primary-soft: #233a58;--primary-soft-2: #2a4567;--primary-border: #577ba7;--primary-focus: #78a9e844;--track: #3c4b60;--danger: #f09b8b;--danger-soft: #3b2528;--warning: #e7c37a;--warning-soft: #392f20;background:#0f1724}body[data-public-theme=system]{background:#fbfcf9}@media(prefers-color-scheme:dark){body[data-public-theme=system]{color-scheme:dark;--page-bg: #0f1724;--surface: #182334;--surface-subtle: #1d2a3d;--surface-tint: #202f45;--text: #d6e0ee;--text-strong: #edf3fb;--muted: #9eacc0;--border: #34445a;--border-soft: #2b3a4f;--primary: #78a9e8;--primary-strong: #9bc2f2;--primary-soft: #233a58;--primary-soft-2: #2a4567;--primary-border: #577ba7;--primary-focus: #78a9e844;--track: #3c4b60;--danger: #f09b8b;--danger-soft: #3b2528;--warning: #e7c37a;--warning-soft: #392f20;background:#0f1724}}button,select{font:inherit}.admin-navigation{display:flex;align-items:center;gap:8px;padding:16px 0;border-bottom:1px solid var(--border)}.admin-navigation a{padding:10px 13px;border-radius:8px;color:var(--muted);text-decoration:none;font-size:12px;font-weight:700;transition:color .15s,box-shadow .15s}.admin-navigation a:not(.active):is(:hover,:focus-visible){color:var(--text-strong);box-shadow:inset 0 0 0 1px var(--border);outline:none}.admin-navigation a.active{color:var(--primary);background:var(--primary-soft)}.admin-navigation .admin-logout{margin-left:auto}.admin-overview-table tr.chart-selected td{background:var(--primary-soft)}.admin-points-chart header{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px;padding:18px 20px 6px}.admin-points-chart header h2{margin:0;color:var(--text-strong);font-size:16px}.points-chart-plot{position:relative;padding:0 12px}.points-chart-plot svg{display:block;width:100%;height:auto;overflow:visible}.chart-grid{stroke:var(--border);stroke-width:1}.chart-axis{fill:var(--muted);font-size:14px}.chart-line{fill:none;stroke:var(--track);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-line.highlighted{stroke:var(--primary);stroke-width:2.5}:root{--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--series-6: #008300;--series-7: #6250d6;--series-8: #e34948}.admin-shell[data-theme=dark],body[data-public-theme=dark]{--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--series-6: #008300;--series-7: #9085e9;--series-8: #e66767}@media(prefers-color-scheme:dark){.admin-shell[data-theme=system],body[data-public-theme=system]{--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--series-6: #008300;--series-7: #9085e9;--series-8: #e66767}}.series-1{--series: var(--series-1)}.series-2{--series: var(--series-2)}.series-3{--series: var(--series-3)}.series-4{--series: var(--series-4)}.series-5{--series: var(--series-5)}.series-6{--series: var(--series-6)}.series-7{--series: var(--series-7)}.series-8{--series: var(--series-8)}.chart-line[class*=series-]{stroke:var(--series)}.chart-point[class*=series-]{fill:var(--series)}.chart-line.dashed{stroke-dasharray:9 6}.team-swatch{display:inline-block;width:16px;height:0;margin-right:6px;border-top:3px solid var(--series);vertical-align:middle}.team-swatch.dashed{border-top-style:dashed}.chart-end-label{fill:var(--text);font-size:13px;font-weight:600}.chart-point{fill:var(--primary);stroke:var(--surface);stroke-width:2}.chart-value{fill:var(--text-strong);font-size:15px;font-weight:700}.chart-crosshair{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 4}.chart-hit{fill:transparent;cursor:crosshair}.points-chart-tooltip{position:absolute;top:8px;z-index:2;display:grid;gap:3px;min-width:150px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 8px 24px #0000002e;color:var(--text);font-size:12px;transform:translate(-50%);pointer-events:none}.points-chart-tooltip.align-start{transform:translate(12px)}.points-chart-tooltip.align-end{transform:translate(calc(-100% - 12px))}@media(max-width:760px){.points-chart-tooltip,.points-chart-tooltip.align-start,.points-chart-tooltip.align-end{position:static;margin-top:10px;transform:none}}.points-chart-tooltip strong{color:var(--text-strong);margin-bottom:3px}.points-chart-tooltip>span{display:flex;justify-content:space-between;gap:16px}.points-chart-tooltip>span.highlighted{color:var(--primary);font-weight:700}.public-statistics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch;margin-bottom:16px}.ratio-tables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.public-insights{margin-bottom:38px}.admin-ratio-tables{margin:16px 0 0}.admin-insights{display:block;margin-bottom:16px}.ratio-tables .panel h3{margin:0;padding:18px 20px 6px;color:var(--text-strong);font-size:16px}.public-statistics .panel{display:flex;flex-direction:column}.public-statistics .panel h3{margin:0;padding:18px 20px 6px;color:var(--text-strong);font-size:16px}.public-average-panel .table-scroll{flex:1}.public-average-panel table{height:100%}.public-chart-panel{grid-column:span 2;padding-bottom:12px}.public-row-link{cursor:pointer}.public-row-link:hover td,.public-row-link.chart-selected td{background:var(--primary-soft)}@media(max-width:1000px){.public-statistics,.ratio-tables{grid-template-columns:minmax(0,1fr)}.public-chart-panel{grid-column:auto}}.chart-team{cursor:pointer;outline:none}.chart-team-hit{fill:transparent}.chart-team:is(:hover,:focus-visible) .chart-end-label{text-decoration:underline}.chart-team:focus-visible .chart-team-hit{stroke:var(--primary);stroke-width:1.5;rx:6}.chart-team.selected .chart-end-label{fill:var(--text-strong);font-weight:800}.chart-team.dimmed{opacity:.45}.chart-team.dimmed:is(:hover,:focus-visible){opacity:.8}.admin-overview-table h2,.admin-ratio-tables h2{margin:0;padding:18px 20px 14px;color:var(--text-strong);font-size:16px}.admin-metric-link{color:inherit;text-decoration:none;transition:border-color .15s,background-color .15s}.admin-metric-link:is(:hover,:focus-visible){outline:none;border-color:var(--primary-border);background:var(--surface-tint)}.admin-metric small{color:var(--muted);font-size:12px}.admin-row-link{cursor:pointer}.admin-row-link:hover td{background:var(--surface-tint)}.admin-row-link a{color:inherit;text-decoration:none}.admin-row-link a:hover,.admin-row-link a:focus-visible{text-decoration:underline}.tournament-state{display:inline-block;padding:3px 9px;border-radius:99px;background:var(--warning-soft, var(--surface-tint));color:var(--warning, var(--text));font-size:11px;font-weight:700}.tournament-state.completed{background:var(--primary-soft);color:var(--primary-strong)}.tournament-state.closed{background:var(--surface-tint);color:var(--muted)}.public-menu{padding:12px 0}.mascot-banner{position:relative;overflow:hidden;margin-top:26px;padding:22px 24px 18px;border:1px solid #d3e0c9;border-radius:20px;background:#e8f0e2;color:#1c2d26;--net-line: #174d3b24;--net-tape: #ffffff;--flight: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='150' viewBox='0 0 420 150'%3E%3Cg fill='none' stroke='%23174d3b73'%3E%3Cpath d='M10 140 C120 10 280 0 380 40' stroke-width='2' stroke-dasharray='2 9' stroke-linecap='round'/%3E%3Ccircle cx='396' cy='48' r='15' fill='%23ffffff' stroke-width='1.6'/%3E%3Cpath d='M396 33c-5 7-5 22 0 30M382 42c8-1 18 2 26 9M383 57c6-6 16-9 27-7' stroke-width='1.3'/%3E%3C/g%3E%3C/svg%3E");--tile: #ffffffd9;--tile-border: #ffffff}.mascot-banner:before{content:"";position:absolute;inset:56% 0 0;border-top:var(--net-tape-width, 6px) solid var(--net-tape);background-image:repeating-linear-gradient(90deg,var(--net-line) 0 1px,transparent 1px 18px),repeating-linear-gradient(0deg,var(--net-line) 0 1px,transparent 1px 14px);pointer-events:none}.mascot-banner:after{content:"";position:absolute;top:4px;right:3%;width:min(420px,45%);height:150px;background:var(--flight) no-repeat right top / contain;pointer-events:none}.mascot-list{position:relative;z-index:1;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}@media(max-width:1140px){.mascot-list{display:flex;overflow-x:auto;padding:0 10px 10px 0;scrollbar-width:thin}}.mascot{display:grid;justify-items:center;gap:8px;min-width:100px;padding:6px 4px 4px;border-radius:16px;color:inherit;text-decoration:none}.mascot-icon{position:relative;box-sizing:border-box;display:grid;place-items:center;width:96px;height:96px;border:1px solid var(--tile-border);border-radius:22px;background:var(--tile)}.mascot-figure{display:grid;place-items:center;transition:transform .2s}.mascot-figure img{display:block;width:64px;height:auto}.mascot-figure img[src$="pirana.png"]{width:84px}.mascot-ball{position:absolute;right:-10px;bottom:-8px;width:28px;height:28px;transition:transform .25s}.mascot-list li:nth-child(odd) .mascot-figure{transform:rotate(-11deg)}.mascot-list li:nth-child(2n) .mascot-figure{transform:rotate(10deg)}.mascot-list li:nth-child(3n) .mascot-figure{transform:rotate(-6deg)}.mascot-name{font-size:13px;font-weight:700;white-space:nowrap}a.mascot[href]:is(:hover,:focus-visible){outline:none;background:#174d3b14}a.mascot[href]:is(:hover,:focus-visible) .mascot-figure{transform:translateY(-4px) rotate(-16deg)}a.mascot[href]:is(:hover,:focus-visible) .mascot-ball{transform:translate(6px,-22px) rotate(140deg)}a.mascot[href]:focus-visible{box-shadow:0 0 0 2px #174d3b}body[data-public-theme=dark] .mascot-banner{border-color:transparent;background:#1d3b61;color:#eef3ec;--net-line: #ffffff1f;--net-tape: #ffffff40;--net-tape-width: 4px;--flight: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='150' viewBox='0 0 420 150'%3E%3Cg fill='none' stroke='%23ffffff8c'%3E%3Cpath d='M10 140 C120 10 280 0 380 40' stroke-width='2' stroke-dasharray='2 9' stroke-linecap='round'/%3E%3Ccircle cx='396' cy='48' r='15' fill='%23ffffff2e' stroke-width='1.6'/%3E%3Cpath d='M396 33c-5 7-5 22 0 30M382 42c8-1 18 2 26 9M383 57c6-6 16-9 27-7' stroke-width='1.3'/%3E%3C/g%3E%3C/svg%3E");--tile: #2b4a73e6;--tile-border: #ffffff33}body[data-public-theme=dark] a.mascot[href]:is(:hover,:focus-visible){background:#ffffff14}body[data-public-theme=dark] a.mascot[href]:focus-visible{box-shadow:0 0 0 2px #c6dfb0}@media(prefers-color-scheme:dark){body[data-public-theme=system] .mascot-banner{border-color:transparent;background:#1d3b61;color:#eef3ec;--net-line: #ffffff1f;--net-tape: #ffffff40;--net-tape-width: 4px;--flight: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='150' viewBox='0 0 420 150'%3E%3Cg fill='none' stroke='%23ffffff8c'%3E%3Cpath d='M10 140 C120 10 280 0 380 40' stroke-width='2' stroke-dasharray='2 9' stroke-linecap='round'/%3E%3Ccircle cx='396' cy='48' r='15' fill='%23ffffff2e' stroke-width='1.6'/%3E%3Cpath d='M396 33c-5 7-5 22 0 30M382 42c8-1 18 2 26 9M383 57c6-6 16-9 27-7' stroke-width='1.3'/%3E%3C/g%3E%3C/svg%3E");--tile: #2b4a73e6;--tile-border: #ffffff33}body[data-public-theme=system] a.mascot[href]:is(:hover,:focus-visible){background:#ffffff14}body[data-public-theme=system] a.mascot[href]:focus-visible{box-shadow:0 0 0 2px #c6dfb0}}@media(prefers-reduced-motion:reduce){.mascot-figure,.mascot-ball{transition:none}}@media(max-width:760px){.mascot-banner{padding:16px 12px 12px}.mascot-banner:after{display:none}.mascot{min-width:80px}.mascot-icon{width:72px;height:72px;border-radius:18px}.mascot-figure img{width:47px}.mascot-figure img[src$="pirana.png"]{width:62px}.mascot-ball{width:22px;height:22px}}body[data-public-theme]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cg fill='none' stroke='%23174d3b14' stroke-width='1.6'%3E%3Cg transform='translate%2836 44%29 rotate%28-15%29'%3E%3Ccircle r='26'/%3E%3Cpath d='M0-26c-10 14-10 36 0 52M-24-10c16-2 32 4 44 20M-22 14c12-12 28-16 46-12'/%3E%3C/g%3E%3Cg transform='translate%28164 172%29 rotate%2820%29'%3E%3Ccircle r='20'/%3E%3Cpath d='M0-20c-8 12-8 28 0 40M-18-8c12-2 24 4 34 16M-16 10c10-8 20-12 36-10'/%3E%3C/g%3E%3Cpath d='M120 20v52M96 46h48M200 80l16 16M200 96l16-16M40 150v40M20 170h40' stroke-dasharray='3 6'/%3E%3C/g%3E%3C/svg%3E");background-size:240px}body[data-public-theme=dark]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cg fill='none' stroke='%2378a9e81a' stroke-width='1.6'%3E%3Cg transform='translate%2836 44%29 rotate%28-15%29'%3E%3Ccircle r='26'/%3E%3Cpath d='M0-26c-10 14-10 36 0 52M-24-10c16-2 32 4 44 20M-22 14c12-12 28-16 46-12'/%3E%3C/g%3E%3Cg transform='translate%28164 172%29 rotate%2820%29'%3E%3Ccircle r='20'/%3E%3Cpath d='M0-20c-8 12-8 28 0 40M-18-8c12-2 24 4 34 16M-16 10c10-8 20-12 36-10'/%3E%3C/g%3E%3Cpath d='M120 20v52M96 46h48M200 80l16 16M200 96l16-16M40 150v40M20 170h40' stroke-dasharray='3 6'/%3E%3C/g%3E%3C/svg%3E")}@media(prefers-color-scheme:dark){body[data-public-theme=system]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cg fill='none' stroke='%2378a9e81a' stroke-width='1.6'%3E%3Cg transform='translate%2836 44%29 rotate%28-15%29'%3E%3Ccircle r='26'/%3E%3Cpath d='M0-26c-10 14-10 36 0 52M-24-10c16-2 32 4 44 20M-22 14c12-12 28-16 46-12'/%3E%3C/g%3E%3Cg transform='translate%28164 172%29 rotate%2820%29'%3E%3Ccircle r='20'/%3E%3Cpath d='M0-20c-8 12-8 28 0 40M-18-8c12-2 24 4 34 16M-16 10c10-8 20-12 36-10'/%3E%3C/g%3E%3Cpath d='M120 20v52M96 46h48M200 80l16 16M200 96l16-16M40 150v40M20 170h40' stroke-dasharray='3 6'/%3E%3C/g%3E%3C/svg%3E")}}.public-schedule-switch{min-width:0!important;padding-bottom:10px;color:var(--text);font-size:13px;font-weight:600}.public-schedule-switch:has(input:disabled){opacity:.5}.public-schedule-switch:has(input:disabled) input{cursor:not-allowed}.schedule-own-referee{display:inline-block;padding:3px 8px;border-radius:6px;background:var(--primary-soft);color:var(--primary-strong);font-weight:700}.public-schedule-meta{margin:8px 0 16px;color:var(--muted);font-size:13px}.public-schedule-instructions{margin:0;color:var(--muted);font-size:13px;line-height:1.7;white-space:pre-line}.admin-user-trigger{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.admin-user-trigger svg{flex:none;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.admin-user-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.admin-topbar{gap:12px}.admin-topbar>.brand{flex:none;white-space:nowrap}.admin-topbar-actions{display:flex;align-items:center;gap:10px;min-width:0}.admin-topbar .admin-user-trigger{min-width:0}.admin-user-label{overflow:hidden;text-overflow:ellipsis}.admin-user-theme{display:grid;gap:6px;margin:10px 0 6px}.admin-user-theme>span{color:var(--muted);font-size:11px;font-weight:700}.admin-user-theme>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:3px;border:1px solid var(--border);border-radius:10px}.admin-user-theme button{display:grid;justify-items:center;gap:3px;padding:7px 4px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.admin-user-theme button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.admin-user-theme button:hover{color:var(--text-strong)}.admin-user-theme button.selected{background:var(--primary-soft, color-mix(in srgb, var(--primary) 18%, transparent));color:var(--primary-strong)}.admin-user-backdrop{position:fixed;inset:0;z-index:900}.admin-user-panel{position:fixed;z-index:901;display:grid;gap:4px;min-width:240px;max-width:calc(100vw - 16px);box-sizing:border-box;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 12px 32px #0000002e}.admin-user-name{margin:0;color:var(--text-strong);font-size:14px;font-weight:700}.admin-user-email{margin:0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.admin-user-role{justify-self:start;margin-top:6px;padding:3px 9px;border-radius:99px;background:var(--primary-soft);color:var(--primary-strong);font-size:11px;font-weight:700}.admin-user-signout{margin-top:12px;width:100%}.admin-navigation .admin-logout{margin-left:0}.public-theme-trigger{display:grid;place-items:center;width:34px;height:34px;align-self:center;padding:0;border:0;border-radius:8px;color:var(--muted);background:transparent;cursor:pointer}.public-theme-trigger:hover,.public-theme-trigger:focus-visible{color:var(--primary);background:var(--primary-soft);outline:none}.public-theme-trigger svg{display:block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.public-theme-backdrop{z-index:1100}.public-theme-dialog{width:min(100%,400px)}.public-theme-options{display:grid;gap:9px}.public-theme-option{display:flex;align-items:center;gap:12px;width:100%;min-height:50px;padding:11px 13px;border:1px solid var(--border);border-radius:9px;color:var(--text-strong);background:var(--surface);font:inherit;text-align:left;cursor:pointer}.public-theme-option:hover,.public-theme-option.selected{border-color:var(--primary-border);background:var(--primary-soft)}.public-theme-option>svg{flex:0 0 20px;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.public-theme-option>span:nth-of-type(1){flex:1}.public-theme-check{color:var(--primary);font-weight:800}.admin-data-card,.admin-form-card{margin-top:22px;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.admin-empty{margin:0;padding:34px;color:var(--muted);font-size:13px;text-align:center}.admin-table td{white-space:nowrap}@media(max-width:640px){main.admin-content .admin-table :is(th,td){padding-left:6px!important;padding-right:6px!important}main.admin-content .admin-table :is(th,td):first-child{padding-left:14px!important}}.table-action{border:0;padding:7px 9px;border-radius:7px;color:var(--primary-strong);background:var(--primary-soft);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.admin-form-card{padding:24px}.admin-form-card h2{margin:0 0 8px}.admin-form-card .admin-description{margin-bottom:20px}.admin-modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow-y:auto;padding:20px;background:#14243ccc}.admin-modal{width:min(100%,520px);max-height:calc(100vh - 40px);margin:auto;overflow-y:auto;padding:26px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 24px 80px #10251d55}.admin-season-modal{width:min(100%,880px)}.admin-result-modal{width:min(100%,760px)}.admin-tournament-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:22px;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.admin-tournament-toolbar label{display:grid;min-width:min(100%,320px);gap:7px;color:var(--muted);font-size:12px;font-weight:700}.admin-tournament-toolbar select{min-height:42px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-strong);font:inherit}@media(max-width:760px){main.admin-content .admin-tournament-toolbar{flex-direction:column;align-items:stretch}main.admin-content .admin-tournament-toolbar label{min-width:0;width:100%}}.admin-tournament-card{padding:0}.admin-tournament-card>header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;padding:20px 24px 12px}.admin-tournament-card>header>div:first-child{flex:1 1 260px;min-width:0}@media(max-width:760px){main.admin-content .admin-data-card.admin-tournament-card .tournament-document-actions{flex:1 1 100%;min-width:0}main.admin-content .admin-data-card.admin-tournament-card .tournament-document-actions>*{flex:1 1 auto;max-width:100%;white-space:normal;text-align:center}}.admin-tournament-card h2{margin:0;color:var(--text-strong);font-size:20px}.admin-tournament-card header p{margin:6px 0 0;color:var(--muted);font-size:12px}.schedule-instructions-editor{display:grid;gap:10px;margin:20px 24px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.schedule-instructions-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.schedule-instructions-heading h4{margin:0;color:var(--text-strong);font-size:13px}.schedule-instructions-preview{margin:0;color:var(--muted);font-size:13px;line-height:1.55;white-space:pre-line}.admin-confirm-modal.schedule-instructions-modal{width:min(100%,720px)}.schedule-instructions-text{width:100%;min-height:220px;margin-bottom:10px;resize:vertical;padding:12px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text-strong);font:inherit;line-height:1.55}.schedule-instructions-modal .admin-description{font-size:12px}.schedule-instructions-saved{margin:0;color:var(--primary-strong);font-size:12px}.admin-match-table{min-width:1040px}.admin-match-table td{white-space:nowrap}.admin-match-table tr.late td{background:color-mix(in srgb,var(--danger) 13%,transparent)}.admin-match-table tr.late td.late-time{color:var(--danger);font-weight:700}.admin-match-table .by-referee.in-progress{color:var(--warning);font-weight:700}.result-clear{margin-right:auto;color:var(--danger)!important}.result-clear:has(+.result-reopen){margin-right:0}.result-reopen{margin-right:auto}.result-confirm-backdrop{z-index:1150}.admin-match-table .by-referee{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.admin-match-table td.late-time small{margin-left:6px;font-size:11px}.result-set-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.result-score-row{display:grid;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr);align-items:end;gap:6px}.result-score-row label{display:grid;gap:6px;min-width:0;color:var(--muted);font-size:11px;font-weight:700}.result-score-row input{width:100%;min-height:40px;padding:8px;border:1px solid var(--border);border-radius:8px;color:var(--text-strong);font:inherit}.result-score-row>span{padding-bottom:12px;text-align:center}.admin-form-row.result-time-row{grid-template-columns:max-content max-content;justify-content:start;gap:16px}.admin-form-row.result-time-row label{width:max-content}.admin-modal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.admin-modal-heading .eyebrow{margin-bottom:8px}.admin-modal-heading h2{color:var(--text-strong);font-size:24px}.admin-modal-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 36px;padding:0;border:0;border-radius:9px;color:var(--muted);background:var(--primary-soft);line-height:1;cursor:pointer}.admin-modal-close svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.admin-danger{border:0;border-radius:9px;padding:13px 16px;color:#fff;background:#c62828;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background-color .15s}.admin-danger:hover:not(:disabled){background:#b71c1c}:is(.admin-submit,.admin-logout,.table-action,.admin-modal-close,.time-actions .apply,.time-actions .cancel){transition:filter .15s}:is(.admin-submit,.admin-logout,.table-action,.admin-modal-close,.time-actions .apply,.time-actions .cancel):hover:not(:disabled){filter:brightness(.92)}.admin-shell[data-theme=dark] :is(.admin-submit,.admin-logout,.table-action,.admin-modal-close,.time-actions .apply,.time-actions .cancel):hover:not(:disabled){filter:brightness(1.25)}@media(prefers-color-scheme:dark){.admin-shell[data-theme=system] :is(.admin-submit,.admin-logout,.table-action,.admin-modal-close,.time-actions .apply,.time-actions .cancel):hover:not(:disabled){filter:brightness(1.25)}}.time-actions .clear:hover{color:var(--text)}.admin-danger:disabled{opacity:.65;cursor:wait}.admin-modal-detail-actions .admin-danger{margin-right:auto}.admin-shell[data-theme=dark] .admin-modal :is(.admin-submit,.admin-logout){color:var(--muted)}.admin-shell[data-theme=dark] .admin-modal .admin-submit{background:#27497a}@media(prefers-color-scheme:dark){.admin-shell[data-theme=system] .admin-modal :is(.admin-submit,.admin-logout){color:var(--muted)}.admin-shell[data-theme=system] .admin-modal .admin-submit{background:#27497a}}.admin-confirm-backdrop{z-index:1010;background:#101d30e6}.admin-confirm-modal{width:min(100%,460px)}.admin-confirm-modal.admin-absences-modal{width:min(100%,580px)}.admin-confirm-modal .admin-modal-heading h2{font-size:22px}.admin-confirm-team-name{margin:0 0 10px;color:var(--text-strong);font-size:17px;font-weight:750}.admin-confirm-hint{margin:0 0 24px;color:var(--muted);font-size:13px;line-height:1.6}.team-details{display:grid;gap:0;margin:0 0 24px;border-top:1px solid var(--border-soft)}.team-details div{display:grid;grid-template-columns:130px 1fr;gap:16px;padding:15px 2px;border-bottom:1px solid var(--border-soft)}.team-details dt{color:var(--muted);font-size:12px}.team-details dd{margin:0;color:var(--text-strong);font-size:13px;font-weight:650}.admin-form{display:grid;gap:16px}.admin-form label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:700}.admin-form input:not([type=checkbox]),.admin-form select{width:100%;min-height:42px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;outline-color:var(--primary);background:var(--surface);color:var(--text-strong);font:inherit}.admin-form-row{display:grid;grid-template-columns:1fr 180px;gap:16px}.admin-checkbox{display:flex!important;align-items:center;justify-self:start;gap:9px!important}.admin-switch{position:relative;display:inline-block;flex:0 0 40px;width:40px;height:22px;vertical-align:middle;cursor:pointer}.admin-switch input{position:absolute;inset:0;z-index:1;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.admin-switch-slider{position:absolute;inset:0;border-radius:11px;background:var(--track);transition:background-color .2s;pointer-events:none}.admin-switch-slider:before{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px #0004;content:"";transition:transform .2s}.admin-switch input:checked+.admin-switch-slider{background:var(--primary)}.admin-switch input:checked+.admin-switch-slider:before{transform:translate(18px)}.admin-switch input:focus-visible+.admin-switch-slider{box-shadow:0 0 0 3px var(--primary-focus)}.admin-form-actions{display:flex;justify-content:flex-end;gap:10px}.date-fieldset{margin:0;padding:16px;border:1px solid var(--border);border-radius:10px}.date-fieldset legend{padding:0 6px;color:var(--muted);font-size:12px;font-weight:700}.date-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.date-grid label{display:flex;align-items:center;gap:7px}.date-grid label span{color:var(--muted);font-size:11px}.date-fieldset small{display:block;margin-top:12px;color:var(--muted);font-size:11px}@media(max-width:640px){.admin-season-modal .date-fieldset{padding:10px}.admin-season-modal .date-fieldset .tournament-date-grid{grid-template-columns:minmax(0,1fr);gap:8px;padding:0}.admin-season-modal .date-fieldset .tournament-date-entry{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:10px}}@media(max-width:760px){.admin-navigation{gap:3px;overflow-x:auto}.admin-navigation a{padding:9px;white-space:nowrap}.admin-navigation .admin-logout{white-space:nowrap}.admin-form-row{grid-template-columns:1fr}.admin-form-row.result-time-row{grid-template-columns:max-content max-content;gap:12px}.admin-form-row.result-time-row label{width:max-content}.date-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-card{padding:18px}.admin-modal{padding:21px 18px}.team-details div{grid-template-columns:100px 1fr}.admin-tournament-toolbar{align-items:stretch;flex-direction:column}.admin-tournament-toolbar label{min-width:0}.result-set-grid{grid-template-columns:1fr}}.admin-denied{display:flex;align-items:center;gap:12px;margin:0 0 22px;padding:12px 14px;border:1px solid color-mix(in srgb,#c27a1a 45%,var(--border));border-radius:12px;background:color-mix(in srgb,#c27a1a 10%,var(--surface));color:var(--text-strong);font-size:13px;font-weight:600}.admin-denied>svg{width:20px;height:20px;flex:none;fill:none;stroke:#c27a1a;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.admin-denied p{flex:1;margin:0;line-height:1.45}.admin-denied button{display:grid;place-items:center;width:30px;height:30px;flex:none;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.admin-denied button:hover{background:color-mix(in srgb,#c27a1a 16%,transparent)}.admin-denied.hiding{overflow:hidden;animation:admin-denied-up .45s ease-in forwards}@keyframes admin-denied-up{0%{max-height:120px;opacity:1;transform:translateY(0)}to{max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;border-width:0;opacity:0;transform:translateY(-14px)}}@media(prefers-reduced-motion:reduce){.admin-denied.hiding{animation-duration:.01s}}.admin-denied button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.result-set-grid .result-start{margin-top:10px}.result-set-grid .result-start span{display:flex;align-items:center;gap:10px}.result-set-grid .result-start span input{width:72px;min-width:0;flex:none}.result-set-grid .result-start small{color:var(--muted);font-size:11px;font-weight:500;white-space:nowrap}@media(max-width:640px){.admin-result-modal .date-fieldset{padding:10px 12px 12px}.admin-result-modal .admin-form-row.result-time-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.admin-result-modal .admin-form-row.result-time-row label{width:auto;min-width:0}.admin-result-modal .result-time-row app-admin-time-picker{display:block;width:100%}.admin-result-modal .result-time-row app-admin-time-picker .time-trigger{width:100%}.admin-result-modal .admin-form-actions{flex-wrap:wrap}.admin-result-modal .admin-form-actions>button{flex:1 1 auto;white-space:normal}}.modal-focus:focus{outline:none}.standings-table.public-schedule-table td.slot-cell,.standings-table.admin-match-table td.slot-cell{vertical-align:middle}.standings-table.public-schedule-table tr:not(.slot-start) td,.standings-table.admin-match-table tr:not(.slot-start) td{border-top-color:transparent}.standings-table.public-schedule-table tr:not(.slot-start) td:first-child,.standings-table.admin-match-table tr:not(.slot-start) td:first-child{padding-left:10px}.standings-table.admin-match-table tr.late td:is(.slot-cell,.group-cell){background:none}.admin-heading-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px}@media(min-width:641px){.filter-field{display:flex!important;flex:none!important;align-items:center;gap:12px!important;width:auto!important;min-width:0!important}.filter-field>span:first-child{flex:none}.filter-field app-admin-select{flex:none;width:280px}}
