:root{--ink:#0b1220;--glass:#0a122075;--glass-strong:#0a1220b8;--line:#ffffff24;--text:#f4f7fb;--muted:#eaf1fab8;--accent:#ff5a1f;--accent2:#16c1d8;--good:#3ee07a;--bad:#ff4d4d;--display:"Barlow Condensed", "Arial Narrow", Arial, sans-serif;--body:"Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--text);font-family:var(--body);background:#0b1220;margin:0;overflow:hidden}#view{position:fixed;inset:0}#view canvas{width:100%;height:100%;display:block}.hidden{display:none!important}.mono{font-variant-numeric:tabular-nums}kbd{min-width:1.7em;font:600 .78em var(--body);text-align:center;color:var(--text);background:#ffffff14;border:1px solid #ffffff59;border-bottom-width:2px;border-radius:5px;margin:0 .12em;padding:.1em .45em;display:inline-block}#hud{pointer-events:none;text-shadow:0 1px 8px #00000059;position:fixed;inset:0}.panel{background:var(--glass);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:14px;padding:10px 16px}.label{font:600 11px var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.big{font:700 38px/1 var(--display);letter-spacing:.01em}.mid{font:700 28px/1 var(--display)}.hud-top{align-items:flex-start;gap:18px;display:flex;position:absolute;top:18px;left:18px;right:18px}.hud-top .left{min-width:170px}.hud-top .right{text-align:right;min-width:170px;position:relative}.progress{flex:1;max-width:640px;margin:0 auto;padding-top:16px}.track{background:#ffffff38;border-radius:3px;height:6px;position:relative}.fill{background:linear-gradient(90deg, var(--accent2), #fff);border-radius:3px;position:absolute;top:0;bottom:0;left:0}.dot{background:var(--accent);border:2px solid #fff;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;position:absolute;top:50%;box-shadow:0 0 12px #ff5a1fcc}.cp{background:#fffc;width:2px;height:14px;position:absolute;top:-4px}.ends{font:600 11px var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);justify-content:space-between;margin-top:8px;display:flex}.mult{font:800 30px var(--display);color:#ffffff40;transition:all .2s;position:absolute;top:14px;left:-58px}.mult.on{color:#ffc21a;text-shadow:0 0 18px #ffc21a99;transform:scale(1.12)}.split{font:600 15px var(--display);opacity:0;letter-spacing:.04em;margin-top:6px;transition:opacity .25s}.split.show{opacity:1}.split b{font-weight:700}.split .ahead{color:var(--good)}.split .behind{color:var(--bad)}.hud-bottom{justify-content:space-between;align-items:flex-end;display:flex;position:absolute;bottom:18px;left:18px;right:18px}.speedo{text-align:right}.speed{font:italic 800 84px/.9 var(--display);letter-spacing:-.01em}.unit{font:600 12px var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.trick{text-align:center;opacity:0;position:absolute;top:24%;left:0;right:0;transform:translateY(10px)scale(.92)}.trick.show{animation:2.2s ease-out forwards trick}.trick .name{font:italic 800 54px/1 var(--display);letter-spacing:.01em;text-transform:uppercase}.trick .pts{font:700 30px var(--display);color:#ffc21a;margin-top:6px}.trick .pts span{color:#fff;background:var(--accent);border-radius:6px;margin-left:6px;padding:0 8px}@keyframes trick{0%{opacity:0;transform:translateY(14px)scale(.85)}10%{opacity:1;transform:translateY(0)scale(1.06)}18%{transform:scale(1)}80%{opacity:1}to{opacity:0;transform:translateY(-16px)scale(1)}}.message{text-align:center;opacity:0;transition:opacity .3s;position:absolute;top:42%;left:0;right:0}.message.show{opacity:1}.message .main{font:italic 800 46px var(--display);text-transform:uppercase}.message .sub{font:500 16px var(--body);color:var(--muted);margin-top:4px}.message.bad .main{color:#ff6b5a}.message.good .main{color:#ffc21a}.feed{flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;top:120px;right:22px}.feed-item{font:700 20px var(--display);background:var(--glass);border:1px solid var(--line);border-radius:8px;padding:4px 12px;transition:opacity .5s,transform .5s;animation:.25s ease-out feedIn}.feed-item.good{color:var(--good)}.feed-item.bad{color:var(--bad)}.feed-item.out{opacity:0;transform:translate(20px)}@keyframes feedIn{0%{opacity:0;transform:translate(24px)}}.charge{opacity:0;text-align:center;width:180px;margin-left:-90px;transition:opacity .15s;position:absolute;bottom:92px;left:50%}.charge.on{opacity:1}.charge .bar{background:#ffffff40;border-radius:3px;height:6px;margin-top:4px;overflow:hidden}.charge .bar div{background:linear-gradient(90deg, #fff, var(--accent));width:0;height:100%}.camera-name{font:600 13px var(--body);letter-spacing:.1em;text-transform:uppercase;opacity:0;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.camera-name.show{animation:1.6s forwards fadeOut}@keyframes fadeOut{0%,60%{opacity:1}to{opacity:0}}.countdown{pointer-events:none;font:italic 800 180px var(--display);color:#fff;text-shadow:0 6px 40px #00000059;opacity:0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.countdown.pop{animation:.9s ease-out forwards pop}@keyframes pop{0%{opacity:0;transform:scale(1.6)}15%{opacity:1;transform:scale(1)}75%{opacity:1}to{opacity:0;transform:scale(.9)}}.screen{justify-content:flex-start;align-items:center;padding:4vh 6vw;display:flex;position:fixed;inset:0}#loading{background:radial-gradient(at 50% 40%,#1d3354,#0b1220 70%);justify-content:center}#pause,#results{background:#060c1859;justify-content:center}#menu{background:linear-gradient(90deg,#060c1899 0%,#060c1826 45%,#060c1800 70%)}.logo{font:italic 800 64px/.9 var(--display);letter-spacing:.02em}.logo span{color:var(--accent);margin-left:.18em}.big-logo{white-space:nowrap;padding-right:.08em;font-size:min(92px,20cqi)}.loading-box{text-align:center;width:min(420px,90vw)}.loading-text{color:var(--muted);margin:18px 0 12px;font-size:14px}.loading-bar{background:#ffffff26;border-radius:2px;height:4px;overflow:hidden}.loading-bar div{background:linear-gradient(90deg, var(--accent2), #fff);width:0;height:100%;transition:width .15s}.menu-card{background:var(--glass-strong);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:20px;width:min(520px,92vw);max-height:92vh;padding:30px 32px;overflow:auto;box-shadow:0 30px 80px #00000059;container-type:inline-size}.menu-card.narrow{text-align:center;width:min(400px,92vw)}.tagline{color:var(--muted);margin:14px 0 22px;font-size:15px;line-height:1.45}.btn{cursor:pointer;width:100%;font:700 22px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--text);border:1px solid var(--line);background:#ffffff14;border-radius:12px;margin:10px 0 0;padding:14px 18px;transition:transform .1s,background .2s;display:block}.btn:hover{background:#ffffff29}.btn:active{transform:scale(.98)}.btn.primary{background:linear-gradient(135deg,#ff6a2b,#e8401a);border-color:#0000;box-shadow:0 10px 30px #ff5a1f59}.btn.primary:hover{background:linear-gradient(135deg,#ff7a40,#f04a22)}.btn kbd{vertical-align:middle;border-color:#ffffff80;margin-left:8px;font-size:12px}.best{color:var(--muted);text-align:center;margin-top:12px;font-size:13px}.controls{grid-template-columns:auto 1fr;align-items:center;gap:9px 16px;margin:24px 0 16px;font-size:13.5px;display:grid}.controls>div:nth-child(odd){white-space:nowrap}.controls>div:nth-child(2n){color:var(--muted)}.tip{color:var(--muted);border-left:3px solid var(--accent2);margin-bottom:18px;padding:4px 0 4px 12px;font-size:13px;line-height:1.45}.settings{color:var(--muted);justify-content:space-between;align-items:center;font-size:13px;display:flex}.settings select{color:var(--text);border:1px solid var(--line);font:500 13px var(--body);background:#ffffff1a;border-radius:8px;margin-left:8px;padding:5px 8px}.settings select option{color:#111}.small{font-size:12px}.title2{font:italic 800 44px var(--display);text-transform:uppercase}.total{font:800 76px/1 var(--display);color:#ffc21a;margin:10px 0 16px}.new-best{color:#1b1300;font:700 14px var(--display);letter-spacing:.12em;text-transform:uppercase;background:#ffc21a;border-radius:20px;margin-top:8px;padding:4px 12px;display:inline-block}table.results{border-collapse:collapse;width:100%;margin-bottom:18px;font-size:14.5px}table.results td{border-bottom:1px solid var(--line);padding:7px 2px}table.results td:first-child{text-align:left;color:var(--muted)}table.results td:last-child{text-align:right;font-weight:600}table.results tr.sep td{border-top:1px solid #ffffff4d}@media (width<=700px){.big{font-size:26px}.speed{font-size:56px}.hud-top .left,.hud-top .right{min-width:0}.progress{display:none}.trick .name{font-size:34px}.screen{justify-content:center;padding:16px}}
