:root{--display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--body:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--bg-slate:#f8fafc;--text-main:#0f172a;--text-muted:#475569;--text-dim:#94a3b8;--border-subtle:#e2e8f0;font-family:var(--body);color:var(--text-main);background:var(--bg-slate);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:var(--bg-slate);min-width:320px}body{background:var(--bg-slate);min-width:320px;min-height:100svh;margin:0}button,input,textarea,select{font:inherit}#root{min-height:100svh}.configurator-shell{color:#161b1f;background:linear-gradient(115deg,#f5f7f7db,#d4dbdcb8),radial-gradient(circle at 20% 16%,#9e102121,#0000 28%),#d8ddde;grid-template-columns:minmax(0,1fr) 380px;min-height:100svh;display:grid}.configurator-shell[data-mode=health],.configurator-shell[data-mode=maintenance]{grid-template-columns:minmax(0,1fr) minmax(440px,500px)}.viewer-panel{min-height:100svh;position:relative;overflow:hidden}.vehicle-canvas{inset:0;position:absolute!important}.vehicle-title{z-index:2;max-width:min(520px,100% - 40px);position:absolute;top:clamp(24px,4vw,52px);left:clamp(20px,4vw,56px)}.vehicle-title span,.section-kicker,.configuration-summary span{color:#8b1825;letter-spacing:0;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:800;display:block}.vehicle-title h1{color:#15191d;font-family:var(--display);letter-spacing:0;margin:0 0 12px;font-size:clamp(32px,5.3vw,74px);font-weight:780;line-height:.95}.vehicle-title p,.panel-section p{color:#4a555d;font-size:15px;line-height:1.45}.asset-note{z-index:2;color:#263238;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f6f8f7b8;border:1px solid #1f2b311f;border-radius:8px;align-items:center;gap:8px;padding:9px 12px;font-size:13px;display:inline-flex;position:absolute;bottom:clamp(20px,4vw,48px);left:clamp(20px,4vw,56px)}.asset-note a{color:inherit;text-underline-offset:3px}.vehicle-health-marker{z-index:3;color:#5d340e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;background:#fff3dce6;border:1px solid #753e0c59;border-radius:6px;align-items:center;gap:9px;padding:10px 13px;font-size:13px;font-weight:760;display:flex;position:absolute;bottom:clamp(150px,22vh,220px);right:clamp(60px,9vw,138px);box-shadow:0 12px 30px #43270f29}.marker-pulse{background:#d98524;border-radius:50%;width:9px;height:9px;animation:1.8s ease-out infinite marker-pulse;box-shadow:0 0 #d9852466}@keyframes marker-pulse{70%{box-shadow:0 0 0 8px #d9852400}to{box-shadow:0 0 #d9852400}}.control-panel{z-index:3;background:#f4f3ed;border-left:1px solid #141b1f24;flex-direction:column;gap:18px;min-height:100svh;max-height:100svh;padding:24px;display:flex;position:relative;overflow-y:auto;box-shadow:-18px 0 44px #191f231f}.mode-switch{z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#e5e4ddf0;border:1px solid #1f262b24;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid;position:sticky;top:0}.mode-switch button{color:#59636a;min-height:38px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;font-size:13px;font-weight:720}.mode-switch button:hover{color:#20262b}.mode-switch button:focus-visible{outline-offset:2px;outline:2px solid #8b1825}.mode-switch button[aria-pressed=true]{color:#fff;background:#20262b;box-shadow:0 4px 12px #171d2129}.panel-section{gap:14px;display:grid}.panel-section.compact{border-bottom:1px solid #1c242a1f;gap:6px;padding-bottom:8px}.panel-section h2{color:#15191d;font-family:var(--display);letter-spacing:0;margin:0;font-size:22px;line-height:1.05}.section-heading{align-items:center;gap:9px;display:flex}.section-heading svg{color:#8b1825}.option-grid{gap:8px;display:grid}.option-button{color:#20262b;width:100%;min-height:54px;font:inherit;text-align:left;cursor:pointer;background:#fbfaf5;border:1px solid #1f262b24;border-radius:8px;grid-template-columns:42px minmax(0,1fr);align-items:center;padding:8px 10px;transition:transform .16s,border-color .16s,background-color .16s;display:grid}.option-button:hover{border-color:#8b182573;transform:translateY(-1px)}.option-button:focus-visible{outline-offset:2px;outline:2px solid #8b1825}.option-button[data-active=true]{background:#f7ebe8;border-color:#8b1825}.paint-swatch{border:2px solid;border-radius:50%;width:30px;height:30px;box-shadow:inset 0 0 0 3px #fff9}.wheel-button small,.fixed-parts small{color:#66737a;margin-top:2px;font-size:12px;line-height:1.2;display:block}.wheel-symbol{background:radial-gradient(circle, #f5f1e8 0 16%, transparent 18%), conic-gradient(from 10deg, #9da1a3 0 10deg, transparent 10deg 36deg);border:5px solid #171b1f;border-radius:50%;width:32px;height:32px;position:relative}.wheel-symbol[data-style=mesh]{background:radial-gradient(circle, #f5f1e8 0 13%, transparent 15%), repeating-conic-gradient(#9da1a3 0 8deg, transparent 8deg 16deg)}.wheel-symbol[data-style=rally]{background:radial-gradient(circle,#f5f1e8 0 13%,#0000 14%),radial-gradient(circle at 50% 18%,#777f84 0 8%,#0000 9%),radial-gradient(circle at 78% 58%,#777f84 0 8%,#0000 9%),radial-gradient(circle at 22% 58%,#777f84 0 8%,#0000 9%),#c9cbc8;border-color:#2f3336}.fixed-parts{gap:8px;display:grid}.fixed-parts div{background:#fbfaf5;border:1px solid #1f262b24;border-radius:8px;min-height:50px;padding:10px 12px}.fixed-parts span{color:#20262b;font-weight:760;display:block}.configuration-summary{border-top:1px solid #1c242a1f;grid-template-columns:1fr;gap:6px;margin-top:auto;padding:14px 0 0;display:grid}.configuration-summary strong{color:#20262b;font-size:14px;font-weight:720}.health-panel{gap:22px;padding-bottom:20px;display:grid}.health-header{border-bottom:1px solid #e2e8f0;gap:16px;padding-bottom:18px;display:grid}.health-baseline,.health-section-heading span{color:#0284c7;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700;display:inline-block}.health-header h2,.health-section-heading h3,.priority-issue h3{color:#0f172a;font-family:var(--display);margin:0}.health-header h2{letter-spacing:-.025em;font-size:clamp(24px,3.2vw,30px);font-weight:750;line-height:1.1}.vehicle-identity{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.vehicle-identity div{border-top:1px solid #e2e8f0;padding-top:9px}.vehicle-identity dt{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:650}.vehicle-identity dd{color:#1e293b;font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);margin:4px 0 0;font-size:12px;font-weight:600}.health-summary{background:#fff;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden;box-shadow:0 1px 3px #00000005}.health-summary div{border-right:1px solid #e2e8f0;align-items:center;min-height:60px;padding:12px 16px;display:flex}.health-summary div:last-child{border-right:0}.health-summary strong{color:#1e293b;font-size:13px;font-weight:700;line-height:1.25}.health-summary [data-tone=priority]{background:#fffbeb}.health-summary [data-tone=priority] strong{color:#b45309}.diagnostic-limit{color:#475569;background:#f1f5f9;border-left:3px solid #94a3b8;border-radius:0 8px 8px 0;grid-template-columns:auto 1fr;gap:10px;padding:12px 14px;display:grid}.diagnostic-limit svg{color:#64748b;margin-top:2px}.diagnostic-limit p,.priority-issue p,.fault-record p,.health-timeline p{margin:0;font-size:13px;line-height:1.55}.priority-issue{background:linear-gradient(135deg,#fffbeb 0%,#fff 100%);border:1px solid #fcd34d;border-radius:12px;gap:10px;padding:18px 20px;display:grid;position:relative;overflow:hidden;box-shadow:0 2px 10px #d977060f}.priority-location{color:#b45309;letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.priority-issue h3{color:#92400e;letter-spacing:-.02em;max-width:340px;font-size:22px;font-weight:750;line-height:1.15}.priority-issue code,.fault-title code{font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);color:#b45309;background:#f59e0b26;border-radius:4px;padding:2px 6px;font-weight:700}.priority-next-step{color:#78350f;border-top:1px solid #d9770633;grid-template-columns:auto 1fr;align-items:start;gap:9px;padding-top:11px;font-size:12px;line-height:1.5;display:grid}.fault-section,.timeline-section{gap:14px;display:grid}.health-section-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.health-section-heading h3{letter-spacing:-.02em;font-size:20px;font-weight:750;line-height:1}.health-section-heading small,.health-section-heading>svg{color:#64748b;font-size:11px}.system-list{gap:8px;display:grid}.system-record{background:#fff;border:1px solid #e2e8f0;border-radius:10px;transition:border-color .15s;overflow:hidden}.system-record:hover{border-color:#cbd5e1}.system-record summary{cursor:pointer;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:54px;padding:10px 14px;list-style:none;display:grid}.system-record summary::-webkit-details-marker{display:none}.system-record summary:focus-visible{outline-offset:-2px;outline:2px solid #0284c7}.module-number{color:#0369a1;font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);font-size:13px;font-weight:800}.system-name{min-width:0}.system-name strong,.system-name small{display:block}.system-name strong{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.system-name small{color:#64748b;margin-top:2px;font-size:11px}.fault-status{color:#475569;white-space:nowrap;background:#f1f5f9;border-radius:5px;padding:3px 8px;font-size:10px;font-weight:700}.fault-status[data-status=priority]{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.fault-status[data-status=verify]{color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd}.details-chevron{color:#94a3b8;transition:transform .16s}.system-record[open] .details-chevron{transform:rotate(180deg)}.fault-list{border-top:1px solid #1f262b1f;display:grid}.fault-record{border-bottom:1px solid #1f262b17;gap:9px;padding:14px 12px 15px 50px;display:grid}.fault-record:last-child{border-bottom:0}.fault-title{gap:5px;display:grid}.fault-title code{color:#8b1825;background:#f2e4e2;border-radius:3px;width:fit-content;padding:2px 5px;font-size:11px}.fault-title strong{color:#242b30;font-size:13px;line-height:1.35}.fault-record>p{color:#566269}.fault-next-step{color:#3e494f;grid-template-columns:42px 1fr;gap:8px;display:grid}.fault-next-step>span{color:#7d898f;font-size:10px;font-weight:800}.health-timeline{gap:0;margin:0;padding:0;list-style:none;display:grid}.health-timeline li{border-left:2px solid #e2e8f0;grid-template-columns:92px 1fr;gap:4px 16px;padding:0 0 24px 20px;display:grid;position:relative}.health-timeline li:before{content:"";background:#0f172a;border:2px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:4px;left:-5.5px;box-shadow:0 0 0 2px #0f172a26}.health-timeline li:last-child{border-left-color:#0000;padding-bottom:0}.health-timeline time{color:#64748b;font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);grid-row:span 2;font-size:11px;font-weight:600;line-height:1.4}.health-timeline strong{color:#0f172a;font-size:14px;font-weight:700}.health-timeline p{color:#475569;font-size:13px;line-height:1.5}@media (width<=920px){.configurator-shell,.configurator-shell[data-mode=health],.configurator-shell[data-mode=maintenance]{grid-template-columns:1fr}.viewer-panel{min-height:64svh}.vehicle-title h1{font-size:clamp(30px,8vw,48px)}.control-panel{border-top:1px solid #141b1f24;border-left:0;min-height:auto;max-height:none;overflow-y:visible;box-shadow:0 -14px 28px #191f2314}.option-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.option-button{text-align:center;grid-template-columns:1fr;justify-items:center}.configuration-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.viewer-panel{min-height:52svh}.vehicle-title{top:18px;left:16px}.vehicle-title p{max-width:260px}.asset-note{display:none}.vehicle-health-marker{bottom:18px;right:16px}.control-panel{padding:18px 16px 22px}.option-grid,.vehicle-identity,.health-summary{grid-template-columns:1fr}.health-summary div{border-bottom:1px solid #1f262b1f;border-right:0;min-height:46px}.health-summary div:last-child{border-bottom:0}.system-record summary{grid-template-columns:28px minmax(0,1fr) auto}.fault-status{display:none}.fault-record{padding-left:12px}.health-timeline li{grid-template-columns:1fr}.health-timeline time{grid-row:auto}}@media (prefers-reduced-motion:reduce){.marker-pulse{animation:none}.option-button,.details-chevron{transition:none}}.status-shell{color:#0f172a;background-color:#f8fafc;background-image:radial-gradient(#cbd5e1 .8px,#0000 .8px),linear-gradient(#fff 0%,#f8fafc 420px);background-size:24px 24px,100% 100%;min-height:100svh}.status-topbar{z-index:20;-webkit-backdrop-filter:blur(16px);background:#ffffffe0;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 28px;padding:16px 32px;display:flex;position:sticky;top:0;box-shadow:0 1px 2px #00000005}.status-topbar span{color:#0284c7;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:inline-block}.status-topbar h1{color:#0f172a;font-family:var(--display);letter-spacing:-.025em;margin:0;font-size:clamp(24px,3.2vw,32px);font-weight:750;line-height:1.1}.status-topbar dl{flex-wrap:wrap;gap:12px 28px;margin:0;display:flex}.status-topbar dt{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:650}.status-topbar dd{color:#1e293b;font-variant-numeric:tabular-nums;margin:3px 0 0;font-size:13px;font-weight:600}.status-topbar dd:last-of-type,.status-topbar dl div:nth-child(2) dd{font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);font-size:12px}.status-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:28px;width:min(1180px,100% - 32px);margin:0 auto;padding:24px 0 48px;display:grid}.status-main{gap:22px;min-width:0;display:grid}.status-main .health-panel,.status-main .history-panel,.status-main .maintenance-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px 28px 28px;box-shadow:0 1px 3px #00000008,0 4px 12px #00000005}.status-now{background:linear-gradient(135deg,#fffbeb 0%,#fff 100%);border:1px solid #fcd34d;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:16px 20px;transition:all .2s;display:flex;position:relative;box-shadow:0 2px 8px #d977060f}.status-now:before{content:"";background:#d97706;border-radius:50%;width:9px;height:9px;margin-right:-4px;display:inline-block;box-shadow:0 0 0 3px #d9770633}.status-now button{color:#92400e;font:inherit;font-family:var(--display);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:16px;font-weight:700;line-height:1.3;transition:color .15s}.status-now button:hover{color:#b45309;text-underline-offset:3px;text-decoration:underline}.status-now button:focus-visible{outline-offset:2px;outline:2px solid #d97706}.status-now span{color:#b45309;letter-spacing:.02em;white-space:nowrap;background:#fef3c7;border:1px solid #fde68a;border-radius:9999px;align-items:center;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.now-board{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px 22px 20px;box-shadow:0 1px 3px #00000008,0 4px 12px #00000005}.now-board h2{font-family:var(--display);letter-spacing:-.02em;margin:0 0 14px;font-size:20px;font-weight:750}.now-board dl{grid-template-columns:1fr 1fr;gap:14px 22px;margin:0;display:grid}.now-board dt{color:#64748b;font-size:12px;font-weight:650}.now-board dd{color:#0f172a;font-variant-numeric:tabular-nums;margin:3px 0 0;font-size:14px;line-height:1.45}.now-highlight{font-weight:700}.now-wide{grid-column:1/-1}.print-only{display:none}.vehicle-poster{background:#e2e8f0;align-items:end;display:grid;position:absolute;inset:0}.vehicle-poster[hidden]{display:none}.vehicle-poster img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.vehicle-poster p,.vehicle-poster-note{z-index:1;color:#334155;background:#ffffffe6;margin:0;padding:8px 10px;font-size:12px;line-height:1.4;position:relative}.status-tabs{background:#edf2f7;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.status-tabs button{color:#64748b;min-height:38px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;font-size:13px;font-weight:650;transition:all .15s;display:flex}.status-tabs button:hover{color:#0f172a}.status-tabs button:focus-visible{outline-offset:2px;outline:2px solid #0284c7}.status-tabs button[aria-selected=true]{color:#0f172a;background:#fff;font-weight:700;box-shadow:0 1px 3px #0000000f,0 1px 1px #0000000a}.status-tabpanel[hidden]{display:none}.vehicle-card{background:radial-gradient(circle at 50% 60%,#fff 0%,#e2e8f0 100%);border:1px solid #e2e8f0;border-radius:14px;height:360px;position:sticky;top:88px;overflow:hidden;box-shadow:0 4px 20px #0000000d}.vehicle-card .vehicle-canvas{inset:0;position:absolute!important}.vehicle-card .vehicle-health-marker{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#92400e;background:#fffffff0;border:1px solid #fcd34d;border-radius:8px;max-width:calc(100% - 28px);padding:8px 12px;font-size:12px;font-weight:700;top:14px;bottom:auto;right:14px;box-shadow:0 4px 14px #d977061f}.vehicle-card .marker-pulse{background:#d97706;box-shadow:0 0 0 3px #d9770640}.vehicle-card .asset-note{color:#64748b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border:1px solid #e2e8f0;border-radius:6px;align-items:flex-start;max-width:none;padding:6px 10px;font-size:11px;line-height:1.45;display:flex;bottom:12px;left:12px;right:12px}.vehicle-card .asset-note>span{min-width:0}@media (width<=920px){.status-layout{grid-template-columns:1fr;width:min(100% - 24px,1180px);padding-top:16px}.vehicle-card{order:-1;height:200px;position:relative;top:auto}}@media (width<=620px){.status-topbar,.status-now,.status-main .health-panel,.status-main .history-panel,.status-main .maintenance-panel{padding-left:16px;padding-right:16px}.status-topbar{padding-top:14px;padding-bottom:12px}.vehicle-card .asset-note{font-size:10px;display:flex;bottom:8px;left:8px;right:8px}.now-board dl{grid-template-columns:1fr}}@media print{.status-shell{background:#fff}.status-topbar{box-shadow:none;position:static}.status-layout{width:auto;padding:0;display:block}.vehicle-card,.status-tabs,#panel-timeline,.asset-note{display:none!important}#panel-maintenance{display:block!important}.print-only{color:#334155;margin:0 0 8px;font-size:13px;display:block}.now-board,.now-highlight,.service-note{font-size:16px}.now-board{break-inside:avoid}}.history-panel{color:#1e293b}.history-panel h2,.history-panel h3,.history-panel p{margin:0}.history-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding-bottom:16px;display:flex}.history-kicker{color:#0284c7;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:inline-block}.history-header h2{color:#0f172a;font-family:var(--display);letter-spacing:-.025em;font-size:clamp(22px,3vw,28px);font-weight:750;line-height:1.1}.history-storage,.history-panel .history-status:not(:empty){margin:14px 0;font-size:13px;line-height:1.6}.history-storage{color:#64748b;background:#f8fafc;border-left:3px solid #94a3b8;border-radius:0 6px 6px 0;padding:8px 12px}.history-filters{flex-wrap:wrap;gap:6px;margin:0 0 20px;display:flex}.history-filters button{color:#475569;min-height:32px;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s}.history-filters button:hover{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.history-filters button[aria-pressed=true]{color:#fff;background:#0f172a;border-color:#0f172a;box-shadow:0 1px 2px #00000014}.history-empty{color:#64748b;margin:16px 0;font-size:13px}.history-panel button.history-event-open{color:#0f172a;min-height:0;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;font-weight:700;transition:color .15s}.history-panel button.history-event-open:hover{color:#0284c7;text-underline-offset:3px;background:0 0;border-color:#0000;text-decoration:underline}.history-panel .history-status:not(:empty){color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;padding:8px 12px}.history-error{color:#b91c1c;overflow-wrap:anywhere;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin:12px 0;padding:10px 14px;font-size:13px;line-height:1.5}.history-panel button{color:#1e293b;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s}.history-panel button:hover{background:#f8fafc;border-color:#94a3b8}.history-panel button:disabled{opacity:.5;cursor:not-allowed}.history-panel :is(button,input,textarea,select):focus-visible{outline-offset:2px;outline:2px solid #0284c7}.history-panel button.history-primary{color:#fff;background:#0f172a;border-color:#0f172a;box-shadow:0 1px 2px #0000000d}.history-panel button.history-primary:hover{background:#1e293b;border-color:#1e293b}.history-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:14px;margin:14px 0 24px;padding:18px;display:grid}.history-form label{color:#334155;gap:6px;min-width:0;font-size:12px;font-weight:600;display:grid}.history-form :is(input,textarea,select){box-sizing:border-box;color:#0f172a;width:100%;min-width:0;max-width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:8px 10px;font-size:14px;transition:border-color .15s}.history-form :is(input,textarea,select):focus{border-color:#0284c7}.history-form textarea{resize:vertical}.history-form-actions{gap:8px;padding-top:4px;display:flex}.history-timeline .history-event-body{gap:6px;min-width:0;display:grid}.history-event-heading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.history-event-type{color:#475569;white-space:nowrap;letter-spacing:.02em;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:5px;padding:2px 7px;font-size:10px;font-weight:700}.history-event-type[data-type=diagnostic]{color:#b45309;background:#fffbeb;border-color:#fde68a}.history-event-type[data-type=service]{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.history-event-type[data-type=modification]{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}.history-codes{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.history-codes code{color:#b45309;font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);background:#f59e0b1f;border:1px solid #f59e0b40;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:700}.history-timeline button{width:fit-content}.maintenance-panel{color:#1e293b}.maintenance-panel h2,.maintenance-panel h3,.maintenance-panel h4,.maintenance-panel p{margin:0}.maintenance-header{border-bottom:1px solid #e2e8f0;padding-bottom:16px}.maintenance-header h2{color:#0f172a;font-family:var(--display);letter-spacing:-.025em;margin:4px 0 0;font-size:clamp(22px,3vw,28px);font-weight:750;line-height:1.1}.maintenance-header p,.maintenance-muted,.maintenance-panel .maintenance-storage{color:#64748b;font-size:13px;line-height:1.6}.maintenance-panel .maintenance-storage{background:#f8fafc;border-left:3px solid #94a3b8;border-radius:0 6px 6px 0;margin:14px 0;padding:8px 12px}.maintenance-panel button{color:#1e293b;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s}.maintenance-panel button:hover{background:#f8fafc;border-color:#94a3b8}.maintenance-panel button:disabled{opacity:.5;cursor:not-allowed}.maintenance-panel :is(button,input,textarea):focus-visible{outline-offset:2px;outline:2px solid #0284c7}.maintenance-panel button.maintenance-primary{color:#fff;background:#0f172a;border-color:#0f172a;box-shadow:0 1px 2px #0000000d}.maintenance-panel button.maintenance-primary:hover{background:#1e293b;border-color:#1e293b}.maintenance-section-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.maintenance-section-title h3{color:#0f172a;font-size:15px;font-weight:700}.maintenance-section-title h3 small{color:#64748b;padding-left:6px;font-size:12px;font-weight:500}.mileage-summary{background:linear-gradient(135deg,#f8fafc 0%,#fff 100%);border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;box-shadow:0 1px 3px #00000005}.maintenance-panel .odometer-number{letter-spacing:-.03em;font-size:clamp(36px,4.2vw,56px);font-weight:750;line-height:1.05;font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);font-variant-numeric:tabular-nums;white-space:nowrap;color:#0f172a}.odometer-number small{letter-spacing:0;color:#64748b;margin-left:6px;font-size:16px;font-weight:500}.ownership-mileage{border-top:1px solid #e2e8f0;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 0;padding-top:16px;display:grid}.ownership-mileage dt{text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:4px;font-size:11px;font-weight:650}.ownership-mileage dd{font-size:15px;font-weight:600;font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);color:#1e293b;font-variant-numeric:tabular-nums;margin:0}.maintenance-section{border-bottom:1px solid #e2e8f0;padding:24px 0}.maintenance-panel .service-date{color:#0f172a;font-size:14px;font-weight:700;line-height:1.5}.maintenance-panel .service-mileage{color:#64748b;font-size:13px;font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace);margin:4px 0 12px}.service-items{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.service-items li{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:5px 10px;font-size:12px;font-weight:500}.maintenance-panel .service-distance{color:#475569;margin-top:14px;font-size:13px;line-height:1.6}.maintenance-panel .service-note{color:#64748b;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:10px;font-size:12px;line-height:1.7}.service-reminders{gap:8px;margin-top:14px;display:grid}.service-reminder{background:#f8fafc;border:1px solid #f1f5f9;border-left:3px solid #cbd5e1;border-radius:0 8px 8px 0;padding:14px 16px}.service-reminder[data-due=true]{background:#fffbeb;border-color:#fde68a #fde68a #fde68a #d97706;border-top-style:solid;border-top-width:1px;border-bottom-style:solid;border-bottom-width:1px;border-right-style:solid;border-right-width:1px}.reminder-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;display:flex}.reminder-heading h4{color:#0f172a;overflow-wrap:anywhere;font-size:13px;font-weight:700}.reminder-heading span{color:#64748b;font-size:11px;font-weight:600}.service-reminder[data-due=true] .reminder-heading h4{color:#92400e}.service-reminder[data-due=true] .reminder-heading span{color:#b45309}.maintenance-panel .service-reminder p{color:#475569;margin-top:6px;font-size:12px;line-height:1.5}.maintenance-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:14px;margin-top:20px;padding:18px;display:grid}.maintenance-form label{color:#334155;gap:6px;min-width:0;font-size:12px;font-weight:600;display:grid}.maintenance-form :is(input,textarea){box-sizing:border-box;color:#0f172a;width:100%;min-width:0;max-width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:8px 10px;font-size:14px;transition:border-color .15s}.maintenance-form :is(input,textarea):focus{border-color:#0284c7}.maintenance-form textarea{resize:vertical}.maintenance-form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.maintenance-form label.maintenance-checkbox{align-items:center;gap:8px;font-weight:500;display:flex}.maintenance-checkbox input{accent-color:#0f172a;width:16px;height:16px;margin:0}.service-item-form{background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:12px;min-width:0;margin:0;padding:14px;display:grid}.service-item-form legend{color:#0f172a;padding:0 6px;font-size:12px;font-weight:700}.maintenance-form-actions{gap:8px;padding-top:4px;display:flex}.service-history{margin:16px 0 0;padding:0;list-style:none}.service-history li{border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.service-history time{color:#0f172a;font-size:13px;font-weight:600;line-height:1.5;display:block}.service-history span{color:#64748b;font-size:11px;font-family:var(--mono,ui-monospace, "SFMono-Regular", Consolas, monospace)}.service-history button{flex-shrink:0}.service-history details{margin-top:8px;font-size:12px;line-height:1.7}.service-history details summary{cursor:pointer;color:#0284c7;font-weight:600}.service-history details ul{margin-top:6px;padding-left:18px}.maintenance-panel .maintenance-error{color:#b91c1c;overflow-wrap:anywhere;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin:12px 0;padding:10px 14px;font-size:13px;line-height:1.5}.maintenance-panel .maintenance-status:not(:empty){color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;margin:12px 0;padding:8px 12px;font-size:13px}@media (width<=480px){.mileage-summary{padding:16px}.maintenance-panel .odometer-number{font-size:42px}.maintenance-panel button{min-height:38px}}
