/* Sage, 55% boldness: surfaces mirror ThemeStore.surfaceRGB in the iOS app. */
:root{color-scheme:light dark;--bg:#c1d2c7;--panel:#e4ece7;--line:#b4c5ba;--text:#17251d;--muted:#4c6254;--accent:#2f7048;--button:#508766;--button-text:#000;--glass:#e4ece7ed;--complement:#e8e1e5}
@media(prefers-color-scheme:dark){:root{--bg:#102017;--panel:#1d2821;--line:#384b3f;--text:#f0f4f1;--muted:#adbfb3;--accent:#8abb9b;--button:#508766;--button-text:#000;--glass:#1d2821ed;--complement:#282027}}
body{font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text)}
body>header{max-width:1100px;padding:18px 24px;min-height:76px;border:0;gap:18px;background:transparent}
.brand{font-size:18px;font-weight:650;letter-spacing:-.5px;gap:10px;white-space:nowrap}.brand .mark{width:31px;height:35px;background:var(--button);color:var(--button-text);font-size:21px}
.desktop-nav a{font-size:13px;color:var(--muted)}.desktop-nav a:hover{color:var(--accent)}
.header-tools .badge{background:var(--panel);color:var(--muted);border:0;font-weight:500;padding:7px 10px}.icon-button{color:var(--accent);background:var(--panel);border:0;box-shadow:0 1px 3px #0000000b}
main{max-width:1000px;padding:22px 24px 48px;min-height:75vh}h1{font-size:32px;letter-spacing:-.9px;font-weight:700}h2{font-size:28px;letter-spacing:-.7px;font-weight:650}h3{font-size:18px;font-weight:650;letter-spacing:-.3px;margin-bottom:14px}h4{font-size:16px;font-weight:600}
.panel{border:0;border-radius:22px;padding:24px;margin-bottom:20px;background:var(--panel);box-shadow:0 1px 2px #00000007}.eyebrow{font-size:12px;letter-spacing:.7px;color:var(--muted)}.hint{font-size:13px;line-height:1.5}.page-heading{margin-bottom:24px}.section-heading{gap:12px;flex-wrap:wrap}.section-heading h3{margin-bottom:0}.section-heading{margin-bottom:16px}
button{border:0;border-radius:999px;background:var(--button);color:var(--button-text);font-size:14px;padding:11px 18px;min-height:44px;justify-content:center;gap:9px}.secondary{background:var(--complement);color:var(--text);border:1px solid var(--line)}.text-button{background:transparent;color:var(--accent);border:0;min-height:44px}.icon-button{padding:10px}.icon-button:disabled{opacity:.6}
input,select,textarea{background:var(--bg);color:var(--text);border-color:var(--line);border-radius:12px}input:focus,select:focus,textarea:focus{outline-color:var(--accent)}fieldset{border-color:var(--line);border-radius:16px}legend{padding:0 6px}.check input{accent-color:var(--button)}
.hero.vehicle-summary{min-height:0;background:var(--panel);display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px 20px}.vehicle-summary h1{font-size:21px;letter-spacing:-.4px;line-height:1.3;margin:0 0 6px}.vehicle-model{display:block;font-size:13px;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:4px}.vehicle-status{text-align:right;max-width:420px}.vehicle-status h2{font-size:22px;font-weight:650;letter-spacing:-.5px;color:var(--accent);line-height:1.3;margin:0 0 5px}.vehicle-status #sample-time{font-size:12px}.vehicle-disclaimer{grid-column:1/-1;border-top:1px solid var(--line);padding-top:12px}
dl{gap:12px;font-size:14px}dd{overflow-wrap:anywhere}.event,.account-row{border-color:var(--line);padding:16px 0}.event-state{font-size:16px;font-weight:550}.event .alert{color:var(--accent)}.event-meta{font-size:12px}.event small{font-size:12px}
.shortcut-grid{gap:12px}.shortcut-button{background:var(--bg);border:0;border-radius:18px;min-height:92px;color:var(--accent);box-shadow:inset 0 0 0 1px #8080800d}.shortcut-button svg{width:28px;height:28px}.shortcut-button span{font-size:12px;font-weight:550}.shortcut-button:hover{background:var(--complement)}.empty-shortcut{box-shadow:inset 0 0 0 1px var(--line)}.shortcut-heading>a{color:var(--accent)}
.control-dialog{background:var(--panel);border:1px solid var(--line);border-radius:24px}.control-detail summary{min-height:48px;color:var(--accent)}.notification-preview{background:var(--complement);border-color:var(--line)}.notice{background:var(--panel);border-color:var(--line);color:var(--text)}.notice.error{background:var(--complement);border-color:#b76655}.software-vehicle progress{accent-color:var(--button)}.software-check{gap:10px}.software-vehicle h4{color:var(--muted);font-weight:500;margin:8px 0}.software-vehicle .event-state{font-size:20px;font-weight:650;color:var(--accent)}
body>footer{max-width:952px;letter-spacing:0;font-size:12px;border-color:var(--line);padding:20px 0 32px}.mobile-tabs{display:none}#software-heading{scroll-margin-top:24px}
@media(max-width:1100px){main{margin:0 auto}body>header .desktop-nav{gap:16px}body>footer{margin-left:24px;margin-right:24px}}
@media(max-width:760px){body>header{padding:16px 18px;gap:12px}.brand{font-size:17px!important;letter-spacing:-.5px!important;gap:8px!important}.brand .mark{width:28px;height:32px}.header-tools #worker-state{display:none}body>header .desktop-nav{gap:6px 16px;border-top:1px solid var(--line);padding-top:10px;margin:0}.desktop-nav a{min-height:32px;display:flex;align-items:center}.desktop-nav>a[href="/"],.desktop-nav>a[href="/controls"],.desktop-nav>a[href="/timeline"],.desktop-nav>a[href="/account"]{display:none}.desktop-nav .text-button{font-size:13px;padding:0;min-height:32px}main{padding:8px 16px 32px}.signed-in main{padding-bottom:100px}.panel{padding:20px;border-radius:22px;margin-bottom:20px}.vehicle-summary h1{font-size:19px}.vehicle-status h2{font-size:19px}.vehicle-status{max-width:190px}.vehicle-summary .hint{font-size:12px}.hero.vehicle-summary{gap:12px}.section-heading{gap:6px;margin-bottom:14px}.section-heading>.muted{font-size:12px}.overview-shortcuts{padding:20px 12px}.shortcut-grid{gap:7px}.shortcut-button{border-radius:16px;min-height:82px;padding:10px 3px}.shortcut-button span{font-size:10px}.shortcut-button svg{width:25px;height:25px}.shortcut-heading{padding:0 6px}.shortcut-note{padding:0 6px}.mobile-tabs{position:fixed;z-index:30;bottom:max(10px,env(safe-area-inset-bottom));left:12px;right:12px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:7px;background:var(--glass);border:1px solid var(--line);border-radius:30px;box-shadow:0 6px 30px #0002;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.mobile-tabs a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:52px;border-radius:23px;text-decoration:none;color:var(--muted);font-size:10px;font-weight:550}.mobile-tabs svg{width:22px;height:22px}.mobile-tabs a[aria-current="page"]{background:var(--bg);color:var(--accent)}body>footer{margin:0 18px;padding-bottom:calc(100px + env(safe-area-inset-bottom));gap:4px}.signed-out footer{padding-bottom:30px}}
@media(prefers-reduced-transparency:reduce){.mobile-tabs{background:var(--panel);backdrop-filter:none}}
