.specular-button{--sb-radius:18px;--sb-tint:#fff;--sb-tint-opacity:0;--sb-blur:0px;--sb-text-color:#f5f5f5;letter-spacing:.01em;color:var(--sb-text-color);background:color-mix(in srgb, var(--sb-tint) calc(var(--sb-tint-opacity) * 100%), transparent);border-radius:var(--sb-radius);-webkit-backdrop-filter:blur(var(--sb-blur));cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;margin:0;font-family:inherit;font-weight:500;line-height:1;transition:transform .15s;display:inline-flex;position:relative;box-shadow:inset 0 1px #ffffff0a,0 8px 24px #00000040}.specular-button:active{transform:scale(.97)}.specular-button:focus-visible{outline:2px solid color-mix(in srgb, var(--sb-text-color) 60%, transparent);outline-offset:3px}.specular-button:disabled{opacity:.55;cursor:default}.specular-button:disabled:active{transform:none}.specular-button--sm{padding:10px 22px;font-size:.85rem}.specular-button--md{padding:14px 30px;font-size:1rem}.specular-button--lg{padding:18px 40px;font-size:1.15rem}.specular-button__fx{pointer-events:none;z-index:1;position:absolute;inset:-20px}.specular-button__fx canvas{width:100%;height:100%;display:block}.specular-button__label{z-index:2;position:relative}.return-dock{z-index:130;pointer-events:none;opacity:1;transition:opacity .26s,transform .26s;position:fixed;top:calc(76px + .9rem);left:50%;transform:translate(-50%)}.return-dock[data-hidden]{opacity:0;visibility:hidden;transform:translate(-50%)translateY(-8px)}@keyframes return-dock-pulse{0%{transform:scale(1);box-shadow:0 0 #e8c07900}35%{transform:scale(1.06);box-shadow:0 0 22px 6px #e8c0796b}to{transform:scale(1);box-shadow:0 0 #e8c07900}}.return-dock[data-pulse] .return-dock__button{border-radius:4px;animation:1.2s ease-out return-dock-pulse}@media (prefers-reduced-motion:reduce){.return-dock{transition:none}.return-dock[data-pulse] .return-dock__button{animation:none}}.return-dock__button{min-height:44px;font-family:var(--font-mono);letter-spacing:.14em;pointer-events:auto;font-size:.68rem}@media (width<=880px){.return-dock{display:none}}.experience{z-index:10;background:#070908;position:absolute;inset:0}.experience canvas{z-index:1;touch-action:none;display:block;position:relative}.experience__controls{z-index:80;gap:.3rem;width:min(220px,18vw);display:grid;position:absolute;top:50%;right:clamp(1rem,2.8vw,2.8rem);transform:translateY(-47%)}.experience__controls-label{color:#dce8e275;letter-spacing:.14em;text-align:right;margin-bottom:.25rem;font-size:.6rem}.experience__control{color:#dce8e2ad;min-height:44px;font-family:var(--font-mono);cursor:pointer;backdrop-filter:blur(7px);background:#070a09c7;border:1px solid #8b9c942e;border-radius:2px;grid-template-columns:2.4rem minmax(0,1fr);align-items:center;padding:0;transition:border-color .16s,background .16s,color .16s,transform .16s;display:grid}.experience__control-number{height:100%;color:var(--hud-amber);border-right:1px solid #8b9c9429;place-items:center;font-size:.65rem;display:grid}.experience__control-name{letter-spacing:.05em;text-align:left;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;padding:.55rem .65rem;font-size:.65rem;overflow:hidden}.experience__control:hover,.experience__control:focus-visible,.experience__control--active{color:var(--paper);background:#0c1410e6;border-color:#78b88fbd;outline:none;transform:translate(-4px)}.experience__hud{z-index:30;pointer-events:none;position:absolute;inset:0}.experience__hud-corner{color:#9fb1a880;letter-spacing:.1em;text-shadow:0 1px 8px #000000d9;font-size:.62rem;line-height:1.55;position:absolute}.experience[data-scene-state=idle] .experience__ready{color:var(--hud-amber)}.experience__hud-tl{top:1.35rem;left:1.35rem}.experience__hud-tr{text-align:right;top:1.35rem;right:1.35rem}.experience__hud-bl{bottom:1.35rem;left:1.35rem}.experience__ready{color:#91c9a5}.experience__hud-hint{color:#9fb1a86b;letter-spacing:.12em;text-align:center;font-size:.6rem;position:absolute;bottom:1.35rem;left:50%;transform:translate(-50%)}@media (width<=1180px){.experience__controls{width:48px}.experience__controls-label,.experience__control-name{display:none}.experience__control{grid-template-columns:1fr}.experience__control-number{border-right:0}}@media (width<=880px){.experience__controls{display:none}}@media (prefers-reduced-motion:reduce){.experience__control{transition:none}.experience__control:hover,.experience__control:focus-visible,.experience__control--active{transform:none}}
