:root{
  color-scheme:light dark;
  /* Brand */
  --vc-primary:#123F6D;
  --vc-secondary:#FF6B35;
  --vc-button:#FF5A1F;
  --vc-accent:#FF5A1F;
  /* Surfaces */
  --vc-bg:#F7F9FC;
  --vc-panel:#FFFFFF;
  --vc-input:#FFFFFF;
  /* Text */
  --vc-text:#172033;
  --vc-ink:#172033;
  --vc-muted:#667085;
  /* Structure */
  --vc-border:#D7DEE8;
  --vc-topbar-end:#1F6FAF;
  /* Status */
  --vc-success:#15A36A;
  --vc-warning:#F59E0B;
  --vc-danger:#DC2626;
  /* Semantic fills */
  --vc-fill-subtle:#F8FAFC;
  --vc-fill-medium:#F6F9FC;
  --vc-fill-info:#EEF4FA;
  --vc-fill-warm:#FFF1EA;
  --vc-fill-success-bg:#ECFDF3;
  --vc-fill-warning-bg:#FFFAEB;
  --vc-fill-danger-bg:#FEF3F2;
  /* Shadows */
  --vc-shadow-sm:rgba(18,63,109,.06);
  --vc-shadow-md:rgba(18,63,109,.10);
  --vc-shadow-lg:rgba(18,63,109,.13);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Open Sans,Arial,sans-serif;background:var(--vc-bg);color:var(--vc-text)}
a{color:var(--vc-primary);font-weight:700;text-decoration:none}
.topbar{background:linear-gradient(135deg,var(--vc-primary),var(--vc-topbar-end));color:white;padding:22px 28px}
.brand{font-size:24px;font-weight:900;letter-spacing:-.02em}
.sub{opacity:.9;margin-top:4px}
.wrap{max-width:1120px;margin:0 auto;padding:26px}
.card{background:var(--vc-panel);border:1px solid var(--vc-border);border-radius:22px;padding:24px;box-shadow:0 18px 50px rgba(18,63,109,.10);margin-bottom:18px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.grid.two{
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}
@media(max-width:640px){
  .grid.two{grid-template-columns:1fr}
}

.pill{display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:var(--vc-fill-info);color:var(--vc-primary);font-size:13px;font-weight:850;padding:8px 12px;border:1px solid rgba(18,63,109,.14);line-height:1.15}
.pill.good{background:#DCFCE7;color:#065F46;border-color:#86EFAC}.pill.warn{background:#FFFBEB;color:#92400E;border-color:#F59E0B}.pill.danger{background:#FEE2E2;color:#991B1B;border-color:#FCA5A5}
h1,h2,h3{margin:0 0 12px} h1{font-size:34px;letter-spacing:-.03em} h2{font-size:23px}
p{color:var(--vc-muted);line-height:1.55}
label{display:block;font-weight:800;margin:14px 0 6px}
input,select,textarea{width:100%;padding:13px 14px;border:1px solid var(--vc-border);border-radius:13px;font:inherit;background:var(--vc-input);color:var(--vc-text)}
textarea{min-height:90px}
button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;padding:13px 18px;background:var(--vc-button);color:white;font-weight:900;font-size:15px;cursor:pointer}
.btn.secondary,button.secondary{background:var(--vc-primary)}
.btn.light,button.light{background:var(--vc-fill-info);color:var(--vc-primary)}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;border-bottom:1px solid var(--vc-border);padding:12px 8px;vertical-align:top}.table th{font-size:13px;color:var(--vc-muted);text-transform:uppercase;letter-spacing:.04em}
.flash{padding:13px 16px;border-radius:14px;margin-bottom:16px;background:var(--vc-fill-info);border:1px solid var(--vc-border)}
.flash.error{background:var(--vc-fill-danger-bg);border-color:var(--vc-danger);color:#9B1C1C}.flash.good{background:var(--vc-fill-success-bg);border-color:var(--vc-success);color:#0B6845}
.nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.nav a{background:rgba(255,255,255,.14);color:white;border-radius:999px;padding:8px 12px}
.small{font-size:13px;color:var(--vc-muted)}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--vc-fill-subtle);border-radius:10px;padding:8px 10px;display:inline-block}
footer{text-align:center;color:var(--vc-muted);padding:28px}

.choice{display:block;border:1px solid var(--vc-border);border-radius:16px;padding:13px 14px;margin:10px 0;background:var(--vc-panel)}
.choice input{width:auto;margin-right:8px}.choice span{display:block;margin-left:26px;color:var(--vc-muted);font-size:13px;line-height:1.4}
.viewer-stage{min-height:340px;border-radius:20px;border:1px dashed var(--vc-border);background:linear-gradient(135deg,var(--vc-fill-subtle),var(--vc-fill-info));display:flex;align-items:center;justify-content:center;text-align:center;color:var(--vc-muted);font-weight:800;font-size:22px;padding:30px}


/* VC-3E.3 attendee viewer polish — presentation-first, less technical */
.topbar{padding:18px 28px;background:linear-gradient(135deg,var(--vc-primary),var(--vc-topbar-end))}
.topbar .wrap{padding:0;max-width:1240px}
.brand{font-size:22px}.sub{font-size:14px;margin-top:2px}
.wrap{max-width:1240px;padding:22px 28px}
.card{box-shadow:0 16px 42px rgba(18,63,109,.09)}
.attendee-shell{display:flex;flex-direction:column;gap:18px}
.attendee-hero{margin-bottom:0;padding:22px 28px;position:relative;overflow:hidden}
.attendee-hero:after{content:"";position:absolute;right:-90px;top:-100px;width:260px;height:260px;border-radius:50%;background:linear-gradient(135deg,rgba(31,111,175,.12),rgba(255,107,53,.08));pointer-events:none}
.attendee-hero h1{font-size:34px;margin:8px 0 8px;max-width:980px;line-height:1.05}
.event-meta{margin:5px 0;color:var(--vc-muted);font-size:15px}
.attendee-stage-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;align-items:start}
.viewer-card,.control-card{margin-bottom:0}
.viewer-card{padding:22px}
.viewer-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.viewer-heading h2{margin-bottom:2px;font-size:22px}
.companion-stage{min-height:590px;border-radius:22px;position:relative;overflow:hidden;background:radial-gradient(circle at top left,rgba(31,111,175,.08),transparent 38%),linear-gradient(135deg,var(--vc-fill-subtle),var(--vc-fill-info));font-size:24px;color:var(--vc-muted)}
.control-card{position:sticky;top:18px;padding:22px;box-shadow:0 20px 54px rgba(18,63,109,.13)}
.control-card h2{font-size:24px;margin-bottom:12px}
.control-card .mono{display:none}
.browser-audio-copy p{margin:10px 0 0}.audio-actions{margin-top:14px}
.audio-actions button{min-width:132px}.audio-actions #webCallConnectBtn{width:100%}
.qa-panel{border-top:1px solid var(--vc-border);margin-top:18px;padding-top:18px}
.qa-panel h3{font-size:19px;margin-bottom:10px}.qa-panel .actions{margin-top:12px}
.qa-panel #qaAskBtn,.qa-panel #qaWithdrawBtn{width:100%;font-size:15px;padding:13px 16px}
.event-status-mini{border-top:1px solid var(--vc-border);margin-top:18px;padding-top:18px}
.event-status-mini h3{font-size:18px;margin-bottom:8px}
.attendee-lower-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}
.table th,.table td{padding:10px 8px}
@media(max-width:980px){.wrap{padding:18px}.attendee-stage-grid{grid-template-columns:1fr}.control-card{position:static}.companion-stage{min-height:420px}.attendee-hero h1{font-size:30px}}


/* VC-3E.4 — denser, slide-first attendee layout */
body{font-size:14px}
.topbar{padding:12px 22px}
.topbar .wrap{max-width:1540px}
.brand{font-size:19px}.sub{font-size:12.5px}
.wrap{max-width:1540px;padding:14px 18px}
.card{border-radius:18px;padding:16px;margin-bottom:12px;box-shadow:0 10px 28px rgba(18,63,109,.075)}
h1{font-size:28px} h2{font-size:20px} h3{font-size:16px}
p{line-height:1.42}.small{font-size:12px}
.pill{font-size:12px;padding:6px 10px}
button,.btn{font-size:13px;padding:10px 14px;border-radius:12px}
input,select,textarea{font-size:13px;padding:10px 12px;border-radius:11px}
.attendee-shell{gap:12px}
.attendee-hero{padding:16px 20px}
.attendee-hero h1{font-size:30px;line-height:1.02;margin:6px 0}
.event-meta{font-size:13px;margin:4px 0}
.attendee-stage-grid{grid-template-columns:minmax(720px,1fr) 310px;gap:12px}
.viewer-card{padding:16px}
.viewer-heading{margin-bottom:8px}
.viewer-heading h2{font-size:19px}
.companion-stage{min-height:clamp(520px, calc(100vh - 250px), 820px);font-size:22px}
.control-card{top:10px;padding:16px}
.control-card h2{font-size:20px}
.browser-audio-copy p{margin:8px 0}
.audio-actions{gap:8px;margin-top:10px}
.audio-actions button{min-width:112px}
.qa-panel{margin-top:12px;padding-top:12px}
.verbal-qa-panel{background:var(--vc-fill-subtle);border:1px solid #DCE7F5;border-radius:14px;padding:12px}
.verbal-qa-panel h3{margin:0 0 8px;font-size:16px}
.verbal-qa-actions{gap:8px}
.verbal-qa-actions #qaAskBtn,.verbal-qa-actions #qaWithdrawBtn{width:100%;font-size:13px;padding:10px 12px}
.event-status-mini{margin-top:12px;padding-top:12px}
.event-status-mini h3{font-size:15px}
.attendee-lower-grid{grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);gap:12px}
.written-qa-card textarea{min-height:72px}
.table th,.table td{padding:8px 8px;font-size:12.5px}
footer{display:none}
@media(max-width:1120px){
  .attendee-stage-grid{grid-template-columns:1fr}
  .control-card{position:static}
  .companion-stage{min-height:460px}
}
@media(max-width:720px){
  .wrap{padding:10px}
  .attendee-hero h1{font-size:25px}
  .attendee-lower-grid{grid-template-columns:1fr}
  .companion-stage{min-height:360px}
}


/* VC-3E.5 — right-side Q&A/resources stack, hide attendee details */
.control-side-stack{
  display:flex;
  flex-direction:column;
  gap:12px;
  align-self:start;
  position:sticky;
  top:10px;
}
.control-side-stack .card{
  margin-bottom:0;
}
.side-card h2,
.written-qa-card h2,
.resources-card h2{
  font-size:18px;
  margin-bottom:8px;
}
.side-card p,
.written-qa-card p,
.resources-card p{
  margin:6px 0;
}
.written-qa-card textarea{
  width:100%;
  min-height:86px;
  resize:vertical;
}
.attendee-stage-grid{
  grid-template-columns:minmax(760px,1fr) 320px;
}
@media(max-width:1120px){
  .control-side-stack{position:static}
  .attendee-stage-grid{grid-template-columns:1fr}
}


/* VC-3E.6 — another light zoom-out pass and reconnect polish */
body{font-size:13px}
.topbar{padding:10px 18px}
.brand{font-size:18px}.sub{font-size:12px}
.wrap{max-width:1680px;padding:12px 16px}
.card{border-radius:16px;padding:14px;margin-bottom:10px}
h1{font-size:26px} h2{font-size:18px} h3{font-size:15px}
p{line-height:1.36}.small{font-size:11.5px}
.pill{font-size:11.5px;padding:5px 9px}
button,.btn{font-size:12.5px;padding:9px 13px;border-radius:11px}
.attendee-shell{gap:10px}
.attendee-hero{padding:14px 18px}
.attendee-hero h1{font-size:28px}
.attendee-stage-grid{grid-template-columns:minmax(820px,1fr) 300px;gap:10px}
.viewer-card{padding:14px}
.companion-stage{min-height:clamp(560px, calc(100vh - 220px), 860px)}
.control-card{top:8px;padding:14px}
.control-side-stack{gap:10px;top:8px}
.audio-actions{gap:7px;margin-top:9px}
.verbal-qa-panel{padding:10px}
.written-qa-card textarea{min-height:76px}
@media(max-width:1120px){
  .attendee-stage-grid{grid-template-columns:1fr}
  .companion-stage{min-height:440px}
}


/* VC-3E.7 — reliable reconnect, audio settings, and 100% browser fit polish */
body{font-size:12.5px}
.topbar{padding:8px 16px}
.brand{font-size:17px}.sub{font-size:11.5px}
.wrap{max-width:1760px;padding:10px 14px 14px}
.card{border-radius:15px;padding:12px;margin-bottom:9px}
h1{font-size:25px} h2{font-size:17px} h3{font-size:14px}
p{line-height:1.32}.small{font-size:11px}
.pill{font-size:11px;padding:5px 8px}
button,.btn{font-size:12px;padding:8px 12px;border-radius:10px}
.attendee-hero{padding:12px 16px}
.attendee-hero h1{font-size:26px}
.event-meta{font-size:12px}
.attendee-stage-grid{grid-template-columns:minmax(840px,1fr) 290px;gap:9px}
.viewer-card{padding:12px}
.viewer-heading{margin-bottom:6px}
.viewer-heading h2{font-size:17px}
.companion-stage{min-height:clamp(500px, calc(100vh - 245px), 800px)}
.control-card{padding:12px}
.control-side-stack{gap:9px}
.audio-actions{gap:6px;margin-top:8px}
.audio-actions button{min-width:96px}
.audio-actions #webCallConnectBtn{width:100%}
.audio-settings-panel{margin-top:10px;padding:10px;border:1px solid var(--vc-border);border-radius:12px;background:#F8FBFF}
.audio-settings-panel label{font-size:11.5px;margin:8px 0 4px}
.audio-settings-panel select{font-size:12px;padding:8px 10px;border-radius:9px}
.verbal-qa-panel{padding:9px}
.written-qa-card textarea{min-height:68px}
.resources-card{padding-bottom:12px}
@media(max-width:1120px){
  .attendee-stage-grid{grid-template-columns:1fr}
  .companion-stage{min-height:420px}
}
@media(max-height:760px) and (min-width:1121px){
  .attendee-hero{padding:10px 14px}
  .attendee-hero h1{font-size:23px}
  .companion-stage{min-height:calc(100vh - 235px)}
}


/* VC-3E.8 — attendee shell polish and fit-at-100% pass */
body.attendee-page{
  background:var(--vc-bg);
}
body.attendee-page .wrap{
  max-width:1780px;
  padding-top:10px;
  padding-bottom:16px;
}
body.attendee-page .attendee-hero{
  margin-top:0;
  padding:10px 16px;
}
body.attendee-page .attendee-hero h1{
  font-size:25px;
  margin:2px 0 5px;
}
body.attendee-page .event-meta{
  font-size:11.5px;
  margin:2px 0;
}
body.attendee-page .attendee-stage-grid{
  grid-template-columns:minmax(860px,1fr) 288px;
  gap:9px;
}
body.attendee-page .viewer-card,
body.attendee-page .control-card,
body.attendee-page .written-qa-card,
body.attendee-page .resources-card{
  padding:11px 12px;
}
body.attendee-page .companion-stage{
  min-height:clamp(470px, calc(100vh - 205px), 760px);
}
body.attendee-page .viewer-heading h2,
body.attendee-page .control-card h2,
body.attendee-page .written-qa-card h2,
body.attendee-page .resources-card h2{
  font-size:16px;
}
body.attendee-page .audio-settings-panel{
  padding:8px;
}
@media(max-width:1120px){
  body.attendee-page .attendee-stage-grid{grid-template-columns:1fr}
  body.attendee-page .companion-stage{min-height:390px}
}
@media(max-height:780px) and (min-width:1121px){
  body.attendee-page .companion-stage{min-height:calc(100vh - 215px)}
  body.attendee-page .attendee-hero{padding:8px 14px}
}


/* VC-3E.9 — tiny viewport breathing room */
body.attendee-page .wrap{padding-bottom:22px}
body.attendee-page .companion-stage{min-height:clamp(455px, calc(100vh - 220px), 740px)}
body.attendee-page .written-qa-card textarea{min-height:58px}


/* VC-3F — Written Q&A */
.written-question-list{
  margin-top:10px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.written-question-item{
  border:1px solid var(--vc-border);
  background:var(--vc-fill-subtle);
  border-radius:12px;
  padding:9px 10px;
}
.written-question-item p{
  margin:7px 0 0;
  color:var(--vc-text);
}
.written-answer{
  margin-top:8px;
  padding:8px 9px;
  border-radius:10px;
  background:var(--vc-panel);
  border:1px solid var(--vc-border);
  color:var(--vc-muted);
}
.question-action-form{
  display:grid;
  grid-template-columns:minmax(110px,150px) minmax(180px,1fr) auto;
  gap:8px;
  align-items:start;
}
.question-action-form textarea{
  min-height:54px;
}
.written-question-table td{
  vertical-align:top;
}
@media(max-width:900px){
  .question-action-form{grid-template-columns:1fr}
}


/* VC-3G — Resources */
.resources-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:8px;
}
.resource-item{
  border:1px solid var(--vc-border);
  background:var(--vc-fill-subtle);
  border-radius:12px;
  padding:9px 10px;
}
.resource-item strong{
  display:block;
  color:var(--vc-text);
}
.resource-file{
  display:block;
  margin-top:2px;
}
.resource-link{
  display:inline-block;
  margin-top:7px;
}
.resources-card .small{
  margin-bottom:5px;
}


/* VC-3H — Event status/live-state foundation */
.event-status-controls{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
}
.event-status-controls.compact{
  margin-top:8px;
}
.event-status-controls.compact button{
  padding:7px 9px;
  font-size:11.5px;
}
.event-actions{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-bottom:5px;
}
body[data-event-mode="live"] .viewer-card{
  border-color:#9CD7B2;
}
body[data-event-mode="ended"] .viewer-card{
  opacity:.92;
}


/* VC-3I — Slides + collapsible side panels */
.presentation-empty{
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  color:var(--vc-muted);
  font-weight:800;
}
.presentation-slide-image{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  border-radius:14px;
}
.presentation-slide-caption{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.92);
  border:1px solid var(--vc-border);
  color:var(--vc-text);
  font-size:12px;
  font-weight:700;
}
.companion-stage{
  position:relative;
  overflow:hidden;
}
.admin-slide-thumb{
  width:120px;
  height:70px;
  object-fit:contain;
  border:1px solid var(--vc-border);
  border-radius:10px;
  background:var(--vc-fill-subtle);
}
.collapsible-card-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.collapsible-card-header h2{
  margin:0;
}
.collapse-toggle{
  padding:6px 9px;
  font-size:11px;
}
[hidden]{
  display:none !important;
}
@media(max-width:1120px){
  .presentation-slide-caption{
    position:static;
    margin-top:8px;
  }
}


/* VC-3J — PDF/PPT upload conversion, slide controls, drag-sort */
.attendee-slide-controls{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  display:flex;
  justify-content:center;
  gap:8px;
  z-index:3;
}
.attendee-slide-controls button{
  background:rgba(255,255,255,.94);
}
.presentation-slide-caption + .attendee-slide-controls{
  bottom:70px;
}
.slide-sort-row{
  cursor:grab;
}
.slide-sort-row.dragging{
  opacity:.55;
}
.slide-order-input{
  max-width:56px;
  padding:7px 8px;
  text-align:center;
}
.admin-slide-thumb{
  width:140px;
  height:82px;
}
@media(max-width:1120px){
  .attendee-slide-controls{
    position:static;
    margin-top:8px;
  }
}


/* VC-4A — Admin lists and access control */
.admin-inline-form{
  display:inline;
}
.event-actions .btn,
.actions .btn{
  margin-bottom:4px;
}
.nav a{
  white-space:nowrap;
}
.table .btn{
  margin:2px 2px 2px 0;
}


/* VC-4A.1 — clean attendee slides + upload/conversion modal */
.presentation-slide-caption{
  display:none !important;
}

.upload-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(15,23,42,.54);
  backdrop-filter:blur(5px);
}
.upload-modal-backdrop[hidden]{
  display:none !important;
}
.upload-modal{
  width:min(520px, calc(100vw - 48px));
  border-radius:24px;
  background:var(--vc-panel);
  border:1px solid rgba(210,220,235,.9);
  box-shadow:0 28px 80px rgba(15,23,42,.28);
  padding:28px;
  text-align:center;
}
.upload-modal h2{
  margin:14px 0 8px;
}
.upload-modal p{
  color:var(--vc-muted);
}
.upload-spinner{
  width:54px;
  height:54px;
  margin:0 auto;
  border-radius:999px;
  border:5px solid #E8EEF7;
  border-top-color:var(--vc-accent);
  animation:vieweringUploadSpin .85s linear infinite;
}
.upload-progress-track{
  width:100%;
  height:10px;
  border-radius:999px;
  background:var(--vc-fill-info);
  overflow:hidden;
  margin:18px 0 10px;
}
.upload-progress-bar{
  height:100%;
  width:18%;
  border-radius:999px;
  background:var(--vc-accent);
  transition:width .6s ease;
}
body.upload-modal-open{
  cursor:wait;
}
@keyframes vieweringUploadSpin{
  to{transform:rotate(360deg)}
}


/* VC-4B — Simple Client/Speaker Slide Console */
.slide-console{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:14px;
  min-height:calc(100vh - 120px);
}
.console-thumbs{
  position:sticky;
  top:12px;
  align-self:start;
  max-height:calc(100vh - 44px);
  overflow:auto;
  border:1px solid var(--vc-border);
  border-radius:18px;
  background:var(--vc-panel);
  padding:10px;
  box-shadow:0 18px 60px rgba(15,23,42,.08);
}
.console-panel-title{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
  color:var(--vc-muted);
}
.console-thumb-list{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.console-thumb{
  width:100%;
  text-align:left;
  border:2px solid transparent;
  border-radius:14px;
  background:var(--vc-fill-subtle);
  padding:8px;
  cursor:pointer;
  color:var(--vc-text);
}
.console-thumb:hover{
  border-color:#BFD3EA;
}
.console-thumb.is-current{
  border-color:var(--vc-accent);
  box-shadow:0 0 0 3px rgba(18,63,109,.12);
}
.console-thumb img{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:contain;
  border-radius:10px;
  background:var(--vc-fill-info);
  margin:5px 0;
}
.console-thumb-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:26px;
  height:22px;
  border-radius:999px;
  background:var(--vc-fill-info);
  font-weight:900;
  font-size:11px;
}
.console-thumb-title{
  display:block;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.console-main{
  min-width:0;
}
.console-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
}
.console-status-box{
  text-align:right;
  min-width:220px;
}
.console-live-pill{
  display:inline-flex;
  padding:10px 16px;
  border-radius:999px;
  font-weight:900;
  letter-spacing:.05em;
  font-size:13px;
}
.console-live-pill.live{
  background:var(--vc-fill-success-bg);
  color:#087544;
}
.console-live-pill.offline{
  background:#FFF4DA;
  color:#975F00;
}
.console-live-controls{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.console-live-button,
.console-offline-button{
  border:0;
  color:#fff;
  font-weight:900;
  letter-spacing:.02em;
}
.console-live-button{
  background:#12A45B;
}
.console-offline-button{
  background:#9A3412;
}
.console-current-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:16px;
}
.console-preview-wrap{
  border-radius:18px;
  border:1px solid var(--vc-border);
  background:var(--vc-fill-info);
  min-height:520px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.console-main-slide{
  display:block;
  width:100%;
  height:100%;
  max-height:calc(100vh - 330px);
  object-fit:contain;
  background:var(--vc-fill-info);
}
.console-no-slide{
  color:var(--vc-muted);
  font-weight:900;
}
.console-current-meta{
  align-self:start;
  border-left:1px solid var(--vc-border);
  padding-left:16px;
}
@media(max-width:980px){
  .slide-console{
    grid-template-columns:1fr;
  }
  .console-thumbs{
    position:static;
    max-height:none;
  }
  .console-thumb-list{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(130px,1fr));
  }
  .console-current-card{
    grid-template-columns:1fr;
  }
  .console-status-box{
    text-align:left;
  }
}


/* VC-4C — Presenter access link */
.presenter-login-wrap{
  min-height:calc(100vh - 80px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.presenter-login-card{
  width:min(560px, 100%);
}
.presenter-console .console-header{
  border-top:8px solid var(--vc-accent);
}
.presenter-link-card input[readonly]{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size:13px;
  background:var(--vc-fill-subtle);
}


/* VC-4D — Superuser Deep Health page */
.health-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  border-top:8px solid var(--vc-accent);
}
.health-hero h1{
  margin-top:8px;
}
.health-hero-status{
  min-width:180px;
  text-align:right;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.health-grid .card h2,
.health-count-card h2{
  margin:0 0 8px;
}
.health-count-grid{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
}
.health-count-card h2{
  font-size:34px;
  color:var(--vc-accent);
}
.health-table td:first-child{
  width:220px;
  color:var(--vc-muted);
  font-weight:800;
}
@media(max-width:760px){
  .health-hero{
    flex-direction:column;
  }
  .health-hero-status{
    text-align:left;
  }
}


/* VC-4E — Public join redesign and slides-only unlock flow */
.public-join-shell{
  max-width:980px;
  margin:0 auto;
}
.public-join-hero{
  padding:28px 28px 18px;
}
.public-join-hero h1{
  font-size:clamp(30px, 4vw, 52px);
  margin:10px 0 6px;
}
.public-join-hero p{
  color:var(--vc-muted);
  font-size:17px;
  margin:0;
}
.public-join-modal{
  max-width:860px;
  margin:0 auto 28px;
  border-top:8px solid var(--join-accent, var(--vc-accent));
  box-shadow:0 28px 100px rgba(15,23,42,.10);
}
.join-modal-heading{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
}
.join-modal-heading h2{
  margin-bottom:4px;
}
.join-modal-heading p{
  color:var(--vc-muted);
  margin-top:0;
}
.landing-audio-options{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  margin:16px 0;
}
.landing-audio-option{
  display:flex;
  align-items:flex-start;
  gap:12px;
  border:2px solid var(--vc-border);
  border-radius:18px;
  padding:16px;
  cursor:pointer;
  background:var(--vc-panel);
  transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.landing-audio-option:hover{
  border-color:#BFD3EA;
  transform:translateY(-1px);
}
.landing-audio-option.selected{
  border-color:var(--join-accent, var(--vc-accent));
  box-shadow:0 0 0 4px rgba(18,63,109,.10);
}
.landing-audio-option input{
  margin-top:5px;
  width:auto;
}
.landing-option-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:14px;
  background:var(--vc-fill-info);
  font-weight:900;
  flex:0 0 auto;
}
.landing-audio-option strong{
  display:block;
  color:var(--vc-text);
  font-size:16px;
}
.landing-audio-option small{
  display:block;
  color:var(--vc-muted);
  margin-top:4px;
  line-height:1.35;
}
.join-details-panel{
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:16px;
  background:var(--vc-fill-subtle);
  margin-top:14px;
}
.join-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:16px;
}
.public-empty-state{
  max-width:720px;
  margin:0 auto;
}
.identity-unlock-card{
  border-top:6px solid #F59E0B;
}
.locked-card{
  opacity:.92;
}
.locked-card textarea,
.locked-card button[type="submit"]{
  pointer-events:none;
}
@media(max-width:760px){
  .public-join-hero{
    padding:18px 10px 10px;
  }
  .public-join-modal{
    border-radius:20px;
  }
  .join-actions{
    justify-content:stretch;
  }
  .join-actions button{
    width:100%;
  }
}


/* VC-4F — Superuser Project Report */
.project-report-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  border-top:8px solid var(--vc-accent);
}
.project-report-hero h1{
  margin:10px 0 6px;
}
.project-report-score{
  min-width:260px;
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:16px;
  background:var(--vc-fill-subtle);
  color:var(--vc-muted);
}
.project-report-score strong{
  display:block;
  color:var(--vc-text);
  margin-bottom:6px;
}
.project-agenda{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:12px;
}
.project-agenda div{
  display:flex;
  gap:12px;
  align-items:flex-start;
  border:1px solid var(--vc-border);
  border-radius:18px;
  background:var(--vc-fill-subtle);
  padding:14px;
}
.project-agenda strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:999px;
  background:var(--vc-accent);
  color:white;
  flex:0 0 auto;
}
.project-table td,
.project-table th{
  vertical-align:top;
}
.project-table td:first-child{
  font-weight:800;
}
.project-architecture-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:14px;
  margin:14px 0;
}
.project-architecture-card{
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:16px;
  background:var(--vc-fill-subtle);
}
.project-architecture-card h3{
  margin-top:0;
}
@media(max-width:760px){
  .project-report-hero{
    flex-direction:column;
  }
  .project-report-score{
    min-width:0;
    width:100%;
  }
}


/* VC-4G — TurboBridge/LCM live-state worker foundation */
.live-state-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  border-top:8px solid var(--vc-accent);
}
.live-state-mode{
  min-width:260px;
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:16px;
  background:var(--vc-fill-subtle);
}
.live-state-mode strong{
  display:block;
  margin-bottom:6px;
}
.live-state-summary-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.live-state-summary-grid h2{
  font-size:34px;
  color:var(--vc-accent);
  margin:0 0 6px;
}
.live-state-table td,
.live-state-table th{
  vertical-align:top;
}
@media(max-width:760px){
  .live-state-hero{
    flex-direction:column;
  }
  .live-state-mode{
    min-width:0;
    width:100%;
  }
}


/* VC-4H — Live-state API mapping */
textarea.mono,
input.mono,
.mono{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}
.live-state-mode .small{
  overflow-wrap:anywhere;
}


/* VC-4I — LCM Scanner Discovery Mode */
.scan-value{
  max-width:360px;
  max-height:160px;
  overflow:auto;
  margin:0;
  padding:8px;
  border-radius:10px;
  background:var(--vc-fill-subtle);
  border:1px solid var(--vc-border);
  white-space:pre-wrap;
}
.scan-value-inline{
  display:inline-block;
  max-width:360px;
  overflow-wrap:anywhere;
}
.scan-diff-table td,
.scan-diff-table th{
  vertical-align:top;
}
.scan-diff-table select,
.scan-diff-table input{
  min-width:180px;
  margin-bottom:6px;
}


/* VC-4J — Scanner export and auto-review */
.scan-moment{
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:14px 16px;
  margin:12px 0;
  background:var(--vc-fill-subtle);
}
.scan-moment h3{
  margin:0 0 8px;
}
.scan-moment ul{
  margin-top:8px;
}


/* VC-4K — Clean LCM current-state model */
.lcm-clean-state .live-state-summary-grid .card{
  background:var(--vc-fill-subtle);
}
.lcm-clean-state h3{
  margin-top:22px;
}


/* VC-4L — Browser-local time display */
time.js-local-time{
  white-space:nowrap;
}
time.local-time-ready{
  border-bottom:1px dotted rgba(15,23,42,.25);
  cursor:help;
}


/* VC-4M — Worker & Scanner Status */
.worker-status-note{
  border-left:6px solid var(--vc-accent);
}
.worker-status-note p{
  max-width:1100px;
}


/* VC-4N — Q&A bridge status */
.written-question-item .pill + .pill{
  margin-left:6px;
}


/* VC-4O — Queued written Q&A live gate */
.written-question-item .pill.warn{
  white-space:nowrap;
}


/* VC-4P — Adaptive polling */
.worker-status-note strong{
  color:#0F3E67;
}


/* VC-4P attendee cleanup + presenter mode */
.presenter-mode-choice label{
  display:block;
  padding:12px 14px;
  border:1px solid var(--vc-border);
  border-radius:16px;
  margin:8px 0;
  background:var(--vc-fill-subtle);
}
.presenter-mode-choice input{
  width:auto;
  margin-right:8px;
}
.presenter-mode-choice span{
  display:block;
  margin-left:26px;
  color:var(--vc-muted);
  font-size:.92rem;
}
.control-side-stack .event-status-mini{
  display:none;
}
#presentationStatusMessage:empty{
  display:none;
}


/* VC-4R — Run-of-show automation */
.presenter-mode-choice strong{
  color:#0F172A;
}
.worker-status-note{
  background:linear-gradient(135deg,var(--vc-panel) 0%,var(--vc-fill-subtle) 100%);
}


/* VC-4S — Presentation Day fast-poll tuning */
.worker-status-note strong{
  color:#0F3E67;
}


/* VC-4T — Auto-refresh status surfaces */
.auto-refresh-badge{
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:9999;
  background:rgba(15, 23, 42, .88);
  color:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-size:.78rem;
  font-weight:700;
  box-shadow:0 12px 30px rgba(15,23,42,.18);
  pointer-events:none;
}


/* VC-4V — Attendee-facing wording polish */
.written-question-item .pill.good,
.written-question-item .pill.warn{
  white-space:nowrap;
}


/* VC-4W — Attendee email re-entry foundation */
.attendee-hero-with-actions{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.attendee-logout-form{
  margin:0;
}
.attendee-logout-form button{
  white-space:nowrap;
}
@media (max-width: 760px){
  .attendee-hero-with-actions{
    flex-direction:column;
  }
}


/* VC-4Y — Live update bus foundation */
.live-update-status{
  font-size:.78rem;
  color:var(--vc-muted);
}


/* VC-4Y1 — Redis/Valkey live bus adapter */
.live-update-status.redis-ready{
  color:#0F766E;
}


/* VC-4Z — attendee audio rescue / switching */
.switch-audio-card details{
  border:0;
}
.switch-audio-card summary{
  cursor:pointer;
  font-weight:800;
  color:var(--vc-ink);
  list-style:none;
}
.switch-audio-card summary::-webkit-details-marker{
  display:none;
}
.switch-audio-card summary::after{
  content:'Change';
  float:right;
  font-size:.72rem;
  font-weight:800;
  color:var(--vc-accent);
  background:rgba(255,90,31,.10);
  border:1px solid rgba(255,90,31,.25);
  border-radius:999px;
  padding:4px 8px;
}
.switch-audio-options{
  display:grid;
  gap:8px;
  margin:12px 0;
}
.switch-audio-option{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 11px;
  border:1px solid var(--vc-border);
  border-radius:14px;
  background:var(--vc-panel);
  cursor:pointer;
}
.switch-audio-option.current{
  border-color:rgba(18,63,109,.35);
  background:rgba(18,63,109,.04);
}
.switch-audio-option input{
  width:auto;
  margin-top:3px;
}
.switch-audio-option small{
  display:block;
  margin-top:2px;
  color:var(--vc-muted);
}
.switch-audio-phone{
  margin:10px 0;
}


/* VC-5A — Q&A and Resources operational polish */
.qna-summary-grid{
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
}
.question-quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}
.resource-access-table td,
.written-question-table td{
  vertical-align:top;
}


