@charset "UTF-8";@font-face{font-family:Material Icons;font-style:normal;font-weight:400;font-display:block;src:url("./media/material-icons-LEZCGFVT.woff2") format("woff2"),url("./media/material-icons-JLIDJUWE.woff") format("woff")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"liga"}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-ASVAGXXE.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal-EWLSKVKN.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal-7GGTF7EK.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal-N43DBLU2.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal-CE5GGD3W.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal-5SRY4DMZ.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal-O25CN4JL.woff2") format("woff2-variations");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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url("./media/source-serif-4-cyrillic-ext-opsz-normal-N4C6JMZG.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url("./media/source-serif-4-cyrillic-opsz-normal-F2D5K7UY.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url("./media/source-serif-4-greek-opsz-normal-DDHPRTMN.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url("./media/source-serif-4-vietnamese-opsz-normal-PIG5VG5O.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url("./media/source-serif-4-latin-ext-opsz-normal-A2GQKBDE.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url("./media/source-serif-4-latin-opsz-normal-CTFEAZ5J.woff2") format("woff2-variations");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}html{--mat-sys-background: light-dark(#fcf8fd, #131316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f3eff4, #303034);--mat-sys-inverse-primary: light-dark(#bec2ff, #343dff);--mat-sys-inverse-surface: light-dark(#303034, #e5e1e6);--mat-sys-on-background: light-dark(#1b1b1f, #e5e1e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #0001ac);--mat-sys-on-primary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-primary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-primary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-on-secondary: light-dark(#ffffff, #2e2f42);--mat-sys-on-secondary-container: light-dark(#444559, #e1e0f9);--mat-sys-on-secondary-fixed: light-dark(#191a2c, #191a2c);--mat-sys-on-secondary-fixed-variant: light-dark(#444559, #444559);--mat-sys-on-surface: light-dark(#1b1b1f, #e5e1e6);--mat-sys-on-surface-variant: light-dark(#46464f, #e4e1ec);--mat-sys-on-tertiary: light-dark(#ffffff, #42008a);--mat-sys-on-tertiary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-tertiary-fixed: light-dark(#270057, #270057);--mat-sys-on-tertiary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-outline: light-dark(#777680, #91909a);--mat-sys-outline-variant: light-dark(#c7c5d0, #46464f);--mat-sys-primary: light-dark(#343dff, #bec2ff);--mat-sys-primary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-primary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-primary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#5c5d72, #c5c4dd);--mat-sys-secondary-container: light-dark(#e1e0f9, #444559);--mat-sys-secondary-fixed: light-dark(#e1e0f9, #e1e0f9);--mat-sys-secondary-fixed-dim: light-dark(#c5c4dd, #c5c4dd);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fcf8fd, #131316);--mat-sys-surface-bright: light-dark(#fcf8fd, #3a393c);--mat-sys-surface-container: light-dark(#f0edf1, #201f22);--mat-sys-surface-container-high: light-dark(#ebe7eb, #2a292d);--mat-sys-surface-container-highest: light-dark(#e5e1e6, #353438);--mat-sys-surface-container-low: light-dark(#f6f2f7, #1b1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0e0e11);--mat-sys-surface-dim: light-dark(#dcd9dd, #131316);--mat-sys-surface-tint: light-dark(#343dff, #bec2ff);--mat-sys-surface-variant: light-dark(#e4e1ec, #46464f);--mat-sys-tertiary: light-dark(#7d00fa, #d5baff);--mat-sys-tertiary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-tertiary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-tertiary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-neutral-variant20: #303038;--mat-sys-neutral10: #1b1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-body-large-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-body-medium-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-body-small-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-display-large-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-display-medium-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-display-small-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-large-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-medium-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-small-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-label-large-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-label-medium-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-label-small-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-title-large-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-title-medium-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-title-small-font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--bg: #f1f5f9;--surface: #ffffff;--text: #0f172a;--muted: #64748b;--border: #e2e8f0;--home: #1d4ed8;--away: #b91c1c;--goal: #15803d;--foul: #475569;--yellow: #eab308;--red: #dc2626;--accumulated: #f97316;--accumulated-bg: #ffedd5;--radius: 12px;color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--bg: #0b1120;--surface: #151e2e;--text: #e2e8f0;--muted: #94a3b8;--border: #263244;--home: #4f8ff7;--away: #ef4444;--goal: #16a34a;--foul: #64748b;--accumulated-bg: rgba(249, 115, 22, .18);--dk-surface: #151e2e;--dk-surface-2: #1c2738;--dk-surface-3: #263244;--dk-text: #e2e8f0;--dk-muted: #94a3b8;--dk-border: #263244;--dk-border-strong: #3b4a60;--dk-success-bg: rgba(34, 197, 94, .16);--dk-success-fg: #4ade80;--dk-danger-bg: rgba(239, 68, 68, .16);--dk-danger-fg: #f87171;--dk-warn-bg: rgba(245, 158, 11, .16);--dk-warn-fg: #fbbf24;--dk-info-bg: rgba(59, 130, 246, .18);--dk-info-fg: #7cb0ff;--dk-glass: rgba(21, 30, 46, .94);--dk-ink: #2b3a52}*{box-sizing:border-box}body{margin:0;font-family:Inter Variable,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent}h1,h2,h3{margin:0}h1{font-size:1.4rem}h3{font-size:1rem}.page{max-width:1100px;margin:0 auto;padding:12px 16px 48px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.page--center{min-height:80vh;place-content:center;justify-items:center;text-align:center}.page__header p{margin:4px 0 0}.muted,.hint{color:var(--muted)}.hint{font-size:.9rem;margin:4px 0}.card{display:block;min-width:0;background:var(--surface);border-radius:var(--radius);padding:12px;border:1px solid var(--border)}.card__toggle{background:none;border:0;font:inherit;font-weight:600;width:100%;text-align:left;padding:4px 0;cursor:pointer}.alert{margin:0;padding:10px 12px;border-radius:var(--radius)}.alert--error{background:var(--dk-danger-bg, #fee2e2);color:var(--dk-danger-fg, #7f1d1d)}.alert--warning{background:var(--dk-warn-bg, #fef3c7);color:#78350f}.alert--info{background:var(--dk-info-bg, #e0f2fe);color:#0c4a6e}.alert--success{background:var(--dk-success-bg, #dcfce7);color:#14532d}.badge{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--dk-ink, var(--text));color:#fff;font-size:.85rem}.btn{font:inherit;font-weight:600;border:0;border-radius:10px;padding:12px 14px;min-height:48px;cursor:pointer;color:#fff;background:var(--dk-ink, var(--text));touch-action:manipulation}.btn:disabled{opacity:.35;cursor:not-allowed}.btn--large{font-size:1.2rem;padding:16px 24px;min-height:60px}.btn--primary{background:var(--home)}.btn--start{background:var(--goal)}.btn--stop{background:var(--red)}.btn--goal{background:var(--goal)}.btn--foul{background:var(--foul)}.btn--yellow{background:var(--yellow);color:var(--text)}.btn--red{background:var(--red)}.btn--ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.btn--missed{background:var(--accumulated-bg);color:var(--dk-warn-fg, #9a3412);border:1px solid var(--accumulated)}.link{background:none;border:0;color:var(--home);font:inherit;cursor:pointer;padding:0 4px;font-weight:600;text-decoration:none}.link:hover{text-decoration:underline;text-underline-offset:3px}.back-btn{justify-self:start;align-self:start;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 14px 6px 10px;border-radius:999px;background:var(--dk-surface-3, #e8edf3);color:var(--text);font-weight:600;font-size:.9rem;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background .15s}.back-btn .material-icons{font-size:20px}.back-btn:hover{background:var(--dk-border-strong, #d5dde8)}.back-btn:active{transform:scale(.97)}.scoreboard{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}@media(min-width:760px){.scoreboard{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start}}.team,.live-team{background:var(--surface);border-radius:var(--radius);padding:12px;border-top:6px solid var(--home);display:grid;gap:8px;text-align:center}.team--away,.live-team--away{border-top-color:var(--away)}.team__name{font-size:1.2rem}.team__score{font-size:3.5rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.actions .btn--goal,.actions .btn--foul{font-size:1.2rem;min-height:64px}.fouls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;font-size:.9rem}.fouls__count{font-weight:700}.fouls--limit .fouls__count,.fouls--limit.fouls{color:var(--accumulated);font-weight:700}.fouls__warning{background:var(--accumulated);color:#fff;border-radius:6px;padding:2px 8px;font-weight:700}.fouls__chips{display:inline-flex;gap:3px}.chip{width:22px;height:22px;border-radius:50%;border:2px solid var(--border);font-size:.7rem;display:inline-grid;place-content:center;color:var(--muted)}.chip--on{background:var(--foul);border-color:var(--foul);color:#fff}.chip--accumulated{border-color:var(--accumulated)}.chip--on.chip--accumulated{background:var(--accumulated);border-color:var(--accumulated)}.clock{background:var(--dk-ink, var(--text));color:#fff;border-radius:var(--radius);padding:16px;text-align:center;display:grid;gap:8px}@media(min-width:760px){.clock{min-width:240px}}.clock__period{text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;opacity:.8}.clock__time{font-size:3.2rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.clock--running .clock__time{color:#4ade80}.clock__actions{display:grid;gap:8px}.clock .btn--ghost{color:#fff;border-color:#ffffff4d}.lineups{display:grid;gap:12px;margin-top:8px}@media(min-width:760px){.lineups{grid-template-columns:1fr 1fr}}.lineup__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.lineup__list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.lineup__player{display:flex;gap:10px;align-items:center;padding:8px;border-radius:8px;border:1px solid var(--border);min-height:44px}.lineup__player input{width:22px;height:22px}.lineup__player--present{background:var(--dk-success-bg, #f0fdf4);border-color:#bbf7d0}.lineup__number{font-weight:700;min-width:2ch;text-align:right}.lineup__stats{margin-left:auto;display:inline-flex;gap:6px}.card-icon{display:inline-block;min-width:16px;padding:0 3px;height:20px;border-radius:3px;font-size:.75rem;text-align:center}.card-icon--yellow{background:var(--yellow)}.card-icon--red{background:var(--red);color:#fff}.timeline h3{margin-bottom:8px}.timeline__list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.event{min-width:0;overflow-wrap:anywhere;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px;border-radius:8px;border-left:4px solid var(--border);background:var(--dk-surface-2, #f8fafc)}.event--home{border-left-color:var(--home)}.event--away{border-left-color:var(--away)}.event--clock{color:var(--muted);font-size:.9rem}.event--pending{opacity:.6}.event--accumulated{background:var(--accumulated-bg);border-left-color:var(--accumulated)}.event__time{font-variant-numeric:tabular-nums;color:var(--muted);min-width:7ch}.event__type{font-weight:700}.event__type--Goal,.event__type--OwnGoal{color:var(--goal)}.event__type--YellowCard{color:#a16207}.event__type--RedCard{color:var(--red)}.event__type--AccumulatedKickMissed{color:var(--dk-warn-fg, #9a3412)}.event--accumulated .event__type{color:var(--accumulated)}.event__team{font-weight:600;margin-right:4px}.event__badge{font-size:.75rem;background:var(--accumulated);color:#fff;padding:1px 6px;border-radius:6px}.event__badge--pending{background:transparent}.event__badge--kick{background:var(--goal)}.event__undo{margin-left:auto;border:0;background:none;font-size:1.1rem;color:var(--muted);cursor:pointer;min-width:40px;min-height:40px}.overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;z-index:10}.overlay--sheet{place-items:end center;padding:0}.bottom-sheet{width:min(600px,100%);background:var(--surface);border-radius:18px 18px 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));display:grid;gap:10px;box-shadow:0 -10px 30px #0f172a33;animation:sheet-up .2s ease-out;text-align:left}.bottom-sheet:before{content:"";justify-self:center;width:40px;height:4px;border-radius:2px;background:var(--border)}.bottom-sheet__title{font-size:1rem;color:var(--muted)}.bottom-sheet__items{display:grid;gap:8px}.bottom-sheet .menu__item{min-height:56px;font-size:1.05rem}@keyframes sheet-up{0%{transform:translateY(100%)}}.dialog{background:var(--surface);border-radius:var(--radius);padding:16px;width:min(560px,100%);max-height:90vh;overflow:auto;display:grid;gap:12px}.dialog__title{font-size:1.1rem}.picker__option{display:flex;gap:10px;align-items:center;padding:12px;min-height:52px;border-radius:10px;border:2px solid var(--border);font-weight:600;cursor:pointer}.picker__option input{width:24px;height:24px}.picker__option--on{border-color:var(--accumulated);background:var(--accumulated-bg)}.picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.picker__player{display:flex;gap:10px;align-items:center;text-align:left;font:inherit;padding:12px;min-height:56px;border-radius:10px;border:1px solid var(--border);background:var(--dk-surface-2, #f8fafc);cursor:pointer}.picker__number{font-size:1.4rem;font-weight:800;min-width:2ch}.submit{display:grid}.scoreboard--live{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch}.scoreboard--live .clock{min-width:0;align-content:center}@media(max-width:759px){.scoreboard--live{gap:6px}.scoreboard--live h2{font-size:.95rem}.scoreboard--live .team__score{font-size:2.6rem}.scoreboard--live .clock{padding:10px 8px}.scoreboard--live .clock__time{font-size:1.8rem}.scoreboard--live .clock__period{font-size:.7rem}.scoreboard--live .live-team{padding:10px 6px}}.actions .btn--more{grid-column:span 2;font-size:1.4rem;line-height:1;min-height:44px}.team{position:relative}.menu__item{font:inherit;font-weight:600;min-height:48px;border-radius:8px;border:1px solid var(--border);background:var(--dk-surface-2, #f8fafc);cursor:pointer}.menu__item:disabled{opacity:.35;cursor:not-allowed}.menu__item--yellow{background:var(--yellow);border-color:var(--yellow)}.menu__item--red{background:var(--red);border-color:var(--red);color:#fff}.menu__item--goal{color:var(--goal)}.menu__item--miss{background:var(--dk-danger-bg, #fee2e2);border-color:var(--dk-danger-bg, #fca5a5);color:var(--dk-danger-fg, #991b1b)}.picker__options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.event__type--PenaltyMissed,.event__type--AccumulatedKickMissed{color:var(--dk-danger-fg, #991b1b)}.btn--small{min-height:36px;padding:6px 12px;font-size:.9rem}.share{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.share__url{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.page__header--live{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.live-status{white-space:nowrap;font-size:.85rem;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--dk-surface-3, #e2e8f0);color:var(--muted)}.live-status--live{background:var(--dk-success-bg, #dcfce7);color:var(--dk-success-fg, #166534)}.live-status--live:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#16a34a;margin-right:6px;animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.3}}.scorer{font-size:.85rem;color:var(--muted)}.toasts{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:20;display:grid;gap:8px;width:min(420px,100vw - 24px)}.toast{display:grid;gap:2px;padding:12px 14px;border-radius:12px;color:#fff;box-shadow:0 10px 30px #0f172a40;cursor:pointer;animation:toast-in .25s ease-out}.toast__title{font-size:1.05rem}.toast__detail{font-size:.9rem;opacity:.95}.toast--goal{background:#16a34a}.toast--foul{background:#ea580c}.toast--miss{background:#dc2626}.toast--red{background:#b91c1c}.toast--yellow{background:var(--yellow);color:var(--text)}.toast--info{background:var(--dk-ink, var(--text))}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}.step{display:grid;gap:12px}.step__title{font-size:1.2rem}.field{display:grid;gap:6px}.field__label{font-weight:600}.field__input{font:inherit;font-size:1.1rem;padding:12px;min-height:52px;border-radius:10px;border:1px solid var(--border)}.field__input:focus{outline:2px solid var(--home);outline-offset:1px}.recorder{margin:0}.name-gate{display:grid;gap:12px;width:min(420px,100%);text-align:left}.viewer{display:flex;gap:4px;align-items:baseline;font-size:.9rem}.page__header--live{flex-wrap:wrap}.toast--comment{background:#1d4ed8}.comments h3{margin-bottom:8px}.comments__list{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px;max-height:360px;overflow-y:auto}.comment{background:var(--dk-surface-2, #f8fafc);border-radius:10px;padding:8px 10px;border:1px solid var(--border)}.comment--own{background:var(--dk-info-bg, #eff6ff);border-color:#bfdbfe}.comment__author{font-weight:700;margin-right:6px}.comment__time{color:var(--muted);font-size:.8rem}.comment__text{margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.comments__form{display:grid;gap:6px}.comments__input{resize:vertical;min-height:56px;font-size:1rem}.comments__actions{display:flex;justify-content:space-between;align-items:center}.comments__counter{font-size:.8rem}.comments__header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px}.comments__header h3{margin:0}.comments-hidden{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}html{--adm-bg: #f4f6fb;--adm-surface: #ffffff;--adm-surface-2: #f8f9fc;--adm-border: #e5e8f0;--adm-text: #0f172a;--adm-muted: #64748b;--adm-primary: #2563eb;--adm-primary-soft: #e8efff;--adm-radius: 16px;--adm-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 4px 16px rgba(15, 23, 42, .04);--adm-shadow-hover: 0 2px 4px rgba(15, 23, 42, .06), 0 10px 28px rgba(15, 23, 42, .08);--mat-sys-primary: #2563eb;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #e8efff;--mat-sys-on-primary-container: #1e3a8a;--mat-sys-secondary-container: #e8efff;--mat-sys-on-secondary-container: #1e3a8a;--mat-sys-surface: #ffffff;--mat-sys-surface-bright: #ffffff;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-container-low: #ffffff;--mat-sys-surface-container: #ffffff;--mat-sys-surface-container-high: #ffffff;--mat-sys-surface-container-highest: #f1f4f9;--mat-sys-surface-variant: #f1f4f9;--mat-sys-outline: #cbd2dd;--mat-sys-outline-variant: #e5e8f0;--mat-sys-on-surface-variant: #64748b;--mat-card-outlined-container-shape: var(--adm-radius);--mat-card-outlined-outline-color: var(--adm-border);--mat-dialog-container-shape: 24px;--mat-expansion-container-shape: 14px;--mat-form-field-outlined-container-shape: 12px;--mat-menu-container-shape: 12px;--mat-table-background-color: var(--adm-surface);--mat-tab-header-divider-color: var(--adm-border);--mat-tab-header-label-text-weight: 600;--mat-tab-header-active-label-text-color: var(--adm-primary);--mat-tab-header-active-ripple-color: var(--adm-primary);--mat-tab-header-active-focus-label-text-color: var(--adm-primary);--mat-tab-header-active-hover-label-text-color: var(--adm-primary);--mat-tab-header-active-focus-indicator-color: var(--adm-primary);--mat-tab-header-active-hover-indicator-color: var(--adm-primary);--mat-tab-header-active-indicator-color: var(--adm-primary);--mat-tab-header-active-indicator-height: 3px;--mat-tab-header-active-indicator-shape: 3px 3px 0 0}.admin-toolbar{position:sticky;top:0;z-index:5;gap:8px;height:calc(64px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);border-bottom:1px solid var(--adm-border);--mat-toolbar-container-background-color: rgba(255, 255, 255, .85);--mat-toolbar-container-text-color: var(--adm-text);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px)}.admin-brand{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.admin-brand__mark{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2563eb,#7c3aed);box-shadow:0 4px 12px #2563eb59}.admin-brand__mark .mat-icon{font-size:22px;width:22px;height:22px}.admin-brand__text{font-weight:800;font-size:1.1rem;letter-spacing:-.02em}.admin-brand__text span{color:var(--adm-muted);font-weight:600}.admin-user{--mat-button-text-label-text-color: var(--adm-text);padding-left:6px!important}.admin-user__avatar{width:32px;height:32px;border-radius:50%;display:inline-grid;place-items:center;margin-right:8px;background:var(--adm-primary-soft);color:var(--adm-primary);font-weight:700;font-size:.8rem}.admin-user__name{font-weight:600}@media(max-width:599px){.admin-user__name,.admin-brand__text span{display:none}}.user-menu__info{font-size:.85rem}.admin-container{height:calc(100vh - 64px);height:calc(100dvh - 64px - env(safe-area-inset-top));--mat-sidenav-content-background-color: var(--adm-bg);--mat-sidenav-container-background-color: var(--adm-surface);--mat-sidenav-container-width: 240px;--mat-sidenav-container-shape: 0;--mat-sidenav-container-divider-color: var(--adm-border)}.admin-nav{width:240px;border-right:1px solid var(--adm-border)!important}.admin-nav .mat-drawer-inner-container{display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding:16px 12px}.admin-nav__list{display:grid;gap:4px}.admin-nav__label{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--adm-muted);padding:4px 12px 8px}.admin-nav__item,.admin-nav__public{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;color:var(--dk-text, #334155);text-decoration:none;font-weight:600;font-size:.95rem;transition:background .15s,color .15s}.admin-nav__item:hover,.admin-nav__public:hover{background:var(--adm-surface-2);color:var(--adm-text)}.admin-nav__item .mat-icon,.admin-nav__public .mat-icon{color:var(--dk-muted, #94a3b8)}.admin-nav__item--active{background:var(--adm-primary-soft);color:var(--adm-primary)}.admin-nav__item--active .mat-icon{color:var(--adm-primary)}.admin-nav__public{font-weight:500;font-size:.9rem;border:1px dashed var(--adm-border)}.admin-nav__ext{margin-left:auto;font-size:16px;width:16px;height:16px}.admin-content{background:var(--adm-bg);min-height:100%}.admin-page{max-width:1160px;margin:0 auto;padding:28px 24px 64px;display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}@media(max-width:599px){.admin-page{padding:18px 14px 48px}}.admin-page__header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.admin-page__header h1{font-size:1.85rem;font-weight:800;letter-spacing:-.025em;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-page__header p{margin:6px 0 0}.admin-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.admin-meta__item{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:var(--adm-surface);border:1px solid var(--adm-border);color:#334155;font-size:.85rem;font-weight:500}.admin-meta__item .mat-icon{font-size:18px;width:18px;height:18px;color:var(--adm-muted)}.breadcrumbs{font-size:.85rem;color:var(--adm-muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}.breadcrumbs a{color:var(--adm-muted);text-decoration:none;font-weight:500}.breadcrumbs a:hover{color:var(--adm-primary)}.settings-heading{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--adm-muted);margin:8px 0 10px}.settings-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-width:640px}.settings-list__item{display:flex;align-items:center;gap:14px;padding:14px 16px;color:inherit;text-decoration:none}.settings-list__item>.mat-icon:first-child{color:var(--adm-primary)}.settings-list__item--empty{opacity:.6}.settings-list__text{display:grid;flex:1;min-width:0}.settings-list__chevron{color:var(--adm-muted)}.description{margin:0;color:var(--adm-muted);white-space:pre-wrap}.actions-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.section-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap}.section-header h2{font-size:1.15rem;font-weight:700;letter-spacing:-.01em}.section-header--small h3{font-size:1rem}.notice{margin:0;padding:12px 16px;border-radius:14px;background:#fff7e6;color:#7c4a03;border:1px solid var(--dk-warn-bg, #fde3b0);display:flex;gap:10px;align-items:center}.notice .mat-icon{color:var(--dk-warn-fg, #d97706)}.empty{color:var(--adm-muted);padding:16px 0}.search{width:min(420px,100%)}.toolbar-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:space-between}.oib-lookup{display:flex;gap:8px;align-items:center}.card-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.league-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);box-shadow:var(--adm-shadow);color:inherit;text-decoration:none;transition:box-shadow .2s,transform .2s,border-color .2s}.league-card:hover{box-shadow:var(--adm-shadow-hover);transform:translateY(-2px);border-color:var(--dk-info-bg, #c7d2fe)}.league-card__logo{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--dk-info-bg, #e0e7ff),var(--dk-info-bg, #f3e8ff));color:#4338ca;font-weight:800;font-size:1rem}.league-card__logo img{width:100%;height:100%;object-fit:contain;background:var(--dk-surface, #fff)}.league-card__body{display:grid;gap:4px;min-width:0}.league-card__name{font-weight:700;font-size:1.05rem;letter-spacing:-.01em}.league-card__place{color:var(--adm-muted);font-size:.85rem}.league-card__tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.league-card__arrow{color:var(--dk-muted, #94a3b8)}.league-card:hover .league-card__arrow{color:var(--adm-primary)}.pill{display:inline-flex;align-items:center;font-size:.75rem;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--dk-surface-2, #eef1f6);color:var(--dk-text, #334155)}.pill--on{background:var(--dk-success-bg, #dcfce7);color:var(--dk-success-fg, #166534)}.pill--warn{background:var(--dk-danger-bg, #fee2e2);color:var(--dk-danger-fg, #991b1b)}.status{font-size:.78rem;font-weight:700;padding:4px 12px;border-radius:999px;background:var(--dk-surface-2, #eef1f6);color:var(--dk-text, #334155);letter-spacing:0}.status--Draft{background:var(--dk-info-bg, #e0f2fe);color:var(--dk-info-fg, #075985)}.status--Active{background:var(--dk-success-bg, #dcfce7);color:var(--dk-success-fg, #166534)}.status--Finished{background:var(--dk-surface-2, #f1f5f9);color:var(--dk-muted, #475569)}.status--Archived{background:var(--dk-info-bg, #f3e8ff);color:#6b21a8}.admin-table{width:100%;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);overflow:hidden;box-shadow:var(--adm-shadow);border-collapse:separate}.admin-table th.mat-mdc-header-cell{background:var(--adm-surface-2);color:var(--adm-muted);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.admin-table tr.mat-mdc-row:last-child td{border-bottom:0}.admin-table a{color:var(--adm-primary);text-decoration:none;font-weight:600}.row--link{cursor:pointer}.row--link:hover{background:var(--adm-surface-2)}.table-scroll{overflow-x:auto}.season-players__filters{justify-content:flex-start;margin-bottom:12px}.season-players__filters .search{flex:1 1 260px}.season-players .mat-column-number{width:48px}.season-players .mat-column-age,.season-players .mat-column-appearances,.season-players .mat-column-goals{width:64px;text-align:center}.season-players .pill{margin-left:6px}.card-count{display:inline-block;min-width:18px;padding:0 4px;border-radius:3px;font-size:.75rem;font-weight:700;text-align:center;color:#1f2937}.card-count--yellow{background:#facc15}.card-count--red{background:#dc2626;color:#fff}.cell--actions{text-align:right;white-space:nowrap}.tab-body{padding:20px 0 8px;display:grid;gap:16px}.tab-actions{display:flex;justify-content:flex-end}.tab-actions--spread{justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.adm-history-table{width:100%;margin-bottom:8px}.adm-history-table th,.adm-history-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--adm-border, #e2e8f0)}.mat-expansion-panel{box-shadow:none!important;border:1px solid var(--adm-border)}.mat-accordion .mat-expansion-panel{margin-bottom:8px;border-radius:14px!important}.dialog-form{display:grid;gap:8px;min-width:min(480px,80vw)}.mat-mdc-dialog-content>.dialog-form,.mat-mdc-dialog-content.dialog-form{padding-top:8px!important}.dialog-form mat-form-field{width:100%}.dialog-section{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--adm-muted);margin:14px 0 6px}.form-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.form-row>mat-form-field{flex:1 1 140px;width:auto}app-date-field,app-time-field{display:block}.date-time-field{width:100%}.form-row>app-date-field,.form-row>app-time-field{flex:1 1 140px;min-width:0}.form-row>.grow{flex:2 1 220px}.form-error{margin:4px 0 0;padding:10px 12px;border-radius:12px;background:var(--dk-danger-bg, #fef2f2);color:var(--dk-danger-fg, #991b1b);border:1px solid var(--dk-danger-bg, #fecaca)}.button--danger{--mat-button-filled-container-color: #dc2626;--mat-button-filled-label-text-color: #fff}.snack--error{--mat-snack-bar-container-color: #7f1d1d}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(1200px 600px at 10% -10%,rgba(37,99,235,.18),transparent 60%),radial-gradient(900px 500px at 110% 110%,rgba(124,58,237,.16),transparent 60%),var(--adm-bg)}.auth-card{width:min(440px,100%);padding:12px 8px 4px;box-shadow:0 20px 60px #0f172a1f!important;border:0!important;border-radius:24px!important}.auth-card .mat-mdc-card-title{font-size:1.6rem;font-weight:800;letter-spacing:-.02em}.auth-card__brand{display:flex;justify-content:center;margin-bottom:8px}.auth-card__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:8px 16px 16px!important}.auth-card .dialog-form{min-width:0}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 16px;margin:0 0 12px}.facts dt{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--adm-muted)}.facts dd{margin:2px 0 0}.club-season{display:grid;gap:12px}.roster{list-style:none;margin:0;padding:0;display:grid;gap:6px}.roster__row{display:flex;align-items:center;gap:12px;padding:6px 10px;border-radius:12px;background:var(--adm-surface-2);border:1px solid var(--adm-border);min-height:46px;flex-wrap:wrap}.roster__row--inactive{opacity:.6}.roster__number{font-weight:800;min-width:2.5ch;text-align:right;color:var(--adm-primary)}.roster__name{flex:1;font-weight:500}.roster__name a{color:var(--adm-text)}.roster__actions{display:flex}.pick-list{max-height:260px;overflow-y:auto;border:1px solid var(--adm-border);border-radius:12px}.pick-list__empty{padding:12px}.found{margin:0}.adm-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);box-shadow:var(--adm-shadow)}.adm-toolbar__filter{width:260px;max-width:100%}.adm-toolbar,.search,.oib-lookup{--mat-form-field-container-height: 44px;--mat-form-field-container-vertical-padding: 10px;--mat-form-field-outlined-label-text-populated-size: .75rem}@media(max-width:599px){.adm-toolbar__filter{width:100%}.adm-toolbar>.actions-inline{width:100%}.adm-toolbar>.actions-inline>button:not([mat-icon-button]){flex:1 1 auto;white-space:nowrap}}.adm-round{display:grid;gap:8px}.adm-round__header{display:flex;align-items:baseline;justify-content:space-between;padding:6px 4px 0}.adm-round__header h3{font-size:1rem;font-weight:800;letter-spacing:-.01em}.adm-round__meta{font-size:.8rem;color:var(--adm-muted);font-weight:500}.adm-round__end{display:inline-flex;align-items:center;gap:8px}.adm-match-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.adm-match{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:16px;align-items:center;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);padding:12px;box-shadow:var(--adm-shadow);transition:box-shadow .2s,border-color .2s}.adm-match:hover{box-shadow:var(--adm-shadow-hover)}.adm-match--attention{border-color:var(--dk-warn-bg, #fdba74);background:linear-gradient(90deg,var(--dk-warn-bg, #fff7ed),var(--adm-surface) 40%)}.adm-match__date{display:grid;justify-items:center;align-content:center;gap:1px;padding:8px 4px;border-radius:12px;background:var(--adm-primary-soft);color:var(--adm-primary);text-align:center;min-height:72px}.adm-match__date--empty{background:var(--adm-surface-2);color:var(--adm-muted)}.adm-match__weekday{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.adm-match__day{font-size:1.05rem;font-weight:800;letter-spacing:-.02em;color:var(--adm-text)}.adm-match__time{font-size:.8rem;font-weight:600}.adm-match__body{display:grid;gap:8px;min-width:0}.adm-match__teams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px}.adm-match__team{display:flex;align-items:center;gap:10px;min-width:0;font-weight:700;font-size:1rem}.adm-match__team--home{justify-content:flex-end;text-align:right}.adm-match__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-avatar{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--dk-info-bg, #eef2ff);color:#3730a3;font-size:.75rem;font-weight:800;letter-spacing:.02em}.adm-avatar--away{background:var(--dk-danger-bg, #fdf2f8);color:#9d174d}.adm-match__score{min-width:64px;text-align:center;padding:6px 10px;border-radius:10px;font-variant-numeric:tabular-nums;background:var(--adm-surface-2);border:1px solid var(--adm-border);color:var(--adm-muted);font-weight:700;font-size:.85rem}.adm-match__score--final{background:var(--adm-text);border-color:var(--adm-text);color:#fff;font-size:1.1rem}.adm-match__meta{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;justify-content:center}.adm-match__venue{display:inline-flex;align-items:center;gap:4px;color:var(--adm-muted);font-size:.82rem;margin-right:4px}.adm-match__venue .mat-icon{font-size:16px;width:16px;height:16px}.adm-match__actions{display:flex;align-items:center;gap:4px}.adm-chip{font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--dk-surface-2, #eef1f6);color:var(--dk-text, #334155);white-space:nowrap}.adm-chip--Played,.adm-chip--Forfeited{background:var(--dk-success-bg, #dcfce7);color:var(--dk-success-fg, #166534)}.adm-chip--Postponed{background:var(--dk-warn-bg, #fef3c7);color:var(--dk-warn-fg, #92400e)}.adm-chip--Cancelled{background:var(--dk-danger-bg, #fee2e2);color:var(--dk-danger-fg, #991b1b)}.adm-chip--sheet-Open{background:var(--dk-info-bg, #e0f2fe);color:var(--dk-info-fg, #075985)}.adm-chip--sheet-Submitted{background:#f97316;color:#fff}.adm-chip--sheet-Confirmed{background:var(--dk-success-bg, #dcfce7);color:var(--dk-success-fg, #166534)}@media(max-width:719px){.adm-match{grid-template-columns:64px minmax(0,1fr) auto;gap:10px;padding:10px}.adm-match__teams{grid-template-columns:minmax(0,1fr);gap:6px}.adm-match__team--home{justify-content:flex-end;text-align:left;flex-direction:row-reverse}.adm-match__score{justify-self:start;min-width:0}.adm-match__meta{justify-content:flex-start}}.adm-empty{display:grid;justify-items:center;gap:6px;text-align:center;padding:48px 16px;background:var(--adm-surface);border:1px dashed var(--dk-surface-3, #cbd5e1);border-radius:var(--adm-radius);color:var(--adm-muted)}.adm-empty>.mat-icon{font-size:40px;width:40px;height:40px;color:var(--dk-muted, #94a3b8)}.adm-empty h3{color:var(--adm-text);font-size:1.1rem}.adm-empty p{margin:0 0 8px}.admin-sport{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;cursor:pointer;border:1px solid var(--adm-border);border-radius:12px;background:var(--adm-surface-2);color:var(--adm-text);font:inherit;text-align:left;flex:none}.admin-sport:hover{border-color:var(--adm-primary)}.admin-sport>.mat-icon:first-child{color:var(--adm-primary)}.admin-sport__text{display:grid;flex:1;font-weight:700}.admin-sport__text small{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--adm-muted)}.admin-sport__chevron{color:var(--adm-muted)}.admin-sport-menu__active{color:var(--adm-primary)!important;font-weight:700}.admin-sport-menu__check{margin:0 0 0 auto!important;color:var(--adm-primary)!important}.admin-tabs--four{grid-template-columns:repeat(4,1fr)}.admin-container--tabs{height:calc(100dvh - 124px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.admin-tabs{position:fixed;left:0;right:0;bottom:0;z-index:6;display:grid;grid-template-columns:repeat(5,1fr);height:calc(60px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#ffffffeb;-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-top:1px solid var(--adm-border)}.admin-tabs__item{position:relative;display:grid;justify-items:center;align-content:center;gap:2px;min-width:0;border:0;background:none;font:inherit;font-size:.7rem;font-weight:600;color:var(--adm-muted);text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.admin-tabs__item .mat-icon{font-size:24px;width:24px;height:24px}.admin-tabs__item--active{color:var(--adm-primary)}.admin-tabs__badge{position:absolute;top:6px;left:calc(50% + 6px);min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ea580c;color:#fff;font-size:.68rem;font-weight:800;line-height:18px;text-align:center}.widget-builder{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.widget-builder__form{display:grid;gap:14px}.widget-builder__kinds{flex-wrap:wrap}.widget-builder__kinds .mat-icon{font-size:18px;width:18px;height:18px;vertical-align:-3px}.widget-builder__color{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--adm-muted)}.widget-builder__color input{width:48px;height:36px;padding:0;border:1px solid var(--adm-border);border-radius:8px;background:none;cursor:pointer}.widget-builder h3{margin:6px 0 0;font-size:1rem}.widget-builder__code{margin:0;padding:12px;border-radius:12px;background:#0f172a;color:#e2e8f0;font-size:.8rem;white-space:pre-wrap;word-break:break-all}.widget-builder__preview{display:grid;gap:6px;position:sticky;top:12px}.widget-builder__preview iframe{width:100%;border:1px solid var(--adm-border);border-radius:12px;background:#fff}@media(max-width:899px){.widget-builder{grid-template-columns:minmax(0,1fr)}.widget-builder__preview{position:static}}.today-tip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 14px 14px 16px;background:var(--adm-primary-soft);border:1px solid var(--adm-border);border-radius:var(--adm-radius)}.today-tip>.mat-icon{color:var(--adm-primary)}.today-tip__text{display:grid;gap:2px;font-size:.9rem}.today-tip__actions{display:flex;align-items:center;gap:4px}.today-match{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 10px 10px 12px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);box-shadow:var(--adm-shadow)}.today-match--attention{grid-template-columns:minmax(0,1fr) auto;border-color:var(--dk-warn-bg, #fdba74);background:linear-gradient(90deg,var(--dk-warn-bg, #fff7ed),var(--adm-surface) 50%)}.today-match--live{border-color:#86efac}.today-match__time{display:grid;justify-items:center;gap:1px;padding:6px 2px;border-radius:10px;background:var(--adm-primary-soft);color:var(--adm-primary);font-weight:800;font-size:.95rem}.today-match__time small{font-size:.7rem;font-weight:600}.today-match__main{display:grid;gap:4px;min-width:0}.today-match__context{font-size:.75rem;color:var(--adm-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-match__teams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center;font-weight:700}.today-match__team{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-match__team:first-child{text-align:right}.today-match__score{min-width:52px;text-align:center;padding:3px 8px;border-radius:8px;background:var(--adm-surface-2);color:var(--adm-muted);font-variant-numeric:tabular-nums}.today-match__score--final{background:var(--adm-text);color:#fff}.today-match__score--live{background:#16a34a;color:#fff}.today-match__meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:.8rem;color:var(--adm-muted)}.today-match__meta .mat-icon{font-size:16px;width:16px;height:16px}.today-match__actions{display:flex;align-items:center;gap:2px}@media(max-width:599px){.today-match{grid-template-columns:48px minmax(0,1fr) auto;gap:8px;padding:10px 6px 10px 10px}.today-match__teams{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"home score" "away score";gap:2px 8px}.today-match__team:first-child{grid-area:home;text-align:left}.today-match__team:last-child{grid-area:away}.today-match__score{grid-area:score}.today-match__actions .mat-mdc-unelevated-button,.today-match__actions .mat-mdc-outlined-button{padding:0 10px;min-width:0}.today-tip{grid-template-columns:auto minmax(0,1fr)}.today-tip__actions{grid-column:1/-1;justify-content:flex-end}}.score-row{align-items:baseline}.score-row__sep{font-size:1.5rem;font-weight:800}.schedule-dialog{min-width:0}.schedule-preview{max-height:320px;overflow-y:auto;border:1px solid var(--adm-border);border-radius:12px;padding:10px 14px;background:var(--adm-surface-2)}.schedule-preview__round ul{margin:4px 0 10px;padding-left:18px}.standings td,.standings th{text-align:center}.standings td:nth-child(2),.standings th:nth-child(2){text-align:left}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.portal,.news-page,.live-page,.settings-page{overflow-x:clip}.name-gate--inline{width:auto}.portal-header{background:#0f172a;color:#fff}.portal-header__inner{max-width:1100px;margin:0 auto;padding:14px 16px 6px;display:flex;align-items:center;gap:12px}.portal-header__home{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#ffffff1a;color:#fff;text-decoration:none}.portal-header__home:hover{background:#ffffff2e}.portal-header__home:active{transform:scale(.94)}.portal-header__home .material-icons{font-size:22px}.portal-header__logo{width:40px;height:40px;object-fit:contain;border-radius:8px;background:var(--dk-surface, #fff)}.portal-header__actions{order:10;display:flex}.portal-header__icon{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:none;color:#fff;cursor:pointer;text-decoration:none}.portal-header__icon:hover{background:#ffffff1a}.portal-header__logo--initials{display:grid;place-items:center;color:#1e3a8a;font-weight:800}.portal-header__title{flex:1;min-width:0}.portal-header__title p{margin:2px 0 0;color:var(--dk-muted, #94a3b8);font-size:.9rem}.portal-season select,.portal-field select{font:inherit;padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);max-width:100%}.portal-tabs{max-width:1100px;margin:0 auto;padding:0 8px;display:flex;overflow-x:auto;scrollbar-width:none}.portal-tabs__tab{color:#cbd5e1;text-decoration:none;padding:10px 12px;white-space:nowrap;border-bottom:3px solid transparent;font-size:.95rem}.portal-tabs__short{display:none}.portal-tabs__tab--active{color:#fff;border-bottom-color:#38bdf8;font-weight:600}.portal{padding-top:16px}.portal-description{margin:0;color:var(--muted)}.portal-overview{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}@media(min-width:900px){.portal-overview{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start}}.portal-overview__main,.portal-overview__side{display:grid;gap:12px;min-width:0}.portal-section{display:grid;gap:6px}.portal-section__title{font-size:1.05rem;display:flex;align-items:center;gap:8px;margin-bottom:4px}.portal-section__more{justify-self:start;margin-top:4px;font-size:.9rem}.portal-round{margin:12px 0 2px;color:var(--muted);font-size:.9rem}.portal-filters{display:flex;flex-wrap:wrap;gap:12px}.portal-field{display:grid;gap:4px;font-size:.85rem;color:var(--muted)}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#dc2626;animation:pulse 1.5s infinite;vertical-align:middle;margin-left:2px}.live-clock{color:var(--dk-danger-fg, #dc2626);font-weight:600;font-variant-numeric:tabular-nums}.match-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto auto;align-items:center;column-gap:12px;padding:9px 8px;color:inherit;text-decoration:none}.match-row--plain+.match-row--plain,app-match-row+app-match-row .match-row{border-top:1px solid var(--border)}.match-row:hover{background:var(--dk-surface-2, #f8fafc)}.match-row:active{background:var(--dk-surface-3, #eef2f7)}.match-row__when{display:grid;justify-items:center;gap:2px;font-size:.75rem;line-height:1.2;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums}.match-row__when .live-clock{display:inline-flex;align-items:center;gap:4px;font-size:.8rem}.live-period{color:var(--dk-danger-fg, #dc2626);font-size:.7rem}.match-row__teams{display:grid;gap:5px;min-width:0}.match-row__team{display:flex;align-items:center;gap:8px;min-width:0;font-weight:500}.match-row__team--winner{font-weight:700}.match-row__team--loser{color:var(--muted)}.match-row__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-row__crest{width:20px;height:20px;flex:none;object-fit:contain}.match-row__crest--initials{display:grid;place-items:center;border-radius:50%;background:var(--dk-info-bg, #e0e7ff);color:var(--dk-info-fg, #3730a3);font-size:.55rem;font-weight:800;letter-spacing:-.02em}.match-row__note{font-size:.75rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-row__score,.match-row__pens{display:grid;gap:5px;justify-items:end;font-variant-numeric:tabular-nums}.match-row__score{min-width:18px;font-weight:600;color:var(--muted)}.match-row__score>span{line-height:20px}.match-row__goal--winner{color:var(--text);font-weight:800}.match-row--live .match-row__score{color:var(--dk-danger-fg, #dc2626);font-weight:800}.match-row__when .side-match__pending{margin:0;white-space:nowrap}.match-row__pens{font-size:.72rem;color:var(--muted)}.match-row__pens>span{line-height:20px}.match-row__details{grid-column:2/-1;display:grid;gap:3px;margin-top:4px;font-size:.75rem;line-height:1.35;color:var(--muted)}.match-row__scorers,.match-row__awards{display:flex;align-items:baseline;gap:5px;min-width:0}.match-row__icon{flex:none;font-size:13px;position:relative;top:2px}.match-row__awards .match-row__icon{color:var(--dk-warning, #d97706)}.match-row__side{flex:none;min-width:22px;font-weight:600;color:var(--dk-text, #334155)}.match-row__minutes{font-variant-numeric:tabular-nums}.match-row__awards strong{color:var(--dk-text, #334155)}.match-row--live{box-shadow:inset 3px 0 #dc2626}.portal-scroll{overflow-x:auto}.portal-table{width:100%;border-collapse:collapse;font-size:.92rem;font-variant-numeric:tabular-nums}.portal-table th,.portal-table td{padding:7px 6px;text-align:center;border-bottom:1px solid var(--border);white-space:nowrap}.portal-table th{color:var(--muted);font-weight:600;font-size:.8rem}.portal-table .portal-table__name{text-align:left;white-space:normal;min-width:120px}.portal-table--compact .portal-table__name{min-width:0}.portal-table__form{text-align:left}.portal-table__row--inactive{color:var(--muted)}.form-dot{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:2px;border-radius:4px;color:#fff;font-size:.7rem;font-weight:700}.form-dot--W{background:#16a34a}.form-dot--D{background:#94a3b8}.form-dot--L{background:#dc2626}.portal-scorer{display:flex;gap:8px;align-items:center;padding:6px 0;border-top:1px solid var(--border)}.portal-scorer__rank{width:24px;color:var(--muted)}.portal-scorer__name{flex:1;display:grid;min-width:0}.portal-scorer__name .muted{font-size:.8rem}.portal-clubs{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))}.portal-club-card{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none}.portal-club-card:hover{border-color:var(--dk-border-strong, #94a3b8)}.portal-club-card>span{display:grid;gap:2px;min-width:0}.portal-club__head{display:flex;gap:12px;align-items:center}.portal-club__head p{margin:4px 0 0}.portal-club__logo{width:48px;height:48px;object-fit:contain;flex:none}.portal-player__photo{width:72px;height:72px;object-fit:cover;border-radius:50%;flex:none}.portal-facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 12px;margin:8px 0 0;font-size:.92rem}.portal-facts dt{color:var(--muted)}.portal-facts dd{margin:0}.portal-home{max-width:900px}.portal-table a.link,.portal-scorer a.link{text-decoration:none;color:inherit;font-weight:500}.portal-table a.link:hover,.portal-scorer a.link:hover{text-decoration:underline}.player-season{width:min(640px,100%);text-align:left;align-content:start}.player-season__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.player-season__header p{margin:2px 0 0}.icon-btn{background:none;border:0;font-size:1.1rem;cursor:pointer;width:36px;height:36px;border-radius:50%;color:var(--muted)}.icon-btn:hover{background:var(--bg)}.cup-holder{margin-left:6px;padding:0;border:0;background:none;font-size:.95em;line-height:1;cursor:pointer;vertical-align:baseline}.match-row__cup{justify-self:start;padding:1px 8px;border-radius:999px;font-size:.7rem;font-weight:700;color:#92400e;background:#fef3c7}:root[data-theme=dark] .match-row__cup{color:#fcd34d;background:#f59e0b29}.live-cup{display:inline-block;margin:4px 0 0;padding:2px 10px;border-radius:999px;font-size:.8rem;font-weight:700;color:#92400e;background:#fef3c7}:root[data-theme=dark] .live-cup{color:#fcd34d;background:#f59e0b29}.league-cup{border-top:3px solid #f59e0b}.league-cup__holder{margin:0 0 6px;font-size:1rem}.league-cup__rules{margin:0 0 10px;font-size:.8rem}.league-cup__next{margin:0 0 10px;font-size:.9rem}.league-cup__history{margin:0;padding:0;list-style:none}.league-cup__history li+li{border-top:1px solid var(--border)}.league-cup__game{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 0;color:inherit;text-decoration:none;font-size:.85rem}.league-cup__outcome{font-size:.72rem;font-weight:700;white-space:nowrap}.league-cup__outcome--Won{color:#b45309}.league-cup__outcome--Defended{color:var(--muted)}.h2h-pickers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.h2h-picker{display:grid;gap:8px;padding:10px;border-radius:10px;border-top:3px solid var(--h2h-color);background:var(--dk-surface-2, #f8fafc)}.h2h-picker--a,.h2h__player--a,.h2h-score__side--a,.h2h__bar-a{--h2h-color: #2563eb}.h2h-picker--b,.h2h__player--b,.h2h-score__side--b,.h2h__bar-b{--h2h-color: #ea580c}.h2h-picker__label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--h2h-color)}.h2h-picker select{width:100%}.h2h__head{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:8px}.h2h__player{display:grid;gap:2px;padding-left:8px;border-left:3px solid var(--h2h-color);color:inherit;text-decoration:none;font-size:.85rem}.h2h__player--b{text-align:right;padding:0 8px 0 0;border-left:0;border-right:3px solid var(--h2h-color)}.h2h__player strong{font-size:1rem}.h2h__row{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;row-gap:4px;padding:8px 0;border-top:1px solid var(--border)}.h2h__label{text-align:center;font-size:.8rem;color:var(--muted)}.h2h__value{font-weight:600;font-variant-numeric:tabular-nums}.h2h__value:nth-of-type(3){text-align:right}.h2h__value--better{font-weight:800}.h2h__bar{grid-column:1/-1;display:flex;gap:4px;height:6px}.h2h__bar>span{min-width:4px;border-radius:3px;background:var(--h2h-color);opacity:.3}.h2h__bar>.h2h__bar--better{opacity:1}.h2h-score__totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.h2h-score__side{display:grid;justify-items:center;gap:2px;padding:14px 8px;border-radius:12px;border:2px solid transparent;background:var(--dk-surface-2, #f8fafc);text-align:center}.h2h-score__side--winner{border-color:var(--h2h-color)}.h2h-score__name{font-weight:700;color:var(--h2h-color)}.h2h-score__index{font-size:2.2rem;line-height:1.1;font-variant-numeric:tabular-nums}.h2h-score__side .muted{font-size:.75rem}.h2h-score__verdict{margin:12px 0 4px;text-align:center;font-weight:700}.h2h-score__how summary{cursor:pointer;color:var(--muted);font-size:.85rem;text-align:center;padding:6px 0}.h2h-score__sum td{font-weight:800}.player-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border-radius:10px;overflow:hidden;gap:1px;background:var(--border)}.player-stats-grid__tile{padding:12px 14px;background:var(--dk-surface, #fff)}.player-stats-grid dt{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.player-stats-grid dd{display:flex;align-items:center;gap:6px;margin:4px 0 0;font-size:1.6rem;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.player-stats-grid .award-badge{min-width:0;width:22px;height:22px;padding:0;font-size:.75rem}@media(max-width:720px){.player-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.player-season__totals{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:10px 12px;border-radius:10px;background:var(--bg)}.player-season__totals>span{display:inline-flex;align-items:center;gap:4px}.player-season__list{list-style:none;margin:0;padding:0}.player-season__list li+li{border-top:1px solid var(--border)}.player-match{display:grid;grid-template-columns:90px minmax(0,1fr);grid-template-areas:"when teams" "when events";gap:4px 12px;padding:8px 4px;color:inherit;text-decoration:none;border-radius:8px}.player-match:hover{background:var(--dk-surface-2, #f8fafc)}.player-match--absent{color:var(--dk-muted, #94a3b8)}.player-match--absent .player-match__score{background:var(--dk-surface-2, #f1f5f9);color:var(--dk-muted, #94a3b8)}.player-match__when{grid-area:when;display:grid;align-content:center;font-size:.8rem}.player-match__teams{grid-area:teams;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.player-match__own{font-weight:700}.player-match__score{font-weight:700;font-variant-numeric:tabular-nums;padding:1px 8px;border-radius:6px;background:var(--dk-surface-2, #f1f5f9)}.player-match__score--W{background:var(--dk-success-bg, #dcfce7);color:var(--dk-success-fg, #166534)}.player-match__score--L{background:var(--dk-danger-bg, #fee2e2);color:var(--dk-danger-fg, #991b1b)}.player-match__events{grid-area:events;display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:22px;font-size:.85rem}.player-season .card-icon{min-width:13px;width:13px;height:18px;padding:0;vertical-align:middle}.event-icon small{font-size:.65rem;margin-left:1px}.miss-icon{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:2px solid var(--red);color:var(--red);font-size:.65rem;font-weight:800;text-decoration:line-through;text-decoration-thickness:2px;vertical-align:middle}.player-season__legend{line-height:1.8}@media(max-width:520px){.player-match{grid-template-columns:minmax(0,1fr);grid-template-areas:"when" "teams" "events"}.player-match__when{display:flex;gap:8px}}.fouls-panel{display:grid;gap:4px}.fouls--past{opacity:.55}.fouls-panel__title{font-size:.8rem;font-weight:600;color:var(--muted);text-align:center;margin:4px 0 0}.fouls-panel .fouls__label{color:var(--muted)}.fouls--compact{gap:4px 10px}.fouls__half{white-space:nowrap}.fouls__half--limit strong{color:var(--accumulated)}.event__note{color:var(--muted);font-size:.9em}.event__wall{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--muted);font-size:.8rem}.event__badge--pause{background:var(--dk-surface-3, #e2e8f0);color:var(--text)}.event__wall+.event__undo{margin-left:0}.clock__time--button{font:inherit;font-size:3.2rem;font-weight:800;font-variant-numeric:tabular-nums;color:inherit;background:none;border:0;border-radius:12px;padding:0 8px;cursor:pointer;text-decoration:underline dotted rgba(255,255,255,.35);text-underline-offset:8px}.clock__time--button:hover,.clock__time--button:focus-visible{background:#ffffff14}.clock--running .clock__time--button{color:#4ade80}.menu__item{display:grid;justify-items:center;align-content:center;gap:2px}.menu__hint{font-weight:400;font-size:.8rem;color:var(--muted)}.clock-set{display:flex;align-items:flex-end;justify-content:center;gap:8px}.clock-set__input{width:96px;font-size:1.8rem;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}.clock-set__sep{font-size:2rem;font-weight:800;padding-bottom:8px}.adm-section{display:grid;gap:10px;margin-top:8px}.adm-section .section-header p{margin:4px 0 0;font-size:.9rem}.adm-adjustments{list-style:none;margin:0;padding:0;display:grid;gap:8px}.adm-adjustment{display:flex;align-items:center;gap:14px;padding:10px 8px 10px 12px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:14px;box-shadow:var(--adm-shadow)}.adm-adjustment__points{flex:none;min-width:52px;text-align:center;padding:6px 10px;border-radius:10px;background:var(--dk-success-bg, #dcfce7);color:#166534;font-weight:800;font-variant-numeric:tabular-nums}.adm-adjustment__points--minus{background:var(--dk-danger-bg, #fee2e2);color:var(--dk-danger-fg, #991b1b)}.adm-adjustment__body{flex:1;display:grid;gap:2px;min-width:0}.adm-adjustment__body .muted{font-size:.85rem;overflow-wrap:anywhere}.adm-toolbar__search{flex:1 1 260px;max-width:420px}.adm-toolbar--start{justify-content:flex-start}.club-cell{display:flex;align-items:center;gap:12px;padding:6px 0}.club-cell .adm-avatar{overflow:hidden}.club-cell .adm-avatar img{width:100%;height:100%;object-fit:contain;background:var(--dk-surface, #fff)}.club-cell__text{display:grid;gap:2px;min-width:0}.club-cell__text .muted{font-size:.82rem}.clubs-table td.mat-mdc-cell{padding-top:6px;padding-bottom:6px}@media(max-width:719px){.clubs-table .mat-column-contact,.clubs-table .mat-column-seasons{display:none}.clubs-table .mat-mdc-cell,.clubs-table .mat-mdc-header-cell{padding-left:10px;padding-right:6px}}.menu-caption{font-size:.8rem}.admin-nav__groups{flex:1;display:grid;gap:18px;align-content:start;min-height:0;overflow-y:auto}.admin-nav__item--season{padding-top:8px;padding-bottom:8px}.admin-nav__dot{flex:none;width:8px;height:8px;margin:0 8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #dcfce7}.admin-nav__season{display:grid;min-width:0;line-height:1.25}.admin-nav__season>span,.admin-nav__season small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-nav__season small{font-size:.75rem;font-weight:500;color:var(--adm-muted)}.admin-nav__item--active .admin-nav__season small{color:var(--adm-primary);opacity:.8}.portal-section__intro{margin:-4px 0 6px;font-size:.85rem}.portal-table__row--top td:first-child{font-weight:800;color:#b45309}.portal-table .col-narrow{display:none}@media(max-width:599px){:is(.portal-table--history,.portal-table--compact) .col-wide{display:none}:is(.portal-table--history,.portal-table--compact) .col-narrow{display:block;font-size:.78rem}}.admin-nav__count{color:var(--adm-muted);font-weight:600}.admin-nav__count--alert{color:var(--dk-warn-fg, #ea580c);font-weight:800}.sheet-context{font-size:.78rem;font-weight:600;color:var(--adm-muted);text-decoration:none;justify-self:center}.sheet-context:hover{color:var(--adm-primary)}@media(max-width:719px){.sheet-context{justify-self:start}}.portal-filters--table{align-items:flex-end}.portal-table .portal-table__move{width:28px;padding-left:0;padding-right:0}.move{font-size:.7rem;font-weight:700;white-space:nowrap}.move--up{color:var(--dk-success-fg, #15803d)}.move--down{color:var(--dk-danger-fg, #b91c1c)}.portal-table__row--highlight td{background:var(--dk-info-bg, #eff6ff)}.portal-chart-header{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.pos-chart{margin:0}.pos-chart__plot{position:relative}.pos-chart svg{display:block;width:100%;height:auto;touch-action:pan-y;font-family:inherit}.pos-chart__grid{stroke:#eef1f6;stroke-width:1}.pos-chart__axis{fill:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.pos-chart__axis--caption{font-size:11px}.pos-chart__crosshair{stroke:var(--dk-muted, #94a3b8);stroke-width:1;stroke-dasharray:3 3}.pos-chart__line{fill:none;stroke:#cbd5e1;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.pos-chart__line--active{stroke:var(--dk-info-fg, #2a78d6);stroke-width:3}.pos-chart__hit{fill:none;stroke:transparent;stroke-width:14;cursor:pointer}.pos-chart__dot{fill:var(--dk-info-fg, #2a78d6);stroke:var(--surface);stroke-width:2}.pos-chart__label{fill:var(--muted);font-size:12.5px;cursor:pointer}.pos-chart__label--active{fill:var(--text);font-weight:700;cursor:default}.pos-chart__tooltip{position:absolute;top:0;transform:translate(12px);display:grid;gap:3px;min-width:190px;padding:8px 10px;border-radius:10px;background:var(--surface);border:1px solid var(--border);box-shadow:0 8px 24px #0f172a1f;font-size:.8rem;pointer-events:none;z-index:2}.pos-chart__tooltip--flip{transform:translate(calc(-100% - 12px))}.pos-chart__row{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:6px;align-items:center;color:var(--muted)}.pos-chart__row--active{color:var(--text);font-weight:700}.pos-chart__key{width:12px;height:2px;background:var(--dk-surface-3, #cbd5e1);border-radius:1px}.pos-chart__key--active{height:3px;background:#2a78d6}.pos-chart__pts{font-variant-numeric:tabular-nums}app-position-chart{display:block;min-width:0}a.form-dot{text-decoration:none;cursor:pointer}a.form-dot:hover,a.form-dot:focus-visible{outline:2px solid var(--text);outline-offset:1px}.form-tip{position:fixed;z-index:20;transform:translateY(-100%) translate(-100%);margin-left:4px;display:grid;gap:3px;min-width:200px;max-width:min(320px,100vw - 24px);padding:8px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--border);box-shadow:0 8px 24px #0f172a24;font-size:.82rem;pointer-events:none;text-align:left}.form-tip--below{transform:translate(-100%)}.form-tip__result{font-weight:800;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.form-tip__result--W{color:var(--dk-success-fg, #15803d)}.form-tip__result--D{color:var(--dk-muted, #64748b)}.form-tip__result--L{color:var(--dk-danger-fg, #b91c1c)}.form-tip__score{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.form-tip__own{font-weight:700}.adm-news-tabs{margin-bottom:4px}.adm-news-tabs__count{margin-left:8px;min-width:22px;padding:1px 7px;border-radius:999px;font-size:.72rem;font-weight:700;background:var(--dk-surface-2, #eef1f6);color:var(--dk-text, #334155);text-align:center}.adm-news-tabs__count--attention{background:#f97316;color:#fff}.adm-news-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.adm-news{position:relative;display:flex;align-items:center;gap:18px;padding:16px 18px 16px 20px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);box-shadow:var(--adm-shadow);transition:box-shadow .2s,border-color .2s}.adm-news:hover{box-shadow:var(--adm-shadow-hover);border-color:var(--dk-info-bg, #c7d2fe)}.adm-news--draft:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:0 4px 4px 0;background:#f97316}.adm-news__main{flex:1;display:grid;gap:6px;min-width:0}.adm-news__meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.adm-news__title{font-size:1.08rem;font-weight:700;line-height:1.3;color:inherit;text-decoration:none;letter-spacing:-.01em}.adm-news__title:hover{color:var(--adm-primary, #1d4ed8);text-decoration:underline;text-underline-offset:3px}.adm-news__summary{margin:0;color:var(--adm-muted);font-size:.9rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.adm-news__info{display:flex;flex-wrap:wrap;gap:4px 16px;color:var(--adm-muted);font-size:.8rem}.adm-news__info>span{display:inline-flex;align-items:center;gap:4px}.adm-news__info .mat-icon{font-size:16px;width:16px;height:16px}.adm-news__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.adm-chip--pin,.adm-chip--warn{display:inline-flex;align-items:center;gap:3px}.adm-chip--pin{background:var(--dk-warn-bg, #fef3c7);color:var(--dk-warn-fg, #92400e)}.adm-chip--warn{background:var(--dk-danger-bg, #fee2e2);color:var(--dk-danger-fg, #991b1b)}.adm-chip--pin .mat-icon,.adm-chip--warn .mat-icon{font-size:14px;width:14px;height:14px}@media(max-width:719px){.adm-news{flex-direction:column;align-items:stretch;gap:12px;padding:14px 14px 14px 18px}.adm-news__actions{justify-content:flex-start}}.adm-chip--news-draft{background:var(--dk-surface-2, #eef1f6);color:var(--dk-text, #334155)}.adm-chip--news-scheduled{background:var(--dk-warn-bg, #fef3c7);color:var(--dk-warn-fg, #92400e)}.adm-chip--news-published{background:var(--dk-success-bg, #dcfce7);color:var(--dk-success-fg, #166534)}.adm-chip--ai{background:#ede9fe;color:#5b21b6;display:inline-flex;align-items:center;gap:3px}.adm-chip--ai .mat-icon{font-size:14px;width:14px;height:14px}.adm-news__stale{font-size:18px;width:18px;height:18px;color:var(--dk-warn-fg, #d97706)}.adm-json{margin:0;padding:12px;max-height:60vh;overflow:auto;font-size:.78rem;line-height:1.45;background:var(--dk-surface-2, #f4f6fa);border-radius:10px;white-space:pre}.adm-ai-panel{display:grid;gap:8px}.adm-ai-panel p{margin:0;font-size:.88rem;color:var(--adm-muted)}.adm-ai-panel .mat-mdc-button-base{justify-self:start}.adm-failed-jobs{display:grid;gap:6px;margin:0;padding:12px 16px;border-radius:14px;background:#fef2f2;border:1px solid #fecaca;color:#7f1d1d}.adm-failed-jobs h3{font-size:.95rem;display:flex;align-items:center;gap:8px}.adm-failed-jobs ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.adm-failed-jobs li{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.adm-failed-jobs__error{flex:1;min-width:200px;font-size:.82rem;color:#991b1b}.news-form{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}@media(max-width:899px){.news-form{grid-template-columns:minmax(0,1fr)}}.news-form__main{display:grid;gap:8px;min-width:0}.news-form__main>mat-form-field{width:100%}.news-form__side{display:grid;gap:12px}.news-form__radios{display:grid;gap:2px;margin-bottom:6px}.news-form__side mat-form-field{width:100%}.news-form__delete{justify-self:start;--mat-button-text-label-text-color: #b91c1c}.adm-panel{display:grid;gap:8px;padding:14px 16px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);box-shadow:var(--adm-shadow)}.adm-panel h3{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--adm-muted)}.adm-comment{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:12px}.adm-comment__body{flex:1;min-width:0;font-size:.92rem}.adm-comment__body p{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.news-editor{border:1px solid var(--adm-border, var(--dk-border, #e5e8f0));border-radius:12px;background:#fff;overflow:hidden;--ngx-editor-border-radius: 0;--ngx-editor-border-color: transparent;--ngx-editor-menubar-bg-color: #f8f9fc;--ngx-editor-menu-item-active-color: #2563eb;--ngx-editor-menu-item-active-bg-color: #e8efff;--ngx-editor-placeholder-color: #94a3b8}.news-editor .NgxEditor__MenuBar{border-bottom:1px solid var(--adm-border, var(--dk-border, #e5e8f0));padding:6px;flex-wrap:wrap;gap:2px}.news-editor .NgxEditor{border:0;min-height:320px}.news-editor .NgxEditor .ProseMirror{padding:14px 18px;min-height:300px;font-size:1rem;line-height:1.6}.news-editor .NgxEditor .ProseMirror:focus{outline:none}.news-editor:focus-within{border-color:#93b4f5;box-shadow:0 0 0 3px #2563eb1f}.news-preview{padding:22px 26px;background:var(--dk-surface, #fff);border:1px solid var(--adm-border);border-radius:var(--adm-radius)}.news-preview h2{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;margin-bottom:6px}.news-preview__summary{font-size:1.05rem;color:var(--adm-muted);margin:0 0 14px}.news-content{line-height:1.7;font-size:1.02rem;overflow-wrap:anywhere}.news-content h1,.news-content h2,.news-content h3,.news-content h4{margin:1.2em 0 .4em;line-height:1.3}.news-content h2{font-size:1.3rem}.news-content h3{font-size:1.1rem}.news-content p{margin:0 0 .9em}.news-content ul,.news-content ol{padding-left:1.4em;margin:0 0 .9em}.news-content blockquote{margin:0 0 .9em;padding:6px 14px;border-left:4px solid var(--dk-border-strong, #cbd5e1);color:var(--dk-muted, #475569);background:var(--dk-surface-2, #f8fafc);border-radius:0 8px 8px 0}.news-content a{color:var(--dk-info-fg, #2563eb)}.news-content hr{border:0;border-top:1px solid var(--dk-border, #e2e8f0);margin:1.4em 0}.news-content pre{background:#0f172a;color:#e2e8f0;padding:10px 14px;border-radius:8px;overflow-x:auto}.news-pin{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--dk-warn-bg, #fef3c7);color:var(--dk-warn-fg, #92400e);font-size:.72rem;font-weight:700}.news-more{justify-self:center}.news-row{display:grid;gap:2px;padding:8px 0;border-top:1px solid var(--border);color:inherit;text-decoration:none}.news-row:hover .news-row__title{color:var(--dk-info-fg, #2563eb)}.news-row__title{font-weight:600}.news-row__meta{font-size:.8rem}.news-page{max-width:820px}:root{--news-serif: "Source Serif 4 Variable", "Iowan Old Style", Georgia, "Times New Roman", serif}.news-archive__head{display:grid;gap:2px;margin-bottom:4px}.news-archive__kicker,.news-lead__kicker{margin:0;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dk-info-fg, #1d4ed8)}.news-archive__title{margin:0;font-family:var(--news-serif);font-size:2rem;font-weight:700;letter-spacing:-.01em;padding-bottom:10px;border-bottom:3px solid var(--text)}.news-archive{display:grid;padding:6px 24px}@media(max-width:599px){.news-archive{padding:4px 16px}}.news-lead,.news-entry{color:inherit;text-decoration:none}.news-lead{display:grid;gap:10px;padding:22px 0 24px}.news-lead__kicker{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.news-lead__kicker .news-pin{letter-spacing:0;text-transform:none}.news-lead__sep{color:var(--dk-border-strong, #cbd5e1)}.news-lead__title{font-family:var(--news-serif);font-optical-sizing:auto;font-size:clamp(1.7rem,1.2rem + 2vw,2.4rem);font-weight:700;line-height:1.14;letter-spacing:-.015em;text-wrap:balance}.news-lead__summary{font-family:var(--news-serif);font-size:clamp(1.08rem,1rem + .4vw,1.22rem);line-height:1.5;color:var(--dk-muted, #475569);text-wrap:pretty}.news-lead__meta{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:.82rem;color:var(--muted)}.news-lead__more{margin-left:auto;font-weight:700;color:var(--dk-info-fg, #1d4ed8)}.news-lead:hover .news-lead__title,.news-entry:hover .news-entry__title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.news-entry{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;padding:18px 0;border-top:1px solid var(--border)}.news-entry__date{display:grid;justify-items:center;align-content:start;padding-top:4px;line-height:1}.news-entry__day{font-family:var(--news-serif);font-size:1.7rem;font-weight:700}.news-entry__month{margin-top:4px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.news-entry__body{display:grid;gap:6px;min-width:0}.news-entry__title{font-family:var(--news-serif);font-optical-sizing:auto;font-size:1.28rem;font-weight:700;line-height:1.25;text-wrap:balance}.news-entry__title .news-pin{font-family:inherit;vertical-align:.2em;margin-right:4px}.news-entry__summary{font-family:var(--news-serif);font-size:1rem;line-height:1.5;color:var(--dk-muted, #475569);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-entry__meta{font-size:.78rem;color:var(--muted)}.home-front{display:grid;gap:4px;padding:16px 22px 8px}.home-front__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px;border-bottom:3px solid var(--text)}.home-front__title{margin:0;font-family:var(--news-serif);font-size:1.5rem;font-weight:700}.home-front__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:0 24px}@media(max-width:799px){.home-front__grid{grid-template-columns:minmax(0,1fr)}}.home-front__side{display:grid;align-content:start}@media(min-width:800px){.home-front__side{border-left:1px solid var(--border);padding-left:20px}.home-front__side .news-entry:first-child{border-top:0}}.news-lead--compact{gap:8px;padding:16px 0 18px}.news-lead--compact .news-lead__title{font-size:clamp(1.4rem,1.1rem + 1.2vw,1.85rem)}.news-lead--compact .news-lead__summary{font-size:1.02rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-entry--compact{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:12px 0}.news-entry--compact .news-entry__day{font-size:1.3rem}.news-entry--compact .news-entry__title{font-size:1.05rem}.news-entry--compact .news-entry__summary{font-size:.92rem}.home-news .news-entry:first-of-type{border-top:0}.news-article{--news-accent: var(--dk-info-fg, #1d4ed8);padding:34px 44px 26px}@media(max-width:599px){.news-article{padding:20px 18px 18px}}.news-article>*{max-width:680px;margin-left:auto;margin-right:auto}.news-article__kicker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 auto 14px;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--news-accent)}.news-article__kicker .news-pin{letter-spacing:0;text-transform:none}.news-article__kicker-sep{color:var(--dk-border-strong, #cbd5e1)}.news-article__title{font-family:var(--news-serif);font-optical-sizing:auto;font-size:clamp(1.9rem,1.3rem + 2.2vw,2.75rem);font-weight:700;line-height:1.12;letter-spacing:-.015em;margin:0 auto 14px;text-wrap:balance}.news-article__summary{font-family:var(--news-serif);font-size:clamp(1.12rem,1rem + .5vw,1.3rem);line-height:1.5;color:var(--dk-muted, #475569);margin:0 auto 20px;text-wrap:pretty}.news-article__byline{display:flex;align-items:center;gap:12px;padding:14px 0;margin-bottom:26px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.news-article__avatar{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--news-accent);color:#fff;font-weight:800;font-size:.85rem;letter-spacing:.02em}:root[data-theme=dark] .news-article__avatar{color:#0b1120}.news-article__byline-text{display:grid;gap:2px;font-size:.82rem;color:var(--muted);min-width:0}.news-article__byline-text strong{color:var(--text);font-size:.88rem}.news-content--article{font-family:var(--news-serif);font-optical-sizing:auto;font-size:1.16rem;line-height:1.75;color:var(--text);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.news-content--article p{margin:0 0 1.15em;text-wrap:pretty}.news-content--article>p:first-child:first-letter{float:left;font-size:3.4em;line-height:.82;font-weight:700;margin:.08em .1em 0 0;color:var(--news-accent)}.news-content--article h2,.news-content--article h3,.news-content--article h4{font-family:var(--news-serif);font-weight:700;line-height:1.25;margin:1.6em 0 .5em}.news-content--article h2{font-size:1.5rem}.news-content--article h3{font-size:1.25rem}.news-content--article blockquote{margin:1.4em 0;padding:2px 0 2px 20px;border:0;border-left:3px solid var(--news-accent);border-radius:0;background:none;font-size:1.28rem;line-height:1.5;font-style:italic;color:var(--text)}.news-content--article a{color:var(--news-accent);text-decoration-thickness:1px;text-underline-offset:3px}.news-content--article hr{width:80px;margin:2em auto;border-top:3px solid var(--news-accent)}.news-article__share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:30px;padding-top:16px;border-top:1px solid var(--border)}.news-article__share-label{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:4px}.news-article__share .btn{gap:6px}.news-article__share .material-icons{font-size:18px}.news-match{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px 14px;margin-bottom:26px;padding:14px 18px;border:1px solid var(--border);border-radius:14px;background:var(--dk-surface-2, #f8fafc);color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s}.news-match:hover{border-color:var(--dk-border-strong, #94a3b8);box-shadow:0 4px 16px #0f172a0f}.news-match__team{font-weight:700;overflow-wrap:anywhere}.news-match__team--away{text-align:right}.news-match__score{font-size:1.6rem;font-weight:800;font-variant-numeric:tabular-nums;display:inline-flex;gap:6px}.news-match__score span{color:var(--muted);font-weight:500}.news-match__link{grid-column:1/-1;justify-self:center;display:inline-flex;align-items:center;gap:4px;font-size:.82rem;font-weight:600;color:var(--dk-info-fg, #1d4ed8)}.news-match__link .material-icons{font-size:17px}.news-timeline{display:grid;gap:10px;--tl-time: 44px;--tl-rail: 60px}.news-timeline__title{margin:0;padding-bottom:8px;border-bottom:2px solid var(--text);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.news-timeline__list{list-style:none;margin:0;padding:4px 0;position:relative}.news-timeline__list:before{content:"";position:absolute;top:10px;bottom:10px;left:var(--tl-rail);width:2px;transform:translate(-50%);background:var(--border)}.news-timeline__item{position:relative;display:grid;gap:2px;min-height:44px;padding:10px 4px 14px calc(var(--tl-rail) + 20px)}.news-timeline__item:before{content:"";position:absolute;left:var(--tl-rail);top:15px;width:9px;height:9px;border-radius:50%;transform:translate(-50%);background:var(--surface);border:2px solid var(--dk-border-strong, #94a3b8);box-sizing:border-box}.news-timeline__item--goal:before,.news-timeline__item--own-goal:before{top:12px;width:15px;height:15px;border:3px solid var(--surface);background:var(--text);box-shadow:0 0 0 1px var(--text)}.news-timeline__item--red:before{top:11px;width:11px;height:15px;border-radius:2px;border:0;background:var(--red);box-shadow:0 0 0 3px var(--surface)}.news-timeline__item--missed:before{top:13px;width:13px;height:13px;border-color:var(--dk-danger-fg, #b91c1c)}.news-timeline__minute{position:absolute;left:0;top:11px;width:var(--tl-time);text-align:right;font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted)}.news-timeline__head{display:flex;align-items:baseline;gap:10px}.news-timeline__type{font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.news-timeline__item--goal .news-timeline__type,.news-timeline__item--own-goal .news-timeline__type{color:var(--text)}.news-timeline__item--missed .news-timeline__type{color:var(--dk-danger-fg, #b91c1c)}.news-timeline__score{margin-left:auto;font-weight:800;font-variant-numeric:tabular-nums;font-size:.9rem}.news-timeline__who{font-size:.98rem;line-height:1.35;overflow-wrap:anywhere}.news-timeline__item--goal .news-timeline__who,.news-timeline__item--own-goal .news-timeline__who{font-family:var(--news-serif);font-size:1.08rem;font-weight:600}.news-timeline__team{font-family:Inter Variable,system-ui,sans-serif;font-weight:700;margin-right:6px}.news-comments .comments__list{max-height:none}.comments__as{margin:0;font-size:.85rem}.news-article__share a.btn{text-decoration:none;display:inline-flex;align-items:center}.home-clubs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.home-club{flex:none;display:flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:inherit;text-decoration:none;font-size:.85rem;font-weight:600;transition:border-color .15s}.home-club:hover{border-color:var(--dk-border-strong, #94a3b8)}.home-club__badge{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--dk-info-bg, #eef2ff);color:var(--dk-info-fg, #3730a3);font-size:.68rem;font-weight:800}.home-club__badge img{width:100%;height:100%;object-fit:contain;background:var(--dk-surface, #fff)}.home-club__name{white-space:nowrap}.home-archive-link{justify-self:end;font-weight:700;color:var(--dk-info-fg, #2563eb);text-decoration:none;font-size:.9rem}.home-archive-link:hover{text-decoration:underline}.home-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px;align-items:start}@media(max-width:899px){.home-grid{grid-template-columns:minmax(0,1fr)}}.home-round__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.home-round__head .portal-section__title{margin:0}.home-quick{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.home-quick__tile{display:flex;align-items:center;gap:12px;padding:14px;border-radius:12px;background:var(--surface);border:1px solid var(--border);color:inherit;text-decoration:none;transition:border-color .15s,transform .15s}.home-quick__tile:hover{border-color:var(--dk-border-strong, #94a3b8);transform:translateY(-1px)}.home-quick__icon{font-size:1.5rem}.home-quick__text{display:grid;font-size:.85rem}.home-quick__text span{color:var(--muted);font-size:.78rem}.home-section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.portal-adjustments ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.portal-adjustments li{display:flex;gap:12px;align-items:flex-start}.portal-adjustments__points{flex:none;min-width:44px;text-align:center;padding:3px 8px;border-radius:8px;background:var(--dk-success-bg, #dcfce7);color:var(--dk-success-fg, #166534);font-weight:800;font-variant-numeric:tabular-nums}.portal-adjustments__points--minus{background:var(--dk-danger-bg, #fee2e2);color:var(--dk-danger-fg, #991b1b)}.portal-adjustments__reason{display:block;color:var(--dk-muted, #475569);font-size:.9rem;overflow-wrap:anywhere}.news-page{max-width:1100px}.news-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}@media(max-width:899px){.news-layout{grid-template-columns:minmax(0,1fr)}}.news-layout__main,.news-layout__side{display:grid;gap:12px;min-width:0}@media(min-width:900px){.news-layout__side{position:sticky;top:12px}}.side-season{font-size:.8rem;font-weight:500}.side-match{display:grid;gap:3px;padding:8px 0;border-top:1px solid var(--border);color:inherit;text-decoration:none}.side-match:hover .side-match__teams{color:var(--dk-info-fg, #2563eb)}.side-match__when{font-size:.75rem;color:var(--muted)}.side-match--live .side-match__when{color:var(--dk-danger-fg, #dc2626);font-weight:700}.side-match__teams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;font-size:.88rem}.side-match__team{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.side-match__team--away{text-align:left}.side-match__team--winner{font-weight:700}.side-match__score{min-width:44px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums;background:var(--dk-surface-2, #f1f5f9);border-radius:6px;padding:1px 6px}.home-side{display:grid;gap:12px;min-width:0}.side-match__pending{margin-left:6px;padding:0 6px;border-radius:999px;background:var(--dk-warn-bg, #fef3c7);color:var(--dk-warn-fg, #92400e);font-size:.68rem;font-weight:700}.side-match__score--pending{background:var(--dk-warn-bg, #fff7ed);color:var(--dk-warn-fg, #9a3412)}.home-main{display:grid;gap:12px;min-width:0}.adm-round--pending .adm-round__header h3{color:#c2410c}.app-update{position:fixed;left:50%;bottom:calc(16px + var(--tabbar-height, 0px) + env(safe-area-inset-bottom));transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;border-radius:14px;background:#0f172a;color:#fff;font-size:.9rem;box-shadow:0 10px 30px #0f172a4d;max-width:calc(100vw - 24px)}.app-update button{font:inherit;font-weight:700;border:0;border-radius:10px;padding:6px 12px;background:#38bdf8;color:var(--dk-text, #0f172a);cursor:pointer}.app-update .app-update__close{background:transparent;color:#cbd5e1;padding:6px 8px}:root{--tabbar-height: 0px}.portal-season-chip,.app-tabbar{display:none}.portal-season-chip{align-items:center;gap:2px;padding:6px 6px 6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:#fff;font:inherit;font-size:.85rem;font-weight:600;white-space:nowrap;cursor:pointer}.portal-season-chip .material-icons{font-size:18px}.live-strip{display:flex;gap:8px;overflow-x:auto;padding:8px 16px;background:var(--dk-danger-bg, #fef2f2);border-bottom:1px solid var(--dk-danger-bg, #fecaca);scrollbar-width:none}.live-strip__item{flex:none;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--dk-surface, #fff);border:1px solid var(--dk-danger-bg, #fecaca);color:inherit;text-decoration:none;font-size:.85rem;white-space:nowrap}.live-strip__item strong{color:var(--dk-danger-fg, #dc2626);font-variant-numeric:tabular-nums}.app-sheet__list{display:grid;gap:4px}.app-sheet__item{display:flex;align-items:center;gap:14px;min-height:52px;padding:0 12px;border-radius:12px;border:0;background:transparent;color:inherit;text-decoration:none;font:inherit;font-size:1rem;font-weight:600;text-align:left;cursor:pointer}.app-sheet__item:hover,.app-sheet__item--active{background:var(--dk-info-bg, #eff6ff);color:var(--dk-info-fg, #1d4ed8)}.app-sheet__item .material-icons{color:var(--dk-muted, #64748b)}.app-sheet__item--active .material-icons{color:var(--dk-info-fg, #2563eb)}@media(max-width:720px),(max-height:500px)and (pointer:coarse){:root{--tabbar-height: 64px}.portal-header{position:sticky;top:0;z-index:20;padding-top:env(safe-area-inset-top)}@supports (-webkit-touch-callout: none){@media(max-width:720px)and (display-mode:standalone),(max-height:500px)and (pointer:coarse)and (display-mode:standalone){.portal-header{padding-top:max(env(safe-area-inset-top),50px)}}}.portal-header__inner{padding:10px 14px;gap:10px}.portal-header__logo{width:32px;height:32px}.portal-header__title h1{font-size:1.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-header__title p,.portal-header .portal-tabs,.portal-season{display:none}.portal-season-chip{display:inline-flex}.live-strip{position:sticky;top:calc(56px + env(safe-area-inset-top));z-index:19}.app-tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;height:calc(var(--tabbar-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--dk-glass, rgba(255, 255, 255, .94));backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-top:1px solid var(--border)}.app-tabbar__item{display:grid;justify-items:center;align-content:center;gap:2px;border:0;background:none;color:var(--dk-muted, #64748b);text-decoration:none;font:inherit;font-size:.68rem;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.app-tabbar__item .material-icons{font-size:24px;padding:2px 16px;border-radius:999px;transition:background .15s,color .15s}.app-tabbar__item--active{color:var(--dk-info-fg, #1d4ed8)}.app-tabbar__item--active .material-icons{background:var(--dk-info-bg, #dbeafe);color:var(--dk-info-fg, #1d4ed8)}.app-tabbar__item--home{position:relative;align-content:end;padding-bottom:8px}.app-tabbar__item--home .material-icons{position:absolute;top:-22px;left:50%;transform:translate(-50%);width:58px;height:58px;padding:0;display:grid;place-items:center;border-radius:50%;font-size:28px;color:#fff;background:linear-gradient(145deg,#2563eb,#1d4ed8);border:4px solid var(--bg);box-shadow:0 6px 16px #1d4ed859}.app-tabbar__item--home.app-tabbar__item--active .material-icons{color:#fff;background:linear-gradient(145deg,#1d4ed8,#1e3a8a)}.app-tabbar__item--home:active .material-icons{transform:translate(-50%) scale(.94)}.app-tabbar__label{display:inline-flex;align-items:center;gap:3px}.app-tabbar__label .live-dot{width:6px;height:6px}.portal,.news-page{padding-bottom:calc(var(--tabbar-height) + 24px + env(safe-area-inset-bottom))}.overlay--sheet .bottom-sheet{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}.overlay:has(.app-sheet){z-index:50}.home-club--fav{border-color:#f59e0b;background:var(--dk-warn-bg, #fffbeb)}.home-club__star{font-size:16px;color:#f59e0b}.my-club{padding:14px 16px;margin-bottom:16px;border-left:4px solid #f59e0b}.my-club__head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.my-club__star{color:#f59e0b;font-size:20px}.my-club__name{font-weight:700;color:inherit;text-decoration:none}.my-club__label{margin-left:auto;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.my-club__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.my-club__item{display:grid;gap:2px;padding:10px 12px;border-radius:10px;background:var(--bg);color:inherit;text-decoration:none}.my-club__item--live{background:var(--dk-danger-bg, #fef2f2)}.my-club__kicker{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--muted);font-weight:600}.my-club__match{font-weight:600}.my-club__venue{font-size:.8rem}.portal-table__row--fav td{background:var(--dk-warn-bg, #fffbeb)}.portal-table__row--fav td:first-child{box-shadow:inset 3px 0 #f59e0b}.portal-club__title{flex:1;min-width:0}.fav-toggle{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;color:var(--text)}.fav-toggle .material-icons{font-size:18px;color:#f59e0b}.fav-toggle--on{border-color:#f59e0b;background:var(--dk-warn-bg, #fffbeb)}.round-chips{display:flex;gap:6px;overflow-x:auto;padding:2px 0 10px;scrollbar-width:none;scroll-snap-type:x proximity}.round-chips::-webkit-scrollbar{display:none}.round-chip{flex:none;min-width:40px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font:inherit;font-size:.8rem;font-weight:600;color:var(--muted);cursor:pointer;scroll-snap-align:center}.round-chip--active{background:var(--dk-ink, var(--text));border-color:var(--dk-ink, var(--text));color:#fff}.col-narrow-cell,.portal-table__details{display:none}.portal-table__chevron{font-size:20px;color:var(--muted);transition:transform .15s}.portal-table__row--open .portal-table__chevron{transform:rotate(180deg)}.standing-details{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:.85rem;text-align:left;white-space:normal}.standing-details__form{display:inline-flex;align-items:center;gap:4px}.standing-details__actions{display:flex;gap:16px;width:100%}.standing-details .link{background:none;border:0;padding:0;font:inherit;cursor:pointer}@media(max-width:600px){.portal-table--standings .col-wide{display:none}.portal-table--standings .col-narrow-cell{display:table-cell;width:24px}.portal-table--standings tbody tr:not(.portal-table__details){cursor:pointer}.portal-table--standings .portal-table__details{display:table-row}.portal-table--standings .portal-table__details td{background:var(--bg)}}.skeleton-page{display:grid;gap:12px;padding:16px 0}.skeleton{display:block;border-radius:var(--radius);background:linear-gradient(90deg,var(--dk-surface-3, #e2e8f0) 25%,var(--dk-surface-2, #f1f5f9) 50%,var(--dk-surface-3, #e2e8f0) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.2s ease-in-out infinite}.skeleton--header{height:56px}.skeleton--hero{height:180px}.skeleton--card{height:140px}.skeleton--row{height:48px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}@media(max-width:759px){.recorder-page{padding-top:10px}.recorder-page .page__header{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin-bottom:8px}.recorder-page .page__header h1{font-size:1.1rem;margin:0}.recorder-page .page__header>p{margin:0;font-size:.8rem}.recorder-page .share .btn--small{padding:4px 10px;min-height:0;font-size:.75rem}.recorder-page .recorder{font-size:.75rem;margin-bottom:6px}.recorder-page .scoreboard{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"clock clock" "home away";gap:8px;margin-bottom:12px}.recorder-page .scoreboard>app-clock-panel{grid-area:clock}.recorder-page .scoreboard>app-team-panel{display:grid}.recorder-page .team{align-content:start}.recorder-page .scoreboard>app-team-panel:first-child{grid-area:home}.recorder-page .scoreboard>app-team-panel:last-child{grid-area:away}.recorder-page .clock{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"period actions" "time actions";align-items:center;gap:0 12px;padding:10px 12px;text-align:left}.recorder-page .clock__period{grid-area:period;font-size:.7rem}.recorder-page .clock__time,.recorder-page .clock__time--button{grid-area:time;font-size:2.1rem;padding:0;text-underline-offset:6px}.recorder-page .clock__actions{grid-area:actions;gap:6px}.recorder-page .clock .btn--large{font-size:1.05rem;padding:10px 12px;min-height:48px}.recorder-page .clock .btn--ghost{padding:6px 10px;font-size:.8rem}.recorder-page .team{padding:8px;gap:6px;border-top-width:4px}.recorder-page .team__name{font-size:.9rem;margin:0;line-height:1.2;min-height:2.4em;display:grid;place-items:center}.recorder-page .team__score{font-size:2.6rem}.recorder-page .fouls-panel__title{margin:0;font-size:.7rem}.recorder-page .fouls{gap:3px;font-size:.75rem}.recorder-page .fouls .chip{width:15px;height:15px;border-width:1px;font-size:0}.recorder-page .fouls__chips{gap:2px}.recorder-page .fouls__warning{padding:1px 6px;font-size:.7rem}.recorder-page .actions{grid-template-columns:1fr;gap:6px}.recorder-page .actions .btn--goal,.recorder-page .actions .btn--foul{font-size:1.05rem;min-height:52px;padding:8px}.recorder-page .actions .btn--more{grid-column:auto;min-height:38px;font-size:1.2rem;padding:4px}.recorder-page .team .hint{font-size:.7rem;margin:0}}@media(max-width:759px){.live-page{padding-top:10px}.live-page--tabbar{padding-bottom:calc(var(--tabbar-height, 64px) + 24px + env(safe-area-inset-bottom))}.live-page .page__header--live{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;margin-bottom:8px}.live-page .page__header--live>div:first-child{grid-column:1/-1}.live-page__back{margin-bottom:8px;font-size:.85rem}.live-page .page__header h1{font-size:1.1rem;margin:0}.live-page .page__header--live p{margin:0;font-size:.8rem}.live-page .viewer{font-size:.75rem;align-self:center;min-width:0}.live-page .live-status{font-size:.75rem;padding:3px 8px;align-self:center;justify-self:end}.live-page .badge{margin:0 0 8px}.live-page .scoreboard--live{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"clock clock" "home away";gap:8px;margin-bottom:12px}.live-page .scoreboard--live>app-clock-panel{grid-area:clock}.live-page .scoreboard--live>.live-team:first-child{grid-area:home}.live-page .scoreboard--live>.live-team--away{grid-area:away}.live-page .scoreboard--live .clock{grid-template-columns:auto auto;justify-content:center;align-items:baseline;gap:12px;padding:10px 12px}.live-page .scoreboard--live .clock__period{font-size:.7rem}.live-page .scoreboard--live .clock__time{font-size:2.1rem}.live-page .scoreboard--live .live-team{padding:8px;gap:4px;align-content:start;border-top-width:4px}.live-page .scoreboard--live h2{font-size:.9rem;line-height:1.2;min-height:2.4em;display:grid;place-items:center;margin:0}.live-page .scoreboard--live .team__score{font-size:2.8rem}.live-page .fouls-panel__title{display:none}.live-page .fouls{font-size:.75rem}.live-page .scorer{font-size:.75rem;line-height:1.3}}.sidebar-backdrop{position:fixed;inset:0;z-index:60;background:#0f172a73;animation:fade-in .2s ease-out}.app-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:61;width:min(320px,86vw);display:flex;flex-direction:column;gap:8px;overflow-y:auto;overscroll-behavior:contain;padding:calc(14px + env(safe-area-inset-top)) 12px calc(16px + env(safe-area-inset-bottom));background:var(--surface);color:var(--text);box-shadow:8px 0 32px #0f172a40;animation:sidebar-in .22s ease-out}.app-sidebar--right{left:auto;right:0;box-shadow:-8px 0 32px #0f172a40;animation-name:sidebar-in-right}@keyframes sidebar-in-right{0%{transform:translate(100%)}}@keyframes sidebar-in{0%{transform:translate(-100%)}}@keyframes fade-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){.app-sidebar,.sidebar-backdrop{animation:none}}.app-sidebar__head{display:flex;align-items:center;gap:10px;padding:4px 4px 12px;border-bottom:1px solid var(--border)}.app-sidebar__logo{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#2563eb,#1d4ed8);color:#fff}.app-sidebar__title{display:grid;min-width:0;flex:1}.app-sidebar__title strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar__title .muted{font-size:.75rem}.app-sidebar__close{border:0;background:none;color:var(--muted);width:40px;height:40px;border-radius:50%;cursor:pointer}.app-sidebar__close:hover{background:var(--bg)}.app-sidebar__nav{display:grid;gap:2px}.app-sidebar__item{display:flex;align-items:center;gap:14px;padding:11px 12px;border-radius:12px;color:inherit;text-decoration:none;font-weight:600;font-size:.95rem}.app-sidebar__item .material-icons{color:var(--muted);font-size:22px}.app-sidebar__item:hover{background:var(--bg)}.app-sidebar__item--active{background:var(--dk-info-bg, #dbeafe);color:var(--dk-info-fg, #1d4ed8)}.app-sidebar__item--active .material-icons{color:inherit}.setting{display:grid;gap:8px}.setting__label{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:.9rem}.setting__label .material-icons{font-size:20px;color:var(--muted)}.setting__hint{margin:0;font-size:.78rem;color:var(--muted)}.setting__switch{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.setting__check{display:flex;align-items:center;gap:8px;font-size:.85rem}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border-radius:12px;background:var(--bg)}.segmented__item{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:8px 6px;border:0;border-radius:9px;background:none;color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.segmented__item .material-icons{font-size:16px}.segmented__item--on{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #0f172a26}.switch{appearance:none;flex:none;width:46px;height:28px;border-radius:999px;background:var(--dk-border-strong, #cbd5e1);position:relative;cursor:pointer;transition:background .15s;margin:0}.switch:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .15s}.switch:checked{background:#2563eb}.switch:checked:after{transform:translate(18px)}.switch:disabled{opacity:.5;cursor:not-allowed}.switch:focus-visible{outline:2px solid #2563eb;outline-offset:2px}:root[data-theme=dark] :is(input:not([type=checkbox]):not([type=radio]),textarea,select){background-color:var(--dk-surface-2);color:var(--text);border-color:var(--border)}:root[data-theme=dark] :is(input,textarea)::placeholder{color:var(--muted)}.app-sidebar__nav--secondary{margin-top:4px;padding-top:8px;border-top:1px solid var(--border)}.settings-page{max-width:560px}.settings-card{display:grid;gap:22px;padding:18px 16px}.settings-page__note{font-size:.8rem;text-align:center}.page,.portal-header__inner{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.app-tabbar{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.venue-chips{display:flex;gap:8px;margin-bottom:4px}.venue-chip{padding:8px 18px;border-radius:999px;background:var(--dk-surface-3, #e2e8f0);color:var(--text);text-decoration:none;font-weight:600;font-size:.9rem}.venue-chip:hover{background:var(--dk-border-strong, #cbd5e1)}.venue-chip--on,.venue-chip--on:hover{background:var(--text);color:var(--bg)}.adm-match__pens{display:block;font-size:.7rem;font-weight:500;color:var(--adm-muted, #64748b)}.bracket-setup{display:grid;gap:12px;max-width:640px}.bracket-setup__mode{display:flex;flex-wrap:wrap;gap:8px 24px}.bracket-setup__qualifiers{max-width:260px}.seed-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.seed-list li{display:flex;align-items:center;gap:8px;padding:2px 4px 2px 10px;border-radius:10px;background:var(--adm-surface-2, #f8f9fc)}.seed-list__no{width:2.2em;font-weight:700;color:var(--adm-muted, #64748b)}.seed-list__name{flex:1}.bracket{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:16px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity}.bracket__col{display:flex;flex-direction:column;justify-content:space-around;gap:12px;scroll-snap-align:start}.bracket__title{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:center}.bracket-tie{border:1px solid var(--dk-border, #e2e8f0);border-radius:12px;background:var(--surface);overflow:hidden}.bracket-tie--third{border-style:dashed}.bracket-tie__label{display:block;padding:6px 10px 0;font-size:.72rem;font-weight:600;color:var(--muted)}.bracket-tie__side{display:flex;justify-content:space-between;gap:8px;padding:7px 10px;border-bottom:1px solid var(--dk-border, #f1f5f9);font-size:.9rem}.bracket-tie__side--winner{font-weight:700}.bracket-tie__side--tbd span{color:var(--muted);font-style:italic}.bracket-tie__foot{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:34px;padding:2px 4px 2px 10px;font-size:.75rem}a.bracket-tie{display:block;color:inherit;text-decoration:none}a.bracket-tie:hover{border-color:var(--dk-border-strong, #94a3b8)}.bracket--public{grid-auto-columns:minmax(210px,1fr)}.portal-section__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.portal-section__head .portal-section__title{margin:0}.portal-section__head .btn{display:inline-flex;align-items:center;gap:6px;text-decoration:none;min-height:0}.portal-section__head .btn .material-icons{font-size:18px}.portal-section:has(>.bracket),.portal-section:has(app-public-bracket),app-public-bracket{min-width:0;max-width:100%}app-public-bracket{display:block}.bracket{max-width:100%;-webkit-overflow-scrolling:touch}.tennis-draw{grid-auto-columns:minmax(250px,1fr)}.tennis-match{border:1px solid var(--dk-border, #e2e8f0);border-radius:12px;background:var(--surface);overflow:hidden}.tennis-match--clickable{cursor:pointer}.tennis-match--clickable:hover{border-color:var(--dk-border-strong, #94a3b8)}.tennis-match--third{border-style:dashed}.tennis-match__side{display:flex;align-items:center;gap:6px;padding:7px 10px;border-bottom:1px solid var(--dk-border, #f1f5f9);font-size:.88rem}.tennis-match__side:last-of-type{border-bottom:0}.tennis-match__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tennis-match__seed{color:var(--muted);font-size:.78rem;margin-right:2px}.tennis-match__side--winner .tennis-match__name{font-weight:700}.tennis-match__side--tbd .tennis-match__name{color:var(--muted);font-style:italic}.tennis-match__set{min-width:18px;text-align:center;font-variant-numeric:tabular-nums;color:var(--muted)}.tennis-match__set--won{color:var(--text);font-weight:700}.tennis-match__set sup{font-size:.6rem;margin-left:1px}.tennis-match__foot{padding:3px 10px 5px;font-size:.72rem;color:var(--muted);border-top:1px solid var(--dk-border, #f1f5f9)}.tennis-series{margin-bottom:16px}.tennis-tournaments{list-style:none;margin:0;padding:0;display:grid;gap:6px}.tennis-tournament-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--adm-surface-2, #f8f9fc);color:inherit;text-decoration:none}.tennis-tournament-row:hover{background:var(--adm-primary-soft, #e8efff)}.tennis-tournament-row__text{flex:1;display:grid}.tier-badge{min-width:46px;text-align:center;padding:6px;border-radius:10px;font-weight:800;font-size:.85rem;background:var(--dk-ink, #0f172a);color:#fff}.tennis-event-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.tennis-entries{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}@media(max-width:900px){.tennis-entries{grid-template-columns:1fr}}.tennis-pool{position:sticky;top:12px;display:grid;gap:8px}.tennis-pool__list{display:grid;gap:4px;max-height:60vh;overflow-y:auto;padding:2px}.tennis-chip{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:10px;cursor:grab;background:var(--adm-surface, #fff);border:1px solid var(--adm-border, #e5e8f0);font-size:.88rem}.tennis-chip--placeholder{opacity:.4}.tennis-chip__gender{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.7rem;font-weight:700;background:var(--adm-primary-soft, #e8efff);color:var(--adm-primary, #2563eb)}.tennis-chip__name{flex:1}.tennis-events{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.tennis-event{display:grid;gap:8px}.tennis-event--locked{opacity:.85}.tennis-event__head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.tennis-event__list{min-height:56px;display:grid;gap:4px;padding:6px;border-radius:10px;border:1px dashed var(--adm-border, #e5e8f0)}.tennis-event__list.cdk-drop-list-dragging,.tennis-event__list.cdk-drop-list-receiving{border-color:var(--adm-primary, #2563eb);background:var(--adm-primary-soft, #e8efff)}.tennis-event__empty{margin:8px}.tennis-entry{display:flex;align-items:center;gap:6px;padding:4px 4px 4px 10px;border-radius:10px;cursor:grab;background:var(--adm-surface, #fff);border:1px solid var(--adm-border, #e5e8f0);font-size:.86rem}.tennis-entry--Withdrawn{opacity:.5;text-decoration:line-through}.tennis-entry--Alternate,.tennis-entry--Qualifying{border-style:dashed}.tennis-entry__seed{min-width:26px;font-weight:700;color:var(--adm-primary, #2563eb)}.tennis-entry__names{flex:1}.tennis-partner-drop{display:inline-block;padding:2px 10px;margin-left:4px;border-radius:999px;border:1px dashed #94a3b8;color:#64748b;font-size:.78rem}.tennis-partner-drop.cdk-drop-list-receiving{border-color:#2563eb;color:#2563eb;background:#e8efff}.tennis-warning{color:#d97706;font-size:18px;width:18px;height:18px}.cdk-drag-preview{box-shadow:0 8px 24px #0f172a40;border-radius:10px}.cdk-drag-animating{transition:transform .2s cubic-bezier(0,0,.2,1)}code.ipin,strong.ipin{font-family:ui-monospace,Menlo,monospace;letter-spacing:.05em}.radio-row{display:flex;flex-wrap:wrap;gap:8px 20px}.spacer{flex:1}.tennis-entry__note{display:block;color:#b45309;font-size:.75rem}.admin-meta__item--on{color:#15803d}.admin-meta__action{margin-left:4px}.tennis-registrations td{vertical-align:top}.tennis-public-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.tennis-public-item{display:flex;align-items:center;gap:12px;padding:10px;border-radius:12px;background:var(--bg);color:inherit;text-decoration:none}.tennis-public-item:hover{background:var(--dk-surface-3, #e2e8f0)}.tennis-register-btn{display:inline-flex;margin-top:8px;text-decoration:none}.tennis-registration__form{display:grid;gap:12px;max-width:720px}.tennis-registration__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.tennis-home-link{display:flex;align-items:center;gap:12px;margin-top:12px}h1 .tier-badge{font-size:.8rem;vertical-align:middle}.tennis-event__list{align-content:start}.portal-section:has(app-tennis-draw-view),app-tennis-draw-view{display:block;min-width:0;max-width:100%}.tennis-ranking td,.tennis-ranking th{white-space:nowrap}.tennis-ranking .portal-table__name{white-space:normal}.tennis-ranking__move{width:1%;font-size:.75rem}.tennis-move{color:var(--muted)}.tennis-move--up{color:#15803d}.tennis-move--down{color:#b91c1c}.tennis-move--new{color:#2563eb;font-weight:600}.tennis-ranking__note{font-size:.82rem;margin:10px 0 0}@media(max-width:599px){.tennis-ranking .tennis-ranking__best{display:none}}.tennis-match__link{color:inherit;text-decoration:none}.tennis-match__link:hover{text-decoration:underline}.tennis-profile__rankings{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.tennis-profile__rank{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--dk-surface-2, #f1f5f9);color:var(--text);text-decoration:none}.tennis-profile__position{font-size:1.6rem;line-height:1;min-width:2ch}.tennis-profile__result{padding:10px 0;border-top:1px solid var(--dk-border, #e2e8f0)}.tennis-profile__result:first-of-type{border-top:0}.tennis-profile__result-head{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.tennis-profile__points{margin-left:auto}.tennis-profile__matches{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;font-size:.9rem}.tennis-profile__matches li{display:grid;grid-template-columns:minmax(90px,auto) 1fr auto;gap:10px}.tennis-profile__round{color:var(--muted)}.tennis-profile__opp{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tennis-profile__score{font-variant-numeric:tabular-nums;white-space:nowrap}.tennis-profile__score--won{color:#15803d}.tennis-profile__score--lost{color:#b91c1c}.tennis-profile__expiry{font-size:.8rem;margin:6px 0 0}.tennis-admin-ranking__toolbar{margin:12px 0;gap:12px}.tennis-admin-table{width:100%;border-collapse:collapse;margin-top:8px}.tennis-admin-table th,.tennis-admin-table td{padding:8px 10px;text-align:left;border-bottom:1px solid #e2e8f0}.tennis-points-input{width:80px;padding:6px 8px;border:1px solid #cbd5e1;border-radius:6px;font:inherit}.tennis-admin-actions{margin:14px 0}.tennis-adjustment-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0}.tennis-adjustment-form__points{width:120px}.tennis-adjustment-form__reason{flex:1 1 220px}.landing__hero{padding-bottom:24px}.landing__nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.landing__nav-link{padding:6px 12px;border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fff;font-size:.8rem;font-weight:600;text-decoration:none}.landing__nav-link:hover{background:#ffffff1f}.landing__hero-text h1{margin:22px 0 8px;font-size:clamp(1.8rem,6vw,2.6rem);line-height:1.1;letter-spacing:-.01em}.landing__hero-text p{margin:0 0 20px;font-size:1rem;line-height:1.45}.landing__sports{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:14px}.landing__sport{display:flex;align-items:center;gap:10px;padding:12px;border-radius:14px;background:#ffffff1a;border:1px solid rgba(255,255,255,.16);color:#fff;text-decoration:none}.landing__sport:hover{background:#ffffff29}.landing__sport>span:last-child{display:grid;gap:2px;min-width:0}.landing__sport>span:last-child>span{font-size:.75rem;color:#ffffffb3}.landing__sport-icon{flex:none;font-size:1.6rem;line-height:1}.landing__title{margin:8px 4px 12px;font-size:1.25rem}.landing__section{max-width:752px;margin:0 auto;padding:8px 16px 20px}.landing__features{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin:0;padding:0;list-style:none}.landing__feature{display:grid;align-content:start;gap:4px;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.landing__feature span:last-child{font-size:.85rem;color:var(--muted);line-height:1.4}.landing__feature-icon{width:36px;height:36px;display:grid;place-items:center;margin-bottom:4px;border-radius:10px;font-size:20px;background:var(--dk-info-bg, #dbeafe);color:var(--dk-info-fg, #1d4ed8)}.landing__organizers{padding-top:16px}.landing__steps{display:grid;gap:10px;margin:0 0 16px;padding:0;list-style:none}.landing__steps li{display:flex;gap:12px;align-items:flex-start}.landing__steps li>span:last-child{display:grid;gap:2px}.landing__steps li>span:last-child>span{font-size:.85rem;color:var(--muted)}.landing__step-number{flex:none;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font-weight:800;font-size:.85rem;color:#fff;background:#1e3a8a}.landing__cta{display:inline-flex;text-decoration:none}.landing__footer{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;padding:20px 16px calc(24px + env(safe-area-inset-bottom));border-top:1px solid var(--border);font-size:.8rem;color:var(--muted)}.landing__footer a{color:inherit}.home{min-height:100dvh;background:var(--bg);overflow-x:clip}.home__hero{background:linear-gradient(160deg,#0f172a,#1e3a8a);color:#fff;padding:calc(20px + env(safe-area-inset-top)) 16px 28px;border-radius:0 0 24px 24px}.home__hero>*{max-width:720px;margin-left:auto;margin-right:auto}.home__brand{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;opacity:.8}.home__brand .material-icons{font-size:18px}.home__hero h1{margin:14px auto 4px;font-size:1.9rem;line-height:1.15}.home__hero p{margin:0 auto 18px;color:#ffffffbf}.home__search{display:flex;align-items:center;gap:8px;background:var(--dk-surface-2, var(--surface));color:var(--text);border-radius:14px;padding:0 8px 0 14px;box-shadow:0 8px 24px #0f172a40}.home__search .material-icons{color:var(--muted)}.home__search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:inherit;font:inherit;font-size:1rem;padding:14px 0}.home__search input::-webkit-search-cancel-button{display:none}.home .home__search input{background:transparent;border:0;box-shadow:none}.home-league__pin-short{display:none}.home__search-clear{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:8px;border-radius:50%}.home__body{max-width:752px;margin:0 auto;padding:16px 16px calc(24px + env(safe-area-inset-bottom))}.home__count{margin:4px 4px 10px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.home__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.home-league{display:flex;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden}.home-league--skeleton{height:72px;background:linear-gradient(90deg,var(--surface) 0%,var(--dk-surface-2, #f1f5f9) 50%,var(--surface) 100%);background-size:200% 100%;animation:home-shimmer 1.2s infinite linear}@keyframes home-shimmer{to{background-position:-200% 0}}.home-league__main,.home-tennis{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:12px 14px;color:inherit;text-decoration:none}.home-league__main:active,.home-tennis:active{background:var(--dk-surface-2, #f8fafc)}.home-league__logo{width:48px;height:48px;flex:none;object-fit:contain;border-radius:12px}.home-league__logo--initials{display:grid;place-items:center;background:var(--dk-info-bg, #dbeafe);color:var(--dk-info-fg, #1d4ed8);font-weight:800;font-size:1.05rem}.home-league__text{display:grid;gap:2px;min-width:0}.home-league__text strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere;line-height:1.25}.home-league__text .muted{font-size:.85rem}.home-league__pin{flex:none;align-self:stretch;display:flex;align-items:center;gap:6px;border:0;border-left:1px solid var(--border);background:transparent;color:var(--home);font:inherit;font-size:.85rem;font-weight:600;padding:0 14px;cursor:pointer}.home-league__pin:hover{background:var(--dk-info-bg, #eff6ff)}.home__empty{padding:24px;text-align:center;background:var(--surface);border-radius:16px}.home__tip{display:flex;gap:8px;align-items:flex-start;margin:12px 4px 0;font-size:.82rem;color:var(--muted)}.home__tip .material-icons{font-size:18px}.home-tennis{margin-top:20px;background:var(--surface);border:1px solid var(--border);border-radius:16px}.home-tennis__icon{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:12px;background:var(--dk-success-bg, #dcfce7);font-size:1.5rem}.home-tennis__chevron{margin-left:auto;color:var(--muted)}.home__hint{margin-top:20px;text-align:center}@media(max-width:520px){.home-league__pin-label{display:none}.home-league__pin{flex-direction:column;justify-content:center;gap:2px;padding:0 12px;min-width:68px}.home-league__pin-short{display:block;font-size:.7rem}}.setting__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.setting__actions .btn{display:inline-flex;align-items:center;gap:6px}.setting__actions .material-icons{font-size:18px}.btn--danger-text{color:var(--dk-danger-fg, #b91c1c)}.account-name{display:flex;gap:8px;margin-top:8px}.account-name .field__input{flex:1;min-width:0}.account-name__saved{color:var(--dk-success-fg, #15803d)}.award-wizard__steps{display:flex;gap:6px;justify-content:center}.award-wizard__dot{width:28px;height:4px;border-radius:2px;background:var(--border)}.award-wizard__dot--on{background:#2563eb}.award-wizard__teams{display:grid;gap:10px}.award-wizard__team{min-height:64px;padding:12px 16px;border-radius:14px;border:1px solid var(--border);background:var(--dk-surface-2, #f8fafc);color:var(--text);font:inherit;font-size:1.1rem;font-weight:700;text-align:left;cursor:pointer}.award-wizard__team:active{background:var(--dk-info-bg, #dbeafe)}.award-wizard__summary{display:grid;grid-template-columns:auto 1fr;gap:10px 12px;align-items:center;margin:0;font-size:1.05rem;font-weight:600}.award-wizard__summary dd{margin:0}.award-badge{display:inline-grid;place-items:center;min-width:34px;height:26px;padding:0 6px;border-radius:999px;background:var(--dk-surface-3, #e2e8f0);color:var(--text);font-weight:800;font-size:.85rem;font-variant-numeric:tabular-nums}.award-badge--gold{background:#fbbf24;color:#422006}.award-table__club{display:block;font-size:.78rem}.award-player__head{display:flex;align-items:center;gap:14px}.award-player__head p{margin:2px 0 0}.award-player__rank{font-size:1.8rem;font-weight:800;min-width:2.2ch}.award-player__points{margin-left:auto;display:grid;justify-items:center;line-height:1.1}.award-player__points strong{font-size:1.6rem}.award-player__points small{color:var(--muted)}.award-match{display:flex;align-items:flex-start;gap:12px;padding:10px 2px;color:inherit;text-decoration:none}.award-match+.award-match{border-top:1px solid var(--border)}.award-match:active{background:var(--dk-surface-2, #f8fafc)}.award-match__body{display:grid;gap:3px;min-width:0;flex:1}.award-match__teams{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}.award-match__own{font-weight:700}.award-match__winner{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:var(--dk-success-fg, #16a34a)}.award-match__score{font-variant-numeric:tabular-nums}.award-match__meta{font-size:.78rem;color:var(--muted)}.award-match__stats{display:flex;flex-wrap:wrap;gap:6px;font-size:.8rem}.award-stat{padding:2px 8px;border-radius:999px;background:var(--dk-surface-3, #eef2f7)}.award-stat--miss{background:var(--dk-danger-bg, #fef2f2);color:var(--dk-danger-fg, #b91c1c)}.home-install{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer}.home-install__icon{background:var(--dk-info-bg, #dbeafe);color:var(--dk-info-fg, #1d4ed8);font-size:26px}button.app-sidebar__item{width:100%;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.app-sidebar__item--install{color:var(--dk-info-fg, #1d4ed8)}.rotate-hint{display:none}@media(max-width:720px)and (orientation:portrait){.rotate-hint{display:flex;align-items:center;gap:10px;padding:10px 8px 10px 14px;border-radius:14px;background:var(--dk-info-bg, #eff6ff);color:var(--dk-info-fg, #1e40af);font-size:13px;font-weight:500}.rotate-hint>span:nth-child(2){flex:1}.rotate-hint__close{border:0;background:none;color:inherit;font-size:20px;padding:6px;border-radius:50%;cursor:pointer}}.season-leader{display:grid;grid-template-columns:minmax(84px,auto) minmax(0,1fr) auto;gap:4px 12px;align-items:baseline;padding:10px 2px}.season-leader+.season-leader{border-top:1px solid var(--border)}.season-leader__season{font-weight:700;font-variant-numeric:tabular-nums}.season-leader__names{display:flex;flex-wrap:wrap;gap:2px 10px;min-width:0}.season-leader__value{white-space:nowrap}.team-form{display:grid;gap:10px}.team-form__title{margin:0;text-align:center;font-size:1rem}.team-form__cols{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.team-form__col{display:grid;gap:8px;align-content:start;justify-items:stretch;min-width:0}.team-form__team{font-size:.78rem;font-weight:700;color:var(--muted);text-align:center;justify-self:center}.team-form__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;color:inherit;text-decoration:none}.team-form__venue{display:grid;place-items:center;width:20px;height:20px;border-radius:5px;background:var(--dk-surface-3, #e8edf3);color:var(--muted);font-size:.65rem;font-weight:800}.team-form__opponent{min-width:0;font-size:.82rem;font-weight:600;line-height:1.2;overflow-wrap:anywhere}.team-form__crest{width:26px;height:26px;object-fit:contain}.team-form__crest--initials{display:grid;place-items:center;border-radius:50%;background:var(--dk-info-bg, #e0e7ff);color:var(--dk-info-fg, #3730a3);font-size:.6rem;font-weight:800}.team-form__score{display:grid;place-items:center;min-width:52px;padding:0 6px;height:26px;border-radius:6px;color:#fff;font-weight:700;font-size:.85rem;font-variant-numeric:tabular-nums}.team-form__score--W{background:#16a34a}.team-form__score--D{background:#94a3b8}.team-form__score--L{background:#dc2626}.team-form__empty{font-size:.8rem;margin:0}.club-link{color:inherit;text-decoration:none}.club-link:hover{text-decoration:underline;text-underline-offset:3px}.club-link:active{opacity:.7}.portal-header--page{background:linear-gradient(180deg,#0b1120,#142347)}.portal-header--page .portal-header__inner{display:grid;grid-template-columns:auto auto minmax(0,1fr);grid-template-areas:"back logo title" "back logo big";column-gap:14px;align-items:center;padding-top:16px;padding-bottom:16px}.portal-header--page .portal-header__home{grid-area:back}.portal-header--page .portal-header__logo{grid-area:logo;width:56px;height:56px;padding:6px;border-radius:14px;background:#fff}.portal-header__logo--photo{padding:0!important;object-fit:cover}.portal-header--page .portal-header__title{grid-area:title;align-self:end}.portal-header__kicker{margin:0;font-size:15px;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-header__kicker-link{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor}.portal-header__kicker-link:hover{border-bottom-style:solid}.portal-header__big{grid-area:big;align-self:start;margin:0;color:#fff;font-size:24px;font-weight:800;letter-spacing:-.01em;line-height:1.2;overflow-wrap:anywhere}.icon-action{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--dk-surface-3, #e8edf3);color:var(--text);text-decoration:none}.icon-action:hover{background:var(--dk-border-strong, #d5dde8)}.icon-action .material-icons{font-size:20px}.portal-filters__pdf{margin-left:auto;align-self:flex-end}.pdf-choice{width:min(420px,100%)}.pdf-choice__option{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;border:1px solid var(--border);background:var(--dk-surface-2, #f8fafc);color:var(--text);text-decoration:none}.pdf-choice__option:hover,.pdf-choice__option:active{background:var(--dk-info-bg, #eff6ff)}.pdf-choice__option .material-icons{font-size:28px;color:var(--dk-info-fg, #1d4ed8)}.pdf-choice__option>span:last-child{display:grid;gap:2px}.pdf-choice__option small{color:var(--muted);font-size:.82rem}.dialog__actions{display:flex;justify-content:flex-end;gap:8px}.name-dialog{width:min(420px,100%)}.lineup__player--suspended{opacity:.75;background:var(--dk-danger-bg, #fef2f2)}.lineup__suspended{margin-left:auto;display:inline-flex;align-items:center;gap:4px;color:var(--dk-danger-fg, #b91c1c);font-size:.8rem;font-weight:600;white-space:nowrap}.lineup__suspended .card-icon{min-width:10px;height:14px;padding:0}.red-card-row{display:grid;gap:4px;padding:8px 0;border-top:1px solid var(--adm-border, #e2e8f0)}.red-card-row__player{display:flex;align-items:center;gap:8px}.red-card-row__player .card-icon{min-width:10px;height:14px;padding:0}.red-card-row__matches{flex:0 0 160px}.adm-suspensions__rule{margin:0}.adm-suspensions__left{color:var(--adm-danger, #b91c1c)}.row--muted td{opacity:.6}.portal-suspension{display:flex;align-items:center;gap:10px;padding:8px 2px}.portal-suspension+.portal-suspension{border-top:1px solid var(--border)}.portal-suspension .card-icon{min-width:10px;height:14px;padding:0}.portal-suspension__who{display:grid;min-width:0;flex:1}.portal-suspension__who .muted{font-size:.8rem}.portal-suspension__left{color:var(--dk-danger-fg, #b91c1c);white-space:nowrap}.portal-suspended-badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:var(--dk-danger-bg, #fef2f2);color:var(--dk-danger-fg, #b91c1c);font-size:.72rem;font-weight:700;white-space:nowrap}.sort-th{display:inline-flex;align-items:center;gap:2px;padding:0;border:0;background:none;font:inherit;color:inherit;cursor:pointer;white-space:nowrap}.sort-th__icon{font-size:14px;opacity:.35}.sort-th--active{color:var(--dk-text, #0f172a)}.sort-th--active .sort-th__icon{opacity:1}.player-search{align-items:flex-end}.player-search__name{flex:1 1 200px}.player-search__name input{width:100%;font:inherit;padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.player-search__count{margin:0;font-size:.8rem}.player-list__club{display:block;font-size:.78rem}.app-loader{position:fixed;top:50%;left:50%;z-index:2000;display:grid;place-items:center;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;background:var(--dk-surface-2, #fff);border:1px solid var(--border, #e2e8f0);box-shadow:0 6px 20px #0f172a47;pointer-events:none;animation:app-loader-in .15s ease-out}.app-loader__spinner{width:24px;height:24px;border:3px solid var(--border, #e2e8f0);border-top-color:var(--primary, #2563eb);border-radius:50%;animation:app-loader-spin .7s linear infinite}@keyframes app-loader-spin{to{transform:rotate(360deg)}}@keyframes app-loader-in{0%{opacity:0;transform:scale(.8)}}@media(prefers-reduced-motion:reduce){.app-loader__spinner{animation-duration:1.6s}}.landing .landing__hero{position:relative;overflow:hidden;padding-bottom:0;border-radius:0 0 28px 28px;background:radial-gradient(600px 320px at 85% 10%,rgba(59,130,246,.45),transparent 70%),radial-gradient(420px 260px at 0% 100%,rgba(16,185,129,.28),transparent 70%),linear-gradient(160deg,#020617,#0f172a 45%,#1e3a8a)}.landing .landing__hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 70%);mask-image:linear-gradient(180deg,#000 0%,transparent 70%);pointer-events:none}.landing .landing__hero>*{position:relative;max-width:1080px}.landing__hero-grid{display:grid;gap:8px}.landing__badge{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:5px 12px;border-radius:999px;font-size:.75rem;font-weight:600;color:#bfdbfe;background:#3b82f629;border:1px solid rgba(147,197,253,.3)}.landing__badge .live-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 #22c55e99;animation:landing-pulse 1.8s infinite}@keyframes landing-pulse{70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.landing .landing__hero-text h1{margin-top:14px;font-size:clamp(2rem,7vw,3.2rem);font-weight:800}.landing__highlight{background:linear-gradient(90deg,#4ade80,#22d3ee);-webkit-background-clip:text;background-clip:text;color:transparent}.landing .landing__hero-text p{max-width:520px;margin-left:0;font-size:1.02rem}.landing__proof{display:flex;flex-wrap:wrap;gap:6px 16px;margin:16px 0 0;padding:0;list-style:none;font-size:.8rem;color:#fffc}.landing__proof li{display:inline-flex;align-items:center;gap:5px}.landing__proof .material-icons{font-size:16px;color:#4ade80}.landing__phones{position:relative;height:400px;margin-top:18px;overflow:hidden}.landing__phone{position:absolute;margin:0;width:210px;padding:7px;border-radius:34px;background:#0b1220;border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 60px #02061799,inset 0 0 0 2px #1e293b}.landing__phone:before{content:"";position:absolute;top:12px;left:50%;width:64px;height:18px;margin-left:-32px;border-radius:999px;background:#0b1220;z-index:1}.landing__phone img{display:block;width:100%;height:auto;border-radius:27px}.landing__phone--front{top:16px;left:50%;margin-left:-150px;z-index:2}.landing__phone--back{top:46px;left:50%;margin-left:-20px;transform:rotate(6deg);opacity:.92}@media(min-width:900px){.landing__hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:32px}.landing__hero-main{padding-bottom:40px}.landing__phones{height:560px;margin-top:32px}.landing__phone{width:250px}.landing__phone--front{margin-left:-190px}}.landing__feature{transition:transform .15s,box-shadow .15s}.landing__feature:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0f172a14}.landing__feature-icon--red{background:#fee2e2;color:#dc2626}.landing__feature-icon--blue{background:#dbeafe;color:#1d4ed8}.landing__feature-icon--green{background:#dcfce7;color:#15803d}.landing__feature-icon--amber{background:#fef3c7;color:#b45309}.landing__feature-icon--violet{background:#ede9fe;color:#6d28d9}.landing__feature-icon--cyan{background:#cffafe;color:#0e7490}:root[data-theme=dark] .landing__feature-icon--red{background:#dc26262e;color:#fca5a5}:root[data-theme=dark] .landing__feature-icon--blue{background:#2563eb33;color:#93c5fd}:root[data-theme=dark] .landing__feature-icon--green{background:#16a34a2e;color:#86efac}:root[data-theme=dark] .landing__feature-icon--amber{background:#d977062e;color:#fcd34d}:root[data-theme=dark] .landing__feature-icon--violet{background:#7c3aed33;color:#c4b5fd}:root[data-theme=dark] .landing__feature-icon--cyan{background:#0891b233;color:#67e8f9}.landing__organizers{padding:22px 18px;border-radius:22px;color:#fff;background:radial-gradient(360px 200px at 100% 0%,rgba(59,130,246,.5),transparent 70%),linear-gradient(150deg,#0f172a,#1e3a8a)}.landing__organizers .landing__title{margin-top:0;color:#fff}.landing__organizers .landing__steps li>span:last-child>span{color:#ffffffbf}.landing__organizers .landing__step-number{background:#22c55e;color:#052e16}.landing__cta{display:inline-flex;align-items:center;gap:6px;padding:12px 20px;border-radius:12px;font-weight:700;color:#0f172a;background:#fff;text-decoration:none}.landing__cta:hover{background:#e2e8f0}.landing__cta .material-icons{font-size:18px}.landing__lead{margin:-4px 4px 14px;color:var(--muted);line-height:1.5}.landing__cta--courts{margin:14px 4px 0;background:var(--home);color:#fff}.landing__cta--courts:hover{background:#1e40af}.landing__note{margin:10px 4px 0;font-size:.8rem;color:var(--muted)}.landing__organizers-note{margin:12px 0 0;font-size:.8rem;color:#ffffffb3}@media(prefers-reduced-motion:reduce){.landing__badge .live-dot{animation:none}}.landing__home-league{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;border-radius:12px;color:#fff;text-decoration:none;background:#22c55e29;border:1px solid rgba(74,222,128,.35);font-size:.9rem}.landing__home-league>span:nth-child(2){flex:1;min-width:0}.landing__home-league .material-icons{font-size:18px;color:#4ade80}.install-modal{max-width:380px;text-align:center}.install-modal__icon{display:block;margin:0 auto 8px;border-radius:16px;box-shadow:0 6px 18px #0f172a33}.install-modal h2{margin:0 0 6px;font-size:1.25rem}.install-modal>p{margin:0 0 12px;font-size:.9rem}.install-modal__perks,.install-modal__steps{display:grid;gap:8px;margin:0 0 14px;padding:0;list-style:none;text-align:left;font-size:.88rem}.install-modal__perks li{display:flex;align-items:center;gap:8px}.install-modal__perks .material-icons{font-size:20px;color:var(--dk-info-fg, #1d4ed8)}.install-modal__steps{counter-reset:step;padding:10px 12px;border-radius:12px;background:var(--dk-surface-2, #f1f5f9)}.install-modal__steps li{counter-increment:step}.install-modal__steps li:before{content:counter(step) ". ";font-weight:700}.install-modal__steps .material-icons{font-size:18px;vertical-align:-4px}.install-modal__never{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:14px;font-size:.85rem;color:var(--muted)}.install-modal__never input{width:18px;height:18px}.install-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.install-modal__actions .btn{justify-content:center}.install-modal__actions .btn:only-child{grid-column:1/-1}.install-modal__actions .material-icons{font-size:18px}.home__app-bar{display:flex;align-items:center;gap:10px}.home__back{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:#fff;background:#ffffff1f;text-decoration:none}.home-league__pin--current{color:#15803d;cursor:default}.home-league__pin--current:hover{background:transparent}:root[data-theme=dark] .home-league__pin--current{color:#4ade80}.global-search{position:fixed;inset:0;z-index:1200;display:flex;flex-direction:column;background:var(--bg);animation:global-search-in .15s ease-out}@keyframes global-search-in{0%{opacity:0;transform:translateY(8px)}}.global-search__bar{display:flex;align-items:center;gap:6px;padding:calc(8px + env(safe-area-inset-top)) 8px 8px;background:#0f172a}.global-search__input{flex:1;min-width:0;padding:11px 14px;border:0;border-radius:12px;font:inherit;font-size:1rem;color:var(--text);background:var(--dk-surface-2, #fff)}.global-search__close{flex:none;width:40px;height:40px;border:0;border-radius:50%;color:#fff;background:transparent;cursor:pointer}.global-search__body{flex:1;overflow-y:auto;padding:8px 16px calc(24px + env(safe-area-inset-bottom))}.global-search__group{margin:14px 4px 6px;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.global-search__list{margin:0;padding:0;list-style:none;border-radius:14px;overflow:hidden;background:var(--surface);border:1px solid var(--border)}.global-search__list li+li{border-top:1px solid var(--border)}.global-search__item{display:grid;gap:2px;width:100%;padding:11px 14px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.global-search__item:active{background:var(--dk-surface-2, #f1f5f9)}.global-search__title{font-weight:600}.global-search__item .muted{font-size:.82rem}.global-search__hint{margin:4px 0 8px;font-size:.85rem}.global-search__empty{margin:24px 0;text-align:center}.tennis-header__logo{font-size:1.9rem;background:#ecfccb}.tennis-info__facts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:.9rem}.tennis-info__facts>span:not(.tier-badge){display:inline-flex;align-items:center;gap:4px}.tennis-info__facts .material-icons{font-size:18px;color:var(--muted)}.tennis-info__description{margin:12px 0 0;white-space:pre-line;line-height:1.5}.tennis-info__register{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding:12px;border-radius:12px;background:var(--dk-success-bg, #dcfce7)}.tennis-categories,.tennis-entries{margin:0;padding:0;list-style:none}.tennis-categories li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0}.tennis-categories li+li,.tennis-entries li+li{border-top:1px solid var(--border)}.tennis-categories li>span:first-child{display:grid;gap:2px;min-width:0}.tennis-categories li .muted{font-size:.82rem}.tennis-categories__meta{display:flex;flex:none;align-items:center;gap:8px;font-size:.85rem}.tennis-entries__status{margin:12px 0 4px;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.tennis-entries{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));column-gap:24px}.tennis-entries li{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:baseline;margin:0;padding:7px 0;border-bottom:1px solid var(--border)}.tennis-entries li+li{border-top:0}.tennis-entries__seed{font-weight:700;font-size:.82rem;color:var(--dk-info-fg, #1d4ed8)}.tennis-entries__names .muted{display:block;font-size:.8rem}.tennis-header__kicker{display:block;font-size:.9rem;font-weight:500;color:#ffffffd9}.tennis-header__main{grid-area:season;min-width:0}.portal-header .tennis-header__main h1{margin:0;font-size:1.5rem;font-weight:800;line-height:1.15;color:#fff;white-space:normal}.tennis-header__subtitle{display:block;margin-top:2px;font-size:.82rem;color:#ffffffb3}@media(min-width:721px)and (not ((max-height:500px)and (pointer:coarse))){.tennis-header__main{flex:1;display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 12px}.portal-header .tennis-header__main h1{font-size:1.15rem}.tennis-header__kicker:after{content:" \b7"}.portal-header__inner:has(.tennis-header__main) .portal-header__title{flex:none}}.tennis-schedule__court{margin:14px 0 4px;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--dk-info-fg, #1d4ed8)}.tennis-schedule{margin:0;padding:0;list-style:none}.tennis-schedule li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--border)}.tennis-schedule__time{font-weight:700;font-variant-numeric:tabular-nums}.tennis-schedule__players{display:grid;gap:1px;min-width:0}.tennis-schedule__winner{font-weight:700}.tennis-schedule__meta{font-size:.78rem}.tennis-schedule__score{font-size:.85rem;font-variant-numeric:tabular-nums;white-space:nowrap}.tennis-filters{display:grid;gap:10px;margin-bottom:12px}.tennis-filters__row{display:flex;align-items:center;gap:8px}.day-picker{display:flex;align-items:center;flex:1;min-width:0;max-width:340px;height:40px;border-radius:999px;background:var(--text);color:var(--bg);box-shadow:0 2px 8px #0f172a1f}.day-picker--off{background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:none}.day-picker__step{flex:none;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.day-picker__step:disabled{opacity:.3;cursor:default}.day-picker__date{position:relative;flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:6px;height:100%;font-weight:700;font-size:.9rem;white-space:nowrap;cursor:pointer}.day-picker__date .material-icons{font-size:18px;opacity:.8}.day-picker__date span:not(.material-icons){overflow:hidden;text-overflow:ellipsis}.portal .day-picker__date input{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:0;padding:0;cursor:pointer}.filter-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 -16px 12px;padding:2px 16px}.tennis-filters .filter-chips{margin-bottom:0}.filter-chips::-webkit-scrollbar{display:none}.filter-chip{flex:none;height:36px;padding:0 16px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font:inherit;font-size:.88rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.filter-chip:hover{border-color:var(--dk-border-strong, #cbd5e1)}.filter-chip--on,.filter-chip--on:hover{border-color:var(--text);background:var(--text);color:var(--bg)}.filter-icon{flex:none;display:grid;place-items:center;width:40px;height:40px;margin-left:auto;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text);text-decoration:none}.filter-icon .material-icons{font-size:20px}@media(min-width:721px){.filter-chips{flex-wrap:wrap;margin:0 0 12px;padding:0}}.live-page,.recorder-page{--report-rule: var(--border)}:is(.live-page,.recorder-page) .page__header h1{font-family:var(--news-serif);font-optical-sizing:auto;font-size:clamp(1.4rem,1.1rem + 1.4vw,2.1rem);font-weight:700;line-height:1.15;letter-spacing:-.01em;margin:2px 0 4px;text-wrap:balance}.live-page .page__header h1 .club-link{color:inherit;text-decoration:none}.live-page .page__header h1 .club-link:hover{text-decoration:underline;text-underline-offset:4px}.live-page__back,.live-page__kicker,.recorder-page .live-page__kicker{display:inline-flex;align-items:center;gap:4px;margin:0;padding:0;border:0;background:none;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dk-info-fg, #1d4ed8);text-decoration:none}.live-page__back .material-icons{font-size:16px}.live-page .page__header--live p.muted{font-size:.88rem}.live-page .live-cup{border-radius:8px}.live-page .scoreboard--live{gap:0;padding:22px 16px 18px;background:var(--surface);border:1px solid var(--report-rule);border-radius:16px;align-items:start}.live-page .scoreboard--live .live-team{background:none;border:0;border-radius:0;padding:0 8px;gap:6px;align-content:start}.live-page .scoreboard--live h2{font-family:var(--news-serif);font-size:1.15rem;font-weight:700;line-height:1.2;margin:0}.live-page .scoreboard--live h2 .club-link{color:inherit;text-decoration:none}.live-page .scoreboard--live .team__score{font-family:var(--news-serif);font-size:3.6rem;font-weight:700;color:var(--text)}.live-page .scorer{font-size:.85rem;line-height:1.35;color:var(--muted)}.live-page .fouls-panel{margin-top:4px;padding-top:6px;border-top:1px solid var(--report-rule)}.live-page .fouls{font-size:.8rem;color:var(--muted)}.live-page .scoreboard--live .clock{background:none;color:var(--text);padding:4px 12px;gap:2px;border-left:1px solid var(--report-rule);border-right:1px solid var(--report-rule);border-radius:0}.live-page .scoreboard--live .clock__period{font-size:.7rem;font-weight:700;letter-spacing:.08em;opacity:1;color:var(--muted)}.live-page .scoreboard--live .clock__time{font-size:2rem;font-weight:700}.live-page .scoreboard--live .clock--running .clock__time{color:var(--dk-danger-fg, #dc2626)}.report-status{display:grid;justify-items:center;align-content:center;gap:6px;padding:18px 14px 0;text-align:center}.report-status__label{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border:1px solid var(--text);border-radius:4px;white-space:nowrap}.report-status__half{font-size:.78rem;color:var(--muted);white-space:nowrap}:is(.live-page,.recorder-page) :is(.timeline,.comments,.lineups,.name-gate--inline,.lineup) h3{margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid var(--text);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}:is(.live-page,.recorder-page){--tl-time: 72px;--tl-rail: 88px}:is(.live-page,.recorder-page) .timeline__list{position:relative;gap:0;padding:4px 0}:is(.live-page,.recorder-page) .timeline__list:before{content:"";position:absolute;top:10px;bottom:10px;left:var(--tl-rail);width:2px;transform:translate(-50%);background:var(--report-rule)}:is(.live-page,.recorder-page) .event{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-height:44px;padding:10px 4px 14px calc(var(--tl-rail) + 20px);border:0;border-radius:0;background:none}:is(.live-page,.recorder-page) .event--accumulated{background:none}:is(.live-page,.recorder-page) .event:before{content:"";position:absolute;left:var(--tl-rail);top:15px;width:9px;height:9px;border-radius:50%;transform:translate(-50%);background:var(--surface);border:2px solid var(--dk-border-strong, #94a3b8);box-sizing:border-box}:is(.live-page,.recorder-page) .event:has(.event__type--Goal):before,:is(.live-page,.recorder-page) .event:has(.event__type--OwnGoal):before{top:12px;width:15px;height:15px;border:3px solid var(--surface);background:var(--text);box-shadow:0 0 0 1px var(--text)}:is(.live-page,.recorder-page) .event:has(.event__type--RedCard):before,:is(.live-page,.recorder-page) .event:has(.event__type--YellowCard):before{top:11px;width:11px;height:15px;border-radius:2px;border:0;background:var(--yellow);box-shadow:0 0 0 3px var(--surface)}:is(.live-page,.recorder-page) .event:has(.event__type--RedCard):before{background:var(--red)}:is(.live-page,.recorder-page) .event:has(.event__type--PenaltyMissed):before,:is(.live-page,.recorder-page) .event:has(.event__type--AccumulatedKickMissed):before{width:13px;height:13px;top:13px;border-color:var(--dk-danger-fg, #b91c1c)}:is(.live-page,.recorder-page) .event:has(.event__type--PeriodEnded):before{width:13px;height:13px;top:13px;border-radius:3px;border-color:var(--text)}:is(.live-page,.recorder-page) .event__time{position:absolute;left:0;top:11px;width:var(--tl-time);min-width:0;text-align:right;font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted)}:is(.live-page,.recorder-page) .event__type{font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}:is(.live-page,.recorder-page) .event__type--Goal,:is(.live-page,.recorder-page) .event__type--OwnGoal{color:var(--text)}:is(.live-page,.recorder-page) .event__type--PenaltyMissed,:is(.live-page,.recorder-page) .event__type--AccumulatedKickMissed{color:var(--dk-danger-fg, #b91c1c)}:is(.live-page,.recorder-page) .event__who{flex-basis:100%;order:2;font-size:.98rem;line-height:1.35}:is(.live-page,.recorder-page) .event:has(.event__type--Goal) .event__who,:is(.live-page,.recorder-page) .event:has(.event__type--OwnGoal) .event__who{font-family:var(--news-serif);font-size:1.08rem;font-weight:600}:is(.live-page,.recorder-page) .event__team{font-weight:700;margin-right:6px}:is(.live-page,.recorder-page) .event__badge,:is(.live-page,.recorder-page) .event__wall{order:1}:is(.live-page,.recorder-page) .event__badge{background:none;color:var(--muted);border:1px solid var(--report-rule);border-radius:4px;font-size:.68rem;padding:0 5px}:is(.live-page,.recorder-page) .event__wall{margin-left:auto;font-size:.72rem;color:var(--muted)}:is(.live-page,.recorder-page) .event--clock{min-height:0;padding-bottom:10px}@media(max-width:599px){:is(.live-page,.recorder-page){--tl-time: 46px;--tl-rail: 60px}:is(.live-page,.recorder-page) .event{padding-left:calc(var(--tl-rail) + 16px)}:is(.live-page,.recorder-page) .event__time{top:8px;font-size:.72rem;line-height:1.25;white-space:normal}}.live-page .lineups__title{grid-column:1/-1}.live-page .lineup h3{font-family:var(--news-serif);font-size:1.05rem;letter-spacing:0;text-transform:none;border-bottom-width:1px}.live-page .lineup__list{gap:0}.live-page .lineup__player,.live-page .lineup__player--present{min-height:0;padding:7px 2px;border:0;border-bottom:1px solid var(--report-rule);border-radius:0;background:none}.live-page .lineup__player:last-child{border-bottom:0}.live-page .lineup__number{min-width:2.5ch;color:var(--muted);font-variant-numeric:tabular-nums}@media(max-width:759px){.live-page .scoreboard--live{padding:14px 8px 12px}.live-page .scoreboard--live .clock,.live-page .scoreboard--live>.report-status{grid-area:clock;border:0;border-bottom:1px solid var(--report-rule);padding:0 0 10px;margin-bottom:10px}.live-page .scoreboard--live .live-team{padding:0 6px;border:0}.live-page .scoreboard--live .live-team--away{border-left:1px solid var(--report-rule)}.live-page .scoreboard--live h2{font-size:1.05rem;min-height:0}.live-page .scoreboard--live .team__score{font-size:2.9rem}.live-page .report-status{grid-template-columns:auto auto;justify-content:center;align-items:center;gap:10px}}.player-link{color:inherit;text-decoration:none}.player-link:hover,.player-link:focus-visible{color:var(--dk-info-fg, #1d4ed8);text-decoration:underline;text-underline-offset:3px}.site-footer{margin-top:32px;padding:32px 24px 22px;background:#0f172a;color:#94a3b8;font-size:.85rem}.site-footer__inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 40px}.site-footer__brand p{margin:3px 0 0}.site-footer__logo{font-family:var(--news-serif);font-size:1.2rem;font-weight:700;color:#fff;text-decoration:none}.site-footer__links{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 22px}.site-footer a:not(.site-footer__logo){color:#e2e8f0;font-weight:600;text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}.site-footer__copy{max-width:1100px;margin:20px auto 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:.78rem;color:#64748b}@media(min-width:721px){app-root{display:flex;flex-direction:column;min-height:100dvh}app-site-footer{display:block;margin-top:auto}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.site-footer{display:none}}@media(min-width:721px){.landing__footer{display:none}}.legal-page{max-width:820px}.legal-page__back{display:inline-flex;align-items:center;gap:4px;margin-bottom:10px;font-size:.85rem;font-weight:600;color:var(--dk-info-fg, #1d4ed8);text-decoration:none}.legal-page__back .material-icons{font-size:18px}.legal-article{padding:32px 40px;line-height:1.65}@media(max-width:599px){.legal-article{padding:20px 16px}}.legal-article__kicker{margin:0 0 6px;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dk-info-fg, #1d4ed8)}.legal-article h1{font-family:var(--news-serif);font-size:clamp(1.8rem,1.4rem + 1.5vw,2.4rem);line-height:1.15;margin:0 0 12px}.legal-article__lead{font-family:var(--news-serif);font-size:1.12rem;color:var(--dk-muted, #475569)}.legal-article h2{font-family:var(--news-serif);font-size:1.3rem;margin:1.8em 0 .5em}.legal-article h3{font-size:.95rem;margin:1.2em 0 .4em}.legal-article ul{padding-left:1.3em}.legal-article li{margin-bottom:.5em}.legal-article a{color:var(--dk-info-fg, #1d4ed8)}.app-sidebar__item--separated{position:relative;margin-top:14px}.app-sidebar__item--separated:before{content:"";position:absolute;left:12px;right:12px;top:-8px;border-top:1px solid var(--border)}.recorder-page .step__title{font-family:var(--news-serif);font-size:1.35rem}.recorder-page .recorder{font-size:.85rem}.recorder-page .card__toggle{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.recorder-page .card__toggle-icon{font-size:.7rem;color:var(--muted)}.recorder-page .team{background:var(--surface);border:1px solid var(--report-rule);border-radius:16px;padding:16px 12px}.recorder-page .team__name{font-family:var(--news-serif);font-size:1.15rem;font-weight:700;line-height:1.2}.recorder-page .team__score{font-family:var(--news-serif);font-size:3.4rem;font-weight:700;color:var(--text)}.recorder-page .fouls-panel{padding-top:6px;border-top:1px solid var(--report-rule)}.recorder-page .fouls-panel__title{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.recorder-page .actions .btn--goal{background:var(--text);color:var(--surface)}.recorder-page .actions .btn--foul{background:var(--surface);color:var(--text);border:1px solid var(--dk-border-strong, #94a3b8)}.recorder-page .clock{background:var(--surface);color:var(--text);border:1px solid var(--report-rule);border-radius:16px}.recorder-page .clock__period{font-size:.72rem;font-weight:800;letter-spacing:.1em;opacity:1;color:var(--muted)}.recorder-page .clock__time{font-weight:700}.recorder-page .clock--running .clock__time{color:var(--dk-danger-fg, #dc2626)}.recorder-page .clock .btn--ghost{color:var(--text);border-color:var(--dk-border-strong, #94a3b8)}.recorder-page .lineup h3{font-family:var(--news-serif);font-size:1.05rem;letter-spacing:0;text-transform:none;border-bottom-width:1px;margin:0}.recorder-page .lineup__header{align-items:baseline}.recorder-page .lineup__list{gap:0}.recorder-page .lineup__player{min-height:46px;padding:6px 2px;border:0;border-bottom:1px solid var(--report-rule);border-radius:0;background:none;color:var(--muted);cursor:pointer}.recorder-page .lineup__player--present{background:none;color:var(--text);font-weight:600}.recorder-page .lineup__player input{accent-color:var(--text)}.recorder-page .lineup__number{min-width:2.5ch;color:var(--muted);font-variant-numeric:tabular-nums}.recorder-page .event__undo{order:1;margin-left:4px}.recorder-page .event--pending{opacity:.55}:is(.live-page,.recorder-page) .team-form__title{padding-bottom:8px;border-bottom:2px solid var(--text);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;text-align:left}.adm-menu-item--danger,.adm-menu-item--danger .mat-icon{color:#b91c1c!important}.player-profile__title{margin:0 0 8px;padding-bottom:8px;border-bottom:2px solid var(--text);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.player-profile p{margin:0 0 .8em;font-family:var(--news-serif);font-size:1.08rem;line-height:1.65}.player-profile .player-profile__note{margin:0;font-family:inherit;font-size:.75rem;color:var(--muted)}.adm-ai-profile{padding:10px 14px;border-left:3px solid #7c3aed;background:var(--dk-surface-2, #f8f7ff);border-radius:0 8px 8px 0}.adm-ai-profile p{margin:0 0 .6em;line-height:1.55}.adm-ai-profile p:last-child{margin-bottom:0}.adm-ai-profile--hidden{opacity:.55}:root{--pred-home: #2563eb;--pred-draw: #94a3b8;--pred-away: #f97316}.match-row__odds{display:grid;gap:3px;margin-top:2px;font-size:.72rem;color:var(--muted)}.match-row__odds strong{color:var(--text)}.match-row__odds-bar,.match-prediction__bar{display:flex;height:4px;border-radius:999px;overflow:hidden;background:var(--border);max-width:220px}.match-row__odds-home,.match-prediction__home{background:var(--pred-home)}.match-row__odds-draw,.match-prediction__draw{background:var(--pred-draw)}.match-row__odds-away,.match-prediction__away{background:var(--pred-away)}.match-prediction{display:grid;gap:10px}.match-prediction h3{margin:0;padding-bottom:8px;border-bottom:2px solid var(--text);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.match-prediction__bar{height:10px;max-width:none}.match-prediction__labels{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;font-size:.85rem}.match-prediction__labels span:nth-child(2){text-align:center;color:var(--muted)}.match-prediction__labels span:nth-child(3){text-align:right}.match-prediction__labels strong{font-size:1.15rem;margin-right:4px}.match-prediction__labels span:first-child strong{color:var(--pred-home)}.match-prediction__labels span:nth-child(3) strong{color:var(--pred-away)}.match-prediction__score,.match-prediction__note{margin:0;font-size:.85rem}.match-prediction__factors{margin:0;padding-left:1.1em;font-size:.82rem;color:var(--muted)}.match-prediction__note{font-size:.75rem;color:var(--muted)}@media(max-width:759px){.live-page,.recorder-page,.legal-page{padding-top:calc(10px + env(safe-area-inset-top))}}@supports (-webkit-touch-callout: none){@media(display-mode:standalone){.live-page,.recorder-page,.legal-page{padding-top:calc(10px + max(env(safe-area-inset-top),50px))}}}.prognozer-page{max-width:640px}.prognozer-hero{display:grid;gap:10px}.prognozer-hero h2{margin:0;font-family:var(--news-serif);font-size:1.7rem}.prognozer-hero p{margin:0;line-height:1.55}.prognozer-hero__kicker{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dk-info-fg, #1d4ed8)}.prognozer-hero__actions,.prognozer-account__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.prognozer-account{display:grid;gap:14px}.prognozer-account h3{margin:0}.prognozer-account .muted{margin:-8px 0 0}.prognozer-form{display:grid;gap:12px}.prognozer-form--auth{padding:22px}.prognozer-form__note{margin:0;font-size:.85rem}.prognozer-check{display:flex;gap:10px;align-items:flex-start;font-size:.92rem;line-height:1.4}.prognozer-check input{width:20px;height:20px;margin-top:1px;flex:none}.field__hint{font-size:.8rem;color:var(--muted)}.field__hint--error{color:var(--dk-danger-fg, #b91c1c)}.btn--danger-link{background:none;border:0;color:var(--dk-danger-fg, #b91c1c);font-weight:600;cursor:pointer}.prognozer-game{display:grid;gap:14px}.prognozer-me{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center}.prognozer-me__name{font-size:1.15rem}.prognozer-me__stat{display:grid;justify-items:center}.prognozer-me__stat strong{font-size:1.6rem;line-height:1;font-variant-numeric:tabular-nums}.prognozer-me__stat span{font-size:.75rem;color:var(--muted)}.prognozer-login p{margin:0 0 8px}.prognozer-rounds{display:flex;align-items:center;justify-content:space-between}.prognozer-hint{margin:0;font-size:.82rem}.prognozer-match{display:grid;gap:12px}.prognozer-match--void{opacity:.6}.prognozer-match__head{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--muted);text-transform:capitalize}.prognozer-badge{font-size:.72rem;background:var(--bg);color:var(--muted);text-transform:none}.prognozer-badge--live{font-size:.72rem;background:#dc2626}.prognozer-match__teams{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;font-weight:600}.prognozer-match__team--away{text-align:right}.prognozer-match__score{font-size:1.3rem;font-variant-numeric:tabular-nums}.prognozer-match__vs{color:var(--muted)}.prognozer-tip{display:grid;gap:10px}.prognozer-tip__outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.prognozer-tip__outcome{padding:10px 0;border:1px solid var(--dk-border-strong, #cbd5e1);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-weight:700;cursor:pointer}.prognozer-tip__outcome--on{background:var(--dk-ink, var(--text));border-color:var(--dk-ink, var(--text));color:#fff}.prognozer-tip__score{display:flex;justify-content:center;align-items:flex-start;gap:12px}.prognozer-tip__colon{height:64px;display:grid;place-items:center;font-size:2rem;font-weight:800;color:var(--muted)}.prognozer-goal{display:grid;justify-items:center;gap:8px}.prognozer-goal__value{display:grid;place-items:center;width:64px;height:64px;border-radius:12px;background:#0f172a;color:#fff;font-size:2.4rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;border:1px solid var(--dk-border-strong, #0f172a);box-shadow:inset 0 -3px #ffffff14}.prognozer-goal__buttons{display:inline-flex;border:1px solid var(--dk-border-strong, #cbd5e1);border-radius:10px;overflow:hidden}.prognozer-goal__buttons button{width:40px;height:36px;border:0;background:var(--bg);color:var(--text);font-size:1.25rem;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}.prognozer-goal__buttons button+button{border-left:1px solid var(--dk-border-strong, #cbd5e1)}.prognozer-goal__buttons button:active{background:var(--border)}.prognozer-tip__advance{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.85rem}.prognozer-tip__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center}.prognozer-tip__saved{margin:0;font-size:.8rem;color:var(--dk-success-fg, #15803d);text-align:right}.prognozer-joker{margin-right:auto;padding:6px 12px;border:1px solid var(--dk-border-strong, #cbd5e1);border-radius:999px;background:none;color:var(--muted);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.prognozer-joker--on{border-color:#f59e0b;background:#fef3c7;color:#92400e}.prognozer-joker--static{margin-left:4px;padding:0 6px;cursor:default}.prognozer-result{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:baseline;font-size:.9rem}.prognozer-points{display:inline-flex;gap:6px;align-items:baseline;color:var(--dk-success-fg, #15803d)}.prognozer-points--zero,.prognozer-points small{color:var(--muted)}.prognozer-dist{display:grid;gap:4px}.prognozer-dist__bar{display:flex;height:6px;border-radius:999px;overflow:hidden;background:var(--bg)}.prognozer-dist__home{background:#2563eb}.prognozer-dist__draw{background:#94a3b8}.prognozer-dist__away{background:#f97316}.prognozer-board__me td{background:#fef3c7;font-weight:600}.prognozer-board__model td{font-style:italic;color:var(--muted)}.prognozer-board .material-icons{font-size:15px;vertical-align:-2px}.prognozer-mini{display:grid;gap:12px}.prognozer-mini__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:center}.prognozer-mini__row>div:first-child{display:grid}.prognozer-mini__actions{display:flex;gap:6px;align-items:center}.prognozer-code{text-transform:uppercase;letter-spacing:.2em;font-family:ui-monospace,monospace}.prognozer-leagues{display:grid;gap:8px}.prognozer-leagues a{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:12px;background:var(--bg);color:var(--text);text-decoration:none;font-weight:600}.prognozer-leagues a span{font-weight:400;font-size:.85rem;color:var(--muted)}.prognozer-reminders{grid-column:1/-1;display:inline-flex;align-items:center;gap:8px;justify-self:start;padding:7px 12px;border:1px solid var(--dk-border-strong, #cbd5e1);border-radius:999px;background:none;color:var(--muted);font:inherit;font-size:.82rem;cursor:pointer}.prognozer-reminders .material-icons{font-size:18px}.prognozer-reminders--on{border-color:var(--dk-success-fg, #15803d);color:var(--dk-success-fg, #15803d)}.similar-players{padding:10px 12px;border-radius:8px;background:#fef3c7;color:#78350f;font-size:.875rem}.similar-players ul{margin:6px 0;padding-left:18px}.player-import{display:grid;gap:12px;min-width:min(760px,86vw)}.player-import__help{margin:0;padding-left:18px;line-height:1.6}.player-import__counts{display:flex;flex-wrap:wrap;gap:6px}.player-import__table{max-height:52vh;overflow:auto}.player-import__row--error td{background:#fef2f2}.player-import__error{color:#b91c1c;font-size:.8rem}.player-import__warning{color:#92400e;font-size:.8rem}.player-import__choice{display:block;max-width:360px;margin-top:4px;font-size:.85rem}.player-import__pill--Create{background:#dcfce7;color:#166534}.player-import__pill--RegisterExisting{background:#dbeafe;color:#1e40af}.player-import__pill--AlreadyRegistered{background:#f1f5f9;color:#475569}.player-import__pill--Error{background:#fee2e2;color:#991b1b}.player-import__summary{display:flex;align-items:center;gap:8px;font-weight:600}.player-import__summary mat-icon{color:#16a34a}.player-import__issues{margin:0;padding-left:18px;font-size:.875rem}.prognozer-board__row{cursor:pointer}.prognozer-board__name{padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px}.prognozer-participant{display:grid;gap:8px}.prognozer-participant>.btn{justify-self:start}.prognozer-participant__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;font-size:1.05rem}.prognozer-legend{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.prognozer-legend li{padding:2px 10px;border-radius:999px;border-left:0;font-size:.75rem}.prognozer-ptip{display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(84px,auto);gap:12px;align-items:center;padding:10px 12px;border-radius:12px;border-left:5px solid var(--tip-edge, #cbd5e1);background:var(--tip-bg, var(--surface))}.prognozer-ptip>div{display:grid;gap:2px}.prognozer-ptip__match span{font-weight:600;overflow-wrap:anywhere}.prognozer-ptip__tip,.prognozer-ptip__result{justify-items:center;font-variant-numeric:tabular-nums}.prognozer-ptip__points{justify-items:end;text-align:right}.prognozer-ptip__points strong{font-size:1.15rem}.tip--exact{--tip-edge: #15803d;--tip-bg: #dcfce7;background:var(--tip-bg);color:#14532d}.tip--diff{--tip-edge: #65a30d;--tip-bg: #ecfccb;background:var(--tip-bg);color:#365314}.tip--outcome{--tip-edge: #d97706;--tip-bg: #fef3c7;background:var(--tip-bg);color:#78350f}.tip--miss{--tip-edge: #dc2626;--tip-bg: #fee2e2;background:var(--tip-bg);color:#7f1d1d}.tip--pending,.tip--void{--tip-edge: #cbd5e1;--tip-bg: var(--bg);background:var(--tip-bg);color:var(--text)}.prognozer-ptip .muted{color:inherit;opacity:.7}@media(max-width:520px){.prognozer-ptip{grid-template-columns:minmax(0,1fr) auto auto}.prognozer-ptip__points{grid-column:1/-1;grid-auto-flow:column;justify-content:start;align-items:baseline;gap:8px;text-align:left}}.stats{--stats-bar: var(--mat-sys-primary, #2563eb)}.stats__tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.stats__tile{display:grid;gap:4px;padding:12px 14px;border-radius:12px;background:var(--mat-sys-surface-container, #f1f5f9)}.stats__tile span{font-size:.8rem;color:var(--mat-sys-on-surface-variant, #64748b)}.stats__tile strong{font-size:1.6rem;font-variant-numeric:tabular-nums;line-height:1.1}.stats-chart{display:grid;grid-template-columns:auto 1fr;grid-template-rows:180px auto;column-gap:8px}.stats-chart__axis{display:flex;flex-direction:column;justify-content:space-between;font-size:.72rem;color:var(--mat-sys-on-surface-variant, #64748b);text-align:right;font-variant-numeric:tabular-nums}.stats-chart__bars{display:grid;grid-template-columns:repeat(var(--bars),minmax(0,1fr));gap:2px;align-items:end;border-bottom:1px solid var(--mat-sys-outline-variant, #cbd5e1);background:linear-gradient(to top,transparent calc(50% - .5px),var(--mat-sys-outline-variant, #e2e8f0) calc(50% - .5px),var(--mat-sys-outline-variant, #e2e8f0) calc(50% + .5px),transparent calc(50% + .5px))}.stats-chart__slot{position:relative;height:100%;display:flex;align-items:flex-end;outline:none;cursor:default}.stats-chart__slot:hover,.stats-chart__slot:focus-visible{background:color-mix(in srgb,var(--stats-bar) 8%,transparent)}.stats-chart__bar{width:100%;max-width:28px;margin:0 auto;border-radius:4px 4px 0 0;background:var(--stats-bar)}.stats-chart__tip{position:absolute;bottom:calc(100% + 6px);left:0;z-index:2;display:grid;gap:2px;padding:6px 10px;border-radius:8px;background:var(--mat-sys-inverse-surface, #0f172a);color:var(--mat-sys-inverse-on-surface, #fff);font-size:.78rem;white-space:nowrap;box-shadow:0 4px 12px #0f172a33;pointer-events:none}.stats-chart__tip--end{left:auto;right:0}.stats-chart__dates{grid-column:2;display:flex;justify-content:space-between;padding-top:4px;font-size:.72rem;color:var(--mat-sys-on-surface-variant, #64748b)}.stats__lists{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px 24px}.stats-list ol{display:grid;gap:6px;margin:0;padding:0;list-style:none}.stats-list li{display:grid;grid-template-columns:1fr auto;gap:2px 8px;font-size:.875rem}.stats-list__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-list__value{font-variant-numeric:tabular-nums;font-weight:600}.stats-list__value small{font-weight:400;color:var(--mat-sys-on-surface-variant, #64748b)}.stats-list__bar{grid-column:1/-1;height:4px;border-radius:4px;background:var(--stats-bar);opacity:.55}.stats__note{font-size:.8rem}.standings__form{white-space:nowrap}.menu__item--chance{background:#ecfeff;border-color:#67e8f9;color:#155e75}.event__type--BigChance{color:#0e7490}.team__chances{margin:4px 0 0;font-size:.8rem;color:var(--muted)}.momentum{--momentum-home: #2563eb;--momentum-away: #ea580c;display:grid;gap:8px}:root[data-theme=dark] .momentum{--momentum-home: #3b82f6}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .momentum{--momentum-home: #3b82f6}}.momentum__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px}.momentum__head h3{margin:0}.momentum__legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0;padding:0;list-style:none;font-size:.8rem;color:var(--text)}.momentum__legend-item:before{content:"";display:inline-block;width:10px;height:10px;margin-right:6px;border-radius:3px;vertical-align:-1px}.momentum__legend-item--home:before{background:var(--momentum-home)}.momentum__legend-item--away:before{background:var(--momentum-away)}app-match-momentum{display:block;min-width:0}.momentum,.momentum__plot{min-width:0}.momentum__plot{position:relative}.momentum__plot svg{display:block;width:100%;max-width:100%;min-width:0;height:168px;overflow:visible}.momentum__axis{stroke:var(--border);stroke-width:1}.momentum__half{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 4;vector-effect:non-scaling-stroke}.momentum__bar--home{fill:var(--momentum-home)}.momentum__bar--away{fill:var(--momentum-away)}.momentum__marker{position:absolute;z-index:1;box-sizing:border-box;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.momentum__marker--home{top:12px}.momentum__marker--away{top:calc(100% - 12px)}.momentum__marker--goal{width:13px;height:13px;background:var(--momentum-side);box-shadow:0 0 0 2px var(--surface)}.momentum__marker--chance{width:10px;height:10px;border:2.5px solid var(--momentum-side-light);background:#fff}.momentum__marker--red{width:7px;height:10px;border-radius:2px;background:#dc2626;box-shadow:0 0 0 2px var(--surface)}.momentum__marker--home{--momentum-side: var(--momentum-home);--momentum-side-light: #93c5fd}.momentum__marker--away{--momentum-side: var(--momentum-away);--momentum-side-light: #fdba74}.momentum__hits{position:absolute;inset:0;display:grid}.momentum__hit{outline:none}.momentum__hit:hover,.momentum__hit:focus-visible{background:color-mix(in srgb,var(--text) 6%,transparent)}.momentum__tip{position:absolute;top:0;z-index:3;display:grid;gap:2px;min-width:140px;padding:6px 10px;border-radius:8px;background:var(--text);color:var(--surface);font-size:.78rem;white-space:nowrap;transform:translate(-10%,-105%);pointer-events:none;box-shadow:0 4px 12px #0f172a33}.momentum__tip--end{transform:translate(-90%,-105%)}.momentum__tip-muted{opacity:.7}.momentum__scale{position:relative;display:flex;justify-content:space-between;font-size:.72rem;color:var(--muted)}.momentum__scale-half{position:absolute;transform:translate(-50%)}.momentum__note{margin:0;font-size:.75rem;color:var(--muted)}.managers{display:grid;gap:4px;margin:0;padding:0;list-style:none}.managers__row{display:flex;align-items:center;gap:12px;padding:8px 4px;border-bottom:1px solid var(--mat-sys-outline-variant, #e2e8f0)}.managers__who{display:grid;flex:1;min-width:0}.managers__who .muted{font-size:.85rem;overflow-wrap:anywhere}.managers__add .form-row{align-items:center}.news-stats__numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center}.news-stats__numbers div{display:grid}.news-stats__numbers strong{font-size:1.4rem;font-variant-numeric:tabular-nums}.news-stats__numbers span{font-size:.75rem;color:var(--mat-sys-on-surface-variant, #64748b)}.news-stats__bars{display:flex;align-items:flex-end;gap:2px;height:64px;margin-top:10px;border-bottom:1px solid var(--mat-sys-outline-variant, #cbd5e1)}.news-stats__bar{flex:1;min-width:0;border-radius:3px 3px 0 0;background:var(--stats-bar)}.stats-scope{margin:12px 0 0;font-size:.85rem}.sub-tabs{margin-top:12px}.sub-tabs>.mat-mdc-tab-header{border-bottom:0;margin-bottom:4px}.sub-tabs .mat-mdc-tab-labels{gap:8px}.sub-tabs .mdc-tab-indicator{display:none}.sub-tabs .mat-mdc-tab.mdc-tab{flex-grow:0;min-width:0;height:38px;padding:0 16px;border-radius:999px;background:var(--adm-surface);border:1px solid var(--adm-border);transition:background-color .12s,border-color .12s}.sub-tabs .mat-mdc-tab .mdc-tab__text-label{display:inline-flex;align-items:center;gap:6px;color:var(--adm-muted);font-weight:600;letter-spacing:0}.sub-tabs .mat-mdc-tab .mdc-tab__text-label .mat-icon{width:18px;height:18px;font-size:18px}.sub-tabs .mat-mdc-tab.mdc-tab--active{background:var(--adm-primary-soft);border-color:transparent}.sub-tabs .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{color:var(--adm-primary)}.stats-banner{display:flex;align-items:center;gap:8px;margin:12px 0 0;padding:10px 14px;border-radius:12px;background:var(--adm-surface-2);border:1px solid var(--adm-border);color:var(--adm-muted);font-size:.85rem}.stats-filter{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;margin:12px 0 0}.stats-filter__league{width:min(360px,100%)}.stats-filter__hint{font-size:.85rem}.stats-banner .mat-icon{flex:none;width:18px;height:18px;font-size:18px;color:var(--adm-primary)}.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-top:4px}.kpi{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon label" "value value" "hint hint";align-items:center;column-gap:10px;row-gap:6px;padding:14px 16px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);box-shadow:var(--adm-shadow)}.kpi__icon{grid-area:icon;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--adm-primary-soft);color:var(--adm-primary)}.kpi__icon .mat-icon{width:20px;height:20px;font-size:20px}.kpi__label{grid-area:label;font-size:.78rem;font-weight:600;color:var(--adm-muted);text-transform:uppercase;letter-spacing:.04em}.kpi__value{grid-area:value;font-size:1.9rem;font-weight:700;line-height:1.05;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--adm-text)}.kpi__hint{grid-area:hint;font-size:.78rem;color:var(--adm-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kpi--person .kpi__value{font-size:1.45rem}.stats-card{display:grid;gap:14px;margin-top:16px;padding:18px 20px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:var(--adm-radius);box-shadow:var(--adm-shadow)}.stats-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap}.stats-card__head h2{display:flex;align-items:center;gap:8px;margin:0;font-size:1rem;font-weight:700}.stats-card__head h2 .mat-icon{width:20px;height:20px;font-size:20px;color:var(--adm-primary)}.stats-card__meta{font-size:.8rem;color:var(--adm-muted)}.stats .stats__lists{gap:0 16px}.stats .stats__lists>.stats-card{align-content:start}.stats .stats-chart{grid-template-rows:200px auto}.stats .stats-chart__bars{background:none;border-bottom-color:var(--adm-border);background-image:linear-gradient(to top,transparent calc(50% - .5px),var(--adm-border) calc(50% - .5px),var(--adm-border) calc(50% + .5px),transparent calc(50% + .5px))}.stats .stats-chart__slot:hover,.stats .stats-chart__slot:focus-visible{background:color-mix(in srgb,var(--stats-bar) 6%,transparent);border-radius:6px 6px 0 0}.stats .stats-chart__bar{background:color-mix(in srgb,var(--stats-bar) 70%,white);transition:background-color .12s}.stats .stats-chart__bar--peak,.stats .stats-chart__slot:hover .stats-chart__bar,.stats .stats-chart__slot:focus-visible .stats-chart__bar{background:var(--stats-bar)}.stats .stats-list ol{gap:10px}.stats .stats-list li{grid-template-columns:22px 1fr auto;align-items:center;gap:4px 10px}.stats-list__rank{font-size:.75rem;font-weight:700;color:var(--adm-muted);text-align:right;font-variant-numeric:tabular-nums}.stats-list__track{grid-column:2/-1;height:6px;border-radius:999px;background:var(--adm-surface-2);overflow:hidden}.stats .stats-list__bar{display:block;height:100%;border-radius:999px;opacity:1;background:color-mix(in srgb,var(--stats-bar) 70%,white)}.stats .stats-list li:first-child .stats-list__bar{background:var(--stats-bar)}.histogram{display:grid;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:8px;align-items:end}.histogram__col{display:grid;grid-template-rows:auto 160px auto auto;justify-items:center;gap:4px;padding:6px 2px;border-radius:10px;outline:none}.histogram__col:hover,.histogram__col:focus-visible{background:color-mix(in srgb,var(--stats-bar) 6%,transparent)}.histogram__value{font-weight:700;font-variant-numeric:tabular-nums}.histogram__bar-wrap{display:flex;align-items:flex-end;width:100%;height:100%;border-bottom:1px solid var(--adm-border)}.histogram__bar{display:block;width:100%;max-width:44px;min-height:2px;margin:0 auto;border-radius:6px 6px 0 0;background:color-mix(in srgb,var(--stats-bar) 70%,white);transition:background-color .12s}.histogram__col:hover .histogram__bar,.histogram__col:focus-visible .histogram__bar{background:var(--stats-bar)}.histogram__label{font-size:.8rem;font-weight:600;font-variant-numeric:tabular-nums}.histogram__meta{font-size:.72rem;color:var(--adm-muted);font-variant-numeric:tabular-nums}.rank-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.rank-list__row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:8px 6px;border-radius:10px}.rank-list__row:hover{background:var(--adm-surface-2)}.rank-list__pos{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--adm-surface-2);font-size:.78rem;font-weight:700;color:var(--adm-muted)}.rank-list__row:first-child .rank-list__pos{background:var(--adm-primary-soft);color:var(--adm-primary)}.rank-list__who{display:grid;min-width:0}.rank-list__who strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-list__who small{font-size:.78rem;color:var(--adm-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-list__chip{padding:3px 10px;border-radius:999px;background:var(--adm-surface-2);border:1px solid var(--adm-border);font-size:.8rem;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.age-stats__scorer{display:flex;align-items:center;gap:8px;margin:0;padding:10px 12px;border-radius:12px;background:var(--adm-surface-2);font-size:.85rem}.age-stats__scorer .mat-icon{flex:none;width:18px;height:18px;font-size:18px;color:var(--adm-primary)}.age-stats__table{width:100%;border-collapse:collapse;font-size:.875rem}.age-stats__table th{text-align:left;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--adm-muted);padding:6px 8px;border-bottom:1px solid var(--adm-border)}.age-stats__table td{padding:10px 8px;border-bottom:1px solid var(--adm-border)}.age-stats__table tbody tr:last-child td{border-bottom:0}.age-stats__table tbody tr:hover td{background:var(--adm-surface-2)}.age-stats__table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.age-stats__clubs .pill{margin-left:6px}.age-stats__bar-col{min-width:180px}.age-bar{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.age-bar__track{height:8px;border-radius:999px;background:var(--adm-surface-2);overflow:hidden}.age-bar__fill{display:block;height:100%;border-radius:999px;background:color-mix(in srgb,var(--stats-bar) 70%,white)}.age-bar__value{min-width:2.6em;text-align:right;font-variant-numeric:tabular-nums}.semaphore{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#050a14;color:#f8fafc;font-family:var(--font, system-ui, sans-serif);overflow:hidden}.semaphore__board{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:3vw;width:100%;max-width:1800px}.semaphore__team{display:grid;justify-items:center;gap:1.5vh;min-width:0;text-align:center}.semaphore__name{margin:0;max-width:100%;font-size:clamp(1.1rem,3.6vw,4.5rem);font-weight:800;line-height:1.05;letter-spacing:.02em;text-transform:uppercase;overflow-wrap:anywhere}.semaphore__team--home .semaphore__name{color:#93c5fd}.semaphore__team--away .semaphore__name{color:#fdba74}.semaphore__score{font-size:clamp(4rem,22vw,26rem);font-weight:800;line-height:.9;font-variant-numeric:tabular-nums}.semaphore__team--scored .semaphore__score{animation:semaphore-pulse 1s ease-in-out 3}@keyframes semaphore-pulse{50%{color:#facc15;transform:scale(1.06)}}.semaphore__center{display:grid;justify-items:center;gap:1vh}.semaphore__team--home{grid-area:1/1}.semaphore__center{grid-area:1/2}.semaphore__team--away{grid-area:1/3}.semaphore__clock{padding:.6vh 1.6vw;border-radius:12px;background:#111c31;font-size:clamp(2rem,9vw,11rem);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;color:#facc15}.semaphore__clock--stopped{color:#e2e8f0}.semaphore__period{font-size:clamp(.9rem,2vw,2.4rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.semaphore__fouls{display:flex;align-items:center;gap:1vw;font-size:clamp(.8rem,1.8vw,2.2rem);color:#cbd5e1}.semaphore__fouls-label{text-transform:uppercase;letter-spacing:.06em}.semaphore__dots{display:flex;gap:.5vw}.semaphore__dot{width:clamp(10px,1.6vw,26px);height:clamp(10px,1.6vw,26px);border-radius:50%;border:2px solid #475569}.semaphore__dot--on{border-color:#e2e8f0;background:#e2e8f0}.semaphore__fouls-count{font-weight:800;font-variant-numeric:tabular-nums}.semaphore__fouls--accumulated,.semaphore__fouls--accumulated .semaphore__fouls-count{color:#fb923c}.semaphore__fouls--accumulated .semaphore__dot--on{border-color:#fb923c;background:#fb923c}.semaphore__flash{position:absolute;left:50%;bottom:6vh;transform:translate(-50%);padding:1.2vh 3vw;border-radius:999px;background:#facc15;color:#0b1120;font-size:clamp(1.2rem,4vw,5rem);font-weight:900;letter-spacing:.04em;white-space:nowrap;max-width:94vw;overflow:hidden;text-overflow:ellipsis}.semaphore__message{font-size:clamp(1rem,3vw,2.5rem);color:#cbd5e1}.semaphore__connection{position:absolute;top:12px;left:16px;font-size:.85rem;color:#fbbf24}.semaphore__fullscreen{position:absolute;top:12px;right:16px;padding:8px 14px;border:1px solid #334155;border-radius:999px;background:#0f172a;color:#e2e8f0;font:inherit;font-size:.85rem;cursor:pointer}@media(max-aspect-ratio:1/1){.semaphore__board{grid-template-columns:1fr;gap:3vh}.semaphore__team--home,.semaphore__center,.semaphore__team--away{grid-area:auto}.semaphore__center{order:-1}.semaphore__score{font-size:clamp(4rem,30vw,20rem)}.semaphore__name{font-size:clamp(1.1rem,7vw,3rem)}.semaphore__clock{font-size:clamp(2.5rem,18vw,8rem)}.semaphore__fouls{font-size:clamp(.9rem,4vw,1.8rem)}}.social-images{display:grid;gap:14px;justify-items:start}.social-images__controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.social-images__round{width:170px}.social-images__preview{display:block;width:min(460px,100%);border-radius:10px;box-shadow:0 2px 10px #0f172a33}.social-images__preview--story{width:min(300px,100%)}.social-images__caption{margin:0;padding:8px 12px;border-radius:10px;background:var(--adm-surface-2);color:var(--adm-muted);font-size:.85rem;white-space:pre-line;overflow-wrap:anywhere}.landing__nav-end{display:inline-flex;align-items:center;gap:10px}.home__app-bar .lang-switch{margin-left:auto}.lang-switch{display:inline-flex;gap:2px;padding:2px;border-radius:999px;background:#ffffff24}.lang-switch__item{min-width:34px;padding:4px 8px;border:0;border-radius:999px;background:none;color:inherit;font:inherit;font-size:.75rem;font-weight:700;cursor:pointer;opacity:.8}.lang-switch__item--on{background:#fff;color:#0f172a;opacity:1}.social-images__custom{display:grid;gap:8px;width:min(560px,100%)}.social-images__custom .mat-mdc-form-field{width:100%}.social-images__custom .social-images__controls .mat-mdc-form-field{width:auto;flex:1 1 200px}.social-images__hint{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;border-radius:10px;background:var(--mat-sys-surface-container, #f1f5f9)}.social-images__hint>span{flex:1 1 220px}.admin-lang{display:inline-flex;gap:2px;padding:2px;margin-right:8px;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc}.admin-lang__item{min-width:34px;padding:3px 8px;border:0;border-radius:999px;background:none;color:#475569;font:inherit;font-size:.75rem;font-weight:700;cursor:pointer}.admin-lang__item--on{background:#0f172a;color:#fff}.auth-card__brand{display:flex;align-items:center;justify-content:space-between}.auth-card__brand .admin-lang{margin-right:0}.confirm-dialog{width:min(420px,100%);z-index:1}.confirm-dialog__message{margin:0;color:var(--muted)}.confirm-dialog__actions{flex-wrap:wrap}.confirm-dialog__actions .btn{flex:1 1 140px}.btn--danger{background:var(--dk-danger-solid, #dc2626);border-color:transparent;color:#fff}.kit-colors{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:4px 0}.kit-color{display:flex;align-items:center;gap:10px;min-width:210px}.kit-color__swatch{position:relative;width:40px;height:40px;border-radius:50%;box-shadow:inset 0 0 0 1px #0f172a33;cursor:pointer;overflow:hidden;flex:none}.kit-color__swatch--empty{background:repeating-linear-gradient(45deg,#f1f5f9,#f1f5f9 6px,#e2e8f0 6px 12px)}.kit-color__swatch input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:0;padding:0}.kit-color__text{display:grid;line-height:1.25;font-size:.85rem}.kit-color__label{font-weight:600}.kit-colors__preview{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e2e8f0;color:#334155;font-weight:800;font-size:.8rem}.kit-colors__hint{margin:0 0 4px;font-size:.8rem}.portal-club--kit{overflow:hidden}.portal-club--kit .portal-club__head{margin:-12px -12px 6px;padding:18px 14px;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;background:var(--kit-bg);color:var(--kit-fg);border-bottom:4px solid var(--kit-accent)}.portal-club--kit .portal-club__head h2,.portal-club--kit .portal-club__head .muted{color:inherit}.portal-club--kit .portal-club__head .muted{opacity:.85}.portal-club--kit .fav-toggle{color:inherit;border-color:currentColor;background:transparent}.portal-club__badge{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:var(--kit-accent);color:var(--kit-bg);font-weight:800;box-shadow:0 0 0 2px var(--kit-fg)}.portal-club__kit{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.kit-dot{display:inline-block;width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px #0f172a40}.live-team--kit{position:relative}.live-team--kit:before{content:"";position:absolute;left:12px;right:12px;top:0;height:5px;border-radius:0 0 4px 4px;background:var(--kit);box-shadow:inset 0 0 0 1px #0f172a1f}.semaphore__team--kit .semaphore__name:after{content:"";display:block;width:min(60%,220px);height:.12em;min-height:6px;margin:.25em auto 0;border-radius:999px;background:var(--kit);box-shadow:0 0 0 1px #ffffff40}.portal-header.portal-header--kit,.portal .portal-header.portal-header--kit{background:linear-gradient(180deg,color-mix(in srgb,var(--kit-bg) 82%,#000) 0%,var(--kit-bg) 100%);color:var(--kit-fg)}.portal-header--kit .portal-header__title h1,.portal-header--kit .portal-header__icon,.portal-header--kit .portal-header__home,.portal-header--kit .portal-season-chip,.portal-header--kit .portal-season-chip .material-icons{color:var(--kit-fg)}.portal-header--kit .portal-header__title,.portal-header--kit .portal-header__title p{color:color-mix(in srgb,var(--kit-fg) 80%,transparent)}.portal-header--kit .portal-season-chip,.portal-header--kit .portal-header__icon,.portal-header--kit .portal-header__home{background:color-mix(in srgb,var(--kit-fg) 14%,transparent)}.portal-header--kit .portal-tabs__tab{color:color-mix(in srgb,var(--kit-fg) 70%,transparent)}.portal-header--kit .portal-tabs__tab--active{color:var(--kit-fg);border-bottom-color:var(--kit-accent)}.standings__form .form-dot{cursor:default}.standings__form .form-dot:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.club-record{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:2px 0 6px}.club-record__item{display:grid;justify-items:center;gap:2px;padding:8px 4px;border-radius:12px;background:var(--dk-surface-2, #f1f5f9);font-size:.72rem;color:var(--muted)}.club-record__item strong{font-size:1.15rem;color:var(--text, #0f172a)}.club-record__item--W strong{color:var(--dk-success-fg, #15803d)}.club-record__item--L strong{color:var(--dk-danger-fg, #b91c1c)}.club-fixtures{list-style:none;margin:0;padding:0;display:grid;gap:6px}.club-fixture{--fx: #94a3b8;--fx-bg: var(--dk-surface-2, #f1f5f9);display:grid;grid-template-columns:minmax(84px,.9fr) minmax(0,2fr) auto;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);border-left:4px solid var(--fx);color:inherit;text-decoration:none;background:var(--surface)}.club-fixture:hover{background:var(--fx-bg)}.club-fixture--W{--fx: #16a34a;--fx-bg: var(--dk-success-bg, #f0fdf4)}.club-fixture--L{--fx: #dc2626;--fx-bg: var(--dk-danger-bg, #fef2f2)}.club-fixture--D{--fx: #94a3b8}.club-fixture--live{--fx: #ef4444}.club-fixture--upcoming{--fx: var(--border)}.club-fixture__when{display:grid;line-height:1.25;min-width:0}.club-fixture__round{font-weight:700;font-size:.8rem}.club-fixture__date{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.club-fixture__opponent{display:flex;align-items:center;gap:8px;min-width:0}.club-fixture__venue{flex:none;width:22px;height:22px;display:grid;place-items:center;border-radius:6px;font-size:.68rem;font-weight:800;background:var(--dk-surface-2, #e2e8f0);color:var(--muted)}.club-fixture__crest{flex:none;width:26px;height:26px;border-radius:50%;object-fit:contain}.club-fixture__crest--initials{display:grid;place-items:center;font-size:.6rem;font-weight:800;background:var(--dk-info-bg, #e0e7ff);color:var(--dk-info-fg, #3730a3)}.club-fixture__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.club-fixture__name .muted{font-weight:400;font-size:.8rem}.club-fixture__result{display:flex;align-items:center;gap:6px;justify-content:flex-end}.club-fixture__outcome{width:24px;height:24px;display:grid;place-items:center;border-radius:6px;background:var(--fx);color:#fff;font-weight:800;font-size:.75rem}.club-fixture__score{font-size:1.05rem;min-width:38px;text-align:right;font-variant-numeric:tabular-nums}.club-fixture__note{font-size:.7rem;color:var(--muted)}.club-fixture__live{font-size:.72rem;font-weight:800;color:#ef4444;text-transform:uppercase}.club-fixture__time{font-size:.95rem;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}@media(max-width:420px){.club-fixture{grid-template-columns:minmax(70px,.8fr) minmax(0,2fr) auto;gap:8px;padding:9px 10px}.club-fixture__venue{display:none}}.no-sheet{display:flex;align-items:center;gap:10px;color:var(--muted)}.no-sheet p{margin:0}.club-fixture__name{display:grid;line-height:1.2}.club-fixture__side{font-size:.72rem;font-weight:500;color:var(--muted)}.standings__club{border:0;padding:0;background:none;font:inherit;color:var(--adm-link, #1d4ed8);cursor:pointer;text-align:left}.standings__club:hover{text-decoration:underline}.club-results-dialog{display:grid;gap:8px;min-width:min(560px,80vw)}.season-leaders{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;align-items:start}.season-leaders__panel h2{margin:0 0 4px;font-size:1.05rem}.season-leaders__panel>.muted{margin:0 0 10px;font-size:.82rem}.season-leaders__table{width:100%}.season-leaders__table .num{text-align:right;width:52px;font-variant-numeric:tabular-nums}.season-leaders__club{display:block;font-size:.78rem}.season-leaders__top td:first-child{font-weight:800;color:#b45309}.season-leaders__table th{text-align:left}.season-leaders__table th.num{text-align:right}.season-leaders__table td.num,.season-leaders__table th.num{white-space:nowrap}.season-leaders__table td.num:last-child,.season-leaders__table th.num:last-child{width:96px}.court-grid{display:grid;grid-template-columns:64px repeat(var(--courts),minmax(120px,1fr));gap:4px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.court-grid__corner,.court-grid__hour{position:sticky;left:0;z-index:1;background:var(--bg)}.court-grid__court{position:sticky;top:0;padding:8px 6px;text-align:center;font-weight:700;font-size:.85rem;background:var(--bg);border-bottom:2px solid var(--border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.court-grid__court--closed{color:var(--muted);text-decoration:line-through}.court-grid__court--blocked{color:var(--muted)}.court-grid__reason{display:block;font-size:.72rem;font-weight:600;color:#b45309;overflow:hidden;text-overflow:ellipsis}.court-slot--blocked{background:#e5e7eb;border-color:#d1d5db;border-style:solid;color:#4b5563;cursor:default}button.court-slot--blocked{cursor:pointer}button.court-slot--blocked span{color:#4b5563}:root[data-theme=dark] .court-slot--blocked{background:#1f2937;border-color:#374151;color:#9ca3af}.court-blocks{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.court-blocks__item{display:inline-flex;align-items:center;gap:6px;padding:0 0 0 10px;border-radius:999px;background:#fef3c7;color:#78350f;font-weight:600;font-size:.85rem}.court-blocks__item>.mat-icon{font-size:16px;width:16px;height:16px}.court-block-courts{display:flex;flex-wrap:wrap;gap:4px 16px}.court-grid__hour{display:grid;place-items:center;font-size:.8rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.court-slot{min-height:52px;padding:6px 8px;border-radius:10px;border:1px solid var(--border);font:inherit;font-size:.85rem;display:grid;align-content:center;justify-items:start;gap:1px;text-align:left;min-width:0}.court-slot--free{background:var(--surface);color:#15803d;cursor:pointer;border-style:dashed}.court-slot--free span{font-weight:600;opacity:.7}.court-slot--free:hover,.court-slot--free:focus-visible{background:#dcfce7;border-color:#22c55e;border-style:solid}.court-slot--free:hover span{opacity:1}.court-slot--taken{background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}.court-slot--taken:not(:disabled){cursor:pointer}.court-slot--taken:not(:disabled):hover{border-color:#2563eb}.court-slot--admin{background:#fef3c7;border-color:#fcd34d;color:#78350f}.court-slot--mine{background:#dcfce7;border-color:#22c55e;border-width:2px;color:#14532d;cursor:pointer}.court-slot--mine:hover{border-color:#15803d}:root[data-theme=dark] .court-slot--mine{background:#22c55e33;color:#bbf7d0}.court-slot--past{opacity:.45}.court-slot--recurring{background:#ede9fe;border-color:#c4b5fd;color:#4c1d95}.court-slot__repeat{margin-right:4px;font-weight:800}:root[data-theme=dark] .court-slot--recurring{background:#8b5cf633;border-color:#8b5cf680;color:#ddd6fe}span.court-slot--past{background:repeating-linear-gradient(-45deg,transparent 0 6px,var(--border) 6px 7px);border-color:transparent}.court-slot__name{font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.court-slot small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8}:root[data-theme=dark] .court-slot--free:hover{background:#22c55e26}:root[data-theme=dark] .court-slot--taken{background:#3b82f633;border-color:#3b82f680;color:#bfdbfe}.court-booking{max-width:1100px;margin:0 auto;padding:16px 16px 48px;display:grid;gap:14px}.court-booking__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.court-booking__header h1{margin:0;font-size:1.6rem}.court-booking__header p{margin:4px 0 0}.court-booking__badge{padding:6px 12px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-weight:600;font-size:.85rem}.court-booking__hint{margin:0;font-size:.9rem}.court-booking__missing{max-width:520px;margin:40px auto;text-align:center}.court-booking__dialog{display:grid;gap:12px;width:min(420px,100%)}.court-booking__dialog h2,.court-booking__dialog p{margin:0}.btn--danger{background:#dc2626;border-color:#dc2626;color:#fff}.btn--danger:disabled{opacity:.6}.court-booking__trap{position:absolute;left:-10000px;width:1px;height:1px;opacity:0}.court-booking__toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:50;padding:12px 18px;border-radius:12px;background:#15803d;color:#fff;font-weight:600;box-shadow:0 8px 24px #0f172a40}.court-days{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.court-days__day{flex:none;display:grid;justify-items:center;gap:1px;min-width:64px;padding:8px 10px;border-radius:12px;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit}.court-days__day small{font-size:.72rem;color:var(--muted);text-transform:capitalize}.court-days__day--active{background:var(--home);border-color:var(--home);color:#fff}.court-days__day--active small{color:#ffffffd9}@media(max-width:599px){.court-grid{grid-template-columns:52px repeat(var(--courts),minmax(104px,1fr))}.court-booking{padding:12px 10px 40px}}.court-centers{list-style:none;margin:0;padding:0;display:grid;gap:10px}.court-centers__item{display:flex;align-items:center;gap:14px;padding:14px 16px;color:inherit;text-decoration:none}.court-centers__item>.mat-icon{color:var(--adm-primary)}.court-centers__text{display:grid;flex:1;min-width:0}.court-link{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 16px}.court-link>.mat-icon{color:var(--adm-primary)}.court-link__body{display:grid;gap:2px;flex:1 1 280px;min-width:0}.court-link__url{overflow-wrap:anywhere;font-size:.9rem}.court-daynav{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:10px}.court-daynav__date{width:200px}.court-daynav__label{text-transform:capitalize;margin:0 6px}.court-daynav__count{margin-left:auto}.court-legend{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.85rem}.court-legend__item{width:14px;height:14px;border-radius:4px;border:1px solid #93c5fd;background:#dbeafe}.court-legend__item--admin{margin-left:10px;border-color:#fcd34d;background:#fef3c7}.court-legend__item--recurring{margin-left:10px;border-color:#c4b5fd;background:#ede9fe}.court-list{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}.court-list__item{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 8px;border:1px solid var(--adm-border);border-radius:12px;background:var(--adm-surface)}.court-list__name{flex:1 1 180px;min-width:0;padding:8px 10px;border:1px solid transparent;border-radius:8px;font:inherit;font-weight:600;background:transparent}.court-list__name:hover,.court-list__name:focus{border-color:var(--adm-border);background:var(--adm-surface-2);outline:none}.dialog-danger{color:#b91c1c!important}.recurring-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}.recurring-list__item{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 12px;border:1px solid var(--adm-border);border-radius:12px;background:var(--adm-surface)}.recurring-list__item>.mat-icon{color:#7c3aed}.recurring-list__item--ended{opacity:.55}.recurring-list__text{display:grid;flex:1;min-width:0;gap:1px}.recurring-conflicts ul{margin:4px 0 8px;padding-left:18px}.recurring-conflicts__choice{display:grid;gap:4px}.recurring-occurrence__actions{flex-wrap:wrap;gap:6px}.bracket-tool{max-width:1100px;margin:0 auto;padding:16px 16px 48px;display:grid;gap:14px}.bracket-tool header h1{margin:0;font-size:1.8rem}.bracket-tool header p{margin:6px 0 0;max-width:680px}.bracket-tool__form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;align-items:end;padding:16px}.bracket-tool__players .field__input{font-size:1.4rem;font-weight:800}.bracket-tool__check{display:flex;align-items:center;gap:8px;font-weight:600;padding-bottom:10px}.bracket-tool__summary{margin:0}.bracket-tool__actions{display:flex;flex-wrap:wrap;gap:10px}.bracket-tool__actions .btn{display:inline-flex;align-items:center;gap:6px;text-decoration:none}.bracket-tool__preview{overflow-x:auto;padding:16px}.bracket-tool__hint{margin:-4px 0 0;font-size:.85rem}.bracket-tool__cta{display:grid;gap:6px;justify-items:start;padding:16px}.bracket-tool__cta .btn{text-decoration:none;margin-top:4px}.bracket-tool__footer{text-align:center;font-size:.85rem}.bt-grid{display:grid;grid-template-columns:repeat(var(--bt-rounds),minmax(130px,1fr));grid-template-rows:auto repeat(var(--bt-rows),14px);min-width:calc(var(--bt-rounds) * 130px)}.bt-grid__head{grid-row:1;padding:0 6px 8px;font-size:.75rem;font-weight:700;color:var(--muted);text-transform:uppercase}.bt-line{display:flex;align-items:flex-end;gap:4px;border-bottom:1.5px solid var(--text);padding:0 6px 1px;font-size:.7rem;line-height:1;white-space:nowrap;overflow:hidden}.bt-line__pos{color:var(--muted);min-width:18px}.bt-line--bye em{color:var(--muted)}.bt-connector{border-right:1.5px solid var(--text)}.tool-tabs{display:flex;gap:6px;flex-wrap:wrap}.tool-tabs__tab{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-decoration:none;font-weight:600;font-size:.9rem}.tool-tabs__tab .material-icons{font-size:18px}.tool-tabs__tab--active{background:var(--home);border-color:var(--home);color:#fff}.group-tool__preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.group-tool__group{padding:14px;overflow-x:auto}.group-tool__group h2{margin:0 0 8px;font-size:1rem}.group-tool__table{border-collapse:collapse;width:100%;font-size:.75rem}.group-tool__table th,.group-tool__table td{border:1px solid var(--border);height:22px;min-width:22px;text-align:center;padding:0 4px}.group-tool__table thead th{background:var(--bg);color:var(--muted);font-weight:700}.group-tool__name{min-width:110px!important;text-align:left!important}.group-tool__self{background:var(--border)}.group-tool__rounds{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:4px;font-size:.8rem}.group-tool__rounds li{display:flex;flex-wrap:wrap;gap:4px 12px}.group-tool__rounds b{min-width:52px;color:var(--muted);font-weight:600}.group-tool__knockout{padding:14px}.group-tool__knockout h2{margin:0 0 4px;font-size:1rem}.group-tool__knockout p{margin:0 0 8px;font-size:.85rem}.group-tool__knockout ul{margin:0;padding-left:18px;display:grid;gap:2px;font-weight:600}.tool-faq{display:grid;gap:.25rem;margin-top:1.5rem}.tool-faq h2{margin:0 0 .5rem;font-size:1.15rem}.tool-faq__item{border-top:1px solid var(--border, rgba(127, 127, 127, .25));padding:.65rem 0}.tool-faq__item summary{cursor:pointer;font-weight:600;list-style-position:inside}.tool-faq__item p{margin:.5rem 0 0;line-height:1.55;color:var(--muted, inherit)}.landing__tool-link{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.demo-banner{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;margin:0 0 12px;padding:10px 14px;border-radius:12px;background:color-mix(in srgb,var(--home) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--home) 30%,transparent);font-size:.9rem}.demo-banner__label{display:inline-flex;align-items:center;gap:6px;font-weight:700}.demo-banner__label .material-icons{font-size:18px}.demo-banner__time{color:var(--muted);font-variant-numeric:tabular-nums}.demo-banner__cta{margin-left:auto;font-weight:700}.demo-banner--compact{position:fixed;top:10px;left:50%;transform:translate(-50%);z-index:5;margin:0;padding:4px 12px;border-radius:999px;font-size:.85rem;opacity:.85}.demo-expired{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.demo-expired__card{display:grid;justify-items:center;gap:10px;max-width:460px;padding:28px 24px;text-align:center;border-radius:18px;background:var(--surface)}.demo-expired__card h1,.demo-expired__card h2{margin:0}.demo-expired__icon{font-size:44px;color:var(--home)}.demo-expired__actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}.period-timer{display:flex;align-items:center;justify-content:center;gap:6px;margin:0 0 8px;font-variant-numeric:tabular-nums;color:var(--muted)}.period-timer .material-icons{font-size:18px}.period-timer--over{color:var(--red);font-weight:700}.match-tool__teams{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.match-tool__team,.match-tool__rules{display:grid;gap:10px;align-content:start}.match-tool__team h2,.match-tool__rules h2{margin:0;font-size:1.1rem}.match-tool__row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.match-tool__swatch{width:56px;height:42px;padding:2px}.match-tool__players{min-height:180px;resize:vertical;font-family:inherit;line-height:1.5}.match-tool__count{margin:0;font-size:.85rem}.match-tool__count--error{color:var(--red)}.match-tool__minutes{max-width:240px}.match-tool__form{display:grid;gap:16px}.match-tool__form>.btn{justify-self:start}.match-tool__links{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:8px 0 16px}.match-tool__link{display:grid;gap:8px;align-content:start}.match-tool__link h2{margin:0;font-size:1.15rem}.match-tool__link p{margin:0}.match-tool__icon{font-size:32px;color:var(--home)}.match-tool__url{display:block;padding:8px 10px;border-radius:8px;background:var(--bg);font-size:.8rem;word-break:break-all}.match-tool__actions{display:flex;gap:8px;flex-wrap:wrap}.match-tool__note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.9rem;color:var(--muted)}.for-leagues{display:grid;gap:20px}.for-leagues__hero{display:grid;gap:10px;padding:8px 0}.for-leagues__hero h1{margin:0;font-size:clamp(1.6rem,4vw,2.4rem)}.for-leagues__lead{margin:0;font-size:1.1rem;color:var(--muted);max-width:640px}.for-leagues__cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}.for-leagues__features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.for-leagues__feature{display:grid;gap:6px;align-content:start}.for-leagues__feature h2{margin:0;font-size:1.05rem}.for-leagues__feature p{margin:0;color:var(--muted)}.for-leagues__icon{font-size:30px;color:var(--home)}.for-leagues__contact h2{margin-top:0}.for-leagues__company{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:12px 0 0}.for-leagues__company dt{color:var(--muted)}.for-leagues__company dd{margin:0}.prognozer-game--embedded{max-width:720px;margin:0 auto}.h2h-score__peers{display:inline-block;margin-top:6px;padding:3px 10px;border-radius:999px;font-size:.8rem;font-weight:600;background:var(--bg);border:1px solid var(--border)}.h2h-score__peers--top{border-color:var(--h2h-color);color:var(--h2h-color)}button.venue-chip{font:inherit;font-weight:600;font-size:.9rem;border:0;cursor:pointer}.age-leaders__intro{margin:0 0 12px;font-size:.9rem}.age-leaders{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.age-leaders__group{padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius)}.age-leaders__group h3{margin:0 0 8px;font-size:1rem}.age-leaders__group h3 .muted{font-weight:400;font-size:.85rem}.age-leaders__list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.age-leaders__row{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px}.age-leaders__pos{font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.age-leaders__who{display:grid;min-width:0}.age-leaders__who .link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.age-leaders__who small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.age-leaders__index{font-variant-numeric:tabular-nums}.age-leaders__row--first .age-leaders__pos,.age-leaders__row--first .age-leaders__index{color:var(--home)}.prognozer-tip__legacy{margin:0 0 8px;padding:8px 10px;border-radius:10px;font-size:.85rem;background:var(--accumulated-bg);color:var(--text)}.prognozer-who{display:grid;gap:10px}.prognozer-who__title{margin:0;font-size:1.05rem}.prognozer-who__pairs{display:grid;gap:6px}.prognozer-who__pair{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.prognozer-who__pair:disabled{cursor:default;opacity:.6}.prognozer-who__pair--on{border-color:var(--home);box-shadow:inset 0 0 0 1px var(--home)}.prognozer-who__table td:first-child{max-width:0;width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prognozer-ptip-round{display:flex;justify-content:space-between;align-items:baseline;margin:14px 0 6px;font-size:.95rem}.prognozer-help-fab{position:fixed;right:16px;bottom:calc(16px + var(--tabbar-height, 0px) + env(safe-area-inset-bottom));z-index:900;display:grid;place-items:center;width:52px;height:52px;border:0;border-radius:50%;background:var(--home);color:#fff;box-shadow:0 6px 18px #0f172a47;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .15s}.prognozer-help-fab .material-icons{font-size:30px}.prognozer-help-fab:hover{transform:scale(1.06)}.prognozer-help-fab:active{transform:scale(.95)}html.prognozer-help-open,html.prognozer-help-open body{overflow:hidden}.prognozer-help{position:fixed;inset:0;z-index:2100;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--bg);color:var(--text);padding:0 16px calc(32px + env(safe-area-inset-bottom))}.prognozer-help__bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:12px;max-width:680px;margin:0 auto;padding:calc(10px + env(safe-area-inset-top)) 0 10px;background:var(--bg);border-bottom:1px solid var(--border)}.prognozer-help__bar-title{font-weight:700;color:var(--muted)}.prognozer-help__article{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;max-width:680px;margin:16px auto 0;line-height:1.55;overflow-wrap:anywhere}.prognozer-help__head{display:grid;gap:8px}.prognozer-help__kicker{margin:0;color:var(--home);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.prognozer-help h1{margin:0;font-size:clamp(1.5rem,6vw,1.8rem);line-height:1.2}.prognozer-help__lead{margin:0;font-size:1rem;color:var(--muted)}.prognozer-help section{min-width:0;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.prognozer-help h2{margin:0 0 8px;font-size:1.05rem}.prognozer-help p{margin:0 0 8px}.prognozer-help p:last-child{margin-bottom:0}.prognozer-help ul{margin:0;padding-left:18px;display:grid;gap:4px}.prognozer-help__table{width:100%;margin-bottom:8px;table-layout:fixed}.prognozer-help__table td{white-space:normal;text-align:left;vertical-align:top;padding:8px 4px}.prognozer-help__table td:last-child{width:3.2em;text-align:right;white-space:nowrap}.prognozer-help__done{justify-self:center;width:min(100%,320px)}@media(min-width:600px){.prognozer-help section{padding:16px 18px}}.site-nav{position:sticky;top:0;z-index:950;display:block;padding-top:env(safe-area-inset-top);background:#020617eb;backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);color:#fff;transition:box-shadow .2s}.site-nav--compact{box-shadow:0 4px 16px #02061759}.site-nav__inner{max-width:1080px;margin:0 auto;padding:14px 16px;display:flex;align-items:center;gap:12px 20px;transition:padding .2s}.site-nav--compact .site-nav__inner{padding-top:6px;padding-bottom:6px}.site-nav__brand{display:inline-flex;align-items:center;gap:6px;color:#fff;font-weight:700;font-size:1rem;text-decoration:none;white-space:nowrap;transition:font-size .2s}.site-nav__brand .material-icons{font-size:22px;color:#60a5fa}.site-nav--compact .site-nav__brand{font-size:.9rem}.site-nav__links{display:flex;align-items:center;gap:4px;margin-left:auto;min-width:0}.site-nav__link{padding:6px 12px;border-radius:999px;color:#ffffffd1;font-size:.85rem;font-weight:600;text-decoration:none;white-space:nowrap}.site-nav__link:hover{background:#ffffff1a;color:#fff}.site-nav__link--on{background:#ffffff29;color:#fff}.site-nav__link--cta{border:1px solid rgba(255,255,255,.35);color:#fff}.site-nav__lang{flex:none}.site-nav__short{display:none}.landing>.landing__hero{padding-top:4px}@media(max-width:760px){.site-nav__inner{display:grid;grid-template-columns:1fr auto;gap:10px 8px;padding:10px 16px 8px}.site-nav__links{grid-column:1/-1;grid-row:2;margin:0 -16px;padding:0 16px;overflow-x:auto;scrollbar-width:none}.site-nav__links::-webkit-scrollbar{display:none}.site-nav__link{padding:6px 10px;font-size:.8rem}}@media(max-width:480px){.site-nav__long{display:none}.site-nav__short{display:inline}}@media(max-width:760px){.site-nav--compact .site-nav__inner{row-gap:0;padding-top:6px;padding-bottom:6px}.site-nav--compact .site-nav__brand,.site-nav--compact .site-nav__lang{display:none}}.demo-stats__scroll{overflow-x:auto}.demo-stats__table{width:100%;font-size:.9rem}.demo-stats__nowrap{white-space:nowrap}.demo-stats__row--idle{color:var(--muted)}.blocked-weeks{display:grid;gap:8px}.blocked-weeks__add{align-items:center}.blocked-weeks__hint{margin:0;font-size:.85rem}.schedule-dialog__blocked,.move-round__warning{display:flex;align-items:flex-start;gap:8px}.move-round{display:grid;gap:12px}.move-round__list{margin:0;padding-left:18px;display:grid;gap:6px}.move-round__list li{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}.move-round__tag{padding:1px 8px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:.8rem}.demo-stats__live{display:inline-flex;align-items:center;gap:4px;margin-left:6px;font-weight:600;text-decoration:none;color:var(--home)}.demo-stats__live .mat-icon{width:18px;height:18px;font-size:18px}.prognozer-admin-round{display:grid;gap:6px;margin-top:12px}.prognozer-admin-round__pairs{display:flex;flex-wrap:wrap;gap:6px}.prognozer-admin-tips{display:grid;gap:8px}.prognozer-admin-tips__round{margin:12px 0 4px;font-size:1rem}.prognozer-admin-tips__table{width:100%}.prognozer-admin-tips__nowrap{white-space:nowrap}.prognozer-admin-tips__bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.prognozer-emails{display:flex;align-items:flex-start;gap:10px;font-size:.92rem;cursor:pointer}.prognozer-emails input{width:18px;height:18px;margin-top:2px;flex:none}.prognozer-unsubscribe .prognozer-hero h2{margin:0}.prognozer-admin-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.prognozer-admin-head h2{margin:0}.prognozer-email{display:grid;gap:10px}.prognozer-email .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.prognozer-email__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0}.prognozer-email__meta .mat-icon{color:var(--muted)}.prognozer-email__hint{margin:0;font-size:.85rem}.prognozer-email__chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.prognozer-email__chip{border:0;cursor:pointer;font:inherit;font-size:.8rem}.prognozer-email__preview-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.prognozer-email__preview-head h3{margin:0}.prognozer-email__frame{width:100%;height:620px;border:1px solid var(--border, #e2e8f0);border-radius:12px;background:#f1f5f9}.prognozer-email__blocked{display:flex;align-items:flex-start;gap:8px}@media(max-width:720px),(max-height:500px)and (pointer:coarse){html:has(.portal,.news-page,.live-page,.settings-page,.home){font-size:14px}.portal h1,.news-page h1{font-size:1.3rem}.news-page .news-article__title{font-size:1.95rem}.news-page .news-article__summary{font-size:1.2rem}.portal .news-lead__title{font-size:1.75rem}.portal .news-lead__summary{font-size:1.12rem}.portal .news-entry__title{font-size:1.22rem}.portal .news-entry__summary{font-size:1.05rem}.news-page .news-content--article{font-size:1.22rem;line-height:1.7}.portal-header--league{--app-hero: 124px;position:sticky;top:calc(-1 * var(--app-hero));background:linear-gradient(180deg,#0b1120,#142347)}.portal-header--league .portal-header__inner{display:grid;grid-template-columns:56px minmax(0,1fr) auto;grid-template-rows:44px auto auto;grid-template-areas:"back . actions" "logo title title" "logo season season";align-items:center;column-gap:14px;row-gap:0;height:var(--app-hero);padding:0 6px 10px 14px}.portal-header--league .portal-header__home{grid-area:back}.portal-header--league .portal-header__actions{grid-area:actions}.portal-header__icon{display:grid;place-items:center;width:44px;height:44px;border:0;background:none;color:#fff;cursor:pointer;border-radius:50%;text-decoration:none}.portal-header__icon:active{background:#ffffff1f}.portal-header__icon .material-icons{font-size:24px}.portal-header--league .portal-header__logo{grid-area:logo;width:56px;height:56px;padding:6px;border-radius:14px;background:#fff}.portal-header__logo--initials{display:grid;place-items:center;color:#1e3a8a;font-weight:800;font-size:1.25rem}.portal-header--league .portal-header__title{grid-area:title;align-self:end}.portal-header--league .portal-header__title h1{font-size:15px;font-weight:500;color:#ffffffeb}.portal-header--league .portal-season-chip{grid-area:season;justify-self:start;align-self:start;padding:0;border:0;background:none;font-size:24px;font-weight:800;letter-spacing:-.01em;line-height:1.2}.portal-header--league .portal-season-chip .material-icons{font-size:26px}.portal-header--league .portal-tabs{display:flex;max-width:none;height:46px;margin:0;padding:0 4px}.portal-header--league .portal-tabs__tab{display:flex;align-items:center;gap:6px;padding:0 14px;color:#fff9;font-size:14px;font-weight:600;border-bottom:3px solid transparent}.portal-header--league .portal-tabs__tab--active{color:#fff;border-bottom-color:#fff}.portal-header--league .portal-tabs__full{display:none}.portal-header--league .portal-tabs__short{display:inline}.live-strip{top:calc(46px + env(safe-area-inset-top));padding:8px;background:var(--surface);border-bottom:1px solid var(--border)}.live-strip__item{border:0;background:var(--dk-danger-bg, #fef2f2);font-size:13px;font-weight:500}.portal .home-front{padding:12px 14px 4px}.portal .news-lead--compact .news-lead__title{font-size:1.55rem}.portal .news-entry--compact .news-entry__title{font-size:1.12rem}.page.portal{padding-top:8px;padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));gap:8px}.portal .card{border:0;border-radius:16px;padding:12px}.portal-section__title{font-size:15px;font-weight:700}.portal-round{margin:10px 4px 2px;font-size:13px;font-weight:600}.portal-filters{flex-wrap:nowrap;gap:8px;overflow-x:auto;scrollbar-width:none;margin-bottom:4px}.portal-field{flex:none}.portal-field>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.portal .portal-field select,.portal .portal-season select{appearance:none;-webkit-appearance:none;border:0;border-radius:999px;padding:8px 32px 8px 14px;font-size:13px;font-weight:600;color:var(--text);background-color:var(--dk-surface-3, #e8edf3);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%2364748b' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px;max-width:70vw}.venue-chips{gap:6px}.venue-chip{padding:7px 14px;font-size:13px}.portal .card .match-row--plain,.portal .card app-match-row .match-row{margin:0 -4px;padding:9px 4px}.sort-th__icon{display:none;font-size:12px}.sort-th--active .sort-th__icon{display:inline}.portal--swipe-next{animation:portal-swipe-next .22s ease-out}.portal--swipe-prev{animation:portal-swipe-prev .22s ease-out}.portal-table{font-size:13px}.portal-table th{font-size:11.5px;font-weight:600}.portal-table th,.portal-table td{padding:9px 5px}:root{--tabbar-height: 0px}.app-tabbar__item{font-size:10.5px}.app-tabbar__item .material-icons{font-size:22px;padding:2px 14px}.app-tabbar__item--home .material-icons{top:-16px;width:50px;height:50px;font-size:25px;border-width:3px}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.home-clubs{scrollbar-width:none}.home-club{border-color:transparent;padding:4px 12px 4px 4px;font-size:12.5px}.home-club__badge{width:24px;height:24px}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.portal-header--page .portal-header__inner{height:auto;min-height:var(--app-hero);grid-template-columns:56px minmax(0,1fr) auto;grid-template-areas:"back . actions" "logo title title" "logo big big";padding-top:0;padding-bottom:14px}.portal-header--page .portal-header__big{grid-area:big}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.portal-header--page .portal-header__title .portal-header__kicker{display:block}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.portal .player-search{flex-wrap:wrap;overflow:visible}.portal .player-search__name{flex:1 1 100%}.portal .player-search__name input{border:0;border-radius:999px;padding:9px 14px;font-size:14px;background:var(--dk-surface-3, #e8edf3)}}@keyframes portal-swipe-next{0%{opacity:.4;transform:translate(32px)}to{opacity:1;transform:none}}@keyframes portal-swipe-prev{0%{opacity:.4;transform:translate(-32px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.portal--swipe-next,.portal--swipe-prev{animation:none}}.portal .portal-filters{display:flex;align-items:center;gap:8px}.portal .portal-filters .portal-field>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.portal .portal-field select{appearance:none;-webkit-appearance:none;height:40px;max-width:70vw;padding:0 38px 0 16px;border:1px solid var(--border);border-radius:999px;font:inherit;font-size:.88rem;font-weight:600;color:var(--text);background-color:var(--surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%2364748b' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:20px;cursor:pointer}.portal .portal-field select:hover,.portal .player-search__name input:hover{border-color:var(--dk-border-strong, #cbd5e1)}.portal .player-search__name input{height:40px;padding:0 16px;border:1px solid var(--border);border-radius:999px;font-size:.9rem;background:var(--surface)}.portal .venue-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.portal .venue-chips::-webkit-scrollbar{display:none}.portal .venue-chip{flex:none;display:inline-flex;align-items:center;height:36px;padding:0 16px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font:inherit;font-size:.88rem;font-weight:600;white-space:nowrap;text-decoration:none;cursor:pointer}.portal .venue-chip:hover{border-color:var(--dk-border-strong, #cbd5e1);background:var(--surface)}.portal .venue-chip--on,.portal .venue-chip--on:hover{border-color:var(--text);background:var(--text);color:var(--bg)}.portal .icon-action{width:40px;height:40px;padding:0;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.portal .icon-action:hover{border-color:var(--dk-border-strong, #cbd5e1);background:var(--surface)}.portal .round-chip{height:36px;min-width:44px;padding:0 14px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.85rem}.portal .round-chip--active{border-color:var(--text);background:var(--text);color:var(--bg)}.portal .day-picker__date select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.table-round-picker{max-width:280px}.portal .portal-round-nav__btn{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text);cursor:pointer}.portal .portal-round-nav__btn:disabled{opacity:.35;cursor:default}
