/* ============================================================
   Lobby — per-TV whiteboards.
   Each .screen gets a drawing canvas plus a tiny tool set (brush +
   eraser, top-left) and a "send" button (bottom-left). Only the
   centred screen (.is-active) accepts input + shows its controls;
   the rest stay clean so a drag still slides the row. All chrome
   uses --ink / --room-bg so it flips with the lights switch.
   Behaviour lives in tv-paint.js.
   ============================================================ */

/* ---- Page heading ------------------------------------------ */
.lobby__intro {
  position: absolute;
  top: clamp(84px, 13vh, 138px);     /* clears the fixed navbar */
  left: 0;
  right: 0;
  z-index: 4;
  text-align: center;
  pointer-events: none;              /* never blocks the slider behind it */
}
.lobby__title {
  margin: 0;
  color: var(--ink);
  transition: color var(--duration-base) var(--ease-out-expo);
}
.lobby__subtitle {
  margin: 8px 0 0;
  font-size: 22px;
  color: var(--ink-muted);
  transition: color var(--duration-base) var(--ease-out-expo);
}

/* ---- Index label: shove to the top-RIGHT so the tools own the
        top-left corner the user asked for. ---- */
.screen__label { left: auto; right: 22px; }

/* ---- Drawing surface --------------------------------------- */
.tv-paint__canvas {
  position: absolute;
  inset: 4px;                        /* sit just inside the hairline frame */
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-radius: 4px;
  z-index: 2;
  touch-action: none;
  pointer-events: none;              /* off until this screen is centred */
}
.screen.is-active .tv-paint__canvas {
  pointer-events: auto;
  cursor: crosshair;
}

/* ---- Tools (top-left) + send (bottom-left): hidden until active --- */
.tv-paint__tools,
.tv-paint__send {
  position: absolute;
  z-index: 3;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--duration-base) var(--ease-out-expo),
              transform var(--duration-base) var(--ease-out-expo),
              background var(--duration-fast) var(--ease-out-expo),
              color var(--duration-fast) var(--ease-out-expo);
}
.tv-paint__tools {
  top: 14px;
  left: 14px;
  display: flex;
  gap: 6px;
  transform: translateY(-4px);
}
.tv-paint__send {
  bottom: 14px;
  left: 14px;
  transform: translateY(4px);
}
.screen.is-active .tv-paint__tools,
.screen.is-active .tv-paint__send {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

/* ---- Tool buttons ------------------------------------------ */
.tv-paint__tool {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1.4px solid var(--ink);
  border-radius: 7px;
  background: var(--room-bg);
  color: var(--ink);                 /* icon strokes inherit via currentColor */
  cursor: pointer;
  opacity: 0.6;
  transition: opacity var(--duration-fast) var(--ease-out-expo),
              transform var(--duration-fast) var(--ease-out-expo),
              background var(--duration-fast) var(--ease-out-expo),
              color var(--duration-fast) var(--ease-out-expo);
}
.tv-paint__tool:hover { opacity: 1; }
.tv-paint__tool:active { transform: scale(0.9); }
.tv-paint__tool.is-on {
  opacity: 1;
  background: var(--ink);
  color: var(--room-bg);             /* flip the icon to read on the fill */
}
.tv-paint__icon {
  width: 16px;
  height: 16px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* ---- Send button ------------------------------------------- */
.tv-paint__send {
  padding: 5px 13px;
  border: 1.4px solid var(--ink);
  border-radius: 14px;
  background: var(--room-bg);
  color: var(--ink);
  font-family: var(--font-primary);
  font-weight: var(--weight-regular);
  font-size: var(--text-caption);
  text-transform: uppercase;
  letter-spacing: var(--tracking-caps);
  cursor: pointer;
}
.tv-paint__send:hover { background: var(--ink); color: var(--room-bg); }
.tv-paint__send:active { transform: scale(0.94); }
.tv-paint__send:disabled { cursor: default; }
.tv-paint__send.is-saved { background: var(--ink); color: var(--room-bg); }
