.sidebar { position: sticky; top: 0; height: 100vh; background: #1d2229; box-shadow: 5px 0 18px #15191e14; }
.brand { border-bottom: 1px solid #ffffff12; margin-bottom: 12px; }
.nav-item { position: relative; transition: background-color .16s ease, color .16s ease; }
.nav-item.active::before { content: ""; position: absolute; left: 0; top: 9px; bottom: 9px; width: 3px; background: #e23b32; }
main { background: #f4f6f8; }
header { padding-bottom: 18px; border-bottom: 1px solid #e3e6e9; }
.table-wrap,.connection-strip,.kpis,.overview-section,.performance-section,.content-intro,.platform-connections article { box-shadow: 0 3px 12px #17202a0a; }
tbody tr:hover>td { background-color: #fcfcfd; }
button { transition: border-color .16s ease, background-color .16s ease, transform .12s ease; }
button:hover { border-color: #aeb5be; }
button:active { transform: translateY(1px); }
.primary:hover { border-color: #ad2924; background: #ad2924; }

.task-status {
  display: inline-block;
  min-width: 58px;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 11px;
  text-align: center;
}

.status-todo { background: #fff0d5; color: #936113; }
.status-doing { background: #e1ebff; color: #245bbb; }
.status-done { background: #dff4e9; color: #137a4c; }

.tasks-table button {
  white-space: nowrap;
}
.tasks-table{min-width:1460px;table-layout:fixed}.tasks-table th:nth-child(1),.tasks-table td:nth-child(1){width:170px}.tasks-table th:nth-child(2),.tasks-table td:nth-child(2){width:260px}.tasks-table th:nth-child(3),.tasks-table td:nth-child(3),.tasks-table th:nth-child(4),.tasks-table td:nth-child(4){width:130px}.tasks-table th:nth-child(5),.tasks-table td:nth-child(5){width:110px}.tasks-table th:nth-child(6),.tasks-table td:nth-child(6){width:100px}.tasks-table th:nth-child(7),.tasks-table td:nth-child(7){width:210px}.tasks-table th:nth-child(8),.tasks-table td:nth-child(8){width:90px}.tasks-table th:nth-child(9),.tasks-table td:nth-child(9){width:260px}.tasks-table td:nth-child(2){overflow-wrap:anywhere;line-height:1.55}
.tasks-table th:last-child,.tasks-table td:last-child{position:sticky;right:0;z-index:2;background:#fff;box-shadow:-8px 0 14px -12px #17202a88}.tasks-table th:last-child{z-index:3;background:#fafafa}

.table-input {
  box-sizing: border-box;
  width: 116px;
  min-height: 34px;
  padding: 7px 8px;
  border: 1px solid #d8dde3;
  border-radius: 4px;
  background: #fff;
  font: inherit;
}

.activity-cell {
  min-width: 150px;
  color: #59616b;
  line-height: 1.5;
}

.task-actions {
  display: flex;
  gap: 6px;
  align-items: center;
}

.form-error {
  margin: -4px 0 14px;
  color: #b42c26;
  font-size: 13px;
}

.connection-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
  padding: 15px 18px;
  border: 1px solid #dfe3e7;
  border-radius: 6px;
  background: #fff;
}

.connection-title {
  display: flex;
  align-items: center;
  gap: 12px;
}

.connection-title strong,
.connection-title span {
  display: block;
}

.connection-title span {
  margin-top: 3px;
  color: #737b85;
  font-size: 12px;
}

.connection-dot {
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border-radius: 50%;
  background: #d49a23;
  box-shadow: 0 0 0 4px #fff0d5;
}

.connection-dot.ready {
  background: #168354;
  box-shadow: 0 0 0 4px #dff4e9;
}

.connection-checks {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.connection-checks span {
  padding: 5px 8px;
  border-radius: 4px;
  font-size: 12px;
}

.connection-checks .waiting { background: #fff0d5; color: #86570d; }
.connection-checks .ready { background: #dff4e9; color: #137a4c; }

.content-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 12px;
  padding: 14px 16px;
  border-left: 4px solid #c8322b;
  background: #fff;
}

.content-intro strong,
.content-intro span { display: block; }
.content-intro div span { margin-top: 4px; color: #737b85; font-size: 12px; }
.integration-state { padding: 5px 8px; border-radius: 4px; background: #e1ebff; color: #245bbb; font-size: 12px; }
.content-filter { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 12px; }
.content-filter label { display: flex; align-items: center; gap: 8px; margin: 0; }
.content-filter select,.brief-grid select { min-height: 38px; padding: 7px 10px; border: 1px solid #d8dce1; border-radius: 5px; background: #fff; }
.content-filter p { color: #69717b; font-size: 12px; }
.category-isolation { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-left: 3px solid #245bbb; background: #eef4ff; }
.category-isolation span { color: #59616b; font-size: 12px; }
.risk-status { display: inline-block; min-width: 58px; padding: 4px 7px; border-radius: 4px; font-size: 11px; text-align: center; }
.risk-unchecked { background: #eef0f2; color: #59616b; }
.risk-passed { background: #dff4e9; color: #137a4c; }
.risk-warning,.risk-blocked { background: #fde6e4; color: #b42c26; }
.content-jobs-table { min-width: 1120px; table-layout: fixed; }
.content-jobs-table-wrapper { overflow-x: auto; }
.content-jobs-table th:nth-child(1),
.content-jobs-table td:nth-child(1) { width: 210px; }
.content-jobs-table th:nth-child(2),
.content-jobs-table td:nth-child(2) { width: 120px; }
.content-jobs-table th:nth-child(3),
.content-jobs-table td:nth-child(3),
.content-jobs-table th:nth-child(4),
.content-jobs-table td:nth-child(4),
.content-jobs-table th:nth-child(5),
.content-jobs-table td:nth-child(5) { width: 130px; }
.content-jobs-table th:nth-child(6),
.content-jobs-table td:nth-child(6) { width: 120px; }
.content-jobs-table th:nth-child(7),
.content-jobs-table td:nth-child(7) { width: 90px; }
.content-jobs-table th:nth-child(8),
.content-jobs-table td:nth-child(8) { width: 170px; }
.content-jobs-table .content-cell { overflow-wrap: anywhere; }
.content-jobs-table button { white-space: nowrap; }
.brief-row td { padding: 0 14px 14px; background: #fafafa; }
.brief-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.brief-grid label { margin: 0; color: #69717b; }
.brief-grid input { width: 100%; margin-top: 6px; }
.wide-field { grid-column: 1 / -1; }
.brief-grid textarea { width: 100%; min-height: 88px; margin-top: 6px; }
.asset-section { display: grid; gap: 10px; }
.asset-uploaders { display: flex; gap: 10px; flex-wrap: wrap; }
.asset-uploaders label { padding: 9px 12px; border: 1px solid #d8dce1; border-radius: 5px; background: #fff; cursor: pointer; }
.asset-uploaders input { display: none; }
.asset-gallery { display: flex; gap: 8px; min-height: 72px; align-items: center; color: #777f89; }
.asset-gallery figure { margin: 0; width: 78px; }
.asset-gallery img { width: 78px; height: 58px; object-fit: cover; border: 1px solid #e0e3e7; border-radius: 4px; }
.asset-gallery figcaption { margin-top: 3px; color: #69717b; font-size: 11px; text-align: center; }
.material-state { padding: 8px 10px; font-size: 12px; }
.material-state.ready { background: #dff4e9; color: #137a4c; }
.material-state.waiting { background: #fff0d5; color: #86570d; }
.metrics-row td { padding: 0 14px 16px; background: #fafafa; }
.metrics-editor { display: grid; grid-template-columns: 1.5fr repeat(5,1fr) auto; align-items: end; gap: 10px; padding: 14px; border-top: 1px solid #e0e3e7; background: #fff; }
.metrics-editor>div strong,.metrics-editor>div span { display: block; }
.metrics-editor>div span { margin-top: 4px; color: #69717b; font-size: 11px; }
.metrics-editor label { margin: 0; }
.metrics-editor input { width: 100%; }
.performance-section { margin-bottom: 18px; border: 1px solid #e0e3e7; background: #fff; }
.performance-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border-bottom: 1px solid #eceef0; }
.performance-head p { margin-top: 4px; color: #737b85; font-size: 12px; }
.performance-head>span { padding: 5px 8px; background: #fff0d5; color: #86570d; font-size: 12px; }
.performance-grid { display: grid; grid-template-columns: repeat(8,1fr); }
.performance-grid div { padding: 14px 16px; border-right: 1px solid #eceef0; }
.performance-grid div:last-child { border-right: 0; }
.performance-grid span,.performance-grid strong { display: block; }
.performance-grid span { color: #737b85; font-size: 11px; }
.performance-grid strong { margin-top: 7px; font-size: 22px; }
.platform-connections { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-bottom: 14px; }
.platform-connections article { padding: 16px; border: 1px solid #e0e3e7; background: #fff; }
.platform-connections article div { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.platform-connections article p { margin-top: 9px; color: #69717b; font-size: 12px; line-height: 1.5; }
.connection-status,.metric-source { display: inline-block; padding: 4px 7px; font-size: 11px; }
.connection-status.pending,.source-none { background: #fff0d5; color: #86570d; }
.connection-status.connected,.source-api { background: #dff4e9; color: #137a4c; }
.source-manual { background: #eef0f2; color: #59616b; }
.source-import { background: #e1ebff; color: #245bbb; }
.performance-table { min-width: 1260px; table-layout: fixed; }
.performance-table-wrapper { overflow-x: auto; }
.performance-table th:first-child,.performance-table td:first-child { width: 220px; }
.performance-table th:nth-child(4),.performance-table td:nth-child(4) { width: 170px; }
.performance-table th:nth-child(n+5):nth-child(-n+9),.performance-table td:nth-child(n+5):nth-child(-n+9) { width: 80px; }
.performance-table th:nth-child(10),.performance-table td:nth-child(10) { width: 90px; }
.performance-table th:nth-child(11),.performance-table td:nth-child(11) { width: 110px; }
.metric-input { width: 64px; padding: 8px 7px; }
.metric-import { display: grid; grid-template-columns: auto auto; align-items: center; gap: 5px 10px; }.metric-import label { grid-row: 1 / 3; margin: 0; padding: 9px 13px; border: 1px solid #173f46; color: #fff; background: #173f46; cursor: pointer; }.metric-import input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }.metric-import span { color: #748489; font-size: 11px; }
.work-id-input { width: 145px; }
.review-section-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; padding: 16px 18px; border: 1px solid #dfe5e6; border-left: 4px solid #173f46; background: #fff; }.review-section-title.secondary { margin-top: 24px; border-left-color: #c8322b; }.review-section-title strong,.review-section-title span { display: block; }.review-section-title span { margin-top: 4px; color: #718086; font-size: 12px; }.review-section-title b { display: grid; place-items: center; min-width: 34px; height: 34px; color: #fff; background: #173f46; font-size: 15px; }
.content-review-list { display: grid; gap: 12px; }.content-review-card { display: grid; grid-template-columns: 1.4fr .75fr; gap: 20px; padding: 18px; border: 1px solid #dfe5e6; background: #fff; }.review-document>div { display: flex; gap: 6px; flex-wrap: wrap; }.review-document>div span { padding: 4px 7px; background: #eaf2f2; color: #276469; font-size: 11px; }.review-document h3 { margin: 14px 0 8px; font-size: 17px; }.review-document p { color: #4f5f64; font-size: 13px; line-height: 1.7; white-space: pre-wrap; }.review-document small { display: block; margin-top: 10px; color: #bd2c38; }.content-review-decision textarea { min-height: 108px; }.content-review-decision>div { display: flex; justify-content: flex-end; gap: 8px; }.compact-empty { padding: 28px; border: 1px dashed #cad6d8; background: #fff; }
.performance-detail-row td { padding: 0 14px 18px; background: #f7f9f9; }
.performance-close-loop { display: grid; grid-template-columns: 1fr .82fr 1fr; gap: 12px; }
.performance-close-loop section { min-width: 0; padding: 15px; border: 1px solid #dfe6e7; background: #fff; }
.close-loop-title { display: flex; align-items: center; gap: 10px; }
.close-loop-title>span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 4px; color: #fff; background: #173f46; font-size: 11px; font-weight: 800; }
.close-loop-title strong,.close-loop-title small { display: block; }.close-loop-title strong { font-size: 13px; }.close-loop-title small { margin-top: 3px; color: #74858a; font-size: 10px; }
.publishing-fields,.retrospective-fields,.commerce-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 13px; }.publishing-fields label,.retrospective-fields label,.commerce-fields label { margin: 0; }.publishing-fields input,.retrospective-fields input,.retrospective-fields select,.retrospective-fields textarea,.commerce-fields input { width: 100%; margin-top: 5px; }.publishing-fields .wide,.retrospective-fields .wide { grid-column: 1 / -1; }.publishing-fields button,.retrospective-fields button,.commerce-fields button { align-self: end; }
.signal-card p { margin-top: 14px; color: #53666b; font-size: 12px; line-height: 1.65; }.signal-strong { border-top: 3px solid #13805b !important; }.signal-steady { border-top: 3px solid #0b8588 !important; }.signal-warning { border-top: 3px solid #d24b38 !important; }.signal-pending { border-top: 3px solid #b9c5c7 !important; }
.commerce-result { border-top: 3px solid #bd2c38 !important; }.commerce-fields button { grid-column: 1 / -1; }.metric-trend { display: flex; align-items: end; gap: 4px; height: 48px; margin-top: 13px; padding: 6px 7px 0; border-bottom: 1px solid #d9e2e3; background: #f5f8f8; }.metric-trend i { flex: 1; height: var(--metric-height); min-height: 4px; background: #2d6f73; }.metric-trend span { align-self: center; color: #829093; font-size: 10px; line-height: 1.4; }
.retrospective-editor { grid-column: 1 / -1; }.retrospective-fields { grid-template-columns: 150px 1fr 1fr; }.retrospective-fields textarea { min-height: 66px; resize: vertical; }.retrospective-fields .wide { grid-column: span 2; }
.knowledge-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 12px; padding-top: 12px; border-top: 1px solid #e0e7e8; }.knowledge-actions span { margin-right: auto; color: #63777c; font-size: 11px; }.knowledge-actions button { border-color: #173f46; color: #173f46; background: #eef6f5; }
.content-actions { display: flex; gap: 6px; }
.draft-row td { padding: 0 14px 16px; background: #fafafa; }
.draft-preview { padding: 16px; border-left: 3px solid #c8322b; background: #fff; }
.draft-preview label { margin: 12px 0 0; color: #69717b; }
.draft-preview input,.draft-preview textarea { width: 100%; margin-top: 6px; }
.draft-preview textarea { min-height: 220px; color: #4d555e; line-height: 1.7; }
.draft-head,.draft-actions { display: flex; align-items: center; gap: 8px; }
.draft-head { justify-content: space-between; }
.draft-head>span { color: #777f89; font-size: 12px; }
.toast { position: fixed; right: 24px; bottom: 24px; z-index: 20; padding: 12px 16px; border-radius: 5px; background: #20242a; color: #fff; box-shadow: 0 8px 28px #0003; }
.quality-bar { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 14px; }
.quality-bar span { padding: 6px 8px; border-radius: 4px; background: #eef0f2; color: #59616b; font-size: 12px; }
.overview-pipeline { display: grid; grid-template-columns: repeat(4,1fr); margin-bottom: 18px; border: 1px solid #e0e3e7; background: #fff; }
.overview-pipeline div { position: relative; padding: 20px; border-right: 1px solid #e0e3e7; }
.overview-pipeline div:last-child { border-right: 0; }
.overview-pipeline div:not(:last-child)::after { content: "›"; position: absolute; right: -7px; top: 37px; z-index: 1; color: #c8322b; background: #fff; font-size: 22px; }
.overview-pipeline span,.overview-pipeline strong,.overview-pipeline small { display: block; }
.overview-pipeline span,.overview-pipeline small { color: #737b85; font-size: 12px; }
.overview-pipeline strong { margin: 8px 0 4px; font-size: 28px; }
.overview-layout { display: grid; grid-template-columns: 1.2fr .8fr; gap: 18px; }
.overview-section { padding: 20px; border: 1px solid #e0e3e7; background: #fff; }
.attention-list,.source-list { display: grid; gap: 8px; margin-top: 16px; }
.attention-item,.source-list div { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 12px; border: 0; border-bottom: 1px solid #eceef0; text-align: left; }
.attention-item strong { color: #737b85; font-size: 20px; }
.attention-item.has-count strong { color: #c8322b; }
.source-list p { color: #737b85; font-size: 12px; line-height: 1.6; }
.section-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 14px; padding: 18px 20px; border: 1px solid #e0e3e7; background: #fff; box-shadow: 0 3px 12px #17202a0a; }
.section-toolbar p { margin-top: 5px; color: #69717b; font-size: 12px; }
.user-list { display: grid; gap: 12px; }
.user-card { border: 1px solid #e0e3e7; background: #fff; box-shadow: 0 3px 12px #17202a0a; }
.user-identity { display: flex; align-items: center; gap: 12px; padding: 16px 18px; border-bottom: 1px solid #eceef0; }
.user-avatar { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 38px; border-radius: 6px; background: #fce9e7; color: #b72e28; font-weight: 700; }
.user-identity>div:nth-child(2) { min-width: 0; }
.user-identity strong,.user-identity span { display: block; }
.user-identity>div:nth-child(2) span { margin-top: 3px; color: #777f89; font-size: 12px; }
.member-state { margin-left: auto; padding: 4px 8px; font-size: 11px; }
.member-state.active { background: #dff4e9; color: #137a4c; }
.member-state.inactive { background: #eef0f2; color: #69717b; }
.user-settings { display: grid; grid-template-columns: 180px 220px 140px; gap: 14px; padding: 16px 18px 4px; }
.user-settings label { margin: 0; }
.user-settings select,.user-settings input { width: 100%; min-height: 38px; border: 1px solid #d8dce1; border-radius: 5px; background: #fff; padding: 8px 10px; }
.active-toggle { display: flex!important; align-items: center; gap: 8px; padding-top: 22px; }
.active-toggle input { width: 18px; min-height: 18px; }
.permission-grid { display: grid; grid-template-columns: repeat(4,minmax(120px,1fr)); gap: 8px; padding: 12px 18px 16px; }
.permission-grid label { display: flex; align-items: center; gap: 8px; margin: 0; padding: 9px 10px; border: 1px solid #e2e5e8; background: #fafbfc; }
.permission-grid input { width: 16px; height: 16px; }
.user-card-actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 18px; border-top: 1px solid #eceef0; }
.user-card-actions span { color: #777f89; font-size: 12px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
fieldset { margin: 4px 0 12px; padding: 0; border: 0; }
legend { margin-bottom: 9px; font-size: 13px; }
#userDialog { width: min(680px,92vw); }
#userDialog .permission-grid { padding: 0; grid-template-columns: repeat(4,1fr); }
.video-service-strip { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 14px; padding: 16px 18px; border-left: 4px solid #c8322b; background: #fff; box-shadow: 0 3px 12px #17202a0a; }
.video-service-strip strong,.video-service-strip div span { display: block; }
.video-service-strip div span { margin-top: 4px; color: #69717b; font-size: 12px; }
.video-service-strip>span { padding: 5px 8px; background: #dff4e9; color: #137a4c; font-size: 12px; }
.video-job-list { display: grid; gap: 14px; }
.video-job { border: 1px solid #e0e3e7; background: #fff; box-shadow: 0 3px 12px #17202a0a; }
.video-job-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border-bottom: 1px solid #eceef0; }
.video-job-head div span,.video-job-head div strong { display: block; }
.video-job-head div span { margin-bottom: 4px; color: #777f89; font-size: 11px; }
.video-quality-gate { display: grid; grid-template-columns: 250px 1fr; gap: 18px; margin: 14px 18px 0; padding: 15px 16px; border: 1px solid #e1e6e7; border-left: 4px solid #c8322b; background: #f8fbfb; }
.video-quality-gate.passed { border-left-color: #168354; background: #f2faf6; }
.video-quality-gate>div:first-child span,.video-quality-gate>div:first-child strong,.video-quality-gate>div:first-child small { display: block; }
.video-quality-gate>div:first-child span { color: #a3312c; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.video-quality-gate>div:first-child strong { margin-top: 5px; font-size: 14px; }
.video-quality-gate>div:first-child small { margin-top: 5px; color: #6d7a7d; font-size: 10px; line-height: 1.5; }
.video-quality-checks { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }
.video-quality-checks span { display: grid; grid-template-columns: 20px 1fr auto; align-items: center; gap: 6px; min-height: 34px; padding: 6px 8px; border: 1px solid #ead8d6; background: #fff7f6; color: #87423d; font-size: 10px; }
.video-quality-checks span.passed { border-color: #cce5d9; background: #f4fbf7; color: #176843; }
.video-quality-checks b { display: grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: #c8322b; color: #fff; }
.video-quality-checks span.passed b { background: #168354; }
.video-quality-checks em { color: inherit; font-size: 9px; font-style: normal; font-weight: 700; }
.video-status { padding: 5px 8px; background: #eef0f2; color: #59616b; font-size: 11px; }
.status-ready_to_render,.status-rendering { background: #e1ebff; color: #245bbb; }
.status-ready,.status-published { background: #dff4e9; color: #137a4c; }
.status-failed { background: #fde6e4; color: #b42c26; }
.video-form-grid { display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: 14px; padding: 16px 18px; }
.video-form-grid section { padding: 14px; border: 1px solid #e3e6e9; background: #fafbfc; }
.video-form-grid h3 { margin: 0 0 12px; font-size: 14px; }
.video-form-grid label { margin-bottom: 10px; }
.video-form-grid input,.video-form-grid select,.video-form-grid textarea { width: 100%; border: 1px solid #d8dce1; border-radius: 5px; background: #fff; padding: 9px 10px; font: inherit; }
.video-script { grid-row: span 2; margin: 0; }
.video-script textarea { min-height: 330px; line-height: 1.65; }
.video-script small,.video-review-panel p { display: block; margin-top: 7px; color: #6d7a7d; font-size: 10px; line-height: 1.55; }
.video-review-panel { border-left: 3px solid #c8322b!important; }
.video-review-panel textarea { min-height: 76px; }
.compact-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.check-line { display: flex!important; align-items: center; gap: 8px; }
.check-line input { width: 16px; height: 16px; }
.compliance-panel { border-left: 3px solid #168354!important; }
.locked-check { margin-bottom: 8px; color: #137a4c; font-size: 12px; }
.compliance-panel p { color: #69717b; font-size: 11px; line-height: 1.6; }
.video-job-actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 18px; border-top: 1px solid #eceef0; }
.video-job-actions>div { display: flex; gap: 8px; }
.video-job-actions .material-state { margin: 0; }
.video-output-panel{display:grid;grid-template-columns:1fr 150px auto auto;align-items:end;gap:12px;padding:14px 18px;border-top:1px solid #e4e9eb;background:#f4f8f8}.video-output-panel>div strong,.video-output-panel>div span{display:block}.video-output-panel>div strong{font-size:12px}.video-output-panel>div span{margin-top:4px;color:#758489;font-size:9px}.video-output-panel label{display:grid;gap:5px;color:#697a80;font-size:9px}.video-output-panel input[type=number]{width:100%;min-height:36px}.video-upload-button{position:relative;display:inline-flex!important;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border:1px solid #cbd7da;background:#fff;color:#263b42!important;font-size:10px!important;cursor:pointer}.video-upload-button input{position:absolute;width:1px!important;height:1px;opacity:0}.video-output-panel a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid #d2dcdf;color:#176f72;font-size:10px;text-decoration:none}
.empty-panel { border: 1px solid #e0e3e7; background: #fff; }
.video-wizard{overflow:hidden}.video-wizard .video-production-guide{margin:0;padding:0;list-style:none;cursor:pointer}.video-wizard .video-production-guide li{transition:background .2s ease,color .2s ease,border-color .2s ease}.video-wizard .video-production-guide li.complete b{background:#168354;color:#fff}.video-wizard .video-production-guide li.complete{color:#176843}.video-wizard-body{min-height:430px;background:#f8faf9}.video-wizard-step{display:none;padding:22px}.video-wizard-step.active{display:block;animation:videoStepIn .24s ease}.wizard-heading{margin-bottom:18px;padding-left:13px;border-left:3px solid #ef493a}.wizard-heading span,.wizard-heading h3,.wizard-heading p{display:block}.wizard-heading span{color:#198176;font-size:9px;font-weight:800}.wizard-heading h3{margin:5px 0 0;font-size:19px}.wizard-heading p{margin:7px 0 0;color:#6f7d80;font-size:11px;line-height:1.6}.video-wizard .video-script{display:grid;gap:7px}.video-wizard .video-script textarea{min-height:210px;padding:14px;border:1px solid #d7e0e1;background:#fff;line-height:1.7;resize:vertical}.video-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.video-wizard label{display:grid;gap:6px;color:#526368;font-size:10px}.video-wizard input,.video-wizard select,.video-wizard textarea{width:100%;min-height:38px;padding:9px 10px;border:1px solid #d4dcde;border-radius:4px;background:#fff;font:inherit}.video-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.video-choice-grid:has(.video-choice:nth-of-type(3)){grid-template-columns:repeat(3,minmax(0,1fr))}.video-choice{position:relative;min-height:82px;padding:14px 16px;border:1px solid #d3dcde;background:#fff;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.video-choice:hover{border-color:#4e8d86;transform:translateY(-1px)}.video-choice.selected{border:2px solid #177d73;background:#eef8f6}.video-choice.selected:after{content:"已选择";position:absolute;right:10px;top:10px;color:#177d73;font-size:9px;font-weight:800}.video-choice strong,.video-choice span{display:block}.video-choice strong{font-size:14px}.video-choice span{max-width:75%;margin-top:6px;color:#738185;font-size:10px;line-height:1.5}.avatar-mode-panel,.voice-mode-panel{margin-top:16px}.video-wizard[data-avatar-mode="self"] .avatar-system-panel,.video-wizard[data-avatar-mode="system"] .avatar-self-panel{display:none}.video-wizard[data-voice-mode="system"] .voice-own-panel,.video-wizard:not([data-voice-mode="system"]) .voice-system-panel{display:none}.capture-intro{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}.capture-intro strong{font-size:13px}.capture-intro span{color:#748386;font-size:10px}.avatar-capture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.avatar-capture-slot{position:relative;overflow:hidden;min-height:245px;padding:13px;border:1px dashed #80aaa5;background:#102f2d;color:#fff;cursor:pointer;text-align:center}.avatar-capture-slot:before{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,transparent,rgba(101,211,197,.09),transparent);transform:translateX(-100%);animation:avatarScan 3.2s linear infinite}.avatar-capture-slot img{position:relative;z-index:1;width:100%;height:172px;object-fit:cover;object-position:center 22%;border:1px solid #42635f}.avatar-capture-slot .avatar-outline{position:relative;z-index:1;display:grid;width:112px;height:155px;margin:4px auto 13px;place-items:center;border:1px solid #59817b;border-radius:52% 52% 18% 18%;color:#70c5ba;font-size:28px;font-weight:800}.avatar-capture-slot strong,.avatar-capture-slot small{position:relative;z-index:1;display:block}.avatar-capture-slot strong{font-size:12px}.avatar-capture-slot small{margin-top:5px;color:#9eb9b5;font-size:9px}.avatar-capture-slot.complete{border-style:solid;border-color:#5bc7a2;background:#173d38}.avatar-capture-slot input,.video-upload-button input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important}.consent-line{margin-top:12px;padding:12px!important;border:1px solid #d8e2e1;background:#fff;color:#43585c!important;line-height:1.5}.video-wizard .check-line{display:flex;grid-template-columns:none;align-items:flex-start;gap:8px}.video-wizard .check-line input{width:16px;min-height:16px;margin-top:1px}.system-avatar-preview{position:relative;display:grid;grid-template-columns:68px 1fr;align-items:center;gap:15px;overflow:hidden;min-height:104px;padding:15px;color:#fff;background:#133a37}.system-avatar-preview>b{display:grid;width:60px;height:72px;place-items:center;border:1px solid #5c8c86;border-radius:48% 48% 18% 18%;font-size:20px}.system-avatar-preview strong,.system-avatar-preview small{display:block}.system-avatar-preview small{margin-top:5px;color:#a9c7c3;font-size:10px}.system-avatar-scan{position:absolute;top:0;bottom:0;width:1px;background:#66d8cc;box-shadow:0 0 12px #66d8cc;animation:systemScan 3.5s linear infinite}.system-avatar-preview+.video-form-row{margin-top:10px}.voice-training-script{display:grid;grid-template-columns:1fr auto;gap:8px 14px;padding:15px 17px;border-left:3px solid #1c8278;background:#edf6f4}.voice-training-script span{color:#17776f;font-size:10px;font-weight:800}.voice-training-script p{grid-column:1/2;margin:0;color:#304b4e;font-size:11px;line-height:1.75}.voice-training-script button{grid-column:2;grid-row:1/3;align-self:center;min-height:36px}.voice-capture-actions{display:flex;align-items:center;gap:9px;margin-top:12px}.voice-capture-actions>span{color:#718084;font-size:10px}.video-wizard audio{width:100%;height:40px;margin-top:10px}.voice-wave{display:flex;align-items:center;justify-content:center;gap:6px;height:96px;margin-bottom:12px;background:#143b38}.voice-wave i{width:4px;height:calc(var(--wave) * 8px);background:#65d3c5;animation:voiceWave 1.1s ease-in-out infinite alternate}.voice-wave i:nth-child(3n){background:#ef493a;animation-delay:.25s}.voice-wave i:nth-child(2n){animation-delay:.5s}.video-scene-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.video-scene{position:relative;min-height:116px;padding:13px;border:1px solid #d7dfe0;background:#fff;cursor:pointer;transition:border-color .2s ease,background .2s ease}.video-scene input{position:absolute;width:1px;height:1px;opacity:0}.video-scene>span,.video-scene strong,.video-scene small{display:block}.video-scene>span{color:#ef493a;font-size:10px;font-weight:800}.video-scene strong{margin-top:14px;color:#223c41;font-size:13px}.video-scene small{margin-top:6px;color:#7b898c;font-size:9px;line-height:1.5}.video-scene.selected{border:2px solid #177d73;background:#edf8f5}.video-scene.selected:after{content:"✓";position:absolute;right:12px;top:10px;display:grid;width:20px;height:20px;place-items:center;border-radius:50%;color:#fff;background:#177d73;font-size:11px}.scene-plan{display:flex;justify-content:space-between;gap:15px;margin-top:12px;padding:13px 15px;color:#fff;background:#183a37}.scene-plan span{color:#b6ccca;font-size:10px}.scene-plan b{color:#7ce0d5}.video-final-settings{display:grid;grid-template-columns:1fr 1fr;gap:12px}.video-final-settings>section,.video-wizard-step>.video-review-panel{padding:15px;border:1px solid #dce3e4;background:#fff}.video-final-settings h3{margin:0 0 12px}.video-final-settings label{margin-top:9px}.video-final-settings .compliance-panel{border-left:3px solid #168354}.video-final-settings .locked-check{margin-top:7px;color:#176843;font-size:10px}.video-final-settings p{color:#748286;font-size:10px;line-height:1.6}.video-wizard-step>.video-quality-gate{margin:0 0 12px}.video-wizard-step>.video-review-panel{margin-top:12px}.video-wizard-nav{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1px solid #dce3e4;background:#fff}.video-wizard-nav span{color:#758386;font-size:10px}.video-wizard-nav button{min-width:96px}.video-wizard-nav button[hidden]{visibility:hidden;display:block}.video-wizard .video-job-actions{background:#f6f9f8}.video-wizard .video-job-actions button:disabled{opacity:.45;cursor:not-allowed}
@keyframes videoStepIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes avatarScan{to{transform:translateX(100%)}}@keyframes systemScan{from{left:0}to{left:100%}}@keyframes voiceWave{from{transform:scaleY(.55);opacity:.5}to{transform:scaleY(1);opacity:1}}

@media (max-width: 800px) {
  .connection-strip { align-items: flex-start; flex-direction: column; }
  .connection-checks { justify-content: flex-start; }
  .video-service-strip,.video-job-head,.video-job-actions { align-items: flex-start; flex-direction: column; }
  .video-form-grid { grid-template-columns: 1fr; }
  .video-script { grid-row: auto; }
  .video-script textarea { min-height: 240px; }
  .video-job-actions>div { width: 100%; flex-wrap: wrap; }
  .video-output-panel { grid-template-columns:1fr 1fr; }
  .video-quality-gate { grid-template-columns: 1fr; }
  .video-quality-checks { grid-template-columns: 1fr; }
  .performance-close-loop { grid-template-columns: 1fr; }
  .video-choice-grid,.video-choice-grid:has(.video-choice:nth-of-type(3)),.avatar-capture-grid,.video-scene-grid,.video-final-settings,.video-form-row { grid-template-columns:1fr; }
  .video-wizard-body{min-height:0}.video-wizard-step{padding:16px}.avatar-capture-slot{min-height:220px}.voice-capture-actions,.capture-intro,.scene-plan{align-items:flex-start;flex-direction:column}.video-wizard-nav{position:sticky;bottom:0;z-index:3}.video-wizard .video-production-guide{overflow-x:auto}.video-wizard .video-production-guide li{min-width:128px}
}
.brand-registry{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:12px 0;padding:14px 16px;border:1px solid #e0e3e7;background:#fff}.brand-registry>div:first-child strong,.brand-registry>div:first-child span{display:block}.brand-registry>div:first-child strong{font-size:12px}.brand-registry>div:first-child span{margin-top:4px;color:#788188;font-size:10px}.brand-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.brand-chip{padding:6px 9px;border:0;border-left:3px solid #c8322b;border-radius:0;background:#f1f3f4;text-align:left;cursor:pointer}.brand-chip:hover{background:#e7f2f0}.brand-chip strong,.brand-chip span{display:block}.brand-chip strong{font-size:10px}.brand-chip span{margin-top:2px;color:#607176;font-size:8px}.brand-empty{color:#9a5b12;font-size:11px}.brand-boundary{padding:10px 12px;border-left:3px solid #2f715f;background:#edf6f2}.brand-boundary strong,.brand-boundary span{display:block}.brand-boundary strong{font-size:11px}.brand-boundary span{margin-top:3px;color:#637069;font-size:9px}
.quick-brand-context,.task-brand-selector{position:relative;display:grid;grid-template-columns:minmax(260px,1fr) minmax(210px,330px) auto;align-items:end;gap:14px;overflow:hidden;margin:14px 0;padding:14px 16px;border:1px solid #8bb7b1;border-left:4px solid #16766e;background:#f3f9f8}.quick-brand-context:after,.task-brand-selector:after{content:"";position:absolute;top:0;left:-18%;width:18%;height:2px;background:#ef493a;animation:brandSignal 4s linear infinite}.quick-brand-context>div span,.quick-brand-context>div strong,.quick-brand-context>div small,.task-brand-selector>div span,.task-brand-selector>div strong,.task-brand-selector>div small{display:block}.quick-brand-context>div span,.task-brand-selector>div span{color:#14756e;font-size:9px;font-weight:800}.quick-brand-context>div strong,.task-brand-selector>div strong{margin-top:4px;font-size:13px}.quick-brand-context>div small,.task-brand-selector>div small{margin-top:4px;color:#66777a;font-size:9px;line-height:1.5}.quick-brand-context label,.task-brand-selector label{display:grid;gap:5px;color:#526368;font-size:9px}.quick-brand-context select,.task-brand-selector select{min-height:38px;border:1px solid #cdd9da;background:#fff}.quick-brand-context button,.task-brand-selector button{min-height:38px}.task-brand-selector{grid-column:1/-1;margin:0}.task-brand-selector.optional{border-left-color:#9aa6a8}.brand-source-uploader{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:14px;padding:16px;border:1px dashed #5d9b94;background:#eef7f5}.brand-source-uploader>div:first-child span,.brand-source-uploader>div:first-child strong,.brand-source-uploader>div:first-child small{display:block}.brand-source-uploader>div:first-child span{color:#14756e;font-size:9px;font-weight:800}.brand-source-uploader>div:first-child strong{margin-top:4px;font-size:12px}.brand-source-uploader>div:first-child small{margin-top:5px;color:#697a7d;font-size:9px;line-height:1.5}.brand-source-uploader>label{align-self:center;padding:10px 14px;color:#fff;background:#174e4a;cursor:pointer}.brand-source-uploader input{position:absolute;width:1px;height:1px;opacity:0}.brand-source-list{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px;padding-top:10px;border-top:1px solid #cbdedb}.brand-source-list>span{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#fff;color:#556a6e;font-size:9px}.brand-source-list b{font-weight:700}.brand-source-list small{color:#89979a}.brand-ai-summary{margin-top:12px;padding:12px 14px;border-left:3px solid #ef493a;background:#fff4f1}.brand-ai-summary strong,.brand-ai-summary span{display:block}.brand-ai-summary strong{font-size:11px}.brand-ai-summary span{margin-top:4px;color:#855a51;font-size:9px}.video-job-head small{display:block;margin-top:5px;color:#738184;font-size:9px}@keyframes brandSignal{to{left:118%}}
.content-version-dialog{width:min(820px,calc(100vw - 32px));max-height:86vh}.content-version-shell{padding:22px;background:#f4f6f6}.content-version-head{align-items:flex-start;margin-bottom:14px;padding-bottom:16px;border-bottom:1px solid #dce3e4}.content-version-head span{display:block;margin-top:5px;color:#6f7e82;font-size:11px}.content-version-list{display:grid;gap:0;max-height:65vh;overflow:auto}.content-version-item{display:grid;grid-template-columns:42px 1fr;gap:12px}.content-version-marker{position:relative;display:flex;justify-content:center}.content-version-marker::after{content:"";position:absolute;top:32px;bottom:0;width:1px;background:#cad7d9}.content-version-item:last-child .content-version-marker::after{display:none}.content-version-marker span{position:relative;z-index:1;display:grid;place-items:center;width:28px;height:28px;color:#fff;background:#1d5f63;border-radius:4px;font-size:11px;font-weight:700}.content-version-document{margin-bottom:12px;padding:15px 16px;border:1px solid #dce3e4;background:#fff}.content-version-meta{display:flex;align-items:center;gap:8px}.content-version-meta strong{font-size:12px}.content-version-meta span{padding:3px 6px;color:#a82d28;background:#fbe9e7;font-size:9px}.content-version-meta time{margin-left:auto;color:#718084;font-size:10px}.content-version-document h3{margin:13px 0 8px;font-size:15px}.content-version-document details{border-top:1px solid #e7ebec;padding-top:9px}.content-version-document summary{color:#27686b;font-size:11px;cursor:pointer}.content-version-document p{margin-top:10px;color:#42565b;font-size:12px;line-height:1.7;white-space:pre-wrap}.content-version-document small{display:block;margin-top:9px;color:#b52f28}.content-version-loading{padding:42px;text-align:center;color:#718084;background:#fff}.content-version-loading.error{color:#b52f28}
.task-progress-dialog{width:min(760px,calc(100vw - 32px));max-height:90vh}.task-progress-shell{padding:22px;background:#f4f7f7}.task-progress-head{align-items:flex-start;margin-bottom:12px}.task-progress-head span{display:block;margin-top:5px;color:#6e7f83;font-size:11px}.task-progress-timeline{display:grid;max-height:43vh;overflow:auto;border-top:1px solid #d8e2e3;padding-top:13px}.task-progress-event{display:grid;grid-template-columns:24px 1fr;gap:10px}.task-progress-event>span{position:relative}.task-progress-event>span::before{content:"";position:absolute;top:6px;left:7px;z-index:1;width:9px;height:9px;border:4px solid #f4f7f7;border-radius:50%;background:#176f72}.task-progress-event>span::after{content:"";position:absolute;top:12px;bottom:-4px;left:11px;width:1px;background:#c5d4d6}.task-progress-event:last-child>span::after{display:none}.task-progress-event>div{margin-bottom:10px;padding:13px 14px;border:1px solid #dae3e4;background:#fff}.task-progress-event header{display:flex;align-items:center;justify-content:space-between;gap:12px}.task-progress-event header strong{color:#176f72;font-size:11px}.task-progress-event time{color:#7a898d;font-size:9px}.task-progress-event p{margin-top:10px;color:#3f555a;font-size:12px;line-height:1.65;white-space:pre-wrap}.task-progress-event small{display:block;margin-top:9px;padding-top:8px;border-top:1px solid #e8ecec;color:#7a898d;font-size:9px}.task-progress-editor{margin-top:14px;padding:15px;border-left:4px solid #c8322b;background:#fff}.task-progress-editor label{margin:0}.task-progress-editor textarea{width:100%;min-height:96px;margin-top:7px}.task-progress-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.task-progress-loading{padding:34px;text-align:center;color:#718084;background:#fff}.task-progress-loading.error{color:#b52f28}
@media(max-width:800px){.brand-registry{align-items:flex-start;flex-direction:column}.brand-list{justify-content:flex-start}.quick-brand-context,.task-brand-selector{grid-template-columns:1fr;align-items:stretch}.brand-source-uploader{grid-template-columns:1fr}}
@media(max-width:600px){.content-version-shell{padding:14px}.content-version-item{grid-template-columns:32px 1fr}.content-version-meta{align-items:flex-start;flex-wrap:wrap}.content-version-meta time{width:100%;margin-left:0}}
@media(max-width:600px){.task-progress-shell{padding:14px}.task-progress-actions{display:grid;grid-template-columns:1fr 1fr}.task-progress-event header{align-items:flex-start;flex-direction:column;gap:3px}}
