:root{color:#f8f8f8;background:#050505;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{overflow:hidden}button,input{font:inherit}.app-shell{width:100%;height:100%;display:grid;place-items:center;background:#050505}.video-stage{position:relative;width:min(100vw,56.25dvh);height:min(100dvh,177.7778vw);aspect-ratio:9 / 16;max-width:100vw;max-height:100dvh;overflow:hidden;background:#050505}.video-stack{position:absolute;inset:0;background:#050505}.video-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 80ms linear;background:#050505}.video-slot.is-active{opacity:1}.choice-layer{position:absolute;z-index:4;pointer-events:none}.choice-layer.is-visible{pointer-events:auto}.choice-hotspot{position:absolute;display:grid;place-items:center;padding:0;border:0;border-radius:0;appearance:none;cursor:pointer;background:#fff0;color:transparent;outline:none;-webkit-tap-highlight-color:transparent}.choice-image{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 10px 18px rgb(0 0 0 / .34))}.choice-hotspot:focus-visible{outline:2px solid rgb(255 255 255 / .88);outline-offset:2px}.start-gate,.replay-button{position:absolute;z-index:8;left:50%;top:50%;transform:translate(-50%,-50%);min-width:96px;min-height:48px;padding:0 24px;border:1px solid rgb(255 255 255 / .26);border-radius:8px;color:#fff;background:#141414bd;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer}.start-gate:hover,.replay-button:hover{background:#2a2a2adb}.end-overlay{position:absolute;z-index:7;inset:0;background:#00000094}.fatal-error{position:absolute;left:50%;top:50%;display:grid;gap:10px;width:min(420px,calc(100vw - 32px));transform:translate(-50%,-50%);color:#fff;text-align:center}.fatal-error strong{font-size:20px}.fatal-error span{color:#ffffffb3;font-size:14px}
