@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#e9ede3;--ink:#152e2b;--muted:#afc1b3;--accent:#e7b364;--line:#ffffff20;background:#aec4be;font-family:Manrope,Segoe UI,sans-serif;font-size:12px}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,select,input{font:inherit}button,a,summary,select{touch-action:manipulation}button{color:inherit;border:1px solid var(--line);cursor:pointer;background:#ffffff08;border-radius:5px;padding:9px 11px;transition:background .15s,border-color .15s}button:hover{background:#ffffff16;border-color:#b5c5ab88}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{opacity:.38;cursor:wait}button.accent{color:#182f27;background:var(--accent);border-color:var(--accent);font-weight:800}a{color:#e7b364;text-decoration:none}#world{outline:none;width:100%;height:100%;position:fixed;inset:0}.topbar{z-index:5;background:#112b27f5;border-bottom:1px solid #adbe9a33;align-items:center;gap:38px;height:82px;padding:0 28px;display:flex;position:fixed;inset:0 0 auto}.brand{color:#edeedc;letter-spacing:1.8px;flex:none;align-items:center;gap:12px;font-size:15px;display:flex}.brand b{color:#e7b364}.brand small{letter-spacing:2.7px;margin-top:7px;font-size:8px;font-weight:600;display:block}.brand em{color:#a9b9a2;letter-spacing:1px;margin-left:8px;font-style:normal}.brand-icon{border-right:1px solid #aec0a144;padding-right:14px;font:700 38px Barlow Condensed,sans-serif}.topbar nav{gap:4px;display:flex}.topbar nav button{white-space:nowrap;color:#bdc9b8;border:0;border-radius:0;padding:31px 16px}.topbar nav button.active{color:#f4d39c;box-shadow:inset 0 -3px #e7b364}.top-tools{gap:6px;margin-left:auto;display:flex}.top-tools button{white-space:nowrap;padding:7px 9px;font-size:10px}#panel-toggle{display:none}#panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:3;scrollbar-width:thin;scrollbar-color:#6d8272 #132d29;background:#152e2bee;border:1px solid #c8d7ad38;border-radius:9px;width:296px;padding:22px;position:fixed;top:100px;bottom:155px;left:22px;overflow-y:auto}.eyebrow{letter-spacing:2px;color:#dfb675;font-size:9px;font-weight:800}h1{letter-spacing:.5px;margin:8px 0 4px;font:600 35px Barlow Condensed,Segoe UI,sans-serif}.muted,.fine{color:var(--muted);line-height:1.7}.muted{margin:0 0 17px;font-size:11px}.fine{font-size:10px}.field{color:#c6d0bd;gap:6px;margin:12px 0;font-size:10px;display:grid}.field input,.field select,select{color:#f0f0e3;background:#203c35;border:1px solid #b6caa333;border-radius:4px;width:100%;min-height:36px;padding:9px 10px}.spec-grid{border-bottom:1px solid var(--line);justify-content:space-between;margin-bottom:14px;padding:5px 0 16px;display:flex}.spec-grid span{color:#9fb49f;letter-spacing:1.4px;font-size:8px}.spec-grid b{color:#e7ecdc;letter-spacing:0;margin-top:5px;font-size:15px;display:block}.section-head{justify-content:space-between;align-items:center;gap:8px;margin:22px 0 10px;display:flex}.section-head h2{margin:0;font-size:11px}.section-head span{letter-spacing:1px;color:#c5b77d;font-size:7px}.actions{grid-template-columns:1fr 1fr;gap:6px;display:grid}.actions button{padding:9px 4px;font-size:10px}details{border-bottom:1px solid var(--line);margin:13px 0;padding-bottom:11px}summary{cursor:pointer;color:#b8c6b2;padding:4px 0;font-size:10px}details[open] summary{margin-bottom:10px}.wide{width:100%;margin-top:8px}.check{align-items:center;gap:7px;margin:12px 0;font-size:10px;display:flex}.overlay{pointer-events:none;position:fixed;top:116px;left:352px;right:28px}#view-title{color:#233f34;text-shadow:0 1px 10px #f1f4d7aa}#view-title .eyebrow{color:#3b5948}#view-title h2{margin:6px 0;font:600 44px Barlow Condensed,sans-serif}#view-title p{margin:5px 0;font-size:11px}#race-panel{pointer-events:auto;background:#16322de8;border:1px solid #c8d7ad40;border-radius:7px;width:430px;min-height:206px;margin-top:15px;padding:18px;position:relative}#race-panel[hidden]{display:none}.race-heading{justify-content:space-between;gap:8px;display:flex}.race-heading span:last-child{letter-spacing:1px;color:#b7cbb1;font-size:8px}#lap-time{letter-spacing:1px;font-variant-numeric:tabular-nums;margin:4px 0;font:500 55px Barlow Condensed,sans-serif}#lap-hint{color:#c1d0b9;width:240px;min-height:30px;font-size:10px}#sector-times{color:#dfb675;font-size:10px}#race-map{pointer-events:none;width:145px;height:122px;position:absolute;top:30px;right:4px}.race-actions{gap:5px;margin-top:15px;display:flex}.race-actions button{padding:8px;font-size:9px}#race-best{color:#bbcbb4;margin:13px 0 0;font-size:10px}#notice{z-index:4;background:#18362de8;border:1px solid #c2d59c55;border-left:3px solid #e7b364;border-radius:4px;max-width:650px;padding:11px 16px;font-size:11px;position:fixed;bottom:144px;left:352px}#notice.error{border-left-color:#f08568}.hud{z-index:5;background:#102c28f5;border-top:1px solid #a9bd9744;align-items:center;gap:35px;height:112px;padding:20px 32px;display:flex;position:fixed;bottom:0;left:0;right:0}.speed{align-items:center;gap:12px;min-width:155px;display:flex}.speed>b{font-variant-numeric:tabular-nums;font:500 65px/1 Barlow Condensed,sans-serif}.speed>span{letter-spacing:2px;color:#afc2a8;font-size:8px}.speed strong{color:#e7b364;margin-top:4px;font-size:20px;display:block}.gauge{width:165px}.gauge>span{letter-spacing:1.5px;color:#abbea5;justify-content:space-between;font-size:8px;display:flex}.gauge b{color:#e9e9d9;letter-spacing:.6px;font-size:9px}.gauge progress{accent-color:#e4b36b;background:#244439;border:0;border-radius:2px;width:100%;height:4px;margin:12px 0 8px;display:block}.gauge progress::-webkit-progress-bar{background:#2d4a3f;border-radius:2px}.gauge progress::-webkit-progress-value{background:#dfb575;border-radius:2px}.gauge small{color:#a6baa0;font-size:8px}.key-help{color:#aebfa7;gap:7px;margin-left:auto;font-size:9px;display:grid}kbd{color:#e8e7cd;border:1px solid #8da38666;border-radius:2px;padding:1px 3px;font:9px inherit}.health-row{color:#adbea7;align-items:center;gap:8px;margin:7px 0;font-size:9px;display:flex}.health-row span{min-width:65px}.health-row progress{accent-color:#c5c986;flex:1;height:4px}.health-row b{min-width:29px;font-size:9px;font-weight:500}pre{white-space:pre-wrap;color:#c5d0bb;font:9px/1.7 Consolas,monospace}dialog{color:#e8eddf;background:#17332d;border:1px solid #d2dfad55;border-radius:9px;width:1000px;max-width:min(1100px,94vw);max-height:86vh;padding:25px;box-shadow:0 20px 80px #001b21aa}dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0b231eb0}.dialog-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.dialog-head h2{margin:0;font:600 28px Barlow Condensed,sans-serif}.comparison-scroll{margin:15px 0;overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:10px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:11px 12px}th{letter-spacing:.7px;color:#c6bf8b;font-size:9px}#workshop-editor{grid-template-columns:repeat(3,1fr);gap:0 18px;display:grid}.workshop-actions{flex-wrap:wrap;gap:7px;display:flex}.import-preset{padding:6px;font-size:10px}#workshop-charts{flex-wrap:wrap;gap:20px;display:flex}#workshop-charts section{flex:1;min-width:210px}.chart-row{grid-template-columns:110px 1fr 50px;align-items:center;gap:8px;margin:7px 0;font-size:9px;display:grid}.chart-row meter{width:100%}#touch-controls{z-index:4;gap:5px;display:flex;position:fixed;bottom:144px;right:25px}#touch-controls button{background:#17342cdd;padding:10px;font-size:10px}#touch-controls button.accent{background:var(--accent)}body.cabin-mode #view-title,body.panel-hidden #panel{display:none}body.panel-hidden .overlay,body.panel-hidden #notice{left:28px}@media (min-width:1600px){#panel{width:310px}.overlay,#notice{left:365px}.topbar{gap:65px}.gauge{width:210px}}@media (max-width:1150px){.topbar{gap:12px;padding:0 17px}.brand{font-size:12px}.brand em{display:none}.topbar nav button{padding:31px 10px;font-size:10px}.top-tools button{font-size:9px}.hud{gap:20px;padding:18px 22px}.gauge{width:135px}.key-help{display:none}#touch-controls{bottom:164px}.overlay{left:340px}.overlay #view-heading{font-size:35px}#notice{max-width:480px;bottom:115px;left:340px;right:25px}#panel{bottom:128px}}@media (max-width:760px){.topbar{gap:6px;height:65px;padding:0 12px}.brand-icon{padding-right:8px;font-size:28px}.brand{letter-spacing:.6px;gap:8px;font-size:10px}.brand small{letter-spacing:1px;font-size:7px}.topbar nav{margin-left:auto}.topbar nav button{padding:24px 7px;font-size:8px}.top-tools{gap:3px;margin:0}.top-tools button{display:none}#panel-toggle{padding:8px!important;display:block!important}.overlay{top:84px;left:16px;right:16px}#view-title h2{font-size:32px}#view-title p{font-size:10px}#panel{width:280px;padding:17px;display:none;top:78px;bottom:205px;left:12px}body.mobile-panel #panel{display:block}body.mobile-panel .overlay{display:none}.hud{flex-wrap:nowrap;gap:14px;height:99px;padding:13px 12px}.speed{gap:6px;min-width:89px}.speed>b{font-size:46px}.speed>span{font-size:7px}.speed strong{font-size:16px}.gauge{width:calc(33.3333vw - 53.3333px);min-width:48px}.gauge span{letter-spacing:0;font-size:7px}.gauge b{font-size:7px}.gauge small{font-size:7px;display:block}.gauge progress{margin:9px 0 6px}#notice{max-width:none;padding:8px 10px;font-size:9px;bottom:158px;left:12px;right:12px}#touch-controls{justify-content:space-between;gap:4px;bottom:109px;left:12px;right:12px}#touch-controls button{padding:10px 8px;font-size:9px}#race-panel{width:min(430px,100%);margin-top:12px;padding:14px}#lap-time{font-size:46px}#race-map{width:125px;top:34px;right:0}#lap-hint{width:64%}.race-actions button{padding:8px 6px;font-size:8px}.race-heading .eyebrow{letter-spacing:1px;font-size:8px}.race-heading span:last-child{font-size:7px}#workshop-editor{grid-template-columns:repeat(2,1fr)}dialog{padding:18px}body.panel-hidden .overlay{left:16px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (min-width:761px){#race-panel{width:325px;min-height:215px;margin-top:0;padding:16px;position:absolute;top:0;right:0}#lap-time{font-size:46px}#lap-hint{width:185px}#race-map{width:110px;height:100px;top:44px;right:0}.race-heading .eyebrow{letter-spacing:1px;font-size:8px}.race-heading span:last-child{font-size:7px}.race-actions{flex-wrap:wrap}.race-actions button{padding:8px 5px;font-size:8px}#view-title{max-width:calc(100% - 345px)}#view-title h2{font-size:35px}}
