/* session-turn.css — shared styling for the turn engine (session-turn.js).
   ONE look for "whose turn is it", identical on The Chamber and the Programs.
   Loaded by the-chamber.html and programs.html. */

.qs-turn-indicator{
  position: fixed; left: 50%; bottom: 96px; transform: translateX(-50%);
  display: inline-flex; align-items: center; gap: 11px;
  padding: 10px 22px; border-radius: 999px;
  font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.18rem;
  color: var(--qs-bone-strong, #e8e3d6);
  background: rgba(12,12,22,.55);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(232,227,214,.10);
  z-index: 8000; pointer-events: none; white-space: nowrap;
  opacity: 0;
  transition: opacity .55s ease, color .55s ease, border-color .55s ease, background .55s ease;
}
.qs-turn-dot{ width: 9px; height: 9px; border-radius: 50%; background: currentColor; opacity: .65; flex: 0 0 auto; }

/* Hidden until we're actually in a session */
.qs-turn-indicator[data-turn="speaking"],
.qs-turn-indicator[data-turn="resting"],
.qs-turn-indicator[data-turn="your_turn"],
.qs-turn-indicator[data-turn="open_floor"]{ opacity: 1; }

.qs-turn-indicator[data-turn="speaking"]{ color: rgba(180,205,230,.92); }
.qs-turn-indicator[data-turn="resting"]{ color: rgba(184,156,224,.92); }
.qs-turn-indicator[data-turn="open_floor"]{ color: rgba(200,200,210,.72); }
.qs-turn-indicator[data-turn="your_turn"]{
  color: rgba(240,205,120,.98);
  border-color: rgba(240,205,120,.42);
  background: rgba(28,22,8,.6);
  pointer-events: auto; cursor: pointer;
  animation: qs-turn-invite 2.2s ease-in-out infinite;
}
@keyframes qs-turn-invite{
  0%,100%{ box-shadow: 0 0 0 0 rgba(240,205,120,0); }
  50%{ box-shadow: 0 0 24px 2px rgba(240,205,120,.18); }
}
.qs-turn-indicator[data-turn="your_turn"] .qs-turn-dot{ animation: qs-turn-dot 1.1s ease-in-out infinite; }
@keyframes qs-turn-dot{
  0%,100%{ transform: scale(1); opacity: .55; }
  50%{ transform: scale(1.55); opacity: 1; }
}

/* Orb affordance rings — reinforce the same turn state at the orb.
   Applies to the Chamber flower (.qs-orb-host) and the Programs orb (.sp-agent-orb). */
.qs-orb-host.mic-live,
.sp-agent-orb.mic-live{ border-radius: 50%; box-shadow: 0 0 0 1px rgba(120,200,220,.16), 0 0 40px rgba(120,200,220,.10); }
.qs-orb-host.turn-your,
.sp-agent-orb.turn-your{ border-radius: 50%; box-shadow: 0 0 0 1px rgba(240,205,120,.30), 0 0 48px rgba(240,205,120,.18); }
.qs-orb-host.turn-resting,
.sp-agent-orb.turn-resting{ border-radius: 50%; box-shadow: 0 0 34px rgba(160,140,210,.10); }

@media (prefers-reduced-motion: reduce){
  .qs-turn-indicator[data-turn="your_turn"]{ animation: none; }
  .qs-turn-indicator .qs-turn-dot{ animation: none !important; }
}
