.series-workflow .scenario-context { max-width:860px; margin:0 auto; }
.series-workflow .scenario-context h2 { text-align:left; }
.series-workflow .scenario-context h3 { margin:32px 0 16px; }
.drama-heading { max-width:820px; margin:0 auto 36px; text-align:center; }
.drama-sources { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.drama-sources article { min-width:0; }
.series-workflow .drama-sources h3 { font-size:21px; margin:22px 0 12px; }
.drama-file,.drama-frame,.drama-audio { height:150px; display:flex; align-items:center; justify-content:center; background:#fff; border:1px solid #e5e5e5; border-radius:8px; }
.drama-file { gap:14px; }
.drama-file span { border:1px solid #c2cdff; background:#ecf0ff; padding:26px 16px; color:#3b2ad8; font-weight:700; border-radius:4px; }
.drama-file .drama-file-secondary { background:#f0fdf4; border-color:#bbf7d0; color:#166534; }
.drama-frame { background:#262626; padding:20px; }
.drama-frame span { color:#fff; border:1px dashed #a5b4fc; padding:10px; text-align:center; font-size:14px; }
.drama-audio { gap:5px; }
.drama-audio i { display:block; width:8px; height:var(--height); background:#4a4aff; border-radius:3px; }
.drama-continuity-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:36px; }
.drama-role { background:#fff; padding:28px; border:1px solid #e5e5e5; border-radius:8px; }
.drama-role-avatar { display:flex; width:56px; height:56px; align-items:center; justify-content:center; background:#ecf0ff; color:#4536f5; border-radius:50%; font-weight:800; margin-bottom:20px; }
.drama-role dl { margin:24px 0 0; }
.drama-role dl div { border-top:1px solid #e5e5e5; padding:12px 0; }
.drama-role dt { font-size:13px; color:#737373; }
.drama-role dd { margin:4px 0 0; color:#171717; font-size:15px; }
.drama-episodes { display:grid; gap:0; }
.drama-episodes > div { padding:18px 24px; border-left:3px solid #4a4aff; border-bottom:1px solid #e5e5e5; }
.drama-episodes > div > span { font-size:13px; color:#737373; }
.series-workflow .drama-episodes h3 { font-size:20px; margin:8px 0; }
.drama-track { height:24px; display:flex; gap:6px; align-items:center; margin-top:12px; }
.drama-track i { height:12px; background:#c2cdff; flex:1; border-radius:2px; }
.drama-track i:nth-child(3n) { height:22px; background:#4a4aff; }
.drama-pipeline { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:32px 0 48px; }
.drama-pipeline > div { padding:22px; border-top:3px solid #4a4aff; border-right:1px solid #e5e5e5; }
.series-workflow .drama-pipeline h3 { font-size:20px; }
.drama-pipeline span { display:block; font-size:14px; line-height:1.6; color:#737373; }
.drama-review-rows { margin-top:40px; }
.drama-review-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:56px; align-items:center; padding:44px 0; border-top:1px solid #e5e5e5; }
.drama-review-row > * { min-width:0; }
.drama-review-row figure { margin:0; }
.drama-review-row img { display:block; width:100%; height:auto; border-radius:8px; }
.series-workflow .drama-review-copy h3 { margin:0 0 18px; font-size:24px; line-height:1.35; }
.series-workflow .drama-review-copy p { margin:0 0 16px; }
.drama-review-copy a { display:inline-block; margin-top:4px; text-underline-offset:4px; }
.drama-review-row figcaption,.series-workflow .drama-caption { font-size:13px; line-height:1.6; color:#737373; margin:12px 0 0; }
.drama-comparison { max-width:400px; width:100%; justify-self:center; }
.drama-before-after { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.drama-before-after img { aspect-ratio:9/16; object-fit:contain; background:#f5f5f5; }
.drama-before-after figcaption { text-align:center; }
#series-production .loc-related { margin-top:16px; }
.drama-matrix-wrap { overflow-x:auto; border:1px solid #e5e5e5; border-radius:8px; background:#fff; }
.drama-matrix { width:100%; min-width:600px; border-collapse:collapse; text-align:left; }
.drama-matrix caption { text-align:left; padding:20px; font-size:14px; color:#525252; }
.drama-matrix th,.drama-matrix td { padding:18px 20px; border-top:1px solid #e5e5e5; font-size:15px; }
.drama-matrix thead { background:#fafafa; }
.drama-state { display:inline-block; padding:6px 10px; border-radius:4px; font-size:13px; white-space:nowrap; }
.drama-approved { color:#166534; background:#f0fdf4; }
.drama-review { color:#92400e; background:#fffbeb; }
.drama-pending { color:#737373; background:#f5f5f5; }
.drama-handoff-notes { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:24px; }
.drama-handoff-notes strong { display:block; color:#171717; margin-bottom:8px; }
.drama-recovery { margin:32px 0; }
.drama-recovery-chain { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:24px 0; }
.drama-recovery-chain > div { padding:20px 0; border-top:2px solid #d4d4d4; }
.drama-recovery-chain strong,.drama-recovery-chain span { display:block; }
.drama-recovery-chain span { margin-top:8px; font-size:14px; color:#737373; }
@media(max-width:800px) {
 .drama-sources,.drama-continuity-grid,.drama-review-row { grid-template-columns:1fr; gap:28px; }
 .drama-review-row { padding:32px 0; }
 .drama-review-rows { margin-top:24px; }
 .drama-pipeline { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:24px; }
 .drama-handoff-notes,.drama-recovery-chain { grid-template-columns:1fr; gap:12px; }
 .drama-file,.drama-frame,.drama-audio { height:130px; }
 .drama-role { padding:22px; }
}
@media(max-width:480px) {
 .drama-pipeline { grid-template-columns:1fr; }
 .drama-pipeline > div { padding:18px 0; border-right:0; }
 .drama-matrix th,.drama-matrix td { padding:14px; }
}
