/* Big-screen overview: every room, every player, no controls. */
body.watch { align-items: stretch; }
body.watch header { max-width: none; }
#rooms { display: block; max-width: none; padding: 8px 16px 32px; }
#empty { color: var(--muted); text-align: center; margin-top: 80px; font-size: 18px; }

.wroom { margin-bottom: 28px; }
.wroom-head {
  display: flex; align-items: baseline; gap: 16px; flex-wrap: wrap;
  padding: 8px 0; border-bottom: 1px solid var(--line); margin-bottom: 12px;
  font-family: Consolas, "Courier New", monospace; letter-spacing: 0.08em;
}
.wroom-head .code { font-size: 22px; color: var(--accent); }
.wroom-head .phase { font-size: 13px; color: var(--muted); }
.wroom-head .phase.playing { color: var(--text); }
.wroom-head .winner { font-size: 15px; color: #e9cf3a; }

.wgrid { display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-start; }
.wcard { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.wcard canvas { border: 1px solid var(--line); background: #0b0d12; }
.wcard.dead canvas { opacity: 0.35; }
.wcard.waiting canvas { opacity: 0.2; }
.wcard .name {
  font-family: Consolas, "Courier New", monospace;
  font-size: 13px; max-width: 100%;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.wcard.host .name::after { content: " ★"; color: var(--accent); }
.wcard .sub { font-size: 11px; color: var(--muted); font-family: Consolas, monospace; }
.wcard.dead .sub { color: var(--danger); }
.wcard.winner .sub { color: #e9cf3a; }