/* VC-5C — modern setup defaults */
.modern-hero,
.modern-setup-card{
  background:
    radial-gradient(circle at top left, rgba(255,90,31,.10), transparent 38%),
    linear-gradient(135deg, rgba(18,63,109,.07), rgba(255,255,255,.96));
}
.defaults-toggle-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:12px;
  margin:14px 0;
}
.toggle-card{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:13px 14px;
  border:1px solid var(--vc-border);
  border-radius:16px;
  background:var(--vc-panel);
  box-shadow:0 8px 18px rgba(15,23,42,.035);
}
.toggle-card.standalone{
  margin:12px 0;
}
.toggle-card input{
  width:auto;
  margin-top:4px;
}
.toggle-card strong{
  display:block;
  font-size:.95rem;
}
.toggle-card small,
.override-row small{
  display:block;
  color:var(--vc-muted);
  margin-top:3px;
  line-height:1.35;
}
.defaults-summary{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
  margin-top:12px;
}
.defaults-summary.compact{
  grid-template-columns:repeat(auto-fit,minmax(135px,1fr));
}
.default-chip{
  border:1px solid var(--vc-border);
  border-radius:14px;
  padding:10px 12px;
  background:var(--vc-panel);
}
.default-chip strong{
  display:block;
  font-size:.82rem;
  color:var(--vc-muted);
}
.default-chip span{
  display:block;
  margin-top:4px;
  font-weight:800;
}
.default-chip.is-on{
  border-color:rgba(15,118,110,.22);
  background:rgba(15,118,110,.045);
}
.default-chip.is-off{
  border-color:rgba(245,158,11,.25);
  background:rgba(245,158,11,.055);
}
.default-chip.is-neutral{
  border-color:rgba(18,63,109,.20);
  background:rgba(18,63,109,.045);
}
.defaults-override-list{
  display:grid;
  gap:10px;
}
.override-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(180px,240px);
  gap:16px;
  align-items:center;
  padding:12px 14px;
  border:1px solid var(--vc-border);
  border-radius:16px;
  background:var(--vc-panel);
}
.advanced-defaults-box{
  margin-top:16px;
  padding:12px 14px;
  border:1px solid var(--vc-border);
  border-radius:16px;
  background:rgba(18,63,109,.035);
}
.advanced-defaults-box summary{
  cursor:pointer;
  font-weight:800;
}
@media (max-width: 720px){
  .override-row{
    grid-template-columns:1fr;
  }
}


/* VC-5D — Launch Pack contacts and preview */
.launch-contact-table input[type="checkbox"]{
  width:auto;
}
.inline-contact-form{
  margin-top:12px;
}
.launch-preview-card textarea{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  font-size:.85rem;
}
.launch-email-html-preview{
  border:1px solid var(--vc-border);
  border-radius:16px;
  padding:16px;
  background:var(--vc-fill-subtle);
  overflow:auto;
}
.launch-email-html-preview *{
  max-width:100%;
}


/* VC-5E — schedule editor and launch pack date safety */
.schedule-card{
  margin:18px 0;
  padding:16px;
  border:1px solid var(--vc-border);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(18,63,109,.045), rgba(255,90,31,.045));
}
.schedule-card h3{
  margin-top:0;
}
.duration-row{
  display:flex;
  align-items:center;
  gap:8px;
}
.duration-row input{
  flex:1;
}
.duration-row span{
  color:var(--vc-muted);
  font-weight:700;
}
.flash.warn{
  background:var(--vc-fill-warning-bg);
  border-color:var(--vc-warning);
  color:#9a3412;
}
.flash.warn ul{
  margin:.5rem 0 0 1.2rem;
}


/* VC-5F — Launch Pack Microsoft 365 sending */
.launch-send-panel{
  margin-top:16px;
  padding:14px;
  border:1px solid var(--vc-border);
  border-radius:16px;
  background:linear-gradient(135deg, rgba(15,118,110,.055), rgba(18,63,109,.045));
}
.inline-send-form{
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto;
  gap:10px;
  align-items:end;
  margin:10px 0;
}
.inline-send-form label{
  margin:0;
}
.inline-send-form input{
  margin-top:5px;
}
@media (max-width:720px){
  .inline-send-form{
    grid-template-columns:1fr;
  }
}


/* VC-5H — Launch Pack provider diagnostics */
.provider-summary{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin:12px 0;
  padding:12px;
  border:1px solid var(--vc-border);
  border-radius:16px;
  background:var(--vc-panel);
}
.provider-summary div{
  display:grid;
  gap:3px;
}
.provider-summary strong{
  color:var(--vc-muted);
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.provider-summary span{
  font-weight:800;
  overflow-wrap:anywhere;
}
.warn-text{
  color:#9a3412;
  grid-column:1/-1;
}


/* VC-5I — Event report */
.report-metric-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:12px;
  margin:16px 0;
}
.report-metric-card{
  background:var(--vc-panel);
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:16px;
  box-shadow:0 8px 18px rgba(15,23,42,.035);
}
.report-metric-card strong{
  display:block;
  font-size:1.75rem;
  color:var(--vc-accent);
  line-height:1;
}
.report-metric-card span{
  display:block;
  margin-top:7px;
  font-weight:800;
}
.report-metric-card small{
  display:block;
  margin-top:5px;
  color:var(--vc-muted);
}
.report-table td{
  vertical-align:top;
}


/* VC-5J — Report polish */
.report-metric-card strong{
  overflow-wrap:anywhere;
}
.report-table .small{
  max-width:340px;
  display:inline-block;
}


/* VC-5L — Attendee login/session hardening */
.attendee-logout-form button{
  white-space:nowrap;
}
.public-join-hero .pill.warn{
  display:inline-flex;
  margin-top:8px;
}
.table form button.light{
  padding:7px 10px;
  font-size:.82rem;
}


/* VC-5M — Event readiness */
.readiness-hero .readiness-score{
  display:inline-grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:baseline;
  margin:12px 0;
  padding:12px 16px;
  border:1px solid var(--vc-border);
  border-radius:18px;
  background:var(--vc-panel);
}
.readiness-score strong{
  font-size:2.3rem;
  color:var(--vc-accent);
  line-height:1;
}
.readiness-score span{
  font-weight:800;
  color:var(--vc-muted);
}
.readiness-group-heading{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:12px;
}
.readiness-list{
  display:grid;
  gap:10px;
}
.readiness-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  border:1px solid var(--vc-border);
  border-radius:16px;
  padding:12px;
  background:var(--vc-panel);
}
.readiness-item.good{
  border-color:rgba(15,118,110,.22);
  background:rgba(15,118,110,.035);
}
.readiness-item.warn{
  border-color:rgba(245,158,11,.25);
  background:rgba(245,158,11,.045);
}
.readiness-item.danger{
  border-color:rgba(180,35,24,.25);
  background:rgba(180,35,24,.045);
}
.readiness-item.muted{
  background:var(--vc-fill-subtle);
}
.readiness-main{
  display:grid;
  gap:4px;
}
.readiness-main strong{
  font-size:.98rem;
}
.readiness-main small{
  color:var(--vc-muted);
}
.readiness-blockers{
  margin:0;
  padding-left:1.2rem;
}
@media (max-width:720px){
  .readiness-item{
    grid-template-columns:1fr;
  }
}


/* VC-5N — Event Command Centre */
.command-hero .command-metrics{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr));
  gap:10px;
  margin:16px 0;
}
.command-mini-metric{
  border:1px solid var(--vc-border);
  border-radius:16px;
  background:var(--vc-panel);
  padding:12px;
}
.command-mini-metric strong{
  display:block;
  font-size:1.65rem;
  color:var(--vc-accent);
  line-height:1;
}
.command-mini-metric span{
  display:block;
  margin-top:6px;
  font-weight:800;
}
.command-mini-metric small{
  display:block;
  color:var(--vc-muted);
  margin-top:3px;
}
.command-section-heading{
  margin-bottom:14px;
}
.command-action-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:12px;
}
.command-action-card{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:12px;
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:15px;
  background:var(--vc-panel);
}
.command-action-card.good{
  border-color:rgba(15,118,110,.22);
  background:rgba(15,118,110,.035);
}
.command-action-card.warn{
  border-color:rgba(245,158,11,.25);
  background:rgba(245,158,11,.045);
}
.command-action-card.danger{
  border-color:rgba(180,35,24,.25);
  background:rgba(180,35,24,.045);
}
.command-action-card.muted{
  background:var(--vc-fill-subtle);
}
.command-action-card h3{
  margin:8px 0 6px;
}
.command-action-card p{
  margin:0;
  color:var(--vc-muted);
  font-size:.92rem;
}
.command-action-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}


/* VC-5O — Partner / Client branding */
.brand-preview-card{
  display:flex;
  align-items:center;
  gap:18px;
  border:1px solid var(--vc-border);
  border-radius:20px;
  padding:18px;
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--brand-primary) 14%, transparent), transparent 36%),
    #fff;
}
.brand-preview-logo,
.public-brand-logo,
.attendee-brand-logo{
  max-width:180px;
  max-height:70px;
  object-fit:contain;
}
.brand-preview-logo{
  padding:10px;
  border:1px solid var(--vc-border);
  border-radius:14px;
  background:var(--vc-panel);
}
.brand-demo-button,
.branded-public-page button,
.branded-attendee-page button:not(.light){
  background:var(--brand-button);
}
.branded-public-page .public-join-hero,
.branded-attendee-page .attendee-hero{
  border-color:var(--brand-primary);
}
.support-line{
  margin:14px 0 0;
  text-align:center;
}
.support-line a{
  color:var(--brand-primary, var(--vc-accent));
  font-weight:800;
}
.attendee-brand-title{
  display:flex;
  gap:14px;
  align-items:center;
}
.attendee-brand-logo{
  max-width:150px;
  max-height:54px;
}
@media (max-width:720px){
  .brand-preview-card,
  .attendee-brand-title{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* VC-5P — Open API */
.api-token-once{
  border-color:rgba(180,35,24,.25);
  background:rgba(180,35,24,.045);
}
.api-token-once textarea{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.api-code{
  background:#0f172a;
  color:#e5e7eb;
  padding:14px;
  border-radius:14px;
  overflow:auto;
  font-size:.86rem;
  line-height:1.5;
}
.mono{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}


/* VC-5Q — API docs / sandbox */
.api-docs-hero .mono,
.api-sandbox .mono{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.api-sandbox textarea,
.api-response-box{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.api-response-box{
  background:#0f172a;
  color:#e5e7eb;
  padding:14px;
  border-radius:14px;
  min-height:140px;
  overflow:auto;
  white-space:pre-wrap;
}
.api-sandbox input[type=password]{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}


/* VC-5R — API hardening */
.api-log-table td{
  vertical-align:top;
}
.api-log-table .mono{
  font-size:.82rem;
  overflow-wrap:anywhere;
}


/* VC-5S — API domain readiness */
.domain-readiness-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  margin:16px 0;
}
.domain-readiness-card{
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:15px;
  background:var(--vc-panel);
}
.domain-readiness-card.good{
  border-color:rgba(15,118,110,.22);
  background:rgba(15,118,110,.035);
}
.domain-readiness-card.warn{
  border-color:rgba(245,158,11,.25);
  background:rgba(245,158,11,.045);
}
.domain-readiness-card strong{
  display:block;
  margin:8px 0 4px;
}
.domain-readiness-card small{
  display:block;
  color:var(--vc-muted);
  overflow-wrap:anywhere;
}


/* VC-5T — Webhooks */
.webhook-delivery-table td{
  vertical-align:top;
}
.webhook-delivery-table .mono{
  font-size:.82rem;
  overflow-wrap:anywhere;
}


/* VC-5U — Webhook polish */
.webhook-delivery-table form{
  margin:2px 2px 2px 0;
}
.webhook-delivery-table button.light{
  padding:6px 9px;
}


/* VC-5V — API landing polish */
.api-landing-hero .mono{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.api-landing-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}


/* VC-5W — Admin header + attendee viewer fit polish */
body:not(.attendee-page) .topbar{
  padding:6px 18px;
  min-height:34px;
  background:linear-gradient(90deg,var(--vc-primary),#1F6FAF);
}
body:not(.attendee-page) .topbar .wrap{
  max-width:1540px;
  display:flex;
  align-items:center;
  gap:16px;
}
body:not(.attendee-page) .topbar .brand{
  font-size:16px;
  line-height:1;
  white-space:nowrap;
}
body:not(.attendee-page) .topbar .sub{
  display:none;
}
body:not(.attendee-page) .topbar .nav{
  margin-top:0;
  margin-left:auto;
  gap:6px;
}
body:not(.attendee-page) .topbar .nav a,
body:not(.attendee-page) .topbar .nav button{
  padding:5px 9px !important;
  font-size:11.5px;
}
body:not(.attendee-page) main.wrap{
  padding-top:16px;
}

body.attendee-page{
  background:var(--vc-bg);
  overflow-x:hidden;
}
body.attendee-page main.wrap{
  max-width:1500px;
  padding:10px 14px 18px;
}
body.attendee-page .attendee-shell{
  gap:10px;
}
body.attendee-page .attendee-hero{
  padding:10px 14px;
  border-radius:16px;
}
body.attendee-page .attendee-hero h1{
  font-size:clamp(21px,2vw,28px);
  line-height:1.02;
  margin:2px 0;
}
body.attendee-page .event-meta{
  font-size:12px;
  margin:2px 0;
}
body.attendee-page .attendee-brand-title{
  gap:10px;
  align-items:center;
}
body.attendee-page .attendee-brand-logo{
  max-height:42px;
  max-width:120px;
}
body.attendee-page .attendee-stage-grid{
  grid-template-columns:minmax(620px,1fr) minmax(260px,300px);
  gap:10px;
  align-items:start;
}
body.attendee-page .viewer-card,
body.attendee-page .control-card,
body.attendee-page .collapsible-card{
  border-radius:16px;
  padding:10px;
  margin-bottom:8px;
}
body.attendee-page .viewer-heading{
  margin-bottom:6px;
}
body.attendee-page .viewer-heading h2{
  font-size:16px;
  margin-bottom:0;
}
body.attendee-page .control-side-stack,
body.attendee-page .control-card{
  position:static !important;
  top:auto !important;
}
body.attendee-page .control-card h2{
  font-size:17px;
  margin-bottom:6px;
}
body.attendee-page .presentation-stage-wrap{
  position:relative;
  padding-bottom:42px;
}
body.attendee-page .companion-stage{
  min-height:0 !important;
  height:min(calc(100vh - 210px), calc((100vw - 360px) * .52));
  max-height:calc(100vh - 210px);
  aspect-ratio:16/9;
  border-radius:16px;
  font-size:18px;
}
body.attendee-page .presentation-slide-image{
  border-radius:14px;
}
.attendee-slide-controls-modern{
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
}
.attendee-slide-controls-modern .slide-arrow{
  position:absolute;
  top:calc(50% - 21px);
  width:42px;
  height:42px;
  padding:0;
  border-radius:999px;
  font-size:31px;
  line-height:1;
  background:rgba(255,255,255,.88);
  color:var(--brand-primary,var(--vc-primary));
  box-shadow:0 10px 28px rgba(15,23,42,.16);
  pointer-events:auto;
}
.attendee-slide-controls-modern .slide-arrow-left{
  left:10px;
}
.attendee-slide-controls-modern .slide-arrow-right{
  right:10px;
}
.attendee-follow-row{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  display:flex;
  justify-content:center;
  pointer-events:none;
}
.attendee-follow-row button{
  pointer-events:auto;
  padding:8px 13px;
  font-size:12px;
}
body.attendee-page .audio-actions{
  gap:6px;
  margin-top:8px;
}
body.attendee-page .audio-actions button,
body.attendee-page .verbal-qa-actions button{
  padding:8px 10px;
  font-size:12px;
}
body.attendee-page .qa-panel,
body.attendee-page .event-status-mini{
  margin-top:8px;
  padding-top:8px;
}
body.attendee-page textarea{
  min-height:66px;
}
body.attendee-page .support-line{
  margin:6px 0 0;
}
@media(max-width:1100px){
  body.attendee-page .attendee-stage-grid{
    grid-template-columns:1fr;
  }
  body.attendee-page .companion-stage{
    height:auto;
    max-height:none;
    min-height:320px !important;
  }
}
@media(max-height:760px) and (min-width:1101px){
  body.attendee-page .attendee-hero{
    display:none;
  }
  body.attendee-page .companion-stage{
    height:min(calc(100vh - 115px), calc((100vw - 360px) * .52));
    max-height:calc(100vh - 115px);
  }
}

.ops-status-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:12px;
  margin:12px 0;
}
.ops-metric-card{
  margin-bottom:0;
}
.ops-metric-card.good{
  border-color:rgba(15,118,110,.22);
  background:rgba(15,118,110,.035);
}
.ops-metric-card.warn{
  border-color:rgba(245,158,11,.28);
  background:rgba(245,158,11,.045);
}
.ops-metric-card h2{
  margin-bottom:4px;
}


/* VC-5W1 hotfix — restore contained slide stage and align slide arrows */
body.attendee-page .presentation-stage-wrap{
  position:relative;
  width:100%;
  display:block;
  padding-bottom:38px;
}
body.attendee-page .companion-stage{
  position:relative !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:16/9;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  padding:clamp(14px,2.1vw,34px);
  overflow:hidden;
  border-radius:16px;
}
body.attendee-page .presentation-slide-image{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center center;
  border-radius:10px;
}
body.attendee-page .presentation-empty{
  width:100%;
  min-height:260px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
body.attendee-page .attendee-slide-arrow-layer{
  position:absolute;
  inset:0;
  z-index:6;
  pointer-events:none;
}
body.attendee-page .attendee-slide-arrow-layer .slide-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;
  height:44px;
  padding:0;
  border-radius:999px;
  font-size:32px;
  line-height:1;
  background:rgba(255,255,255,.92);
  color:var(--brand-primary,var(--vc-primary));
  box-shadow:0 10px 26px rgba(15,23,42,.18);
  pointer-events:auto;
}
body.attendee-page .attendee-slide-arrow-layer .slide-arrow-left{
  left:10px;
}
body.attendee-page .attendee-slide-arrow-layer .slide-arrow-right{
  right:10px;
}
body.attendee-page .attendee-follow-row{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:34px;
  display:flex;
  justify-content:center;
  align-items:center;
  pointer-events:none;
}
body.attendee-page .attendee-follow-row button{
  pointer-events:auto;
  padding:7px 13px;
  font-size:12px;
  background:var(--vc-panel);
}
@media(min-width:1101px){
  body.attendee-page .viewer-card{
    overflow:hidden;
  }
  body.attendee-page .viewer-card .companion-stage{
    max-height:calc(100vh - 210px) !important;
  }
  body.attendee-page .viewer-card .presentation-slide-image{
    max-height:calc(100vh - 280px);
  }
}
@media(max-height:760px) and (min-width:1101px){
  body.attendee-page .viewer-card .companion-stage{
    max-height:calc(100vh - 120px) !important;
  }
  body.attendee-page .viewer-card .presentation-slide-image{
    max-height:calc(100vh - 190px);
  }
}
@media(max-width:1100px){
  body.attendee-page .companion-stage{
    aspect-ratio:16/9;
    min-height:0 !important;
  }
  body.attendee-page .attendee-slide-arrow-layer .slide-arrow-left{
    left:8px;
  }
  body.attendee-page .attendee-slide-arrow-layer .slide-arrow-right{
    right:8px;
  }
}


/* VC-5W2 hotfix — attendee hero identity cleanup */
body.attendee-page .attendee-hero-with-actions{
  align-items:flex-start;
}
body.attendee-page .attendee-hero-actions{
  min-width:260px;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
  margin-left:auto;
}
body.attendee-page .attendee-identity-right{
  margin:0;
  max-width:420px;
  text-align:right;
  font-size:12px;
  line-height:1.25;
  color:var(--vc-muted);
}
@media(max-width:760px){
  body.attendee-page .attendee-hero-with-actions{
    flex-direction:column;
  }
  body.attendee-page .attendee-hero-actions{
    min-width:0;
    width:100%;
    align-items:flex-start;
    margin-left:0;
  }
  body.attendee-page .attendee-identity-right{
    text-align:left;
  }
}


/* VC-5Y — AWS-aware Ops dashboard */
.ops-debug{
  margin-top:12px;
  border:1px solid var(--vc-border);
  border-radius:14px;
  padding:10px 12px;
  background:var(--vc-panel);
}
.ops-debug summary{
  cursor:pointer;
  font-weight:700;
  color:var(--vc-primary);
}
.ops-checklist{
  list-style:none;
  padding-left:0;
  margin:8px 0 0;
}
.ops-checklist li{
  position:relative;
  padding:9px 10px 9px 34px;
  border:1px solid var(--vc-border);
  border-radius:12px;
  margin-bottom:8px;
  background:var(--vc-panel);
}
.ops-checklist li::before{
  position:absolute;
  left:11px;
  top:9px;
  font-weight:800;
}
.ops-checklist li.done{
  border-color:rgba(15,118,110,.24);
  background:rgba(15,118,110,.045);
}
.ops-checklist li.done::before{
  content:"✓";
  color:#0f766e;
}
.ops-checklist li.todo{
  border-color:rgba(245,158,11,.28);
  background:rgba(245,158,11,.045);
}
.ops-checklist li.todo::before{
  content:"•";
  color:#f59e0b;
}


/* VC-5Z — production cleanup polish */
.ops-status-grid .card h2{
  color:var(--vc-ink);
}
.progress-bar,
.upload-progress,
.hero-accent,
.slide-console-highlight{
  accent-color:var(--vc-accent);
}


/* VC-6B — UI font/grid polish */
.grid.two > *{
  min-width:0;
}


/* VC-6C — Events page cleanup */
.events-intro-card{
  padding-bottom:18px;
}
.event-create-drawer{
  padding:0;
  overflow:hidden;
}
.event-create-drawer[open]{
  padding-bottom:22px;
}
.event-create-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  cursor:pointer;
  padding:22px 24px;
  list-style:none;
}
.event-create-summary::-webkit-details-marker{display:none}
.event-create-summary strong{
  display:block;
  color:var(--vc-ink);
  font-size:20px;
  letter-spacing:-.02em;
}
.event-create-summary small{
  display:block;
  color:var(--vc-muted);
  margin-top:4px;
  font-size:13px;
  font-weight:600;
}
.event-create-panels{
  display:grid;
  gap:16px;
  padding:0 22px;
}
.subcard{
  background:var(--vc-panel);
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:20px;
  box-shadow:0 10px 28px rgba(18,63,109,.06);
}
.table .event-actions-cell{
  min-width:280px;
}
.table .event-actions{
  gap:6px;
  margin-bottom:6px;
}
.table .event-actions .btn,
.table .event-status-controls button,
.event-more-actions summary{
  font-size:12px;
  line-height:1;
  padding:8px 10px;
  border-radius:12px;
  box-shadow:none;
}
.event-actions-primary .btn{
  font-weight:850;
}
.event-more-actions{
  margin:4px 0 6px;
}
.event-more-actions summary{
  display:inline-flex;
  align-items:center;
  background:var(--vc-fill-medium);
  color:var(--vc-primary);
  border:1px solid var(--vc-border);
  font-weight:850;
  cursor:pointer;
}
.event-actions-secondary{
  margin-top:6px;
}
.event-actions-secondary .btn{
  background:var(--vc-fill-medium);
}
.event-status-controls.compact{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  margin-top:8px;
}
.event-status-controls.compact .status-label{
  color:var(--vc-muted);
  font-size:12px;
  font-weight:850;
  margin-right:2px;
}
.event-status-controls.compact button{
  background:var(--vc-fill-warning-bg);
  color:#8A5200;
  border:0;
}
@media(max-width:900px){
  .event-create-summary{
    align-items:flex-start;
    flex-direction:column;
  }
  .table .event-actions-cell{
    min-width:220px;
  }
}


/* VC-6D — Media Suite foundation */
.media-settings-card{
  margin-top:22px;
  padding:20px;
  border:1px solid var(--vc-border);
  border-radius:18px;
  background:var(--vc-fill-subtle);
}
.media-feature-grid .toggle-card.muted{
  opacity:.58;
  background:var(--vc-fill-medium);
}
.media-rule-note{
  margin-top:14px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid var(--vc-border);
  color:var(--vc-muted);
  background:var(--vc-panel);
  font-weight:700;
}
.media-rule-note.active{
  border-color:rgba(245,158,11,.36);
  background:rgba(245,158,11,.07);
  color:#8A5200;
}
.media-command-panel{
  border-top:6px solid var(--vc-accent);
}
.media-command-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
}
.media-mode-badge{
  border-radius:999px;
  background:var(--vc-fill-info);
  color:var(--vc-primary);
  padding:10px 13px;
  font-weight:900;
  white-space:nowrap;
}
@media(max-width:760px){
  .media-command-header{
    flex-direction:column;
  }
  .media-mode-badge{
    white-space:normal;
  }
}


/* VC-6E — Replay MVP */
.replay-shell{
  max-width:1300px;
  margin:0 auto;
  padding:20px;
}
.replay-hero{
  text-align:center;
  padding:28px 18px 16px;
}
.replay-hero h1{
  font-size:clamp(28px,4vw,48px);
  margin:10px 0 6px;
}
.replay-player-card{
  padding:14px;
}
.replay-stage .companion-stage{
  aspect-ratio:16/9;
  min-height:360px;
}
.replay-controls{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(220px,360px);
  gap:16px;
  align-items:center;
  margin-top:14px;
}
.replay-controls audio{
  width:100%;
}
.replay-meta{
  border:1px solid var(--vc-border);
  border-radius:16px;
  padding:12px 14px;
  background:var(--vc-fill-subtle);
}
.replay-meta strong{
  display:block;
  color:var(--vc-ink);
}
.replay-meta span{
  color:var(--vc-muted);
  font-size:13px;
}
.replay-chapter-list{
  display:grid;
  gap:8px;
}
.replay-chapter-list button{
  text-align:left;
  border:1px solid var(--vc-border);
  border-radius:14px;
  padding:11px 12px;
  background:var(--vc-panel);
  cursor:pointer;
}
.replay-chapter-list button strong{
  display:block;
  color:var(--vc-primary);
}
.replay-chapter-list button span{
  color:var(--vc-muted);
  font-size:12px;
}
.replay-transcript{
  max-height:420px;
  overflow:auto;
}
.replay-transcript p{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:10px;
  padding:8px 0;
  border-bottom:1px solid var(--vc-border);
  margin:0;
}
.replay-transcript span{
  color:var(--vc-primary);
  font-weight:900;
}
.replay-admin-upload form{
  border:1px solid var(--vc-border);
  border-radius:18px;
  padding:16px;
  background:var(--vc-fill-subtle);
}
@media(max-width:800px){
  .replay-controls,
  .replay-below-grid{
    grid-template-columns:1fr;
  }
}


/* VC-6F — AI Replay Intelligence */
.replay-ai-summary{
  border:1px solid var(--vc-border);
  border-radius:18px;
  background:var(--vc-fill-subtle);
  padding:16px;
}
.replay-ai-summary h3{
  margin:8px 0;
  color:var(--vc-ink);
}
.replay-ai-summary ul{
  margin:10px 0 0;
  padding-left:20px;
  color:var(--vc-muted);
}
.replay-ai-summary li{
  margin-bottom:6px;
}


/* VC-6G — Presenter WebCall host audio */
.presenter-audio-card{
  border-top:6px solid var(--vc-accent);
}
.presenter-audio-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}
.presenter-audio-header h2{
  margin-top:8px;
}
.webcall-settings-panel{
  margin-top:14px;
  border:1px solid var(--vc-border);
  border-radius:16px;
  background:var(--vc-fill-subtle);
  padding:14px;
}
.presenter-audio-card audio{
  width:100%;
  margin-top:10px;
}
@media(max-width:760px){
  .presenter-audio-header{
    flex-direction:column;
  }
}


/* VC-6H — Attendee audio + Replay AI reliability polish */
.event-actions-primary a[href*="/replay"]{
  background:var(--vc-fill-warm);
  color:var(--vc-button);
}
.media-settings-card form + form{
  margin-top:8px;
}


/* VC-6I — Report recording exports */
.report-export-card{
  border-top:6px solid var(--vc-accent);
}
.report-export-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:12px;
}
.report-export-header h2{
  margin-top:8px;
}
@media(max-width:760px){
  .report-export-header{
    flex-direction:column;
  }
}


/* VC-6J — Replay captions / transcript polish */
.replay-admin-upload form[method="post"]{
  margin-bottom:10px;
}
.event-actions-secondary a[href*="/replay"]{
  display:none;
}


/* VC-6M1 — Presenter WebCall crash fix + PIN prefetch */
.presenter-pin-status{
  margin-top:6px;
  border-radius:12px;
  padding:8px 10px;
  background:var(--vc-fill-subtle);
}
.presenter-pin-status.good{
  background:var(--vc-fill-success-bg);
  color:#067647;
}
.presenter-pin-status.warn{
  background:var(--vc-fill-warning-bg);
  color:#B54708;
}
.presenter-pin-status.danger{
  background:var(--vc-fill-danger-bg);
  color:#B42318;
}


/* VC-6N — Media ingest controls */
.media-ingest-status-card{
  margin-top:16px;
  border:1px solid var(--vc-border);
  background:var(--vc-fill-subtle);
  border-radius:18px;
  padding:16px;
}
.media-ingest-status-card h3{
  margin-top:0;
}
.media-ingest-status-card form{
  display:inline-flex;
  margin:0 6px 6px 0;
}


/* VC-6O — Bridge API PIN cache */
.presenter-pin-status.good::before{
  content:"✓ ";
}


/* VC-6P — Listen-only attendee player */
.listen-only-player-card{
  border-top:6px solid var(--vc-accent);
}
.listen-only-player-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.listen-only-player-head h2{
  margin-top:8px;
}
.listen-only-play-button{
  width:100%;
  margin:14px 0 10px;
  padding:18px 22px;
  border-radius:22px;
  font-size:18px;
  box-shadow:0 18px 40px rgba(255,90,31,.22);
}
.listen-only-player-card audio{
  width:100%;
}
.listen-caption-shell{
  margin-top:12px;
  border:1px solid var(--vc-border);
  border-radius:14px;
  padding:10px 12px;
  background:var(--vc-fill-subtle);
}
@media(max-width:760px){
  .listen-only-player-head{
    flex-direction:column;
  }
}


