/* The reference artwork is a clean backdrop, with independent live controls.
   The neutral garage derivative removes every baked vehicle and changing value. */
#app.setup-reference #garage-screen #vehicle-name{display:flex;align-items:center;gap:8px;transform:none;margin:0;text-shadow:none}
#app.setup-reference #vehicle-name .vehicle-wordmark{position:static;display:block;width:calc(100% - 54px);height:100%;object-fit:contain;filter:none;transform:none}
#app.setup-reference #vehicle-name .vehicle-emblem-art{width:46px;height:54px;flex:none;color:var(--ride-color)}
#app.setup-reference #garage-screen .vehicle-card .vehicle-wordmark{position:static;inset:auto;width:calc(100% - 42px);height:100%;object-fit:contain;object-position:center;background:none;clip-path:none;filter:none;transform:none;flex:1;min-width:0}
#app.setup-reference .vehicle-card .vehicle-emblem-art{width:34px;height:34px;flex:none;color:var(--car-color)}
#app.setup-reference .car-selected{display:none}
#app.setup-reference #garage-screen .vehicle-card-content{position:absolute;inset:16px 15px 14px;overflow:hidden;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%,0 6px);isolation:isolate}
#app.setup-reference #setup-footer .bet-control button{background:url('../public/assets/ui-v2/panel-frame.png') center/100% 100% no-repeat;border:0;border-image:none;clip-path:none;border-radius:0;box-shadow:none;color:#e4faff;font-weight:900;text-shadow:0 0 3px white,0 0 9px #31bdff,0 0 16px #008cff;display:grid;place-items:center;transition:filter .15s,transform .15s}
#app.setup-reference #setup-footer .bet-control button:hover{filter:brightness(1.35) drop-shadow(0 0 5px #1bafff);box-shadow:none}
#app.setup-reference #setup-footer .bet-control button:active{transform:scale(.94)}
#app.setup-reference #setup-footer .bet-control button:disabled{opacity:.4;filter:saturate(.3);cursor:default}
#app.setup-reference #setup-footer .bet-control input{-moz-appearance:textfield;appearance:textfield}
#app.setup-reference #setup-footer .bet-control input::-webkit-inner-spin-button,#app.setup-reference #setup-footer .bet-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
@media (orientation:landscape){
 body:has(#app.setup-reference:is([data-screen="garage"],[data-screen="tracks"])) #illustrated-stage,
 body:has(#app.setup-reference:is([data-screen="garage"],[data-screen="tracks"])) .screen-vignette,
 body:has(#app.setup-reference:is([data-screen="garage"],[data-screen="tracks"])) .scanlines{display:none}
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]){position:absolute;left:var(--reference-left,0px);top:var(--reference-top,0px);width:1672px;height:941px;min-height:0;max-width:none;margin:0;transform:scale(var(--reference-scale,1));transform-origin:0 0;isolation:isolate;background:none;overflow:hidden}
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]):before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-position:0 0;background-size:1672px 941px;background-repeat:no-repeat}
 #app.setup-reference[data-screen="garage"]:before{background-image:url('../public/assets/setup-reference/garage-hq-v7.png')}
 #app.setup-reference[data-screen="tracks"]:before{background-image:url('../public/assets/setup-reference/course-clean-v2.png')}
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]) .topbar{position:absolute;inset:0;width:1672px;height:941px;display:block;padding:0;border:0;background:none;pointer-events:none;z-index:8}
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]) .brand,
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]) #setup-heading,
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]) #sound-button,
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]) #help-button{display:none}
 #app.setup-reference .setup-context{position:static;inset:auto;display:block;max-width:none}
 #app.setup-reference #setup-back{position:absolute;left:16px;top:8px;width:110px;height:80px;border:0;background:none;box-shadow:none;filter:none;clip-path:none;pointer-events:auto}
 #app.setup-reference #setup-back svg{visibility:hidden}
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]) .top-actions{position:absolute;inset:0;display:block;width:auto;height:auto;margin:0;pointer-events:none}
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]) .wallet{position:absolute;left:1359px;top:25px;right:auto;width:121px;min-width:0;height:47px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;border:0;clip-path:none;background:none;filter:none;box-shadow:none}
 #app.setup-reference .wallet .coin-symbol,#app.setup-reference .wallet small{display:none}
 #app.setup-reference .wallet strong{font-size:31px;line-height:1;font-weight:800;font-style:italic;letter-spacing:0;color:#f2f6ff;text-shadow:0 0 3px #87c4ff55}
 #app.setup-reference #settings-button{position:absolute;left:1572px;top:8px;width:80px;height:80px;padding:0;border:0;border-image:none;background:none;clip-path:none;box-shadow:none;filter:none;pointer-events:auto;color:transparent}
 #app.setup-reference #settings-button>*{visibility:hidden}
 #app.setup-reference:is([data-screen="garage"],[data-screen="tracks"]) #sound-button{position:absolute;left:1490px;top:20px;right:auto;bottom:auto;width:54px;height:55px;display:grid;place-items:center;padding:0;border:0;border-image:none;background:none;clip-path:none;box-shadow:none;filter:none;pointer-events:auto;color:#dcf8ff;font-size:29px;text-shadow:0 0 8px #42c6ff}
 #app.setup-reference[data-screen="tracks"] .top-actions,#app.setup-reference[data-screen="tracks"] #setup-back{display:none}
 #app.setup-reference #garage-screen,#app.setup-reference #tracks-screen{position:absolute;inset:0;width:1672px;height:941px;min-height:0;padding:0;margin:0;overflow:visible;display:block;grid-template:none;pointer-events:none}
 #app.setup-reference #garage-screen button,#app.setup-reference #tracks-screen button{pointer-events:auto}
 #app.setup-reference .setup-panel,#app.setup-reference .setup-metal{border:0;border-image:none;box-shadow:none;filter:none;clip-path:none;background:none}
 #app.setup-reference .setup-panel:before,#app.setup-reference .setup-panel:after,
 #app.setup-reference .setup-metal:before,#app.setup-reference .setup-metal:after,
 #app.setup-reference .vehicle-card:before,#app.setup-reference .vehicle-card:after,
 #app.setup-reference .track-card:before,#app.setup-reference .track-card:after,
 #app.setup-reference .setup-secondary:before,#app.setup-reference .setup-secondary:after,
 #app.setup-reference .setup-gold:before,#app.setup-reference .setup-gold:after{content:none;display:none}
 #app.setup-reference .showroom-platform,#app.setup-reference .garage-mantra,#app.setup-reference .course-mantra,#app.setup-reference .shelf-label{display:none}

 /* Every identity, number and car is drawn once over the emptied artwork. */
 #app.setup-reference #garage-screen .vehicle-details{position:absolute;left:38px;top:112px;right:auto;bottom:auto;width:350px;height:108px;max-width:none;min-height:0;padding:0;background:none;border:0;border-image:none;filter:none;z-index:4}
 #app.setup-reference .vehicle-detail-heading{display:none}
 #app.setup-reference #garage-screen #vehicle-name{height:78px;font-size:0;line-height:1;margin:0;transform:none;text-shadow:none}
 #app.setup-reference #garage-screen #vehicle-tagline{font-size:15px;letter-spacing:1px;line-height:1.2;margin:5px 0 0 7px;max-width:none;white-space:nowrap;font-weight:700;font-style:italic;color:#e3efff;text-align:center}
 /* Original 1536×1024 cutouts use different camera elevations. Anchor both
    tyre contacts to the new platform instead of aligning transparent bottoms. */
 #app.setup-reference #garage-screen .showroom-hero{position:absolute;left:0;top:0;right:auto;bottom:auto;width:1210px;height:605px;display:block;z-index:2;overflow:hidden;pointer-events:none}
 #app.setup-reference #garage-screen .showroom-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 30px 7px at var(--rear-tyre-x,516px) var(--rear-tyre-y,471px),#010308b8,transparent),radial-gradient(ellipse 36px 9px at 760px 578px,#010308c9,transparent);border:0;transform:none;filter:none;opacity:1}
 #app.setup-reference #garage-screen .showroom-hero img{position:absolute;inset:var(--reference-car-top,195.2px) auto auto var(--reference-car-left,461.5px);width:700px;height:466.6667px;max-height:none;margin:0;object-fit:contain;object-position:center;transform:none;z-index:1;filter:drop-shadow(0 4px 5px #01030a66);animation:none}
 #app.setup-reference[data-vehicle="shade"]{--reference-car-left:438.7px;--reference-car-top:179.2px;--rear-tyre-x:498px;--rear-tyre-y:494px}
 #app.setup-reference[data-vehicle="volt"]{--reference-car-left:447.8px;--reference-car-top:207.5px;--rear-tyre-x:505px;--rear-tyre-y:486px}
 #app.setup-reference[data-vehicle="phantom"]{--reference-car-left:463.8px;--reference-car-top:183.8px;--rear-tyre-x:514px;--rear-tyre-y:478px}
 #app.setup-reference[data-vehicle="raptor"]{--reference-car-left:438.7px;--reference-car-top:179.7px;--rear-tyre-x:500px;--rear-tyre-y:473px}
 #app.setup-reference[data-vehicle="nova"]{--reference-car-left:420.9px;--reference-car-top:189.3px;--rear-tyre-x:482px;--rear-tyre-y:487px}
 #app.setup-reference[data-vehicle="krush"]{--reference-car-left:450.1px;--reference-car-top:165.1px;--rear-tyre-x:537px;--rear-tyre-y:464px}
 #app.setup-reference #vehicle-prev,#app.setup-reference #vehicle-next,#app.setup-reference #course-prev,#app.setup-reference #course-next{position:absolute;right:auto;bottom:auto;padding:0;background:none;border:0;box-shadow:none;filter:none;clip-path:none;z-index:6}
 #app.setup-reference #vehicle-prev{left:270px;top:350px;width:68px;height:90px}
 #app.setup-reference #vehicle-next{left:1138px;top:347px;width:67px;height:90px}
 #app.setup-reference .course-arrow svg{visibility:hidden}
 #app.setup-reference .vehicle-arrow svg{visibility:visible;color:#b6f4ff;width:100%;height:100%;filter:drop-shadow(0 0 5px #1cc9ff) drop-shadow(0 0 9px #0075ff)}
 #app.setup-reference #garage-screen .vehicle-specs{position:absolute;left:1240px;top:123px;right:auto;bottom:auto;width:395px;height:270px;min-height:0;padding:0;z-index:4;overflow:hidden}
 #app.setup-reference #garage-screen .vehicle-specs>.panel-title{display:none}
 #app.setup-reference #garage-screen .vehicle-stats{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(5,54px);width:395px;height:270px;gap:0}
 #app.setup-reference #garage-screen .stat-row{display:grid;grid-template-columns:44px 92px minmax(0,1fr) 40px;gap:7px;min-height:0;height:54px;padding:0;border:0;border-bottom:1px solid #24608066;align-items:center}
 #app.setup-reference #garage-screen .stat-row:last-child{border:0}
 #app.setup-reference #garage-screen .stat-row>.setup-icon{display:block;width:42px;height:42px;color:var(--stat-color);filter:drop-shadow(0 0 3px color-mix(in srgb,var(--stat-color) 40%,transparent))}
 #app.setup-reference #garage-screen .stat-row>small{display:block;font-size:19px;line-height:1;font-weight:600;font-style:italic;letter-spacing:0;color:#e8f4ff;white-space:nowrap;width:auto}
 #app.setup-reference #garage-screen .stat-row>.stat-symbol-boost{color:#238cff;filter:drop-shadow(0 0 5px #187dff)}
 #app.setup-reference #garage-screen .stat-row>.stat-symbol-power{color:#ff3c4f;filter:drop-shadow(0 0 5px #fa1738)}
 #app.setup-reference #garage-screen .stat-bar{grid-column:3;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:3px;height:36px;padding:7px 6px;background:none;border:0}
 #app.setup-reference #garage-screen .stat-bar i{height:22px;min-width:0;max-width:none;transform:skewX(-18deg);background:#05121a;border:1px solid #2a5b65;box-shadow:none}
 #app.setup-reference #garage-screen .stat-bar i.on{background:linear-gradient(135deg,color-mix(in srgb,var(--stat-color) 70%,white),var(--stat-color));border-color:var(--stat-color);box-shadow:0 0 6px color-mix(in srgb,var(--stat-color) 25%,transparent)}
 #app.setup-reference #garage-screen .stat-row>b{grid-column:4;width:40px;height:36px;display:flex;align-items:center;justify-content:center;background:none;font-size:22px;line-height:1;font-style:italic;white-space:nowrap}
 #app.setup-reference #garage-screen .stat-row>b>span{font-size:17px}
 /* Seven independent illustrated cards. A common bottom edge makes the
    actual selected card visibly taller, with no baked-in first-card highlight. */
 #app.setup-reference #garage-screen .vehicle-shelf{position:absolute;inset:584px auto auto 17px;width:1638px;height:190px;padding:0;z-index:5}
 #app.setup-reference #garage-screen .vehicle-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:190px;align-items:end;gap:9px;width:100%;height:190px;padding:0;overflow:visible}
 #app.setup-reference #garage-screen .vehicle-card{position:relative;width:100%;height:163px;min-height:0;margin:0;padding:0;border:0;border-image:none;box-shadow:none;clip-path:none;background:none;filter:brightness(.94);transform:none;overflow:visible;isolation:isolate;transition:height .16s ease,filter .16s ease}
 #app.setup-reference #garage-screen .vehicle-card:before{content:'';display:block;position:absolute;inset:7px;background:#030b16;clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 9px,100% calc(100% - 9px),calc(100% - 9px) 100%,9px 100%,0 calc(100% - 9px),0 9px);z-index:-1;border:0;box-shadow:none}
 #app.setup-reference #garage-screen .vehicle-card:after{content:'';display:block;position:absolute;inset:0;width:auto;height:auto;border:16px solid transparent;border-image:url('../public/assets/ui-v2/modal-frame.png') 150 / 16px stretch;z-index:4;pointer-events:none;background:none;clip-path:none;box-shadow:none;opacity:1}
 #app.setup-reference #garage-screen .vehicle-card .garage-illustration{position:absolute;left:0;top:3px;right:auto;bottom:auto;width:100%;height:calc(100% - 34px);margin:0;object-fit:contain;object-position:center;background:none;filter:drop-shadow(0 3px 4px #000a);transform:none;clip-path:none;transition:none}
 #app.setup-reference #garage-screen .vehicle-tile-caption{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:2px;height:30px;color:var(--car-color)}
 #app.setup-reference #garage-screen .vehicle-card .car-id{display:block;position:absolute;left:2px;top:0;right:auto;bottom:auto;font-size:8px;line-height:1;letter-spacing:1px;color:#7798ae}
 #app.setup-reference #garage-screen .vehicle-card.active{height:190px;outline:0;box-shadow:none;clip-path:none;filter:brightness(1.1) drop-shadow(0 0 9px #1baaff);z-index:2}
 #app.setup-reference #garage-screen .vehicle-card.active .garage-illustration{height:calc(100% - 34px)}
 #app.setup-reference #garage-screen .vehicle-card:hover:not(:disabled){filter:brightness(1.12);box-shadow:none}
 #app.setup-reference #garage-screen .vehicle-card.active:hover:not(:disabled){filter:brightness(1.15) drop-shadow(0 0 9px #1baaff)}
 #app.setup-reference #garage-screen .vehicle-card.active .car-selected{display:block;position:absolute;right:2px;top:0;color:#bcf7ff;font-size:8px;letter-spacing:1.3px;text-shadow:0 0 7px #1ccaff}
 #app.setup-reference #tracks-screen .track-card.active:after{content:'SELECTED';position:absolute;display:grid;place-items:center;left:auto;top:12px;right:15px;bottom:auto;width:82px;height:21px;padding:0;background:linear-gradient(135deg,#fff3a0,#ffd13c);color:#151001;border:0;border-image:none;box-shadow:0 0 9px #ffc94355;clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);font-size:10px;line-height:1;font-weight:900;font-style:italic;letter-spacing:1px;opacity:1;z-index:6;pointer-events:none}

 /* Every course uses the same live hero and title inside the painted frame. */
 #app.setup-reference #tracks-screen .track-feature{position:absolute;inset:0;width:1672px;height:941px;min-height:0;padding:0;overflow:visible;z-index:3;clip-path:none;filter:none}
 #app.setup-reference #tracks-screen .track-feature-image{position:absolute;left:264px;top:119px;right:auto;bottom:auto;width:942px;height:435px;background-size:cover;background-position:center!important;clip-path:polygon(16px 0,100% 0,100% 100%,18px 100%,0 calc(100% - 18px),0 18px);opacity:1}
 #app.setup-reference #tracks-screen .track-feature-image:before,#app.setup-reference #tracks-screen .track-feature-image:after{content:none;display:none}
 #app.setup-reference #tracks-screen .track-feature-title{position:absolute;left:280px;top:130px;right:auto;bottom:auto;width:700px;height:85px;padding:9px 17px;max-width:none;display:flex;align-items:center;gap:16px;background:linear-gradient(90deg,#02101bf2,#02101bc9 70%,transparent);z-index:4}
 #app.setup-reference #tracks-screen .track-feature-title .setup-icon{width:61px;height:61px}
 #app.setup-reference #tracks-screen .track-feature-title h2{font-size:44px;line-height:1;margin:0;letter-spacing:.8px}
 #app.setup-reference #tracks-screen .track-feature-title small{font-size:14px;margin-top:7px;letter-spacing:3px}
 #app.setup-reference #tracks-screen .track-feature-details{position:absolute;left:1216px;top:140px;right:auto;bottom:auto;width:212px;height:400px;padding:0;display:block;background:none;border:0;border-image:none;clip-path:none;box-shadow:none}
 #app.setup-reference #tracks-screen .course-map{position:absolute;left:0;top:0;width:212px;height:190px;min-height:0;padding:5px 10px;background:#020c18;border:0;overflow:hidden;clip-path:polygon(18px 0,calc(100% - 18px) 0,100% 18px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 18px)}
 #app.setup-reference #tracks-screen .course-map svg{width:100%;height:100%;min-height:0;margin:0;background:none}
 #app.setup-reference #tracks-screen #preview-map{stroke:#d1faff;stroke-width:4;filter:drop-shadow(0 0 4px #40bfff) drop-shadow(0 0 8px #0084ff)}
 #app.setup-reference #tracks-screen .course-map-finish{display:block;right:15px;top:100px;font-size:25px}
 #app.setup-reference #tracks-screen .course-stat{position:absolute;left:0;width:212px;height:50px;min-height:0;padding:0;display:grid;grid-template-columns:44px 1fr 67px;gap:0;border:0;align-items:center;white-space:nowrap}
 #app.setup-reference #tracks-screen .course-stat:nth-child(2){top:200px}
 #app.setup-reference #tracks-screen .course-stat:nth-child(3){top:250px}
 #app.setup-reference #tracks-screen .course-stat:nth-child(4){top:300px}
 #app.setup-reference #tracks-screen .course-stat:nth-child(5){top:350px}
 #app.setup-reference #tracks-screen .course-stat>span{display:none}
 #app.setup-reference #tracks-screen .course-stat strong{grid-column:2;height:38px;background:#030d17;display:flex;align-items:center;font-size:28px;line-height:1;margin:0;padding-left:8px}
 #app.setup-reference #tracks-screen .course-stat small{grid-column:3;height:38px;background:#030d17;display:flex;align-items:center;font-size:20px;letter-spacing:.5px}
 #app.setup-reference #tracks-screen #track-weather,#app.setup-reference #tracks-screen #track-risk{grid-column:2 / 4;width:168px;font-size:19px;letter-spacing:.3px;white-space:normal}
 #app.setup-reference #course-prev{left:170px;top:250px;width:85px;height:170px}
 #app.setup-reference #course-next{left:1460px;top:250px;width:85px;height:170px}
 #app.setup-reference #tracks-screen .track-grid{position:absolute;inset:581px auto auto 25px;width:1615px;height:210px;display:grid;grid-template-columns:repeat(5,311px);grid-template-rows:210px;gap:15px;overflow:visible;padding:0;margin:0;z-index:5}
 #app.setup-reference #tracks-screen .track-card{width:311px;height:210px;min-height:0;position:relative;margin:0;padding:0;border:0;border-image:none;clip-path:none;background:none;box-shadow:none;filter:none;overflow:visible}
 #app.setup-reference #tracks-screen .track-card>*{display:none}
 #app.setup-reference #tracks-screen .track-card.active{outline:2px solid #a2ecff;outline-offset:-8px;box-shadow:inset 0 0 30px #2cbaff1a;clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px)}
 #app.setup-reference #tracks-screen .track-disclosure{display:none}

 /* Transparent hit areas preserve the painted buttons. Only a changing label
    or value is masked, inside its original frame rather than over the rim. */
 #app.setup-reference #setup-footer{position:absolute;inset:0;width:1672px;height:941px;padding:0;margin:0;display:block;grid-template:none;background:none;border:0;pointer-events:none;z-index:7}
 #app.setup-reference[data-screen="garage"] #setup-footer:before{content:none}
 #app.setup-reference[data-screen="tracks"] #setup-footer:before{content:'';position:absolute;left:470px;top:850px;width:730px;height:42px;background:#020b17;pointer-events:none}
 #app.setup-reference #setup-footer button,#app.setup-reference #setup-footer input{pointer-events:auto}
 #app.setup-reference .setup-footer-left{position:static;display:block}
 #app.setup-reference .setup-fairness{display:none}
 #app.setup-reference #guide-button{position:absolute;left:43px;top:805px;right:auto;bottom:auto;width:421px;height:85px;min-width:0;padding:0;display:flex;gap:18px;align-items:center;justify-content:center;background:none;color:#e8f9ff;border:0;border-image:none;box-shadow:none;clip-path:none;filter:none;font-size:33px;font-style:italic;letter-spacing:2px}
 #app.setup-reference #guide-button>span,#app.setup-reference #guide-button>b{position:static;display:block;width:auto;height:auto;margin:0;padding:0;transform:none;line-height:1;flex:none}
 #app.setup-reference #guide-button .setup-icon{width:39px;height:39px;color:#7edbff}
 #app.setup-reference #select-course{position:absolute;left:650px;top:812px;width:360px;height:64px;min-width:0;padding:0 6px;display:flex;justify-content:center;align-items:center;gap:10px;background:linear-gradient(120deg,#ffcc25,#ffdf57 48%,#ffc428);border:0;border-image:none;box-shadow:none;filter:none;clip-path:none;color:#121000;font-size:38px;font-weight:1000;font-style:italic;letter-spacing:-.5px;text-shadow:none}
 #app.setup-reference #select-course>b{font-size:27px;letter-spacing:-4px}
 #app.setup-reference[data-screen="garage"] #guide-button,#app.setup-reference[data-screen="garage"] #select-course{background:none}
 #app.setup-reference #setup-footer .bet-control{position:absolute;left:1213px;top:802px;right:auto;bottom:auto;width:396px;height:91px;margin:0;padding:0;background:none;border:0;border-image:none;box-shadow:none;display:block;min-height:0}
 #app.setup-reference #setup-footer .bet-control label{display:flex;justify-content:center;align-items:center;gap:15px;font-size:15px;letter-spacing:2.2px;line-height:18px;margin:0 0 4px;color:#c8eeff;font-weight:700;text-shadow:0 0 8px #158dce80}
 #app.setup-reference #setup-footer .bet-control label small{font-size:10px;letter-spacing:1px;font-weight:400;color:#729ab2}
 #app.setup-reference #setup-footer .bet-control>div{height:65px;padding:0;display:flex;align-items:center;gap:9px;border:0;background:none;box-shadow:none}
 #app.setup-reference #setup-footer .bet-control button{width:65px;min-width:65px;height:65px;padding:0;font-size:39px;line-height:1}
 #app.setup-reference #setup-footer .bet-control input{width:198px;min-width:0;height:53px;padding:0;background:radial-gradient(ellipse,#07305260,transparent 75%);border:0;border-bottom:1px solid #218ccb70;font-size:42px;line-height:1;color:#fff;font-weight:800;letter-spacing:1px;text-align:center;text-shadow:0 0 12px #5ac6ff60}
 #app.setup-reference #setup-footer .bet-control .bet-coin{flex:none;min-width:33px;width:33px;height:38px;margin:0 3px 0 -10px;filter:drop-shadow(0 0 7px #ffc32b55)}
 #app.setup-reference[data-screen="garage"] #setup-footer .bet-control{background:none}
 #app.setup-reference #course-back{position:absolute;left:48px;top:839px;width:180px;height:58px;min-width:0;padding:0;border:0;border-image:none;background:none;box-shadow:none;filter:none;clip-path:none;color:transparent}
 #app.setup-reference #course-back>*{visibility:hidden}
 #app.setup-reference #race-button{position:absolute;left:1284px;top:833px;right:auto;bottom:auto;width:320px;height:60px;min-width:0;padding:0;background:none;border:0;border-image:none;box-shadow:none;clip-path:none;filter:none;color:transparent;transform:none}
 #app.setup-reference #race-button>*{visibility:hidden}
 #app.setup-reference #race-button[aria-busy="true"]{color:#211500;background:linear-gradient(#ffdf58,#ffc226);font-size:32px;opacity:1}
 #app.setup-reference #race-button[aria-busy="true"]>span{visibility:visible}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control{left:557px;top:835px;width:525px;height:71px;padding:5px 13px;display:flex;align-items:center;gap:15px;background:none}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control label{width:139px;display:block;font-size:12px;line-height:1.2;margin:0;letter-spacing:1.2px}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control label small{display:block;margin-top:5px;font-size:9px}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control>div{width:340px;height:61px}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control button{width:60px;min-width:60px;height:60px}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control input{width:145px;font-size:36px}
 #app.setup-reference button:focus-visible{outline:3px solid #fff2a6;outline-offset:-8px;filter:none;box-shadow:inset 0 0 22px #ffd34a30}
 #app.setup-reference button:hover:not(:disabled){box-shadow:inset 0 0 25px #a8eaff17;filter:none}
}

