@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper-0:#fff;--paper-1:#faf9f6;--paper-2:#f3f1ec;--paper-3:#eae7e0;--paper-4:#dfdbd1;--ink-0:#191813;--ink-1:#3a382f;--ink-2:#6b685c;--ink-3:#9b978a;--ink-4:#c9c5b8;--teal-50:#ecfbf3;--teal-100:#d6f6e6;--teal-200:#a8ecc9;--teal-400:#35d18f;--teal-500:#12bf7c;--teal-600:#0e9c64;--teal-700:#0a7449;--amber-100:#fbf0dc;--amber-500:#c97a15;--amber-600:#a56110;--clay-100:#fae6e1;--clay-500:#c2452d;--clay-600:#9e3323;--blue-100:#e3edf8;--blue-500:#2a6fb5;--blue-600:#215790;--violet-100:#ece9f5;--violet-500:#6b5ca5;--series-1:#12bf7c;--series-2:#2a6fb5;--series-3:#c97a15;--series-4:#6b5ca5;--series-5:#c2452d;--series-6:#3a382f;--series-1-soft:#d6f6e6;--series-2-soft:#e3edf8;--series-3-soft:#fbf0dc;--series-4-soft:#ece9f5;--series-5-soft:#fae6e1;--series-6-soft:#eae7e0;--surface-app:var(--paper-1);--surface-card:var(--paper-0);--surface-sunken:var(--paper-2);--surface-raised:var(--paper-0);--surface-inverse:var(--ink-0);--surface-accent-soft:var(--teal-50);--surface-hover:var(--paper-2);--surface-active:var(--paper-3);--text-heading:var(--ink-0);--text-body:var(--ink-1);--text-muted:var(--ink-2);--text-faint:var(--ink-3);--text-inverse:var(--paper-1);--text-accent:var(--teal-600);--text-link:var(--teal-600);--text-link-hover:var(--teal-700);--border-hairline:var(--paper-3);--border-default:var(--paper-4);--border-strong:var(--ink-4);--border-accent:var(--teal-500);--border-focus:var(--teal-500);--accent:var(--teal-500);--accent-hover:var(--teal-600);--accent-press:var(--teal-700);--on-accent:#fff;--positive:var(--teal-600);--positive-soft:var(--teal-100);--warning:var(--amber-500);--warning-soft:var(--amber-100);--negative:var(--clay-500);--negative-soft:var(--clay-100);--info:var(--blue-500);--info-soft:var(--blue-100);--grid-line:var(--paper-3);--focus-ring:0 0 0 3px #12bf7c47;--font-sans:"Plus Jakarta Sans","Helvetica Neue",Helvetica,Arial,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--text-display:600 40px/1.08 var(--font-sans);--text-h1:600 28px/1.16 var(--font-sans);--text-h2:600 20px/1.24 var(--font-sans);--text-h3:600 16px/1.3 var(--font-sans);--text-body-lg:400 16px/1.55 var(--font-sans);--text-body-md:400 14px/1.55 var(--font-sans);--text-body-sm:400 13px/1.5 var(--font-sans);--text-label:500 13px/1.2 var(--font-sans);--text-eyebrow:600 11px/1.2 var(--font-sans);--text-metric-xl:500 clamp(26px,2.4vw,34px)/1 var(--font-mono);--text-metric-lg:500 26px/1 var(--font-mono);--text-metric-md:500 18px/1.1 var(--font-mono);--text-numeric:400 13px/1.4 var(--font-mono);--text-code:400 12px/1.5 var(--font-mono);--tracking-eyebrow:.09em;--tracking-display:-.02em;--tracking-metric:-.01em;--tracking-normal:0;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-0:0px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--gutter-card:20px;--gutter-page:32px;--gap-tight:8px;--gap-default:16px;--gap-section:32px;--sidebar-width:248px;--sidebar-width-collapsed:64px;--topbar-height:60px;--content-max:1240px;--row-height:44px;--control-height-sm:30px;--control-height-md:36px;--control-height-lg:44px;--radius-xs:3px;--radius-sm:5px;--radius-md:8px;--radius-lg:12px;--radius-xl:18px;--radius-pill:999px;--border-width:1px;--border-width-strong:1.5px;--shadow-none:none;--shadow-xs:0 1px 1px #1918130a;--shadow-sm:0 1px 2px #1918130f,0 1px 1px #19181308;--shadow-md:0 4px 12px #19181312;--shadow-lg:0 14px 34px #1918131a;--shadow-inset-top:inset 0 1px 0 #fff9;--card-border:1px solid var(--border-hairline);--card-radius:var(--radius-lg);--card-shadow:var(--shadow-xs);--card-padding:var(--gutter-card);--ease-standard:cubic-bezier(.2,0,0,1);--ease-out:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--duration-instant:80ms;--duration-fast:.13s;--duration-base:.2s;--duration-slow:.32s;--transition-control:background-color var(--duration-fast) linear,border-color var(--duration-fast) linear,color var(--duration-fast) linear,box-shadow var(--duration-fast) linear;--transition-surface:background-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}[data-theme=dark]{--paper-0:#1c1b17;--paper-1:#141310;--paper-2:#232119;--paper-3:#2e2c23;--paper-4:#3c3930;--ink-0:#f6f4ed;--ink-1:#dcd8cd;--ink-2:#a5a194;--ink-3:#7c786b;--ink-4:#4e4b41;--teal-50:#0e2a20;--teal-100:#123527;--teal-200:#1c4a36;--teal-400:#35d18f;--teal-500:#12bf7c;--teal-600:#0e9c64;--teal-700:#0a7449;--amber-100:#3a2a10;--amber-500:#e09a3a;--amber-600:#f0b45c;--clay-100:#3a1c15;--clay-500:#e2705a;--clay-600:#f08c76;--blue-100:#14283f;--blue-500:#4e93d6;--blue-600:#78aee4;--violet-100:#241f38;--violet-500:#9184c9;--series-1:#35d18f;--series-2:#4e93d6;--series-3:#e09a3a;--series-4:#9184c9;--series-5:#e2705a;--series-6:#a5a194;--series-1-soft:#123527;--series-2-soft:#14283f;--series-3-soft:#3a2a10;--series-4-soft:#241f38;--series-5-soft:#3a1c15;--series-6-soft:#2e2c23;--surface-inverse:#f6f4ed;--text-inverse:#191813;--text-accent:var(--teal-400);--text-link:var(--teal-400);--text-link-hover:#5fdea9;--accent:var(--teal-500);--accent-hover:var(--teal-400);--accent-press:var(--teal-600);--on-accent:#08170f;--positive:var(--teal-400);--focus-ring:0 0 0 3px #12bf7c57;--shadow-xs:0 1px 1px #0000004d;--shadow-sm:0 1px 2px #0000005c,0 1px 1px #0000003d;--shadow-md:0 4px 12px #0000006b;--shadow-lg:0 14px 34px #0000008c}[data-theme=dark] ::selection{background:var(--teal-200)}*,:before,:after{box-sizing:border-box}body{background:var(--surface-app);color:var(--text-body);font:var(--text-body-md);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4{color:var(--text-heading);letter-spacing:var(--tracking-display);margin:0}h1{font:var(--text-h1)}h2{font:var(--text-h2)}h3{font:var(--text-h3)}a{color:var(--text-link);border-bottom:1px solid var(--teal-200);transition:var(--transition-control);text-decoration:none}a:hover{color:var(--text-link-hover);border-bottom-color:var(--teal-500)}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}::selection{background:var(--teal-100)}.tnum{font-variant-numeric:tabular-nums}:root{--md-on-surface:var(--text-heading);--md-on-surface-variant:var(--text-muted);--md-outline-variant:var(--border-hairline);--md-surface-container-high:var(--surface-sunken);--md-surface-container-lowest:var(--surface-card);--border:var(--border-hairline);--text:var(--text-body);--danger:var(--negative);--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);color:var(--text-body);background:var(--surface-app);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--sans:var(--font-sans);--mono:var(--font-mono);--flat:var(--text-muted)}*{box-sizing:border-box}body{margin:0}#root{min-height:100vh}h1,h2,h3{color:var(--text-heading);font-family:var(--font-sans);letter-spacing:var(--tracking-display);margin:0;font-weight:700}p{margin:0}.app-shell{min-height:100vh;display:flex}.app-shell__sidebar{height:100vh;width:var(--sidebar-width);flex:0 0 var(--sidebar-width);background:var(--surface-card);border-right:1px solid var(--border-hairline);flex-direction:column;align-self:flex-start;display:flex;position:sticky;top:0;overflow-y:auto}.app-shell__brand{border-bottom:1px solid var(--border-hairline);flex-direction:column;gap:3px;padding:18px 16px 14px;text-decoration:none;display:flex}.app-shell__brand:hover{background:var(--surface-hover);text-decoration:none}.app-shell__brand-eyebrow{font:var(--text-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-faint)}.app-shell__brand-sub{font:var(--text-h3);color:var(--text-heading)}.app-shell__app-select{padding:10px 10px 4px}.app-shell__nav{flex-direction:column;gap:2px;padding:12px 10px;display:flex}.app-shell__nav a{height:34px;font:var(--text-body-sm);color:var(--text-body);border-radius:var(--radius-md);transition:var(--transition-control);align-items:center;gap:10px;padding:0 8px;text-decoration:none;display:flex}.app-shell__nav a:hover{background:var(--surface-hover);text-decoration:none}.app-shell__nav a.active{color:var(--text-accent);background:var(--surface-accent-soft);font:var(--text-label)}.app-shell__account{border-top:1px solid var(--border-hairline);flex-direction:column;gap:10px;margin-top:auto;padding:12px;display:flex}.app-shell__identity{align-items:center;gap:9px;min-width:0;display:flex}.app-shell__avatar{border-radius:var(--radius-pill);background:var(--teal-100);width:26px;height:26px;color:var(--teal-700);font:600 11px/1 var(--font-sans);flex:none;justify-content:center;align-items:center;display:inline-flex}.app-shell__account-name{min-width:0;font:var(--text-label);color:var(--text-heading);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.app-shell__signout{width:30px;height:30px;color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-control);background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:inline-flex}.app-shell__signout:hover{color:var(--text-heading);background:var(--surface-hover)}.theme-toggle{background:var(--surface-sunken);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);align-self:flex-start;gap:2px;padding:2px;display:inline-flex}.theme-toggle__option{width:24px;height:22px;color:var(--text-muted);border-radius:calc(var(--radius-sm) - 2px);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .12s,background-color .12s;display:inline-flex}.theme-toggle__option:hover{color:var(--text-heading)}.theme-toggle__option--active{color:var(--accent-press);background:var(--surface-accent-soft)}.theme-toggle__option--active:hover{color:var(--accent-press)}.app-shell__body{flex-direction:column;flex:1;min-width:0;display:flex}.app-shell__main{flex:1;width:100%;max-width:1360px;margin:0 auto;padding:24px}.app-shell__nav a,.app-shell__brand,.hub__cards a,.chart-legend a{border-bottom:0}.page-header{border-bottom:1px solid var(--border-hairline);justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:18px;display:flex}.page-header__titles{flex-direction:column;gap:6px;min-width:0;display:flex}.page-header__subtitle{font:var(--text-body-sm);color:var(--text-muted);text-wrap:pretty;margin:0}.page-header__filter-button{color:var(--text-heading);background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .12s,background-color .12s;display:inline-flex}.page-header__filter-button:hover{background:var(--surface-sunken);border-color:var(--accent)}.filter-drawer__body{flex-direction:column;gap:20px;display:flex}.filter-drawer__group{flex-direction:column;gap:5px;display:flex}.filter-drawer__label{color:var(--text-muted);font-size:12px;font-weight:500}.filter-drawer__presets{flex-wrap:wrap;gap:8px;display:flex}.filter-drawer__preset{color:var(--text-body);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:500}.filter-drawer__preset:hover{background:var(--surface-hover)}.filter-drawer__preset.is-active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.filter-drawer__dates{grid-template-columns:1fr 1fr;gap:12px;display:grid}.chip{color:var(--text-body);background:var(--surface-card);border:1px solid var(--border-strong);cursor:pointer;border-radius:999px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:500;transition:all .12s}.chip:hover{border-color:var(--accent);color:var(--accent)}.chip--on{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-sm)}.chip--on:hover{background:var(--accent-press);border-color:var(--accent-press);color:#fff}.multiselect{flex-direction:column;display:flex}.multiselect__control{position:relative}.multiselect__trigger{width:100%;min-height:var(--control-height-md);color:var(--text-heading);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:var(--transition-control);align-items:center;gap:8px;padding:0 12px;font-family:inherit;display:flex;position:relative}.multiselect__trigger:hover{background:var(--surface-hover)}.multiselect__trigger[aria-expanded=true]{border-color:var(--border-focus);box-shadow:var(--focus-ring);background:var(--surface-card)}.multiselect__trigger:disabled{cursor:not-allowed;opacity:.45}.multiselect__label{font:var(--text-label);color:var(--text-body);margin-bottom:6px;display:block}.multiselect__field{flex:1;align-items:center;min-width:0;display:flex}.multiselect__value{white-space:nowrap;text-overflow:ellipsis;font:var(--text-body-md);color:var(--text-heading);overflow:hidden}.multiselect__value--placeholder{color:var(--text-muted)}.multiselect__caret{color:var(--text-muted);flex:none;align-items:center;display:inline-flex}.multiselect__popover{z-index:30;background:var(--surface-sunken);border:1px solid var(--border-hairline);width:max-content;min-width:100%;max-width:320px;box-shadow:var(--shadow-md);border-radius:16px;flex-direction:column;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.multiselect__search{border-bottom:1px solid var(--border-hairline);padding:8px}.multiselect__search input{width:100%;color:var(--text-heading);background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:10px;outline:none;padding:8px 10px;font-family:inherit;font-size:14px;transition:border-color .12s,box-shadow .12s}.multiselect__search input:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.multiselect__list{outline:none;max-height:280px;padding:6px;overflow-y:auto}.multiselect__option{width:100%;color:var(--text-heading);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:999px;align-items:center;gap:8px;padding:9px 10px;font-family:inherit;font-size:14px;display:flex}.multiselect__option--active{background:var(--surface-active)}.multiselect__option[aria-selected=true]{background:var(--surface-accent-soft);color:var(--text-accent);font-weight:500}.multiselect__check{width:14px;color:var(--text-accent);flex:none;font-size:12px;line-height:1}.multiselect__option-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.multiselect__empty{color:var(--text-muted);text-align:center;padding:14px 10px;font-size:13px}.multiselect__footer{border-top:1px solid var(--border-hairline);justify-content:flex-end;padding:4px 6px;display:flex}.login{background:var(--surface-app);justify-content:center;align-items:center;min-height:100vh;padding:48px;display:flex}.login__panel{text-align:center;width:380px;max-width:100%}.login__title{font:var(--text-h1);color:var(--text-heading);letter-spacing:var(--tracking-display);margin:30px 0 0}.login__lede{font:var(--text-body-lg);color:var(--text-muted);text-wrap:pretty;margin:10px 0 0}.login__action{justify-content:center;margin-top:26px;display:flex}.login__error{font:var(--text-body-sm);color:var(--negative);margin:16px 0 0}.login__note{font:var(--text-body-sm);color:var(--text-faint);justify-content:center;align-items:center;gap:8px;margin:16px 0 0;display:flex}.login__help{border-top:1px solid var(--border-hairline);font:var(--text-body-sm);color:var(--text-faint);margin:44px 0 0;padding-top:16px}.page{flex-direction:column;gap:24px;display:flex}.page-header h1{font:var(--text-h1);color:var(--text-heading);letter-spacing:var(--tracking-normal)}.page__context{font:var(--text-body-sm);color:var(--text-muted);margin-top:-12px}.scorecard-grid{gap:var(--gap-default);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (width<=1100px){.scorecard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.scorecard-grid{grid-template-columns:minmax(0,1fr)}}.graphs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.graph-card-wrap{grid-column:span 2}.graph-card-wrap--half{grid-column:span 1}@media (width<=720px){.graphs-grid{grid-template-columns:minmax(0,1fr)}.graph-card-wrap,.graph-card-wrap--half{grid-column:span 1}}.graph-card-wrap{position:relative}.graph-card-wrap__actions{z-index:1;gap:4px;display:flex;position:absolute;top:8px;right:8px}.graph-card-wrap__action{border:1px solid var(--border-hairline);background:var(--surface-card);width:24px;height:24px;color:var(--text-muted);cursor:pointer;border-radius:6px;font-size:14px;line-height:1}.graph-card-wrap__action:hover{color:var(--text-heading);border-color:var(--text-muted)}.graph-card-wrap__action--delete{font-size:16px}.graph-card-wrap__action--delete:hover{color:var(--negative);border-color:var(--negative)}.page-header__actions{align-items:center;gap:12px;display:inline-flex}.app-shell__nav-row{align-items:center;display:flex}.app-shell__nav-row>a{flex:1;min-width:0}.app-shell__nav-actions{opacity:0;flex:none;align-items:center;gap:1px;transition:opacity .12s;display:flex}.app-shell__nav-row:hover .app-shell__nav-actions,.app-shell__nav-row:focus-within .app-shell__nav-actions{opacity:1}.field{flex-direction:column;gap:5px;margin-bottom:14px;display:flex}.field__label{color:var(--text-muted);font-size:12px;font-weight:600}.field__input{border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--surface-card);height:36px;color:var(--text-heading);padding:0 10px;font-size:14px}.field__input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;height:36px;padding:0 16px;font-size:14px;font-weight:600}.btn--primary{background:var(--accent);color:#fff}.btn--primary:disabled{opacity:.55;cursor:default}.btn--secondary{background:var(--surface-card);color:var(--text-heading);border-color:var(--border-hairline)}.graph-builder{overflow-y:auto}.graph-builder__actions{gap:10px;margin-top:8px;display:flex}.graph-builder__error{color:var(--negative);margin-top:10px;font-size:13px}.graph-builder__preview{margin-top:18px}.graph-builder__mode{background:var(--surface-sunken);border-radius:var(--radius-sm);gap:2px;margin:4px 0 2px;padding:3px;display:flex}.graph-builder__mode-tab{border-radius:calc(var(--radius-sm) - 1px);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:1;padding:6px 10px;font-size:13px;font-weight:500;transition:color .12s,background-color .12s}.graph-builder__mode-tab.is-active{background:var(--surface-accent-soft);color:var(--accent-press)}.graph-builder__events{flex-direction:column;gap:6px;display:flex}.graph-builder__hint{color:var(--text-muted);margin:0;font-size:12.5px}.graph-builder__event-list{counter-reset:evt;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.graph-builder__event-row{background:var(--surface-accent-soft);color:var(--accent-press);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:4px 6px 4px 10px;font-size:12.5px;display:flex}.graph-builder__event-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.graph-builder__event-name:before{counter-increment:evt;content:counter(evt) ". ";opacity:.6}.graph-builder__event-controls{flex:none;align-items:center;gap:2px;display:flex}.graph-builder__event-controls button{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 3px;font-size:12px;line-height:1}.graph-builder__event-controls button:last-child{font-size:15px}.graph-builder__event-controls button:hover:not(:disabled){background:#0000000f}.graph-builder__event-controls button:last-child:hover:not(:disabled){color:var(--negative);background:0 0}.graph-builder__event-controls button:disabled{opacity:.3;cursor:default}.scorecard{min-width:0;padding:var(--gutter-card);background:var(--surface-card);border:var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);flex-direction:column;gap:10px;display:flex}.scorecard__title{font:var(--text-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}.scorecard__value-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.scorecard__value{font:var(--text-metric-xl);letter-spacing:var(--tracking-metric);color:var(--text-heading);font-variant-numeric:tabular-nums}.scorecard__spark{flex:none;display:block}.scorecard--negative{border-color:var(--negative)}.scorecard--negative .scorecard__value{color:var(--negative)}.scorecard__value--positive{color:var(--positive)}.scorecard__value--negative{color:var(--negative)}.scorecard__caption{font:var(--text-body-sm);color:var(--text-muted);align-items:center;gap:6px;display:inline-flex}.scorecard__subvalue{font:var(--text-body-sm);color:var(--text-faint);font-variant-numeric:tabular-nums}.scorecard__delta{font:var(--text-numeric);font-variant-numeric:tabular-nums;align-self:flex-start;align-items:center;gap:4px;font-weight:500;display:inline-flex}.scorecard__delta--up{color:var(--positive)}.scorecard__delta--down{color:var(--negative)}.scorecard__delta--flat{color:var(--text-muted)}.data-table__scroll{width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font:var(--text-body-md)}.data-table thead th{text-align:left;font:var(--text-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);background:var(--surface-sunken);border-bottom:1px solid var(--border-hairline);white-space:nowrap;padding:12px 16px}.data-table__th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table__th--sortable:hover{color:var(--text-heading)}.data-table__th-inner{align-items:center;gap:4px;display:inline-flex}.data-table__sort-indicator{opacity:.5;align-items:center;display:inline-flex}.data-table__th--sortable[aria-sort]:not([aria-sort=none]) .data-table__sort-indicator{opacity:1}.data-table tbody td{font:var(--text-numeric);color:var(--text-body);border-bottom:1px solid var(--border-hairline);font-variant-numeric:tabular-nums;padding:12px 16px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--surface-hover)}.data-table__row--clickable{cursor:pointer}.data-table td.data-table__text{font:var(--text-body-md);color:var(--text-body)}.data-table__nowrap{white-space:nowrap}.data-table--dense thead th,.data-table--dense tbody td{padding:8px 14px}.metric-stack{color:var(--text-muted);line-height:1.3;font:var(--text-numeric);flex-direction:column;gap:2px;font-size:12px;display:flex}.metric-stack__total{color:var(--text-heading);border-top:1px solid var(--border-hairline);margin-top:2px;padding-top:2px;font-weight:500}.cohorts__header{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:-10px;display:flex}.cohorts__legend{font:var(--text-body-sm);color:var(--text-muted)}.cohort-cell{flex-direction:column;gap:3px;line-height:1.3;display:flex}.cohort-cell__revenue{color:var(--text-heading);font-weight:500}.recovery-badge{font:var(--text-numeric);border-radius:var(--radius-sm);white-space:nowrap;color:var(--text-faint);align-self:flex-start;align-items:center;gap:4px;padding:2px 6px;font-size:11px;font-weight:500;display:inline-flex}.recovery-badge--up{color:var(--positive);background:var(--positive-soft)}.recovery-badge--down{color:var(--negative);background:var(--negative-soft)}.chart-card{gap:var(--gap-default);padding:var(--gutter-card);background:var(--surface-card);border:var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);flex-direction:column;display:flex}.chart-legend{flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-top:12px;display:flex}.chart-legend__item{font:var(--text-body-sm);color:var(--text-muted);align-items:center;gap:7px;display:flex}.chart-legend__swatch{flex:none;width:14px;height:2px}.chart-pair{gap:var(--gap-default);grid-template-columns:repeat(auto-fit,minmax(420px,1fr));align-items:start;display:grid}.chart-card--flush{padding:0;overflow:hidden}.chart-card--flush>.chart-card__header{padding:var(--gutter-card) var(--gutter-card) 0}.chart-card__header{justify-content:space-between;align-items:baseline;gap:24px;display:flex}.chart-card__title{font:var(--text-h3);color:var(--text-heading);margin:0}.chart-card__subtitle{font:var(--text-body-sm);color:var(--text-muted);margin:0}.empty-state{text-align:center;background:var(--surface-card);border:var(--card-border);border-radius:var(--card-radius);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:48px 24px;display:flex}.empty-state__message{font:var(--text-label);color:var(--text-heading)}.empty-state__hint{font:var(--text-body-sm);color:var(--text-muted)}.skeleton{flex-direction:column;gap:10px;display:flex}.skeleton__row{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--paper-0) 37%, var(--surface-sunken) 63%);background-size:400% 100%;height:44px;animation:1.4s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:100%}to{background-position:0}}@media (prefers-reduced-motion:reduce){.skeleton__row{animation:none}}code{font-family:var(--font-mono);background:var(--surface-sunken);color:var(--text-heading);border-radius:4px;padding:2px 5px;font-size:.9em}.users__toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.users__pagination{font:var(--text-body-sm);color:var(--text-muted);justify-content:center;align-items:center;gap:16px;display:flex}.side-panel-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;background:#19181352;justify-content:flex-end;display:flex;position:fixed;inset:0}.side-panel{background:var(--surface-card);border-left:1px solid var(--border-hairline);border-radius:var(--radius-xl) 0 0 var(--radius-xl);width:min(420px,100%);height:100%;box-shadow:var(--shadow-lg);flex-direction:column;gap:20px;padding:24px;display:flex;overflow-y:auto}.side-panel__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.side-panel__header h3{font:var(--text-numeric);color:var(--text-heading);word-break:break-all;font-size:14px;font-weight:500}.filter-drawer .side-panel__header h3{font:var(--text-h2);color:var(--text-heading);word-break:normal}.side-panel__header .MuiIconButton-root{font-size:20px;line-height:1}.timeline{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.timeline__item{border-bottom:1px solid var(--border-hairline);flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:8px 4px;font-size:12.5px;display:flex}.timeline__time{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.timeline__name{color:var(--text-heading);font-family:var(--font-mono);flex:1}.timeline__ad-meta{color:var(--text-muted);flex-basis:100%;font-size:11.5px}.timeline__revenue{color:var(--positive);font-variant-numeric:tabular-nums;font-weight:600}.hub{background:var(--surface-app);flex-direction:column;min-height:100vh;display:flex}.hub__bar{height:var(--topbar-height);flex:0 0 var(--topbar-height);padding:0 var(--gutter-page);background:var(--surface-card);border-bottom:1px solid var(--border-hairline);justify-content:space-between;align-items:center;display:flex}.hub__account{align-items:center;gap:12px;display:flex}.hub__user{align-items:center;gap:9px;padding-left:4px;display:flex}.hub__avatar{border-radius:var(--radius-pill);background:var(--teal-100);width:28px;height:28px;color:var(--teal-700);font:500 12px var(--font-sans);flex:none;justify-content:center;align-items:center;display:flex}:root[data-theme=dark] .hub__avatar{color:var(--teal-400)}.hub__user-name{font:var(--text-label);color:var(--text-body)}.hub__signout{border-radius:var(--radius-md);width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:var(--transition-control);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.hub__signout:hover{background:var(--surface-hover);color:var(--text-heading)}.hub__main{padding:36px var(--gutter-page) var(--gutter-page);flex:1}.hub__inner{max-width:var(--content-max);flex-direction:column;gap:28px;margin:0 auto;display:flex}.hub__heading{font:var(--text-h1);color:var(--text-heading);letter-spacing:var(--tracking-display);margin:0}.hub__eyebrow{font:var(--text-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-faint);margin:0 0 12px}.hub__notice{font:var(--text-body-md);color:var(--text-muted);max-width:60ch;margin:0}.hub__cards{gap:var(--gap-default);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.coming-soon{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100vh;padding:48px 24px;display:flex}.coming-soon__title{font-family:var(--font-sans);color:var(--text-heading);font-size:22px;font-weight:600}.coming-soon__body{color:var(--text-muted);font-size:14px}.coming-soon__back{color:var(--accent);font-size:14px;font-weight:500;text-decoration:none}.coming-soon__back:hover{text-decoration:underline}.competitors-nav__heading{justify-content:space-between;align-items:center;gap:8px;padding:14px 8px 6px;display:flex}.competitors-nav__eyebrow{font:var(--text-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-faint)}.competitors-nav__add{width:22px;height:22px;color:var(--text-muted);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-control);background:0 0;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:flex}.competitors-nav__add:hover{color:var(--text-accent);border-color:var(--border-accent);background:var(--surface-accent-soft)}.app-shell__nav a.competitors-nav__item{flex-direction:column;align-items:flex-start;gap:1px;height:auto;padding:7px 8px}.competitors-nav__name{font:var(--text-body-sm)}.app-shell__nav a.competitors-nav__item.active .competitors-nav__name{font:var(--text-label)}.competitors-nav__meta{font:var(--text-eyebrow);color:var(--text-faint)}.competitors-nav__num{font-family:var(--font-mono)}.competitors-nav__warn{color:var(--warning)}.competitors-nav__note{font:var(--text-body-sm);color:var(--text-faint);padding:4px 8px 8px}
