:root{font-family:Arial,Helvetica,sans-serif;color:#193f3c;background:#e7f1ef;font-synthesis:none;font-synthesis-weight:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #ed6039;outline-offset:6px}[hidden]{display:none!important}#game{position:relative;width:100%;height:100svh;min-height:420px;overflow:hidden}canvas{position:absolute;width:100%;height:100%;touch-action:none}.masthead{position:absolute;inset:30px 38px auto;display:flex;justify-content:space-between;align-items:flex-start;z-index:5;pointer-events:none}.masthead a,.masthead button{pointer-events:auto}.wordmark{font-weight:900;font-size:18px;letter-spacing:-.8px;line-height:1;text-decoration:none;color:inherit;display:grid;grid-template-columns:35px auto;align-items:center;column-gap:9px}.wordmark svg{width:32px;grid-row:span 2}.wordmark span{font-size:8px;letter-spacing:3.8px;margin-top:6px;font-weight:500}.tools{display:flex;gap:20px;align-items:center}.tools button{border:0;background:transparent;font-size:10px;font-weight:700;letter-spacing:1.5px;padding:10px 0}#pause{font-size:18px;width:25px;padding:4px}.intro{position:absolute;left:9%;top:22%;pointer-events:none}.intro button{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:700;display:flex;align-items:center;gap:9px}.orange-dot{width:7px;height:7px;background:#ed6039;border-radius:50%}h1{font-size:clamp(80px,10.2vw,158px);letter-spacing:-.075em;line-height:.85;margin:30px 0 27px;font-weight:900}h1 em{color:#ed6039;font-style:italic}.subtitle{font-size:17px;line-height:1.65;color:#577471;margin:0 0 30px}.primary{border:0;background:#ed6039;color:#fff;padding:19px 24px;min-width:218px;display:flex;justify-content:space-between;gap:38px;align-items:center;font-size:12px;letter-spacing:2px;font-weight:800;box-shadow:4px 4px 0 #cf4c29;transition:transform .15s,box-shadow .15s}.primary:hover{transform:translateY(-2px);box-shadow:4px 6px 0 #cf4c29}.primary:active{transform:translate(2px,2px);box-shadow:2px 2px 0 #cf4c29}.primary span{font-size:25px;line-height:12px}.quick-controls{display:flex;gap:16px;margin-top:24px;font-size:10px;align-items:center;color:#526f6c}.quick-controls span{white-space:nowrap}kbd{font:inherit;font-size:9px;border:1px solid #9ab2ae;border-radius:3px;padding:3px 5px;line-height:1.8}.pointer-note{opacity:.7}.personal-best{font-size:10px;font-weight:700;letter-spacing:1.5px;margin-top:25px}.hud{position:absolute;inset:105px 40px auto;display:flex;justify-content:space-between;pointer-events:none;font-variant-numeric:tabular-nums}.label{display:block;font-size:9px;letter-spacing:2px;font-weight:700}.score strong{display:block;font-size:52px;font-weight:800;letter-spacing:-3px;line-height:1.3}.score #combo{font-size:10px;letter-spacing:1.5px;color:#cf4c29;font-weight:800}.clock{text-align:center;position:absolute;left:50%;transform:translateX(-50%)}.clock strong{display:block;font-size:45px;letter-spacing:-2px;line-height:1.4}.clock strong span{font-size:18px;margin-left:3px}.clock.urgent{color:#d44127}.checkpoint-dots{display:flex;justify-content:center;gap:6px}.checkpoint-dots i{width:7px;height:7px;border:1px solid #658781;border-radius:50%}.checkpoint-dots i.done{background:#245653}.condition{text-align:right;display:flex;flex-direction:column;gap:14px}.condition #lives{font-size:16px;color:#ed6039;letter-spacing:3px}.condition #distance{font-size:10px;letter-spacing:1.5px}.slope-footer{position:absolute;bottom:28px;left:38px;right:38px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.slope-footer>div:first-child{display:flex;align-items:center;gap:12px}.trail-symbol{font-size:24px}.slope-footer span{font-size:10px;letter-spacing:1.5px;font-weight:700}.slope-footer small{display:block;font-size:8px;font-weight:400;letter-spacing:1.8px;margin-top:6px}#altitude{text-align:right;line-height:1.5}#speed{font-size:9px;letter-spacing:1.5px;position:absolute;left:50%;transform:translateX(-50%)}#speed strong{font-size:29px;letter-spacing:-1px}.toast{position:absolute;top:42%;left:50%;transform:translateX(-50%);pointer-events:none;text-align:center;font-weight:900;font-size:25px;color:#e25933;letter-spacing:-.8px;opacity:0;transition:opacity .15s;white-space:nowrap;text-shadow:0 2px 0 #f6fbf8}.toast.show{opacity:1}.toast small{display:block;font-size:10px;letter-spacing:1.6px;margin-top:7px;color:#245653}.lesson{position:absolute;top:51%;left:50%;transform:translateX(-50%);font-size:12px;letter-spacing:.5px;font-weight:700;pointer-events:none;background:#f5faf7df;padding:10px 15px;border-radius:30px}.lesson span{color:#ed6039;font-size:20px;padding-left:10px}.flow{position:absolute;bottom:96px;left:50%;transform:translateX(-50%);width:210px;text-align:center;color:#d64e28}.flow>span{font-size:12px;font-weight:900;letter-spacing:4px}.flow>div{height:3px;background:#d2dfda;margin:9px 0}.flow i{height:100%;background:#ed6039;display:block;width:0}.flow small{font-size:7px;letter-spacing:1.5px}.overlay{position:absolute;inset:0;background:#e7f1efdc;backdrop-filter:blur(8px);z-index:10;display:flex;align-items:center;justify-content:center}.result{width:min(470px,85vw);text-align:center}.result .eyebrow{justify-content:center;font-size:9px}.result h2{font-size:72px;letter-spacing:-5px;margin:18px 0;color:#193f3c;line-height:1}.result>p:not(.eyebrow){color:#617b75;font-size:14px;line-height:1.5}.result .primary{margin:30px auto 18px}.result-stats{display:flex;justify-content:center;gap:30px;margin:28px 0}.result-stats strong{display:block;font-size:30px;letter-spacing:-1px}.result-stats span{display:block;font-size:8px;letter-spacing:1.5px;margin-top:5px}.text-button{background:none;border:0;font-size:9px;letter-spacing:1.5px;padding:12px}.tuck{position:absolute;right:22px;bottom:95px;width:76px;height:76px;border:1px solid #24565366;background:#eff8f1bb;border-radius:50%;font-size:8px;line-height:1.7;letter-spacing:1px;touch-action:none;user-select:none}.tuck strong{font-size:10px}.tuck:active,.tuck.active{background:#ed6039;color:white;border-color:#ed6039}
@media(max-width:700px){.masthead{inset:22px 22px auto}.wordmark{font-size:15px;grid-template-columns:28px auto}.wordmark svg{width:26px}.wordmark span{font-size:7px;letter-spacing:3px}.tools{gap:13px}.intro{left:8%;top:22%}h1{font-size:clamp(78px,17vw,115px);margin:25px 0}.eyebrow{font-size:8px;letter-spacing:1.5px}.subtitle{font-size:14px}.primary{padding:17px 20px;min-width:190px}.quick-controls{flex-wrap:wrap;max-width:270px;gap:12px;margin-top:22px}.pointer-note{display:none}.hud{inset:92px 22px auto}.score strong{font-size:38px}.label{font-size:7px;letter-spacing:1.2px}.clock strong{font-size:35px}.condition #distance{font-size:8px}.condition #lives{font-size:13px}.score #combo{font-size:8px}.slope-footer{left:22px;right:22px;bottom:22px}.slope-footer span{font-size:8px;letter-spacing:1px}.slope-footer small{font-size:6px;letter-spacing:1px}#altitude{max-width:85px}.trail-symbol{font-size:18px!important}.result h2{font-size:58px}.result-stats{gap:22px}.toast{font-size:22px}.lesson{font-size:10px;white-space:nowrap}.flow{width:180px;bottom:110px}#speed strong{font-size:25px}}
@media(pointer:coarse){.quick-controls{font-size:0}.quick-controls span{font-size:0}.quick-controls span:first-child:after{content:'DRAG TO CARVE · HOLD TUCK FOR SPEED';font-size:9px;letter-spacing:1px}.quick-controls kbd{display:none}}
@media(max-height:600px) and (min-width:701px){.intro{top:20%}h1{font-size:82px;margin:18px 0}.subtitle{font-size:13px;margin-bottom:18px}.quick-controls{margin-top:16px}.personal-best{margin-top:16px}.hud{top:80px}.result h2{font-size:52px}.result-stats{margin:15px 0}.result .primary{margin:20px auto 10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.overlay{backdrop-filter:none}}
