.g-ride{position:relative;height:calc(100svh - 62px);min-height:460px;overflow:hidden;background:var(--ink);color:var(--paper);-moz-user-select:none;user-select:none;-webkit-user-select:none;touch-action:none}.g-ride canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.g-ride-display{font-family:var(--font-saira),"Saira Condensed",Impact,sans-serif;font-style:italic;font-weight:900;font-stretch:75%;text-transform:uppercase;line-height:.9}.g-ride-label{font-family:var(--font-jetbrains),ui-monospace,monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;opacity:.75}.g-ride-hud{position:absolute;inset:0;pointer-events:none;padding:16px;display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:auto 1fr auto;gap:12px;text-shadow:0 1px 10px rgba(10,9,8,.55);font-variant-numeric:tabular-nums}.g-ride-panel{background:#0a09089e;border:1px solid rgba(238,229,208,.16);backdrop-filter:blur(6px);padding:10px 14px}.g-ride-speed{grid-column:1;justify-self:start;display:flex;align-items:flex-end;gap:14px;border-left:4px solid var(--rosso)}.g-ride-speed b{font-size:clamp(44px,9vw,76px);min-width:1.6ch;text-align:right;display:block}.g-ride-stats{display:grid;gap:6px;padding-bottom:4px}.g-ride-stats div{display:flex;align-items:baseline;gap:8px}.g-ride-stats b{font-size:22px;min-width:4ch;text-align:right}.g-ride-clock{grid-column:2;justify-self:center;align-self:start;text-align:center}.g-ride-clock b{font-size:clamp(26px,5vw,38px);display:block;margin-bottom:4px}.g-ride-side{grid-column:3;justify-self:end;align-self:start;display:grid;justify-items:end;gap:8px}.g-ride-place{text-align:right;border-right:4px solid var(--giallo)}.g-ride-place b{font-size:clamp(30px,6vw,46px);display:block}.g-ride-place b small{font-size:.5em;opacity:.7}.g-ride-flags{grid-column:1 / -1;grid-row:2;align-self:end;justify-self:center;display:flex;gap:8px;min-height:30px}.g-ride-flag{padding:5px 12px 4px;font-size:18px;color:var(--ink);text-shadow:none}.g-ride-flag--draft{background:var(--celeste)}.g-ride-flag--boost{background:var(--pink);color:#fff}.g-ride-flag--warn{background:var(--rosso);color:#fff}.g-ride-bottom{grid-column:1 / -1;grid-row:3;justify-self:center;width:min(720px,100%)}.g-ride-stamina{display:flex;align-items:center;gap:10px;margin-bottom:8px}.g-ride-stamina-bar{flex:1;height:8px;background:#eee5d02e;overflow:hidden}.g-ride-stamina-bar i{display:block;height:100%;background:var(--giallo);transform-origin:left center}.g-ride-stamina.is-spent .g-ride-stamina-bar i{background:var(--rosso)}.g-ride-profile{position:relative;height:54px}.g-ride-profile svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.g-ride-profile .todo{fill:#eee5d038}.g-ride-profile .done{fill:var(--rosso)}.g-ride-dot{position:absolute;width:9px;height:9px;margin:0 0 -4px -4px;border-radius:50%;border:1.5px solid var(--ink)}.g-ride-dot--you{width:13px;height:13px;margin:0 0 -6px -6px;background:var(--paper);z-index:1}.g-ride-overlay{position:absolute;inset:0;display:grid;place-items:center;padding:20px;background:linear-gradient(180deg,#0a090833,#0a0908b8);overflow-y:auto}.g-ride-card{width:min(520px,100%);background:#0a0908db;border:1px solid rgba(238,229,208,.2);border-top:5px solid var(--rosso);padding:clamp(20px,4vw,34px)}.g-ride-card h1{font-size:clamp(44px,9vw,72px);margin:6px 0 12px;text-wrap:balance}.g-ride-card h1 em{color:var(--giallo);font-style:inherit}.g-ride-card p{font-family:var(--font-manrope),system-ui,sans-serif;font-size:15px;line-height:1.5;color:#eee5d0d9;margin:0 0 18px}.g-ride-keys{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:0 0 22px;font-family:var(--font-manrope),system-ui,sans-serif;font-size:14px;align-items:center}.g-ride-keys dt{display:flex;gap:4px}.g-ride-keys dd{margin:0;color:#eee5d0d9}.g-ride-keys kbd{font-family:var(--font-jetbrains),ui-monospace,monospace;font-size:11px;min-width:26px;padding:4px 6px;text-align:center;border:1px solid rgba(238,229,208,.35);border-bottom-width:2px;background:#eee5d00f}.g-ride-results{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 22px}.g-ride-results b{display:block;font-size:clamp(26px,6vw,40px);margin-top:6px;font-variant-numeric:tabular-nums}.g-ride-actions{display:flex;flex-wrap:wrap;gap:10px}.g-ride-go{font-family:var(--font-saira),"Saira Condensed",Impact,sans-serif;font-style:italic;font-weight:900;font-stretch:75%;text-transform:uppercase;font-size:22px;padding:12px 26px 10px;background:var(--giallo);color:var(--ink);border:0;cursor:pointer}.g-ride-go:hover{background:var(--paper)}.g-ride-go--ghost{background:transparent;color:var(--paper);box-shadow:inset 0 0 0 1px #eee5d066}.g-ride-go--ghost:hover{background:#eee5d01f}.g-ride-go:focus-visible,.g-ride-pause:focus-visible{outline:2px solid var(--celeste);outline-offset:3px}.g-ride-pause{pointer-events:auto;background:#0a09089e;color:var(--paper);border:1px solid rgba(238,229,208,.16);padding:7px 10px 6px;cursor:pointer;text-shadow:none}.g-ride-touch{display:none}@media(pointer:coarse){.g-ride-touch{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;align-items:flex-end;padding:0 14px 14px;pointer-events:none}.g-ride-touch>div{display:flex;gap:10px;align-items:flex-end}.g-ride-touch button{pointer-events:auto;touch-action:none;width:68px;height:68px;border-radius:50%;border:2px solid rgba(238,229,208,.55);background:#0a09088c;color:var(--paper);font-size:15px;-webkit-tap-highlight-color:transparent}.g-ride-touch button.is-pedal{width:84px;height:84px;background:var(--giallo);color:var(--ink);border-color:var(--ink)}.g-ride-touch button:active{transform:scale(.94)}.g-ride-bottom{margin-bottom:96px}.g-ride-keys{display:none}}@media(max-width:560px){.g-ride-hud{padding:10px;gap:8px}.g-ride-panel{padding:8px 10px}.g-ride-stats b{font-size:17px}.g-ride-speed{gap:8px}}
