@font-face{font-family:Press Start;src:url(/assets/PressStart2P-Regular-DogiNJoF.ttf) format("truetype");font-display:swap}:root{color-scheme:dark;font-family:system-ui,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;min-height:100%;background:#1a1410;color:#f4efe6;overflow:hidden;touch-action:manipulation}html.world,html.world body,body.world{overflow:hidden;height:100%;color-scheme:normal;background:transparent!important;background-color:transparent!important}#view{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;visibility:hidden;touch-action:none;background:transparent}body.world #view{visibility:visible;background:transparent}#app{position:relative;z-index:1;height:100%;min-height:100dvh;overflow:auto}.screen{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;gap:16px;padding:calc(24px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom));max-width:36rem;margin:0 auto}.landing{align-items:center;text-align:center;max-width:none;width:100%;min-height:100dvh;justify-content:center;gap:18px;padding-top:max(20px,env(safe-area-inset-top) + 16px);padding-left:16px;padding-right:16px;background:radial-gradient(ellipse at 50% 0%,rgba(211,47,47,.28),transparent 46%),radial-gradient(ellipse at 80% 80%,rgba(42,75,220,.22),transparent 50%),#1a1410}h1{margin:0;font-family:Press Start,monospace;font-size:clamp(1.1rem,5vw,1.6rem);letter-spacing:.08em;line-height:1.4}.landing.home{justify-content:flex-start;gap:14px;padding-top:max(12px,env(safe-area-inset-top) + 8px)}.mode-title{margin:0;font-family:Press Start,monospace;font-size:min(1.7rem,calc((100vw - 48px)/16));font-weight:400;letter-spacing:.06em;line-height:1.35}.friend-title{font-size:min(1.35rem,calc((100vw - 40px)/20))}.tagline{margin:0;font-size:1.05rem;line-height:1.4;max-width:22rem}.mode-hint{margin:0;font-size:.95rem;line-height:1.4;opacity:.88}.home-modes{display:flex;flex-direction:column;align-items:stretch;gap:18px;width:100%}.mode-block{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%}.duo{display:flex;flex-direction:row;gap:12px;width:100%}.duo .play,.duo .join{flex:1 1 0;width:auto;padding:18px 12px}.solo-actions{width:100%}.lead,.fine,.sit{margin:0;font-size:1.02rem;line-height:1.45;max-width:22rem}.fine{font-size:.88rem;opacity:.78}.fine a{color:#f5c518}.qr-wrap{background:#fff;padding:0;border-radius:16px;overflow:hidden;line-height:0;width:min(280px,calc(100vw - 48px),42dvh);max-width:calc(100vw - 48px);flex:0 0 auto;box-shadow:0 10px 28px #00000059}.qr-wrap canvas{display:block;width:100%!important;height:auto!important;aspect-ratio:1}.onboard{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.onboard-media{display:block;flex:none;width:min(100%,32rem,60.7dvh);max-width:100%;height:auto;aspect-ratio:37 / 28;object-fit:contain;object-position:center;border-radius:16px;background:#120e0c}.onboard-steps{display:flex;gap:8px;width:100%;margin:0;padding:0;list-style:none}.onboard-steps li{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:4px;margin:0;padding:8px 4px;border-radius:12px;background:#f4efe614;font-size:.82rem;font-weight:800;line-height:1.2;text-align:center}.onboard-num{width:1.5rem;height:1.5rem;border-radius:999px;background:#f5c518;color:#1a1408;font-size:.85rem;line-height:1.5rem}.onboard-copy{margin:0;font-size:1rem;font-weight:700;line-height:1.3;max-width:22rem;opacity:.92}.play,.secondary,.join,.practice{-webkit-appearance:none;appearance:none;border:0;border-radius:999px;background:#e24b3a;color:#1a0806;font:inherit;font-weight:800;font-size:1.08rem;letter-spacing:.08em;text-decoration:none;text-align:center;padding:16px 28px;width:100%;min-width:0}.secondary,.join{background:#2a4bdc;color:#eef2ff}.practice{background:#f5c518;color:#1a1408}.actions{display:flex;flex-direction:column;flex-wrap:nowrap;gap:10px;justify-content:center;width:min(100%,22rem);margin-top:8px}.landing.gate{gap:28px}.landing.gate .sit{font-size:1.12rem;line-height:1.5;max-width:24rem}.landing.gate .actions .play{padding:20px 16px;font-size:1.12rem}.hint{margin:0;font-size:.82rem;line-height:1.4;opacity:.72;max-width:22rem}.action-block{display:flex;flex-direction:column;gap:6px;width:100%}.scan{position:relative;justify-content:stretch;align-items:stretch;gap:0;padding:0;max-width:none;width:100%;min-height:100dvh;background:#000}.scan-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.scan-hud{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;align-items:center;min-height:100dvh;padding:calc(20px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom))}.scan-copy{margin:0;max-width:22rem;padding:14px 16px;border-radius:14px;background:#1a1410c7;font-size:1.12rem;font-weight:800;line-height:1.35;text-align:center}.scan .actions{margin-top:0}#xr-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;background:transparent;pointer-events:none;touch-action:none}.key-hint{position:absolute;top:calc(12px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));z-index:6;margin:0;padding:10px 14px;border-radius:12px;background:#f4efe6e6;color:#111;font-size:1rem;font-weight:800;line-height:1.2;pointer-events:none}.place-banner{position:absolute;top:calc(64px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));right:calc(12px + env(safe-area-inset-right));display:flex;align-items:center;gap:12px;max-height:120px;padding:10px 14px;border-radius:14px;background:#f4efe69e;pointer-events:none}.status{margin:0;flex:1;min-width:0;text-align:left;font-size:1.28rem;font-weight:800;line-height:1.15;letter-spacing:.01em;white-space:pre-line;color:#111}.hand-guide{flex:0 0 68px;width:68px;height:84px;pointer-events:none}.hand-guide img{display:block;width:68px;height:84px;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}.fire,.again,.quit,.realign,.give-up,.corner,.setup-play,.size-picker button,.help,.wait-practice{pointer-events:auto;touch-action:manipulation;border:0;border-radius:18px;background:#e24b3a;color:#1a0806;font:inherit;font-weight:800;letter-spacing:.04em}.fire{position:absolute;left:calc(16px + env(safe-area-inset-left));right:calc(16px + env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom));height:64px;font-size:1.35rem}.fire:disabled,.corner:disabled{opacity:.4}.size-picker{position:absolute;top:calc(144px + env(safe-area-inset-top));left:50%;z-index:5;display:flex;gap:8px;transform:translate(-50%);pointer-events:auto}.size-picker button{min-width:64px;height:46px;padding:0 12px;background:#3a2a24db;color:#f4efe6;font-size:1rem}.size-picker button.selected{background:#bfc5cc;color:#181818;box-shadow:0 0 0 3px #ffffff7a}.size-picker.guest button{opacity:.78}.setup-play{position:absolute;left:calc(16px + env(safe-area-inset-left));right:calc(16px + env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom));height:64px;background:#bfc5cc;color:#181818;font-size:1.35rem}.corner{position:absolute;left:auto;right:calc(16px + env(safe-area-inset-right));bottom:calc(108px + env(safe-area-inset-bottom));width:auto;max-width:46vw;min-width:132px;height:52px;padding:0 14px;font-size:.92rem}.corner.yellow{background:#f5c518;color:#1a1408}.corner.green{background:#1f9d55;color:#f4fff6}.help,.wait-practice{position:absolute;left:calc(16px + env(safe-area-inset-left));right:auto;bottom:calc(108px + env(safe-area-inset-bottom));width:auto;min-width:88px;height:52px;padding:0 18px;font-size:1.05rem;background:#f5c518;color:#1a1408}.wait-practice{right:calc(16px + env(safe-area-inset-right));left:calc(16px + env(safe-area-inset-left));width:auto;font-size:1.02rem}.again,.quit,.realign,.give-up{position:absolute;left:50%;transform:translate(-50%);min-width:140px;min-height:56px;font-size:1.2rem;padding:0 28px}.again{top:46%}.quit,.realign,.give-up{top:calc(12px + env(safe-area-inset-top));transform:none;min-width:0;min-height:44px;padding:0 14px;font-size:.95rem}.quit{left:calc(12px + env(safe-area-inset-left));right:auto;z-index:6;background:#3a2a24;color:#f4efe6}.realign{right:calc(12px + env(safe-area-inset-right));left:auto;z-index:6;background:#2a4bdc;color:#eef2ff}.give-up{right:calc(12px + env(safe-area-inset-right));left:auto;z-index:6;background:#f5c518;color:#221600}.hand-bar{position:absolute;left:0;right:0;bottom:calc(148px + env(safe-area-inset-bottom));padding:12px 16px;background:#b41e1e73;color:#fff;text-align:center;font-size:1rem;font-weight:700}.end-panel{position:absolute;left:50%;right:auto;top:auto;bottom:33%;transform:translate(-50%);width:min(22rem,calc(100% - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)));display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px;border-radius:16px;background:#1a1410b8;pointer-events:auto;max-height:min(42dvh,360px);overflow:auto;opacity:0}.end-panel.end-in{animation:end-panel-in .45s ease-out forwards}.end-panel.place-help{top:46%;bottom:auto;transform:translate(-50%,-50%);max-height:min(72dvh,560px);width:min(24rem,calc(100% - 24px - env(safe-area-inset-left) - env(safe-area-inset-right)));gap:10px;padding:14px 14px 12px;background:#1a1410e0}.end-panel.place-help.keyboard-open{top:max(10px,env(safe-area-inset-top));transform:translate(-50%);max-height:min(46dvh,320px)}.help-tips{margin:0;padding-left:1.15rem;text-align:left;font-size:.9rem;font-weight:700;line-height:1.35}.help-tips li{margin:0 0 8px}.help-tips li:last-child{margin-bottom:0}.help-footer{margin:0;text-align:left;font-size:.86rem;font-weight:700;line-height:1.35;opacity:.92}.help-fields{display:flex;flex-direction:row;align-items:flex-start;gap:8px;width:100%}.help-note,.help-device{pointer-events:auto;touch-action:manipulation;border:0;border-radius:10px;background:#f4efe6f2;color:#111;font:inherit;font-size:.88rem;padding:10px}.help-note{flex:1 1 58%;min-width:0;min-height:96px;resize:none}.help-device-wrap{flex:0 0 34%;display:flex;flex-direction:column;gap:4px;min-width:0}.help-device-label{font-size:.78rem;font-weight:800;text-align:left}.help-device{width:100%;min-height:40px}.lead-form{display:flex;flex-direction:column;gap:8px;width:100%}.lead-field{display:flex;flex-direction:column;gap:4px;text-align:left;font-size:.78rem;font-weight:800}.lead-input{width:100%;flex:none}.help-note.lead-input{min-height:84px}.lead-error{margin:0;color:#ffb4a8;font-size:.82rem;font-weight:700;text-align:left}.social-link{display:flex;align-items:center;justify-content:center;text-decoration:none;min-height:40px}@keyframes end-panel-in{0%{opacity:0}to{opacity:1}}.end-title,.end-sub{margin:0;text-align:center;font-weight:800}.end-title{font-size:1.15rem}.end-sub{font-size:.88rem;opacity:.85}.end-row{display:flex;flex-wrap:nowrap;gap:8px;justify-content:center}.end-btn{pointer-events:auto;touch-action:manipulation;border:0;border-radius:999px;font:inherit;font-weight:800;letter-spacing:.04em;width:auto;min-height:40px;padding:8px 12px;flex:1 1 0;font-size:.82rem}.chip-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chip{pointer-events:auto;touch-action:manipulation;border:0;border-radius:999px;background:#f4efe6e6;color:#111;font:inherit;font-weight:700;font-size:.86rem;padding:10px 12px}.chip[aria-pressed=true]{background:#f5c518}.glitch-list{display:flex;flex-direction:column;gap:4px;width:100%}.glitch-option{pointer-events:auto;touch-action:manipulation;display:flex;align-items:center;gap:10px;width:100%;min-height:40px;margin:0;padding:8px 10px;border:0;border-radius:10px;background:transparent;color:inherit;font:inherit;font-weight:700;font-size:.95rem;text-align:left}.glitch-option[aria-pressed=true]{background:#f5c51838}.glitch-mark{flex:0 0 22px;width:22px;height:22px;border:2px solid #f4efe6;border-radius:5px;background:transparent}.glitch-option[aria-pressed=true] .glitch-mark{background:#f5c518;border-color:#f5c518}.glitch-option[aria-pressed=true] .glitch-mark:after{content:"";display:block;width:6px;height:11px;margin:1px auto 0;border:solid #111;border-width:0 2px 2px 0;transform:rotate(45deg)}.glitch-other{width:100%}.glitch-other-note{width:100%;min-height:72px}