/* VC-6Q — Embeddable listen-only player */
.embed-player-shell{
  width:100%;
  height:100vh;
  min-height:260px;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  background:#080C13;
  color:#fff;
  overflow:hidden;
}
.embed-stage{
  position:relative;
  min-height:0;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at top right, rgba(255,90,31,.16), transparent 42%), #101828;
}
.embed-empty{
  color:rgba(255,255,255,.72);
  font-weight:800;
}
.embed-slide-image{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.embed-controlbar{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px;
  background:rgba(15,23,42,.96);
  border-top:1px solid rgba(255,255,255,.12);
}
.embed-control-button{
  border:0;
  border-radius:999px;
  padding:9px 13px;
  font-weight:900;
  background:var(--vc-button, #FF5A1F);
  color:#fff;
  cursor:pointer;
  white-space:nowrap;
}
.embed-meta{
  min-width:0;
  flex:1;
  display:grid;
  gap:2px;
}
.embed-meta strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
}
.embed-meta span{
  color:rgba(255,255,255,.66);
  font-size:12px;
}
.embed-captions{
  position:absolute;
  left:16px;
  right:16px;
  bottom:64px;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(15,23,42,.84);
  color:#fff;
  text-align:center;
  font-weight:800;
}
@container (max-width: 520px){
  .embed-controlbar{
    gap:6px;
  }
}
@media(max-width:520px){
  .embed-controlbar{
    padding:8px;
  }
  .embed-control-button{
    padding:8px 10px;
    font-size:12px;
  }
  .embed-meta strong{
    font-size:12px;
  }
}


/* VC-6R — Embed token fallback + launch pack embed link */
.media-ingest-status-card .mono{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}


/* VC-6S — Media ingest WebCall target payload */
.media-webcall-target{
  margin:12px 0;
  display:grid;
  gap:6px;
  border:1px solid var(--vc-border);
  border-radius:14px;
  background:var(--vc-panel);
  padding:12px;
}
.media-webcall-target code{
  display:block;
  white-space:normal;
  word-break:break-all;
  background:var(--vc-fill-subtle);
  border:1px solid var(--vc-border);
  border-radius:10px;
  padding:8px;
  font-size:12px;
}


/* VC-6Z — live sync + caption sanity */
.listen-caption-list{
  display:grid;
  gap:8px;
  max-height:260px;
  overflow:auto;
}
.listen-caption-list p{
  margin:0;
  display:grid;
  grid-template-columns:52px 1fr;
  gap:10px;
  border-bottom:1px solid var(--vc-border);
  padding:7px 0;
}
.listen-caption-list span{
  color:var(--vc-primary);
  font-weight:900;
  font-size:12px;
}


/* VC-7A — Live audio segment fan-out */
.listen-only-player-card[data-live-segments="1"] audio{
  border:1px solid var(--vc-border);
  border-radius:999px;
  background:var(--vc-panel);
}
.listen-only-player-card[data-live-segments="1"] .listen-only-play-button::after{
  content:" live";
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-left:8px;
  opacity:.78;
}


/* VC-7B — listen-only player polish */
.listen-only-audio-box{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.listen-only-audio-toolbar{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.listen-only-play-button.compact{
  width:auto;
  margin:0;
  padding:10px 14px;
  border-radius:999px;
  font-size:14px;
  box-shadow:none;
}
.listen-only-audio-toolbar .small{
  flex:1;
  min-width:220px;
}
.listen-only-player-card audio{
  width:100%;
}


/* VC-7C — Listen-only player sync polish */
.listen-only-play-button.compact{
  width:auto;
  min-width:128px;
  padding:10px 16px;
  font-size:15px;
  border-radius:999px;
  box-shadow:none;
}
.listen-only-audio-toolbar{
  align-items:center;
}
.listen-only-player-card audio{
  margin-top:8px;
}
#listenOnlySegmentPill{
  white-space:nowrap;
}


/* VC-7D — reliable direct segment playback + player override */
.listen-only-player-card[data-live-segments="1"] .listen-only-play-button::after{
  content:none !important;
}
.listen-only-play-button.compact{
  width:auto !important;
  min-width:112px !important;
  max-width:180px !important;
  padding:8px 14px !important;
  margin:0 !important;
  font-size:14px !important;
  line-height:1.2 !important;
  border-radius:999px !important;
  box-shadow:none !important;
}
.listen-only-audio-box{
  display:grid;
  gap:8px;
}
.listen-only-audio-toolbar{
  align-items:center;
}
.listen-only-audio-toolbar .small{
  min-width:0;
}
.listen-only-player-card audio{
  width:100%;
}


/* VC-7F — Live DVR controls */
.listen-only-dvr-button{
  border:1px solid var(--vc-border);
  background:var(--vc-panel);
  color:var(--vc-text);
  border-radius:999px;
  padding:8px 12px;
  font-weight:800;
  cursor:pointer;
}
.listen-only-dvr-button:hover{
  border-color:var(--vc-accent);
}
.listen-only-audio-toolbar{
  gap:8px;
}


/* VC-7H — Media runtime diagnostics */
.media-runtime-panel{
  border-top:6px solid #123F6D;
}
.media-runtime-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}
.media-runtime-session{
  border:1px solid var(--vc-border);
  border-radius:16px;
  padding:12px;
  background:var(--vc-panel);
}
.media-runtime-session-head{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.media-runtime-session-grid{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:6px 10px;
  font-size:13px;
}
.media-runtime-session-grid span{
  color:var(--vc-muted);
}
.media-runtime-session-grid strong{
  min-width:0;
  word-break:break-word;
}

.media-runtime-alert-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:10px;
  margin:12px 0 16px;
}
.media-runtime-alert{
  border:1px solid var(--vc-border);
  border-radius:14px;
  padding:12px;
  background:var(--vc-panel);
}
.media-runtime-alert.warn{border-color:rgba(245,158,11,.42);background:rgba(245,158,11,.08)}
.media-runtime-alert.danger{border-color:rgba(180,35,24,.42);background:rgba(180,35,24,.08)}
.media-runtime-alert.good{border-color:rgba(21,163,106,.34);background:rgba(21,163,106,.07)}
.media-runtime-alert p{margin:.35rem 0 0}


/* ═══════════════════════════════════════════════════════════════════════
   VC-8A — Dark / Light / Accessibility Theme System
   Three modes: light (default), dark, high-contrast.
   Switched via data-theme attribute on <html>. Anti-FOUC script in layout()
   reads localStorage and sets data-theme before CSS paints.
   System preference (prefers-color-scheme) is the default when no stored pref.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Dark palette ──────────────────────────────────────────────────────── */
html[data-theme="dark"] {
  color-scheme: dark;
  --vc-primary: #5BA3D4;
  --vc-secondary: #FF8A5A;
  --vc-button: #FF7040;
  --vc-accent: #FF7040;
  --vc-bg: #0F1623;
  --vc-panel: #1A2233;
  --vc-input: #1E2A3A;
  --vc-text: #E8EDF5;
  --vc-ink: #F0F4FA;
  --vc-muted: #8899B4;
  --vc-border: #2A3548;
  --vc-topbar-end: #1A3A5A;
  --vc-success: #22C97B;
  --vc-warning: #FBBF24;
  --vc-danger: #F87171;
  --vc-fill-subtle: #1E2A3A;
  --vc-fill-medium: #192030;
  --vc-fill-info: #1A2B40;
  --vc-fill-warm: #2A1810;
  --vc-fill-success-bg: #0A2A1A;
  --vc-fill-warning-bg: #281E08;
  --vc-fill-danger-bg: #2A0F0F;
  --vc-shadow-sm: rgba(0,0,0,.24);
  --vc-shadow-md: rgba(0,0,0,.32);
  --vc-shadow-lg: rgba(0,0,0,.40);
}

/* ── System auto-dark (no-JS fallback — JS path always sets data-theme) ── */
@media (prefers-color-scheme: dark) {
  html:not([data-theme]) {
    color-scheme: dark;
    --vc-primary: #5BA3D4;
    --vc-secondary: #FF8A5A;
    --vc-button: #FF7040;
    --vc-accent: #FF7040;
    --vc-bg: #0F1623;
    --vc-panel: #1A2233;
    --vc-input: #1E2A3A;
    --vc-text: #E8EDF5;
    --vc-ink: #F0F4FA;
    --vc-muted: #8899B4;
    --vc-border: #2A3548;
    --vc-topbar-end: #1A3A5A;
    --vc-success: #22C97B;
    --vc-warning: #FBBF24;
    --vc-danger: #F87171;
    --vc-fill-subtle: #1E2A3A;
    --vc-fill-medium: #192030;
    --vc-fill-info: #1A2B40;
    --vc-fill-warm: #2A1810;
    --vc-fill-success-bg: #0A2A1A;
    --vc-fill-warning-bg: #281E08;
    --vc-fill-danger-bg: #2A0F0F;
    --vc-shadow-sm: rgba(0,0,0,.24);
    --vc-shadow-md: rgba(0,0,0,.32);
    --vc-shadow-lg: rgba(0,0,0,.40);
  }
}

/* ── High-contrast accessibility mode ────────────────────────────────── */
html[data-theme="high-contrast"] {
  color-scheme: light;
  --vc-primary: #0050B3;
  --vc-secondary: #D94800;
  --vc-button: #D94800;
  --vc-accent: #D94800;
  --vc-bg: #FFFFFF;
  --vc-panel: #FFFFFF;
  --vc-input: #FFFFFF;
  --vc-text: #000000;
  --vc-ink: #000000;
  --vc-muted: #3D3D3D;
  --vc-border: #000000;
  --vc-topbar-end: #003A80;
  --vc-success: #006B10;
  --vc-warning: #7A4200;
  --vc-danger: #A80000;
  --vc-fill-subtle: #F0F0F0;
  --vc-fill-medium: #E8E8E8;
  --vc-fill-info: #D6E4FF;
  --vc-fill-warm: #FFE4CC;
  --vc-fill-success-bg: #CCFFE0;
  --vc-fill-warning-bg: #FFF0CC;
  --vc-fill-danger-bg: #FFD6D6;
  --vc-shadow-sm: rgba(0,0,0,.08);
  --vc-shadow-md: rgba(0,0,0,.12);
  --vc-shadow-lg: rgba(0,0,0,.16);
}

/* High-contrast: stronger borders and focus rings */
html[data-theme="high-contrast"] .card,
html[data-theme="high-contrast"] .subcard,
html[data-theme="high-contrast"] input,
html[data-theme="high-contrast"] select,
html[data-theme="high-contrast"] textarea {
  border-width: 2px;
}
html[data-theme="high-contrast"] a {
  text-decoration: underline;
}
html[data-theme="high-contrast"] .btn,
html[data-theme="high-contrast"] button {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
html[data-theme="high-contrast"] .btn:focus-visible,
html[data-theme="high-contrast"] button:focus-visible,
html[data-theme="high-contrast"] a:focus-visible {
  outline: 3px solid var(--vc-primary);
  outline-offset: 3px;
}

/* ── Dark mode: component overrides for status/semantic hardcoded colors ─ */
/* Status text colors need to lighten in dark mode for contrast */
html[data-theme="dark"] .flash.error,
html:not([data-theme]) .flash.error { color: #FCA5A5; }
html[data-theme="dark"] .flash.good,
html:not([data-theme]) .flash.good { color: #6EE7B7; }
html[data-theme="dark"] .flash.warn,
html:not([data-theme]) .flash.warn { color: #FCD34D; }
html[data-theme="dark"] .pill.good { background: rgba(22,163,74,.22); color: #BBF7D0; border-color: rgba(134,239,172,.55); }
html[data-theme="dark"] .pill.warn { background: rgba(245,158,11,.24); color: #FEF3C7; border-color: rgba(251,191,36,.65); }
html[data-theme="dark"] .pill.danger { background: rgba(220,38,38,.22); color: #FECACA; border-color: rgba(252,165,165,.58); }

/* Status-state component backgrounds that still use hardcoded colors */
html[data-theme="dark"] .console-live-pill.offline,
html:not([data-theme]) .console-live-pill.offline { background: var(--vc-fill-warning-bg); color: var(--vc-warning); }
html[data-theme="dark"] .console-live-pill.live,
html:not([data-theme]) .console-live-pill.live { background: var(--vc-fill-success-bg); color: var(--vc-success); }

/* Media rule note active state */
html[data-theme="dark"] .media-rule-note.active,
html:not([data-theme]) .media-rule-note.active {
  border-color: rgba(251,191,36,.36);
  background: rgba(251,191,36,.07);
  color: var(--vc-warning);
}

/* Presenter PIN status */
html[data-theme="dark"] .presenter-pin-status.good,
html:not([data-theme]) .presenter-pin-status.good { background: var(--vc-fill-success-bg); color: var(--vc-success); }
html[data-theme="dark"] .presenter-pin-status.warn,
html:not([data-theme]) .presenter-pin-status.warn { background: var(--vc-fill-warning-bg); color: var(--vc-warning); }
html[data-theme="dark"] .presenter-pin-status.danger,
html:not([data-theme]) .presenter-pin-status.danger { background: var(--vc-fill-danger-bg); color: var(--vc-danger); }

/* Table headers (color was hardcoded #475467 — already replaced, but VC-3E lines reintroduce it) */
html[data-theme="dark"] .table th { color: var(--vc-muted); }

/* Event status controls compact button (hardcoded warning colors) */
html[data-theme="dark"] .event-status-controls.compact button,
html:not([data-theme]) .event-status-controls.compact button {
  background: var(--vc-fill-warning-bg);
  color: var(--vc-warning);
}

/* Attendee hero decoration is light-biased — soften in dark */
html[data-theme="dark"] .attendee-hero::after {
  opacity: .5;
}

/* Companion stage radial gradient — lighten overlay in dark mode */
html[data-theme="dark"] .companion-stage,
html:not([data-theme]) .companion-stage {
  background:
    radial-gradient(circle at top left, rgba(91,163,212,.10), transparent 38%),
    linear-gradient(135deg, var(--vc-fill-subtle), var(--vc-fill-info));
}

/* Embed player always stays dark regardless of theme */
.embed-player-shell,
.embed-stage,
.embed-controlbar,
.embed-captions {
  color-scheme: dark;
}
.embed-controlbar,
.embed-captions {
  font-size: 13px;
  line-height: 1.4;
}
.embed-captions {
  max-height: 80px;
  overflow-y: auto;
}
/* Embed page — hide chrome that doesn't belong in an iframe player. Prefer explicit body class; keep :has fallback for older package pages. */
body.embed-page .vc-theme-toggle,
body.embed-page footer,
body:has(.embed-player-shell) .vc-theme-toggle,
body:has(.embed-player-shell) footer { display: none !important; }
body.embed-page main.wrap,
body:has(.embed-player-shell) main.wrap { padding: 0; margin: 0; max-width: none; }
html[data-theme="high-contrast"] .embed-player-shell { background: #080C13; }
html[data-theme="high-contrast"] .embed-stage { background: #101828; }

/* API code blocks always dark */
html[data-theme="high-contrast"] .api-code,
html[data-theme="high-contrast"] .api-response-box {
  background: #0f172a;
  color: #e5e7eb;
}

/* ── Theme toggle widget ──────────────────────────────────────────────── */
.vc-theme-toggle {
  position: fixed;
  bottom: 18px;
  right: 18px;
  z-index: 9000;
  display: flex;
  gap: 2px;
  background: var(--vc-panel);
  border: 1px solid var(--vc-border);
  border-radius: 999px;
  padding: 4px;
  box-shadow: 0 4px 20px var(--vc-shadow-md);
  opacity: .72;
  transition: opacity .2s;
}
.vc-theme-toggle:hover,
.vc-theme-toggle:focus-within {
  opacity: 1;
}
.vc-theme-btn {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  padding: 0;
  background: transparent;
  color: var(--vc-muted);
  font-size: 15px;
  line-height: 1;
  border: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .15s, color .15s;
  font-family: inherit;
}
.vc-theme-btn:hover {
  background: var(--vc-fill-info);
  color: var(--vc-primary);
}
.vc-theme-btn.active {
  background: var(--vc-fill-info);
  color: var(--vc-primary);
  font-weight: 900;
}
.vc-theme-btn:focus-visible {
  outline: 2px solid var(--vc-primary);
  outline-offset: 1px;
}

/* Attendee / branded pages: toggle sits above partner join shell */
body.attendee-page .vc-theme-toggle {
  bottom: 14px;
  right: 14px;
}

/* ================================================================
   VC-8B PAGE REDESIGN — Admin Shell, Attendee v2, Embed v4, Presenter
   ================================================================ */

/* ---------- INTER FONT (for admin / presenter shells) ---------- */
.adm,.vc-watch-page,.presenter-shell,.client-shell,.ep4-player{font-family:'Inter',sans-serif}

/* ================================================================
   ADMIN SHELL  (.adm-*)
   ================================================================ */
.adm{background:#F0F2F5;height:100vh;min-height:100vh;display:flex;border-radius:0;overflow:hidden;font-size:13px;color:#0F172A}
body.attendee-page .adm{min-height:100vh}

/* Sidebar */
.adm-sidebar{width:204px;background:#0D1E35;display:flex;flex-direction:column;flex-shrink:0;min-height:100vh;height:100vh;max-height:100vh;position:sticky;top:0}
.adm-sidebar-logo{padding:16px 16px 12px;display:flex;align-items:center;gap:9px;border-bottom:1px solid rgba(255,255,255,.07)}
.adm-logo-mark{width:28px;height:28px;background:linear-gradient(135deg,#1F6FAF,#123F6D);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.adm-logo-mark svg{width:14px;height:14px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round}
.adm-logo-text{font-size:13px;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.1}
.adm-logo-text small{display:block;font-size:9px;font-weight:500;color:rgba(255,255,255,.3);letter-spacing:.04em;text-transform:uppercase}
.adm-nav{flex:1;min-height:0;padding:8px 8px 0;display:flex;flex-direction:column;gap:1px;overflow:auto}
.adm-nav-section{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.2);padding:12px 8px 4px}
.adm-nav-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .12s;color:rgba(255,255,255,.45);font-size:12.5px;font-weight:500;text-decoration:none}
.adm-nav-item:hover{background:rgba(255,255,255,.06);color:rgba(255,255,255,.7)}
.adm-nav-item.active{background:rgba(255,255,255,.1);color:#fff}
.adm-nav-item svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.adm-nav-badge{margin-left:auto;background:rgba(255,90,31,.25);border-radius:999px;padding:1px 6px;font-size:9px;font-weight:700;color:#FF8C5A}
.adm-nav-live{margin-left:auto;width:7px;height:7px;border-radius:50%;background:#15A36A;animation:adm-pulse 1.5s ease-in-out infinite}
@keyframes adm-pulse{0%,100%{opacity:1}50%{opacity:.3}}
.adm-sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.07)}
.adm-user{display:flex;align-items:center;gap:8px}
.adm-user-av{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#FF5A1F,#FF8C5A);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:#fff;flex-shrink:0}
.adm-user-info p{font-size:11.5px;font-weight:600;color:rgba(255,255,255,.8)}
.adm-user-info small{font-size:10px;color:rgba(255,255,255,.3)}
.adm-user-logout{margin-left:auto;background:none;border:none;cursor:pointer;color:rgba(255,255,255,.3);font-size:14px;padding:4px;line-height:1;transition:color .15s}
.adm-user-logout:hover{color:rgba(255,255,255,.6)}

/* Main content */
.adm-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;height:100vh}
.adm-topbar{background:#fff;border-bottom:1px solid #E8ECF2;padding:0 20px;height:46px;display:flex;align-items:center;gap:12px;flex-shrink:0}
.adm-breadcrumb{font-size:12px;color:#94A3B8;display:flex;align-items:center;gap:6px}
.adm-breadcrumb strong{color:#0F172A;font-weight:600}
.adm-topbar-actions{margin-left:auto;display:flex;align-items:center;gap:8px}
.adm-btn{display:inline-flex;align-items:center;gap:5px;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .12s;border:none;text-decoration:none}
.adm-btn-primary{background:#FF5A1F;color:#fff}
.adm-btn-primary:hover{background:#E04D18;color:#fff}
.adm-btn-ghost{background:transparent;border:1px solid #DDE3ED;color:#475569}
.adm-btn-ghost:hover{background:#F8FAFC;color:#475569}
.adm-live-pill{display:flex;align-items:center;gap:5px;background:#ECFDF5;border:1px solid #A7F3D0;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;color:#059669}
.adm-live-pill-dot{width:6px;height:6px;border-radius:50%;background:#059669;animation:adm-pulse 1.5s ease-in-out infinite}
.adm-content{flex:1;overflow-y:auto;padding:20px}

/* Stats cards */
.adm-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.adm-stat-card{background:#fff;border:1px solid #E8ECF2;border-radius:12px;padding:14px 16px;text-decoration:none;color:inherit;display:block;transition:border-color .12s,box-shadow .12s}
.adm-stat-card:hover{border-color:#C7D2E0;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.adm-stat-label{font-size:11px;font-weight:600;color:#94A3B8;letter-spacing:.03em;text-transform:uppercase;margin-bottom:6px}
.adm-stat-value{font-size:24px;font-weight:800;color:#0F172A;letter-spacing:-.02em;line-height:1}
.adm-stat-sub{font-size:11px;color:#94A3B8;margin-top:4px;display:flex;align-items:center;gap:4px}
.adm-stat-up{color:#059669}

/* Section headers */
.adm-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.adm-section-title{font-size:14px;font-weight:700;color:#0F172A}

/* Event rows */
.adm-events{display:flex;flex-direction:column;gap:8px}
.adm-event-row{background:#fff;border:1px solid #E8ECF2;border-radius:12px;padding:14px 16px;display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:14px;cursor:pointer;transition:border-color .12s,box-shadow .12s;text-decoration:none;color:inherit}
.adm-event-row:hover{border-color:#C7D2E0;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.adm-event-row.live-row{border-color:#A7F3D0;background:#F0FDF8}
.adm-event-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.adm-event-info h3{font-size:13px;font-weight:700;color:#0F172A}
.adm-event-info p{font-size:11.5px;color:#94A3B8;margin-top:2px}
.adm-event-meta{font-size:11.5px;color:#64748B;text-align:right;white-space:nowrap}
.adm-event-meta small{display:block;font-size:10.5px;color:#94A3B8;margin-top:2px}
.adm-tag{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 8px;font-size:10.5px;font-weight:700;letter-spacing:.03em}
.adm-tag-live{background:#ECFDF5;color:#059669;border:1px solid #A7F3D0}
.adm-tag-upcoming{background:#EFF6FF;color:#2563EB;border:1px solid #BFDBFE}
.adm-tag-setup{background:#FFF7ED;color:#C2410C;border:1px solid #FED7AA}
.adm-tag-ended{background:#F8FAFC;color:#64748B;border:1px solid #E2E8F0}
.adm-tag-rehearsal{background:#F5F3FF;color:#7C3AED;border:1px solid #DDD6FE}
.adm-event-arrow{color:#CBD5E1;font-size:16px}

/* Tables in admin */
.adm-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;border:1px solid #E8ECF2}
.adm-table th{font-size:11px;font-weight:600;color:#94A3B8;text-transform:uppercase;letter-spacing:.04em;padding:10px 14px;background:#F8FAFC;border-bottom:1px solid #E8ECF2;text-align:left}
.adm-table td{font-size:12.5px;color:#0F172A;padding:12px 14px;border-bottom:1px solid #F1F5F9}
.adm-table tr:last-child td{border-bottom:none}
.adm-table tr:hover td{background:#F8FAFC}

/* View tabs */
.adm-view-tabs{display:flex;gap:4px;margin-bottom:20px;background:#fff;border:1px solid #E8ECF2;border-radius:10px;padding:4px;width:fit-content}
.adm-view-tab{padding:6px 14px;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;color:#64748B;transition:all .12s;white-space:nowrap;border:none;background:transparent;font-family:inherit;text-decoration:none;display:inline-block}
.adm-view-tab:hover{background:#F1F5F9;color:#0F172A}
.adm-view-tab.active{background:#0D1E35;color:#fff}

/* Dark mode: admin sidebar always stays dark */
html[data-theme="dark"] .adm-sidebar,
html[data-theme="high-contrast"] .adm-sidebar{background:#0D1E35}
html[data-theme="dark"] .adm-main{background:#0F1623}
html[data-theme="dark"] .adm-topbar{background:#1A2233;border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .adm-stat-card,
html[data-theme="dark"] .adm-event-row,
html[data-theme="dark"] .adm-table{background:#1A2233;border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .adm-stat-label,
html[data-theme="dark"] .adm-event-info p,
html[data-theme="dark"] .adm-breadcrumb{color:rgba(255,255,255,.4)}
html[data-theme="dark"] .adm-stat-value,
html[data-theme="dark"] .adm-event-info h3,
html[data-theme="dark"] .adm-section-title,
html[data-theme="dark"] .adm-breadcrumb strong{color:#fff}
html[data-theme="dark"] .adm-content{background:#0F1623}

/* ================================================================
   ATTENDEE WATCH PAGE v2  (.vc-watch-page)
   ================================================================ */
.vc-watch-page{background:#0F1623;color:#fff;display:flex;flex-direction:column;height:100vh;overflow:hidden;font-size:13px}

/* Watch topbar */
.vc-watch-top{display:flex;align-items:center;gap:12px;padding:0 20px;height:44px;background:rgba(10,15,26,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}
.vc-watch-logo{height:30px;min-width:26px;max-width:130px;background:linear-gradient(135deg,#123F6D,#1F6FAF);border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}
.vc-watch-logo img{height:22px;width:auto;max-width:118px;object-fit:contain;display:block;padding:0 5px}
.vc-watch-logo-mark{font-size:13px;font-weight:800;color:#fff;line-height:1;padding:0 8px}
.vc-watch-logo svg{width:14px;height:14px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round}
.vc-watch-brand{font-size:13px;font-weight:700;color:rgba(255,255,255,.9);letter-spacing:-.01em}
.vc-watch-sep{width:1px;height:16px;background:rgba(255,255,255,.12);margin:0 4px;flex-shrink:0}
.vc-watch-event-name{font-size:12px;color:rgba(255,255,255,.45);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}
.vc-watch-top-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}
.vc-watch-status-badge{display:flex;align-items:center;gap:5px;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;letter-spacing:.04em}
.vc-watch-status-badge.live{background:rgba(21,163,106,.15);border:1px solid rgba(21,163,106,.3);color:#15A36A}
.vc-watch-status-badge.waiting{background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.3);color:#F59E0B}
.vc-watch-status-badge.ended{background:rgba(102,112,133,.12);border:1px solid rgba(102,112,133,.25);color:#667085}
.vc-watch-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.vc-watch-status-badge.live .vc-watch-status-dot{animation:adm-pulse 1.5s ease-in-out infinite}
.vc-watch-user-pill{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:4px 10px 4px 6px;font-size:11px;color:rgba(255,255,255,.6)}
.vc-watch-avatar{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#FF5A1F,#FF8C5A);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;color:#fff;flex-shrink:0}

/* Watch hero */
.vc-watch-hero{padding:12px 20px 10px;border-bottom:1px solid rgba(255,255,255,.05);flex-shrink:0}
.vc-watch-hero h1{font-size:17px;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.2;margin-bottom:3px}
.vc-watch-hero-meta{font-size:11.5px;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:10px}

/* Watch grid */
.vc-watch-grid{display:grid;grid-template-columns:1fr 288px;gap:12px;padding:12px 16px 16px;flex:1;overflow:hidden}

/* Stage */
.vc-watch-stage-wrap{display:flex;flex-direction:column;gap:10px;overflow:hidden}
.vc-watch-stage{background:#070C17;border-radius:14px;border:1px solid rgba(255,255,255,.07);position:relative;overflow:hidden;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}
.vc-watch-stage .presentation-stage-wrap{width:100%;height:100%;margin:0}
.vc-watch-stage .viewer-stage.companion-stage{width:100%;height:100%;border:none;border-radius:0;margin:0;background:transparent}
.vc-watch-stage .presentation-empty{color:rgba(255,255,255,.25);font-size:13px}
.vc-watch-stage .presentation-slide-image{width:100%;height:100%;object-fit:contain}
.vc-watch-stage .slide-arrow{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:18px}
.vc-watch-stage .slide-arrow:hover{background:rgba(255,255,255,.2)}
.vc-watch-stage .attendee-follow-row{position:absolute;bottom:10px;right:10px}
.vc-watch-stage .attendee-follow-row button{background:rgba(255,90,31,.15);border:1px solid rgba(255,90,31,.3);color:#FF8C5A;font-size:10.5px;padding:4px 10px;border-radius:999px}

/* Presentation status header */
.vc-watch-stage-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.vc-watch-stage-header h2{font-size:13px;font-weight:600;color:rgba(255,255,255,.6);margin:0}
.vc-watch-stage-header .pill{font-size:10px}

/* Sidebar */
.vc-watch-sidebar{display:flex;flex-direction:column;gap:10px;overflow-y:auto;min-height:0}

/* Sidebar cards */
.vc-watch-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:14px;overflow:hidden}
.vc-watch-card-head{padding:12px 14px 10px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.05)}
.vc-watch-card-title{font-size:11px;font-weight:700;color:rgba(255,255,255,.55);letter-spacing:.06em;text-transform:uppercase}
.vc-watch-card-body{padding:12px 14px}

/* Override existing card styles inside sidebar */
.vc-watch-card .card{background:transparent;border:none;border-radius:0;padding:0;box-shadow:none}
.vc-watch-card .card h2{font-size:11px;font-weight:700;color:rgba(255,255,255,.55);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}
.vc-watch-card .written-qa-card,.vc-watch-card .resources-card,.vc-watch-card .control-card{background:transparent;border:none;padding:0}
.vc-watch-card .collapsible-card-header{padding:0;border:none}
.vc-watch-card .collapsible-card-header h2{margin:0}
.vc-watch-card textarea,.vc-watch-card input[type="text"]{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:9px;color:#fff;font-size:11.5px;padding:8px 10px;width:100%}
.vc-watch-card textarea::placeholder{color:rgba(255,255,255,.25)}
.vc-watch-card textarea:focus{border-color:rgba(255,90,31,.4);outline:none}
.vc-watch-card .btn,.vc-watch-card button.light{background:rgba(255,90,31,.2);border:1px solid rgba(255,90,31,.3);color:#FF8C5A;font-size:11px;padding:6px 12px;border-radius:8px;cursor:pointer}
.vc-watch-card .btn:hover,.vc-watch-card button.light:hover{background:rgba(255,90,31,.3)}
.vc-watch-card .pill{background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);border:none;font-size:10px;padding:2px 8px;border-radius:999px}
.vc-watch-card .pill.good{background:rgba(21,163,106,.2);color:#15A36A}
.vc-watch-card .small{font-size:11px;color:rgba(255,255,255,.4)}
.vc-watch-card .resource-link{color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);border-radius:8px;padding:7px 10px;display:block;text-decoration:none;font-size:11.5px;margin-bottom:4px;transition:background .15s}
.vc-watch-card .resource-link:hover{background:rgba(255,255,255,.08);color:#fff}
.vc-watch-card .written-question-item{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:8px;padding:8px 10px;margin-bottom:5px;font-size:11.5px;color:rgba(255,255,255,.7)}
.vc-watch-card .written-question-status{font-size:10px;color:rgba(255,255,255,.3);margin-top:4px}

/* Bottom status bar */
.vc-watch-statusbar{padding:6px 16px;background:rgba(0,0,0,.2);border-top:1px solid rgba(255,255,255,.05);display:flex;align-items:center;gap:14px;flex-shrink:0}
.vc-watch-statusbar-item{display:flex;align-items:center;gap:5px;font-size:11px;color:rgba(255,255,255,.3)}

/* ── Simplified audio player (.lo-*) ── */
.listen-only-player-card.card{background:transparent;border:none;padding:0;box-shadow:none}
.lo-status-row{margin-bottom:10px}
.lo-play-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.lo-play-btn{display:inline-flex;align-items:center;gap:8px;background:var(--brand-button,#FF5A1F);color:#fff;border:none;border-radius:999px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s}
.lo-play-btn:hover{opacity:.85}
.lo-dvr-btn{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.6);border-radius:999px;padding:7px 12px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}
.lo-dvr-btn:hover{background:rgba(255,255,255,.12);color:#fff}
.lo-msg{font-size:11px;color:rgba(255,255,255,.4);display:block;line-height:1.4;margin-bottom:0}
.lo-captions{margin-top:12px;border-top:1px solid rgba(255,255,255,.06);padding-top:10px}
.lo-captions summary{font-size:11px;font-weight:600;color:rgba(255,255,255,.4);cursor:pointer;list-style:none;padding:2px 0}
.lo-captions summary::-webkit-details-marker{display:none}
.lo-captions[open] summary{color:rgba(255,255,255,.6);margin-bottom:8px}
.lo-caption-list{max-height:120px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}
.lo-caption-list p{font-size:11px;color:rgba(255,255,255,.35);margin:0}

/* ================================================================
   EMBED PLAYER v4  (.ep4-*)
   ================================================================ */
.ep4-scene{background:#111;padding:0}
body.attendee-page .ep4-player,.embed-player-shell .ep4-player{display:flex;flex-direction:column}
.ep4-player{width:100%;background:#08090f;position:relative;overflow:hidden;font-family:'Inter',sans-serif}
.ep4-player-inner{width:100%;aspect-ratio:16/9;position:relative;cursor:pointer;user-select:none}
.ep4-player-inner:hover .ep4-ctrl-wrap{opacity:1;transform:translateY(0)}
.ep4-player-inner:hover .ep4-ctrl-gradient{opacity:1}
.ep4-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.ep4-slide-box{width:82%;max-width:600px;text-align:center}
.ep4-slide-eyebrow{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,90,31,.7);margin-bottom:10px}
.ep4-slide-title{font-size:clamp(15px,3vw,26px);font-weight:800;color:#fff;line-height:1.15;letter-spacing:-.02em;margin-bottom:8px}
.ep4-slide-body{font-size:clamp(9px,1.3vw,12px);color:rgba(255,255,255,.3);line-height:1.6}
.ep4-slide-img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}
.ep4-ctrl-gradient{position:absolute;bottom:0;left:0;right:0;height:90px;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.5) 60%,transparent 100%);opacity:0;transition:opacity .25s;pointer-events:none}
.ep4-top-right{position:absolute;top:12px;right:12px;z-index:8}
.ep4-live-badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 11px;font-size:10.5px;font-weight:700;letter-spacing:.05em}
.ep4-badge-live{background:rgba(239,68,68,.18);border:1px solid rgba(239,68,68,.35);color:#FCA5A5}
.ep4-badge-idle{background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.6)}
.ep4-bdot{width:6px;height:6px;border-radius:50%;background:#ef4444}
@keyframes ep4-blink{0%,100%{opacity:1}50%{opacity:.2}}
.ep4-badge-live .ep4-bdot{animation:ep4-blink 1.2s ease-in-out infinite}
.ep4-muted-tap{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:10px;z-index:9}
.ep4-unmute-btn{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:10px 20px;font-size:13px;font-weight:700;color:#fff;cursor:pointer;transition:background .15s;font-family:inherit}
.ep4-unmute-btn:hover{background:rgba(255,90,31,.3);border-color:rgba(255,90,31,.4)}
.ep4-unmute-btn svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}
.ep4-unmute-sub{font-size:10px;color:rgba(255,255,255,.35);font-weight:500}
.ep4-big-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(0,0,0,.5);backdrop-filter:blur(3px);z-index:9}
.ep4-big-play-btn{width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s;border:none}
.ep4-big-play-btn:hover{transform:scale(1.08)}
.ep4-big-play-btn svg{width:20px;height:20px;fill:#08090f;margin-left:3px}
.ep4-big-play h3{font-size:14px;font-weight:700;color:#fff}
.ep4-big-play p{font-size:10.5px;color:rgba(255,255,255,.45)}
.ep4-ctrl-wrap{position:absolute;bottom:0;left:0;right:0;padding:0 12px 10px;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s;z-index:10}
.ep4-scrubber-row{padding:0 0 8px;position:relative;cursor:pointer}
.ep4-scrubber-track{height:3px;background:rgba(255,255,255,.18);border-radius:3px;position:relative;transition:height .15s}
.ep4-scrubber-row:hover .ep4-scrubber-track{height:5px}
.ep4-scrubber-played{position:absolute;top:0;left:0;height:100%;background:#FF5A1F;border-radius:3px}
.ep4-scrubber-thumb{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;background:#fff;transform:translate(-50%,-50%) scale(0);transition:transform .15s;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.ep4-scrubber-row:hover .ep4-scrubber-thumb{transform:translate(-50%,-50%) scale(1)}
.ep4-scrubber-times{display:flex;justify-content:space-between;margin-top:2px}
.ep4-scrubber-times span{font-size:9.5px;color:rgba(255,255,255,.35);font-weight:500}
.ep4-btns-row{display:flex;align-items:center;gap:6px}
.ep4-cbtn{width:30px;height:30px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .12s;flex-shrink:0;padding:0;font-family:inherit}
.ep4-cbtn:hover{background:rgba(255,255,255,.1)}
.ep4-cbtn svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ep4-cc-btn{width:30px;height:20px;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.25);border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;color:rgba(255,255,255,.6);font-family:inherit;letter-spacing:.04em;transition:all .15s;flex-shrink:0}
.ep4-cc-btn:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.4)}
.ep4-cc-btn.on{background:#fff;border-color:#fff;color:#08090f}
.ep4-time-display{font-size:11px;font-weight:600;color:rgba(255,255,255,.7);white-space:nowrap;padding:0 4px;font-variant-numeric:tabular-nums}
.ep4-spacer{flex:1}
.ep4-vol-group{display:flex;align-items:center;gap:5px}
.ep4-vol-track{width:56px;height:3px;background:rgba(255,255,255,.18);border-radius:3px;cursor:pointer;position:relative}
.ep4-vol-fill{height:100%;border-radius:3px;background:#fff;width:75%}
.ep4-go-live-btn{display:flex;align-items:center;gap:5px;background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.35);border-radius:999px;padding:4px 11px;font-size:10.5px;font-weight:700;color:#FCA5A5;cursor:pointer;transition:all .15s;white-space:nowrap;font-family:inherit}
.ep4-go-live-btn:hover{background:rgba(239,68,68,.35)}

/* Existing embed shell overrides — keep embed always dark */
.embed-player-shell.ep4-player{background:#08090f}
/* Full-page embed: strip the 16/9 aspect-ratio and fill the shell height */
.embed-player-shell .ep4-player-inner{display:flex;flex-direction:column;aspect-ratio:unset !important;height:100%;min-height:0}
.embed-player-shell .ep4-stage{position:absolute;inset:0}
/* Slide fills the stage in full-page embed */
.embed-player-shell .ep4-slide-box{width:100%;max-width:none;height:100%;display:flex;align-items:center;justify-content:center}
.embed-player-shell .ep4-slide-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
/* Status badge hidden by default — JS shows it only when streaming */
.embed-player-shell .ep4-top-right{display:none}

/* ================================================================
   CLIENT PORTAL  (.cp-*)
   ================================================================ */
.cp-shell{display:flex;min-height:100vh;font-family:'Inter',sans-serif;font-size:13px}
.cp-sidebar{width:200px;background:#1C2B3A;display:flex;flex-direction:column;flex-shrink:0}
.cp-sidebar-logo{padding:14px 14px 12px;display:flex;align-items:center;gap:9px;border-bottom:1px solid rgba(255,255,255,.07)}
.cp-sidebar-mark{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;color:#fff;flex-shrink:0}
.cp-sidebar-text p{font-size:12.5px;font-weight:700;color:#fff;letter-spacing:-.01em}
.cp-sidebar-text small{font-size:9px;color:rgba(255,255,255,.3);font-weight:500;text-transform:uppercase;letter-spacing:.05em}
.cp-nav{flex:1;padding:8px 8px 0;display:flex;flex-direction:column;gap:1px}
.cp-nav-section{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.2);padding:10px 8px 4px}
.cp-nav-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:8px;cursor:pointer;color:rgba(255,255,255,.45);font-size:12px;font-weight:500;transition:all .12s;text-decoration:none}
.cp-nav-item:hover{background:rgba(255,255,255,.06);color:rgba(255,255,255,.7)}
.cp-nav-item.active{background:rgba(255,255,255,.1);color:#fff}
.cp-nav-item svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.cp-nav-badge{margin-left:auto;background:rgba(255,255,255,.1);border-radius:999px;padding:1px 6px;font-size:9px;font-weight:700;color:rgba(255,255,255,.5)}
.cp-sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.07)}
.cp-sidebar-user{display:flex;align-items:center;gap:8px}
.cp-sidebar-av{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:900;color:#fff;flex-shrink:0;background:#7C3AED}
.cp-main{flex:1;display:flex;flex-direction:column;overflow:hidden}
.cp-topbar{background:#fff;border-bottom:1px solid #E8ECF2;padding:0 18px;height:44px;display:flex;align-items:center;gap:10px;flex-shrink:0}
.cp-content{flex:1;overflow-y:auto;padding:18px}

/* ================================================================
   PRESENTER CONSOLE  (.pres-*)
   ================================================================ */
.pres-shell{display:flex;flex:1;background:#080E1A;overflow:hidden;font-family:'Inter',sans-serif}
.pres-thumbs-panel{width:160px;background:#0D1520;border-right:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}
.pres-thumbs-header{padding:12px 12px 8px;border-bottom:1px solid rgba(255,255,255,.07)}
.pres-thumbs-header p{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.3)}
.pres-thumbs-list{flex:1;overflow-y:auto;padding:8px}
.pres-thumb{border-radius:8px;overflow:hidden;margin-bottom:6px;cursor:pointer;border:2px solid transparent;transition:border-color .12s;position:relative}
.pres-thumb.current{border-color:#FF5A1F}
.pres-thumb-img{width:100%;aspect-ratio:16/9;background:#1a2540;display:flex;align-items:center;justify-content:center}
.pres-thumb-num{font-size:9px;font-weight:700;color:rgba(255,255,255,.4)}
.pres-thumb.current .pres-thumb-num{color:rgba(255,90,31,.8)}
.pres-thumb-label{padding:3px 5px;font-size:8.5px;color:rgba(255,255,255,.35);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pres-thumb.current .pres-thumb-label{color:rgba(255,90,31,.7)}
.pres-main-area{flex:1;display:flex;flex-direction:column;overflow:hidden}
.pres-topbar{display:flex;align-items:center;gap:10px;padding:0 16px;height:44px;border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0;background:#080E1A}
.pres-event-name{font-size:12px;font-weight:600;color:rgba(255,255,255,.7)}
.pres-topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}
.pres-end-btn{background:rgba(220,38,38,.15);color:#FCA5A5;border:1px solid rgba(220,38,38,.25);border-radius:8px;padding:6px 12px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit}
.pres-timer{font-size:13px;font-weight:700;color:rgba(255,255,255,.5);font-variant-numeric:tabular-nums;letter-spacing:.05em}
.pres-att-count{font-size:11px;color:rgba(255,255,255,.35);display:flex;align-items:center;gap:4px}
.pres-att-dot{width:6px;height:6px;border-radius:50%;background:#059669}
.pres-stage-area{flex:1;display:grid;grid-template-columns:1fr 240px;overflow:hidden}
.pres-slide-wrap{display:flex;flex-direction:column;padding:14px;gap:10px;overflow:hidden;background:#080E1A}
.pres-stage{flex:1;background:#070C17;border-radius:12px;border:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.pres-stage .viewer-stage.companion-stage{width:100%;height:100%;border:none;border-radius:0;margin:0;background:transparent}
.pres-stage .presentation-slide-image{width:100%;height:100%;object-fit:contain}
.pres-stage .presentation-empty{color:rgba(255,255,255,.2);font-size:13px}
.pres-nav{display:flex;align-items:center;gap:8px;justify-content:center;flex-shrink:0}
.pres-nav-prev{background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);border:none;border-radius:8px;padding:8px 16px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:5px;transition:background .12s}
.pres-nav-prev:hover{background:rgba(255,255,255,.14)}
.pres-nav-next{background:#FF5A1F;color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:5px;transition:background .12s}
.pres-nav-next:hover{background:#E04D18}
.pres-nav-counter{font-size:11px;color:rgba(255,255,255,.3);padding:0 6px}
.pres-sidebar{background:#0D1520;border-left:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;overflow:hidden}
.pres-qa-header{padding:12px 14px 8px;border-bottom:1px solid rgba(255,255,255,.07);display:flex;align-items:center;gap:6px}
.pres-qa-header-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.3)}
.pres-qa-list{flex:1;overflow-y:auto;padding:8px 12px;display:flex;flex-direction:column;gap:6px}
.pres-qa-item{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:8px;padding:9px 10px}
.pres-qa-item p{font-size:11px;color:rgba(255,255,255,.75);line-height:1.4;margin-bottom:7px}
.pres-qa-actions{display:flex;gap:5px}
.pres-qa-btn{border-radius:6px;padding:3px 8px;font-size:10px;font-weight:600;cursor:pointer;border:none;font-family:inherit}
.pres-qa-btn-ans{background:rgba(21,163,106,.15);color:#6EE7B7;border:1px solid rgba(21,163,106,.2)}
.pres-qa-btn-skip{background:rgba(255,255,255,.05);color:rgba(255,255,255,.4);border:1px solid rgba(255,255,255,.08)}
.pres-notes{padding:10px 12px;border-top:1px solid rgba(255,255,255,.07);flex-shrink:0}
.pres-notes small{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.25);display:block;margin-bottom:5px}
.pres-notes p{font-size:10.5px;color:rgba(255,255,255,.45);line-height:1.5}

/* Override console-thumbs for new pres design */
body.attendee-page .pres-thumbs-panel .console-thumb-list{padding:8px}
body.attendee-page .pres-thumbs-panel .slide-tile{border-radius:8px;margin-bottom:6px;border:2px solid transparent}
body.attendee-page .pres-thumbs-panel .slide-tile.active-slide{border-color:#FF5A1F}

/* Dark mode for vc-watch-card buttons */
.vc-watch-card .collapse-toggle{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.5);font-size:10px}

/* Responsive: stack on narrow viewports */
@media(max-width:768px){
  .vc-watch-grid{grid-template-columns:1fr}
  .adm{flex-direction:column}
  .adm-sidebar{width:100%;min-height:auto;height:auto;max-height:none;position:static;flex-direction:row;overflow-x:auto}
  .adm-nav{flex-direction:row;padding:4px}
  .adm-sidebar-footer{display:none}
}

/* ====================================================================
   AW2 — Attendee Watch v2 (vc7h6)
   Full ground-up redesign. Always dark. No-scroll viewport layout.
   ==================================================================== */

/* Page shell — fills 100vh, flex column, dark base */
.aw2-page{height:100vh;overflow:hidden;display:flex;flex-direction:column;background:#090D18;color:#fff;font-family:'Inter','Helvetica Neue',Arial,sans-serif;font-size:13px;line-height:1.5}

/* ── Topbar ── */
.aw2-bar{height:50px;display:flex;align-items:center;gap:10px;padding:0 16px;background:rgba(6,9,18,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0;z-index:10}
.aw2-bar-l{display:flex;align-items:center;gap:10px;min-width:0;flex:1;overflow:hidden}
.aw2-bar-r{display:flex;align-items:center;gap:8px;flex-shrink:0}

/* Logo */
.aw2-logo{height:32px;min-width:32px;max-width:130px;border-radius:8px;background:linear-gradient(135deg,var(--brand-primary,#1a3f6f),#2060a0);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}
.aw2-logo img{height:22px;width:auto;max-width:116px;object-fit:contain;padding:0 6px;display:block}
.aw2-logo-init{font-size:14px;font-weight:800;color:#fff;padding:0 8px}
.aw2-brand{font-size:13px;font-weight:700;color:rgba(255,255,255,.88);letter-spacing:-.01em;white-space:nowrap;flex-shrink:0}
.aw2-sep{width:1px;height:16px;background:rgba(255,255,255,.12);flex-shrink:0}
.aw2-ename{font-size:12px;color:rgba(255,255,255,.38);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}

/* Status badge */
.aw2-badge{display:flex;align-items:center;gap:6px;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;letter-spacing:.05em;flex-shrink:0}
.aw2-bdot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}
.aw2-badge-live{background:rgba(21,163,106,.13);border:1px solid rgba(21,163,106,.28);color:#15A36A}
.aw2-badge-live .aw2-bdot{animation:adm-pulse 1.5s ease-in-out infinite}
.aw2-badge-waiting{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.22);color:#F59E0B}
.aw2-badge-ended{background:rgba(100,116,139,.09);border:1px solid rgba(100,116,139,.18);color:#94A3B8}

/* User pill */
.aw2-user{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:999px;padding:3px 10px 3px 3px}
.aw2-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--brand-primary,#FF5A1F),var(--brand-button,#FF8C5A));display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;color:#fff;flex-shrink:0}
.aw2-uname{font-size:11px;color:rgba(255,255,255,.55);white-space:nowrap}
.aw2-leave{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.45);border-radius:7px;padding:5px 13px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s,color .15s}
.aw2-leave:hover{background:rgba(255,255,255,.11);color:rgba(255,255,255,.75)}

/* ── Body layout: stage + sidebar ── */
.aw2-body{display:flex;flex:1;overflow:hidden;min-height:0}

/* ── Stage ── */
.aw2-stage-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:10px 6px 0 10px;min-width:0}
.aw2-stage{flex:1;overflow:hidden;border-radius:12px;background:#050A14;border:1px solid rgba(255,255,255,.06);position:relative;display:flex;align-items:stretch;min-height:0}
.aw2-stage .presentation-stage-wrap,.aw2-stage .viewer-stage.companion-stage{width:100%;height:100%;border:none;border-radius:0;margin:0;background:transparent}
.aw2-stage .presentation-empty{color:rgba(255,255,255,.22);font-size:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;padding:40px;text-align:center}
.aw2-stage .presentation-slide-image{width:100%;height:100%;object-fit:contain}
.aw2-stage .slide-arrow{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:50%;width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:background .14s}
.aw2-stage .slide-arrow:hover{background:rgba(255,255,255,.16)}
.aw2-stage .attendee-follow-row{position:absolute;bottom:10px;right:10px}
.aw2-stage-foot{padding:6px 4px 8px;display:flex;align-items:center;gap:6px;flex-shrink:0}
.aw2-stage-title{font-size:11px;font-weight:600;color:rgba(255,255,255,.45);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.aw2-stage-status{font-size:11px;color:rgba(255,255,255,.25)}

/* ── Sidebar ── */
.aw2-sidebar{width:288px;flex-shrink:0;display:flex;flex-direction:column;gap:5px;padding:10px 10px 10px 4px;overflow-y:auto;overflow-x:hidden}
.aw2-sidebar::-webkit-scrollbar{width:3px}
.aw2-sidebar::-webkit-scrollbar-track{background:transparent}
.aw2-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:3px}

/* ── Panels ── */
.aw2-panel{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;flex-shrink:0}
.aw2-panel-hd{display:flex;align-items:center;gap:8px;padding:10px 13px;cursor:pointer;user-select:none;list-style:none}
.aw2-panel-hd::-webkit-details-marker{display:none}
.aw2-panel-hd-static{cursor:default}
.aw2-panel-lbl{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45);flex:1}
.aw2-panel-meta{font-size:10px;color:rgba(255,255,255,.28);font-weight:500;white-space:nowrap}
.aw2-chevron{width:13px;height:13px;stroke:rgba(255,255,255,.28);flex-shrink:0;transition:transform .2s}
details[open].aw2-panel>.aw2-panel-hd .aw2-chevron{transform:rotate(180deg)}
.aw2-panel-bd{padding:0 13px 11px}
.aw2-panel-open>.aw2-panel-hd{border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:8px}
details[open].aw2-panel>.aw2-panel-hd{border-bottom:1px solid rgba(255,255,255,.05)}

/* ── Shared form elements ── */
.aw2-note{font-size:11px;color:rgba(255,255,255,.32);line-height:1.5;margin:0}
.aw2-label{font-size:11px;color:rgba(255,255,255,.45);display:block;margin:8px 0 3px}
.aw2-input{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:12px;padding:7px 10px;width:100%;font-family:inherit;box-sizing:border-box}
.aw2-input:focus{border-color:rgba(var(--brand-primary-rgb,255,90,31),.4);outline:none}
.aw2-btn-primary{display:block;width:100%;margin-top:8px;padding:9px;background:var(--brand-button,#FF5A1F);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s}
.aw2-btn-primary:hover{opacity:.85}
.aw2-btn-primary:disabled{opacity:.45;cursor:default}
.aw2-btn-secondary{margin-top:10px;padding:8px 14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.65);border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s,color .15s;display:inline-block}
.aw2-btn-secondary:hover{background:rgba(255,255,255,.12);color:#fff}

/* ── Q&A panel ── */
.aw2-qa-form{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.aw2-qa-form textarea{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:12px;padding:8px 10px;width:100%;min-height:72px;resize:vertical;font-family:inherit;box-sizing:border-box}
.aw2-qa-form textarea::placeholder{color:rgba(255,255,255,.2)}
.aw2-qa-form textarea:focus{border-color:rgba(var(--brand-primary-rgb,255,90,31),.4);outline:none}
.aw2-qa-list{display:flex;flex-direction:column;gap:5px;margin-top:10px}
.aw2-qa-list .written-question-item{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:8px;padding:8px 10px}
.aw2-qa-list .written-question-item p{font-size:11.5px;color:rgba(255,255,255,.72);line-height:1.4;margin:6px 0 0}
.aw2-qa-list .written-question-item .pill{font-size:9.5px}
.aw2-qa-list .written-answer{font-size:11px;color:rgba(255,255,255,.45);margin-top:5px;padding-top:5px;border-top:1px solid rgba(255,255,255,.06)}
.aw2-qa-list p.small{font-size:11px;color:rgba(255,255,255,.3);margin:0}

/* ── Resources panel ── */
.aw2-res-list{display:flex;flex-direction:column;gap:5px;margin-top:6px}
.aw2-res-list .resource-item{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:8px 10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:8px}
.aw2-res-list .resource-item>div{flex:1;min-width:0}
.aw2-res-list .resource-item strong{font-size:12px;color:rgba(255,255,255,.78);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aw2-res-list .resource-item .small{font-size:10px;color:rgba(255,255,255,.3)}
.aw2-res-list .resource-item p.small{margin-top:3px}
.aw2-res-list .resource-link,.aw2-res-list .btn.light.resource-link{flex-shrink:0;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.55);border-radius:7px;padding:5px 10px;font-size:11px;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .14s,color .14s;display:inline-block}
.aw2-res-list .resource-link:hover,.aw2-res-list .btn.light.resource-link:hover{background:rgba(255,255,255,.13);color:#fff}
.aw2-res-list p.small{font-size:11px;color:rgba(255,255,255,.32);margin:0}

/* ── Switch audio ── */
.aw2-switch-opts{display:flex;flex-direction:column;gap:5px;margin-top:6px}
.aw2-switch-opt{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:8px;cursor:pointer;transition:background .14s}
.aw2-switch-opt:hover{background:rgba(255,255,255,.07)}
.aw2-switch-opt-cur{border-color:rgba(var(--brand-primary-rgb,255,90,31),.28);background:rgba(255,90,31,.05)}
.aw2-switch-opt input[type=radio]{margin-top:3px;accent-color:var(--brand-button,#FF5A1F);flex-shrink:0}
.aw2-switch-opt-text{display:flex;flex-direction:column;gap:2px}
.aw2-switch-opt-text strong{font-size:12px;color:rgba(255,255,255,.78);font-weight:600}
.aw2-switch-opt-text small{font-size:10.5px;color:rgba(255,255,255,.32);display:block}
.aw2-cur-tag{display:inline-block;margin-left:6px;font-size:9.5px;font-weight:700;letter-spacing:.04em;color:var(--brand-button,#FF8C5A);opacity:.8;text-transform:uppercase}

/* ── Identity unlock card (inside aw2-panel) ── */
.aw2-panel-identity .aw2-panel-bd{padding-top:2px}
.aw2-panel-identity .identity-unlock-card,.aw2-panel-identity .card.identity-unlock-card{background:transparent;border:none;padding:0;box-shadow:none;margin:0}
.aw2-panel-identity .identity-unlock-card h2{font-size:11px;font-weight:700;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.06em;margin:0 0 5px}
.aw2-panel-identity .identity-unlock-card p.small{font-size:11px;color:rgba(255,255,255,.35);margin-bottom:8px}
.aw2-panel-identity .identity-unlock-card label{font-size:11px;color:rgba(255,255,255,.4);display:block;margin:6px 0 3px}
.aw2-panel-identity .identity-unlock-card input{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#fff;font-size:12px;padding:6px 9px;width:100%;font-family:inherit;box-sizing:border-box}
.aw2-panel-identity .identity-unlock-card input:focus{border-color:rgba(255,90,31,.4);outline:none}
.aw2-panel-identity .identity-unlock-card .actions{margin-top:9px}
.aw2-panel-identity .identity-unlock-card button.light{background:var(--brand-button,#FF5A1F);border:none;color:#fff;border-radius:8px;padding:8px;font-size:12px;font-weight:700;cursor:pointer;width:100%;font-family:inherit;transition:opacity .15s}
.aw2-panel-identity .identity-unlock-card button.light:hover{opacity:.85}
.aw2-panel-identity .identity-unlock-card p#identityUnlockMessage{font-size:11px;color:rgba(255,255,255,.4);margin-top:6px}

/* ── Audio panel content overrides (listen-only, webcall, call-me) ── */

/* listen-only stream card in aw2 */
.aw2-panel-bd .listen-only-player-card.card{background:transparent;border:none;padding:0;box-shadow:none}
.aw2-panel-bd .lo-msg{color:rgba(255,255,255,.35)}

/* webcall card in aw2 */
.aw2-panel-bd #webCallConnectBtn,.aw2-panel-bd .audio-actions .light:first-child{background:var(--brand-button,#FF5A1F);color:#fff;border:none;border-radius:8px;padding:9px 14px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;width:100%;transition:opacity .15s;text-align:center}
.aw2-panel-bd #webCallConnectBtn:hover{opacity:.85}
.aw2-panel-bd #webCallConnectBtn:disabled{opacity:.4;cursor:default}
.aw2-panel-bd .actions.audio-actions{display:flex;flex-direction:column;gap:6px;margin:8px 0 4px}
.aw2-panel-bd .actions.audio-actions .light{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.6);border-radius:7px;padding:7px 12px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .14s;display:block;width:100%;text-align:center}
.aw2-panel-bd .actions.audio-actions .light:hover{background:rgba(255,255,255,.12);color:#fff}
.aw2-panel-bd #webCallStatusMessage,.aw2-panel-bd p#webCallStatusMessage{font-size:11px;color:rgba(255,255,255,.35);margin:5px 0 0;line-height:1.4}
.aw2-panel-bd .pill{font-size:10.5px}
.aw2-panel-bd .audio-settings-panel{margin-top:8px;display:flex;flex-direction:column;gap:4px}
.aw2-panel-bd .audio-settings-panel label{font-size:11px;color:rgba(255,255,255,.4)}
.aw2-panel-bd .audio-settings-panel select{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#fff;font-size:12px;padding:5px 8px;width:100%;font-family:inherit}

/* verbal Q&A inside webcall panel */
.aw2-panel-bd .verbal-qa-panel{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06)}
.aw2-panel-bd .verbal-qa-panel h3{font-size:10px;font-weight:700;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.06em;margin:0 0 7px}
.aw2-panel-bd .verbal-qa-actions{display:flex;gap:6px;flex-wrap:wrap}
.aw2-panel-bd .verbal-qa-actions button{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.6);border-radius:7px;padding:6px 11px;font-size:11.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .14s}
.aw2-panel-bd .verbal-qa-actions button:hover{background:rgba(255,255,255,.13);color:#fff}

/* call-me in aw2 */
.aw2-panel-bd #callStatusPill{display:inline-block;margin-bottom:5px}
.aw2-panel-bd #callStatusMessage{font-size:11px;color:rgba(255,255,255,.35);margin:4px 0 0;line-height:1.4}
.aw2-panel-bd #callAgainForm button{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.6);border-radius:7px;padding:7px 12px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;margin-top:8px;transition:background .14s}
.aw2-panel-bd #callAgainForm button:hover{background:rgba(255,255,255,.13);color:#fff}

/* ── Footer ── */
.aw2-foot{height:28px;display:flex;align-items:center;padding:0 16px;background:rgba(0,0,0,.2);border-top:1px solid rgba(255,255,255,.04);flex-shrink:0;font-size:10px;color:rgba(255,255,255,.2);gap:8px}
.aw2-foot-r{margin-left:auto}

/* ── Responsive ── */
@media(max-width:900px){
  .aw2-ename{display:none}
  .aw2-uname{display:none}
}
@media(max-width:768px){
  .aw2-body{flex-direction:column;overflow-y:auto}
  .aw2-stage-wrap{flex:none;height:56vw;min-height:180px;padding:8px}
  .aw2-stage-foot{display:none}
  .aw2-sidebar{width:100%;padding:0 8px 8px}
}

/* ====================================================================
   AW2 FIXES & ENHANCEMENTS (vc7h7)
   ==================================================================== */

/* Fix: audio settings panel white background bleeds through */
.aw2-panel-bd .audio-settings-panel{background:transparent !important;border:none !important;border-radius:0 !important;padding:0 !important}
.aw2-panel-bd .audio-settings-panel label{color:rgba(255,255,255,.45) !important;font-size:11px}
.aw2-panel-bd .audio-settings-panel select{background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.14) !important;border-radius:8px !important;color:#fff !important;font-size:12px;padding:6px 9px;width:100%;font-family:inherit;-webkit-appearance:none;appearance:none;cursor:pointer}
.aw2-panel-bd .audio-settings-panel #webCallSettingsMessage{color:rgba(255,255,255,.35) !important;font-size:11px;margin-top:6px}

/* Fix: switch audio text overflowing outside label boxes */
.aw2-switch-opt{overflow:hidden}
.aw2-switch-opt-text{min-width:0;flex:1;overflow:hidden}
.aw2-switch-opt-text strong{display:block;font-size:12px;color:rgba(255,255,255,.78);font-weight:600;white-space:normal;word-break:break-word;overflow-wrap:break-word;line-height:1.3}
.aw2-switch-opt-text small{display:block;font-size:10.5px;color:rgba(255,255,255,.35);white-space:normal;word-break:break-word;overflow-wrap:break-word;line-height:1.35;margin-top:2px}
.aw2-cur-tag{font-size:9px;font-weight:700;letter-spacing:.05em;color:var(--brand-button,#FF8C5A);opacity:.9;text-transform:uppercase;margin-left:4px;vertical-align:middle}

/* Improved slide arrows — glassy pill style */
.slide-arrow{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s;font-size:0;padding:0}
.slide-arrow:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.35)}
.slide-arrow svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.attendee-slide-arrow-layer{position:absolute;bottom:12px;right:12px;display:flex;gap:6px;z-index:10}
.attendee-follow-row button{background:rgba(255,255,255,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.75);border-radius:999px;padding:5px 12px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .14s;font-size:11px}
.attendee-follow-row button:hover{background:rgba(255,255,255,.2);color:#fff}

/* Webcall: connected card with waveform */
.aw2-webcall-connected{display:none;align-items:center;gap:10px;padding:10px 12px;background:rgba(21,163,106,.1);border:1px solid rgba(21,163,106,.22);border-radius:10px;margin-bottom:8px}
.aw2-webcall-connected.aw2-visible{display:flex}
.aw2-mic-btn{width:38px;height:38px;border-radius:50%;background:rgba(21,163,106,.2);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s;position:relative}
.aw2-mic-btn:hover{background:rgba(21,163,106,.32)}
.aw2-mic-btn svg{width:18px;height:18px;stroke:#15A36A;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:stroke .2s}
.aw2-mic-btn.muted{background:rgba(180,35,24,.15)}
.aw2-mic-btn.muted:hover{background:rgba(180,35,24,.28)}
.aw2-mic-btn.muted svg{stroke:#F87171}
.aw2-connected-info{flex:1;min-width:0}
.aw2-connected-label{font-size:11px;font-weight:700;color:#15A36A;margin-bottom:3px}
.aw2-waveform{display:flex;align-items:flex-end;gap:2px;height:18px}
.aw2-waveform span{width:3px;border-radius:99px;background:#15A36A;opacity:.7;animation:aw2-wave 1.2s ease-in-out infinite}
.aw2-waveform span:nth-child(1){animation-delay:0s;height:6px}
.aw2-waveform span:nth-child(2){animation-delay:.15s;height:12px}
.aw2-waveform span:nth-child(3){animation-delay:.3s;height:18px}
.aw2-waveform span:nth-child(4){animation-delay:.15s;height:12px}
.aw2-waveform span:nth-child(5){animation-delay:0s;height:6px}
.aw2-timer{font-size:10px;color:#15A36A;font-variant-numeric:tabular-nums;margin-top:2px;opacity:.75}
@keyframes aw2-wave{0%,100%{transform:scaleY(.4);opacity:.5}50%{transform:scaleY(1);opacity:.9}}
.aw2-webcall-connected.muted .aw2-waveform span{background:#F87171;animation:none;opacity:.5}

/* Glassmorphism pass: topbar, panels */
.aw2-bar{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.aw2-panel{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.slide-arrow{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}

/* ====================================================================
   AW2 LIGHT MODE (when html has no dark theme / system is light)
   ==================================================================== */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-page{background:#EEF1F8;color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-bar{background:rgba(255,255,255,.88);border-bottom-color:rgba(0,0,0,.09)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-brand{color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-ename{color:rgba(17,24,39,.42)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-sep{background:rgba(0,0,0,.1)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-user{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.09)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-uname{color:rgba(17,24,39,.6)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-leave{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.1);color:rgba(17,24,39,.5)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel{background:rgba(255,255,255,.85);border-color:rgba(0,0,0,.08)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-lbl{color:rgba(17,24,39,.5)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-meta{color:rgba(17,24,39,.35)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-chevron{stroke:rgba(17,24,39,.3)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-open>.aw2-panel-hd{border-bottom-color:rgba(0,0,0,.06)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) details[open].aw2-panel>.aw2-panel-hd{border-bottom-color:rgba(0,0,0,.06)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-note{color:rgba(17,24,39,.45)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-label{color:rgba(17,24,39,.55)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-input{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.12);color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-input::placeholder{color:rgba(17,24,39,.3)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-btn-secondary{background:rgba(0,0,0,.06);border-color:rgba(0,0,0,.1);color:rgba(17,24,39,.7)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-stage{background:#fff;border-color:rgba(0,0,0,.08)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-stage .presentation-empty{color:rgba(17,24,39,.25)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-stage-title{color:rgba(17,24,39,.5)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-stage-status{color:rgba(17,24,39,.3)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-foot{background:rgba(0,0,0,.04);border-top-color:rgba(0,0,0,.06);color:rgba(17,24,39,.25)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-switch-opt{background:rgba(0,0,0,.03);border-color:rgba(0,0,0,.08)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-switch-opt-text strong{color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-switch-opt-text small{color:rgba(17,24,39,.45)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-qa-form textarea{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.12);color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-qa-form textarea::placeholder{color:rgba(17,24,39,.3)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-qa-list .written-question-item{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.08)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-qa-list .written-question-item p{color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-res-list .resource-item{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.08)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-res-list .resource-item strong{color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .listen-only-player-card.card{color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .lo-play-btn{color:#fff}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .lo-msg{color:rgba(17,24,39,.45)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .pill{background:rgba(0,0,0,.07);color:rgba(17,24,39,.6)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .pill.good{background:rgba(21,163,106,.12);color:#0D7A52}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .pill.warn{background:rgba(245,158,11,.1);color:#B45309}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .pill.danger{background:rgba(180,35,24,.1);color:#B42318}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .audio-settings-panel label{color:rgba(17,24,39,.55) !important}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .audio-settings-panel select{background:rgba(0,0,0,.04) !important;border-color:rgba(0,0,0,.12) !important;color:#111827 !important}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd #webCallConnectBtn{color:#fff}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .actions.audio-actions .light{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.1);color:rgba(17,24,39,.6)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd #webCallStatusMessage{color:rgba(17,24,39,.45)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-bd .audio-settings-panel #webCallSettingsMessage{color:rgba(17,24,39,.45) !important}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-identity .identity-unlock-card h2{color:rgba(17,24,39,.55)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-identity .identity-unlock-card p.small{color:rgba(17,24,39,.5)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-identity .identity-unlock-card label{color:rgba(17,24,39,.5)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .aw2-panel-identity .identity-unlock-card input{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.12);color:#111827}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .slide-arrow{background:rgba(0,0,0,.1);border-color:rgba(0,0,0,.16);color:rgba(17,24,39,.8)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-follow-row button{background:rgba(0,0,0,.08);border-color:rgba(0,0,0,.14);color:rgba(17,24,39,.7)}

/* ====================================================================
   AW2 HIGH CONTRAST MODE
   ==================================================================== */
html[data-theme="high-contrast"] .aw2-page{background:#000;color:#fff}
html[data-theme="high-contrast"] .aw2-bar{background:#000;border-bottom-color:rgba(255,255,255,.3)}
html[data-theme="high-contrast"] .aw2-panel{background:#1a1a1a;border-color:rgba(255,255,255,.3)}
html[data-theme="high-contrast"] .aw2-panel-lbl{color:rgba(255,255,255,.85)}
html[data-theme="high-contrast"] .aw2-note{color:rgba(255,255,255,.65)}
html[data-theme="high-contrast"] .aw2-input{background:#222;border-color:rgba(255,255,255,.4);color:#fff}
html[data-theme="high-contrast"] .aw2-stage{background:#111;border-color:rgba(255,255,255,.2)}
html[data-theme="high-contrast"] .aw2-foot{background:#111;border-top-color:rgba(255,255,255,.2)}
html[data-theme="high-contrast"] .aw2-panel-bd .audio-settings-panel select{background:#333 !important;border-color:rgba(255,255,255,.4) !important;color:#fff !important}

/* VC-7K2 attendee light-mode contrast + switch-audio polish hotfix */
.aw2-panel,
.aw2-card,
.aw2-section,
.aw2-tool-panel,
.aw2-tools-panel {
  color: #111827;
}

.aw2-panel h1,
.aw2-panel h2,
.aw2-panel h3,
.aw2-panel h4,
.aw2-panel strong,
.aw2-card h1,
.aw2-card h2,
.aw2-card h3,
.aw2-card h4,
.aw2-card strong {
  color: #111827;
}

/* Resources: force readable text/buttons in light mode */
.aw2-panel a,
.aw2-card a,
.aw2-resource,
.aw2-resource *,
.resource-card,
.resource-card *,
.resource-item,
.resource-item *,
.resources-card,
.resources-card *,
[id*="resource"],
[id*="resource"] * {
  color: #111827;
}

.aw2-panel a[href],
.aw2-card a[href],
.resource-card a,
.resource-item a,
.resources-card a,
[id*="resource"] a {
  color: #0f172a;
  text-decoration-color: rgba(15, 23, 42, 0.35);
}

.resource-card .btn,
.resource-item .btn,
.resources-card .btn,
[id*="resource"] button,
[id*="resource"] .btn,
[id*="resource"] a.button {
  color: #111827 !important;
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, 0.16);
}

/* Keep muted filenames readable */
.resource-card small,
.resource-card .muted,
.resource-item small,
.resource-item .muted,
.resources-card small,
.resources-card .muted,
[id*="resource"] small,
[id*="resource"] .muted {
  color: #4b5563 !important;
}

/* Switch Audio: stop the giant blank box and make inner controls readable */
.aw2-switch-audio,
.switch-audio,
.switch-audio-panel,
[id*="switchAudio"],
[id*="audioSwitch"] {
  color: #111827;
}

.aw2-switch-audio *,
.switch-audio *,
.switch-audio-panel *,
[id*="switchAudio"] *,
[id*="audioSwitch"] * {
  color: inherit;
}

.aw2-switch-audio .empty,
.switch-audio .empty,
.switch-audio-panel .empty,
[id*="switchAudio"] .empty,
[id*="audioSwitch"] .empty {
  color: #6b7280;
}

/* Avoid oversized empty inner boxes in Switch Audio */
.aw2-switch-audio iframe,
.switch-audio iframe,
.switch-audio-panel iframe,
[id*="switchAudio"] iframe,
[id*="audioSwitch"] iframe {
  min-height: 0;
  max-height: 420px;
}

.aw2-switch-audio .panel-body,
.switch-audio .panel-body,
.switch-audio-panel .panel-body,
[id*="switchAudio"] .panel-body,
[id*="audioSwitch"] .panel-body {
  min-height: 0;
}

/* Generic attendee button readability inside side panels */
.aw2-panel button,
.aw2-card button,
.aw2-panel .button,
.aw2-card .button,
.aw2-panel .btn,
.aw2-card .btn {
  color: #111827;
}

/* Preserve dark player/control areas */
.embed-player-shell,
.embed-player-shell *,
.ep4-player,
.ep4-player *,
.audio-player-shell,
.audio-player-shell * {
  color: inherit;
}


/* VC-7K1 precise attendee panel contrast hotfix */

/* Resources panel */
#resourcesCard,
#resourcesCard .aw2-panel-bd,
#resourcesList,
#resourcesList .resource-item {
  color: #111827 !important;
}

#resourcesList .resource-item {
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, 0.14) !important;
  box-shadow: none !important;
}

#resourcesList .resource-item strong {
  color: #111827 !important;
}

#resourcesList .resource-file,
#resourcesList .small,
#resourcesList p {
  color: #4b5563 !important;
}

#resourcesList .resource-link,
#resourcesList a.btn,
#resourcesList .btn.light {
  color: #111827 !important;
  background: #f8fafc !important;
  border: 1px solid rgba(15, 23, 42, 0.18) !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

/* Switch Audio panel */
#switchAudioMethodForm,
#switchAudioMethodForm * {
  color: #111827 !important;
  text-shadow: none !important;
}

#switchAudioMethodForm .aw2-switch-opts {
  display: grid !important;
  gap: 10px !important;
}

#switchAudioMethodForm .aw2-switch-opt {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 14px !important;
  margin: 0 !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, 0.16) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

#switchAudioMethodForm .aw2-switch-opt input[type="radio"] {
  flex: 0 0 auto !important;
  margin-top: 3px !important;
  width: 18px !important;
  height: 18px !important;
  accent-color: var(--brand-button, #FF5A1F) !important;
}

#switchAudioMethodForm .aw2-switch-opt-text {
  display: grid !important;
  gap: 4px !important;
  min-width: 0 !important;
}

#switchAudioMethodForm .aw2-switch-opt-text strong {
  color: #111827 !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

#switchAudioMethodForm .aw2-switch-opt-text small {
  color: #4b5563 !important;
  line-height: 1.35 !important;
}

#switchAudioMethodForm .aw2-cur-tag {
  display: inline-block !important;
  margin-left: 8px !important;
  padding: 2px 7px !important;
  border-radius: 999px !important;
  color: #9a3412 !important;
  background: #ffedd5 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  vertical-align: middle !important;
}

#switchAudioPhoneWrap,
#switchAudioHint {
  color: #4b5563 !important;
}

#switchAudioMethodForm .aw2-label {
  color: #374151 !important;
}

#switchAudioMethodForm .aw2-input {
  color: #111827 !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, 0.18) !important;
}

#switchAudioMethodForm .aw2-btn-secondary {
  color: #111827 !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, 0.18) !important;
  opacity: 1 !important;
}


/* VC-7K1 dark-mode Resources header contrast fix */
html[data-theme="dark"] #resourcesCard > summary.aw2-panel-hd,
html[data-theme="dark"] #resourcesCard > summary.aw2-panel-hd .aw2-panel-lbl,
html[data-theme="dark"] #resourcesCard > summary.aw2-panel-hd .aw2-panel-meta,
html[data-theme="dark"] #resourcesCard > summary.aw2-panel-hd .aw2-chevron {
  color: #e5e7eb !important;
  stroke: #e5e7eb !important;
  opacity: 1 !important;
}

/* Keep actual resource items readable in light-style cards even when dark mode is active */
html[data-theme="dark"] #resourcesList .resource-item,
html[data-theme="dark"] #resourcesList .resource-item * {
  color: #111827 !important;
}

html[data-theme="dark"] #resourcesList .resource-file,
html[data-theme="dark"] #resourcesList .small,
html[data-theme="dark"] #resourcesList p {
  color: #4b5563 !important;
}


/* VC-7K1 live audio/captions light-mode contrast polish */
.attendee-page .live-audio-panel,
.attendee-page .live-audio-panel *,
.attendee-page [id*="caption"],
.attendee-page [id*="caption"] *,
.attendee-page [class*="caption"],
.attendee-page [class*="caption"] * {
  text-shadow: none;
}

.attendee-page .live-audio-panel,
.attendee-page .live-audio-panel p,
.attendee-page .live-audio-panel span,
.attendee-page .live-audio-panel div,
.attendee-page [id*="caption"],
.attendee-page [class*="caption"] {
  color: #111827;
}

.attendee-page .live-audio-panel .small,
.attendee-page .live-audio-panel small,
.attendee-page [id*="caption"] .small,
.attendee-page [class*="caption"] .small {
  color: #4b5563;
}

/* Preserve dark theme readability */
html[data-theme="dark"] .attendee-page .live-audio-panel,
html[data-theme="dark"] .attendee-page .live-audio-panel p,
html[data-theme="dark"] .attendee-page .live-audio-panel span,
html[data-theme="dark"] .attendee-page .live-audio-panel div,
html[data-theme="dark"] .attendee-page [id*="caption"],
html[data-theme="dark"] .attendee-page [class*="caption"] {
  color: #e5e7eb;
}

html[data-theme="dark"] .attendee-page .live-audio-panel .small,
html[data-theme="dark"] .attendee-page .live-audio-panel small,
html[data-theme="dark"] .attendee-page [id*="caption"] .small,
html[data-theme="dark"] .attendee-page [class*="caption"] .small {
  color: #9ca3af;
}


/* VC-7K1 FINAL attendee contrast patch: captions + resources header */

/* ------------------------------------------------------------
   LIGHT MODE: Live Audio / Captions inside the audio panel
   Force caption label, caption text, and generated caption rows readable.
------------------------------------------------------------ */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd div,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd p,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd span,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd small,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [id*="caption"],
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [id*="caption"] *,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [class*="caption"],
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [class*="caption"] * {
  color: #111827 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

/* Softer secondary text in light mode */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .small,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open small,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [class*="time"],
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [class*="timestamp"] {
  color: #64748b !important;
}

/* Keep the Play Audio button white text */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open button,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-btn-primary {
  color: #ffffff !important;
}

/* Keep secondary audio buttons dark/readable */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open button.light,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .btn.light {
  color: #111827 !important;
}


/* ------------------------------------------------------------
   DARK MODE: collapsed Resources header must be visible.
   Put this very late so it beats earlier #resourcesCard rules.
------------------------------------------------------------ */
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd,
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd *,
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd .aw2-panel-lbl,
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd .aw2-panel-meta,
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd .aw2-chevron {
  color: #e5e7eb !important;
  stroke: #e5e7eb !important;
  fill: none !important;
  opacity: 1 !important;
}

/* When Resources is opened in dark mode, keep the inner white resource card readable */
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item {
  background: #ffffff !important;
  border-color: rgba(255,255,255,0.18) !important;
}

html[data-theme="dark"] body.attendee-page #resourcesList .resource-item,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item strong,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item a,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item .resource-link {
  color: #111827 !important;
}

html[data-theme="dark"] body.attendee-page #resourcesList .resource-file,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item small,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item .small,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item p {
  color: #4b5563 !important;
}


/* VC-7K1 FINAL attendee contrast patch: captions + resources header */

/* ------------------------------------------------------------
   LIGHT MODE: Live Audio / Captions inside the audio panel
   Force caption label, caption text, and generated caption rows readable.
------------------------------------------------------------ */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd div,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd p,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd span,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-panel-bd small,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [id*="caption"],
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [id*="caption"] *,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [class*="caption"],
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [class*="caption"] * {
  color: #111827 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

/* Softer secondary text in light mode */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .small,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open small,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [class*="time"],
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open [class*="timestamp"] {
  color: #64748b !important;
}

/* Keep the Play Audio button white text */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open button,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .aw2-btn-primary {
  color: #ffffff !important;
}

/* Keep secondary audio buttons dark/readable */
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open button.light,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .attendee-page .aw2-sidebar > .aw2-panel.aw2-panel-open .btn.light {
  color: #111827 !important;
}


/* ------------------------------------------------------------
   DARK MODE: collapsed Resources header must be visible.
   Put this very late so it beats earlier #resourcesCard rules.
------------------------------------------------------------ */
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd,
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd *,
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd .aw2-panel-lbl,
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd .aw2-panel-meta,
html[data-theme="dark"] body.attendee-page #resourcesCard > summary.aw2-panel-hd .aw2-chevron {
  color: #e5e7eb !important;
  stroke: #e5e7eb !important;
  fill: none !important;
  opacity: 1 !important;
}

/* When Resources is opened in dark mode, keep the inner white resource card readable */
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item {
  background: #ffffff !important;
  border-color: rgba(255,255,255,0.18) !important;
}

html[data-theme="dark"] body.attendee-page #resourcesList .resource-item,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item strong,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item a,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item .resource-link {
  color: #111827 !important;
}

html[data-theme="dark"] body.attendee-page #resourcesList .resource-file,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item small,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item .small,
html[data-theme="dark"] body.attendee-page #resourcesList .resource-item p {
  color: #4b5563 !important;
}


/* ==========================================================================
   VC-7K2 Attendee UI Consolidation
   One colour system for attendee panels, resources, switch audio, captions.
   ========================================================================== */

body.attendee-page {
  --vc-page-bg: #eef3f9;
  --vc-panel-bg: #ffffff;
  --vc-panel-soft: #f8fafc;
  --vc-panel-border: rgba(15, 23, 42, 0.12);
  --vc-text: #111827;
  --vc-muted: #6b7280;
  --vc-muted-2: #9ca3af;
  --vc-brand-action: var(--brand-button, #FF5A1F);
  --vc-stage-caption-bg: rgba(15, 23, 42, 0.82);
  --vc-stage-caption-text: #ffffff;
}

html[data-theme="dark"] body.attendee-page {
  --vc-page-bg: #070b14;
  --vc-panel-bg: #111827;
  --vc-panel-soft: #0f172a;
  --vc-panel-border: rgba(255, 255, 255, 0.13);
  --vc-text: #e5e7eb;
  --vc-muted: #9ca3af;
  --vc-muted-2: #6b7280;
  --vc-stage-caption-bg: rgba(0, 0, 0, 0.78);
  --vc-stage-caption-text: #ffffff;
}

html[data-theme="high-contrast"] body.attendee-page {
  --vc-page-bg: #ffffff;
  --vc-panel-bg: #ffffff;
  --vc-panel-soft: #ffffff;
  --vc-panel-border: #000000;
  --vc-text: #000000;
  --vc-muted: #111111;
  --vc-muted-2: #333333;
  --vc-stage-caption-bg: #000000;
  --vc-stage-caption-text: #ffffff;
}

/* Page and panels */
body.attendee-page,
body.attendee-page .aw2-page,
body.attendee-page .aw2-body {
  background: var(--vc-page-bg) !important;
  color: var(--vc-text) !important;
}

body.attendee-page .aw2-panel,
body.attendee-page details.aw2-panel,
body.attendee-page .aw2-card {
  background: var(--vc-panel-bg) !important;
  border-color: var(--vc-panel-border) !important;
  color: var(--vc-text) !important;
}

body.attendee-page .aw2-panel *,
body.attendee-page details.aw2-panel *,
body.attendee-page .aw2-card * {
  text-shadow: none !important;
}

body.attendee-page .aw2-panel-hd,
body.attendee-page summary.aw2-panel-hd,
body.attendee-page .aw2-panel-lbl,
body.attendee-page .aw2-panel-meta,
body.attendee-page .aw2-chevron {
  color: var(--vc-text) !important;
  stroke: var(--vc-muted) !important;
  opacity: 1 !important;
}

body.attendee-page .aw2-note,
body.attendee-page .small,
body.attendee-page small,
body.attendee-page .muted {
  color: var(--vc-muted) !important;
}

/* Keep top/status labels readable */
body.attendee-page .aw2-stage-title,
body.attendee-page .aw2-stage-status,
body.attendee-page #presentationStatusMessage,
body.attendee-page #presentationStatusBadgeText {
  color: var(--vc-text) !important;
}

/* Resources */
body.attendee-page #resourcesList .resource-item {
  background: var(--vc-panel-soft) !important;
  border: 1px solid var(--vc-panel-border) !important;
  border-radius: 14px !important;
  color: var(--vc-text) !important;
  box-shadow: none !important;
}

body.attendee-page #resourcesList .resource-item strong {
  color: var(--vc-text) !important;
}

body.attendee-page #resourcesList .resource-file,
body.attendee-page #resourcesList .resource-item p,
body.attendee-page #resourcesList .resource-item small,
body.attendee-page #resourcesList .resource-item .small {
  color: var(--vc-muted) !important;
}

body.attendee-page #resourcesList .resource-link,
body.attendee-page #resourcesList a.btn,
body.attendee-page #resourcesList .btn.light {
  color: var(--vc-text) !important;
  background: var(--vc-panel-bg) !important;
  border: 1px solid var(--vc-panel-border) !important;
  opacity: 1 !important;
}

/* Q&A */
body.attendee-page #writtenQaCard textarea,
body.attendee-page #writtenQaCard input {
  color: var(--vc-text) !important;
  background: var(--vc-panel-soft) !important;
  border: 1px solid var(--vc-panel-border) !important;
}

body.attendee-page .written-question-item {
  background: var(--vc-panel-soft) !important;
  border: 1px solid var(--vc-panel-border) !important;
  color: var(--vc-text) !important;
}

/* Switch Audio */
body.attendee-page #switchAudioMethodForm,
body.attendee-page #switchAudioMethodForm * {
  color: var(--vc-text) !important;
  text-shadow: none !important;
}

body.attendee-page #switchAudioMethodForm .aw2-switch-opts {
  display: grid !important;
  gap: 10px !important;
}

body.attendee-page #switchAudioMethodForm .aw2-switch-opt {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 14px !important;
  margin: 0 !important;
  background: var(--vc-panel-soft) !important;
  border: 1px solid var(--vc-panel-border) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

body.attendee-page #switchAudioMethodForm .aw2-switch-opt input[type="radio"] {
  flex: 0 0 auto !important;
  margin-top: 3px !important;
  width: 18px !important;
  height: 18px !important;
  accent-color: var(--vc-brand-action) !important;
}

body.attendee-page #switchAudioMethodForm .aw2-switch-opt-text {
  display: grid !important;
  gap: 4px !important;
  min-width: 0 !important;
}

body.attendee-page #switchAudioMethodForm .aw2-switch-opt-text strong {
  color: var(--vc-text) !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

body.attendee-page #switchAudioMethodForm .aw2-switch-opt-text small {
  color: var(--vc-muted) !important;
  line-height: 1.35 !important;
}

body.attendee-page #switchAudioMethodForm .aw2-cur-tag {
  display: inline-block !important;
  margin-left: 8px !important;
  padding: 2px 7px !important;
  border-radius: 999px !important;
  color: #9a3412 !important;
  background: #ffedd5 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  vertical-align: middle !important;
}

body.attendee-page #switchAudioMethodForm .aw2-input {
  color: var(--vc-text) !important;
  background: var(--vc-panel-soft) !important;
  border: 1px solid var(--vc-panel-border) !important;
}

body.attendee-page #switchAudioMethodForm .aw2-btn-secondary {
  color: var(--vc-text) !important;
  background: var(--vc-panel-bg) !important;
  border: 1px solid var(--vc-panel-border) !important;
}

/* Live audio panel */
body.attendee-page .aw2-panel-open .aw2-panel-bd,
body.attendee-page .aw2-panel-open .aw2-panel-bd p,
body.attendee-page .aw2-panel-open .aw2-panel-bd span,
body.attendee-page .aw2-panel-open .aw2-panel-bd div {
  color: var(--vc-text) !important;
}

body.attendee-page .aw2-panel-open .aw2-panel-bd .small,
body.attendee-page .aw2-panel-open .aw2-panel-bd small {
  color: var(--vc-muted) !important;
}

/* Keep primary orange play/connect buttons white */
body.attendee-page .aw2-panel-open button:not(.light),
body.attendee-page .aw2-btn-primary {
  color: #ffffff !important;
}

/* Stage caption overlay */
body.attendee-page .presentation-stage-wrap,
body.attendee-page .viewer-stage,
body.attendee-page .companion-stage {
  position: relative !important;
}

body.attendee-page #presentationSlideCaption {
  position: absolute !important;
  left: 50% !important;
  bottom: 22px !important;
  transform: translateX(-50%) !important;
  width: min(88%, 920px) !important;
  max-height: 30% !important;
  overflow: hidden !important;
  padding: 10px 14px !important;
  border-radius: 14px !important;
  background: var(--vc-stage-caption-bg) !important;
  color: var(--vc-stage-caption-text) !important;
  font-size: clamp(15px, 1.8vw, 22px) !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-align: center !important;
  box-shadow: 0 16px 38px rgba(0,0,0,0.24) !important;
  z-index: 12 !important;
}

body.attendee-page #presentationSlideCaption * {
  color: var(--vc-stage-caption-text) !important;
}

/* CC button */
body.attendee-page .vc-cc-toggle {
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 14;
  border: 1px solid rgba(255,255,255,0.28);
  background: rgba(15,23,42,0.74);
  color: #ffffff;
  border-radius: 999px;
  padding: 7px 11px;
  font-weight: 900;
  font-size: 13px;
  letter-spacing: .04em;
  cursor: pointer;
  box-shadow: 0 10px 24px rgba(0,0,0,0.24);
}

body.attendee-page .vc-cc-toggle[aria-pressed="true"] {
  background: var(--vc-brand-action);
  border-color: var(--vc-brand-action);
}

/* Hide the raw caption log inside Live Audio once the CC overlay script is active */
body.attendee-page.vc-stage-captions-enabled .aw2-panel-open [id*="caption"]:not(#presentationSlideCaption),
body.attendee-page.vc-stage-captions-enabled .aw2-panel-open [class*="caption"]:not(#presentationSlideCaption) {
  display: none !important;
}

/* High contrast exceptions */
html[data-theme="high-contrast"] body.attendee-page .vc-cc-toggle {
  background: #000000;
  color: #ffffff;
  border: 2px solid #ffffff;
}


/* ==========================================================================
   VC-7K2A Attendee audio/caption refinement
   Restores DVR controls, adds visible scrubber styling, and removes timestamp logs.
   ========================================================================== */
body.attendee-page .listen-only-player-card.card {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  color: var(--vc-text) !important;
}

body.attendee-page .listen-only-player-card .lo-primary-row {
  margin: 12px 0 12px !important;
}

body.attendee-page .listen-only-player-card .lo-play-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  width: auto !important;
  min-width: 218px !important;
  min-height: 68px !important;
  padding: 16px 28px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--vc-brand-action, #FF5A1F) !important;
  color: #ffffff !important;
  font-size: 27px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align: center !important;
  box-shadow: none !important;
}

body.attendee-page .listen-only-player-card .lo-play-btn,
body.attendee-page .listen-only-player-card .lo-play-btn * {
  color: #ffffff !important;
  fill: currentColor !important;
}

body.attendee-page .listen-only-player-card .lo-play-btn:disabled,
body.attendee-page .listen-only-player-card .lo-dvr-btn:disabled {
  opacity: .48 !important;
  cursor: not-allowed !important;
}

body.attendee-page .listen-only-player-card .lo-dvr-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin: 8px 0 14px !important;
}

body.attendee-page .listen-only-player-card .lo-dvr-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  border: 1px solid var(--vc-panel-border) !important;
  background: var(--vc-panel-soft) !important;
  color: var(--vc-text) !important;
  font-size: 16px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  opacity: 1 !important;
}

body.attendee-page .listen-only-player-card .lo-dvr-btn:hover,
body.attendee-page .listen-only-player-card .lo-dvr-btn.lo-dvr-active {
  border-color: rgba(255, 90, 31, 0.42) !important;
  background: rgba(255, 90, 31, 0.10) !important;
  color: var(--vc-text) !important;
}

html[data-theme="dark"] body.attendee-page .listen-only-player-card .lo-dvr-btn {
  background: rgba(255,255,255,0.07) !important;
  border-color: rgba(255,255,255,0.14) !important;
  color: #f8fafc !important;
}

html[data-theme="dark"] body.attendee-page .listen-only-player-card .lo-dvr-btn:hover,
html[data-theme="dark"] body.attendee-page .listen-only-player-card .lo-dvr-btn.lo-dvr-active {
  background: rgba(255,90,31,0.18) !important;
  border-color: rgba(255,90,31,0.45) !important;
  color: #ffffff !important;
}

body.attendee-page .listen-only-player-card .lo-progress-shell {
  display: grid !important;
  gap: 7px !important;
  margin: 4px 0 16px !important;
  max-width: 100% !important;
}

body.attendee-page .listen-only-player-card .lo-progress-track {
  position: relative !important;
  height: 9px !important;
  border-radius: 999px !important;
  background: rgba(100,116,139,0.22) !important;
  overflow: hidden !important;
}

body.attendee-page .listen-only-player-card .lo-progress-fill {
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: 0%;
  border-radius: 999px !important;
  background: var(--vc-brand-action, #FF5A1F) !important;
}

body.attendee-page .listen-only-player-card .lo-progress-range {
  width: 100% !important;
  margin: -16px 0 0 !important;
  opacity: 0 !important;
  cursor: pointer !important;
  position: relative !important;
  z-index: 2 !important;
}

body.attendee-page .listen-only-player-card .lo-progress-range:disabled {
  cursor: default !important;
}

body.attendee-page .listen-only-player-card .lo-progress-times {
  display: flex !important;
  justify-content: space-between !important;
  gap: 8px !important;
  color: var(--vc-muted) !important;
  font-size: 12px !important;
  font-weight: 750 !important;
}

body.attendee-page .listen-only-player-card .lo-msg {
  color: var(--vc-muted) !important;
  font-size: 22px !important;
  line-height: 1.45 !important;
  margin: 10px 0 0 !important;
}

html[data-theme="dark"] body.attendee-page .listen-only-player-card .lo-msg {
  color: #d1d5db !important;
}

/* Hide the side caption log/timestamps; captions are now stage-overlay only. */
body.attendee-page .listen-only-player-card .lo-captions {
  display: none !important;
}

body.attendee-page #presentationSlideCaption {
  pointer-events: none !important;
}

/* VC-7L1J — public landing pill contrast only; does not affect attendee viewer */
.public-join-hero .pill{background:#E8F1FF;color:#0F3A6A;border-color:rgba(191,219,254,.9);box-shadow:0 8px 22px rgba(0,0,0,.14)}
.public-join-hero .pill.good{background:#DCFCE7;color:#065F46;border-color:#86EFAC}
.public-join-hero .pill.warn{background:#92400E;color:#fff;border-color:#F59E0B}
.public-join-hero .pill.danger{background:#991B1B;color:#fff;border-color:#FCA5A5}

/* VC-7L1K-A — admin shell rollout + collapsible sidebar */
.adm-sidebar{transition:width .18s ease}
.adm-sidebar-toggle{
  margin-left:auto;
  width:26px;
  height:26px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.06);
  color:rgba(255,255,255,.72);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  line-height:1;
  padding:0;
  cursor:pointer;
}
.adm-sidebar-toggle:hover{background:rgba(255,255,255,.1);color:#fff}
.adm.is-collapsed .adm-sidebar{width:64px}
.adm.is-collapsed .adm-sidebar-logo{justify-content:center;padding-left:8px;padding-right:8px}
.adm.is-collapsed .adm-logo-text,
.adm.is-collapsed .adm-nav-section,
.adm.is-collapsed .adm-nav-item span,
.adm.is-collapsed .adm-user-info{display:none}
.adm.is-collapsed .adm-logo-mark{margin:0}
.adm.is-collapsed .adm-sidebar-toggle{position:absolute;left:48px;top:17px;width:24px;height:24px;background:#102844;box-shadow:0 6px 16px rgba(0,0,0,.24)}
.adm.is-collapsed .adm-nav{align-items:center;padding-left:6px;padding-right:6px}
.adm.is-collapsed .adm-nav-item{justify-content:center;width:42px;height:38px;padding:0;border-radius:10px}
.adm.is-collapsed .adm-nav-item svg{width:18px;height:18px}
.adm.is-collapsed .adm-sidebar-footer{padding:10px 8px}
.adm.is-collapsed .adm-user{justify-content:center}
.adm.is-collapsed .adm-user-logout{display:none}
.adm-content-legacy > .card:first-child{margin-top:0}
@media(max-width:768px){
  .adm-sidebar-toggle{display:none}
  .adm.is-collapsed .adm-sidebar{width:100%}
  .adm.is-collapsed .adm-logo-text,
  .adm.is-collapsed .adm-nav-item span{display:inline}
}

/* VC-7L1K-B — compact Events index */
.adm-events-index-page{padding:18px 20px 28px}
.adm-events-index-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.adm-events-index-head h1{font-size:28px;line-height:1.05;margin:0 0 6px;color:#0F172A}
.adm-events-index-head p{margin:0;color:#64748B;font-size:13px}
.adm-events-index{
  background:#fff;
  border:1px solid #E8ECF2;
  border-radius:14px;
  overflow:hidden;
}
.adm-events-index-labels,
.adm-event-index-row{
  display:grid;
  grid-template-columns:112px minmax(240px,1fr) 170px minmax(180px,.8fr) 130px 84px;
  align-items:center;
  gap:12px;
}
.adm-events-index-labels{
  padding:10px 14px;
  background:#F8FAFC;
  color:#94A3B8;
  font-size:10.5px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
  border-bottom:1px solid #E8ECF2;
}
.adm-event-index-row{
  min-height:54px;
  padding:8px 14px;
  border-bottom:1px solid #EEF2F7;
}
.adm-event-index-row:last-child{border-bottom:none}
.adm-event-index-row:hover{background:#FBFDFF}
.adm-event-date-mini strong{display:block;color:#0F172A;font-size:12px;line-height:1.1}
.adm-event-date-mini span{display:block;color:#64748B;font-size:11px;line-height:1.15;margin-top:2px}
.adm-event-index-main{min-width:0}
.adm-event-index-main h3{
  margin:0;
  color:#0F172A;
  font-size:13.5px;
  line-height:1.18;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.adm-event-index-main p{
  margin:3px 0 0;
  color:#94A3B8;
  font-size:11.5px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.adm-event-index-status{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.adm-event-index-status .pill{font-size:10.5px;padding:4px 8px}
.adm-event-index-access,
.adm-event-index-conf{
  color:#64748B;
  font-size:11.5px;
  line-height:1.25;
  min-width:0;
}
.adm-event-index-actions{display:flex;justify-content:flex-end}
.adm-event-dialog{
  width:min(860px,calc(100vw - 40px));
  border:0;
  border-radius:18px;
  padding:0;
  box-shadow:0 26px 90px rgba(15,23,42,.32);
}
.adm-event-dialog::backdrop{background:rgba(15,23,42,.48);backdrop-filter:blur(3px)}
.adm-event-dialog-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:18px 20px;
  border-bottom:1px solid #E8ECF2;
}
.adm-event-dialog-head h2{font-size:22px;margin:3px 0 4px;color:#0F172A}
.adm-event-dialog-head p{margin:0;color:#64748B}
.adm-action-grid{
  padding:18px 20px 20px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.adm-action-group{
  border:1px solid #E8ECF2;
  border-radius:12px;
  padding:12px;
  background:#FBFDFF;
}
.adm-action-group h3{
  margin:0 0 8px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#94A3B8;
}
.adm-action-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:34px;
  padding:7px 9px;
  border-radius:8px;
  color:#123F6D;
  text-decoration:none;
  font-weight:800;
  font-size:12px;
}
.adm-action-link:hover{background:#EFF6FF}
.adm-dialog-status{
  display:flex;
  align-items:center;
  gap:8px;
  padding:14px 20px;
  border-top:1px solid #E8ECF2;
  background:#F8FAFC;
}
.adm-dialog-status span{font-size:11px;font-weight:850;color:#64748B;text-transform:uppercase;letter-spacing:.06em}
.adm-dialog-status button{padding:7px 10px;font-size:12px}
html[data-theme="dark"] .adm-events-index,
html[data-theme="dark"] .adm-event-dialog,
html[data-theme="dark"] .adm-action-group{background:#1A2233;border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .adm-events-index-labels,
html[data-theme="dark"] .adm-dialog-status{background:#111827;border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .adm-event-index-row{border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .adm-event-index-row:hover{background:#202A3D}
html[data-theme="dark"] .adm-events-index-head h1,
html[data-theme="dark"] .adm-event-index-main h3,
html[data-theme="dark"] .adm-event-date-mini strong,
html[data-theme="dark"] .adm-event-dialog-head h2{color:#fff}
html[data-theme="dark"] .adm-event-dialog-head{border-color:rgba(255,255,255,.08)}
@media(max-width:1120px){
  .adm-events-index-labels{display:none}
  .adm-event-index-row{
    grid-template-columns:88px minmax(0,1fr) auto;
    gap:10px;
  }
  .adm-event-index-status,
  .adm-event-index-access,
  .adm-event-index-conf{display:none}
  .adm-action-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .adm-events-index-head{align-items:flex-start;flex-direction:column}
  .adm-event-index-row{grid-template-columns:1fr auto;align-items:start}
  .adm-event-index-date{display:none}
  .adm-action-grid{grid-template-columns:1fr}
}

/* VC-7L1K-C — compact event time polish */
.adm-event-date-mini strong{font-size:12.5px}
.adm-event-date-mini span{
  color:#64748B;
  font-size:11.5px;
  font-weight:750;
  letter-spacing:0;
  text-transform:uppercase;
}


/* VC-7L1K-D — event workspace navigation */
.adm-event-workspace-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px 18px;
  align-items:start;
  border-color:#D9E5F2;
  background:linear-gradient(180deg,#FFFFFF 0%,#F8FBFF 100%);
}
.adm-event-workspace-main{min-width:0}
.adm-event-workspace-kicker{
  margin-bottom:6px;
  color:#64748B;
  font-size:11px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.adm-event-workspace-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.adm-event-workspace-head h1{margin:0;color:#0F172A;font-size:26px;line-height:1.08;letter-spacing:0}
.adm-event-workspace-head p{margin:4px 0 0;color:#475569}
.adm-event-workspace-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.adm-event-workspace-tabs{
  grid-column:1/-1;
  display:flex;
  gap:6px;
  overflow-x:auto;
  padding-top:12px;
  border-top:1px solid #E8ECF2;
}
.adm-event-workspace-tab{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 11px;
  border:1px solid #DDE7F2;
  border-radius:9px;
  background:#fff;
  color:#123F6D;
  text-decoration:none;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
}
.adm-event-workspace-tab:hover{background:#EFF6FF;border-color:#BFD7F5}
.adm-event-workspace-tab.active{background:#123F6D;border-color:#123F6D;color:#fff;box-shadow:0 8px 20px rgba(18,63,109,.18)}
html[data-theme="dark"] .adm-event-workspace-head{background:#1A2233;border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .adm-event-workspace-head h1{color:#fff}
html[data-theme="dark"] .adm-event-workspace-tabs{border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .adm-event-workspace-tab{background:#111827;border-color:rgba(255,255,255,.1);color:#DBEAFE}
html[data-theme="dark"] .adm-event-workspace-tab.active{background:#2563EB;border-color:#2563EB;color:#fff}
@media(max-width:760px){
  .adm-event-workspace-head{grid-template-columns:1fr}
  .adm-event-workspace-actions{justify-content:flex-start}
  .adm-event-workspace-head h1{font-size:22px}
  .adm-event-workspace-tab{min-height:32px;padding:6px 9px;font-size:11.5px}
}


/* VC-7M-A2 - admin Partners/Clients and replay control polish */
.card .adm-view-tabs{margin-top:14px;margin-bottom:14px}
.replay-public-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}
.replay-public-actions form{display:inline-flex;margin:0}


/* VC-7M-B - glossy public replay console */
body.vc-replay-page{background:#08111f;color:#eef5ff;min-height:100svh;overflow-x:hidden}
body.vc-replay-page main.wrap{max-width:none;width:100%;padding:0;margin:0}
body.vc-replay-page footer{display:none!important}
body.vc-replay-page .vc-theme-toggle{display:flex!important;background:rgba(8,17,31,.78);border-color:rgba(255,255,255,.18);box-shadow:0 14px 42px rgba(0,0,0,.32);backdrop-filter:blur(14px)}
body.vc-replay-page .vc-theme-btn{color:rgba(238,245,255,.72)}
body.vc-replay-page .vc-theme-btn:hover,
body.vc-replay-page .vc-theme-btn.active{background:rgba(255,255,255,.16);color:#fff}
.vc7mb-replay{--rp-accent:var(--replay-accent,var(--brand-button,#ff5a1f));--rp-blue:var(--brand-primary,#123f6d);min-height:100svh;padding:16px clamp(14px,2vw,28px) 28px;background:radial-gradient(circle at 18% 0%,rgba(59,130,246,.26),transparent 34%),radial-gradient(circle at 82% 10%,rgba(255,90,31,.18),transparent 30%),linear-gradient(135deg,#08111f 0%,#111a2b 52%,#07111f 100%);color:#eef5ff}
.replay-topline{height:58px;display:flex;align-items:center;justify-content:space-between;gap:14px;max-width:1540px;margin:0 auto 10px}
.replay-brand-lockup{display:flex;align-items:center;gap:10px;min-width:0}
.replay-brand-lockup img{max-width:128px;max-height:34px;object-fit:contain}
.replay-logo-fallback{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.13);font-weight:900}
.replay-brand-lockup span{display:block;color:rgba(238,245,255,.72);font-size:12px;font-weight:750}
.replay-brand-lockup strong{display:block;color:#fff;font-size:16px;line-height:1.1}
.replay-badge{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);border-radius:999px;padding:8px 12px;color:#fff;font-size:12px;font-weight:850;box-shadow:inset 0 1px 0 rgba(255,255,255,.15)}
.replay-console{max-width:1540px;margin:0 auto;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:rgba(255,255,255,.075);box-shadow:0 28px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.16);backdrop-filter:blur(18px);overflow:hidden}
.replay-titlebar{min-height:76px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(255,255,255,.1)}
.replay-titlebar h1{margin:0;color:#fff;font-size:clamp(20px,2.4vw,34px);line-height:1.05;letter-spacing:0;max-width:980px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.replay-titlebar p{margin:5px 0 0;color:rgba(238,245,255,.66);font-size:13px}
.replay-now-chip{display:grid;gap:2px;justify-items:end;min-width:130px}
.replay-now-chip span{color:rgba(238,245,255,.64);font-size:12px;font-weight:800}
.replay-now-chip strong{color:#fff;font-size:22px;line-height:1}
.replay-console-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:14px 14px 0;align-items:stretch}
.replay-console-grid.has-side{grid-template-columns:minmax(0,1fr) minmax(300px,390px)}
.replay-primary{min-width:0;display:grid;grid-template-rows:auto auto}
.replay-stage{padding:0}
.replay-stage .replay-stage-surface{aspect-ratio:16/9;min-height:0;height:min(64svh,calc((100vw - 72px) * .5625));max-height:680px;border-radius:18px!important;overflow:hidden;background:#050914!important;border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.replay-stage-surface .presentation-slide-image{width:100%;height:100%;object-fit:contain;background:#050914}
.replay-stage-surface .presentation-empty{color:rgba(238,245,255,.72)}
.replay-cc-caption{left:50%!important;bottom:24px!important;transform:translateX(-50%)!important;width:min(88%,980px)!important;padding:12px 16px!important;border-radius:16px!important;background:rgba(5,9,20,.78)!important;color:#fff!important;font-size:clamp(15px,1.55vw,22px)!important;font-weight:850!important;text-align:center!important;box-shadow:0 18px 46px rgba(0,0,0,.34)!important;backdrop-filter:blur(12px)}
.replay-control-deck{display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto 112px;align-items:center;gap:12px;padding:14px 16px 16px}
.replay-play,.replay-tool{border:1px solid rgba(255,255,255,.14);color:#fff;cursor:pointer;font-family:inherit}
.replay-play{display:inline-flex;align-items:center;gap:9px;min-height:44px;border-radius:999px;padding:0 18px;background:linear-gradient(180deg,rgba(255,255,255,.20),rgba(255,255,255,.09));font-weight:950;box-shadow:0 12px 28px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.18);backdrop-filter:blur(14px)}
.replay-play span{font-size:13px}
.replay-tool{min-height:38px;border-radius:999px;padding:0 12px;background:rgba(255,255,255,.09);font-size:12px;font-weight:900}
.replay-tool[aria-pressed="true"]{background:#fff;color:#07111f}
.replay-progress-wrap{display:grid;gap:6px}
.replay-progress,.replay-volume{accent-color:#dbe6f6;width:100%}
.replay-time-row{display:flex;justify-content:space-between;color:rgba(238,245,255,.64);font-size:11px;font-weight:800}
.replay-chapter-rail{max-width:1540px;margin:12px auto 0}
.replay-chapter-list{display:flex;gap:8px;overflow-x:auto;padding:4px 1px 8px}
.replay-chapter-list button{flex:0 0 auto;min-width:170px;max-width:260px;text-align:left;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:10px 12px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.replay-chapter-list button:hover{background:rgba(255,255,255,.13);transform:translateY(-1px)}
.replay-chapter-list button strong{display:block;color:#fff;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.replay-chapter-list button span{display:block;margin-top:4px;color:rgba(238,245,255,.58);font-size:11px;font-weight:850}
.replay-side-panel{min-width:0;max-height:min(64svh,680px);overflow:auto;display:grid;gap:10px;align-content:start;padding-right:2px}
.replay-detail-grid{display:none}
.replay-detail-panel{border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.12);overflow:hidden}
.replay-detail-panel summary{cursor:pointer;list-style:none;padding:14px 16px;color:#fff;font-weight:950}
.replay-detail-panel summary::-webkit-details-marker{display:none}
.replay-detail-panel>*:not(summary){margin:0 16px 16px}
.replay-detail-panel .small{color:rgba(238,245,255,.64)!important}
.replay-ai-summary{border:0!important;border-radius:14px!important;background:rgba(255,255,255,.07)!important;color:rgba(238,245,255,.82)!important}
.replay-ai-summary h3{color:#fff!important}
.replay-ai-summary ul{color:rgba(238,245,255,.74)!important}
.replay-transcript{max-height:calc(min(64svh,680px) - 68px);overflow:auto;display:grid;gap:7px}
.replay-transcript button{display:grid;grid-template-columns:58px 1fr;gap:10px;width:100%;text-align:left;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:9px 10px;background:rgba(255,255,255,.06);color:rgba(238,245,255,.84);cursor:pointer}
.replay-transcript button:hover{background:rgba(255,255,255,.1)}
.replay-transcript span{color:#fff;font-weight:950}
@media(max-width:860px){
  .vc7mb-replay{padding:10px 10px 22px}
  .replay-topline{height:auto;margin-bottom:8px}
  .replay-badge{display:none}
  .replay-titlebar{align-items:flex-start;flex-direction:column}
  .replay-titlebar h1{white-space:normal;font-size:22px}
  .replay-now-chip{justify-items:start}
  .replay-console-grid,
  .replay-console-grid.has-side{grid-template-columns:1fr;padding:10px 10px 0}
  .replay-stage .replay-stage-surface{height:auto;min-height:260px}
  .replay-control-deck{grid-template-columns:1fr auto auto;gap:10px}
  .replay-play{grid-column:1/2}
  .replay-progress-wrap{grid-column:1/-1;grid-row:2}
  .replay-volume{grid-column:1/-1}
  .replay-side-panel{max-height:none;overflow:visible;padding-right:0}
  .replay-transcript{max-height:260px}
}

/* VC-7M/H10G17 - replay inside embed iframe */
body.vc-replay-embed-page{
  width:100vw;
  height:100vh;
  min-height:100vh;
  margin:0;
  overflow:hidden;
  background:#050914;
}
body.vc-replay-embed-page main.wrap{
  width:100vw;
  height:100vh;
  max-width:none;
  margin:0;
  padding:0;
}
body.vc-replay-embed-page .vc-theme-toggle,
body.vc-replay-embed-page footer{
  display:none!important;
}
.vc7mb-replay-embed{
  width:100vw;
  height:100vh;
  min-height:0;
  padding:0;
  overflow:hidden;
  background:#050914;
}
.vc7mb-replay-embed .replay-console{
  width:100%;
  height:100%;
  max-width:none;
  margin:0;
  border:0;
  border-radius:0;
  background:#050914;
  box-shadow:none;
  overflow:hidden;
}
.vc7mb-replay-embed .replay-console-grid,
.vc7mb-replay-embed .replay-console-grid.has-side{
  display:block;
  width:100%;
  height:100%;
  padding:0;
}
.vc7mb-replay-embed .replay-primary{
  position:relative;
  display:block;
  width:100%;
  height:100%;
}
.vc7mb-replay-embed .replay-stage,
.vc7mb-replay-embed .replay-stage .replay-stage-surface{
  position:absolute;
  inset:0;
  width:100%;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.vc7mb-replay-embed .replay-control-deck{
  position:absolute;
  left:50%;
  bottom:0;
  transform:translate(-50%,14px);
  z-index:10;
  display:grid;
  grid-template-columns:auto minmax(88px,180px) auto minmax(72px,116px);
  align-items:center;
  gap:7px;
  width:auto;
  max-width:calc(100vw - 18px);
  padding:6px 8px calc(6px + env(safe-area-inset-bottom));
  background:transparent;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease;
}
.vc7mb-replay-embed:hover .replay-control-deck,
.vc7mb-replay-embed:focus-within .replay-control-deck,
.vc7mb-replay-embed .replay-control-deck:hover{
  opacity:1;
  pointer-events:auto;
  transform:translate(-50%,0);
}
.vc7mb-replay-embed .replay-play{
  min-height:34px;
  min-width:34px;
  width:34px;
  padding:0;
  justify-content:center;
  gap:0;
  box-shadow:0 10px 24px rgba(0,0,0,.28);
}
.vc7mb-replay-embed .replay-play strong{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
}
.vc7mb-replay-embed .replay-progress-wrap{
  min-width:88px;
}
.vc7mb-replay-embed .replay-time-row{
  display:none;
}
.vc7mb-replay-embed .replay-tool{
  min-height:27px;
  padding:0 10px;
  border-color:rgba(255,255,255,.20);
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07));
  box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.13);
  backdrop-filter:blur(14px);
}
.vc7mb-replay-embed .replay-tool[aria-pressed="true"]{
  background:rgba(255,255,255,.22);
  color:#fff;
}
.vc7mb-replay-embed .replay-volume{
  width:clamp(72px,14vw,116px);
}
@media(hover:none){
  .vc7mb-replay-embed .replay-control-deck{
    opacity:1;
    pointer-events:auto;
    transform:translate(-50%,0);
  }
}

/* VC-7M-B7 - clean replay summary/transcript scroll */
.replay-control-deck{grid-template-columns:auto minmax(180px,1fr) auto 112px}
.replay-cc-caption{display:none!important}

body.vc-replay-page .replay-console-grid.has-side .replay-side-panel{
  height:min(64svh,680px)!important;
  max-height:min(64svh,680px)!important;
  overflow:visible!important;
  display:grid!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-content:stretch!important;
  padding-right:2px!important;
}
body.vc-replay-page .replay-side-panel:has(.replay-transcript-panel[open]){
  grid-template-rows:minmax(0,1fr) minmax(0,1fr)!important;
}
body.vc-replay-page .replay-detail-panel{
  min-height:0!important;
  overflow:hidden!important;
  display:block!important;
}
body.vc-replay-page .replay-detail-panel[open]{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
}
body.vc-replay-page .replay-detail-panel:not([open]){
  min-height:auto!important;
  overflow:visible!important;
}
body.vc-replay-page .replay-detail-panel summary{
  cursor:pointer!important;
  user-select:none!important;
}
body.vc-replay-page .replay-detail-panel summary::after{
  content:'Collapse';
  float:right;
  color:rgba(238,245,255,.58);
  font-size:11px;
  font-weight:850;
}
body.vc-replay-page .replay-detail-panel:not([open]) summary::after{content:'Expand'}
body.vc-replay-page .replay-panel-scroll{
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  margin:0 16px 16px!important;
  padding-right:4px!important;
  -webkit-overflow-scrolling:touch;
}
body.vc-replay-page .replay-panel-scroll .replay-ai-summary,
body.vc-replay-page .replay-panel-scroll .replay-transcript{
  max-height:none!important;
  overflow:visible!important;
  margin:0!important;
}
body.vc-replay-page .replay-transcript button.active{
  border-color:rgba(255,255,255,.52)!important;
  background:rgba(255,255,255,.18)!important;
  color:#fff!important;
}

body.vc-replay-page .replay-chapter-list button{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:rgba(8,17,31,.84)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 12px 26px rgba(0,0,0,.12)!important;
}
body.vc-replay-page .replay-chapter-list button strong{color:#fff!important}
body.vc-replay-page .replay-chapter-list button span{color:rgba(238,245,255,.7)!important}

html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page{background:#edf3f8;color:#0f172a}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .vc7mb-replay{background:linear-gradient(135deg,#f7fbff 0%,#eef4fa 52%,#e9f0f8 100%);color:#0f172a}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-console{background:rgba(255,255,255,.74);border-color:rgba(15,23,42,.1);box-shadow:0 28px 80px rgba(15,23,42,.14),inset 0 1px 0 rgba(255,255,255,.78)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-detail-panel{background:rgba(255,255,255,.78);border-color:rgba(15,23,42,.1)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-titlebar h1,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-now-chip strong,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-detail-panel summary,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-ai-summary h3,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-transcript span{color:#0f172a!important}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-detail-panel summary::after{color:rgba(15,23,42,.5)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-ai-summary{background:rgba(248,250,252,.88)!important;color:rgba(15,23,42,.76)!important}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-transcript button{background:rgba(15,23,42,.045);border-color:rgba(15,23,42,.1);color:rgba(15,23,42,.78)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .replay-transcript button.active{background:rgba(15,23,42,.1)!important;border-color:rgba(15,23,42,.24)!important;color:#0f172a!important}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-chapter-list button{background:#fff!important;border-color:rgba(15,23,42,.18)!important;color:#0f172a!important;box-shadow:0 12px 24px rgba(15,23,42,.12)!important}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-chapter-list button strong{color:#0f172a!important}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-chapter-list button span{color:rgba(15,23,42,.58)!important}

@media(max-width:1180px){
  .replay-console-grid.has-side{grid-template-columns:1fr}
  body.vc-replay-page .replay-console-grid.has-side .replay-side-panel{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    grid-template-rows:auto!important;
  }
  body.vc-replay-page .replay-panel-scroll{max-height:280px!important}
}
@media(max-width:860px){
  body.vc-replay-page .replay-control-deck{grid-template-columns:1fr auto!important;gap:10px}
  body.vc-replay-page .replay-volume{grid-column:1/-1!important}
}

/* VC-7M-C3 - replay light mode contrast + panel scroll/collapse repair */
body.vc-replay-page .replay-console-grid.has-side .replay-side-panel{
  display:flex!important;
  flex-direction:column!important;
  height:min(64svh,680px)!important;
  max-height:min(64svh,680px)!important;
  overflow:hidden!important;
  gap:10px!important;
  align-content:stretch!important;
  padding-right:2px!important;
}
body.vc-replay-page .replay-detail-panel{
  flex:0 0 auto!important;
  min-height:0!important;
  overflow:hidden!important;
  display:block!important;
}
body.vc-replay-page .replay-detail-panel[open]{
  flex:1 1 0!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
}
body.vc-replay-page .replay-detail-panel:not([open]){
  flex:0 0 auto!important;
  min-height:auto!important;
}
body.vc-replay-page .replay-detail-panel summary{
  flex:0 0 auto!important;
}
body.vc-replay-page .replay-panel-scroll{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  margin:0 16px 16px!important;
  padding-right:4px!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
}
body.vc-replay-page .replay-panel-scroll .replay-ai-summary,
body.vc-replay-page .replay-panel-scroll .replay-transcript{
  max-height:none!important;
  overflow:visible!important;
  margin:0!important;
}
body.vc-replay-page .replay-transcript button.active{
  scroll-margin-top:10px;
}

html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-brand-lockup span{
  color:rgba(15,23,42,.66)!important;
}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-brand-lockup strong{
  color:#0f172a!important;
}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-badge{
  color:#0f172a!important;
  background:rgba(255,255,255,.72)!important;
  border-color:rgba(15,23,42,.12)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-ai-summary,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-ai-summary p,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-ai-summary ul,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-ai-summary ol,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-ai-summary li{
  color:rgba(15,23,42,.76)!important;
}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) body.vc-replay-page .replay-ai-summary li::marker{
  color:rgba(15,23,42,.58)!important;
}

@media(max-width:1180px){
  body.vc-replay-page .replay-console-grid.has-side .replay-side-panel{
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.vc-replay-page .replay-detail-panel[open]{
    flex:0 0 auto!important;
  }
  body.vc-replay-page .replay-panel-scroll{
    max-height:320px!important;
  }
}

/* VC-7M-F1 - no-slides branded title/countdown fallback */
.vc-stage-title-fallback{
  width:min(720px,92%);
  min-height:min(360px,72%);
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:clamp(24px,5vw,54px);
  border-radius:24px;
  text-align:center;
  color:#fff;
  background:
    radial-gradient(520px 260px at 50% 0%, color-mix(in srgb, var(--brand-secondary, #FF5A1F) 24%, transparent), transparent 68%),
    linear-gradient(145deg, color-mix(in srgb, var(--brand-primary, #123F6D) 34%, #050A14), #050A14 72%);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 28px 80px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08);
}
.vc-stage-title-kicker{
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:11px;
  font-weight:900;
  color:color-mix(in srgb, var(--brand-secondary, #FF8C5A) 72%, #fff);
}
.vc-stage-title-fallback h2{
  margin:0;
  max-width:920px;
  font-size:clamp(24px,4vw,46px);
  line-height:1.03;
  letter-spacing:-.045em;
  color:#fff;
}
.vc-stage-title-when{
  margin:2px 0 0;
  max-width:780px;
  font-size:clamp(13px,1.7vw,17px);
  font-weight:800;
  color:rgba(238,245,255,.78);
}
.vc-stage-fallback-message{
  margin:0;
  max-width:640px;
  font-size:13px;
  font-weight:700;
  color:rgba(238,245,255,.56);
}
.vc-stage-countdown{
  margin-top:8px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}
.vc-stage-countdown span{
  font-size:10.5px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:rgba(238,245,255,.52);
}
.vc-stage-countdown strong{
  font-size:13px;
  font-weight:950;
  color:#fff;
  font-variant-numeric:tabular-nums;
}
.vc-watch-stage .presentation-empty,
.pres-stage .presentation-empty,
.aw2-stage .presentation-empty{
  padding:18px;
  text-align:center;
}
.console-no-slide .vc-stage-title-fallback{
  width:100%;
  min-height:260px;
}
@media(max-width:720px){
  .vc-stage-title-fallback{width:96%;min-height:300px;border-radius:18px;padding:24px 18px}
  .vc-stage-title-fallback h2{font-size:24px}
}

/* VC-7M-I1 - simplified live control panel */
.vc-live-control-panel{border:1px solid var(--border);box-shadow:0 18px 48px rgba(15,23,42,.08)}
.vc-live-control-heading h2{font-size:clamp(24px,3vw,38px);margin:8px 0 4px;letter-spacing:-.04em}
.vc-live-control-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.vc-live-control-status>div{border:1px solid var(--border);border-radius:16px;padding:13px 15px;background:rgba(248,250,252,.8)}
.vc-live-control-status strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.vc-live-control-status span{display:block;margin-top:5px;font-weight:850;color:var(--text)}
.vc-live-control-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.vc-live-control-actions form{border:1px solid var(--border);border-radius:20px;padding:14px;background:#fff;min-height:190px;display:flex;flex-direction:column;justify-content:space-between}
.vc-live-control-actions p{font-size:13px;color:var(--text-muted);line-height:1.42;margin:10px 0 0}
.vc-live-control-button{width:100%;border-radius:18px;border:0;padding:18px 14px;font-weight:950;font-size:17px;letter-spacing:.02em;cursor:pointer}
.vc-live-control-button.connect{background:#16A34A;color:#fff}
.vc-live-control-button.kill{background:#B42318;color:#fff}
.vc-live-control-button.reset{background:#F59E0B;color:#111827}
.vc-live-control-button:disabled{opacity:.45;cursor:not-allowed}
.vc-live-control-advanced{margin-top:20px;border-top:1px solid var(--border);padding-top:12px}
.vc-live-control-advanced summary{font-weight:850;cursor:pointer;color:var(--text-muted)}
@media(max-width:980px){.vc-live-control-status,.vc-live-control-actions{grid-template-columns:1fr}.vc-live-control-actions form{min-height:auto}}

/* VC-7M/H10G15 - minimal responsive embed player */
body.embed-page{
  width:100vw;
  height:100vh;
  min-height:100vh;
  margin:0;
  overflow:hidden;
  background:#050914;
}
body.embed-page main.wrap{
  width:100vw;
  height:100vh;
  max-width:none;
  margin:0;
  padding:0;
}
body.embed-page .vc-theme-toggle,
body.embed-page footer{
  display:none!important;
}
.embed-minimal-player{
  width:100vw;
  height:100vh;
  min-height:0;
  display:block;
  position:relative;
  overflow:hidden;
  background:#050914;
  color:#fff;
  font-family:'Inter',sans-serif;
}
.embed-minimal-inner{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#050914;
}
.embed-minimal-stage{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  background:#050914;
}
.embed-minimal-slide{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.embed-minimal-state{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:clamp(16px,4vw,48px);
  text-align:center;
  background:#050914;
  color:rgba(238,245,255,.68);
  z-index:2;
}
.embed-minimal-state[hidden],
.embed-dvr-controls[hidden],
.embed-replay-frame[hidden],
.embed-minimal-captions[hidden]{
  display:none!important;
}
.embed-minimal-state strong{
  max-width:min(780px,88vw);
  font-size:clamp(18px,3.2vw,38px);
  line-height:1.08;
  font-weight:900;
  color:#fff;
}
.embed-minimal-state span{
  max-width:min(620px,86vw);
  font-size:clamp(11px,1.8vw,15px);
  line-height:1.4;
  font-weight:650;
}
.embed-minimal-end{
  background:rgba(5,9,20,.92);
  z-index:7;
}
.embed-replay-frame{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:#050914;
  z-index:6;
}
.embed-minimal-controls{
  position:absolute;
  left:50%;
  bottom:0;
  transform:translate(-50%,14px);
  z-index:10;
  display:flex;
  align-items:center;
  gap:7px;
  max-width:calc(100vw - 18px);
  padding:6px 8px calc(6px + env(safe-area-inset-bottom));
  border:0;
  border-radius:999px;
  background:transparent;
  box-shadow:none;
  backdrop-filter:blur(12px);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease;
}
.embed-minimal-player:hover .embed-minimal-controls,
.embed-minimal-player:focus-within .embed-minimal-controls,
.embed-minimal-controls:hover{
  opacity:1;
  pointer-events:auto;
  transform:translate(-50%,0);
}
.embed-icon-btn,
.embed-cc-btn,
.embed-mode-btn{
  appearance:none;
  border:0;
  font-family:inherit;
  cursor:pointer;
}
.embed-icon-btn{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
  background:linear-gradient(180deg,rgba(255,255,255,.20),rgba(255,255,255,.09));
  box-shadow:0 10px 28px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.22);
  backdrop-filter:blur(14px);
}
.embed-icon-btn:hover{background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,.13))}
.branded-attendee-page.embed-minimal-player .embed-icon-btn{
  background:linear-gradient(180deg,rgba(255,255,255,.20),rgba(255,255,255,.09))!important;
  box-shadow:0 10px 28px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
.branded-attendee-page.embed-minimal-player .embed-icon-btn:hover{
  background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,.13))!important;
}
.embed-icon-btn svg{
  width:16px;
  height:16px;
}
.embed-volume-control{
  display:flex;
  align-items:center;
  width:clamp(74px,14vw,142px);
  min-width:74px;
  height:28px;
  padding:0 3px;
}
.embed-volume-control input{
  width:100%;
  height:4px;
  accent-color:#dbe6f6;
  cursor:pointer;
}
.embed-dvr-controls{
  display:flex;
  align-items:center;
  gap:3px;
  padding:2px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(10,16,28,.42);
  box-shadow:0 10px 26px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(14px);
}
.embed-mode-btn{
  min-width:58px;
  min-height:25px;
  padding:4px 9px;
  border-radius:999px;
  background:transparent;
  color:rgba(255,255,255,.58);
  font-size:10.2px;
  font-weight:850;
  white-space:nowrap;
}
.branded-attendee-page.embed-minimal-player .embed-mode-btn,
.branded-attendee-page.embed-minimal-player .embed-cc-btn{
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07))!important;
}
.embed-mode-btn.active{
  background:rgba(255,255,255,.18);
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.embed-icon-btn:disabled,
.embed-mode-btn:disabled,
.embed-volume-control input:disabled{
  cursor:not-allowed;
  opacity:.48;
}
.embed-mode-btn:disabled{
  color:rgba(255,255,255,.38);
}
.branded-attendee-page.embed-minimal-player .embed-mode-btn.active,
.branded-attendee-page.embed-minimal-player .embed-cc-btn.on{
  background:rgba(255,255,255,.22)!important;
}
.embed-cc-btn{
  min-width:32px;
  height:27px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.22);
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07));
  color:rgba(255,255,255,.76);
  font-size:10px;
  font-weight:900;
  box-shadow:0 10px 26px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.13);
  backdrop-filter:blur(14px);
}
.embed-cc-btn.on{
  background:rgba(255,255,255,.22);
  color:#fff;
  border-color:rgba(255,255,255,.36);
}
.embed-status{
  max-width:108px;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(10,16,28,.34);
  color:rgba(255,255,255,.56);
  font-size:10.5px;
  font-weight:750;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.embed-minimal-captions{
  position:absolute;
  left:50%;
  bottom:calc(clamp(72px,10vh,108px) + env(safe-area-inset-bottom));
  transform:translateX(-50%);
  z-index:9;
  width:min(88%,920px);
  max-height:30%;
  overflow:hidden;
  padding:10px 14px;
  border-radius:14px;
  background:var(--vc-stage-caption-bg,rgba(15,23,42,.82));
  color:var(--vc-stage-caption-text,#fff);
  font-size:clamp(15px,1.8vw,22px);
  font-weight:700;
  line-height:1.35;
  text-align:center;
  box-shadow:0 16px 38px rgba(0,0,0,.24);
  backdrop-filter:blur(12px);
}
.embed-minimal-captions,
.embed-minimal-captions *{
  color:#fff!important;
}
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
@media(max-width:520px),(max-height:360px){
  .embed-minimal-controls{
    gap:5px;
    padding:5px 6px calc(5px + env(safe-area-inset-bottom));
  }
  .embed-status{
    display:none;
  }
  .embed-volume-control{
    width:70px;
    min-width:70px;
  }
  .embed-mode-btn{
    min-width:36px;
    padding-inline:7px;
  }
  .embed-minimal-captions{
    bottom:calc(70px + env(safe-area-inset-bottom));
    width:min(92%,920px);
    font-size:clamp(13px,3.8vw,18px);
    padding:8px 11px;
  }
}
@media(max-width:340px){
  .embed-mode-btn{
    font-size:0;
  }
  .embed-mode-btn::after{
    content:attr(data-short-label);
    font-size:10px;
  }
}
@media(hover:none){
  .embed-minimal-controls{
    opacity:1;
    pointer-events:auto;
    transform:translate(-50%,0);
  }
}

/* VC-7M/H10G25 - Producer control room */
.producer-room{
  --producer-bg:#070A12;
  --producer-panel:rgba(17,24,39,.72);
  --producer-line:rgba(255,255,255,.12);
  --producer-text:#F8FAFC;
  --producer-muted:#AAB4C5;
  --producer-accent:#7DD3FC;
  --producer-good:#34D399;
  --producer-warn:#FBBF24;
  --producer-danger:#F87171;
  display:grid;
  grid-template-columns:minmax(210px,270px) minmax(0,1fr);
  gap:12px;
  min-height:calc(100vh - 190px);
  padding:12px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:8px;
  background:linear-gradient(145deg,rgba(14,165,233,.12),transparent 32%),linear-gradient(315deg,rgba(52,211,153,.1),transparent 38%),var(--producer-bg);
  box-shadow:0 24px 70px rgba(2,6,23,.2);
}
.producer-room *,.producer-room *::before,.producer-room *::after{box-sizing:border-box}
.producer-deck,.producer-panel,.producer-hero,.producer-stage-panel{
  border:1px solid var(--producer-line);
  border-radius:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 44px rgba(0,0,0,.18);
  backdrop-filter:blur(22px) saturate(150%);
}
.producer-deck{min-height:0;padding:12px;display:flex;flex-direction:column;gap:10px}
.producer-main{min-width:0;display:flex;flex-direction:column;gap:12px}
.producer-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.producer-panel-head.compact{align-items:center;margin-bottom:10px}
.producer-panel-head h2,.producer-hero h1,.producer-stage-meta h2,.producer-qna-columns h3{color:var(--producer-text);letter-spacing:0;margin:0}
.producer-panel-head h2{font-size:20px;line-height:1.08}
.producer-panel-head p,.producer-hero p,.producer-stage-meta p,.producer-action-grid p,.producer-empty-note{color:var(--producer-muted);margin:5px 0 0;font-size:12.5px;line-height:1.45}
.producer-eyebrow{display:block;color:var(--producer-accent);font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.producer-link{color:#BAE6FD;font-size:12px;font-weight:850;text-decoration:none;white-space:nowrap}
.producer-link:hover{text-decoration:underline}
.producer-thumb-list{display:flex;flex-direction:column;gap:8px;overflow:auto;min-height:0;padding-right:2px}
.producer-thumb.console-thumb{width:100%;border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.045);color:var(--producer-text)}
.producer-thumb.console-thumb:hover{background:rgba(125,211,252,.12);border-color:rgba(125,211,252,.4)}
.producer-thumb.console-thumb.is-current{background:rgba(52,211,153,.13);border-color:rgba(52,211,153,.48)}
.producer-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,420px);gap:12px;padding:16px;align-items:center}
.producer-hero h1{font-size:clamp(26px,3vw,42px);line-height:1.02;margin:8px 0 6px}
.producer-hero-metrics,.producer-state-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.producer-metric{min-width:0;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.055);padding:10px 11px}
.producer-metric span,.producer-metric small{display:block;color:var(--producer-muted);font-size:11px;line-height:1.25}
.producer-metric strong{display:block;color:var(--producer-text);font-size:19px;line-height:1.15;margin:4px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.producer-metric.good strong{color:var(--producer-good)}
.producer-metric.warn strong{color:var(--producer-warn)}
.producer-metric.danger strong{color:var(--producer-danger)}
.producer-stage-panel{overflow:hidden}
.producer-stage{width:100%;aspect-ratio:16/9;min-height:320px;display:flex;align-items:center;justify-content:center;background:#020617}
.producer-stage img{width:100%;height:100%;object-fit:contain;display:block;background:#020617}
.producer-no-slide{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:20px}
.producer-stage-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 14px;border-top:1px solid var(--producer-line);background:rgba(2,6,23,.36)}
.producer-stage-meta span{color:#BAE6FD;font-size:12px;font-weight:900}
.producer-stage-meta h2{font-size:22px;margin:4px 0;overflow-wrap:anywhere}
.producer-slide-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.producer-btn,.producer-mini-btn{border:1px solid rgba(255,255,255,.16);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07));color:var(--producer-text);cursor:pointer;font-weight:900;min-height:38px;padding:9px 13px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 10px 24px rgba(0,0,0,.18)}
.producer-btn:hover,.producer-mini-btn:hover{background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.1))}
.producer-btn:disabled,.producer-mini-btn:disabled{opacity:.42;cursor:not-allowed}
.producer-btn-primary{border-color:rgba(125,211,252,.38);background:linear-gradient(180deg,rgba(125,211,252,.26),rgba(59,130,246,.16))}
.producer-btn-muted{background:linear-gradient(180deg,rgba(148,163,184,.2),rgba(148,163,184,.08))}
.producer-btn-danger{border-color:rgba(248,113,113,.42);background:linear-gradient(180deg,rgba(248,113,113,.24),rgba(127,29,29,.22))}
.producer-mini-btn{min-height:30px;padding:6px 9px;font-size:11px}
.producer-mini-btn.muted{color:#CBD5E1;background:rgba(255,255,255,.06)}
.producer-lower-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:12px}
.producer-panel{padding:14px;min-width:0}
.producer-live-panel,.producer-qna-panel{grid-column:1/-1}
.producer-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.producer-action-grid form{margin:0;min-height:128px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.045);padding:10px}
.producer-action-grid .producer-btn{width:100%}
.producer-state-row{margin-top:12px}
.producer-qna-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.producer-qna-columns h3{font-size:14px;margin:0 0 8px}
.producer-question{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.045);padding:10px;margin-bottom:8px}
.producer-question p{color:var(--producer-text);font-size:13px;line-height:1.4;margin:3px 0}
.producer-question small,.producer-question-meta{display:block;color:var(--producer-muted);font-size:11px}
.producer-question form{display:flex;gap:6px;margin:0;align-items:center}
.producer-alerts{grid-template-columns:1fr}
.producer-emergency-panel{grid-column:1/-1;border:1px dashed rgba(125,211,252,.28);border-radius:8px;padding:14px;background:rgba(14,165,233,.07)}
.producer-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.producer-copy-grid label{color:var(--producer-muted);font-size:12px;font-weight:800}
.producer-copy-grid input{margin-top:4px;width:100%;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:rgba(2,6,23,.5);color:var(--producer-text);padding:9px 10px}
@media(max-width:1180px){
  .producer-room{grid-template-columns:1fr}
  .producer-deck{max-height:250px}
  .producer-thumb-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
  .producer-lower-grid{grid-template-columns:1fr}
}
@media(max-width:820px){
  .producer-room{padding:8px}
  .producer-hero,.producer-stage-meta,.producer-qna-columns{grid-template-columns:1fr}
  .producer-hero-metrics,.producer-state-row,.producer-action-grid,.producer-copy-grid{grid-template-columns:1fr}
  .producer-slide-actions{justify-content:flex-start}
  .producer-stage{min-height:220px}
}

.producer-room.producer-compact{
  --producer-bg:#070A12;
  --producer-panel:rgba(17,24,39,.68);
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:calc(100vh - 96px);
  padding:10px;
}
.producer-top-controls{
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto auto minmax(220px,.9fr);
  gap:10px;
  align-items:center;
  border:1px solid var(--producer-line);
  border-radius:8px;
  padding:10px;
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 18px 38px rgba(0,0,0,.18);
}
.producer-event-summary{display:flex;align-items:center;gap:10px;min-width:0}
.producer-event-summary h1{color:var(--producer-text);font-size:18px;line-height:1.1;margin:0;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.producer-event-summary p{color:var(--producer-muted);font-size:11.5px;margin:3px 0 0;line-height:1.25}
.producer-control-strip,.producer-mode-group{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:center}
.producer-control-form,.producer-mode-group form{margin:0}
.producer-mode-group{padding:4px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(2,6,23,.34)}
.producer-mode-btn{min-height:31px;border:1px solid transparent;border-radius:7px;padding:6px 9px;color:var(--producer-muted);background:transparent;font-size:11px;font-weight:900;cursor:pointer}
.producer-mode-btn:hover,.producer-mode-btn.active{color:var(--producer-text);border-color:rgba(125,211,252,.28);background:linear-gradient(180deg,rgba(255,255,255,.17),rgba(255,255,255,.07))}
.producer-mode-btn:disabled{opacity:.42;cursor:not-allowed}
.producer-top-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.producer-top-metrics .producer-metric{padding:7px 8px}
.producer-top-metrics .producer-metric strong{font-size:16px}
.producer-link-strip{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;border:1px solid rgba(125,211,252,.22);border-radius:8px;padding:9px 10px;background:rgba(14,165,233,.07)}
.producer-link-strip label{color:var(--producer-muted);font-size:11px;font-weight:850}
.producer-link-strip input{display:block;width:100%;margin-top:4px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(2,6,23,.55);color:var(--producer-text);padding:8px 9px}
.producer-compact-grid{display:grid;grid-template-columns:108px minmax(420px,1fr) minmax(300px,380px);gap:10px;flex:1;min-width:0}
.producer-compact .producer-deck{max-height:calc(100vh - 202px);padding:8px}
.producer-compact .producer-thumb-list{gap:6px;padding:0}
.producer-compact .producer-thumb.console-thumb{min-height:62px;padding:4px;border-radius:8px}
.producer-compact .producer-thumb.console-thumb img{height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:6px}
.producer-compact .producer-thumb.console-thumb .console-thumb-title{font-size:9.5px;line-height:1.15;margin-top:3px;max-height:22px;overflow:hidden}
.producer-compact .producer-thumb.console-thumb.is-current{border-color:rgba(52,211,153,.86);box-shadow:0 0 0 2px rgba(52,211,153,.2)}
.producer-compact .producer-main{gap:0}
.producer-compact .producer-stage-panel{height:100%;display:flex;flex-direction:column}
.producer-compact .producer-stage{min-height:0;flex:1;aspect-ratio:auto}
.producer-compact .producer-stage-meta{padding:10px 12px}
.producer-compact .producer-stage-meta h2{font-size:18px}
.producer-side-stack{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0}
.producer-runtime-compact{flex:0 0 auto}
.producer-runtime-compact .producer-state-row{grid-template-columns:1fr;gap:7px;margin-top:0}
.producer-alerts{margin-top:8px}
.producer-qna-popdown{flex:1;min-height:56px;overflow:auto}
.producer-qna-popdown summary{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--producer-text);font-size:15px;font-weight:950;cursor:pointer;list-style:none}
.producer-qna-popdown summary::-webkit-details-marker{display:none}
.producer-qna-popdown summary small{color:var(--producer-muted);font-size:11px}
.producer-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:999px;background:#DC2626;color:#fff;font-size:11px;line-height:1}
.producer-badge-cool{background:#2563EB}
.producer-qna-popdown .producer-qna-columns{grid-template-columns:1fr;margin-top:12px}
.producer-compact .producer-question{grid-template-columns:1fr}
.producer-compact .producer-question form{justify-content:flex-start}
.producer-lcm-freshness{
  margin:10px 0 0;
  color:var(--producer-muted);
  font-size:10.8px;
  line-height:1.35;
}
.producer-qna-popdown .producer-verbal-columns{grid-template-columns:1fr;align-items:start}
.producer-verbal-columns section{min-width:0}
.producer-lcm-table{
  display:grid;
  gap:2px;
  margin-top:8px;
}
.producer-lcm-sortable .producer-lcm-person{
  cursor:grab;
}
.producer-lcm-sortable .producer-lcm-person:active{
  cursor:grabbing;
}
.producer-lcm-person.is-dragging{
  opacity:.58;
  transform:scale(.995);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}
.producer-lcm-head{
  display:grid;
  grid-template-columns:26px minmax(0,1.15fr) minmax(76px,.85fr) max-content;
  gap:5px;
  align-items:center;
  padding:0 5px 2px;
  color:var(--producer-muted);
  font-size:9px;
  font-weight:950;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.producer-lcm-person{
  display:grid;
  grid-template-columns:26px minmax(0,1.15fr) minmax(76px,.85fr) max-content;
  align-items:center;
  gap:5px;
  min-height:23px;
  margin-bottom:0;
  padding:2px 5px;
  border:1px solid rgba(37,99,235,.16);
  border-radius:6px;
  border-color:rgba(37,99,235,.16);
  background:linear-gradient(180deg,rgba(59,130,246,.08),rgba(255,255,255,.04));
}
.producer-lcm-head.producer-lcm-no-queue,
.producer-lcm-person.producer-lcm-no-queue{
  grid-template-columns:minmax(0,1.15fr) minmax(76px,.85fr) max-content;
}
.producer-lcm-raised{
  border-color:rgba(220,38,38,.36);
  background:linear-gradient(180deg,rgba(220,38,38,.12),rgba(255,255,255,.04));
  box-shadow:inset 3px 0 0 rgba(220,38,38,.72);
}
.producer-lcm-person.is-selected{
  border-color:rgba(16,185,129,.58);
  background:linear-gradient(180deg,rgba(16,185,129,.20),rgba(16,185,129,.08));
  box-shadow:inset 3px 0 0 rgba(16,185,129,.92);
}
.producer-lcm-queue,
.producer-lcm-name,
.producer-lcm-company{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--producer-text);
  font-weight:850;
  font-size:9.8px;
  line-height:1.1;
}
.producer-lcm-queue{
  justify-self:center;
  width:17px;
  height:17px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:var(--producer-text);
  font-size:10px;
  font-weight:950;
}
.producer-lcm-company{
  color:var(--producer-muted);
}
.producer-lcm-person small,
.producer-lcm-person .producer-question-meta{
  font-size:9.8px;
  line-height:1.15;
}
.producer-lcm-person .producer-local-time{
  color:inherit;
}
.producer-lcm-actions{
  display:flex;
  align-items:center;
  gap:4px;
  justify-content:flex-end;
}
.producer-lcm-actions form{
  margin:0;
}
.producer-lcm-action-btn{
  min-height:19px;
  padding:2px 6px;
  border-radius:5px;
  font-size:8.5px;
  line-height:1;
  white-space:nowrap;
}
.console-chat-panel{
  display:grid;
  gap:6px;
  margin-top:8px;
  padding:8px;
}
.console-chat-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.console-chat-head strong{
  color:var(--producer-text);
  font-size:12px;
  line-height:1;
}
.console-chat-log{
  display:grid;
  gap:3px;
  max-height:112px;
  overflow:auto;
  padding-right:2px;
}
.console-chat-line{
  display:grid;
  grid-template-columns:auto minmax(54px,.42fr) minmax(0,1fr);
  align-items:center;
  gap:5px;
  min-height:20px;
  padding:3px 5px;
  border:1px solid rgba(37,99,235,.14);
  border-radius:5px;
  background:rgba(255,255,255,.08);
}
.console-chat-line.from-lcm{
  border-color:rgba(16,185,129,.22);
  background:rgba(16,185,129,.08);
}
.console-chat-line.private{
  border-color:rgba(168,85,247,.20);
  background:rgba(168,85,247,.08);
}
.console-chat-line span,
.console-chat-line strong,
.console-chat-line p{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  margin:0;
  line-height:1.1;
}
.console-chat-line span{
  color:var(--producer-muted);
  font-size:8.5px;
  font-weight:800;
}
.console-chat-line strong{
  color:var(--producer-text);
  font-size:9px;
  font-weight:950;
}
.console-chat-line p{
  color:var(--producer-text);
  font-size:9px;
  font-weight:750;
}
.console-chat-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:5px;
  margin:0;
}
.console-chat-private .console-chat-form{
  grid-template-columns:minmax(80px,.42fr) minmax(0,1fr) auto;
}
.console-chat-form input,
.console-chat-form select{
  min-width:0;
  height:26px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:6px;
  padding:4px 7px;
  background:rgba(255,255,255,.08);
  color:var(--producer-text);
  font-size:10px;
  font-weight:800;
}
.console-chat-private{
  border-top:1px solid rgba(148,163,184,.18);
  padding-top:5px;
}
.console-chat-private summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  cursor:pointer;
  color:var(--producer-text);
  font-size:10.5px;
  font-weight:950;
  list-style:none;
}
.console-chat-private summary::-webkit-details-marker{display:none}
.console-chat-private[open] summary{
  margin-bottom:5px;
}
.producer-lcm-edit-backdrop{
  position:fixed;
  inset:0;
  z-index:80;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(2,6,23,.52);
  backdrop-filter:blur(18px);
}
.producer-lcm-edit-backdrop[hidden]{
  display:none;
}
.producer-lcm-edit-card{
  width:min(420px,100%);
  display:grid;
  gap:12px;
  padding:18px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(17,24,39,.94),rgba(15,23,42,.9));
  box-shadow:0 30px 80px rgba(0,0,0,.42);
  color:var(--producer-text,#F8FAFC);
}
.producer-lcm-edit-card h2{
  margin:0;
  font-size:20px;
  line-height:1.1;
}
.producer-lcm-edit-card label{
  display:grid;
  gap:5px;
  color:var(--producer-muted,#CBD5E1);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.producer-lcm-edit-card input{
  width:100%;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  padding:10px 11px;
  background:rgba(255,255,255,.08);
  color:var(--producer-text,#F8FAFC);
  font:inherit;
  font-weight:800;
}
.producer-lcm-edit-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:4px;
}

html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .producer-room.producer-compact{--producer-bg:#F6F8FB;--producer-panel:rgba(255,255,255,.78);--producer-line:rgba(15,23,42,.12);--producer-text:#0F172A;--producer-muted:#526071;background:linear-gradient(145deg,rgba(14,165,233,.08),transparent 32%),linear-gradient(315deg,rgba(52,211,153,.08),transparent 38%),var(--producer-bg)}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .producer-room.producer-compact .producer-stage,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .producer-room.producer-compact .producer-stage img{background:#E5EAF1}
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .producer-room.producer-compact .producer-mode-group,
html:not([data-theme="dark"]):not([data-theme="high-contrast"]) .producer-room.producer-compact .producer-link-strip input{background:rgba(255,255,255,.62)}
html[data-theme="high-contrast"] .producer-room.producer-compact{--producer-bg:#000;--producer-panel:#000;--producer-line:#fff;--producer-text:#fff;--producer-muted:#fff;--producer-accent:#fff;--producer-good:#00ff7f;--producer-warn:#ffff00;--producer-danger:#ff4d4d;background:#000}
html[data-theme="high-contrast"] .producer-room.producer-compact .producer-btn,
html[data-theme="high-contrast"] .producer-room.producer-compact .producer-mini-btn,
html[data-theme="high-contrast"] .producer-room.producer-compact .producer-mode-btn{border-color:#fff;color:#fff;background:#000}

@media(max-width:1180px){
  .producer-top-controls{grid-template-columns:1fr;align-items:stretch}
  .producer-control-strip,.producer-mode-group{justify-content:flex-start}
  .producer-compact-grid{grid-template-columns:96px minmax(0,1fr)}
  .producer-side-stack{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media(max-width:760px){
  .producer-room.producer-compact{min-height:100vh;padding:8px}
  .producer-compact-grid{grid-template-columns:1fr}
  .producer-compact .producer-deck{max-height:none}
  .producer-compact .producer-thumb-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}
  .producer-side-stack{display:flex}
  .producer-top-metrics,.producer-stage-meta,.producer-qna-popdown .producer-verbal-columns{grid-template-columns:1fr}
}

/* H10G46 Mission Control: wider console shell, tighter deck/chat, producer WebCall. */
body.attendee-page main.wrap:has(.producer-room),
body:not(.attendee-page) main.wrap:has(.producer-room){
  max-width:none;
  width:100%;
  padding:8px 10px 12px;
}
.producer-room.producer-compact{
  min-height:calc(100vh - 24px);
  gap:8px;
  padding:8px;
}
.producer-top-controls.producer-mission-control{
  grid-template-columns:minmax(230px,1.15fr) minmax(250px,1fr) minmax(210px,.76fr) minmax(210px,.76fr) minmax(132px,.42fr) minmax(150px,.38fr);
  gap:8px;
  padding:8px;
}
.producer-mission-card,
.producer-conference-zone,
.producer-stream-zone,
.producer-webcall-zone,
.producer-lcm-status{
  min-width:0;
  border:1px solid rgba(148,163,184,.18);
  border-radius:8px;
  padding:7px;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.producer-event-summary.producer-mission-card{
  align-items:center;
}
.producer-event-summary h1{
  font-size:16px;
}
.producer-event-summary p{
  font-size:10.5px;
}
.producer-conference-zone .producer-mode-zone{
  border:0;
  border-radius:0;
  padding:0;
  margin-top:6px;
  background:transparent;
  box-shadow:none;
}
.producer-conference-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:5px;
}
.producer-conference-actions .producer-btn{
  width:100%;
}
.producer-control-strip,
.producer-mode-group,
.producer-webcall-controls{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}
.producer-control-strip .producer-btn,
.producer-mode-btn,
.producer-webcall-controls .producer-btn,
.producer-webcall-controls .producer-mini-btn{
  width:100%;
  min-height:30px;
  padding:5px 7px;
  font-size:10.5px;
  line-height:1.1;
}
.producer-mode-group{
  padding:3px;
}
.producer-webcall-status{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  margin-top:5px;
}
.producer-webcall-status small{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--producer-muted);
  font-size:9.5px;
  font-weight:750;
}
.producer-webcall-settings{
  margin-top:6px;
  padding:6px;
  border-radius:8px;
  background:rgba(2,6,23,.18);
}
.producer-webcall-settings label{
  display:grid;
  gap:3px;
  color:var(--producer-muted);
  font-size:9px;
  font-weight:900;
}
.producer-webcall-settings select{
  min-width:0;
  height:24px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:6px;
  background:rgba(255,255,255,.08);
  color:var(--producer-text);
  font-size:10px;
}
.producer-top-metrics{
  grid-template-columns:1fr;
  gap:5px;
}
.producer-top-metrics .producer-metric{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  column-gap:6px;
  padding:6px 7px;
}
.producer-top-metrics .producer-metric span,
.producer-top-metrics .producer-metric small{
  font-size:9.5px;
}
.producer-top-metrics .producer-metric strong{
  grid-row:1/3;
  grid-column:2;
  margin:0;
  font-size:15px;
}
.producer-compact-grid{
  grid-template-columns:minmax(270px,.64fr) minmax(460px,1fr) minmax(300px,.64fr);
  gap:8px;
}
.producer-compact .producer-deck{
  padding:7px;
}
.producer-compact .producer-panel-head.compact{
  margin-bottom:6px;
}
.producer-compact .producer-panel-head.compact .producer-eyebrow{
  margin:0;
}
.producer-compact .producer-panel-head.compact h2{
  font-size:11px;
  line-height:1;
  padding:4px 7px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  white-space:nowrap;
}
.producer-compact .producer-thumb-list{
  grid-template-columns:repeat(auto-fit,minmax(68px,1fr));
  gap:4px;
  max-height:calc(100vh - 390px);
}
.producer-compact .producer-thumb.console-thumb{
  padding:3px;
  aspect-ratio:16/10.5;
}
.producer-compact .producer-thumb.console-thumb .console-thumb-title{
  display:none;
}
.producer-compact .producer-thumb.console-thumb .console-thumb-number{
  width:16px;
  height:16px;
  font-size:9px;
}
.console-chat-panel{
  margin-top:6px;
  padding:6px;
  gap:5px;
}
.console-chat-log{
  max-height:92px;
}
.console-chat-form input,
.console-chat-form select{
  height:24px;
  font-size:9.5px;
}
.producer-side-stack{
  gap:7px;
}
.producer-qna-popdown summary{
  font-size:13px;
}
@media(max-width:1500px){
  .producer-top-controls.producer-mission-control{
    grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) minmax(220px,.8fr);
  }
  .producer-lcm-status,
  .producer-top-metrics{
    grid-column:auto;
  }
}
@media(max-width:1040px){
  .producer-top-controls.producer-mission-control,
  .producer-compact-grid{
    grid-template-columns:1fr;
  }
  .producer-compact .producer-thumb-list{
    max-height:none;
  }
}

/* H10G27 Producer polish: stronger controls, stable slide workspace, collapsible side panels. */
.producer-room.producer-compact{
  gap:12px;
  background:
    linear-gradient(145deg,rgba(59,130,246,.10),transparent 34%),
    linear-gradient(315deg,rgba(16,185,129,.08),transparent 38%),
    var(--producer-bg);
}
.producer-top-controls{
  grid-template-columns:minmax(260px,1.05fr) auto auto minmax(160px,.56fr) minmax(200px,.66fr);
  gap:12px;
  padding:12px;
  align-items:stretch;
}
.producer-stream-zone,.producer-mode-zone,.producer-lcm-status{
  min-width:0;
  border:1px solid rgba(15,23,42,.10);
  border-radius:8px;
  padding:8px;
  background:rgba(255,255,255,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32);
}
.producer-control-label{
  display:block;
  margin:0 0 6px;
  color:#475569;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.producer-control-hint{
  display:block;
  margin-top:8px;
  color:#64748b;
  font-size:11px;
  font-weight:800;
}
.producer-control-strip{
  gap:8px;
}
.producer-control-strip .producer-btn{
  min-height:46px;
  padding:11px 16px;
  font-size:13px;
  border-width:1px;
}
.producer-control-strip .producer-btn-primary{
  border-color:rgba(37,99,235,.35);
  color:#0F172A;
  background:linear-gradient(180deg,#DBEAFE,#BFE3FF);
  box-shadow:0 10px 24px rgba(59,130,246,.22),inset 0 1px 0 rgba(255,255,255,.78);
}
.producer-control-strip .producer-btn-muted{
  border-color:rgba(100,116,139,.28);
  background:linear-gradient(180deg,#F8FAFC,#E2E8F0);
}
.producer-control-strip .producer-btn-danger{
  border-color:rgba(220,38,38,.46);
  color:#7F1D1D;
  background:linear-gradient(180deg,#FEE2E2,#FECACA);
  box-shadow:0 10px 26px rgba(220,38,38,.18),inset 0 1px 0 rgba(255,255,255,.7);
}
.producer-control-strip .producer-btn-critical{
  position:relative;
}
.producer-control-strip .producer-btn-critical::before{
  content:"!";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  margin-right:6px;
  border-radius:999px;
  color:#fff;
  background:#DC2626;
  font-size:12px;
  font-weight:950;
}
.producer-mode-group{
  justify-content:flex-start;
  background:rgba(248,250,252,.78);
}
.producer-mode-btn{
  min-height:38px;
  padding:8px 11px;
  color:#334155;
}
.producer-mode-btn.active{
  color:#064E3B;
  border-color:rgba(16,185,129,.38);
  background:linear-gradient(180deg,#D1FAE5,#A7F3D0);
}
.producer-lcm-status{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:2px;
}
.producer-lcm-status span{
  color:#475569;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.producer-lcm-status strong{
  color:#0F172A;
  font-size:16px;
  line-height:1.05;
}
.producer-lcm-status small{
  color:#64748B;
  font-size:11px;
  line-height:1.25;
}
.producer-lcm-status.active{
  border-color:rgba(16,185,129,.32);
  background:rgba(236,253,245,.78);
}
.producer-lcm-status.active strong{color:#047857}

.producer-compact-grid{
  grid-template-columns:minmax(380px,.92fr) minmax(420px,1fr) minmax(300px,360px);
  align-items:start;
}
.producer-compact .producer-deck,
.producer-compact .producer-stage-panel,
.producer-side-stack{
  height:auto;
  max-height:none;
}
.producer-compact .producer-deck{
  padding:12px;
}
.producer-compact .producer-panel-head.compact{
  align-items:center;
  margin-bottom:12px;
}
.producer-compact .producer-panel-head.compact h2{
  font-size:22px;
}
.producer-compact .producer-thumb-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(86px,1fr));
  gap:6px;
  overflow:auto;
  max-height:calc(100vh - 430px);
  padding:2px;
}
.producer-compact .producer-thumb.console-thumb{
  display:grid;
  grid-template-columns:1fr;
  align-content:start;
  gap:4px;
  min-height:0;
  aspect-ratio:16/11;
  padding:5px;
  overflow:hidden;
}
.producer-compact .producer-thumb.console-thumb img{
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
}
.producer-compact .producer-thumb.console-thumb .console-thumb-number{
  position:absolute;
  top:5px;
  left:5px;
  z-index:1;
}
.producer-compact .producer-thumb.console-thumb .console-thumb-title{
  font-size:9px;
  max-height:20px;
  white-space:normal;
}
.producer-compact .producer-stage-panel{
  display:block;
}
.producer-compact .producer-stage{
  flex:none;
  aspect-ratio:16/9;
  min-height:0;
  height:auto;
  border-bottom:1px solid var(--producer-line);
  background:#DDE5EF;
}
.producer-compact .producer-stage img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.producer-compact .producer-stage-meta{
  grid-template-columns:1fr;
  gap:7px;
  padding:8px 10px;
  background:rgba(255,255,255,.34);
}
.producer-compact .producer-slide-actions{
  justify-content:flex-start;
}
.producer-side-stack{
  align-self:start;
  max-height:calc(100vh - 188px);
}
.producer-runtime-compact{
  flex:0 0 auto;
  overflow:hidden;
}
.producer-runtime-compact summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  list-style:none;
  color:var(--producer-text);
}
.producer-runtime-compact summary::-webkit-details-marker{display:none}
.producer-runtime-compact summary strong{
  display:block;
  color:var(--producer-text);
  font-size:18px;
  line-height:1.1;
}
.producer-runtime-compact summary small{
  color:var(--producer-muted);
  font-size:11px;
  font-weight:850;
}
.producer-runtime-compact[open] summary{
  margin-bottom:12px;
}
.producer-qna-popdown{
  flex:0 0 auto;
  max-height:calc(100vh - 285px);
}
.producer-local-time{
  white-space:nowrap;
}

html[data-theme="dark"] .producer-stream-zone,
html[data-theme="dark"] .producer-mode-zone,
html[data-theme="dark"] .producer-lcm-status{
  border-color:rgba(255,255,255,.12);
  background:rgba(15,23,42,.56);
}
html[data-theme="dark"] .producer-control-label,
html[data-theme="dark"] .producer-control-hint,
html[data-theme="dark"] .producer-lcm-status span,
html[data-theme="dark"] .producer-lcm-status small{
  color:#AAB4C5;
}
html[data-theme="dark"] .producer-lcm-status strong{color:#F8FAFC}
html[data-theme="dark"] .producer-mode-group{background:rgba(2,6,23,.34)}
html[data-theme="dark"] .producer-mode-btn{color:#AAB4C5}
html[data-theme="dark"] .producer-mode-btn.active{color:#D1FAE5;background:linear-gradient(180deg,rgba(16,185,129,.28),rgba(16,185,129,.12))}
html[data-theme="dark"] .producer-control-strip .producer-btn-primary{color:#E0F2FE;background:linear-gradient(180deg,rgba(59,130,246,.45),rgba(37,99,235,.22))}
html[data-theme="dark"] .producer-control-strip .producer-btn-muted{background:linear-gradient(180deg,rgba(148,163,184,.20),rgba(71,85,105,.16))}
html[data-theme="dark"] .producer-control-strip .producer-btn-danger{color:#FEE2E2;background:linear-gradient(180deg,rgba(220,38,38,.42),rgba(127,29,29,.28))}

/* H10G28 Producer top bar finish: protected event card, 2x2 controls, vertical stats. */
.producer-top-controls{
  grid-template-columns:minmax(300px,.9fr) minmax(260px,.66fr) minmax(260px,.66fr) minmax(160px,.38fr) minmax(130px,.3fr);
  align-items:stretch;
  gap:8px;
}
.producer-event-summary{
  align-self:stretch;
  min-width:0;
  padding:9px 11px;
  border:1px solid rgba(15,23,42,.10);
  border-radius:8px;
  background:rgba(255,255,255,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34);
}
.producer-event-summary > div{
  min-width:0;
}
.producer-event-summary h1{
  max-width:100%;
  font-size:15px;
}
.producer-event-summary p{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.producer-stream-zone .producer-control-strip,
.producer-mode-zone .producer-mode-group{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}
.producer-stream-zone .producer-control-strip form,
.producer-mode-zone .producer-mode-group form{
  min-width:0;
}
.producer-stream-zone .producer-btn,
.producer-mode-zone .producer-mode-btn{
  width:100%;
  min-width:0;
}
.producer-control-strip .producer-btn{
  min-height:34px;
  padding:6px 8px;
  font-size:11px;
}
.producer-mode-btn{
  min-height:34px;
  padding:6px 8px;
  font-size:11px;
}
.producer-top-metrics{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  min-width:0;
}
.producer-top-metrics .producer-metric{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"label value" "detail detail";
  align-items:center;
  gap:1px 8px;
  min-height:0;
  padding:5px 7px;
}
.producer-top-metrics .producer-metric span{
  grid-area:label;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.producer-top-metrics .producer-metric strong{
  grid-area:value;
  margin:0;
  font-size:18px;
  line-height:1;
}
.producer-top-metrics .producer-metric small{
  grid-area:detail;
  font-size:10.5px;
}
html[data-theme="dark"] .producer-event-summary{
  border-color:rgba(255,255,255,.12);
  background:rgba(15,23,42,.56);
}

@media(max-width:1380px){
  .producer-top-controls{grid-template-columns:minmax(280px,1fr) minmax(280px,1fr)}
  .producer-event-summary{grid-column:1/-1}
  .producer-top-metrics{grid-template-columns:repeat(3,minmax(0,1fr));grid-column:1/-1}
  .producer-control-strip,.producer-mode-group{justify-content:flex-start}
  .producer-compact-grid{grid-template-columns:minmax(320px,1fr) minmax(360px,1fr)}
  .producer-side-stack{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;max-height:none}
}
@media(max-width:880px){
  .producer-top-controls{grid-template-columns:1fr}
  .producer-top-metrics{grid-template-columns:1fr}
  .producer-compact-grid{grid-template-columns:1fr}
  .producer-side-stack{display:flex}
  .producer-compact .producer-thumb-list{max-height:none}
}

/* H10G29 Presenter console: producer-style cousin without conference/media authority. */
.presenter-room{
  min-height:calc(100vh - 96px);
}
.presenter-room .producer-top-controls{
  grid-template-columns:minmax(300px,.86fr) minmax(190px,.42fr) minmax(300px,.66fr) minmax(160px,.36fr) minmax(130px,.3fr);
}
.presenter-room .producer-event-summary small{
  display:block;
  margin-top:3px;
  color:var(--producer-muted);
  font-size:10.8px;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.presenter-slide-zone,
.presenter-audio-zone,
.presenter-readonly-status{
  min-width:0;
}
.presenter-control-strip{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}
.presenter-control-strip form{
  min-width:0;
  margin:0;
}
.presenter-control-strip .producer-btn{
  width:100%;
  min-width:0;
  min-height:34px;
  padding:6px 8px;
  font-size:11px;
}
.presenter-audio-status{
  margin:7px 0 0;
  color:var(--producer-muted);
  font-size:11px;
  line-height:1.3;
}
.presenter-audio-pill{
  margin-top:5px;
}
.presenter-audio-settings{
  margin-top:8px;
  padding:8px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:rgba(2,6,23,.26);
}
.presenter-audio-settings label{
  display:block;
  color:var(--producer-muted);
  font-size:10.5px;
  font-weight:800;
  margin-bottom:7px;
}
.presenter-audio-settings select{
  display:block;
  width:100%;
  margin-top:4px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:7px;
  background:rgba(2,6,23,.55);
  color:var(--producer-text);
  padding:6px 7px;
  font-size:11px;
}
.presenter-audio-settings p{
  margin:0;
  color:var(--producer-muted);
  font-size:10.5px;
}
.presenter-compact-grid{
  grid-template-columns:minmax(300px,.78fr) minmax(420px,1fr) minmax(280px,340px);
}
.presenter-stage{
  position:relative;
}
.presenter-stage .presentation-stage-wrap,
.presenter-stage .viewer-stage.companion-stage{
  width:100%;
  height:100%;
  margin:0;
  border:0;
  background:transparent;
}
.presenter-stage-pill{
  position:absolute;
  top:10px;
  right:10px;
  z-index:2;
  border:1px solid rgba(16,185,129,.30);
  border-radius:999px;
  padding:4px 9px;
  background:rgba(16,185,129,.12);
  color:#047857;
  font-size:10px;
  font-weight:900;
}
.presenter-room .console-thumb{
  position:relative;
}
.presenter-room .producer-slide-actions form{
  margin:0;
}
.presenter-readonly-question{
  grid-template-columns:1fr;
}
.presenter-readonly-question small{
  text-transform:capitalize;
}
html[data-theme="dark"] .presenter-audio-settings{
  border-color:rgba(255,255,255,.12);
  background:rgba(2,6,23,.34);
}
html[data-theme="dark"] .presenter-stage-pill{
  color:#D1FAE5;
}
html[data-theme="high-contrast"] .presenter-stage-pill,
html[data-theme="high-contrast"] .presenter-audio-settings,
html[data-theme="high-contrast"] .presenter-audio-settings select{
  border-color:#fff;
  color:#fff;
  background:#000;
}
@media(max-width:1500px){
  .presenter-room .producer-top-controls{
    grid-template-columns:minmax(280px,1fr) minmax(260px,.8fr);
  }
  .presenter-room .producer-event-summary{
    grid-column:1/-1;
  }
  .presenter-room .producer-top-metrics{
    grid-column:1/-1;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:1380px){
  .presenter-compact-grid{
    grid-template-columns:minmax(320px,1fr) minmax(360px,1fr);
  }
  .presenter-room .producer-side-stack{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-height:none;
  }
}
@media(max-width:880px){
  .presenter-room .producer-top-controls,
  .presenter-room .producer-top-metrics,
  .presenter-compact-grid,
  .presenter-room .producer-side-stack{
    grid-template-columns:1fr;
  }
  .presenter-room .producer-side-stack{
    display:flex;
  }
}

/* H10G46 final producer Mission Control overrides. Keep last in file. */
body.attendee-page main.wrap:has(.producer-room),
body:not(.attendee-page) main.wrap:has(.producer-room){
  max-width:none;
  width:100%;
  padding:8px 10px 12px;
}
.producer-room.producer-compact{
  min-height:calc(100vh - 24px);
  padding:8px;
  gap:8px;
}
.producer-top-controls.producer-mission-control{
  grid-template-columns:minmax(230px,1.15fr) minmax(250px,1fr) minmax(210px,.76fr) minmax(210px,.76fr) minmax(132px,.42fr) minmax(150px,.38fr);
  gap:8px;
  padding:8px;
  align-items:stretch;
}
.producer-mission-card,
.producer-conference-zone,
.producer-stream-zone,
.producer-webcall-zone,
.producer-lcm-status{
  min-width:0;
  border:1px solid rgba(148,163,184,.18);
  border-radius:8px;
  padding:7px;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.producer-event-summary.producer-mission-card{align-items:center}
.producer-event-summary h1{font-size:16px}
.producer-event-summary p{font-size:10.5px}
.producer-conference-zone .producer-mode-zone{
  border:0;
  border-radius:0;
  padding:0;
  margin-top:6px;
  background:transparent;
  box-shadow:none;
}
.producer-conference-actions{display:grid;grid-template-columns:1fr;gap:5px}
.producer-conference-actions .producer-btn{width:100%}
.producer-control-strip,
.producer-mode-group,
.producer-webcall-controls{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}
.producer-control-strip .producer-btn,
.producer-mode-btn,
.producer-webcall-controls .producer-btn,
.producer-webcall-controls .producer-mini-btn{
  width:100%;
  min-height:30px;
  padding:5px 7px;
  font-size:10.5px;
  line-height:1.1;
}
.producer-mode-group{padding:3px}
.producer-webcall-status{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  margin-top:5px;
}
.producer-webcall-status small{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--producer-muted);
  font-size:9.5px;
  font-weight:750;
}
.producer-webcall-settings{
  margin-top:6px;
  padding:6px;
  border-radius:8px;
  background:rgba(2,6,23,.18);
}
.producer-webcall-settings label{
  display:grid;
  gap:3px;
  color:var(--producer-muted);
  font-size:9px;
  font-weight:900;
}
.producer-webcall-settings select{
  min-width:0;
  height:24px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:6px;
  background:rgba(255,255,255,.08);
  color:var(--producer-text);
  font-size:10px;
}
.producer-top-metrics{
  grid-template-columns:1fr;
  gap:5px;
}
.producer-top-metrics .producer-metric{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  column-gap:6px;
  padding:6px 7px;
}
.producer-top-metrics .producer-metric span,
.producer-top-metrics .producer-metric small{font-size:9.5px}
.producer-top-metrics .producer-metric strong{
  grid-row:1/3;
  grid-column:2;
  margin:0;
  font-size:15px;
}
.producer-compact-grid{
  grid-template-columns:minmax(270px,.64fr) minmax(460px,1fr) minmax(300px,.64fr);
  gap:8px;
}
.producer-compact .producer-deck{padding:7px}
.producer-compact .producer-panel-head.compact{margin-bottom:6px}
.producer-compact .producer-panel-head.compact .producer-eyebrow{margin:0}
.producer-compact .producer-panel-head.compact h2{
  font-size:11px;
  line-height:1;
  padding:4px 7px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  white-space:nowrap;
}
.producer-compact .producer-thumb-list{
  grid-template-columns:repeat(auto-fit,minmax(68px,1fr));
  gap:4px;
  max-height:calc(100vh - 390px);
}
.producer-compact .producer-thumb.console-thumb{
  padding:3px;
  aspect-ratio:16/10.5;
}
.producer-compact .producer-thumb.console-thumb .console-thumb-title{display:none}
.producer-compact .producer-thumb.console-thumb .console-thumb-number{
  width:16px;
  height:16px;
  font-size:9px;
}
.console-chat-panel{
  margin-top:6px;
  padding:6px;
  gap:5px;
}
.console-chat-log{max-height:92px}
.console-chat-form input,
.console-chat-form select{
  height:24px;
  font-size:9.5px;
}
.producer-side-stack{gap:7px}
.producer-qna-popdown summary{font-size:13px}
@media(max-width:1500px){
  .producer-top-controls.producer-mission-control{
    grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) minmax(220px,.8fr);
  }
}
@media(max-width:1040px){
  .producer-top-controls.producer-mission-control,
  .producer-compact-grid{
    grid-template-columns:1fr;
  }
  .producer-compact .producer-thumb-list{max-height:none}
}

/* H10G47 Producer/Presenter rail polish. Keep last in file. */
.producer-compact .producer-deck{
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  padding:0;
  gap:7px;
}
.producer-rail-panel{
  padding:7px;
  overflow:hidden;
}
.producer-rail-panel summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  cursor:pointer;
  list-style:none;
  color:var(--producer-text);
  font-size:11px;
  font-weight:950;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.producer-rail-panel summary::-webkit-details-marker{display:none}
.producer-rail-panel summary small{
  color:var(--producer-muted);
  font-size:9.5px;
  font-weight:900;
  text-transform:none;
  letter-spacing:0;
}
.producer-rail-panel[open] summary{
  margin-bottom:6px;
}
.producer-rail-panel:not([open]){
  min-height:34px;
}
.producer-chat-card{
  flex:0 0 auto;
}
.producer-chat-card .console-chat-panel{
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.producer-deck-card .producer-thumb-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(68px,1fr));
  gap:4px;
  max-height:calc(100vh - 430px);
  overflow:auto;
}
.producer-deck-card .producer-thumb.console-thumb{
  display:grid;
  grid-template-columns:1fr;
  align-content:start;
  gap:3px;
  min-height:0;
  aspect-ratio:16/10.5;
  padding:3px;
  overflow:hidden;
}
.producer-deck-card .producer-thumb.console-thumb img{
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
  border-radius:5px;
}
.producer-deck-card .producer-thumb.console-thumb .console-thumb-title{
  display:none;
}
.producer-deck-card .producer-thumb.console-thumb .console-thumb-number{
  width:16px;
  height:16px;
  font-size:9px;
}
.presenter-room .producer-deck-card .producer-thumb-list{
  grid-template-columns:repeat(auto-fit,minmax(68px,1fr));
}
.producer-control-strip{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.producer-stream-zone .producer-control-strip{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.producer-conference-actions .producer-btn-danger{
  min-height:34px;
}
.producer-post-event-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  border:1px solid rgba(16,185,129,.28);
  border-radius:8px;
  padding:10px 12px;
  background:linear-gradient(180deg,rgba(16,185,129,.14),rgba(255,255,255,.055));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.producer-post-event-panel h2{
  margin:0 0 3px;
  color:var(--producer-text);
  font-size:16px;
  line-height:1.05;
}
.producer-post-event-panel p{
  margin:0;
  color:var(--producer-muted);
  font-size:11px;
  line-height:1.35;
}
.producer-post-event-actions{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.producer-post-event-actions a{
  text-decoration:none;
}
@media(max-width:1500px){
  .producer-control-strip,
  .producer-stream-zone .producer-control-strip{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:1040px){
  .producer-post-event-panel{
    grid-template-columns:1fr;
  }
  .producer-post-event-actions{
    justify-content:flex-start;
  }
}

/* H10G48 Console chat tabs + rail count cleanup. Keep last. */
.producer-deck-card summary{
  justify-content:flex-start;
}
.producer-deck-card summary small{
  display:none;
}
.producer-chat-card .console-chat-panel{
  display:grid;
  gap:8px;
  padding:0;
}
.console-chat-head{
  padding:7px 8px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:10px;
  background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}
.console-chat-log,
.console-chat-thread-log{
  display:grid;
  gap:5px;
  max-height:118px;
  overflow:auto;
  padding:6px;
  border:1px solid rgba(148,163,184,.14);
  border-radius:12px;
  background:rgba(3,7,18,.22);
}
.console-chat-line{
  grid-template-columns:auto minmax(46px,.34fr) minmax(0,1fr);
  min-height:24px;
  padding:5px 7px;
  border-radius:9px;
  border-color:rgba(148,163,184,.16);
  background:rgba(255,255,255,.075);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.console-chat-line span,
.console-chat-line strong,
.console-chat-line p{
  font-size:9px;
}
.console-chat-form{
  gap:6px;
}
.console-chat-form input,
.console-chat-form select{
  height:28px;
  border-radius:10px;
  border-color:rgba(148,163,184,.22);
  background:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.console-chat-form input:focus,
.console-chat-form select:focus{
  outline:2px solid rgba(125,211,252,.42);
  outline-offset:1px;
}
.console-chat-private{
  display:grid;
  gap:7px;
  padding-top:7px;
}
.console-chat-private summary{
  padding:7px 8px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:10px;
  background:rgba(255,255,255,.075);
}
.console-chat-tabs{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:5px;
}
.console-chat-tab-input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.console-chat-tab-label{
  min-width:0;
  max-width:100%;
  padding:6px 8px;
  border:1px solid rgba(148,163,184,.2);
  border-radius:999px;
  color:var(--producer-muted);
  background:rgba(255,255,255,.08);
  font-size:9.5px;
  font-weight:950;
  line-height:1;
  cursor:pointer;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.console-chat-tab-input:checked + .console-chat-tab-label{
  color:var(--producer-text);
  border-color:rgba(125,211,252,.46);
  background:linear-gradient(135deg,rgba(125,211,252,.24),rgba(255,255,255,.08));
}
.console-chat-thread{
  display:none;
  flex:1 0 100%;
  min-width:0;
  gap:6px;
}
.console-chat-tab-input:checked + .console-chat-tab-label + .console-chat-thread{
  display:grid;
}
.console-chat-bubble{
  max-width:88%;
  min-width:0;
  padding:6px 8px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:12px;
  background:rgba(255,255,255,.08);
}
.console-chat-bubble.mine{
  justify-self:end;
  border-color:rgba(52,211,153,.24);
  background:rgba(52,211,153,.12);
}
.console-chat-bubble.theirs{
  justify-self:start;
  border-color:rgba(125,211,252,.24);
  background:rgba(125,211,252,.10);
}
.console-chat-bubble span,
.console-chat-bubble p{
  display:block;
  margin:0;
  min-width:0;
}
.console-chat-bubble span{
  color:var(--producer-muted);
  font-size:8px;
  font-weight:850;
  line-height:1;
  margin-bottom:3px;
}
.console-chat-bubble p{
  color:var(--producer-text);
  font-size:10px;
  font-weight:800;
  line-height:1.22;
  overflow-wrap:anywhere;
}
.console-chat-private-form{
  grid-template-columns:minmax(0,1fr) auto;
}

/* H10G49 rail/chat correctness fixes. Keep last. */
.producer-deck-card .producer-thumb.console-thumb,
.producer-compact .producer-thumb.console-thumb{
  position:relative;
}
.producer-deck-card .producer-thumb.console-thumb .console-thumb-number,
.producer-compact .producer-deck-card .producer-thumb.console-thumb .console-thumb-number{
  display:none;
}
.console-chat-summary-meta{
  display:flex;
  align-items:center;
  gap:5px;
  margin-left:auto;
}
.console-chat-summary-meta span{
  display:inline-flex;
  align-items:center;
  min-height:18px;
  padding:3px 6px;
  border:1px solid rgba(125,211,252,.26);
  border-radius:999px;
  background:rgba(125,211,252,.12);
  color:var(--producer-text);
  font-size:8.5px;
  font-weight:950;
  line-height:1;
  text-transform:none;
  letter-spacing:0;
}
.console-chat-summary-meta span:last-child{
  border-color:rgba(168,85,247,.26);
  background:rgba(168,85,247,.12);
}

/* H10G51 console chat polish. Keep last. */
.producer-thumb.console-thumb .console-thumb-number{
  display:none !important;
}
.console-chat-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:8px;
}
.console-chat-head .producer-eyebrow{
  color:var(--producer-accent);
}
.console-chat-clear-form{
  margin:0;
}
.console-chat-clear-form .producer-mini-btn{
  min-height:26px;
  padding:5px 9px;
  font-size:9px;
}
.console-chat-log,
.console-chat-thread-log{
  gap:6px;
  max-height:132px;
  scroll-behavior:smooth;
  background:linear-gradient(135deg,rgba(15,23,42,.24),rgba(255,255,255,.055));
}
.console-chat-line{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:3px;
  min-height:0;
  padding:7px 8px 7px 10px;
  border:1px solid rgba(148,163,184,.15);
  border-left:3px solid var(--chat-accent,rgba(125,211,252,.62));
  border-radius:10px;
  background:linear-gradient(135deg,var(--chat-wash,rgba(125,211,252,.10)),rgba(255,255,255,.045));
}
.console-chat-line.from-lcm{
  border-left-style:double;
}
.console-chat-line.sender-c0{--chat-accent:#38bdf8;--chat-wash:rgba(56,189,248,.13)}
.console-chat-line.sender-c1{--chat-accent:#34d399;--chat-wash:rgba(52,211,153,.13)}
.console-chat-line.sender-c2{--chat-accent:#f59e0b;--chat-wash:rgba(245,158,11,.12)}
.console-chat-line.sender-c3{--chat-accent:#a78bfa;--chat-wash:rgba(167,139,250,.13)}
.console-chat-line.sender-c4{--chat-accent:#fb7185;--chat-wash:rgba(251,113,133,.12)}
.console-chat-line.sender-c5{--chat-accent:#2dd4bf;--chat-wash:rgba(45,212,191,.12)}
.console-chat-line.sender-c6{--chat-accent:#e879f9;--chat-wash:rgba(232,121,249,.11)}
.console-chat-line.sender-c7{--chat-accent:#93c5fd;--chat-wash:rgba(147,197,253,.13)}
.console-chat-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
}
.console-chat-meta strong{
  min-width:0;
  color:var(--producer-text);
  font-size:9.5px;
  font-weight:950;
  line-height:1.1;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.console-chat-meta span,
.console-chat-time{
  flex:0 0 auto;
  color:var(--producer-muted);
  font-size:8.5px;
  font-weight:850;
  line-height:1;
}
.console-chat-line p{
  color:var(--producer-text);
  font-size:10px;
  font-weight:750;
  line-height:1.25;
}
.console-chat-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
.console-chat-form .producer-mini-btn{
  min-width:52px;
  min-height:28px;
  padding:5px 10px;
}
.console-chat-tabs{
  gap:6px;
}
.console-chat-tab-label{
  padding:7px 9px;
  border-radius:10px;
  background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.055));
}
.console-chat-thread.no-thread{
  display:grid;
  flex:1 0 100%;
}
.console-chat-bubble{
  max-width:78%;
  padding:7px 9px;
  border-radius:12px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.console-chat-bubble span{
  font-size:8px;
}
.console-chat-bubble p{
  font-size:10.5px;
  font-weight:850;
}
.console-chat-private-form{
  grid-template-columns:minmax(92px,.42fr) minmax(0,1fr) auto;
}
.console-chat-private-form select{
  min-width:0;
}
@media (max-width:760px){
  .console-chat-private-form{
    grid-template-columns:minmax(0,1fr) auto;
  }
  .console-chat-private-form select{
    grid-column:1 / -1;
  }
}

/* H10G73 console chat scroll stability. Keep chat rows readable as history grows. */
.producer-chat-card .console-chat-log,
.producer-chat-card .console-chat-thread-log{
  display:flex;
  flex-direction:column;
  gap:7px;
  height:clamp(112px,16vh,178px);
  min-height:112px;
  max-height:178px;
  overflow-y:auto;
  align-content:flex-start;
}
.producer-chat-card .console-chat-line,
.producer-chat-card .console-chat-bubble{
  flex:0 0 auto;
}
.producer-chat-card .console-chat-line{
  min-height:42px;
}
.producer-chat-card .console-chat-bubble{
  min-height:38px;
}
.producer-chat-card .console-chat-line p,
.producer-chat-card .console-chat-bubble p{
  overflow:visible;
  white-space:normal;
}
.producer-chat-card .console-chat-thread{
  min-height:0;
}

/* H10G69 producer mission-control header compression. Keep after console overrides. */
.producer-room.producer-compact:not(.presenter-room) .producer-top-controls.producer-mission-control{
  grid-template-columns:minmax(330px,1.22fr) minmax(290px,.9fr) minmax(310px,1fr) minmax(132px,.42fr);
  gap:7px;
  align-items:stretch;
  padding:7px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-mission-card,
.producer-room.producer-compact:not(.presenter-room) .producer-conference-zone,
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack{
  min-width:0;
  border:1px solid rgba(148,163,184,.18);
  border-radius:8px;
  padding:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.producer-room.producer-compact:not(.presenter-room) .producer-event-summary.producer-mission-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) minmax(106px,auto);
  align-items:center;
  gap:10px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-event-summary .console-live-pill{
  min-width:78px;
  justify-content:center;
}
.producer-room.producer-compact:not(.presenter-room) .producer-event-summary h1{
  font-size:16px;
  line-height:1.05;
}
.producer-room.producer-compact:not(.presenter-room) .producer-event-summary p{
  margin-top:3px;
  font-size:10.5px;
}
.producer-inline-lcm{
  min-width:0;
  justify-self:end;
  padding:6px 7px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:8px;
  background:rgba(2,6,23,.18);
}
.producer-inline-lcm span{
  display:block;
  color:var(--producer-muted);
  font-size:9px;
  font-weight:950;
  letter-spacing:.06em;
  line-height:1;
  text-transform:uppercase;
}
.producer-inline-lcm strong{
  display:block;
  margin-top:3px;
  color:var(--producer-text);
  font-size:14px;
  line-height:1.05;
}
.producer-inline-lcm small{
  display:block;
  margin-top:2px;
  color:var(--producer-muted);
  font-size:9px;
  font-weight:850;
  line-height:1.15;
}
.producer-inline-lcm.active strong{color:#10B981}
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack{
  display:grid;
  grid-template-rows:auto auto;
  gap:7px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack .producer-webcall-zone,
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack .producer-stream-zone{
  border:0;
  border-radius:0;
  padding:0;
  background:transparent;
  box-shadow:none;
}
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack .producer-webcall-zone{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:4px 7px;
  align-items:center;
}
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack .producer-webcall-zone .producer-control-label{
  grid-column:1 / -1;
}
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack .producer-webcall-controls{
  grid-template-columns:minmax(0,1fr) minmax(78px,.55fr);
  gap:5px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack .producer-webcall-status{
  margin-top:0;
  justify-content:flex-start;
  gap:5px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack .producer-webcall-status small{
  max-width:92px;
  font-size:9px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-audio-stack .producer-control-strip{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:5px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-control-strip .producer-btn,
.producer-room.producer-compact:not(.presenter-room) .producer-webcall-controls .producer-btn,
.producer-room.producer-compact:not(.presenter-room) .producer-webcall-controls .producer-mini-btn,
.producer-room.producer-compact:not(.presenter-room) .producer-conference-actions .producer-btn,
.producer-room.producer-compact:not(.presenter-room) .producer-mode-btn{
  min-height:27px;
  padding:4px 7px;
  border-radius:7px;
  font-size:10px;
  line-height:1.05;
}
.producer-room.producer-compact:not(.presenter-room) .producer-conference-zone{
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr);
  gap:5px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-conference-zone .producer-mode-zone{
  margin-top:0;
}
.producer-room.producer-compact:not(.presenter-room) .producer-conference-actions{
  gap:4px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-mode-group{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px;
  padding:3px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-control-hint{
  display:block;
  margin-top:3px;
  color:var(--producer-muted);
  font-size:9.5px;
  font-weight:850;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.producer-room.producer-compact:not(.presenter-room) .producer-top-metrics{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-top-metrics .producer-metric{
  min-height:0;
  padding:7px 8px;
  border-radius:8px;
}
.producer-room.producer-compact:not(.presenter-room) .producer-top-metrics .producer-metric strong{
  font-size:15px;
}
@media(max-width:1500px){
  .producer-room.producer-compact:not(.presenter-room) .producer-top-controls.producer-mission-control{
    grid-template-columns:minmax(320px,1.2fr) minmax(280px,.9fr) minmax(300px,1fr);
  }
  .producer-room.producer-compact:not(.presenter-room) .producer-top-metrics{
    grid-column:1 / -1;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:980px){
  .producer-room.producer-compact:not(.presenter-room) .producer-top-controls.producer-mission-control{
    grid-template-columns:1fr;
  }
  .producer-room.producer-compact:not(.presenter-room) .producer-event-summary.producer-mission-card{
    grid-template-columns:auto minmax(0,1fr);
  }
  .producer-inline-lcm{
    grid-column:1 / -1;
    justify-self:stretch;
  }
  .producer-room.producer-compact:not(.presenter-room) .producer-top-metrics{
    grid-template-columns:1fr;
  }
}

/* H10G75 public index + partner sizzle. */
body.vc-marketing-page{
  margin:0;
  min-height:100svh;
  background:#07111f;
  color:#f8fafc;
  overflow-x:hidden;
}
body.vc-marketing-page main.wrap{
  max-width:none;
  width:100%;
  padding:0;
  margin:0;
}
body.vc-marketing-page footer,
body.vc-marketing-page .vc-theme-toggle{
  display:none!important;
}
.vc-marketing-shell,
.vc-sizzle-sheet{
  min-height:100svh;
  padding:22px clamp(16px,3vw,42px) 36px;
  box-sizing:border-box;
  background:radial-gradient(900px 520px at 12% 0%,rgba(14,165,233,.22),transparent 58%),
    radial-gradient(760px 460px at 88% 12%,rgba(45,212,191,.16),transparent 58%),
    linear-gradient(135deg,#07111f 0%,#102033 52%,#0a1727 100%);
}
.vc-marketing-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  max-width:1420px;
  margin:0 auto 26px;
}
.vc-wordmark{
  color:#fff;
  font-size:22px;
  font-weight:950;
  letter-spacing:0;
  text-decoration:none;
}
.vc-marketing-nav div{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.vc-marketing-nav a:not(.vc-wordmark){
  color:rgba(248,250,252,.78);
  text-decoration:none;
  font-size:13px;
  font-weight:850;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(255,255,255,.055);
}
.vc-home-hero,
.vc-split-band,
.vc-stack-band,
.vc-bottom-cta,
.vc-sizzle-hero,
.vc-sizzle-proof,
.vc-sizzle-architecture,
.vc-sizzle-footer{
  max-width:1420px;
  margin:0 auto;
}
.vc-home-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,.82fr);
  gap:clamp(22px,4vw,60px);
  align-items:center;
  min-height:580px;
}
.vc-kicker{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 11px;
  border:1px solid rgba(125,211,252,.32);
  border-radius:999px;
  background:rgba(14,165,233,.12);
  color:#7dd3fc;
  font-size:11px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.vc-home-copy h1,
.vc-sizzle-hero h1{
  max-width:880px;
  margin:18px 0 16px;
  color:#fff;
  font-size:clamp(42px,5.8vw,84px);
  line-height:.95;
  letter-spacing:0;
}
.vc-home-copy p,
.vc-sizzle-hero p,
.vc-split-band p,
.vc-stack-band p,
.vc-bottom-cta p{
  max-width:760px;
  color:rgba(226,232,240,.78);
  font-size:clamp(17px,1.55vw,22px);
  line-height:1.45;
}
.vc-marketing-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:26px;
}
.vc-primary-link,
.vc-secondary-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  text-decoration:none;
  font-size:14px;
  font-weight:950;
}
.vc-primary-link{
  color:#06101e;
  background:linear-gradient(180deg,#e0f2fe,#99f6e4);
  box-shadow:0 18px 44px rgba(45,212,191,.20);
}
.vc-secondary-link{
  color:#f8fafc;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
}
.vc-home-stage{
  min-height:430px;
  padding:18px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.06));
  box-shadow:0 30px 90px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.16);
  backdrop-filter:blur(18px);
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:14px;
}
.vc-stage-top,
.vc-stage-control{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.vc-stage-top span,
.vc-stage-slide span{
  color:rgba(226,232,240,.68);
  font-size:12px;
  font-weight:850;
}
.vc-stage-top strong{
  color:#34d399;
  font-size:13px;
}
.vc-stage-slide{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  grid-template-rows:1fr 1fr;
  gap:12px;
}
.vc-stage-slide div{
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:16px;
  background:rgba(2,6,23,.22);
}
.vc-stage-slide div:first-child{
  grid-row:1 / -1;
  background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.045)),
    linear-gradient(135deg,#172554,#164e63);
}
.vc-stage-slide strong{
  display:block;
  margin-top:10px;
  color:#fff;
  font-size:clamp(24px,3vw,44px);
  line-height:1;
}
.vc-stage-control{
  justify-content:center;
  padding:11px;
  border-radius:18px;
  background:rgba(2,6,23,.38);
}
.vc-stage-control span{
  padding:8px 11px;
  border-radius:999px;
  color:#e2e8f0;
  background:rgba(255,255,255,.10);
  font-size:12px;
  font-weight:900;
}
.vc-marketing-grid{
  max-width:1420px;
  margin:20px auto 0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.vc-marketing-grid article,
.vc-stack-list article,
.vc-sizzle-proof article{
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(255,255,255,.07);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10);
}
.vc-marketing-grid article{
  min-height:126px;
  padding:16px;
}
.vc-marketing-grid strong,
.vc-stack-list strong,
.vc-sizzle-proof strong{
  display:block;
  color:#fff;
  font-size:16px;
  line-height:1.15;
}
.vc-marketing-grid p,
.vc-stack-list p,
.vc-sizzle-proof p{
  margin:9px 0 0;
  color:rgba(226,232,240,.72);
  font-size:13px;
  line-height:1.42;
}
.vc-split-band,
.vc-stack-band{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:24px;
  align-items:center;
  margin-top:26px;
  padding:28px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:rgba(255,255,255,.055);
}
.vc-split-band h2,
.vc-stack-band h2,
.vc-bottom-cta h2,
.vc-sizzle-architecture h2{
  margin:14px 0 10px;
  color:#fff;
  font-size:clamp(30px,3.4vw,52px);
  line-height:1;
  letter-spacing:0;
}
.vc-chip-cloud{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.vc-chip-cloud span{
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  color:#e2e8f0;
  background:rgba(2,6,23,.20);
  font-size:13px;
  font-weight:850;
}
.vc-stack-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.vc-stack-list article{
  padding:14px;
}
.vc-bottom-cta{
  margin-top:26px;
  padding:34px;
  border-radius:24px;
  text-align:center;
  background:linear-gradient(135deg,rgba(125,211,252,.17),rgba(45,212,191,.13));
}
.vc-bottom-cta p{
  margin:0 auto 20px;
}
.vc-sizzle-sheet{
  display:grid;
  align-content:start;
}
.vc-sizzle-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 260px;
  gap:28px;
  align-items:end;
  padding:34px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:26px;
  background:rgba(255,255,255,.075);
}
.vc-sizzle-hero aside{
  display:grid;
  gap:8px;
  padding:16px;
  border-radius:18px;
  background:rgba(2,6,23,.28);
}
.vc-sizzle-hero aside strong{
  color:#7dd3fc;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.vc-sizzle-hero aside span{
  color:#fff;
  font-size:17px;
  font-weight:900;
}
.vc-sizzle-proof{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.vc-sizzle-proof article{
  min-height:176px;
  padding:18px;
}
.vc-sizzle-proof article span{
  display:block;
  color:#7dd3fc;
  font-size:12px;
  font-weight:950;
  margin-bottom:28px;
}
.vc-sizzle-proof strong{
  font-size:20px;
}
.vc-sizzle-architecture{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:24px;
  margin-top:14px;
  padding:24px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(2,6,23,.30),rgba(255,255,255,.06));
}
.vc-sizzle-architecture p{
  margin:0;
  color:rgba(226,232,240,.76);
  font-size:14px;
  line-height:1.45;
}
.vc-sizzle-architecture div:last-child{
  display:grid;
  gap:8px;
}
.vc-sizzle-architecture div:last-child p{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.vc-sizzle-architecture strong{
  color:#fff;
}
.vc-sizzle-footer{
  display:grid;
  grid-template-columns:auto 1fr auto 1fr auto;
  gap:10px;
  align-items:center;
  margin-top:14px;
  padding:16px 20px;
  border-radius:18px;
  background:rgba(125,211,252,.10);
  color:#e2e8f0;
}
.vc-sizzle-footer strong{
  color:#fff;
}
@media (max-width:980px){
  .vc-home-hero,
  .vc-split-band,
  .vc-stack-band,
  .vc-sizzle-hero,
  .vc-sizzle-architecture{
    grid-template-columns:1fr;
  }
  .vc-marketing-grid,
  .vc-sizzle-proof,
  .vc-stack-list{
    grid-template-columns:1fr 1fr;
  }
  .vc-home-stage{
    min-height:360px;
  }
}
@media (max-width:640px){
  .vc-marketing-shell,
  .vc-sizzle-sheet{
    padding:16px 12px 24px;
  }
  .vc-home-hero{
    min-height:0;
  }
  .vc-marketing-grid,
  .vc-sizzle-proof,
  .vc-stack-list{
    grid-template-columns:1fr;
  }
  .vc-stage-slide{
    grid-template-columns:1fr;
  }
  .vc-stage-slide div:first-child{
    grid-row:auto;
  }
  .vc-sizzle-footer{
    grid-template-columns:1fr;
  }
}
@media print{
  body.vc-marketing-page{
    background:#fff!important;
  }
  .vc-sizzle-sheet{
    min-height:0;
    padding:12px;
    background:#07111f!important;
    print-color-adjust:exact;
  }
}

/* H10G78 public bright brand system. */
body.vc-home-page{
  background:#fff!important;
  color:#090536;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.vc-a-page{
  position:relative;
  min-height:100svh;
  overflow:hidden;
  padding:28px clamp(22px,4vw,60px) 42px;
  background:linear-gradient(180deg,#fff 0%,#f7fbff 54%,#fff7fd 100%);
  color:#090536;
}
.vc-a-page *{
  box-sizing:border-box;
}
.vc-a-spark{
  position:absolute;
  display:block;
  border-radius:18px;
  background:linear-gradient(135deg,#ff5b57,#7c2cff,#10c8e8);
  opacity:.16;
  pointer-events:none;
}
.vc-a-spark-one{
  width:250px;
  height:250px;
  right:-70px;
  top:90px;
  transform:rotate(12deg);
}
.vc-a-spark-two{
  width:150px;
  height:150px;
  left:42px;
  bottom:110px;
  transform:rotate(-20deg);
}
.vc-a-nav{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  max-width:1450px;
  margin:0 auto;
}
.vc-a-brand{
  display:flex;
  align-items:center;
  text-decoration:none;
}
.vc-a-brand img{
  display:block;
  width:168px;
  height:76px;
  object-fit:contain;
  object-position:center;
}
.vc-a-nav div{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.vc-a-nav a:not(.vc-a-brand){
  padding:10px 14px;
  border:1px solid #e7eaf4;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:#090536;
  text-decoration:none;
  font-size:13px;
  font-weight:900;
  box-shadow:0 10px 26px rgba(43,26,102,.04);
}
.vc-a-hero{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr);
  gap:54px;
  align-items:center;
  max-width:1450px;
  margin:42px auto 0;
}
.vc-a-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:0 13px;
  border-radius:999px;
  background:#fff;
  border:1px solid #ececf8;
  box-shadow:0 12px 34px rgba(43,26,102,.08);
  color:#5d4df0;
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.vc-a-kicker:before{
  content:"";
  width:9px;
  height:9px;
  border-radius:3px;
  background:linear-gradient(135deg,#ff5b57,#10c8e8);
}
.vc-a-copy h1{
  max-width:920px;
  margin:22px 0 20px;
  color:#090536;
  font-size:clamp(58px,8vw,120px);
  line-height:.86;
  letter-spacing:0;
}
.vc-a-copy h1 span{
  background:linear-gradient(100deg,#ff5b57,#ee3fb5,#7c2cff,#10c8e8);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.vc-a-copy p{
  max-width:760px;
  color:#3f4160;
  font-size:clamp(19px,1.6vw,25px);
  line-height:1.34;
}
.vc-a-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:30px;
}
.vc-a-primary,
.vc-a-secondary,
.vc-a-walkthrough button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  border-radius:999px;
  padding:0 19px;
  border:0;
  text-decoration:none;
  font-size:14px;
  font-weight:950;
  cursor:pointer;
}
.vc-a-primary,
.vc-a-walkthrough button{
  color:#fff;
  background:linear-gradient(100deg,#ff5b57,#7c2cff,#10c8e8);
  box-shadow:0 18px 48px rgba(124,44,255,.25);
}
.vc-a-secondary{
  color:#090536;
  background:#fff;
  border:1px solid #e5e8f3;
}
.vc-a-showcase{
  min-height:548px;
  border-radius:38px;
  background:rgba(255,255,255,.82);
  box-shadow:0 34px 100px rgba(28,24,80,.16);
  border:1px solid rgba(255,255,255,.9);
  padding:22px;
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:18px;
  backdrop-filter:blur(16px);
}
.vc-a-showtop{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.vc-a-showtop strong{
  color:#090536;
  font-size:16px;
}
.vc-a-showtop span{
  padding:9px 12px;
  border-radius:999px;
  background:#f4fffe;
  color:#008ba0;
  font-weight:950;
  font-size:12px;
}
.vc-a-logo-card{
  display:grid;
  place-items:center;
  min-height:262px;
  border-radius:28px;
  background:linear-gradient(135deg,#fff,#f8fbff);
  border:1px solid #edf0fb;
}
.vc-a-logo-card img{
  width:min(86%,440px);
  height:230px;
  object-fit:contain;
}
.vc-a-signal{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.vc-a-signal div{
  min-height:80px;
  border-radius:22px;
  padding:17px;
  background:linear-gradient(180deg,#fff,#f7f9ff);
  border:1px solid #e7ebf7;
}
.vc-a-signal b{
  display:block;
  color:#090536;
  font-size:19px;
}
.vc-a-signal span{
  display:block;
  margin-top:7px;
  color:#6d7088;
  font-size:12px;
  font-weight:850;
}
.vc-a-proof{
  position:relative;
  z-index:1;
  max-width:1450px;
  margin:24px auto 0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:13px;
}
.vc-a-proof article{
  min-height:130px;
  padding:20px;
  border-radius:24px;
  background:rgba(255,255,255,.82);
  border:1px solid #edf0f8;
  box-shadow:0 16px 40px rgba(30,25,80,.07);
}
.vc-a-proof strong{
  display:block;
  color:#090536;
  font-size:18px;
}
.vc-a-proof p{
  margin:9px 0 0;
  color:#5d6178;
  line-height:1.45;
  font-size:14px;
}
.vc-a-band{
  position:relative;
  z-index:1;
  max-width:1450px;
  margin:16px auto 0;
  border-radius:30px;
  background:#090536;
  color:#fff;
  padding:30px;
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:30px;
  align-items:center;
  overflow:hidden;
}
.vc-a-band .vc-a-kicker{
  color:#5d4df0;
}
.vc-a-band h2,
.vc-a-walkthrough h2{
  margin:12px 0 0;
  color:inherit;
  font-size:clamp(34px,4vw,62px);
  line-height:.95;
  letter-spacing:0;
}
.vc-a-band p,
.vc-a-walkthrough p{
  color:#ccd0ff;
  font-size:17px;
  line-height:1.45;
}
.vc-a-chips{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.vc-a-chips span{
  padding:11px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.13);
  color:#fff;
  font-weight:900;
  font-size:13px;
}
.vc-a-walkthrough{
  position:relative;
  z-index:1;
  max-width:1450px;
  margin:16px auto 0;
  border-radius:30px;
  padding:30px;
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:30px;
  align-items:start;
  background:rgba(255,255,255,.88);
  border:1px solid #edf0f8;
  box-shadow:0 18px 54px rgba(30,25,80,.08);
}
.vc-a-walkthrough h2{
  color:#090536;
}
.vc-a-walkthrough p{
  color:#4d506b;
}
.vc-a-walkthrough form{
  display:grid;
  gap:12px;
}
.vc-a-walkthrough label{
  display:grid;
  gap:6px;
  color:#090536;
  font-size:13px;
  font-weight:900;
}
.vc-a-walkthrough input,
.vc-a-walkthrough textarea{
  width:100%;
  border:1px solid #e5e8f3;
  border-radius:18px;
  padding:13px 14px;
  background:#fff;
  color:#090536;
  font:inherit;
  font-size:14px;
}
.vc-a-walkthrough textarea{
  resize:vertical;
}
.vc-a-walkthrough input[name="website"]{
  position:absolute;
  left:-10000px;
  width:1px;
  height:1px;
  opacity:0;
}
.vc-a-form-note{
  border-radius:18px;
  padding:12px 14px;
  font-weight:850;
  font-size:14px;
}
.vc-a-form-note.good{
  color:#075985;
  background:#e0f7ff;
  border:1px solid #bae6fd;
}
.vc-a-form-note.warn{
  color:#7f1d1d;
  background:#fff1f2;
  border:1px solid #fecdd3;
}
.vc-a-story-strip{
  position:relative;
  z-index:1;
  max-width:1450px;
  margin:16px auto 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
}
.vc-a-story-strip article{
  min-height:148px;
  padding:20px;
  border-radius:24px;
  background:rgba(255,255,255,.84);
  border:1px solid #edf0f8;
  box-shadow:0 16px 40px rgba(30,25,80,.07);
}
.vc-a-story-strip span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:999px;
  margin-bottom:14px;
  color:#fff;
  font-size:13px;
  font-weight:950;
  background:linear-gradient(135deg,#ff5b57,#7c2cff,#10c8e8);
}
.vc-a-story-strip strong{
  display:block;
  color:#090536;
  font-size:20px;
}
.vc-a-story-strip p{
  margin:8px 0 0;
  color:#5d6178;
  line-height:1.45;
  font-size:14px;
}
.vc-a-login{
  display:flex;
  flex-direction:column;
}
.vc-a-login-grid{
  position:relative;
  z-index:1;
  width:min(1180px,100%);
  margin:auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,480px);
  gap:44px;
  align-items:center;
  padding:54px 0;
}
.vc-a-login-grid .vc-a-copy h1{
  font-size:clamp(52px,6.6vw,92px);
}
.vc-a-login-card{
  border-radius:34px;
  padding:28px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:0 34px 100px rgba(28,24,80,.16);
  backdrop-filter:blur(16px);
}
.vc-a-login-card form{
  display:grid;
  gap:14px;
  margin-top:20px;
}
.vc-a-login-card label{
  display:grid;
  gap:7px;
  color:#090536;
  font-size:13px;
  font-weight:950;
}
.vc-a-login-card input{
  width:100%;
  min-height:48px;
  border:1px solid #e5e8f3;
  border-radius:18px;
  padding:13px 14px;
  background:#fff;
  color:#090536;
  font:inherit;
  font-size:15px;
}
.vc-a-login-card button{
  min-height:48px;
  border-radius:999px;
  border:0;
  color:#fff;
  font-weight:950;
  cursor:pointer;
  background:linear-gradient(100deg,#ff5b57,#7c2cff,#10c8e8);
  box-shadow:0 18px 48px rgba(124,44,255,.25);
}
.vc-a-login-card p{
  margin:18px 0 0;
  color:#575b76;
  font-size:14px;
  line-height:1.45;
}
@media(max-width:960px){
  .vc-a-hero,
  .vc-a-band,
  .vc-a-walkthrough,
  .vc-a-login-grid{
    grid-template-columns:1fr;
  }
  .vc-a-proof{
    grid-template-columns:1fr 1fr;
  }
  .vc-a-showcase{
    min-height:420px;
  }
  .vc-a-copy h1{
    font-size:clamp(46px,14vw,72px);
  }
  .vc-a-story-strip{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .vc-a-page{
    padding:18px 14px 28px;
  }
  .vc-a-nav div{
    display:none;
  }
  .vc-a-brand img{
    width:142px;
    height:62px;
  }
  .vc-a-proof,
  .vc-a-signal{
    grid-template-columns:1fr;
  }
  .vc-a-band,
  .vc-a-walkthrough{
    padding:22px;
  }
  .vc-a-login-grid{
    gap:22px;
    padding:30px 0 0;
  }
  .vc-a-login-card{
    padding:22px;
    border-radius:28px;
  }
}
