/* Shared public demo placement and native video dialog. */
[data-pro-demo-placement][hidden], .qc-pro-demo [hidden] { display:none !important; }
.qc-pro-demo-preview { max-width:44rem; margin:1rem auto 0; }
.qc-pro-demo-trigger {
  display:flex; align-items:center; gap:1rem; width:100%; min-height:44px;
  padding:.65rem; border:1px solid rgba(47,233,255,.28); border-radius:12px;
  background:rgba(4,22,31,.84); color:#f1fbff; text-align:left; cursor:pointer;
  font:inherit; box-shadow:0 8px 30px rgba(0,0,0,.15);
}
.qc-pro-demo-trigger:hover { border-color:#2fe9ff; background:#082633; }
.qc-pro-demo-trigger img { width:8rem; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:6px; }
.qc-pro-demo-trigger strong { display:block; font-size:.96rem; }
.qc-pro-demo-trigger small { display:block; margin-top:.25rem; color:#bfdce6; font-size:.8rem; }
.qc-pro-demo-play { margin-left:auto; padding:.6rem; color:#2fe9ff; font-size:1.1rem; }
.qc-pro-demo-entry { margin:1rem auto; width:fit-content; max-width:calc(100% - 2rem); }
.qc-pro-demo-entry .qc-pro-demo-trigger { width:auto; padding:.7rem 1.1rem; font-size:.9rem; }
html.qc-pro-demo-open, html.qc-pro-demo-open body { overflow:hidden !important; }
.qc-pro-demo {
  width:min(70rem, calc(100vw - 2rem)); max-width:none; max-height:calc(100dvh - 2rem);
  box-sizing:border-box; margin:auto; padding:1.1rem; overflow-y:auto; overscroll-behavior:contain;
  border:1px solid #326070; border-radius:16px; color:#f1fbff; background:#06131c;
  box-shadow:0 24px 90px rgba(0,0,0,.65); font-family:inherit;
}
.qc-pro-demo::backdrop { background:rgba(0,5,10,.88); }
.qc-pro-demo__header { display:flex; gap:1rem; align-items:center; justify-content:space-between; }
.qc-pro-demo__header h2 { margin:0; font-size:clamp(1.1rem,2vw,1.5rem); color:#f1fbff; }
.qc-pro-demo__description { margin:.35rem 0 1rem; color:#bfdce6; font-size:.88rem; }
.qc-pro-demo__close, .qc-pro-demo__button {
  display:inline-flex; justify-content:center; align-items:center; min-height:44px; box-sizing:border-box;
  border:1px solid #477686; border-radius:8px; padding:.65rem 1rem;
  background:#0b2834; color:#f1fbff; font:inherit; font-size:.9rem;
  cursor:pointer; text-decoration:none; flex-shrink:0;
}
.qc-pro-demo__close:hover, .qc-pro-demo__button:hover { background:#134153; color:white; }
.qc-pro-demo__video { display:block; width:100%; aspect-ratio:16/9; max-height:66dvh; background:#000; object-fit:contain; border-radius:8px; }
.qc-pro-demo__video + button { margin-top:.7rem; }
.qc-pro-demo__error { padding:.75rem; border-left:3px solid #ffd58b; background:#2a241a; color:#fff1d6; }
.qc-pro-demo__transcript { margin-top:1rem; padding:.8rem 0; border-top:1px solid #284753; }
.qc-pro-demo__transcript summary { cursor:pointer; padding:.3rem 0; min-height:24px; color:#cae9f2; }
.qc-pro-demo__transcript p { max-width:65ch; line-height:1.6; color:#cae0e9; font-size:.94rem; }
.qc-pro-demo__footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:.3rem; }
.qc-pro-demo__footer p { margin:0; max-width:44rem; color:#aac5d1; font-size:.78rem; line-height:1.5; }
.qc-pro-demo__plans { border-color:#2fe9ff; color:#2fe9ff; }
.qc-pro-demo :focus-visible, .qc-pro-demo-trigger:focus-visible, #pro-plans:focus-visible { outline:2px solid #f6fcff; outline-offset:4px; }
@media (max-width:600px) {
  .qc-pro-demo-preview { margin-top:.75rem; }
  .qc-pro-demo-trigger { gap:.65rem; }
  .qc-pro-demo-trigger img { width:5rem; }
  .qc-pro-demo-trigger strong { font-size:.86rem; }
  .qc-pro-demo-trigger small { font-size:.72rem; }
  .qc-pro-demo-play { padding:.3rem; }
  .qc-pro-demo { width:calc(100vw - 1rem); max-height:calc(100dvh - 1rem); padding:.8rem; border-radius:12px; }
  .qc-pro-demo__header { align-items:flex-start; }
  .qc-pro-demo__close { padding:.6rem; }
  .qc-pro-demo__footer { flex-direction:column; align-items:stretch; }
  .qc-pro-demo__plans { width:100%; }
}
