/* استودیوی زیرنویسِ نابغه v3 — تایم‌لاین، پنلِ زیرنویس، گالریِ قالب‌ها (۱۴۰۵/۰۸/۰۱) */
.vcs3{ max-width:820px; }
.vcs3 .vcs-screen{ max-width:440px; touch-action:manipulation; }
.vcs-fxwrap{ position:absolute; left:0; top:0; pointer-events:none; overflow:hidden; }
.vcs-fxwrap > div{ position:absolute; left:0; top:0; }
.vcs-dragging{ cursor:grabbing; }
.vcs-dragging .vcs-fxwrap{ outline:1.5px dashed rgba(255,255,255,.75); outline-offset:-2px; }
.vcs-btn-glam{ background:linear-gradient(135deg, color-mix(in srgb, var(--env-family-accent) 14%, var(--env-paper)), var(--env-paper)); font-weight:700; }
.vcs-btn-danger:hover{ border-color:#c0392b; color:#c0392b; }
.vcs3 .vcs-editor[hidden]{ display:none; }

/* ── نوارِ ابزارِ تایم‌لاین ── */
.vcs-tl-bar{ display:flex; flex-wrap:wrap; gap:8px 12px; justify-content:space-between; align-items:center; }
.vcs-tl-bar-g{ display:flex; flex-wrap:wrap; gap:5px; align-items:center; }
.vcs-play{ width:34px; height:34px; border-radius:50%; background:var(--env-family-accent) !important; color:#fff !important; border-color:var(--env-family-accent) !important; font-size:.85rem; }
.vcs-tl-time{ font:600 .74rem/1 ui-monospace, SFMono-Regular, Menlo, monospace; color:var(--env-ink); min-width:92px; }
.vcs-tl-hint{ margin-top:-4px; }

/* ── تایم‌لاین ── */
.vct{ position:relative; border:1.5px solid var(--env-border); border-radius:12px; background:var(--env-paper-2); outline:none; user-select:none; -webkit-user-select:none; }
.vct:focus-visible{ border-color:var(--env-family-accent); }
.vct-scroll{ overflow-x:auto; overflow-y:hidden; border-radius:11px; scrollbar-width:thin; }
.vct-inner{ position:relative; height:118px; min-width:100%; touch-action:pan-x; }
.vct-ruler{ position:absolute; left:0; right:0; top:0; height:22px; border-bottom:1px solid var(--env-border); cursor:pointer;
  background:color-mix(in srgb, var(--env-paper) 70%, transparent); }
.vct-tick{ position:absolute; top:0; height:22px; padding-left:4px; border-left:1px solid color-mix(in srgb, var(--env-ink-muted) 45%, transparent);
  font:500 10px/22px ui-monospace, Menlo, monospace; color:var(--env-ink-muted); white-space:nowrap; }
.vct-track{ position:absolute; left:0; right:0; top:30px; height:80px; }
.vct-cue{ position:absolute; top:0; height:80px; box-sizing:border-box; border-radius:9px; cursor:grab; overflow:hidden;
  background:color-mix(in srgb, var(--env-family-accent) 22%, var(--env-paper)); border:1.5px solid color-mix(in srgb, var(--env-family-accent) 55%, transparent);
  transition:box-shadow .15s; }
.vct-cue:hover{ box-shadow:0 0 0 2px color-mix(in srgb, var(--env-family-accent) 35%, transparent); }
.vct-cue.live{ background:color-mix(in srgb, var(--env-family-accent) 34%, var(--env-paper)); }
.vct-cue.sel{ border-color:var(--env-family-accent); border-width:2px; box-shadow:0 0 0 3px color-mix(in srgb, var(--env-family-accent) 30%, transparent); z-index:2;
  background:color-mix(in srgb, var(--env-family-accent) 16%, var(--env-paper)); }
.vct-cue:active{ cursor:grabbing; }
.vct-cue-txt{ padding:4px 9px 0; font-size:.7rem; line-height:1.45; color:var(--env-ink); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; pointer-events:none; }
.vct-h{ position:absolute; top:0; bottom:0; width:9px; cursor:ew-resize; z-index:3; }
.vct-h::after{ content:''; position:absolute; top:28%; bottom:28%; width:3px; border-radius:2px; background:var(--env-family-accent); opacity:.55; }
.vct-h-l{ left:0; } .vct-h-l::after{ left:2px; }
.vct-h-r{ right:0; } .vct-h-r::after{ right:2px; }
.vct-cue:hover .vct-h::after, .vct-cue.sel .vct-h::after{ opacity:1; }
.vct-words{ position:absolute; left:0; right:0; bottom:5px; height:36px; }
.vct-w{ position:absolute; top:0; height:36px; box-sizing:border-box; border-radius:6px; background:color-mix(in srgb, var(--env-paper) 82%, transparent);
  border:1px solid color-mix(in srgb, var(--env-family-accent) 35%, transparent); font-size:.66rem; line-height:34px; text-align:center;
  overflow:hidden; white-space:nowrap; color:var(--env-ink); pointer-events:none; direction:rtl; }
.vct-w.em{ background:color-mix(in srgb, #ffd54a 55%, var(--env-paper)); }
.vct-wb{ position:absolute; top:-2px; width:8px; height:40px; cursor:col-resize; z-index:4; }
.vct-wb::after{ content:''; position:absolute; left:3px; top:4px; bottom:4px; width:2px; border-radius:1px; background:var(--env-family-accent); }
.vct-wb:hover::after{ width:3px; left:2.5px; background:#ff9800; }
.vct-ph{ position:absolute; top:0; bottom:0; width:2px; margin-left:-1px; background:#ff3b30; z-index:5; pointer-events:none; }
.vct-ph-knob{ position:absolute; top:0; left:-6px; width:14px; height:12px; background:#ff3b30; border-radius:3px 3px 7px 7px; }

/* ── پنلِ زیرنویسِ انتخاب‌شده ── */
.vcs-insp{ display:flex; flex-direction:column; gap:10px; padding:12px; border-radius:12px; background:var(--env-paper-2); border:1px solid var(--env-border); }
.vcs-insp [hidden]{ display:none !important; }
.vcs-insp-head{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.vcs-insp-title{ font-size:.82rem; color:var(--env-ink); }
.vcs-insp-head .vcs-warn{ margin-inline-start:auto; }
.vcs-insp-body{ display:flex; flex-direction:column; gap:10px; }
.vcs3 textarea.vcs-insp-text{ font-size:.95rem; min-height:58px; resize:vertical; }
.vcs-insp-row{ display:grid; grid-template-columns:repeat(auto-fit, minmax(170px, 1fr)); gap:10px; }
.vcs-chips{ display:flex; flex-wrap:wrap; gap:6px; }
.vcs-wchip{ font-family:inherit; font-size:.8rem; padding:4px 10px; border-radius:999px; cursor:pointer; color:var(--env-ink);
  background:var(--env-paper); border:1.5px solid var(--env-border); }
.vcs-wchip:hover{ border-color:var(--env-family-accent); }
.vcs-wchip.on{ background:#ffd54a; border-color:#e0b400; color:#111; font-weight:800; }

/* ── فهرستِ کامل ── */
.vcs-listpane:not([hidden]){ display:flex; flex-direction:column; gap:8px; }
.vcs3 .vcs-list{ max-height:380px; }
.vcs3 .vcs-row{ display:flex; flex-direction:column; gap:6px; padding:8px; border-radius:10px; border:1.5px solid var(--env-border); background:var(--env-paper); }
.vcs3 .vcs-info{ font-family:ui-monospace, Menlo, monospace; }

/* ── پنلِ ظاهر ── */
.vcs-stylepanel:not([hidden]){ gap:10px; }
.vcs-tabs{ display:flex; gap:6px; border-bottom:1.5px solid var(--env-border); }
.vcs-tab{ font-family:inherit; font-size:.82rem; font-weight:700; padding:8px 14px; cursor:pointer; color:var(--env-ink-muted);
  background:none; border:none; border-bottom:3px solid transparent; margin-bottom:-1.5px; }
.vcs-tab.active{ color:var(--env-family-accent); border-bottom-color:var(--env-family-accent); }
.vcs-tplpane[hidden], .vcs-custompane[hidden]{ display:none; }
.vcs-cats{ display:flex; gap:6px; overflow-x:auto; padding:2px 0 8px; scrollbar-width:thin; }
.vcs-cat{ flex:none; font-family:inherit; font-size:.74rem; font-weight:700; padding:5px 12px; border-radius:999px; cursor:pointer;
  color:var(--env-ink-muted); background:var(--env-paper-2); border:1.5px solid var(--env-border); }
.vcs-cat.active{ color:#fff; background:var(--env-family-accent); border-color:var(--env-family-accent); }
.vcs-tplgrid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:10px; max-height:460px; overflow-y:auto; padding:2px 2px 4px; }
.vcs-tplcard{ display:flex; flex-direction:column; gap:5px; padding:0; cursor:pointer; background:none; border:none; font-family:inherit; text-align:center; }
.vcs-tplcard[hidden]{ display:none; }
.vcs-tplframe{ position:relative; width:100%; aspect-ratio:16/9; border-radius:10px; overflow:hidden; border:2px solid transparent;
  background:linear-gradient(160deg, #3a4a63 0%, #1a2233 55%, #0d121c 100%); transition:transform .15s, border-color .15s; }
.vcs-tplframe::before{ content:''; position:absolute; inset:0; background:radial-gradient(120% 70% at 30% 20%, rgba(255,190,120,.35), transparent 60%),
  radial-gradient(90% 60% at 80% 90%, rgba(80,140,255,.28), transparent 60%); }
.vcs-tplframe > div{ position:absolute; left:0; top:0; }
.vcs-tplcard:hover .vcs-tplframe{ transform:translateY(-2px); border-color:color-mix(in srgb, var(--env-family-accent) 50%, transparent); }
.vcs-tplcard.active .vcs-tplframe{ border-color:var(--env-family-accent); box-shadow:0 0 0 3px color-mix(in srgb, var(--env-family-accent) 28%, transparent); }
.vcs-tplname{ font-size:.72rem; font-weight:700; color:var(--env-ink); }
.vcs-tplcard.active .vcs-tplname{ color:var(--env-family-accent); }
.vcs-custompane:not([hidden]){ display:flex; flex-direction:column; gap:8px; max-height:520px; overflow-y:auto; padding-inline-end:4px; }
.vcs-sec{ border:1px solid var(--env-border); border-radius:12px; background:var(--env-paper-2); }
.vcs-sec > summary{ cursor:pointer; padding:9px 12px; font-size:.8rem; font-weight:800; color:var(--env-ink); list-style:none; }
.vcs-sec > summary::-webkit-details-marker{ display:none; }
.vcs-sec > summary::after{ content:'▾'; float:left; color:var(--env-ink-muted); }
.vcs-sec:not([open]) > summary::after{ content:'◂'; }
.vcs-sec > .vcs-grid{ padding:4px 12px 12px; }
.vcs-sec .vcs-field[hidden]{ display:none; }

@media (max-width:640px){
  .vcs3 .vcs-screen{ max-width:100%; }
  .vcs-tplgrid{ grid-template-columns:repeat(2, 1fr); max-height:400px; }
  .vct-inner{ height:110px; }
  .vcs-tl-bar{ gap:6px; }
  .vcs-tl-bar-g{ gap:4px; }
  .vcs-insp-row{ grid-template-columns:1fr 1fr; }
}
/* ابزارهایِ هوشمندِ زیرنویس (۱۴۰۵/۰۸/۰۱) */
.vcs-smart{ display:flex; flex-wrap:wrap; gap:8px; margin:8px 0; }
.vcs-cap{ display:grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap:10px; margin:6px 0 10px; }
.vcs-cap-it{ display:flex; flex-direction:column; gap:6px; } .vcs-cap-it b{ font-size:.78rem; }
.vcs-cap-ta{ width:100%; box-sizing:border-box; font:inherit; font-size:.82rem; line-height:1.8; padding:8px 10px; border-radius:10px; border:1px solid rgba(127,127,127,.3); background: transparent; color: inherit; resize:vertical; }
.vcs-cap-it .vcs-btn{ align-self:flex-start; }
.vcs-mine{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-bottom:8px; } .vcs-mine:empty{ display:none; }
.vcs-mine b{ font-size:.76rem; margin-inline-end:4px; }
.vcs-mine-it{ display:inline-flex; align-items:center; } .vcs-mine-x{ border:0; background:transparent; cursor:pointer; color:#999; font-size:1rem; padding:0 4px; }

/* ۱۴۰۵/۰۸/۰۸ — راهنمایِ سه‌قدمی، «تنظیمِ سریع» و گوینده‌ها */
.vcs-guide{ display:flex; gap:8px; flex-wrap:wrap; margin:2px 0 10px; }
.vcs-step{ flex:1 1 150px; display:flex; align-items:center; gap:8px; padding:8px 10px; border-radius:12px; border:1px solid var(--env-border);
  background:var(--env-paper-2); color:var(--env-ink); font:inherit; font-size:.78rem; text-align:start; cursor:pointer; }
.vcs-step b{ flex:0 0 26px; height:26px; border-radius:50%; display:grid; place-items:center; background:var(--env-border); color:var(--env-ink); font-weight:900; }
.vcs-step.active{ border-color:var(--env-family-accent); box-shadow:0 0 0 2px color-mix(in srgb, var(--env-family-accent) 25%, transparent); }
.vcs-step.active b{ background:var(--env-family-accent); color:#fff; }
.vcs-step-last{ cursor:default; opacity:.85; }
.vcs-quick{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:10px; }
.vcs-qsec{ border:1px solid var(--env-border); border-radius:14px; background:var(--env-paper-2); padding:10px 12px; display:flex; flex-direction:column; gap:8px; min-width:0; }
.vcs-qsec-h{ font-size:.82rem; font-weight:900; color:var(--env-ink); }
.vcs-qnote{ font-size:.72rem; color:var(--env-ink-muted); line-height:1.7; }
.vcs-qsec .vcs-pills .vcs-pill{ flex:1 1 auto; padding:9px 10px; font-size:.82rem; }
.vcs-qsec .vcs-field[hidden]{ display:none; }
.vcs-fontbtns{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
.vcs-fontbtn{ font-size:1rem; padding:8px 4px; border-radius:10px; border:1px solid var(--env-border); background:var(--env-paper); color:var(--env-ink); cursor:pointer;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.vcs-fontbtn.active{ border-color:var(--env-family-accent); color:var(--env-family-accent); box-shadow:0 0 0 2px color-mix(in srgb, var(--env-family-accent) 22%, transparent); }
.vcs-spkbox{ display:flex; flex-direction:column; gap:8px; }
.vcs-spkrow{ display:flex; flex-wrap:wrap; align-items:center; gap:6px 8px; padding:6px 8px; border-radius:10px; background:var(--env-paper); border:1px solid var(--env-border); }
.vcs-spkdot{ width:14px; height:14px; border-radius:50%; border:2px solid rgba(0,0,0,.25); flex:0 0 auto; }
.vcs-spkname{ flex:1 1 110px; min-width:0; font:inherit; font-size:.82rem; padding:6px 8px; border-radius:8px; border:1px solid var(--env-border); background:var(--env-paper-2); color:var(--env-ink); }
.vcs-spkcount{ color:var(--env-ink-muted); font-size:.7rem; }
.vcs-spkrow .vcs-colors{ flex-basis:100%; }
@media (max-width:560px){ .vcs-fontbtns{ grid-template-columns:repeat(2,minmax(0,1fr)); } .vcs-guide{ flex-wrap:nowrap; gap:5px; }
  .vcs-step{ flex:1 1 0; flex-direction:column; text-align:center; gap:4px; padding:6px 4px; font-size:.66rem; line-height:1.5; } .vcs-step b{ flex-basis:auto; width:22px; height:22px; } }
