/* Theme changes provide orientation; no decorative animation or artificial waiting. */
.theme-switch{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:6px 10px;min-height:44px;flex-shrink:0;background:var(--surface);color:var(--text);cursor:pointer}
.theme-track{position:relative;width:62px;height:32px;overflow:hidden;border-radius:18px;background:var(--soft);border:1px solid var(--line);transition:background .18s}
.theme-thumb{position:absolute;left:3px;top:3px;width:24px;height:24px;display:grid;place-items:center;background:#f1ca70;border-radius:50%;transition:transform .18s,background .18s}
.theme-sun,.theme-moon{position:absolute;display:grid;place-items:center;transition:opacity .18s;color:#604715}
.theme-sun svg,.theme-moon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.theme-moon{opacity:0;color:#203442}.theme-label{font-size:12px;font-weight:500;min-width:38px}
.theme-switch[aria-checked=true] .theme-thumb{transform:translateX(30px);background:#d9e8f1}
.theme-switch[aria-checked=true] .theme-sun{opacity:0}.theme-switch[aria-checked=true] .theme-moon{opacity:1}
.theme-floating{position:fixed;left:16px;bottom:calc(94px + env(safe-area-inset-bottom));z-index:65}
.auth-form>.theme-switch,.legal-page>.theme-switch{display:flex;margin:0 0 20px auto}
.dongle-shop{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--soft);border-color:var(--line)}
.dongle-shop p{margin-bottom:0;max-width:65ch}.dongle-shop .btn{flex-shrink:0}
[data-theme=dark] :is(.card,.stat-card,.metric,.modal,.auth-main,.sidebar,.topbar,.mobile-bottom,.icon-btn,.btn.secondary,.vehicle-mini,.device-card,.notice,.feature-card,.support-window,.support-message,.support-chat-row,.legal-page){background:var(--surface);color:var(--text);border-color:var(--line)}
[data-theme=dark] :is(input:not([type=checkbox]),select,textarea){background:var(--bg);color:var(--text);border-color:var(--line)}
[data-theme=dark] :is(.stat-top,.stat-value,.vehicle-mini h4,.profile-info strong,.model-photo figcaption,.nav-item,.breadcrumb,.security-list strong,.support-message small){color:var(--text)}
[data-theme=dark] :is(.muted,.hint,.label,.vehicle-vin,.portal-footer,.support-status){color:var(--muted)}
[data-theme=dark] :is(.nav-item.active,.mobile-bottom a.active,.empty-icon,.subtle-banner,.support-message.role-CUSTOMER,.support-chat-row.selected){background:var(--primary-soft);color:var(--primary)}
[data-theme=dark] :is(.support-window>header,.welcome-journey,.journey-steps a,.support-options button){background:var(--soft);color:var(--text);border-color:var(--line)}
[data-theme=dark] .support-message.role-SUPPORT{background:var(--success-soft)}
[data-theme=dark] .badge.green{background:var(--success-soft);color:var(--success)}
[data-theme=dark] .badge.amber{background:var(--warning-soft);color:var(--warning)}
[data-theme=dark] .badge.red{background:var(--danger-soft);color:var(--danger)}
[data-theme=dark] .data-table :is(th,td){color:var(--text);border-color:var(--line)}
[data-theme=dark] .data-table th{background:var(--soft)}
[data-theme=dark] :is(.form-error,.alert){background:var(--warning-soft);color:var(--warning)}
[data-theme=dark] .form-error{background:var(--danger-soft);color:var(--danger)}
@media(max-width:800px){.dongle-shop{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.theme-switch{padding:6px 8px}.site-header .theme-label{display:none}.theme-floating{left:12px}}
@media(prefers-reduced-motion:reduce){:root *,:root *::before,:root *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
