@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/fraunces-vietnamese-600-normal.193671c9.woff2) format("woff2"),url(/_next/static/media/fraunces-vietnamese-600-normal.065a9a3b.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-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/fraunces-latin-ext-600-normal.57d15a46.woff2) format("woff2"),url(/_next/static/media/fraunces-latin-ext-600-normal.28a40ed4.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-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/fraunces-latin-600-normal.ed64c0f8.woff2) format("woff2"),url(/_next/static/media/fraunces-latin-600-normal.ba6c964e.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-family:Fraunces;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/fraunces-vietnamese-700-normal.f424b6bc.woff2) format("woff2"),url(/_next/static/media/fraunces-vietnamese-700-normal.61138153.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-family:Fraunces;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/fraunces-latin-ext-700-normal.d312ab20.woff2) format("woff2"),url(/_next/static/media/fraunces-latin-ext-700-normal.0f09c1d7.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-family:Fraunces;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/fraunces-latin-700-normal.bce7b40f.woff2) format("woff2"),url(/_next/static/media/fraunces-latin-700-normal.c22bdb2f.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-cyrillic-ext-400-normal.1397077e.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-ext-400-normal.5ad6f34b.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-cyrillic-400-normal.dbd38377.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-400-normal.cb4dea3a.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-greek-ext-400-normal.4c16a1b8.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-ext-400-normal.3277bd1e.woff) format("woff");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-greek-400-normal.422877fb.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-400-normal.97bd8d87.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-vietnamese-400-normal.00ae44f2.woff2) format("woff2"),url(/_next/static/media/source-sans-3-vietnamese-400-normal.479294c9.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-latin-ext-400-normal.73a02de5.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-ext-400-normal.b0bbf0e5.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/source-sans-3-latin-400-normal.827817a6.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-400-normal.c134a0b8.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-cyrillic-ext-500-normal.85f3dc51.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-ext-500-normal.23321702.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-cyrillic-500-normal.c0c27766.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-500-normal.2b81a897.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-greek-ext-500-normal.64d934bb.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-ext-500-normal.9ff16e33.woff) format("woff");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-greek-500-normal.5079fda7.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-500-normal.eab52b15.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-vietnamese-500-normal.191f5eb9.woff2) format("woff2"),url(/_next/static/media/source-sans-3-vietnamese-500-normal.a2c40d12.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-latin-ext-500-normal.eed3e4fe.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-ext-500-normal.d7a8caab.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/source-sans-3-latin-500-normal.f8d8377b.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-500-normal.783fe4ca.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-cyrillic-ext-600-normal.a7e7323b.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-ext-600-normal.ac21dc86.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-cyrillic-600-normal.b6ec5816.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-600-normal.71d66706.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-greek-ext-600-normal.d0a4bcdd.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-ext-600-normal.23144076.woff) format("woff");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-greek-600-normal.24f8e653.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-600-normal.40dc593f.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-vietnamese-600-normal.b019ee49.woff2) format("woff2"),url(/_next/static/media/source-sans-3-vietnamese-600-normal.43b3b950.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-latin-ext-600-normal.8cf9eac4.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-ext-600-normal.2b69b537.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/source-sans-3-latin-600-normal.580e937f.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-600-normal.d14b3261.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-cyrillic-ext-700-normal.e2e9f21f.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-ext-700-normal.bdde9047.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-cyrillic-700-normal.c018c8b5.woff2) format("woff2"),url(/_next/static/media/source-sans-3-cyrillic-700-normal.64b16654.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-greek-ext-700-normal.cba4e04d.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-ext-700-normal.7255e9ea.woff) format("woff");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-greek-700-normal.d5a3c307.woff2) format("woff2"),url(/_next/static/media/source-sans-3-greek-700-normal.2e79fc83.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-vietnamese-700-normal.8a8bca1e.woff2) format("woff2"),url(/_next/static/media/source-sans-3-vietnamese-700-normal.0aa8a165.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-latin-ext-700-normal.34a8fab1.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-ext-700-normal.6219be81.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-family:Source Sans\ 3;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/source-sans-3-latin-700-normal.86e95c1a.woff2) format("woff2"),url(/_next/static/media/source-sans-3-latin-700-normal.8c7ea46d.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-scheme:light;--bg:#f7f5f0;--surface:#ffffff;--surface-strong:#f1eee7;--text:#1b1f23;--muted:#5b6570;--line:#e3ded4;--line-strong:#c9c1b3;--border:var(--line);--highlight:#fff3c4;--shadow:rgba(15,23,42,0.08);--accent:#0b6b75;--accent-contrast:#ffffff;--brand-accent:#d99a1e;--brand-accent-contrast:#1b1f23;--success-bg:#e4f5ea;--success-line:#a9d8b7;--success-text:#12622f;--danger-bg:#ffe6e2;--danger-line:#f2b2a9;--danger-text:#8a2114;--danger-solid:#b42318;--warning-bg:#fff4d6;--warning-line:#e4be3f;--warning-text:#6f4a00;--info-bg:#dbeafe;--info-line:#93c5fd;--info-text:#1e40af;--special-bg:#f3e8ff;--special-line:#c084fc;--special-text:#6b21a8;--muted-solid:#8b949e;--radius:12px;--radius-small:8px;--font-display:"Fraunces",Georgia,serif;--font-body:"Source Sans 3","Segoe UI",system-ui,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg:#121416;--surface:#1b1e22;--surface-strong:#24282d;--text:#ebe8e2;--muted:#a5acb4;--line:#31363c;--line-strong:#4a5058;--highlight:#4a3f12;--shadow:rgba(0,0,0,0.4);--success-bg:#173524;--success-line:#2f6b45;--success-text:#8fdca8;--danger-bg:#3d1c1a;--danger-line:#7a3530;--danger-text:#f4a39a;--danger-solid:#c0392b;--warning-bg:#3a2c12;--warning-line:#7a5a1c;--warning-text:#f1c26b;--info-bg:#172a45;--info-line:#2f5b8f;--info-text:#9cc3f5;--special-bg:#2e1c3d;--special-line:#6a3f8c;--special-text:#d3a8f2;--muted-solid:#5b636c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#121416;--surface:#1b1e22;--surface-strong:#24282d;--text:#ebe8e2;--muted:#a5acb4;--line:#31363c;--line-strong:#4a5058;--highlight:#4a3f12;--shadow:rgba(0,0,0,0.4);--success-bg:#173524;--success-line:#2f6b45;--success-text:#8fdca8;--danger-bg:#3d1c1a;--danger-line:#7a3530;--danger-text:#f4a39a;--danger-solid:#c0392b;--warning-bg:#3a2c12;--warning-line:#7a5a1c;--warning-text:#f1c26b;--info-bg:#172a45;--info-line:#2f5b8f;--info-text:#9cc3f5;--special-bg:#2e1c3d;--special-line:#6a3f8c;--special-text:#d3a8f2;--muted-solid:#5b636c}}.brandPreview,:root{--accent-dark:color-mix(in srgb,var(--accent) 78%,black);--accent-text:color-mix(in srgb,var(--accent) 80%,black);--accent-soft:color-mix(in srgb,var(--accent) 12%,var(--surface));--brand-accent-soft:color-mix(in srgb,var(--brand-accent) 18%,var(--surface))}:root[data-theme=dark],:root[data-theme=dark] .brandPreview{--accent-dark:color-mix(in srgb,var(--accent) 70%,white);--accent-text:color-mix(in srgb,var(--accent) 50%,white);--accent-soft:color-mix(in srgb,var(--accent) 26%,var(--surface));--brand-accent-soft:color-mix(in srgb,var(--brand-accent) 26%,var(--surface))}@media (prefers-color-scheme:dark){:root:not([data-theme=light]),:root:not([data-theme=light]) .brandPreview{--accent-dark:color-mix(in srgb,var(--accent) 70%,white);--accent-text:color-mix(in srgb,var(--accent) 50%,white);--accent-soft:color-mix(in srgb,var(--accent) 26%,var(--surface));--brand-accent-soft:color-mix(in srgb,var(--brand-accent) 26%,var(--surface))}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.45}button,input,select{font:inherit}.shell{min-height:100vh;padding:28px}.brandTitle{align-items:center;display:flex;gap:14px;min-width:0}.siteLogo{aspect-ratio:1;border:1px solid var(--line);border-radius:8px;height:68px;object-fit:cover;width:68px}.eyebrow{font-size:13px;margin:0 0 6px;text-transform:uppercase}h1,h2{margin:0;letter-spacing:0}.displayHeading,h1,h2,h3{font-family:var(--font-display);font-weight:700}h1{font-size:30px}h2{font-size:20px}.authShell{align-items:center;display:grid;justify-content:center}.loginPanel{background:var(--surface);border:1px solid var(--line);border-radius:8px;display:grid;gap:18px;max-width:460px;padding:28px;width:min(460px,calc(100vw - 56px))}.loginText{color:var(--muted);line-height:1.5;margin:0}.loginButton{justify-content:center;text-decoration:none}.viewTabs{align-items:center;display:flex;gap:8px;margin:-6px 0 20px}.viewTabs .adminTab{margin-left:auto}.viewTabs button{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:6px;color:var(--muted);cursor:pointer;display:inline-flex;font-weight:700;gap:7px;justify-content:center;min-height:38px;padding:0 14px}.viewTabs button.active{background:var(--accent);border-color:var(--accent-text);color:var(--accent-contrast)}.primaryButton{background:var(--accent);border:0;border-radius:6px;color:var(--accent-contrast)}.primaryButton,.secondaryButton{align-items:center;cursor:pointer;display:inline-flex;gap:9px;min-height:42px;padding:0 16px}.secondaryButton{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text)}.primaryButton:disabled,.secondaryButton:disabled{cursor:progress;opacity:.7}.smallButton{background:var(--accent);border:0;border-radius:6px;color:var(--accent-contrast);cursor:pointer;font-size:12px;font-weight:700;height:34px;min-width:118px;padding:0 12px}.smallButton:disabled{cursor:progress;opacity:.7}.controls{align-items:end;display:grid;gap:14px;grid-template-columns:minmax(280px,420px) minmax(150px,220px) minmax(220px,320px);margin-bottom:18px}label{color:var(--muted);display:grid;gap:7px;font-size:13px;font-weight:700}input,select{color:var(--text);padding:0 11px}.searchBox span,input,select{background:var(--surface);border:1px solid var(--line);border-radius:6px;min-height:40px}.searchBox span{align-items:center;display:flex;padding:0 10px}.searchBox input{border:0;flex:1 1;min-height:36px;outline:0}.alert{background:var(--danger-bg);border:1px solid var(--danger-line);border-radius:6px;color:var(--danger-text)}.alert,.notice{margin-bottom:16px;padding:12px 14px}.notice{background:var(--success-bg);border:1px solid var(--success-line);border-radius:6px;color:var(--success-text)}.chartsGrid,.statsGrid{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:18px}.chartsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.battleStats{grid-template-columns:repeat(7,minmax(0,1fr))}.metric{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;min-height:96px;padding:16px}.metric span{color:var(--muted);font-size:13px;font-weight:700}.metric strong{font-size:26px}.chartPanel{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:0;padding:16px}.chartHeader{align-items:center;display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.chartHeader strong{font-size:21px}.chartBody{display:grid;gap:18px;grid-template-columns:180px minmax(0,1fr)}.chartBody,.pie{align-items:center}.pie{aspect-ratio:1;display:flex;justify-content:center;position:relative;width:180px}.pie,.pie:after{border-radius:50%}.pie:after{background:var(--surface);content:"";height:58%;position:absolute;width:58%}.pie span{color:var(--muted);font-size:15px;font-weight:700;position:relative;z-index:1}.legend,.legendItem{display:grid;gap:8px}.legendItem{align-items:center;grid-template-columns:12px minmax(120px,1fr) minmax(70px,auto) minmax(52px,auto)}.legendItem i{border-radius:3px;height:12px;width:12px}.legendItem em,.legendItem span{color:var(--muted);font-size:13px;font-style:normal}.legendItem strong{font-size:13px;text-align:right}.content{display:grid;gap:18px;grid-template-columns:minmax(500px,.9fr) minmax(520px,1.1fr)}.battleControls{align-items:end;grid-template-columns:minmax(320px,520px) auto 1fr auto}.battleUploadButton{align-self:end;justify-self:end;overflow:hidden;position:relative}.battleUploadButton input,.logoUploadButton input{height:1px;opacity:0;pointer-events:none;position:absolute;width:1px}.adminControls{display:flex;flex-wrap:wrap}.adminSubTabs{margin:0 0 16px}.adminSubTabs button:last-child{margin-left:auto}.snapshotActions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;padding:16px}.playerBotToolbar{align-items:center;display:flex;justify-content:flex-end}.playerBotTable{max-height:calc(100vh - 310px)}.playerBotTable select{min-width:260px;width:100%}.playerBotTable .linkButton{min-width:94px}.linkButton{align-items:center;background:transparent;border:1px solid var(--line);border-radius:6px;color:var(--accent-text);cursor:pointer;display:inline-flex;font-weight:700;gap:6px;justify-content:center;min-height:32px;padding:0 10px}.linkButton:disabled{color:var(--muted);cursor:not-allowed;opacity:.6}.unresolvedRow{background:var(--warning-bg)}.botAdminPanel{overflow:hidden}.botAdminBody{display:grid;gap:16px;padding:16px}.botEvent,.botEventGrid,.lineupTeams{display:grid;gap:12px}.botEvent{align-items:center;border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;padding:14px}.botEvent em,.botEvent small,.botEvent span,.botEvent strong{display:block}.botEvent span{font-weight:700;margin-top:4px}.botEvent em,.botEvent small{color:var(--muted);font-size:13px;font-style:normal;margin-top:4px}.rowActions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.dangerButton{background:var(--danger-solid)}.mutedButton,.mutedButton:disabled{background:var(--muted-solid);color:white;cursor:not-allowed;opacity:1}.botSettings{display:grid;gap:18px}.settingsIntroGrid{align-items:stretch;display:grid;gap:16px;grid-template-columns:minmax(190px,230px) minmax(280px,1fr)}.logoSettings{border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;padding:14px}.logoSettings h3{font-size:15px;margin:0}.logoPreview{aspect-ratio:1;border:1px solid var(--line);border-radius:8px;object-fit:cover;width:108px}.logoUploadButton{cursor:pointer;justify-content:center;overflow:hidden;position:relative}.logoUploadButton input{height:1px;opacity:0;pointer-events:none;position:absolute;width:1px}.settingsGrid,.weekdayGrid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.settingsGrid{grid-template-columns:repeat(3,minmax(180px,1fr))}.botSettingsLayout{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(260px,.85fr) minmax(320px,1.15fr)}.settingsBlock{border:1px solid var(--line);border-radius:8px;display:grid;gap:14px;padding:14px}.maintenanceSettingsBlock{grid-column:1/-1}.settingsHint{color:var(--muted);font-size:13px;line-height:1.45;margin:0}.settingsBlockHeader{border-bottom:1px solid var(--line);display:grid;gap:4px;padding-bottom:12px}.clanTagEditor h3,.settingsBlockHeader h3{font-size:15px;margin:0}.settingsBlockHeader span{color:var(--muted);font-size:12px;font-weight:700}.timeSettingsList,.weekdayList{display:grid;gap:10px}.timeSettingsList label{border:1px solid var(--line);border-radius:8px;padding:12px}.timeSettingsList small{color:var(--muted);font-size:12px;font-weight:600}.discordChannelActions{display:flex;flex-wrap:wrap;gap:10px}.discordChannelActions button{flex:1 1 180px}.checkLabel{align-items:center;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:row;gap:8px;min-height:42px;padding:0 12px}.checkLabel input{min-height:auto;width:auto}.clanTagEditor{border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;padding:14px}.tagList{display:flex;flex-wrap:wrap;gap:8px}.tagChip{background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;gap:8px;min-height:32px;padding:0 6px 0 12px}.tagChip,.tagChip button{align-items:center;display:inline-flex;font-weight:700}.tagChip button{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:16px;height:24px;justify-content:center;min-height:24px;padding:0;width:24px}.inlineForm{display:grid;gap:8px;grid-template-columns:minmax(160px,1fr) auto}.attendancePanel{overflow:hidden}.attendanceLegend{align-content:center;display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;white-space:nowrap}.attendanceLegend span{background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;min-height:28px;padding:5px 10px;font-size:12px;font-weight:700}.attendanceWrap{max-height:calc(100vh - 300px);overflow:auto}.attendanceTable{min-width:980px}.attendanceTable td,.attendanceTable th{border-right:1px solid var(--line);min-width:74px;text-align:center}.attendanceTable tbody tr:nth-child(2n) td{background:var(--surface-strong)}.attendanceTable .stickyName{background:var(--surface);left:0;min-width:220px;position:sticky;text-align:left;z-index:2}.attendanceTable thead .stickyName{background:var(--surface-strong);z-index:4}.attendanceTable .stickyCount{background:var(--surface);left:220px;min-width:72px;position:sticky;z-index:2}.attendanceTable thead .stickyCount{background:var(--surface-strong);z-index:4}.attendanceTable td.stickyName span{color:var(--muted);display:block;font-size:12px;margin-top:3px}.attendanceInput{border-width:1px;font-weight:800;min-height:32px;padding:0;text-align:center;text-transform:uppercase;width:46px}.attendanceInput.status1,.attendanceLegend .status1{background:var(--success-bg);border-color:var(--success-line);color:var(--success-text)}.attendanceInput.status0,.attendanceLegend .status0{background:var(--danger-bg);border-color:var(--danger-line);color:var(--danger-text)}.attendanceInput.statusE,.attendanceLegend .statusE{background:var(--warning-bg);border-color:var(--warning-line);color:var(--warning-text)}.attendanceInput.statusX,.attendanceLegend .statusX{background:var(--special-bg);border-color:var(--special-line);color:var(--special-text)}.attendanceInput.statusP,.attendanceLegend .statusP{background:var(--info-bg);border-color:var(--info-line);color:var(--info-text)}.attendanceInput.statusL,.leadLegend .statusL{background:var(--success-bg);border-color:var(--success-line);color:var(--success-text)}.leadLegend .statusX{background:var(--warning-bg);border-color:var(--warning-line);color:var(--warning-text)}.cwLeadTable .attendanceInput.status0,.leadLegend .status0{background:var(--danger-bg);border-color:var(--danger-line);color:var(--danger-text)}.cwLeadTable .attendanceInput.statusX{background:var(--warning-bg);border-color:var(--warning-line);color:var(--warning-text)}.cwLeadSeasonPanel{overflow:hidden}.leadPlanner{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(230px,300px) minmax(0,1fr)}.leadPool{border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;max-height:calc(100vh - 310px);overflow:hidden;padding:12px}.leadPool h3{font-size:15px;margin:0}.leadPoolList{display:grid;gap:8px;overflow:auto}.leadPoolItem{align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:6px;color:var(--text);cursor:grab;display:grid;gap:3px;justify-items:start;min-height:48px;padding:8px 10px;text-align:left}.leadPoolItem span{color:var(--muted);font-size:12px}.leadDropZone{border:1px dashed var(--line);border-radius:8px}.cwLeadTable{min-width:1040px}.cwLeadTable td:last-child,.cwLeadTable th:last-child{min-width:76px}.assessmentPanel{overflow:hidden}.assessmentFilters{align-items:end;border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,300px) minmax(170px,210px) minmax(150px,190px) auto auto}.assessmentLayout{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(240px,300px) minmax(240px,300px) minmax(720px,1fr);padding:16px}.assessmentLayout.printMode{grid-template-columns:minmax(720px,1fr)}.assessmentArea,.assessmentPool,.assessmentTemplate{border:1px solid var(--line);border-radius:8px;min-width:0;overflow:hidden}.subPanelHeader{align-items:center;background:var(--surface-strong);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;min-height:42px;padding:0 12px}.subPanelHeader h3{font-size:15px;margin:0}.subPanelHeader span{color:var(--muted);font-size:12px;font-weight:700}.templateArea{border-bottom:1px solid var(--line);padding:10px 12px}.templateArea:last-child{border-bottom:0}.templateArea>strong{display:block;font-size:13px;margin-bottom:6px}.templateArea p{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(90px,1fr) 44px minmax(64px,.7fr);margin:0;min-height:26px}.mutedRow,.templateArea em,.templateArea small{color:var(--muted);font-style:normal}.playerPoolList{display:grid;gap:6px;max-height:calc(100vh - 360px);overflow:auto;padding:10px}.assessmentPlayerSearch{padding:10px 10px 0}.poolPlayer{align-items:center;border:1px solid var(--line);border-radius:6px;cursor:grab;display:grid;gap:8px;grid-template-columns:18px minmax(0,1fr);min-height:44px;padding:6px 8px}.poolPlayer.selected{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,white)}.poolPlayer input{min-height:18px;padding:0}.poolPlayer span{display:grid;gap:2px}.poolPlayer em{color:var(--muted);font-size:12px;font-style:normal}.assessmentEditor{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.assessmentRows{display:grid;gap:6px;min-height:150px;padding:10px}.assessmentRow{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(140px,1fr) 78px minmax(130px,.9fr)}.assessmentHead{color:var(--muted);font-size:12px;font-weight:700;min-height:22px}.assessmentName{align-items:center;display:flex;gap:6px;min-width:0}.assessmentName button{align-items:center;background:var(--surface-strong);border:1px solid var(--line);border-radius:50%;color:var(--muted);cursor:pointer;display:flex;font-size:12px;font-weight:800;height:22px;justify-content:center;padding:0;width:22px}.assessmentRow input,.assessmentRow select{min-height:34px;width:100%}.assessmentMeta{display:grid;gap:12px;grid-column:1/-1;grid-template-columns:minmax(220px,320px) minmax(320px,1fr);padding:12px}.assessmentLeadBox,.assessmentMeta{border:1px solid var(--line);border-radius:8px}.assessmentLeadBox{overflow:hidden}.leadList{display:grid;gap:8px;min-height:74px;padding:10px}.leadPill{background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 40%,white);border-radius:6px;gap:7px;min-height:30px;padding:4px 10px 4px 5px}.leadPill,.leadPill button{align-items:center;display:flex}.leadPill button{background:var(--surface);border:1px solid var(--line);border-radius:50%;color:var(--muted);cursor:pointer;font-size:11px;font-weight:800;height:20px;justify-content:center;padding:0;width:20px}.assessmentMeta textarea{border:1px solid var(--line);border-radius:6px;font:inherit;min-height:40px;padding:10px 11px;resize:vertical}.assessmentLayout.printMode .assessmentHead span:nth-child(n+2),.assessmentLayout.printMode .assessmentRow input{display:none}.assessmentLayout.printMode .assessmentHead span:nth-child(2){display:block}.assessmentLayout.printMode .assessmentArea[data-area=ohne_bewertung] .assessmentHead span:nth-child(2),.assessmentLayout.printMode .assessmentArea[data-area=ohne_bewertung] .assessmentRow select{display:none}.assessmentLayout.printMode .assessmentEditor{grid-template-columns:repeat(2,minmax(0,1fr))}.assessmentLayout.printMode .assessmentRows{align-items:start;grid-template-columns:minmax(0,1fr)}.assessmentLayout.printMode .assessmentArea[data-area=ohne_bewertung] .assessmentRows{grid-template-columns:repeat(3,minmax(0,1fr))}.assessmentLayout.printMode .assessmentRow{grid-template-columns:minmax(0,1fr) 78px}.assessmentLayout.printMode .assessmentArea[data-area=ohne_bewertung] .assessmentRow{grid-template-columns:minmax(0,1fr)}.assessmentLayout.printMode .assessmentMeta{grid-template-columns:minmax(280px,.8fr) minmax(320px,1.2fr)}.shipListPanel{overflow:hidden}.shipListToolbar{align-items:end;border-bottom:1px solid var(--line);display:grid;gap:12px;grid-template-columns:minmax(180px,230px) minmax(180px,260px) minmax(240px,1fr) auto auto minmax(130px,170px);padding:14px 16px}.shipListVersion{border:1px solid var(--line);border-radius:6px;display:grid;gap:2px;min-height:42px;padding:7px 10px}.shipListVersion strong{font-size:12px}.shipListVersion span{color:var(--muted);font-size:12px}.shipListRules{border-bottom:1px solid var(--line);margin:0}.restrictionGrid{display:grid;gap:10px;grid-template-columns:minmax(150px,180px) repeat(auto-fit,minmax(150px,1fr));padding:12px 16px}.restrictionClass,.restrictionTier{display:grid;gap:5px}.restrictionClass input,.restrictionTier select{min-height:36px}.blockedShips{border-bottom:1px solid var(--line)}.blockedShipList{align-items:center;display:flex;flex-wrap:wrap;gap:8px;min-height:54px;padding:10px 16px}.blockedShipPill{align-items:center;background:var(--surface-strong);border:1px solid var(--line);border-radius:6px;display:inline-flex;gap:6px;min-height:30px;padding:4px 9px 4px 5px}.blockedShipPill button{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:50%;color:var(--muted);cursor:pointer;display:flex;font-size:11px;font-weight:800;height:20px;justify-content:center;padding:0;width:20px}.extraRules{border-bottom:1px solid var(--line);display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 16px}.shipListLayout{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(260px,320px) minmax(780px,1fr);padding:16px}.shipCategory,.shipListPool{border:1px solid var(--line);border-radius:8px;min-width:0;overflow:hidden}.shipClassFilter,.shipSearchBox{padding:10px 10px 0}.shipClassFilter{display:grid;gap:5px}.shipClassFilter select{min-height:36px}.shipPoolGroups{display:grid;gap:10px;max-height:calc(100vh - 390px);overflow:auto;padding:10px}.shipPoolGroup{display:grid;gap:6px}.shipPoolGroup h3{color:var(--muted);font-size:12px;margin:0;text-transform:uppercase}.shipPoolItem{background:var(--surface);border:1px solid var(--line);border-radius:6px;cursor:grab;display:grid;gap:3px;min-height:44px;padding:7px 9px;text-align:left}.shipPoolItem strong{font-size:13px}.shipPoolItem span{color:var(--muted);font-size:12px}.shipListEditor{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.shipListRows{min-height:96px;padding:10px}.shipListGroup,.shipListRows{display:grid;gap:5px}.shipListGroup h4{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:0;margin:6px 0 0;text-transform:uppercase}.shipListRow{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:6px;display:grid;gap:8px;grid-template-columns:minmax(140px,1fr) minmax(86px,96px) minmax(118px,140px) minmax(88px,100px);min-height:38px;padding:5px 7px}.shipListPanel.printMode .shipListPool{display:none}.shipListPanel.printMode .shipListLayout{grid-template-columns:minmax(0,1fr)}.shipListPanel.printMode .shipListRow{grid-template-columns:minmax(140px,1fr) minmax(86px,96px) minmax(118px,140px)}.shipListPanel.printMode .preferredColumn{display:none}.shipListPanel.printMode .shipListName{grid-template-columns:minmax(0,1fr)}.shipListPanel.printMode .shipListName em{grid-column:1}.shipListPanel.printMode input,.shipListPanel.printMode select{background:var(--surface-strong);color:var(--text);opacity:1}.shipListRow.preferred{background:var(--success-bg);border-color:var(--success-line);box-shadow:inset 4px 0 0 var(--success-line)}.shipListRow.consultation{background:var(--warning-bg);border-color:var(--warning-line);box-shadow:inset 4px 0 0 var(--warning-line)}.shipListRow.preferred .shipListName strong{color:var(--success-text)}.shipListRow.consultation .shipListName strong{color:var(--warning-text)}.positiveStat{color:var(--success-text);font-weight:800}.negativeStat{color:var(--danger-text);font-weight:800}.alphaAttendanceTable{min-width:1120px}.alphaAttendanceTable td,.alphaAttendanceTable th{white-space:nowrap}.shipListHead{background:transparent;border-color:transparent;color:var(--muted);font-size:12px;font-weight:800;min-height:22px;padding-bottom:0;padding-top:0}.shipListName{align-items:center;display:grid;gap:4px 7px;grid-template-columns:22px minmax(0,1fr);min-width:0}.shipListName button{align-items:center;background:var(--surface-strong);border:1px solid var(--line);border-radius:50%;color:var(--muted);cursor:pointer;display:flex;font-size:12px;font-weight:800;height:22px;justify-content:center;padding:0;width:22px}.shipListName strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shipListName em{color:var(--muted);font-size:11px;font-style:normal;grid-column:2}.shipListRow select{min-height:32px;width:100%}.lineupAdmin{display:grid;gap:14px}.eventPicker{max-width:480px}.lineupAgentPanel{align-items:end;border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(120px,170px) minmax(102px,110px) minmax(200px,230px) minmax(200px,1fr) minmax(185px,1fr) minmax(142px,160px) auto;padding:14px}.lineupTypeField{white-space:nowrap}.lineupActionButton{height:42px;justify-content:center;min-width:190px;white-space:nowrap}.lineupAgentActions{align-items:end;display:grid;gap:8px;grid-column:7/-1;justify-self:stretch;grid-template-columns:minmax(132px,auto) repeat(3,minmax(194px,1fr))}.lineupActionApprove,.lineupActionPrimary,.lineupActionSecondary,.partialLineupOption{min-width:0;width:100%}.partialLineupOption{grid-column:1}.partialLineupOptionHidden{pointer-events:none;visibility:hidden}.lineupActionPrimary{grid-column:2}.lineupActionSecondary{grid-column:3}.lineupActionApprove{grid-column:4}.checkboxLabel{align-items:center;display:flex;gap:8px;min-height:42px}.checkboxLabel input{min-width:16px;width:16px}.compactCheckboxLabel{border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:12px;font-weight:700;padding:0 10px;white-space:nowrap}.agentNotes,.agentStatus,.agentWarnings{color:var(--muted);font-size:13px;grid-column:1/-1}.agentStatus{align-items:center;border:1px solid var(--line);border-radius:6px;display:flex;gap:14px;font-weight:700;min-height:38px;padding:8px 10px}.agentStatusWorking{background:var(--warning-bg);border-color:var(--warning-line);color:var(--warning-text)}.agentStatusSuccess{background:var(--success-bg);border-color:var(--success-line);color:var(--success-text)}.mutedStatus{font-weight:500}.agentNotes{border-top:1px solid var(--line);display:grid;gap:4px;padding-top:10px}.agentNotes p{margin:0}.agentWarnings{background:var(--danger-bg);border:1px solid var(--danger-line);border-radius:6px;color:var(--danger-text);display:grid;font-weight:700;gap:4px;padding:10px}.agentWarnings p{margin:0}.lineupAgentTables{display:grid;gap:14px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.lineupAgentDetails{border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;padding:12px}.agentDetailActions{display:flex;flex-wrap:wrap;gap:8px;justify-self:start}.agentDetailsGrid{display:grid;gap:14px}.agentDetailSection{border:1px solid var(--line);border-radius:8px;overflow:hidden}.agentDetailSection h3{border-bottom:1px solid var(--line);font-size:15px;margin:0;padding:12px 14px}.agentTableSection{border:1px solid var(--line);border-radius:8px;overflow:hidden}.agentTableSection h3{border-bottom:1px solid var(--line);font-size:15px;margin:0;padding:12px 14px}.compactAgentTable{max-height:320px}.compactAgentTable td,.compactAgentTable th{font-size:13px;white-space:nowrap}.compactAgentTable td.scoreReasonCell{min-width:260px;text-align:left;vertical-align:top;white-space:normal}.scoreReasonCell span{display:block;line-height:1.35}.scoreReasonCell .scoreBreakdownLine{white-space:pre-line;margin-bottom:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scoreReasonCell .scoreBreakdownMeta{color:var(--muted);font-size:.85em}.compactAgentTable tr.substitutionBlockBase{background:var(--surface)}.compactAgentTable tr.substitutionBlockAlt{background:var(--surface-strong)}.compactAgentTable tr.substitutionBlockAlt:hover,.compactAgentTable tr.substitutionBlockBase:hover{background:var(--accent-soft)}.lineupLayout{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(680px,1fr) 250px 320px}.lineupTeam{border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;padding:14px}.lineupTeamHeader{align-items:center;display:grid;gap:10px;grid-template-columns:90px 120px 110px minmax(180px,1fr) 42px}.lineupTeamHeader h3{font-size:16px;margin:0}.lineupTeam textarea{font:inherit;min-height:42px;padding:10px 11px;resize:vertical}.iconButton,.lineupTeam textarea{border:1px solid var(--line);border-radius:6px}.iconButton{align-items:center;background:var(--surface);color:var(--text);cursor:pointer;display:inline-flex;height:38px;justify-content:center;width:38px}.dangerIconButton{color:var(--danger-text)}.iconButton:disabled{cursor:not-allowed;opacity:.45}.slotRows{overflow-x:auto}.slotRow,.slotRows{display:grid;gap:8px}.slotRow{align-items:center;grid-template-columns:42px minmax(150px,1fr) 76px 88px minmax(140px,1fr) 76px 88px minmax(140px,1fr) 76px;min-width:980px}.slotRow span{color:var(--muted);font-weight:700}.slotRow .slotDragHandle{align-items:center;background:var(--surface-strong);border:1px solid var(--line);border-radius:6px;cursor:grab;display:inline-flex;height:34px;justify-content:center;-webkit-user-select:none;user-select:none}.slotRow .slotDragHandle:active{cursor:grabbing}.lineupPlayerInput[draggable=true]{cursor:grab}.lineupPlayerInput[draggable=true]:active{cursor:grabbing}.slotRowHeader{color:var(--muted);font-size:12px;font-weight:700}.slotRowHeader span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.registrationSummary{border:1px solid var(--line);border-radius:8px;display:grid;gap:14px;max-height:calc(100vh - 32px);overflow:auto;padding:14px;position:sticky;top:16px;z-index:2}.registrationSummary h3{font-size:15px;margin:0 0 8px}.registrationActions{display:grid;gap:8px;grid-template-columns:1fr}.registrationActions .lineupActionButton{min-width:0;width:100%}.sideTabs{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;display:grid;gap:4px;grid-template-columns:1fr 1fr;padding:4px}.sideTabs button{background:transparent;border:0;border-radius:6px;color:var(--muted);cursor:pointer;font:inherit;font-size:13px;font-weight:800;min-height:32px}.sideTabs button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px var(--shadow)}.seasonLineupStats{display:grid;gap:8px}.seasonLineupStats small{color:var(--muted);font-size:12px;font-weight:700}.seasonStatsList{display:grid;gap:8px}.seasonStatRow{border:1px solid var(--line);border-radius:8px;display:grid;gap:3px;padding:8px}.seasonStatRow strong{font-size:13px}.seasonStatRow span{color:var(--muted);font-size:12px}.seasonStatRow b{color:var(--accent-text);font-size:13px}.seasonStatsPanel{overflow:hidden}.seasonStatsTable{max-height:calc(100vh - 280px)}.cwLeadPanel{align-self:stretch;border:1px dashed var(--line);border-radius:8px;display:grid;gap:8px;min-height:72px;padding:9px 10px}.cwLeadHeader{align-items:center;display:flex;gap:8px;justify-content:space-between}.cwLeadHeader span{color:var(--text);font-size:13px;font-weight:700}.cwLeadHeader small,.cwLeadList em{color:var(--muted);font-size:12px;font-style:normal}.cwLeadList{align-content:start;display:flex;flex-wrap:wrap;gap:6px}.cwLeadChip{align-items:center;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 30%,white);border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;gap:6px;max-width:100%;padding:4px 7px}.cwLeadChip button{background:transparent;border:0;color:var(--muted);cursor:pointer;font:inherit;padding:0 2px}.registrationDropZone{border:1px solid transparent;border-radius:8px;margin:-6px;min-height:58px;padding:6px;transition:background .15s ease,border-color .15s ease}.registrationDropZone:hover{background:rgba(15,23,42,.04);border-color:var(--line)}.registrationSummary p{border-bottom:1px solid var(--line);display:block;font-size:13px;margin:0;padding:5px 0}.reservePanel{background:var(--surface-strong);border:1px solid var(--accent);border-radius:8px;display:grid;align-content:start;gap:2px;max-height:calc(100vh - 32px);overflow:auto;padding:14px;position:sticky;top:16px;z-index:2}.reservePanel h3{font-size:15px;margin:0 0 8px}.reservePanelDroppable{min-height:120px;transition:border-color .15s ease,box-shadow .15s ease}.reservePanelDroppable:hover{border-color:var(--accent-dark);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 14%,transparent)}.reservePanel p{align-items:center;border-bottom:1px solid var(--line);display:flex;font-size:13px;gap:6px;justify-content:space-between;margin:0;padding:5px 0}.reservePanel p span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reservePanel em{color:var(--muted);font-size:12px}.registrationSortBar{border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px;padding-bottom:8px}.registrationSortBar .sortButton{font-size:12px;justify-content:flex-start;width:auto}.registrationSummary p.registrationReserve{background:var(--surface-strong);border:1px solid var(--accent);border-radius:6px;color:var(--muted);margin:3px 0;padding:6px 8px}.registrationSummary p.registrationAssigned{background:var(--success-bg);border:1px solid var(--success-line);border-radius:6px;color:var(--success-text);font-weight:800;margin:3px 0;padding:6px 8px}.registrationSummary p span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draggableRegistration{cursor:grab}.draggableRegistration:active{cursor:grabbing}.modalBackdrop{align-items:center;background:rgba(15,23,42,.48);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:50}.lineupModal{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 70px rgba(15,23,42,.28);display:grid;gap:14px;max-width:440px;padding:18px;width:min(440px,100%)}.lineupModal h3{margin:0}.lineupModal label{display:grid;gap:6px}.modalGrid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.modalActions{display:flex;gap:10px;justify-content:flex-end}.uploadSections{display:grid;gap:14px}.uploadSummary{border:1px solid var(--line);border-radius:8px;overflow:hidden}.formGrid{display:grid;gap:14px;padding:14px 16px}.compactForm{grid-template-columns:minmax(220px,320px)}.attendanceFilters,.compactForm{border-bottom:1px solid var(--line)}.attendanceFilters{align-items:end;grid-template-columns:minmax(220px,300px) minmax(150px,190px) minmax(220px,320px) minmax(480px,1fr)}.attendanceFilters .attendanceLegend{min-width:0}.smallEmpty{min-height:90px}.adminBattleTable{max-height:calc(100vh - 260px)}.adminBattleTable input{min-width:130px;width:100%}.adminBattleTable td,.adminBattleTable th{border-right:1px solid var(--line)}.adminBattleTable td:first-child,.adminBattleTable th:first-child{border-left:1px solid var(--line)}.inlineTabs{margin:0}.battleLayout{display:grid;gap:18px;grid-template-columns:minmax(540px,.9fr) minmax(680px,1.1fr)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.panelHeader{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;min-height:58px;padding:0 16px}.panelHeader span{color:var(--muted);font-size:13px;font-weight:700}.tableWrap{max-height:calc(100vh - 300px);overflow:auto}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--line);font-size:13px;padding:10px 12px;text-align:right;white-space:nowrap}td:first-child,td:nth-child(3),th:first-child,th:nth-child(3){text-align:left}th{background:var(--surface-strong);color:var(--muted);position:sticky;top:0;z-index:1}.sortButton,th{font-weight:700}.sortButton{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:inline-flex;font-size:13px;gap:5px;justify-content:flex-end;min-height:22px;padding:0;width:100%}th:first-child .sortButton,th:nth-child(3) .sortButton{justify-content:flex-start}.sortButton i{color:var(--accent-text);display:inline-block;font-size:10px;font-style:normal;min-width:10px}.sortButton.active span{color:var(--text)}tbody tr{cursor:pointer}tbody tr:hover{background:var(--accent-soft)}tbody tr.active{background:var(--highlight)}.resultLoss,.resultWin{border-radius:999px;display:inline-block;font-size:12px;font-weight:700;min-width:48px;padding:3px 8px;text-align:center}.resultWin{background:var(--success-bg);color:var(--success-text)}.resultLoss{background:var(--danger-bg);color:var(--danger-text)}.emptyState{color:var(--muted);display:grid;min-height:220px;place-items:center}.spin{animation:spin 1s linear infinite}.groupedShips{display:grid;gap:14px;max-height:calc(100vh - 300px);overflow:auto;padding:14px}.detailFilters{align-items:end;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(170px,1fr))}.classGroup{border:1px solid var(--line);border-radius:8px;overflow:hidden}.classGroupHeader{align-items:center;background:var(--surface-strong);display:flex;justify-content:space-between;min-height:44px;padding:0 12px}.classGroupHeader h3{font-size:15px;margin:0}.classGroupHeader span{color:var(--muted);font-size:13px;font-weight:700}.tableWrap.compact{max-height:none}.battleDetailGrid,.battleList{max-height:calc(100vh - 350px)}.battleDetailGrid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));overflow:auto;padding:14px}.teamDetail{border:1px solid var(--line);border-radius:8px;min-width:0;overflow:hidden}.teamHeader{align-items:center;background:var(--surface-strong);display:flex;justify-content:space-between;gap:12px;min-height:54px;padding:8px 12px}.teamHeader h3{font-size:16px;margin:0}.teamHeader span{color:var(--muted);display:block;font-size:12px;font-weight:700;margin-top:3px}.teamHeader strong{font-size:13px;text-align:right;white-space:nowrap}.winratePanel{overflow:hidden}.winrateScroll{max-height:calc(100vh - 360px);overflow:auto}.winrateTable{border-collapse:separate;border-spacing:0;min-width:980px}.winrateTable td,.winrateTable th{border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-width:132px;padding:8px;text-align:center;vertical-align:middle}.winrateTable td:first-child,.winrateTable th:first-child{border-left:1px solid var(--line)}.winrateTable thead th{border-top:1px solid var(--line)}.winrateTable .shipColumn{border-right:2px solid var(--line-strong);left:0;min-width:220px;position:sticky;text-align:left;z-index:2}.winrateTable thead .shipColumn{z-index:3}.winrateTable tbody .shipColumn{background:var(--surface)}.winrateTable .shipColumn strong{display:block;font-size:13px}.winrateTable thead .winratePlayer{height:138px;padding:8px 4px;text-align:left;vertical-align:bottom}.winrateTable .winratePlayer span{display:inline-block;color:var(--text);font-size:.84rem;font-weight:800;letter-spacing:.01em;line-height:1;max-width:128px;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 0 var(--surface),0 0 2px var(--surface);transform:translate(56px,-4px) rotate(-45deg);transform-origin:left bottom;white-space:nowrap}.winrateTable .shipColumn span{color:var(--muted);display:block;font-size:12px;font-weight:700;margin-top:3px}.winrateCell{border:1px solid var(--line);border-radius:6px;display:grid;grid-template-columns:1fr 48px;grid-template-rows:1fr 1fr;min-height:54px;overflow:hidden}.winrateCell strong{background:var(--success-bg);color:var(--success-text);font-size:15px;grid-row:1/span 2}.winrateCell span,.winrateCell strong{align-items:center;display:flex;justify-content:center}.winrateCell span{font-size:12px;font-weight:700}.winrateCell span:nth-child(2){background:var(--success-bg);color:var(--success-text)}.winrateCell span:nth-child(3){background:var(--danger-bg);color:var(--danger-text)}.emptyCell{color:var(--muted)}.mapWinratePanel{overflow:hidden}.mapWinrateTable{max-height:44vh}.mapWinrateTable td,.mapWinrateTable th{border-right:1px solid var(--line)}.mapWinrateTable td:first-child,.mapWinrateTable th:first-child{border-left:1px solid var(--line)}.mapOpponentDetail{border-top:1px solid var(--line)}.subHeader{min-height:48px}.mapOpponentDetail td,.mapOpponentDetail th{border-right:1px solid var(--line)}.mapOpponentDetail td:first-child,.mapOpponentDetail th:first-child{border-left:1px solid var(--line)}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:1100px){.assessmentEditor,.assessmentFilters,.assessmentLayout,.assessmentMeta,.attendanceFilters,.battleDetailGrid,.battleLayout,.battleStats,.chartsGrid,.content,.controls,.lineupAgentPanel,.lineupAgentTables,.lineupLayout,.statsGrid{grid-template-columns:1fr}.primaryButton,.secondaryButton{justify-content:center}.lineupAgentActions{grid-column:1;grid-template-columns:1fr}.lineupActionApprove,.lineupActionPrimary,.lineupActionSecondary,.partialLineupOption{grid-column:1}.viewTabs{flex-wrap:wrap}.viewTabs .adminTab{margin-left:0}.tableWrap{max-height:none}.chartBody{grid-template-columns:1fr}.pie{margin:0 auto}.battleDetailGrid,.battleList,.groupedShips,.winrateScroll{max-height:none}.botEvent,.botSettingsLayout,.detailFilters,.lineupTeamHeader,.settingsGrid,.settingsIntroGrid,.slotRow,.weekdayGrid{grid-template-columns:1fr}.registrationSummary,.reservePanel{position:static}}@media print{.lineupAgentDetails,.lineupAgentPanel,.lineupAgentTables,.noPrint{display:none!important}}.contentWide{grid-template-columns:1fr}.matrixScroll{max-height:calc(100vh - 340px)}.matrixTable{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content}.matrixTable .matrixCorner,.matrixTable .matrixShip{width:200px}.matrixTable .matrixTotal{width:72px}.matrixTable .matrixCell,.matrixTable .matrixPlayer{width:52px}.matrixTable td,.matrixTable th{white-space:nowrap}.matrixTable thead th{position:sticky;top:0;z-index:2;background:var(--surface-strong)}.matrixTable .matrixCorner,.matrixTable .matrixShip{position:sticky;left:0;z-index:1;background:var(--surface);text-align:left}.matrixTable .matrixShip{cursor:pointer}.matrixTable .matrixShip:hover{background:var(--surface-strong)}.matrixTable .matrixPlayer.active,.matrixTable .matrixShip.active{background:var(--highlight)}.matrixTable .matrixShip span,.matrixTable .matrixShip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.matrixTable .matrixCorner{z-index:3;background:var(--surface-strong)}.matrixTable .matrixShip strong{display:block}.matrixTable .matrixShip span{color:var(--muted);font-size:.78rem}.matrixTable .matrixPlayer{cursor:pointer;height:138px;padding:8px 4px;text-align:left;vertical-align:bottom}.matrixTable .matrixPlayer:hover{background:var(--surface-strong)}.matrixTable .matrixPlayer span{display:inline-block;color:var(--text);font-size:.84rem;font-weight:800;letter-spacing:.01em;line-height:1;max-width:128px;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 0 var(--surface),0 0 2px var(--surface);transform:translate(3px,-4px) rotate(-45deg);transform-origin:left bottom;white-space:nowrap}.matrixTable .matrixCell,.matrixTable .matrixTotal{text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.matrixTable .matrixTotal{color:var(--muted);font-weight:600}.matrixTable tfoot td,.matrixTable tfoot th{border-top:2px solid var(--line);background:var(--surface-strong)}.hofRow{cursor:pointer}.hofDetailRow>td,.hofRow:hover td{background:var(--surface-strong)}.hofDetailRow>td{padding:14px 16px 18px}.hofDetailRow h4{margin:0 0 8px;font-size:.92rem}.hofNote{margin:0 0 10px;color:var(--muted)}.hofParticipants{max-width:420px}.hofPage .hofHint{margin:14px 18px}.hofPage .hofAdminWrap{border-radius:0 0 14px 14px;max-height:none}.hofPage .hofRow.isEditing td{background:var(--accent-soft)}.hofFormActions{display:flex;gap:8px;padding:0 16px 16px}.panelHint{color:var(--muted);font-size:.88rem;margin:0 16px 14px;max-width:70ch}.matrixFocus{align-items:center;display:flex;gap:10px;margin:0 16px 12px}.matrixFocus span{color:var(--muted);font-size:.88rem}.mutedText{color:var(--muted);font-size:.85rem;margin:12px 0 0}.weekdayRow{display:flex;align-items:center;justify-content:space-between;gap:8px}.weekdayRow select{min-width:7rem}.dayTypeSelect{min-width:8rem}.shell{padding:0 0 40px}.shell>:not(.appHeader){margin-left:40px;margin-right:40px}.shell.authShell{min-height:100vh;padding:24px 16px}.shell.authShell>*{margin:0}.appHeader{align-items:center;background:var(--surface);border-bottom:1px solid var(--line);display:flex;gap:24px;margin-bottom:28px;min-height:72px;padding:0 40px;position:sticky;top:0;z-index:20}.mainNav{align-self:stretch;display:flex;flex:1 1;gap:4px;justify-content:center;min-width:0;overflow-x:auto}.mainNav button{background:transparent;border:0;border-bottom:3px solid transparent;color:var(--muted);cursor:pointer;font-size:16px;font-weight:600;padding:0 14px;white-space:nowrap}.mainNav button:hover{color:var(--text)}.mainNav button.active{border-bottom-color:var(--accent-text);color:var(--text);font-weight:700}.iconButton:focus-visible,.mainNav button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.userMenu{align-items:center;display:flex;gap:10px}.userName{color:var(--muted);font-size:14px;font-weight:600;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brandTitle{gap:12px}.brandText{display:flex;flex-direction:column;min-width:0}.brandTag{font-family:var(--font-display);font-size:20px;font-weight:700;white-space:nowrap}.brandName{color:var(--muted);font-size:14px}.brandTitleCompact .siteLogo{height:40px;width:40px}.siteLogo{border-radius:50%;border:2px solid var(--accent);height:56px;width:56px}.siteMonogram{align-items:center;background:var(--accent);color:var(--accent-contrast);display:inline-flex;flex-shrink:0;font-family:var(--font-display);font-size:13px;font-weight:700;justify-content:center}.loginPanel{border-radius:16px;padding:32px}.displayHeading{line-height:1.15;margin:0}.loginPanel .displayHeading{font-size:32px}.eyebrow{color:var(--accent-text);font-size:14px;font-weight:700;letter-spacing:0;text-transform:none}.memberLineup{align-items:start;display:grid;gap:32px;grid-template-columns:minmax(280px,380px) minmax(0,1fr)}.memberLineupIntro{display:flex;flex-direction:column;gap:20px}.memberLineupHeading{display:flex;flex-direction:column;gap:6px}.memberLineupHeading .displayHeading{font-size:38px}.myAssignment{background:var(--accent);border-radius:14px;color:var(--accent-contrast);display:flex;flex-direction:column;gap:8px;padding:20px}.myAssignment .displayHeading{font-size:28px}.myAssignmentLabel{font-size:13px;font-weight:700;letter-spacing:.08em;opacity:.9;text-transform:uppercase}.substitutionList{display:flex;flex-direction:column;gap:10px}.substitutionList h2{font-size:22px;margin:0}.substitutionList ol{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.substitutionList li{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:10px;display:flex;gap:14px;padding:10px 14px}.substitutionTime{font-size:16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;min-width:44px}.substitutionText{flex:1 1}.substitutionMeta{color:var(--muted);font-size:13px;white-space:nowrap}.memberLineupTeams{align-content:start;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.memberLineupTeam{background:var(--surface);border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;gap:12px;padding:22px 24px}.memberLineupTeam header{align-items:baseline;display:flex;justify-content:space-between}.memberLineupTeam header h2{font-size:26px}.memberLineupTeam header span,.teamRating{color:var(--muted);font-size:16px}.memberLineupTeam ul{display:flex;flex-direction:column;list-style:none;margin:0;padding:0}.memberLineupTeam li{align-items:center;border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:36px minmax(0,1fr) auto;padding:10px 0}.slotClass{color:var(--muted);font-size:13px;font-weight:700}.slotPlayer{display:flex;flex-direction:column}.slotPlayer strong{font-size:16px;font-weight:600}.slotPlayer small{color:var(--muted);font-size:13px}.leadBadge{border:1px solid var(--accent);border-radius:999px;color:var(--accent-text);font-size:12px;font-weight:700;padding:2px 8px}.brandSettings{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:grid;gap:16px;grid-column:1/-1;padding:18px}.brandSettingsGrid{display:grid;gap:24px;grid-template-columns:minmax(260px,420px) minmax(260px,1fr)}.brandFields{display:grid;gap:14px}.colorField{display:grid;gap:6px}.colorField>label{display:block}.colorField small{color:var(--muted)}.colorInputs{display:flex;gap:8px}.colorInputs input[type=color]{cursor:pointer;height:44px;padding:2px;width:56px}.colorInputs input:not([type=color]){font-family:ui-monospace,SFMono-Regular,Menlo,monospace;width:120px}.brandPreview{background:var(--bg);border:1px solid var(--line);border-radius:14px;overflow:hidden}.brandPreviewBar{align-items:center;background:var(--surface);border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;min-height:64px;padding:0 18px}.brandPreviewTab{align-self:stretch;border-bottom:3px solid var(--accent);display:flex;align-items:center;font-weight:700}.brandPreviewBody{align-items:flex-start;display:flex;flex-direction:column;gap:12px;padding:18px}.brandPreviewBody .myAssignment{width:100%}.brandPreviewChip{background:var(--brand-accent);border-radius:999px;color:var(--brand-accent-contrast);font-size:13px;font-weight:700;padding:3px 10px}@media (max-width:960px){.appHeader{flex-wrap:wrap;gap:8px 16px;padding:10px 16px 0}.mainNav{flex-basis:100%;justify-content:flex-start;order:3}.mainNav button{min-height:44px}.userMenu{margin-left:auto}.shell>:not(.appHeader){margin-left:16px;margin-right:16px}.brandSettingsGrid,.memberLineup{grid-template-columns:minmax(0,1fr)}.memberLineupHeading .displayHeading{font-size:30px}}.adminLayout{align-items:start;display:grid;gap:28px;grid-template-columns:220px minmax(0,1fr)}.adminContent{display:grid;gap:16px;min-width:0}.adminNav{position:sticky;top:96px}.adminNavSelect{display:none}.adminNavList{gap:18px}.adminNavGroup,.adminNavList{display:flex;flex-direction:column}.adminNavGroup{gap:2px}.adminNavGroupLabel{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.08em;padding:0 12px 6px;text-transform:uppercase}.adminNavGroup button{background:transparent;border:0;border-radius:var(--radius-small);color:var(--text);cursor:pointer;font-size:15px;min-height:40px;padding:8px 12px;text-align:left}.adminNavGroup button:hover{background:var(--surface-strong)}.adminNavGroup button.active{background:var(--accent-soft);color:var(--accent-dark);font-weight:700}.adminNavGroup button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (max-width:960px){.adminLayout{gap:16px;grid-template-columns:minmax(0,1fr)}.adminNav{position:static}.adminNavSelect{display:grid}.adminNavList{display:none}}@media (max-width:1100px){.battleStats,.statsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}.settingsIntroGrid{grid-template-columns:minmax(0,1fr)}.clanTagEditor{max-width:520px}.logoActions{display:flex;flex-wrap:wrap;gap:8px}.themeSwitch{background:var(--surface-strong);border-radius:999px;display:inline-flex;gap:2px;padding:3px}.themeSwitch button{align-items:center;background:transparent;border:0;border-radius:999px;color:var(--muted);cursor:pointer;display:inline-flex;height:32px;justify-content:center;width:32px}.themeSwitch button.active{background:var(--surface);box-shadow:0 1px 2px var(--shadow);color:var(--text)}.themeSwitch button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (max-width:600px){.userName{display:none}}.adminPage{display:flex;flex-direction:column;gap:20px;min-width:0}.adminPageHeader{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px 24px;justify-content:space-between}.adminPageTitle{display:flex;flex-direction:column;gap:6px;max-width:720px;min-width:0}.adminPageTitle h1{font-size:32px}.adminPageTitle p{color:var(--muted);font-size:16px;margin:0}.adminPageSide{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.adminPageMeta{color:var(--muted);font-size:14px;font-weight:600;white-space:nowrap}.adminPageActions{display:flex;flex-wrap:wrap;gap:8px}.filterBar{align-items:end;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-wrap:wrap;gap:14px 16px;padding:14px 16px}.filterBar>.filterField,.filterBar>label{display:grid;flex:1 1 180px;gap:6px;max-width:320px;min-width:160px}.filterBar>.filterBarEnd{align-items:center;display:flex;flex:1 1 auto;flex-wrap:wrap;gap:8px;justify-content:flex-end}.uiCard{background:var(--surface);border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;min-width:0}.uiCardHeader{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;min-height:56px;padding:10px 18px}.uiCardHeader h2{font-size:19px;margin:0}.uiCardSide{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.uiCardMeta{color:var(--muted);font-size:13px;font-weight:600}.uiCardBody{display:flex;flex-direction:column;gap:14px;min-width:0;padding:16px 18px}.uiCardFlush{padding:0}.uiCardFlush>.tableWrap,.uiCardFlush>table{border-radius:0 0 14px 14px}.uiEmpty{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:4px;padding:32px 16px;text-align:center}.uiEmpty strong{color:var(--text);font-size:16px}.uiEmpty p{margin:0;max-width:460px}.uiLegend{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}.uiLegend li{align-items:center;border:1px solid var(--line);border-radius:999px;display:inline-flex;font-size:13px;gap:6px;padding:3px 10px;white-space:nowrap}.uiLegend b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.uiCard table th{background:var(--surface-strong);font-size:12px;letter-spacing:.04em;text-transform:uppercase}.uiCard table td{font-size:14px}.uiCard table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 5%,var(--surface))}@media (max-width:960px){.adminPageTitle h1{font-size:26px}.adminPageSide{justify-content:flex-start;width:100%}.filterBar>.filterField,.filterBar>label{max-width:none}}.attendancePage .attendanceWrap{max-height:calc(100vh - 360px)}.attendancePage .attendanceTable td:has(.uiEmpty){text-align:center}.uiLegend .status1{background:var(--success-bg);border-color:var(--success-line);color:var(--success-text)}.uiLegend .status0{background:var(--danger-bg);border-color:var(--danger-line);color:var(--danger-text)}.uiLegend .statusE{background:var(--warning-bg);border-color:var(--warning-line);color:var(--warning-text)}.uiLegend .statusX{background:var(--special-bg);border-color:var(--special-line);color:var(--special-text)}.uiLegend .statusP{background:var(--info-bg);border-color:var(--info-line);color:var(--info-text)}.uiLegend .statusL{background:var(--success-bg);border-color:var(--success-line);color:var(--success-text)}