:root{--yel: #ffc21a;--ora: #ff6a13;--ink: #15161a;--paper: #f4f1ea;--dim: rgba(244, 241, 234, .72);--hz: repeating-linear-gradient(-45deg, var(--yel) 0 14px, var(--ink) 14px 28px)}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#8cb6d6;color:var(--paper);font-family:Barlow,system-ui,sans-serif}#c{position:fixed;inset:0;width:100%;height:100%;display:block}#hud{position:fixed;inset:0;pointer-events:none}#loading{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:var(--ink);transition:opacity 1s;z-index:5}#loading.done{opacity:0;pointer-events:none}#loading .title{font-family:Bungee,Barlow,sans-serif;font-size:clamp(40px,9vw,120px);color:var(--yel);letter-spacing:.02em}#loading .stripes{width:min(520px,80vw);height:14px;background:var(--hz)}#loading .bar{width:min(520px,80vw);height:6px;background:#ffffff1f}#loading .bar i{display:block;height:100%;width:0;background:var(--yel);transition:width .3s}#msg{font:600 15px Barlow Condensed,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}#hud.off{display:none}.cross{position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px}.cross:before,.cross:after{content:"";position:absolute;background:var(--paper);box-shadow:0 0 0 1px #00000080}.cross:before{left:12px;top:0;width:2px;height:26px}.cross:after{top:12px;left:0;height:2px;width:26px}.cross i{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px;border-radius:50%;border:3px solid var(--yel);opacity:0;transform:scale(.4)}.bill{position:absolute;left:24px;top:18px}.bill .lbl{font:700 13px Barlow Condensed,sans-serif;letter-spacing:.22em;color:var(--yel);text-shadow:0 2px 0 rgba(0,0,0,.5)}.bill .amt{font:400 44px Bungee,sans-serif;line-height:1;color:var(--paper);text-shadow:0 3px 0 rgba(0,0,0,.45)}.bill .sub{font:600 14px Barlow Condensed,sans-serif;letter-spacing:.08em;color:var(--dim);margin-top:4px;text-shadow:0 1px 0 rgba(0,0,0,.6)}.flags{position:absolute;left:50%;top:18px;transform:translate(-50%);display:flex;gap:8px}.flags span{font:700 13px Barlow Condensed,sans-serif;letter-spacing:.14em;padding:5px 10px;background:#15161ab3;border-left:4px solid var(--yel)}.flags span.off{display:none}.tools{position:absolute;left:50%;bottom:20px;transform:translate(-50%);display:flex;gap:5px;transition:opacity .2s}.tools.dim{opacity:.35}.tool.ridebtn{border-top-color:var(--ora)}.tool{width:78px;padding:7px 6px 6px;background:#15161aad;border-top:4px solid rgba(255,255,255,.18);text-align:center;transition:transform .15s,background .15s}.tool b{display:block;font:400 15px Bungee,sans-serif;color:var(--dim)}.tool span{display:block;font:600 13px Barlow Condensed,sans-serif;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool.on{background:var(--yel);color:var(--ink);border-top:4px solid var(--ink);transform:translateY(-6px)}.tool.on b{color:var(--ink)}.hint{position:absolute;left:50%;bottom:104px;transform:translate(-50%);max-width:min(720px,calc(100vw - 32px));padding:8px 16px;background:#15161ab8;font-size:16px;line-height:1.4;text-align:center;opacity:0;transition:opacity .3s}.hint.on{opacity:1}.hint b{color:var(--yel);font-weight:600}.charge{position:absolute;left:50%;top:calc(50% + 34px);width:120px;height:6px;margin-left:-60px;background:#0006;opacity:0}.charge i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--yel),var(--ora))}.charge.on{opacity:1}.keys{position:absolute;right:24px;bottom:96px;font:600 13px Barlow Condensed,sans-serif;letter-spacing:.06em;line-height:1.8;text-align:right;color:var(--dim);text-shadow:0 1px 0 rgba(0,0,0,.7)}.keys.off{display:none}.bill .rank{margin-top:10px;font:600 13px Barlow Condensed,sans-serif;letter-spacing:.08em;color:var(--dim);text-shadow:0 1px 0 rgba(0,0,0,.6)}.bill .rank b{color:var(--yel);font-weight:700;letter-spacing:.16em}.bill .rbar{width:220px;height:4px;margin-top:4px;background:#0006}.bill .rbar i{display:block;height:100%;width:0;background:var(--yel);transition:width .5s}.card{position:absolute;right:24px;top:18px;width:300px;padding:10px 14px 12px;background:#15161ac7;border-left:5px solid var(--yel);transition:opacity .3s,border-color .3s}.card.off{opacity:0}.card.done{border-left-color:#6fdc6f}.card.failed{border-left-color:#ff4d3d}.card .cl{font:700 12px Barlow Condensed,sans-serif;letter-spacing:.24em;color:var(--yel)}.card .cl em{font-style:normal;color:var(--paper)}.card .ct{font:400 17px Bungee,sans-serif;line-height:1.15;margin-top:4px}.card .cd{font-size:13px;line-height:1.35;color:var(--dim);margin-top:4px}.card i{display:block;height:5px;margin-top:8px;background:#ffffff1f}.card i u{display:block;height:100%;background:linear-gradient(90deg,var(--yel),var(--ora));transition:width .3s}.card .ck{position:absolute;right:10px;top:9px;font:600 11px Barlow Condensed,sans-serif;color:var(--dim)}.map{position:absolute;right:24px;top:168px;width:200px;height:126px;border:2px solid rgba(255,255,255,.15);image-rendering:auto}.chain{position:absolute;left:50%;top:calc(50% - 90px);transform:translate(-50%);text-align:center;transition:opacity .25s}.chain.off{opacity:0}.chain b{display:block;font:400 30px Bungee,sans-serif;color:var(--ora);text-shadow:0 3px 0 rgba(0,0,0,.45)}.chain i{display:block;width:140px;height:4px;margin:4px auto 0;background:#00000073}.chain i u{display:block;height:100%;background:var(--ora)}.tag{position:absolute;left:50%;top:calc(50% + 30px);transform:translate(-50%);text-align:center;opacity:0;transition:opacity .2s;white-space:nowrap;text-shadow:0 1px 0 rgba(0,0,0,.8),0 0 8px rgba(0,0,0,.5)}.tag.on{opacity:1}.tag b{display:block;font:700 16px Barlow Condensed,sans-serif;letter-spacing:.12em;text-transform:uppercase}.tag span{font:600 13px Barlow Condensed,sans-serif;letter-spacing:.06em;color:var(--dim)}.ride{position:absolute;left:24px;bottom:96px;width:230px;padding:10px 14px;background:#15161abf;border-left:5px solid var(--ora)}.ride.off{display:none}.ride .rn{font:700 12px Barlow Condensed,sans-serif;letter-spacing:.24em;color:var(--ora)}.ride .spd{font:400 40px Bungee,sans-serif;line-height:1}.ride .spd small{font:600 14px Barlow Condensed,sans-serif;margin-left:6px;color:var(--dim)}.ride .alt{font:600 13px Barlow Condensed,sans-serif;letter-spacing:.1em;color:var(--dim)}.ride .bars{display:grid;grid-template-columns:auto 1fr;gap:4px 8px;align-items:center;margin-top:6px;font:700 11px Barlow Condensed,sans-serif;letter-spacing:.16em;color:var(--dim)}.ride .bars i{display:block;height:6px;background:#ffffff1f}.ride .bars i u{display:block;height:100%}.ride .bars .hp u{background:linear-gradient(90deg,#ff4d3d,#6fdc6f)}.ride .bars .nb u{background:linear-gradient(90deg,#2fa8ff,#9fe2ff)}.pops{position:absolute;left:50%;top:13%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none}.pop{text-align:center}.pop b{display:block;font:400 clamp(26px,3.4vw,46px) Bungee,sans-serif;color:var(--yel);text-shadow:0 4px 0 rgba(0,0,0,.45);letter-spacing:.02em}.pop.red b{color:#ff4d3d}.pop.plain b{color:var(--paper);font-size:clamp(20px,2.4vw,30px)}.pop span{font:600 16px Barlow Condensed,sans-serif;letter-spacing:.1em;text-shadow:0 1px 0 rgba(0,0,0,.8)}.tricks{position:absolute;right:8%;top:42%;display:flex;flex-direction:column;align-items:flex-end;gap:4px;pointer-events:none}.pop.drive b{font-size:clamp(18px,2vw,26px);color:#7fe6ff;text-shadow:0 3px 0 rgba(0,0,0,.5);font-style:italic}.pop.drive span{font-size:13px}.ride.road{width:270px}.ride .boost{margin-top:6px;display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;font:700 12px Barlow Condensed,sans-serif;letter-spacing:.2em;color:#7fe6ff}.ride .boost i{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;height:12px;transform:skew(-18deg)}.ride .boost i u{display:block;height:100%;background:linear-gradient(90deg,#ff8a1a,#ffd23a);box-shadow:inset 0 0 0 1px #ffffff14}.ride .boost i u{background-color:transparent}.ride.full .boost i{animation:boostfull .6s ease-in-out infinite alternate}.ride.boosting{border-left-color:#2fa8ff}.ride.boosting .spd{color:#9fe2ff}.ride .cnt{margin-top:5px;font:600 11px Barlow Condensed,sans-serif;letter-spacing:.14em;color:var(--dim)}.ride .cnt b{color:var(--paper)}@keyframes boostfull{0%{filter:brightness(1)}to{filter:brightness(1.6) drop-shadow(0 0 6px #ffb02e)}}@keyframes popin{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.scrub{position:absolute;left:50%;bottom:120px;transform:translate(-50%);text-align:center;padding:10px 18px;background:#15161abf}.scrub.off{display:none}.scrub b{display:block;font:400 28px Bungee,sans-serif;color:#9fe2ff}.scrub i{display:block;width:260px;height:6px;margin:6px auto;background:#ffffff1f}.scrub i u{display:block;height:100%;background:#9fe2ff}.scrub span{font:600 12px Barlow Condensed,sans-serif;letter-spacing:.08em;color:var(--dim)}.scrub kbd{font:600 11px Barlow Condensed,sans-serif;padding:0 5px;background:var(--paper);color:var(--ink);border-radius:3px}.garage{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:4;background:#15161a73}.garage.on{display:flex}.gcard{width:min(760px,calc(100vw - 32px));padding:0 0 18px;background:#15161aeb}.gcard .tape{height:14px;background:var(--hz)}.gcard h2{margin:16px 22px 12px;font:400 30px Bungee,sans-serif;color:var(--yel)}.gcard .grow{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:0 22px}.gcard button{padding:16px 6px 12px;cursor:pointer;border:2px solid rgba(255,255,255,.18);background:#ffffff0a;color:var(--paper)}.gcard button:hover{background:var(--yel);color:var(--ink);border-color:var(--yel)}.gcard button b{display:block;font:400 24px Bungee,sans-serif}.gcard button span{display:block;font:700 14px Barlow Condensed,sans-serif;letter-spacing:.08em;text-transform:uppercase;margin-top:6px}.gcard p{margin:14px 22px 0;font-size:14px;color:var(--dim)}.gcard kbd{font:600 12px Barlow Condensed,sans-serif;padding:1px 6px;background:var(--paper);color:var(--ink);border-radius:3px}#hud.promo .tools,#hud.promo .keys,#hud.promo .map,#hud.promo .card,#hud.promo .bill .sub,#hud.promo .bill .rank,#hud.promo .bill .rbar,#hud.promo .hint,#hud.promo .cross,#hud.promo .tag,#hud.promo .flags,#hud.promo .ride .cnt{display:none}#hud.promo .ride{bottom:28px}#hud.promo .pop.plain,#hud.promo .chain{display:none}.promocap{position:fixed;left:0;right:0;top:24%;text-align:center;pointer-events:none;z-index:7}.promocap b{display:block;font:400 clamp(40px,6vw,92px) Bungee,sans-serif;color:var(--yel);text-shadow:0 6px 0 rgba(0,0,0,.45),0 0 30px rgba(0,0,0,.35);letter-spacing:.01em}.promocap span{display:block;margin-top:6px;font:700 clamp(16px,1.7vw,26px) "Barlow Condensed",sans-serif;letter-spacing:.3em;color:var(--paper);text-shadow:0 2px 0 rgba(0,0,0,.7)}.tweaks{position:fixed;top:12px;left:12px;width:300px;max-height:calc(100vh - 24px);overflow-y:auto;z-index:6}.tweaks.off{display:none}.keys kbd,.tcard kbd{font:600 12px Barlow Condensed,sans-serif;padding:1px 6px;background:var(--paper);color:var(--ink);border-radius:3px}.titlescreen{position:fixed;inset:0;display:none;align-items:flex-end;padding:0 0 7vh 6vw;pointer-events:none;z-index:3;background:linear-gradient(to right,rgba(21,22,26,.78),rgba(21,22,26,.2) 55%,transparent 75%)}.titlescreen.on{display:flex}.tcard{max-width:600px;pointer-events:auto}.tcard .tape{height:16px;width:100%;background:var(--hz);margin-bottom:18px}.tcard h1{margin:0;font:400 clamp(44px,8vw,104px) Bungee,sans-serif;line-height:.95;color:var(--yel);text-shadow:0 6px 0 rgba(0,0,0,.35)}.tcard .kicker{font:700 15px Barlow Condensed,sans-serif;letter-spacing:.3em;color:var(--paper);margin:8px 0 0}.tcard p{margin:14px 0 20px;font-size:17px;line-height:1.55;color:var(--paper)}.tcard button.go{font:400 22px Bungee,sans-serif;padding:14px 40px;border:none;cursor:pointer;color:var(--ink);background:var(--yel);box-shadow:0 6px #a87a00}.tcard button.go:active{transform:translateY(4px);box-shadow:0 2px #a87a00}.tcard .keys2{margin-top:18px;font:500 14px Barlow Condensed,sans-serif;letter-spacing:.04em;line-height:2;color:var(--dim)}.qpick{display:flex;gap:8px;align-items:center;margin-top:16px}.qpick span{font:700 13px Barlow Condensed,sans-serif;letter-spacing:.18em;text-transform:uppercase;margin-right:4px}.qpick button{font:600 14px Barlow Condensed,sans-serif;letter-spacing:.06em;padding:6px 14px;cursor:pointer;color:var(--paper);background:#15161ab3;border:2px solid rgba(255,255,255,.25)}.qpick button.on{background:var(--yel);color:var(--ink);border-color:var(--yel)}@media(max-width:1280px){.tool{width:62px}.tool span{font-size:11px}}@media(max-width:900px){.tool{width:48px}.tool span,.keys,.map{display:none}.card{width:220px}}body.gritty{--yel: #d99a4e;--ora: #c8642e;--paper: #efe9df}body.gritty .bill .lbl{font:600 12px Barlow Condensed,sans-serif;letter-spacing:.38em;color:#efe9df99}body.gritty .bill .amt{font:500 40px Barlow Condensed,sans-serif;letter-spacing:.04em;color:#f3eee6;text-shadow:0 2px 14px rgba(0,0,0,.55)}body.gritty .bill .rank b{color:#d99a4e}body.gritty .pop b{font:600 clamp(26px,3vw,42px) "Barlow Condensed",sans-serif;letter-spacing:.26em;color:#f3eee6;text-shadow:0 2px 16px rgba(0,0,0,.7)}body.gritty .pop span{font-weight:500;letter-spacing:.18em;color:#efe9dfcc}body.gritty .pop.red b{color:#ff7a52}body.gritty .pop.drive b{font-size:clamp(16px,1.7vw,22px);font-style:normal;letter-spacing:.3em;color:#cfe3ea}body.gritty .chain b{font:600 24px Barlow Condensed,sans-serif;letter-spacing:.3em;color:#d99a4e}body.gritty .promocap b{font:600 clamp(36px,4.6vw,70px) "Barlow Condensed",sans-serif;letter-spacing:.32em;color:#f3eee6;text-shadow:0 3px 24px rgba(0,0,0,.7)}body.gritty .promocap span{color:#d99a4e;letter-spacing:.4em}body.gritty .ride{background:#0c0c0e9e;border-left-color:#c8642e}body.gritty .ride .rn{color:#d99a4e}body.gritty .ride .spd{font:500 42px Barlow Condensed,sans-serif}body.gritty .ride .boost i u{background:linear-gradient(90deg,#c8642e,#f0b45a)}body.gritty .card{background:#0c0c0ea8;border-left-color:#c8642e}body.gritty .card .ct{font:600 19px Barlow Condensed,sans-serif;letter-spacing:.08em}body.gritty .tool{background:#0c0c0e8c;border-top-color:#ffffff1f}body.gritty .tool b{font:600 15px Barlow Condensed,sans-serif}body.gritty .tool.on{background:#efe9dfe0;border-top-color:#c8642e}body.gritty .tag b{letter-spacing:.24em}body.film .pops{top:17%}body.film .tricks{top:46%}
