@font-face{font-display:swap;font-family:Archivo;font-style:normal;font-weight:400;src:url(/build/fonts/archivo-vietnamese-400-normal.32fc138e.woff2) format("woff2"),url(/build/fonts/archivo-vietnamese-400-normal.7984f502.woff) format("woff");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-display:swap;font-family:Archivo;font-style:normal;font-weight:400;src:url(/build/fonts/archivo-latin-ext-400-normal.6dc0a233.woff2) format("woff2"),url(/build/fonts/archivo-latin-ext-400-normal.3abcf7fa.woff) format("woff");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-display:swap;font-family:Archivo;font-style:normal;font-weight:400;src:url(/build/fonts/archivo-latin-400-normal.909ea31b.woff2) format("woff2"),url(/build/fonts/archivo-latin-400-normal.d3bd897a.woff) format("woff");unicode-range:u+00??,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-display:swap;font-family:Archivo;font-style:normal;font-weight:600;src:url(/build/fonts/archivo-vietnamese-600-normal.f4019c7e.woff2) format("woff2"),url(/build/fonts/archivo-vietnamese-600-normal.8b7dfafb.woff) format("woff");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-display:swap;font-family:Archivo;font-style:normal;font-weight:600;src:url(/build/fonts/archivo-latin-ext-600-normal.a94fa3af.woff2) format("woff2"),url(/build/fonts/archivo-latin-ext-600-normal.0687ac56.woff) format("woff");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-display:swap;font-family:Archivo;font-style:normal;font-weight:600;src:url(/build/fonts/archivo-latin-600-normal.49cf82b4.woff2) format("woff2"),url(/build/fonts/archivo-latin-600-normal.73bde4e0.woff) format("woff");unicode-range:u+00??,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-display:swap;font-family:Archivo;font-style:normal;font-weight:700;src:url(/build/fonts/archivo-vietnamese-700-normal.7540d4e3.woff2) format("woff2"),url(/build/fonts/archivo-vietnamese-700-normal.2419d06b.woff) format("woff");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-display:swap;font-family:Archivo;font-style:normal;font-weight:700;src:url(/build/fonts/archivo-latin-ext-700-normal.315bd827.woff2) format("woff2"),url(/build/fonts/archivo-latin-ext-700-normal.34c1aa41.woff) format("woff");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-display:swap;font-family:Archivo;font-style:normal;font-weight:700;src:url(/build/fonts/archivo-latin-700-normal.8581ed43.woff2) format("woff2"),url(/build/fonts/archivo-latin-700-normal.727b5396.woff) format("woff");unicode-range:u+00??,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-display:swap;font-family:Archivo Black;font-style:normal;font-weight:400;src:url(/build/fonts/archivo-black-latin-ext-400-normal.e7948120.woff2) format("woff2"),url(/build/fonts/archivo-black-latin-ext-400-normal.cedbdce8.woff) format("woff");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-display:swap;font-family:Archivo Black;font-style:normal;font-weight:400;src:url(/build/fonts/archivo-black-latin-400-normal.fc847a1f.woff2) format("woff2"),url(/build/fonts/archivo-black-latin-400-normal.58a301a6.woff) format("woff");unicode-range:u+00??,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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:400;src:url(/build/fonts/ibm-plex-sans-cyrillic-ext-400-normal.c7f19d67.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-cyrillic-ext-400-normal.5b7e59c2.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:400;src:url(/build/fonts/ibm-plex-sans-cyrillic-400-normal.f55992be.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-cyrillic-400-normal.c4aae3aa.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:400;src:url(/build/fonts/ibm-plex-sans-greek-400-normal.173a235d.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-greek-400-normal.c71f9181.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:400;src:url(/build/fonts/ibm-plex-sans-vietnamese-400-normal.a9c0738f.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-vietnamese-400-normal.c17b6e03.woff) format("woff");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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:400;src:url(/build/fonts/ibm-plex-sans-latin-ext-400-normal.11781b13.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-latin-ext-400-normal.24d83b52.woff) format("woff");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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:400;src:url(/build/fonts/ibm-plex-sans-latin-400-normal.3160b5c6.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-latin-400-normal.65b2eda7.woff) format("woff");unicode-range:u+00??,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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:500;src:url(/build/fonts/ibm-plex-sans-cyrillic-ext-500-normal.bf4ba768.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-cyrillic-ext-500-normal.502b7494.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:500;src:url(/build/fonts/ibm-plex-sans-cyrillic-500-normal.aa1edf9c.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-cyrillic-500-normal.d010060b.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:500;src:url(/build/fonts/ibm-plex-sans-greek-500-normal.b4df5194.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-greek-500-normal.94671ea6.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:500;src:url(/build/fonts/ibm-plex-sans-vietnamese-500-normal.032cc11f.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-vietnamese-500-normal.89666946.woff) format("woff");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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:500;src:url(/build/fonts/ibm-plex-sans-latin-ext-500-normal.d8f3e27f.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-latin-ext-500-normal.7e8aef37.woff) format("woff");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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:500;src:url(/build/fonts/ibm-plex-sans-latin-500-normal.fcd7b8c3.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-latin-500-normal.4b130dfc.woff) format("woff");unicode-range:u+00??,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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:600;src:url(/build/fonts/ibm-plex-sans-cyrillic-ext-600-normal.0a51b2f3.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-cyrillic-ext-600-normal.6b943717.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:600;src:url(/build/fonts/ibm-plex-sans-cyrillic-600-normal.e07c188c.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-cyrillic-600-normal.2e3e0b0b.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:600;src:url(/build/fonts/ibm-plex-sans-greek-600-normal.1fb74172.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-greek-600-normal.dfea56a1.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:600;src:url(/build/fonts/ibm-plex-sans-vietnamese-600-normal.1e7f665a.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-vietnamese-600-normal.9a97e037.woff) format("woff");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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:600;src:url(/build/fonts/ibm-plex-sans-latin-ext-600-normal.57f2c00d.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-latin-ext-600-normal.5051947b.woff) format("woff");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-display:swap;font-family:IBM Plex Sans;font-style:normal;font-weight:600;src:url(/build/fonts/ibm-plex-sans-latin-600-normal.24bc59b4.woff2) format("woff2"),url(/build/fonts/ibm-plex-sans-latin-600-normal.d73e2e25.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--color-bg:#fff;--color-surface:#fff;--color-surface-alt:#f4f5f7;--color-surface-deep:#ebedf0;--color-border:#c9cdd3;--color-border-strong:#8a8f97;--color-text:#0a0d12;--color-text-muted:#3a4049;--color-text-inverse:#fff;--color-accent:#155724;--color-accent-strong:#0e3e19;--color-accent-text:#fff;--color-success:#155724;--color-danger:#b71c1c;--color-danger-strong:#8e1414;--color-warning:#8a4b00;--color-now:#8a3d00;--color-now-tint:hsla(0,0%,100%,.14);--color-now-text:#fff;--color-next:#0c3b6e;--color-next-tint:hsla(0,0%,100%,.14);--color-next-text:#fff;--color-focus-ring:#155724;--font-base:"IBM Plex Sans",-apple-system,blinkmacsystemfont,"Segoe UI",roboto,"Helvetica Neue",arial,sans-serif;--font-display:"Archivo","IBM Plex Sans",system-ui,sans-serif;--font-display-black:"Archivo Black","Archivo","IBM Plex Sans",system-ui,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,sfmono-regular,menlo,monospace;--fs-body:1rem;--fs-data:1.25rem;--fs-data-lg:1.5rem;--fs-title:1.5rem;--fs-h1:2rem;--fs-display:2.5rem;--fs-scoreboard:3rem;--fs-small:0.875rem;--fs-micro:0.75rem;--lh-base:1.45;--lh-tight:1.2;--lh-display:0.95;--ls-display:-0.02em;--ls-tight:-0.01em;--ls-caps:0.08em;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-black:900;--sp-0:0;--sp-1:0.25rem;--sp-2:0.5rem;--sp-3:0.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--radius-base:8px;--radius-card:14px;--radius-pin:12px;--radius-pill:999px;--border-width:1px;--border-width-strong:2px;--shadow-card:0 1px 3px rgb(10 13 18/8%);--shadow-card-lifted:0 6px 18px rgba(10,13,18,.12);--shadow-now:0 4px 16px rgba(138,61,0,.28);--shadow-next:0 4px 16px rgba(12,59,110,.24);--tap-min:44px;--maxw-content:760px;--gutter:var(--sp-4);--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--icon-xl:32px;--transition-fast:120ms ease-out;--transition-base:220ms ease-out;--pattern-court:repeating-linear-gradient(135deg,transparent,transparent 14px,rgb(10 13 18/3%) 0,rgb(10 13 18/3%) 15px);--pattern-court-on-dark:repeating-linear-gradient(135deg,transparent,transparent 14px,hsla(0,0%,100%,.06) 0,hsla(0,0%,100%,.06) 15px)}*,:after,:before{box-sizing:border-box}html{font-size:100%;text-size-adjust:100%;line-height:var(--lh-base)}body{background:var(--color-bg);color:var(--color-text);font:var(--fw-regular) var(--fs-body)/var(--lh-base) var(--font-base);font-feature-settings:"kern","liga","calt","ss01";margin:0;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.tabular,td,th,time{font-variant-numeric:tabular-nums}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);margin:0 0 var(--sp-3)}h1{font-size:var(--fs-h1);letter-spacing:var(--ls-display)}h2{font-size:var(--fs-title)}p{margin:0 0 var(--sp-4)}a{color:var(--color-accent);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-strong)}a:focus-visible{border-radius:var(--radius-base);outline:2px solid var(--color-focus-ring);outline-offset:2px}img,svg{display:block;height:auto;max-width:100%}.btn,button{align-items:center;background:var(--color-accent);border:var(--border-width-strong) solid var(--color-accent);border-radius:var(--radius-base);color:var(--color-accent-text);cursor:pointer;display:inline-flex;font:var(--fw-semibold) var(--fs-body)/1.2 var(--font-base);gap:var(--sp-2);justify-content:center;letter-spacing:0;min-height:var(--tap-min);min-width:var(--tap-min);padding:var(--sp-3) var(--sp-5);text-decoration:none;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.btn:hover,button:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.btn:focus-visible,button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.btn:active,button:active{transform:translateY(1px)}.btn .icon,button .icon{flex:0 0 auto}.btn--ghost{background:transparent;border-color:var(--color-border-strong);color:var(--color-accent)}.btn--ghost:hover{background:var(--color-surface-alt);border-color:var(--color-accent);color:var(--color-accent-strong)}.btn--sm{font-size:var(--fs-small);gap:var(--sp-1);padding:var(--sp-2) var(--sp-3)}.btn--sm .icon{height:14px;width:14px}@media(width >= 600px){.btn--sm{min-height:36px;min-width:0}}.btn--danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-text-inverse)}.btn--danger:hover{background:var(--color-danger-strong);border-color:var(--color-danger-strong)}.btn--inverse{background:var(--color-text-inverse);border-color:var(--color-text-inverse);color:var(--color-text)}.btn--inverse:hover{background:var(--color-surface-alt);border-color:var(--color-surface-alt);color:var(--color-text)}.site-footer,.site-header{background:var(--color-surface);border-bottom:var(--border-width) solid var(--color-border);padding:var(--sp-4) var(--gutter)}.site-footer{border-bottom:0;border-top:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-size:var(--fs-small);margin-top:var(--sp-7)}.site-footer__inner,.site-header__inner,.site-main{margin:0 auto;max-width:var(--maxw-content);width:100%}.site-header__inner{align-items:center;display:flex;gap:var(--sp-3);justify-content:space-between}.site-header__brand{align-items:center;color:var(--color-text);display:inline-flex;font-family:var(--font-display-black);font-size:var(--fs-title);font-weight:var(--fw-black);gap:var(--sp-2);letter-spacing:var(--ls-display);text-decoration:none}.site-header__brand:hover{color:var(--color-accent)}.site-header__brand-mark{align-items:center;background:var(--color-text);border-radius:var(--radius-pin);color:var(--color-text-inverse);display:inline-flex;font-family:var(--font-display-black);font-size:var(--fs-small);height:32px;justify-content:center;width:32px}.site-main{padding:var(--sp-5) var(--gutter)}.is-hidden{display:none!important}.visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0 0 0 0);border:0;white-space:nowrap}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.icon{display:inline-block;fill:none;flex:0 0 auto;height:var(--icon-md);stroke:currentcolor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;vertical-align:-.15em;width:var(--icon-md)}.icon--sm{height:var(--icon-sm);width:var(--icon-sm)}.icon--lg{height:var(--icon-lg);width:var(--icon-lg)}.icon--xl{height:var(--icon-xl);width:var(--icon-xl)}.icon--filled{fill:currentcolor;stroke:none}.icon--thin{stroke-width:1.5}.icon-text{align-items:center;display:inline-flex;gap:var(--sp-2)}@media(prefers-reduced-motion:no-preference){.icon--pulse{animation:icon-pulse 1.6s ease-in-out infinite}}@keyframes icon-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}.home{gap:var(--sp-7);padding-bottom:var(--sp-7)}.home,.home-hero{display:flex;flex-direction:column}.home-hero{background:var(--pattern-court),radial-gradient(120% 80% at 100% 0,rgba(21,87,36,.12) 0,transparent 60%),var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);gap:var(--sp-4);overflow:hidden;padding:var(--sp-6) var(--sp-5);position:relative}.home-hero:before{background:linear-gradient(90deg,var(--color-accent) 0,var(--color-accent) 30%,var(--color-now) 30%,var(--color-now) 60%,var(--color-next) 60%,var(--color-next) 100%);content:"";height:6px;inset:0 0 auto;position:absolute}.home-hero__kicker{align-items:center;color:var(--color-text-muted);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-micro);font-weight:var(--fw-bold);gap:var(--sp-2);letter-spacing:var(--ls-caps);margin:0;text-transform:uppercase}.home-hero__kicker .icon{color:var(--color-accent)}.home-hero__title{color:var(--color-text);font-family:var(--font-display-black);font-size:clamp(2rem,8vw,3.25rem);font-weight:var(--fw-black);letter-spacing:var(--ls-display);line-height:var(--lh-display);margin:0;max-width:18ch}.home-hero__title-accent{color:var(--color-accent)}.home-hero__lead{color:var(--color-text-muted);font-size:var(--fs-data);line-height:1.4;margin:0;max-width:50ch}.home-hero__actions{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-3)}.home-hero__cta{font-size:var(--fs-data);padding:var(--sp-4) var(--sp-5)}.home-features{display:grid;gap:var(--sp-4);grid-template-columns:1fr}.home-features__title{color:var(--color-text);font-family:var(--font-display-black);font-size:var(--fs-title);font-weight:var(--fw-black);letter-spacing:var(--ls-display);margin:0 0 var(--sp-2);text-transform:uppercase}.home-features__title .icon{color:var(--color-accent);margin-right:var(--sp-2);vertical-align:-.15em}.home-features__list{display:grid;gap:var(--sp-4);grid-template-columns:1fr;list-style:none;margin:0;padding:0}.home-features__item{align-items:start;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);display:grid;gap:var(--sp-2) var(--sp-4);grid-template-columns:auto 1fr;padding:var(--sp-5);position:relative;transition:transform var(--transition-base),box-shadow var(--transition-base)}.home-features__item:hover{box-shadow:var(--shadow-card-lifted);transform:translateY(-2px)}.home-features__number{align-items:center;background:var(--color-text);border-radius:var(--radius-pin);color:var(--color-text-inverse);display:inline-flex;font-family:var(--font-display-black);font-size:var(--fs-display);font-variant-numeric:tabular-nums;font-weight:var(--fw-black);grid-row:span 2;height:56px;justify-content:center;line-height:1;width:56px}.home-features__item-title{align-items:center;color:var(--color-text);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-data);font-weight:var(--fw-bold);gap:var(--sp-2);line-height:var(--lh-tight);margin:0}.home-features__item-title .icon{color:var(--color-accent)}.home-features__body{color:var(--color-text-muted);font-size:var(--fs-body);grid-column:2;line-height:1.4;margin:0}@media(width >= 600px){.home-hero{padding:var(--sp-7) var(--sp-6)}.home-features__list{grid-template-columns:repeat(3,1fr)}.home-features__item{flex-direction:column;grid-template-columns:1fr}.home-features__number{grid-row:auto}.home-features__body{grid-column:1}}.form-page{counter-reset:form-section;gap:var(--sp-5);padding-bottom:var(--sp-6)}.form-page,.form-page__header{display:flex;flex-direction:column}.form-page__header{align-items:flex-start;gap:var(--sp-2)}.form-page__kicker{align-items:center;color:var(--color-text-muted);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-micro);font-weight:var(--fw-bold);gap:var(--sp-2);letter-spacing:var(--ls-caps);margin:0;text-transform:uppercase}.form-page__kicker .icon{color:var(--color-accent)}.form-page__title{font-family:var(--font-display-black);font-size:clamp(1.75rem,5.5vw,var(--fs-h1));font-weight:var(--fw-black);letter-spacing:var(--ls-display);line-height:var(--lh-display);margin:0}.form-page__lead{color:var(--color-text-muted);font-size:var(--fs-body);margin:0;max-width:60ch}.form{gap:var(--sp-5)}.form,.form-section{display:flex;flex-direction:column}.form-section{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);counter-increment:form-section;gap:var(--sp-4);padding:var(--sp-5);position:relative}.form-section__title{align-items:center;color:var(--color-text);display:flex;font-family:var(--font-display);font-size:var(--fs-data);font-weight:var(--fw-bold);gap:var(--sp-3);line-height:var(--lh-tight);margin:0;padding:0}.form-section__title:before{align-items:center;background:var(--color-text);border-radius:var(--radius-pin);color:var(--color-text-inverse);content:counter(form-section);display:inline-flex;font-family:var(--font-display-black);font-size:var(--fs-body);font-variant-numeric:tabular-nums;font-weight:var(--fw-black);height:32px;justify-content:center;width:32px}.form-section__title .icon{color:var(--color-accent)}.form-section__hint{color:var(--color-text-muted);font-size:var(--fs-small);margin:0}.form-grid{display:grid;gap:var(--sp-3);grid-template-columns:1fr}@media(width >= 480px){.form-grid{grid-template-columns:repeat(2,1fr)}}.club__header>div,.form-section>.form-grid>div,.form-section>div,.team>div{display:flex;flex-direction:column;gap:var(--sp-1)}form label{color:var(--color-text);font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-semibold)}form textarea{min-height:calc(var(--tap-min)*1.5);resize:vertical}form input[type=date],form input[type=email],form input[type=number],form input[type=tel],form input[type=text],form input[type=time],form input[type=url],form select,form textarea{background:var(--color-bg);border:var(--border-width-strong) solid var(--color-border);border-radius:var(--radius-base);color:var(--color-text);font:var(--fw-regular) var(--fs-body)/1.3 var(--font-base);min-height:var(--tap-min);padding:var(--sp-3);transition:border-color var(--transition-fast);width:100%}form input[type=date]:hover,form input[type=email]:hover,form input[type=number]:hover,form input[type=tel]:hover,form input[type=text]:hover,form input[type=time]:hover,form input[type=url]:hover,form select:hover,form textarea:hover{border-color:var(--color-border-strong)}form input[type=date]:focus-visible,form input[type=email]:focus-visible,form input[type=number]:focus-visible,form input[type=tel]:focus-visible,form input[type=text]:focus-visible,form input[type=time]:focus-visible,form input[type=url]:focus-visible,form select:focus-visible,form textarea:focus-visible{border-color:var(--color-accent);outline:2px solid var(--color-focus-ring);outline-offset:1px}form input[type=date][aria-invalid=true],form input[type=email][aria-invalid=true],form input[type=number][aria-invalid=true],form input[type=tel][aria-invalid=true],form input[type=text][aria-invalid=true],form input[type=time][aria-invalid=true],form input[type=url][aria-invalid=true],form select[aria-invalid=true],form textarea[aria-invalid=true]{border-color:var(--color-danger)}form input[type=checkbox]{accent-color:var(--color-accent);height:22px;margin:0 var(--sp-2) 0 0;width:22px}form .checkbox label,form label:has(input[type=checkbox]){align-items:center;cursor:pointer;display:flex;font-weight:var(--fw-regular);gap:var(--sp-2);min-height:var(--tap-min)}form .form-help,form .form-text,form small{color:var(--color-text-muted);display:block;font-size:var(--fs-small)}form ul{color:var(--color-danger);font-size:var(--fs-small);list-style:none;margin:0;padding:0}form ul li{margin-top:var(--sp-1)}.collection{display:flex;flex-direction:column;gap:var(--sp-3)}.form-collection__add{align-self:flex-start}.club{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.club__summary{align-items:center;cursor:pointer;display:flex;font-weight:600;gap:var(--sp-3);list-style:none;min-height:var(--tap-min);padding:var(--sp-3) var(--sp-4);user-select:none}.club__summary::-webkit-details-marker{display:none}.club__summary-chevron{align-items:center;color:var(--color-text-muted,var(--color-text));display:inline-flex;transition:transform .15s ease}.club[open] .club__summary-chevron{transform:rotate(90deg)}.club__summary-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.club__summary-count{background:var(--color-bg);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-base);color:var(--color-text-muted,var(--color-text));font-size:var(--fs-small,.875rem);font-weight:500;line-height:1.6;padding:0 var(--sp-2);white-space:nowrap}.club__body{border-top:var(--border-width) solid var(--color-border);padding:0 var(--sp-4) var(--sp-4);padding-top:var(--sp-3)}.club__body,.club__header{display:flex;flex-direction:column;gap:var(--sp-3)}.club__actions{gap:var(--sp-2)}.club__actions,.club__color{align-items:center;display:flex;flex-wrap:wrap}.club__color{gap:var(--sp-3)}.club__color-label{flex:1 0 100%}.club__color-swatch{border-radius:var(--radius-base);cursor:pointer;height:var(--tap-min);min-width:var(--tap-min);padding:0;width:var(--tap-min)}.club__remove,.team__remove{align-self:flex-start;border-color:var(--color-danger);color:var(--color-danger)}.club__remove:hover,.team__remove:hover{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-text-inverse)}.club__teams{border-top:var(--border-width) dashed var(--color-border);padding-top:var(--sp-3)}.team{background:var(--color-bg);border:var(--border-width) solid var(--color-border);flex-direction:column;gap:var(--sp-2);padding:var(--sp-3)}.form-banner,.team{border-radius:var(--radius-base);display:flex}.form-banner{align-items:flex-start;border:var(--border-width) solid transparent;border-left:4px solid transparent;font-size:var(--fs-body);gap:var(--sp-3);line-height:var(--lh-base);padding:var(--sp-3) var(--sp-4)}.form-banner p{margin:0}.form-banner strong{display:block;margin-bottom:var(--sp-1)}.form-banner .icon{flex:0 0 auto;margin-top:2px}.form-banner--error{background:#fdecea;border-color:var(--color-danger)}.form-banner--error,.form-banner--error .icon{color:var(--color-danger)}.form-banner--success{background:#e7f3e9;border-color:var(--color-success)}.form-banner--success,.form-banner--success .icon{color:var(--color-success)}.form-banner--warning{background:#fbf1e2;border-color:var(--color-warning)}.form-banner--warning,.form-banner--warning .icon{color:var(--color-warning)}.form-row{display:flex;flex-direction:column;gap:var(--sp-1)}.form-row__label{font-family:var(--font-display);font-weight:var(--fw-semibold)}.form-row__label,.form-row__value{color:var(--color-text);font-size:var(--fs-body)}.form-row__value{align-items:center;background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-base);display:flex;gap:var(--sp-2);margin:0;padding:var(--sp-3)}.form-row__value .icon{color:var(--color-text-muted);flex:0 0 auto}.form-row__input{background:var(--color-bg);border:var(--border-width-strong) solid var(--color-border);border-radius:var(--radius-base);color:var(--color-text);font:var(--fw-regular) var(--fs-body)/1.3 var(--font-base);min-height:var(--tap-min);padding:var(--sp-3)}.form-row__input--code{font-family:var(--font-mono);font-size:var(--fs-data-lg);font-weight:var(--fw-bold);letter-spacing:.2em;text-align:center;text-transform:uppercase}.form-row__help{color:var(--color-text-muted);font-size:var(--fs-small)}.form-row__preview{border-radius:var(--radius-card);height:auto;margin-top:var(--sp-2);max-width:120px}.form-preview{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-left:4px solid var(--color-accent);border-radius:var(--radius-card);font-size:var(--fs-body);margin:0;padding:var(--sp-4)}.form-preview__title{align-items:center;color:var(--color-text-muted);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-small);font-weight:var(--fw-bold);gap:var(--sp-2);letter-spacing:var(--ls-caps);margin:0 0 var(--sp-2);text-transform:uppercase}.form-preview__list{color:var(--color-text);display:grid;gap:var(--sp-1);list-style:none;margin:0;padding:0}.form-preview__list li{line-height:var(--lh-base)}.form-preview__list strong{color:var(--color-accent);font-family:var(--font-display);font-weight:var(--fw-bold)}.form-preview__hint{color:var(--color-text-muted);font-size:var(--fs-small);margin:var(--sp-2) 0 0}.form-preview__empty{color:var(--color-text-muted);margin:0}.team-name__error{color:var(--color-danger);font-size:var(--fs-small);margin-top:var(--sp-1)}.form--inline{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-left:4px solid var(--color-danger);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-5);padding:var(--sp-4)}.form--inline .btn{align-self:flex-start}.form-page__actions{backdrop-filter:blur(8px);background:color-mix(in srgb,var(--color-bg) 96%,transparent);border-top:var(--border-width) solid var(--color-border);bottom:0;display:flex;flex-wrap:wrap;gap:var(--sp-3);justify-content:stretch;margin:0 calc(var(--gutter)*-1);padding:var(--sp-4) var(--gutter);position:sticky;z-index:10}.form-page__submit{flex:1 1 220px;font-size:var(--fs-data);padding:var(--sp-4) var(--sp-5)}.creado{gap:var(--sp-5);padding-bottom:var(--sp-6)}.creado,.creado__header{display:flex;flex-direction:column}.creado__header{align-items:flex-start;gap:var(--sp-3)}.creado__badge{align-items:center;background:var(--color-accent);border-radius:var(--radius-pill);color:var(--color-text-inverse);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-small);font-weight:var(--fw-bold);gap:var(--sp-2);letter-spacing:var(--ls-caps);padding:var(--sp-2) var(--sp-3);text-transform:uppercase}.creado__title{font-family:var(--font-display-black);font-size:clamp(1.75rem,6vw,var(--fs-h1));font-weight:var(--fw-black);letter-spacing:var(--ls-display);line-height:var(--lh-display);margin:0}.creado__lead{color:var(--color-text-muted);font-size:var(--fs-data);margin:0;max-width:50ch}.creado__card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-5)}.creado__card--code{background:var(--pattern-court),linear-gradient(180deg,var(--color-surface-alt),var(--color-surface) 60%);border-color:var(--color-accent);border-width:var(--border-width-strong)}.creado__card--edit{border-left:4px solid var(--color-warning)}.creado__card--lost{background:linear-gradient(180deg,rgba(183,28,28,.05),var(--color-surface) 60%);border-left:4px solid var(--color-danger)}.creado__card-title{align-items:center;color:var(--color-text);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-data);font-weight:var(--fw-bold);gap:var(--sp-2);line-height:var(--lh-tight);margin:0}.creado__card-title .icon{color:var(--color-accent)}.creado__code{margin:0;padding:var(--sp-4) 0;text-align:center}.creado__code-value{background:var(--color-surface);border:var(--border-width-strong) dashed var(--color-accent);border-radius:var(--radius-base);color:var(--color-text);display:inline-block;font-family:var(--font-mono);font-size:clamp(1.75rem,9vw,2.75rem);font-weight:var(--fw-bold);letter-spacing:.22em;padding:var(--sp-4) var(--sp-5);user-select:all}.creado__copy{align-self:stretch}.creado__copy[data-copied=true]{background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.creado__copy[data-copied=true]:after{content:" · ¡Copiado!";font-weight:var(--fw-bold);margin-left:var(--sp-1)}.creado__warning{align-items:flex-start;background:rgba(183,28,28,.06);border-radius:var(--radius-base);color:var(--color-danger);display:flex;font-size:var(--fs-body);gap:var(--sp-2);margin:0;padding:var(--sp-3)}.creado__warning .icon{flex:0 0 auto;margin-top:2px}.creado__hint{color:var(--color-text-muted);font-size:var(--fs-small);margin:0}.creado__url{display:flex;flex-direction:column;gap:var(--sp-2)}.creado__url-value{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-base);color:var(--color-text);display:block;font-family:var(--font-mono);font-size:var(--fs-body);overflow-wrap:anywhere;padding:var(--sp-3) var(--sp-4)}.creado__url-share{align-self:stretch;text-align:center}.creado__actions{display:flex;flex-wrap:wrap;gap:var(--sp-3);padding-top:var(--sp-3)}.creado__actions .btn{flex:1 1 220px;font-size:var(--fs-data)}.creado__card--edit .creado__card-title .icon{color:var(--color-warning)}.creado__card--lost .creado__card-title .icon{color:var(--color-danger)}.modal{display:none;inset:0;position:fixed;z-index:1000}.modal--open{display:block}.modal[hidden]{display:none}.modal__overlay{align-items:stretch;backdrop-filter:blur(2px);background:rgba(10,13,18,.65);display:flex;inset:0;justify-content:stretch;padding:0;position:absolute}@media(width >= 600px){.modal__overlay{align-items:center;justify-content:center;padding:var(--sp-5)}}.modal__dialog{background:var(--color-surface);border-radius:0;border-top:4px solid var(--color-accent);box-shadow:0 16px 40px rgba(10,13,18,.28);display:flex;flex-direction:column;gap:var(--sp-4);max-height:100dvh;max-width:560px;overflow-y:auto;padding:var(--sp-5) var(--sp-5) var(--sp-4);position:relative;width:100%}@media(width >= 600px){.modal__dialog{border-radius:var(--radius-card);max-height:85dvh}}.modal__close{align-items:center;background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);cursor:pointer;display:inline-flex;height:var(--tap-min);justify-content:center;min-width:var(--tap-min);padding:0;position:absolute;right:var(--sp-3);top:var(--sp-3);transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);width:var(--tap-min);z-index:2}.modal__close .icon{height:22px;stroke-width:2.25;width:22px}.modal__close:hover{background:var(--color-text);border-color:var(--color-text);color:var(--color-text-inverse)}.modal__close:active{transform:scale(.94)}.modal__close:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.modal__header{padding-right:var(--tap-min)}.modal__title{align-items:center;display:inline-flex;font-family:var(--font-display-black);font-size:var(--fs-title);font-weight:var(--fw-black);gap:var(--sp-2);letter-spacing:var(--ls-display);line-height:var(--lh-tight);margin:0}.modal__title .icon{color:var(--color-accent)}.modal__content{gap:var(--sp-4)}.modal__content,.modal__form{display:flex;flex-direction:column}.modal__form{gap:var(--sp-3)}.modal__actions{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-3)}@media(width >= 480px){.modal__actions{flex-direction:row-reverse;justify-content:flex-start}}.modal__actions .btn{flex:1}.catalog-picker{display:flex;flex-direction:column;gap:var(--sp-2)}.catalog-picker__add{align-self:flex-start}.publico{gap:var(--sp-6);padding-bottom:var(--sp-7)}.publico,.publico-header{display:flex;flex-direction:column}.publico-header{background:var(--pattern-court),linear-gradient(180deg,var(--color-surface-alt),var(--color-bg) 80%);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);gap:var(--sp-4);overflow:hidden;padding:var(--sp-5) var(--sp-5) var(--sp-5);position:relative}.publico-header:before{background:linear-gradient(90deg,var(--color-accent) 0,var(--color-accent) 30%,var(--color-now) 30%,var(--color-now) 60%,var(--color-next) 60%,var(--color-next) 100%);content:"";height:6px;inset:0 0 auto;position:absolute}.publico-header__top{align-items:flex-start;display:flex;gap:var(--sp-4)}.publico-header__logo{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);flex:0 0 auto;height:88px;object-fit:contain;padding:var(--sp-2);width:88px}.publico-header__titlewrap{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.publico-header__kicker{align-items:center;color:var(--color-text-muted);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-micro);font-weight:var(--fw-bold);gap:var(--sp-1);letter-spacing:var(--ls-caps);margin:0;text-transform:uppercase}.publico-header__title{color:var(--color-text);font-family:var(--font-display-black);font-size:clamp(1.75rem,5.5vw,var(--fs-h1));font-weight:var(--fw-black);letter-spacing:var(--ls-display);line-height:var(--lh-display);margin:0;overflow-wrap:anywhere}.publico-header__meta{display:flex;flex-wrap:wrap;gap:var(--sp-2);list-style:none;margin:0;padding:0}.publico-header__chip{align-items:center;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);display:inline-flex;font-size:var(--fs-small);font-weight:var(--fw-medium);gap:var(--sp-2);padding:var(--sp-2) var(--sp-3)}.publico-header__chip .icon{color:var(--color-accent)}.publico-header__chip strong{font-weight:var(--fw-semibold);text-transform:capitalize}.publico-header__notes{align-items:flex-start;background:var(--color-surface);border-left:4px solid var(--color-accent);border-radius:var(--radius-base);color:var(--color-text);display:flex;font-size:var(--fs-body);gap:var(--sp-2);margin:0;padding:var(--sp-3) var(--sp-4)}.publico-header__notes .icon{color:var(--color-accent);margin-top:2px}.publico-header__actions{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.publico-sede{align-items:start;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);display:grid;gap:var(--sp-2) var(--sp-3);grid-template-columns:auto 1fr;padding:var(--sp-4)}.publico-sede__icon{align-items:center;background:var(--color-accent);border-radius:var(--radius-pin);color:var(--color-text-inverse);display:inline-flex;grid-row:span 3;height:44px;justify-content:center;width:44px}.publico-sede__title{color:var(--color-text);font-family:var(--font-display);font-size:var(--fs-data);font-weight:var(--fw-bold);line-height:var(--lh-tight);margin:0}.publico-sede__addr{color:var(--color-text-muted);font-size:var(--fs-body);grid-column:2;margin:0}.publico-sede__map{align-self:flex-start;font-size:var(--fs-small);grid-column:2;margin-top:var(--sp-1);min-height:auto;padding:var(--sp-2) var(--sp-3)}.publico-filter{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4)}.publico-filter__label{align-items:center;color:var(--color-text-muted);display:inline-flex;font-family:var(--font-display);font-size:var(--fs-small);font-weight:var(--fw-bold);gap:var(--sp-2);letter-spacing:var(--ls-caps);text-transform:uppercase}.publico-filter__label .icon{color:var(--color-accent)}.publico-filter__select{appearance:auto;background:var(--color-surface);border:var(--border-width-strong) solid var(--color-border);border-radius:var(--radius-base);color:var(--color-text);cursor:pointer;font:var(--fw-medium) var(--fs-data)/1.2 var(--font-base);min-height:var(--tap-min);padding:var(--sp-3) var(--sp-4)}.publico-filter__select:focus-visible{border-color:var(--color-accent);outline:2px solid var(--color-focus-ring);outline-offset:2px}.publico-filter__submit{align-self:flex-start}.publico-banner{align-items:flex-start;background:var(--color-surface);border-left:4px solid var(--color-border-strong);border-radius:var(--radius-card);color:var(--color-text);display:flex;gap:var(--sp-3);padding:var(--sp-4)}.publico-banner p{margin:0}.publico-banner .icon{flex:0 0 auto;margin-top:2px}.publico-banner--upcoming{background:linear-gradient(135deg,rgba(12,59,110,.06),var(--color-surface) 60%);border-left-color:var(--color-next)}.publico-banner--upcoming .icon{color:var(--color-next)}.publico-banner--finished,.publico-banner--readonly{background:linear-gradient(135deg,rgba(138,75,0,.08),var(--color-surface) 60%);border-left-color:var(--color-warning)}.publico-banner--finished .icon,.publico-banner--readonly .icon{color:var(--color-warning)}.card-slot{--slot-bg:var(--color-surface);--slot-fg:var(--color-text);--slot-tint:rgb(0 0 0/6%);background:var(--slot-bg);border-radius:var(--radius-card);box-shadow:var(--shadow-card);color:var(--slot-fg);display:flex;flex-direction:column;gap:var(--sp-4);overflow:hidden;padding:var(--sp-5);position:relative}.card-slot--ahora{--slot-bg:var(--color-now);--slot-fg:var(--color-now-text);--slot-tint:var(--color-now-tint);background:var(--pattern-court-on-dark),radial-gradient(120% 80% at 100% 0,#a04600 0,var(--color-now) 60%);box-shadow:var(--shadow-now)}@media(prefers-reduced-motion:no-preference){.card-slot--ahora{animation:card-slot-reveal .38s ease-out both}}.card-slot--proximo{--slot-bg:var(--color-next);--slot-fg:var(--color-next-text);--slot-tint:var(--color-next-tint);background:var(--pattern-court-on-dark),radial-gradient(120% 80% at 100% 0,#134985 0,var(--color-next) 60%);box-shadow:var(--shadow-next)}@media(prefers-reduced-motion:no-preference){.card-slot--proximo{animation:card-slot-reveal .38s ease-out 80ms both}}.card-slot__head{border-bottom:1px solid var(--slot-tint);display:flex;flex-direction:column;gap:var(--sp-1);padding-bottom:var(--sp-3)}.card-slot__kicker{align-items:center;display:inline-flex;font-family:var(--font-display);font-size:var(--fs-small);font-weight:var(--fw-bold);gap:var(--sp-2);letter-spacing:var(--ls-caps);margin:0;opacity:.9;text-transform:uppercase}.card-slot__time{font-family:var(--font-display-black);font-size:clamp(2.25rem,9vw,var(--fs-scoreboard));font-variant-numeric:tabular-nums;font-weight:var(--fw-black);letter-spacing:var(--ls-display);line-height:var(--lh-display);margin:0}.card-slot__time-sep{display:inline-block;font-weight:var(--fw-bold);margin:0 .05em;opacity:.55}.card-slot__matches{display:flex;flex-direction:column;gap:var(--sp-3);list-style:none;margin:0;padding:0}.card-slot__match{align-items:stretch;background:var(--slot-tint);border-radius:var(--radius-base);display:grid;gap:var(--sp-4);grid-template-columns:72px 1fr;padding:var(--sp-3)}.card-slot__match.is-hidden{display:none}.card-slot__court-pin{align-items:center;background:hsla(0,0%,100%,.92);border-radius:var(--radius-pin);box-shadow:inset 0 -2px 0 rgba(0,0,0,.12);color:var(--color-text);display:flex;flex-direction:column;gap:2px;justify-content:center;padding:var(--sp-2)}.card-slot__court-label{color:var(--color-text-muted);font-family:var(--font-display);font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);line-height:1;text-transform:uppercase}.card-slot__court-number{color:var(--slot-bg);font-family:var(--font-display-black);font-size:1.875rem;font-variant-numeric:tabular-nums;font-weight:var(--fw-black);letter-spacing:var(--ls-display);line-height:1}.card-slot__teams-stack{display:flex;flex-direction:column;gap:var(--sp-1);justify-content:center;min-width:0}.card-slot__team{color:currentcolor;font-family:var(--font-display);font-size:var(--fs-data-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);overflow-wrap:anywhere}.card-slot__coach{display:block;font-family:var(--font-base);font-size:var(--fs-small);font-weight:var(--fw-regular);margin-top:2px;opacity:.8}.card-slot__vs{align-items:center;display:inline-flex;font-family:var(--font-display);font-size:var(--fs-small);font-weight:var(--fw-bold);gap:var(--sp-2);letter-spacing:var(--ls-caps);opacity:.7;text-transform:uppercase}.card-slot__vs:after,.card-slot__vs:before{background:currentcolor;content:"";flex:0 0 1.25rem;height:2px;opacity:.4}.card-slot__free{align-self:center;font-family:var(--font-display);font-size:var(--fs-data);font-style:italic;font-weight:var(--fw-bold);opacity:.85}@keyframes card-slot-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fixture{display:flex;flex-direction:column;gap:var(--sp-5)}.fixture__title{align-items:center;color:var(--color-text);display:inline-flex;font-family:var(--font-display-black);font-size:var(--fs-title);font-weight:var(--fw-black);gap:var(--sp-2);letter-spacing:var(--ls-display);margin:0;text-transform:uppercase}.fixture__title .icon{color:var(--color-accent)}.fixture__slots{gap:var(--sp-5);list-style:none;margin:0;padding:0}.fixture__slot,.fixture__slots{display:flex;flex-direction:column}.fixture__slot-time{align-items:baseline;background:var(--color-text);border-radius:var(--radius-card) var(--radius-card) 0 0;color:var(--color-text-inverse);display:flex;flex-wrap:wrap;gap:var(--sp-3);margin:0;padding:var(--sp-3) var(--sp-4)}.fixture__slot-number{align-items:center;display:inline-flex;font-family:var(--font-display-black);font-size:var(--fs-small);font-weight:var(--fw-black);gap:var(--sp-2);letter-spacing:var(--ls-caps);text-transform:uppercase}.fixture__slot-number:before{background:currentcolor;border-radius:50%;content:"";display:inline-block;height:6px;width:6px}.fixture__slot-range{font-family:var(--font-display-black);font-size:var(--fs-data-lg);font-variant-numeric:tabular-nums;font-weight:var(--fw-black);letter-spacing:var(--ls-tight);line-height:1}.fixture__table{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-collapse:collapse;border-radius:0 0 var(--radius-card) var(--radius-card);border-top:0;overflow:hidden;width:100%}.fixture__table td,.fixture__table th{border-bottom:var(--border-width) solid var(--color-border);font-size:var(--fs-body);padding:var(--sp-3) var(--sp-4);text-align:left;vertical-align:middle}.fixture__table th{color:var(--color-text-muted);font-family:var(--font-display);font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase}.fixture__table tbody tr:nth-child(2n),.fixture__table th{background:var(--color-surface-alt)}.fixture__table tbody tr:last-child td{border-bottom:0}.fixture__table tbody tr.is-hidden{display:none}.fixture__court{padding-right:var(--sp-2)!important;width:4rem}.fixture__court-pin{align-items:center;background:var(--color-text);border-radius:var(--radius-pin);color:var(--color-text-inverse);display:inline-flex;font-family:var(--font-display-black);font-size:var(--fs-data);font-variant-numeric:tabular-nums;font-weight:var(--fw-black);height:36px;justify-content:center;line-height:1;width:36px}.fixture__match{align-items:center;display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-3)}.fixture__team{align-items:flex-start;color:var(--color-text);display:inline-flex;flex-direction:column;font-family:var(--font-display);font-size:var(--fs-data);font-weight:var(--fw-bold);line-height:var(--lh-tight);overflow-wrap:anywhere}.fixture__coach{color:var(--color-text-muted);display:block;font-family:var(--font-base);font-size:var(--fs-small);font-weight:var(--fw-regular);margin-top:2px}.fixture__vs{align-items:center;border:1.5px solid var(--color-border);border-radius:var(--radius-pill);display:inline-flex;font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);padding:2px var(--sp-2);text-transform:uppercase}.fixture__free,.fixture__vs{color:var(--color-text-muted);font-family:var(--font-display)}.fixture__free{font-style:italic;font-weight:var(--fw-medium)}.fixture__empty{background:var(--color-surface-alt);border-radius:var(--radius-card);color:var(--color-text-muted);margin:0;padding:var(--sp-5);text-align:center}.publico-footer{border-top:var(--border-width) solid var(--color-border);display:flex;justify-content:center;margin-top:var(--sp-3);padding-top:var(--sp-5)}.publico-footer__edit{align-items:center;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);display:inline-flex;font-size:var(--fs-small);gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);text-decoration:none;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.publico-footer__edit:hover{background:var(--color-surface-alt);border-color:var(--color-accent);color:var(--color-accent)}@media(width >= 600px){.card-slot__match{gap:var(--sp-5);grid-template-columns:96px 1fr;padding:var(--sp-4)}.card-slot__court-pin{padding:var(--sp-3)}.card-slot__court-number{font-size:2.25rem}.publico-header{padding:var(--sp-6)}}