
:root{--ground:#0d1017;--ink:#f3f4f6;--muted:#a9aeb8;--line:#262b36;--panel:#141925;--panel2:#1a2030;--accent:#c8102e;--accent-text:#e2667b;--on-accent:#fff;--ok:#5fd08a;--warn:#ffcf5c;
--display:'Space Grotesk',Georgia,serif;--body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;--r:6px;--gap:clamp(16px,2.4vw,32px)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:dark}
body{margin:0;background:var(--ground);color:var(--ink);font:400 16px/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}
h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:-.02em;line-height:1.1;margin:0;text-wrap:balance}
h1{font-size:clamp(1.8rem,4.5vw,3rem)}
h2{font-size:clamp(1.35rem,2.6vw,1.9rem)}
p{margin:0 0 1em}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:8px;top:-60px;z-index:50;background:var(--ink);color:var(--ground);padding:.6em 1em;border-radius:var(--r)}
.skip:focus{top:8px}
.wrap{width:min(1240px,100% - 32px);margin-inline:auto}
@media (min-width:700px){.wrap{width:min(1240px,100% - clamp(32px,6vw,96px))}}
.eyebrow{font:600 .78rem/1.2 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .9em}
.muted{color:var(--muted)}
.lede{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.5;max-width:60ch;margin:.8em 0 0}

