.brom-site-return{position:fixed;right:20px;top:20px;z-index:90;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 15px;background:#f7f9f2;color:#162c22;border:1px solid #dce2d6;border-radius:6px;font:600 13px Arial,'Malgun Gothic',sans-serif;text-decoration:none;white-space:nowrap}.brom-site-return:focus-visible{outline:3px solid #558abb;outline-offset:4px}body.gallery-started .brom-site-return{position:static;transform:none;flex-shrink:0;background:#132722d9;color:#fff;border-color:#ffffff40}#hud>header{position:relative;z-index:8}.desktop-help{bottom:20px}#fatal a{color:#fff;display:inline-flex;align-items:center;min-height:48px;margin-top:18px}.intro-top .episode{margin-right:140px}
@media(max-width:700px){#hud>header{gap:8px;padding-inline:14px}#hud>header .place,#hud>header .header-rule{display:none}#hud>header .brand{margin-right:auto;font-size:24px}body.gallery-started .brom-site-return{padding:0 10px;font-size:12px;min-height:44px}#hud>header .icon-button{min-height:44px;padding:0 10px;font-size:12px}.brom-site-return{right:14px;top:14px;font-size:12px}.intro-top .episode{display:none}.intro-copy{left:24px;right:24px}.intro-copy h1{font-size:clamp(36px,10vw,52px)}.intro-copy .primary{width:100%;min-width:0}#characterPicker{max-width:100%}.finder-fields input,.finder-fields select{font-size:16px!important}#joystick,#forward,.look-hint{opacity:1}.overlay-card .muted,.finder-note{font-size:13px}.intro-instructions{font-size:12px}}
@media(max-width:700px) and (max-height:740px){.intro-copy{bottom:78px}.intro-copy h1{margin:14px 0;font-size:38px}.intro-copy>p{font-size:13px;margin:10px 0}.intro-copy .primary{margin-top:14px}.intro-foot{bottom:12px}.intro-instructions{margin-top:9px}}
@media(max-height:520px) and (orientation:landscape){#intro{overflow:auto;pointer-events:auto}.intro-copy{position:relative;left:auto;right:auto;top:auto;bottom:auto;transform:none;margin:78px 24px 50px;max-width:540px}#intro .intro-foot{display:none}#characterPicker{max-width:100%}.intro-copy h1{font-size:32px}.intro-copy .primary{margin-top:12px}body.gallery-started .brom-site-return{min-height:44px}}

.gallery-cover #hud,.gallery-cover #toast,.gallery-cover #runChecks,.gallery-cover #reviewScene,.gallery-cover #coverScene,.gallery-cover .brom-site-return,.gallery-cover #stockRefresh{visibility:hidden!important}

#jumpBtn{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}

@media(max-width:700px){#walkHint{display:none}.turn-controls button{min-height:44px;font-size:11px}.turn-controls{bottom:calc(175px + env(safe-area-inset-bottom));top:auto}#nearCard{bottom:calc(231px + env(safe-area-inset-bottom));max-height:190px;overflow:auto}.near-price button{min-height:44px;font-size:12px}#nearCard h2{font-size:16px}.sound-button{min-height:44px;bottom:calc(4px + env(safe-area-inset-bottom))}#zoneRail{top:193px;max-height:calc(100dvh - 430px);overflow:auto}.rail-heading button{min-height:44px;min-width:36px}.rail-heading strong{font-size:12px}#foldRail{min-width:48px}#storeIntro{font-size:11px}#storeIntro span{display:none}}
@media(max-width:360px){#joystick{left:20px;width:94px;height:94px}#stick{left:26px;top:26px}#joystick .joy-label{top:102px}#fastWalk{width:74px;right:96px}#forward{right:20px;width:60px;height:60px}#jumpBtn{right:23px}#hud>header{gap:5px;padding-inline:10px}#hud>header .brand{font-size:22px}#hud>header .icon-button{padding-inline:8px}body.gallery-started .brom-site-return{padding-inline:8px}}

#contextActions{display:contents}
@media(max-width:700px){#contextActions{position:absolute;left:16px;right:16px;bottom:calc(226px + env(safe-area-inset-bottom));display:flex;justify-content:center;gap:8px;pointer-events:auto}#contextActions>button{position:static;transform:none;min-height:44px;max-width:170px;flex:1;padding:8px 10px;font-size:12px;white-space:normal}#nearCard{bottom:calc(282px + env(safe-area-inset-bottom))}#mapCars{grid-template-columns:1fr}#mapCars button strong{font-size:14px}#mapCars button small{font-size:11px}.filters select{font-size:16px;min-height:44px}}

#hud.has-rail #nearCard,#hud.has-rail #vehicleLabels{display:none}
@media(max-width:700px){#railPrev,#railNext{display:none}.rail-heading strong{font-size:14px;white-space:nowrap}#zoneRail{max-height:calc(100dvh - 440px)}#storeIntro{display:none}}

#dealerDialog .consultation{position:relative;padding-top:65px}#closeDealerDialog{width:auto;min-width:84px;min-height:44px;font-size:16px;padding:8px 12px;z-index:2}#dealerPortrait{margin-top:16px}.saved-site-link{display:block;text-align:center;color:#fff!important;background:#234a38;padding:16px;min-height:50px;text-decoration:none;margin-top:24px;font-size:16px}.gallery-cover #lobbyScene{display:none!important}

#hoodOutside{position:absolute!important;bottom:auto!important;right:auto!important;transform:none!important;z-index:7;min-height:46px;min-width:150px;padding:11px 16px;background:#fafbf4f5;color:#1d3629;border:1px solid #718b71;border-radius:8px;box-shadow:0 3px 14px #091e231c;white-space:nowrap;font-size:14px;font-weight:600}#hoodOutside::before{content:'↗';margin-right:9px;color:#526d55;font-size:17px}#hoodOutside::after{content:'';position:absolute;left:18px;top:100%;height:18px;width:1px;background:#a0b398}#hoodOutside:hover{background:#e6ede0}#hoodOutside:focus-visible{outline:3px solid #769184;outline-offset:4px}

/* Stable mobile camera controls and a calm, full-body restroom transition. */
.wc-interior #wcActor{left:29%;bottom:2%;width:22%;height:66%;transform:translateX(0);transform-origin:50% 100%;transition:transform 1.2s ease-in-out,opacity .45s .5s}
.wc-interior #wcAvatar{display:block;object-fit:contain;object-position:center bottom;filter:drop-shadow(2px 3px 2px #0003)}
#wcInside[data-phase=enter] #wcActor{animation:wc-enter 1.5s ease-in-out both}
#wcInside[data-phase=occupied] #wcActor,#wcInside[data-phase=flush] #wcActor{transform:translateX(105%);opacity:0}
#wcInside[data-phase=exit] #wcActor{animation:wc-return 1.7s ease-in-out both;opacity:1;transform:translateX(0)}
#wcInside[data-phase=exit] #wcActor:after{content:'🙂 ✨';position:absolute;left:0;right:0;top:-10%;text-align:center;font-size:clamp(18px,4vw,28px);white-space:nowrap}
#wcInside[data-phase=exit] #wcEventCaption{color:#235b3c;font-weight:700;font-size:15px}
@keyframes wc-enter{0%{transform:translateX(-36%);opacity:0}18%{opacity:1}35%{transform:translate(0,-1%)}65%{transform:translate(32%,0)}100%{transform:translate(55%,-1%)}}
@keyframes wc-return{0%{transform:translateX(105%);opacity:0}20%{opacity:1}45%{transform:translate(54%,-1%)}75%{transform:translate(18%,0)}100%{transform:translateX(0)}}
#freshMood{position:fixed;z-index:12;left:50%;top:calc(env(safe-area-inset-top) + 108px);transform:translateX(-50%);display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);width:max-content;padding:13px 19px;border:1px solid #bad7ba;border-radius:18px;background:#f5ffefed;color:#244b35;box-shadow:0 7px 25px #10291d1c;pointer-events:none}
#freshMood>span{font-size:31px}#freshMood strong{display:block;font-size:15px}#freshMood small{display:block;font-size:12px;margin-top:5px;color:#537159}
#freshMood.animated>span{animation:fresh-smile 1.1s ease-in-out 3}@keyframes fresh-smile{50%{transform:translateY(-5px) rotate(-6deg)}}
@media(max-width:700px){.wc-card{padding:20px 17px}.wc-interior #wcActor{width:24%;height:70%}#freshMood{top:calc(env(safe-area-inset-top) + 150px);padding:11px 14px}#freshMood strong{font-size:14px}#freshMood small{font-size:11px}}
@media(prefers-reduced-motion:reduce){#wcInside #wcActor,#freshMood.animated>span{animation:none!important;transition:none!important}}

/* Keep the vehicles in focus; secondary actions live behind More. */
#hud>header #findVehicle{position:static;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;margin:0;border-radius:8px;padding:0 12px;box-shadow:none;font-size:12px;background:#132722a8;color:#fff}
#moreBtn{font-size:24px;line-height:1;letter-spacing:2px;min-width:44px;padding:0 10px}
.gallery-options{max-width:420px}.gallery-options h2{padding-right:25px}
.options-actions{display:grid;gap:10px;margin:24px 0}
.options-actions #askDealer,.options-actions #soundBtn{position:static;transform:none;display:flex;align-items:center;justify-content:space-between;min-height:50px;width:100%;border:1px solid #cbd5cc;border-radius:8px;padding:12px 16px;background:#fff;color:#1c392d;font-size:14px;text-align:left;box-shadow:none}
.options-actions #soundBtn[aria-pressed=false]{color:#657068}
.touch-instructions{display:none}.keyboard-instructions{font-size:12px;color:#53685c;line-height:1.8}
@media(max-width:700px),(pointer:coarse){
 #hud>header{gap:6px;padding:calc(10px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 4px max(14px,env(safe-area-inset-left));background:linear-gradient(#122820a3,transparent)}
 #hud>header .place,#hud>header .header-rule{display:none}#hud>header .brand{margin-right:auto;font-size:24px}
 #hud>header .icon-button,#hud>header #findVehicle{min-width:44px;min-height:44px;padding:0 9px;background:#10271e70;border:1px solid #ffffff25;backdrop-filter:none}
 #hud>header #findVehicle span{display:none}#hud>header #findVehicle svg{pointer-events:none}
 body.gallery-started .brom-site-return{min-height:44px;padding:0 8px;font-size:11px;background:transparent;border-color:transparent}
 .location{margin:0 max(16px,env(safe-area-inset-left));font-size:10px;opacity:.85}.location .demo-chip,#floorBadge,#reticle,#forward,#fastWalk{display:none}
 #joystick{display:block;left:max(24px,env(safe-area-inset-left));bottom:calc(35px + env(safe-area-inset-bottom));width:96px;height:96px;border:1px solid #ffffff50;background:#183b2820;box-shadow:none;opacity:.65;transition:opacity .15s,background .15s;user-select:none;-webkit-user-select:none}
 #joystick .joy-ring{display:none}#stick{left:29px;top:29px;width:36px;height:36px;background:#f3f5e9bb;border:1px solid #fff9;box-shadow:0 2px 8px #0002}
 #joystick.held{opacity:1;background:#183b2840}#joystick.fast{border-color:#e4f1d9bb}#joystick .joy-label{top:104px;font-size:10px;color:#fff;text-shadow:0 1px 4px #193427;letter-spacing:.5px}
 #jumpBtn{display:block;right:max(24px,env(safe-area-inset-right));bottom:calc(39px + env(safe-area-inset-bottom));width:48px;height:48px;min-height:48px;padding:3px;border-radius:14px;background:#1c392b55;border:1px solid #ffffff50;font-size:19px;color:#fff;box-shadow:none}#jumpBtn small{font-size:9px}
 #gestureHint:not([hidden]){display:block;right:max(24px,env(safe-area-inset-right));bottom:calc(116px + env(safe-area-inset-bottom));font-size:11px;max-width:200px;color:#fff;text-shadow:0 1px 5px #10261d;pointer-events:none;line-height:1.6}
 #zoneRail{top:calc(88px + env(safe-area-inset-top));max-height:min(290px,calc(100dvh - 300px))}#reopenRail{top:calc(92px + env(safe-area-inset-top))}
 #nearCard{bottom:calc(205px + env(safe-area-inset-bottom))}#contextActions{bottom:calc(150px + env(safe-area-inset-bottom))}
 #hud .person-name{display:none}#hud.has-rail #gestureHint{visibility:hidden}
 .touch-instructions{display:block;border-top:1px solid #d7ded6;padding-top:6px}.touch-instructions p{font-size:13px;color:#53685c;line-height:1.8}.touch-instructions strong{display:block;font-size:14px;color:#213c2b;margin-bottom:4px}.keyboard-instructions{display:none}
}
@media(max-width:360px){#hud>header{gap:3px;padding-inline:10px}#hud>header .brand{font-size:22px}#hud>header .icon-button{padding-inline:7px}body.gallery-started .brom-site-return{font-size:10px;padding-inline:4px}#joystick{left:20px}}
@media(max-height:520px) and (pointer:coarse){#joystick{bottom:calc(22px + env(safe-area-inset-bottom));width:86px;height:86px}#stick{left:24px;top:24px}#joystick .joy-label{top:90px}#jumpBtn{bottom:calc(25px + env(safe-area-inset-bottom))}#zoneRail{left:50%;width:min(420px,60vw);max-height:calc(100dvh - 200px)}#gestureHint:not([hidden]){bottom:calc(87px + env(safe-area-inset-bottom))}}

/* A light frame keeps the real showroom visible around the inventory. */
#zoneRail{background:#e8eee3f5;color:#172a20;border:1px solid #82948280;box-shadow:0 5px 18px #14261b18}
#zoneRail .rail-heading strong{color:#172a20}#zoneRail .rail-heading>span{color:#546456}
#zoneRail .rail-heading button{background:#f9fbf5;color:#223b2a;border:1px solid #85998466;border-radius:6px}
#zoneRail .rail-card{background:#fff;border:1px solid #24372b38;border-radius:9px;box-shadow:0 2px 5px #10231b0b;color:#172a20}
#zoneRail .rail-card:hover{background:#f9fbf6;border-color:#506c54}#zoneRail .rail-price{color:#17432c}
#zoneRail .store-intro{color:#304a35;border-top-color:#7e967c55}#zoneRail .store-intro span{color:#4b6650}

/* Photograph-led search, with the same four filters on both entry points. */
.primary-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.finder-car img{width:160px;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.finder-car{border-color:#b7c0b2;background:#fff}#mapCars button{display:flex;gap:12px;align-items:center;padding:10px;background:#fff;border:1px solid #c8d0c1}#mapCars button img{width:112px;height:78px;object-fit:cover;border-radius:5px}#mapCars button span{flex:1;text-align:left}#mapCars button strong{display:block;font-size:14px;line-height:1.5}#mapCars button small{font-size:11px}#mapCars{gap:10px}.gallery-seated #joystick,.gallery-seated #jumpBtn,.gallery-seated .desktop-help,.gallery-seated #contextActions,.gallery-seated #gestureHint,.gallery-seated #walkHint,.gallery-seated #nearCard{display:none!important}
#dealerGuide{display:flex;align-items:center;gap:16px;z-index:35;pointer-events:auto;width:min(480px,calc(100% - 28px));box-sizing:border-box}#dealerGuide[hidden]{display:none!important}#guideText{flex:1;min-width:0;line-height:1.65;overflow-wrap:anywhere}#dealerGuide #cancelGuide{position:static;flex:none;margin:0;min-height:44px;white-space:nowrap;pointer-events:auto}#dealerArrival{z-index:35;pointer-events:auto}@media(max-width:700px){#dealerGuide{top:88px;padding:12px 14px;gap:10px;font-size:12px}#dealerGuide #cancelGuide{padding:10px;font-size:12px}#dealerArrival{top:88px}#dealerArrival strong{font-size:17px}}
.gallery-dev-button,body:has(#runChecks)>button[id$="Scene"]{position:relative!important;top:auto!important;left:auto!important;z-index:120!important;font-size:10px!important;padding:3px!important}body:has(#runChecks){padding-top:0}#runChecks{font-size:10px!important}
/* Test shortcuts must not intercept the same dialogs being verified. */
body:has(.overlay:not([hidden]))>.gallery-dev-button,
body:has(.overlay:not([hidden]))>button[id$="Scene"],
body:has(.overlay:not([hidden]))>#runChecks{visibility:hidden!important;pointer-events:none!important}
@media(max-width:700px){.primary-filters{grid-template-columns:1fr 1fr}.finder-car img{width:110px}#mapCars{grid-template-columns:1fr}#mapCars button img{width:94px;height:70px}.finder-car h3{font-size:15px}.finder-car{gap:12px}}

.dealer-availability{font-size:12px;line-height:1.7;color:#63736b;margin:0 0 16px;max-width:46em}.consultation #dealerChoices button{min-height:48px;line-height:1.55}

/* One vehicle per row, with an uncropped cover photo on every screen. */
.vehicle-list-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 10px;clear:both}.vehicle-list-tools[hidden]{display:none}.vehicle-list-tools>span,.vehicle-list-tools h3{font-size:12px!important;margin:0!important;font-weight:400}.vehicle-list-tools label{display:flex;align-items:center;gap:8px;font-size:11px;white-space:nowrap}.vehicle-list-tools select{margin:0;padding:8px 25px 8px 10px;min-height:38px;background:#fff;border:1px solid #c6cec0;border-radius:5px;color:#294635;font-size:12px;width:auto}
#dealerChoices.vehicle-rows,#finderResults{display:grid;grid-template-columns:1fr;gap:8px}#dealerChoices.vehicle-rows{margin-top:0}.gallery-vehicle-row,#dealerChoices button.gallery-vehicle-row{display:flex;align-items:center;gap:16px;padding:10px 12px;width:100%;text-align:left;background:#fff;border:1px solid #d1d8cc;border-radius:8px;color:#243e32;cursor:pointer;min-width:0}.gallery-vehicle-row:hover{border-color:#739179;background:#f5f7f0}.gallery-vehicle-row:focus-visible{outline:3px solid #879c6c;outline-offset:2px}.gallery-vehicle-row>img{width:126px;height:94px;object-fit:contain;background:#eef0e8;border-radius:4px;flex-shrink:0}.vehicle-row-info{flex:1;min-width:0}.vehicle-row-info>strong{display:block;font-size:15px;line-height:1.5;font-weight:600}.vehicle-row-info>small{display:block;font-size:11px;color:#647261;line-height:1.6;margin:5px 0}.vehicle-row-info>b{font-size:19px;font-weight:650;color:#255139;white-space:nowrap}.vehicle-row-info>em{display:inline-block;font-size:11px;font-style:normal;color:#617356;margin-left:12px}.vehicle-row-arrow{font-size:19px;color:#5c7859;flex:none}
#dealerGuide{flex-direction:column;align-items:stretch;width:min(530px,calc(100% - 28px));gap:10px}#guideText{display:block}.dealer-guide-actions{display:flex;justify-content:flex-end;gap:8px}.dealer-guide-actions button{margin:0!important;min-height:44px}#dealerGuide #cancelGuide{background:transparent;border:1px solid #bac7b7;color:#3b5747;font-size:11px}#followGuide[hidden]{display:none!important}
@media(max-width:700px){.gallery-vehicle-row,#dealerChoices button.gallery-vehicle-row{gap:10px;padding:9px}.gallery-vehicle-row>img{width:96px;height:76px}.vehicle-row-info>strong{font-size:13px}.vehicle-row-info>small{font-size:10px;margin:4px 0}.vehicle-row-info>b{font-size:17px}.vehicle-row-info>em{display:block;margin:3px 0 0}.vehicle-row-arrow{display:none}.vehicle-list-tools{gap:8px}.vehicle-list-tools label{gap:5px}#dealerGuide .dealer-guide-actions button{padding:9px;font-size:11px}#dealerGuide{gap:9px}.vehicle-list-tools select{max-width:140px}#dealerChoices.vehicle-rows{max-height:45dvh}}
/* Keep one compact list toolbar, without stacked sticky headers. */
.finder-panel header{position:relative;top:auto}
.finder-actions{position:static}
.finder-panel>.vehicle-list-tools{position:sticky;top:-24px;z-index:5;background:#f8f7f2;padding:12px 0;margin:10px 0}
#finderResults{scroll-margin-top:70px}
@media(max-width:700px){.finder-panel>.vehicle-list-tools{top:-24px}.finder-panel>.vehicle-list-tools h3{max-width:135px;line-height:1.5}}

.gallery-cover .gallery-dev-button,.gallery-cover>button[id$="Scene"]{visibility:hidden!important}

.gallery-rig-review #hud,.gallery-rig-review #showcaseCard,.gallery-rig-review #zoneRail,.gallery-rig-review #hoodOutside,.gallery-rig-review #boardCar,.gallery-rig-review #dealerBubbles,.gallery-rig-review #vehicleLabels{visibility:hidden!important}

.gallery-rig-review #crowdBubbles,.gallery-rig-review #greetVisitor{visibility:hidden!important}
.gallery-cover #rigModelSelect{visibility:hidden!important}

#doorOutside{position:absolute;bottom:315px;left:50%;transform:translateX(-50%);padding:12px 22px;background:#f4f4e8;color:#203f32;font-weight:700;border:1px solid #95ac9b;white-space:nowrap}#doorOutside[hidden]{display:none}@media(max-width:700px){#doorOutside{bottom:340px;font-size:13px}}.gallery-rig-review #doorOutside{visibility:hidden!important}

/* Keep the first test control in the same flow, not under the next button. */
body:has(#runChecks)>#runChecks{position:relative!important;top:auto!important;left:auto!important;z-index:120!important;padding:3px!important}

#boot p{text-align:center;line-height:1.7;max-width:calc(100vw - 48px)}
.arrival-destination{font-size:30px;letter-spacing:.08em;color:#d5eac9;margin:0 0 20px;font-variant-numeric:tabular-nums}
#arrivalProgress{appearance:none;border:0;width:min(240px,70vw);height:3px;background:#ffffff1a;border-radius:3px;overflow:hidden}
#arrivalProgress::-webkit-progress-bar{background:#ffffff1a}
#arrivalProgress::-webkit-progress-value{background:#c4e2b7;transition:width .2s}
#arrivalProgress::-moz-progress-bar{background:#c4e2b7}
#arrivalElapsed{font-size:13px;color:#b7c9bd;letter-spacing:.04em;font-variant-numeric:tabular-nums;margin-top:14px}

/* One visible control for music and showroom sound. */
#hud>header .sound-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;padding:0;color:#d8efcd}
.sound-toggle svg{pointer-events:none}.sound-toggle .sound-slash{display:none}
.sound-toggle[aria-pressed=false]{color:#bcc4be!important}.sound-toggle[aria-pressed=false] .sound-slash{display:block}
@media(max-width:400px){body.gallery-started .brom-site-return{font-size:10px;padding-inline:4px}#hud>header{gap:3px;padding-inline:10px}#hud>header .brand{font-size:22px}}
