:root{
  --bg:#071323;--panel:#0e1e33;--panel2:#132946;--text:#f7fbff;--muted:#a9bdd3;
  --blue:#0878ff;--cyan:#31c7ff;--orange:#ff8a24;--green:#45d483;--red:#ff6171;
  --line:rgba(255,255,255,.11);--shadow:0 22px 70px rgba(0,0,0,.38);
  font-family:Inter,ui-rounded,"SF Pro Rounded",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}
body{min-height:100dvh;overflow-x:hidden;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}
button:focus-visible{outline:3px solid #fff;outline-offset:3px}.app-shell{min-height:100dvh;display:flex;flex-direction:column;position:relative;isolation:isolate}
body::before{content:"";position:fixed;z-index:-2;inset:0;background:radial-gradient(circle at 15% 5%,rgba(8,120,255,.22),transparent 30%),radial-gradient(circle at 85% 12%,rgba(49,199,255,.12),transparent 24%),linear-gradient(180deg,#071323,#07101d 70%)}
body::after{content:"";position:fixed;z-index:-1;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,#000,transparent 70%)}
.topbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:10px clamp(12px,2.5vw,32px);background:rgba(7,19,35,.84);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.brand{border:0;background:none;padding:0;display:flex;align-items:center;gap:10px;cursor:pointer}.brand img{width:clamp(95px,13vw,160px);height:50px;object-fit:contain;object-position:left center}.game-name{font-weight:1000;font-size:15px;letter-spacing:.08em;white-space:nowrap}.game-name small{display:block;color:var(--muted);font-size:9px;letter-spacing:.12em;margin-top:2px}
.stage-tracker{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.stage-dot{width:24px;height:7px;border-radius:99px;background:#243b58;transition:.25s}.stage-dot.done{background:var(--green)}.stage-dot.active{width:40px;background:linear-gradient(90deg,var(--blue),var(--cyan));box-shadow:0 0 0 4px rgba(49,199,255,.08)}
.top-actions{display:flex;align-items:center;gap:8px}.coin-pill,.icon-btn{height:42px;border:1px solid var(--line);background:rgba(255,255,255,.06);border-radius:14px;display:flex;align-items:center;justify-content:center}.coin-pill{gap:7px;padding:0 12px;font-size:14px}.coin-pill span{font-size:19px}.icon-btn{width:42px;cursor:pointer;font-size:19px;transition:.15s}.icon-btn:hover{background:rgba(255,255,255,.11);transform:translateY(-1px)}
.app{width:min(1240px,100%);margin:0 auto;flex:1;padding:clamp(16px,2.8vw,34px);display:flex;flex-direction:column}.footer{display:flex;justify-content:space-between;gap:20px;padding:14px clamp(16px,3vw,36px);border-top:1px solid var(--line);color:#8299b0;font-weight:800;font-size:10px;letter-spacing:.08em}
.hero{text-align:center;max-width:910px;margin:clamp(22px,4vw,48px) auto 22px}.eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(49,199,255,.27);background:rgba(49,199,255,.08);border-radius:999px;padding:7px 11px;color:#bfefff;font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.hero h1{font-size:clamp(42px,8vw,82px);line-height:.9;letter-spacing:-.055em;margin:16px 0 12px}.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--blue),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.lead{max-width:680px;margin:auto;color:var(--muted);font-size:clamp(15px,1.9vw,19px);line-height:1.5}
.hero-row{display:grid;grid-template-columns:1fr 170px;gap:24px;align-items:center}.fox-helper{width:160px;height:150px;margin:auto;position:relative;filter:drop-shadow(0 22px 25px rgba(0,0,0,.35));animation:foxFloat 2.8s ease-in-out infinite}.fox-helper svg{width:100%;height:100%;overflow:visible}.fox-helper .ear{transform-box:fill-box;transform-origin:bottom center;animation:earTwitch 3.2s ease-in-out infinite}.fox-helper .ear.r{animation-delay:.16s}.fox-helper .eye{transform-box:fill-box;transform-origin:center;animation:wink 4.6s infinite}.fox-bubble{position:absolute;right:76%;top:4px;width:170px;padding:10px 12px;border-radius:16px 16px 4px 16px;background:#fff;color:#0c2038;font-size:12px;font-weight:900;box-shadow:0 14px 34px rgba(0,0,0,.25)}
@keyframes foxFloat{50%{transform:translateY(-8px) rotate(1.5deg)}}@keyframes earTwitch{0%,80%,100%{transform:rotate(0)}86%{transform:rotate(-9deg)}90%{transform:rotate(6deg)}}@keyframes wink{0%,90%,94%,100%{transform:scaleY(1)}92%{transform:scaleY(.08)}}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:10px 0 15px}.section-head h2{margin:0;font-size:clamp(24px,4vw,36px)}.section-head p{margin:3px 0 0;color:var(--muted);font-size:13px}.garage-link{border:1px solid var(--line);background:rgba(255,255,255,.06);border-radius:14px;padding:10px 13px;cursor:pointer;font-weight:900}
.car-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:6px 0 28px}.car-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:27px;background:linear-gradient(155deg,rgba(255,255,255,.085),rgba(255,255,255,.018));padding:18px;min-height:350px;box-shadow:var(--shadow);transition:.2s}.car-card:hover{transform:translateY(-4px);border-color:rgba(49,199,255,.48)}.car-card.locked::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(4,11,21,.62));pointer-events:none}.card-top{display:flex;align-items:start;justify-content:space-between;gap:12px;position:relative;z-index:2}.car-card h3{margin:0;font-size:24px}.car-card p{margin:5px 0 0;color:var(--muted);font-size:13px}.badge{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid rgba(49,199,255,.25);background:rgba(49,199,255,.08);color:#bfefff;border-radius:999px;font-weight:900;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.badge.lock{color:#ffd5a8;border-color:rgba(255,138,36,.3);background:rgba(255,138,36,.1)}
.car-preview{height:205px;display:grid;place-items:center;margin:8px -10px 4px;position:relative;z-index:1}.car-preview svg{width:100%;max-height:205px;filter:drop-shadow(0 22px 18px rgba(0,0,0,.35))}.car-stats{display:flex;gap:8px;flex-wrap:wrap;margin:7px 0 14px;position:relative;z-index:2}.mini-stat{background:rgba(255,255,255,.055);border:1px solid var(--line);border-radius:10px;padding:6px 8px;font-size:10px;color:#c7d6e5;font-weight:800}.btn{position:relative;z-index:3;border:0;border-radius:15px;padding:13px 16px;cursor:pointer;font-weight:1000;letter-spacing:.015em;transition:.16s}.btn:active{transform:scale(.985)}.btn-primary{width:100%;color:#03101d;background:linear-gradient(135deg,#36d4ff,#0b84ff);box-shadow:0 11px 26px rgba(8,120,255,.28)}.btn-primary:hover{filter:brightness(1.08)}.btn-secondary{background:#1a3555;border:1px solid var(--line)}.btn-orange{width:100%;background:linear-gradient(135deg,#ffb25c,#ff7d18);color:#241000}.btn:disabled{opacity:.45;cursor:not-allowed}
.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;align-items:start}.game-panel{background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.018));border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.game-head{padding:16px 18px 13px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line)}.game-head h2{margin:0;font-size:clamp(22px,3.5vw,34px)}.game-head p{margin:5px 0 0;color:var(--muted);font-size:13px}.stage-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:rgba(49,199,255,.09);border:1px solid rgba(49,199,255,.18);font-size:28px}
.scene-wrap{position:relative;min-height:clamp(390px,57vw,650px);overflow:hidden;touch-action:none;user-select:none;background:#122238;isolation:isolate;cursor:none}.workshop{position:absolute;inset:0;overflow:hidden;background:linear-gradient(#1b3048 0 62%,#263444 62% 64%,#131b27 64%);z-index:0}.workshop::before{content:"";position:absolute;inset:64% -15% -30%;background:repeating-linear-gradient(90deg,rgba(255,255,255,.1) 0 2px,transparent 2px 86px),repeating-linear-gradient(0deg,rgba(255,255,255,.08) 0 2px,transparent 2px 70px);transform:perspective(450px) rotateX(57deg);transform-origin:top;opacity:.46}.wall-panels{position:absolute;inset:0 0 36%;background:repeating-linear-gradient(90deg,transparent 0 118px,rgba(255,255,255,.045) 118px 120px),linear-gradient(180deg,rgba(255,255,255,.04),transparent)}.workshop-logo{position:absolute;top:7%;left:50%;transform:translateX(-50%);width:min(260px,32%);height:110px;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(0,0,0,.3));opacity:.88}.bay-sign{position:absolute;top:6%;left:4%;background:#07111f;border:2px solid rgba(255,255,255,.3);padding:8px 12px;border-radius:8px;font-size:11px;font-weight:1000;letter-spacing:.12em}.overhead-light{position:absolute;top:2%;width:25%;height:8px;background:#d7f5ff;box-shadow:0 0 18px #b9ecff,0 25px 80px rgba(154,231,255,.26);border-radius:20px}.overhead-light.l1{left:13%}.overhead-light.l2{right:13%}.toolbox{position:absolute;left:3%;bottom:17%;width:12%;min-width:74px;height:23%;min-height:100px;border-radius:8px;background:linear-gradient(#e84747 0 18%,#9d2424 18%);box-shadow:0 12px 18px rgba(0,0,0,.32)}.toolbox::before{content:"";position:absolute;inset:27% 8% 9%;background:repeating-linear-gradient(180deg,#6f1616 0 10%,#bf3333 10% 16%);border-radius:4px}.toolbox::after{content:"";position:absolute;left:10%;right:10%;top:9%;height:5px;border-radius:3px;background:#1d2530}.shelf{position:absolute;right:2%;bottom:20%;width:11%;height:24%;border:5px solid #526477;border-top-width:8px;background:repeating-linear-gradient(180deg,transparent 0 31%,#526477 31% 35%)}.shelf span{position:absolute;width:28%;height:12%;border-radius:4px;background:#f4aa36;bottom:4%;left:8%;box-shadow:36px -40px 0 #3d91cf,56px -79px 0 #d75f5f}.workshop.paint{background:linear-gradient(#d9e3e9 0 62%,#b8c6cf 62% 64%,#8c9aa5 64%)}.workshop.paint .wall-panels{background:repeating-linear-gradient(90deg,rgba(30,54,67,.08) 0 2px,transparent 2px 90px),repeating-linear-gradient(180deg,transparent 0 54px,rgba(20,42,56,.06) 54px 56px)}.workshop.paint .toolbox,.workshop.paint .shelf{opacity:.18}.booth-vent{display:none}.workshop.paint .booth-vent{display:block;position:absolute;right:3%;top:12%;width:18%;height:32%;border:8px solid #8999a4;background:repeating-linear-gradient(0deg,#60727f 0 5px,#aab7bf 5px 10px);opacity:.7}.workshop.wash{background:linear-gradient(#1c4962 0 62%,#355b6e 62% 64%,#1b303c 64%)}.workshop.wash .wall-panels{background:repeating-linear-gradient(90deg,transparent 0 75px,rgba(170,225,255,.12) 75px 77px),repeating-linear-gradient(180deg,transparent 0 64px,rgba(170,225,255,.1) 64px 66px)}
.car-stage{position:absolute;z-index:4;inset:10% 2% 4%;display:grid;place-items:center}.car-stage svg{width:min(970px,99%);max-height:96%;overflow:visible;filter:drop-shadow(0 26px 22px rgba(0,0,0,.46))}.floor-shadow{position:absolute;z-index:2;left:20%;right:18%;bottom:11%;height:10%;border-radius:50%;background:rgba(0,0,0,.43);filter:blur(16px)}
.tool-cursor{position:absolute;z-index:12;pointer-events:none;width:64px;height:64px;transform:translate(-16px,-20px);display:grid;place-items:center;font-size:42px;filter:drop-shadow(0 9px 7px rgba(0,0,0,.4));opacity:0;transition:opacity .12s}.scene-wrap.pointer-active .tool-cursor{opacity:1}.tool-cursor.spray{font-size:0;width:90px;height:70px}.tool-cursor.wash-tool{font-size:0;width:150px;height:92px;transform:translate(-14px,-28px)}.spray-gun-shape{position:relative;width:56px;height:32px;background:#bfc9d2;border:3px solid #303d4a;border-radius:12px 9px 8px 12px;transform:rotate(-10deg)}.spray-gun-shape::before{content:"";position:absolute;right:-20px;top:7px;width:24px;height:9px;background:#aab4bd;border:3px solid #303d4a;border-left:0;border-radius:0 8px 8px 0}.spray-gun-shape::after{content:"";position:absolute;left:14px;top:26px;width:14px;height:28px;background:#8d99a4;border:3px solid #303d4a;border-radius:0 0 8px 8px;transform:skew(-10deg)}.paint-cup{position:absolute;left:8px;top:-24px;width:28px;height:22px;background:#e7eef3;border:3px solid #303d4a;border-radius:8px 8px 4px 4px}.washer-gun{position:relative;width:115px;height:72px;transform:rotate(-13deg)}.washer-body{position:absolute;left:15px;top:24px;width:58px;height:23px;border-radius:14px;background:linear-gradient(180deg,#f4fafc,#9aadb8);border:3px solid #2d4250;box-shadow:inset 0 -4px 0 rgba(0,0,0,.12)}.washer-handle{position:absolute;left:35px;top:40px;width:16px;height:30px;border-radius:0 0 10px 10px;background:linear-gradient(180deg,#717e87,#44525d);border:3px solid #2d4250;border-top:0;transform:skew(-14deg)}.washer-nozzle{position:absolute;left:69px;top:27px;width:34px;height:11px;background:linear-gradient(180deg,#e9f4f8,#95aaba);border:3px solid #2d4250;border-left:0;border-radius:0 9px 9px 0}.washer-hose{position:absolute;left:-1px;top:43px;width:42px;height:32px;border:7px solid #1f2f3d;border-right:0;border-top:0;border-radius:0 0 0 26px;opacity:.92}.water-jet{position:absolute;left:101px;top:29px;width:70px;height:16px;border-radius:20px;background:linear-gradient(90deg,rgba(180,238,255,0),rgba(205,248,255,.72) 20%,rgba(124,228,255,.92) 58%,rgba(255,255,255,.92));box-shadow:0 0 10px rgba(108,224,255,.65),0 0 18px rgba(108,224,255,.28);transform-origin:left center;transform:scaleX(.35);opacity:0;filter:blur(.1px)}.water-jet::before,.water-jet::after{content:"";position:absolute;inset:-2px 0 -2px auto;border-radius:20px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.85));width:55px;opacity:.65}.water-jet::after{top:4px;height:7px;width:64px;filter:blur(2px);opacity:.35}.water-spray{position:absolute;left:148px;top:26px;width:26px;height:26px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.95) 0 10%,rgba(115,228,255,.55) 30%,rgba(115,228,255,0) 72%);filter:blur(1px);opacity:0;transform:scale(.55)}.spray-a{top:18px}.spray-b{top:27px}.spray-c{top:35px}.scene-wrap.washing .water-jet,.scene-wrap.washing .water-spray{opacity:1}.scene-wrap.washing .water-jet{animation:waterPulse .22s linear infinite}.scene-wrap.washing .spray-a{animation:mistPulse .32s ease-out infinite}.scene-wrap.washing .spray-b{animation:mistPulse .28s ease-out infinite .08s}.scene-wrap.washing .spray-c{animation:mistPulse .36s ease-out infinite .16s}@keyframes waterPulse{0%{transform:scaleX(.38) scaleY(.82)}50%{transform:scaleX(1) scaleY(1.08)}100%{transform:scaleX(.5) scaleY(.9)}}@keyframes mistPulse{0%{transform:translate(0,0) scale(.35);opacity:.12}40%{opacity:.5}100%{transform:translate(12px,0) scale(1.18);opacity:0}}
.particle{position:absolute;z-index:11;width:10px;height:10px;border-radius:50%;pointer-events:none;will-change:transform,opacity}.water-drop{background:radial-gradient(circle at 35% 30%,#fff 0 16%,#bff4ff 17% 45%,#4ec8ff 72%,#1f89d0 100%);box-shadow:0 0 10px rgba(124,222,255,.75)}.water-drop.oval{border-radius:56% 44% 62% 38%/35% 36% 64% 65%;filter:blur(.2px)}.water-mist{background:radial-gradient(circle,rgba(216,249,255,.75),rgba(106,216,255,.25) 55%,rgba(106,216,255,0) 72%);filter:blur(1px)}.splash-ring{position:absolute;z-index:10;width:58px;height:58px;border:3px solid rgba(173,240,255,.8);border-radius:50%;pointer-events:none;box-shadow:0 0 12px rgba(122,224,255,.22) inset}.paint-drop{background:var(--particle-color,#0b84ff)}.dust-drop{background:#d7c9a6}.spark-drop{background:#fff0a0;box-shadow:0 0 8px #ffc64a}
.sidebar{display:flex;flex-direction:column;gap:13px}.side-card{background:linear-gradient(155deg,#10243d,#0b1a2c);border:1px solid var(--line);border-radius:21px;padding:15px}.side-card h3{margin:0 0 9px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#c8d8e7}.instruction{color:var(--muted);line-height:1.45;font-size:13px;margin:0}.tool-pill{display:flex;align-items:center;gap:10px;padding:10px 11px;background:#142e4d;border-radius:13px;font-size:13px;font-weight:900}.tool-pill span:first-child{font-size:22px}.progress-label{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin-bottom:8px}.progress-track{height:12px;background:#1c3552;border-radius:99px;overflow:hidden}.progress-bar{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#0784ff,#39d6ff);transition:width .16s}.color-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.swatch{aspect-ratio:1;border:3px solid transparent;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28),0 5px 12px rgba(0,0,0,.25)}.swatch.active{border-color:white;transform:scale(1.08)}.tip{color:#d7e5f2;font-size:12px;line-height:1.45;border-left:3px solid var(--cyan);padding-left:9px;margin:0}.damage-list{display:grid;gap:7px}.damage-item{display:flex;justify-content:space-between;gap:10px;padding:8px 9px;border-radius:11px;background:#132c49;font-size:12px}.damage-item.done{opacity:.45;text-decoration:line-through}
.dirt{transition:opacity .2s,transform .2s;transform-box:fill-box;transform-origin:center}.dirt.cleaned{opacity:0;transform:scale(.2);pointer-events:none}.dent-target,.crack-target{cursor:pointer;transform-box:fill-box;transform-origin:center;transition:.18s}.dent-target.hit,.crack-target.hit{animation:repairPulse .25s}.dent-target.fixed,.crack-target.fixed{opacity:0;transform:scale(.2);pointer-events:none}@keyframes repairPulse{50%{transform:scale(1.18)}}.sand-mark{transition:opacity .08s}.sparkle{opacity:.22;transition:.15s;transform-box:fill-box;transform-origin:center}.sparkle.shined{opacity:1;transform:scale(1.25)}
.toast{position:fixed;z-index:100;left:50%;bottom:max(26px,env(safe-area-inset-bottom));transform:translate(-50%,18px);padding:11px 15px;border-radius:14px;background:#fff;color:#071323;font-weight:1000;font-size:13px;box-shadow:0 18px 55px rgba(0,0,0,.4);opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
.results{max-width:1080px;margin:12px auto 30px;width:100%;text-align:center}.results h1{font-size:clamp(38px,7vw,70px);margin:12px 0 7px}.stars{font-size:clamp(30px,6vw,54px);letter-spacing:4px;filter:drop-shadow(0 5px 12px rgba(255,200,50,.25))}.reward{display:inline-flex;align-items:center;gap:10px;margin:12px 0 22px;padding:10px 15px;border:1px solid rgba(255,201,78,.25);background:rgba(255,201,78,.08);border-radius:999px;font-weight:1000;color:#ffe29a}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:18px 0}.compare-card{position:relative;overflow:hidden;border-radius:24px;border:1px solid var(--line);background:#0c1b2e;text-align:left}.compare-label{position:absolute;z-index:4;top:13px;left:13px;padding:6px 9px;border-radius:999px;background:rgba(4,13,24,.78);border:1px solid var(--line);font-size:10px;font-weight:1000;letter-spacing:.1em}.compare-scene{height:300px;display:grid;place-items:center;background:linear-gradient(#263d54 0 64%,#111b27 64%)}.compare-scene svg{width:96%;filter:drop-shadow(0 22px 17px rgba(0,0,0,.4))}.result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.result-actions .btn{min-width:180px}.confetti-layer{position:fixed;z-index:90;inset:0;pointer-events:none;overflow:hidden}.confetti{position:absolute;top:-20px;width:10px;height:16px;border-radius:2px;animation:confettiFall var(--dur) linear forwards}@keyframes confettiFall{to{transform:translate(var(--drift),110vh) rotate(900deg);opacity:.9}}
.garage-screen{max-width:1080px;margin:0 auto;width:100%}.garage-banner{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:25px;background:linear-gradient(135deg,rgba(8,120,255,.15),rgba(49,199,255,.05));margin:8px 0 20px}.garage-banner h1{font-size:clamp(32px,6vw,58px);margin:0}.garage-banner p{color:var(--muted);margin:7px 0 0}.garage-stats{display:flex;gap:9px;flex-wrap:wrap}.big-stat{min-width:105px;text-align:center;border:1px solid var(--line);border-radius:17px;padding:12px;background:rgba(255,255,255,.06)}.big-stat b{display:block;font-size:24px}.big-stat small{color:var(--muted);font-weight:800}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.garage-car{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.045);overflow:hidden}.garage-car .visual{height:210px;display:grid;place-items:center;padding:8px;background:radial-gradient(circle at 50% 60%,rgba(49,199,255,.09),transparent 45%)}.garage-car svg{width:100%;filter:drop-shadow(0 18px 14px rgba(0,0,0,.4))}.garage-car .info{padding:15px}.garage-car h3{margin:0}.garage-car p{margin:5px 0 0;color:var(--muted);font-size:12px}.locked-cover{filter:grayscale(1) brightness(.52);opacity:.7}
@media(max-width:950px){.game-layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:repeat(2,1fr)}.side-card:last-child{grid-column:1/-1}.hero-row{grid-template-columns:1fr 150px}.car-grid,.collection-grid{grid-template-columns:repeat(2,1fr)}.car-card:last-child,.garage-car:last-child{grid-column:span 2;max-width:520px;width:100%;justify-self:center}}
@media(max-width:680px){.topbar{grid-template-columns:1fr auto;gap:8px}.stage-tracker{grid-column:1/-1;grid-row:2}.brand img{width:105px;height:38px}.game-name{display:none}.top-actions{gap:5px}.coin-pill,.icon-btn{height:38px}.icon-btn{width:38px}.app{padding:14px}.hero{margin-top:18px}.hero-row{grid-template-columns:1fr}.fox-helper{width:135px;height:125px}.fox-bubble{right:65%;width:140px}.car-grid,.collection-grid{grid-template-columns:1fr}.car-card:last-child,.garage-car:last-child{grid-column:auto}.game-head{padding:13px}.scene-wrap{min-height:410px}.sidebar{grid-template-columns:1fr 1fr}.compare-grid{grid-template-columns:1fr}.compare-scene{height:235px}.garage-banner{grid-template-columns:1fr}.footer{display:none}.toolbox{opacity:.55}.shelf{opacity:.4}}
@media(orientation:landscape) and (max-height:650px){.topbar{padding-top:6px;padding-bottom:6px}.brand img{height:34px}.scene-wrap{min-height:calc(100dvh - 160px);max-height:610px}.game-layout{grid-template-columns:minmax(0,1fr) 250px}.sidebar{display:flex}.footer{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
/* V1.2 — lightweight Unity-like 3D car presentation */
.car-preview-3d{height:215px;perspective:900px;overflow:visible}
.car3d-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;filter:drop-shadow(0 24px 20px rgba(0,0,0,.4))}
.car3d-canvas:active{cursor:grabbing}
.garage-car .visual .car3d-canvas{width:100%;height:100%}
.stage-3d-intro{position:absolute;z-index:7;left:7%;right:7%;top:13%;width:86%;height:72%;opacity:0;pointer-events:none;transform:translateX(-18%) scale(.78);filter:drop-shadow(0 32px 24px rgba(0,0,0,.52));transition:opacity .28s ease,transform .72s cubic-bezier(.18,.86,.22,1)}
.stage-3d-intro.show{opacity:1;transform:translateX(0) scale(1)}
.stage-3d-intro.depart{opacity:0;transform:translateX(14%) scale(1.05)}
.car-stage{transition:opacity .42s ease,transform .58s cubic-bezier(.18,.86,.22,1);transform-origin:50% 70%}
.car-stage.stage-waiting{opacity:0;transform:translateY(16px) scale(.9) perspective(900px) rotateY(-10deg)}
.car-stage.stage-arrive{animation:stageCarSettle .72s cubic-bezier(.2,.9,.2,1)}
@keyframes stageCarSettle{0%{opacity:.15;transform:translateY(20px) scale(.91) perspective(900px) rotateY(-10deg)}60%{opacity:1;transform:translateY(-4px) scale(1.018) perspective(900px) rotateY(2deg)}100%{opacity:1;transform:none}}
@media(max-width:680px){.car-preview-3d{height:190px}.stage-3d-intro{left:2%;right:2%;width:96%;top:17%;height:62%}}

/* V1.3 3D repair scene */
.car3d-wrap{inset:8% 2% 3%;display:block}
.car3d-canvas{width:100%;height:100%;display:block}
.scene-ui{position:absolute;z-index:13;left:18px;right:18px;bottom:16px;display:flex;justify-content:space-between;gap:12px;align-items:flex-end;pointer-events:none}
.scene-action-btn,.panel-chip{pointer-events:auto}
.scene-action-btn{background:rgba(7,17,31,.82);border:1px solid rgba(255,255,255,.14);color:#eaf5ff;border-radius:14px;padding:10px 14px;font-weight:900;cursor:pointer;box-shadow:0 10px 25px rgba(0,0,0,.25)}
.scene-action-btn.rotate-active{background:linear-gradient(135deg,#36d4ff,#0b84ff);color:#04111d}
.panel-chip{margin-left:auto;background:rgba(7,17,31,.72);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:10px 13px;font-weight:800;color:#d4e9f8;font-size:12px;max-width:min(55%,280px);text-align:right;backdrop-filter:blur(5px)}
@media(max-width:680px){.scene-ui{left:12px;right:12px;bottom:12px;flex-direction:column;align-items:stretch}.panel-chip{max-width:none;text-align:left;margin-left:0}.scene-action-btn{width:fit-content}}

/* V2 real Sketchfab Opel Vivaro */
.model-loading{position:absolute;z-index:20;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:radial-gradient(circle at 50% 55%,rgba(17,48,72,.82),rgba(5,14,25,.94));color:#eaf7ff;pointer-events:none;transition:opacity .3s ease}.model-loading::before{content:"";width:54px;height:54px;border:5px solid rgba(255,255,255,.14);border-top-color:#36d4ff;border-radius:50%;animation:modelSpin .8s linear infinite}.model-loading b{font-size:16px}.model-loading span{font-size:12px;color:#9fdcf4;font-weight:900}.model-loading.loaded{opacity:0}@keyframes modelSpin{to{transform:rotate(360deg)}}
.car3d-canvas{touch-action:none;cursor:crosshair}.scene-wrap:has(.rotate-active) .car3d-canvas{cursor:grab}.scene-wrap:has(.rotate-active):active .car3d-canvas{cursor:grabbing}
.scene-control-row{display:flex;gap:8px;align-items:center;pointer-events:auto}.scene-action-btn.small{width:42px;height:42px;padding:0;display:grid;place-items:center;font-size:22px}
@media(max-width:680px){.scene-control-row{align-self:flex-start}}
