/* Standard QR quiet zones stay clean; charcoal belongs outside the code. */
.display-stage .lobby-codes { left: 200px; right: 200px; top: 110px; bottom: 100px; gap: 32px; }
.display-stage .lobby-codes > h2 { line-height: 1.5; margin: 0; }
.display-stage .action-summary { grid-template-rows: 40px 72px; }
.display-stage .action-summary h1 { height: 72px; line-height: 1.5; }
.display-stage .score-ticket .board-title { top: 10px; height: 82px; }
.display-stage .score-ticket .board-title strong { line-height: 1.4; }
.display-stage .lobby-code-list { display: flex; justify-content: center; gap: 32px; width: 100%; }
.display-stage .lobby-code { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; width: 460px; height: 660px; padding: 24px; flex: 0 1 460px; }
.display-stage .lobby-code > span { font-size: 38px; }
.display-stage .lobby-code > strong { font-size: 36px; letter-spacing: .04em; }
.display-stage .lobby-code > small { font-size: 24px; overflow-wrap: anywhere; text-align: center; }
.display-stage .lobby-code .team-qr { width: 360px; height: 360px; max-width: 100%; object-fit: contain; background: #fff; border: 0; box-shadow: none; filter: none; transform: none; }
.display-stage .lobby-code.is-claimed > strong { text-decoration: underline; text-underline-offset: 10px; }
.display-stage .lobby-codes > p { margin: 0; font-size: 30px; text-align: center; max-width: 2500px; }
.controller-stage .mobile-header > div { min-width: 0; }
.controller-stage .mobile-header b { max-width: 255px; min-width: 90px; white-space: normal; word-break: break-all; font-size: 18px; line-height: 1.3; text-align: center; padding: 14px; }
.controller-stage .claim-room { display: block; padding: 20px 12px; border-block: 3px solid #25221e; font-size: 26px; overflow-wrap: anywhere; }
.controller-stage .claim-team { display: block; margin: 26px 0 10px; font-size: 36px; }
.controller-stage .join-card > small { line-height: 1.7; }
.controller-stage #returnBinding { display: flex; justify-content: center; align-items: center; height: 84px; text-decoration: none; margin-top: 20px; border: 3px solid transparent; border-image: url('/assets/optimized/charcoal-frame-v1-1254.webp') 160 / 18px / 8px stretch; border-radius: 0; }
.controller-stage #returnBinding:focus-visible { outline: 4px dashed var(--charcoal-ink); outline-offset: 5px; }
.controller-stage footer { gap: 20px; height: 96px; padding: 4px 24px; color: var(--charcoal-ink); font-size: 18px; }
.controller-stage .mobile-view { height: 754px; }
.controller-stage #releaseButton { min-width: 180px; height: 84px; border: 0; background: transparent; color: var(--charcoal-ink); font: inherit; text-decoration: underline; cursor: pointer; }
[hidden] { display: none !important; }
