.garage-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.garage-heading h1{margin:0}.garage-wallet{flex:none;background:linear-gradient(145deg,#342712,#151a23);border:1px solid #e5ac474d;border-radius:18px;padding:1rem;text-align:center}.garage-wallet strong{display:block;font-size:1.5rem;color:#ffcb62}.garage-wallet small{color:var(--muted)}.garage-message{min-height:1.5em;color:#b2e3c7}.garage-stage{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:16/8;min-height:220px;border:1px solid #ffffff20;border-radius:24px;background:radial-gradient(ellipse at 50% 20%,#303b4c,#101722 70%);box-shadow:0 20px 45px #0005}.garage-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.garage-track{display:flex;height:100%;position:absolute;inset:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.garage-track::-webkit-scrollbar{display:none}.garage-slide{position:relative;flex:0 0 100%;height:100%;scroll-snap-align:center;scroll-snap-stop:always}.garage-vehicle{position:absolute;left:50%;bottom:var(--ground,12%);transform:translateX(-50%);height:75%;display:flex;align-items:end;justify-content:center}.garage-vehicle img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 14px 8px #0006)}.garage-placeholder{width:100%;height:100%;min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.5rem;padding:1rem;border:1px dashed #ffffff30;border-radius:18px;background:#111923b8;color:#b5c1d2;box-sizing:border-box}.garage-placeholder span{font-size:3rem;color:#ff3746}.garage-placeholder small{font-size:.8rem}.garage-arrows{position:absolute;left:12px;right:12px;top:46%;display:flex;justify-content:space-between;pointer-events:none}.garage-arrows button{pointer-events:auto;background:#131923dd;min-width:44px}.garage-details{margin-top:1rem}.garage-upgrades{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}.garage-upgrades>div{display:grid;gap:.7rem;align-content:start}.garage-upgrades button{width:100%;white-space:normal}.garage-shop{margin-top:2.5rem}.garage-shop .section-head{flex-wrap:wrap;gap:.5rem}.garage-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin-top:1rem}.garage-product{min-width:0}.garage-thumb{height:150px;display:flex;justify-content:center;margin-bottom:1rem}.garage-thumb img{height:100%;width:100%;object-fit:contain}.garage-product h3{margin:.7rem 0}.garage-lock{display:block;color:#ffcb62;padding:.6rem 0}.garage-variants{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.garage-upload{padding:1rem;margin:.7rem 0;min-width:0}.garage-upload h4{margin:0}.garage-upload input{max-width:100%}.garage-admin select,.garage-admin input{width:100%;box-sizing:border-box}.garage-admin .garage-stage{min-height:180px}.garage-admin form{display:grid;gap:1rem;margin-top:1rem}.garage-admin label{display:grid;gap:.5rem}.garage-admin [role=status]{overflow-wrap:anywhere}@media(max-width:600px){.garage-heading{align-items:start}.garage-heading h1{font-size:2.3rem}.garage-heading p{font-size:.85rem}.garage-wallet{padding:.7rem}.garage-wallet strong{font-size:1.1rem}.garage-stage{aspect-ratio:4/3;min-height:210px;border-radius:17px}.garage-upgrades{grid-template-columns:1fr;gap:.8rem}.garage-upgrades>div{grid-template-columns:1fr 1fr;align-items:center;font-size:.85rem}.garage-variants{grid-template-columns:1fr}.garage-products{grid-template-columns:1fr}.mobile-nav a{min-width:0!important;padding:3px 5px!important;flex:1}.garage-placeholder strong{font-size:.9rem}}@media(prefers-reduced-motion:reduce){.garage-track{scroll-behavior:auto}}
.garage-arrows button[hidden]{display:none}

/* Keep upload feedback visible even at the last variant on a small screen. */
.garage-admin{display:flex;flex-direction:column;max-height:90dvh;overflow:hidden}
.garage-admin:not([open]){display:none}
.garage-admin .dialog-top,.garage-admin>[role=status]{flex:none}
.garage-admin>[role=status]{margin:.5rem 0;padding:.8rem;border:1px solid #52647c;border-radius:10px;background:#152334;color:#fff;font-size:.95rem}
.garage-admin [data-gbody]{overflow-y:auto;min-height:0;overscroll-behavior:contain}
/* Step5B uses existing panels, images and server economy totals. */
.flame-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 8px}.garage-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.group-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.flame-total{padding:18px;min-width:0}.flame-total strong{display:block;color:var(--gold);font-size:clamp(1.15rem,2.5vw,1.7rem);overflow-wrap:anywhere}.flame-total span{display:block;font-size:.82rem;color:var(--muted);margin-top:4px}.flame-legacy{margin-bottom:20px}.flame-legacy[hidden]{display:none}.home-grid>[data-home-garage]{min-width:0}.home-garage-preview{display:flex;flex-direction:column;gap:10px;padding:18px;height:100%}.home-garage-preview .garage-stage{width:100%;aspect-ratio:16/9;min-height:0;border-radius:15px}.home-garage-preview .garage-placeholder{min-height:0;font-size:.8rem;padding:.5rem}.home-garage-preview .garage-placeholder span{font-size:1.5rem}.home-garage-preview p{font-size:.85rem}.home-garage-preview:hover{border-color:var(--gold)}.continue-card>.text-link{margin-top:12px}.home-groups{margin-top:28px}.group-rank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:16px}.group-rank-card{min-width:0;margin-bottom:16px}.group-rank-card>p{margin:10px 0}.group-rank-card h4{font-size:.9rem;margin:12px 0}.group-top-three{list-style:none;margin:10px 0;padding:0;display:grid;gap:8px}.group-top-three li{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:8px 0}.rank-place{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:8px;background:#3b3019;color:var(--gold);font-weight:800}.rank-name{min-width:0;overflow-wrap:anywhere;flex:1}.group-top-three strong{white-space:nowrap;font-size:.85rem}.group-top-three .is-me .rank-name{color:var(--green)}.rank-own{padding:10px;border:1px solid #4b7959;border-radius:10px;margin:12px 0}.garage-collection{margin-top:32px;max-width:100%;min-width:0}.collection-controls{display:flex;gap:8px}.collection-controls button{padding:10px 16px;min-height:44px}.collection-track{position:relative;display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:14px 0 20px;scrollbar-width:thin;max-width:100%}.collection-item{flex:0 0 clamp(220px,30vw,300px);scroll-snap-align:start;padding:16px;min-width:0}.collection-item h3{margin-top:8px}.collection-item p{font-size:.82rem;margin-top:7px}.collection-image{position:relative;display:flex;align-items:center;justify-content:center;height:155px;isolation:isolate}.collection-image>img{width:100%;height:100%;object-fit:contain}.collection-image .garage-placeholder{min-height:0;padding:.5rem;font-size:.8rem}.collection-image .garage-placeholder>strong{font-size:.8rem}.collection-image .garage-placeholder>span{font-size:1.8rem}.collection-item:not([data-state=owned]) .collection-image>img{filter:grayscale(1);opacity:.72}.collection-item[data-state=owned]{border-color:#3c7150}.collection-lock{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;color:#a0a6ae;opacity:.65;pointer-events:none;z-index:1;filter:drop-shadow(0 1px 4px #000)}.collection-lock.open{color:#60e38c;opacity:.6}.garage-heading{margin-bottom:8px}.garage-totals{margin-bottom:20px}
@media(max-width:650px){.flame-total{padding:12px}.flame-total span{font-size:.7rem}.flame-totals{gap:8px}.collection-item{flex-basis:min(78vw,300px)}.garage-collection .section-head{align-items:start}.garage-collection h2{font-size:1.1rem}.home-garage-preview .garage-stage{aspect-ratio:16/9;min-height:0}.group-rank-card{padding:18px}.group-top-three strong{font-size:.8rem}}

.collection-track::after{content:"";flex:0 0 var(--collection-tail,0px)}
.collection-item:not([data-state=owned]) .garage-placeholder{filter:grayscale(1);opacity:.72}
.signed-banner>div{display:grid;gap:4px}

/* Central catalog texts, Step5B hotfix1. */
.vehicle-subtitle{color:var(--muted);font-size:.88rem;margin-top:4px;overflow-wrap:anywhere}
.vehicle-description{font-size:.9rem;white-space:pre-line;overflow-wrap:anywhere}
.collection-item .vehicle-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.collection-item h3,.garage-details h2,.home-garage-preview h3{overflow-wrap:anywhere}
.garage-text-editor input,.garage-text-editor textarea{width:100%;min-width:0;box-sizing:border-box;font:inherit}
.garage-text-editor textarea{resize:vertical}
.garage-text-editor form{display:grid;gap:12px}
/* Direct navigation through every published vehicle, including on touchscreens. */
.garage-collection>label{display:block;margin:10px 0 6px;font-size:.85rem}.garage-collection>select{display:block;width:100%;max-width:480px;min-height:44px;font:inherit;font-size:1rem;background:var(--panel,#17212d);color:var(--text,#f4f6f8);border:1px solid var(--line,#354354);border-radius:12px;padding:8px 12px}.garage-collection>select:focus-visible{outline:2px solid var(--game-blue,#29a9ff);outline-offset:3px}

/* Garage hotfix: one scrollable row; five variants unfold beside the base card. */
.vehicle-stacks{--stack-card:clamp(220px,20vw,260px);display:flex;flex-wrap:nowrap;gap:20px;overflow-x:auto;overflow-y:hidden;max-width:100%;min-width:0;height:560px;box-sizing:border-box;padding:16px 12px 24px;overscroll-behavior-x:contain;scrollbar-width:thin;touch-action:pan-x pan-y}
.vehicle-stack{display:flex;flex:0 0 auto;align-items:stretch;height:100%;position:relative;min-width:0}
.vehicle-stack>.collection-item,.stack-variants>.collection-item{box-sizing:border-box;flex:0 0 var(--stack-card);width:var(--stack-card);height:100%;overflow-y:auto;margin:0}
.stack-cover{position:relative;width:100%;display:flex;flex-direction:column;gap:10px;text-align:left;isolation:isolate;padding:0;background:transparent;border:0;box-shadow:none;color:inherit;white-space:normal;min-height:44px}
.stack-cover::before,.stack-cover::after{content:"";position:absolute;inset:-16px;border:1px solid var(--border,#394454);border-radius:18px;background:var(--panel,#17202b);z-index:-1;transform:translate(4px,6px);transition:transform 400ms,opacity 400ms;pointer-events:none}
.stack-cover::after{transform:translate(8px,12px);z-index:-2}
.is-open .stack-cover::before,.is-open .stack-cover::after{transform:translate(0,0);opacity:0}
.stack-cover .collection-image{width:100%;height:155px}
.stack-cover span{font-size:.8rem;color:var(--muted)}
.stack-variants{display:flex;flex-wrap:nowrap;gap:16px;flex:0 0 auto;width:0;opacity:0;overflow:hidden;margin-left:0;transition:width 400ms ease,margin-left 400ms ease,opacity 400ms ease}
.vehicle-stack.is-open .stack-variants{width:calc(5 * var(--stack-card) + 64px);margin-left:16px;opacity:1}
.vehicle-stacks:focus-visible,.stack-cover:focus-visible{outline:2px solid var(--game-blue,#29a9ff);outline-offset:3px}
@media(max-width:650px){.vehicle-stacks{--stack-card:min(78vw,280px)}}
@media(prefers-reduced-motion:reduce){.stack-cover::before,.stack-cover::after,.stack-variants{transition:none}}