/* Header (red band, white type, logo on a white plate) */
.top{background:var(--accent);color:#fff;position:sticky;top:0;z-index:20}
.top-in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;position:relative}
.brand{display:block;line-height:0;flex:0 1 auto;min-width:0}
.logo{height:clamp(34px,4vw,48px);width:auto;max-width:min(220px,52vw);object-fit:contain;background:#fff;padding:5px 9px;border-radius:6px;box-sizing:content-box}
.nav-wide{display:none;align-items:center;gap:clamp(12px,1.8vw,26px);flex-wrap:wrap}
.top nav a{text-decoration:none;font-weight:500;color:#fff}
.top .nav-wide a:hover,.top .nav-wide a[aria-current]{text-decoration:underline}
.top-cta{padding:.5em 1em;border:1px solid #fff;border-radius:var(--r)}
.top .top-cta:hover{background:#fff;color:var(--accent);text-decoration:none}
.menu summary{list-style:none;cursor:pointer;padding:.5em 1em;border:1px solid #fff;border-radius:var(--r);font-weight:500;color:#fff}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;left:-16px;right:-16px;top:100%;display:flex;flex-direction:column;padding:8px 16px 16px;background:var(--ground);border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(0,0,0,.4)}
.menu nav a{padding:.8em 0;border-bottom:1px solid var(--line);color:var(--ink)}
.menu nav a[aria-current]{color:var(--accent-text)}
.menu nav .top-cta{margin-top:12px;text-align:center;border-color:var(--ink)}
@media (min-width:1000px){.nav-wide{display:flex}.menu{display:none}}

/* Footer */
.foot{border-top:1px solid var(--line);padding-block:clamp(36px,5vw,64px);font-size:.95rem;margin-top:clamp(48px,6vw,96px)}
.foot-in{display:grid;grid-template-columns:1fr;gap:var(--gap)}
.foot p{margin:0 0 .4em}
.foot nav{display:flex;flex-direction:column;gap:.4em}
.foot nav a{text-decoration:none}
.foot nav a:hover{text-decoration:underline}
.foot .logo{height:40px}
@media (min-width:820px){.foot-in{grid-template-columns:4fr 5fr 3fr}}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.85em 1.3em;background:var(--ink);color:var(--ground);text-decoration:none;font:600 1rem/1.2 var(--body);border-radius:var(--r);border:1px solid var(--ink);cursor:pointer;transition:background .2s,color .2s,border-color .2s;min-height:44px}
.btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-red{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-red:hover{background:#a50d26;border-color:#a50d26}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--ink);background:transparent;color:var(--ink)}
.btn-small{padding:.55em .9em;font-size:.92rem;min-height:40px}
.btn.is-off{opacity:.4;pointer-events:none}
.btns{display:flex;flex-wrap:wrap;gap:10px;margin:1.2em 0}
.btns .btn{flex:1 1 auto}
@media (min-width:600px){.btns .btn{flex:0 0 auto}}

/* Page heads */
.page-head{padding-block:clamp(28px,4vw,56px) clamp(16px,2vw,24px)}
.crumbs{font-size:.9rem;color:var(--muted);margin:0 0 1em}
.crumbs a{color:var(--muted)}

/* SRP layout */
.srp{display:grid;grid-template-columns:1fr;gap:var(--gap)}
@media (min-width:1000px){.srp{grid-template-columns:280px 1fr;align-items:start}.fpanel{position:sticky;top:84px;max-height:calc(100vh - 100px);overflow:auto}}
.filter-toggle{display:none}
.js .filter-toggle{display:inline-flex}
@media (max-width:999px){.js .fpanel{display:none}.js .fpanel.open{display:block}}
@media (min-width:1000px){.js .filter-toggle{display:none}}
.fpanel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px}
.fpanel h2{font-size:1.1rem;margin:0 0 12px}
.field{margin:0 0 12px}
.field label,.field .lbl{display:block;font-size:.85rem;font-weight:600;color:var(--muted);margin:0 0 4px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
input[type=text],input[type=search],input[type=number],input[type=date],select,textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--ground);border:1px solid #3a4150;border-radius:var(--r);padding:.6em .7em;min-height:44px}
textarea{min-height:160px;resize:vertical;line-height:1.5}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:2em}
.results-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}
.results-head .count{font-weight:600;margin:0}
.results-head .sort{display:flex;align-items:center;gap:8px}
.results-head .sort label{font-size:.9rem;color:var(--muted);white-space:nowrap}
.results-head .sort select{width:auto;min-width:190px}
.grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:560px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1300px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden;min-width:0}
.card-link{display:block;text-decoration:none;height:100%}
.card-link:hover{background:var(--panel2)}
.card-link:hover .card-title{text-decoration:underline}
.card-img{aspect-ratio:4/3;background:#1d2331;display:flex;align-items:center;justify-content:center;overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:cover}
.noimg{color:var(--muted);font-size:.95rem;padding:1em;text-align:center}
.card-body{padding:12px 14px 16px}
.card-title{font-size:1.12rem;line-height:1.25;margin:6px 0 8px}
.card-title span{color:var(--muted);font-weight:500}
.card-title a{text-decoration:none}
.card-price{margin:0 0 6px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.price-now{font:600 1.35rem/1.1 var(--display)}
.price-was{color:var(--muted)}
.price-cond{flex-basis:100%;font-size:.9rem;color:var(--ok)}
.price-ask{font-weight:600;color:var(--warn)}
.card-meta{color:var(--muted);font-size:.92rem;margin:0 0 4px}
.badges{margin:0;display:flex;flex-wrap:wrap;gap:6px}
.badge{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.25em .6em;border-radius:4px;border:1px solid #3a4150;color:var(--ink)}
.badge-stock{border-color:#2f6e4a;color:var(--ok)}
.badge-transit{background:var(--warn);border-color:var(--warn);color:#1a1300}
.pager{display:flex;align-items:center;justify-content:center;gap:12px;margin:24px 0}
.pager-at{color:var(--muted)}
.empty{padding:32px;border:1px dashed var(--line);border-radius:10px;text-align:center}
.disclaimer{margin-top:32px;padding:16px;border:1px solid var(--line);border-radius:10px;font-size:.88rem;color:var(--muted);background:var(--panel)}
.disclaimer p{margin:0}
.disclaimer strong{color:var(--ink)}

/* VDP */
.vdp{display:grid;grid-template-columns:1fr;gap:var(--gap)}
@media (min-width:1000px){.vdp{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}.vdp-side{position:sticky;top:84px}}
.vdp>*,.deal-hero>*,.srp>*{min-width:0}
.gallery{position:relative;min-width:0}
.g-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;border-radius:10px;background:#1d2331;scrollbar-width:none}
.g-track::-webkit-scrollbar{display:none}
.g-slide{flex:0 0 100%;scroll-snap-align:start;margin:0;aspect-ratio:4/3}
.g-slide button{all:unset;display:block;width:100%;height:100%;cursor:zoom-in}
.g-slide button:focus-visible{outline:2px solid var(--accent-text);outline-offset:-4px}
.g-slide img{width:100%;height:100%;object-fit:cover}
.g-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:rgba(13,16,23,.75);color:#fff;font-size:1.4rem;cursor:pointer;display:none}
.js .g-nav{display:block}
.g-prev{left:10px}.g-next{right:10px}
.g-nav:hover{background:var(--accent)}
.g-count{position:absolute;right:10px;bottom:10px;margin:0;background:rgba(13,16,23,.8);padding:.2em .6em;border-radius:4px;font-size:.85rem}
.g-thumbs{display:flex;gap:6px;overflow-x:auto;margin-top:8px;padding-bottom:4px}
.g-thumbs button{flex:0 0 76px;padding:0;border:2px solid transparent;border-radius:6px;background:none;cursor:pointer;overflow:hidden}
.g-thumbs button[aria-current=true]{border-color:var(--accent)}
.g-thumbs img{width:76px;height:57px;object-fit:cover}
.g-empty{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:24px;border:1px dashed var(--line);border-radius:10px;color:var(--muted)}
.lb{border:0;padding:0;background:rgba(0,0,0,.94);width:100vw;height:100vh;max-width:100vw;max-height:100vh;color:#fff}
.lb::backdrop{background:rgba(0,0,0,.94)}
.lb-in{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.lb img{max-width:100%;max-height:88vh;object-fit:contain}
.lb .g-nav{display:block}
.lb-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.15);color:#fff;font-size:1.4rem;cursor:pointer}
.lb-count{position:absolute;bottom:12px;left:0;right:0;text-align:center;margin:0}
.vdp h1{font-size:clamp(1.6rem,3.4vw,2.4rem);margin:10px 0 6px}
.vdp h1 span{color:var(--muted);font-weight:500}
.ids{color:var(--muted);font-size:.9rem;margin:0 0 12px;word-break:break-all}
.price-block{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;margin:12px 0}
.price-block .lbl{font-size:.85rem;color:var(--muted);margin:0}
.price-block .big{font:600 clamp(1.9rem,4vw,2.5rem)/1.1 var(--display);margin:2px 0 6px}
.price-block .was{color:var(--muted);margin:0}
.price-block .cond{color:var(--ok);margin:8px 0 0;font-weight:600}
.price-block .ask{color:var(--warn);font:600 1.4rem/1.2 var(--display);margin:4px 0}
.transit-note{background:#2b2410;border:1px solid #5c4a14;color:#ffe3a0;border-radius:10px;padding:12px 14px;margin:12px 0}
.section{margin-top:clamp(28px,4vw,48px)}
.section h2{margin-bottom:14px}
.specs{display:grid;grid-template-columns:1fr;gap:0;margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden}
@media (min-width:560px){.specs{grid-template-columns:1fr 1fr}}
.specs div{padding:10px 14px;border-bottom:1px solid var(--line);min-width:0}
.specs dt{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.specs dd{margin:2px 0 0;overflow-wrap:anywhere}
.opts{border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.opts summary{cursor:pointer;padding:14px 16px;font-weight:600;min-height:44px}
.opts ul{margin:0;padding:0 16px 16px 34px;columns:1;font-size:.95rem}
@media (min-width:700px){.opts ul{columns:2;column-gap:32px}}
.opts li{break-inside:avoid;margin-bottom:4px}
.desc{max-width:72ch;color:var(--ink)}
.ask-box{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;padding:clamp(18px,3vw,28px)}
.ask-box p{max-width:60ch}
.post{font-size:1.08rem;max-width:65ch}
.post p{margin:0 0 .9em}
.deal-hero{display:grid;grid-template-columns:1fr;gap:var(--gap)}
@media (min-width:1000px){.deal-hero{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}}

/* Admin */
.admin-bar{background:#000;color:var(--muted);font-size:.85rem}
.admin-bar .wrap{display:flex;justify-content:space-between;gap:12px;padding:6px 0;flex-wrap:wrap}
.panels{display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:900px){.panels{grid-template-columns:1fr 1fr}}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px}
.panel h2{font-size:1.2rem;margin:0 0 10px}
.mini{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:start}
.mini img{border-radius:6px;aspect-ratio:4/3;object-fit:cover}
.flash{padding:12px 14px;border-radius:8px;margin:0 0 16px;border:1px solid #2f6e4a;background:#10261a}
.flash.err{border-color:#8a2232;background:#2a0f15}
.err-text{color:#ff9aa9;font-size:.9rem;margin:4px 0 0}
.hint{color:var(--muted);font-size:.85rem;margin:4px 0 0}
table.hist{width:100%;border-collapse:collapse;font-size:.95rem}
.hist th,.hist td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.table-wrap{overflow-x:auto}
.inline-form{display:inline}
.card-admin .btn{margin-top:8px}
.bill-lead-form{margin:16px 0 8px;min-height:120px}
.bill-lead-form iframe{width:100%;border:0;max-width:100%}
.lead-fallback{font-size:.95rem;color:var(--muted);margin:8px 0 0}
.ask-box:focus{outline:none}
