/* MilePocket Neutral Light: shared semantic palette; dark source styles preserved. */
:root[data-theme="light"]{--theme-bg:#F2F5F7;--theme-surface:#FFFFFF;--theme-chrome:#E8EEF2;--theme-text:#141C21;--theme-muted:#52616B;--theme-border:#D5DEE4;--theme-copper:#DF8D52;--theme-accent:#B65D2B;--theme-soft:#FBEDE3;--theme-success:#23663B;--theme-success-bg:#E8F3EC;--theme-warning:#80520D;--theme-warning-bg:#FFF3D8;--theme-error:#AD3224;--theme-error-bg:#FCECE9;--theme-info:#265E78;--theme-info-bg:#E7F1F7;--theme-shadow:#141c2114;--bg:var(--theme-bg);--surface:var(--theme-surface);--panel:var(--theme-surface);--ink:var(--theme-text);--text:var(--theme-text);--muted:var(--theme-muted);--copper:var(--theme-accent);--accent:var(--theme-accent);--line:var(--theme-border);--green:var(--theme-success);color-scheme:light}

/* index.html */
:root[data-theme="light"] .header{background:var(--theme-surface)}
:root[data-theme="light"] .language-switcher a[aria-current]{background:var(--theme-surface)}
:root[data-theme="light"] .signin{border:1px solid var(--theme-border)}
:root[data-theme="light"] .cta{color:var(--theme-text)}
:root[data-theme="light"] .cta:hover{background:var(--theme-surface)}
:root[data-theme="light"] .store-badge{border:1px solid var(--theme-border)}
:root[data-theme="light"] .hero-visual:before{background:radial-gradient(ellipse,var(--theme-surface),transparent 70%)}
:root[data-theme="light"] .visual-label{background:var(--theme-surface);border:1px solid var(--theme-border);box-shadow:0 12px 35px var(--theme-shadow)}
:root[data-theme="light"] .step{border-top:1px solid var(--theme-border)}
:root[data-theme="light"] .numbers .uncertain{color:var(--theme-warning)}
:root[data-theme="light"] .sample-label{border:1px solid var(--theme-border)}
:root[data-theme="light"] .feature-icon{background:var(--theme-surface)}
:root[data-theme="light"] .feature-option[aria-selected=true] .feature-icon{background:var(--theme-soft)}
:root[data-theme="light"] .feature-stage{background:radial-gradient(ellipse at 50% 60%,var(--theme-surface) 0%,var(--theme-surface) 60%,var(--theme-surface) 100%)}
:root[data-theme="light"] .bottom-cta{background:var(--theme-surface)}
:root[data-theme="light"] .footer-meta{color:var(--theme-muted)}
@media(max-width:720px){:root[data-theme="light"] .feature-option[aria-selected=true]{border-color:var(--theme-border)!important;background:var(--theme-soft)}}
:root[data-theme="light"] .hero-copy>.eyebrow{border:1px solid var(--theme-border);background:var(--theme-surface)}
:root[data-theme="light"] .hero .visual-label{background:var(--theme-soft);border-color:var(--theme-border)}
:root[data-theme="light"] .visual-label strong{color:var(--theme-accent)}
:root[data-theme="light"] .visual-label>span:not(.label-arrow){color:var(--theme-accent)}
:root[data-theme="light"] .demo-device{border:5px solid var(--theme-border);background:var(--theme-surface);box-shadow:0 18px 40px var(--theme-shadow)}
:root[data-theme="light"] .demo-top>span{color:var(--theme-accent);border:1px solid var(--theme-border)}
:root[data-theme="light"] .zip-fields input{color:var(--theme-text);background:var(--theme-surface);border:1px solid var(--theme-border)}
:root[data-theme="light"] .pay-input{border:1px solid var(--theme-border);background:var(--theme-surface)}
:root[data-theme="light"] .demo-calculate{color:var(--theme-muted)}
:root[data-theme="light"] .demo-calculate:hover{background:var(--theme-surface)}
:root[data-theme="light"] .result-label{color:var(--theme-muted)}
:root[data-theme="light"] .demo-total span{color:var(--theme-text)}
:root[data-theme="light"] .demo-balance{background:var(--theme-soft);border:1px solid var(--theme-border)}
:root[data-theme="light"] .demo-balance span{color:var(--theme-accent)}
:root[data-theme="light"] .demo-balance strong{color:var(--theme-accent)}
:root[data-theme="light"] .demo-pending{color:var(--theme-accent)}
:root[data-theme="light"] .demo-next strong{color:var(--theme-accent)}
:root[data-theme="light"] .demo-tabs{background:var(--theme-surface);border-top:1px solid var(--theme-border)}
:root[data-theme="light"] .demo-tab{color:var(--theme-muted)}
:root[data-theme="light"] .demo-device-caption{color:var(--theme-muted)}
:root[data-theme="light"] .demo-route-grid>div{background:var(--theme-surface)}
:root[data-theme="light"] .demo-route-grid strong{color:var(--theme-text)}
:root[data-theme="light"] .demo-route-grid span{color:var(--theme-accent)}
:root[data-theme="light"] .demo-route-grid small{color:var(--theme-muted)}
:root[data-theme="light"] .demo-breakdown .transit-row{border-bottom:1px solid var(--theme-border)}

/* assets/account.css */
:root[data-theme="light"] .preview-bar{background:var(--theme-soft);color:var(--theme-accent)}
:root[data-theme="light"] .languages a[aria-current=page]{background:var(--theme-soft);color:var(--theme-accent)}
:root[data-theme="light"] .login-features li{color:var(--theme-text)}
:root[data-theme="light"] .login-card{background:linear-gradient(135deg,var(--theme-surface),var(--theme-surface));box-shadow:0 25px 80px var(--theme-shadow)}
:root[data-theme="light"] .google-button{border:1px solid var(--theme-border);background:var(--theme-surface);color:var(--theme-text)}
:root[data-theme="light"] .demo-open,:root[data-theme="light"] .primary{color:var(--theme-text)}
:root[data-theme="light"] .sidebar .caption{color:var(--theme-muted)}
:root[data-theme="light"] .sidebar button[aria-current=page]{color:var(--theme-accent);background:var(--theme-soft)}
:root[data-theme="light"] .demo-pill{background:var(--theme-success-bg);border:1px solid var(--theme-border)}
:root[data-theme="light"] .toolbar input,:root[data-theme="light"] .toolbar select{border:1px solid var(--theme-border);background:var(--theme-surface)}
:root[data-theme="light"] .secondary{border:1px solid var(--theme-border)}
:root[data-theme="light"] .form-error{color:var(--theme-error)}
:root[data-theme="light"] .metric.highlight{background:linear-gradient(125deg,var(--theme-soft),var(--theme-surface));border-color:var(--theme-border)}
:root[data-theme="light"] .metric.highlight .metric-value{color:var(--theme-accent)}
:root[data-theme="light"] .metric-note{color:var(--theme-muted)}
:root[data-theme="light"] .text-button{color:var(--theme-accent)}
:root[data-theme="light"] .activity-row small{color:var(--theme-muted)}
:root[data-theme="light"] .status.pending{color:var(--theme-accent)!important}
:root[data-theme="light"] .progress{background:var(--theme-surface)}
:root[data-theme="light"] .progress .personal{background:var(--theme-surface)}
:root[data-theme="light"] .progress .unclassified{background:var(--theme-surface)}
:root[data-theme="light"] .mini-legend .personal{background:var(--theme-surface)}
:root[data-theme="light"] .mini-legend .unclassified{background:var(--theme-surface)}
:root[data-theme="light"] .report-teaser{background:var(--theme-surface);border:1px solid var(--theme-border)}
:root[data-theme="light"] .data-note{color:var(--theme-muted)}
:root[data-theme="light"] th{color:var(--theme-muted);border-bottom:1px solid var(--theme-border)}
:root[data-theme="light"] .category{background:var(--theme-success-bg);color:var(--theme-success)}
:root[data-theme="light"] .category.personal{background:var(--theme-info-bg);color:var(--theme-info)}
:root[data-theme="light"] .category.unclassified{background:var(--theme-warning-bg);color:var(--theme-warning)}
:root[data-theme="light"] .file-icon{border:1px solid var(--theme-border);background:var(--theme-soft)}
:root[data-theme="light"] .report-foot{border:1px dashed var(--theme-border)}
:root[data-theme="light"] .toast{background:var(--theme-surface);color:var(--theme-text);box-shadow:0 6px 30px var(--theme-shadow)}
:root[data-theme="light"] .account-footer{color:var(--theme-muted)}
:root[data-theme="light"] .auth-tabs{background:var(--theme-surface)}
:root[data-theme="light"] .auth-tabs button.selected{background:var(--theme-soft);color:var(--theme-accent)}
:root[data-theme="light"] .demo-pill[data-state]{background:var(--theme-surface);border-color:var(--theme-border)}
:root[data-theme="light"] .demo-pill[data-state="success"]{background:var(--theme-success-bg);border-color:var(--theme-border)}
:root[data-theme="light"] .demo-pill[data-state="error"]{background:var(--theme-error-bg);color:var(--theme-error);border-color:var(--theme-border)}
:root[data-theme="light"] #data-status[data-state="error"]{color:var(--theme-error)}
:root[data-theme="light"] .trip-category{color:var(--text,var(--theme-text));background:var(--theme-surface);border:1px solid var(--theme-border)}
:root[data-theme="light"] .trip-category:focus-visible{outline:2px solid var(--theme-accent)}
:root[data-theme="light"] .trip-edit-status{color:var(--theme-muted)}
:root[data-theme="light"] .ledger-total{border-top:1px solid var(--theme-border)}
:root[data-theme="light"] .bulk-status{color:var(--theme-accent)}
:root[data-theme="light"] .trip-map{background:var(--theme-surface);color:var(--theme-text)}
:root[data-theme="light"] .route-warning{color:var(--theme-accent)}

/* assets/auth.css */
:root[data-theme="light"] .auth-preview-note{border:1px solid var(--theme-border);background:var(--theme-soft);color:var(--theme-accent)}
:root[data-theme="light"] .apple-button{border:1px solid var(--theme-border);background:var(--theme-surface);color:var(--theme-text)}
:root[data-theme="light"] .auth-divider{color:var(--theme-muted)}
:root[data-theme="light"] .auth-divider:before,:root[data-theme="light"] .auth-divider:after{background:var(--theme-border)}
:root[data-theme="light"] .login-card label,:root[data-theme="light"] .auth-methods label,:root[data-theme="light"] .auth-action label{color:var(--theme-text)}
:root[data-theme="light"] .login-card input,:root[data-theme="light"] .auth-methods input,:root[data-theme="light"] .auth-methods select,:root[data-theme="light"] .auth-action input{background:var(--theme-surface);color:var(--theme-text);border:1px solid var(--theme-border)}
:root[data-theme="light"] .auth-password button{border:1px solid var(--theme-border);color:var(--theme-text)}
:root[data-theme="light"] .auth-feedback{color:var(--theme-success)}
:root[data-theme="light"] .auth-feedback[data-error=true]{color:var(--theme-error)}
:root[data-theme="light"] .auth-methods{background:var(--theme-surface);color:var(--theme-text);border:1px solid var(--theme-border)}
:root[data-theme="light"] .auth-method-row{border-bottom:1px solid var(--theme-border)}
:root[data-theme="light"] .auth-action{background:var(--theme-surface);border:1px solid var(--theme-border)}
:root[data-theme="light"] .auth-action a{color:var(--theme-accent)}
:root[data-theme="light"] .auth-preview-controls{border:1px dashed var(--theme-border)}
:root[data-theme="light"] .auth-preview-account{border:1px solid var(--theme-border)}
:root[data-theme="light"] .login-card :focus-visible,:root[data-theme="light"] .auth-methods :focus-visible,:root[data-theme="light"] .auth-action :focus-visible{outline:2px solid var(--theme-accent)}

/* Shared controls and explicit semantic exceptions. */
:root[data-theme="light"] body{background:var(--theme-bg);color:var(--theme-text)}
:root[data-theme="light"] .header,:root[data-theme="light"] .account-header,:root[data-theme="light"] footer,:root[data-theme="light"] .account-footer,:root[data-theme="light"] .demo-top,:root[data-theme="light"] .demo-tabs{background:var(--theme-chrome)}
:root[data-theme="light"] .login-card,:root[data-theme="light"] .feature-stage{background:var(--theme-surface)}
:root[data-theme="light"] .metric.highlight,:root[data-theme="light"] .demo-balance{background:var(--theme-soft);border-color:var(--theme-border)}
:root[data-theme="light"] .cta,:root[data-theme="light"] .primary,:root[data-theme="light"] .demo-open,:root[data-theme="light"] .demo-calculate,:root[data-theme="light"] .skip{background:var(--theme-accent);color:#fff}
:root[data-theme="light"] .cta:hover,:root[data-theme="light"] .primary:hover:not(:disabled),:root[data-theme="light"] .demo-open:hover,:root[data-theme="light"] .demo-calculate:hover{background:#994A21;color:#fff}
:root[data-theme="light"] .google-button,:root[data-theme="light"] .apple-button{background:var(--theme-surface);color:var(--theme-text);border:1px solid var(--theme-border)}
:root[data-theme="light"] input,:root[data-theme="light"] select,:root[data-theme="light"] textarea{color:var(--theme-text);background-color:var(--theme-surface);border-color:var(--theme-border);accent-color:var(--theme-accent)}
:root[data-theme="light"] input::placeholder,:root[data-theme="light"] textarea::placeholder{color:var(--theme-muted);opacity:1}
:root[data-theme="light"] input[readonly]{background:var(--theme-bg)}
:root[data-theme="light"] :focus-visible{outline:2px solid var(--theme-accent);outline-offset:3px}
:root[data-theme="light"] button:disabled,:root[data-theme="light"] input:disabled,:root[data-theme="light"] select:disabled{opacity:1;background:var(--theme-chrome);color:var(--theme-muted);border-color:var(--theme-border);cursor:not-allowed}
:root[data-theme="light"] .secondary:hover:not(:disabled),:root[data-theme="light"] .signin:hover{background:var(--theme-soft);border-color:var(--theme-accent)}
:root[data-theme="light"] .legal-page a,:root[data-theme="light"] .legal-page h2{color:var(--theme-accent)}
:root[data-theme="light"] .legal-page .date{color:var(--theme-muted)}
:root[data-theme="light"] .legal-page footer{border-color:var(--theme-border);padding:20px;border-radius:10px}
:root[data-theme="light"] .leaflet-popup-content-wrapper,:root[data-theme="light"] .leaflet-popup-tip,:root[data-theme="light"] .leaflet-bar a{background:var(--theme-surface);color:var(--theme-text)}
:root[data-theme="light"] .progress .business,:root[data-theme="light"] .mini-legend i{background:var(--theme-copper)}
:root[data-theme="light"] .progress .personal,:root[data-theme="light"] .mini-legend .personal{background:var(--theme-info)}
:root[data-theme="light"] .progress .unclassified,:root[data-theme="light"] .mini-legend .unclassified{background:var(--theme-muted)}
:root[data-theme="light"] .progress{background:var(--theme-border)}
:root[data-theme="light"] .brand{color:var(--theme-text)}
:root[data-theme="light"] .hero-visual:before{background:radial-gradient(ellipse,var(--theme-soft),transparent 70%)}
/* Keep full wordmark and usable controls, including narrow account headers. */
.account-header{height:auto;min-height:78px;flex-wrap:wrap;gap:12px;padding-block:14px}
.account-header .brand span{display:inline}
.header-right{flex-wrap:wrap}
.nav{flex-wrap:wrap;column-gap:20px;row-gap:10px;padding-block:12px}
.nav-actions{flex-wrap:wrap;gap:14px}
@media(max-width:720px){
 .account-header{min-height:69px;gap:10px}.account-header .brand{font-size:19px}.account-header .brand span{display:inline}
 .nav-actions{gap:9px}
 .header-right{gap:5px;max-width:100%}.nav{padding-block:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

