/* VEYTU V5.10 · Glass Capsule A / cohesive Orbit text system.
   SCOPED TO #orbitWrap .orbit-content only.
   Does NOT edit SVG, 3D photographic layers, animation, WebRTC, data, or turn flow.
   The existing listener cue remains the approved Glass Capsule A. */
#orbitWrap .orbit-content {
  /* Keep the original central safe area and its existing flex layout. */
  gap: clamp(3px, .65vw, 6px);
}
#orbitWrap .orbit-content > .speaking-eyebrow,
#orbitWrap .orbit-content > .speaker-name,
#orbitWrap .orbit-content > .timer-text,
#orbitWrap .orbit-content > .clock-label {
  box-sizing: border-box;
  position: relative;
  flex: 0 0 auto;
  width: max-content;
  max-width: 100%;
  min-width: 0;
  margin: 0 auto;
  padding: 5px 11px;
  border: 1px solid rgba(67, 125, 102, .20);
  border-radius: 999px;
  color: #173d33;
  background: linear-gradient(164deg, rgba(255,255,255,.99), rgba(240,250,245,.96) 52%, rgba(222,241,231,.90));
  box-shadow: inset 0 1.5px 1px rgba(255,255,255,.99),
              inset 0 -1px 1px rgba(20,100,70,.05),
              0 2px 5px rgba(18,77,56,.075),
              0 5px 10px rgba(29,75,60,.035);
  text-shadow: 0 1px 0 rgba(255,255,255,.75);
}
/* Small glass status. No extra icon: the cue already owns audio statuses. */
#orbitWrap .orbit-content > .speaking-eyebrow {
  padding: 4px 10px;
  min-height: 24px;
  font-size: clamp(10px, 1vw, 12px);
  line-height: 1.3;
  letter-spacing: .055em;
  font-weight: 740;
  color: #447969;
  border-color: rgba(71,133,104,.18);
  white-space: normal;
  border-radius: 16px;
  max-height: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-wrap: balance;
}
/* Participant identity: refined glass, no new identity graphics. */
#orbitWrap .orbit-content > .speaker-name {
  padding: 5px 12px;
  min-height: 30px;
  font-size: clamp(19px, 2.1vw, 29px);
  font-weight: 650;
  line-height: 1.1;
  letter-spacing: -.02em;
  border-radius: 20px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
  text-wrap: balance;
  max-height: none;
}
/* Timer remains the primary information. Transparent-looking, not a solid slab. */
#orbitWrap .orbit-content > .timer-text {
  padding: 2px 13px 5px;
  font-size: clamp(45px, 5vw, 66px);
  line-height: 1;
  letter-spacing: -.055em;
  font-weight: 440;
  white-space: nowrap;
  border-radius: 24px;
  font-variant-numeric: tabular-nums;
  font-feature-settings: 'tnum' 1;
  color: #172e2b;
}
/* Fallback text is styled only when the approved listener capsule is absent. */
#orbitWrap .orbit-content > .clock-label {
  padding: 5px 10px;
  min-height: 27px;
  font-size: clamp(11px, 1.07vw, 13px);
  line-height: 1.28;
  font-weight: 600;
  color: #557269;
  letter-spacing: 0;
  white-space: normal;
  border-radius: 18px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
  max-height: none;
  text-wrap: balance;
}
/* Do not undo the approved rule that removes duplicate listener status. */
#orbitWrap.v510-premium-cue-visible .orbit-content > .clock-label {display:none!important}
/* Timer warning/overdue feedback stays recognisable; no semantic regression. */
#orbitWrap[data-time-state="warning"] .orbit-content > .timer-text,
#orbitWrap.urgent .orbit-content > .timer-text {
  color: #92601c;
  border-color: rgba(189,145,66,.35);
  background:linear-gradient(160deg, rgba(255,255,255,.99),rgba(255,248,233,.96),rgba(247,232,204,.91));
}
#orbitWrap[data-time-state="overdue"] .orbit-content > .timer-text {
  color: #ad493f;
  border-color: rgba(193,92,77,.34);
  background:linear-gradient(160deg, rgba(255,255,255,.99),rgba(255,241,239,.96),rgba(250,225,221,.91));
}
#orbitWrap.v510-audio-warning:not(.v510-premium-cue-visible) .orbit-content > .clock-label {
  color:#a72d3e!important;
  border-color:rgba(192,67,88,.32);
  background:linear-gradient(163deg,#fff,rgba(255,237,241,.96),rgba(249,225,230,.95));
  width:max-content;
  max-width:100%;
  white-space:normal;
  text-overflow:clip;
}
#orbitWrap.v510-audio-ok:not(.v510-premium-cue-visible) .orbit-content > .clock-label {color:#127656}
#orbitWrap[data-time-state="overdue"] .orbit-content > .clock-label {color:#a75245}
/* Preserve the participant's chosen dark theme. */
[data-theme="dark"] #orbitWrap .orbit-content > .speaking-eyebrow,
[data-theme="dark"] #orbitWrap .orbit-content > .speaker-name,
[data-theme="dark"] #orbitWrap .orbit-content > .timer-text,
[data-theme="dark"] #orbitWrap .orbit-content > .clock-label {
  background:linear-gradient(164deg,rgba(48,73,64,.97),rgba(28,55,46,.95),rgba(20,42,36,.96));
  border-color:rgba(127,190,159,.33);
  color:#e4f4eb;
  text-shadow:none;
  box-shadow:inset 0 1px rgba(255,255,255,.10),0 3px 8px rgba(0,0,0,.22);
}
[data-theme="dark"] #orbitWrap[data-time-state="overdue"] .orbit-content > .timer-text,
[data-theme="dark"] #orbitWrap[data-time-state="warning"] .orbit-content > .timer-text,
[data-theme="dark"] #orbitWrap.urgent .orbit-content > .timer-text {color:#ffc5a2}
/* Respect VEYTU's Large Text setting instead of overriding its font scaling. */
body.large-text #orbitWrap .orbit-content > .speaker-name {font-size:clamp(22px,2.4vw,32px)}
body.large-text #orbitWrap .orbit-content > .speaking-eyebrow {font-size:clamp(11px,1.15vw,13px)}
body.large-text #orbitWrap .orbit-content > .clock-label {font-size:clamp(12px,1.3vw,16px)}
/* Mobile: bounded sizes and controlled height, even for 2-line names. */
@media(max-width:700px){
  #orbitWrap .orbit-content {gap:4px}
  #orbitWrap .orbit-content > .speaking-eyebrow {font-size:10px;padding:3px 8px;min-height:21px;letter-spacing:.03em}
  #orbitWrap .orbit-content > .speaker-name {font-size:clamp(19px,5.3vw,24px);padding:4px 9px;min-height:28px}
  #orbitWrap .orbit-content > .timer-text {font-size:clamp(46px,12.4vw,56px);padding:2px 9px 4px}
  #orbitWrap .orbit-content > .clock-label {font-size:11px;padding:4px 8px;min-height:25px}
}
@media(max-width:360px){
  body.large-text #orbitWrap .orbit-content > .speaker-name {font-size:21px;padding:3px 7px}
  body.large-text #orbitWrap .orbit-content > .speaking-eyebrow {font-size:10px;padding:3px 6px}
  body.large-text #orbitWrap .orbit-content > .clock-label {font-size:11px;padding:3px 6px}
  #orbitWrap .orbit-content {gap:3px}
  #orbitWrap .orbit-content > .speaking-eyebrow {font-size:9.5px;min-height:20px;padding:3px 7px}
  #orbitWrap .orbit-content > .speaker-name {font-size:19px;min-height:27px;padding:3px 8px}
  #orbitWrap .orbit-content > .timer-text {font-size:45px;padding:2px 8px 4px}
  #orbitWrap .orbit-content > .clock-label {font-size:10.5px;min-height:24px;padding:3px 7px;max-width:min(100%,154px)}
}
@media(prefers-contrast:more){
  #orbitWrap .orbit-content > .speaking-eyebrow,
  #orbitWrap .orbit-content > .speaker-name,
  #orbitWrap .orbit-content > .timer-text,
  #orbitWrap .orbit-content > .clock-label {border-width:2px}
}
@media(prefers-reduced-motion:reduce){
  #orbitWrap .orbit-content > * {transition:none!important}
}
