:root,[data-theme=light]{--bg: #eef1ec;--bg-deep: #e2e7e0;--ink: #1f2a24;--ink-soft: #445249;--accent: #b85a3a;--accent-deep: #8f3f28;--patina: #5e7a6a;--bone: #f7f8f5;--panel: color-mix(in srgb, var(--bone) 85%, transparent);--line: color-mix(in srgb, var(--ink) 12%, transparent);--shadow: 0 24px 60px color-mix(in srgb, var(--ink) 12%, transparent);--radius: 1.25rem;--font-display: "Bricolage Grotesque", "Segoe UI", sans-serif;--font-body: "Newsreader", Georgia, serif;--max: 72rem;--theme-btn-bg: color-mix(in srgb, var(--bone) 88%, transparent);--lightbox-scrim: rgba(10, 12, 11, .9);--focus-ring: color-mix(in srgb, var(--accent) 70%, transparent)}[data-theme=dark]{--bg: #161a17;--bg-deep: #0f1210;--ink: #e8ebe6;--ink-soft: #a7b0a8;--accent: #d47855;--accent-deep: #c45f3a;--patina: #7f9a88;--bone: #1c221e;--panel: color-mix(in srgb, #232a25 92%, transparent);--line: color-mix(in srgb, var(--ink) 14%, transparent);--shadow: 0 24px 60px color-mix(in srgb, #000 45%, transparent);--theme-btn-bg: color-mix(in srgb, #232a25 92%, transparent);--lightbox-scrim: rgba(6, 8, 7, .94);--focus-ring: color-mix(in srgb, var(--accent) 75%, transparent);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;height:100%;scrollbar-gutter:stable}body{margin:0;min-height:100%;min-height:100vh;min-height:100dvh;color:var(--ink);font-family:var(--font-body);font-size:1.125rem;line-height:1.55;background:radial-gradient(1200px 600px at 12% -10%,color-mix(in srgb,var(--patina) 18%,transparent),transparent 60%),radial-gradient(900px 500px at 90% 8%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 55%),linear-gradient(180deg,var(--bone),var(--bg) 38%,var(--bg-deep));background-attachment:fixed;display:flex;flex-direction:column}#app{flex:1;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.stage{width:min(100% - 2rem,var(--max));margin:0 auto;padding:1.5rem 0 2.5rem;flex:1;display:flex;flex-direction:column}.hero{min-height:calc(100vh - 3rem);display:grid;align-content:end;gap:1rem;padding:2rem 0 3.5rem;animation:rise .9s ease-out both}.brand{margin:0;font-family:var(--font-display);font-weight:800;font-size:clamp(2.6rem,8vw,5.5rem);letter-spacing:-.04em;line-height:.92;color:var(--ink)}.headline{margin:0;max-width:16ch;font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,4vw,2.6rem);letter-spacing:-.03em;line-height:1.1}.lead{margin:0;max-width:36rem;color:var(--ink-soft);font-size:1.2rem}.cta{justify-self:start;margin-top:.75rem;display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.25rem;border-radius:999px;background:var(--ink);color:var(--bone);text-decoration:none;font-family:var(--font-display);font-weight:700;font-size:.95rem;transition:transform .18s ease,background .18s ease}.cta:hover{background:var(--accent-deep);transform:translateY(-2px)}.section{margin-top:4rem;padding-top:1rem;border-top:1px solid var(--line);animation:rise .9s ease-out both;animation-delay:.12s}.section h2{margin:0 0 1rem;font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.03em}.about p{margin:0;max-width:42rem;color:var(--ink-soft)}.empty{padding:2rem;border:1px dashed color-mix(in srgb,var(--patina) 55%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--bone) 70%,transparent)}.empty h3{margin:0 0 .5rem;font-family:var(--font-display)}.empty p{margin:0;color:var(--ink-soft)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem}.card{margin:0;overflow:hidden;border-radius:var(--radius);background:var(--bone);box-shadow:var(--shadow);transition:transform .22s ease}a.card{display:block;text-decoration:none;color:inherit;cursor:pointer}.card:hover{transform:translateY(-4px)}.card img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover}.card figcaption{padding:.75rem 1rem 1rem;font-size:.95rem;color:var(--ink-soft)}.footer{margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--line);display:grid;gap:.5rem;text-align:center;justify-items:center}.footer p{margin:0;max-width:36rem;color:var(--ink-soft)}.credit{margin:0;font-family:var(--font-body);font-weight:400;font-size:1rem;color:var(--ink-soft)}.muted{color:color-mix(in srgb,var(--ink-soft) 75%,transparent);font-size:.95rem}.back-row{margin:0 0 1rem}.back-link{display:inline-flex;align-items:center;gap:.35rem;padding:.65rem 1.05rem;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--bone) 80%,transparent);color:var(--ink);text-decoration:none;font-family:var(--font-display);font-weight:700;font-size:.92rem;transition:background .16s ease,transform .16s ease}.back-link:hover{background:var(--bone);transform:translateY(-1px)}.to-top{position:fixed;right:1.1rem;bottom:1.1rem;z-index:40;border:0;border-radius:999px;padding:.75rem 1.1rem;background:var(--ink);color:var(--bone);font-family:var(--font-display);font-weight:700;font-size:.9rem;cursor:pointer;box-shadow:var(--shadow);transition:opacity .18s ease,transform .18s ease}.to-top[hidden]{display:none}.to-top:hover{background:var(--accent-deep);transform:translateY(-2px)}.theme-toggle{position:fixed;top:1.1rem;right:1.1rem;z-index:40;border:1px solid var(--line);border-radius:999px;padding:.65rem 1.05rem;background:var(--theme-btn-bg);color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:.9rem;cursor:pointer;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .16s ease,transform .16s ease}.theme-toggle:hover{transform:translateY(-1px);background:var(--bone)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--lightbox-scrim);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fade .18s ease both;cursor:zoom-out}.lightbox img{position:relative;z-index:1;max-width:min(96vw,1100px);max-height:min(82vh,900px);width:auto;height:auto;border-radius:.75rem;box-shadow:0 24px 80px #0000008c;cursor:default;aspect-ratio:auto;object-fit:contain}.lightbox-close{position:fixed;top:1rem;left:1rem;z-index:101;border:0;border-radius:999px;padding:.7rem 1.1rem;font-family:var(--font-display);font-weight:700;background:#f3f5f2;color:#1f2a24;cursor:pointer;box-shadow:0 8px 24px #00000059}.lightbox-close:hover{background:#fff}.lightbox-hint{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);z-index:101;margin:0;padding:.4rem .85rem;border-radius:999px;font-family:var(--font-display);font-size:.85rem;color:#f3f5f2d1;background:#00000059;pointer-events:none}body.lightbox-open{overflow:hidden}body.lightbox-open .theme-toggle,body.lightbox-open .to-top{visibility:hidden;pointer-events:none}.headline-wide{max-width:28ch}.page-chrome{padding-top:4.25rem}.vehicle-grid.sparse{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),26rem));justify-content:start}.vehicle-shot:focus-visible,.card:focus-visible,.back-link:focus-visible,.cta:focus-visible,.theme-toggle:focus-visible,.to-top:focus-visible,.lightbox-close:focus-visible,.btn:focus-visible,.admin-nav a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media(max-width:640px){.hero{min-height:auto;padding-top:4rem}.card img{aspect-ratio:1}.lightbox-hint{display:none}.theme-toggle{top:auto;bottom:1.1rem;left:1.1rem;right:auto}.to-top{bottom:4.4rem}.page-chrome{padding-top:1.5rem}.admin-bar{padding-right:0;padding-bottom:4.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.vehicle-head{margin:1rem 0 2rem}.about-text{max-width:42rem;color:var(--ink-soft)}.vehicle-grid .card{cursor:zoom-in}.admin.narrow{max-width:28rem}.admin-bar{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-right:7.5rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.brand-sm{font-family:var(--font-display);font-weight:800;text-decoration:none;color:var(--ink)}.admin-nav{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:center}.admin-nav a{color:var(--ink-soft);text-decoration:none;font-family:var(--font-display);font-size:.95rem}.admin-title{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 1.25rem}.admin-subtitle{font-family:var(--font-display);font-size:1.1rem;margin:0 0 .35rem;grid-column:1 / -1}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem;display:grid;gap:.85rem}.panel label{display:grid;gap:.35rem;font-family:var(--font-display);font-size:.9rem}.panel input,.panel textarea,.panel select{font:inherit;padding:.65rem .75rem;border-radius:.65rem;border:1px solid var(--line);background:var(--bone);color:var(--ink)}.grid-form{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.grid-form .full{grid-column:1 / -1}.grid-form .check{display:flex;align-items:center;gap:.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:0;border-radius:999px;padding:.7rem 1.1rem;background:var(--ink);color:var(--bone);font-family:var(--font-display);font-weight:700;font-size:.92rem;cursor:pointer;text-decoration:none}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.danger{background:var(--accent-deep)}.toolbar{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.admin-list{display:grid;gap:.65rem}.admin-row{display:flex;gap:.75rem;align-items:center;padding:.65rem .75rem;border-radius:var(--radius);background:color-mix(in srgb,var(--bone) 80%,transparent);border:1px solid var(--line);cursor:grab}.admin-row.dragging{opacity:.55}.admin-row .thumb{width:64px;height:64px;object-fit:cover;border-radius:.5rem}.admin-row .grow{flex:1;display:grid;gap:.15rem;min-width:0}.pill{display:inline-flex;padding:.2rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--patina) 22%,transparent);font-family:var(--font-display);font-size:.8rem}.error{color:var(--accent-deep);margin:0}.ok{color:var(--patina);margin:0}.editor-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}#editCanvas{max-width:100%;border-radius:var(--radius);box-shadow:var(--shadow);touch-action:none;background:#ddd}
