:root{--yellow:#ffff66;--ink:#171717;--muted:#505050;--paper:#ffffff}
body{background:#a0a0a0;color:#171717;font-family:Arial,Helvetica,sans-serif}
header,.racing header{max-width:1272px;width:calc(100% - 48px);height:78px;padding:8px 0;border:0}
.brand{font-family:'Arial Black',Arial,Helvetica,sans-serif;font-size:34px;letter-spacing:-1.5px;font-weight:900;color:#000}
.brand>span{background:none;color:#ffff00;padding:0}
.brand small{font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:400;letter-spacing:0;margin-top:5px;color:#171717}
.tag{font-size:12px;font-weight:400;letter-spacing:0;color:#171717}
main,.racing main{width:calc(100% - 48px);max-width:1272px;background:#fff;border:1px solid #777;padding:0 14px 14px}
.intro,.racing .intro{margin:0 -14px 12px;padding:9px 14px;background:#e7e7e7;border-bottom:1px solid #999;gap:12px;min-height:42px}
h1,.racing .intro h1{font-family:Arial,Helvetica,sans-serif;font-weight:400;font-size:24px;letter-spacing:-.5px;line-height:1.2}
.intro .eyebrow,.intro p:not(.eyebrow){display:none}
h2,h3,.answer-panel h3,.map-head h2{font-family:Arial,Helvetica,sans-serif;color:#171717;letter-spacing:0}
h2{font-size:19px;font-weight:400}.setup h2{font-weight:400}
.setup{background:#fff;border:0;border-radius:0;box-shadow:none;padding:8px 2px;gap:28px}
.setup p,.hint{color:#333}
.quiet,.yellow,.speeds button,.steering button,.answer-entry input,#next{border:1px solid #999;border-radius:0;box-shadow:none;color:#171717}
.quiet,.speeds button,.steering button{background:#ededed;font-weight:400}
.quiet:hover,.speeds button:hover,.steering button:hover{background:#e0e0e0}
.yellow{background:#ffff66;font-weight:400}.yellow:hover{background:#ffff00}
.speeds button.active{background:#ffff66;color:#171717;border-color:#777;box-shadow:none}
.speeds button{font-weight:400}.speeds small{color:#333}
.route-heading h3{font-weight:400}.route-option{background:#f0f0f0;border-radius:0;color:#171717}
.route-option input{accent-color:#555}.route-option b{color:#444;font-weight:400}
.text{color:#171717;font-weight:400}.dashboard{letter-spacing:0;font-weight:400;color:#171717}.dashboard #score{color:#333}
.sentence{background:#fff;border:1px solid #aaa;border-radius:0}.sentence p{color:#444;letter-spacing:0;font-size:11px}.sentence h2{font-weight:400}
.controls .quiet,.steering button span{font-weight:400}.controls small{color:#444}
.steering button.selected{background:#ffff66;border-color:#777}
.answer-panel{background:#fff;border:1px solid #aaa;border-radius:0}.answer-panel p:first-child{color:#444;letter-spacing:0}.answer-panel h3{font-weight:400}
.answer-entry input{background:#fff}.answer-entry input::placeholder{color:#666}
.countdown{font-family:Arial,Helvetica,sans-serif;font-size:44px;font-weight:700}
footer{background:#a0a0a0;margin:14px -15px -15px;padding:9px 0 0;border:0;letter-spacing:0;font-size:11px;color:#171717}
dialog{background:#fff;border:1px solid #777;border-radius:0}.map-head{background:#e7e7e7;margin:-16px -16px 10px;padding:10px 16px;border-bottom:1px solid #999}.map-head h2{font-size:22px;font-weight:400}.map-head .eyebrow{display:none}#map-note{color:#333}
@media(max-width:900px){
 header,.racing header{height:67px;width:calc(100% - 32px);padding:5px 0}
 main,.racing main{width:calc(100% - 32px);padding:0 12px 12px}
 .brand{font-size:29px}.brand small{font-size:10px}.intro,.racing .intro{margin:0 -12px 10px;padding:8px 12px}
 h1,.racing .intro h1{font-size:22px}.setup{padding:4px 0;gap:14px}
 footer{margin:12px -13px -13px}.racing header{height:60px}
}
@media(max-width:520px){
 header,.racing header{width:calc(100% - 20px);height:58px}.brand{font-size:26px}.brand small{font-size:9px}
 main,.racing main{width:calc(100% - 20px);padding:0 10px 10px}
 .intro,.racing .intro{margin:0 -10px 8px;padding:7px 10px;min-height:38px}
 h1,.racing .intro h1{font-size:19px;letter-spacing:-.5px}
 .setup h2{font-size:17px}.setup{gap:10px}.sentence p{font-size:10px}.sentence h2{font-size:17px}
 .countdown{font-size:32px}footer{margin:10px -11px -11px;font-size:9px}
}
@media(max-height:720px) and (min-width:901px){header,.racing header{height:64px}.intro,.racing .intro{padding-top:6px;padding-bottom:6px;min-height:36px}h1,.racing .intro h1{font-size:22px}}
.finish-instruction{display:none;position:absolute;inset:0;z-index:2;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:26px 30px;background:linear-gradient(90deg,rgba(10,20,16,.9),rgba(10,20,16,.76),rgba(10,20,16,.9));pointer-events:none;text-align:center}
.at-finish .finish-instruction{display:flex}
.finish-instruction>span{font:400 12px Arial,Helvetica,sans-serif;color:#fff;opacity:.85}
.finish-instruction h3{font-family:Arial,Helvetica,sans-serif;font-size:clamp(40px,5vw,64px);font-weight:700;line-height:1.12;color:#fff;margin:0;max-width:1000px;text-wrap:balance;text-shadow:0 2px 8px #0008;overflow-wrap:break-word}
@media(max-width:520px){.finish-instruction{padding:20px 16px;gap:8px}.finish-instruction h3{font-size:36px}}
.intro h1{display:flex;align-items:center;gap:12px}
.title-car{display:block;width:54px;height:32px;flex-shrink:0}
.racing .title-car{display:none}
@media(max-width:520px){.intro h1{gap:6px}.title-car{width:34px;height:22px}.intro{gap:6px}.intro .quiet{padding:6px;font-size:10px}h1{font-size:18px}}
