:root{--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--radius-control:.75rem;--radius-card:1rem;--radius-panel:1.25rem;--color-accent:#ff7900;--color-positive:#4bc38a;--color-warning:#e5a84b;--color-negative:#e06a6a;--color-info:#6ea8fe;--motion-value:.6s;--motion-chart:.32s;--drawer-width:17rem;font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility}@media (prefers-reduced-motion:reduce){:root{--motion-value:0s;--motion-chart:0s}}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#171717;--color-drawer:#1d1d1d;--color-surface:#232323;--color-surface-raised:#2c2c2c;--color-border:#383838;--color-text:#f7f7f5;--color-text-secondary:#aaa9a4;--color-text-muted:#9a9892;--color-accent-soft:#ff79001f}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-canvas:#f4f3f0;--color-drawer:#fff;--color-surface:#fff;--color-surface-raised:#faf9f7;--color-border:#deddd8;--color-text:#1d1d1b;--color-text-secondary:#66645f;--color-text-muted:#6f6c66;--color-accent-soft:#ff79001a;--color-positive:#177a50;--color-warning:#8a5a00;--color-negative:#b3262e;--color-info:#1f5fae}*{box-sizing:border-box}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html{background:var(--color-canvas);min-width:320px}body{background:var(--color-canvas);min-width:320px;min-height:100vh;color:var(--color-text);margin:0}button,input,select{font:inherit}button,a,input,select{outline-color:var(--color-accent);outline-offset:3px}a{color:inherit}h1,h2,p{margin-top:0}.eyebrow{margin-bottom:var(--space-2);color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:600}.muted-copy{color:var(--color-text-secondary)}.login-page{min-height:100vh;padding:var(--space-6);place-items:center;display:grid}.login-card{gap:var(--space-6);width:min(100%,28rem);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);display:grid}.login-brand img,.drawer-brand img{width:8rem;height:auto;display:block}.login-form{gap:var(--space-4);display:grid}.login-form label{gap:var(--space-2);color:var(--color-text-secondary);font-size:.875rem;display:grid}.login-form input,.theme-control select{min-height:2.75rem;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-raised);color:var(--color-text)}.primary-button{border-radius:var(--radius-control);background:var(--color-accent);color:#171717;cursor:pointer;border:0;min-height:2.75rem;font-weight:700}.primary-button:disabled{cursor:wait;opacity:.7}.stub-note,.deferred-note{color:var(--color-text-muted);margin:0;font-size:.75rem;line-height:1.5}.app-shell{min-height:100vh}.app-drawer{z-index:10;width:var(--drawer-width);gap:var(--space-8);padding:var(--space-6);border-right:1px solid var(--color-border);background:var(--color-drawer);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.brand-light,:root[data-theme=light] .brand-dark{display:none!important}:root[data-theme=light] .brand-light{display:block!important}.app-drawer nav{gap:var(--space-2);display:grid}.app-nav-item{align-items:center;gap:var(--space-3);min-height:3.5rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);color:var(--color-text-secondary);border:1px solid #0000;font-weight:600;text-decoration:none;display:flex}.app-nav-item img,.app-identity img{border-radius:.75rem}.app-nav-item:hover{background:var(--color-surface-raised);color:var(--color-text)}.app-nav-item.is-active{background:var(--color-accent-soft);color:var(--color-text);border-color:#ff790059}.drawer-footer{gap:var(--space-4);margin-top:auto;display:grid}.theme-control{gap:var(--space-2);color:var(--color-text-secondary);font-size:.75rem;display:grid}.logout-link{min-height:2.75rem;padding:var(--space-3);border-radius:var(--radius-control);color:var(--color-text-secondary);text-decoration:none}.app-content{min-width:0;margin-left:var(--drawer-width)}.dashboard-page{gap:var(--space-8);width:min(100%,100rem);padding:var(--space-8);grid-template-columns:minmax(0,1fr);margin:0 auto;display:grid}.dashboard-header,.section-heading,.app-identity,.kpi-meta{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.dashboard-header{padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}.app-identity{justify-content:flex-start}.app-identity h1,.section-heading h2{margin-bottom:0}.filter-stub{gap:var(--space-1);min-width:15rem;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);display:grid}.filter-stub span,.refresh-label{color:var(--color-text-muted);font-size:.75rem}.section-heading.compact{align-items:flex-start}.kpi-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.kpi-card,.feature-panel{border:1px solid var(--color-border);background:var(--color-surface)}.kpi-card{align-content:space-between;gap:var(--space-6);min-height:10.5rem;padding:var(--space-4);border-radius:var(--radius-card);display:grid}.kpi-meta{color:var(--color-text-secondary);align-items:flex-start;font-size:.75rem}.kpi-card>strong{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:clamp(1.9rem,2.4vw,2.5rem)}.source-chip{border:1px solid var(--color-border);width:fit-content;color:var(--color-text-muted);text-transform:uppercase;border-radius:999px;padding:.2rem .45rem;font-size:.625rem;line-height:1.4}.delta{font-size:.75rem;font-weight:600}.delta.is-positive{color:var(--color-positive)}.delta.is-negative{color:var(--color-negative)}.dashboard-detail-grid{gap:var(--space-4);grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);display:grid}.feature-panel{min-height:22rem;padding:var(--space-6);border-radius:var(--radius-panel)}.chart-placeholder{align-items:flex-end;gap:var(--space-3);height:15rem;margin-top:var(--space-8);padding:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.chart-placeholder span{background:linear-gradient(180deg, var(--color-accent), #ff79002e);border-radius:.5rem .5rem 0 0;flex:1;min-width:1.5rem}.chart-placeholder span:first-child{height:38%}.chart-placeholder span:nth-child(2){height:52%}.chart-placeholder span:nth-child(3){height:47%}.chart-placeholder span:nth-child(4){height:71%}.chart-placeholder span:nth-child(5){height:84%}.source-list{gap:var(--space-3);margin:var(--space-8) 0 var(--space-6);padding:0;list-style:none;display:grid}.source-list li{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-raised);display:flex}.source-list li span:not(.health-dot){gap:var(--space-1);display:grid}.source-list small{color:var(--color-text-muted)}.health-dot{background:var(--color-positive);border-radius:50%;width:.6rem;height:.6rem}@media (width<=1439px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1023px){.app-drawer{flex-direction:row;align-items:center;width:100%;min-height:auto;position:static;overflow-x:auto}.app-drawer nav{display:flex}.drawer-footer{display:none}.app-content{margin-left:0}.dashboard-detail-grid{grid-template-columns:1fr}}@media (width<=719px){.app-drawer{padding:var(--space-3)}.drawer-brand{display:none}.app-nav-item{min-width:max-content}.dashboard-page{gap:var(--space-6);padding:var(--space-4)}.dashboard-header,.section-heading{flex-direction:column;align-items:flex-start}.filter-stub{width:100%}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=479px){.login-card{padding:var(--space-6)}.kpi-grid{grid-template-columns:1fr}}.session-loading{place-content:center;justify-items:center;gap:var(--space-4);min-height:100vh;color:var(--color-text-secondary);display:grid}.route-loading{min-height:50vh;color:var(--color-text-secondary);place-items:center;display:grid}.session-loading img{width:8rem}.form-error{color:var(--color-negative);margin:0;font-size:.875rem}.source-compact,.logout-link{align-items:center;gap:var(--space-2);min-height:2.75rem;padding:var(--space-3);border-radius:var(--radius-control);color:var(--color-text-secondary);text-align:left;background:0 0;border:0;font-size:.8rem;display:flex}.logout-link{cursor:pointer}.logout-link:hover{background:var(--color-surface-raised);color:var(--color-text)}.mobile-header,.mobile-drawer{display:none}.filter-bar{z-index:5;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:color-mix(in srgb, var(--color-canvas) 94%, transparent);flex-wrap:wrap;display:flex;position:sticky;top:0}.preset-control,.platform-control,.metric-switcher{align-items:center;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);display:flex}.preset-control button,.platform-control button,.metric-switcher button{min-height:2.25rem;padding:0 var(--space-3);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:.55rem}.preset-control button:hover,.platform-control button:hover,.metric-switcher button:hover{color:var(--color-text)}.preset-control button.is-active,.platform-control button.is-active,.metric-switcher button.is-active{background:var(--color-accent-soft);color:var(--color-text);box-shadow:inset 0 0 0 1px #ff79004d}.platform-control{margin-left:auto}.comparison-toggle,.custom-range,.custom-range label{align-items:center;gap:var(--space-2);display:flex}.comparison-toggle{min-height:2.75rem;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text-secondary);cursor:pointer}.comparison-toggle input{width:1rem;height:1rem;accent-color:var(--color-accent)}.custom-range{padding-top:var(--space-2);color:var(--color-text-secondary);flex-basis:100%}.custom-range label{font-size:.75rem}.custom-range input{min-height:2.25rem;padding:0 var(--space-2);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:.5rem}.custom-range-action{min-height:2.25rem;padding-inline:var(--space-4)}.range-error{color:var(--color-warning);font-size:.75rem}.freshness-summary,.refresh-banner{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:.8rem;display:flex}.health-dot.is-warning,.refresh-banner.is-warning .health-dot{background:var(--color-warning)}.refresh-banner{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.refresh-banner.is-warning{color:var(--color-warning)}.banner-action{min-height:2rem;padding:0 var(--space-3);color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:.5rem;margin-left:auto}.banner-action:disabled{cursor:wait;opacity:.6}.dashboard-section{min-width:0}.dashboard-section.feature-panel{min-height:auto}.section-state,.source-state{border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:999px;padding:.3rem .55rem;font-size:.7rem}.section-state.is-partial,.section-state.is-pending,.source-state.is-delayed,.source-state.is-stale,.source-state.is-missing_configuration{border-color:color-mix(in srgb, var(--color-warning) 45%, var(--color-border));color:var(--color-warning)}.source-state.is-failed,.section-state.is-unavailable{border-color:color-mix(in srgb, var(--color-negative) 45%, var(--color-border));color:var(--color-negative)}.metric-card{align-content:space-between;gap:var(--space-4);min-width:0;min-height:10.5rem;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);display:grid}.metric-card.is-compact{min-height:9rem}.metric-card.is-partial{border-color:color-mix(in srgb, var(--color-warning) 36%, var(--color-border))}.metric-card header,.metric-card footer{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.metric-card header>span:first-child{color:var(--color-text-secondary);font-size:.78rem;line-height:1.4}.metric-value{color:var(--color-text);font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:clamp(1.8rem,2.5vw,2.5rem);font-weight:650}.metric-card.is-compact .metric-value{font-size:clamp(1.5rem,2vw,2rem)}.non-value{color:var(--color-text-muted)}.metric-state{align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:.7rem;display:inline-flex}.metric-definition{color:var(--color-text-muted);font-size:.75rem}.metric-definition summary,.chart-table summary{cursor:pointer;width:fit-content}.metric-definition p{margin:var(--space-2) 0 0;line-height:1.5}.metric-detail-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.two-column-sections{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.compact-metric-grid{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.trend-module{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.metric-switcher{width:fit-content;min-width:0;max-width:100%;overflow-x:auto}.trend-chart{min-width:0;max-width:100%;margin:0}.chart-canvas{width:100%;min-width:0;max-width:100%;height:24rem}.trend-chart figcaption,.chart-table{margin-top:var(--space-3);color:var(--color-text-secondary);font-size:.8rem}.table-scroll{max-height:20rem;margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);overflow:auto}.chart-table table{border-collapse:collapse;width:100%}.chart-table th,.chart-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);text-align:right;font-variant-numeric:tabular-nums}.chart-table th:first-child,.chart-table td:first-child{text-align:left}.empty-module{min-height:12rem;color:var(--color-text-muted);place-items:center;display:grid}.conversion-flow{gap:var(--space-8);margin-top:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.module-note{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:.75rem;line-height:1.5}.conversion-stage{min-width:0;position:relative}.source-health-panel{gap:var(--space-4);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);display:grid}.source-health-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.source-health-row{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-raised);grid-template-columns:auto 1fr auto;display:grid}.source-health-row div{gap:var(--space-1);display:grid}.source-health-row span:not(.source-state){color:var(--color-text-muted);font-size:.75rem}.skeleton{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff0a,#0000);animation:1.4s infinite skeleton-slide;position:absolute;inset:0;transform:translate(-100%)}.filter-skeleton{height:4rem}.kpi-skeleton{height:10.5rem}.chart-skeleton{height:24rem}.dashboard-error{place-content:center;justify-items:center;gap:var(--space-4);min-height:100vh;padding:var(--space-6);text-align:center;display:grid}.dashboard-error .primary-button{padding-inline:var(--space-6)}@keyframes skeleton-slide{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}@media (width<=1199px){.metric-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.conversion-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1023px){.desktop-drawer{display:none}.mobile-header{z-index:8;align-items:center;gap:var(--space-3);min-height:4rem;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-drawer);display:flex;position:sticky;top:0}.mobile-header img{width:7rem}.icon-button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:2.75rem;height:2.75rem;color:var(--color-text);cursor:pointer;place-items:center;display:inline-grid}.mobile-drawer[open]{gap:var(--space-8);width:min(21rem,100vw - 2rem);height:100dvh;max-height:none;padding:var(--space-6);border:0;border-right:1px solid var(--color-border);background:var(--color-drawer);color:var(--color-text);flex-direction:column;margin:0;display:flex}.mobile-drawer::backdrop{background:#00000094}.mobile-drawer nav{gap:var(--space-2);display:grid}.mobile-drawer .drawer-footer{display:grid}.drawer-close{top:var(--space-4);right:var(--space-4);position:absolute}.app-content{margin-left:0}.filter-bar{top:4rem}.two-column-sections{grid-template-columns:1fr}}@media (width<=719px){.filter-bar{flex-flow:column;align-items:stretch;width:100%;min-width:0;position:static}.preset-control,.platform-control{width:100%;min-width:0;margin-left:0;overflow-x:auto}.preset-control{grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow-x:visible}.preset-control button,.platform-control button{flex:1}.preset-control button{min-width:0;padding-inline:var(--space-2)}.custom-range{flex-direction:column;flex-basis:auto;align-items:flex-start;width:100%;min-width:0}.custom-range label{align-items:stretch;display:grid}.custom-range label,.custom-range input{width:100%;min-width:0}.custom-range-action,.metric-switcher{width:100%}.metric-detail-grid,.source-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-canvas{height:19rem}}@media (width<=479px){.metric-detail-grid,.compact-metric-grid,.conversion-flow,.source-health-grid{grid-template-columns:1fr}.source-health-row{grid-template-columns:auto 1fr}.source-state{grid-column:2;width:fit-content}}
