@font-face{font-family:Oswald;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/oswald-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1E??,U+2020,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/oswald-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2122,U+2191,U+2193,U+2212,U+2215}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1E??,U+2020,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/ibm-plex-sans-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2122,U+2191,U+2193,U+2212,U+2215}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1E??,U+2020,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2122,U+2191,U+2193,U+2212,U+2215}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1E??,U+2020,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2122,U+2191,U+2193,U+2212,U+2215}:root{--ink:#0c0c0d;--ink-soft:#5a564e;--paper:#f7f6f2;--surface:#fff;--surface-muted:#f1efe8;--surface-translucent:#ffffffdb;--border:#e3dfd4;--border-strong:#cfc9ba;--signal:#e1531f;--signal-deep:#a83814;--signal-tint:#fbe4da;--signal-ink:#fff7f3;--danger:#b3261e;--danger-tint:#fbe4e1;--shadow-card:0 12px 30px #0c0c0d0f;--shadow-lift:0 16px 34px #0c0c0d1a;--font-display:"Oswald", "Arial Narrow", sans-serif;--font-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;font-family:var(--font-body);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-weight:400;line-height:1.5}[data-theme=dark]{--ink:#f3f1ea;--ink-soft:#b6b1a5;--paper:#121110;--surface:#1b1a18;--surface-muted:#221f1c;--surface-translucent:#121110db;--border:#34302a;--border-strong:#48423a;--signal:#ff7a42;--signal-deep:#ffab7d;--signal-tint:#3a2013;--signal-ink:#1a0d07;--danger:#ff6b60;--danger-tint:#3a1512;--shadow-card:0 12px 30px #00000059;--shadow-lift:0 16px 34px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--paper);min-width:320px;min-height:100vh;margin:0;transition:background-color .2s,color .2s}#root{max-width:1400px;min-height:100vh;margin:0 auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.01em}.root-shell{background:var(--paper);min-height:100vh}.topbar{border-bottom:1px solid var(--border);background:var(--surface-translucent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;justify-content:space-between;align-items:center;gap:1rem;padding:1.3rem 1.75rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.9rem;display:flex}.brand-logo{width:auto;height:2.1rem;display:block}.brand-logo--dark,[data-theme=dark] .brand-logo--light{display:none}[data-theme=dark] .brand-logo--dark{display:block}.brand-product{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);border-left:1px solid var(--border);white-space:nowrap;padding-left:.9rem;font-size:.75rem}.topnav{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}@media (width<=900px){.topbar{flex-wrap:wrap;padding:1rem 1.1rem}.topnav{justify-content:space-between;width:100%}}.topnav a{color:var(--ink);border-radius:999px;padding:.65rem .95rem;font-weight:600;text-decoration:none;transition:background .2s}.topnav a:hover{background:var(--surface-muted)}.theme-toggle{border:1px solid var(--border);background:var(--surface);width:2.5rem;height:2.5rem;color:var(--ink);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{border-color:var(--border-strong)}.theme-toggle svg{width:1.15rem;height:1.15rem}.nav-menu{position:relative}.nav-menu__trigger{border:1px solid var(--border);background:var(--surface);width:2.5rem;height:2.5rem;color:var(--ink);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.nav-menu__trigger:hover,.nav-menu__trigger[aria-expanded=true]{border-color:var(--border-strong);background:var(--surface-muted)}.nav-menu__trigger svg{width:1.25rem;height:1.25rem}.nav-menu__panel{z-index:20;background:var(--surface);border:1px solid var(--border);min-width:13rem;box-shadow:var(--shadow-lift);border-radius:1rem;flex-direction:column;gap:.15rem;padding:.6rem;display:flex;position:absolute;top:calc(100% + .6rem);right:0}.nav-menu__panel a{color:var(--ink);border-radius:.7rem;padding:.6rem .75rem;font-weight:600;text-decoration:none;transition:background .2s}.nav-menu__panel a:hover{background:var(--surface-muted)}.nav-menu__divider{background:var(--border);height:1px;margin:.4rem .25rem}.nav-menu__footer{justify-content:space-between;align-items:center;gap:.5rem;padding:.2rem .75rem .5rem;display:flex}.nav-menu__username{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.nav-menu__signout{background:var(--surface-muted);color:var(--ink);font-family:inherit;font-weight:600;font-size:inherit;text-align:left;cursor:pointer;border:none;border-radius:.7rem;margin:0 .25rem;padding:.6rem .75rem}.nav-menu__signout:hover{background:var(--border)}.app-shell{max-width:1320px;margin:0 auto;padding:1.75rem 1.5rem 2.25rem}.config-state{background:var(--paper);place-items:center;min-height:100vh;padding:2rem;display:grid}.config-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:36rem;box-shadow:var(--shadow-lift);border-radius:1.25rem;padding:2rem}.config-card h2{color:var(--ink);margin:0 0 .75rem;font-size:1.5rem}.config-card p{color:var(--ink-soft);margin:0 0 .75rem;line-height:1.6}.page-shell{flex-direction:column;gap:1.75rem;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.page-header--small{align-items:flex-start}.page-header--compact .eyebrow{font-size:.68rem}.page-header--compact h1{font-size:1.4rem}.page-header--compact .page-copy{margin-top:.3rem;font-size:.88rem}.page-header h1{margin:0;font-size:2.1rem}.page-copy{color:var(--ink-soft);max-width:40rem;margin-top:.75rem}.detail-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.location-hero-stat{background:var(--surface);border:1px solid var(--border);border-radius:.85rem;flex-direction:column;gap:.35rem;min-width:200px;padding:.65rem 1rem;display:flex}.location-hero-stat__notes{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;max-width:260px;margin:0;font-size:.8rem;overflow:hidden}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.stat-card,.panel,.vehicle-card,.detail-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:1rem}.stat-card,.panel,.detail-card{padding:1.2rem}.stat-label,.meta-label,.eyebrow{font-family:var(--font-mono);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.14em;margin-bottom:.35rem;font-size:.75rem}.stat-value{font-family:var(--font-display);color:var(--ink);margin:0;font-size:1.7rem;font-weight:600}.toolbar-panel{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.search-block{flex:1}.search-block input{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--ink);border-radius:999px;padding:.85rem 1.1rem;font-size:.95rem}.filter-row{flex-wrap:wrap;gap:.5rem;display:flex}.view-toggle{border:1px solid var(--border);border-radius:999px;flex-shrink:0;gap:.2rem;padding:.2rem;display:inline-flex}.view-toggle button{width:2.15rem;height:2.15rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.view-toggle button.active{background:var(--ink);color:var(--paper)}.view-toggle svg{width:1.05rem;height:1.05rem}.filter-chip,.primary-btn,.secondary-btn,.ghost-btn{cursor:pointer;border:none;font-family:inherit;font-weight:600}.filter-chip{background:var(--surface-muted);color:var(--ink-soft);border-radius:999px;padding:.55rem .8rem}.filter-chip.active{background:var(--ink);color:var(--paper)}.primary-btn,.secondary-btn{background:var(--signal);color:var(--signal-ink);border-radius:999px;padding:.75rem 1rem}.primary-btn:hover,.secondary-btn:hover{background:var(--signal-deep)}.primary-btn:disabled,.secondary-btn:disabled{opacity:.6;cursor:not-allowed}.ghost-btn{background:var(--surface-muted);color:var(--ink-soft);border-radius:999px;padding:.75rem 1rem}.list-grid{grid-template-columns:2fr 1fr;gap:1rem;display:grid}.list-grid--full{grid-template-columns:1fr}.vehicle-grid{gap:1rem;display:grid}.vehicle-card{padding:1rem 1.1rem}.vehicle-card__header,.vehicle-card__meta,.vehicle-card__actions,.detail-row,.detail-row--stacked{align-items:center;gap:1rem;display:flex}.vehicle-card__header{justify-content:space-between;margin-bottom:.9rem}.vehicle-plate{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.25rem;font-size:.78rem}.vehicle-card__meta,.detail-row{justify-content:space-between}.detail-row__action{margin-top:.4rem;padding:.35rem .7rem;font-size:.8rem}.vehicle-card__info{margin-bottom:1rem}.vehicle-grid--grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:stretch}.vehicle-card--grid{flex-direction:column;padding:0;display:flex;overflow:hidden}.cover-thumb--grid{aspect-ratio:16/10;border:none;border-bottom:1px solid var(--border);border-radius:1rem 1rem 0 0;width:100%}.vehicle-card--grid__body{flex-direction:column;flex:1;gap:.55rem;padding:1rem 1.1rem 1.1rem;display:flex}.vehicle-card--grid__top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.vehicle-card--grid__body h2{font-size:1.05rem}.vehicle-card--grid__stats{color:var(--ink-soft);justify-content:space-between;gap:.5rem;font-size:.85rem;display:flex}.vehicle-card--grid .vehicle-card__actions{flex-direction:column;align-items:stretch;margin-top:auto;padding-top:.4rem}.vehicle-card--grid .vehicle-card__actions .secondary-btn,.vehicle-card--grid .vehicle-card__actions .ghost-btn{text-align:center}.location-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:stretch;gap:1rem;display:grid}.location-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);color:inherit;border-radius:1rem;flex-direction:column;gap:.9rem;padding:1.2rem;text-decoration:none;transition:box-shadow .2s,transform .2s;display:flex}.location-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}.location-card__header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.location-card__header h2{margin-bottom:.3rem;font-size:1.1rem}.layout-badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;background:var(--signal-tint);color:var(--signal-deep);border-radius:999px;flex-shrink:0;padding:.3rem .55rem;font-size:.68rem}.occupancy{flex-direction:column;gap:.5rem;display:flex}.occupancy__track{background:var(--surface-muted);border-radius:999px;height:.5rem;overflow:hidden}.occupancy__fill{border-radius:999px;height:100%}.occupancy__fill--low{background:#22c55e}.occupancy__fill--medium{background:#f59e0b}.occupancy__fill--high{background:#ef4444}.occupancy__row{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.occupancy__count{font-family:var(--font-mono);color:var(--ink);font-weight:500}.occupancy__free{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);font-size:.72rem}.location-card__notes{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.88rem;display:-webkit-box;overflow:hidden}.location-card--selectable:hover{transform:none}.location-card__header[role=button]{cursor:pointer;border-radius:.6rem}.location-card__header[role=button]:focus-visible{outline:2px solid var(--signal);outline-offset:3px}.location-card--expanded{grid-column:1/-1}.location-card__expansion{border-top:1px solid var(--border);cursor:default;flex-direction:column;gap:.9rem;padding-top:.5rem;display:flex}.location-card__open{align-self:flex-start}.detail-card h2{margin:0 0 1rem;font-size:1.3rem}.location-summary{flex-direction:column;gap:1rem;display:flex}.location-map-shell{background:var(--surface-muted);border:1px solid var(--border);border-radius:1rem;justify-content:flex-start;width:100%;padding:1rem;display:flex;overflow:auto}.spot-queue-banner{background:var(--signal-tint);border:1px solid var(--signal);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.spot-queue-banner .detail-actions{flex-wrap:nowrap}.floor-plan-row{grid-template-columns:minmax(0,2.4fr) minmax(220px,1fr);align-items:start;gap:1rem;display:grid}.location-add-vehicle{flex-direction:column;gap:.5rem;display:flex}.location-add-vehicle .primary-btn{text-align:center;margin-top:.5rem}@media (width<=900px){.floor-plan-row{grid-template-columns:1fr}.location-map{width:100%;max-height:none}}.modal-backdrop{z-index:1200;background:#0808088c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--border);width:min(560px,100%);max-height:85vh;box-shadow:var(--shadow-lift);border-radius:1.25rem;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.modal-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.modal-header h2{font-size:1.3rem}.modal-close{background:var(--surface-muted);width:2.2rem;height:2.2rem;color:var(--ink-soft);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;font-size:1.3rem;line-height:1}.modal-selected-strip{background:var(--signal-tint);border:1px solid var(--signal);border-radius:.85rem;flex-wrap:wrap;gap:.5rem;padding:.65rem;display:flex}.modal-selected-chip{background:var(--surface);border:1px solid var(--border);border-radius:999px;align-items:center;gap:.4rem;padding:.25rem .5rem .25rem .25rem;font-size:.8rem;font-weight:600;display:inline-flex}.modal-selected-chip button{background:var(--surface-muted);width:1.15rem;height:1.15rem;color:var(--ink-soft);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;font-size:.85rem;line-height:1;display:inline-flex}.modal-selected-chip button:hover{background:var(--border);color:var(--ink)}.cover-thumb--chip{border-radius:999px;flex-shrink:0;width:1.85rem;height:1.85rem}.cover-thumb--chip.cover-thumb--empty span{display:none}.modal-list{flex:1;gap:.5rem;min-height:0;display:grid;overflow-y:auto}.modal-list--status{flex:none;overflow:visible}.modal-list__row{border:1px solid var(--border);border-radius:.85rem;align-items:center;gap:.75rem;padding:.55rem .75rem;transition:background-color .15s,border-color .15s;display:flex}.modal-list__row--selected{background:var(--signal-tint);border-color:var(--signal)}.modal-list__location{flex-shrink:0;margin-left:auto}.modal-list__add{border:1px solid var(--border);background:var(--surface);width:2.15rem;height:2.15rem;color:var(--ink);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;display:inline-flex}.modal-list__add--selected{background:var(--signal);border-color:var(--signal);color:var(--signal-ink)}.modal-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding-top:.85rem;display:flex}.location-map{width:auto;max-width:100%;height:auto;max-height:clamp(280px,100vh - 340px,700px);display:block}.detail-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1.4fr);gap:1rem;display:grid}.damage-upload{margin-top:1.5rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.detail-row--stacked{flex-direction:column;align-items:flex-start}.damage-block,.note-block{background:var(--surface-muted);border-radius:1rem;margin-top:1rem;padding:1rem}.status-pill{border-radius:999px;align-items:center;padding:.35rem .75rem;font-size:.8rem;display:inline-flex}.status-active{color:#166534;background:#dcfce7}.status-service{color:#92400e;background:#fef3c7}.status-maintenance{color:#991b1b;background:#fee2e2}.location-pill{background:var(--signal-tint);color:var(--signal-deep);border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.85rem;display:inline-flex}.damage-grid{gap:.9rem;display:grid}.damage-item{background:var(--surface-muted);border:1px solid var(--border);border-radius:1rem;padding:1rem}.damage-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.65rem;display:flex}.damage-photo{object-fit:cover;border-radius:1rem;width:100%;max-height:190px;margin-top:.85rem}.form-grid{gap:1rem;display:grid}.form-control{flex-direction:column;gap:.5rem;display:flex}.form-control--full{grid-column:1/-1}.form-control label{color:var(--ink-soft);font-size:.85rem;font-weight:600}.form-control input,.form-control select,.form-control textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--ink);border-radius:.85rem;padding:.85rem 1rem;font-family:inherit;font-size:.95rem}.form-actions{grid-column:1/-1;justify-content:flex-end;display:flex}.form-error{background:var(--danger-tint);color:var(--danger);border-radius:.85rem;margin:0;padding:.75rem 1rem;font-size:.9rem}.panel-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.alert-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.alert-list li{background:var(--surface);border:1px solid var(--border);color:var(--ink-soft);border-radius:.9rem;padding:.85rem 1rem}.vehicle-card--link{color:inherit;text-decoration:none;transition:box-shadow .2s,transform .2s;display:block}.vehicle-card--link:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}.vehicle-card__identity{align-items:center;gap:.9rem;display:flex}.cover-thumb{background:var(--surface-muted);border:1px solid var(--border);border-radius:.85rem;flex-shrink:0;overflow:hidden}.cover-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.cover-thumb:hover img{transform:scale(1.08)}.hover-preview{z-index:1300;pointer-events:none;object-fit:contain;background-color:var(--surface-muted);border:1px solid var(--border);width:auto;height:auto;box-shadow:var(--shadow-lift);border-radius:1rem;animation:.15s ease-out hover-preview-in;display:block;position:fixed}@keyframes hover-preview-in{0%{opacity:0;transform:translateY(4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.hover-preview{animation:none}}.spot-preview{z-index:1000;pointer-events:none;background:var(--surface);border:1px solid var(--border);max-width:240px;box-shadow:var(--shadow-lift);border-radius:.85rem;padding:.4rem;animation:.15s ease-out hover-preview-in;position:fixed}.spot-preview img{object-fit:cover;border-radius:.55rem;width:100%;max-height:170px;display:block}.spot-preview__text{text-align:center;min-width:140px;color:var(--ink);padding:.9rem .7rem;font-weight:700}.spot-preview--pinned{pointer-events:auto;cursor:pointer;border-color:var(--signal);box-shadow:var(--shadow-lift), 0 0 0 3px color-mix(in srgb, var(--signal) 20%, transparent)}.spot-preview__cta{text-align:center;color:var(--signal-deep);padding:.5rem .3rem .2rem;font-size:.8rem;font-weight:700}@media (prefers-reduced-motion:reduce){.spot-preview{animation:none}}.cover-thumb--card{width:4.5rem;height:3.4rem}.cover-thumb--hero{width:5.5rem;height:4.2rem}.cover-upload{cursor:pointer;display:block;position:relative}.cover-upload__badge{background:var(--surface);border:1px solid var(--border);width:1.5rem;height:1.5rem;color:var(--ink-soft);opacity:.85;box-shadow:var(--shadow-card);border-radius:999px;justify-content:center;align-items:center;transition:opacity .15s,color .15s;display:inline-flex;position:absolute;bottom:-.35rem;right:-.35rem}.cover-upload__badge svg{width:.8rem;height:.8rem}.cover-upload:hover .cover-upload__badge{opacity:1;color:var(--signal-deep);border-color:var(--signal)}.cover-upload--busy .cover-upload__badge{cursor:wait;opacity:1}.cover-thumb--empty{color:var(--ink-soft);text-align:center;justify-content:center;align-items:center;padding:.25rem;font-size:.65rem;display:flex}.color-value{align-items:center;gap:.5rem;display:flex}.color-swatch{border:1px solid var(--border-strong);border-radius:999px;width:1rem;height:1rem;display:inline-block}.page-copy--tight{margin-top:.35rem;margin-bottom:.9rem;font-size:.85rem}.diagram-shell{aspect-ratio:4/3;background:var(--surface-muted);border:1px solid var(--border);cursor:crosshair;border-radius:1rem;width:100%;position:relative;overflow:hidden}.diagram-sketch{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.diagram-sketch--fallback{padding:1.5rem}.diagram-pin{border:2px solid var(--surface);cursor:pointer;border-radius:999px;width:1.15rem;height:1.15rem;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 6px #0c0c0d59}.pin--low{background:#22c55e}.pin--medium{background:#f59e0b}.pin--high{background:#ef4444}.diagram-pin--active{outline:3px solid color-mix(in srgb, var(--signal) 35%, transparent);outline-offset:1px}.diagram-pin--pending{background:var(--signal);border:2px solid var(--surface);pointer-events:none;width:1.3rem;height:1.3rem;animation:1.6s ease-in-out infinite pulse-pin}@keyframes pulse-pin{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--signal) 45%, transparent)}50%{box-shadow:0 0 0 8px #0000}}.damage-item--active{border-color:var(--signal);box-shadow:0 0 0 3px color-mix(in srgb, var(--signal) 15%, transparent)}.floor-spot text{pointer-events:none}.floor-spot--clickable{cursor:pointer}.floor-spot--draggable{cursor:grab;touch-action:none}.floor-spot--assignable{cursor:pointer}.floor-spot--assignable rect:first-of-type{transition:fill .15s,stroke .15s}.floor-spot--assignable:hover rect:first-of-type{fill:var(--surface-muted);stroke:var(--signal)}.location-map--dragging,.location-map--dragging .floor-spot--draggable,.floor-spot--drag-source{cursor:grabbing}.floor-spot__drop-ring{stroke:var(--signal);stroke-width:4px;stroke-dasharray:10 6;animation:1s ease-in-out infinite focus-pulse}.floor-spot__ghost{pointer-events:none;opacity:.85;filter:drop-shadow(0 6px 10px #00000059)}.floor-spot__label-chip{fill:var(--surface);fill-opacity:.94;stroke:var(--border);stroke-width:1px}.floor-spot__label{fill:var(--ink);font-size:12px;font-weight:700}.floor-spot__plate{fill:var(--signal-deep);font-size:10px;font-weight:700}.stack-section{gap:1rem;display:grid}.brake-history{gap:.9rem;margin-bottom:1.5rem;display:grid}.brake-entry{background:var(--surface-muted);border:1px solid var(--border);border-radius:1rem;padding:1rem}.brake-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.9rem;margin-top:.75rem;display:grid}.brake-wheel{background:var(--surface);border:1px solid var(--border);border-radius:.85rem;padding:.85rem}.brake-wheel__reading{font-family:var(--font-mono);color:var(--ink);margin:.15rem 0 .4rem;font-size:1.05rem;font-weight:500}.brake-wheel__type{text-transform:capitalize}.brake-wheel__photos{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.wheel-thumb{object-fit:cover;border:1px solid var(--border);border-radius:.5rem;width:3.4rem;height:3.4rem}.brake-entry__notes{color:var(--ink-soft);margin-top:.75rem;font-size:.9rem}.brake-form-grid{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.brake-form-wheel{background:var(--surface-muted);border:1px solid var(--border);border-radius:.9rem;flex-direction:column;gap:.65rem;padding:1rem;display:flex}@media (width<=980px){.list-grid,.stats-grid{grid-template-columns:1fr}.page-header,.detail-actions,.toolbar-panel,.vehicle-card__header,.vehicle-card__meta,.vehicle-card__actions,.detail-row{flex-direction:column;align-items:stretch}}@media (width<=640px){.topbar{flex-direction:column;align-items:flex-start}}.topnav a.topnav__find{background:var(--signal);color:var(--signal-ink);font-weight:700}.topnav a.topnav__find:hover{background:var(--signal-deep)}.find-vehicle{position:relative}.find-vehicle__input{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--ink);border-radius:1rem;padding:1.1rem 1.25rem;font-size:1.15rem}.find-vehicle__results{gap:.5rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.find-vehicle__results button{border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;border-radius:.9rem;align-items:center;gap:.85rem;padding:.65rem .9rem;display:flex}.find-vehicle__results button:hover{border-color:var(--signal)}.find-vehicle__result-text{flex-direction:column;gap:.2rem;display:flex}.find-vehicle__result-location{white-space:nowrap;flex-shrink:0;margin-left:auto}.find-vehicle__result{flex-direction:column;gap:1.1rem;display:flex}.find-vehicle__result-head{align-items:center;gap:1rem;display:flex}.floor-spot__focus-ring{stroke:var(--ink);stroke-width:5px;animation:1.4s ease-in-out infinite focus-pulse}@media (prefers-reduced-motion:reduce){.floor-spot__focus-ring{animation:none}}@keyframes focus-pulse{0%,to{stroke-opacity:1}50%{stroke-opacity:.25}}
