:root{
  --sts-v2-bg:#eef2f7;
  --sts-v2-card:#ffffff;
  --sts-v2-text:#1f2937;
  --sts-v2-strong:#0f172a;
  --sts-v2-muted:#64748b;
  --sts-v2-border:#d8e0ea;
  --sts-v2-soft:#f8fafc;
  --sts-v2-accent:#2563eb;
  --sts-v2-good:#059669;
  --sts-v2-warn:#d97706;
  --sts-v2-error:#dc2626;
}
.sts-editor-v2-app{direction:inherit;box-sizing:border-box;min-height:100vh;background:var(--sts-v2-bg);padding:18px;color:var(--sts-v2-text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.sts-editor-v2-app *{box-sizing:border-box}
.sts-v2-shell{max-width:1440px;margin:0 auto;display:grid;gap:12px}
.sts-v2-card,.sts-v2-zone{background:var(--sts-v2-card);border:1px solid var(--sts-v2-border);border-radius:18px;box-shadow:0 10px 28px rgba(15,23,42,.07)}
.sts-v2-empty-state{max-width:680px;margin:8vh auto;padding:28px;text-align:center}.sts-v2-empty-state h1{margin:0 0 8px;color:var(--sts-v2-strong)}
.sts-v2-button,.sts-v2-link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:10px 14px;text-decoration:none;border:1px solid var(--sts-v2-border);background:#fff;color:var(--sts-v2-strong);font-weight:700}
.sts-v2-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;background:var(--sts-v2-card);border:1px solid var(--sts-v2-border);border-radius:18px;padding:16px 18px;box-shadow:0 10px 28px rgba(15,23,42,.07)}
.sts-v2-kicker{margin:0 0 4px;color:var(--sts-v2-muted);font-size:13px;font-weight:700}.sts-v2-header h1{margin:0;color:var(--sts-v2-strong);font-size:28px}.sts-v2-header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sts-v2-version{color:var(--sts-v2-muted);font-size:13px}
.sts-v2-help-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #111827;border-radius:999px;background:#111827;color:#fff;padding:10px 14px;font:inherit;font-weight:800;cursor:pointer}
.sts-v2-status{min-height:40px;border:1px solid var(--sts-v2-border);border-radius:14px;background:#fff;padding:10px 14px;color:var(--sts-v2-muted);font-weight:700}.sts-v2-status button{margin-inline-start:8px;border:1px solid currentColor;border-radius:999px;background:#fff;padding:5px 10px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.sts-v2-status button:hover{box-shadow:0 0 0 3px rgba(146,64,14,.14)}.sts-v2-status[data-state=error]{background:#fef2f2;color:#991b1b;border-color:#fecaca}.sts-v2-status[data-state=ok]{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.sts-v2-status[data-state=loading]{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.sts-v2-status[data-state=dirty],.sts-v2-status[data-state=info]{background:#fffbeb;color:#92400e;border-color:#fde68a}
.sts-v2-grid{display:grid;grid-template-rows:minmax(300px,42vh) minmax(230px,30vh) minmax(230px,24vh);gap:12px;min-height:calc(100vh - 156px)}
.sts-v2-zone{min-height:0;overflow:hidden;display:flex;flex-direction:column}.sts-v2-zone-head{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--sts-v2-border);padding:10px 14px;background:var(--sts-v2-soft);color:var(--sts-v2-strong)}.sts-v2-zone-head span{display:inline-flex;width:24px;height:24px;border-radius:999px;align-items:center;justify-content:center;background:#dbeafe;color:#1d4ed8;font-weight:900}.sts-v2-zone-head strong{font-size:15px}
.sts-v2-active-layout{display:grid;grid-template-columns:minmax(260px,38%) minmax(0,1fr);gap:14px;min-height:0;flex:1;padding:14px}.sts-v2-media{min-height:0;border-radius:16px;background:#0f172a;display:grid;place-items:center;overflow:hidden}.sts-v2-media video,.sts-v2-media audio{width:100%;max-height:100%;background:#0f172a}.sts-v2-media audio{padding:18px}.sts-v2-media-missing{color:#cbd5e1;text-align:center;padding:20px;display:grid;gap:6px}.sts-v2-active-caption{min-width:0;display:flex;flex-direction:column;gap:10px}.sts-v2-active-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--sts-v2-muted);font-size:13px}.sts-v2-mode-badge,.sts-v2-mini-badge{display:inline-flex;border-radius:999px;padding:5px 9px;font-weight:800;font-size:12px;border:1px solid var(--sts-v2-border);white-space:nowrap}.sts-v2-mode-badge[data-mode=word],.sts-v2-mini-badge[data-mode=word]{background:#ecfdf5;color:#065f46;border-color:#99f6e4}.sts-v2-mode-badge[data-mode=sentence],.sts-v2-mini-badge[data-mode=sentence]{background:#fffbeb;color:#92400e;border-color:#fde68a}.sts-v2-source-ref{border:1px dashed #f59e0b;background:#fffbeb;border-radius:12px;padding:9px}.sts-v2-source-ref span{font-size:12px;color:#92400e;font-weight:800}.sts-v2-source-ref p{margin:4px 0 0;color:#78350f}.sts-v2-editor{display:grid;gap:6px;flex:1;min-height:0}.sts-v2-editor span{font-size:13px;color:var(--sts-v2-muted)}.sts-v2-editor textarea{width:100%;min-height:130px;resize:vertical;border:1px solid var(--sts-v2-border);border-radius:14px;padding:14px;font:inherit;font-size:22px;line-height:1.45;background:#fff;color:var(--sts-v2-strong);box-shadow:inset 0 1px 2px rgba(15,23,42,.04)}.sts-v2-editor textarea:focus{outline:3px solid rgba(37,99,235,.18);border-color:var(--sts-v2-accent)}.sts-v2-active-actions{display:flex;gap:8px;flex-wrap:wrap}.sts-v2-active-actions button,.sts-v2-timing-toolbar button{border:1px solid var(--sts-v2-border);background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer;font:inherit;color:var(--sts-v2-strong)}.sts-v2-active-actions button:hover,.sts-v2-timing-toolbar button:hover{border-color:var(--sts-v2-accent);box-shadow:0 0 0 3px rgba(37,99,235,.10)}.sts-v2-active-actions button:disabled{opacity:.45;cursor:not-allowed}.sts-v2-active-actions .sts-v2-save{background:var(--sts-v2-accent);border-color:var(--sts-v2-accent);color:#fff;font-weight:800}.sts-v2-save-state{display:inline-flex;align-items:center;font-size:13px;color:var(--sts-v2-muted);padding:0 6px}.sts-v2-save-state[data-state=dirty]{color:#92400e;font-weight:800}.sts-v2-save-state[data-state=saving]{color:#1d4ed8;font-weight:800}.sts-v2-save-state[data-state=clean]{color:#065f46}
.sts-v2-timing-surface{height:calc(100% - 44px);display:grid;grid-template-rows:auto minmax(128px,1fr) 48px auto;gap:8px;padding:10px}.sts-v2-timing-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--sts-v2-muted)}.sts-v2-timing-toolbar button.is-active{background:#ecfdf5;border-color:#99f6e4;color:#065f46;font-weight:800}.sts-v2-wave-note{margin-inline-start:auto;color:var(--sts-v2-muted);font-size:12px}.sts-v2-wave-canvas-wrap{position:relative;border-radius:14px;border:1px solid var(--sts-v2-border);background:#f8fafc;overflow:hidden;min-height:132px}.sts-v2-wave-canvas-wrap[data-mode=sentence]{background:#fff7ed}.sts-v2-wave-canvas{display:block;width:100%;height:100%;min-height:132px;cursor:crosshair}.sts-v2-wave-status{position:absolute;right:10px;left:10px;bottom:10px;border-radius:10px;padding:7px 10px;font-size:12px;font-weight:800;background:rgba(255,255,255,.92);border:1px solid var(--sts-v2-border);color:#475569}.sts-v2-wave-status[data-state=error]{background:#fef2f2;border-color:#fecaca;color:#991b1b}.sts-v2-wave-status[data-state=loading]{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.sts-v2-caption-track{position:relative;border:1px solid var(--sts-v2-border);border-radius:12px;overflow:hidden;background:#f8fafc;height:48px}.sts-v2-caption-block{position:absolute;top:8px;height:32px;border:0;border-radius:8px;background:#cbd5e1;color:#334155;cursor:pointer;min-width:4px;overflow:hidden}.sts-v2-caption-block span{font-size:11px;font-weight:800}.sts-v2-caption-block.is-active{background:var(--sts-v2-accent);color:#fff;box-shadow:0 0 0 3px rgba(37,99,235,.16)}.sts-v2-playhead{position:absolute;top:0;bottom:0;width:2px;background:#ef4444;transform:translateX(-1px);pointer-events:none;z-index:5}.sts-v2-timing-hint{font-size:12px;color:var(--sts-v2-muted);line-height:1.5}
.sts-v2-caption-list{height:calc(100% - 44px);overflow:auto}.sts-v2-list-head,.sts-v2-list-row{display:grid;grid-template-columns:58px 92px minmax(160px,1fr) 110px 110px;gap:10px;align-items:center}.sts-v2-list-head{position:sticky;top:0;z-index:1;background:#f9fafb;border-bottom:1px solid var(--sts-v2-border);padding:9px 12px;color:var(--sts-v2-muted);font-size:12px;font-weight:800}.sts-v2-list-row{width:100%;border:0;border-bottom:1px solid #eef2f7;background:#fff;padding:10px 12px;text-align:inherit;cursor:pointer;color:var(--sts-v2-text)}.sts-v2-list-row:hover,.sts-v2-list-row.is-active{background:#eff6ff}.sts-v2-list-row span:nth-child(3){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sts-v2-list-row span:nth-child(4),.sts-v2-list-row span:nth-child(5){direction:ltr;text-align:left;font-variant-numeric:tabular-nums;color:var(--sts-v2-muted)}
.sts-v2-help-panel[hidden]{display:none!important}.sts-v2-help-panel{position:fixed;inset:0;z-index:99999;direction:inherit}.sts-v2-help-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(2px)}.sts-v2-help-dialog{position:absolute;top:24px;bottom:24px;left:24px;width:min(760px,calc(100vw - 48px));background:#fff;border:1px solid var(--sts-v2-border);border-radius:22px;box-shadow:0 26px 70px rgba(15,23,42,.32);overflow:hidden;display:flex;flex-direction:column;color:var(--sts-v2-text)}.sts-v2-help-dialog:focus{outline:3px solid rgba(37,99,235,.28)}.sts-v2-help-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px;border-bottom:1px solid var(--sts-v2-border);background:#f8fafc}.sts-v2-help-head h2{margin:0;font-size:24px;color:var(--sts-v2-strong)}.sts-v2-help-close{border:1px solid var(--sts-v2-border);background:#fff;border-radius:50%;width:40px;height:40px;font-size:26px;line-height:1;cursor:pointer;color:var(--sts-v2-strong)}.sts-v2-help-body{padding:18px 22px 24px;overflow:auto;display:grid;gap:16px}.sts-v2-help-body section{border:1px solid #eef2f7;border-radius:16px;padding:14px 16px;background:#fff}.sts-v2-help-body h3{margin:0 0 8px;font-size:18px;color:var(--sts-v2-strong)}.sts-v2-help-body p{margin:0 0 8px;color:#475569;line-height:1.65}.sts-v2-help-body ul,.sts-v2-help-body ol{margin:8px 0 0;padding-inline-start:22px;color:#334155;line-height:1.65}.sts-v2-shortcut-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sts-v2-shortcut-grid div{display:flex;align-items:center;gap:6px;border:1px solid #eef2f7;border-radius:12px;background:#f8fafc;padding:9px 10px}.sts-v2-shortcut-grid span{margin-inline-start:auto;color:#334155;font-size:13px}.sts-v2-shortcut-grid kbd{display:inline-flex;min-width:28px;justify-content:center;border:1px solid #cbd5e1;border-bottom-width:2px;border-radius:7px;background:#fff;padding:3px 7px;font:600 12px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;color:#0f172a;direction:ltr}.sts-v2-help-planned{background:#fffbeb!important;border-color:#fde68a!important}.sts-editor-v2-app.is-help-open{overflow:hidden}
@media (max-width:900px){.sts-editor-v2-app{padding:10px}.sts-v2-header{display:block}.sts-v2-header-actions{margin-top:10px}.sts-v2-grid{grid-template-rows:auto 240px 340px}.sts-v2-active-layout{grid-template-columns:1fr}.sts-v2-editor textarea{font-size:18px}.sts-v2-list-head,.sts-v2-list-row{grid-template-columns:44px 76px minmax(100px,1fr)}.sts-v2-list-head span:nth-child(4),.sts-v2-list-head span:nth-child(5),.sts-v2-list-row span:nth-child(4),.sts-v2-list-row span:nth-child(5){display:none}.sts-v2-help-dialog{top:10px;right:10px;left:10px;bottom:10px;width:auto;border-radius:18px}.sts-v2-help-head{padding:16px}.sts-v2-help-body{padding:14px}.sts-v2-shortcut-grid{grid-template-columns:1fr}.sts-v2-help-button{width:100%}}
/* Compatibility markers for V2 regression tests and future overlays. */
.sts-v2-word-tick,.sts-v2-sentence-tick{position:absolute;pointer-events:none}.sts-v2-active-envelope,.sts-v2-boundary-line{position:absolute;pointer-events:none}


/* v0.1.120 — Editor V2 fullscreen workbench layout rescue.
   Keep V2 isolated from the legacy editor while making the shortcode page feel like an app, not a WordPress article. */
html.sts-editor-v2-fullscreen,
body.sts-editor-v2-fullscreen{
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  width:100%!important;
  height:100%!important;
}
body.sts-editor-v2-fullscreen > *:not(.sts-editor-v2-app){
  visibility:hidden!important;
}
body.sts-editor-v2-fullscreen .sts-editor-v2-app,
body.sts-editor-v2-fullscreen .sts-editor-v2-app *{
  visibility:visible!important;
}
.sts-editor-v2-app{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:0!important;
  overflow:hidden!important;
  padding:10px!important;
  background:var(--sts-v2-bg)!important;
}
.sts-v2-shell{
  max-width:none!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
  gap:8px!important;
}
.sts-v2-header{
  min-height:0!important;
  padding:8px 12px!important;
  border-radius:14px!important;
  align-items:center!important;
}
.sts-v2-kicker{display:none!important}
.sts-v2-header h1{font-size:18px!important;line-height:1.2!important;margin:0!important}
.sts-v2-header-actions{gap:6px!important}
.sts-v2-help-button,.sts-v2-button,.sts-v2-link{
  padding:6px 10px!important;
  min-height:30px!important;
  font-size:13px!important;
}
.sts-v2-version{font-size:12px!important}
.sts-v2-notice-stack{
  display:grid!important;
  grid-auto-rows:max-content!important;
  gap:6px!important;
  min-height:0!important;
  max-height:min(34vh,260px)!important;
  overflow:auto!important;
  align-content:start!important;
}
.sts-v2-notice-stack:empty{display:none!important}
.sts-v2-notice-stack>.sts-v2-status:empty{display:none!important}
.sts-v2-notice-stack>.sts-v2-status{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.sts-v2-notice-stack .sts-v2-review-notice{
  position:static!important;
  width:auto!important;
  min-height:0!important;
  margin:0!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.sts-v2-notice-stack .sts-v2-review-notice>div{min-width:0;flex:1 1 420px}
.sts-v2-notice-stack .sts-v2-review-notice button{flex:0 0 auto;max-width:100%;white-space:normal!important}
.sts-v2-notice-stack .sts-v2-timing-problem-navigator{
  position:static!important;
  width:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:8px 10px!important;
  border:1px solid #f59e0b!important;
  border-radius:10px!important;
  background:#fffbeb!important;
  color:#92400e!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  font-size:12px!important;
  line-height:1.35!important;
}
.sts-v2-notice-stack .sts-v2-timing-problem-navigator>div:first-child{min-width:0;flex:1 1 420px}
.sts-v2-notice-stack .sts-v2-timing-problem-navigator strong{display:block!important;margin:0 0 2px!important}
.sts-v2-notice-stack .sts-v2-timing-problem-navigator span{display:block!important}
.sts-v2-notice-stack .sts-v2-timing-problem-actions{display:flex!important;gap:6px!important;flex:0 0 auto!important;max-width:100%!important}
.sts-v2-notice-stack .sts-v2-timing-problem-actions button{
  min-height:30px!important;
  padding:4px 9px!important;
  border:1px solid #d97706!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#92400e!important;
  font:inherit!important;
  font-weight:800!important;
  cursor:pointer!important;
  white-space:normal!important;
}
.sts-v2-status{
  min-height:30px!important;
  padding:6px 10px!important;
  border-radius:10px!important;
  font-size:13px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sts-v2-grid{
  height:100%!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:minmax(178px,28vh) minmax(0,1fr)!important;
  grid-template-areas:
    "active active"
    "waveform list"!important;
  gap:8px!important;
}
.sts-v2-zone{
  min-height:0!important;
  border-radius:14px!important;
  box-shadow:0 5px 16px rgba(15,23,42,.055)!important;
}
.sts-v2-zone-active{grid-area:active!important}
.sts-v2-zone-waveform{grid-area:waveform!important}
.sts-v2-zone-list{grid-area:list!important}
.sts-v2-zone-head{
  min-height:32px!important;
  padding:6px 10px!important;
  gap:6px!important;
}
.sts-v2-zone-head span{
  width:20px!important;
  height:20px!important;
  font-size:12px!important;
}
.sts-v2-zone-head strong{font-size:13px!important}
.sts-v2-active-layout{
  grid-template-columns:minmax(220px,28%) minmax(0,1fr)!important;
  gap:10px!important;
  padding:10px!important;
}
.sts-v2-media{
  border-radius:12px!important;
}
.sts-v2-media audio{padding:8px!important}
.sts-v2-active-caption{gap:6px!important;min-height:0!important}
.sts-v2-active-meta{
  gap:6px!important;
  font-size:12px!important;
}
.sts-v2-mode-badge,.sts-v2-mini-badge{
  padding:3px 7px!important;
  font-size:11px!important;
}
.sts-v2-source-ref{
  padding:6px 8px!important;
  border-radius:9px!important;
}
.sts-v2-source-ref p{margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.sts-v2-editor{gap:4px!important;flex:0 0 auto!important}
.sts-v2-editor span{font-size:12px!important}
.sts-v2-editor textarea{
  height:72px!important;
  min-height:62px!important;
  max-height:118px!important;
  resize:vertical!important;
  padding:9px 10px!important;
  border-radius:10px!important;
  font-size:19px!important;
  line-height:1.28!important;
}
.sts-v2-active-actions{
  display:flex!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  max-height:none!important;
  overflow:visible!important;
}
.sts-v2-active-actions button,
.sts-v2-timing-toolbar button{
  padding:6px 9px!important;
  min-height:30px!important;
  font-size:13px!important;
  border-radius:999px!important;
}
.sts-v2-save-state{
  font-size:12px!important;
  min-height:28px!important;
}
.sts-v2-timing-surface{
  height:100%!important;
  display:grid!important;
  grid-template-rows:auto 76px 32px auto!important;
  gap:6px!important;
  padding:8px!important;
}
.sts-v2-timing-toolbar{
  gap:6px!important;
  flex-wrap:wrap!important;
  line-height:1.2!important;
  font-size:12px!important;
}
.sts-v2-timing-toolbar strong{font-size:13px!important}
.sts-v2-wave-note{
  flex-basis:100%!important;
  margin-inline-start:0!important;
  font-size:11px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sts-v2-wave-canvas-wrap{
  min-height:0!important;
  height:76px!important;
  border-radius:10px!important;
}
.sts-v2-wave-canvas{
  min-height:0!important;
  height:76px!important;
}
.sts-v2-wave-status{
  right:6px!important;
  left:6px!important;
  bottom:5px!important;
  padding:4px 7px!important;
  font-size:11px!important;
}
.sts-v2-caption-track{
  height:32px!important;
  border-radius:9px!important;
}
.sts-v2-caption-block{
  top:5px!important;
  height:22px!important;
  border-radius:6px!important;
}
.sts-v2-timing-hint{
  font-size:11px!important;
  line-height:1.35!important;
  max-height:32px!important;
  overflow:hidden!important;
}
.sts-v2-caption-list{
  height:100%!important;
  min-height:0!important;
  overflow:auto!important;
}
.sts-v2-list-head,
.sts-v2-list-row{
  grid-template-columns:42px 68px minmax(120px,1fr) 84px 84px!important;
  gap:6px!important;
}
.sts-v2-list-head{
  padding:6px 8px!important;
  font-size:11px!important;
}
.sts-v2-list-row{
  min-height:32px!important;
  padding:6px 8px!important;
  font-size:13px!important;
}
.sts-v2-list-row span:nth-child(4),
.sts-v2-list-row span:nth-child(5){font-size:12px!important}
.sts-v2-help-dialog{
  top:12px!important;
  bottom:12px!important;
  left:12px!important;
  width:min(760px,calc(100vw - 24px))!important;
}
@media (max-width:900px){
  .sts-editor-v2-app{padding:6px!important}
  .sts-v2-header{align-items:flex-start!important;flex-direction:column!important;gap:6px!important}
  .sts-v2-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(230px,36vh) minmax(180px,27vh) minmax(0,1fr)!important;
    grid-template-areas:"active" "waveform" "list"!important;
  }
  .sts-v2-active-layout{grid-template-columns:1fr!important}
  .sts-v2-media{max-height:120px!important}
}

/* v0.1.120 — V2 workbench fit/playback correction.
   Fixes clipped active-caption buttons, creates an intentional continuous transport area,
   shrinks timing columns, and keeps the lower workbench visible without page scrolling. */
.sts-v2-grid{
  grid-template-rows:minmax(230px,32vh) minmax(0,1fr)!important;
}
.sts-v2-zone-active{overflow:visible!important;z-index:2!important}
.sts-v2-active-layout{
  padding:8px 10px 18px!important;
  overflow:visible!important;
  align-items:stretch!important;
}
.sts-v2-active-caption{
  gap:5px!important;
  overflow:visible!important;
  padding-bottom:14px!important;
}
.sts-v2-primary-transport{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  padding:7px 9px!important;
  border:1px solid #bfdbfe!important;
  border-radius:12px!important;
  background:#eff6ff!important;
  color:#1e3a8a!important;
  box-shadow:0 5px 14px rgba(37,99,235,.10)!important;
}
.sts-v2-primary-transport button{
  border:1px solid #2563eb!important;
  border-radius:999px!important;
  padding:7px 13px!important;
  min-height:32px!important;
  font:inherit!important;
  font-size:13px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.sts-v2-transport-play{background:#2563eb!important;color:#fff!important}
.sts-v2-transport-pause{background:#fff!important;color:#1d4ed8!important}
.sts-v2-primary-transport span{
  font-size:12px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sts-v2-editor textarea{
  height:52px!important;
  min-height:48px!important;
  max-height:92px!important;
  padding:7px 9px!important;
  font-size:17px!important;
  line-height:1.22!important;
}
.sts-v2-active-actions{
  padding-bottom:12px!important;
  margin-bottom:4px!important;
  min-height:40px!important;
  align-content:flex-start!important;
  overflow:visible!important;
}
.sts-v2-active-actions button{
  padding:5px 8px!important;
  min-height:28px!important;
  font-size:12px!important;
}
.sts-v2-timing-surface{
  grid-template-rows:auto 62px 28px auto!important;
  padding:7px!important;
}
.sts-v2-wave-canvas-wrap,
.sts-v2-wave-canvas{
  height:62px!important;
}
.sts-v2-caption-track{height:28px!important}
.sts-v2-caption-block{top:4px!important;height:20px!important}
.sts-v2-list-head,
.sts-v2-list-row{
  grid-template-columns:36px 58px minmax(140px,1fr) 68px 68px!important;
  gap:5px!important;
}
.sts-v2-list-row span:nth-child(4),
.sts-v2-list-row span:nth-child(5),
.sts-v2-list-head span:nth-child(4),
.sts-v2-list-head span:nth-child(5){
  font-size:10px!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}
.sts-v2-list-row{
  min-height:30px!important;
  padding:5px 7px!important;
}
.sts-v2-list-head{padding:5px 7px!important}
@media (max-width:900px){
  .sts-v2-grid{
    grid-template-rows:minmax(245px,38vh) minmax(155px,22vh) minmax(0,1fr)!important;
  }
  .sts-v2-primary-transport span{display:none!important}
}

/* v0.1.121 — V2 timing boundary editing.
   The active caption block is now the timing control: drag its start/end handles.
   Constraints are enforced during drag; no hidden neighbor repair. */
.sts-v2-caption-block{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 4px!important;
  user-select:none!important;
}
.sts-v2-caption-block.is-active{
  overflow:visible!important;
  min-width:84px!important;
  z-index:8!important;
}
.sts-v2-caption-block-index{
  pointer-events:none!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
}
.sts-v2-boundary-handle{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:12!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:46px!important;
  height:26px!important;
  padding:0 7px!important;
  border-radius:999px!important;
  border:1px solid #1d4ed8!important;
  background:#ffffff!important;
  color:#1d4ed8!important;
  box-shadow:0 5px 16px rgba(15,23,42,.20)!important;
  font-size:10px!important;
  font-weight:900!important;
  cursor:ew-resize!important;
  touch-action:none!important;
}
.sts-v2-boundary-handle:hover,
.sts-v2-boundary-handle:focus-visible{
  background:#dbeafe!important;
  outline:3px solid rgba(37,99,235,.22)!important;
}
.sts-editor-v2-app.is-boundary-dragging,
.sts-editor-v2-app.is-boundary-dragging *{
  cursor:ew-resize!important;
}
.sts-editor-v2-app.is-boundary-dragging .sts-v2-caption-block.is-active{
  box-shadow:0 0 0 4px rgba(37,99,235,.22),0 8px 24px rgba(37,99,235,.20)!important;
}
@media (max-width:900px){
  .sts-v2-boundary-handle{
    min-width:54px!important;
    height:32px!important;
    font-size:11px!important;
  }
}

/* v0.1.122 — V2 sticky timing + cleaner workbench.
   Manual boundary drag is exact by default, help text is reduced, and active actions get real breathing room. */
.sts-v2-zone-active{
  overflow:hidden!important;
}
.sts-v2-active-layout{
  padding:8px 12px 28px!important;
  min-height:0!important;
}
.sts-v2-active-caption{
  gap:7px!important;
  padding-bottom:0!important;
  min-height:0!important;
}
.sts-v2-active-meta{
  min-height:22px!important;
}
.sts-v2-primary-transport{
  padding:6px 8px!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
.sts-v2-editor{
  gap:4px!important;
  flex:0 0 auto!important;
}
.sts-v2-editor textarea{
  height:48px!important;
  min-height:46px!important;
  max-height:78px!important;
  font-size:16px!important;
}
.sts-v2-active-actions{
  padding:9px 10px!important;
  margin:4px 0 0!important;
  border:1px solid #e2e8f0!important;
  border-radius:12px!important;
  background:#f8fafc!important;
  min-height:42px!important;
  position:relative!important;
  z-index:1!important;
}
.sts-v2-active-actions button{
  min-height:29px!important;
}
.sts-v2-timing-toolbar{
  color:#475569!important;
}
.sts-v2-current-window{
  direction:ltr!important;
  unicode-bidi:plaintext!important;
  font-variant-numeric:tabular-nums!important;
  font-size:11px!important;
  color:#64748b!important;
}
.sts-v2-timing-hint{
  font-size:10.5px!important;
  color:#64748b!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sts-v2-list-head,
.sts-v2-list-row{
  grid-template-columns:34px 54px minmax(140px,1fr) 60px 60px!important;
  gap:4px!important;
}
.sts-v2-list-row span:nth-child(4),
.sts-v2-list-row span:nth-child(5),
.sts-v2-list-head span:nth-child(4),
.sts-v2-list-head span:nth-child(5){
  font-size:9px!important;
  letter-spacing:-.06em!important;
  direction:ltr!important;
  text-align:left!important;
}
.sts-v2-list-row{font-size:12.5px!important}
@media (max-width:900px){
  .sts-v2-active-layout{padding-bottom:22px!important}
  .sts-v2-active-actions{padding:8px!important}
}


/* v0.1.123 — V2 layout root-cause + media sync correction.
   Continuous transport belongs to the timing surface. Active-caption actions must fit inside
   the top workbench, not be clipped by hidden overflow. Media playback is calibrated against
   canonical caption time so the playhead and caption windows stay aligned. */
.sts-v2-grid{
  grid-template-rows:minmax(258px,32vh) minmax(0,1fr)!important;
}
.sts-v2-zone-active{
  overflow:hidden!important;
  z-index:1!important;
}
.sts-v2-active-layout{
  grid-template-columns:minmax(180px,24%) minmax(0,1fr)!important;
  gap:9px!important;
  padding:8px 12px 12px!important;
  min-height:0!important;
  overflow:hidden!important;
}
.sts-v2-active-caption{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  min-height:0!important;
  overflow:visible!important;
  padding-bottom:0!important;
}
.sts-v2-active-meta{min-height:0!important;line-height:1.15!important}
.sts-v2-source-ref{
  padding:5px 7px!important;
  max-height:34px!important;
  overflow:hidden!important;
}
.sts-v2-source-ref span{display:none!important}
.sts-v2-source-ref p{margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:12px!important;line-height:1.35!important}
.sts-v2-editor{flex:0 0 auto!important;min-height:0!important}
.sts-v2-editor span{font-size:11px!important;line-height:1.1!important}
.sts-v2-editor textarea{
  height:42px!important;
  min-height:40px!important;
  max-height:70px!important;
  padding:6px 8px!important;
  font-size:15px!important;
  line-height:1.18!important;
}
.sts-v2-active-actions{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  align-content:center!important;
  gap:5px!important;
  padding:6px 8px!important;
  margin:2px 0 0!important;
  min-height:34px!important;
  max-height:none!important;
  overflow:visible!important;
  border:1px solid #e2e8f0!important;
  border-radius:10px!important;
  background:#f8fafc!important;
}
.sts-v2-active-actions button{
  min-height:25px!important;
  padding:4px 7px!important;
  font-size:11.5px!important;
  line-height:1.1!important;
}
.sts-v2-save-state{font-size:11px!important;min-height:24px!important;line-height:1.15!important}
.sts-v2-primary-transport{display:none!important}
.sts-v2-timing-surface{
  grid-template-rows:auto 58px 26px auto!important;
  gap:5px!important;
  padding:7px!important;
}
.sts-v2-timing-toolbar{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  min-height:33px!important;
}
.sts-v2-timing-transport{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  padding:3px 5px!important;
  border:1px solid #bfdbfe!important;
  border-radius:999px!important;
  background:#eff6ff!important;
  order:-2!important;
}
.sts-v2-timing-transport button{
  border:1px solid #2563eb!important;
  border-radius:999px!important;
  min-height:26px!important;
  padding:4px 9px!important;
  font-size:12px!important;
  font-weight:900!important;
}
.sts-v2-timing-transport .sts-v2-transport-play{background:#2563eb!important;color:#fff!important}
.sts-v2-timing-transport .sts-v2-transport-pause{background:#fff!important;color:#1d4ed8!important}
.sts-v2-wave-canvas-wrap,
.sts-v2-wave-canvas{height:58px!important;min-height:0!important}
.sts-v2-caption-track{height:26px!important}
.sts-v2-caption-block{top:4px!important;height:18px!important}
.sts-v2-boundary-handle{height:24px!important;min-width:44px!important;font-size:9.5px!important}
.sts-v2-list-head,
.sts-v2-list-row{
  grid-template-columns:32px 48px minmax(120px,1fr) 54px 54px!important;
  gap:4px!important;
}
.sts-v2-list-row span:nth-child(4),
.sts-v2-list-row span:nth-child(5),
.sts-v2-list-head span:nth-child(4),
.sts-v2-list-head span:nth-child(5){
  font-size:8.5px!important;
  letter-spacing:-.07em!important;
}
@media (max-width:900px){
  .sts-v2-grid{grid-template-rows:minmax(278px,40vh) minmax(150px,22vh) minmax(0,1fr)!important}
  .sts-v2-active-layout{grid-template-columns:1fr!important;overflow:hidden!important;padding-bottom:12px!important}
  .sts-v2-media{max-height:92px!important}
  .sts-v2-timing-toolbar{gap:4px!important}
  .sts-v2-timing-transport{width:100%!important;justify-content:center!important;border-radius:12px!important}
}

/* v0.1.125 — V2 caption playback mode coherence.
   A single caption playback mode drives double-click, the caption play button, and loop/continue behavior. */
.sts-v2-caption-play-mode{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  padding:3px 5px!important;
  border:1px solid #e2e8f0!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  order:-1!important;
}
.sts-v2-caption-play-mode span{
  font-size:11px!important;
  font-weight:900!important;
  color:#475569!important;
  white-space:nowrap!important;
}
.sts-v2-caption-play-mode button{
  min-height:24px!important;
  padding:3px 8px!important;
  font-size:11.5px!important;
  font-weight:900!important;
  border-color:#cbd5e1!important;
  background:#fff!important;
  color:#334155!important;
}
.sts-v2-caption-play-mode button.is-active,
.sts-v2-caption-play-mode button[aria-pressed="true"]{
  background:#ecfdf5!important;
  color:#065f46!important;
  border-color:#99f6e4!important;
}
.sts-v2-play-caption-mode{
  background:#0f172a!important;
  color:#fff!important;
  border-color:#0f172a!important;
  font-weight:900!important;
}
@media (max-width:900px){
  .sts-v2-caption-play-mode{width:100%!important;justify-content:center!important;border-radius:12px!important;order:0!important}
  .sts-v2-play-caption-mode{flex:1 1 100%!important}
}

/* v0.1.126 — V2 list-first editing workbench.
   The caption list is now the primary editor. The old active-caption text panel is removed. */
.sts-v2-grid{
  grid-template-columns:minmax(320px,40%) minmax(0,1fr)!important;
  grid-template-rows:minmax(150px,32vh) minmax(0,1fr)!important;
  grid-template-areas:
    "active list"
    "waveform list"!important;
}
.sts-v2-zone-active .sts-v2-zone-head strong{font-size:0!important}
.sts-v2-zone-active .sts-v2-zone-head strong::after{content:none!important}
.sts-v2-active-layout{
  grid-template-columns:1fr!important;
  padding:8px!important;
  height:100%!important;
}
.sts-v2-active-caption{display:none!important}
.sts-v2-media{height:100%!important;min-height:0!important}
.sts-v2-zone-list{overflow:hidden!important}
.sts-v2-caption-list{
  height:100%!important;
  min-height:0!important;
  overflow:auto!important;
  display:block!important;
  background:#fff!important;
}
.sts-v2-list-toolbar{
  position:sticky!important;
  top:0!important;
  z-index:5!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  padding:8px!important;
  background:#f8fafc!important;
  border-bottom:1px solid var(--sts-v2-border)!important;
}
.sts-v2-list-toolbar button{
  border:1px solid var(--sts-v2-border)!important;
  background:#fff!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  min-height:30px!important;
  cursor:pointer!important;
  font:inherit!important;
  font-size:12px!important;
  color:var(--sts-v2-strong)!important;
}
.sts-v2-list-toolbar button:hover{border-color:var(--sts-v2-accent)!important;box-shadow:0 0 0 3px rgba(37,99,235,.10)!important}
.sts-v2-list-toolbar button:disabled{opacity:.45!important;cursor:not-allowed!important}
.sts-v2-list-toolbar .sts-v2-save{background:var(--sts-v2-accent)!important;border-color:var(--sts-v2-accent)!important;color:#fff!important;font-weight:900!important}
.sts-v2-list-toolbar .sts-v2-save-state{margin-inline-start:auto!important;white-space:nowrap!important}
.sts-v2-list-head,
.sts-v2-list-row{
  grid-template-columns:34px minmax(240px,1fr) 58px 58px!important;
  gap:6px!important;
}
.sts-v2-list-head{
  top:47px!important;
  z-index:4!important;
  padding:6px 8px!important;
  background:#fff!important;
}
.sts-v2-list-row{
  border:0!important;
  border-bottom:1px solid #edf2f7!important;
  border-radius:0!important;
  background:#fff!important;
  padding:5px 8px!important;
  min-height:38px!important;
  width:100%!important;
  text-align:inherit!important;
  cursor:pointer!important;
}
.sts-v2-list-row.is-active{background:#eff6ff!important;box-shadow:inset 3px 0 0 var(--sts-v2-accent)!important}
.sts-v2-list-row:hover{background:#f8fafc!important}
.sts-v2-list-index{font-weight:900!important;color:#64748b!important;font-size:12px!important}
.sts-v2-list-text-cell{min-width:0!important;overflow:hidden!important}
.sts-v2-list-text{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:13px!important;
  line-height:1.35!important;
}
.sts-v2-row-editor{
  width:100%!important;
  min-height:34px!important;
  max-height:92px!important;
  resize:vertical!important;
  border:1px solid #bfdbfe!important;
  border-radius:8px!important;
  padding:6px 8px!important;
  background:#fff!important;
  color:var(--sts-v2-strong)!important;
  font:inherit!important;
  font-size:14px!important;
  line-height:1.35!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.08)!important;
}
.sts-v2-row-editor:focus{outline:3px solid rgba(37,99,235,.18)!important;border-color:var(--sts-v2-accent)!important}
.sts-v2-list-time{
  direction:ltr!important;
  text-align:left!important;
  font-variant-numeric:tabular-nums!important;
  font-size:8.5px!important;
  letter-spacing:-.08em!important;
  color:#64748b!important;
  white-space:nowrap!important;
}
.sts-v2-list-head span:nth-child(3),
.sts-v2-list-head span:nth-child(4){font-size:9px!important;letter-spacing:-.06em!important}
.sts-v2-mode-badge,.sts-v2-mini-badge{display:none!important}
.sts-v2-source-ref,.sts-v2-active-meta,.sts-v2-editor,.sts-v2-active-actions{display:none!important}
.sts-v2-timing-hint{display:none!important}
.sts-v2-timing-toolbar{padding-bottom:2px!important}
.sts-v2-caption-play-mode span{font-size:10px!important}
.sts-v2-caption-play-mode button{font-size:10.5px!important;padding:3px 7px!important}
@media (max-width:900px){
  .sts-v2-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:120px 150px minmax(0,1fr)!important;
    grid-template-areas:"active" "waveform" "list"!important;
  }
  .sts-v2-list-head,.sts-v2-list-row{grid-template-columns:32px minmax(120px,1fr) 50px 50px!important}
}

/* v0.1.127 — V2 list anchor + cleaner workbench.
   Remove redundant zone titles, keep the editable caption row in a stable visual slot,
   and make the after-caption behavior a real segmented toggle. */
.sts-v2-zone-head{
  display:none!important;
}
.sts-v2-zone{
  padding:0!important;
}
.sts-v2-active-layout,
.sts-v2-timing-surface,
.sts-v2-caption-list{
  border-radius:14px!important;
}
.sts-v2-caption-list{
  scroll-behavior:auto!important;
}
.sts-v2-list-toolbar{
  top:0!important;
}
.sts-v2-list-head{
  top:47px!important;
}
.sts-v2-list-row.is-active{
  background:#dbeafe!important;
  box-shadow:inset 4px 0 0 var(--sts-v2-accent)!important;
}
.sts-v2-row-editor{
  min-height:40px!important;
  font-size:14.5px!important;
}
.sts-v2-caption-play-mode{
  display:inline-flex!important;
  align-items:center!important;
  gap:0!important;
  padding:3px!important;
  border:1px solid #cbd5e1!important;
  border-radius:999px!important;
  background:#e2e8f0!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.08)!important;
}
.sts-v2-caption-play-mode span{
  padding:0 8px!important;
  font-size:11px!important;
  color:#334155!important;
}
.sts-v2-caption-play-mode button{
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#334155!important;
  min-height:26px!important;
  padding:4px 10px!important;
  font-weight:900!important;
}
.sts-v2-caption-play-mode button.is-active,
.sts-v2-caption-play-mode button[aria-pressed="true"]{
  background:#2563eb!important;
  color:#fff!important;
  box-shadow:0 2px 8px rgba(37,99,235,.22)!important;
}
.sts-v2-current-window{
  display:none!important;
}

/* v0.1.128 — V2 playback/list anchoring polish.
   Caption playback button is visually tied to the active waveform segment; the list is freely scrollable
   while stopped and only anchors active-row-second during playback. */
.sts-v2-timing-surface{
  position:relative!important;
  grid-template-rows:auto 30px 58px 26px auto!important;
}
.sts-v2-centered-caption-play{
  position:relative!important;
  height:30px!important;
  min-height:30px!important;
  z-index:9!important;
  transform:translateX(-50%)!important;
  width:max-content!important;
  max-width:calc(100% - 16px)!important;
  pointer-events:none!important;
}
.sts-v2-centered-caption-play .sts-v2-play-caption-mode{
  pointer-events:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  padding:4px 12px!important;
  white-space:nowrap!important;
  box-shadow:0 8px 18px rgba(15,23,42,.18)!important;
}
.sts-v2-caption-list[data-v2-anchored="0"]{
  overflow:auto!important;
}
.sts-v2-caption-list[data-v2-anchored="1"]{
  overflow:hidden auto!important;
}
.sts-v2-caption-list[data-v2-anchored="1"] .sts-v2-list-row.is-active{
  outline:2px solid rgba(37,99,235,.20)!important;
}
@media (max-width:900px){
  .sts-v2-centered-caption-play{
    left:50%!important;
    transform:translateX(-50%)!important;
  }
  .sts-v2-centered-caption-play .sts-v2-play-caption-mode{
    min-height:30px!important;
    font-size:12px!important;
  }
}

/* v0.1.129 — V2 playback controls and cleaner help/focus.
   Single continuous-play toggle, reliable centered caption play button,
   clean single continuous-play toggle and focused caption controls. */
.sts-v2-timing-transport{display:inline-flex!important;align-items:center!important}
.sts-v2-transport-toggle{min-width:104px!important;font-weight:900!important;background:#fff!important;border-color:#cbd5e1!important}
.sts-v2-transport-toggle.is-playing,
.sts-v2-transport-toggle[aria-pressed="true"]{background:#111827!important;border-color:#111827!important;color:#fff!important}
.sts-v2-centered-caption-play{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:30px!important;
  min-height:30px!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  pointer-events:none!important;
  z-index:9!important;
}
.sts-v2-centered-caption-play .sts-v2-play-caption-mode{
  position:absolute!important;
  left:var(--active-center,50%)!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  pointer-events:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  padding:4px 12px!important;
  white-space:nowrap!important;
  background:#fff!important;
  border:1px solid #cbd5e1!important;
  color:#0f172a!important;
  border-radius:999px!important;
  box-shadow:0 8px 18px rgba(15,23,42,.18)!important;
}
@media (max-width:900px){
  .sts-v2-centered-caption-play .sts-v2-play-caption-mode{font-size:12px!important;min-height:30px!important}
  .sts-v2-transport-toggle{min-width:96px!important}
}


/* v0.1.131 — V2 spec reconciliation, media display, and split confidence cleanup.
   Removes issue-reporting UI, centers caption playback controls above the active waveform segment,
   and polishes the help close control. */
.sts-v2-list-toolbar [data-v2-prev],
.sts-v2-list-toolbar [data-v2-next],
.sts-v2-centered-caption-play{
  height:36px!important;
  min-height:36px!important;
}
.sts-v2-caption-play-cluster{
  position:absolute!important;
  left:var(--active-center,50%)!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  pointer-events:auto!important;
  max-width:calc(100% - 12px)!important;
}
.sts-v2-caption-play-cluster .sts-v2-play-caption-mode{
  position:static!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  min-height:30px!important;
  padding:5px 12px!important;
  white-space:nowrap!important;
}
.sts-v2-caption-nav{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  padding:4px 9px!important;
  border:1px solid #cbd5e1!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#334155!important;
  font:inherit!important;
  font-size:11px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  box-shadow:0 4px 10px rgba(15,23,42,.10)!important;
}
.sts-v2-caption-nav:disabled{opacity:.38!important;cursor:not-allowed!important;box-shadow:none!important}
.sts-v2-help-close{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  padding:0!important;
  border-radius:999px!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:900!important;
}
@media (max-width:900px){
  .sts-v2-caption-play-cluster{gap:4px!important;max-width:100%!important}
  .sts-v2-caption-nav{font-size:10px!important;padding:4px 7px!important}
  .sts-v2-caption-play-cluster .sts-v2-play-caption-mode{font-size:11px!important;padding:5px 9px!important}
}

/* v0.1.131 — V2 media display hardening: video files must render as video, not audio-only controls. */
.sts-v2-media video[data-v2-player]{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;background:#0f172a!important}
.sts-v2-media audio[data-v2-player]{display:block!important;width:100%!important;height:auto!important;align-self:center!important}

/* v0.1.133 — V2 translation source reference.
   Translation editing needs the matching source caption visible, but only as compact
   functional context in the active list row. */
.sts-v2-row-source-reference{
  display:grid!important;
  grid-template-columns:auto auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:4px!important;
  padding:4px 6px!important;
  border:1px solid #e2e8f0!important;
  border-radius:7px!important;
  background:#f8fafc!important;
  color:#475569!important;
  font-size:11px!important;
  line-height:1.25!important;
  min-width:0!important;
}
.sts-v2-row-source-reference span{
  color:#64748b!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.sts-v2-row-source-reference b{
  direction:ltr!important;
  unicode-bidi:plaintext!important;
  font-size:9.5px!important;
  font-weight:700!important;
  color:#64748b!important;
  white-space:nowrap!important;
}
.sts-v2-row-source-reference p{
  margin:0!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#334155!important;
  font-weight:800!important;
}
.sts-v2-list-row.is-active{
  align-items:start!important;
}
@media (max-width:900px){
  .sts-v2-row-source-reference{
    grid-template-columns:auto minmax(0,1fr)!important;
  }
  .sts-v2-row-source-reference b{display:none!important}
}

/* v0.1.133 — V2 precision timing controls.
   Compact start/end nudges and manual time inputs, kept in the timing surface. */
.sts-v2-precision-bar{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  margin:3px 0 4px!important;
  padding:3px 4px!important;
  background:#f8fafc!important;
  border:1px solid #e2e8f0!important;
  border-radius:10px!important;
}
.sts-v2-precision-group{
  display:inline-grid!important;
  grid-template-columns:auto repeat(2, minmax(32px,auto)) 82px repeat(2, minmax(32px,auto))!important;
  align-items:center!important;
  gap:3px!important;
  min-width:0!important;
}
.sts-v2-precision-group span{
  font-size:11px!important;
  font-weight:900!important;
  color:#334155!important;
  white-space:nowrap!important;
}
.sts-v2-precision-group button{
  min-height:24px!important;
  padding:2px 6px!important;
  border:1px solid #cbd5e1!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#334155!important;
  font-size:10px!important;
  font-weight:850!important;
  line-height:1!important;
  cursor:pointer!important;
}
.sts-v2-precision-group button:hover{background:#eef2ff!important;border-color:#93c5fd!important;color:#1d4ed8!important}
.sts-v2-precision-group input{
  width:82px!important;
  min-width:82px!important;
  height:24px!important;
  padding:2px 5px!important;
  border:1px solid #cbd5e1!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#0f172a!important;
  font-size:10px!important;
  font-weight:800!important;
  direction:ltr!important;
  unicode-bidi:plaintext!important;
  text-align:center!important;
}
.sts-v2-precision-group input:focus{outline:2px solid rgba(37,99,235,.22)!important;border-color:#2563eb!important}
@media (max-width:900px){
  .sts-v2-precision-bar{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important}
  .sts-v2-precision-group{grid-template-columns:auto repeat(2, 30px) 78px repeat(2, 30px)!important;flex:0 0 auto!important}
  .sts-v2-precision-group input{width:78px!important;min-width:78px!important}
  .sts-v2-precision-group button{padding:2px 5px!important}
}

/* v0.1.134 — V2 compact global offset tool.
   Hidden behind a summary so bulk timing correction exists without adding permanent clutter. */
.sts-v2-global-offset{
  margin:2px auto 4px!important;
  width:min(100%, 720px)!important;
  border:1px solid #e2e8f0!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#334155!important;
}
.sts-v2-global-offset summary{
  cursor:pointer!important;
  list-style:none!important;
  min-height:24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  padding:3px 10px!important;
  font-size:11px!important;
  font-weight:900!important;
  color:#334155!important;
}
.sts-v2-global-offset summary::-webkit-details-marker{display:none!important}
.sts-v2-global-offset summary::before{content:'↔';font-weight:900!important;color:#2563eb!important}
.sts-v2-global-offset[open] summary{border-bottom:1px solid #e2e8f0!important;background:#f8fafc!important;border-radius:10px 10px 0 0!important}
.sts-v2-global-offset-panel{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  padding:6px!important;
}
.sts-v2-global-offset-panel label{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  font-size:10px!important;
  font-weight:900!important;
  color:#64748b!important;
}
.sts-v2-global-offset-panel input{
  width:72px!important;
  height:24px!important;
  padding:2px 5px!important;
  border:1px solid #cbd5e1!important;
  border-radius:7px!important;
  direction:ltr!important;
  text-align:center!important;
  font-size:10px!important;
  font-weight:800!important;
}
.sts-v2-global-offset-presets{display:inline-flex!important;gap:3px!important}
.sts-v2-global-offset-panel button{
  min-height:24px!important;
  padding:2px 8px!important;
  border:1px solid #cbd5e1!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#334155!important;
  font-size:10.5px!important;
  font-weight:850!important;
  cursor:pointer!important;
}
.sts-v2-global-offset-panel button:hover{background:#eef2ff!important;border-color:#93c5fd!important;color:#1d4ed8!important}
@media (max-width:900px){
  .sts-v2-global-offset{width:100%!important}
  .sts-v2-global-offset-panel{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important}
  .sts-v2-global-offset-panel > *{flex:0 0 auto!important}
}

/* v0.1.135 — V2 undo/redo safety net.
   Keep history controls in the existing caption-list toolbar so no new panel is added. */
.sts-v2-list-toolbar [data-v2-undo],
.sts-v2-list-toolbar [data-v2-redo]{
  border-color:#cbd5e1!important;
  background:#fff!important;
  color:#334155!important;
  font-weight:850!important;
}
.sts-v2-list-toolbar [data-v2-undo]:not(:disabled):hover,
.sts-v2-list-toolbar [data-v2-redo]:not(:disabled):hover{
  border-color:#2563eb!important;
  color:#1d4ed8!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
}
.sts-v2-list-toolbar [data-v2-undo]:disabled,
.sts-v2-list-toolbar [data-v2-redo]:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
}

/* v0.1.136 — V2 ripple edit.
   Explicit advanced mode for shifting downstream captions during boundary edits. */
.sts-v2-ripple-toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:26px!important;
  padding:4px 10px!important;
  border:1px solid #cbd5e1!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#334155!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.sts-v2-ripple-toggle:hover{
  border-color:#93c5fd!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
}
.sts-v2-ripple-toggle.is-active,
.sts-v2-ripple-toggle[aria-pressed="true"]{
  border-color:#f59e0b!important;
  background:#fffbeb!important;
  color:#92400e!important;
  box-shadow:0 0 0 3px rgba(245,158,11,.16)!important;
}
.sts-editor-v2-app.is-ripple-edit .sts-v2-caption-block.is-active{
  box-shadow:0 0 0 4px rgba(245,158,11,.22),0 8px 24px rgba(245,158,11,.18)!important;
}
.sts-editor-v2-app.is-ripple-edit .sts-v2-boundary-handle{
  border-color:#f59e0b!important;
  color:#92400e!important;
}
@media (max-width:900px){
  .sts-v2-ripple-toggle{font-size:10.5px!important;padding:4px 8px!important}
}


/* v0.1.137 — V2 video subtitle overlay and contextual tooltips.
   The video player now shows the active caption over the picture, and compact tooltips
   clarify the difference between single-caption boundary precision and range/global offset tools. */
.sts-v2-media-frame{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  display:grid!important;
  place-items:center!important;
  background:#0f172a!important;
}
.sts-v2-media-frame.is-video video[data-v2-player]{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:#0f172a!important;
}
.sts-v2-media-frame.is-audio audio[data-v2-player]{
  width:100%!important;
  align-self:center!important;
}
.sts-v2-video-caption-overlay{
  position:absolute!important;
  left:5%!important;
  right:5%!important;
  bottom:7%!important;
  z-index:4!important;
  display:block!important;
  max-width:90%!important;
  margin:0 auto!important;
  padding:7px 12px!important;
  border-radius:10px!important;
  background:rgba(2,6,23,.78)!important;
  color:#fff!important;
  font-weight:800!important;
  font-size:clamp(16px,2.05vw,26px)!important;
  line-height:1.28!important;
  text-align:center!important;
  text-shadow:0 2px 8px rgba(0,0,0,.65)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.24)!important;
  pointer-events:none!important;
  white-space:normal!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
}
.sts-v2-video-caption-overlay[hidden]{display:none!important}
.sts-v2-video-caption-overlay[dir="rtl"]{direction:rtl!important;unicode-bidi:plaintext!important}
.sts-v2-video-caption-overlay[dir="ltr"]{direction:ltr!important;unicode-bidi:plaintext!important}
.sts-v2-tool-label{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:24px!important;
  padding:2px 8px!important;
  border-radius:999px!important;
  background:#e0f2fe!important;
  color:#075985!important;
  border:1px solid #bae6fd!important;
  font-size:10.5px!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
.sts-v2-precision-bar{position:relative!important}
.sts-v2-global-offset summary{position:relative!important}
[data-sts-tooltip]{position:relative}
button[data-sts-tooltip]::after,
.sts-v2-tool-label[data-sts-tooltip]::after,
.sts-v2-caption-play-mode[data-sts-tooltip]::after,
.sts-v2-global-offset summary[data-sts-tooltip]::after,
.sts-v2-global-offset[data-sts-tooltip]::after{
  content:attr(data-sts-tooltip)!important;
  position:absolute!important;
  inset:auto auto calc(100% + 8px) 50%!important;
  transform:translateX(-50%)!important;
  width:max-content!important;
  max-width:min(320px,70vw)!important;
  padding:7px 9px!important;
  border-radius:9px!important;
  background:#0f172a!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:750!important;
  line-height:1.35!important;
  text-align:center!important;
  white-space:normal!important;
  box-shadow:0 10px 28px rgba(15,23,42,.26)!important;
  z-index:9999!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .12s ease,visibility .12s ease!important;
  direction:inherit!important;
  unicode-bidi:plaintext!important;
}
button[data-sts-tooltip]::before,
.sts-v2-tool-label[data-sts-tooltip]::before,
.sts-v2-caption-play-mode[data-sts-tooltip]::before,
.sts-v2-global-offset summary[data-sts-tooltip]::before,
.sts-v2-global-offset[data-sts-tooltip]::before{
  content:''!important;
  position:absolute!important;
  inset:auto auto calc(100% + 3px) 50%!important;
  transform:translateX(-50%) rotate(45deg)!important;
  width:9px!important;
  height:9px!important;
  background:#0f172a!important;
  z-index:9998!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .12s ease,visibility .12s ease!important;
}
button[data-sts-tooltip]:hover::after,
button[data-sts-tooltip]:focus-visible::after,
button[data-sts-tooltip]:hover::before,
button[data-sts-tooltip]:focus-visible::before,
.sts-v2-tool-label[data-sts-tooltip]:hover::after,
.sts-v2-tool-label[data-sts-tooltip]:hover::before,
.sts-v2-caption-play-mode[data-sts-tooltip]:hover::after,
.sts-v2-caption-play-mode[data-sts-tooltip]:hover::before,
.sts-v2-global-offset summary[data-sts-tooltip]:hover::after,
.sts-v2-global-offset summary[data-sts-tooltip]:hover::before,
.sts-v2-global-offset[data-sts-tooltip]:hover::after,
.sts-v2-global-offset[data-sts-tooltip]:hover::before{
  opacity:1!important;
  visibility:visible!important;
}
.sts-v2-precision-group input[data-sts-tooltip]{cursor:text!important}
.sts-v2-global-offset-panel label[data-sts-tooltip],
.sts-v2-global-offset-panel input[data-sts-tooltip]{cursor:help!important}
@media (max-width:900px){
  .sts-v2-video-caption-overlay{font-size:15px!important;bottom:5%!important;padding:5px 8px!important}
  button[data-sts-tooltip]::after,
.sts-v2-tool-label[data-sts-tooltip]::after,
.sts-v2-caption-play-mode[data-sts-tooltip]::after,
.sts-v2-global-offset summary[data-sts-tooltip]::after,
.sts-v2-global-offset[data-sts-tooltip]::after{display:none!important}
  button[data-sts-tooltip]::before,
.sts-v2-tool-label[data-sts-tooltip]::before,
.sts-v2-caption-play-mode[data-sts-tooltip]::before,
.sts-v2-global-offset summary[data-sts-tooltip]::before,
.sts-v2-global-offset[data-sts-tooltip]::before{display:none!important}
}

/* v0.1.138 — container-aware V2 tooltips.
   Replace fixed pseudo-element bubbles with one measured floating tooltip so hints stay readable
   inside the fullscreen app shell instead of clipping outside panels. */
.sts-editor-v2-app [data-sts-tooltip]::before,
.sts-editor-v2-app [data-sts-tooltip]::after{
  display:none!important;
  content:none!important;
}
.sts-v2-smart-tooltip{
  position:fixed!important;
  z-index:2147483640!important;
  max-width:360px!important;
  padding:8px 10px!important;
  border-radius:10px!important;
  background:#0f172a!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1.42!important;
  text-align:center!important;
  direction:inherit!important;
  unicode-bidi:plaintext!important;
  box-shadow:0 14px 34px rgba(15,23,42,.32)!important;
  pointer-events:none!important;
  white-space:normal!important;
}
.sts-v2-smart-tooltip[hidden]{display:none!important}

/* v0.1.139 — V2 caption layout dropdown.
   Compact list-toolbar tool for max characters, filler removal, and punctuation removal. */
.sts-v2-caption-layout-menu{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  z-index:8!important;
}
.sts-v2-caption-layout-menu summary{
  list-style:none!important;
  cursor:pointer!important;
  border:1px solid var(--sts-v2-border)!important;
  background:#fff!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  min-height:30px!important;
  font:inherit!important;
  font-size:12px!important;
  color:var(--sts-v2-strong)!important;
  font-weight:800!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  white-space:nowrap!important;
}
.sts-v2-caption-layout-menu summary::-webkit-details-marker{display:none!important}
.sts-v2-caption-layout-menu summary::before{content:'☰';font-size:11px!important;color:#2563eb!important}
.sts-v2-caption-layout-menu[open] summary{border-color:#93c5fd!important;background:#eff6ff!important;color:#1d4ed8!important}
.sts-v2-caption-layout-panel{
  position:absolute!important;
  inset:calc(100% + 6px) auto auto 0!important;
  min-width:min(460px,calc(100vw - 32px))!important;
  display:flex!important;
  align-items:flex-end!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  padding:10px!important;
  border:1px solid var(--sts-v2-border)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(15,23,42,.18)!important;
  z-index:30!important;
  direction:inherit!important;
}
.sts-v2-caption-layout-panel label{
  display:grid!important;
  gap:4px!important;
  color:#475569!important;
  font-size:11px!important;
  font-weight:850!important;
}
.sts-v2-caption-layout-panel input,
.sts-v2-caption-layout-panel select{
  height:31px!important;
  border:1px solid #cbd5e1!important;
  border-radius:9px!important;
  padding:3px 7px!important;
  background:#fff!important;
  color:#0f172a!important;
  font:inherit!important;
  font-size:12px!important;
  min-width:88px!important;
}
.sts-v2-caption-layout-panel input{width:78px!important;min-width:78px!important;direction:ltr!important;text-align:center!important;font-variant-numeric:tabular-nums!important}
.sts-v2-caption-layout-panel .sts-v2-layout-note{flex:1 1 100%!important;color:#64748b!important;font-size:11px!important;font-weight:650!important;line-height:1.45!important;text-align:start!important}
.sts-v2-caption-layout-panel button{
  background:#2563eb!important;
  border-color:#2563eb!important;
  color:#fff!important;
  font-weight:900!important;
}
.sts-v2-caption-layout-panel button:hover{background:#1d4ed8!important;border-color:#1d4ed8!important}
@media (max-width:900px){
  .sts-v2-caption-layout-panel{inset:calc(100% + 6px) 0 auto auto!important;min-width:min(360px,calc(100vw - 24px))!important;align-items:stretch!important}
  .sts-v2-caption-layout-panel label{flex:1 1 130px!important}
}

/* v0.1.140 — clean transient status messages and consistent arrow navigation. */

/* v0.1.141 — reliable document-level arrow navigation and platform-specific shortcut help. */
.sts-v2-shortcut-grid-platforms{
  grid-template-columns:1fr!important;
}
.sts-v2-shortcut-grid-platforms > div{
  display:grid!important;
  grid-template-columns:minmax(120px,1.15fr) minmax(150px,1fr) minmax(150px,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}
.sts-v2-shortcut-grid-platforms > div:first-child{
  background:#eef6ff!important;
  border-color:#bfdbfe!important;
  font-weight:900!important;
  color:#0f172a!important;
}
.sts-v2-shortcut-grid-platforms span{
  margin-inline-start:0!important;
  color:#334155!important;
  font-size:13px!important;
  line-height:1.4!important;
}
.sts-v2-shortcut-grid-platforms kbd{
  margin-inline:2px!important;
}
@media (max-width:760px){
  .sts-v2-shortcut-grid-platforms > div{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
}

/* v0.1.143 — Caption Design, Overlay Export, and transparent render UI.
   Adds a compact visual style panel, live overlay preview, and ASS export preparation. */
.sts-v2-overlay-menu{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  z-index:9!important;
}
.sts-v2-overlay-menu summary{
  list-style:none!important;
  cursor:pointer!important;
  border:1px solid var(--sts-v2-border)!important;
  background:#fff!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  min-height:30px!important;
  font:inherit!important;
  font-size:12px!important;
  color:var(--sts-v2-strong)!important;
  font-weight:850!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  white-space:nowrap!important;
}
.sts-v2-overlay-menu summary::-webkit-details-marker{display:none!important}
.sts-v2-overlay-menu summary::before{content:'◱';font-size:12px!important;color:#7c3aed!important}
.sts-v2-overlay-menu[open] summary{border-color:#c4b5fd!important;background:#f5f3ff!important;color:#5b21b6!important}
.sts-v2-overlay-panel{
  position:absolute!important;
  inset:calc(100% + 6px) 0 auto auto!important;
  width:min(760px,calc(100vw - 34px))!important;
  max-height:min(76vh,620px)!important;
  overflow:auto!important;
  display:grid!important;
  gap:10px!important;
  padding:12px!important;
  border:1px solid var(--sts-v2-border)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 22px 56px rgba(15,23,42,.22)!important;
  z-index:60!important;
  direction:inherit!important;
}
.sts-v2-overlay-fields{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(82px,1fr))!important;
  gap:8px!important;
  align-items:end!important;
}
.sts-v2-overlay-fields label{
  display:grid!important;
  gap:4px!important;
  color:#475569!important;
  font-size:11px!important;
  font-weight:850!important;
}
.sts-v2-overlay-fields label span{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.sts-v2-overlay-fields input,
.sts-v2-overlay-fields select{
  height:31px!important;
  min-width:0!important;
  width:100%!important;
  border:1px solid #cbd5e1!important;
  border-radius:9px!important;
  padding:3px 7px!important;
  background:#fff!important;
  color:#0f172a!important;
  font:inherit!important;
  font-size:12px!important;
}
.sts-v2-overlay-fields input[type="number"]{direction:ltr!important;text-align:center!important;font-variant-numeric:tabular-nums!important}
.sts-v2-overlay-fields input[type="color"]{padding:2px!important;cursor:pointer!important}
.sts-v2-overlay-check{
  align-self:end!important;
  display:flex!important;
  grid-template-columns:none!important;
  flex-direction:row!important;
  gap:7px!important;
  align-items:center!important;
  min-height:31px!important;
  padding:0 8px!important;
  border:1px solid #e2e8f0!important;
  border-radius:9px!important;
  background:#f8fafc!important;
}
.sts-v2-overlay-check input{width:16px!important;height:16px!important;min-width:16px!important}
.sts-v2-overlay-preview{
  position:relative!important;
  min-height:132px!important;
  border-radius:16px!important;
  border:1px solid #dbeafe!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,#0f172a,#1e293b 55%,#334155)!important;
}
.sts-v2-overlay-preview::before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.08) 1px,transparent 1px)!important;
  background-size:36px 36px!important;
  opacity:.38!important;
}
.sts-v2-overlay-preview > span{
  position:absolute!important;
  top:8px!important;
  right:10px!important;
  z-index:2!important;
  border-radius:999px!important;
  padding:3px 8px!important;
  background:rgba(255,255,255,.9)!important;
  color:#0f172a!important;
  font-size:11px!important;
  font-weight:900!important;
  direction:ltr!important;
}
.sts-v2-overlay-preview b{
  position:absolute!important;
  z-index:3!important;
  display:block!important;
  margin:0 auto!important;
  padding:7px 12px!important;
  border-radius:10px!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
}
.sts-v2-overlay-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
.sts-v2-overlay-actions button{
  min-height:31px!important;
  padding:6px 10px!important;
  font-size:12px!important;
  font-weight:900!important;
}
.sts-v2-overlay-actions .sts-v2-overlay-export{
  background:#7c3aed!important;
  border-color:#7c3aed!important;
  color:#fff!important;
}
.sts-v2-overlay-note{
  margin:0!important;
  color:#64748b!important;
  font-size:11.5px!important;
  line-height:1.45!important;
}
@media (max-width:900px){
  .sts-v2-overlay-panel{
    position:fixed!important;
    inset:auto 8px 8px 8px!important;
    width:auto!important;
    max-height:82vh!important;
    border-radius:18px!important;
  }
  .sts-v2-overlay-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .sts-v2-overlay-preview{min-height:116px!important}
}

/* v0.1.145 — tabbed help, clearer caption design language, viewport-safe design panel. */
.sts-v2-help-tabs{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  padding:10px 18px!important;
  border-bottom:1px solid var(--sts-v2-border)!important;
  background:#fff!important;
}
.sts-v2-help-tabs button{
  border:1px solid #d8e0ea!important;
  background:#f8fafc!important;
  color:#334155!important;
  border-radius:999px!important;
  min-height:32px!important;
  padding:6px 12px!important;
  font:inherit!important;
  font-size:13px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.sts-v2-help-tabs button:hover,
.sts-v2-help-tabs button.is-active{
  background:#111827!important;
  border-color:#111827!important;
  color:#fff!important;
}
.sts-v2-help-body{
  display:block!important;
  padding:16px 18px 20px!important;
  overflow:auto!important;
}
.sts-v2-help-tab-panel{
  display:grid!important;
  gap:14px!important;
}
.sts-v2-help-tab-panel[hidden]{display:none!important}
.sts-v2-help-tab-panel section{
  border:1px solid #eef2f7!important;
  border-radius:16px!important;
  padding:14px 16px!important;
  background:#fff!important;
}
.sts-v2-overlay-panel{
  position:fixed!important;
  inset:88px 16px auto 16px!important;
  width:min(980px,calc(100vw - 32px))!important;
  max-width:calc(100vw - 32px)!important;
  max-height:calc(100dvh - 112px)!important;
  margin:0 auto!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
}
.sts-v2-overlay-fields select[data-v2-overlay-font]{direction:ltr!important;text-align:left!important}
@media (max-width:900px){
  .sts-v2-help-tabs{padding:8px 10px!important;gap:6px!important;overflow-x:auto!important;flex-wrap:nowrap!important}
  .sts-v2-help-tabs button{white-space:nowrap!important;font-size:12px!important;padding:6px 10px!important}
  .sts-v2-help-body{padding:12px!important}
  .sts-v2-overlay-panel{
    inset:52px 8px auto 8px!important;
    width:auto!important;
    max-width:none!important;
    max-height:calc(100dvh - 64px)!important;
  }
}

/* v0.1.146 — Caption design panel positioning fix.
   The panel is positioned below the actual toolbar button inside the app viewport,
   keeps the trigger clickable, and adds an explicit close affordance. */
.sts-v2-overlay-menu[open] summary{
  position:relative!important;
  z-index:1002!important;
}
.sts-v2-overlay-panel{
  position:fixed!important;
  inset:var(--sts-v2-overlay-panel-top,128px) var(--sts-v2-overlay-panel-right,16px) auto var(--sts-v2-overlay-panel-left,16px)!important;
  width:auto!important;
  max-width:none!important;
  max-height:calc(100dvh - var(--sts-v2-overlay-panel-top,128px) - 14px)!important;
  margin:0!important;
  z-index:1001!important;
}
.sts-v2-overlay-panel-head{
  position:sticky!important;
  top:-12px!important;
  z-index:4!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:0 0 10px!important;
  margin:0 0 2px!important;
  background:#fff!important;
  border-bottom:1px solid #eef2f7!important;
}
.sts-v2-overlay-panel-head strong{
  color:#111827!important;
  font-size:14px!important;
  font-weight:950!important;
}
.sts-v2-overlay-panel-head button{
  border:1px solid #d8e0ea!important;
  background:#f8fafc!important;
  color:#334155!important;
  border-radius:999px!important;
  min-height:30px!important;
  padding:5px 11px!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.sts-v2-overlay-panel-head button:hover{
  background:#111827!important;
  border-color:#111827!important;
  color:#fff!important;
}
@media (max-width:900px){
  .sts-v2-overlay-panel{
    inset:var(--sts-v2-overlay-panel-top,72px) var(--sts-v2-overlay-panel-right,8px) auto var(--sts-v2-overlay-panel-left,8px)!important;
    max-height:calc(100dvh - var(--sts-v2-overlay-panel-top,72px) - 8px)!important;
  }
}

/* v0.1.147 — Editor export menu, merge-up/down controls, and top-first workbench.
   The timing editor/list are now the primary work area at the top; video moves below. */
.sts-v2-grid{
  grid-template-columns:minmax(320px,40%) minmax(0,1fr)!important;
  grid-template-rows:minmax(170px,30vh) minmax(120px,22vh)!important;
  grid-template-areas:
    "waveform list"
    "active list"!important;
}
.sts-v2-zone-waveform{grid-area:waveform!important;z-index:2!important}
.sts-v2-zone-active{grid-area:active!important;z-index:1!important}
.sts-v2-zone-list{grid-area:list!important;z-index:2!important}
.sts-v2-zone-active .sts-v2-zone-head strong::after{content:none!important}
.sts-v2-active-layout{height:100%!important;min-height:0!important;padding:8px!important}
.sts-v2-media{height:100%!important;min-height:0!important}
.sts-v2-export-menu{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  z-index:12!important;
}
.sts-v2-export-menu summary{
  list-style:none!important;
  cursor:pointer!important;
  border:1px solid #111827!important;
  background:#111827!important;
  color:#fff!important;
  border-radius:999px!important;
  min-height:30px!important;
  padding:6px 11px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.sts-v2-export-menu summary::-webkit-details-marker{display:none!important}
.sts-v2-export-menu summary::before{content:'⇩';font-size:12px!important}
.sts-v2-export-panel{
  position:absolute!important;
  inset:calc(100% + 6px) auto auto 0!important;
  min-width:154px!important;
  display:grid!important;
  gap:5px!important;
  padding:8px!important;
  border:1px solid #d8e0ea!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 18px 42px rgba(15,23,42,.18)!important;
  z-index:1005!important;
}
.sts-v2-export-panel button{
  width:100%!important;
  justify-content:center!important;
  border-radius:10px!important;
  min-height:30px!important;
  padding:6px 10px!important;
  font-size:12px!important;
  font-weight:900!important;
}
.sts-v2-merge-arrow{min-width:64px!important;font-weight:900!important}
@media (max-width:900px){
  .sts-v2-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:150px minmax(0,1fr) 116px!important;
    grid-template-areas:"waveform" "list" "active"!important;
  }
  .sts-v2-export-menu{position:relative!important}
  .sts-v2-export-panel{inset:calc(100% + 6px) 0 auto auto!important;min-width:145px!important}
  .sts-v2-media{max-height:none!important}
}

/* v0.1.148 — header-level row organization/export controls and full-height lower-video workbench.
   The primary timing/list workspace fills the top. The media preview is intentionally at the bottom,
   without shrinking the app to half-height. */
.sts-v2-header-actions{
  align-items:center!important;
  overflow:visible!important;
}
.sts-v2-header-tools{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
  position:relative!important;
  z-index:30!important;
}
.sts-v2-header-tools .sts-v2-caption-layout-menu,
.sts-v2-header-tools .sts-v2-overlay-menu,
.sts-v2-header-tools .sts-v2-export-menu{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  z-index:31!important;
}
.sts-v2-header-tools .sts-v2-caption-layout-menu summary,
.sts-v2-header-tools .sts-v2-overlay-menu summary,
.sts-v2-header-tools .sts-v2-export-menu summary{
  min-height:30px!important;
  padding:6px 11px!important;
  font-size:12px!important;
  white-space:nowrap!important;
}
.sts-v2-header-tools .sts-v2-caption-layout-panel,
.sts-v2-header-tools .sts-v2-export-panel{
  position:absolute!important;
  inset:calc(100% + 6px) 0 auto auto!important;
  z-index:2200!important;
}
.sts-v2-header-tools .sts-v2-caption-layout-panel{
  width:min(380px,calc(100vw - 28px))!important;
  min-width:min(380px,calc(100vw - 28px))!important;
  grid-template-columns:1fr!important;
  align-items:stretch!important;
}
.sts-v2-header-tools .sts-v2-caption-layout-panel label,
.sts-v2-header-tools .sts-v2-caption-layout-panel button{
  width:100%!important;
}
.sts-v2-header-tools .sts-v2-caption-layout-panel input,
.sts-v2-header-tools .sts-v2-caption-layout-panel select{
  width:100%!important;
  min-width:0!important;
}
.sts-v2-grid{
  height:100%!important;
  min-height:0!important;
  grid-template-columns:minmax(340px,42%) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr) minmax(178px,28vh)!important;
  grid-template-areas:
    "waveform list"
    "active list"!important;
}
.sts-v2-zone-waveform{grid-area:waveform!important;min-height:0!important;z-index:2!important}
.sts-v2-zone-list{grid-area:list!important;min-height:0!important;z-index:2!important}
.sts-v2-zone-active{grid-area:active!important;min-height:0!important;z-index:1!important;overflow:hidden!important}
.sts-v2-active-layout{
  grid-template-columns:1fr!important;
  height:100%!important;
  min-height:0!important;
  padding:8px!important;
}
.sts-v2-active-caption{display:none!important}
.sts-v2-media{height:100%!important;min-height:0!important;max-height:none!important}
.sts-v2-timing-surface{height:100%!important;min-height:0!important}
.sts-v2-caption-list{height:100%!important;min-height:0!important;overflow:auto!important}
.sts-v2-list-toolbar .sts-v2-caption-layout-menu,
.sts-v2-list-toolbar .sts-v2-export-menu{display:none!important}
@media (max-width:900px){
  .sts-v2-header-actions{width:100%!important;align-items:flex-start!important}
  .sts-v2-header-tools{width:100%!important;order:2!important}
  .sts-v2-header-tools .sts-v2-caption-layout-menu,
.sts-v2-header-tools .sts-v2-overlay-menu,
.sts-v2-header-tools .sts-v2-export-menu{flex:1 1 auto!important}
  .sts-v2-header-tools .sts-v2-caption-layout-menu summary,
.sts-v2-header-tools .sts-v2-overlay-menu summary,
.sts-v2-header-tools .sts-v2-export-menu summary{width:100%!important;justify-content:center!important}
  .sts-v2-header-tools .sts-v2-caption-layout-panel,
.sts-v2-header-tools .sts-v2-export-panel{inset:calc(100% + 6px) auto auto 0!important;width:min(420px,calc(100vw - 20px))!important}
  .sts-v2-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(260px,1fr) minmax(220px,34vh) minmax(130px,20vh)!important;
    grid-template-areas:"list" "waveform" "active"!important;
  }
}
.sts-v2-header-tools .sts-v2-caption-layout-panel{display:grid!important}


/* v0.1.150 — Unified V2 app controls.
   All editor buttons, menu summaries and compact action controls now share the
   same neutral pill language as Split/Merge. Save remains the only strong primary. */
.sts-editor-v2-app button,
.sts-editor-v2-app .sts-v2-button,
.sts-editor-v2-app .sts-v2-link,
.sts-editor-v2-app .sts-v2-help-button,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary,
.sts-editor-v2-app .sts-v2-export-menu summary,
.sts-editor-v2-app .sts-v2-overlay-menu summary,
.sts-editor-v2-app .sts-v2-global-offset summary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:30px!important;
  padding:6px 10px!important;
  border:1px solid var(--sts-v2-border)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--sts-v2-strong)!important;
  font:inherit!important;
  font-size:12px!important;
  line-height:1.15!important;
  font-weight:850!important;
  letter-spacing:0!important;
  text-decoration:none!important;
  box-shadow:none!important;
  cursor:pointer!important;
  white-space:nowrap!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.sts-editor-v2-app button:hover:not(:disabled),
.sts-editor-v2-app button:focus-visible:not(:disabled),
.sts-editor-v2-app .sts-v2-button:hover,
.sts-editor-v2-app .sts-v2-button:focus-visible,
.sts-editor-v2-app .sts-v2-link:hover,
.sts-editor-v2-app .sts-v2-link:focus-visible,
.sts-editor-v2-app .sts-v2-help-button:hover,
.sts-editor-v2-app .sts-v2-help-button:focus-visible,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary:hover,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary:focus-visible,
.sts-editor-v2-app .sts-v2-export-menu summary:hover,
.sts-editor-v2-app .sts-v2-export-menu summary:focus-visible,
.sts-editor-v2-app .sts-v2-overlay-menu summary:hover,
.sts-editor-v2-app .sts-v2-overlay-menu summary:focus-visible,
.sts-editor-v2-app .sts-v2-global-offset summary:hover,
.sts-editor-v2-app .sts-v2-global-offset summary:focus-visible{
  border-color:var(--sts-v2-accent)!important;
  background:#fff!important;
  color:var(--sts-v2-strong)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
  outline:0!important;
}
.sts-editor-v2-app button:disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
}
.sts-editor-v2-app button.is-active,
.sts-editor-v2-app button[aria-pressed="true"],
.sts-v2-timing-toolbar button.is-active,
.sts-v2-help-tabs button.is-active,
.sts-v2-caption-play-mode button.is-active,
.sts-v2-caption-play-mode button[aria-pressed="true"],
.sts-v2-overlay-menu[open] summary,
.sts-v2-caption-layout-menu[open] summary,
.sts-v2-export-menu[open] summary{
  border-color:#93c5fd!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.08)!important;
}
.sts-editor-v2-app .sts-v2-save,
.sts-v2-list-toolbar .sts-v2-save,
.sts-v2-active-actions .sts-v2-save{
  background:var(--sts-v2-accent)!important;
  border-color:var(--sts-v2-accent)!important;
  color:#fff!important;
  font-weight:900!important;
}
.sts-editor-v2-app .sts-v2-save:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-save:focus-visible:not(:disabled){
  background:#1d4ed8!important;
  border-color:#1d4ed8!important;
  color:#fff!important;
}
.sts-v2-export-panel button,
.sts-v2-caption-layout-panel button,
.sts-v2-overlay-actions button,
.sts-v2-global-offset-panel button,
.sts-v2-precision-group button{
  justify-content:center!important;
}
.sts-v2-export-panel{
  min-width:178px!important;
}

/* v0.1.151 — Restore the original Split/Merge button typography and improve player proportions.
   The previous unification pass made the primary caption controls too heavy. This reset keeps
   all controls visually consistent but uses the original list-toolbar button font rhythm. */
.sts-editor-v2-app button,
.sts-editor-v2-app .sts-v2-button,
.sts-editor-v2-app .sts-v2-link,
.sts-editor-v2-app .sts-v2-help-button,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary,
.sts-editor-v2-app .sts-v2-export-menu summary,
.sts-editor-v2-app .sts-v2-overlay-menu summary,
.sts-editor-v2-app .sts-v2-global-offset summary{
  font:inherit!important;
  font-size:12px!important;
  font-weight:400!important;
  letter-spacing:0!important;
  line-height:1.15!important;
  min-height:30px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid var(--sts-v2-border)!important;
  background:#fff!important;
  color:var(--sts-v2-strong)!important;
  box-shadow:none!important;
}
.sts-editor-v2-app [data-v2-split],
.sts-editor-v2-app .sts-v2-merge-arrow{
  font:inherit!important;
  font-size:12px!important;
  color:var(--sts-v2-strong)!important;
}
.sts-editor-v2-app .sts-v2-merge-arrow{font-weight:900!important;min-width:64px!important}
.sts-editor-v2-app .sts-v2-save,
.sts-v2-list-toolbar .sts-v2-save,
.sts-v2-active-actions .sts-v2-save{font-weight:900!important}
.sts-v2-help-tabs button.is-active,
.sts-v2-timing-toolbar button.is-active,
.sts-v2-caption-play-mode button.is-active,
.sts-v2-caption-play-mode button[aria-pressed="true"],
.sts-v2-overlay-menu[open] summary,
.sts-v2-caption-layout-menu[open] summary,
.sts-v2-export-menu[open] summary{
  font-weight:400!important;
}
.sts-v2-grid{
  grid-template-rows:minmax(0,1fr) clamp(238px,34vh,360px)!important;
}
.sts-v2-timing-surface{
  grid-template-rows:auto minmax(110px,1fr) 42px auto!important;
  gap:6px!important;
  padding:8px!important;
}
.sts-v2-wave-canvas-wrap{min-height:112px!important}
.sts-v2-wave-canvas{min-height:112px!important}
.sts-v2-active-layout{padding:6px!important;align-items:center!important;justify-items:center!important}
.sts-v2-media{
  width:100%!important;
  height:100%!important;
  max-height:100%!important;
  aspect-ratio:16/9!important;
}
.sts-v2-media-frame.is-video{
  width:100%!important;
  height:auto!important;
  max-height:100%!important;
  aspect-ratio:16/9!important;
}
.sts-v2-media-frame.is-video video[data-v2-player]{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.sts-v2-overlay-fields label:has([data-v2-overlay-output-mode]),
.sts-v2-overlay-fields label:has([data-v2-overlay-strip-height]){
  background:#f8fafc!important;
  border-color:#dbeafe!important;
}
@media (max-width:900px){
  .sts-v2-grid{grid-template-rows:minmax(260px,1fr) minmax(190px,28vh) clamp(180px,32vh,280px)!important}
  .sts-v2-media{aspect-ratio:16/9!important}
}

/* v0.1.153 — Timing tools are collapsed on demand and share one workspace row.
   "דיוק גבולות" and "הזז תזמון" should not be permanently open or overlap
   the centered caption-play control. */
.sts-v2-timing-surface{
  grid-template-rows:auto auto auto minmax(112px,1fr) 32px auto!important;
  overflow:hidden!important;
}
.sts-v2-timing-tools{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  gap:6px!important;
  min-height:32px!important;
  position:relative!important;
  z-index:8!important;
}
.sts-v2-timing-tool{
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  max-width:100%!important;
  position:relative!important;
  z-index:9!important;
}
.sts-v2-timing-tool summary{
  list-style:none!important;
  cursor:pointer!important;
}
.sts-v2-timing-tool summary::-webkit-details-marker{display:none!important}
.sts-v2-timing-tool[open]{
  flex:1 1 100%!important;
  z-index:12!important;
}
.sts-v2-timing-tool[open] summary{
  align-self:flex-start!important;
  border-color:#93c5fd!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
}
.sts-v2-precision-bar,
.sts-v2-global-offset-panel{
  margin-top:6px!important;
  position:relative!important;
  z-index:12!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.sts-v2-precision-bar{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  padding:6px!important;
  border:1px solid #e2e8f0!important;
  border-radius:12px!important;
  background:#f8fafc!important;
}
.sts-v2-precision-group{
  flex:1 1 320px!important;
  min-width:min(320px,100%)!important;
}
.sts-v2-centered-caption-play{z-index:5!important;position:relative!important}
@media (max-width:900px){
  .sts-v2-timing-surface{grid-template-rows:auto auto auto minmax(92px,1fr) 30px auto!important}
  .sts-v2-precision-group{flex:1 1 100%!important;min-width:0!important;overflow-x:auto!important}
  .sts-v2-global-offset-panel{overflow-x:auto!important}
}


/* v0.1.154 — UX correction: timing tool buttons, player proportions, concise render status.
   Keep these overrides at the end so they win over the accumulated V2 layout rescue blocks. */
.sts-v2-grid{
  grid-template-columns:minmax(340px,42%) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr) clamp(280px,38vh,430px)!important;
  grid-template-areas:
    "waveform list"
    "active list"!important;
}
.sts-v2-zone-active{grid-area:active!important;overflow:hidden!important}
.sts-v2-active-layout{
  display:grid!important;
  grid-template-columns:1fr!important;
  place-items:center!important;
  padding:6px 10px!important;
  height:100%!important;
  min-height:0!important;
}
.sts-v2-media{
  width:100%!important;
  height:auto!important;
  max-height:100%!important;
  aspect-ratio:16/9!important;
  align-self:center!important;
  justify-self:center!important;
  display:grid!important;
  place-items:center!important;
}
.sts-v2-media-frame,
.sts-v2-media-frame.is-video{
  width:100%!important;
  height:100%!important;
  max-height:100%!important;
  aspect-ratio:16/9!important;
}
.sts-v2-media-frame.is-video video[data-v2-player]{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.sts-v2-timing-surface{
  grid-template-rows:auto auto minmax(104px,1fr) 34px auto!important;
  gap:6px!important;
  overflow:hidden!important;
}
.sts-v2-timing-tools{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:6px!important;
  align-items:start!important;
  min-height:30px!important;
  overflow:visible!important;
  z-index:12!important;
}
.sts-v2-timing-tool{
  min-width:0!important;
  width:100%!important;
  max-width:none!important;
  display:block!important;
  position:relative!important;
}
.sts-editor-v2-app .sts-v2-timing-tool summary{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:30px!important;
  padding:6px 10px!important;
  border:1px solid var(--sts-v2-border)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--sts-v2-strong)!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.15!important;
  cursor:pointer!important;
  list-style:none!important;
  box-shadow:none!important;
}
.sts-editor-v2-app .sts-v2-timing-tool summary::-webkit-details-marker{display:none!important}
.sts-editor-v2-app .sts-v2-timing-tool summary:hover,
.sts-editor-v2-app .sts-v2-timing-tool summary:focus-visible{
  border-color:#93c5fd!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
  outline:none!important;
}
.sts-v2-timing-tool[open]{
  grid-column:1 / -1!important;
  z-index:20!important;
}
.sts-v2-timing-tool[open] summary{
  justify-self:start!important;
  width:min(280px,100%)!important;
  border-color:#93c5fd!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
}
.sts-v2-precision-bar,
.sts-v2-global-offset-panel{
  margin-top:6px!important;
  width:100%!important;
  max-width:100%!important;
  z-index:21!important;
  position:relative!important;
}
@media (max-width:900px){
  .sts-v2-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(260px,1fr) minmax(220px,34vh) clamp(240px,34vh,360px)!important;
    grid-template-areas:"list" "waveform" "active"!important;
  }
}

/* v0.1.167 manual long-form preview request */
.sts-v2-manual-preview-box{gap:10px!important;align-content:center;justify-items:center;max-width:520px;margin:auto}
.sts-v2-preview-request-button{border:1px solid #38bdf8;background:#e0f2fe;color:#075985;border-radius:999px;padding:8px 14px;font:inherit;font-weight:800;cursor:pointer}
.sts-v2-preview-request-button:hover{box-shadow:0 0 0 3px rgba(14,165,233,.16)}
.sts-v2-preview-request-button:disabled{opacity:.6;cursor:wait}
.sts-v2-preview-progress{width:min(320px,90%);height:8px;background:rgba(148,163,184,.35);border-radius:999px;overflow:hidden}
.sts-v2-preview-progress span{display:block;height:100%;background:#38bdf8;border-radius:inherit;transition:width .25s ease}
.sts-v2-preview-error{color:#fecaca;max-width:460px}

/* v0.1.168 — Make timing validation actionable in large subtitle lists. */
.sts-v2-list-row.has-timing-problem{
  background:#fff1f2!important;
  box-shadow:inset 4px 0 0 #dc2626!important;
}
.sts-v2-list-row.has-timing-problem .sts-v2-list-time,
.sts-v2-list-row.has-timing-problem .sts-v2-list-index{
  color:#991b1b!important;
  font-weight:900!important;
}


/* v0.1.169 — Caption search, non-bold secondary toolbar actions, and stable row playback scroll. */
.sts-editor-v2-app .sts-v2-list-toolbar .sts-v2-merge-arrow,
.sts-editor-v2-app .sts-v2-list-toolbar [data-v2-undo],
.sts-editor-v2-app .sts-v2-list-toolbar [data-v2-redo]{
  font-weight:400!important;
}
.sts-v2-caption-search{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-height:30px!important;
  padding:3px 5px!important;
  border:1px solid #d8e0ea!important;
  border-radius:999px!important;
  background:#fff!important;
  max-width:100%!important;
}
.sts-v2-caption-search-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:20px!important;
  height:20px!important;
  border-radius:999px!important;
  background:#eff6ff!important;
  color:#2563eb!important;
  font-size:13px!important;
  line-height:1!important;
}
.sts-v2-caption-search input{
  width:clamp(120px,16vw,240px)!important;
  min-height:24px!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  padding:2px 4px!important;
  font:inherit!important;
  font-size:12px!important;
  color:#0f172a!important;
}
.sts-v2-caption-search input:focus{
  box-shadow:none!important;
}
.sts-v2-caption-search button{
  min-height:24px!important;
  padding:3px 8px!important;
  font-size:11px!important;
  border-radius:999px!important;
  font-weight:400!important;
}
.sts-v2-caption-search-count{
  min-width:52px!important;
  color:#64748b!important;
  font-size:11px!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.sts-v2-list-row.is-search-match{
  background:#fff7ed!important;
}
.sts-v2-list-row.is-search-match.is-active{
  background:#dbeafe!important;
}
.sts-v2-list-row.is-search-current{
  box-shadow:inset 0 0 0 2px #f59e0b!important;
}
@media (max-width:900px){
  .sts-v2-caption-search{width:100%!important;order:-1!important;justify-content:flex-start!important;border-radius:14px!important;overflow-x:auto!important}
  .sts-v2-caption-search input{width:min(46vw,220px)!important;flex:1 1 auto!important}
}

/* v0.1.170 — Stable timing tools, top save action, and non-anchored single-caption playback. */
.sts-v2-header-tools .sts-v2-header-save{
  order:-20!important;
  min-width:74px!important;
}
.sts-v2-header-tools .sts-v2-header-save-state{
  order:-19!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  max-width:220px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#64748b!important;
  font-size:12px!important;
  padding-inline:2px 6px!important;
}
.sts-v2-list-toolbar .sts-v2-save,
.sts-v2-list-toolbar .sts-v2-save-state{
  display:none!important;
}
.sts-v2-timing-tools{
  display:grid!important;
  grid-template-columns:1fr!important;
  align-items:start!important;
  gap:6px!important;
  min-height:30px!important;
  width:100%!important;
  position:relative!important;
  z-index:14!important;
}
.sts-v2-timing-tool-tabs{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  min-height:30px!important;
  width:100%!important;
}
.sts-v2-timing-tool-button{
  flex:0 0 auto!important;
}
.sts-v2-timing-tool-button.is-active{
  border-color:#93c5fd!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.08)!important;
}
.sts-v2-timing-tool-panel{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  border:1px solid #e2e8f0!important;
  border-radius:14px!important;
  background:#f8fafc!important;
  padding:7px!important;
  overflow:hidden!important;
}
.sts-v2-timing-tool-panel[hidden]{
  display:none!important;
}
.sts-v2-timing-tool-panel .sts-v2-precision-bar,
.sts-v2-timing-tool-panel .sts-v2-global-offset-panel{
  margin-top:0!important;
  border:0!important;
  background:transparent!important;
  padding:0!important;
  width:100%!important;
  max-width:100%!important;
}
.sts-v2-timing-tool-panel .sts-v2-global-offset-panel{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
.sts-v2-timing-tool-panel .sts-v2-global-offset-panel label{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0!important;
}
.sts-v2-timing-tool-panel .sts-v2-global-offset-panel input{
  width:90px!important;
}
.sts-v2-centered-caption-play{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 0 -2px!important;
  padding:0!important;
  z-index:18!important;
}
.sts-v2-caption-play-cluster{
  margin:0!important;
}
.sts-v2-wave-canvas-wrap{
  margin-top:0!important;
}
@media (max-width:900px){
  .sts-v2-header-tools .sts-v2-header-save,
.sts-v2-header-tools .sts-v2-header-save-state{order:-30!important}
  .sts-v2-header-tools .sts-v2-header-save{flex:1 1 120px!important}
  .sts-v2-header-tools .sts-v2-header-save-state{flex:1 1 100%!important;max-width:100%!important}
  .sts-v2-timing-tool-panel{overflow-x:auto!important}
  .sts-v2-timing-tool-tabs{flex-wrap:nowrap!important;overflow-x:auto!important}
  .sts-v2-centered-caption-play{margin-bottom:0!important}
}


/* v0.1.171 — Pin caption transport directly to the waveform stack. */
.sts-v2-timing-surface{
  grid-template-rows:auto auto minmax(0,1fr) 34px auto!important;
  align-content:stretch!important;
}
.sts-v2-waveform-stack{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  width:100%!important;
  align-self:stretch!important;
}
.sts-v2-waveform-stack .sts-v2-centered-caption-play{
  flex:0 0 auto!important;
  align-self:stretch!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  min-height:32px!important;
  margin:0!important;
  padding:0 0 3px!important;
  position:relative!important;
  z-index:18!important;
}
.sts-v2-waveform-stack .sts-v2-caption-play-cluster{
  margin:0!important;
}
.sts-v2-waveform-stack .sts-v2-wave-canvas-wrap{
  flex:1 1 auto!important;
  min-height:112px!important;
  margin:0!important;
}
.sts-v2-timing-tool-panel{
  max-height:92px!important;
  overflow:auto!important;
}
@media (max-width:900px){
  .sts-v2-timing-surface{grid-template-rows:auto auto minmax(0,1fr) 32px auto!important}
  .sts-v2-waveform-stack .sts-v2-wave-canvas-wrap{min-height:94px!important}
  .sts-v2-timing-tool-panel{max-height:108px!important}
}

/* v0.1.188 — async overlay renders should expose a real user-click download link. */
.sts-v2-download-ready{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:30px!important;
  padding:5px 12px!important;
  margin-inline-start:8px!important;
  border-radius:999px!important;
  border:1px solid #059669!important;
  background:#ffffff!important;
  color:#065f46!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.sts-v2-download-ready:hover,
.sts-v2-download-ready:focus-visible{
  background:#ecfdf5!important;
  outline:none!important;
  box-shadow:0 0 0 3px rgba(16,185,129,.18)!important;
}

/* v0.1.190 — caption layout alternatives: characters OR words, plus sentence boundary splitting. */
.sts-v2-caption-layout-panel .sts-v2-layout-mode{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;grid-column:1/-1}
.sts-v2-caption-layout-panel .sts-v2-layout-mode label,.sts-v2-caption-layout-panel .sts-v2-layout-check{display:flex;align-items:center;gap:8px}
.sts-v2-caption-layout-panel .sts-v2-layout-mode input[type=radio],.sts-v2-caption-layout-panel .sts-v2-layout-check input[type=checkbox]{inline-size:auto;min-width:0;box-shadow:none}
.sts-v2-caption-layout-panel .sts-v2-layout-mode input[type=number]{max-width:92px}
.sts-v2-caption-layout-panel .sts-v2-layout-mode input[type=number]:disabled{opacity:.45;background:#f8fafc;cursor:not-allowed}

/* v0.1.229 — Portrait/mobile video fit in the fixed V2 player window.
   Keep the player frame size stable, but always show the complete video proportionally. */
.sts-v2-media,
.sts-v2-media-frame,
.sts-v2-media-frame.is-video{
  overflow:hidden!important;
  background:#0f172a!important;
}
.sts-v2-media-frame.is-video video[data-v2-player],
.sts-v2-media video[data-v2-player]{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  aspect-ratio:auto!important;
  background:#0f172a!important;
}
.sts-v2-media-frame.is-video{
  position:relative!important;
  display:block!important;
}

/* v0.1.276 — Subtitle Editor Clip Mode foundation */
.sts-editor-v2-app[data-clip-mode="1"] .sts-v2-kicker::after{content:none!important}
.sts-editor-v2-app[data-clip-mode="1"] .sts-v2-header h1::after{content:none!important}
.sts-v2-media-frame.is-clip-mode{outline:2px solid rgba(37,99,235,.18);outline-offset:2px}

/* v0.1.277 — Clip Mode workflow bridge */
.sts-v2-media-frame.is-clip-mode{position:relative;}
.sts-v2-media-frame.is-clip-mode::before{content:'Clip Mode';position:absolute;inset-block-start:10px;inset-inline-start:10px;z-index:3;background:rgba(15,23,42,.72);color:#fff;border:1px solid rgba(255,255,255,.26);border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:950;backdrop-filter:blur(5px);}
.sts-v2-clip-workflow-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 8px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:14px;color:#0f172a;}
.sts-v2-clip-mode-badge{display:inline-flex;align-items:center;border-radius:999px;background:#1d4ed8;color:#fff;padding:4px 8px;font-size:.72rem;font-weight:950;letter-spacing:.02em;white-space:nowrap;}
.sts-v2-clip-mode-title{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:950;color:#1e293b;}
.sts-v2-clip-primary,.sts-v2-clip-secondary{border-radius:10px;font-weight:950;text-decoration:none;white-space:nowrap;}
.sts-v2-clip-primary{border:1px solid #16a34a;background:#16a34a;color:#fff;padding:8px 11px;cursor:pointer;}
.sts-v2-clip-secondary{border:1px solid #cbd5e1;background:#fff;color:#334155;padding:7px 10px;}
.sts-v2-clip-primary:disabled{opacity:.55;cursor:not-allowed;}
@media (max-width:780px){.sts-v2-clip-workflow-tools{width:100%;align-items:stretch}.sts-v2-clip-mode-title{max-width:none;width:100%}.sts-v2-clip-primary,.sts-v2-clip-secondary{width:100%;text-align:center}}

/* STS v0.1.279 — Clip Mode stale-caption guard */
.sts-v2-clip-workflow-tools.is-stale{
  border-color: rgba(185, 28, 28, .34);
  background: rgba(254, 242, 242, .86);
}
.sts-v2-clip-stale-note{
  font-weight: 700;
}


.sts-editor-v2-app[data-clip-mode="1"] .sts-v2-kicker::after,
.sts-editor-v2-app[data-clip-mode="1"] .sts-v2-header h1::after,
.sts-v2-media-frame.is-clip-mode::before{content:none!important;display:none!important;}
.sts-v2-modal-backdrop{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.54);backdrop-filter:blur(3px);}
@media (max-width:680px){.sts-v2-modal-backdrop{align-items:stretch;padding:10px}}


.sts-v2-clip-workflow-tools{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.sts-v2-download-ready{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:6px 11px;
  margin-inline-start:8px;
  border-radius:10px;
  background:#16a34a;
  color:#fff!important;
  font-weight:950;
  text-decoration:none;
}

/* v0.1.285 — Unified clip workflow actions inside the existing editor design system. */
.sts-editor-v2-app .sts-v2-action,
.sts-editor-v2-app a.sts-v2-action,
.sts-editor-v2-app button.sts-v2-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:34px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  border:1px solid var(--sts-v2-border)!important;
  background:#fff!important;
  color:var(--sts-v2-strong)!important;
  font:inherit!important;
  font-size:12px!important;
  line-height:1.15!important;
  font-weight:900!important;
  text-decoration:none!important;
  cursor:pointer!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.sts-editor-v2-app .sts-v2-action:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-action:focus-visible:not(:disabled){
  border-color:var(--sts-v2-accent)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
  outline:0!important;
}
.sts-editor-v2-app .sts-v2-action-primary,
.sts-editor-v2-app a.sts-v2-action-primary,
.sts-editor-v2-app button.sts-v2-action-primary{
  background:var(--sts-v2-accent)!important;
  border-color:var(--sts-v2-accent)!important;
  color:#fff!important;
}
.sts-editor-v2-app .sts-v2-action-primary:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-action-primary:focus-visible:not(:disabled){
  background:#1d4ed8!important;
  border-color:#1d4ed8!important;
  color:#fff!important;
}
.sts-editor-v2-app .sts-v2-action-secondary,
.sts-editor-v2-app a.sts-v2-action-secondary,
.sts-editor-v2-app button.sts-v2-action-secondary{
  background:#fff!important;
  border-color:var(--sts-v2-border)!important;
  color:var(--sts-v2-strong)!important;
}
.sts-editor-v2-app .sts-v2-download-ready{
  margin-inline-start:8px!important;
  color:#fff!important;
}
.sts-v2-clip-context{margin:6px 0 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--sts-v2-muted);font-size:12px;font-weight:800;}
.sts-v2-clip-context a{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--sts-v2-border);border-radius:999px;background:#fff;color:var(--sts-v2-strong)!important;text-decoration:none!important;padding:5px 9px;font-weight:900;}
.sts-v2-clip-context a:hover,.sts-v2-clip-context a:focus-visible{border-color:var(--sts-v2-accent);box-shadow:0 0 0 3px rgba(37,99,235,.10);outline:0;}
.sts-v2-export-panel{min-width:210px!important;}
.sts-v2-export-panel-section{display:grid!important;gap:5px!important;}
.sts-v2-export-panel button.is-primary{
  background:var(--sts-v2-accent)!important;
  border-color:var(--sts-v2-accent)!important;
  color:#fff!important;
}
.sts-v2-export-panel button.is-primary:hover:not(:disabled){
  background:#1d4ed8!important;
  border-color:#1d4ed8!important;
  color:#fff!important;
}

/* v0.1.297 — Unified STS product design system for Editor V2.
   Final editor-layer override: subtitle editor, export menus, clip export,
   overlay controls and download-ready CTAs follow the same app grammar. */
.sts-editor-v2-app{
  --sts-v2-bg:#eef2f7!important;
  --sts-v2-card:#ffffff!important;
  --sts-v2-surface:#ffffff!important;
  --sts-v2-surface-soft:#f8fafc!important;
  --sts-v2-border:#d8e0ea!important;
  --sts-v2-border-strong:#b8c3d4!important;
  --sts-v2-strong:#0f172a!important;
  --sts-v2-muted:#64748b!important;
  --sts-v2-accent:#2563eb!important;
  --sts-v2-accent-hover:#1d4ed8!important;
  --sts-v2-accent-soft:#eff6ff!important;
  --sts-v2-accent-border:#93c5fd!important;
  --sts-v2-danger:#dc2626!important;
  --sts-v2-danger-soft:#fef2f2!important;
  --sts-v2-focus-ring:0 0 0 3px rgba(37,99,235,.14)!important;
  --sts-v2-shadow-soft:0 10px 28px rgba(15,23,42,.07)!important;
  --sts-v2-control-radius:999px!important;
  --sts-v2-control-height:36px!important;
}
.sts-editor-v2-app button,
.sts-editor-v2-app .sts-v2-button,
.sts-editor-v2-app .sts-v2-link,
.sts-editor-v2-app .sts-v2-help-button,
.sts-editor-v2-app .sts-v2-action,
.sts-editor-v2-app a.sts-v2-action,
.sts-editor-v2-app .sts-v2-download-ready,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary,
.sts-editor-v2-app .sts-v2-export-menu summary,
.sts-editor-v2-app .sts-v2-overlay-menu summary,
.sts-editor-v2-app .sts-v2-global-offset summary,
.sts-editor-v2-app .sts-v2-timing-tool summary,
.sts-editor-v2-app .sts-v2-clip-primary,
.sts-editor-v2-app .sts-v2-clip-secondary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:var(--sts-v2-control-height)!important;
  min-width:0!important;
  padding:8px 14px!important;
  border:1px solid var(--sts-v2-border-strong)!important;
  border-radius:var(--sts-v2-control-radius)!important;
  background:var(--sts-v2-surface)!important;
  color:var(--sts-v2-strong)!important;
  font:inherit!important;
  font-size:13px!important;
  font-weight:820!important;
  line-height:1.12!important;
  letter-spacing:0!important;
  text-decoration:none!important;
  text-align:center!important;
  white-space:nowrap!important;
  box-shadow:none!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.sts-editor-v2-app button:hover:not(:disabled),
.sts-editor-v2-app button:focus-visible:not(:disabled),
.sts-editor-v2-app .sts-v2-button:hover,
.sts-editor-v2-app .sts-v2-button:focus-visible,
.sts-editor-v2-app .sts-v2-link:hover,
.sts-editor-v2-app .sts-v2-link:focus-visible,
.sts-editor-v2-app .sts-v2-help-button:hover,
.sts-editor-v2-app .sts-v2-help-button:focus-visible,
.sts-editor-v2-app .sts-v2-action:hover,
.sts-editor-v2-app .sts-v2-action:focus-visible,
.sts-editor-v2-app .sts-v2-download-ready:hover,
.sts-editor-v2-app .sts-v2-download-ready:focus-visible,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary:hover,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary:focus-visible,
.sts-editor-v2-app .sts-v2-export-menu summary:hover,
.sts-editor-v2-app .sts-v2-export-menu summary:focus-visible,
.sts-editor-v2-app .sts-v2-overlay-menu summary:hover,
.sts-editor-v2-app .sts-v2-overlay-menu summary:focus-visible,
.sts-editor-v2-app .sts-v2-global-offset summary:hover,
.sts-editor-v2-app .sts-v2-global-offset summary:focus-visible,
.sts-editor-v2-app .sts-v2-timing-tool summary:hover,
.sts-editor-v2-app .sts-v2-timing-tool summary:focus-visible{
  border-color:var(--sts-v2-accent)!important;
  color:var(--sts-v2-accent-hover)!important;
  background:var(--sts-v2-surface)!important;
  box-shadow:var(--sts-v2-focus-ring)!important;
  outline:0!important;
}
.sts-editor-v2-app button:disabled,
.sts-editor-v2-app button[aria-disabled="true"],
.sts-editor-v2-app a[aria-disabled="true"]{
  opacity:.5!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
}
.sts-editor-v2-app .sts-v2-save,
.sts-editor-v2-app .sts-v2-action-primary,
.sts-editor-v2-app a.sts-v2-action-primary,
.sts-editor-v2-app button.sts-v2-action-primary,
.sts-editor-v2-app .sts-v2-download-ready,
.sts-editor-v2-app .sts-v2-export-panel button.is-primary,
.sts-editor-v2-app .sts-v2-preview-request-button,
.sts-editor-v2-app .sts-v2-clip-primary{
  background:var(--sts-v2-accent)!important;
  border-color:var(--sts-v2-accent)!important;
  color:#fff!important;
  font-weight:900!important;
}
.sts-editor-v2-app .sts-v2-save:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-save:focus-visible:not(:disabled),
.sts-editor-v2-app .sts-v2-action-primary:hover,
.sts-editor-v2-app .sts-v2-action-primary:focus-visible,
.sts-editor-v2-app .sts-v2-download-ready:hover,
.sts-editor-v2-app .sts-v2-download-ready:focus-visible,
.sts-editor-v2-app .sts-v2-export-panel button.is-primary:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-preview-request-button:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-preview-request-button:focus-visible:not(:disabled),
.sts-editor-v2-app .sts-v2-clip-primary:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-clip-primary:focus-visible:not(:disabled){
  background:var(--sts-v2-accent-hover)!important;
  border-color:var(--sts-v2-accent-hover)!important;
  color:#fff!important;
  box-shadow:var(--sts-v2-focus-ring)!important;
}
.sts-editor-v2-app button.is-active,
.sts-editor-v2-app button[aria-pressed="true"],
.sts-editor-v2-app .sts-v2-help-tabs button.is-active,
.sts-editor-v2-app .sts-v2-timing-toolbar button.is-active,
.sts-editor-v2-app .sts-v2-caption-play-mode button.is-active,
.sts-editor-v2-app .sts-v2-caption-play-mode button[aria-pressed="true"],
.sts-editor-v2-app .sts-v2-overlay-menu[open] summary,
.sts-editor-v2-app .sts-v2-caption-layout-menu[open] summary,
.sts-editor-v2-app .sts-v2-export-menu[open] summary,
.sts-editor-v2-app .sts-v2-global-offset[open] summary,
.sts-editor-v2-app .sts-v2-timing-tool[open] summary{
  background:var(--sts-v2-accent-soft)!important;
  border-color:var(--sts-v2-accent-border)!important;
  color:var(--sts-v2-accent-hover)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.08)!important;
}
.sts-editor-v2-app .sts-v2-action-secondary,
.sts-editor-v2-app a.sts-v2-action-secondary,
.sts-editor-v2-app button.sts-v2-action-secondary,
.sts-editor-v2-app .sts-v2-clip-secondary,
.sts-editor-v2-app .sts-v2-caption-layout-panel button,
.sts-editor-v2-app .sts-v2-overlay-actions button,
.sts-editor-v2-app .sts-v2-global-offset-panel button,
.sts-editor-v2-app .sts-v2-precision-group button{
  background:var(--sts-v2-surface)!important;
  border-color:var(--sts-v2-border-strong)!important;
  color:var(--sts-v2-strong)!important;
}
.sts-editor-v2-app .sts-v2-danger,
.sts-editor-v2-app button[data-v2-delete],
.sts-editor-v2-app button[data-v2-remove],
.sts-editor-v2-app button[data-action*="delete"],
.sts-editor-v2-app button[data-action*="remove"]{
  background:var(--sts-v2-danger-soft)!important;
  border-color:#fecaca!important;
  color:#991b1b!important;
}
.sts-editor-v2-app .sts-v2-header,
.sts-editor-v2-app .sts-v2-panel,
.sts-editor-v2-app .sts-v2-list,
.sts-editor-v2-app .sts-v2-active,
.sts-editor-v2-app .sts-v2-timing,
.sts-editor-v2-app .sts-v2-export-panel,
.sts-editor-v2-app .sts-v2-help-dialog,
.sts-editor-v2-app .sts-v2-overlay-panel,
.sts-editor-v2-app .sts-v2-global-offset-panel,
.sts-editor-v2-app .sts-v2-caption-layout-panel{
  border-color:var(--sts-v2-border)!important;
  background:var(--sts-v2-card)!important;
  box-shadow:var(--sts-v2-shadow-soft)!important;
}
.sts-editor-v2-app .sts-v2-save-state,
.sts-editor-v2-app .sts-v2-wave-note,
.sts-editor-v2-app .sts-v2-timing-hint,
.sts-editor-v2-app .sts-v2-clip-context{
  color:var(--sts-v2-muted)!important;
}
@media (max-width:680px){
  .sts-editor-v2-app button,
.sts-editor-v2-app .sts-v2-button,
.sts-editor-v2-app .sts-v2-action,
.sts-editor-v2-app .sts-v2-download-ready,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary,
.sts-editor-v2-app .sts-v2-export-menu summary,
.sts-editor-v2-app .sts-v2-overlay-menu summary,
.sts-editor-v2-app .sts-v2-global-offset summary{
    min-height:40px!important;
  }
}


/* v0.1.301 — Editor V2 final control law aligned with the archive/Clip Studio system. */
.sts-editor-v2-app{
  --sts-v2-control-height:36px!important;
  --sts-v2-control-font-size:13px!important;
  --sts-v2-control-font-weight:700!important;
}
.sts-editor-v2-app button,
.sts-editor-v2-app .sts-v2-button,
.sts-editor-v2-app .sts-v2-link,
.sts-editor-v2-app .sts-v2-help-button,
.sts-editor-v2-app .sts-v2-action,
.sts-editor-v2-app .sts-v2-download-ready,
.sts-editor-v2-app .sts-v2-caption-layout-menu summary,
.sts-editor-v2-app .sts-v2-export-menu summary,
.sts-editor-v2-app .sts-v2-overlay-menu summary,
.sts-editor-v2-app .sts-v2-global-offset summary,
.sts-editor-v2-app .sts-v2-timing-tool summary{
  min-height:var(--sts-v2-control-height)!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  font-size:var(--sts-v2-control-font-size)!important;
  font-weight:var(--sts-v2-control-font-weight)!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}
.sts-editor-v2-app .sts-v2-download-ready,
.sts-editor-v2-app .sts-v2-action-primary,
.sts-editor-v2-app .sts-v2-save,
.sts-editor-v2-app .sts-v2-export-panel button.is-primary,
.sts-editor-v2-app .sts-v2-preview-request-button,
.sts-editor-v2-app .sts-v2-clip-primary{
  background:var(--sts-v2-accent)!important;
  border-color:var(--sts-v2-accent)!important;
  color:#fff!important;
}


/* v0.4.8 — minimal, language-directed caption review marker. */
.sts-v2-list-text-cell{position:relative!important;}
.sts-v2-list-text-cell.has-review-marker{padding-inline-start:9px!important;}
.sts-v2-review-marker{
  position:absolute;
  inset-inline-start:1px;
  top:50%;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#c58a18;
  transform:translateY(-50%);
  opacity:.78;
  z-index:2;
}

/* Focused short-range burned-in video export workspace. */
.sts-v2-burned-workspace[hidden]{display:none!important}
.sts-v2-burned-workspace{position:fixed;inset:0;z-index:100040;background:rgba(10,15,24,.78);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:18px;direction:inherit}
.sts-v2-burned-shell{width:min(1180px,calc(100vw - 36px));height:min(900px,calc(100vh - 36px));max-height:calc(100vh - 36px);overflow:hidden;background:#fff;border:1px solid #dbe2ea;border-radius:14px;box-shadow:0 24px 80px rgba(0,0,0,.28);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}
.sts-v2-burned-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 16px;border-bottom:1px solid #e6eaf0;background:#fff;z-index:3}
.sts-v2-burned-head>div{display:flex;align-items:baseline;gap:10px;min-width:0}.sts-v2-burned-head strong{font-size:17px}.sts-v2-burned-head span{font-size:12px;color:#64748b}.sts-v2-burned-head button{border:0;background:transparent;color:#475569;cursor:pointer;padding:6px 9px}
.sts-v2-burned-preview-panel{min-width:0}.sts-v2-burned-video-frame{position:relative;display:flex;justify-content:center;align-items:center;background:#05070b;border-radius:10px;overflow:hidden;min-height:240px;max-height:62vh}
.sts-v2-burned-video-frame video{display:block;width:100%;height:auto;max-height:62vh;object-fit:contain;background:#000}
.sts-v2-burned-caption{position:absolute;z-index:2;text-align:center;padding:.12em .34em;border-radius:.12em;white-space:pre-wrap;overflow-wrap:anywhere;pointer-events:none;box-sizing:border-box}
.sts-v2-burned-range-summary{text-align:center;font-variant-numeric:tabular-nums;font-weight:650;font-size:13px;padding:12px 4px 6px;color:#253246;direction:ltr}
.sts-v2-burned-range{position:relative;height:34px;margin:0 4px;direction:ltr}.sts-v2-burned-range-track{position:absolute;left:0;right:0;top:15px;height:4px;border-radius:4px;background:#dce3eb;overflow:hidden}.sts-v2-burned-range-track i{display:block;position:absolute;top:0;bottom:0;left:var(--burned-start);right:calc(100% - var(--burned-end));background:#334155}
.sts-v2-burned-range input[type=range]{position:absolute;inset:0;width:100%;height:34px;margin:0;background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none}.sts-v2-burned-range input[type=range]::-webkit-slider-runnable-track{height:4px;background:transparent}.sts-v2-burned-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid #334155;margin-top:-5px;pointer-events:auto;cursor:ew-resize;box-shadow:0 1px 3px rgba(0,0,0,.24)}.sts-v2-burned-range input[type=range]::-moz-range-track{height:4px;background:transparent}.sts-v2-burned-range input[type=range]::-moz-range-thumb{width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid #334155;pointer-events:auto;cursor:ew-resize;box-shadow:0 1px 3px rgba(0,0,0,.24)}
.sts-v2-burned-range-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding-top:7px}.sts-v2-burned-range-actions button,.sts-v2-burned-style button{border:1px solid #cbd5e1;background:#fff;border-radius:7px;padding:7px 10px;font-size:12px;cursor:pointer;color:#334155}
.sts-v2-burned-controls{display:flex;flex-direction:column;gap:12px;border-inline-start:1px solid #e6eaf0;padding-inline-start:16px}.sts-v2-burned-style{display:grid;gap:7px}.sts-v2-burned-style>span{font-size:12px;color:#64748b}.sts-v2-burned-style>strong{font-size:13px;line-height:1.45}.sts-v2-burned-style button{justify-self:start}
.sts-v2-burned-local-status{min-height:38px;font-size:13px;line-height:1.45;color:#475569}.sts-v2-burned-local-status[data-state=error]{color:#a11}.sts-v2-burned-local-status[data-state=ok]{color:#17643a}
.sts-v2-burned-progress{display:grid;gap:6px}.sts-v2-burned-progress span{font-size:12px;color:#475569}.sts-v2-burned-progress:after{content:"";grid-row:2;grid-column:1;height:5px;border-radius:5px;background:#e2e8f0}.sts-v2-burned-progress i{grid-row:2;grid-column:1;display:block;height:5px;z-index:1;border-radius:5px;background:#475569;width:0;transition:width .25s ease}
.sts-v2-burned-action{border:1px solid #1f2937;background:#1f2937;color:#fff;border-radius:8px;padding:10px 14px;font-weight:700;cursor:pointer}.sts-v2-burned-action:disabled{opacity:.55;cursor:wait}
body:has(.sts-v2-burned-workspace:not([hidden])){overflow:hidden}
@media(max-width:760px){.sts-v2-burned-workspace{padding:0}.sts-v2-burned-shell{width:100vw;max-height:100vh;height:100vh;border-radius:0}.sts-v2-burned-body{grid-template-columns:1fr;padding:12px}.sts-v2-burned-controls{border-inline-start:0;border-top:1px solid #e6eaf0;padding-inline-start:0;padding-top:12px}.sts-v2-burned-video-frame{min-height:180px;max-height:48vh}.sts-v2-burned-video-frame video{max-height:48vh}.sts-v2-burned-head span{display:none}}
.sts-editor-v2-app.is-burned-video-open .sts-v2-overlay-panel{z-index:100070!important}
/* Burned-video workspace controls remain inside the shared editor control law. */
.sts-editor-v2-app .sts-v2-burned-action{
  background:var(--sts-v2-accent)!important;
  border-color:var(--sts-v2-accent)!important;
  color:#fff!important;
  font-weight:900!important;
}
.sts-editor-v2-app .sts-v2-burned-action:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-burned-action:focus-visible:not(:disabled){
  background:var(--sts-v2-accent-hover)!important;
  border-color:var(--sts-v2-accent-hover)!important;
  color:#fff!important;
  box-shadow:var(--sts-v2-focus-ring)!important;
}
.sts-editor-v2-app .sts-v2-burned-range-actions button,
.sts-editor-v2-app .sts-v2-burned-style button{
  background:var(--sts-v2-surface)!important;
  border-color:var(--sts-v2-border-strong)!important;
  color:var(--sts-v2-strong)!important;
}
.sts-editor-v2-app .sts-v2-burned-head button{
  min-height:32px!important;
  padding:5px 9px!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}


/* Burned-video preview geometry. The shared caption controls are rendered inline; no modal CSS is reused. */
.sts-v2-burned-preview-panel{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-width:0!important}
.sts-v2-burned-video-frame{width:min(100%,calc(62vh * var(--burned-video-ratio,1.7777778)))!important;aspect-ratio:var(--burned-video-ratio,1.7777778)!important;min-height:0!important;height:auto!important;max-height:62vh!important;margin-inline:auto!important;flex:0 1 auto!important}
.sts-v2-burned-video-frame video{width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important}
.sts-v2-burned-workspace[data-video-orientation="portrait"] .sts-v2-burned-shell{width:min(980px,calc(100vw - 36px))!important}
.sts-v2-burned-workspace[data-video-orientation="portrait"] .sts-v2-burned-body{grid-template-columns:minmax(280px,1fr) minmax(300px,390px)!important}
.sts-v2-burned-controls{min-width:0!important}
.sts-v2-burned-design-host[hidden],.sts-v2-overlay-panel[hidden]{display:none!important}
.sts-v2-burned-design-host{min-width:0;border-top:1px solid #e6eaf0;padding-top:10px}
.sts-v2-caption-design--wizard{display:grid;gap:10px;min-width:0}
.sts-v2-caption-design--wizard .sts-v2-overlay-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.sts-v2-caption-design--wizard .sts-v2-overlay-actions{justify-content:flex-start!important}
@media(max-width:760px){.sts-v2-burned-workspace[data-video-orientation] .sts-v2-burned-body{grid-template-columns:1fr!important}.sts-v2-burned-video-frame{width:min(100%,calc(48vh * var(--burned-video-ratio,1.7777778)))!important;max-height:48vh!important}.sts-v2-caption-design--wizard .sts-v2-overlay-fields{grid-template-columns:1fr!important}}

/* v0.6.4 — Watermark library inside the real Clip Mode export dialog. */
.sts-v2-clip-watermark-box{border:1px solid #e2e8f0;border-radius:14px;padding:11px;display:grid;gap:10px;background:#f8fafc;}
.sts-v2-clip-watermark-box legend{padding:0 5px;font-size:.86rem;color:#334155;font-weight:950;}
.sts-v2-clip-watermark-box legend span{color:#64748b;font-weight:800;}
.sts-v2-clip-watermark-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.sts-v2-clip-watermark-upload{display:flex!important;align-items:center;justify-content:space-between;gap:10px;border:1px dashed #cbd5e1;border-radius:12px;padding:9px 10px;background:#fff;}
.sts-v2-clip-watermark-upload input{min-width:0;max-width:68%;}
.sts-v2-clip-watermark-library{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;min-height:42px;}
.sts-v2-clip-watermark-item{display:grid;grid-template-columns:42px minmax(72px,130px) 24px;align-items:center;gap:6px;flex:0 0 auto;padding:4px 5px;border:1px solid #dbe3ec;border-radius:9px;background:#fff;}
.sts-v2-clip-watermark-item img{width:42px;height:34px;object-fit:contain;border-radius:5px;background:#eef2f7;}
.sts-v2-clip-watermark-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;color:#334155;}
.sts-v2-clip-watermark-item button{width:22px!important;height:22px!important;min-width:22px!important;padding:0!important;border:0!important;background:transparent!important;color:#64748b!important;font-size:19px!important;line-height:1!important;cursor:pointer;}
.sts-v2-clip-watermark-empty{font-size:.8rem;color:#64748b;align-self:center;}
@media (max-width:680px){.sts-v2-clip-watermark-grid{grid-template-columns:1fr}.sts-v2-clip-watermark-upload{align-items:flex-start;flex-direction:column}.sts-v2-clip-watermark-upload input{max-width:100%;width:100%;}}

/* Canonical export menu separator shared by Archive and Clip contexts. */
.sts-v2-export-panel-separator{height:1px;background:var(--sts-v2-border);margin:4px 0!important;}

/* v0.6.22 — one canonical burned-video export wizard. */

.sts-v2-burned-body{display:grid;grid-template-columns:minmax(280px,1fr) minmax(330px,430px);gap:18px;align-items:start;padding:18px;overflow:auto;min-height:0;overscroll-behavior:contain;scrollbar-gutter:stable}
.sts-v2-burned-card{border:1px solid #e2e8f0;border-radius:10px;background:#fafcfe}
.sts-v2-burned-card>summary{list-style:none;cursor:pointer;padding:12px 14px;display:flex;align-items:center;gap:10px}
.sts-v2-burned-card>summary::-webkit-details-marker{display:none}
.sts-v2-burned-card-head{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.sts-v2-burned-card-head b{font-size:13.5px;font-weight:850;color:#0f172a;display:flex;align-items:center;gap:8px}
.sts-v2-burned-card-head b:before{content:"";width:5px;height:5px;border-radius:50%;background:#cbd5e1;flex:0 0 auto}
.sts-v2-burned-card[open]>summary .sts-v2-burned-card-head b:before{background:#3a8b6f}
.sts-v2-burned-card-head span{font-size:11.5px;color:#94a3b8;font-weight:650}
.sts-v2-burned-card>summary:after{content:"";width:7px;height:7px;border-inline-end:2px solid #94a3b8;border-block-end:2px solid #94a3b8;transform:rotate(45deg);transition:transform .15s ease;flex:0 0 auto}
.sts-v2-burned-card[open]>summary:after{transform:rotate(-135deg)}
.sts-v2-burned-card-body{padding:0 14px 16px;display:grid;gap:14px}
.sts-v2-burned-option-group{display:grid;gap:9px}.sts-v2-burned-option-group>b{font-size:13px;color:#334155}.sts-v2-burned-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sts-v2-burned-choice-grid label{position:relative}.sts-v2-burned-choice-grid input{position:absolute;opacity:0;pointer-events:none}.sts-v2-burned-choice-grid span{display:grid;place-items:center;min-height:58px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;font-size:16px;font-weight:900;cursor:pointer}.sts-v2-burned-choice-grid input:checked+span{border-color:#3a8b6f;background:#eef8f4;color:#17643a;box-shadow:0 0 0 2px rgba(58,139,111,.12)}
.sts-v2-burned-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sts-v2-burned-fields label,.sts-v2-burned-manual-focus,.sts-v2-burned-watermark-upload{display:grid;gap:6px;font-size:12px;font-weight:800;color:#475569}.sts-v2-burned-fields select,.sts-v2-burned-fields input[type=range],.sts-v2-burned-fields input[type=text],.sts-v2-burned-watermark-upload input{width:100%;box-sizing:border-box}.sts-v2-burned-fields select,.sts-v2-burned-fields input[type=text]{border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;background:#fff;color:#172033}.sts-v2-burned-file-title{grid-column:1/-1}.sts-v2-burned-file-title small{font-size:11px;color:#94a3b8;font-weight:650}.sts-v2-burned-manual-focus[hidden],.sts-v2-burned-tracking-note[hidden]{display:none!important}.sts-v2-burned-manual-focus small{font-size:11px;color:#94a3b8;font-weight:650;display:flex;justify-content:space-between}.sts-v2-burned-tracking-note{padding:9px 11px;border-radius:8px;background:#fff8e8;border:1px solid #efd69b;color:#76520a;font-size:12px;line-height:1.45}
.sts-v2-burned-step-actions{display:flex;justify-content:flex-start;gap:9px;align-items:center;padding-top:4px}.sts-v2-burned-step-actions button{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:8px;padding:9px 14px;font-weight:850;cursor:pointer}.sts-v2-burned-step-actions button.is-primary{background:var(--sts-v2-accent,#17643a);border-color:var(--sts-v2-accent,#17643a);color:#fff}.sts-v2-burned-step-actions button.is-danger{background:#fff5f5;border-color:#dc2626;color:#b91c1c}.sts-v2-burned-step-actions button.is-danger:hover:not(:disabled){background:#fee2e2}.sts-v2-burned-step-actions button:disabled{opacity:.5;cursor:not-allowed}.sts-v2-burned-step-actions button[hidden]{display:none!important}
.sts-v2-burned-watermark-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;min-height:86px}.sts-v2-burned-watermark-item{position:relative;border:1px solid #dbe3ec;border-radius:10px;background:#fff;overflow:hidden}.sts-v2-burned-watermark-item.is-selected{border-color:#3a8b6f;box-shadow:0 0 0 2px rgba(58,139,111,.14)}.sts-v2-burned-watermark-item>button:first-child{display:grid!important;grid-template-rows:70px auto;gap:5px;width:100%;padding:6px!important;border:0!important;background:transparent!important;color:#334155!important}.sts-v2-burned-watermark-item img{width:100%;height:70px;object-fit:contain;background:#f1f5f9;border-radius:6px}.sts-v2-burned-watermark-item span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sts-v2-burned-watermark-item .is-delete{position:absolute;top:4px;left:4px;width:23px!important;height:23px!important;min-height:23px!important;padding:0!important;border-radius:50%!important;border:1px solid #dbe3ec!important;background:#fff!important;color:#64748b!important;line-height:1!important}.sts-v2-burned-watermark-empty{grid-column:1/-1;display:grid;place-items:center;min-height:86px;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;font-size:13px}.sts-v2-burned-watermark-upload{border:1px dashed #cbd5e1;border-radius:10px;padding:11px;background:#f8fafc}
.sts-v2-burned-overlay-list{display:grid;gap:12px}.sts-v2-burned-overlay-row{position:relative;border:1px solid #dbe3ec;border-radius:10px;background:#fff;padding:12px;display:grid;gap:10px}.sts-v2-burned-overlay-row-head{display:flex;align-items:center;gap:8px}.sts-v2-burned-overlay-row-head select{flex:1;border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px;background:#fff;color:#172033;font-weight:800}.sts-v2-burned-overlay-row-head .is-delete{width:23px!important;height:23px!important;min-height:23px!important;padding:0!important;border-radius:50%!important;border:1px solid #dbe3ec!important;background:#fff!important;color:#64748b!important;line-height:1!important;flex:0 0 auto}.sts-v2-burned-overlay-row label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#475569}.sts-v2-burned-overlay-row input[type=text]{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;background:#fff;color:#172033;font:inherit}.sts-v2-burned-overlay-suggest{display:flex;flex-wrap:wrap;gap:6px}.sts-v2-burned-overlay-suggest button{border:1px solid #cbd5e1;background:#f8fafc;color:#334155;border-radius:999px;padding:5px 11px;font-size:11.5px;font-weight:750;cursor:pointer}.sts-v2-burned-overlay-suggest button:hover{background:#eef8f4;border-color:#3a8b6f;color:#17643a}.sts-v2-burned-overlay-row .sts-v2-burned-range-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.sts-v2-burned-overlay-add{border:1px dashed #cbd5e1;background:#f8fafc;color:#334155;border-radius:10px;padding:10px;font-weight:800;cursor:pointer;width:100%}.sts-v2-burned-overlay-add:hover:not(:disabled){border-color:#3a8b6f;color:#17643a}.sts-v2-burned-overlay-add:disabled{opacity:.5;cursor:not-allowed}
.sts-v2-burned-body>.sts-v2-burned-preview-panel{position:sticky;top:0}.sts-v2-burned-video-frame{background:#0b0f16}.sts-v2-burned-video-frame video{object-fit:contain}.sts-v2-burned-watermark-preview{position:absolute;z-index:4;height:auto;max-height:28%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}.sts-v2-burned-watermark-preview[data-corner="top-right"]{top:2.5%;right:2.5%}.sts-v2-burned-watermark-preview[data-corner="top-left"]{top:2.5%;left:2.5%}.sts-v2-burned-watermark-preview[data-corner="bottom-right"]{bottom:2.5%;right:2.5%}.sts-v2-burned-watermark-preview[data-corner="bottom-left"]{bottom:2.5%;left:2.5%}.sts-v2-burned-preview-note{margin-top:8px;padding:8px 10px;border:1px solid #efd69b;border-radius:8px;background:#fff8e8;color:#76520a;font-size:12px;line-height:1.45}.sts-v2-burned-preview-note[hidden]{display:none!important}.sts-v2-burned-design-disabled{padding:12px;border:1px solid #dbe3ec;border-radius:9px;background:#f8fafc;color:#475569;font-size:13px;line-height:1.5}.sts-v2-burned-save-default{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:#334155}.sts-v2-burned-save-default[hidden]{display:none!important}
.sts-v2-burned-render-footer{position:relative;bottom:auto;z-index:7;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0;padding:12px 18px;border-top:1px solid #e2e8f0;background:rgba(255,255,255,.97);box-shadow:0 -10px 24px rgba(15,23,42,.06);backdrop-filter:blur(6px)}.sts-v2-burned-render-feedback{display:grid;gap:7px;min-width:0;flex:1}.sts-v2-burned-render-footer .sts-v2-burned-step-actions{padding:0;flex:0 0 auto}.sts-v2-burned-action{min-width:132px}.sts-v2-burned-action:disabled{opacity:.55;cursor:wait!important}
@media(max-width:820px){.sts-v2-burned-choice-grid{grid-template-columns:1fr}.sts-v2-burned-fields{grid-template-columns:1fr}.sts-v2-burned-watermark-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.sts-v2-burned-body{grid-template-columns:1fr}.sts-v2-burned-body>.sts-v2-burned-preview-panel{position:static}.sts-v2-burned-overlay-row .sts-v2-burned-range-fields{grid-template-columns:1fr}}

@media(max-width:820px){.sts-v2-burned-render-footer{align-items:stretch;flex-direction:column}.sts-v2-burned-render-footer .sts-v2-burned-step-actions{width:100%;justify-content:space-between}.sts-v2-burned-action{flex:1}}


/* v0.6.25 — actionable timing validation and fixed wizard actions. */
.sts-v2-list-row.has-timing-problem{
  border:1px solid #dc2626!important;
  box-shadow:inset 4px 0 0 #dc2626,0 0 0 1px rgba(220,38,38,.08)!important;
}
.sts-v2-burned-render-footer{
  flex:0 0 auto!important;
  min-height:62px!important;
}


.sts-v2-burned-authoritative-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;z-index:6}
.sts-v2-burned-authoritative-preview[hidden]{display:none!important}
.sts-v2-burned-authoritative-status{min-height:20px;margin-top:7px;font-size:12px;color:#64748b;text-align:center}
.sts-v2-burned-authoritative-status[data-state="loading"]{color:#475569}
.sts-v2-burned-authoritative-status[data-state="ok"]{color:#16724a}
.sts-v2-burned-authoritative-status[data-state="error"]{color:#9f3b3b}

/* v0.6.45 — progressive disclosure in the subtitle editor. */
.sts-v2-header-actions{align-items:flex-start}
.sts-v2-header-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sts-v2-more-menu{position:relative}
.sts-v2-more-menu>summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--sts-v2-border);border-radius:10px;background:#fff;color:#334155;padding:7px 11px;font:inherit;font-weight:800;cursor:pointer}
.sts-v2-more-menu>summary::-webkit-details-marker{display:none}
.sts-v2-more-panel{position:absolute;z-index:10020;inset:calc(100% + 6px) auto auto 0;display:grid;gap:7px;min-width:210px;padding:8px;border:1px solid var(--sts-v2-border);border-radius:12px;background:#fff;box-shadow:0 18px 40px rgba(15,23,42,.18)}
.sts-v2-more-panel>.sts-v2-caption-layout-menu,.sts-v2-more-panel>.sts-v2-overlay-menu{width:100%}
.sts-v2-more-panel>.sts-v2-caption-layout-menu>summary,.sts-v2-more-panel>.sts-v2-overlay-menu>summary,.sts-v2-more-panel>.sts-v2-help-button{width:100%!important;justify-content:flex-start!important;text-align:start!important;background:#fff!important;color:#334155!important;border-color:#e2e8f0!important;border-radius:9px!important;min-height:36px!important;padding:7px 10px!important}
.sts-v2-timing-advanced{border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc;margin:8px 0;padding:0 10px}
.sts-v2-timing-advanced>summary{cursor:pointer;color:#475569;font-size:12px;font-weight:850;padding:9px 1px}
.sts-v2-timing-advanced[open]>summary{border-bottom:1px solid #e2e8f0;margin-bottom:9px}
.sts-v2-timing-advanced-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.sts-v2-timing-advanced .sts-v2-timing-tools{margin:0 0 10px}
.sts-v2-structure-tools{position:relative}
.sts-v2-structure-tools>summary{list-style:none;display:inline-flex;align-items:center;min-height:34px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:5px 9px;font-weight:800;cursor:pointer}
.sts-v2-structure-tools>summary::-webkit-details-marker{display:none}
.sts-v2-structure-tools>div{position:absolute;z-index:50;inset:calc(100% + 4px) auto auto 0;display:grid;gap:5px;min-width:170px;padding:6px;border:1px solid #e2e8f0;border-radius:9px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.15)}
.sts-v2-structure-tools>div button{width:100%;text-align:start}
.sts-editor-v2-app[data-clip-mode="1"] .sts-v2-clip-context{display:none!important}
@media(max-width:900px){.sts-v2-header-tools{width:100%}.sts-v2-more-menu{flex:1 1 auto}.sts-v2-more-menu>summary{width:100%}.sts-v2-more-panel{inset:calc(100% + 6px) 0 auto auto;width:min(320px,calc(100vw - 24px))}.sts-v2-timing-advanced-head{align-items:flex-start;flex-direction:column}.sts-v2-caption-play-mode{width:100%}}

/* v0.6.46 — outcome-based design and export. */
.sts-v2-overlay-fields{display:block!important}
.sts-v2-overlay-fields-basic,.sts-v2-overlay-fields-advanced{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.sts-v2-overlay-advanced{margin-top:10px;border-top:1px solid #e2e8f0;padding-top:8px}
.sts-v2-overlay-advanced>summary{cursor:pointer;color:#475569;font-size:12px;font-weight:850;padding:5px 0}
.sts-v2-overlay-advanced[open]>summary{margin-bottom:8px}
.sts-v2-export-panel{display:grid!important;gap:9px!important;min-width:255px!important}
.sts-v2-export-panel-section{display:grid!important;gap:6px!important;padding:8px!important;border:1px solid #e2e8f0;border-radius:10px;background:#fff}
.sts-v2-export-panel-section>strong{font-size:12px;color:#475569;padding:0 3px}
.sts-v2-export-panel-section>button{width:100%!important;text-align:start!important}
.sts-v2-export-more{border-top:1px solid #eef2f7;padding-top:5px}
.sts-v2-export-more>summary{cursor:pointer;color:#64748b;font-size:12px;font-weight:800;padding:4px 3px}
.sts-v2-export-more>div{display:grid;gap:4px;margin-top:4px}
.sts-v2-export-more button{width:100%!important;text-align:start!important;background:#f8fafc!important}
.sts-v2-export-panel-section.is-burned-video{border-color:#bfdbfe;background:#eff6ff}
@media(max-width:760px){.sts-v2-overlay-fields-basic,.sts-v2-overlay-fields-advanced{grid-template-columns:1fr}.sts-v2-export-panel{min-width:0!important;width:min(330px,calc(100vw - 24px))!important}}

/* v0.6.47 — end-user UX accessibility and polish. */
.sts-editor-v2-app button:focus-visible,.sts-editor-v2-app a:focus-visible,.sts-editor-v2-app summary:focus-visible,.sts-editor-v2-app input:focus-visible,.sts-editor-v2-app select:focus-visible,.sts-editor-v2-app textarea:focus-visible{outline:3px solid rgba(37,99,235,.34)!important;outline-offset:2px!important}
.sts-v2-help-tab-panel ol{margin:8px 0 0;padding-inline-start:24px;display:grid;gap:7px;color:#334155;line-height:1.6}
@media(prefers-reduced-motion:reduce){.sts-editor-v2-app *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}


/* v0.6.60 — primary structure actions, transient-menu dismissal, and shared dark waveform language. */
.sts-v2-structure-actions{display:inline-flex;align-items:center;gap:5px;flex-wrap:nowrap;padding:3px;border:1px solid #dbe3ed;border-radius:10px;background:#f8fafc}
.sts-v2-structure-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;white-space:nowrap!important}
.sts-v2-structure-actions button span[aria-hidden="true"]{font-size:14px;line-height:1;color:#2563eb}
.sts-v2-structure-actions button:disabled span[aria-hidden="true"]{color:#94a3b8}
.sts-v2-wave-canvas-wrap{background:#0f172a!important;border-color:#26364c!important;box-shadow:inset 0 0 0 1px rgba(148,163,184,.05)!important}
.sts-v2-wave-canvas-wrap[data-mode="sentence"]{background:#0f172a!important}
.sts-v2-wave-status{background:rgba(15,23,42,.9)!important;border-color:#334155!important;color:#e2e8f0!important}
.sts-v2-wave-status[data-state="error"]{background:rgba(127,29,29,.92)!important;border-color:#ef4444!important;color:#fee2e2!important}
.sts-v2-wave-status[data-state="loading"]{background:rgba(30,58,138,.92)!important;border-color:#60a5fa!important;color:#dbeafe!important}
@media(max-width:900px){.sts-v2-structure-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.sts-v2-structure-actions [data-v2-split]{grid-column:1/-1}.sts-v2-structure-actions button{width:100%!important}}


/* v0.6.64 — persistent archive/home navigation in the subtitle editor. */
.sts-v2-home-link{gap:6px!important}
.sts-v2-home-link span[aria-hidden]{font-size:1.05em;line-height:1}

.sts-v2-burned-head-actions{display:flex!important;align-items:center!important;gap:8px!important}
.sts-v2-burned-head-actions .sts-v2-home-link{display:inline-flex;align-items:center;gap:5px;border:1px solid #cbd5e1;border-radius:999px;padding:7px 10px;color:#334155;text-decoration:none;font-weight:800;background:#fff}

/* v0.10.3 — One toolbar control contract and one intentional editor exit flow. */
.sts-editor-v2-app .sts-v2-toolbar-control{
  box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-width:0!important;
  min-height:var(--sts-v2-control-height,36px)!important;height:var(--sts-v2-control-height,36px)!important;padding:0 14px!important;
  border:1px solid var(--sts-v2-border-strong,var(--sts-v2-border))!important;border-radius:var(--sts-v2-control-radius,999px)!important;
  background:var(--sts-v2-surface,#fff)!important;color:var(--sts-v2-strong,#0f172a)!important;font:inherit!important;
  font-size:var(--sts-v2-control-font-size,13px)!important;font-weight:var(--sts-v2-control-font-weight,700)!important;line-height:1!important;
  letter-spacing:0!important;text-align:center!important;text-decoration:none!important;white-space:nowrap!important;box-shadow:none!important;cursor:pointer!important;
  appearance:none!important;-webkit-appearance:none!important;
}
.sts-editor-v2-app summary.sts-v2-toolbar-control{list-style:none!important}
.sts-editor-v2-app summary.sts-v2-toolbar-control::-webkit-details-marker{display:none!important}
.sts-editor-v2-app .sts-v2-toolbar-control:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-toolbar-control:focus-visible,
.sts-editor-v2-app details[open]>.sts-v2-toolbar-control{
  border-color:var(--sts-v2-accent,#2563eb)!important;background:var(--sts-v2-accent-soft,#eff6ff)!important;color:var(--sts-v2-strong,#0f172a)!important;
  box-shadow:var(--sts-v2-focus-ring,0 0 0 3px rgba(37,99,235,.14))!important;outline:0!important;
}
.sts-editor-v2-app button.sts-v2-toolbar-control:disabled{opacity:.45!important;cursor:not-allowed!important;box-shadow:none!important}
.sts-editor-v2-app .sts-v2-header-save:not(:disabled){background:var(--sts-v2-accent,#2563eb)!important;border-color:var(--sts-v2-accent,#2563eb)!important;color:#fff!important}
.sts-editor-v2-app .sts-v2-header-save:hover:not(:disabled),.sts-editor-v2-app .sts-v2-header-save:focus-visible:not(:disabled){background:var(--sts-v2-accent-hover,#1d4ed8)!important;border-color:var(--sts-v2-accent-hover,#1d4ed8)!important;color:#fff!important}
.sts-v2-exit-dialog{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px;direction:inherit}
.sts-v2-exit-dialog-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.52);backdrop-filter:blur(2px)}
.sts-v2-exit-dialog-panel{position:relative;width:min(440px,100%);display:grid;gap:12px;padding:22px;border:1px solid #dbe3ee;border-radius:18px;background:#fff;color:#0f172a;box-shadow:0 24px 70px rgba(15,23,42,.28)}
.sts-v2-exit-dialog-panel h2{margin:0;font-size:20px;line-height:1.25}.sts-v2-exit-dialog-panel p{margin:0;color:#64748b;line-height:1.55}
.sts-v2-exit-dialog-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;margin-top:4px}
.sts-v2-exit-dialog-actions button{min-height:38px;padding:8px 14px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#0f172a;font:inherit;font-weight:700;cursor:pointer}
.sts-v2-exit-dialog-actions button:hover,.sts-v2-exit-dialog-actions button:focus-visible{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.14);outline:0}
.sts-v2-exit-dialog-actions .sts-v2-exit-save{background:#2563eb;border-color:#2563eb;color:#fff}
@media(max-width:760px){
  .sts-editor-v2-app .sts-v2-toolbar-control{width:100%!important;height:38px!important;min-height:38px!important;padding-inline:10px!important}
  .sts-v2-header-actions>.sts-v2-toolbar-control{width:auto!important;align-self:flex-start!important}
  .sts-v2-header-tools .sts-v2-export-menu,.sts-v2-header-tools .sts-v2-more-menu{width:100%!important}
  .sts-v2-exit-dialog-actions{display:grid;grid-template-columns:1fr;width:100%}.sts-v2-exit-dialog-actions button{width:100%}
}

/* v0.17.0 — locale-safe Subtitle Editor controls and complete direction rehydration. */
.sts-editor-v2-app{direction:inherit}
.sts-editor-v2-app button,.sts-editor-v2-app summary,.sts-editor-v2-app select,.sts-editor-v2-app input{font-family:inherit}
.sts-editor-v2-app button,.sts-editor-v2-app summary{max-inline-size:100%;min-inline-size:0;white-space:normal;line-height:1.25;text-align:center}
.sts-editor-v2-app .sts-v2-header,.sts-editor-v2-app .sts-v2-help-dialog,.sts-editor-v2-app .sts-v2-export-panel,.sts-editor-v2-app .sts-v2-more-panel,.sts-editor-v2-app .sts-v2-overlay-panel,.sts-editor-v2-app .sts-v2-burned-shell{text-align:start}
.sts-v2-more-panel>.sts-v2-caption-layout-menu>summary,.sts-v2-more-panel>.sts-v2-overlay-menu>summary,.sts-v2-more-panel>.sts-v2-help-button,.sts-v2-export-panel-section>button,.sts-v2-export-more button,.sts-v2-structure-tools>div button{text-align:start!important}
.sts-v2-wave-canvas-wrap,.sts-v2-caption-track,.sts-v2-timing-surface,.sts-v2-burned-range,.sts-v2-precision-bar,.sts-v2-global-offset-presets{direction:ltr}
.sts-v2-caption-search,.sts-v2-list-toolbar,.sts-v2-header-actions,.sts-v2-burned-step-actions,.sts-v2-exit-dialog-actions{direction:inherit}
.sts-v2-toolbar-control,.sts-v2-list-toolbar button,.sts-v2-caption-search button,.sts-v2-burned-step-actions button,.sts-v2-exit-dialog-actions button{inline-size:auto;min-block-size:38px;padding-inline:12px}
.sts-v2-export-panel-section>button,.sts-v2-export-more button{min-block-size:38px;height:auto!important}
.sts-editor-v2-app[dir="ltr"] .sts-v2-burned-watermark-item .is-delete{left:auto;right:4px}
.sts-editor-v2-app[dir="rtl"] .sts-v2-burned-watermark-item .is-delete{right:auto;left:4px}

/* v0.17.1 — Localization and Editor Integrity: effective control variants. */
.sts-editor-v2-app button,
.sts-editor-v2-app summary{
  text-transform:none!important;
  letter-spacing:0!important;
}
.sts-editor-v2-app .sts-v2-export-panel{
  inline-size:min(380px,calc(100vw - 32px))!important;
  min-inline-size:280px!important;
  max-inline-size:calc(100vw - 32px)!important;
}
.sts-editor-v2-app .sts-v2-export-panel button,
.sts-editor-v2-app .sts-v2-export-more button,
.sts-editor-v2-app .sts-v2-more-panel button,
.sts-editor-v2-app .sts-v2-caption-layout-panel button{
  block-size:auto!important;
  min-block-size:38px!important;
  max-inline-size:100%!important;
  padding:9px 12px!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  text-transform:none!important;
}
.sts-editor-v2-app .sts-v2-export-panel .sts-v2-action-long{
  min-block-size:50px!important;
  justify-content:center!important;
  text-align:center!important;
  font-size:13px!important;
  font-weight:800!important;
}
.sts-editor-v2-app .sts-v2-structure-actions button,
.sts-editor-v2-app .sts-v2-toolbar-control{
  text-transform:none!important;
}
@media(max-width:760px){
  .sts-editor-v2-app .sts-v2-export-panel{
    inline-size:min(340px,calc(100vw - 24px))!important;
    min-inline-size:0!important;
  }
}

/* Translation review advisory: complete deliverable with specific human-review markers. */
.sts-v2-review-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px;padding:10px 12px;border:1px solid #d8a72d;border-radius:10px;background:#fff8df;color:#3f3315}
.sts-v2-review-notice strong{display:block;margin-bottom:2px}
.sts-v2-review-notice p{margin:0;font-size:13px;line-height:1.45}
.sts-v2-review-notice button{flex:0 0 auto;min-height:34px;padding:6px 12px;border:1px solid #b8860b;border-radius:8px;background:#fff;color:#4b3908;cursor:pointer;font:inherit;font-weight:600}
.sts-v2-review-notice button:hover,.sts-v2-review-notice button:focus-visible{background:#fff1b8;outline:2px solid rgba(184,134,11,.22);outline-offset:2px}
@media(max-width:720px){.sts-v2-review-notice{align-items:stretch;flex-direction:column}.sts-v2-review-notice button{align-self:flex-start}}

/* v0.19.12 — Locale-independent transient menu viewport integrity.
   Header and nested tools expand toward the usable viewport and are then
   clamped by the shared runtime positioner. Physical left/right anchoring is
   deliberately avoided so RTL and LTR use the same visible-area contract. */
.sts-editor-v2-app .sts-v2-export-panel,
.sts-editor-v2-app .sts-v2-more-panel,
.sts-editor-v2-app .sts-v2-caption-layout-panel{
  inset-block-start:calc(100% + 6px)!important;
  inset-block-end:auto!important;
  inset-inline-end:0!important;
  inset-inline-start:auto!important;
  box-sizing:border-box!important;
  max-inline-size:calc(100vw - 24px)!important;
}
.sts-editor-v2-app .sts-v2-export-panel,
.sts-editor-v2-app .sts-v2-caption-layout-panel{
  overflow-x:hidden!important;
}
.sts-editor-v2-app .sts-v2-more-panel{
  max-inline-size:min(320px,calc(100vw - 24px))!important;
}

/* 0.19.18 — warning-based caption timing workflow. */
.sts-editor-v2-app .sts-v2-timing-problem{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-top:7px!important;
  padding:7px 9px!important;
  border:1px solid #f59e0b!important;
  border-radius:10px!important;
  background:#fffbeb!important;
  color:#92400e!important;
  font-size:12px!important;
  line-height:1.35!important;
}
.sts-editor-v2-app .sts-v2-timing-problem button{
  flex:0 0 auto!important;
  min-height:30px!important;
  padding:4px 9px!important;
  border:1px solid #d97706!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#92400e!important;
  font:inherit!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.sts-editor-v2-app .sts-v2-list-row.has-timing-problem{
  box-shadow:inset 3px 0 0 #dc2626!important;
  background:#fff7ed!important;
}
.sts-editor-v2-app .sts-v2-list-row.has-timing-problem.is-active{
  outline:2px solid rgba(220,38,38,.34)!important;
  outline-offset:-2px!important;
}

/* v0.19.28 media-session-safe caption organizer drawer */
.sts-v2-more-panel>.sts-v2-caption-layout-launch{
  width:100%!important;justify-content:flex-start!important;text-align:start!important;background:#fff!important;color:#334155!important;
  border:1px solid #e2e8f0!important;border-radius:9px!important;min-height:36px!important;padding:7px 10px!important;font-weight:750!important;
}
.sts-v2-more-panel>.sts-v2-caption-layout-launch:hover,.sts-v2-more-panel>.sts-v2-caption-layout-launch:focus-visible{
  border-color:#93c5fd!important;background:#eff6ff!important;color:#1d4ed8!important;
}
.sts-v2-caption-layout-dialog{position:fixed!important;inset:0!important;z-index:1000005!important;display:flex!important;justify-content:flex-end!important;align-items:stretch!important;direction:inherit!important}
.sts-editor-v2-app .sts-v2-caption-layout-dialog>.sts-v2-caption-layout-backdrop{
  position:absolute!important;inset:0!important;display:block!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;appearance:none!important;
  background:rgba(15,23,42,.28)!important;backdrop-filter:blur(1.5px)!important;-webkit-backdrop-filter:blur(1.5px)!important;
  opacity:1!important;transform:none!important;clip-path:none!important;cursor:default!important;
}
.sts-v2-caption-layout-drawer{position:relative!important;z-index:1!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;width:min(450px,calc(100vw - 20px))!important;max-width:100%!important;height:100%!important;background:#f8fafc!important;border-inline-start:1px solid #dbe4f0!important;box-shadow:0 24px 70px rgba(15,23,42,.28)!important;overflow:hidden!important}
[dir="rtl"] .sts-v2-caption-layout-dialog{justify-content:flex-start!important}
[dir="rtl"] .sts-v2-caption-layout-drawer{border-inline-start:0!important;border-inline-end:1px solid #dbe4f0!important}
.sts-v2-caption-layout-drawer>header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:18px 20px 15px!important;background:#fff!important;border-bottom:1px solid #e2e8f0!important}
.sts-v2-caption-layout-drawer>header div{display:grid!important;gap:2px!important;text-align:start!important}
.sts-v2-caption-layout-drawer>header span{font-size:11px!important;font-weight:800!important;letter-spacing:.03em!important;color:#64748b!important}
.sts-v2-caption-layout-drawer>header h2{margin:0!important;font-size:20px!important;line-height:1.2!important;color:#172033!important}
.sts-v2-caption-layout-close{display:grid!important;place-items:center!important;width:34px!important;min-width:34px!important;height:34px!important;padding:0!important;border-radius:50%!important;border:1px solid #d7e0ec!important;background:#fff!important;color:#475569!important;font-size:24px!important;line-height:1!important}
.sts-v2-caption-layout-close:hover{background:#f1f5f9!important;color:#0f172a!important}
.sts-v2-caption-layout-scroll{min-height:0!important;overflow:auto!important;overscroll-behavior:contain!important;padding:16px!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel{position:static!important;inset:auto!important;z-index:auto!important;display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;gap:12px!important;width:100%!important;min-width:0!important;max-width:none!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;transform:none!important}
.sts-v2-layout-section,.sts-v2-layout-text-cleanup{display:grid!important;gap:12px!important;padding:14px!important;background:#fff!important;border:1px solid #dfe7f1!important;border-radius:13px!important;box-shadow:0 4px 14px rgba(15,23,42,.035)!important}
.sts-v2-layout-section-head{display:grid!important;gap:3px!important;text-align:start!important}
.sts-v2-layout-section-head strong{font-size:14px!important;color:#1e293b!important}
.sts-v2-layout-section-head span{font-size:11px!important;line-height:1.45!important;color:#64748b!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-mode{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-choice{display:grid!important;grid-template-columns:18px minmax(0,1fr) 62px!important;grid-template-rows:auto auto!important;align-items:center!important;column-gap:8px!important;row-gap:2px!important;min-width:0!important;padding:10px!important;border:1px solid #dbe4f0!important;border-radius:10px!important;background:#fbfdff!important;color:#334155!important;font-size:12px!important;font-weight:750!important}
.sts-v2-layout-choice:has(input[type="radio"]:checked){border-color:#8fb4ff!important;background:#f1f6ff!important;box-shadow:0 0 0 2px rgba(59,110,246,.1)!important;color:#1d4ed8!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-choice input[type="radio"],.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-check input[type="checkbox"]{appearance:auto!important;inline-size:17px!important;width:17px!important;min-width:17px!important;block-size:17px!important;height:17px!important;min-height:17px!important;margin:0!important;padding:0!important;border:initial!important;border-radius:initial!important;box-shadow:none!important;accent-color:#2f6ff2!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-choice input[type="number"]{grid-column:3!important;grid-row:1!important;width:62px!important;min-width:62px!important;height:34px!important;min-height:34px!important;padding:5px 7px!important;border:1px solid #cad6e5!important;border-radius:8px!important;background:#fff!important;text-align:center!important;direction:ltr!important;font-variant-numeric:tabular-nums!important}
.sts-v2-layout-choice small{grid-column:2/4!important;grid-row:2!important;font-size:10px!important;font-weight:600!important;color:#8190a5!important;text-align:start!important}
.sts-v2-layout-choice input:disabled{opacity:.42!important;background:#f1f5f9!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-check{display:flex!important;align-items:flex-start!important;gap:9px!important;min-height:0!important;padding:3px 1px!important;font-size:12px!important;font-weight:720!important;color:#334155!important;text-align:start!important}
.sts-v2-layout-field{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(120px,160px)!important;align-items:center!important;gap:12px!important;font-size:12px!important;font-weight:720!important;color:#334155!important;text-align:start!important}
.sts-v2-layout-field>div{display:flex!important;align-items:center!important;gap:7px!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-field input[type="number"],.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-field select{width:100%!important;min-width:0!important;height:36px!important;min-height:36px!important;padding:6px 9px!important;border:1px solid #cad6e5!important;border-radius:9px!important;background:#fff!important;color:#1e293b!important;font-size:12px!important}
.sts-v2-layout-field small{font-size:10px!important;font-weight:650!important;color:#75859b!important;white-space:nowrap!important}
.sts-v2-layout-text-cleanup{padding:0!important;overflow:hidden!important}
.sts-v2-layout-text-cleanup>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:48px!important;padding:12px 14px!important;cursor:pointer!important;list-style:none!important;background:#fff!important;color:#334155!important}
.sts-v2-layout-text-cleanup>summary::-webkit-details-marker{display:none!important}
.sts-v2-layout-text-cleanup>summary::after{content:'⌄';font-size:18px!important;color:#64748b!important;transition:transform .15s ease!important}
.sts-v2-layout-text-cleanup[open]>summary::after{transform:rotate(180deg)!important}
.sts-v2-layout-text-cleanup>summary span{display:grid!important;gap:1px!important;text-align:start!important}
.sts-v2-layout-text-cleanup>summary strong{font-size:13px!important}
.sts-v2-layout-text-cleanup>summary small{font-size:10px!important;color:#b45309!important}
.sts-v2-layout-text-cleanup-body{display:grid!important;gap:12px!important;padding:0 14px 14px!important;border-top:1px solid #eef2f7!important}
.sts-v2-layout-text-cleanup-body .sts-v2-layout-field:first-child{margin-top:12px!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-note{margin:0!important;padding:9px 10px!important;border-radius:9px!important;background:#fff7ed!important;color:#8a4b12!important;font-size:10.5px!important;font-weight:620!important;line-height:1.5!important;text-align:start!important}
.sts-v2-caption-layout-drawer>footer{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:9px!important;padding:13px 16px!important;background:#fff!important;border-top:1px solid #dfe7f1!important}
.sts-v2-caption-layout-drawer>footer button{min-height:38px!important;padding:8px 18px!important;border-radius:10px!important;font-size:12px!important;font-weight:800!important}
.sts-v2-caption-layout-drawer>footer .is-secondary{background:#fff!important;color:#475569!important;border:1px solid #cad6e5!important}
.sts-v2-caption-layout-drawer>footer .is-primary{background:#2f6ff2!important;color:#fff!important;border:1px solid #2f6ff2!important}
@media(max-width:640px){
  .sts-v2-caption-layout-drawer{width:100%!important}
  .sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-mode{grid-template-columns:1fr!important}
  .sts-v2-layout-field{grid-template-columns:1fr!important;gap:6px!important}
}

/* v0.19.29 safe organizer preview, scope and local repair controls */
.sts-v2-layout-range{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}
.sts-v2-layout-range[hidden]{display:none!important}
.sts-v2-layout-range label{display:grid!important;gap:5px!important;font-size:11px!important;font-weight:750!important;color:#475569!important;text-align:start!important}
.sts-editor-v2-app .sts-v2-caption-layout-panel .sts-v2-layout-range input{width:100%!important;min-width:0!important;height:36px!important;min-height:36px!important;padding:6px 9px!important;border:1px solid #cad6e5!important;border-radius:9px!important;background:#fff!important;color:#1e293b!important;text-align:center!important;direction:ltr!important}
.sts-v2-layout-note.is-neutral{background:#f8fafc!important;color:#526175!important;border:1px solid #e8edf4!important}
.sts-v2-layout-preview{display:grid!important;gap:12px!important;padding:14px!important;background:#f0f7ff!important;border:1px solid #bcd4ff!important;border-radius:13px!important;color:#1e3a5f!important;text-align:start!important}
.sts-v2-layout-preview[hidden]{display:none!important}
.sts-v2-layout-preview-head{display:grid!important;gap:3px!important}
.sts-v2-layout-preview-head strong{font-size:14px!important;color:#173b72!important}
.sts-v2-layout-preview-head span{font-size:11px!important;color:#4d6688!important}
.sts-v2-layout-preview-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
.sts-v2-layout-preview-stats span{display:flex!important;align-items:center!important;min-height:31px!important;padding:6px 8px!important;border:1px solid rgba(90,132,190,.2)!important;border-radius:8px!important;background:rgba(255,255,255,.72)!important;font-size:10.5px!important;font-weight:720!important;color:#375779!important}
.sts-v2-layout-preview ol{display:grid!important;gap:8px!important;margin:0!important;padding:0!important;list-style:none!important}
.sts-v2-layout-preview li{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;gap:7px!important;padding:8px!important;border-radius:9px!important;background:#fff!important;border:1px solid #dbe8fb!important;font-size:10.5px!important;line-height:1.4!important}
.sts-v2-layout-preview li span{min-width:0!important;overflow-wrap:anywhere!important}
.sts-v2-layout-preview li b{color:#2563eb!important}
.sts-v2-caption-layout-drawer>footer .is-preview{background:#eff6ff!important;color:#1d4ed8!important;border:1px solid #9fc0ff!important}
.sts-v2-caption-layout-drawer>footer .is-preview:hover{background:#dbeafe!important}
@media(max-width:640px){
  .sts-v2-layout-range,.sts-v2-layout-preview-stats{grid-template-columns:1fr!important}
  .sts-v2-caption-layout-drawer>footer{display:grid!important;grid-template-columns:1fr 1fr!important}
  .sts-v2-caption-layout-drawer>footer .is-secondary{grid-column:1!important}
  .sts-v2-caption-layout-drawer>footer .is-preview{grid-column:2!important}
  .sts-v2-caption-layout-drawer>footer .is-primary{grid-column:1/3!important}
}

/* 0.19.34 — coherent one/two-line caption display foundation. */
.sts-v2-video-caption-overlay,
.sts-v2-burned-caption,
.sts-v2-overlay-preview-text{
  white-space:pre-line!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.sts-v2-list-text{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  white-space:pre-line!important;
  line-height:1.35!important;
  max-height:2.7em!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sts-v2-list-row{min-height:48px!important;align-items:center!important;}
.sts-v2-list-row.is-active{align-items:start!important;}
.sts-v2-row-editor{white-space:pre-wrap!important;line-height:1.45!important;}
.sts-v2-line-counters{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;margin-top:6px!important;font-size:11px!important;color:#64748b!important;}
.sts-v2-line-counters span{font-size:11px!important;color:#64748b!important;}
.sts-v2-line-counters span.is-over{color:#b42318!important;font-weight:800!important;}
.sts-v2-line-counters button{margin-inline-start:auto!important;min-height:28px!important;padding:4px 9px!important;border:1px solid #cbd5e1!important;border-radius:8px!important;background:#fff!important;color:#1d4ed8!important;font-size:11px!important;font-weight:800!important;}
.sts-v2-display-profile-section .sts-v2-display-line-mode .sts-v2-layout-choice{grid-template-columns:18px minmax(0,1fr)!important;grid-template-rows:auto!important;}

/* v0.19.40 compact user-focused caption warnings */
.sts-v2-notice-stack .sts-v2-display-layout-problem-navigator{
  position:static!important;width:auto!important;min-height:0!important;margin:0!important;padding:8px 10px!important;
  border:1px solid #f59e0b!important;border-radius:10px!important;background:#fffbeb!important;color:#92400e!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;flex-wrap:wrap!important;
  font-size:12px!important;line-height:1.35!important;
}
.sts-v2-notice-stack .sts-v2-display-layout-problem-copy{min-width:0;flex:1 1 420px;display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
.sts-v2-notice-stack .sts-v2-display-layout-problem-navigator strong{display:inline!important;margin:0!important}
.sts-v2-notice-stack .sts-v2-display-layout-problem-navigator span{display:inline!important;font-weight:750!important;white-space:nowrap!important}
.sts-v2-notice-stack .sts-v2-display-layout-problem-actions{display:flex!important;gap:6px!important;flex:0 0 auto!important;max-width:100%!important}
.sts-v2-notice-stack .sts-v2-display-layout-problem-actions button{min-height:30px!important;padding:4px 9px!important;border:1px solid #d97706!important;border-radius:999px!important;background:#fff!important;color:#92400e!important;font:inherit!important;font-weight:800!important;cursor:pointer!important;white-space:normal!important}
.sts-v2-layout-preview li span{white-space:pre-line!important}
.sts-v2-display-profile-section [data-v2-display-preset]{font-weight:750!important}


/* v0.19.37 — authoritative local boundary editing.
   Track-level handles remain at the exact timestamp; linked trims affect only the immediate neighbour. */
.sts-v2-caption-block.is-active{min-width:4px!important;overflow:visible!important}
.sts-v2-boundary-handle{
  position:absolute!important;top:50%!important;right:auto!important;
  transform:translate(-50%,-50%)!important;z-index:14!important;
  margin:0!important;box-sizing:border-box!important;
}
.sts-v2-boundary-handle.is-start,.sts-v2-boundary-handle.is-end{right:auto!important}
.sts-v2-caption-block.is-linked-adjusted{
  box-shadow:0 0 0 4px rgba(14,165,233,.24),0 8px 22px rgba(14,165,233,.18)!important;
  background:#0ea5e9!important;color:#fff!important;
}
.sts-v2-timing-zoom{display:flex!important;align-items:center!important;gap:4px!important;flex-wrap:wrap!important;margin-inline-start:auto!important}
.sts-v2-timing-zoom>span{font-size:11px!important;font-weight:900!important;color:#64748b!important}
.sts-v2-timing-zoom button{min-height:26px!important;padding:4px 8px!important;border-radius:8px!important;font-size:11px!important}
.sts-v2-timing-zoom button.is-active{background:#dbeafe!important;border-color:#60a5fa!important;color:#1d4ed8!important;font-weight:900!important}
.sts-v2-ripple-warning{padding:6px 9px!important;border:1px solid #f59e0b!important;border-radius:9px!important;background:#fffbeb!important;color:#92400e!important;font-size:11px!important;font-weight:900!important;line-height:1.35!important}
@media(max-width:900px){.sts-v2-timing-zoom{margin-inline-start:0!important}.sts-v2-timing-zoom button{font-size:10px!important;padding:4px 6px!important}}

/* 0.19.41 — keyboard-first caption editing */
.sts-v2-structure-actions button kbd,.sts-v2-keyboard-strip kbd{display:inline-flex;align-items:center;justify-content:center;direction:ltr;white-space:nowrap;border:1px solid #cbd5e1;border-bottom-width:2px;border-radius:6px;background:#fff;padding:2px 5px;font:700 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;color:#475569}
.sts-v2-structure-actions button kbd{margin-inline-start:3px}
.sts-v2-keyboard-strip{flex:1 1 100%;display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;padding:6px 8px;border-top:1px solid #e2e8f0;color:#475569;font-size:12px}
.sts-v2-keyboard-strip>span,.sts-v2-keyboard-strip>label{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.sts-v2-keyboard-strip>label{margin-inline-start:auto;cursor:pointer}
.sts-v2-keyboard-strip input{margin:0}
.sts-v2-shortcut-grid-platforms>.sts-v2-shortcut-section{grid-template-columns:1fr!important;background:#eef6ff!important;border-color:#bfdbfe!important;color:#1d4ed8}
.sts-v2-shortcut-grid-platforms>.sts-v2-shortcut-section strong{grid-column:1/-1}
@media(max-width:900px){.sts-v2-keyboard-strip{gap:6px 9px}.sts-v2-keyboard-strip>label{margin-inline-start:0}.sts-v2-structure-actions button kbd{font-size:9px}}
/* 0.19.43: compact restore action in More tools. */
.sts-v2-more-panel>.sts-v2-restore-initial-button{width:100%!important;justify-content:flex-start!important;text-align:start!important;background:#fff!important;color:#334155!important;border:1px solid #e2e8f0!important;border-radius:9px!important;min-height:36px!important;padding:7px 10px!important;font:inherit;font-weight:750;cursor:pointer}
.sts-v2-more-panel>.sts-v2-restore-initial-button:hover,.sts-v2-more-panel>.sts-v2-restore-initial-button:focus-visible{border-color:#94a3b8!important;background:#f8fafc!important;color:#0f172a!important}

/* 0.19.44 — readable per-view waveform scaling and authoritative boundary controls. */
.sts-v2-boundary-handle{
  --sts-v2-boundary-handle-inset:27px;
  left:clamp(var(--sts-v2-boundary-handle-inset),var(--boundary-position),calc(100% - var(--sts-v2-boundary-handle-inset)))!important;
  right:auto!important;
}
.sts-v2-boundary-marker{
  position:absolute!important;top:0!important;bottom:0!important;
  left:var(--boundary-position)!important;transform:translateX(-1px)!important;
  width:2px!important;z-index:13!important;pointer-events:none!important;
}
.sts-v2-boundary-marker.is-start{background:#16a34a!important}
.sts-v2-boundary-marker.is-end{background:#dc2626!important}
@media(max-width:900px){
  .sts-v2-boundary-handle{--sts-v2-boundary-handle-inset:31px}
}



.sts-v2-burned-range-preview-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:10px}
.sts-v2-burned-range-preview-actions button{border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:800;color:#334155;cursor:pointer}
.sts-v2-burned-range-preview-actions button.is-primary{background:var(--sts-v2-accent,#17643a);border-color:var(--sts-v2-accent,#17643a);color:#fff}
.sts-v2-burned-range-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sts-v2-burned-range-fields label{display:grid;gap:5px;font-size:12px;color:#334155;font-weight:700}
.sts-v2-burned-range-fields input{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;font:inherit;direction:ltr;background:#fff;color:#0f172a}
.sts-v2-burned-range-fields input[readonly]{background:#f8fafc;color:#475569}
.sts-v2-burned-range-help,.sts-v2-burned-range-limit{font-size:12px;color:#64748b}
@media(max-width:820px){.sts-v2-burned-range-fields{grid-template-columns:1fr}}
.sts-v2-review-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:0 0 auto}
.sts-v2-review-notice .sts-v2-review-actions button.is-primary,.sts-v2-mark-reviewed{background:var(--sts-v2-accent,#17643a);border-color:var(--sts-v2-accent,#17643a);color:#fff}
.sts-v2-mark-reviewed{display:inline-flex;align-items:center;justify-content:center;min-height:30px;margin:0 0 6px;padding:5px 9px;border:1px solid;border-radius:7px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.sts-v2-mark-reviewed:hover,.sts-v2-mark-reviewed:focus-visible{filter:brightness(.96);outline:2px solid rgba(23,100,58,.2);outline-offset:2px}

/* v0.19.57 — direct-manipulation burned-caption design. */
.sts-v2-burned-direct-hint{margin:8px 0 0;text-align:center;color:#64748b;font-size:12px;line-height:1.4}
.sts-v2-burned-caption-manipulator{position:absolute;z-index:9;border:1.5px solid rgba(255,255,255,.96);outline:1px solid rgba(15,23,42,.68);border-radius:5px;box-sizing:border-box;cursor:ns-resize;touch-action:none;pointer-events:auto}
.sts-v2-burned-caption-manipulator[hidden]{display:none!important}
.sts-v2-burned-caption-manipulator .is-move{position:absolute;inset:0;cursor:ns-resize;touch-action:none}
.sts-v2-burned-caption-manipulator .is-font,.sts-v2-burned-caption-manipulator .is-width{position:absolute;z-index:2;width:14px;height:14px;border:2px solid #fff;background:#17643a;border-radius:50%;box-shadow:0 1px 4px rgba(15,23,42,.38);touch-action:none}
.sts-v2-burned-caption-manipulator .is-font{right:-8px;bottom:-8px;cursor:nwse-resize}
.sts-v2-burned-caption-manipulator .is-width{top:50%;margin-top:-7px;cursor:ew-resize}
.sts-v2-burned-caption-manipulator .is-width.is-left{left:-8px}.sts-v2-burned-caption-manipulator .is-width.is-right{right:-8px}
.sts-v2-burned-position-guides{position:absolute;inset:0;z-index:7;pointer-events:none;opacity:0;transition:opacity .12s ease}
.sts-v2-burned-position-guides i{position:absolute;left:7%;right:7%;height:1px;background:rgba(255,255,255,.74);box-shadow:0 0 0 1px rgba(15,23,42,.18)}
.sts-v2-burned-position-guides i:nth-child(1){top:10%}.sts-v2-burned-position-guides i:nth-child(2){top:50%}.sts-v2-burned-position-guides i:nth-child(3){top:90%}
.sts-v2-burned-video-frame.is-caption-manipulating .sts-v2-burned-position-guides{opacity:1}
.sts-v2-burned-video-frame.has-authoritative-preview .sts-v2-burned-caption{color:transparent!important;-webkit-text-stroke:0 transparent!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}
.sts-v2-burned-video-frame.is-caption-manipulating .sts-v2-burned-caption{color:inherit}
.sts-v2-burned-authoritative-preview{pointer-events:none}
@media(max-width:820px){.sts-v2-burned-caption-manipulator .is-font,.sts-v2-burned-caption-manipulator .is-width{width:18px;height:18px}.sts-v2-burned-caption-manipulator .is-font{right:-10px;bottom:-10px}.sts-v2-burned-caption-manipulator .is-width{margin-top:-9px}.sts-v2-burned-caption-manipulator .is-width.is-left{left:-10px}.sts-v2-burned-caption-manipulator .is-width.is-right{right:-10px}}

/* 0.19.58 — Caption Editor UX Focus.
   Keep the everyday workspace quiet: advanced timing is disclosed on demand,
   shortcut legends live only in Help, and the active caption owns its nearest actions. */
.sts-v2-timing-toolbar{
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
}
.sts-v2-timing-toolbar .sts-v2-current-window{display:none!important}
.sts-v2-timing-advanced-head{
  justify-content:flex-start!important;
  align-items:center!important;
  gap:8px!important;
}
.sts-v2-timing-advanced .sts-v2-timing-zoom{
  flex:1 1 100%!important;
  margin-inline-start:0!important;
  padding:4px 0 7px!important;
  border-bottom:1px solid #e2e8f0!important;
}
.sts-v2-auto-audition-control{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:28px!important;
  padding:4px 9px!important;
  border:1px solid #dbe3ed!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#334155!important;
  font-size:11px!important;
  font-weight:800!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.sts-v2-auto-audition-control input{margin:0!important}
.sts-v2-list-toolbar{
  flex-wrap:nowrap!important;
  gap:5px!important;
}
.sts-v2-list-toolbar .sts-v2-structure-actions{
  flex:0 0 auto!important;
  display:inline-flex!important;
  width:auto!important;
  grid-template-columns:none!important;
}
.sts-v2-list-toolbar .sts-v2-structure-actions [data-v2-split]{grid-column:auto!important}
.sts-v2-list-toolbar .sts-v2-structure-actions button{
  width:auto!important;
  min-width:0!important;
  gap:4px!important;
}
.sts-v2-list-row.is-active{
  background:#eaf3ff!important;
  box-shadow:inset 4px 0 0 var(--sts-v2-accent),0 1px 0 rgba(37,99,235,.08)!important;
}
.sts-v2-list-row.is-active .sts-v2-row-editor{
  border-color:#93c5fd!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.08)!important;
}
.sts-v2-line-counters{
  gap:5px 7px!important;
  min-height:28px!important;
}
.sts-v2-caption-context-actions{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:4px!important;
  margin-inline-start:auto!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
}
.sts-v2-caption-context-actions::-webkit-scrollbar{display:none!important}
.sts-v2-caption-context-actions button,
.sts-v2-line-counters .sts-v2-caption-context-actions button{
  flex:0 0 auto!important;
  margin:0!important;
  min-height:25px!important;
  height:25px!important;
  padding:2px 7px!important;
  border:1px solid #cbd5e1!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#334155!important;
  font-size:10.5px!important;
  font-weight:850!important;
  line-height:1!important;
  gap:3px!important;
  box-shadow:none!important;
}
.sts-v2-caption-context-actions button:hover:not(:disabled),
.sts-v2-caption-context-actions button:focus-visible:not(:disabled){
  border-color:#60a5fa!important;
  color:#1d4ed8!important;
  background:#f8fbff!important;
  box-shadow:0 0 0 2px rgba(37,99,235,.08)!important;
}
.sts-v2-caption-context-actions button:disabled{opacity:.38!important}
.sts-v2-caption-context-actions [data-v2-play-range]{color:#0f172a!important;font-weight:900!important}
.sts-v2-caption-context-actions [data-v2-balance-lines]{color:#1d4ed8!important}

@media(max-width:900px){
  .sts-v2-timing-toolbar{justify-content:center!important}
  .sts-v2-timing-transport{width:auto!important;border-radius:999px!important}
  .sts-v2-timing-advanced-head{align-items:stretch!important}
  .sts-v2-timing-advanced .sts-v2-timing-zoom{
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .sts-v2-timing-advanced .sts-v2-timing-zoom>*{flex:0 0 auto!important}
  .sts-v2-auto-audition-control{align-self:flex-start!important}
  .sts-v2-list-toolbar{
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    flex-wrap:nowrap!important;
  }
  .sts-v2-list-toolbar>*{flex:0 0 auto!important}
  .sts-v2-list-toolbar button{flex:0 0 auto!important;width:auto!important}
  .sts-v2-line-counters{align-items:flex-start!important}
  .sts-v2-caption-context-actions{
    flex:1 1 100%!important;
    justify-content:flex-start!important;
    margin-inline-start:0!important;
  }
}
.sts-v2-list-toolbar{overflow-x:auto!important;scrollbar-width:none!important}
.sts-v2-list-toolbar::-webkit-scrollbar{display:none!important}

/* 0.19.59 — preserve natural typing flow and align contextual caption actions with text direction. */
.sts-v2-caption-context-actions{
  justify-content:flex-start!important;
  margin-inline-start:0!important;
  direction:inherit!important;
}

/* 0.19.63: virtualized caption-list spacers preserve total scroll geometry without mounting every rich row. */
.sts-v2-virtual-spacer{display:block;width:100%;min-height:0;pointer-events:none;contain:strict}


/* v0.19.74 — User-resizable Caption Editor split panes.
   Splitters are a presentation-only layer. Desktop only; mobile keeps the canonical stacked layout. */
.sts-v2-grid{position:relative!important}
.sts-editor-v2-app[dir="ltr"] .sts-v2-grid{direction:ltr!important}
.sts-editor-v2-app[dir="rtl"] .sts-v2-grid{direction:rtl!important}
.sts-v2-layout-splitter{position:absolute!important;z-index:80!important;display:block;touch-action:none;user-select:none;-webkit-user-select:none;outline:0;background:transparent}
.sts-v2-layout-splitter[hidden]{display:none!important}
.sts-v2-layout-splitter::before{content:"";position:absolute;border-radius:999px;background:transparent;transition:background-color .12s ease,box-shadow .12s ease}
.sts-v2-layout-splitter::after{content:"";position:absolute;border-radius:999px;background:rgba(100,116,139,.32);opacity:0;transition:opacity .12s ease}
.sts-v2-layout-splitter.is-columns{width:12px!important;transform:translateX(-50%);cursor:col-resize}
.sts-v2-layout-splitter.is-columns::before{top:8px;bottom:8px;left:5px;width:2px}
.sts-v2-layout-splitter.is-columns::after{top:50%;left:3px;width:6px;height:28px;transform:translateY(-50%)}
.sts-v2-layout-splitter.is-rows{height:12px!important;transform:translateY(-50%);cursor:row-resize}
.sts-v2-layout-splitter.is-rows::before{left:8px;right:8px;top:5px;height:2px}
.sts-v2-layout-splitter.is-rows::after{left:50%;top:3px;width:28px;height:6px;transform:translateX(-50%)}
.sts-v2-layout-splitter:hover::before,.sts-v2-layout-splitter:focus-visible::before,.sts-v2-layout-splitter.is-dragging::before{background:var(--sts-v2-accent)!important;box-shadow:0 0 0 3px rgba(37,99,235,.10)}
.sts-v2-layout-splitter:hover::after,.sts-v2-layout-splitter:focus-visible::after,.sts-v2-layout-splitter.is-dragging::after{opacity:1}
.sts-editor-v2-app[dir="ltr"] .sts-v2-layout-splitter.is-columns{cursor:col-resize}
.sts-editor-v2-app[dir="rtl"] .sts-v2-layout-splitter.is-columns{cursor:col-resize}
@media (max-width:900px){.sts-v2-layout-splitter{display:none!important}}


/* v0.1.196 — resizable waveform pane must let the waveform canvas shrink with the split row. */
.sts-v2-timing-surface{min-height:0!important;}
.sts-v2-waveform-stack{display:flex!important;flex-direction:column!important;min-height:0!important;flex:1 1 auto!important;}
.sts-v2-waveform-stack .sts-v2-centered-caption-play{flex:0 0 auto!important;}
.sts-v2-waveform-stack .sts-v2-wave-canvas-wrap{display:flex!important;align-items:stretch!important;flex:1 1 auto!important;min-height:56px!important;height:auto!important;overflow:hidden!important;}
.sts-v2-waveform-stack .sts-v2-wave-canvas{display:block!important;flex:1 1 auto!important;width:100%!important;height:100%!important;min-height:0!important;}
@media (max-width:900px){
  .sts-v2-waveform-stack .sts-v2-wave-canvas-wrap{min-height:72px!important;}
}

/* v0.19.76 — Timing Surface Layout Consolidation.
   One stable transport toolbar + one flexible waveform + one fixed caption strip.
   Advanced timing controls overlay the waveform on demand and never consume split-pane height. */
.sts-v2-timing-surface.is-consolidated{
  position:relative!important;
  display:grid!important;
  grid-template-rows:auto minmax(56px,1fr) 40px!important;
  align-content:stretch!important;
  height:100%!important;
  min-height:0!important;
  gap:6px!important;
  padding:8px!important;
  overflow:hidden!important;
}
.sts-v2-timing-surface.is-consolidated>.sts-v2-timing-toolbar{
  /* Keep the toolbar in normal grid flow. The Timing Surface is the
     positioning context for the advanced popover; making this toolbar
     positioned would incorrectly constrain percentage/calc popover sizing
     to the ~32px toolbar height. */
  position:static!important;
  z-index:32!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  color:var(--sts-v2-muted)!important;
  background:transparent!important;
}
.sts-editor-v2-app[dir="ltr"] .sts-v2-timing-surface.is-consolidated>.sts-v2-timing-toolbar,
.sts-editor-v2-app[dir="ltr"] .sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced-popover{direction:ltr!important;text-align:left!important}
.sts-editor-v2-app[dir="rtl"] .sts-v2-timing-surface.is-consolidated>.sts-v2-timing-toolbar,
.sts-editor-v2-app[dir="rtl"] .sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced-popover{direction:rtl!important;text-align:right!important}
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster{
  position:static!important;
  inset:auto!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex:0 0 auto!important;
  gap:4px!important;
  margin:0!important;
  max-width:none!important;
  pointer-events:auto!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster button,
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-transport button,
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced>summary{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  height:32px!important;
  margin:0!important;
  padding:4px 10px!important;
  border:1px solid #cbd5e1!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--sts-v2-strong)!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster button:hover:not(:disabled),
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster button:focus-visible:not(:disabled),
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-transport button:hover:not(:disabled),
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-transport button:focus-visible:not(:disabled),
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced>summary:hover,
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced>summary:focus-visible{
  border-color:var(--sts-v2-accent)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
  outline:0!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster button:disabled{opacity:.42!important;cursor:not-allowed!important}
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster .sts-v2-play-caption-mode,
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-transport .sts-v2-transport-toggle{
  border-color:#93c5fd!important;
  background:#eff6ff!important;
  color:#0f172a!important;
  font-weight:900!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-transport{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced{
  position:static!important;
  display:inline-block!important;
  flex:0 0 auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced>summary{
  list-style:none!important;
  user-select:none!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced>summary::-webkit-details-marker{display:none!important}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced[open]>summary{
  margin:0!important;
  border-color:var(--sts-v2-accent)!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.08)!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced-popover{
  /* Absolute geometry is intentionally resolved against .sts-v2-timing-surface. */
  position:absolute!important;
  z-index:70!important;
  top:calc(var(--sts-v2-timing-toolbar-height,32px) + 14px)!important;
  left:8px!important;
  right:8px!important;
  width:auto!important;
  max-height:calc(100% - var(--sts-v2-timing-toolbar-height,32px) - 22px)!important;
  overflow:auto!important;
  margin:0!important;
  padding:10px!important;
  border:1px solid #cbd5e1!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 18px 46px rgba(15,23,42,.22)!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced-head{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0 0 8px!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced .sts-v2-timing-zoom{
  flex:1 1 100%!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  margin:0!important;
  padding:0 0 8px!important;
  border-bottom:1px solid #e2e8f0!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-tools{
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-tool-tabs{margin:0 0 8px!important}
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-tool-panel{max-height:none!important;overflow:auto!important}
.sts-v2-timing-surface.is-consolidated>.sts-v2-waveform-stack{
  grid-row:2!important;
  display:flex!important;
  flex-direction:column!important;
  align-self:stretch!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}
.sts-v2-timing-surface.is-consolidated>.sts-v2-waveform-stack>.sts-v2-wave-canvas-wrap{
  display:flex!important;
  flex:1 1 auto!important;
  align-items:stretch!important;
  width:100%!important;
  height:100%!important;
  min-height:56px!important;
  margin:0!important;
  overflow:hidden!important;
}
.sts-v2-timing-surface.is-consolidated>.sts-v2-waveform-stack .sts-v2-wave-canvas{
  display:block!important;
  flex:1 1 auto!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}
.sts-v2-timing-surface.is-consolidated>.sts-v2-caption-track{
  grid-row:3!important;
  align-self:stretch!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
}
.sts-v2-timing-surface.is-consolidated>.sts-v2-caption-track .sts-v2-caption-block{
  top:5px!important;
  height:30px!important;
}
.sts-v2-timing-surface.is-consolidated .sts-v2-current-window,
.sts-v2-timing-surface.is-consolidated .sts-v2-centered-caption-play,
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-hint{display:none!important}
@media(max-width:900px){
  .sts-v2-timing-surface.is-consolidated{grid-template-rows:auto minmax(72px,1fr) 38px!important}
  .sts-v2-timing-surface.is-consolidated>.sts-v2-timing-toolbar{justify-content:center!important;gap:4px!important}
  .sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster{justify-content:center!important}
  .sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster button,
  .sts-v2-timing-surface.is-consolidated .sts-v2-timing-transport button,
  .sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced>summary{min-height:30px!important;height:30px!important;padding:4px 8px!important;font-size:11px!important}
  .sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced-popover{padding:8px!important}
  .sts-v2-timing-surface.is-consolidated>.sts-v2-caption-track{height:38px!important;min-height:38px!important}
  .sts-v2-timing-surface.is-consolidated>.sts-v2-caption-track .sts-v2-caption-block{top:5px!important;height:28px!important}
}
/* Keep consolidated toolbar DOM order authoritative; legacy timing transport rules used negative order. */
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster,
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-transport,
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-advanced{order:0!important}
/* Caption transport keeps the familiar physical Previous → Play → Next sequence; button text still follows UI locale. */
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster{direction:ltr!important}
.sts-editor-v2-app[dir="rtl"] .sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster button{direction:rtl!important}
.sts-editor-v2-app[dir="ltr"] .sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster button{direction:ltr!important}


/* 0.20.43 — precision boundary needles + compact hit targets.
   The visible grip stays narrow while a larger invisible pointer target preserves usability. */
.sts-editor-v2-app .sts-v2-boundary-handle{
  --sts-v2-boundary-handle-inset:7px!important;
  left:clamp(var(--sts-v2-boundary-handle-inset),var(--boundary-position),calc(100% - var(--sts-v2-boundary-handle-inset)))!important;
  width:7px!important;
  min-width:7px!important;
  height:14px!important;
  min-height:14px!important;
  padding:0!important;
  border-radius:3px!important;
  font-size:0!important;
  line-height:0!important;
  box-shadow:0 2px 7px rgba(15,23,42,.18)!important;
  overflow:visible!important;
}
.sts-editor-v2-app .sts-v2-boundary-handle.is-start{
  top:31%!important;
  transform:translate(-100%,-50%)!important;
  border-color:#16a34a!important;
  background:rgba(240,253,244,.94)!important;
}
.sts-editor-v2-app .sts-v2-boundary-handle.is-end{
  top:69%!important;
  transform:translate(0,-50%)!important;
  border-color:#dc2626!important;
  background:rgba(254,242,242,.94)!important;
}
.sts-editor-v2-app .sts-v2-boundary-handle::before{
  content:"";
  position:absolute;
  top:50%;
  width:21px;
  height:28px;
  transform:translateY(-50%);
  background:transparent;
}
.sts-editor-v2-app .sts-v2-boundary-handle.is-start::before{right:-2px}
.sts-editor-v2-app .sts-v2-boundary-handle.is-end::before{left:-2px}
.sts-editor-v2-app.is-boundary-dragging[data-v2-drag-boundary="start"] .sts-v2-boundary-handle.is-start::after,
.sts-editor-v2-app.is-boundary-dragging[data-v2-drag-boundary="end"] .sts-v2-boundary-handle.is-end::after{
  content:attr(data-v2-boundary-time-readout);
  position:absolute;
  top:50%;
  min-width:58px;
  padding:2px 5px;
  border:1px solid #cbd5e1;
  border-radius:5px;
  background:#fff;
  color:#0f172a;
  font:800 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  white-space:nowrap;
  pointer-events:none;
  box-shadow:0 2px 8px rgba(15,23,42,.16);
}
.sts-editor-v2-app.is-boundary-dragging[data-v2-drag-boundary="start"] .sts-v2-boundary-handle.is-start::after{right:10px;transform:translateY(-50%)}
.sts-editor-v2-app.is-boundary-dragging[data-v2-drag-boundary="end"] .sts-v2-boundary-handle.is-end::after{left:10px;transform:translateY(-50%)}
@media(max-width:900px){
  .sts-editor-v2-app .sts-v2-boundary-handle{width:8px!important;min-width:8px!important;height:16px!important;min-height:16px!important}
  .sts-editor-v2-app .sts-v2-boundary-handle::before{width:24px;height:32px}
}

/* The row-level continuous transport is intentionally compact; the timing-toolbar copy remains available above. */
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-toggle-continuous]{font-weight:800!important}


/* 0.20.44 — Caption Editor interaction integrity.
   Context actions must never disappear horizontally; active playback remains visually anchored. */
.sts-editor-v2-app .sts-v2-caption-context-actions{
  display:flex!important;
  flex:1 1 100%!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  max-width:100%!important;
  scrollbar-width:auto!important;
}
.sts-editor-v2-app .sts-v2-caption-context-actions::-webkit-scrollbar{display:none!important}
.sts-editor-v2-app .sts-v2-caption-context-actions button{
  flex:0 0 auto!important;
  max-width:100%!important;
}
.sts-editor-v2-app .sts-v2-line-counters{
  align-items:flex-start!important;
}

/* 0.20.49 — trusted merge behavior, clean visual relocation only.
   Runtime merge code/DOM/event flow stays untouched. The legacy buttons are removed
   from document flow with CSS only and visually occupy reserved logical side lanes
   beside the existing textarea. */
.sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-list-text-cell{overflow:visible!important}
.sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-row-editor{
  box-sizing:border-box!important;
  width:calc(100% - 104px)!important;
  margin-inline:52px!important;
}
.sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions{
  flex:1 1 calc(100% - 104px)!important;
  max-width:calc(100% - 104px)!important;
  margin-inline:52px!important;
}
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev],
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next]{
  position:absolute!important;
  inset-block-start:0!important;
  z-index:7!important;
  box-sizing:border-box!important;
  width:46px!important;
  min-width:46px!important;
  height:50px!important;
  min-height:50px!important;
  margin:0!important;
  padding:4px 3px!important;
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  border:1px solid #cbd5e1!important;
  border-radius:8px!important;
  background:#f8fafc!important;
  color:#334155!important;
  font:inherit!important;
  font-size:10px!important;
  font-weight:850!important;
  line-height:1.05!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev]{inset-inline-start:0!important}
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next]{inset-inline-end:0!important}
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev] span[aria-hidden="true"],
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next] span[aria-hidden="true"]{display:none!important}
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev]::before,
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next]::before{
  display:block;
  font-size:17px;
  line-height:1;
  font-weight:900;
  color:#1d4ed8;
}
.sts-editor-v2-app .sts-v2-list-text-cell[dir="ltr"] .sts-v2-caption-context-actions [data-v2-merge-prev]::before{content:"←"}
.sts-editor-v2-app .sts-v2-list-text-cell[dir="ltr"] .sts-v2-caption-context-actions [data-v2-merge-next]::before{content:"→"}
.sts-editor-v2-app .sts-v2-list-text-cell[dir="rtl"] .sts-v2-caption-context-actions [data-v2-merge-prev]::before{content:"→"}
.sts-editor-v2-app .sts-v2-list-text-cell[dir="rtl"] .sts-v2-caption-context-actions [data-v2-merge-next]::before{content:"←"}
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev]:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next]:hover:not(:disabled),
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev]:focus-visible:not(:disabled),
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next]:focus-visible:not(:disabled){
  border-color:#60a5fa!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
  box-shadow:0 0 0 2px rgba(37,99,235,.08)!important;
  outline:0!important;
}
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev]:disabled,
.sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next]:disabled{opacity:.35!important;cursor:not-allowed!important}
.sts-editor-v2-app .sts-v2-list-text-cell:has(> .sts-v2-mark-reviewed) .sts-v2-caption-context-actions [data-v2-merge-prev],
.sts-editor-v2-app .sts-v2-list-text-cell:has(> .sts-v2-mark-reviewed) .sts-v2-caption-context-actions [data-v2-merge-next]{inset-block-start:36px!important}
@media(max-width:700px){
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-row-editor{width:100%!important;margin-inline:0!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions{flex:1 1 100%!important;max-width:100%!important;margin-inline:0!important}
  .sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev],
  .sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next]{
    position:static!important;
    width:auto!important;
    min-width:0!important;
    height:25px!important;
    min-height:25px!important;
    flex-direction:row!important;
    transform:none!important;
  }
  .sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-prev]::before,
  .sts-editor-v2-app .sts-v2-caption-context-actions [data-v2-merge-next]::before{font-size:14px}
}

/* Resizing is a real interaction rail, not an invisible precision target.
   Document-level pointer tracking in JS keeps the drag alive outside the rail. */
.sts-editor-v2-app .sts-v2-layout-splitter{
  touch-action:none!important;
  pointer-events:auto!important;
}
.sts-editor-v2-app .sts-v2-layout-splitter.is-columns{
  width:18px!important;
}
.sts-editor-v2-app .sts-v2-layout-splitter.is-rows{
  height:18px!important;
}
.sts-editor-v2-app .sts-v2-layout-splitter.is-columns::before{
  top:8px!important;
  bottom:8px!important;
  left:8px!important;
  width:2px!important;
  background:rgba(100,116,139,.28)!important;
}
.sts-editor-v2-app .sts-v2-layout-splitter.is-columns::after{
  top:50%!important;
  left:6px!important;
  width:6px!important;
  height:34px!important;
  transform:translateY(-50%)!important;
  opacity:.5!important;
}
.sts-editor-v2-app .sts-v2-layout-splitter.is-rows::before{
  left:8px!important;
  right:8px!important;
  top:8px!important;
  height:2px!important;
  background:rgba(100,116,139,.28)!important;
}
.sts-editor-v2-app .sts-v2-layout-splitter.is-rows::after{
  left:50%!important;
  top:6px!important;
  width:34px!important;
  height:6px!important;
  transform:translateX(-50%)!important;
  opacity:.5!important;
}
.sts-editor-v2-app .sts-v2-layout-splitter:hover::before,
.sts-editor-v2-app .sts-v2-layout-splitter:focus-visible::before,
.sts-editor-v2-app .sts-v2-layout-splitter.is-dragging::before{
  background:var(--sts-v2-accent)!important;
}
.sts-editor-v2-app .sts-v2-layout-splitter:hover::after,
.sts-editor-v2-app .sts-v2-layout-splitter:focus-visible::after,
.sts-editor-v2-app .sts-v2-layout-splitter.is-dragging::after{
  opacity:1!important;
  background:rgba(37,99,235,.42)!important;
}
.sts-editor-v2-app.is-panel-resizing,
.sts-editor-v2-app.is-panel-resizing *{
  user-select:none!important;
  -webkit-user-select:none!important;
}



/* 0.20.50 — Active caption visual hierarchy only.
   Presentation-only: the production Editor JS/runtime remains byte-identical to 0.20.49.
   The trusted legacy caption actions are rearranged entirely with CSS. */
@media (min-width:701px){
  /* Active rows use one compact stacked timing rail instead of two time columns. */
  .sts-editor-v2-app .sts-v2-list-row.is-active{
    grid-template-columns:34px minmax(0,1fr) 58px!important;
    grid-template-rows:auto auto!important;
    column-gap:7px!important;
    row-gap:3px!important;
    align-items:start!important;
    padding-block:7px!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active > .sts-v2-list-index{
    grid-column:1!important;
    grid-row:1 / span 2!important;
    padding-top:5px!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active > .sts-v2-list-text-cell{
    grid-column:2!important;
    grid-row:1 / span 2!important;
    min-width:0!important;
    overflow:visible!important;
    display:grid!important;
    grid-template-columns:42px max-content max-content minmax(0,1fr) 42px!important;
    grid-template-rows:auto auto auto auto auto auto!important;
    column-gap:6px!important;
    row-gap:6px!important;
    align-items:center!important;
    position:relative!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active > .sts-v2-list-time{
    display:block!important;
    grid-column:3!important;
    min-width:0!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:4px 4px!important;
    border-radius:6px!important;
    background:#f8fafc!important;
    border:1px solid #e2e8f0!important;
    color:#64748b!important;
    font-size:9px!important;
    line-height:1.15!important;
    letter-spacing:-.02em!important;
    text-align:center!important;
    overflow:visible!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active > .sts-v2-list-time:nth-child(3){
    grid-row:1!important;
    border-inline-start:2px solid #16a34a!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active > .sts-v2-list-time:nth-child(4){
    grid-row:2!important;
    border-inline-start:2px solid #dc2626!important;
  }

  /* Flatten only the visual action wrappers so the existing trusted controls can
     occupy a deliberate grid without changing a byte of their DOM or handlers. */
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-line-counters,
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions{
    display:contents!important;
  }

  /* Counters and Balance are the quiet utility line above the editor. */
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-line-counters > span:not(.sts-v2-caption-context-actions){
    grid-row:1!important;
    align-self:center!important;
    color:#64748b!important;
    font-size:10.5px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    margin:0!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-line-counters > span:not(.sts-v2-caption-context-actions):nth-of-type(1){grid-column:2!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-line-counters > span:not(.sts-v2-caption-context-actions):nth-of-type(2){grid-column:3!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-balance-lines]{
    grid-column:4!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    min-height:24px!important;
    height:24px!important;
    padding:2px 7px!important;
    border-radius:7px!important;
    font-size:10px!important;
    color:#475569!important;
    background:#fff!important;
    border-color:#dbe3ed!important;
  }

  /* Textarea gets the widest possible center lane. */
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-row-editor{
    grid-column:2 / 5!important;
    grid-row:2!important;
    width:100%!important;
    margin:0!important;
    min-width:0!important;
    min-height:66px!important;
    max-height:150px!important;
    padding:8px 10px!important;
    border-radius:9px!important;
  }

  /* Trusted Merge controls: same DOM/actions, polished edge presentation only. */
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-prev],
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-next]{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    grid-row:2!important;
    align-self:stretch!important;
    justify-self:stretch!important;
    width:42px!important;
    min-width:42px!important;
    height:auto!important;
    min-height:58px!important;
    margin:0!important;
    padding:5px 2px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    border:1px solid #d5dee9!important;
    border-radius:9px!important;
    background:#f8fafc!important;
    color:#475569!important;
    font-size:9.5px!important;
    font-weight:850!important;
    line-height:1!important;
    box-shadow:none!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-prev]{grid-column:1!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-next]{grid-column:5!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-prev] span[aria-hidden="true"],
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-next] span[aria-hidden="true"]{
    display:block!important;
    width:100%!important;
    height:17px!important;
    font-size:0!important;
    line-height:17px!important;
    color:#1d4ed8!important;
    text-align:center!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-prev] span[aria-hidden="true"]::before,
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-next] span[aria-hidden="true"]::before{
    display:block!important;
    font-size:17px!important;
    font-weight:900!important;
    line-height:17px!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-prev]::before,
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-caption-context-actions [data-v2-merge-next]::before{display:none!important;content:none!important}
  .sts-editor-v2-app .sts-v2-list-text-cell[dir="ltr"] [data-v2-merge-prev] span[aria-hidden="true"]::before{content:"←"!important}
  .sts-editor-v2-app .sts-v2-list-text-cell[dir="ltr"] [data-v2-merge-next] span[aria-hidden="true"]::before{content:"→"!important}
  .sts-editor-v2-app .sts-v2-list-text-cell[dir="rtl"] [data-v2-merge-prev] span[aria-hidden="true"]::before{content:"→"!important}
  .sts-editor-v2-app .sts-v2-list-text-cell[dir="rtl"] [data-v2-merge-next] span[aria-hidden="true"]::before{content:"←"!important}

  /* Compact transport line below the editor. Full meaning remains in the existing
     tooltip/ARIA attributes; only the visible labels are reduced. */
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range],
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]{
    grid-row:3!important;
    align-self:center!important;
    justify-self:start!important;
    width:32px!important;
    min-width:32px!important;
    height:28px!important;
    min-height:28px!important;
    padding:0!important;
    border-radius:8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]{grid-column:2!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]{position:relative!important;font-size:0!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range] span{display:none!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]::before{
    content:"▶"!important;
    display:block!important;
    font-size:13px!important;
    font-weight:900!important;
    line-height:1!important;
    color:#334155!important;
    transform:translateX(-2px);
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset-inline-end:7px!important;
    top:7px!important;
    width:2px!important;
    height:13px!important;
    border-radius:2px!important;
    background:#64748b!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]{
    grid-column:3!important;
    font-size:0!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]::before{
    content:"▶"!important;
    display:block!important;
    font-size:14px!important;
    font-weight:900!important;
    line-height:1!important;
    color:#334155!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous][aria-pressed="true"]::before{content:"■"!important;color:#1d4ed8!important}
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-split]{
    grid-column:4!important;
    grid-row:3!important;
    justify-self:start!important;
    align-self:center!important;
    min-height:28px!important;
    height:28px!important;
    padding:2px 8px!important;
    border-radius:8px!important;
  }

  /* Supporting information stays below the action line and no longer competes
     visually with editing controls. */
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-mark-reviewed{
    grid-column:2 / 5!important;
    grid-row:4!important;
    justify-self:start!important;
    margin:0!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-row-source-reference{
    grid-column:2 / 5!important;
    grid-row:5!important;
    margin:0!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active .sts-v2-timing-problem{
    grid-column:2 / 5!important;
    grid-row:6!important;
    margin:0!important;
  }
}


/* 0.20.51 — Active caption micro-polish only.
   Presentation-only: Editor JavaScript/runtime remains byte-identical to 0.20.50.
   Restores compact visible transport labels and places Start/End accents on
   opposite logical edges so LTR/RTL timing semantics read naturally. */
@media (min-width:701px){
  /* Keep both transport controls compact but self-explanatory. */
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range],
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]{
    width:auto!important;
    min-width:0!important;
    height:28px!important;
    min-height:28px!important;
    padding-inline:8px!important;
    gap:5px!important;
    font-size:10.5px!important;
    font-weight:750!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]{
    position:relative!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range] span{
    display:inline!important;
    font-size:10.5px!important;
    line-height:1!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range] span[aria-hidden="true"]{
    font-size:12px!important;
    color:#334155!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]::before,
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]::after{
    display:none!important;
    content:none!important;
  }
  /* Keep the existing localized runtime title visible; only add the compact play
     glyph in the idle state. No user-facing label is synthesized in CSS. */
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]{
    font-size:10.5px!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous][aria-pressed="false"]::before{
    content:"▶"!important;
    display:inline-block!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1!important;
    color:#334155!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous][aria-pressed="true"]::before{
    display:none!important;
    content:none!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]::after{
    display:none!important;
    content:none!important;
  }

  /* Time cells intentionally render numeric content LTR, so mirror their edge accents
     from the editor direction explicitly rather than relying on the cell direction. */
  .sts-editor-v2-app[dir="ltr"] .sts-v2-list-row.is-active > .sts-v2-list-time:nth-child(3){
    border-left:2px solid #16a34a!important;
    border-right:1px solid #e2e8f0!important;
  }
  .sts-editor-v2-app[dir="ltr"] .sts-v2-list-row.is-active > .sts-v2-list-time:nth-child(4){
    border-left:1px solid #e2e8f0!important;
    border-right:2px solid #dc2626!important;
  }
  .sts-editor-v2-app[dir="rtl"] .sts-v2-list-row.is-active > .sts-v2-list-time:nth-child(3){
    border-left:1px solid #e2e8f0!important;
    border-right:2px solid #16a34a!important;
  }
  .sts-editor-v2-app[dir="rtl"] .sts-v2-list-row.is-active > .sts-v2-list-time:nth-child(4){
    border-left:2px solid #dc2626!important;
    border-right:1px solid #e2e8f0!important;
  }
}


/* 0.20.53 — Active caption transport icon correction only.
   Presentation-only: production Editor JavaScript/runtime remains byte-identical
   to 0.20.51. Restore the explicit UX requirement: two compact icon-only
   transport controls, continuous play first (▶) and bounded current-caption
   play second (▶│). Existing tooltip/ARIA semantics remain authoritative. */
@media (min-width:701px){
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range],
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]{
    width:34px!important;
    min-width:34px!important;
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    gap:0!important;
    border-radius:9px!important;
    font-size:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  /* Visual order: normal/continuous transport first, bounded current-caption
     transport second. DOM order and event routing remain unchanged. */
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]{
    grid-column:2!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]{
    grid-column:3!important;
    position:relative!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range] span{
    display:none!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]::before{
    content:"▶"!important;
    display:block!important;
    font-size:13px!important;
    font-weight:900!important;
    line-height:1!important;
    color:#334155!important;
    transform:translateX(-2px);
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset-inline-end:7px!important;
    top:7px!important;
    width:2px!important;
    height:15px!important;
    border-radius:2px!important;
    background:#64748b!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]::before{
    content:"▶"!important;
    display:block!important;
    font-size:14px!important;
    font-weight:900!important;
    line-height:1!important;
    color:#334155!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous][aria-pressed="true"]::before{
    content:"■"!important;
    color:#1d4ed8!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]::after{
    display:none!important;
    content:none!important;
  }
}

/* 0.20.53 — Reliable active-caption transport glyphs + concise tooltips.
   Presentation/copy correction only. Do not synthesize play glyphs with button
   pseudo-elements: use the actual button content so the live browser cannot
   render an empty control. Playback/merge event routing is unchanged. */
@media (min-width:701px){
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range],
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]{
    width:34px!important;
    min-width:34px!important;
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    gap:0!important;
    border-radius:9px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#334155!important;
  }
  /* Continuous is real textContent (▶ / ■), not generated content. */
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]{
    grid-column:2!important;
    font-size:14px!important;
    font-weight:900!important;
    line-height:1!important;
    background-image:none!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous][aria-pressed="true"]{
    color:#1d4ed8!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]::before,
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-toggle-continuous]::after{
    display:none!important;
    content:none!important;
  }
  /* Bounded play uses the existing real aria-hidden ▶ span. The stop marker is
     a border on that span, so no generated-content glyph is required. */
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]{
    grid-column:3!important;
    font-size:0!important;
    background-image:none!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range] span{
    display:none!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range] span[aria-hidden="true"]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:18px!important;
    height:16px!important;
    padding-inline-end:3px!important;
    border-inline-end:2px solid #64748b!important;
    box-sizing:border-box!important;
    font-size:13px!important;
    font-weight:900!important;
    line-height:1!important;
    color:#334155!important;
  }
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]::before,
  .sts-editor-v2-app .sts-v2-list-row.is-active [data-v2-play-range]::after{
    display:none!important;
    content:none!important;
  }
}


/* v-next — Find-and-replace, visible playback speed, local-draft indicator, multi-select delete. */
.sts-v2-caption-replace{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-height:30px!important;
  padding:3px 5px!important;
  border:1px solid #d8e0ea!important;
  border-radius:999px!important;
  background:#fff!important;
  max-width:100%!important;
  margin-inline-start:4px!important;
}
.sts-v2-caption-replace input{
  border:0!important;
  outline:none!important;
  font:inherit!important;
  font-size:12px!important;
  min-width:0!important;
  flex:1 1 120px!important;
  background:transparent!important;
}
.sts-v2-caption-replace button{
  border:1px solid var(--sts-v2-border,#d8e0ea)!important;
  background:#fff!important;
  border-radius:999px!important;
  padding:4px 9px!important;
  min-height:26px!important;
  cursor:pointer!important;
  font:inherit!important;
  font-size:11.5px!important;
  white-space:nowrap!important;
}
.sts-v2-caption-replace button:hover{border-color:var(--sts-v2-accent,#2563eb)!important}
[data-v2-replace-toggle].is-active{
  background:var(--sts-v2-accent,#2563eb)!important;
  border-color:var(--sts-v2-accent,#2563eb)!important;
  color:#fff!important;
}
.sts-v2-recovery-indicator{
  display:inline-flex!important;
  align-items:center!important;
  margin-inline-start:8px!important;
  font-size:11px!important;
  color:#64748b!important;
  white-space:nowrap!important;
}
select.sts-v2-playback-rate{
  border:1px solid #2563eb!important;
  border-radius:999px!important;
  min-height:26px!important;
  padding:3px 6px!important;
  font-size:12px!important;
  font-weight:700!important;
  background:#fff!important;
  color:#1d4ed8!important;
  cursor:pointer!important;
}
[data-v2-select-toggle].is-active{
  background:var(--sts-v2-accent,#2563eb)!important;
  border-color:var(--sts-v2-accent,#2563eb)!important;
  color:#fff!important;
}
.sts-v2-list-index{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
}
.sts-v2-row-select{
  margin:0!important;
  width:14px!important;
  height:14px!important;
  cursor:pointer!important;
  flex:0 0 auto!important;
}
.sts-v2-bulk-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:6px 8px!important;
  font-size:12px!important;
  background:#fff7ed!important;
  border-bottom:1px solid #fed7aa!important;
}
.sts-v2-bulk-actions button{
  border:1px solid #d8e0ea!important;
  background:#fff!important;
  border-radius:999px!important;
  padding:4px 10px!important;
  min-height:26px!important;
  cursor:pointer!important;
  font:inherit!important;
  font-size:11.5px!important;
}
.sts-v2-bulk-actions [data-v2-bulk-delete]{
  border-color:#dc2626!important;
  color:#dc2626!important;
  font-weight:700!important;
}


/* v0.20.57 — Timing-surface and list-toolbar visual cleanup: icon-only transport controls
   (uniform with the active-caption compact buttons), Advanced timing tools moved into a
   closable More-tools modal, and a decluttered list toolbar (redundant Split/Merge removed
   since every caption already has its own inline copies; Select/Search now icon-only). */
.sts-v2-timing-surface.is-consolidated .sts-v2-caption-play-cluster button.sts-v2-transport-icon,
.sts-v2-timing-surface.is-consolidated .sts-v2-timing-transport button.sts-v2-transport-icon{
  min-width:32px!important;
  width:32px!important;
  padding:0!important;
  font-size:15px!important;
}
.sts-v2-transport-icon[aria-pressed="true"]{
  background:#111827!important;
  border-color:#111827!important;
  color:#fff!important;
}
.sts-v2-transport-icon:hover:not(:disabled){
  border-color:var(--sts-v2-accent,#2563eb)!important;
}
select.sts-v2-transport-icon{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  height:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0 8px!important;
  border:1px solid #cbd5e1!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--sts-v2-strong,#0f172a)!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1!important;
  cursor:pointer!important;
}
select.sts-v2-transport-icon:hover{border-color:var(--sts-v2-accent,#2563eb)!important}

.sts-v2-timing-advanced-panel .sts-v2-timing-advanced-dialog{width:min(640px,calc(100vw - 48px))!important}
.is-timing-advanced-open{overflow:hidden!important}

.sts-v2-list-toolbar .sts-v2-icon-toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
  min-height:30px!important;
  padding:0!important;
  font-size:14px!important;
  border-radius:999px!important;
}
.sts-v2-list-toolbar .sts-v2-icon-toggle.is-active,
.sts-v2-list-toolbar .sts-v2-icon-toggle[aria-pressed="true"]{
  background:var(--sts-v2-accent,#2563eb)!important;
  border-color:var(--sts-v2-accent,#2563eb)!important;
  color:#fff!important;
}
.sts-v2-list-search-row{
  width:100%!important;
  padding:0 8px 8px!important;
  box-sizing:border-box!important;
}
.sts-v2-list-search-row .sts-v2-caption-search{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.sts-v2-list-search-row .sts-v2-caption-search input{
  width:auto!important;
  flex:1 1 auto!important;
  min-width:80px!important;
}


/* v0.20.58 — Sticky search/replace row (Previous/Next/Replace no longer scroll out of view
   while paging through matches), a distinct Play-caption icon in the timing surface, and
   corrected/shortened tooltips for the two Play-caption buttons. */
.sts-v2-list-toolbar-sticky{
  position:sticky!important;
  top:0!important;
  z-index:6!important;
  background:#f8fafc!important;
  border-bottom:1px solid var(--sts-v2-border,#e2e8f0)!important;
}
.sts-v2-list-toolbar-sticky .sts-v2-list-toolbar{
  position:static!important;
  top:auto!important;
  z-index:auto!important;
  border-bottom:0!important;
}
