*{box-sizing:border-box}body{margin:0;background:#090f1c;color:#eaf2fa;font:15px system-ui}header,main{width:min(100% - 24px,1100px);margin:auto}header{padding:24px 0 14px}header a{color:#77e7d9;text-decoration:none}h1{font-size:clamp(28px,6vw,54px);letter-spacing:-.06em;margin:16px 0 0}h1 span{color:#66e5d4}header p,.eyebrow{font-size:11px;letter-spacing:.2em;color:#9eafc5}h2{font-size:clamp(24px,4vw,40px);margin:12px 0}.panel{background:#122033;border:1px solid #2b415a;border-radius:18px;padding:clamp(16px,4vw,36px)}.panel p{color:#b8cadd}.actions{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}button,select{font:700 12px system-ui;min-height:46px;padding:12px 17px;background:#20354c;color:#eaf5ff;border:1px solid #45617c;border-radius:9px;cursor:pointer}button:hover{background:#2e4964}button:focus-visible,select:focus-visible,canvas:focus-visible{outline:3px solid #a6f4e9;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.hot{background:#76e6d5;color:#10212b;border-color:#76e6d5}small{color:#a9bdd0}label{font-size:11px;letter-spacing:.1em}select{margin-left:8px}[hidden]{display:none!important}.matchbar{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;font-size:12px;padding:14px 0}.arena-wrap{position:relative;isolation:isolate;border:1px solid #3b617e;border-radius:14px;overflow:hidden;background:#12243a}canvas#c{width:100%;display:block;aspect-ratio:16/9;touch-action:none}.crosshair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#e4fff4b0;font:22px monospace;pointer-events:none}.touch{display:none;position:absolute;z-index:3;background:#09192c44;border:1px solid #e3f5ff80;border-radius:50%;padding:0;user-select:none;-webkit-user-select:none;touch-action:none}.fire{right:4%;top:38%;width:64px;height:64px}.reload{right:19%;bottom:6%;width:58px;height:58px;font-size:10px}.slide{right:3%;bottom:5%;width:56px;height:56px;font-size:10px}.move-guide,.aim-guide{display:none;position:absolute;pointer-events:none;color:#d4e9e544;font-size:9px;letter-spacing:.15em}.move-guide{left:13%;bottom:17%}.aim-guide{right:24%;top:20%}#gameStatus{position:absolute;top:9%;left:12%;width:76%;text-align:center;font-weight:900;letter-spacing:.12em;pointer-events:none;text-shadow:0 2px 6px #000}.instructions{color:#9bb0c5;font-size:12px;line-height:1.8;margin-bottom:90px}.fighter-preview{width:90px;height:112px;object-fit:contain;align-self:center;animation:breathe 2s ease-in-out infinite alternate}.face-playing #roomSocial .bl-main,.face-playing #roomSocial .bl-party{display:none}.face-playing #roomSocial .bl-layout{grid-template-columns:1fr}#roomSocial .bl-slots{grid-template-columns:repeat(2,minmax(0,1fr))}#roomSocial .bl-stage:empty{display:none}#roomSocial .bl-slot{position:relative}body.face-playing .binx-social-fab{bottom:max(8px,env(safe-area-inset-bottom));right:8px}body.face-playing .binx-social-fab:not(.open){max-width:100px}@keyframes breathe{to{transform:translateY(-4px)}}@media(pointer:coarse),(max-width:700px){header{padding-top:12px}header h1{margin-top:8px}.touch,.move-guide,.aim-guide{display:block}.desktop-actions{display:none}.actions button{flex:1 1 140px}main,header{width:calc(100% - 16px)}.matchbar{font-size:10px;gap:5px}.panel{padding:18px}#gameStatus{font-size:12px}#roomSocial{padding-bottom:65px}}@media(prefers-reduced-motion:reduce){.fighter-preview{animation:none}}

.face-watching .touch,.face-watching .desktop-actions,.face-watching .move-guide,.face-watching .aim-guide,.face-watching .instructions,.face-watching .crosshair,.face-watching #fighterChoice,.face-watching .bl-ready{display:none!important}#watchDirectory{display:flex;gap:8px;flex-wrap:wrap}