/* Portrait keeps the readable stacked controls and real text from v6. */
@media (orientation:portrait){
 body:has(#app.setup-reference[data-screen="garage"]) #illustrated-stage{background-image:linear-gradient(#0208147a,#020814b3),url('../public/assets/setup-reference/garage-hq-v7.png');background-position:center 34%;background-size:auto 240%}
 body:has(#app.setup-reference[data-screen="tracks"]) #illustrated-stage{background-image:linear-gradient(#0208147a,#020814b3),url('../public/assets/setup-reference/course-clean-v2.png');background-position:center 34%;background-size:auto 240%}
 #app.setup-reference #garage-screen #vehicle-name{height:47px;margin:2px 0 0;font-size:0;max-width:350px}
 #app.setup-reference #vehicle-name .vehicle-emblem-art{width:38px;height:40px}
 #app.setup-reference #vehicle-name .vehicle-wordmark{width:calc(100% - 46px)}
 #app.setup-reference #garage-screen .showroom-hero img{inset:auto 0 0;width:100%;height:84%;object-position:center bottom}
 #app.setup-reference #garage-screen .vehicle-shelf{top:calc(var(--hero-height) + 172px);height:132px}
 #app.setup-reference #garage-screen .vehicle-grid{height:132px;align-items:end;gap:7px;padding:4px 3px 6px}
 #app.setup-reference #garage-screen .vehicle-card{height:102px;flex:0 0 132px;clip-path:none;background:none;overflow:visible;filter:brightness(.94);transition:height .16s ease}
 #app.setup-reference #garage-screen .vehicle-card:before{inset:6px;background:#030b16;clip-path:none;box-shadow:none}
 #app.setup-reference #garage-screen .vehicle-card:after{content:'';display:block;position:absolute;inset:0;width:auto;height:auto;border:11px solid transparent;border-image:url('../public/assets/ui-v2/modal-frame.png') 150 / 11px stretch;background:none;z-index:4;pointer-events:none;box-shadow:none;opacity:1}
 #app.setup-reference #garage-screen .vehicle-card-content{inset:12px 11px 10px}
 #app.setup-reference #garage-screen .vehicle-card.active{height:122px;filter:brightness(1.1) drop-shadow(0 0 5px #1abaff)}
 #app.setup-reference #garage-screen .vehicle-card .garage-illustration{top:2px;left:0;width:100%;height:calc(100% - 25px)}
 #app.setup-reference #garage-screen .vehicle-card.active .garage-illustration{height:calc(100% - 25px)}
 #app.setup-reference #garage-screen .vehicle-tile-caption{height:24px;bottom:0;left:0;right:0;gap:0}
 #app.setup-reference #garage-screen .vehicle-card .vehicle-emblem-art{width:23px;height:23px}
 #app.setup-reference #garage-screen .vehicle-card .car-id{font-size:6px}
 #app.setup-reference #setup-footer .bet-control>div{border:0;box-shadow:none;background:none;height:36px;gap:3px}
 #app.setup-reference #setup-footer .bet-control button{width:36px;height:36px;min-width:36px}
 #app.setup-reference #setup-footer .bet-control input{background:#0515259c;border-bottom:1px solid #286083;height:30px}
 #app.setup-reference #guide-button{justify-content:center;align-items:center;gap:7px}
 #app.setup-reference #guide-button>span,#app.setup-reference #guide-button>b{position:static;margin:0;transform:none;line-height:1}
}
@media (prefers-reduced-motion:reduce){#app.setup-reference #garage-screen .vehicle-card,#app.setup-reference #garage-screen .vehicle-card .garage-illustration{transition:none}}

/* Live footer refinements: symmetric wager rails keep the number centered
   independently of the coin, with illustrated blue glass controls. */
#app.setup-reference #setup-footer #select-course{color:#100e00;font-family:'Rajdhani','Arial Narrow',sans-serif;font-weight:700;font-style:italic;letter-spacing:-.7px;text-shadow:0 1px 0 #ffed8b}
#app.setup-reference #setup-footer #select-course>span{display:block;line-height:1;-webkit-text-stroke:1.05px currentColor;transform:skewX(-5deg);white-space:nowrap}
#app.setup-reference #setup-footer #select-course>b{-webkit-text-stroke:.6px currentColor;font-weight:700}
#app.setup-reference #setup-footer .bet-control{--wager-button:65px;--wager-gap:8px;--wager-coin:32px;--wager-text-space:43px}
#app.setup-reference #setup-footer .bet-control label{justify-content:center;text-align:center;color:#c8f3ff;font-weight:700;text-shadow:0 0 8px #199eff80}
#app.setup-reference #setup-footer .bet-control>div{position:relative;isolation:isolate;display:grid;grid-template-columns:var(--wager-button) minmax(0,1fr) var(--wager-button);align-items:center;gap:var(--wager-gap);height:var(--wager-button);padding:0;background:none;border:0;box-shadow:none}
#app.setup-reference #setup-footer .bet-control>div:before{content:'';position:absolute;inset:9px calc(var(--wager-button) - 4px);z-index:-1;pointer-events:none;clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 9px,100% calc(100% - 9px),calc(100% - 9px) 100%,9px 100%,0 calc(100% - 9px),0 9px);background:linear-gradient(180deg,#48cfff77 0,#0a2c4e 2px,#04101e 48%,#061b32 calc(100% - 2px),#209ee4a8);box-shadow:inset 0 0 17px #0970c544}
#app.setup-reference #setup-footer .bet-control button{position:relative;isolation:isolate;grid-row:1;width:var(--wager-button);min-width:var(--wager-button);height:var(--wager-button);padding:0;background:radial-gradient(ellipse at 50% 43%,#2277d2b8 0,#11437c8f 48%,transparent 70%),url('../public/assets/ui-v2/panel-frame.png') center/100% 100% no-repeat;color:#e8fbff;font-weight:700;font-size:42px;line-height:1;-webkit-text-stroke:.7px #c9f7ff;text-shadow:0 0 3px #fff,0 0 9px #00caff,0 0 16px #007cff;filter:drop-shadow(0 0 4px #028dff80);box-shadow:none}
#app.setup-reference #setup-footer #bet-down{grid-column:1}
#app.setup-reference #setup-footer #bet-up{grid-column:3}
#app.setup-reference #setup-footer .bet-control button:hover:not(:disabled){filter:brightness(1.25) drop-shadow(0 0 7px #18bfff);box-shadow:none}
#app.setup-reference #setup-footer .bet-control button:focus-visible{outline:2px solid #fff2ad;outline-offset:3px;filter:drop-shadow(0 0 8px #2fcaff);box-shadow:none}
#app.setup-reference #setup-footer .bet-control input{grid-column:2;grid-row:1;justify-self:stretch;width:100%;min-width:0;height:calc(var(--wager-button) - 12px);margin:0;padding:0 var(--wager-text-space);border:0;background:none;box-shadow:none;text-align:center;font-variant-numeric:tabular-nums;font-style:normal;font-weight:700;letter-spacing:0;color:#f5fcff;text-shadow:0 0 8px #4bc9ff55}
#app.setup-reference #setup-footer .bet-control .bet-coin{position:absolute;top:50%;right:calc(var(--wager-button) + var(--wager-gap) + 5px);transform:translateY(-50%);width:var(--wager-coin);min-width:0;height:var(--wager-coin);margin:0;background:url('../public/assets/ui-v2/coin.png') center/contain no-repeat;pointer-events:none;filter:drop-shadow(0 0 5px #ffb91666);font-size:0}

/* Saturated light, a narrow bright edge and truly unlit empty segments. */
#app.setup-reference #garage-screen .stat-bar i{background:linear-gradient(#02060c,#06101a);border-color:color-mix(in srgb,var(--stat-color) 23%,#0c1720);box-shadow:inset 0 0 3px #0009}
#app.setup-reference #garage-screen .stat-bar i.on{background:linear-gradient(155deg,color-mix(in srgb,var(--stat-color) 62%,white) 0,var(--stat-color) 26%,var(--stat-color) 76%,color-mix(in srgb,var(--stat-color) 78%,#063058) 100%);border-color:color-mix(in srgb,var(--stat-color) 80%,white);box-shadow:inset 1px 1px 0 #ffffff69,inset -1px -1px 0 #00142922,0 0 5px color-mix(in srgb,var(--stat-color) 45%,transparent),0 0 10px color-mix(in srgb,var(--stat-color) 16%,transparent)}
@media (orientation:landscape){
 #app.setup-reference #setup-footer #select-course{font-size:43px;gap:13px}
 #app.setup-reference #setup-footer #select-course>b{font-size:31px}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control{--wager-button:60px;--wager-coin:28px;--wager-text-space:38px}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control label{text-align:center}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control>div{height:var(--wager-button);flex:none}
 #app.setup-reference #setup-footer .bet-control button:after{content:'';display:block;position:absolute;left:50%;top:50%;width:max(100%,calc(44px / var(--reference-scale,1)));height:max(100%,calc(44px / var(--reference-scale,1)));transform:translate(-50%,-50%);background:none;border:0;pointer-events:auto}
}
@media (orientation:portrait){
 #app.setup-reference #setup-footer.setup-footer{height:132px;grid-template-rows:53px 55px}
 #app.setup-reference #setup-footer #select-course{font-size:30px;gap:13px}
 #app.setup-reference #setup-footer #select-course>span{-webkit-text-stroke:.7px currentColor}
 #app.setup-reference #setup-footer .bet-control{--wager-button:44px;--wager-gap:5px;--wager-coin:20px;--wager-text-space:24px}
 #app.setup-reference #setup-footer .bet-control label{font-size:8px;line-height:10px;letter-spacing:1.3px;margin-bottom:2px}
 #app.setup-reference #setup-footer .bet-control button{font-size:29px;-webkit-text-stroke:.5px #c9f7ff}
 #app.setup-reference #setup-footer .bet-control input{font-size:22px;height:36px}
 #app.setup-reference #setup-footer .bet-control>div:before{inset:5px calc(var(--wager-button) - 3px)}
 #app.setup-reference[data-screen="tracks"] #setup-footer.setup-footer{height:131px;grid-template-rows:56px 53px;gap:5px 12px}
 #app.setup-reference[data-screen="tracks"] #setup-footer .bet-control{width:215px}
}
/* White brush lettering and painted neon symbols use transparent atlas art. */
#app.setup-reference .vehicle-emblem-art.identity-illustration{position:static;display:block;flex:none;inset:auto;margin:0;transform:none;filter:none;overflow:hidden}
#app.setup-reference .vehicle-wordmark.identity-illustration{overflow:hidden;filter:none;transform:none}
#app.setup-reference #vehicle-name .vehicle-emblem-art{display:none}
#app.setup-reference #vehicle-name .vehicle-wordmark{width:100%;max-width:none}
#app.setup-reference #garage-screen .vehicle-card .vehicle-emblem-art{position:static;inset:auto;width:34px;height:34px;filter:none;overflow:hidden}
@media(orientation:portrait){#app.setup-reference #garage-screen .vehicle-card .vehicle-emblem-art{width:24px;height:24px}}
/* The low camera cutouts include contact shadows and short wet reflections.
   All front tyre contacts share the platform plane, inside the cyan rim. */
@media(orientation:landscape){
 #app.setup-reference #garage-screen .showroom-hero{height:605px;mask-image:linear-gradient(#000 0 94%,transparent 100%)}
 #app.setup-reference #garage-screen .showroom-hero:before{content:none}
 #app.setup-reference #garage-screen .showroom-hero img{left:330px;top:var(--grounded-car-top,144.27px);width:800px;height:533.3333px;filter:none;object-fit:contain;transform:none}
 #app.setup-reference[data-vehicle="blaze"]{--grounded-car-top:144.27px}
 #app.setup-reference[data-vehicle="shade"]{--grounded-car-top:146.35px}
 #app.setup-reference[data-vehicle="volt"]{--grounded-car-top:142.19px}
 #app.setup-reference[data-vehicle="phantom"]{--grounded-car-top:136.46px}
 #app.setup-reference[data-vehicle="raptor"]{--grounded-car-top:115.63px}
 #app.setup-reference[data-vehicle="nova"]{--grounded-car-top:134.38px}
 #app.setup-reference[data-vehicle="krush"]{--grounded-car-top:133.33px}
}

/* Transparent turntables share identical poster/video bounds. A mid-spin
   stall holds the last painted angle; only a new selection or failure falls
   back to its opening PNG. Disable the legacy still's entrance animation so
   it cannot briefly override opacity while the video is being revealed. */
#app.setup-reference #garage-screen .showroom-hero{overflow:clip}
#app.setup-reference #garage-screen .showroom-motion{position:absolute;pointer-events:none;z-index:2;opacity:0;object-fit:contain;background:transparent;max-width:none}
#app.setup-reference #garage-screen .showroom-hero[data-motion-available="true"] #showroom-car{max-width:none;animation:none}
#app.setup-reference #garage-screen .showroom-hero:is([data-motion-state="playing"],[data-motion-state="buffering"],[data-motion-state="paused"],[data-motion-state="finished"]) .showroom-motion{opacity:1}
#app.setup-reference #garage-screen .showroom-hero:is([data-motion-state="playing"],[data-motion-state="buffering"],[data-motion-state="paused"],[data-motion-state="finished"]) #showroom-car{opacity:0}
@media(orientation:landscape){
 /* A complete rotation can extend beyond the opening poster's silhouette.
    Keep the whole video canvas (265 + 1000px) inside this clip region; its
    position/scale and the matching poster must not change between frames. */
 #app.setup-reference #garage-screen .showroom-hero{width:1300px}
 #app.setup-reference #garage-screen .showroom-motion,
 #app.setup-reference #garage-screen .showroom-hero[data-motion-available="true"] #showroom-car{inset:var(--motion-car-top,130px) auto auto 265px;width:1000px;height:671.2329px;object-position:center;filter:none}
 #app.setup-reference[data-vehicle="blaze"]{--motion-car-top:110px}
 #app.setup-reference[data-vehicle="krush"]{--motion-car-top:110px}
}
@media(orientation:portrait){
 #app.setup-reference #garage-screen .showroom-motion,
 #app.setup-reference #garage-screen .showroom-hero[data-motion-available="true"] #showroom-car{inset:auto -16% -16%;width:132%;height:132%;object-position:center bottom;filter:none}
}
#app.setup-reference[data-reduced-motion="true"] #garage-screen .showroom-hero #showroom-car{opacity:1}
#app.setup-reference[data-reduced-motion="true"] #garage-screen .showroom-motion{opacity:0}
/* Keep the muted speaker centered at the same scale as the original note. */
#sound-button>.sound-state-icon{display:block;width:1em;height:1em;flex:none;filter:drop-shadow(0 0 4px #42c6ff);pointer-events:none}
