/* Global Red: guideline page 9. Dark is the initial theme; user preference is shared across modules. */
:root{--scheme:dark;--accent:#9e1406;--accent-hover:#bb2415;--accent-text:#ff9d96;--accent-tint:#341c1b;--accent-border:#87413b;--focus-tint:#9e140633;--chart-tint:#9e14061a;--chart-accent:#f16b60;--sidebar:#0e1111;--text-main:#f4f1ed;--text-muted:#a9afaf;--hover:#252b2b}
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
/* GLOBAL TAXI design package — semantic mapping to the existing analytics UI. */
:root,body,body.sales-mode{color-scheme:var(--scheme);--bg:#101313;--ink:var(--text-main);--muted:var(--text-muted);--line:#34393a;--orange:var(--accent);--green:#7bd163;--red:#ff8580;--blue:#a9b4bc;--surface:#171b1c;--surface-2:#1d2121;--input:#111515;--border-strong:#414747}
body{background:var(--bg);color:var(--ink);font:14px/1.5 Manrope,system-ui,sans-serif;font-synthesis:none}aside{background:var(--sidebar);border-right:1px solid var(--line);width:226px;padding:28px 16px;gap:0}.brand{font-size:16px;letter-spacing:.4px}.brandmark{background:var(--orange);color:#101313}.brandlight{color:var(--accent)}.workspace{letter-spacing:1.4px;font-size:10px!important;margin:28px 0 16px!important}.workspace select{background:var(--input);border-color:var(--line);color:var(--ink);min-height:42px;font-size:12px}.sidebarbottom{color:var(--text-muted);font-size:11px;padding:24px 8px 0}.sidebarbottom p{color:var(--text-muted);font-size:10px}.dot{background:var(--orange)}nav{gap:4px}nav button,.integration-nav{font-size:20px;border-radius:8px;min-height:44px;padding:10px 12px;gap:12px;color:var(--text-muted);border:1px solid transparent}nav span{font-size:12px;font-weight:600;line-height:1.5}nav button.active,.sales-mode nav button.active,.integration-nav.active,.sales-mode .integration-nav.active{background:var(--accent-tint);color:var(--accent-text);border-color:var(--accent-border)}nav button:hover:not(.active),.integration-nav:hover{background:var(--surface-2);color:var(--text-main)}.integration-nav{margin-top:14px;border-top:1px solid var(--line);border-radius:0;text-align:left}.integration-nav.active{border-radius:8px}.brand,nav,.integration-nav{flex-shrink:0}
main,.sales-mode main{padding:30px 30px 0;max-width:1900px}header{gap:24px;margin-bottom:24px;align-items:center}.eyebrow{color:var(--accent-text);font-size:10px;letter-spacing:1.6px}h1{font-size:30px;line-height:1.25;font-weight:800;margin:8px 0;letter-spacing:-.8px}header p,.sales-mode header p{font-size:12px;color:var(--muted)}.headeractions{gap:8px;flex-shrink:0}
.export,.sales-mode .export{background:var(--surface-2);color:var(--ink);border:1px solid var(--border-strong);border-radius:8px;min-height:40px;padding:10px 14px;font-size:12px;line-height:1.4;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;transition:background .15s ease,border-color .15s ease}.export:hover{background:var(--hover);border-color:var(--accent-border)}.export:active{background:var(--hover)}#export,.sales-mode #export,.policy-form button[type=submit],#import-apply{background:var(--orange);border-color:var(--orange);color:#101313}#export:hover,#import-apply:hover{background:var(--accent-hover)}button:disabled,input:disabled{opacity:.48;cursor:not-allowed}button:disabled:hover{transform:none}a{color:var(--accent-text)}
.demobanner,.sales-mode .demobanner{background:#241f17;border:1px solid #655135;color:#f1bd68;border-radius:8px;padding:11px 14px;font-size:11px;margin-bottom:20px;line-height:1.6}.scope,.sales-mode .scope{color:var(--muted);font-size:11px;margin:14px 0 20px}.filters,.sales-mode .filters,#support-period{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:16px;gap:12px}.filters label{min-width:125px}.sales-filter-grid label{min-width:0}label{font-size:11px;color:var(--muted);font-weight:600;gap:7px}input,select,textarea,.sales-mode input,.sales-mode select{background:var(--input);border:1px solid var(--line);color:var(--ink);border-radius:8px;min-height:40px;padding:9px 11px;font:12px Manrope,system-ui,sans-serif}input::placeholder{color:var(--text-muted)}input:focus,select:focus,textarea:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px var(--focus-tint)}button#reset{color:var(--text-muted);font-size:11px;padding:11px 8px}.datefield input{color-scheme:var(--scheme)}
.card,.panel,.sales-mode .card,.sales-mode .panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:none}.card{padding:18px;min-height:126px}.card .label,.sales-mode .label{font-size:12px;color:var(--muted)}.card .value{font-size:32px;line-height:1.2;letter-spacing:-.8px;margin:14px 0 8px}.card .hint{font-size:11px;line-height:1.6;color:var(--muted)}.card .icon{background:transparent;color:var(--orange);font-size:18px;padding:0;right:16px;top:14px}.panel{padding:20px}.panel h2{font-size:18px;line-height:1.4;letter-spacing:-.3px}.panel h3{font-size:15px}.sub,.sales-mode .sub{font-size:11px;line-height:1.7;color:var(--muted);margin:5px 0 18px}.small{font-size:11px;color:var(--muted);line-height:1.8}.two,.grid{gap:16px;margin-bottom:16px}.kpis{gap:12px;margin-bottom:20px}.sales-kpis{gap:10px}.sales-kpis .card{min-height:105px;padding:14px 12px}.sales-kpis .label{font-size:11px}.sales-kpis .value{font-size:24px}.sales-mode .value{color:var(--ink)}.card .value.green,.green{color:var(--green)}.card .value.red,.red{color:var(--red)}.card .value.amber,.amber{color:#f1bd68}.badge,.pill{background:var(--surface-2);color:var(--text-main);font-size:11px;border-radius:6px;padding:5px 8px}.pill.green{background:#203627;color:#a0e88d}.pill.red{background:#3b2424;color:#ff9995}.pill.amber{background:#3d321d;color:#f1bd68}.notice,.sales-mode .notice{background:#26211a;border:1px solid #655135;color:#efd1a1;font-size:11px;line-height:1.8;border-radius:8px}.divider{background:var(--line)}
table{font-size:12px}th,.sales-mode th{background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:600;border-bottom:1px solid var(--line);padding:12px;line-height:1.5}td,.sales-mode td{border-bottom:1px solid var(--line);padding:12px;line-height:1.55}tbody tr:hover,.sales-mode tbody tr:hover{background:var(--hover)}.tablewrap{border-radius:8px}.sales-mode .tablewrap{max-height:620px}.marketing-table{font-size:11px;min-width:1050px}.marketing-table td{padding:10px 8px}.marketing-table th{font-size:10px;padding:11px 8px}.total,.sales-mode .total{background:var(--accent-tint)}.ticket,a.ticket{color:var(--accent-text);font-size:11px}.disclosure{min-height:26px}.expense-toolbar{gap:10px;margin:18px 0}.expense-toolbar span{font-size:11px;color:var(--muted)}.level-1 td:first-child{padding-left:26px}.level-2 td:first-child{padding-left:42px}
.chart line{stroke:var(--line)}.chart polygon{fill:var(--chart-tint)}.chart polyline[stroke='#eda04b'],.chart circle[fill='#eda04b']{stroke:var(--orange)}.chart circle[fill='#eda04b']{fill:var(--orange)}.chart polyline[stroke='#8a9ebf']{stroke:#a6b0b5}.chart text,.metric-chart svg text{fill:var(--muted)}.legend{color:var(--muted);font-size:11px;gap:16px}.track{background:var(--line)}.fill{background:var(--orange)}.channelrow{font-size:12px;grid-template-columns:120px 1fr 45px}.pie-total{fill:var(--ink)}.pie-caption{fill:var(--muted)}.pie-legend-row{font-size:12px}.pie-legend-row small{color:var(--muted);font-size:10px}.pie-legend-row b{font-size:12px}.pie-note{font-size:11px}.chart-empty{height:150px;font-size:12px;color:var(--muted)}.empty{font-size:12px;color:var(--muted)}.section-heading{font-size:18px}.sales-charts{gap:12px}.sales-charts .panel{padding:16px}.metric-chart svg path[stroke='#ec9472'],.metric-chart svg circle[fill='#ec9472']{stroke:var(--orange)}.metric-chart svg circle[fill='#ec9472']{fill:var(--orange)}.metric-chart svg path[stroke='#8bd6aa'],.metric-chart svg circle[fill='#8bd6aa']{stroke:var(--green)}.metric-chart svg circle[fill='#8bd6aa']{fill:var(--green)}
/* Long-range analysis: one full-width chart per row. */
.summary-charts{display:flex;flex-direction:column;gap:16px}.summary-charts .metric-chart{display:grid;grid-template-columns:1fr auto;align-items:baseline;column-gap:20px;row-gap:5px;padding:18px 20px}.summary-charts .metric-chart h3{grid-column:1;grid-row:1;font-size:15px;font-weight:600}.summary-charts .metric-chart strong{grid-column:2;grid-row:1;font-size:28px;margin:0;text-align:right;font-variant-numeric:tabular-nums}.summary-charts .metric-period{grid-column:1/-1;grid-row:2;color:var(--muted);font-size:11px;margin:0 0 8px}.summary-charts .metric-chart svg,.summary-charts .chart-empty{grid-column:1/-1;grid-row:3;width:100%;min-width:0;display:block}.summary-charts .chart-empty{display:grid;place-items:center;height:190px}.summary-charts svg text{font-size:12px}.summary-note{color:var(--muted);font-size:11px;line-height:1.8}
.period-control{font-size:12px}.period-segments{border-color:var(--border-strong);border-radius:8px}.period-segments button,.period-range{min-height:42px;background:var(--input)}.period-segments button{padding:10px 16px}.period-segments button.active{color:var(--accent-text);background:var(--accent-tint);box-shadow:inset 0 0 0 1px var(--accent-border)}.period-range{border-color:var(--border-strong);border-radius:8px}.period-quick{font-size:11px;color:var(--muted);gap:14px}.period-quick button{color:var(--text-muted)}.period-popover,.sales-mode .period-popover{background:var(--surface-2);border-color:var(--border-strong);box-shadow:0 16px 48px #0006;color:var(--ink);border-radius:10px}.period-grid button{min-height:36px}.period-grid button.selected{background:var(--accent-tint);color:var(--accent-text)}.period-grid button.pending{background:var(--orange);color:#101313}.period-grid button:hover{background:var(--accent-tint)}.daynames{color:var(--muted);font-size:10px}.period-manual{border-color:var(--line)}
dialog,.sales-mode dialog{background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:12px;padding:28px;box-shadow:0 24px 70px #0006}dialog::backdrop{background:#050909b8}.close{background:var(--line);color:var(--text-main);border:1px solid var(--line);width:34px;height:34px;font-size:22px}.timeline{border-left-color:var(--accent-border)}.timeline p{font-size:12px}.timeline b{font-size:11px;color:var(--muted)}.method{font-size:13px;line-height:1.9}.method h3{font-size:16px}.method code{background:var(--input);color:var(--accent-text);border:1px solid var(--line)}.method a{color:var(--accent-text)}footer,.sales-mode footer{border-color:var(--line);color:var(--text-muted);font-size:10px;padding:22px 0;line-height:1.8}footer span{float:none;display:block}
button,a,input,select,textarea{transition:border-color .15s ease,background .15s ease,color .15s ease}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px;box-shadow:0 0 0 3px var(--focus-tint)}input[readonly]{color:var(--text-muted)}
/* Standalone guide and server-rendered login share the same tokens. */
body.guide-page main{max-width:1000px;margin:32px auto;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:12px}body.guide-page{line-height:1.9}body.guide-page h2{font-size:21px;margin-top:32px}body.guide-page pre{background:var(--input);color:var(--text-main);border:1px solid var(--line);border-radius:8px;padding:18px;overflow:auto;font-size:12px}body.guide-page a{overflow-wrap:anywhere}body.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}body.auth-page main{margin:0;max-width:420px;width:100%;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:12px}body.auth-page .brand{color:var(--accent-text);font-size:12px;letter-spacing:1.8px}body.auth-page h1{font-size:28px;margin:22px 0 10px}body.auth-page p{color:var(--muted);font-size:12px;line-height:1.8}body.auth-page label{display:flex;margin-top:18px;font-size:12px}body.auth-page input{display:block;width:100%;margin-top:0;font:inherit}body.auth-page input[type=hidden]{display:none}body.auth-page button{width:100%;min-height:44px;background:var(--orange);color:#101313;border:0;border-radius:8px;font:700 14px Manrope,system-ui,sans-serif;margin-top:22px;cursor:pointer}body.auth-page .error{color:var(--red)}body.auth-page small{font-size:11px;color:var(--muted)}
@media(min-width:1450px){main,.sales-mode main{padding:32px 36px 0}.card{min-height:132px}}@media(max-width:1150px){aside{width:200px}main,.sales-mode main{margin-left:200px;padding:24px 22px 0}.sales-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.sales-kpis .value{font-size:26px}.sales-charts{grid-template-columns:repeat(2,minmax(0,1fr))}header{align-items:flex-start}.headeractions{flex-shrink:1}.grid{grid-template-columns:1fr}.two{grid-template-columns:1fr}.filters label{min-width:135px}.sales-filter-grid label{min-width:0}.sales-filter-grid{grid-template-columns:repeat(3,minmax(110px,1fr))}}
@media(max-width:800px){aside{position:static;width:100%;padding:18px 16px;border-right:0;border-bottom:1px solid var(--line);overflow:visible}.brand{font-size:16px}.workspace{display:flex!important;width:min(100%,290px);margin:20px 0 12px!important}.workspace select{width:100%}nav{margin-top:0!important;display:flex;gap:6px;overflow:auto;padding-bottom:3px}nav button{padding:9px 12px;min-height:42px;white-space:nowrap}nav span{font-size:12px}.integration-nav{position:static!important;margin:8px 0 0;min-height:38px;padding:7px 12px;border:0}.sidebarbottom{display:none}main,.sales-mode main{margin:0;padding:22px 16px 0}.summary-charts .metric-chart{padding:16px}.summary-charts .metric-chart svg{min-height:155px}header{flex-direction:column;gap:16px}h1{font-size:28px}.headeractions{align-self:stretch}.headeractions #export{width:100%}.kpis,.sales-kpis,.sales-charts{grid-template-columns:1fr}.card{min-height:108px}.card .value{font-size:30px}.sales-filter-grid{grid-template-columns:1fr}.filters{flex-direction:column;align-items:stretch}.filters label,.sales-filter-grid label{min-width:0;width:100%}.filters #reset{align-self:flex-start}.period-top{flex-direction:column;gap:10px}.period-segments{width:100%}.period-segments button{flex:1}.period-range{min-width:0;width:100%;min-height:44px}.period-popover{left:0;top:100px;width:min(440px,calc(100vw - 64px));max-width:calc(100vw - 64px)}.period-quick{gap:10px}.panel{padding:17px}.demobanner{display:flex;flex-direction:column;gap:5px}.tablewrap{max-width:100%}.marketing-table{min-width:1050px}.chart{height:auto;min-height:180px}.channelrow{grid-template-columns:110px 1fr 40px}.pie-legend{max-width:none}.expense-toolbar .export{flex:1 1 180px}.summary-charts .metric-chart h3{font-size:13px}.summary-charts .metric-chart strong{font-size:24px}body.guide-page main{margin:16px;padding:22px}body.auth-page{padding:16px}body.auth-page main{padding:26px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

nav button{line-height:1}nav span{line-height:1.4}.integration-nav{font-size:12px;font-weight:600}.metric-chart svg path[stroke='#becbda']{stroke:var(--orange)}.metric-chart svg circle[fill='#becbda']{fill:var(--orange)}

.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-head .brand{font-size:14px;min-width:0;gap:0}.brandname{white-space:nowrap}.sidebar-toggle{flex-shrink:0;width:28px;height:32px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2);color:var(--ink);font-size:25px;line-height:1;cursor:pointer}.sidebar-toggle:hover{border-color:var(--orange);color:var(--accent-text)}.integration-nav{display:flex;gap:10px;align-items:center}.refresh-settings{margin-top:16px}.refresh-settings form{display:flex;gap:14px;align-items:end;max-width:600px}.refresh-settings label{flex:0 1 220px;font-size:12px}.refresh-settings .export{min-height:40px}.refresh-settings .small{margin-top:13px}.refresh-settings h2{margin-bottom:8px}
@media(min-width:801px){body.sidebar-collapsed aside{width:76px;padding:24px 14px}body.sidebar-collapsed main,body.sidebar-collapsed.sales-mode main{margin-left:76px}body.sidebar-collapsed .sidebar-head{flex-direction:column;gap:12px}body.sidebar-collapsed .brandmark{margin:0}body.sidebar-collapsed .brandname,body.sidebar-collapsed .workspace,body.sidebar-collapsed nav button span,body.sidebar-collapsed .integration-label,body.sidebar-collapsed .sidebarbottom{display:none!important}body.sidebar-collapsed nav{margin-top:16px!important;gap:6px}body.sidebar-collapsed nav button{justify-content:center;padding:10px 0;width:46px;min-height:44px;font-size:21px}body.sidebar-collapsed .integration-nav{width:46px;justify-content:center;padding:12px 0;margin-top:14px;font-size:20px}}
@media(max-width:800px){.sidebar-head .brand{font-size:16px}.sidebar-toggle{width:36px;height:36px}body.sidebar-collapsed aside .workspace,body.sidebar-collapsed aside nav,body.sidebar-collapsed aside .integration-nav{display:none!important}.refresh-settings form{align-items:stretch;flex-direction:column}.refresh-settings label{flex:auto;width:100%}.refresh-settings .export{width:100%}}

.sidebar-head .brand{display:flex;align-items:center;flex:0 1 154px;min-width:0}.brand-logo-full{display:block;width:154px;max-width:100%;height:auto;aspect-ratio:644/229;object-fit:contain}.brand-logo-mark{display:none;width:38px;height:38px;object-fit:contain}.auth-page .brand{display:block}.auth-page .brand-logo-full{width:190px;max-width:100%;height:auto}
@media(min-width:801px){body.sidebar-collapsed .sidebar-head .brand{flex:0 0 auto}body.sidebar-collapsed .brand-logo-full{display:none}body.sidebar-collapsed .brand-logo-mark{display:block}}
@media(max-width:800px){.sidebar-head .brand{flex-basis:180px}.brand-logo-full{width:180px}}

/* Theme variants override both the Support and Sales palettes. */
:root[data-theme="light"]{--scheme:light;--accent-text:#9e1406;--accent-tint:#f8e9e7;--accent-border:#d7a09a;--focus-tint:#9e140626;--chart-accent:#9e1406;--sidebar:#fff;--text-main:#202626;--text-muted:#606c6c;--hover:#f0f3f3}
:root[data-theme="light"] body,:root[data-theme="light"] body.sales-mode{--bg:#f5f6f6;--ink:#202626;--muted:#606c6c;--line:#dce1e1;--surface:#fff;--surface-2:#f1f3f3;--input:#fff;--border-strong:#bcc6c6;--green:#28723e;--red:#b52424;--blue:#526e9b}
#export,.sales-mode #export,.policy-form button[type=submit],#import-apply,.auth-page button,.period-grid button.pending{color:#fff}
.theme-toggle{white-space:nowrap;min-width:140px}.theme-toggle .theme-icon{font-size:17px;line-height:1}.auth-page .theme-toggle{margin:0 0 20px;width:auto;background:var(--surface-2);color:var(--ink);border:1px solid var(--border-strong);font-size:12px;min-height:40px}
:root[data-theme="light"] .demobanner,:root[data-theme="light"] .sales-mode .demobanner,:root[data-theme="light"] .notice{background:#fff8e9;border-color:#e3ce9e;color:#71541d}
:root[data-theme="light"] .pill.green{background:#e7f3e8;color:#246b34}:root[data-theme="light"] .pill.red{background:#fbe8e8;color:#ab2222}:root[data-theme="light"] .pill.amber{background:#fff2d6;color:#805a12}:root[data-theme="light"] .amber,:root[data-theme="light"] .card .value.amber{color:#866018}
:root[data-theme="light"] .period-popover{box-shadow:0 16px 48px #23333324}:root[data-theme="light"] .method code{color:#9e1406}
.metric-chart svg path[stroke='#ec9472'],.metric-chart svg path[stroke='#becbda'],.chart polyline[stroke='#eda04b']{stroke:var(--chart-accent)}
.metric-chart svg circle[fill='#ec9472'],.metric-chart svg circle[fill='#becbda'],.chart circle[fill='#eda04b']{fill:var(--chart-accent);stroke:var(--chart-accent)}
.chart stop{stop-color:var(--chart-accent)}.legend i[style*="#eda04b"]{background:var(--chart-accent)!important}.heat .cell{color:var(--ink)}
@media(max-width:800px){.headeractions{display:flex;flex-wrap:wrap}.headeractions #export{width:auto;flex:1}.theme-toggle{flex:1}}
