:root{
  --primary:#2563eb;
  --primary-strong:#1749b8;
  --primary-soft:#eff6ff;
  --secondary:#7c3aed;
  --secondary-soft:#f5f3ff;
  --ink:#172033;
  --ink-soft:#344054;
  --muted:#667085;
  --line:#dfe4ea;
  --line-strong:#cfd6df;
  --page:#f4f6f8;
  --surface:#ffffff;
  --surface-subtle:#f8fafc;
  --success:#15803d;
  --success-soft:#edf9f0;
  --danger:#b42318;
  --danger-soft:#fff1f0;
  --warning:#b25e09;
  --chart:#2563eb;
  --chart-secondary:#7c3aed;
  --chart-accent:#16a34a;
  --sidebar:232px;
  font-family:Inter,Manrope,"Segoe UI",Arial,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--page);color:var(--ink);font:14px/1.5 Inter,Manrope,"Segoe UI",Arial,sans-serif}
button,input,select{font:inherit}
button,select,input{border-radius:8px}
button{cursor:pointer}
[hidden]{display:none!important}
.skip-link{position:fixed;left:18px;top:-80px;z-index:60;padding:10px 14px;border-radius:8px;background:var(--primary);color:#fff}
.skip-link:focus{top:18px}
:focus-visible{outline:3px solid #93b4ff;outline-offset:3px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.admin-header{position:fixed;inset:0 auto 0 0;z-index:20;width:var(--sidebar);display:flex;flex-direction:column;padding:24px 16px 18px;border-right:1px solid var(--line);background:var(--surface)}
.admin-brand{display:block;width:176px;padding:0 8px 22px}
.admin-brand img{display:block;width:100%;height:auto}
.nav-label{margin:8px 10px 7px;color:#98a2b3;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.admin-nav{display:grid;gap:4px}
.admin-nav a{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border-radius:9px;color:var(--ink-soft);font-size:12px;font-weight:700;text-decoration:none}
.admin-nav a span{width:18px;color:var(--muted);font-size:16px;text-align:center}
.admin-nav a:hover{background:var(--surface-subtle);color:var(--primary-strong)}
.admin-nav a[aria-current=page]{background:var(--primary-soft);color:var(--primary-strong)}
.admin-nav a[aria-current=page] span{color:var(--primary)}
.shop-link{display:flex;align-items:center;justify-content:space-between;min-height:42px;margin-top:auto;padding:0 12px;border:1px solid var(--line);border-radius:9px;color:var(--ink);font-size:11px;font-weight:800;text-decoration:none}
.shop-link:hover{border-color:#9bb7f8;color:var(--primary-strong)}

main{width:calc(100% - var(--sidebar));max-width:1560px;margin-left:var(--sidebar);padding:18px clamp(18px,2.2vw,36px) 72px}
.staff-login{width:min(460px,100%);margin:8vh auto 0;padding:38px;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-align:center;box-shadow:0 18px 60px #17203312}
.login-mark{width:52px;height:52px;display:grid;place-items:center;margin:0 auto 20px;border-radius:14px;background:#1f9d55;color:#fff;font-size:13px;font-weight:900}
.eyebrow{margin:0;color:var(--primary-strong);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.staff-login h1{margin:7px 0 0;font-size:31px;line-height:1.12;letter-spacing:-.035em}
.login-copy{max-width:360px;margin:13px auto 20px;color:var(--muted);font-size:12px}
.login-message{display:none;margin:0 0 15px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font-size:11px;text-align:left}
.login-message.show{display:block}
.login-message.info{border-color:#b9d5f6;background:#f0f7ff;color:#315a7a}
.login-message.success{border-color:#b8e3c5;background:var(--success-soft);color:var(--success)}
.login-message.error{border-color:#fac5c0;background:var(--danger-soft);color:var(--danger)}
.login-form{display:grid;gap:10px;text-align:left}
.login-form+.login-form{margin-top:14px}
.login-form label,.analytics-toolbar label,.custom-date-panel label{color:var(--ink-soft);font-size:10px;font-weight:800}
.login-form>input,.phone-field{height:46px;border:1px solid var(--line-strong);background:#fff}
.phone-field{display:grid;grid-template-columns:auto 1fr;align-items:center;border-radius:8px}
.phone-field>span{padding-left:13px;color:var(--muted);font-weight:800}
.phone-field input{height:44px;border:0;background:transparent}
.login-form input{width:100%;padding:0 12px}
.login-form button,.error-state button,.empty-state button{min-height:45px;border:0;border-radius:8px;background:var(--primary);color:#fff;font-size:11px;font-weight:800}
.login-form button:disabled{opacity:.55;cursor:wait}
.login-form .button-quiet{border:1px solid var(--line);background:transparent;color:var(--ink)}
#otp-expiry{min-height:17px;margin:0;color:var(--muted);font-size:10px;text-align:center}

.session-bar{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px;padding:4px 2px;color:var(--muted)}
.session-bar p{display:flex;align-items:center;gap:6px;margin:0;font-size:10px}
.session-bar strong{color:var(--ink-soft)}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.session-bar button{padding:7px 10px;border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:800}
.session-bar button:hover{color:var(--danger)}

.page-heading{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:28px;align-items:end;padding:18px 0 20px;border-bottom:1px solid var(--line)}
.heading-copy h1{margin:3px 0 4px;font-size:clamp(30px,3vw,40px);line-height:1.05;letter-spacing:-.045em}
.heading-copy>p:last-child{max-width:670px;margin:0;color:var(--muted);font-size:12px}
.analytics-toolbar{display:flex;flex-wrap:wrap;align-items:end;justify-content:flex-end;gap:8px}
.analytics-toolbar label{display:grid;gap:5px}
.analytics-toolbar select,.analytics-toolbar button,.custom-date-panel input,.custom-date-panel button{height:40px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:11px}
.analytics-toolbar select{min-width:132px;padding:0 31px 0 10px}
.analytics-toolbar .comparison-field{min-height:40px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);white-space:nowrap}
.comparison-field input{accent-color:var(--primary)}
.analytics-toolbar .export-button{display:flex;align-items:center;gap:7px;padding:0 14px;border-color:var(--primary);background:var(--primary);color:#fff;font-weight:800}
.analytics-toolbar .export-button:hover{background:var(--primary-strong)}
.custom-date-panel{display:grid;grid-template-columns:1fr minmax(150px,190px) minmax(150px,190px) auto;gap:12px;align-items:end;margin-top:12px;padding:14px 16px;border:1px solid #bdd0fa;border-radius:12px;background:var(--primary-soft)}
.custom-date-panel h2{margin:2px 0 0;font-size:15px}
.custom-date-panel label{display:grid;gap:5px}
.custom-date-panel input{padding:0 10px}
.custom-date-panel button{padding:0 16px;border-color:var(--primary);background:var(--primary);color:#fff;font-weight:800}
.range-summary{min-height:22px;margin:9px 2px;color:var(--muted);font-size:10px}

.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 18px}
.section-head h2{margin:2px 0 0;font-size:20px;line-height:1.2;letter-spacing:-.025em}
.section-head>p{max-width:520px;margin:0;color:var(--muted);font-size:10px;text-align:right}
.compact-head{margin:0 0 10px}
.overview-section{margin-top:6px}
.metrics-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.metric{position:relative;min-width:0;min-height:150px;padding:17px 15px 14px;border-right:1px solid var(--line)}
.metric:last-child{border-right:0}
.metric-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.metric-head h3{overflow:hidden;margin:0;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.03em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.metric-help{position:relative;flex:0 0 auto;width:20px;height:20px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font-size:9px;font-weight:800;cursor:help}
.metric-help span{position:absolute;right:0;top:27px;z-index:8;width:230px;display:none;padding:10px;border-radius:8px;background:var(--ink);box-shadow:0 8px 25px #17203325;color:#fff;font-size:10px;font-weight:500;line-height:1.45;text-align:left}
.metric-help:hover span,.metric-help:focus span{display:block}
.metric-value{display:block;margin-top:12px;font-size:27px;line-height:1;font-weight:800;letter-spacing:-.04em}
.metric-trend{display:flex;align-items:center;gap:5px;margin:10px 0 0;font-size:9px;font-weight:800}
.trend-mark{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:var(--surface-subtle)}
.metric-trend.positive{color:var(--success)}
.metric-trend.negative{color:var(--danger)}
.metric-trend.neutral,.metric-trend.new{color:var(--muted)}
.metric-viz{height:25px;margin-top:10px}
.metric-viz svg{display:block;width:100%;height:100%}
.sparkline{fill:none;stroke:var(--primary);stroke-width:2;vector-effect:non-scaling-stroke}
.sparkline-area{fill:#2563eb12}
.mini-progress{height:4px;margin-top:19px;border-radius:999px;background:#e8edf3;overflow:hidden}
.mini-progress i{display:block;height:100%;border-radius:inherit;background:var(--secondary)}

.report-section,.tables-section{border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.audience-section{margin-top:16px;padding:22px 22px 0}
.chart{min-height:238px}
.chart-large{min-height:310px}
.chart svg{display:block;width:100%;height:auto;overflow:hidden}
.chart-grid{stroke:#e8ecf1;stroke-width:1}
.chart-axis{stroke:#d7dde5;stroke-width:1}
.chart-label{fill:var(--muted);font-size:9px}
.chart-line-primary{fill:none;stroke:var(--chart);stroke-width:3}
.chart-line-secondary{fill:none;stroke:var(--chart-secondary);stroke-width:2.5}
.chart-line-accent{fill:none;stroke:var(--chart-accent);stroke-width:2.5}
.chart-area-primary{fill:#2563eb0d}
.chart-area-secondary{fill:#7c3aed09}
.chart-point{stroke:#fff;stroke-width:2}
.legend{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:9px}
.legend span{display:flex;align-items:center;gap:6px}
.legend i{width:16px;height:3px;border-radius:2px;background:var(--chart)}
.legend .key-secondary{background:var(--chart-secondary)}
.legend .key-accent{background:var(--chart-accent)}
.section-kicker{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}

.insights-band{display:grid;grid-template-columns:210px 1fr;gap:22px;margin:22px -22px 0;padding:18px 22px;border-top:1px solid var(--line);border-radius:0 0 14px 14px;background:var(--surface-subtle)}
.insights-heading h3{margin:3px 0 0;font-size:15px}
.insights-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.insight{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:start;min-width:0}
.insight-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:900}
.insight[data-tone=positive] .insight-icon{background:var(--success-soft);color:var(--success)}
.insight[data-tone=attention] .insight-icon{background:var(--danger-soft);color:var(--danger)}
.insight p{margin:0;color:var(--muted);font-size:10px;line-height:1.45}
.insight strong{display:block;margin-bottom:2px;color:var(--ink);font-size:11px}

.decision-grid,.context-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.decision-grid .report-section,.context-grid .report-section{min-width:0;padding:20px}
.bar-list{display:grid;gap:13px}
.bar-row{display:grid;grid-template-columns:minmax(105px,1fr) 2fr auto;gap:10px;align-items:center}
.bar-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);font-size:10px}
.bar-track{height:7px;border-radius:999px;background:#e8edf3;overflow:hidden}
.bar-fill{display:block;height:100%;border-radius:inherit;background:var(--primary)}
.bar-row:nth-child(2n) .bar-fill{background:var(--secondary)}
.bar-row strong{font-size:10px}
.bar-row small{display:block;color:var(--muted);font-size:8px}

.funnel{display:grid;gap:9px}
.funnel-step{display:grid;grid-template-columns:minmax(130px,1fr) minmax(90px,2fr) auto;gap:12px;align-items:center}
.funnel-copy span,.funnel-copy small{display:block}
.funnel-copy span{color:var(--ink-soft);font-size:10px;font-weight:800}
.funnel-copy small{color:var(--muted);font-size:8px}
.funnel-track{height:22px;border-radius:6px;background:#edf0f4;overflow:hidden}
.funnel-fill{display:block;height:100%;min-width:3px;border-radius:6px;background:linear-gradient(90deg,var(--primary),#5a82ed)}
.funnel-step:nth-child(2) .funnel-fill{background:linear-gradient(90deg,#3f67d7,#6b7fe0)}
.funnel-step:nth-child(3) .funnel-fill{background:linear-gradient(90deg,#6358d4,var(--secondary))}
.funnel-step:nth-child(4) .funnel-fill{background:linear-gradient(90deg,#7c3aed,#9156d9)}
.funnel-step:nth-child(5) .funnel-fill{background:linear-gradient(90deg,#15803d,#28a457)}
.funnel-value{text-align:right}
.funnel-value strong,.funnel-value small{display:block}
.funnel-value strong{font-size:13px}
.funnel-value small{color:var(--muted);font-size:8px}

.products-section,.commercial-section{margin-top:16px;padding:20px}
.text-action{padding:7px 0;border:0;background:transparent;color:var(--primary-strong);font-size:10px;font-weight:800}
.text-action:hover{text-decoration:underline}
.product-performance-table{width:100%;border-collapse:collapse}
.product-performance-table th,.product-performance-table td{padding:11px 10px;border-top:1px solid var(--line);font-size:10px;text-align:right}
.product-performance-table th{color:var(--muted);font-size:9px;letter-spacing:.03em;text-transform:uppercase}
.product-performance-table th:first-child,.product-performance-table td:first-child{text-align:left}
.product-identity{display:flex;align-items:center;gap:10px;min-width:220px}
.product-avatar{width:34px;height:34px;display:grid;flex:0 0 auto;place-items:center;border-radius:8px;background:var(--secondary-soft);color:var(--secondary);font-size:10px;font-weight:900}
.product-identity strong,.product-identity small{display:block}
.product-identity strong{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.product-identity small{color:var(--muted);font-size:8px}
.product-performance-table a{color:var(--primary-strong);font-weight:800;text-decoration:none}
.product-performance-table a:hover{text-decoration:underline}

.commercial-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 20px;border:1px solid var(--line);border-radius:10px;background:var(--surface-subtle)}
.commercial-metric{padding:13px 15px;border-right:1px solid var(--line)}
.commercial-metric:last-child{border-right:0}
.commercial-metric span,.commercial-metric strong{display:block}
.commercial-metric span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}
.commercial-metric strong{margin-top:4px;font-size:18px;letter-spacing:-.025em}
.context-grid{grid-template-columns:2fr 3fr}
.compact-chart{min-height:190px}

.tables-section{margin-top:16px;padding:20px}
.dealer-activity-section{margin-top:16px;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface);scroll-margin-top:20px}
.dealer-activity-head>p{max-width:520px}
.dealer-activity-metrics{display:grid;grid-template-columns:repeat(6,1fr);margin-top:16px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--line)}
.dealer-activity-metrics article{min-width:0;padding:13px 14px;background:var(--surface-subtle)}
.dealer-activity-metrics span,.dealer-activity-metrics strong,.dealer-activity-metrics small{display:block}
.dealer-activity-metrics span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}
.dealer-activity-metrics strong{margin-top:4px;font-size:20px}
.dealer-activity-metrics small{margin-top:5px;color:var(--muted);font-size:8px;line-height:1.35}
.dealer-activity-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:18px 0 10px}
.dealer-activity-toolbar label{display:grid;gap:6px;width:min(360px,100%);color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}
.dealer-activity-toolbar input{height:40px;padding:0 12px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;font-size:11px;text-transform:none}
.dealer-activity-toolbar p{margin:0;color:var(--muted);font-size:10px}
.dealer-activity-layout{display:grid;grid-template-columns:minmax(300px,2fr) minmax(360px,3fr);min-height:420px;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.dealer-list{max-height:650px;overflow:auto;border-right:1px solid var(--line);background:var(--surface-subtle)}
.dealer-row{display:grid;width:100%;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:13px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);text-align:left}
.dealer-row:hover{background:var(--surface)}
.dealer-row[aria-pressed=true]{box-shadow:inset 3px 0 var(--primary);background:var(--surface)}
.dealer-row-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--primary-soft);color:var(--primary-strong);font-size:12px;font-weight:900}
.dealer-row-copy,.dealer-row-copy strong,.dealer-row-copy small,.dealer-row-copy em,.dealer-row-meta,.dealer-row-meta time{display:block;min-width:0}
.dealer-row-copy strong,.dealer-row-copy small,.dealer-row-copy em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dealer-row-copy strong{font-size:10px}
.dealer-row-copy small{margin-top:2px;color:var(--muted);font-size:8px}
.dealer-row-copy em{margin-top:5px;color:var(--ink-soft);font-size:9px;font-style:normal}
.dealer-row-meta{text-align:right}
.dealer-row-meta time{margin-top:6px;color:var(--muted);font-size:8px}
.dealer-status{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:8px;font-weight:800;white-space:nowrap}
.dealer-status i{width:7px;height:7px;border-radius:50%;background:#8994a3}
.dealer-status.online{color:var(--success)}
.dealer-status.online i{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.dealer-status.recent{color:#9a6700}
.dealer-status.recent i{background:#d99a00}
.dealer-journey{min-width:0;max-height:650px;overflow:auto;padding:18px;background:var(--surface)}
.dealer-journey-empty,.dealer-list-empty{min-height:220px;display:grid;place-content:center;gap:5px;padding:24px;color:var(--muted);text-align:center}
.dealer-journey-empty strong,.dealer-list-empty strong{color:var(--ink);font-size:12px}
.dealer-journey-empty span,.dealer-list-empty span{font-size:10px}
.dealer-journey-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.dealer-journey-head h3{margin:3px 0;font-size:17px}
.dealer-journey-head>div>span{color:var(--muted);font-size:9px}
.dealer-journey-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:14px 0;padding:12px;border-radius:8px;background:var(--surface-subtle)}
.dealer-journey-summary div{padding:0 10px;border-right:1px solid var(--line)}
.dealer-journey-summary div:last-child{border-right:0}
.dealer-journey-summary dt{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}
.dealer-journey-summary dd{margin:4px 0 0;font-size:14px;font-weight:900}
.dealer-searches{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:12px 0}
.dealer-searches span{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}
.dealer-searches b{padding:5px 7px;border-radius:999px;background:var(--primary-soft);color:var(--primary-strong);font-size:8px}
.journey-timeline{display:grid;gap:0;margin:15px 0 0;padding:0;list-style:none}
.journey-timeline li{position:relative;display:grid;grid-template-columns:16px 1fr;gap:9px;padding-bottom:15px}
.journey-timeline li::before{content:"";position:absolute;top:12px;bottom:-2px;left:5px;width:1px;background:var(--line)}
.journey-timeline li:last-child::before{display:none}
.journey-timeline li>i{position:relative;z-index:1;width:11px;height:11px;margin-top:2px;border:3px solid var(--surface);border-radius:50%;background:var(--primary)}
.journey-timeline strong,.journey-timeline span,.journey-timeline time{display:block}
.journey-timeline strong{font-size:10px}
.journey-timeline span{margin-top:2px;color:var(--ink-soft);font-size:9px;overflow-wrap:anywhere}
.journey-timeline time{margin-top:3px;color:var(--muted);font-size:8px}
.report-tabs{display:flex;overflow:auto;border-bottom:1px solid var(--line)}
.report-tabs button{min-height:42px;padding:0 15px;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}
.report-tabs button[aria-selected=true]{border-color:var(--primary);color:var(--primary-strong)}
.table-scroll{overflow:auto}
.analytics-table{width:100%;border-collapse:collapse;font-size:10px}
.analytics-table th,.analytics-table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.analytics-table th:first-child,.analytics-table td:first-child{text-align:left;white-space:normal;min-width:230px}
.analytics-table th button{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--muted);font:inherit;font-weight:800}
.analytics-table th button[data-active=true]{color:var(--primary-strong)}
.analytics-table td:first-child strong,.analytics-table td:first-child small{display:block}
.analytics-table td:first-child small{color:var(--muted)}
.pagination{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding-top:14px}
.pagination span{color:var(--muted);font-size:10px}
.pagination button{min-width:34px;height:34px;border:1px solid var(--line);background:transparent;font-size:10px;font-weight:800}
.pagination button:disabled{opacity:.45;cursor:not-allowed}
.table-empty{padding:30px;color:var(--muted);font-size:11px;text-align:center}

.loading-state,.error-state,.empty-state{padding:28px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.skeleton-title,.skeleton-metrics span,.skeleton-chart,.skeleton-split span{background:linear-gradient(90deg,#e5e9ee 25%,#f4f6f8 50%,#e5e9ee 75%);background-size:200% 100%;animation:skeleton 1.4s infinite}
.skeleton-title{width:220px;height:22px;border-radius:6px}
.skeleton-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;margin-top:16px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--line)}
.skeleton-metrics span{height:138px}
.skeleton-chart{height:300px;margin-top:16px;border-radius:12px}
.skeleton-split{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.skeleton-split span{height:230px;border-radius:12px}
.error-state,.empty-state{max-width:720px;margin:32px auto;text-align:center}
.state-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 14px;border-radius:12px;background:var(--danger-soft);color:var(--danger);font-size:20px;font-weight:900}
.empty-state .state-icon{background:var(--primary-soft);color:var(--primary)}
.error-state h2,.empty-state h2{margin:5px 0 8px}
.error-state p,.empty-state p{color:var(--muted)}
.error-state button,.empty-state button{padding:0 20px}

@keyframes skeleton{to{background-position:-200% 0}}
@media(max-width:1280px){
  .page-heading{grid-template-columns:1fr}
  .analytics-toolbar{justify-content:flex-start}
  .metrics-grid{grid-template-columns:repeat(3,1fr)}
  .metric:nth-child(3){border-right:0}
  .metric:nth-child(-n+3){border-bottom:1px solid var(--line)}
  .metric:last-child{border-right:0}
}
@media(max-width:900px){
  :root{--sidebar:194px}
  .admin-brand{width:162px}
  .decision-grid,.context-grid{grid-template-columns:1fr}
  .insights-band{grid-template-columns:1fr}
  .commercial-summary{grid-template-columns:repeat(2,1fr)}
  .commercial-metric:nth-child(2){border-right:0}
  .commercial-metric:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .skeleton-metrics{grid-template-columns:repeat(3,1fr)}
  .dealer-activity-metrics{grid-template-columns:repeat(3,1fr)}
  .dealer-activity-layout{grid-template-columns:1fr}
  .dealer-list{max-height:360px;border-right:0;border-bottom:1px solid var(--line)}
}
@media(max-width:720px){
  :root{--sidebar:0px}
  .admin-header{position:sticky;inset:0;z-index:20;width:100%;height:auto;display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 14px;border-right:0;border-bottom:1px solid var(--line)}
  .admin-brand{width:162px;padding:0}
  .nav-label{display:none}
  .admin-nav{grid-column:1/-1;grid-row:2;display:flex;overflow:auto;border-top:1px solid var(--line)}
  .admin-nav a{min-height:36px;padding:0 10px;white-space:nowrap}
  .shop-link{grid-column:2;grid-row:1;min-height:36px;margin:0;padding:0 10px}
  main{width:100%;margin-left:0;padding:12px 12px 52px}
  .session-bar{padding:0}
  .page-heading{gap:18px;padding-top:12px}
  .analytics-toolbar{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .analytics-toolbar label,.analytics-toolbar select,.analytics-toolbar .comparison-field,.analytics-toolbar .export-button{width:100%}
  .analytics-toolbar .comparison-field{align-self:end}
  .custom-date-panel{grid-template-columns:1fr 1fr}
  .custom-date-panel>div{grid-column:1/-1}
  .custom-date-panel button{align-self:end}
  .section-head{align-items:flex-start}
  .section-head>p{text-align:left}
  .metrics-grid{grid-template-columns:repeat(2,1fr)}
  .metric,.metric:nth-child(3){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  .metric:nth-child(2n){border-right:0}
  .metric:nth-last-child(-n+2){border-bottom:0}
  .audience-section,.decision-grid .report-section,.context-grid .report-section,.products-section,.commercial-section,.tables-section{padding:16px}
  .dealer-activity-section{padding:16px}
  .insights-band{margin:18px -16px 0;padding:16px}
  .insights-list{grid-template-columns:1fr}
  .chart-large{min-height:220px}
  .funnel-step{grid-template-columns:minmax(105px,1fr) minmax(60px,1.2fr) auto;gap:8px}
  .product-performance-table th:nth-child(3),.product-performance-table td:nth-child(3){display:none}
  .skeleton-split{grid-template-columns:1fr}
}
@media(max-width:480px){
  .shop-link{font-size:0}
  .shop-link span{font-size:14px}
  .staff-login{margin-top:18px;padding:28px 19px}
  .analytics-toolbar{grid-template-columns:1fr}
  .custom-date-panel{grid-template-columns:1fr}
  .metrics-grid{grid-template-columns:1fr}
  .metric,.metric:nth-child(2n),.metric:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}
  .metric:last-child{border-bottom:0}
  .commercial-summary{grid-template-columns:1fr}
  .commercial-metric,.commercial-metric:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}
  .commercial-metric:last-child{border-bottom:0}
  .product-performance-table th:nth-child(2),.product-performance-table td:nth-child(2),.product-performance-table th:nth-child(4),.product-performance-table td:nth-child(4){display:none}
  .bar-row{grid-template-columns:minmax(85px,1fr) 1.2fr auto}
  .dealer-activity-metrics{grid-template-columns:repeat(2,1fr)}
  .dealer-activity-toolbar{display:grid}
  .dealer-row{grid-template-columns:34px 1fr}
  .dealer-row-meta{grid-column:2;text-align:left}
  .dealer-journey-summary{grid-template-columns:repeat(2,1fr)}
  .dealer-journey-summary div:nth-child(2){border-right:0}
  .dealer-journey-summary div:nth-child(-n+2){padding-bottom:9px;border-bottom:1px solid var(--line)}
  .dealer-journey-summary div:nth-child(n+3){padding-top:9px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
