html,body{width:100%;height:100%;min-height:100%;overflow:hidden}.battle-shell{height:100dvh;max-width:920px;margin:0 auto;padding:0 22px;display:flex;flex-direction:column;position:relative}.battle-header{height:62px;flex:none;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{color:var(--text);font-size:19px;font-weight:950;letter-spacing:-1px;text-decoration:none}.brand span{color:var(--accent)}.versus-label{display:flex;align-items:center;gap:11px;font-size:10px;letter-spacing:.12em;font-weight:850}.versus-label b{color:var(--accent);font-size:9px}.language-button{justify-self:end;min-width:40px;height:34px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--muted);font-size:10px;font-weight:850;cursor:pointer}.battle-score{height:88px;flex:none;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:8px 22px;border-bottom:1px solid var(--line)}.player-score{display:grid;gap:0}.player-score>span{font-size:9px;letter-spacing:.14em;color:var(--muted);font-weight:850}.player-score strong{font-size:42px;line-height:1;font-variant-numeric:tabular-nums}.player-score.bot{text-align:right}.score-center{height:50px;min-width:104px;padding:0 14px;border-inline:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;align-items:center;justify-items:center;column-gap:8px}.score-center>b{grid-row:span 2;color:var(--accent);font-size:11px}.score-center>span{font-size:8px;letter-spacing:.09em;color:var(--muted);font-weight:800}.score-center>strong{font-size:18px;line-height:1.15;font-variant-numeric:tabular-nums}.camera-match{min-height:0;flex:1;position:relative;display:flex;justify-content:center;align-items:stretch;padding:10px 0 36px}.camera-match iframe{display:block;width:100%;height:100%;min-height:0;border:0;background:#090a09;border-radius:10px}.camera-caption{position:absolute;left:0;right:0;bottom:0;height:31px;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:9px}.camera-dot{width:7px;height:7px;flex:none;border-radius:50%;background:#777}.camera-dot.active{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 15%,transparent)}.local-badge{margin-left:auto;font-size:8px;letter-spacing:.12em;font-weight:850}.result-overlay{position:absolute;z-index:5;inset:151px 22px 38px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(12px)}.result-overlay.hidden{display:none}.result-kicker{font-size:9px;letter-spacing:.15em;color:var(--muted);font-weight:850}.result-overlay h1{margin:5px 0;font-size:clamp(34px,8vw,64px);line-height:1;letter-spacing:-.06em}.result-overlay>p:not(.result-kicker){color:var(--muted)}.rematch-button{min-height:44px;padding:0 24px;border:0;border-radius:7px;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:900;letter-spacing:.08em;cursor:pointer}.battle-header button:focus-visible,.rematch-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:600px){.battle-shell{padding:0 12px}.battle-header{height:54px}.brand{font-size:17px}.battle-score{height:76px;padding:7px 12px}.player-score strong{font-size:37px}.score-center{min-width:94px;padding:0 10px}.camera-match{padding:8px 0 29px}.camera-match iframe{border-radius:8px}.camera-caption{height:25px;font-size:8px}.result-overlay{inset:130px 12px 32px}}
.camera-start{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);min-height:50px;padding:0 23px;border:0;border-radius:7px;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:950;letter-spacing:.1em;box-shadow:0 8px 30px #0008;cursor:pointer}.camera-start[hidden]{display:none}
