@layer components{.foundation .riff-stage{position:relative;height:clamp(400px,62vh,600px);overflow:hidden;background:#050507;border:1px solid var(--graphite-edge);border-radius:6px;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none}.foundation .riff-stage:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.foundation .riff-stage canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.foundation .riff-stage canvas[hidden]{display:none}.foundation .riff-caption{position:absolute;inset:auto 24px 20px;display:flex;justify-content:space-between;gap:1rem;pointer-events:none;font-size:.6875rem;color:var(--mute)}.foundation .riff-help{color:var(--mute);font-size:.8125rem;line-height:1.65;padding-block:1rem;max-width:76ch}.foundation .riff-help p{margin:0}.foundation .riff-help [role=alert]{margin-top:.75rem;color:var(--ink)}@media (max-width:760px){.foundation .riff-caption{inset-inline:16px}.foundation .riff-caption span:last-child{display:none}}}@layer components{.foundation .rift-stage{position:relative;height:clamp(400px,62vh,600px);overflow:hidden;background:#050507;border:1px solid var(--graphite-edge);border-radius:6px;cursor:crosshair;touch-action:none}.foundation .rift-stage:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.foundation .rift-stage[data-sealing=true]{cursor:grabbing}.foundation .rift-stage canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.foundation .rift-stage canvas[hidden]{display:none}.foundation .rift-caption{position:absolute;inset:auto 24px 20px;display:flex;justify-content:space-between;gap:1rem;pointer-events:none;font-size:.6875rem;color:var(--mute)}.foundation .rift-help{color:var(--mute);font-size:.8125rem;line-height:1.65;padding-block:1rem;max-width:76ch}.foundation .rift-help p{margin:0}.foundation .rift-help [role=alert]{margin-top:.75rem;color:var(--ink)}@media (max-width:760px){.foundation .rift-caption{inset-inline:16px}.foundation .rift-caption span:last-child{display:none}}}@layer components{.foundation .flight-pad{position:relative;overflow:hidden;touch-action:none;cursor:grab;user-select:none;background:radial-gradient(circle at var(--x,50%) var(--y,46%),color-mix(in srgb,var(--signal-mid) calc((.08 + var(--thrust, 0) * .42) * 100%),transparent) 0,transparent 34%),var(--void)}.foundation .flight-pad[data-state=running]{cursor:grabbing}.foundation .thruster-ribbons,.foundation .thruster-ribbons canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.foundation .flight-craft{position:absolute;left:50%;top:50%;z-index:2;width:1.15rem;height:1.15rem;border-radius:50%;transform:translate(-50%,-50%) scale(calc(.85 + var(--thrust, 0) * .7));background:var(--ink);pointer-events:none}.foundation .flight-craft:before{content:"";position:absolute;left:50%;bottom:50%;width:.4rem;height:calc(1.4rem + var(--thrust, 0) * 7.5rem);transform:translateX(-50%);background:linear-gradient(to top,transparent,var(--signal-low) 30%,var(--signal-mid) 65%,var(--signal-high));opacity:calc(var(--thrust, 0) * .9)}.foundation .flight-pad:has(.thruster-ribbons[data-renderer=webgl]) .flight-craft:before{opacity:0}.foundation .flight-craft:after{content:"";position:absolute;inset:.28rem;border-radius:50%;background:var(--void)}}