@font-face{font-family:Inter;font-style:normal;font-weight:200;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:200;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:200;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:200;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:200;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:200;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:200;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");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:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");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:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_e97114{font-family:Inter,Inter Fallback;font-style:normal}.__variable_e97114{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_6d24ac{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_6d24ac{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}html{font-family:var(--font-inter),ui-sans-serif,system-ui,sans-serif}:root{--bg:#fbfcfe;--bg-elevated:#ffffff;--bg-subtle:#f1f4fb;--border:#e7eaf3;--border-strong:#d2d8e6;--text:#0e1525;--text-muted:#3d465c;--text-faint:#697287;--accent:#5b6cff;--accent-2:#8b5cf6;--accent-soft:#e9ebff;--accent-on-soft:#3f3fcf;--btn-primary-text:#ffffff;--success:#047857;--success-soft:#e3f5ec;--warning:#92400e;--warning-soft:#fbf3df;--danger:#b91c1c;--danger-soft:#fce8e6;--meta:#4f6ef0;--tiktok:#ec5a8a;--google:#f0a83a;--pinterest:#2bbfb0;--shadow-sm:0 1px 2px rgba(16,24,48,0.04),0 1px 3px rgba(16,24,48,0.05);--shadow-md:0 1px 2px rgba(16,24,48,0.04),0 8px 24px -8px rgba(16,24,48,0.12);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--font:var(--font-inter),"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:var(--font-mono),"JetBrains Mono","SF Mono",ui-monospace,Menlo,monospace;--fs-2xs:10px;--fs-xs:11px;--fs-sm:12px;--fs-base:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:22px;--fs-3xl:28px;--fs-4xl:32px;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--lh-tight:1;--lh-snug:1.3;--lh-normal:1.5;--ls-tight:-0.06em;--ls-normal:0;--ls-wide:0.04em;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-4-5:18px;--space-5:20px;--space-5-5:22px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--t-fast:120ms ease;--t-normal:200ms ease;--t-slow:300ms ease;--z-base:1;--z-sticky:50;--z-topbar:100;--z-modal:200;--z-popover:300;--z-toast:400;--z-skip-link:10000}[data-theme=dark]{--bg:#0b0d12;--bg-elevated:#14171f;--bg-subtle:#1b1f28;--border:#242935;--border-strong:#343b4d;--text:#9ea4b0;--text-muted:#b0b5be;--text-faint:#8c92a0;--accent:#7c8cff;--accent-2:#a78bfa;--accent-soft:#20243f;--accent-on-soft:#aab4ff;--btn-primary-text:#0b0d12;--brand-mark-stop1:#5b6cff;--brand-mark-stop2:#8b5cf6;--success:#4ade80;--success-soft:#0f2a1c;--warning:#facc15;--warning-soft:#2c2410;--danger:#fb7185;--danger-soft:#2c1719;--meta:#4b9bff;--tiktok:#ff3d75;--google:#fcd34d;--pinterest:#ff4d5a;--shadow-sm:0 1px 2px rgba(0,0,0,0.45);--shadow-md:0 1px 3px rgba(0,0,0,0.4),0 12px 32px -14px rgba(0,0,0,0.7)}[data-theme=dark] .topbar{background:color-mix(in oklab,var(--bg-elevated) 70%,transparent);border-bottom-color:var(--border)}[data-theme=dark] .kpi-card:before{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,0) 50%);opacity:1}[data-theme=dark] .kpi-card:hover{box-shadow:0 8px 28px -14px rgba(0,0,0,.6),0 0 0 1px var(--border-strong)}[data-theme=dark] .panel{box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 1px 2px rgba(0,0,0,.3)}[data-theme=dark] .panel:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 32px -18px rgba(0,0,0,.7)}[data-theme=dark] .tbl tbody tr:hover td{background:color-mix(in oklab,var(--accent) 8%,var(--bg-elevated))}[data-theme=dark] .donut-legend-item:hover{background:color-mix(in oklab,var(--accent) 6%,var(--bg-elevated))}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);font-weight:var(--fw-light);letter-spacing:var(--ls-tight);font-feature-settings:"cv11","ss01","ss03";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font-family:inherit;letter-spacing:inherit;font-weight:inherit}:root,[data-theme=light]{color-scheme:light}[data-theme=dark]{color-scheme:dark}button{cursor:pointer;border:none;background:none;color:inherit}table{border-collapse:collapse}.app{min-height:100vh;padding:0}.shell{max-width:1480px;margin:0 auto;padding:0 var(--space-8) var(--space-16);position:relative;z-index:var(--z-base)}body:before{content:"";position:fixed;inset:0 0 auto 0;height:560px;z-index:0;pointer-events:none;background:radial-gradient(680px 320px at 16% -8%,color-mix(in oklab,var(--accent) 24%,transparent),transparent 70%),radial-gradient(560px 300px at 86% -14%,color-mix(in oklab,var(--accent-2) 18%,transparent),transparent 72%);opacity:.62}[data-theme=dark] body:before{opacity:.34}.topbar{padding:var(--space-5-5) var(--space-8);border-bottom:1px solid var(--border);background:color-mix(in oklab,var(--bg-elevated) 85%,transparent);z-index:50;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%)}.topbar,.topbar-inner{display:flex;align-items:center;justify-content:space-between}.topbar-inner{max-width:1480px;margin:0 auto;width:100%;gap:var(--space-6)}.brand{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--fw-semibold);font-size:var(--fs-lg);color:inherit;text-decoration:none;cursor:pointer;border-radius:var(--radius-sm,8px);transition:opacity .12s ease}.brand:hover{opacity:.85}.brand:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.brand-mark{border-radius:22%;flex:0 0 auto;box-shadow:0 4px 10px -2px color-mix(in oklab,var(--accent) 60%,transparent)}.brand-divider{width:1px;height:20px;background:var(--border-strong)}.brand-sub{color:var(--text-muted);font-weight:var(--fw-medium);font-size:var(--fs-md)}.topbar-actions{gap:var(--space-3)}.nav,.topbar-actions{display:flex;align-items:center}.nav{gap:var(--space-1);overflow-x:auto;max-width:100%;min-width:0;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav-link{padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-sm);font-size:var(--fs-md);font-weight:var(--fw-medium);color:var(--text-muted);text-decoration:none;white-space:nowrap;transition:color var(--t-fast),background var(--t-fast)}.nav-link:hover{color:var(--text);background:var(--bg-subtle)}.nav-link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.nav-link[aria-current=page]{color:var(--accent-on-soft);background:var(--accent-soft);font-weight:var(--fw-semibold)}.date-picker{position:relative}.date-picker-trigger{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);font-size:var(--fs-base);font-weight:var(--fw-medium);color:var(--text);transition:all var(--t-fast)}.date-picker-trigger:hover{border-color:var(--border-strong)}.date-picker-trigger.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.date-picker-trigger svg{color:var(--text-muted)}.date-picker-trigger .chev{transition:transform var(--t-fast)}.date-picker-trigger.open .chev{transform:rotate(180deg)}.date-picker-pop{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-2);min-width:220px;z-index:100}.date-preset{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-2-5) var(--space-3);border-radius:7px;font-size:var(--fs-base);text-align:left;color:var(--text);transition:background var(--t-fast)}.date-preset:hover{background:var(--bg-subtle)}.date-preset.active{background:var(--accent-soft);color:var(--accent-on-soft);font-weight:var(--fw-medium)}.date-preset .hint{font-size:var(--fs-sm);letter-spacing:0;color:var(--text-faint)}.date-preset.active .hint{color:var(--accent-on-soft);opacity:.75}.date-custom{border-top:1px solid var(--border);margin-top:var(--space-1-5);padding-top:var(--space-2)}.date-custom-row{display:flex;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-2)}.date-custom input{flex:1 1;font-family:inherit;font-size:var(--fs-sm);padding:var(--space-2) var(--space-2-5);border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);min-width:0}.date-custom input:focus{outline:none;border-color:var(--accent)}.sync-indicator{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);position:relative;cursor:default}.sync-dot{width:8px;height:8px;border-radius:50%;position:relative}.sync-dot:after{content:"";position:absolute;inset:-3px;border-radius:50%;background:currentColor;opacity:.25;animation:ping 2s ease-out infinite}.sync-loading .sync-dot{background:var(--text-faint);color:var(--text-faint)}.sync-loading .sync-dot:after{animation:none}.sync-loading{color:var(--text-faint)}.sync-ok .sync-dot{background:var(--success);color:var(--success)}.sync-pending .sync-dot{background:var(--warning);color:var(--warning)}.sync-error .sync-dot{background:var(--danger);color:var(--danger)}@keyframes ping{0%{transform:scale(.7);opacity:.4}to{transform:scale(2.2);opacity:0}}.icon-btn{width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:all var(--t-fast)}.icon-btn:hover{color:var(--text);border-color:var(--border-strong)}.logout-btn{width:auto;gap:var(--space-2);padding:0 var(--space-3);font-size:var(--fs-base);font-weight:var(--fw-medium);color:var(--text)}.logout-btn svg{color:var(--text-muted)}.page-head{padding:var(--space-8) 0 var(--space-7);display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4)}.page-head>div:first-child{flex:1 1 auto;min-width:0}.page-head h1{margin:0 0 var(--space-1-5);font-size:var(--fs-3xl);font-weight:var(--fw-medium);letter-spacing:var(--ls-tight)}.page-head p{margin:0;color:var(--text-muted);font-size:var(--fs-md)}.page-head .store-meta{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-weight:var(--fw-medium)}.compare-pill,.page-head .store-meta{color:var(--text-muted);font-size:var(--fs-base)}.compare-pill{padding:var(--space-1-5) var(--space-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px}.compare-pill b{color:var(--text);font-weight:var(--fw-medium)}.compare-toggle{display:inline-flex;gap:var(--space-1);margin-left:var(--space-1)}.compare-toggle button{padding:var(--space-0-5) var(--space-2);border-radius:5px;font-size:inherit;font-weight:var(--fw-medium);color:var(--text-muted);background:transparent;border:1px solid transparent;cursor:pointer;transition:all var(--t-fast)}.compare-toggle button:hover:not(:disabled){color:var(--text)}.compare-toggle button.on{background:var(--accent-soft);color:var(--accent-on-soft)}.compare-toggle button:disabled{opacity:.4;cursor:not-allowed}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--space-3-5);gap:var(--space-3-5);margin-bottom:var(--space-8)}@media (max-width:1280px){.kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:540px){.kpi-grid{grid-template-columns:1fr}}.kpi-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4-5) var(--space-5) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3-5);min-height:142px;transition:border-color var(--t-normal),transform .2s,box-shadow .2s;position:relative;isolation:isolate}.kpi-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.6),rgba(255,255,255,0) 40%);pointer-events:none;opacity:.6;z-index:0}.kpi-card:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:0 6px 20px -10px rgba(15,23,42,.12)}.kpi-label{font-size:var(--fs-base);font-weight:var(--fw-medium);color:var(--text);letter-spacing:var(--ls-tight);display:flex;align-items:center;gap:var(--space-1-5)}.figure-hero{font-size:clamp(var(--fs-3xl),5.5vw,var(--fs-4xl));font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.figure-hero,.kpi-value{font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);line-height:1}.kpi-value{font-size:var(--fs-3xl);color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi-value.muted{color:var(--text-faint);font-weight:var(--fw-medium)}.kpi-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-2);margin-top:auto}.kpi-delta{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-sm);font-weight:var(--fw-semibold);padding:var(--space-1) var(--space-2);border-radius:5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi-delta.up{color:var(--success);background:var(--success-soft)}.kpi-delta.down{color:var(--danger);background:var(--danger-soft)}.kpi-delta.flat{color:var(--text-muted);background:var(--bg-subtle)}.kpi-spark{flex:1 1;min-width:0;height:36px;max-width:110px}.panel{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-6) var(--space-5);margin-bottom:var(--space-5);position:relative;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 1px 2px rgba(15,23,42,.03);transition:box-shadow var(--t-normal)}.panel:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 8px 24px -16px rgba(15,23,42,.1)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.panel-head h2{margin:0 0 var(--space-1);font-size:var(--fs-2xl);font-weight:var(--fw-medium);letter-spacing:var(--ls-tight)}.panel-head p{margin:0;font-size:var(--fs-base);color:var(--text-muted)}.panel-actions{display:flex;gap:var(--space-1-5);align-items:center;flex-wrap:wrap}.legend-toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-3);border:1px solid var(--border);background:var(--bg-elevated);border-radius:7px;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);transition:all var(--t-fast)}.legend-toggle:hover{color:var(--text);border-color:var(--border-strong)}.legend-toggle.on{color:var(--text)}.legend-toggle.off{color:var(--text-faint)}.legend-toggle.off .swatch{opacity:.3}.swatch{width:9px;height:9px;border-radius:2.5px;background:currentColor;flex-shrink:0}.two-col{display:grid;grid-template-columns:1.6fr 1fr;grid-gap:var(--space-5);gap:var(--space-5);margin-bottom:var(--space-5)}@media (max-width:1100px){.two-col{grid-template-columns:1fr}}.stats-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:var(--space-6) var(--space-8);gap:var(--space-6) var(--space-8);padding:var(--space-5) var(--space-6)}.stats-strip .stat-item .stat-label{font-size:var(--fs-base);margin-bottom:var(--space-1-5)}.stats-strip .stat-item .stat-label,.stats-strip .stat-item .stat-value{font-weight:var(--fw-medium);letter-spacing:var(--ls-tight);color:var(--text)}.stats-strip .stat-item .stat-value{font-size:var(--fs-3xl);line-height:1.1}.stats-strip .stat-item .stat-sub{font-size:var(--fs-sm);font-weight:var(--fw-light);letter-spacing:var(--ls-tight);color:var(--text-muted);margin-top:var(--space-1)}.chart-wrap{position:relative}.chart-svg{display:block;width:100%;height:auto;overflow:visible}.grid-line{stroke:var(--border);stroke-dasharray:3 4}.axis-text{fill:var(--text-faint);font-size:var(--fs-xs);letter-spacing:.01em;font-family:var(--font);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tooltip{position:absolute;background:var(--bg-elevated);border:1px solid var(--border-strong);box-shadow:var(--shadow-md);border-radius:var(--radius-sm);padding:var(--space-2-5) var(--space-3);font-size:var(--fs-sm);pointer-events:none;z-index:20;min-width:160px;transform:translate(-50%,calc(-100% - 10px));transition:opacity var(--t-fast)}.tooltip-date{font-size:var(--fs-xs);letter-spacing:.01em;color:var(--text-muted);margin-bottom:var(--space-1-5);font-weight:var(--fw-medium)}.tooltip-row{justify-content:space-between;gap:var(--space-3-5);padding:var(--space-0-5) 0}.tooltip-label,.tooltip-row{display:flex;align-items:center}.tooltip-label{gap:var(--space-1-5);color:var(--text-muted)}.tooltip-label .dot{width:8px;height:8px;border-radius:50%}.tooltip-val{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold);color:var(--text)}.tbl{width:100%;font-size:var(--fs-md)}.tbl th{text-align:left;font-weight:var(--fw-medium);color:var(--text);font-size:var(--fs-base);letter-spacing:var(--ls-tight);text-transform:none;padding:0;border-bottom:1px solid var(--border);position:relative;white-space:nowrap}.tbl th.numeric{text-align:right}.tbl th .th-sort{display:inline-flex;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-2-5) var(--space-3);background:none;border:0;font:inherit;color:inherit;text-align:inherit;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tbl th.numeric .th-sort{justify-content:flex-end}.tbl th .th-sort:hover{color:var(--text)}.tbl th .th-sort:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}.tbl th .sort-ind{display:inline-block;opacity:.4;font-size:var(--fs-2xs);transform:translateY(-1px)}.tbl th.active .sort-ind{opacity:1;color:var(--accent)}.tbl th:not(:has(.th-sort)){padding:var(--space-2-5) var(--space-3)}.tbl td{padding:var(--space-3-5) var(--space-3);border-bottom:1px solid var(--border);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text)}.tbl tr{transition:background var(--t-fast)}.tbl tr:last-child td{border-bottom:none}.tbl tbody tr:hover td{background:color-mix(in oklab,var(--accent) 4%,var(--bg-elevated))}.tbl .numeric{text-align:right}.tbl .platform-cell{display:flex;align-items:center;gap:var(--space-2-5);font-weight:var(--fw-medium)}.tbl-cell-tip{position:relative}.tbl-cell-tip:focus{outline:none;box-shadow:inset 0 0 0 2px var(--accent-soft)}.stat-tip{position:relative;cursor:help}.stat-tip:focus{outline:none;color:var(--text)}.tbl .platform-dot{width:9px;height:9px;border-radius:3px;flex-shrink:0}.tbl .rank{color:var(--text-faint);font-size:var(--fs-sm);letter-spacing:0;width:22px}.tbl .product-name{font-weight:var(--fw-medium);max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tbl .sub{color:var(--text-faint);font-size:var(--fs-sm);letter-spacing:0}@media (max-width:600px){.tbl .col-hide-mobile{display:none}}.donut-wrap{gap:var(--space-4-5);padding:var(--space-2) 0 var(--space-1)}.donut-center,.donut-wrap{display:flex;flex-direction:column;align-items:center}.donut-center{position:absolute;inset:0;justify-content:center;pointer-events:none}.donut-center .big{font-size:var(--fs-4xl);font-weight:var(--fw-semibold)}.donut-center .small{font-size:var(--fs-sm);letter-spacing:0;color:var(--text-muted);margin-top:var(--space-0-5)}.donut-legend{width:100%;display:flex;flex-direction:column;gap:var(--space-2-5)}.donut-legend-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-3-5);border:1px solid var(--border);border-radius:9px;transition:border-color var(--t-fast),background .15s}.donut-legend-item:hover{border-color:var(--border-strong);background:color-mix(in oklab,var(--accent) 3%,var(--bg-elevated))}.donut-legend-item .lt{display:flex;align-items:center;gap:var(--space-2-5)}.donut-legend-item .swatch-lg{width:11px;height:11px;border-radius:3px}.donut-legend-item .name{font-size:var(--fs-base);font-weight:var(--fw-medium)}.donut-legend-item .val{font-size:var(--fs-base);font-weight:var(--fw-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.donut-legend-item .pct{font-size:var(--fs-xs);letter-spacing:.01em;color:var(--text-muted);margin-left:var(--space-1-5)}.info-pill{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1) var(--space-2-5) var(--space-1) var(--space-2);background:var(--warning-soft);color:var(--warning);border-radius:999px;cursor:help;position:relative}.info-pill,.info-pill[data-tip]:hover:after{font-size:var(--fs-xs);font-weight:var(--fw-medium)}.info-pill[data-tip]:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--text);color:var(--bg-elevated);padding:var(--space-2) var(--space-2-5);border-radius:6px;white-space:nowrap;z-index:50;box-shadow:var(--shadow-md)}.info-pill[data-tip]:hover:before{content:"";position:absolute;bottom:calc(100% + 3px);left:50%;transform:translateX(-50%);border:5px solid transparent;border-top:5px solid var(--text)}.help{width:14px;height:14px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-strong);background:transparent;font-family:inherit;font-size:var(--fs-2xs);color:var(--text-faint);letter-spacing:.01em;cursor:help;position:relative;font-weight:var(--fw-medium);padding:0;line-height:1}.help:focus{outline:none;border-color:var(--accent);color:var(--accent)}.quality-badge[data-tip]:focus:after,.quality-badge[data-tip]:hover:after,.stat-tip[data-tip]:focus:after,.stat-tip[data-tip]:hover:after,.store-switch[data-tip]:focus:after,.store-switch[data-tip]:hover:after,.sync-indicator[data-tip]:focus:after,.sync-indicator[data-tip]:hover:after,.tbl-cell-tip[data-tip]:focus:after,.tbl-cell-tip[data-tip]:hover:after{content:attr(data-tip);position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:60;pointer-events:none}.help-tip-portal,.quality-badge[data-tip]:focus:after,.quality-badge[data-tip]:hover:after,.stat-tip[data-tip]:focus:after,.stat-tip[data-tip]:hover:after,.store-switch[data-tip]:focus:after,.store-switch[data-tip]:hover:after,.sync-indicator[data-tip]:focus:after,.sync-indicator[data-tip]:hover:after,.tbl-cell-tip[data-tip]:focus:after,.tbl-cell-tip[data-tip]:hover:after{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border-strong);padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:1.5;white-space:normal;max-width:min(280px,calc(100vw - 32px));width:max-content;text-align:left;box-shadow:0 12px 28px -8px rgba(0,0,0,.18),0 2px 6px rgba(0,0,0,.05)}.help-tip-portal{display:flex;flex-direction:column;gap:var(--space-1-5);letter-spacing:0}.help-tip-text{color:var(--text)}.help-tip-code{font-family:var(--mono);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:.01em;color:var(--text-faint);padding:var(--space-1) var(--space-2);background:var(--bg-subtle);border-radius:5px;width:max-content;max-width:100%;overflow-wrap:anywhere}.pending-cell{display:inline-flex;align-items:center;gap:var(--space-1-5);color:var(--text-faint);cursor:help;position:relative}.pending-cell[data-tip]:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);right:0;background:var(--text);color:var(--bg-elevated);padding:var(--space-1-5) var(--space-2-5);border-radius:6px;font-size:var(--fs-xs);letter-spacing:.01em;font-weight:var(--fw-medium);white-space:nowrap;z-index:50}.stack-legend{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-4)}.stack-legend-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--fs-sm);flex:1 1;min-width:140px}.stack-legend-item .sw{width:10px;height:10px;border-radius:3px}.stack-legend-item .nm{color:var(--text-muted);font-weight:var(--fw-medium)}.stack-legend-item .tot{margin-left:auto;font-weight:var(--fw-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.footnote{display:flex;flex-direction:column;align-items:center;gap:var(--space-3-5);text-align:center;font-size:var(--fs-base);color:var(--text);letter-spacing:var(--ls-tight);padding:var(--space-7) 0 var(--space-3)}.footnote .footer-line{color:var(--text-faint)}.footer-wordmarks{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-7)}.footer-wordmark{color:var(--text);opacity:.55;flex:0 0 auto;transition:opacity var(--t-fast)}.footer-wordmark:hover{opacity:.9}.footer-wordmark-marmalade{color:var(--text);opacity:.55;height:20px;width:auto;flex:0 0 auto;transition:opacity var(--t-fast)}.footer-wordmark-marmalade:hover{opacity:.9}.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 calc(-1 * var(--space-1))}.tbl-scroll .tbl{min-width:100%}.page-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2-5);flex-wrap:wrap}.store-switch{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;position:relative;cursor:default;display:inline-flex;align-items:center;gap:var(--space-2)}.store-switch:focus{outline:none;border-color:var(--accent)}.store-currency-pill{display:inline-block;padding:var(--space-px) var(--space-2);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-wide);text-transform:uppercase}.store-picker{display:inline-flex;align-items:center}.store-picker select{padding:var(--space-2) var(--space-7) var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='%23888' d='M0 0l5 6 5-6z'/></svg>") no-repeat right 10px center /10px;color:var(--text);font-size:var(--fs-base);font-weight:var(--fw-semibold);-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;max-width:240px}.store-picker select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.portfolio-strip{display:flex;gap:var(--space-2);overflow-x:auto;-webkit-overflow-scrolling:touch;padding:var(--space-1) var(--space-0-5) var(--space-3);margin-bottom:var(--space-3);scrollbar-width:thin;scroll-snap-type:x proximity}.portfolio-card{scroll-snap-align:start}.portfolio-strip::-webkit-scrollbar{height:6px}.portfolio-strip::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.portfolio-card{flex:0 0 auto;display:inline-flex;align-items:center;gap:var(--space-2-5);padding:var(--space-2-5) var(--space-3-5) var(--space-2-5) var(--space-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--t-fast),background .12s ease,transform .12s ease;text-align:left;font-family:inherit;color:var(--text)}.portfolio-card:hover{transform:translateY(-1px)}.portfolio-card.active,.portfolio-card:hover{border-color:var(--store-accent,var(--accent))}.portfolio-card.active{box-shadow:0 0 0 1px var(--store-accent,var(--accent)) inset;background:linear-gradient(180deg,color-mix(in srgb,var(--store-accent,var(--accent)) 8%,var(--bg-elevated)),var(--bg-elevated))}.portfolio-card .portfolio-icon{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:color-mix(in srgb,var(--store-accent,var(--accent)) 14%,transparent);box-shadow:0 0 0 1.5px color-mix(in srgb,var(--store-accent,var(--accent)) 35%,transparent)}.portfolio-card .portfolio-icon-all{background:var(--accent);color:var(--bg-elevated);font-weight:var(--fw-extrabold);font-size:var(--fs-base);line-height:var(--lh-tight)}.portfolio-card .portfolio-icon-bb{background:transparent;box-shadow:none;width:22px;height:22px;overflow:hidden}.portfolio-card .portfolio-icon-bb svg{width:22px;height:22px;display:block}.portfolio-card .portfolio-icon-mm{background:transparent;box-shadow:none;width:auto;height:22px;display:inline-flex;align-items:center;flex-shrink:0}.portfolio-card .portfolio-icon-mm img{height:22px;width:auto;display:block}.portfolio-card .portfolio-icon-dot{background:var(--store-accent,var(--accent));width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 2px color-mix(in srgb,var(--store-accent,var(--accent)) 30%,transparent)}.portfolio-card .portfolio-name{font-weight:var(--fw-semibold);font-size:var(--fs-base);white-space:nowrap;display:inline-flex;align-items:center;gap:var(--space-1-5)}.portfolio-card .portfolio-stats{display:flex;flex-direction:column;align-items:flex-end;font-size:var(--fs-xs);line-height:1.3;margin-left:var(--space-1);min-width:0}.portfolio-card .portfolio-stats b{font-weight:var(--fw-semibold);color:var(--text);font-size:var(--fs-sm)}.portfolio-card .portfolio-stats em{font-style:normal;color:var(--text-faint)}@media (max-width:720px){.portfolio-strip{padding-bottom:var(--space-3-5);gap:var(--space-1-5)}.portfolio-card{padding:var(--space-2) var(--space-3) var(--space-2) var(--space-2-5);gap:var(--space-2)}.portfolio-card .portfolio-name{font-size:var(--fs-sm)}.portfolio-card .portfolio-stats{font-size:var(--fs-xs)}}.shell.refetching .kpi-grid,.shell.refetching .panel:not(.empty-state){opacity:.55;transition:opacity .2s ease;pointer-events:none}.shell.refetching:before{content:"";position:fixed;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);background-size:50% 100%;background-repeat:no-repeat;animation:refetch-pulse 1.2s linear infinite;z-index:9999}@keyframes refetch-pulse{0%{background-position:-50% 0}to{background-position:150% 0}}.sync-next{color:var(--text-faint);font-size:var(--fs-xs);letter-spacing:.01em;white-space:nowrap}.clickable-row,.kpi-card.clickable{cursor:pointer}.clickable-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.kpi-card-stretch{position:absolute;inset:0;width:100%;height:100%;background:transparent;border:0;padding:0;margin:0;cursor:pointer;border-radius:inherit;z-index:1;font:inherit;color:transparent}.kpi-card-stretch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.kpi-card .anomaly-dot,.kpi-card .help,.kpi-card .pending-cell,.kpi-card .quality-badge{position:relative;z-index:2}.quality-badge{display:inline-flex;align-items:center;margin-left:var(--space-1-5);padding:var(--space-0-5) var(--space-1-5);border-radius:999px;background:var(--warning-soft);color:var(--warning);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.01em;border:0;cursor:help;position:relative}.quality-badge:focus{outline:none;box-shadow:0 0 0 2px var(--warning-soft),0 0 0 3px var(--warning)}.delta-abs{margin-left:var(--space-1);color:var(--text-faint);font-weight:var(--fw-medium)}.anomaly-dot{display:inline-block;width:8px;height:8px;border-radius:50%;cursor:help;margin-left:var(--space-0-5);position:relative;border:0;padding:0}.anomaly-dot:focus{outline:none;box-shadow:0 0 0 2px var(--accent-soft)}.anomaly-high.anomaly-bad{background:var(--warning)}.anomaly-high.anomaly-good{background:var(--success)}.anomaly-extreme.anomaly-bad{background:var(--danger)}.anomaly-extreme.anomaly-good{background:var(--success)}.anomaly-dot[data-tip]:focus:after,.anomaly-dot[data-tip]:hover:after{content:attr(data-tip);position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--bg-elevated);color:var(--text);border:1px solid var(--border-strong);padding:var(--space-2) var(--space-2-5);border-radius:var(--radius-sm);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:0;white-space:nowrap;z-index:60;pointer-events:none;box-shadow:0 12px 28px -8px rgba(0,0,0,.18)}.kpi-target{margin-top:var(--space-2-5);font-size:var(--fs-xs);letter-spacing:0;color:var(--text-muted)}.kpi-target-bar{position:relative;width:100%;height:5px;background:var(--bg-subtle);border-radius:3px;overflow:hidden}.kpi-target-fill{height:100%;background:var(--accent);border-radius:3px;transition:width var(--t-slow) ease}.kpi-target-ahead .kpi-target-fill{background:var(--success)}.kpi-target-ontrack .kpi-target-fill{background:var(--accent)}.kpi-target-behind .kpi-target-fill{background:var(--warning)}.kpi-target-pace-marker{position:absolute;top:-2px;width:2px;height:9px;background:var(--text-muted);border-radius:1px}.kpi-target-meta{display:flex;justify-content:space-between;margin-top:var(--space-1);gap:var(--space-2)}.kpi-target-pace{font-weight:var(--fw-medium);color:var(--text)}.goal-editor{display:flex;flex-direction:column;gap:var(--space-2-5)}.goal-field{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.goal-field>span{color:var(--text);font-size:var(--fs-base);flex:1 1}.goal-field input{width:140px;padding:var(--space-1-5) var(--space-2-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit;font-size:var(--fs-base);text-align:right}.goal-field input:focus,.goal-field select:focus,.goal-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.goal-field select,.goal-field textarea{width:200px;padding:var(--space-1-5) var(--space-2-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit;font-size:var(--fs-base)}.goal-field textarea{resize:vertical;font-family:var(--font);width:240px}.annotate-btn{font-size:var(--fs-sm);padding:var(--space-1-5) var(--space-2-5)}.drilldown-platforms{display:flex;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-3) 0;margin-bottom:var(--space-2);border-bottom:1px solid var(--border)}.drilldown-platform{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--fs-sm);letter-spacing:0}.drilldown-platform b{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.variant-toggle{width:22px;height:22px;border-radius:4px;background:transparent;border:0;color:var(--text-muted);font-size:var(--fs-sm);cursor:pointer;transition:transform var(--t-fast),color .15s}.variant-toggle:hover{color:var(--text)}.variant-toggle.open{transform:rotate(90deg)}.tbl tr.variant-row td{background:var(--bg-subtle);padding-top:var(--space-1-5)!important;padding-bottom:var(--space-1-5)!important;color:var(--text-muted)}.tbl tr.variant-row td:first-child{border-left:2px solid var(--accent-soft)}.tbl tr.variant-row .variant-name{font-weight:var(--fw-regular);font-size:var(--fs-base)}.cost-edit{background:transparent;border:1px dashed var(--border-strong);color:var(--text-muted);padding:var(--space-px) var(--space-1-5);border-radius:4px;font-size:var(--fs-xs);letter-spacing:0;cursor:pointer;transition:all var(--t-fast)}.cost-edit:hover{color:var(--accent);border-color:var(--accent);border-style:solid}.cost-edit.cost-source-shopify{border-style:solid;border-color:var(--border);color:var(--text-muted)}.cost-edit.cost-source-shopify:hover{color:var(--text);border-color:var(--border-strong)}.cost-edit.cost-source-override{border-style:solid;border-color:color-mix(in oklab,var(--accent) 50%,transparent);color:var(--accent)}.cost-input{width:70px;padding:var(--space-px) var(--space-1-5);border:1px solid var(--accent);border-radius:4px;font-size:var(--fs-xs);font:inherit;background:var(--bg);color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cost-input:focus{outline:none;box-shadow:0 0 0 2px var(--accent-soft)}.muted{color:var(--text-faint)}.error-banner{display:block;padding:var(--space-3) var(--space-3-5);margin:0 0 var(--space-4);background:var(--danger-soft);color:var(--danger);border:1px solid color-mix(in oklab,var(--danger) 30%,transparent);border-radius:var(--radius-sm);font-size:var(--fs-base);font-weight:var(--fw-medium);line-height:var(--lh-snug)}.error-banner b,.error-banner strong{font-weight:var(--fw-semibold)}.empty-state{text-align:center;padding:var(--space-12) var(--space-7)}.empty-state :is(h1,h2){margin:0 0 var(--space-2);font-size:var(--fs-xl);font-weight:var(--fw-medium)}.empty-state p{max-width:480px;margin:0 auto var(--space-4-5);color:var(--text-muted);font-size:var(--fs-md);line-height:1.5}.empty-state-actions{display:inline-flex;gap:var(--space-2-5);flex-wrap:wrap;justify-content:center}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-4);border-radius:var(--radius-sm);font-size:var(--fs-base);font-weight:var(--fw-medium);text-decoration:none;cursor:pointer;transition:transform var(--t-fast),box-shadow var(--t-fast),filter var(--t-fast),border-color var(--t-fast),color var(--t-fast)}.btn-danger:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-danger:disabled,.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none;filter:none}.btn-primary{background:var(--accent);color:var(--btn-primary-text);border:1px solid var(--accent)}.btn-primary:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 6px 16px -6px color-mix(in oklab,var(--accent) 60%,transparent)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-secondary{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border-strong)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.btn-danger{padding:var(--space-2-5) var(--space-4);border-radius:var(--radius-sm);font-size:var(--fs-base);font-weight:var(--fw-medium);cursor:pointer;transition:all var(--t-fast);background:transparent;color:var(--danger);border:1px solid color-mix(in oklab,var(--danger) 50%,transparent)}.btn-danger:hover{background:var(--danger-soft);border-color:var(--danger)}.btn-danger:disabled{opacity:.4;cursor:not-allowed}.event-marker{transition:opacity var(--t-fast)}.event-marker:hover circle{r:5.5}.event-marker:hover{opacity:1;filter:brightness(1.1)}.tbl tr.selected td{background:var(--accent-soft)}.export-btn{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.export-btn:hover{border-color:var(--border-strong)}.modal-backdrop{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:rgba(5,8,15,.46);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal{width:min(760px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 24px 80px -36px rgba(0,0,0,.55)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4-5) var(--space-5);border-bottom:1px solid var(--border)}.modal-head h2{margin:0;font-size:var(--fs-xl)}.modal-body{padding:var(--space-4-5) var(--space-5) var(--space-5-5)}.mini-list{display:grid;grid-gap:var(--space-1-5);gap:var(--space-1-5);margin-top:var(--space-3-5)}.mini-list>div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3-5);padding:var(--space-2-5) 0;border-bottom:1px solid var(--border)}.mini-list span{color:var(--text-muted)}.sync-panel{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.sync-panel-meta{font-size:var(--fs-base);color:var(--text-muted)}.sync-panel-meta b{color:var(--text);font-weight:var(--fw-semibold)}.sync-table{display:grid;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-elevated)}.sync-table-head,.sync-table-row>summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.4fr);align-items:center;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-2-5) var(--space-3-5);font-size:var(--fs-sm)}.sync-table-head{background:var(--bg-subtle);border-bottom:1px solid var(--border);font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--text-faint)}.sync-table-row{border-top:1px solid var(--border)}.sync-table-row:first-of-type{border-top:0}.sync-table-row>summary{list-style:none;cursor:pointer;transition:background var(--t-fast)}.sync-table-row>summary::-webkit-details-marker{display:none}.sync-table-row[aria-disabled=true]>summary{cursor:default}.sync-table-row:not([aria-disabled=true])>summary:hover{background:var(--bg-subtle)}.sync-table-row[open]>summary{background:var(--bg-subtle);border-bottom:1px solid var(--border)}.sync-cell{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-muted);min-width:0}.sync-cell-label{color:var(--text);font-weight:var(--fw-semibold)}.sync-cell-meta{flex-direction:column;align-items:flex-start;gap:var(--space-0-5);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sync-cell-meta em{font-style:normal;font-size:var(--fs-xs);color:var(--text-faint)}.sync-tone-warn .sync-cell:nth-child(2) span:last-child{color:var(--warning);font-weight:var(--fw-medium)}.sync-tone-error .sync-cell:nth-child(2) span:last-child{color:var(--danger);font-weight:var(--fw-medium)}.sync-error-detail{padding:var(--space-2-5) var(--space-3-5) var(--space-3-5);background:var(--bg-subtle);border-top:0;display:grid;grid-gap:var(--space-1-5);gap:var(--space-1-5)}.sync-error-label{font-size:var(--fs-xs);color:var(--text-muted)}.sync-error-label code{padding:var(--space-px) var(--space-1-5);border-radius:4px}.sync-error-label code,.sync-error-msg{background:var(--bg);font-size:var(--fs-xs);color:var(--text);border:1px solid var(--border)}.sync-error-msg{margin:0;padding:var(--space-2) var(--space-2-5);border-radius:var(--radius-sm);font-family:ui-monospace,SFMono-Regular,monospace;white-space:pre-wrap;word-break:break-word;max-height:140px;overflow:auto}@media (max-width:720px){.sync-table-head,.sync-table-row>summary{grid-template-columns:1fr 1fr;row-gap:var(--space-1-5)}.sync-cell-meta,.sync-table-head span:nth-child(n+3){grid-column:1/-1}}.danger-text{color:var(--danger)!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:calc(-1 * var(--space-px))!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.anomaly-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4-5);padding:var(--space-3) var(--space-4);border:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--warning) 6%,var(--bg-elevated)),var(--bg-elevated));border-radius:var(--radius-md);margin-bottom:var(--space-3-5)}.anomaly-banner-title{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);flex:0 0 auto}.anomaly-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--space-2-5) var(--space-4-5)}.anomaly-item{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-base)}.anomaly-item .anomaly-arrow{font-size:var(--fs-xs);line-height:1}.anomaly-item.good .anomaly-arrow{color:var(--success)}.anomaly-item.bad .anomaly-arrow{color:var(--danger)}.anomaly-item .anomaly-text b{font-weight:var(--fw-semibold)}@media (max-width:720px){.anomaly-banner{padding:var(--space-2-5) var(--space-3-5)}.anomaly-item{font-size:var(--fs-sm)}}.skip-link{position:absolute;top:-40px;left:0;background:var(--accent);color:var(--btn-primary-text);padding:var(--space-2) var(--space-3-5);z-index:10000;text-decoration:none;border-radius:0 0 8px 0;font-size:var(--fs-base);font-weight:var(--fw-semibold)}.skip-link:focus{top:0}:where(button,a,select,input,textarea,[role=button],[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:100;transition:box-shadow .18s ease}.topbar.is-scrolled{box-shadow:0 4px 14px -8px color-mix(in srgb,var(--text) 30%,transparent)}@media print{body{background:white;color:black}.annotate-btn,.date-picker-trigger,.empty-state-actions,.footer-wordmarks,.help,.icon-btn,.legend-toggle,.page-actions,.panel-actions,.portfolio-strip,.quality-badge,.seg-control,.skip-link,.topbar{display:none!important}.shell{max-width:100%;padding:0 var(--space-4)}.page-head{padding:var(--space-3) 0 var(--space-2)}.panel{box-shadow:none;border:1px solid #ddd;page-break-inside:avoid;break-inside:avoid;margin-bottom:var(--space-3)}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--space-2);gap:var(--space-2)}.kpi-card{box-shadow:none;border:1px solid #ddd;padding:var(--space-2-5)}.footnote{color:#444}.clickable,.clickable-row{cursor:default}}@media (max-width:900px){.topbar-inner{flex-wrap:wrap;gap:var(--space-2-5)}.brand{white-space:nowrap;flex:0 0 auto;min-width:0}.brand>span:first-of-type{overflow:hidden;text-overflow:ellipsis;max-width:60vw}.brand-divider,.brand-sub,.store-switch,.sync-next{display:none}.topbar-actions{gap:var(--space-1-5);flex:1 1 100%;justify-content:flex-end;flex-wrap:wrap}.date-picker-trigger,.sync-indicator{white-space:nowrap}.date-picker-pop{right:0;min-width:min(260px,calc(100vw - 28px))}.page-head{padding:var(--space-7) 0 var(--space-4-5);gap:var(--space-3)}.page-actions,.page-head{flex-direction:column;align-items:stretch}.page-actions{gap:var(--space-2)}.page-actions>*{width:100%}.page-actions .seg-control{justify-content:stretch;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.page-actions .seg-control button{flex:1 1;white-space:nowrap}.page-actions .export-btn{text-align:center}.compare-pill{align-self:stretch;line-height:1.45;border-radius:10px;padding:var(--space-2) var(--space-3);white-space:normal}}@media (max-width:720px){.shell{padding:0 var(--space-3-5) var(--space-12)}.topbar{padding:var(--space-2-5) var(--space-3)}.brand{font-size:var(--fs-md);gap:var(--space-2)}.brand-mark{width:28px;height:28px;font-size:var(--fs-base);border-radius:7px}.sync-indicator{padding:var(--space-1-5) var(--space-2-5);font-size:var(--fs-sm);letter-spacing:0}.icon-btn{width:32px;height:32px;flex:0 0 auto}.logout-btn{width:32px;padding:0;gap:0}.logout-btn .logout-label{display:none}.date-picker-trigger{padding:var(--space-1-5) var(--space-2-5);font-size:var(--fs-sm)}.page-head h1{font-size:var(--fs-2xl)}.page-head p{font-size:var(--fs-md)}.page-actions .seg-control button{font-size:var(--fs-sm);letter-spacing:0;padding:var(--space-2) var(--space-1-5)}.compare-pill{font-size:var(--fs-sm)}.panel{padding:var(--space-4-5) var(--space-4) var(--space-4);margin-bottom:var(--space-4);border-radius:14px}.panel-head{flex-direction:column;gap:var(--space-2-5);margin-bottom:var(--space-3-5)}.panel-head h2{font-size:var(--fs-xl)}.panel-actions{width:100%}.kpi-card{padding:var(--space-4) var(--space-4) var(--space-3-5)}.kpi-spark{max-width:80px;height:32px}.tbl{font-size:var(--fs-base)}.tbl td,.tbl th{padding:var(--space-2-5) var(--space-1-5)!important}.tbl td.rank,.tbl th:first-child:empty{display:none}.tbl .product-name{font-size:var(--fs-base)}.tbl .sub{font-size:var(--fs-sm);letter-spacing:0}.stack-legend{gap:var(--space-1-5)}.stack-legend-item{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 6px);min-width:0;padding:var(--space-2) var(--space-2-5)}.stack-legend-item,.stack-legend-item .tot{font-size:var(--fs-sm);letter-spacing:0}.stats-strip{padding:var(--space-3-5) var(--space-1);gap:var(--space-4) var(--space-4-5);grid-template-columns:repeat(2,1fr)}.stats-strip .stat-item .stat-value{font-size:var(--fs-2xl)}.donut-center .big{font-size:var(--fs-3xl)}.footnote{font-size:var(--fs-sm);letter-spacing:0;padding:var(--space-4) 0 var(--space-1);line-height:1.5}}@media (max-width:420px){.stack-legend-item{flex:1 1 100%}.kpi-card{padding:var(--space-3-5) var(--space-3-5) var(--space-3)}.kpi-spark{max-width:70px}.page-head h1{font-size:var(--fs-2xl)}.panel-head h2{font-size:var(--fs-lg)}}.skeleton{display:inline-block;background:linear-gradient(90deg,var(--bg-subtle) 0,var(--border) 50%,var(--bg-subtle) 100%);background-size:200% 100%;border-radius:var(--radius-sm);animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-text{height:14px;vertical-align:middle}.skeleton-block{display:block;width:100%;border-radius:var(--radius-md)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{opacity:.55}.skeleton,.sync-dot:after{animation:none}.shell.refetching:before{animation:none;opacity:.6}}@media (prefers-contrast:more){[data-theme=dark]{--text:#d4d8df;--text-muted:#b0b5be;--text-faint:#8c92a0;--border:#3a4050;--border-strong:#4c5366}}.page-skeleton{max-width:1480px;margin:0 auto;padding:var(--space-7) var(--space-8) var(--space-12)}@media (max-width:720px){.page-skeleton{padding:var(--space-5) var(--space-3-5) var(--space-10)}}.skel-bar{background:linear-gradient(90deg,var(--bg-subtle) 0,var(--bg-elevated) 50%,var(--bg-subtle) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s infinite;border-radius:var(--radius-sm)}.skel-bar.header{height:var(--space-8);width:280px;margin-bottom:var(--space-5)}.skel-bar.filters{height:var(--space-10);width:100%;max-width:480px;margin-top:var(--space-5);margin-bottom:var(--space-5)}.skel-bar.chart{height:320px;width:100%;margin-top:var(--space-6)}.skel-bar.chart,.skel-bar.row{border-radius:var(--radius-md)}.skel-bar.row{height:110px;margin-bottom:var(--space-3)}.skel-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-5)}.skel-card{background:linear-gradient(90deg,var(--bg-subtle) 0,var(--bg-elevated) 50%,var(--bg-subtle) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s infinite;border-radius:var(--radius-md);height:96px}.skel-card.kpi{height:142px}.skel-table{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-5)}.skel-table .skel-row-line{height:var(--space-10);background:linear-gradient(90deg,var(--bg-subtle) 0,var(--bg-elevated) 50%,var(--bg-subtle) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s infinite;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){.skel-bar,.skel-card,.skel-table .skel-row-line{animation:none;opacity:.55}}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4-5);position:relative;z-index:var(--z-base);background:radial-gradient(720px 380px at 50% -8%,color-mix(in oklab,var(--accent) 18%,transparent),transparent 66%),radial-gradient(circle at 18% 8%,color-mix(in oklab,var(--accent) 13%,transparent),transparent 55%),radial-gradient(circle at 82% 92%,color-mix(in oklab,var(--accent-2) 12%,transparent),transparent 55%),var(--bg)}.auth-card{width:100%;max-width:400px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-7) var(--space-7) var(--space-5-5);box-shadow:0 24px 60px -32px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.6)}.auth-brand{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5-5)}.auth-brand-name{font-size:var(--fs-lg);font-weight:var(--fw-medium);margin:0;line-height:1.25}.auth-brand-name,.auth-brand-sub{letter-spacing:var(--ls-tight);color:var(--text)}.auth-brand-sub{font-size:var(--fs-base);font-weight:var(--fw-light);opacity:.65;margin:var(--space-0-5) 0 0 0}.auth-field{display:block;margin-bottom:var(--space-3-5)}.auth-field>span{display:block;font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:var(--ls-tight);margin-bottom:var(--space-1-5);color:var(--text)}.auth-field input{width:100%;box-sizing:border-box;padding:var(--space-2-5) var(--space-3);font:inherit;font-size:var(--fs-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);transition:border-color var(--t-fast),box-shadow .15s}.auth-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.auth-error{margin-bottom:var(--space-3);padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);font-size:var(--fs-sm);line-height:1.45}.auth-submit{width:100%;padding:var(--space-3) var(--space-3-5);margin-top:var(--space-1);border:0;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent) 0,var(--accent-2) 100%);color:var(--btn-primary-text);font-size:var(--fs-md);font-weight:var(--fw-medium);cursor:pointer;box-shadow:0 8px 24px -10px color-mix(in oklab,var(--accent) 70%,transparent);transition:transform var(--t-fast) ease,box-shadow .15s ease}.auth-submit:hover{transform:translateY(-1px);box-shadow:0 12px 28px -10px color-mix(in oklab,var(--accent) 70%,transparent)}.auth-submit:active{transform:translateY(0)}.auth-footnote{margin:var(--space-4-5) 0 0;font-size:var(--fs-sm);letter-spacing:0;color:var(--text-faint);text-align:center;line-height:1.5}.auth-footnote a{color:var(--accent-on-soft);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}.auth-footnote a:hover{text-decoration-thickness:2px}[data-theme=dark] .auth-card{box-shadow:0 24px 60px -32px rgba(0,0,0,.6)}.two-up{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-6);gap:var(--space-6)}@media (max-width:720px){.two-up{grid-template-columns:1fr}}