@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Oswald:wght@500;600;700&display=swap');
:root{font-family:Manrope,Arial,sans-serif;color:#f8f5e9;font-synthesis:none;background:#94b9bb}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}#scene,.vignette{position:fixed;inset:0;width:100%;height:100%}.vignette{pointer-events:none;background:linear-gradient(90deg,rgba(15,35,34,.93),rgba(15,35,34,.72) 28%,rgba(15,35,34,.08) 66%),linear-gradient(0deg,rgba(12,32,29,.65),transparent 23%)}body.driving .vignette{background:linear-gradient(0deg,#102c2944,transparent 30%);opacity:.8}header{position:fixed;top:0;left:0;right:0;padding:29px 42px;display:flex;justify-content:space-between;align-items:center;z-index:3}.brand{position:relative;display:flex;align-items:center;color:#f9f4e7;text-decoration:none;font-weight:800;font-size:24px;letter-spacing:-1px;gap:3px}.brand>span:not(.brand-icon){font-weight:400}.brand-icon{display:inline-flex;align-items:center;justify-content:center;background:#e6ef93;color:#203731;width:39px;height:39px;border-radius:50%;font-size:37px;margin-right:9px;line-height:1}.brand small{position:absolute;left:53px;top:30px;font-size:8px;letter-spacing:3px;font-weight:500}.top-right{display:flex;gap:20px;align-items:center}.live{font-size:10px;letter-spacing:1.6px;background:#233d3655;padding:12px 17px;border:1px solid #ffffff26;border-radius:4px;backdrop-filter:blur(10px)}.live i,.location-dot{display:inline-block;width:6px;height:6px;background:#dfea98;border-radius:50%;margin-right:7px;box-shadow:0 0 9px #dfea9866}.icon-button{background:#243d3655;color:#fff;border:1px solid #ffffff25;border-radius:4px;padding:11px;font-size:11px}main{position:absolute;left:6.4vw;top:18vh;width:440px}.eyebrow{font-size:9px;letter-spacing:2px;display:flex;gap:13px;align-items:center;font-weight:700;color:#d8e0bb}.line{width:27px;height:1px;background:#a6b69e}h1{font-family:Oswald,'Arial Narrow',sans-serif;font-size:clamp(46px,5.2vw,78px);line-height:1.06;margin:23px 0 20px;letter-spacing:-1.5px;text-transform:uppercase;font-weight:500}h1 em{font-style:normal;color:#e2ec9c}.intro{font-size:13px;line-height:1.85;color:#b9c5bb;margin:0 0 24px}.entry-card{width:354px;background:#17322ec9;border:1px solid #aec0a93b;border-radius:8px;padding:20px;box-shadow:0 12px 45px #12292125;backdrop-filter:blur(14px)}.card-title{font-size:10px;font-weight:800;letter-spacing:1px;display:flex;align-items:center;gap:7px;margin-bottom:20px}.tiny-square{width:5px;height:5px;background:#dce997}.capacity{margin-left:auto;font-size:8px;font-weight:500;letter-spacing:.8px;color:#a7b5a9}label{display:block;font-size:8px;letter-spacing:1.3px;color:#a2b4a7;margin-bottom:7px}input{background:#10282488;border:1px solid #52665b;color:#f5f5de;width:100%;border-radius:3px;outline:none;height:38px;padding:0 11px;font-size:12px}input:focus{border-color:#dce997}input::placeholder{color:#7c9385}.room-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}#colors{display:flex;gap:6px;height:38px;align-items:center}.swatch{width:20px;height:20px;border-radius:50%;border:2px solid transparent;padding:0;outline-offset:3px}.swatch.selected{outline:1px solid #e8efd0}#play{width:100%;background:#e0eb97;color:#243c31;border:0;border-radius:3px;font-size:13px;font-weight:800;padding:14px;margin-top:19px;display:flex;justify-content:space-between;align-items:center;transition:background .2s}#play:hover{background:#f1ffc0}#play:disabled{opacity:.5}#play span{font-size:21px;line-height:16px}.card-note{text-align:center;font-size:9px;color:#a5b6a6;margin:12px 0 0}.card-note span{margin-right:3px}.features{display:flex;gap:17px;font-size:9px;color:#b8c4af;margin-top:20px}.scene-caption{position:fixed;right:5vw;bottom:115px;display:flex;align-items:center;gap:11px}.scene-caption>div{font-size:16px;font-weight:800;letter-spacing:3px}.scene-caption small{display:block;font-size:8px;letter-spacing:1.3px;margin-top:7px;color:#d0d7c5}.coords{font-size:9px;line-height:1.9;margin-left:25px;color:#d0d7c5}footer{position:fixed;left:42px;right:42px;bottom:26px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e4ebcf26;padding-top:19px}.controls{display:flex;gap:24px;font-size:9px;color:#c5cfc0}.controls>span{display:flex;align-items:center;gap:4px}kbd{font:9px Manrope,sans-serif;border:1px solid #d1dfc749;border-radius:3px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;color:#edf1dd}kbd:last-of-type{margin-right:5px}.build{font-size:8px;letter-spacing:1.5px;color:#c2cfba}.build i{color:#e0eb97;margin:0 8px}.panel{background:#19362ed9;border:1px solid #b7cab840;backdrop-filter:blur(12px);border-radius:6px;padding:18px}.session{position:fixed;left:35px;top:115px;width:270px}.session h2{font-size:20px;letter-spacing:2px;margin:12px 0}.session h2 span{float:right;font-size:10px;letter-spacing:0;margin-top:6px;color:#e0eb97}.session-bottom{font-size:10px;display:flex;justify-content:space-between;align-items:center}.session button{font-size:10px;color:#e0eb97;border:0;background:none;padding:5px}#players{font-size:10px;color:#c4d2c3;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.telemetry{position:fixed;right:35px;top:115px;width:180px}.wheel-bars{display:flex;gap:17px;height:75px;margin-top:17px;align-items:end}.wheel-bars>div{height:70px;width:22px;display:flex;flex-direction:column;justify-content:end;gap:7px;text-align:center;font-size:9px}.wheel-bars i{display:block;height:30px;background:#dce997;max-height:52px;border-radius:2px;transition:height .08s}.telemetry small{display:block;font-size:8px;letter-spacing:1px;color:#a8bdaa;margin-top:14px}.speed-panel{position:fixed;right:45px;bottom:106px;width:230px}.speed-panel strong{font:90px Oswald,sans-serif;letter-spacing:2px}.gear{display:inline-block;background:#e0eb97;color:#294434;padding:6px 10px;border-radius:3px;margin-right:13px;font-weight:800}.speed-unit{font-size:10px;position:absolute;right:0;top:76px}.speed-track{height:3px;background:#ffffff44;margin:6px 0 13px}.speed-track i{display:block;height:100%;background:#e0eb97;width:0}.speed-panel small{font-size:8px;letter-spacing:1px}.speed-panel small span{float:right;color:#c4d2be}.drive-actions{position:fixed;top:31px;left:50%;transform:translateX(-50%);display:flex;gap:10px}.drive-actions button{background:#19362ebb;border:1px solid #ffffff33;color:#e4eeac;border-radius:4px;padding:9px;font-size:11px}.drive-actions span{color:#d5dfcf;font-size:10px;margin-left:4px}#map{position:fixed;left:35px;bottom:102px;border:1px solid #c3d1b844;border-radius:50%;background:#17382acc}#toast{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);background:#183c30ed;padding:10px 20px;border-radius:4px;font-size:12px}#toast:empty{display:none}[hidden]{display:none!important}#touch{position:fixed;bottom:25px;left:20px;right:20px;display:flex;justify-content:space-between}#touch button{width:52px;height:52px;margin:3px;background:#1b3b30bb;border:1px solid #e0eb9788;border-radius:10px;color:#e0eb97;font-size:24px;touch-action:none;user-select:none}button:focus-visible{outline:2px solid #fff;outline-offset:4px}@media(min-height:900px){main{top:20vh}}@media(max-height:760px) and (min-width:701px){main{top:15vh}h1{font-size:52px;margin:16px 0}.intro{margin-bottom:16px}.entry-card{padding:16px}.features{margin-top:13px}.card-title{margin-bottom:12px}}@media(max-width:700px){header{padding:20px}.brand{font-size:20px}.brand small{font-size:6px}.top-right{gap:8px}.live{padding:9px;font-size:8px}.icon-button{font-size:9px;padding:8px}main{left:7vw;top:15vh;width:86vw}h1{font-size:49px;margin:18px 0}.intro{font-size:12px;margin-bottom:15px}.entry-card{width:100%;max-width:355px;padding:17px}.features{gap:10px;font-size:8px}.scene-caption{display:none}footer{left:20px;right:20px;bottom:16px}.controls{display:none}.build{font-size:7px}.vignette{background:linear-gradient(90deg,#122f2de8,#122f2d77)}.session{left:15px;top:92px;width:220px;padding:12px}.telemetry{right:15px;top:92px;width:105px;padding:10px}.telemetry .eyebrow{font-size:7px;letter-spacing:0}.wheel-bars{gap:6px}.telemetry small{font-size:6px;letter-spacing:0}.drive-actions{top:auto;bottom:90px;left:50%;white-space:nowrap}.drive-actions span{display:none}.speed-panel{right:20px;bottom:156px;width:145px}.speed-panel strong{font-size:53px}.speed-unit{top:43px;font-size:8px}.gear{margin-right:5px;padding:3px 6px}#map{width:110px;height:110px;left:20px;bottom:157px}body.driving footer{display:none}#toast{bottom:145px;max-width:90%;text-align:center}}
