:root {
  color: #1c2430;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #fff;
}

html,
body,
#root {
  height: 100%;
  overflow: hidden;
  overflow-anchor: none;
}

html.public-page-scroll,
body.public-page-scroll,
body.public-page-scroll #root {
  min-height: 100%;
  height: auto;
  overflow-x: hidden;
  overflow-y: auto;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: #fff;
}

button,
input,
select {
  font: inherit;
}

button {
  cursor: pointer;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.app-shell {
  bottom: 0;
  height: 100vh;
  left: 0;
  min-height: 0;
  position: fixed;
  right: 0;
  top: 0;
  width: 100vw;
  display: grid;
  grid-template-columns: 260px 1fr;
  background: #fff;
  color: #1c2430;
  overflow: hidden;
  overflow-anchor: none;
}

.login-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background: #f3f5f9;
  padding: 28px;
}

.login-panel {
  width: min(880px, 100%);
  display: grid;
  gap: 16px;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #fff;
  padding: 28px;
  box-shadow: 0 18px 45px rgba(16, 24, 40, 0.08);
}

.private-login-panel {
  width: min(520px, 100%);
}

.private-login-form {
  display: grid;
  gap: 14px;
}

.private-login-form label {
  display: grid;
  gap: 6px;
  color: #344054;
  font-weight: 700;
}

.private-login-form input {
  width: 100%;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  padding: 12px;
  color: #111827;
  background: #fff;
}

.login-logo {
  width: min(280px, 72vw);
  margin-bottom: 4px;
}

.login-logo img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}

.brand-case {
  text-transform: none;
}

.login-panel h1 {
  margin: 0;
  font-size: 34px;
}

.login-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}

.login-type-grid {
  display: grid;
  gap: 14px;
}

.login-type-card {
  display: grid;
  gap: 12px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  padding: 16px;
  background: #fff;
}

.login-type-card > div:first-child {
  display: grid;
  gap: 4px;
}

.login-type-card span {
  color: #111827;
  font-weight: 800;
}

.login-type-card p {
  margin: 0;
  color: #667085;
  line-height: 1.45;
}

.login-account {
  display: grid;
  gap: 10px;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #f8fafc;
  color: #111827;
  padding: 16px;
  width: 100%;
  min-height: 150px;
  text-align: left;
  cursor: pointer;
}

.login-account:hover {
  border-color: #ef4444;
  box-shadow: 0 14px 30px rgba(239, 68, 68, 0.16);
}

.login-account strong {
  font-size: 18px;
}

.login-account small {
  color: #667085;
  line-height: 1.35;
}

.trial-signup-shell {
  align-items: start;
  background: #fff;
  min-height: 100vh;
  padding: 72px 20px;
  place-items: start center;
}

.trial-signup-panel {
  width: min(980px, 100%);
  align-self: start;
  justify-self: center;
  display: grid;
  grid-template-columns: minmax(280px, 0.85fr) minmax(380px, 1.15fr);
  gap: 0;
  align-items: stretch;
  border: 1px solid #e7e7e7;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(17, 17, 17, 0.08);
  overflow: hidden;
}

.trial-signup-copy {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 38px;
  background: #111;
  color: #fff;
  overflow: hidden;
  position: relative;
}

.trial-signup-copy::before {
  background: rgba(227, 27, 35, 0.34);
  border-radius: 50%;
  content: "";
  height: 220px;
  position: absolute;
  right: -80px;
  top: -80px;
  width: 220px;
}

.trial-signup-copy .login-logo {
  margin-bottom: 10px;
  min-height: 0;
  position: relative;
  width: 170px;
  z-index: 1;
}

.trial-signup-copy .login-logo {
  border-radius: 8px;
  background: #fff;
  display: grid;
  place-items: center;
  padding: 10px;
}

.trial-signup-copy .login-logo img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.trial-signup-copy .eyebrow {
  color: #e31b23;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0;
  margin: 0;
  position: relative;
  z-index: 1;
}

.trial-signup-copy h1 {
  max-width: 100%;
  color: #fff;
  font-size: clamp(30px, 3.2vw, 44px);
  font-weight: 800;
  line-height: 1.1;
  margin: 0;
  position: relative;
  z-index: 1;
}

.trial-signup-copy p {
  max-width: 100%;
  color: rgba(255, 255, 255, 0.76);
  font-size: 17px;
  line-height: 1.55;
  margin: 6px 0 0;
  position: relative;
  z-index: 1;
}

.trial-signup-stats {
  display: grid;
  gap: 12px;
  margin: 8px 0 0;
  position: relative;
  z-index: 1;
}

.trial-signup-stats div {
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #fff;
  padding: 0 0 0 17px;
  position: relative;
}

.trial-signup-stats div::before {
  width: 8px;
  height: 8px;
  background: #e31b23;
  border-radius: 50%;
  content: "";
  left: 0;
  position: absolute;
  top: 7px;
}

.trial-signup-stats span,
.trial-signup-watermark span,
.trial-signup-fine {
  color: #667085;
  font-size: 13px;
  line-height: 1.4;
}

.trial-signup-stats span,
.trial-signup-stats strong {
  display: block;
}

.trial-signup-stats strong {
  margin-top: 4px;
  color: #fff;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.55;
}

.trial-signup-watermark {
  display: none;
}

.trial-signup-watermark img {
  width: 68px;
  height: 68px;
  object-fit: contain;
  border-radius: 8px;
  background: #fff;
}

.trial-signup-form {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  padding: 38px;
}

.trial-signup-form > div,
.trial-signup-form .notice,
.trial-signup-form .trial-signup-terms,
.trial-signup-form .primary-action,
.trial-signup-form .trial-signup-fine,
.trial-signup-form .public-entry-links {
  grid-column: 1 / -1;
}

.trial-signup-form h2 {
  margin: 0;
  color: #111;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.15;
}

.trial-signup-form .quiet {
  margin: 0 0 10px;
  color: #666;
  font-size: 15px;
  line-height: 1.5;
}

.trial-signup-form label {
  align-content: start;
  align-self: start;
  display: grid;
  gap: 7px;
  color: #1f2937;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.35;
}

.trial-signup-form label[hidden] {
  display: none;
}

.trial-signup-form label > span {
  display: block;
  font-weight: 650;
  line-height: 1.35;
}

.trial-signup-form label em {
  color: #e31b23;
  font-style: normal;
  font-weight: 800;
}

.trial-field-help,
.trial-field-error {
  color: #777;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.35;
  margin: 0;
}

.trial-field-error {
  color: #b9141b;
  display: none;
  font-weight: 700;
}

.trial-signup-form label.has-email-error input {
  border-color: #b9141b;
}

.trial-signup-form label.has-email-error .trial-field-error,
.trial-signup-form label.has-password-error .trial-field-error,
.trial-signup-form label.has-password-length-error .trial-field-error,
.trial-signup-form label.has-website-error .trial-field-error {
  display: block;
}

.trial-signup-form label.has-password-error input,
.trial-signup-form label.has-password-length-error input,
.trial-signup-form label.has-website-error input {
  border-color: #b9141b;
}

.trial-signup-form input,
.trial-signup-form select {
  width: 100%;
  border: 1px solid #dcdcdc;
  border-radius: 8px;
  height: 48px;
  max-height: 48px;
  min-height: 48px;
  padding: 0 14px;
  color: #111;
  background: #fff;
  font-size: 15px;
  font-weight: 400;
}

.trial-signup-form .trial-signup-terms {
  align-items: start;
  color: #475467;
  display: grid;
  font-size: 13px;
  font-weight: 400;
  gap: 10px;
  grid-template-columns: 18px 1fr;
  line-height: 1.5;
}

.trial-signup-form .trial-signup-terms span,
.trial-signup-form .trial-signup-terms a,
.trial-signup-form .trial-signup-terms em {
  font-weight: 400;
  line-height: 1.5;
}

.trial-signup-form .trial-signup-terms input {
  height: 16px;
  margin-top: 2px;
  max-height: 16px;
  min-height: 16px;
  padding: 0;
  width: 16px;
}

.trial-signup-form .primary-action {
  background: #e31b23;
  border: 0;
  border-radius: 6px;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  margin-top: 2px;
  min-height: 52px;
  text-transform: uppercase;
}

.trial-signup-form .primary-action:disabled {
  background: #a9a9a9;
  color: #fff;
  opacity: 0.72;
  cursor: not-allowed;
}

.trial-signup-fine {
  margin: -2px 0 0;
  text-align: center;
}

.trial-signin-link {
  color: #b42318;
  font-weight: 800;
  text-decoration: none;
}

.trial-signin-link:hover {
  text-decoration: underline;
}

.public-entry-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.trial-plan-context {
  display: grid;
  gap: 4px;
}

.trial-plan-context strong {
  color: #111827;
}

.plan-grid > .recommended {
  border-color: #f59e0b;
  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.12);
}

.plan-grid > div > em {
  width: max-content;
  max-width: 100%;
  padding: 4px 8px;
  border-radius: 999px;
  background: #fff7ed;
  color: #c2410c;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.pricing-page {
  height: 100%;
  overflow: auto;
  background: #fff;
  color: #111827;
}

.pricing-nav {
  position: sticky;
  top: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px clamp(16px, 4vw, 52px);
  border-bottom: 1px solid #e4e7ec;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(12px);
}

.pricing-brand img {
  display: block;
  width: min(190px, 52vw);
  height: auto;
}

.pricing-nav nav,
.pricing-hero-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.pricing-nav a {
  color: #344054;
  font-weight: 800;
  text-decoration: none;
}

.pricing-main {
  display: grid;
  gap: 54px;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 52px 0 72px;
}

.pricing-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
  gap: 28px;
  align-items: center;
}

.pricing-hero h1,
.pricing-section-head h2 {
  margin: 0;
  color: #111827;
  font-weight: 900;
  line-height: 1.02;
}

.pricing-hero h1 {
  max-width: 820px;
  font-size: clamp(42px, 7vw, 78px);
}

.pricing-hero p,
.pricing-section-head p,
.pricing-plan p,
.pricing-included-grid p {
  color: #475467;
  line-height: 1.55;
}

.pricing-hero > div > p:not(.eyebrow) {
  max-width: 720px;
  margin: 22px 0 0;
  font-size: clamp(17px, 2vw, 21px);
}

.pricing-hero-actions {
  margin-top: 28px;
}

.pricing-hero-actions a,
.pricing-plan > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 8px;
  font-weight: 900;
  text-decoration: none;
}

.secondary-action {
  border: 1px solid #d9dee7;
  background: #fff;
  color: #111827;
}

.pricing-proof-panel,
.pricing-included-grid article,
.pricing-plan,
.pricing-credit-grid div {
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(16, 24, 40, 0.06);
}

.pricing-proof-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 18px;
  background: #f8fafc;
}

.pricing-proof-panel div,
.pricing-credit-grid div {
  display: grid;
  gap: 4px;
  padding: 16px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #fff;
}

.pricing-proof-panel span,
.pricing-proof-panel small,
.pricing-credit-grid span {
  color: #667085;
  font-size: 13px;
  line-height: 1.35;
}

.pricing-proof-panel strong,
.pricing-credit-grid strong {
  color: #111827;
  font-size: 22px;
  line-height: 1.1;
}

.pricing-plan-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.pricing-plan {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 22px;
}

.pricing-plan.popular {
  border: 2px solid #ef4444;
  box-shadow: 0 24px 55px rgba(239, 68, 68, 0.14);
}

.pricing-badge {
  width: max-content;
  padding: 7px 9px;
  border-radius: 6px;
  background: #ef4444;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.pricing-plan h2 {
  margin: 0;
  font-size: 28px;
  line-height: 1;
}

.pricing-plan strong {
  display: block;
  margin-top: 12px;
  color: #111827;
  font-size: 40px;
  line-height: 1;
}

.pricing-plan strong span {
  color: #667085;
  font-size: 15px;
}

.pricing-plan p {
  margin: 14px 0 0;
  font-size: 15px;
}

.pricing-plan ul {
  display: grid;
  gap: 10px;
  margin: 0 0 6px;
  padding: 0;
  list-style: none;
}

.pricing-plan li {
  position: relative;
  padding-left: 22px;
  color: #344054;
  font-size: 14px;
  line-height: 1.45;
}

.pricing-plan li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #ef4444;
}

.pricing-plan > a {
  margin-top: auto;
}

.pricing-section {
  display: grid;
  gap: 22px;
}

.pricing-section-head {
  display: grid;
  gap: 12px;
  max-width: 820px;
}

.pricing-section-head h2 {
  font-size: clamp(30px, 4vw, 50px);
}

.pricing-section-head p {
  margin: 0;
  font-size: 17px;
}

.pricing-included-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.pricing-included-grid article {
  padding: 18px;
}

.pricing-included-grid strong {
  color: #111827;
  font-size: 17px;
}

.pricing-included-grid p {
  margin: 10px 0 0;
  font-size: 14px;
}

.pricing-table-wrap {
  overflow-x: auto;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  box-shadow: 0 18px 45px rgba(16, 24, 40, 0.06);
}

.pricing-table {
  width: 100%;
  min-width: 880px;
  border-collapse: collapse;
  background: #fff;
}

.pricing-table th,
.pricing-table td {
  padding: 15px 16px;
  border-bottom: 1px solid #eef2f6;
  color: #344054;
  font-size: 14px;
  line-height: 1.35;
  text-align: center;
}

.pricing-table th {
  background: #111827;
  color: #fff;
  font-weight: 900;
}

.pricing-table th:first-child,
.pricing-table td:first-child {
  color: #111827;
  font-weight: 900;
  text-align: left;
}

.pricing-table tr:nth-child(even) td {
  background: #f8fafc;
}

.pricing-credit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.pricing-credit-section {
  padding: 28px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #f8fafc;
}

@media (max-width: 1050px) {
  .pricing-hero,
  .pricing-plan-grid,
  .pricing-included-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .pricing-nav {
    align-items: flex-start;
    flex-direction: column;
  }

  .pricing-main {
    gap: 38px;
    padding: 34px 0 52px;
  }

  .pricing-hero,
  .pricing-plan-grid,
  .pricing-included-grid,
  .pricing-credit-grid,
  .pricing-proof-panel {
    grid-template-columns: 1fr;
  }

  .pricing-hero h1 {
    font-size: 42px;
  }

  .pricing-credit-section {
    padding: 18px;
  }
}

.oem-home-hero,
.oem-model-library,
.oem-video-library,
.oem-rollout-panel {
  align-content: start;
}

.oem-model-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}

.oem-model-grid article,
.oem-rollout-list article {
  display: grid;
  gap: 14px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  padding: 16px;
  background: #fff;
}

.oem-model-grid article > div:first-child,
.oem-rollout-list article > div:first-child {
  display: grid;
  gap: 4px;
}

.oem-model-grid span,
.oem-rollout-list small {
  color: #667085;
}

.oem-model-grid strong,
.oem-rollout-list strong {
  color: #111827;
}

.oem-trim-list,
.oem-rollout-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.oem-trim-list span,
.oem-rollout-chips span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #d9dee7;
  border-radius: 999px;
  padding: 7px 10px;
  color: #344054;
  background: #f8fafc;
  font-size: 13px;
  font-weight: 700;
}

.oem-trim-list span.ready {
  border-color: #9bd2b1;
  color: #11633a;
  background: #ecfdf3;
}

.oem-trim-list span.draft {
  border-color: #f7d48a;
  color: #8a5a00;
  background: #fffaeb;
}

.oem-trim-list em {
  color: inherit;
  font-style: normal;
  opacity: 0.75;
}

.oem-rollout-list {
  display: grid;
  gap: 12px;
}

.sidebar {
  background: #fff;
  color: #1c2430;
  border-right: 1px solid #e4e7ec;
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-height: 0;
  overflow-y: auto;
}

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

.brand-home {
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0;
  text-align: left;
}

.brand-wordmark {
  display: block;
  width: 132px;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.brand small,
.sidebar-card small,
.quiet {
  color: #6b7280;
}

.brand small {
  display: block;
  color: #6b7280;
}

nav {
  display: grid;
  gap: 6px;
}

nav button,
.block-tabs button {
  border: 0;
  border-radius: 7px;
  padding: 11px 12px;
  text-align: left;
  background: transparent;
  color: inherit;
}

.workflow-progress {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
  gap: 6px;
}

.workflow-progress button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  padding: 8px;
  display: grid;
  gap: 5px;
  justify-items: start;
  min-height: 58px;
  font-size: 12px;
}

.workflow-progress span {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #eef1f5;
  display: grid;
  place-items: center;
  font-weight: 800;
}

.workflow-progress button.active {
  border-color: #ef4444;
  color: #b42318;
  background: #fff5f5;
}

.workflow-progress button.active span,
.workflow-progress button.done span {
  background: #ef4444;
  color: #fff;
}

.workflow-progress.customer-progress {
  grid-template-columns: repeat(auto-fit, minmax(86px, 1fr));
}

.workflow-progress.customer-progress button {
  min-height: 42px;
  align-content: center;
  justify-items: center;
  text-align: center;
  font-weight: 700;
}

.campaign-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
  gap: 8px;
}

.campaign-summary div {
  border: 1px solid #dfe5ee;
  border-radius: 8px;
  padding: 10px;
  background: #fff;
  min-width: 0;
}

.campaign-summary span {
  display: block;
  color: #667085;
  font-size: 11px;
}

.campaign-summary strong {
  display: block;
  margin-top: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 13px;
}

.campaign-summary .summary-date {
  overflow: visible;
  text-overflow: clip;
}

.campaign-summary .summary-detail {
  color: #667085;
}

.campaign-summary small {
  display: block;
  margin-top: 4px;
  color: #92400e;
  font-size: 11px;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.campaign-summary .summary-warning {
  border-color: #f6c76f;
  background: #fffbeb;
}

.campaign-summary .summary-ok {
  border-color: #b7e4c7;
  background: #ecfdf5;
}

.mode-banner {
  align-items: center;
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin: 12px 0;
  padding: 12px 14px;
}

.mode-banner.demo {
  background: #effaf3;
  border-color: #bde8c9;
  color: #166534;
}

.mode-banner.live {
  background: #fff7e6;
  border-color: #f4c56d;
  color: #92400e;
}

.mode-banner div {
  display: grid;
  gap: 3px;
}

.mode-banner span,
.mode-banner small {
  font-size: 12px;
}

.dashboard-mode-panel {
  margin-top: 16px;
}

.dashboard-mode-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dashboard-mode-grid button {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  display: grid;
  gap: 4px;
  padding: 12px;
  text-align: left;
}

.dashboard-mode-grid button.active {
  background: #fff5f5;
  border-color: #ef4444;
  color: #b42318;
}

.dashboard-mode-grid small {
  color: #667085;
  font-size: 12px;
}

.block-editor-mode-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  margin: 12px 0;
  padding: 12px;
}

.block-editor-mode-panel > div:first-child {
  display: grid;
  gap: 3px;
}

.block-editor-mode-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.block-editor-mode-grid button {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  display: grid;
  gap: 4px;
  padding: 10px;
  text-align: left;
}

.block-editor-mode-grid button.active {
  background: #fff5f5;
  border-color: #ef4444;
  color: #b42318;
}

.block-editor-mode-panel small,
.block-editor-mode-grid small {
  color: #667085;
  font-size: 12px;
}

.campaign-gate,
.generation-plan {
  display: grid;
  gap: 12px;
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  margin-bottom: 14px;
}

.campaign-gate.ready {
  border-color: #a7f3d0;
}

.campaign-gate.blocked {
  border-color: #fed7aa;
}

.campaign-access-panel {
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  display: grid;
  gap: 6px;
  margin: 0 0 12px;
  padding: 10px;
}

.campaign-access-panel.blocked {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
}

.campaign-access-panel span,
.campaign-access-panel strong {
  display: block;
}

.campaign-access-panel span {
  font-size: 12px;
  opacity: 0.82;
}

.campaign-access-panel p {
  font-size: 13px;
  margin: 0;
}

.vehicle-proof-panel {
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  padding: 10px;
}

.vehicle-proof-panel.blocked {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
}

.vehicle-proof-panel span,
.vehicle-proof-panel strong,
.vehicle-proof-panel p {
  display: block;
}

.vehicle-proof-panel span {
  font-size: 12px;
  opacity: 0.82;
}

.vehicle-proof-panel p {
  border-top: 1px solid rgba(30, 58, 138, 0.18);
  grid-column: 1 / -1;
  margin: 2px 0 0;
  padding-top: 8px;
}

.vehicle-proof-mini {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 7px;
}

.vehicle-proof-mini span {
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 11px;
  font-weight: 800;
  padding: 4px 7px;
}

.vehicle-proof-mini.blocked span {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
}

.gate-grid,
.plan-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.plan-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gate-grid div,
.plan-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.gate-grid span,
.plan-grid span {
  display: block;
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.gate-grid strong,
.plan-grid strong {
  display: block;
  margin-top: 3px;
}

.plan-grid small {
  display: block;
  color: #667085;
  margin-top: 5px;
}

.gate-list {
  display: grid;
  gap: 7px;
}

.gate-list span {
  border-radius: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 700;
}

.gate-list.blockers span {
  border: 1px solid #fed7aa;
  background: #fff7ed;
  color: #c2410c;
}

.gate-list.warnings span {
  border: 1px solid #fde68a;
  background: #fffbeb;
  color: #92400e;
}

.angle-preset-card {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
  margin: 10px 0;
}

.angle-preset-card span,
.angle-preset-card strong,
.angle-preset-card small {
  display: block;
}

.angle-preset-card span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.angle-preset-card small {
  color: #667085;
  margin-top: 4px;
}

.scene-plan-usage-card {
  display: grid;
  gap: 12px;
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 14px;
  margin: 10px 0;
}

.scene-plan-usage-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.scene-plan-usage-head span,
.scene-plan-usage-head strong,
.scene-plan-usage-head small {
  display: block;
}

.scene-plan-usage-head span,
.scene-plan-usage-stats span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.scene-plan-usage-head small {
  color: #667085;
  margin-top: 4px;
}

.variation-pill {
  white-space: nowrap;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 13px;
  font-weight: 800;
  padding: 7px 10px;
}

.scene-plan-angle-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.scene-plan-angle-list small {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #ffffff;
  color: #475569;
  display: grid;
  gap: 4px;
  padding: 8px;
  user-select: none;
}

.scene-plan-angle-list strong {
  display: block;
  color: #111827;
}

.scene-plan-angle-list span {
  color: #344054;
  display: block;
  font-size: 13px;
}

.scene-plan-angle-list em {
  color: #64748b;
  display: block;
  font-size: 12px;
  font-style: normal;
}

.scene-plan-angle-list b {
  align-self: start;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.1;
  padding: 5px 8px;
  width: fit-content;
}

.scene-plan-angle-list small.photo-interior {
  border-color: #bfdbfe;
  background: #f8fbff;
}

.scene-plan-angle-list small.photo-interior b {
  border-color: #bae6fd;
  background: #e0f2fe;
  color: #075985;
}

.scene-plan-usage-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.scene-plan-usage-stats div {
  border-top: 1px solid #e2e8f0;
  padding-top: 10px;
}

.scene-plan-usage-stats strong {
  display: block;
  margin-top: 2px;
  font-size: 18px;
}

.scene-plan-formula {
  color: #667085;
  font-size: 12px;
}

.setup-reference-summary,
.customer-production-list,
.dealer-setup-panel {
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 14px;
}

.setup-reference-summary,
.dealer-setup-panel {
  display: grid;
  gap: 12px;
  margin: 12px 0;
}

.setup-reference-summary span,
.setup-reference-summary strong,
.setup-reference-summary small,
.dealer-setup-panel span,
.dealer-setup-panel strong,
.dealer-setup-panel small {
  display: block;
}

.setup-reference-summary span,
.dealer-setup-panel span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.dealer-setup-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.dealer-setup-result {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.dealer-setup-result > div {
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #fff;
  padding: 10px 12px;
}

.setup-reference-summary details {
  border-top: 1px solid #e4e7ec;
  padding-top: 10px;
}

.reference-jump-button {
  justify-self: start;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #172033;
  font-weight: 800;
  padding: 9px 12px;
  text-decoration: none;
}

.reference-jump-button:hover {
  border-color: #ef4444;
  color: #ef4444;
}

.setup-save-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 12px 0;
}

.secondary-action.setup-save-button {
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: #172033;
  font-weight: 800;
  padding: 10px 13px;
}

.secondary-action.setup-save-button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.setup-save-status {
  color: #667085;
  font-size: 13px;
  font-weight: 700;
}

.setup-save-status.saved {
  color: #047857;
}

.setup-save-status.pending,
.setup-save-status.saving {
  color: #92400e;
}

.setup-save-status.error {
  color: #b42318;
}

.people-cast-panel {
  border: 1px solid #d9e5f7;
  border-radius: 10px;
  background: #f8fbff;
  padding: 14px 16px;
  margin-top: 14px;
}

.people-cast-grid {
  display: grid;
  gap: 10px;
}

.people-cast-row {
  display: grid;
  grid-template-columns: minmax(150px, 0.4fr) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.people-cast-row strong,
.people-cast-row span,
.people-cast-row small {
  display: block;
}

.people-cast-row span,
.people-cast-row small {
  color: #667085;
  font-size: 13px;
}

.people-cast-row textarea {
  width: 100%;
  min-height: 74px;
  resize: vertical;
}

.people-cast-row.is-disabled {
  background: #f8fafc;
}

.people-cast-row.is-disabled textarea {
  color: #667085;
  background: #f2f4f7;
  resize: none;
}

.people-demographic-control {
  display: grid;
  gap: 8px;
}

.people-demographic-control.is-disabled {
  color: #667085;
  background: #f2f4f7;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  padding: 12px;
}

.person-demographic-row {
  display: grid;
  grid-template-columns: minmax(70px, .55fr) minmax(120px, 1fr) minmax(90px, .75fr) minmax(80px, .6fr) minmax(100px, .8fr);
  align-items: center;
  gap: 8px;
}

.person-demographic-row span,
.person-demographic-row strong {
  font-size: 13px;
}

.person-demographic-row select {
  min-height: 38px;
}

.people-demographic-preview {
  color: #667085;
  font-size: 12px;
}

.setup-flow-panel {
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #f8fafc;
  display: grid;
  gap: 10px;
  margin: 12px 0 16px;
  padding: 13px;
}

.setup-flow-head {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
}

.setup-flow-panel > strong {
  color: #172033;
  font-size: 15px;
}

.setup-flow-head strong {
  color: #172033;
  font-size: 14px;
}

.setup-flow-panel p {
  color: #667085;
  margin: 0;
}

.setup-flow-steps {
  display: grid;
  gap: 8px;
}

.setup-flow-step {
  align-items: start;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 2px 9px;
  grid-template-columns: 28px 1fr;
  padding: 9px;
}

.setup-flow-steps b {
  align-items: center;
  background: #ef4444;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.setup-flow-steps em {
  color: #172033;
  font-style: normal;
  font-weight: 800;
}

.setup-flow-step p {
  color: #667085;
  line-height: 1.35;
  margin: 2px 0 0;
}

.compact-creation-summary {
  gap: 8px;
  margin: 8px 0 12px;
  padding: 10px;
}

.compact-creation-summary .scene-visual-mode {
  padding: 8px 10px;
}

.compact-creation-summary .setup-flow-steps {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.compact-creation-summary .setup-flow-step {
  gap: 4px 8px;
  grid-template-columns: 22px 1fr;
  min-height: 74px;
  padding: 8px;
}

.compact-creation-summary .setup-flow-steps b {
  font-size: 11px;
  height: 20px;
  width: 20px;
}

.compact-creation-summary .setup-flow-steps em {
  font-size: 14px;
}

.virtual-reference-package {
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  display: grid;
  gap: 9px;
  padding: 12px;
}

.virtual-reference-package p {
  margin: 0;
}

.virtual-reference-package div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.virtual-reference-package span {
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: #fff;
  color: #1e3a8a;
  font-size: 12px;
  padding: 5px 8px;
}

.customer-production-workspace .customer-clip-action-panel {
  margin-top: 14px;
}

.simplified-audio-controls {
  margin: 14px 0;
}

nav button.active,
.block-tabs button.active {
  background: #ef4444;
  color: #fff;
}

.sidebar-card {
  margin-top: auto;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  padding: 14px;
  display: grid;
  gap: 6px;
}

.sidebar-card strong {
  font-size: 28px;
}

.role-card-title {
  display: block;
  margin: 5px 0;
  font-size: 18px !important;
  line-height: 1.15;
}

main {
  background: #fff;
  padding: 26px;
  display: grid;
  gap: 18px;
  align-content: start;
  min-width: 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overflow-anchor: none;
}

.topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.eyebrow {
  margin: 0 0 4px;
  color: #ef4444;
  font-size: 12px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
}

.topbar-brand-home {
  appearance: none;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: block;
  margin: 0 0 4px;
  padding: 0;
}

.topbar-brand-home img {
  display: block;
  width: 112px;
  height: auto;
  object-fit: contain;
}

.topbar-brand-home:hover {
  opacity: 0.82;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1 {
  margin-bottom: 0;
  font-size: 28px;
}

.topbar-title-row {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

h2 {
  font-size: 20px;
}

h3 {
  font-size: 14px;
  margin-bottom: 10px;
}

.status-pill,
.notice,
.theme-toggle {
  border-radius: 8px;
  background: #fff;
  border: 1px solid #d9dee7;
  padding: 10px 12px;
}

.validation-panel {
  border: 1px solid #b7e4c7;
  border-radius: 8px;
  background: #ecfdf5;
  color: #065f46;
  padding: 12px;
  margin-bottom: 12px;
}

.validation-panel.has-warnings {
  border-color: #f6c76f;
  background: #fffbeb;
  color: #92400e;
}

.validation-panel.has-stops {
  border-color: #fca5a5;
  background: #fef2f2;
  color: #991b1b;
}

.validation-panel ul,
.validation-panel p {
  margin: 8px 0 0;
  padding-left: 18px;
  font-size: 13px;
}

.preflight-grid {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.preflight-item {
  display: grid;
  grid-template-columns: 72px 1fr auto;
  gap: 8px;
  align-items: start;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.65);
  padding: 8px 10px;
  font-size: 13px;
  line-height: 1.35;
}

.preflight-item span {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0;
}

.preflight-item div {
  display: grid;
  gap: 2px;
}

.preflight-item small {
  color: inherit;
  opacity: 0.78;
}

.mini-link {
  align-self: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.55);
  color: inherit;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  padding: 5px 10px;
  white-space: nowrap;
}

.mini-link:hover {
  background: rgba(255, 255, 255, 0.9);
}

.preflight-item.check {
  border-color: #a7f3d0;
  background: #f0fdf4;
  color: #047857;
}

.preflight-item.warning {
  border-color: #fcd34d;
  background: #fffbeb;
  color: #92400e;
}

.preflight-item.stop {
  border-color: #fca5a5;
  background: #fff1f2;
  color: #991b1b;
}

.customer-reference-why {
  display: grid;
  gap: 4px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  padding: 10px 12px;
  margin: 10px 0 12px;
}

.customer-reference-why.warning {
  border-color: #fcd34d;
  background: #fffbeb;
  color: #92400e;
}

.customer-reference-why strong {
  font-size: 14px;
}

.customer-reference-why span {
  color: inherit;
  font-size: 13px;
  line-height: 1.4;
  opacity: 0.88;
}

.customer-launch-panel.compact {
  margin: 12px 0;
}

.customer-launch-panel.is-compact {
  padding: 12px;
}

.customer-launch-panel.is-compact .section-head {
  align-items: center;
}

.customer-launch-panel.is-compact h2 {
  font-size: 16px;
  margin-bottom: 3px;
}

.customer-launch-panel.is-compact .section-head p {
  font-size: 13px;
}

.dealer-home-metrics-panel {
  margin-bottom: 16px;
}

.dealer-home-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
}

.dealer-home-metrics div {
  display: grid;
  gap: 5px;
  min-height: 88px;
  align-content: center;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
}

.dealer-home-metrics span,
.dealer-home-metrics small {
  color: #64748b;
  font-size: 13px;
}

.dealer-home-metrics strong {
  color: #111827;
  font-size: 26px;
  line-height: 1;
}

.content-plan-panel {
  display: grid;
  gap: 16px;
  margin-bottom: 16px;
}

.content-plan-summary,
.content-plan-months {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.content-plan-summary div,
.content-plan-months article,
.content-coverage-list article {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.content-plan-summary span,
.content-plan-summary small,
.content-plan-months span,
.content-plan-months small,
.content-coverage-list small {
  color: #64748b;
}

.content-plan-summary span,
.content-plan-months span {
  display: block;
  font-size: 12px;
  font-weight: 800;
}

.content-plan-summary strong {
  display: block;
  color: #111827;
  font-size: 24px;
}

.content-plan-months article {
  display: grid;
  gap: 8px;
}

.content-plan-months article > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: baseline;
}

.content-plan-bar {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e2e8f0;
}

.content-plan-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #ef4444;
}

.content-coverage-list {
  display: grid;
  gap: 10px;
}

.content-coverage-list article {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
}

.content-coverage-list strong,
.content-coverage-list small {
  display: block;
}

.content-coverage-list span {
  white-space: nowrap;
  font-weight: 800;
}

.dealer-home-library-panel {
  margin-bottom: 16px;
}

.performance-library-panel {
  margin-bottom: 16px;
}

.performance-library-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.performance-library-stats div {
  display: grid;
  gap: 5px;
  align-content: center;
  min-height: 86px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 13px;
}

.performance-library-stats span,
.performance-library-stats small {
  color: #64748b;
  font-size: 13px;
}

.performance-library-stats strong {
  color: #111827;
  font-size: 24px;
  line-height: 1;
}

.performance-record-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}

.performance-record-grid article {
  display: grid;
  gap: 12px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
}

.performance-record-grid article.winner {
  border-color: #86efac;
  background: #f0fdf4;
}

.performance-record-grid strong,
.performance-record-grid small {
  display: block;
}

.performance-record-grid small {
  color: #64748b;
  margin-top: 4px;
}

.performance-metrics-inline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.performance-metrics-inline span,
.performance-permission-row {
  border: 1px solid #e5e9f0;
  border-radius: 7px;
  background: rgba(248, 250, 252, 0.86);
  color: #64748b;
  font-size: 12px;
  padding: 8px;
}

.performance-metrics-inline strong {
  color: #111827;
  font-size: 16px;
}

.performance-permission-row {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.performance-permission-row span {
  color: #111827;
  font-weight: 800;
}

.dealer-home-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 12px;
}

.dealer-home-library-grid article {
  display: grid;
  gap: 12px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
}

.dealer-home-library-grid strong,
.dealer-home-library-grid small {
  display: block;
}

.dealer-home-library-grid small {
  color: #64748b;
  margin-top: 4px;
}

.vehicle-library-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.vehicle-library-stats span {
  border: 1px solid #e5e9f0;
  border-radius: 7px;
  background: #f8fafc;
  color: #64748b;
  font-size: 13px;
  padding: 9px;
}

.vehicle-library-stats strong {
  color: #111827;
  font-size: 18px;
}

.vehicle-library-actions {
  display: flex;
  gap: 8px;
}

.vehicle-library-actions button,
.dealer-home-library-panel .secondary-action {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  font-weight: 800;
  padding: 9px 11px;
}

.dealer-home-library-panel .primary-action {
  background: #ef4444;
  border-color: #ef4444;
  color: #fff;
}

.dealer-home-library-panel .primary-action:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.dealer-home-video-list {
  display: grid;
  gap: 10px;
}

.dealer-home-batch-list {
  display: grid;
  gap: 10px;
}

.batch-dashboard-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 10px;
  margin: 12px 0 14px;
}

.batch-dashboard-summary span {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  color: #64748b;
  font-size: 13px;
  padding: 10px 12px;
}

.batch-dashboard-summary strong {
  display: block;
  color: #111827;
  font-size: 22px;
  line-height: 1.1;
}

.batch-dashboard-next-action {
  align-items: center;
  background: #f8fafc;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin: 0 0 12px;
  padding: 12px;
}

.batch-dashboard-next-action div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.batch-dashboard-next-action span,
.batch-dashboard-next-action small {
  color: #667085;
  font-size: 12px;
}

.batch-dashboard-next-action strong {
  color: #111827;
  font-size: 16px;
}

.batch-dashboard-next-action.ready {
  background: #ecfdf3;
  border-color: #86efac;
}

.batch-dashboard-next-action.ready span,
.batch-dashboard-next-action.ready strong {
  color: #047857;
}

.batch-dashboard-next-action.is-running {
  background: #eff6ff;
  border-color: #bfdbfe;
}

.batch-dashboard-next-action.is-running span,
.batch-dashboard-next-action.is-running strong {
  color: #1d4ed8;
}

.batch-dashboard-next-action.needs-attention {
  background: #fff7ed;
  border-color: #fdba74;
}

.batch-dashboard-next-action.needs-attention span,
.batch-dashboard-next-action.needs-attention strong {
  color: #c2410c;
}

.batch-dashboard-priority-queue {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
  padding: 12px;
}

.batch-dashboard-delivery-queue {
  border: 1px solid #bde8c9;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
  padding: 12px;
}

.batch-dashboard-ready-final-queue {
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
  padding: 12px;
}

.priority-queue-head {
  display: grid;
  gap: 4px;
}

.priority-queue-head span,
.priority-queue-list small {
  color: #667085;
  font-size: 12px;
}

.priority-queue-list {
  display: grid;
  gap: 8px;
}

.priority-queue-list article {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  padding: 10px;
}

.priority-queue-list article > span {
  align-items: center;
  background: #f1f5f9;
  border-radius: 8px;
  color: #344054;
  display: flex;
  font-size: 12px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
}

.priority-queue-list article > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.delivery-queue-actions {
  align-items: center;
  display: flex;
  gap: 8px;
}

.delivery-queue-actions a {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  color: #1d4ed8;
  font-size: 13px;
  font-weight: 800;
  padding: 9px 12px;
  text-decoration: none;
}

.batch-dashboard-summary .is-running {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}

.batch-dashboard-summary .ready {
  border-color: #86efac;
  background: #ecfdf3;
  color: #047857;
}

.batch-dashboard-summary .needs-attention {
  border-color: #fdba74;
  background: #fff7ed;
  color: #c2410c;
}

.batch-report-menu {
  position: relative;
}

.batch-report-menu summary {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  font-weight: 800;
  list-style: none;
  padding: 11px 14px;
}

.batch-report-menu summary::-webkit-details-marker {
  display: none;
}

.batch-report-menu summary::after {
  content: "v";
  margin-left: 8px;
}

.batch-report-menu[open] summary::after {
  content: "^";
}

.batch-report-menu > div {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 20;
  display: grid;
  gap: 12px;
  min-width: 310px;
  max-height: min(78vh, 720px);
  overflow-y: auto;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.14);
  padding: 10px;
}

.batch-report-section {
  display: grid;
  gap: 7px;
  padding-bottom: 10px;
  border-bottom: 1px solid #edf2f7;
}

.batch-report-section:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.batch-report-section > span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.batch-report-menu button {
  justify-content: flex-start;
  width: 100%;
}

.batch-row-tools > div {
  min-width: 230px;
}

.dealer-home-batch-list article {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(280px, 1fr) auto;
  gap: 14px;
  align-items: center;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 12px 14px;
}

.dealer-home-batch-list span,
.dealer-home-batch-list small {
  display: block;
  color: #64748b;
  font-size: 13px;
}

.dealer-home-batch-list strong {
  display: block;
  color: #111827;
}

.batch-progress-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(72px, 1fr));
  gap: 8px;
}

.batch-progress-metrics span {
  border: 1px solid #e2e8f0;
  border-radius: 7px;
  background: #f8fafc;
  padding: 8px 9px;
}

.batch-progress-metrics .ready {
  background: #ecfdf3;
  border-color: #86efac;
  color: #047857;
}

.batch-progress-metrics .needs-attention {
  background: #fff7ed;
  border-color: #fdba74;
  color: #c2410c;
}

.batch-progress-metrics strong {
  display: inline;
  margin-right: 3px;
}

.batch-delivery-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  grid-column: 1 / -1;
}

.batch-ready-final-links {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  grid-column: 1 / -1;
}

.batch-delivery-links small {
  flex-basis: 100%;
  font-weight: 700;
  color: #475569;
}

.batch-ready-final-links small {
  color: #475569;
  flex-basis: 100%;
  font-weight: 700;
}

.batch-ready-final-links button,
.batch-ready-final-links span {
  background: #ecfdf3;
  border: 1px solid #86efac;
  border-radius: 7px;
  color: #047857;
  font-size: 13px;
  font-weight: 800;
  padding: 7px 9px;
}

.batch-delivery-links a,
.batch-delivery-links > span {
  border: 1px solid #bbf7d0;
  border-radius: 7px;
  background: #f0fdf4;
  color: #047857;
  font-size: 13px;
  font-weight: 700;
  padding: 7px 9px;
  text-decoration: none;
}

.batch-delivery-link-pair {
  align-items: center;
  display: inline-flex;
  gap: 6px;
}

.batch-delivery-link-pair button {
  border-color: #bbf7d0;
  background: #ffffff;
  color: #047857;
  font-size: 12px;
  padding: 6px 8px;
}

.dealer-home-video-list article {
  display: grid;
  grid-template-columns: 1fr 120px auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 12px 14px;
}

.dealer-home-video-list span,
.dealer-home-video-list small {
  display: block;
  color: #64748b;
  font-size: 13px;
}

.dealer-home-video-list strong {
  display: block;
  color: #111827;
}

.dealer-home-video-list button {
  justify-self: end;
}

.video-row-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.video-row-actions button {
  justify-self: auto;
}

.ghost-danger {
  border-color: #fecaca;
  color: #b91c1c;
  background: #fff;
}

.ghost-danger:hover {
  border-color: #f87171;
  background: #fff1f2;
}

.new-vehicle-inline-panel {
  display: grid;
  gap: 10px;
  margin-top: 16px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  padding: 14px;
}

.new-vehicle-inline-panel h3 {
  font-size: 16px;
  margin: 0;
}

.auto-environment-plan {
  display: grid;
  gap: 8px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
}

.auto-environment-plan > span {
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
}

.auto-environment-plan p {
  color: #64748b;
  font-size: 13px;
  line-height: 1.4;
  margin: 0;
}

.auto-environment-plan div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.auto-environment-plan small {
  border: 1px solid #dbe3ef;
  border-radius: 999px;
  background: #fff;
  color: #475569;
  padding: 6px 9px;
}

.auto-environment-plan strong {
  color: #111827;
}

.block-environment-panel {
  display: grid;
  grid-template-columns: 1fr minmax(220px, 320px) auto;
  gap: 10px;
  align-items: end;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
  margin: 12px 0;
}

.block-environment-panel strong,
.block-environment-panel small {
  display: block;
}

.block-environment-panel small {
  color: #64748b;
  line-height: 1.35;
  margin-top: 3px;
}

.customer-launch-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.customer-launch-steps button {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 6px 10px;
  align-items: start;
  text-align: left;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  padding: 12px;
  min-height: 92px;
}

.customer-launch-steps button span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #eef2f7;
  color: #475569;
  font-size: 12px;
  font-weight: 800;
}

.customer-launch-steps button strong {
  font-size: 14px;
}

.customer-launch-steps button small {
  grid-column: 2;
  color: #64748b;
  line-height: 1.35;
}

.customer-launch-steps button.ready {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.customer-launch-steps button.ready span {
  background: #10b981;
  color: #fff;
}

.customer-launch-steps button.todo {
  border-color: #fecaca;
  background: #fff7f7;
}

.customer-launch-steps button.todo span {
  background: #ef4444;
  color: #fff;
}

.customer-launch-panel.is-compact .customer-launch-steps {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.customer-launch-panel.is-compact .customer-launch-steps button {
  min-height: 72px;
  padding: 10px;
}

.customer-launch-panel.is-compact .customer-launch-steps button strong {
  font-size: 13px;
}

.customer-launch-panel.is-compact .customer-launch-steps button small {
  font-size: 12px;
}

.wizard-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.wizard-grid .span-two {
  grid-column: 1 / -1;
}

.wizard-options {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.rooftop-wizard-panel .preview-admin-panel {
  margin-top: 14px;
}

.seat-list {
  display: grid;
  gap: 10px;
}

.seat-list article {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 8px;
  padding: 10px 12px;
}

.seat-list article.inactive {
  opacity: 0.64;
}

.seat-list article div {
  display: grid;
  gap: 4px;
}

.seat-list article div:last-child {
  justify-items: end;
}

.seat-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.seat-form .span-two {
  grid-column: 1 / -1;
}

.credential-entry-card {
  background: #f8fafc;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 14px;
}

.credential-form-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.credential-form-grid label {
  display: grid;
  gap: 6px;
}

.status-good {
  color: #047857;
}

.status-bad {
  color: #b42318;
}

.status-warn {
  color: #b45309;
}

.subscription-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  padding: 7px 10px;
  white-space: nowrap;
}

.subscription-badge.trial {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
}

.subscription-badge.active {
  background: #f0fdf4;
  border-color: #bbf7d0;
  color: #047857;
}

.subscription-badge.past-due {
  background: #fffbeb;
  border-color: #fcd34d;
  color: #92400e;
}

.subscription-badge.trial-expired {
  background: #fff1f2;
  border-color: #fda4af;
  color: #9f1239;
}

.subscription-badge.paused,
.subscription-badge.cancelled {
  background: #fff1f2;
  border-color: #fda4af;
  color: #9f1239;
}

.notice.success {
  border-color: #a7f3d0;
  background: #f0fdf4;
  color: #047857;
}

.notice.warning {
  border-color: #fcd34d;
  background: #fffbeb;
  color: #92400e;
}

.workflow-requirement-notice {
  display: grid;
  gap: 8px;
  margin-bottom: 14px;
}

.workflow-requirement-notice p {
  margin: 0;
}

.workflow-requirement-list {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.workflow-requirement-item {
  border: 1px solid rgba(146, 64, 14, 0.25);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.72);
  color: inherit;
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  text-align: left;
}

.workflow-requirement-item span {
  font-weight: 800;
}

.workflow-requirement-item small {
  color: #6b4b16;
}

.workflow-requirement-item em {
  color: #b45309;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  margin-top: 4px;
}

.workflow-requirement-item.readonly {
  cursor: default;
}

.workflow-requirement-item.readonly em {
  color: #047857;
}

.approval-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 12px 0;
}

.approval-controls span {
  width: 100%;
  color: #475467;
  font-size: 13px;
}

.approval-controls small {
  width: 100%;
  color: #667085;
  font-size: 12px;
}

.approval-controls.inline {
  margin-bottom: 0;
}

.approval-controls.inline span {
  width: auto;
}

.approval-history-panel,
.role-workflow-panel,
.workflow-command-panel,
.approval-queue-panel,
.project-health-panel,
.live-safety-panel,
.launch-checklist-panel,
.provider-readiness-panel,
.generation-readiness-panel,
.qa-checklist-panel,
.support-diagnostics-panel,
.support-playbook-panel,
.campaign-exception-queue-panel,
.production-brief-panel,
.spend-authorization-panel,
.spend-approval-panel,
.campaign-paid-queue-panel,
.production-start-gate-panel,
.provider-spend-reconciliation-panel,
.operating-guide-panel,
.global-job-center {
  margin-top: 16px;
}

.safety-status {
  border: 1px solid #d0d7e2;
  border-radius: 8px;
  display: grid;
  gap: 2px;
  min-width: 170px;
  padding: 10px 12px;
  text-align: right;
}

.safety-status span,
.safety-actions small,
.override-log small {
  color: #667085;
  font-size: 12px;
}

.safety-status strong {
  font-size: 14px;
}

.safety-status.check {
  background: #effaf3;
  border-color: #bde8c9;
  color: #166534;
}

.safety-status.warning {
  background: #fffbeb;
  border-color: #f4c152;
  color: #92400e;
}

.safety-status.stop {
  background: #fff1f2;
  border-color: #fecdd3;
  color: #991b1b;
}

.safety-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.override-log {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.override-log h3 {
  font-size: 14px;
  margin: 0;
}

.override-log article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 3px;
  padding: 10px;
}

.override-log span {
  color: #344054;
  font-size: 13px;
}

.launch-checklist-grid,
.qa-checklist-grid,
.provider-readiness-grid,
.support-diagnostics-grid,
.bulk-run-summary,
.demo-script-grid,
.operating-guide-list {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.launch-checklist-grid button,
.qa-checklist-grid button,
.provider-readiness-grid article,
.support-diagnostics-grid article,
.bulk-run-summary div,
.demo-script-grid article,
.operating-guide-list article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 11px;
  text-align: left;
}

.launch-checklist-grid button.ready,
.qa-checklist-grid button.ready,
.provider-readiness-grid article.ready,
.support-diagnostics-grid article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.launch-checklist-grid button.blocked,
.qa-checklist-grid button.blocked,
.provider-readiness-grid article.blocked,
.support-diagnostics-grid article.warning {
  background: #fff7e6;
  border-color: #f4c56d;
}

.support-diagnostics-grid article.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.support-diagnostics-panel {
  border: 1px solid #e1e7f0;
}

.support-diagnostics-panel.ready {
  border-color: #bde8c9;
}

.support-diagnostics-panel.warning {
  border-color: #f4c56d;
}

.support-diagnostics-panel.blocked {
  border-color: #fecdd3;
}

.support-diagnostics-hero {
  align-items: stretch;
  border: 1px solid #dfe5ee;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr) auto;
  margin-bottom: 12px;
  padding: 12px;
}

.support-diagnostics-hero.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.support-diagnostics-hero.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.support-diagnostics-hero.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.support-diagnostics-hero div {
  display: grid;
  gap: 4px;
}

.support-diagnostics-hero button {
  align-self: center;
}

.support-diagnostics-grid article {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.support-diagnostics-grid article div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.support-playbook-list {
  display: grid;
  gap: 10px;
}

.support-playbook-list article {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: 92px minmax(0, 1fr) auto;
  padding: 12px;
}

.support-playbook-list article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.support-playbook-list article.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.support-playbook-list article.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.support-playbook-rank {
  color: #667085;
  display: grid;
  font-size: 11px;
  font-weight: 800;
  gap: 4px;
  text-transform: uppercase;
}

.support-playbook-rank strong {
  color: #111827;
  font-size: 28px;
  line-height: 1;
}

.support-playbook-list article div:nth-child(2) {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.support-playbook-list span,
.support-playbook-list small {
  color: #667085;
  font-size: 12px;
}

.support-playbook-list p {
  color: #344054;
  font-size: 13px;
  margin: 2px 0 0;
}

.campaign-exception-queue-panel {
  border: 1px solid #e1e7f0;
}

.campaign-exception-queue-panel.ready {
  border-color: #bde8c9;
}

.campaign-exception-queue-panel.warning {
  border-color: #f4c56d;
}

.campaign-exception-queue-panel.blocked {
  border-color: #fecdd3;
}

.campaign-exception-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  margin-bottom: 12px;
}

.campaign-exception-summary div {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.campaign-exception-list {
  display: grid;
  gap: 8px;
}

.campaign-exception-list article {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: 54px minmax(0, 1fr) auto;
  padding: 11px;
}

.campaign-exception-list article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.campaign-exception-list article.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.campaign-exception-list article.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.campaign-exception-list article > span {
  align-items: center;
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid rgba(102, 112, 133, 0.18);
  border-radius: 8px;
  color: #344054;
  display: flex;
  font-size: 12px;
  font-weight: 900;
  height: 36px;
  justify-content: center;
}

.campaign-exception-list article div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.campaign-exception-summary span,
.campaign-exception-list small {
  color: #667085;
  font-size: 12px;
}

.production-brief-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  margin-bottom: 12px;
}

.production-brief-grid div,
.production-block-plan article {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.production-brief-grid span,
.production-brief-grid small,
.production-block-plan span,
.production-block-plan small {
  color: #667085;
  font-size: 12px;
}

.production-brief-grid strong,
.production-block-plan strong {
  overflow-wrap: anywhere;
}

.production-block-plan {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.production-block-plan article {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) minmax(160px, 0.45fr);
}

.production-block-plan article > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.spend-authorization-panel {
  border: 1px solid #e1e7f0;
}

.spend-authorization-panel.ready {
  border-color: #bde8c9;
}

.spend-authorization-panel.warning {
  border-color: #f4c56d;
}

.spend-authorization-panel.blocked {
  border-color: #fecdd3;
}

.spend-authorization-hero {
  border: 1px solid #dfe5ee;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 12px;
  padding: 12px;
}

.spend-authorization-hero.ready,
.spend-check-grid article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.spend-authorization-hero.warning,
.spend-check-grid article.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.spend-authorization-hero.blocked,
.spend-check-grid article.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.spend-authorization-hero div {
  display: grid;
  gap: 4px;
}

.spend-check-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.spend-check-grid article {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.spend-authorization-hero span,
.spend-authorization-hero small,
.spend-check-grid span,
.spend-check-grid small {
  color: #667085;
  font-size: 12px;
}

.spend-approval-hero {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  margin-bottom: 12px;
}

.spend-approval-validity {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-bottom: 12px;
  padding: 12px;
}

.spend-approval-validity.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.spend-approval-validity.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.spend-approval-validity.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.spend-approval-validity div {
  display: grid;
  gap: 4px;
}

.spend-approval-hero div,
.spend-approval-history article {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.spend-approval-hero.authorized div,
.spend-approval-hero.conditional div {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.spend-approval-history {
  display: grid;
  gap: 8px;
}

.spend-delta-table {
  display: grid;
  gap: 6px;
  margin: 12px 0;
}

.spend-delta-row {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: 1.2fr 0.75fr 0.75fr 0.75fr 0.7fr;
  padding: 9px 11px;
}

.spend-delta-row.head {
  background: #f8fafc;
  color: #475467;
  font-size: 12px;
  font-weight: 800;
}

.spend-delta-row.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.spend-delta-row.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.spend-delta-row.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.spend-delta-row span {
  color: #667085;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.spend-delta-row strong {
  font-size: 12px;
}

.spend-approval-history article {
  grid-template-columns: 140px minmax(0, 1fr) minmax(180px, 0.5fr);
  align-items: center;
}

.spend-approval-hero span,
.spend-approval-hero small,
.spend-approval-validity span,
.spend-approval-validity small,
.spend-approval-history span,
.spend-approval-history small {
  color: #667085;
  font-size: 12px;
}

.spend-approval-callout {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-top: 12px;
  padding: 12px;
}

.spend-approval-callout.compact {
  margin-bottom: 12px;
  margin-top: 0;
}

.spend-approval-callout.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.spend-approval-callout.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.spend-approval-callout.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.spend-approval-callout > div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.spend-approval-callout span,
.spend-approval-callout small {
  color: #667085;
  font-size: 12px;
}

.campaign-paid-queue-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  margin-bottom: 12px;
}

.campaign-paid-queue-summary div {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.campaign-paid-queue-summary span {
  color: #667085;
  font-size: 12px;
}

.block-spend-matrix {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  margin-bottom: 12px;
}

.block-spend-matrix button {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-height: 102px;
  padding: 11px;
  text-align: left;
}

.block-spend-matrix button.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.block-spend-matrix button.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.block-spend-matrix button.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.block-spend-matrix span,
.block-spend-matrix small,
.block-spend-matrix em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
}

.block-spend-matrix em {
  font-weight: 800;
}

.campaign-paid-queue-table {
  display: grid;
  gap: 6px;
}

.campaign-paid-queue-row {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: 70px 0.8fr 0.7fr 70px 80px minmax(0, 1.6fr);
  padding: 9px 11px;
}

.campaign-paid-queue-row.head {
  background: #f8fafc;
  color: #475467;
  font-size: 12px;
  font-weight: 800;
}

.campaign-paid-queue-row.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.campaign-paid-queue-row.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.campaign-paid-queue-row.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.campaign-paid-queue-row span,
.campaign-paid-queue-row small,
.campaign-paid-queue-row em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
  overflow-wrap: anywhere;
}

.campaign-paid-queue-row em {
  font-weight: 800;
}

.production-start-gate-panel {
  border: 1px solid #e1e7f0;
}

.production-start-gate-panel.ready {
  border-color: #bde8c9;
}

.production-start-gate-panel.warning {
  border-color: #f4c56d;
}

.production-start-gate-panel.blocked {
  border-color: #fecdd3;
}

.production-start-hero {
  border: 1px solid #dfe5ee;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: 0.7fr minmax(0, 1.5fr) 0.8fr;
  margin-bottom: 12px;
  padding: 12px;
}

.production-start-hero.ready,
.production-start-list article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.production-start-hero.warning,
.production-start-list article.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.production-start-hero.blocked,
.production-start-list article.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.production-start-hero div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.production-start-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  margin-bottom: 12px;
}

.production-start-grid div {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.production-start-list {
  display: grid;
  gap: 8px;
}

.production-start-list article {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 11px;
}

.production-start-list article div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.production-start-hero span,
.production-start-hero small,
.production-start-grid span,
.production-start-grid small,
.production-start-list span,
.production-start-list small {
  color: #667085;
  font-size: 12px;
}

.provider-spend-reconciliation-panel {
  border: 1px solid #e1e7f0;
}

.provider-spend-reconciliation-panel.ready {
  border-color: #bde8c9;
}

.provider-spend-reconciliation-panel.warning {
  border-color: #f4c56d;
}

.provider-spend-reconciliation-panel.blocked {
  border-color: #fecdd3;
}

.provider-reconcile-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  margin-bottom: 12px;
}

.provider-reconcile-summary div {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.provider-reconcile-table {
  display: grid;
  gap: 6px;
  margin-top: 12px;
}

.provider-reconcile-row {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(130px, 0.9fr) 0.65fr 0.8fr 0.8fr 0.7fr minmax(0, 1.25fr);
  padding: 9px 11px;
}

.provider-reconcile-row.head {
  background: #f8fafc;
  color: #475467;
  font-size: 12px;
  font-weight: 800;
}

.provider-reconcile-row.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.provider-reconcile-row.pending {
  background: #f8fafc;
  border-color: #d8e0ea;
}

.provider-reconcile-row.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.provider-reconcile-row.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.provider-reconcile-summary span,
.provider-reconcile-summary small,
.provider-reconcile-row span,
.provider-reconcile-row small {
  color: #667085;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.generation-readiness-panel {
  border: 1px solid #e1e7f0;
}

.generation-readiness-panel.ready {
  border-color: #bde8c9;
}

.generation-readiness-panel.warning {
  border-color: #f4c56d;
}

.generation-readiness-panel.blocked {
  border-color: #ffb4b4;
}

.readiness-score-badge {
  border: 1px solid #d0d7e2;
  border-radius: 8px;
  min-width: 110px;
  padding: 10px 12px;
  text-align: right;
}

.readiness-score-badge span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.readiness-score-badge strong {
  display: block;
  font-size: 28px;
  line-height: 1;
}

.readiness-score-badge.ready {
  background: #effaf3;
  border-color: #bde8c9;
  color: #166534;
}

.readiness-score-badge.warning {
  background: #fffbeb;
  border-color: #f4c152;
  color: #92400e;
}

.readiness-score-badge.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
  color: #991b1b;
}

.readiness-meter {
  background: #edf2f7;
  border-radius: 999px;
  height: 10px;
  margin-bottom: 12px;
  overflow: hidden;
}

.readiness-meter i {
  background: linear-gradient(90deg, #ef4444, #f59e0b, #22c55e);
  display: block;
  height: 100%;
}

.readiness-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.readiness-grid article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.readiness-grid article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.readiness-grid article.warning {
  background: #fffbeb;
  border-color: #f4c152;
}

.readiness-grid article.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.readiness-grid span,
.readiness-grid small {
  color: #667085;
  font-size: 12px;
}

.launch-checklist-grid span,
.qa-checklist-grid span,
.provider-readiness-grid span,
.support-diagnostics-grid span,
.support-diagnostics-hero span,
.bulk-run-summary span,
.launch-checklist-grid small,
.qa-checklist-grid small,
.provider-readiness-grid small,
.support-diagnostics-grid small,
.support-diagnostics-hero small,
.bulk-run-summary small,
.demo-script-grid small,
.operating-guide-list small {
  color: #667085;
  font-size: 12px;
}

.bulk-run-summary {
  margin: 10px 0;
}

.run-history-table,
.bulk-review-list {
  display: grid;
  gap: 8px;
}

.run-audit-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  margin-bottom: 12px;
}

.run-audit-summary div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  display: grid;
  gap: 3px;
  padding: 10px;
}

.run-audit-summary span,
.run-audit-summary small {
  color: #667085;
  font-size: 12px;
}

.run-audit-summary strong {
  font-size: 20px;
}

.run-history-row {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 8px;
  grid-template-columns: 1.15fr 0.65fr 0.8fr 0.95fr 0.65fr 0.75fr 1.2fr 0.55fr;
  padding: 10px;
}

.run-history-row small {
  color: #667085;
  display: block;
  font-size: 11px;
  margin-top: 2px;
  overflow-wrap: anywhere;
}

.run-history-row button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font-weight: 800;
  padding: 7px 9px;
}

.run-history-head {
  background: #f8fafc;
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.bulk-pre-run-review {
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  margin: 10px 0;
  padding: 12px;
}

.bulk-review-list article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 10px;
}

.bulk-review-list article div,
.bulk-review-footer {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.bulk-review-list span,
.bulk-review-list small,
.bulk-review-footer {
  color: #667085;
  font-size: 12px;
}

.server-batch-check {
  align-items: center;
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  background: #f8fafc;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 10px;
}

.server-batch-check.ready {
  background: #ecfdf5;
  border-color: #a7f3d0;
}

.server-batch-check.blocked {
  background: #fff1f1;
  border-color: #ffb4b4;
}

.server-batch-check strong,
.server-batch-check small {
  display: block;
}

.server-batch-check small {
  color: #667085;
  font-size: 12px;
}

.server-batch-check button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font-weight: 800;
  padding: 9px 11px;
}

.provider-recovery-watch {
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  margin-top: 10px;
  padding: 12px;
}

.provider-recovery-watch.warning {
  background: #fff7e6;
  border-color: #f4c56d;
}

.job-center-stats {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  margin-bottom: 10px;
}

.job-center-stats div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.job-center-stats span,
.global-job-list small {
  color: #667085;
  font-size: 12px;
}

.job-center-stats strong {
  display: block;
  margin-top: 2px;
}

.global-job-list {
  display: grid;
  gap: 8px;
}

.global-job-list article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(150px, 1.15fr) 0.75fr 0.65fr 0.85fr minmax(140px, 1fr) auto;
  padding: 10px;
}

.global-job-list article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.global-job-list article.generating {
  background: #f3f7ff;
  border-color: #bfdbfe;
}

.global-job-list article.failed {
  background: #fff7f7;
  border-color: #ffc9c9;
}

.global-job-actions {
  align-items: center;
  display: flex;
  gap: 6px;
  justify-content: flex-end;
}

.global-job-actions a,
.global-job-actions button {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  font-size: 12px;
  padding: 7px 9px;
  text-decoration: none;
}

.usage-row-actions {
  display: flex;
  justify-content: flex-end;
}

.usage-row-actions button {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  padding: 7px 9px;
}

.drawer-backdrop {
  background: rgba(15, 23, 42, 0.35);
  inset: 0;
  position: fixed;
  z-index: 40;
}

.job-detail-drawer {
  background: #fff;
  border-left: 1px solid #d8dee9;
  bottom: 0;
  box-shadow: -18px 0 40px rgba(15, 23, 42, 0.18);
  color: #111827;
  display: grid;
  gap: 14px;
  max-width: 520px;
  overflow-y: auto;
  padding: 22px;
  position: fixed;
  right: 0;
  top: 0;
  width: min(520px, 94vw);
  z-index: 50;
}

.reuse-preview-modal {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 10px;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.24);
  color: #111827;
  display: grid;
  gap: 14px;
  left: 50%;
  max-width: 720px;
  padding: 22px;
  position: fixed;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(720px, calc(100vw - 28px));
  z-index: 55;
}

.reuse-preview-source,
.reuse-preview-note {
  border: 1px solid #d7e3f3;
  border-radius: 8px;
  background: #f8fbff;
  padding: 12px;
}

.reuse-preview-source span,
.reuse-preview-source strong,
.reuse-preview-source small,
.reuse-preview-note strong,
.reuse-preview-note small {
  display: block;
}

.reuse-preview-source span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.reuse-preview-source small,
.reuse-preview-note small {
  color: #667085;
  margin-top: 4px;
}

.reuse-preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.reuse-preview-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 6px;
  padding: 12px;
}

.reuse-preview-grid span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.reuse-preview-grid strong {
  font-size: 13px;
}

.drawer-head {
  align-items: start;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.drawer-head span,
.job-detail-grid span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.drawer-head h2 {
  margin: 3px 0 0;
}

.drawer-head button,
.drawer-actions button,
.drawer-actions a {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
  padding: 9px 11px;
  text-decoration: none;
}

.job-detail-status {
  align-items: center;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  display: flex;
  justify-content: space-between;
  padding: 10px 12px;
}

.job-detail-status.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.job-detail-status.generating,
.job-detail-status.queued,
.job-detail-status.polling {
  background: #f3f7ff;
  border-color: #bfdbfe;
}

.job-detail-status.failed {
  background: #fff7f7;
  border-color: #ffc9c9;
}

.job-detail-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.job-detail-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 10px;
}

.job-detail-section {
  border-top: 1px solid #e1e7f0;
  display: grid;
  gap: 7px;
  padding-top: 14px;
}

.job-detail-section h3 {
  margin: 0;
}

.job-detail-section p {
  margin: 0;
}

.job-detail-section pre {
  background: #f8fafc;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  font-family: Consolas, "Courier New", monospace;
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
  max-height: 220px;
  overflow: auto;
  padding: 12px;
  white-space: pre-wrap;
}

.drawer-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.recovery-banner {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.recovery-banner div {
  display: grid;
  gap: 2px;
}

.recovery-banner button {
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  padding: 8px 10px;
}

.workflow-mode-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.workflow-mode-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 11px;
}

.workflow-mode-grid span,
.workflow-queue-list span {
  color: #667085;
  font-size: 12px;
}

.workflow-mode-grid strong,
.workflow-mode-grid small,
.workflow-queue-list strong,
.workflow-queue-list small {
  display: block;
}

.workflow-mode-grid small,
.workflow-queue-list small {
  color: #667085;
  margin-top: 3px;
}

.workflow-queue-list {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.workflow-queue-list button {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  padding: 11px;
  text-align: left;
}

.workflow-queue-list button.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.workflow-queue-list button.needs {
  background: #fff8ed;
  border-color: #fed7aa;
}

.workflow-queue-list button:disabled {
  cursor: not-allowed;
  opacity: 0.62;
}

.comment-panel {
  border-top: 1px solid #e5e9f0;
  margin-top: 14px;
  padding-top: 14px;
}

.comment-form,
.reply-form {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
}

.comment-list {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.comment-list article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.comment-list article.resolved {
  opacity: 0.66;
}

.comment-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.comment-head div,
.reply-list div {
  display: grid;
  gap: 3px;
}

.comment-head span,
.reply-list small {
  color: #667085;
  font-size: 12px;
}

.reply-list {
  display: grid;
  gap: 7px;
  border-left: 2px solid #e5e7eb;
  margin: 8px 0;
  padding-left: 10px;
}

.receipt-panel,
.final-provenance-panel {
  border-top: 1px solid #e5e9f0;
  margin-top: 14px;
  padding-top: 14px;
}

.receipt-grid {
  display: grid;
  gap: 10px;
}

.receipt-grid article,
.version-receipt-list div,
.receipt-table div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.receipt-head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}

.receipt-meta {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px 10px;
  margin-top: 8px;
  font-size: 12px;
}

.receipt-meta span {
  color: #667085;
  font-weight: 700;
}

.receipt-grid details {
  margin-top: 8px;
}

.receipt-grid details p {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.version-receipt-list,
.receipt-table {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.version-receipt-list div,
.receipt-table div {
  display: grid;
  gap: 3px;
}

.version-receipt-list span,
.version-receipt-list small,
.receipt-table span {
  color: #667085;
  font-size: 12px;
}

.version-panel {
  border-top: 1px solid #e5e9f0;
  border-bottom: 1px solid #e5e9f0;
  padding: 12px 0;
  margin-bottom: 14px;
  display: grid;
  gap: 8px;
}

.suggestion-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 12px;
  margin: 12px 0;
  display: grid;
  gap: 10px;
  background: #f8fafc;
}

.suggestion-panel.muted {
  color: #667085;
  font-size: 13px;
}

.suggestion-panel .section-head button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #344054;
  padding: 6px 9px;
  font-size: 12px;
}

.suggestion-card {
  display: grid;
  grid-template-columns: 82px 1fr;
  gap: 10px;
  border: 1px solid #dde3ed;
  border-radius: 8px;
  background: #fff;
  padding: 8px;
}

.suggestion-card img {
  width: 82px;
  height: 64px;
  object-fit: cover;
  border-radius: 7px;
  background: #e5e7eb;
}

.suggestion-card strong,
.suggestion-card span,
.suggestion-card small {
  display: block;
  font-size: 12px;
}

.suggestion-card span,
.suggestion-card small {
  color: #667085;
  margin-top: 3px;
}

.suggestion-card button {
  margin-top: 7px;
  border: 1px solid #ef4444;
  border-radius: 7px;
  background: #fff5f5;
  color: #b42318;
  padding: 5px 8px;
  font-size: 12px;
}

.reference-package-panel {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  padding: 12px;
  margin: 12px 0;
  display: grid;
  gap: 10px;
  background: #fff;
}

.reference-package-summary {
  border: 1px solid #d7e7ff;
  border-radius: 8px;
  background: #f3f8ff;
  padding: 10px;
  display: grid;
  gap: 3px;
}

.reference-package-summary.warning {
  border-color: #fed7aa;
  background: #fff7ed;
}

.reference-package-summary span,
.reference-package-summary small {
  color: #667085;
  font-size: 12px;
}

.reference-locked-scene-notice {
  border: 1px solid #a7f3d0;
  border-radius: 8px;
  background: #ecfdf5;
  color: #047857;
  display: grid;
  gap: 4px;
  padding: 12px;
}

.reference-locked-scene-notice strong,
.reference-locked-scene-notice span,
.reference-locked-scene-notice small {
  display: block;
}

.reference-locked-scene-notice strong {
  color: #065f46;
  font-size: 15px;
}

.reference-locked-scene-notice span,
.reference-locked-scene-notice small {
  color: inherit;
  font-size: 13px;
  line-height: 1.4;
}

.shot-type-lock-panel {
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.shot-type-lock-panel strong,
.shot-type-lock-panel span,
.shot-type-lock-panel small {
  display: block;
}

.shot-type-lock-panel strong {
  color: #1e3a8a;
  font-size: 15px;
}

.shot-type-lock-panel span,
.shot-type-lock-panel small {
  color: inherit;
  font-size: 13px;
  line-height: 1.4;
}

.scene-safety-summary {
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 10px;
}

.scene-safety-summary div {
  border: 1px solid rgba(37, 99, 235, 0.16);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.72);
  display: grid;
  gap: 3px;
  padding: 9px;
}

.scene-safety-summary span {
  color: #31559a;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.scene-safety-summary strong {
  color: #102a63;
  font-size: 14px;
}

.scene-safety-summary small {
  color: #31559a;
  line-height: 1.35;
}

.scene-safety-details,
.reference-library-details {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  padding: 9px 10px;
}

.scene-safety-details summary,
.reference-library-details summary {
  cursor: pointer;
  font-weight: 800;
}

.scene-safety-details div {
  display: grid;
  gap: 2px;
  margin-top: 8px;
}

.scene-safety-details span {
  color: #667085;
  font-size: 13px;
}

.reference-package-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 8px;
}

.reference-package-list article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 7px;
  display: grid;
  grid-template-columns: 22px 52px 1fr;
  gap: 7px;
  align-items: center;
  min-width: 0;
}

.reference-package-list span {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: #eef1f5;
  font-size: 11px;
  font-weight: 800;
}

.reference-package-list img {
  width: 52px;
  height: 42px;
  object-fit: cover;
  border-radius: 6px;
  background: #e5e7eb;
}

.reference-package-list strong,
.reference-package-list small {
  display: block;
  font-size: 12px;
}

.reference-package-list small {
  color: #667085;
}

.compact-head {
  align-items: center;
}

.compact-head h3 {
  margin: 0;
}

.scene-strategy-meta {
  display: inline-flex;
  align-items: center;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  margin-top: 6px;
  padding: 5px 9px;
}

.version-row {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 6px;
  align-items: center;
}

.version-row small {
  grid-column: 1 / -1;
  color: #667085;
}

.job-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 12px;
  margin: 12px 0;
  display: grid;
  gap: 8px;
  background: #f8fafc;
}

.job-panel-head {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.job-panel p {
  margin-bottom: 0;
  color: #667085;
  font-size: 13px;
}

.job-panel-actions,
.job-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: flex-end;
}

.job-panel-actions button,
.job-actions button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  padding: 7px 9px;
  font-weight: 800;
}

.generation-empty-steps {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.generation-empty-steps div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 9px;
  display: grid;
  gap: 3px;
}

.generation-empty-steps span {
  align-items: center;
  background: #ef4444;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.job-row {
  display: grid;
  gap: 7px;
  border: 1px solid #dde3ed;
  border-radius: 7px;
  padding: 8px;
  background: #fff;
}

.job-row-main {
  align-items: baseline;
  display: grid;
  gap: 8px;
  grid-template-columns: 70px 1fr;
}

.job-row span {
  color: #667085;
  font-size: 12px;
  text-transform: capitalize;
}

.job-row small {
  color: #667085;
  overflow: hidden;
  text-overflow: ellipsis;
}

.campaign-summary .summary-time {
  color: #111827;
  font-weight: 800;
  overflow: visible;
  text-overflow: clip;
}

.job-progress {
  background: #e5e7eb;
  border-radius: 999px;
  height: 7px;
  overflow: hidden;
}

.job-progress i {
  background: #2563eb;
  display: block;
  height: 100%;
}

.job-row.generating {
  border-color: #93c5fd;
  background: #eff6ff;
}

.job-row.submitted,
.job-row.polling,
.job-row.queued {
  border-color: #bfdbfe;
  background: #eff6ff;
}

.job-row.ready {
  border-color: #b7e4c7;
  background: #ecfdf5;
}

.job-row.ready .job-progress i {
  background: #059669;
}

.job-row.failed {
  border-color: #f2b8b5;
  background: #fff5f5;
}

.job-row.failed .job-progress i {
  background: #ef4444;
}

.topbar-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
  min-width: 0;
}

.role-switcher {
  display: grid;
  gap: 4px;
  color: #667085;
  font-size: 12px;
}

.role-switcher select {
  min-width: 170px;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #101828;
  padding: 8px 10px;
}

.account-chip {
  min-width: 170px;
  max-width: 220px;
  display: grid;
  gap: 3px;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  padding: 8px 10px;
}

.account-chip span {
  color: #667085;
  font-size: 12px;
}

.account-chip strong {
  color: #101828;
  font-size: 14px;
}

.icon-button,
.topbar-context-pill,
.topbar-credit-pill {
  border: 1px solid #d9dee7;
  background: #fff;
  color: #344054;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.06);
}

.icon-button {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
}

.icon-button {
  padding: 0;
}

.icon-button svg,
.topbar-context-pill svg {
  width: 18px;
  height: 18px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.icon-button:hover,
.topbar-brand-home:hover,
.brand-home:hover {
  color: #ef4444;
}

.icon-button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.topbar-context-pill {
  min-height: 40px;
  max-width: 190px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 800;
  min-width: 0;
}

.topbar-context-pill span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.topbar-credit-pill {
  min-height: 40px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.topbar-credit-pill svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.topbar-credit-pill span {
  color: #667085;
}

.topbar-credit-pill strong {
  color: #101828;
  font-size: 13px;
}

.topbar-credit-pill.ready {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #047857;
}

.topbar-credit-pill.low {
  border-color: #fcd34d;
  background: #fffbeb;
  color: #92400e;
}

.topbar-credit-pill.empty {
  border-color: #fda4af;
  background: #fff1f2;
  color: #9f1239;
}

.topbar-credit-pill.loading {
  color: #667085;
}

.theme-toggle {
  color: #1f2937;
  white-space: nowrap;
}

.topbar-actions .status-pill {
  max-width: 170px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.notice {
  background: #ecfdf5;
  color: #047857;
}

.notice.muted {
  background: #f8fafc;
  color: #4b5563;
}

.brand-safe-notice {
  margin: 10px 0 12px;
}

.brand-safe-notice strong {
  color: inherit;
}

.workspace-grid,
.editor-layout,
.video-editor-layout {
  display: grid;
  grid-template-columns: minmax(320px, 0.9fr) minmax(420px, 1.4fr);
  gap: 18px;
  min-width: 0;
}

.campaign-setup-grid {
  align-items: start;
  grid-template-columns: minmax(520px, 1.1fr) minmax(360px, 0.9fr);
}

.campaign-setup-grid.single-panel {
  grid-template-columns: minmax(0, 1fr);
}

.campaign-setup-grid > .panel {
  min-width: 0;
}

.campaign-setup-grid > .panel:last-child {
  max-height: calc(100vh - 36px);
  overflow: auto;
  position: sticky;
  top: 18px;
}

.video-setup-panel {
  display: grid;
  gap: 12px;
}

.video-setup-head {
  align-items: flex-start;
  border-bottom: 1px solid #e4e7ec;
  margin-bottom: 0;
  padding-bottom: 10px;
}

.video-setup-instructions-panel {
  display: grid;
  gap: 8px;
}

.video-setup-instructions-panel .section-head {
  margin-bottom: 0;
}

.video-setup-instructions-panel .usage-summary-grid {
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.video-setup-instructions-panel .usage-summary-grid div {
  min-height: 78px;
  padding: 9px 10px;
}

.video-setup-instructions-panel .usage-summary-grid strong {
  display: block;
  font-size: 17px;
  line-height: 1.2;
  margin-top: 0;
}

.video-setup-instructions-panel .usage-summary-grid small {
  color: #344054;
  display: block;
  font-size: 13px;
  line-height: 1.35;
  margin-top: 4px;
}

.setup-photo-section {
  background: #f8fbff;
}

.photo-status-pill {
  border: 1px solid #dbe4f0;
  border-radius: 999px;
  color: #111827;
  display: inline-flex;
  font-size: 14px;
  line-height: 1;
  padding: 10px 14px;
}

.photo-status-pill.is-ready {
  background: #ef3f46;
  border-color: #ef3f46;
  color: #ffffff;
}

.photo-upload-status {
  align-items: center;
  background: #ffffff;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 10px 12px;
}

.photo-upload-status.is-ready {
  background: #fff5f5;
  border-color: #ef3f46;
  box-shadow: 0 0 0 1px rgba(239, 63, 70, 0.12);
}

.photo-upload-status strong {
  color: #0f172a;
  font-size: 15px;
  white-space: nowrap;
}

.photo-upload-status.is-ready strong {
  color: #d92d20;
}

.photo-upload-status span {
  color: #475467;
  font-size: 14px;
  line-height: 1.35;
}

.setup-photo-upload-toolbar {
  background: #ffffff;
  grid-template-columns: minmax(280px, 0.8fr) minmax(360px, 1.2fr);
  margin: 0;
}

.setup-photo-upload-toolbar .upload-dropzone,
.setup-photo-upload-toolbar .drive-link-import input {
  background: #ffffff;
  border-color: #b9c6d8;
}

.setup-photo-upload-toolbar .reference-upload-input {
  color: transparent;
  max-width: 190px;
}

.setup-section {
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #ffffff;
  display: grid;
  gap: 14px;
  padding: 16px;
}

.setup-section-head {
  align-items: flex-start;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.setup-section-head h3 {
  margin: 0 0 4px;
}

.setup-section-head p {
  margin: 0;
}

.setup-section-head > strong {
  border: 1px solid #dbe4f0;
  border-radius: 999px;
  color: #172033;
  font-size: 13px;
  line-height: 1.2;
  padding: 8px 12px;
  white-space: nowrap;
}

.setup-form-grid {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.setup-form-grid label {
  align-self: start;
  display: grid;
  gap: 8px;
  margin: 0;
  min-width: 0;
}

.setup-form-grid select,
.setup-form-grid input,
.setup-form-grid textarea {
  min-height: 49px;
}

.setup-form-grid label > .quiet {
  line-height: 1.35;
  margin: 0;
}

.setup-form-grid .span-two {
  grid-column: 1 / -1;
}

.setup-action-row {
  align-items: center;
  border-top: 1px solid #e4e7ec;
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  padding-top: 16px;
}

.setup-action-row .primary-action {
  min-width: 180px;
}

.video-editor-layout {
  grid-template-columns: minmax(640px, 1fr) 360px;
}

.customer-production-workspace {
  grid-template-columns: minmax(0, 1fr);
}

.panel {
  background: #fff;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  padding: 18px;
  min-width: 0;
}

label {
  display: grid;
  gap: 7px;
  margin-bottom: 14px;
  color: #4b5563;
  font-size: 13px;
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  padding: 10px 11px;
  background: #fff;
  color: #111827;
}

textarea {
  resize: vertical;
}

.primary-action {
  border: 0;
  border-radius: 7px;
  padding: 11px 14px;
  background: #ef4444;
  color: #fff;
  font-weight: 700;
}

.primary-action:disabled,
.theme-toggle:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.role-notice {
  display: flex;
  align-items: center;
  gap: 10px;
}

.role-notice button,
.preview-admin-panel button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #1f2937;
  font-weight: 700;
  padding: 8px 10px;
}

.preview-notice {
  border-color: #f6c76f;
  background: #fffbeb;
  color: #92400e;
}

.preview-admin-panel {
  align-items: center;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr auto;
  margin-top: 12px;
  padding: 12px;
}

.preview-admin-panel strong,
.preview-admin-panel span {
  display: block;
}

.preview-admin-panel span {
  color: #475467;
  font-size: 13px;
  margin-top: 3px;
}

.role-notice span {
  color: #4b5563;
}

.metric-grid,
.audio-grid,
.audio-controls {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.form-grid {
  display: grid;
  gap: 12px;
}

.form-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.span-two {
  grid-column: 1 / -1;
}

.checkbox-line {
  display: flex;
  align-items: center;
  flex-direction: row;
  gap: 10px;
  font-weight: 700;
}

.checkbox-line input {
  width: auto;
}

.voice-admin-list {
  display: grid;
  gap: 8px;
  margin: 12px 0;
}

.voice-admin-row {
  display: grid;
  grid-template-columns: 42px 1fr 1.1fr .8fr 1.2fr 1.3fr;
  gap: 8px;
  align-items: center;
}

.voice-admin-row strong,
.voice-recommended span {
  display: grid;
  place-items: center;
  height: 38px;
  border-radius: 8px;
  background: #f1f5f9;
}

.voice-recommended {
  align-items: center;
  display: grid;
  gap: 4px;
  justify-items: center;
}

.voice-recommended input {
  margin: 0;
  width: auto;
}

.voice-coverage-list {
  display: grid;
  gap: 8px;
}

.voice-coverage-list button {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 10px;
  text-align: left;
}

.voice-coverage-list button.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.voice-coverage-list button.partial {
  background: #fffbeb;
  border-color: #f4c152;
}

.voice-coverage-list button.missing {
  background: #fff7e6;
  border-color: #f4c56d;
}

.admin-library-command {
  display: grid;
  gap: 14px;
  margin-bottom: 16px;
}

.admin-library-command.ready {
  border-color: #a7f3d0;
}

.admin-library-command.warning {
  border-color: #fbbf24;
  background: #fffbeb;
}

.admin-library-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.admin-library-summary div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 10px;
}

.admin-library-summary div.ready {
  border-color: #a7f3d0;
  background: #ecfdf5;
}

.admin-library-summary div.warning {
  border-color: #fbbf24;
  background: #fff7e6;
}

.admin-library-summary span,
.admin-library-summary small {
  color: #667085;
  font-size: 12px;
}

.admin-library-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-library-actions button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  font-weight: 800;
  padding: 9px 11px;
}

.admin-library-actions button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.access-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.access-item {
  margin: 0;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.audit-list {
  display: grid;
  gap: 8px;
}

.audit-row {
  display: grid;
  grid-template-columns: 1fr 180px 160px;
  gap: 12px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 11px 12px;
}

.audit-row strong,
.audit-row small {
  display: block;
}

.audit-row small,
.audit-row span,
.audit-row time {
  color: #667085;
  font-size: 12px;
}

.rooftop-vehicle-list {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.rooftop-vehicle-row {
  display: grid;
  grid-template-columns: 1fr 86px 70px;
  gap: 10px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px 12px;
}

.rooftop-vehicle-row strong,
.rooftop-vehicle-row small {
  display: block;
}

.rooftop-vehicle-row small,
.rooftop-vehicle-row em {
  color: #667085;
  font-size: 12px;
}

.rooftop-library-layout {
  align-items: start;
}

.rooftop-card-list {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}

.rooftop-card {
  display: grid;
  gap: 6px;
  text-align: left;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #1f2937;
  padding: 12px;
  cursor: pointer;
}

.rooftop-card > button:first-child {
  display: grid;
  gap: 6px;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  padding: 0;
  cursor: pointer;
}

.rooftop-card.active {
  border-color: #ef4444;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.14);
}

.rooftop-card strong,
.rooftop-card small {
  display: block;
}

.rooftop-card small {
  color: #667085;
}

.readiness-checklist {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 8px;
  margin: 16px 0;
}

.shot-set-summary,
.bulk-coverage-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.shot-set-summary div,
.bulk-coverage-summary div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.shot-set-summary span,
.bulk-coverage-summary span {
  display: block;
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.shot-set-summary strong,
.bulk-coverage-summary strong {
  display: block;
  margin-top: 3px;
}

.coverage-slot {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 9px 10px;
  font-size: 13px;
}

.coverage-slot strong,
.coverage-slot span {
  display: block;
}

.coverage-slot strong {
  font-weight: 700;
}

.coverage-slot span {
  margin-top: 2px;
}

.coverage-slot.ready {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #047857;
}

.coverage-slot.missing {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #c2410c;
}

.slot-upload-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #344054;
  padding: 7px 9px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.slot-upload-button input {
  display: none;
}

.upload-panel {
  display: grid;
  grid-template-columns: minmax(180px, 240px) 1fr;
  gap: 12px;
  align-items: end;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
  margin: 16px 0;
}

.reference-upload-toolbar {
  grid-template-columns: minmax(180px, 240px) minmax(280px, 0.9fr) minmax(360px, 1.4fr);
  margin: 10px 0 20px;
  padding: 14px;
}

.reference-upload-toolbar .span-two {
  grid-column: auto;
}

.upload-field {
  align-self: stretch;
  display: grid;
  gap: 8px;
}

.upload-dropzone {
  align-items: center;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  min-height: 98px;
  padding: 14px;
}

.upload-dropzone strong,
.upload-dropzone small {
  display: block;
}

.upload-dropzone small {
  color: #667085;
  margin-top: 4px;
}

.reference-upload-input {
  font-size: 14px;
  width: 100%;
}

.reference-upload-input::file-selector-button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  font-weight: 800;
  margin-right: 10px;
  padding: 9px 12px;
}

.reference-upload-input::file-selector-button:hover {
  border-color: #98a2b3;
}

.drive-link-import {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.drive-link-import input {
  width: 100%;
}

.drive-link-import small {
  grid-column: 1 / -1;
}

.bulk-import-panel {
  display: grid;
  gap: 12px;
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  margin: 16px 0;
}

.section-head.compact {
  margin-bottom: 0;
}

.bulk-import-drop {
  border: 1px dashed #b8c3d3;
  border-radius: 8px;
  background: #f8fafc;
  padding: 14px;
  cursor: pointer;
}

.bulk-import-drop input {
  display: block;
  margin-top: 8px;
}

.bulk-import-table {
  display: grid;
  gap: 8px;
}

.bulk-import-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 320px) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.bulk-import-row strong,
.bulk-import-row small {
  display: block;
}

.bulk-import-row small {
  color: #667085;
}

.bulk-import-actions {
  justify-content: flex-end;
}

.missing-shot-strip,
.staged-shot-chips,
.operational-checks {
  display: grid;
  gap: 8px;
}

.missing-shot-strip > div,
.staged-shot-chips,
.operational-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.missing-shot-strip span,
.staged-shot-chips span {
  border: 1px solid #e1e7f0;
  border-radius: 999px;
  background: #f8fafc;
  color: #344054;
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 800;
}

.staged-shot-chips span {
  border-color: #a7f3d0;
  background: #ecfdf5;
  color: #047857;
}

.used-intake-panel {
  display: grid;
  gap: 12px;
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 14px;
  margin: 14px 0;
}

.used-intake-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.used-intake-actions button {
  min-height: 36px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #102033;
  font-size: 13px;
  font-weight: 800;
  padding: 8px 10px;
}

.used-intake-rules,
.used-shot-guide,
.used-quality-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px;
}

.used-intake-rules span,
.used-shot-guide div,
.used-quality-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.used-intake-rules span {
  color: #475467;
  font-size: 13px;
}

.used-shot-guide div {
  display: grid;
  gap: 4px;
}

.used-shot-guide strong,
.used-shot-guide span,
.used-shot-guide small {
  display: block;
}

.used-shot-guide span {
  color: #047857;
  font-size: 12px;
  font-weight: 900;
}

.used-shot-guide small {
  color: #667085;
  line-height: 1.35;
}

.used-quality-grid div {
  display: grid;
  gap: 4px;
}

.used-quality-grid span,
.used-quality-grid strong,
.used-quality-grid small {
  display: block;
}

.used-quality-grid span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.used-quality-grid small {
  color: #667085;
  line-height: 1.35;
}

.used-quality-grid .ready {
  border-color: #a7f3d0;
  background: #ecfdf5;
}

.used-quality-grid .missing {
  border-color: #fed7aa;
  background: #fff7ed;
}

.used-photo-grade-panel {
  display: grid;
  gap: 10px;
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.used-photo-grade-panel > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
}

.used-photo-grade-panel span,
.used-photo-grade-panel small {
  color: #667085;
}

.used-photo-grade-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 8px;
}

.used-photo-grade-grid article {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 10px;
  align-items: start;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.used-photo-grade-grid b {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #0f172a;
  font-size: 16px;
  font-weight: 900;
}

.used-photo-grade-grid div,
.used-photo-grade-grid span,
.used-photo-grade-grid strong,
.used-photo-grade-grid small {
  display: block;
}

.used-photo-grade-grid span {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.used-photo-grade-grid strong {
  color: #0f172a;
}

.used-photo-grade-grid small {
  line-height: 1.35;
}

.used-photo-grade-grid .grade-a {
  border-color: #86efac;
  background: #ecfdf5;
}

.used-photo-grade-grid .grade-a b {
  background: #16a34a;
  color: #fff;
}

.used-photo-grade-grid .grade-b {
  border-color: #bae6fd;
  background: #f0f9ff;
}

.used-photo-grade-grid .grade-b b {
  background: #0284c7;
  color: #fff;
}

.used-photo-grade-grid .grade-c {
  border-color: #fde68a;
  background: #fffbeb;
}

.used-photo-grade-grid .grade-c b {
  background: #d97706;
  color: #fff;
}

.used-photo-grade-grid .grade-d {
  border-color: #fecaca;
  background: #fef2f2;
}

.used-photo-grade-grid .grade-d b {
  background: #dc2626;
  color: #fff;
}

.submit-review-panel {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: end;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  padding: 12px;
  margin: 16px 0;
}

.campaign-ready-panel {
  background: #ecfdf5;
  border-color: #a7f3d0;
}

.locked-vehicle-list {
  display: grid;
  gap: 8px;
}

.locked-vehicle-row {
  display: grid;
  grid-template-columns: 120px 1fr auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 11px 12px;
}

.locked-vehicle-row strong,
.locked-vehicle-row small {
  display: block;
}

.locked-vehicle-row small {
  color: #667085;
}

.locked-vehicle-row button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 8px 10px;
}

.intake-list {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.intake-card {
  display: grid;
  gap: 12px;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
}

.intake-card.approved {
  border-color: #a7f3d0;
}

.intake-card-head {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 14px;
  align-items: start;
}

.intake-card h3,
.intake-card p {
  margin: 6px 0 0;
}

.intake-score {
  text-align: right;
}

.intake-score strong,
.intake-score span {
  display: block;
}

.intake-score strong {
  font-size: 28px;
}

.missing-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.missing-list span {
  border: 1px solid #fed7aa;
  border-radius: 999px;
  background: #fff7ed;
  color: #c2410c;
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 700;
}

.intake-note {
  white-space: pre-wrap;
  border-left: 3px solid #d9dee7;
  padding-left: 10px;
  color: #4b5563;
}

.intake-note strong {
  display: block;
  color: #1f2937;
}

.intake-actions {
  justify-content: flex-end;
}

.ready-chip,
.draft-chip {
  border-radius: 999px;
  padding: 5px 8px;
  text-align: center;
  font-size: 12px;
  font-weight: 800;
}

.ready-chip {
  background: #ecfdf5;
  color: #047857;
}

.draft-chip {
  background: #fff7ed;
  color: #c2410c;
}

.check-ready strong {
  color: #047857;
}

.check-missing strong {
  color: #b42318;
}

.metric-grid div,
.audio-grid div,
.audio-controls label {
  background: #f7f8fb;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  padding: 12px;
}

.metric-grid span,
.audio-grid span {
  color: #6b7280;
  display: block;
  font-size: 12px;
}

.audio-controls {
  margin: 16px 0;
}

.audio-controls .toggle-row {
  align-content: center;
}

.voice-preview-control {
  background: #f7f8fb;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.voice-preview-control button {
  width: 100%;
}

.voice-preview-control small {
  color: #64748b;
}

.voice-preview-result {
  display: grid;
  gap: 8px;
}

.voice-preview-result strong,
.voice-preview-result small,
.voice-preview-result em {
  display: block;
}

.voice-preview-result strong {
  color: #047857;
}

.voice-preview-result small {
  color: #475569;
  margin-top: 3px;
}

.voice-preview-result audio {
  width: 100%;
}

.voice-preview-player {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(120px, 180px) 1fr;
}

.voice-preview-player button {
  min-height: 42px;
}

.voice-preview-result em {
  color: #64748b;
  font-size: 12px;
  font-style: normal;
}

.audio-controls input[type="range"] {
  padding: 0;
}

.metric-grid strong,
.audio-grid strong {
  display: block;
  margin-top: 5px;
}

.section-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.section-head p {
  color: #6b7280;
  margin-bottom: 0;
}

.reference-library-head {
  align-items: flex-start;
  margin-bottom: 12px;
}

.reference-library-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.library-count {
  border: 1px solid #dbe4f0;
  border-radius: 999px;
  background: #f8fafc;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
  padding: 8px 12px;
  white-space: nowrap;
}

.reference-manager-panel .primary-action,
.reference-manager-panel .secondary-action {
  align-items: center;
  border-radius: 7px;
  cursor: pointer;
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  min-height: 42px;
  padding: 10px 14px;
}

.reference-manager-panel .primary-action {
  background: #ef4444;
  border: 1px solid #ef4444;
  color: #fff;
}

.reference-manager-panel .primary-action:hover {
  background: #dc2626;
  border-color: #dc2626;
}

.reference-manager-panel .secondary-action {
  background: #fff;
  border: 1px solid #cfd6e3;
  color: #344054;
}

.reference-manager-panel .secondary-action:hover {
  border-color: #98a2b3;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.reference-groups {
  display: grid;
  gap: 18px;
}

.reference-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
  gap: 12px;
  align-items: start;
}

.tag-group {
  border-top: 1px solid #e5e9f0;
  padding-top: 14px;
}

.image-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 10px;
}

.compact .image-grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.reference-tile {
  border: 1px solid #dde3ed;
  border-radius: 8px;
  background: #fff;
  color: #1f2937;
  padding: 0;
  overflow: hidden;
  position: relative;
  text-align: left;
  width: 100%;
}

.reference-card {
  border: 1px solid #dde3ed;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 7px;
  padding: 7px;
}

.reference-card.selected {
  border-color: #ef4444;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.15);
}

.reference-card .reference-tile {
  border: 0;
}

.reference-tile img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  display: block;
  background: #f8fafc;
  border-radius: 8px 8px 0 0;
}

.reference-tile span {
  display: block;
  padding: 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 12px;
}

.reference-tile em {
  display: block;
  margin: 0 8px 8px;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.2;
  max-width: calc(100% - 16px);
  overflow: hidden;
  padding: 4px 7px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.remove-image-btn {
  width: 100%;
  margin-top: 5px;
  border: 1px solid #f2b8b5;
  border-radius: 7px;
  background: #fff5f5;
  color: #b42318;
  padding: 7px 8px;
  font-size: 12px;
}

.reference-card-actions {
  display: grid;
  gap: 6px;
}

.reference-card-actions small {
  color: #667085;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tag-select {
  width: 100%;
  margin-top: 5px;
  font-size: 12px;
  padding: 7px 8px;
}

.image-library-save-bar {
  align-items: center;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  bottom: 14px;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin-top: 18px;
  padding: 10px 12px;
  position: sticky;
  z-index: 15;
}

.image-library-save-bar > div {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.image-library-save-bar strong {
  color: #101828;
  font-size: 13px;
}

.image-library-save-bar span {
  color: #667085;
  font-size: 12px;
}

.image-library-save-state {
  border: 1px solid #bbf7d0;
  border-radius: 999px;
  background: #ecfdf3;
  color: #027a48 !important;
  font-weight: 800;
  padding: 5px 9px;
}

.image-library-save-bar.needs-tags {
  border-color: #fedf89;
  background: rgba(255, 250, 235, 0.97);
}

.image-library-save-bar.needs-tags .image-library-save-state {
  border-color: #fedf89;
  background: #fffaeb;
  color: #b54708 !important;
}

.workflow-next-step-bar {
  align-items: center;
  background: #fff;
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin-top: 18px;
  padding: 12px;
}

.workflow-next-step-bar div {
  display: grid;
  gap: 3px;
}

.workflow-next-step-bar span,
.workflow-next-step-bar small {
  color: #667085;
  font-size: 12px;
}

.workflow-next-step-bar strong {
  color: #101828;
}

.workflow-next-footer {
  align-items: center;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin-top: 16px;
}

.workflow-next-footer div {
  display: grid;
  gap: 3px;
}

.workflow-next-footer span,
.workflow-next-footer small {
  color: #667085;
  font-size: 12px;
}

.workflow-next-footer strong {
  color: #101828;
}

.restore-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 10px;
}

.restore-tile {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 10px;
  border: 1px solid #dde3ed;
  border-radius: 8px;
  padding: 8px;
  background: #fff;
}

.restore-tile img {
  width: 90px;
  height: 68px;
  object-fit: cover;
  border-radius: 7px;
  background: #e5e7eb;
}

.restore-tile strong,
.restore-tile span {
  display: block;
  font-size: 12px;
}

.restore-tile span {
  color: #6b7280;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 3px 0 7px;
}

.restore-tile button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 6px 8px;
  font-size: 12px;
}

.block-list {
  display: grid;
  gap: 8px;
}

.block-row {
  display: grid;
  grid-template-columns: 44px 1fr 160px 170px 72px;
  gap: 10px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 12px;
}

.block-row button,
.approval-controls button,
.version-row,
.template-suggestions span {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #344054;
  padding: 7px 9px;
  font-size: 12px;
}

.template-suggestions {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.template-suggestions h3 {
  width: 100%;
  margin: 0;
}

.template-brief {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}

.template-brief div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
}

.template-brief span {
  display: block;
  color: #667085;
  font-size: 12px;
  margin-bottom: 6px;
}

.template-brief strong {
  font-size: 13px;
  line-height: 1.35;
}

.block-row em {
  font-style: normal;
  color: #6b7280;
}

.block-tabs {
  display: flex;
  gap: 6px;
  margin-bottom: 16px;
}

.block-tabs button {
  color: #374151;
  background: #eef1f5;
  display: grid;
  gap: 2px;
  min-width: 132px;
}

.block-tabs button small {
  color: inherit;
  font-size: 0.78rem;
  font-weight: 650;
  line-height: 1.2;
  opacity: 0.78;
}

.timeline {
  display: grid;
  gap: 10px;
}

.preview-monitor {
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
  background: #111827;
  margin: 0 auto 12px;
  max-height: min(78vh, 820px);
  width: 100%;
}

.preview-monitor.format-9x16 {
  aspect-ratio: 9 / 16;
  width: min(100%, 430px);
}

.preview-monitor.format-2x3 {
  aspect-ratio: 2 / 3;
  width: min(100%, 470px);
}

.preview-monitor.format-3x4 {
  aspect-ratio: 3 / 4;
  width: min(100%, 500px);
}

.preview-monitor.format-4x5 {
  aspect-ratio: 4 / 5;
  width: min(100%, 540px);
}

.preview-monitor.format-1x1 {
  aspect-ratio: 1 / 1;
  width: min(100%, 600px);
}

.preview-monitor.format-5x4 {
  aspect-ratio: 5 / 4;
  width: min(100%, 720px);
}

.preview-monitor.format-4x3 {
  aspect-ratio: 4 / 3;
  width: min(100%, 760px);
}

.preview-monitor.format-3x2 {
  aspect-ratio: 3 / 2;
  width: min(100%, 820px);
}

.preview-monitor.format-16x9 {
  aspect-ratio: 16 / 9;
  width: 100%;
}

.preview-monitor.format-21x9 {
  aspect-ratio: 21 / 9;
  width: 100%;
}

.preview-monitor.format-auto {
  aspect-ratio: 16 / 9;
  width: 100%;
}

.preview-monitor img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0.78;
}

.preview-monitor.clean-asset-preview img {
  opacity: 1;
}

.preview-monitor.source-image-preview {
  border: 1px solid #f59e0b;
}

.preview-monitor.source-image-preview img {
  opacity: 0.9;
}

.source-image-preview-badge {
  align-items: center;
  background: rgba(15, 23, 42, 0.86);
  color: #fff;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  left: 12px;
  padding: 8px 10px;
  position: absolute;
  right: 12px;
  top: 12px;
  z-index: 4;
}

.source-image-preview-badge strong,
.source-image-preview-badge span {
  font-size: 12px;
  line-height: 1.3;
}

.source-image-preview-badge span {
  color: #cbd5e1;
}

.critical-reference-details {
  display: grid;
  gap: 6px;
  margin: 12px 0;
}

.critical-reference-details textarea {
  min-height: 58px;
  resize: vertical;
}

.critical-reference-details small {
  color: #64748b;
}

.preview-monitor video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  background: #000;
}

.preview-monitor.has-video video {
  position: relative;
  z-index: 3;
  pointer-events: auto;
}

.preview-monitor.is-empty,
.preview-monitor.is-loading,
.preview-monitor.is-failed {
  background: #0f172a;
}

.generation-loading-state {
  position: absolute;
  inset: 0;
  align-items: center;
  color: #fff;
  display: grid;
  gap: 8px;
  justify-items: center;
  padding: 28px;
  text-align: center;
  z-index: 1;
}

.preview-monitor.is-loading .generation-loading-state {
  background: linear-gradient(135deg, rgba(15, 23, 42, 0.94), rgba(30, 41, 59, 0.9));
  z-index: 5;
}

.preview-monitor.is-loading img,
.preview-monitor.is-loading video {
  opacity: 0.22;
}

.preview-monitor.is-loading .source-image-preview-badge {
  opacity: 0;
  pointer-events: none;
}

.generation-loading-state i {
  width: 36px;
  height: 36px;
  border: 4px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 999px;
  animation: vidtorq-spin 0.85s linear infinite;
}

.generation-loading-state strong {
  font-size: 22px;
}

.loading-dots::after {
  content: "";
  display: inline-block;
  min-width: 1.4em;
  text-align: left;
  animation: vidtorq-loading-dots 1.15s steps(4, end) infinite;
}

.generation-loading-state span {
  color: #dbeafe;
  max-width: 460px;
}

.generation-loading-state.empty {
  background: linear-gradient(135deg, rgba(15, 23, 42, 0.98), rgba(30, 41, 59, 0.94));
}

.generation-loading-state.failed {
  background: rgba(127, 29, 29, 0.92);
}

.asset-load-failed-state {
  display: none;
}

.preview-monitor.asset-load-failed .asset-load-failed-state {
  display: grid;
  z-index: 6;
}

.preview-monitor.asset-load-failed .preview-overlay,
.preview-monitor.asset-load-failed .text-overlay-layer {
  display: none;
}

@keyframes vidtorq-spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes vidtorq-loading-dots {
  0% {
    content: "";
  }
  25% {
    content: ".";
  }
  50% {
    content: "..";
  }
  75%,
  100% {
    content: "...";
  }
}

.preview-overlay {
  position: absolute;
  inset: auto 18px 18px 18px;
  color: #fff;
  display: grid;
  gap: 4px;
}

.preview-overlay span {
  width: 42px;
  height: 28px;
  border-radius: 6px;
  background: #ef4444;
  display: grid;
  place-items: center;
  font-weight: 800;
}

.preview-overlay strong {
  font-size: 24px;
}

.block-text-preview {
  position: absolute;
  left: 18px;
  right: 18px;
  z-index: 2;
  align-items: center;
  display: flex;
  gap: 10px;
  color: var(--overlay-font-color, #fff);
  font-family: var(--overlay-font-family, Inter, Arial, sans-serif);
  font-size: var(--overlay-font-size, 18px);
  line-height: 1.25;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.72);
  pointer-events: none;
  max-width: calc(100% - 36px);
  min-width: 0;
  overflow-wrap: anywhere;
}

.block-text-preview.top {
  top: 18px;
}

.block-text-preview.center {
  top: 50%;
  transform: translateY(-50%);
}

.block-text-preview.bottom {
  bottom: 92px;
}

.block-text-preview.bold,
.block-text-preview.bold-italic,
.block-text-preview.uppercase {
  font-weight: 800;
}

.block-text-preview.italic,
.block-text-preview.bold-italic {
  font-style: italic;
}

.block-text-preview.uppercase {
  text-transform: uppercase;
}

.block-text-preview.design-red_tag_callout,
.block-text-preview.design-rugged_stamp {
  background: rgba(239, 68, 68, 0.9);
  border-radius: 6px;
  justify-content: center;
  padding: 9px 13px;
  text-transform: uppercase;
}

.block-text-preview.design-feature_badge,
.block-text-preview.design-social_pop,
.block-text-preview.design-inventory_tag {
  background: rgba(17, 24, 39, 0.74);
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 999px;
  justify-content: center;
  padding: 8px 14px;
}

.block-text-preview.design-price_card {
  background: rgba(255, 255, 255, 0.92);
  border-radius: 8px;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.22);
  color: var(--overlay-font-color, #111827);
  justify-content: center;
  padding: 12px 16px;
  text-shadow: none;
}

.block-text-preview.design-premium_glass,
.block-text-preview.design-luxury_minimal {
  background: rgba(15, 23, 42, 0.42);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 8px;
  justify-content: center;
  padding: 10px 14px;
}

.block-text-preview.design-website_strip {
  background: rgba(17, 24, 39, 0.82);
  border-radius: 6px;
  justify-content: center;
  padding: 9px 12px;
}

.block-text-preview.oem-bold-flyin {
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: clamp(40px, var(--overlay-font-size, 48px), 72px);
  font-weight: 900;
  justify-content: center;
  letter-spacing: 0;
  line-height: 0.92;
  max-width: calc(100% - 16px);
  right: 8px;
  left: 8px;
  text-align: center;
  text-shadow: 0 4px 18px rgba(0, 0, 0, 0.76);
  text-transform: uppercase;
}

.block-text-preview.oem-bold-flyin.bottom {
  bottom: 118px;
}

.block-text-preview.oem-bold-flyin strong {
  display: flex;
  flex-wrap: wrap;
  gap: 0.04em 0.18em;
  justify-content: center;
  max-width: min(100%, 430px);
  min-width: 0;
}

.block-text-preview.oem-bold-flyin strong span {
  animation: oem-bold-flyin-word 1.9s cubic-bezier(0.16, 1, 0.3, 1) infinite;
  animation-delay: calc(var(--word-index, 0) * 90ms);
  color: var(--overlay-font-color, #fff);
  display: inline-block;
  -webkit-text-stroke: 1.2px rgba(255, 255, 255, 0.96);
}

@keyframes oem-bold-flyin-word {
  0% {
    opacity: 0;
    transform: translateX(-42px) scale(1.06);
    color: rgba(255, 255, 255, 0);
  }
  16% {
    opacity: 0.72;
    color: rgba(255, 255, 255, 0);
  }
  34%,
  82% {
    opacity: 1;
    transform: translateX(0) scale(1);
    color: var(--overlay-font-color, #fff);
  }
  100% {
    opacity: 0;
    transform: translateX(12px) scale(1);
    color: var(--overlay-font-color, #fff);
  }
}

.block-text-preview strong {
  display: inline-block;
  max-width: 100%;
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
}

.overlay-logo-mark {
  align-items: center;
  background: rgba(255, 255, 255, 0.94);
  border-radius: 6px;
  color: #111827;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 900;
  min-height: 34px;
  min-width: 44px;
  padding: 6px 8px;
  text-shadow: none;
}

.overlay-logo-mark img {
  display: block;
  max-height: 24px;
  max-width: 72px;
  object-fit: contain;
}

.editor-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.editor-actions button:disabled {
  cursor: wait;
  opacity: 0.65;
}

.customer-secondary-actions {
  justify-content: flex-end;
}

.customer-secondary-actions button:nth-child(-n + 3) {
  display: none;
}

.customer-clip-action-panel {
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #f8fbff;
  padding: 14px;
  margin: 12px 0;
}

.customer-clip-action-panel .primary-action {
  display: grid;
  gap: 2px;
  min-width: 190px;
  justify-items: center;
}

.customer-clip-action-panel .primary-action small {
  color: inherit;
  font-size: 12px;
  opacity: 0.8;
}

.customer-clip-action-panel .inline-details {
  margin-top: 10px;
}

.customer-clip-action-panel .inline-details summary {
  cursor: pointer;
  font-weight: 800;
}

.customer-clip-action-panel .inline-details p {
  margin: 8px 0;
}

.customer-clip-action-panel .inline-details button {
  background: #ffffff;
  border: 1px solid #b7c4d6;
  border-radius: 6px;
  color: #111827;
  cursor: pointer;
  font-weight: 800;
  padding: 8px 10px;
}

.customer-clip-action-panel .inline-details button small {
  display: block;
  font-size: 11px;
  font-weight: 700;
  opacity: 0.75;
}

.ready-generation-action {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: space-between;
}

.ready-generation-action div {
  display: grid;
  gap: 4px;
}

.ready-generation-action small {
  color: #047857;
}

.ready-generation-action .ready-asset-preview {
  background: #0f172a;
  border-radius: 8px;
  display: block;
  flex: 1 1 100%;
  overflow: hidden;
  width: 100%;
}

.ready-generation-action .ready-asset-preview img,
.ready-generation-action .ready-asset-preview video {
  aspect-ratio: 16 / 9;
  display: block;
  max-height: 520px;
  object-fit: contain;
  width: 100%;
}

.ready-generation-action button {
  background: #ef4444;
  border: 0;
  border-radius: 8px;
  color: #fff;
  cursor: pointer;
  font-weight: 800;
  min-width: 220px;
  padding: 12px 16px;
}

.ready-generation-action button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.ready-generation-action button small {
  color: rgba(255, 255, 255, 0.92);
  display: block;
  font-size: 12px;
  margin-top: 3px;
}

.ready-generation-action .reference-accuracy-panel,
.ready-generation-action .compact-qa {
  flex: 1 1 100%;
  margin: 4px 0 0;
}

.reference-accuracy-panel {
  min-width: min(100%, 620px);
}

.reference-accuracy-panel .preflight-item {
  grid-template-columns: 64px 1fr;
}

.reference-accuracy-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ready-generation-action .reference-accuracy-actions,
.reference-accuracy-actions {
  display: flex;
  justify-content: flex-start;
}

.reference-accuracy-actions button {
  background: #ef4444;
  border: 0;
  border-radius: 8px;
  color: #fff;
  cursor: pointer;
  font-weight: 800;
  padding: 10px 14px;
}

.reference-accuracy-actions button small {
  color: rgba(255, 255, 255, 0.88);
  display: block;
  font-size: 11px;
  margin-top: 2px;
}

.production-step-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.production-completion-banner {
  align-items: center;
  border: 1px solid #fcd34d;
  border-radius: 8px;
  background: #fffbeb;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 240px) auto;
  gap: 12px;
  margin-bottom: 12px;
  padding: 12px 14px;
}

.production-completion-banner.complete {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.production-completion-banner div:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.production-completion-banner span {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.production-completion-banner strong {
  color: #101828;
  font-size: 18px;
}

.production-completion-banner small {
  color: #475467;
}

.production-completion-meter {
  background: #e5e7eb;
  border-radius: 999px;
  height: 8px;
  overflow: hidden;
}

.production-completion-meter i {
  background: #ef4444;
  display: block;
  height: 100%;
}

.production-completion-banner.complete .production-completion-meter i {
  background: #059669;
}

.lazy-reference-library {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 12px;
}

.lazy-reference-library p {
  color: #667085;
  margin: 0;
}

.lazy-reference-library button {
  justify-self: start;
}

.production-step-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 8px 10px;
  align-items: start;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  min-height: 112px;
}

.production-step-card > span {
  grid-row: span 2;
  border-radius: 999px;
  background: #eef2f7;
  color: #334155;
  font-size: 11px;
  font-weight: 800;
  padding: 5px 7px;
  white-space: nowrap;
}

.production-step-card div {
  display: grid;
  gap: 4px;
}

.production-step-card strong,
.production-step-card small,
.production-step-card em {
  display: block;
}

.production-step-card strong {
  font-size: 14px;
  line-height: 1.25;
}

.production-step-card small {
  color: #64748b;
  line-height: 1.35;
}

.production-step-card em {
  grid-column: 2;
  align-self: end;
  color: #64748b;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  text-transform: uppercase;
}

.production-step-card.complete {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.production-step-card.complete > span,
.production-step-card.complete em {
  color: #047857;
}

.production-step-card.active {
  border-color: #fcd34d;
  background: #fffbeb;
}

.production-step-card.active > span,
.production-step-card.active em {
  color: #92400e;
}

.production-step-card.blocked {
  border-color: #fecaca;
  background: #fff7f7;
}

.production-step-card.blocked > span,
.production-step-card.blocked em {
  color: #dc2626;
}

.generation-next-step {
  display: grid;
  gap: 5px;
  margin-top: 12px;
}

.generation-next-step span,
.generation-next-step small {
  color: #64748b;
}

.generation-next-step button {
  justify-self: start;
  margin-top: 4px;
}

.generation-review-gate {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid #fcd34d;
  border-radius: 8px;
  background: #fffbeb;
  padding: 14px;
}

.generation-review-gate div {
  display: grid;
  gap: 4px;
}

.generation-review-gate strong,
.generation-review-gate span,
.generation-review-gate small {
  display: block;
}

.generation-review-gate span,
.generation-review-gate small {
  color: #64748b;
  line-height: 1.4;
}

.generation-review-gate button {
  flex: 0 0 auto;
}

.generation-review-gate .prompt-gate-stop {
  color: #9a3412;
  font-weight: 800;
}

.generation-starting-panel {
  margin-top: 12px;
}

.generation-credit-gate {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid #fcd34d;
  border-radius: 8px;
  background: #fffbeb;
  padding: 14px;
}

.generation-credit-gate div {
  display: grid;
  gap: 4px;
}

.generation-credit-gate strong,
.generation-credit-gate span,
.generation-credit-gate small,
.generation-credit-gate em {
  display: block;
}

.generation-credit-gate span,
.generation-credit-gate small,
.generation-credit-gate em {
  color: #64748b;
  line-height: 1.4;
}

.generation-credit-gate em {
  font-style: normal;
}

.generation-credit-gate button {
  flex: 0 0 auto;
}

.reference-approval-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-top: 1px solid #dbe3ef;
  margin-top: 12px;
  padding-top: 12px;
}

.reference-approval-row div {
  display: grid;
  gap: 3px;
}

.reference-approval-row strong,
.reference-approval-row small {
  display: block;
}

.reference-approval-row small {
  color: #64748b;
  line-height: 1.35;
}

.reference-approval-row button {
  flex: 0 0 auto;
}

.reference-source-note {
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  display: flex;
  align-items: flex-start;
  gap: 3px;
  margin-bottom: 12px;
  padding: 10px 12px;
}

.reference-source-note strong,
.reference-source-note span {
  display: block;
}

.reference-source-note strong {
  flex: 0 0 auto;
  font-size: 13px;
  margin-right: 8px;
}

.reference-source-note span {
  color: #35548c;
  font-size: 13px;
  line-height: 1.35;
}

.clip-step-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.clip-step-status {
  display: grid;
  gap: 5px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.clip-step-status span {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.clip-step-status strong {
  font-size: 14px;
}

.clip-step-status small {
  color: #64748b;
  line-height: 1.35;
}

.clip-step-status.ready {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.clip-step-status.ready span {
  color: #047857;
}

.clip-step-status.blocked {
  border-color: #fecaca;
  background: #fff7f7;
}

.clip-step-status.blocked span {
  color: #dc2626;
}

.customer-advanced-prompt {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 10px 12px;
  margin-bottom: 12px;
}

.customer-advanced-prompt summary {
  cursor: pointer;
  font-weight: 800;
}

.customer-advanced-prompt .prompt-grid {
  margin-top: 12px;
}

.customer-reference-package,
.customer-reference-drawer-more {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  margin: 12px 0;
  padding: 10px 12px;
}

.customer-reference-package summary,
.customer-reference-drawer-more summary {
  cursor: pointer;
  font-weight: 800;
}

.customer-reference-package .reference-package-panel {
  border: 0;
  margin-top: 12px;
  padding: 0;
}

.customer-advanced-prompt .block-text-overlay-panel {
  border: 0;
  margin: 12px 0 0;
  padding: 0;
}

.block-text-overlay-panel {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  margin: 12px 0;
}

.block-text-overlay-panel textarea {
  min-height: 68px;
}

.advanced-text-tools {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  margin-bottom: 12px;
}

.advanced-text-tools summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  list-style-position: inside;
  padding: 10px 12px;
}

.advanced-text-tools summary span {
  color: #111827;
  font-weight: 900;
}

.advanced-text-tools summary small {
  color: #64748b;
  font-size: 12px;
  overflow-wrap: anywhere;
  text-align: right;
}

.voice-triggered-text-panel {
  display: grid;
  gap: 10px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #f8fbff;
  margin: 0 12px 12px;
  padding: 12px;
}

.voice-triggered-text-panel strong,
.voice-triggered-text-panel small {
  display: block;
}

.voice-triggered-text-panel small {
  color: #64748b;
  margin-top: 3px;
}

.voice-triggered-text-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 8px;
}

.voice-triggered-text-grid button {
  border: 1px solid #cfd6e3;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  display: grid;
  gap: 4px;
  min-height: 96px;
  padding: 10px;
  text-align: left;
}

.voice-triggered-text-grid button.matched {
  border-color: #86efac;
  background: #f0fdf4;
}

.voice-triggered-text-grid button span {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.voice-triggered-text-grid button strong {
  font-size: 15px;
}

.text-design-picker {
  display: grid;
  gap: 10px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  margin-bottom: 12px;
  padding: 12px;
}

.text-design-picker strong,
.text-design-picker small {
  display: block;
}

.text-design-picker small {
  color: #64748b;
  margin-top: 3px;
}

.text-design-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 8px;
}

.text-design-grid button {
  border: 1px solid #cfd6e3;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  display: grid;
  gap: 4px;
  min-height: 74px;
  padding: 10px;
  text-align: left;
}

.text-design-grid button.selected {
  border-color: #86efac;
  background: #f0fdf4;
}

.text-design-grid button span {
  font-weight: 900;
}

.quick-text-options {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.quick-text-options > strong {
  font-size: 13px;
}

.quick-text-options > div {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.quick-text-options button {
  background: #fff;
  border: 1px solid #cfd6e3;
  border-radius: 8px;
  color: #111827;
  cursor: pointer;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  text-align: left;
}

.quick-text-options button span {
  font-weight: 900;
}

.quick-text-options button small {
  color: #64748b;
}

.music-candidate-list {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.music-candidate-list > strong {
  font-size: 13px;
}

.music-candidate-list article {
  align-items: center;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(130px, 0.7fr) minmax(220px, 1.4fr) auto;
  padding: 10px;
}

.music-candidate-list article.selected {
  background: #f0fdf4;
  border-color: #86efac;
}

.music-candidate-list span,
.music-candidate-list small {
  display: block;
}

.music-candidate-list span {
  font-weight: 900;
}

.music-candidate-list small {
  color: #64748b;
  font-size: 12px;
}

.music-candidate-list audio {
  max-width: 100%;
  width: 100%;
}

.text-logo-toggle {
  align-content: center;
  border: 1px solid #dbe3ef;
  border-radius: 7px;
  padding: 8px 10px;
}

.block-text-controls {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.pattern-audio-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff7ed;
  padding: 12px;
}

.pattern-audio-panel > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.pattern-audio-panel strong {
  color: #9a3412;
}

.pattern-audio-panel span {
  color: #c2410c;
  font-weight: 700;
  font-size: 13px;
}

.compact-toggle {
  align-self: start;
  margin: 0;
  white-space: nowrap;
}

.prompt-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 12px;
}

.voiceover-script-panel {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.voiceover-script-panel label {
  display: grid;
  gap: 8px;
}

.voiceover-script-panel button {
  width: 100%;
}

.voiceover-script-panel small {
  color: #64748b;
}

.clip-copy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.editor-actions button,
.inspector-buttons button {
  border: 1px solid #cfd6e3;
  background: #fff;
  border-radius: 7px;
  padding: 8px 10px;
}

.timeline-strip {
  min-height: 46px;
  display: flex;
  gap: 4px;
  border: 1px solid #dbe2ec;
  border-radius: 8px;
  padding: 6px;
  background: #f8fafc;
  margin-bottom: 8px;
}

.editor-timeline {
  border: 1px solid #dbe2ec;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
  display: grid;
  gap: 8px;
  margin-bottom: 8px;
}

.editor-timeline.drag-over {
  outline: 2px solid #ef4444;
  outline-offset: 2px;
}

.time-ruler {
  display: flex;
  justify-content: space-between;
  color: #6b7280;
  font-size: 11px;
  padding-left: 92px;
}

.track-row {
  display: grid;
  grid-template-columns: 84px 1fr;
  gap: 8px;
  align-items: stretch;
}

.track-label {
  color: #475467;
  font-size: 12px;
  display: grid;
  place-items: center end;
}

.track-lane {
  min-height: 42px;
  border: 1px dashed #ccd4df;
  border-radius: 7px;
  padding: 5px;
  display: flex;
  gap: 4px;
  align-items: stretch;
  background: #fff;
}

.track-segment {
  min-width: 52px;
  border: 0;
  border-radius: 6px;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  padding: 0 8px;
}

.track-segment.main {
  background: #111827;
}

.track-segment.insert {
  background: #ef4444;
  cursor: grab;
}

.track-segment.insert.selected {
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.25);
}

.track-segment.insert.dragging,
.timeline-dock-insert-group span.dragging {
  cursor: grabbing;
  opacity: 0.45;
}

.insert-drop-target {
  outline: 2px solid #f59e0b;
  outline-offset: 2px;
}

.track-segment.overlay {
  background: #475467;
}

.track-segment.voice {
  background: #2563eb;
}

.track-segment.music {
  background: #7c3aed;
}

.clip-trim-panel {
  align-items: end;
  background: #fff;
  border: 1px solid #dbe2ec;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 150px 150px;
  margin-bottom: 10px;
  padding: 12px;
}

.clip-trim-panel strong,
.clip-trim-panel small {
  display: block;
}

.clip-trim-panel small {
  color: #667085;
  margin-top: 3px;
}

.clip-trim-panel input {
  width: 100%;
}

.camtasia-timeline-dock {
  display: grid;
  gap: 8px;
  margin-top: 16px;
  position: sticky;
  bottom: 12px;
  z-index: 20;
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.14);
}

.camtasia-timeline-dock.locked {
  border-color: #86efac;
}

.timeline-dock-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.timeline-dock-actions button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #111827;
  font-weight: 800;
  padding: 9px 11px;
}

.timeline-dock-ruler {
  color: #667085;
  display: flex;
  font-size: 11px;
  justify-content: space-between;
  padding: 0 4px;
}

.timeline-dock-lane {
  display: flex;
  gap: 4px;
  min-height: 28px;
}

.timeline-dock-clip {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #111827;
  color: #fff;
  cursor: pointer;
  display: grid;
  gap: 2px;
  min-width: 80px;
  padding: 8px;
  position: relative;
  text-align: left;
}

.timeline-dock-clip.active {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.24);
}

.timeline-dock-clip span,
.timeline-dock-clip small {
  color: rgba(255, 255, 255, 0.76);
  font-size: 11px;
}

.timeline-dock-clip strong {
  font-size: 15px;
}

.timeline-overlay-marker {
  background: #facc15;
  border-radius: 999px;
  bottom: 6px;
  height: 7px;
  position: absolute;
  right: 7px;
  width: 7px;
}

.timeline-dock-insert-group,
.timeline-dock-audio,
.timeline-dock-music {
  align-items: center;
  border-radius: 6px;
  display: flex;
  min-width: 80px;
  padding: 5px 7px;
}

.timeline-dock-insert-group {
  background: #fee2e2;
  gap: 4px;
}

.timeline-dock-insert-group span {
  align-items: center;
  background: #ef4444;
  border-radius: 999px;
  color: #fff;
  cursor: grab;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  height: 20px;
  justify-content: center;
  width: 20px;
}

.timeline-dock-audio {
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
}

.timeline-dock-music {
  background: #ede9fe;
  color: #5b21b6;
  flex: 1 1 100%;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
}

.drop-hint {
  color: #98a2b3;
  display: grid;
  place-items: center;
  font-size: 12px;
  padding: 0 10px;
}

.strip-segment {
  min-width: 54px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  padding: 0 8px;
}

.strip-segment.main {
  background: #111827;
}

.strip-segment.insert {
  background: #ef4444;
}

.status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
}

.mini-status {
  border-radius: 999px;
  padding: 6px 9px;
  font-size: 12px;
  border: 1px solid #d5dae4;
  color: #475467;
  background: #f8fafc;
}

.mini-status.ready {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #047857;
}

.mini-status.pending {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #c2410c;
}

.mini-status.submitted {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
}

.mini-status.sent-back {
  background: #fef2f2;
  border-color: #fecaca;
  color: #b91c1c;
}

.mini-status.healthy {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #047857;
}

.mini-status.needs-attention {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #c2410c;
}

.mini-status.blocked {
  background: #fef2f2;
  border-color: #fecaca;
  color: #b91c1c;
}

.mini-status.optional,
.mini-status.locked {
  background: #f4f4f5;
  color: #52525b;
}

.coverage-list {
  display: grid;
  gap: 8px;
}

.coverage-list div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid #e5e9f0;
  padding-bottom: 8px;
}

.toggle-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  white-space: nowrap;
}

.toggle-row input {
  width: auto;
}

.clip {
  border: 1px solid #dbe2ec;
  border-radius: 8px;
  padding: 12px;
}

.main-clip {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #111827;
  color: #fff;
}

.insert-clip {
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 12px;
  background: #f9fafb;
}

.insert-clip img {
  width: 160px;
  height: 110px;
  object-fit: cover;
  border-radius: 7px;
}

.insert-clip button {
  border: 1px solid #cfd6e3;
  background: #fff;
  border-radius: 7px;
  padding: 8px 10px;
}

.reference-drawer {
  max-height: calc(100vh - 150px);
  overflow: auto;
}

.insert-inspector,
.inspector-empty {
  border: 1px solid #dbe2ec;
  border-radius: 8px;
  padding: 12px;
  margin-bottom: 18px;
  background: #f8fafc;
}

.insert-inspector img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 7px;
  margin-bottom: 10px;
}

.inspector-buttons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
}

.final-preview {
  display: grid;
  grid-template-columns: 1.3fr 0.7fr;
  gap: 18px;
  align-items: center;
}

.review-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.review-card {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 12px;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 10px;
  background: #fff;
}

.review-thumb {
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: 7px;
  background: #111827;
  overflow: hidden;
  display: grid;
  place-items: center;
  color: #fff;
  font-weight: 800;
}

.review-thumb img,
.review-thumb video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.review-card h3 {
  margin-bottom: 4px;
}

.review-card p,
.review-card small {
  color: #667085;
  margin-bottom: 6px;
}

.clip-quality-panel {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 12px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
  margin: 12px 0;
}

.clip-quality-panel.compact {
  grid-template-columns: 72px 1fr;
  padding: 10px;
}

.clip-quality-panel.ready {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.clip-quality-panel.warning {
  border-color: #fcd34d;
  background: #fffbeb;
}

.clip-quality-panel.blocked {
  border-color: #fecaca;
  background: #fff7f7;
}

.clip-quality-score {
  display: grid;
  place-items: center;
  align-content: center;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.75);
  min-height: 82px;
  text-align: center;
}

.clip-quality-score span {
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.clip-quality-score strong {
  color: #111827;
  font-size: 28px;
  line-height: 1;
}

.clip-quality-score small {
  color: #64748b;
  margin: 0;
}

.clip-quality-body {
  display: grid;
  gap: 8px;
}

.clip-quality-body p {
  margin: 0;
}

.clip-quality-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.clip-quality-grid div {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.65);
  padding: 8px;
}

.clip-quality-grid span,
.clip-quality-grid strong,
.clip-quality-grid small {
  display: block;
}

.clip-quality-grid span {
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
}

.clip-quality-grid small {
  margin: 3px 0 0;
}

.clip-quality-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.clip-quality-notes span {
  border-radius: 999px;
  padding: 5px 8px;
  font-size: 12px;
  font-weight: 700;
}

.clip-quality-notes .blocked {
  background: #fee2e2;
  color: #991b1b;
}

.clip-quality-notes .warning {
  background: #fef3c7;
  color: #92400e;
}

.campaign-quality-panel {
  border-color: #dbe3ef;
}

.campaign-quality-panel.ready {
  border-color: #bbf7d0;
  background: #f8fffb;
}

.campaign-quality-panel.warning {
  border-color: #fcd34d;
  background: #fffdf5;
}

.campaign-quality-panel.blocked {
  border-color: #fecaca;
  background: #fff7f7;
}

.campaign-quality-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.campaign-quality-summary div {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.7);
  padding: 10px;
}

.campaign-quality-summary span,
.campaign-quality-summary strong,
.campaign-quality-summary small {
  display: block;
}

.campaign-quality-summary span {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.campaign-quality-summary strong {
  font-size: 24px;
}

.campaign-quality-summary small {
  color: #64748b;
  line-height: 1.35;
}

.campaign-quality-strip {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}

.campaign-quality-strip button {
  display: grid;
  gap: 3px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  text-align: left;
}

.campaign-quality-strip button.ready {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.campaign-quality-strip button.warning {
  border-color: #fcd34d;
  background: #fffbeb;
}

.campaign-quality-strip button.blocked {
  border-color: #fecaca;
  background: #fff1f2;
}

.campaign-quality-strip span {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.campaign-quality-strip strong {
  font-size: 22px;
}

.campaign-quality-strip small {
  color: #64748b;
  line-height: 1.25;
}

.campaign-fix-queue.ready {
  border-color: #bbf7d0;
  background: #f8fffb;
}

.fix-queue-list {
  display: grid;
  gap: 8px;
}

.fix-queue-list article {
  display: grid;
  grid-template-columns: 32px 1fr auto auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.fix-queue-list article.warning {
  border-color: #fcd34d;
  background: #fffbeb;
}

.fix-queue-list article.blocked {
  border-color: #fecaca;
  background: #fff1f2;
}

.fix-queue-list article > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: #eef2f7;
  color: #475569;
  font-weight: 800;
}

.fix-queue-list strong,
.fix-queue-list small {
  display: block;
}

.fix-queue-list small {
  color: #64748b;
  line-height: 1.35;
}

.fix-queue-list em {
  color: #111827;
  font-style: normal;
  font-weight: 900;
}

.fix-queue-list button {
  border: 1px solid #ef4444;
  border-radius: 8px;
  background: #ef4444;
  color: #fff;
  font-weight: 800;
  padding: 8px 12px;
}

.review-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.review-summary div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 10px;
  background: #f8fafc;
}

.review-summary span,
.review-summary strong {
  display: block;
}

.review-summary span {
  color: #667085;
  font-size: 12px;
}

.review-summary strong {
  font-size: 20px;
  margin-top: 3px;
}

.brand-discovery-results {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.brand-score-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
}

.brand-score-grid div {
  display: grid;
  gap: 3px;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.brand-score-grid div.approved {
  background: #ecfdf3;
  border-color: #bbf7d0;
}

.brand-score-grid div.ignored {
  background: #fff7ed;
  border-color: #fed7aa;
}

.brand-score-grid span {
  font-size: 20px;
  font-weight: 800;
}

.brand-score-grid small,
.brand-discovery-results details {
  color: #667085;
}

.brand-discovery-results ul {
  margin: 8px 0 0;
  padding-left: 18px;
}

.brand-access-panel label {
  margin-bottom: 10px;
}

.brand-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 12px;
}

.brand-chip-row span {
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: 12px;
  font-weight: 800;
  padding: 6px 10px;
}

.brand-chip-row em {
  color: #667085;
  font-style: normal;
}

.brand-access-preview,
.brand-access-list {
  display: grid;
  gap: 10px;
}

.brand-access-preview {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 10px;
}

.brand-access-preview div,
.brand-access-list div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.brand-access-preview span,
.brand-access-list span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.brand-access-preview strong,
.brand-access-list strong {
  display: block;
}

.brand-access-preview strong {
  font-size: 22px;
  margin-top: 2px;
}

.access-proof-panel {
  display: grid;
  gap: 14px;
}

.proof-actions {
  margin: 0;
}

.proof-actions button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #1f2937;
  font-weight: 700;
  padding: 8px 10px;
}

.proof-summary-grid,
.proof-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.proof-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.proof-summary-grid div,
.proof-detail-grid div,
.proof-row {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.proof-summary-grid span,
.proof-detail-grid span,
.proof-detail-grid small,
.proof-row span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.proof-summary-grid strong,
.proof-detail-grid strong,
.proof-row strong {
  display: block;
  margin-top: 3px;
}

.proof-summary-grid strong {
  font-size: 20px;
}

.proof-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.proof-columns h3 {
  margin-bottom: 8px;
}

.proof-columns > div {
  display: grid;
  align-content: start;
  gap: 8px;
}

.access-snapshot-panel {
  border-top: 1px solid #e1e7f0;
  display: grid;
  gap: 10px;
  padding-top: 14px;
}

.access-snapshot-list {
  display: grid;
  gap: 10px;
}

.access-snapshot-card {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  padding: 10px;
}

.access-snapshot-card p {
  color: #667085;
  font-size: 13px;
  margin: 0;
}

.usage-ledger-panel {
  display: grid;
  gap: 14px;
}

.usage-export-controls {
  align-items: end;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 10px;
}

.usage-export-controls label {
  display: grid;
  gap: 6px;
  margin: 0;
}

.usage-export-controls button {
  border: 1px solid #111827;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  font-weight: 700;
  padding: 10px 12px;
}

.usage-export-controls button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.credit-wallet-panel {
  display: grid;
  gap: 14px;
}

.client-credit-hero {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.client-credit-hero div {
  display: grid;
  gap: 5px;
  min-height: 116px;
  padding: 18px;
  border-right: 1px solid #e1e7f0;
}

.client-credit-hero div:last-child {
  border-right: 0;
}

.client-credit-hero span,
.client-credit-hero small {
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.client-credit-hero strong {
  color: #101828;
  font-size: 30px;
  line-height: 1;
}

.client-credit-workspace {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.client-credit-card {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 14px;
  padding: 18px;
}

.client-credit-controls {
  grid-template-columns: 1.1fr 0.55fr 1fr auto;
}

.client-credit-buys {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.credit-planner-card {
  display: grid;
  gap: 12px;
}

.credit-planner-grid,
.auto-topup-controls {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.credit-planner-grid > div,
.credit-planner-grid label {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  display: grid;
  gap: 5px;
  padding: 11px;
}

.credit-planner-grid label,
.auto-topup-controls label {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.credit-planner-grid input,
.auto-topup-controls input {
  border: 1px solid #cfd8e6;
  border-radius: 8px;
  color: #111827;
  font-size: 15px;
  font-weight: 700;
  min-width: 0;
  padding: 9px 10px;
}

.credit-planner-grid span,
.credit-planner-grid small {
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.credit-planner-grid strong {
  color: #101828;
  font-size: 20px;
}

.credit-planner-card > button.recommended,
.auto-topup-controls button {
  border: 1px solid #111827;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  cursor: pointer;
  font-weight: 800;
  padding: 12px;
}

.credit-planner-card > button.recommended {
  justify-content: center;
  text-align: center;
}

.auto-topup-controls .checkbox-line {
  align-items: center;
  display: flex;
  gap: 9px;
}

.auto-topup-controls .checkbox-line input {
  width: auto;
}

.auto-topup-card {
  align-content: start;
  border-top: 1px solid #e1e7f0;
  display: grid;
  gap: 12px;
  padding-top: 12px;
}

.auto-topup-card > .section-head strong {
  border: 1px solid #fcd34d;
  border-radius: 999px;
  background: #fffbeb;
  color: #92400e;
  font-size: 12px;
  padding: 6px 9px;
}

.auto-topup-preview {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.auto-topup-preview div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
}

.auto-topup-preview span {
  color: #667085;
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 4px;
}

.auto-topup-preview strong {
  color: #101828;
  font-size: 18px;
}

.auto-topup-card > button {
  border: 1px solid #111827;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  font-weight: 800;
  padding: 12px;
}

.auto-topup-card > button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.provider-funding-panel {
  display: grid;
  gap: 14px;
}

.provider-funding-panel.ready {
  border-color: #bbf7d0;
}

.provider-funding-panel.low,
.provider-funding-panel.unverified {
  border-color: #fcd34d;
}

.provider-funding-panel.blocked {
  border-color: #fda4af;
}

.provider-funding-grid,
.provider-funding-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.provider-funding-flow {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.provider-funding-grid div,
.provider-funding-flow article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 12px;
}

.provider-funding-grid span,
.provider-funding-grid small,
.provider-funding-flow small {
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.provider-funding-grid strong {
  color: #101828;
  font-size: 22px;
}

.provider-funding-flow span {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 900;
}

.plan-panel {
  display: grid;
  gap: 14px;
}

.plan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.plan-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.plan-grid div.active {
  border-color: #0ea5e9;
  background: #eff6ff;
}

.plan-grid span,
.plan-grid small {
  color: #667085;
  display: block;
  font-size: 12px;
}

.plan-grid strong {
  display: block;
  margin: 3px 0;
}

.plan-grid button {
  border: 1px solid #111827;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  cursor: pointer;
  font-weight: 800;
  margin-top: 10px;
  padding: 8px 10px;
  width: 100%;
}

.credit-add-controls {
  align-items: end;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr 1.4fr auto;
  gap: 10px;
}

.credit-add-controls label {
  display: grid;
  gap: 6px;
  margin: 0;
}

.credit-add-controls button {
  border: 1px solid #111827;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  font-weight: 700;
  padding: 10px 12px;
}

.addon-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.addon-grid button {
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  display: grid;
  gap: 4px;
  padding: 12px;
  text-align: left;
}

.addon-grid button:hover {
  border-color: #0ea5e9;
  background: #eff6ff;
}

.addon-grid span,
.addon-grid small {
  color: #667085;
  display: block;
  font-size: 12px;
}

.addon-grid strong {
  display: block;
}

.billing-addon-panel {
  display: grid;
  gap: 14px;
}

.subscription-checkout-panel.ready {
  border-color: #bbf7d0;
}

.subscription-checkout-panel.blocked {
  border-color: #fecaca;
}

.checkout-readiness-list {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  margin: 12px 0;
}

.checkout-readiness-list div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 10px;
}

.checkout-readiness-list div.ready {
  background: #f0fdf4;
  border-color: #bbf7d0;
}

.checkout-readiness-list div.blocked {
  background: #fff1f2;
  border-color: #fecaca;
}

.checkout-readiness-list span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.credit-purchase-command {
  display: grid;
  gap: 14px;
}

.credit-purchase-command.ready {
  border-color: #a7f3d0;
}

.credit-purchase-command.warning {
  border-color: #fbbf24;
  background: #fffbeb;
}

.credit-purchase-command.blocked {
  border-color: #f2b8b5;
  background: #fff7f7;
}

.credit-purchase-command .section-head strong {
  color: #111827;
  font-size: 18px;
  max-width: 520px;
  text-align: right;
}

.purchase-readiness-grid,
.purchase-action-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.purchase-readiness-grid div,
.purchase-action-grid button {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 11px;
  text-align: left;
}

.purchase-readiness-grid div.ready {
  border-color: #a7f3d0;
  background: #ecfdf5;
}

.purchase-readiness-grid div.warning {
  border-color: #fbbf24;
  background: #fffbeb;
}

.purchase-readiness-grid div.blocked {
  border-color: #f2b8b5;
  background: #fff1f2;
}

.purchase-cost-note {
  align-items: center;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  display: flex;
  gap: 8px;
  padding: 10px 12px;
}

.purchase-cost-note span {
  color: #1d4ed8;
  font-size: 13px;
}

.trial-allowance-panel {
  background: #fff7ed;
  border: 1px solid rgba(245, 158, 11, 0.35);
  border-radius: 8px;
  color: #7c2d12;
  display: grid;
  gap: 4px;
  padding: 10px 12px;
}

.trial-allowance-panel strong {
  color: #111827;
}

.trial-allowance-panel span,
.trial-allowance-panel small {
  color: #7c2d12;
  font-size: 13px;
}

.purchase-readiness-grid span,
.purchase-readiness-grid small,
.purchase-action-grid span,
.purchase-action-grid small {
  color: #667085;
  font-size: 12px;
}

.purchase-action-grid button {
  cursor: pointer;
}

.purchase-action-grid button.recommended {
  border-color: #111827;
  background: #111827;
  color: #fff;
}

.purchase-action-grid button.recommended span,
.purchase-action-grid button.recommended small {
  color: #d1d5db;
}

.billing-statement-panel {
  display: grid;
  gap: 14px;
}

.billing-reconciliation-panel {
  display: grid;
  gap: 14px;
}

.billing-closeout-panel {
  display: grid;
  gap: 14px;
}

.closeout-grid small {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 2px;
}

.closeout-file-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.closeout-file-grid article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 5px;
  padding: 10px;
}

.closeout-file-grid span {
  color: #667085;
  font-size: 12px;
  line-height: 1.4;
}

.closeout-file-grid em {
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  justify-self: start;
  padding: 4px 8px;
  text-transform: uppercase;
}

.closeout-readiness {
  align-items: center;
  border: 1px solid #bde8c9;
  border-radius: 8px;
  background: #f1fbf5;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding: 12px;
}

.closeout-readiness.needs-review {
  background: #fff8eb;
  border-color: #fedf89;
}

.closeout-readiness.locked {
  background: #eef2ff;
  border-color: #c7d2fe;
}

.closeout-readiness span {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 3px;
}

.closeout-actions {
  flex: 0 0 auto;
  justify-content: flex-end;
}

.billing-closeout-history-panel {
  display: grid;
  gap: 14px;
}

.billing-renewal-panel {
  display: grid;
  gap: 14px;
}

.renewal-grid small {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 2px;
}

.renewal-status-card,
.renewal-meter-card {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding: 12px;
}

.renewal-status-card.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.renewal-status-card.watch,
.renewal-status-card.pending {
  background: #fff8eb;
  border-color: #fedf89;
}

.renewal-status-card.blocked {
  background: #fff1f3;
  border-color: #fecdd6;
}

.renewal-status-card span,
.renewal-meter-card span {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 3px;
}

.renewal-status-card em {
  border-radius: 999px;
  background: #111827;
  color: #fff;
  flex: 0 0 auto;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  padding: 6px 9px;
}

.renewal-meter-card {
  align-items: stretch;
  flex-direction: column;
}

.renewal-meter-card .meter-bar {
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
  height: 8px;
  width: 100%;
}

.renewal-meter-card .meter-bar i {
  display: block;
  background: #111827;
  height: 100%;
}

.renewal-exceptions-panel {
  display: grid;
  gap: 14px;
}

.renewal-exception-summary small {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 2px;
}

.renewal-exception-list {
  display: grid;
  gap: 8px;
}

.renewal-exception-list article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 1.2fr 0.8fr;
  padding: 10px;
}

.renewal-exception-list article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.renewal-exception-list article.already-refilled {
  background: #eef2ff;
  border-color: #c7d2fe;
}

.renewal-exception-list article.skipped {
  background: #fff1f3;
  border-color: #fecdd6;
}

.renewal-exception-list span {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 2px;
}

.account-health-panel {
  display: grid;
  gap: 14px;
}

.account-health-hero {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: flex;
  gap: 14px;
  padding: 12px;
}

.account-readiness-next {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  flex: 1 1 auto;
  gap: 4px;
  padding: 12px;
}

.account-readiness-next.ok {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.account-readiness-next.warning {
  background: #fff8eb;
  border-color: #fedf89;
}

.account-readiness-next.blocked {
  background: #fff1f3;
  border-color: #fecdd6;
}

.account-readiness-next span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.account-readiness-next small,
.account-readiness-summary span {
  color: #667085;
  display: block;
  font-size: 13px;
}

.account-readiness-summary {
  flex: 0 0 320px;
}

.health-score-ring {
  align-items: center;
  aspect-ratio: 1;
  border: 6px solid #111827;
  border-radius: 999px;
  display: grid;
  flex: 0 0 92px;
  justify-items: center;
  padding: 8px;
}

.health-score-ring strong {
  font-size: 28px;
  line-height: 1;
}

.health-score-ring span,
.account-health-hero > div:last-child span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.account-health-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.account-health-grid article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 10px;
}

.account-health-grid article.ok {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.account-health-grid article.warning {
  background: #fff8eb;
  border-color: #fedf89;
}

.account-health-grid article.blocked {
  background: #fff1f3;
  border-color: #fecdd6;
}

.account-health-grid span {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 2px;
}

.account-health-grid em {
  border-radius: 999px;
  background: #fff;
  color: #344054;
  flex: 0 0 auto;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  padding: 5px 8px;
  text-transform: uppercase;
}

.account-health-panel.healthy .health-score-ring {
  border-color: #16a34a;
}

.account-health-panel.needs-attention .health-score-ring {
  border-color: #f59e0b;
}

.account-health-panel.blocked .health-score-ring {
  border-color: #e11d48;
}

.rooftop-launch-panel {
  border: 1px solid #e1e7f0;
  margin-top: 16px;
}

.rooftop-launch-panel.ready {
  border-color: #bde8c9;
}

.rooftop-launch-panel.warning {
  border-color: #f4c56d;
}

.rooftop-launch-panel.blocked {
  border-color: #fecdd3;
}

.rooftop-launch-hero {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 14px;
  grid-template-columns: 112px minmax(0, 1fr) minmax(180px, 0.45fr);
  margin-bottom: 12px;
  padding: 12px;
}

.rooftop-launch-hero.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.rooftop-launch-hero.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.rooftop-launch-hero.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.rooftop-launch-hero > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.rooftop-launch-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.rooftop-launch-grid article {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.rooftop-launch-grid article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.rooftop-launch-grid article.blocked {
  background: #fff7e6;
  border-color: #f4c56d;
}

.rooftop-launch-hero span,
.rooftop-launch-hero small,
.rooftop-launch-grid span,
.rooftop-launch-grid small,
.rooftop-launch-grid em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
}

.account-health-rollup-panel {
  display: grid;
  gap: 14px;
}

.health-rollup-summary div {
  min-height: 92px;
}

.health-rollup-table {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  overflow: hidden;
}

.health-rollup-row {
  align-items: center;
  background: #fff;
  border-top: 1px solid #e1e7f0;
  display: grid;
  gap: 12px;
  grid-template-columns: 1.2fr 1fr 0.7fr 0.8fr 1.5fr 0.8fr;
  padding: 10px 12px;
}

.health-rollup-row:first-child {
  border-top: 0;
}

.health-rollup-head {
  background: #f8fafc;
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.health-rollup-row.blocked {
  background: #fff8fa;
}

.health-rollup-row.needs-attention {
  background: #fffaf0;
}

.health-rollup-row.healthy {
  background: #f6fef9;
}

.health-rollup-row strong,
.health-rollup-row small {
  display: block;
}

.health-rollup-row small {
  color: #667085;
  font-size: 12px;
  margin-top: 2px;
}

.health-rollup-actions {
  align-items: flex-start;
  display: grid;
  gap: 6px;
  justify-items: start;
}

.health-rollup-actions button {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  padding: 7px 9px;
}

.health-rollup-actions button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.admin-action-queue-panel {
  display: grid;
  gap: 14px;
}

.admin-action-list {
  display: grid;
  gap: 8px;
}

.admin-action-list article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 12px;
  grid-template-columns: 72px 1fr 190px;
  padding: 12px;
}

.admin-action-list article.blocked {
  background: #fff1f3;
  border-color: #fecdd6;
}

.admin-action-list article.warning {
  background: #fff8eb;
  border-color: #fedf89;
}

.admin-action-list article.reviewed {
  border-style: dashed;
}

.admin-action-list article.deferred {
  background: #f8fafc;
  border-color: #cbd5e1;
}

.admin-action-list article.resolved {
  background: #f1fbf5;
  border-color: #bde8c9;
  opacity: 0.82;
}

.admin-action-rank {
  align-items: center;
  aspect-ratio: 1;
  border: 1px solid #d5dae4;
  border-radius: 8px;
  background: #fff;
  display: grid;
  justify-items: center;
  padding: 8px;
}

.admin-action-rank strong {
  font-size: 24px;
  line-height: 1;
}

.admin-action-rank span,
.admin-action-list p,
.admin-action-list small {
  color: #667085;
  display: block;
  font-size: 12px;
}

.admin-action-list p {
  margin: 4px 0;
}

.admin-action-controls {
  display: grid;
  gap: 7px;
  justify-items: start;
}

.admin-action-controls button {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  padding: 7px 9px;
}

.admin-action-controls button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.admin-action-state-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.admin-action-state-buttons button {
  font-size: 11px;
  padding: 5px 7px;
}

.morning-ops-panel {
  display: grid;
  gap: 14px;
}

.morning-ops-hero {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding: 14px;
}

.morning-ops-hero.blocked {
  background: #fff1f3;
  border-color: #fecdd6;
}

.morning-ops-hero.watch {
  background: #fff8eb;
  border-color: #fedf89;
}

.morning-ops-hero.healthy {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.morning-ops-hero span,
.morning-ops-hero small,
.morning-ops-next span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.morning-ops-hero strong {
  display: block;
  font-size: 26px;
  line-height: 1.12;
  margin: 2px 0 4px;
}

.morning-ops-score {
  align-items: center;
  aspect-ratio: 1;
  border: 1px solid #d5dae4;
  border-radius: 8px;
  background: #fff;
  display: grid;
  flex: 0 0 92px;
  justify-items: center;
  padding: 10px;
}

.morning-ops-score strong {
  font-size: 30px;
  margin: 0;
}

.morning-ops-next {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 12px;
}

.morning-ops-next button {
  border: 1px solid #111827;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  cursor: pointer;
  font-weight: 900;
  padding: 9px 12px;
}

.daily-ops-snapshots-panel {
  display: grid;
  gap: 14px;
}

.daily-ops-snapshot-list {
  display: grid;
  gap: 8px;
}

.daily-ops-snapshot-list article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr 0.8fr 1fr auto;
  padding: 10px 12px;
}

.daily-ops-snapshot-list strong,
.daily-ops-snapshot-list small {
  display: block;
}

.daily-ops-snapshot-list small {
  color: #667085;
  font-size: 12px;
  margin-top: 2px;
}

.daily-ops-snapshot-list button {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  padding: 7px 9px;
}

.daily-ops-snapshot-list button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.daily-ops-snapshot-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.daily-ops-snapshot-actions button[data-action="delete-daily-ops-snapshot"] {
  border-color: #fecdd6;
  color: #be123c;
}

.daily-ops-trend-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
}

.daily-ops-trend-list {
  display: grid;
  gap: 8px;
}

.daily-ops-trend-list article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  grid-template-columns: 0.7fr 1fr 1fr 1.2fr;
  padding: 10px;
}

.daily-ops-trend-list article.current {
  border-color: #111827;
}

.daily-ops-trend-list strong,
.daily-ops-trend-list small,
.trend-metric span {
  display: block;
}

.daily-ops-trend-list small,
.trend-metric span {
  color: #667085;
  font-size: 12px;
}

.trend-bar,
.trend-split {
  border-radius: 999px;
  background: #e5e7eb;
  display: flex;
  height: 10px;
  margin-top: 6px;
  overflow: hidden;
}

.trend-bar i,
.trend-split i {
  display: block;
  min-width: 3px;
}

.trend-bar.health i {
  background: #16a34a;
}

.trend-bar.open i {
  background: #2563eb;
}

.trend-split .blocked {
  background: #e11d48;
}

.trend-split .watch {
  background: #f59e0b;
}

.closeout-period-list,
.closeout-event-list {
  display: grid;
  gap: 8px;
}

.closeout-period-list article,
.closeout-event-list article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  padding: 10px;
}

.closeout-period-list article {
  grid-template-columns: 1.2fr 1fr 0.8fr;
}

.closeout-event-list article {
  grid-template-columns: 0.7fr 0.9fr 1.4fr;
}

.closeout-period-list article.closed,
.closeout-event-list article.closed {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.closeout-period-list article.open,
.closeout-event-list article.open {
  background: #fff8eb;
  border-color: #fedf89;
}

.closeout-period-list span,
.closeout-event-list span,
.closeout-event-list p {
  color: #667085;
  display: block;
  font-size: 12px;
  margin: 2px 0 0;
}

.reconciliation-grid small {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 2px;
}

.reconciliation-check-list,
.reconciliation-exception-grid {
  display: grid;
  gap: 8px;
}

.reconciliation-check-list article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 10px;
}

.reconciliation-check-list article.ok {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.reconciliation-check-list article.watch {
  background: #fff8eb;
  border-color: #fedf89;
}

.reconciliation-check-list article.attention {
  background: #fff1f3;
  border-color: #fecdd6;
}

.reconciliation-check-list span,
.reconciliation-exception-grid span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.reconciliation-check-list em {
  border-radius: 999px;
  background: #fff;
  color: #344054;
  flex: 0 0 auto;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  padding: 5px 8px;
  text-transform: uppercase;
}

.reconciliation-exception-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.reconciliation-exception-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.reconciliation-exception-grid strong {
  display: block;
  font-size: 20px;
  margin-top: 3px;
}

.statement-actions {
  justify-content: flex-start;
}

.statement-actions button {
  border: 1px solid #111827;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  cursor: pointer;
  font-weight: 800;
  padding: 9px 11px;
}

.statement-preview {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  max-height: 360px;
  overflow: auto;
  padding: 12px;
}

.statement-preview pre {
  margin: 0;
  white-space: pre-wrap;
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.55;
}

.billing-status-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.billing-status-actions button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  padding: 6px 8px;
}

.billing-status-actions button:disabled {
  background: #e5e7eb;
  cursor: not-allowed;
  opacity: 0.7;
}

.credit-cost-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.credit-cost-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.credit-cost-grid span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.credit-cost-grid strong {
  display: block;
  margin-top: 3px;
}

.monthly-refill-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 12px;
  margin-top: 12px;
  padding: 12px;
}

.monthly-refill-controls {
  margin-top: 0;
}

.monthly-refill-list {
  display: grid;
  gap: 8px;
}

.monthly-refill-list article {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 10px;
}

.monthly-refill-list article.eligible {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.monthly-refill-list article.skipped {
  background: #f8fafc;
}

.monthly-refill-list span {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 2px;
}

.compact-ledger {
  margin-top: 0;
}

.usage-summary-grid,
.usage-account-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.usage-account-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.usage-summary-grid div,
.usage-account-grid div,
.usage-ledger-list article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.usage-summary-grid span,
.usage-account-grid span,
.usage-account-grid small,
.usage-ledger-list span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.usage-summary-grid strong,
.usage-account-grid strong {
  display: block;
  margin-top: 3px;
}

.usage-summary-grid strong {
  font-size: 20px;
}

.home-onboarding-guide {
  display: grid;
  gap: 12px;
  margin-top: 14px;
  border: 1px solid #f9d2d5;
  border-radius: 8px;
  background: #fff8f8;
  padding: 14px;
}

.home-onboarding-guide h3 {
  margin: 0;
  color: #111827;
  font-size: 18px;
  line-height: 1.25;
}

.home-onboarding-guide p {
  margin: 0;
  color: #667085;
  font-size: 14px;
  line-height: 1.5;
}

.home-onboarding-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.home-onboarding-grid div {
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid #f2c5ca;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.home-onboarding-grid span {
  color: #111827;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.home-onboarding-grid ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.home-onboarding-grid li,
.home-onboarding-grid small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.home-office-hours {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid #f2c5ca;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.home-office-hours div {
  display: grid;
  gap: 4px;
}

.home-office-hours span,
.home-office-hours small {
  color: #667085;
  font-size: 12px;
  line-height: 1.35;
}

.home-office-hours strong {
  color: #111827;
  font-size: 16px;
  line-height: 1.3;
}

.home-office-hours a:not(.secondary-action) {
  color: #ef3f46;
  font-weight: 800;
}

.home-photo-format-note {
  display: grid;
  gap: 6px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  padding: 12px;
}

.home-photo-format-note div {
  display: grid;
  gap: 4px;
}

.home-photo-format-note span,
.home-photo-format-note small {
  color: #475467;
  font-size: 12px;
  line-height: 1.35;
}

.home-photo-format-note strong {
  color: #111827;
  font-size: 16px;
  line-height: 1.3;
}

.billing-upgrade-guide {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 10px 0;
}

.billing-upgrade-guide div {
  display: grid;
  align-content: start;
  gap: 4px;
  border: 1px solid #d8e2f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.billing-upgrade-guide span,
.billing-upgrade-guide small {
  color: #667085;
  font-size: 12px;
  line-height: 1.35;
}

.billing-upgrade-guide strong {
  color: #111827;
  font-size: 15px;
  line-height: 1.3;
}

.home-credit-explainer {
  display: grid;
  gap: 12px;
  margin-top: 14px;
  border: 1px solid #dbe7ff;
  border-radius: 8px;
  background: #f7fbff;
  padding: 14px;
}

.home-credit-explainer h3 {
  margin: 0;
  color: #111827;
  font-size: 18px;
  line-height: 1.25;
}

.home-credit-explainer p {
  margin: 0;
  color: #667085;
  font-size: 14px;
  line-height: 1.5;
}

.home-credit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.home-credit-grid div {
  display: grid;
  gap: 4px;
  border: 1px solid #d8e2f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.home-credit-grid span,
.home-credit-grid small {
  color: #667085;
  font-size: 12px;
  line-height: 1.35;
}

.home-credit-grid strong {
  color: #111827;
  font-size: 16px;
  line-height: 1.25;
}

.home-credit-explainer .home-credit-example {
  color: #111827;
  font-weight: 700;
}

.home-credit-explainer .home-credit-receipts {
  font-size: 13px;
}

.usage-ledger-list {
  display: grid;
  gap: 8px;
}

.meter-stack {
  display: grid;
  gap: 10px;
  margin: 12px 0;
}

.meter-stack span {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-bottom: 5px;
}

.meter-stack .meter-bar,
.plan-guardrails-panel .meter-bar {
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
  height: 8px;
}

.meter-stack .meter-bar i,
.plan-guardrails-panel .meter-bar i {
  display: block;
  background: #111827;
  height: 100%;
}

.usage-ledger-list article {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.usage-ledger-list article > div:last-child {
  min-width: 120px;
  text-align: right;
}

.runtime-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
  margin-top: 14px;
}

.section-head.compact {
  margin-bottom: 10px;
}

.runtime-panel label {
  display: grid;
  gap: 4px;
  color: #475467;
  font-size: 12px;
}

.runtime-panel select {
  border: 1px solid #d8dee8;
  border-radius: 7px;
  padding: 8px 10px;
  background: #fff;
}

.pacing-grid,
.runtime-breakdown {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
}

.pacing-grid {
  margin-bottom: 10px;
}

.pacing-grid button {
  border: 1px solid #d8dee8;
  border-radius: 8px;
  background: #fff;
  color: inherit;
  padding: 10px;
  text-align: left;
  display: grid;
  gap: 4px;
}

.pacing-grid button.active {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12);
}

.pacing-grid span,
.runtime-breakdown span {
  color: #475467;
  font-size: 12px;
}

.pacing-grid small,
.runtime-breakdown small {
  color: #667085;
}

.runtime-breakdown {
  margin-top: 10px;
}

.runtime-breakdown div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  display: grid;
  gap: 3px;
}

.runtime-breakdown strong {
  font-size: 18px;
}

.runtime-breakdown .total {
  border-color: #111827;
}

.preflight-command-center {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
  margin-top: 14px;
}

.command-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.command-summary div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  display: grid;
  gap: 3px;
}

.command-summary span,
.command-summary small {
  color: #667085;
  font-size: 12px;
}

.command-summary strong {
  font-size: 18px;
}

.generation-cost-panel {
  background: #fff;
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  margin-top: 10px;
  padding: 12px;
}

.generation-cost-panel.low {
  background: #fff7e6;
  border-color: #f4c56d;
}

.generation-cost-panel.blocked {
  background: #fff1f1;
  border-color: #ffb4b4;
}

.generation-cost-head {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.generation-cost-head div {
  display: grid;
  gap: 3px;
}

.generation-cost-head small,
.generation-cost-lines small {
  color: #667085;
  font-size: 12px;
}

.generation-cost-lines {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.generation-cost-lines div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 9px;
}

.generation-cost-lines span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.paid-guardrails-panel {
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  margin: 12px 0;
  padding: 12px;
}

.paid-queue-preview {
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  margin: 12px 0;
  padding: 12px;
}

.paid-queue-list {
  display: grid;
  gap: 8px;
}

.paid-queue-list article {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 10px;
}

.paid-queue-list article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.paid-queue-list article.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.paid-queue-list article.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.paid-queue-list article div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.paid-queue-list span,
.paid-queue-list small,
.paid-queue-total span {
  color: #667085;
  font-size: 12px;
}

.paid-queue-list em {
  color: #344054;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.paid-queue-total {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.paid-guardrail-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 8px;
}

.paid-guardrail-card {
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  background: #f8fafc;
  display: grid;
  gap: 8px;
  min-height: 128px;
  padding: 10px;
}

.paid-guardrail-card div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.paid-guardrail-card span {
  border-radius: 999px;
  background: #eaf7ee;
  color: #087443;
  font-size: 11px;
  font-weight: 900;
  padding: 4px 7px;
}

.paid-guardrail-card small {
  color: #475467;
  line-height: 1.35;
}

.paid-guardrail-card em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.paid-guardrail-card.blocked {
  background: #fff1f1;
  border-color: #ffb4b4;
}

.paid-guardrail-card.blocked span {
  background: #fee4e2;
  color: #b42318;
}

.paid-guardrail-card.warning {
  background: #fff7e6;
  border-color: #f4c56d;
}

.paid-guardrail-card.warning span {
  background: #fef0c7;
  color: #93370d;
}

.autopilot-draft-panel {
  display: grid;
  grid-template-columns: minmax(220px, 1.1fr) minmax(220px, 1fr) minmax(160px, auto);
  gap: 14px;
  align-items: center;
  border: 1px solid #b7e4ce;
  border-radius: 8px;
  background: #ecfdf3;
  padding: 14px;
  margin: 12px 0;
}

.autopilot-draft-panel.blocked {
  background: #fff7e6;
  border-color: #f4c56d;
}

.autopilot-draft-panel strong,
.autopilot-draft-panel span,
.autopilot-draft-panel small {
  display: block;
}

.autopilot-draft-panel strong {
  color: #063f2a;
  font-size: 1rem;
}

.autopilot-draft-panel small {
  color: #667085;
  margin-bottom: 8px;
}

.autopilot-sequence {
  display: grid;
  gap: 6px;
}

.autopilot-sequence span {
  display: grid;
  grid-template-columns: 24px 1fr;
  align-items: center;
  gap: 8px;
  color: #344054;
  font-size: 13px;
}

.autopilot-sequence strong {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #d1fadf;
  color: #047857;
  font-size: 12px;
}

.autopilot-progress {
  display: grid;
  gap: 5px;
}

.autopilot-actions {
  display: grid;
  gap: 8px;
  justify-items: start;
}

.autopilot-batch-controls,
.autopilot-winning-seed {
  display: grid;
  gap: 6px;
  border: 1px solid rgba(6, 95, 70, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.66);
  padding: 10px;
}

.autopilot-batch-controls {
  grid-column: 1 / span 2;
}

.autopilot-batch-controls label {
  display: grid;
  gap: 5px;
  font-size: 13px;
  font-weight: 800;
}

.autopilot-batch-controls input {
  max-width: 120px;
}

.batch-preset-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.batch-preset-buttons button {
  min-width: 44px;
  padding: 7px 10px;
  border-radius: 8px;
  border: 1px solid #bfd0e2;
  background: #ffffff;
  color: #1f2a44;
  font-weight: 800;
}

.batch-preset-buttons button.active {
  border-color: #ef4444;
  background: #ef4444;
  color: #ffffff;
}

.batch-variation-summary {
  grid-column: 1 / span 2;
  display: grid;
  gap: 5px;
  border: 1px solid rgba(6, 95, 70, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.66);
  padding: 10px;
}

.autopilot-winning-seed {
  grid-column: 3;
}

.autopilot-winning-seed textarea {
  width: 100%;
  min-height: 78px;
  resize: vertical;
}

.autopilot-winning-seed .seed-actions {
  gap: 6px;
}

.autopilot-winning-seed button {
  justify-self: start;
}

.command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0;
}

.command-actions button,
.preflight-command-row button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  padding: 9px 11px;
  font-weight: 800;
}

.command-actions button:last-child {
  background: #111827;
  color: #fff;
}

.command-actions button:disabled {
  opacity: 0.45;
}

.preflight-command-table {
  display: grid;
  gap: 8px;
}

.preflight-command-row {
  display: grid;
  grid-template-columns: minmax(160px, 1.25fr) repeat(7, minmax(78px, 1fr)) auto;
  gap: 7px;
  align-items: stretch;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 8px;
}

.preflight-command-row.ready {
  border-color: #a7f3d0;
}

.preflight-command-row.blocked {
  border-color: #f2b8b5;
}

.preflight-command-row > div:first-child {
  display: grid;
  align-content: center;
  gap: 2px;
}

.preflight-command-row span,
.preflight-command-row small {
  color: #667085;
}

.final-editor-command {
  border: 1px solid #d7deea;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
  margin: 12px 0 18px;
  display: grid;
  gap: 12px;
}

.final-editor-command.ready {
  border-color: #a7f3d0;
}

.final-editor-command.warning {
  border-color: #fbbf24;
  background: #fffbeb;
}

.final-editor-command.blocked {
  border-color: #f2b8b5;
  background: #fff7f7;
}

.final-editor-next {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px 12px;
  display: grid;
  gap: 3px;
}

.final-editor-next span,
.final-editor-summary span,
.final-editor-summary small,
.final-editor-strip small {
  color: #667085;
}

.final-editor-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.final-editor-summary div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
  display: grid;
  gap: 3px;
}

.final-editor-summary strong {
  font-size: 18px;
}

.final-editor-strip {
  display: flex;
  gap: 6px;
  min-height: 74px;
  overflow: hidden;
}

.final-editor-strip button {
  border: 1px solid #d7deea;
  border-radius: 8px;
  background: #f8fafc;
  color: #111827;
  min-width: 72px;
  padding: 9px 8px;
  display: grid;
  align-content: center;
  gap: 2px;
  text-align: left;
  cursor: pointer;
}

.final-editor-strip button.ready {
  border-color: #a7f3d0;
  background: #ecfdf5;
}

.final-editor-strip button.warning {
  border-color: #fbbf24;
  background: #fffbeb;
}

.final-editor-strip button.blocked {
  border-color: #f2b8b5;
  background: #fff1f2;
}

.final-advanced-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  margin: 12px 0;
  padding: 10px 12px;
}

.final-advanced-panel summary {
  color: #344054;
  cursor: pointer;
  font-weight: 900;
}

.final-assembly,
.final-readiness,
.final-block-summary,
.approval-workflow,
.revision-log-panel,
.snapshot-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
  margin: 12px 0;
}

.approval-block-grid,
.revision-log-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 10px;
}

.approval-block-grid article,
.revision-log-list article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  display: grid;
  gap: 8px;
}

.approval-block-head {
  display: flex;
  gap: 8px;
  align-items: baseline;
}

.approval-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.approval-actions button,
.revision-form button,
.delivery-lock-panel button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  padding: 8px 10px;
  font-weight: 800;
}

.revision-form {
  display: grid;
  gap: 7px;
}

.delivery-lock-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  margin-top: 10px;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.delivery-lock-panel.locked {
  border-color: #a7f3d0;
  background: #ecfdf5;
}

.revision-log-list article.resolved {
  opacity: 0.7;
}

.revision-log-list article > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.snapshot-create {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  margin-bottom: 10px;
}

.snapshot-create input {
  border: 1px solid #d8dee8;
  border-radius: 8px;
  padding: 10px;
}

.snapshot-create button,
.snapshot-list button {
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  padding: 9px 11px;
  font-weight: 800;
}

.snapshot-list {
  display: grid;
  gap: 10px;
}

.snapshot-list article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  display: grid;
  gap: 8px;
}

.snapshot-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.snapshot-head small,
.snapshot-meta span {
  color: #667085;
}

.snapshot-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.snapshot-meta div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 8px;
  display: grid;
  gap: 2px;
}

.assembly-ruler {
  display: flex;
  justify-content: space-between;
  color: #667085;
  font-size: 11px;
  margin: 4px 0 6px;
}

.assembly-lane {
  display: flex;
  gap: 3px;
  min-height: 58px;
  border: 1px dashed #ccd4df;
  border-radius: 8px;
  background: #fff;
  padding: 5px;
  margin-top: 6px;
  overflow: hidden;
}

.assembly-segment {
  min-width: 42px;
  border-radius: 6px;
  color: #fff;
  padding: 7px;
  display: grid;
  align-content: center;
  gap: 2px;
  overflow: hidden;
}

.assembly-segment strong,
.assembly-segment span,
.assembly-segment small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.assembly-segment strong {
  font-size: 12px;
}

.assembly-segment span,
.assembly-segment small {
  font-size: 11px;
}

.assembly-segment.main {
  background: #111827;
}

.assembly-segment.insert {
  background: #ef4444;
}

.assembly-segment.voice {
  background: #2563eb;
}

.assembly-segment.sfx {
  background: #7c3aed;
}

.assembly-segment.music {
  background: #047857;
}

.final-block-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 8px;
}

.final-block-summary article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  display: grid;
  gap: 6px;
}

.final-block-summary article > div {
  display: flex;
  gap: 8px;
  align-items: baseline;
}

.final-block-summary p {
  margin: 0;
  font-weight: 800;
}

.final-block-summary small {
  color: #667085;
}

.generation-queue-list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.generation-queue-row {
  display: grid;
  grid-template-columns: minmax(180px, 0.75fr) minmax(420px, 1.5fr) minmax(360px, 1fr);
  gap: 12px;
  align-items: start;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.job-row button,
.generation-history-row button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  color: #344054;
  font-size: 12px;
  font-weight: 800;
  padding: 7px 9px;
}

.generation-history-list {
  border-top: 1px solid #e1e7f0;
  display: grid;
  gap: 8px;
  margin-top: 12px;
  padding-top: 12px;
}

.generation-history-row {
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: 1.2fr 0.7fr 1fr 0.8fr auto;
  padding: 9px;
}

.generation-history-row.failed {
  background: #fff7f7;
  border-color: #ffc9c9;
}

.generation-history-row.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.generation-history-row small {
  color: #667085;
  display: block;
  font-size: 11px;
  margin-top: 2px;
}

.generation-queue-row.active {
  border-color: #ef4444;
}

.queue-block-head {
  display: grid;
  gap: 6px;
}

.queue-block-head button {
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0;
  text-align: left;
}

.queue-block-head strong,
.queue-block-head span,
.queue-block-head small {
  display: block;
}

.queue-block-head strong {
  font-size: 22px;
}

.queue-block-head small {
  color: #667085;
}

.queue-status-grid {
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  gap: 7px;
}

.queue-pill {
  min-height: 54px;
  display: grid;
  align-content: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 7px;
}

.queue-pill small,
.queue-pill strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}

.queue-pill small {
  color: #667085;
  font-size: 11px;
  font-weight: 700;
}

.queue-pill strong {
  margin-top: 2px;
  font-size: 12px;
  text-transform: capitalize;
}

.queue-pill.ready {
  border-color: #a7f3d0;
  background: #ecfdf5;
  color: #047857;
}

.queue-pill.generating {
  border-color: #93c5fd;
  background: #eff6ff;
  color: #1d4ed8;
}

.queue-pill.failed {
  border-color: #f2b8b5;
  background: #fff5f5;
  color: #b42318;
}

.queue-pill.locked {
  opacity: 0.58;
}

.queue-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.queue-action-grid button {
  min-height: 58px;
  border: 1px solid #d9dee7;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  padding: 8px;
  text-align: left;
  font-weight: 800;
}

.queue-action-grid button small {
  display: block;
  color: #667085;
  margin-top: 3px;
  font-weight: 700;
}

.prompt-review-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.prompt-review-panel.ready {
  border-color: #a7f3d0;
  background: #ecfdf5;
}

.prompt-review-panel.blocked {
  border-color: #f2b8b5;
  background: #fff5f5;
}

.prompt-review-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.prompt-review-head span {
  border: 1px solid #d9dee7;
  border-radius: 999px;
  background: #fff;
  color: #344054;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
}

.prompt-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.prompt-review-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 9px;
}

.prompt-review-grid span {
  display: block;
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  margin-bottom: 4px;
}

.prompt-review-grid p {
  max-height: 88px;
  overflow: auto;
  margin: 0;
  color: #344054;
  font-size: 12px;
  line-height: 1.35;
}

.prompt-review-alerts {
  display: grid;
  gap: 6px;
}

.prompt-review-alerts span {
  border-radius: 8px;
  padding: 7px 9px;
  font-size: 12px;
  font-weight: 700;
}

.prompt-review-alerts .stop {
  border: 1px solid #f2b8b5;
  background: #fff5f5;
  color: #b42318;
}

.prompt-review-alerts .warning {
  border: 1px solid #fde68a;
  background: #fffbeb;
  color: #92400e;
}

.prompt-review-actions {
  justify-content: flex-end;
}

.review-card-head,
.review-version-title,
.review-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.review-state,
.review-version-title span {
  border: 1px solid #d5dae4;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0;
  color: #475467;
  background: #f8fafc;
}

.review-state.approved,
.review-version.approved .review-version-title span,
.review-version.active .review-version-title span {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #047857;
}

.review-state.needs-revision {
  background: #fffbeb;
  border-color: #fcd34d;
  color: #92400e;
}

.review-state.rejected,
.review-version.rejected .review-version-title span {
  background: #fef2f2;
  border-color: #fca5a5;
  color: #991b1b;
}

.review-note {
  margin: 10px 0;
}

.review-version-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.review-version,
.review-empty {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
}

.review-version {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 10px;
  padding: 8px;
}

.review-version.active {
  border-color: #a7f3d0;
  background: #f0fdf4;
}

.review-version-media {
  aspect-ratio: 16 / 10;
  border-radius: 7px;
  overflow: hidden;
  background: #111827;
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 800;
}

.review-version-media img,
.review-version-media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.audio-thumb {
  display: grid;
  gap: 6px;
  padding: 8px;
  width: 100%;
}

.audio-thumb audio {
  width: 100%;
}

.review-version-body p {
  margin: 6px 0;
  font-size: 12px;
  max-height: 48px;
  overflow: hidden;
}

.review-actions {
  justify-content: flex-start;
}

.review-actions button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 7px 9px;
  font-size: 12px;
}

.review-empty {
  color: #667085;
  font-size: 13px;
  padding: 10px;
}

.dashboard-summary {
  margin-bottom: 16px;
}

.customer-first-run-panel {
  display: grid;
  gap: 14px;
  margin-bottom: 16px;
}

.customer-first-run-hero {
  align-items: stretch;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) 220px;
  padding: 16px;
}

.customer-first-run-hero span,
.customer-first-run-path small {
  color: #667085;
  font-size: 12px;
}

.customer-first-run-hero > div:first-child > span {
  font-weight: 900;
  text-transform: uppercase;
}

.customer-first-run-hero h2 {
  margin: 5px 0;
}

.customer-first-run-score {
  border: 1px solid #d7deea;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 6px;
  place-content: center;
  padding: 12px;
}

.customer-first-run-score strong {
  font-size: 34px;
}

.customer-first-run-path {
  display: grid;
  gap: 10px;
}

.customer-first-run-path button {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 11px;
  text-align: left;
}

.customer-first-run-path {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.customer-first-run-path button.ready {
  border-color: #a7f3d0;
  background: #ecfdf5;
}

.customer-first-run-path button.todo {
  border-color: #d7deea;
  background: #fff;
}

.customer-first-run-path span {
  align-items: center;
  background: #ef4444;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.customer-first-run-path button.ready span {
  background: #059669;
}

.dashboard-focus-panel {
  border: 1px solid #e1e7f0;
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
  margin-top: 16px;
}

.dashboard-focus-panel.ready {
  border-color: #bde8c9;
}

.dashboard-focus-panel.warning {
  border-color: #f4c56d;
}

.dashboard-focus-panel.blocked {
  border-color: #fecdd3;
}

.dashboard-focus-main {
  display: grid;
  gap: 10px;
  grid-template-columns: 0.7fr minmax(0, 1.4fr) 0.7fr 0.8fr;
}

.dashboard-focus-main div {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 11px;
}

.dashboard-focus-main span,
.dashboard-focus-main small {
  color: #667085;
  font-size: 12px;
}

.dashboard-focus-main strong {
  overflow-wrap: anywhere;
}

.dashboard-focus-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.executive-launch-panel {
  border: 1px solid #e1e7f0;
  margin-top: 16px;
}

.executive-launch-panel.ready {
  border-color: #bde8c9;
}

.executive-launch-panel.warning {
  border-color: #f4c56d;
}

.executive-launch-panel.blocked {
  border-color: #fecdd3;
}

.executive-launch-hero {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: 0.65fr minmax(0, 1.4fr) 0.65fr;
  margin-bottom: 12px;
  padding: 12px;
}

.executive-launch-hero.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.executive-launch-hero.warning {
  background: #fffbeb;
  border-color: #f4c56d;
}

.executive-launch-hero.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.executive-launch-hero div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.executive-launch-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.executive-launch-grid article {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px;
}

.executive-launch-grid article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.executive-launch-grid article.warning,
.executive-launch-grid article.needs-attention {
  background: #fff7e6;
  border-color: #f4c56d;
}

.executive-launch-grid article.blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.executive-launch-hero span,
.executive-launch-hero small,
.executive-launch-grid span,
.executive-launch-grid small {
  color: #667085;
  font-size: 12px;
}

.campaign-table {
  display: grid;
  gap: 8px;
}

.campaign-row {
  display: grid;
  grid-template-columns: 1.25fr 1.1fr 0.7fr 1fr 0.9fr 1.25fr;
  gap: 10px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.campaign-row-head {
  background: #f8fafc;
  color: #667085;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.campaign-row strong,
.campaign-row small {
  display: block;
}

.campaign-row small {
  color: #667085;
  margin-top: 3px;
  overflow-wrap: anywhere;
}

.campaign-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.campaign-actions button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 7px 9px;
  font-size: 12px;
}

.template-governance {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.template-fit-panel {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-bottom: 14px;
}

.template-governance div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.template-fit-panel div {
  border: 1px solid #d7e3f3;
  border-radius: 8px;
  background: #f8fbff;
  padding: 10px;
}

.template-governance span,
.template-governance strong,
.template-fit-panel span,
.template-fit-panel strong,
.template-fit-panel small {
  display: block;
}

.template-governance span,
.template-fit-panel span {
  color: #667085;
  font-size: 12px;
}

.reuse-choice-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 10px;
}

.reuse-choice-grid article {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #d7e3f3;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.reuse-choice-grid span,
.reuse-choice-grid strong,
.reuse-choice-grid small {
  display: block;
}

.reuse-choice-grid span {
  color: #667085;
  font-size: 12px;
}

.reuse-choice-grid small {
  color: #667085;
  margin-top: 4px;
}

.reuse-choice-grid button {
  white-space: nowrap;
}

.campaign-origin-panel.compact {
  margin-top: 0;
}

.origin-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
}

.origin-summary-grid div {
  border: 1px solid #d7e3f3;
  border-radius: 8px;
  background: #f8fbff;
  padding: 12px;
}

.origin-summary-grid span,
.origin-summary-grid strong,
.origin-summary-grid small {
  display: block;
}

.origin-summary-grid span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.origin-summary-grid small {
  color: #667085;
  margin-top: 4px;
  overflow-wrap: anywhere;
}

.origin-history-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.campaign-version-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.campaign-version-list article {
  border: 1px solid #d7e3f3;
  border-radius: 8px;
  background: #f8fbff;
  display: grid;
  gap: 4px;
  padding: 10px;
}

.campaign-version-list span,
.campaign-version-list small {
  color: #667085;
  display: block;
  font-size: 12px;
}

.origin-history-list article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr auto;
  padding: 10px;
}

.origin-history-list small,
.origin-history-list span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.template-fit-panel small {
  color: #667085;
  margin-top: 4px;
}

.template-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 10px;
}

.template-grid article {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.template-grid article.recommended {
  border-color: #ff4d4f;
  box-shadow: 0 0 0 1px rgba(255, 77, 79, 0.18);
}

.template-grid article.retired {
  opacity: 0.72;
}

.template-grid article div {
  display: grid;
  gap: 4px;
}

.template-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.template-actions button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 7px 9px;
  font-size: 12px;
}

.template-grid span,
.template-grid small {
  color: #667085;
  font-size: 12px;
}

.template-fit-meter {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 1fr auto;
  margin-top: 8px;
}

.template-fit-meter::before {
  background: #eef2f7;
  border-radius: 999px;
  content: "";
  grid-column: 1;
  grid-row: 1;
  height: 8px;
}

.template-fit-meter i {
  background: #ff4646;
  border-radius: 999px;
  display: block;
  grid-column: 1;
  grid-row: 1;
  height: 8px;
  max-width: 100%;
}

.template-fit-meter span {
  color: #344054;
  font-weight: 800;
  grid-column: 2;
}

.template-missing-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 8px;
}

.template-missing-tags span {
  border: 1px solid #fed7aa;
  border-radius: 999px;
  background: #fff8ed;
  color: #9a3412;
  padding: 4px 7px;
}

.analytics-connect-grid,
.analytics-category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.analytics-connect-grid article,
.analytics-category-grid article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.analytics-connect-grid article.connected {
  border-color: #16a34a;
  box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.16);
}

.analytics-connect-grid span,
.analytics-connect-grid small,
.analytics-category-grid span,
.analytics-category-grid small {
  color: #667085;
  display: block;
  font-size: 12px;
  margin-top: 3px;
}

.analytics-table {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  overflow: hidden;
  margin-top: 12px;
}

.analytics-row {
  display: grid;
  grid-template-columns: 1.5fr 1fr 0.5fr 0.5fr 0.7fr 0.8fr;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border-bottom: 1px solid #eef2f7;
  font-size: 13px;
}

.analytics-row:last-child {
  border-bottom: 0;
}

.analytics-row-head {
  background: #f8fafc;
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.analytics-row.manual-row {
  grid-template-columns: 1.3fr 1fr 0.9fr 0.6fr 0.5fr 0.5fr 0.7fr;
}

.analytics-row.batch-row {
  grid-template-columns: 1.5fr 0.9fr 0.85fr 0.55fr 0.65fr 0.7fr;
}

.analytics-row.audit-row {
  grid-template-columns: 0.35fr 0.65fr 1.2fr 1.2fr 1fr 1.4fr;
}

.analytics-row.override-row {
  grid-template-columns: 1.4fr 1fr 1fr 0.85fr 0.75fr;
}

.analytics-row.audit-row small,
.analytics-row.override-row small {
  color: #667085;
  display: block;
  font-size: 11px;
  font-weight: 600;
  margin-top: 3px;
}

.batch-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.analytics-row.csv-row {
  grid-template-columns: 0.35fr 1.45fr 0.85fr 0.55fr 0.65fr 0.65fr 1.3fr 0.55fr;
}

.analytics-row.csv-row small {
  color: #667085;
  display: block;
  font-size: 11px;
  font-weight: 600;
  margin-top: 4px;
}

.analytics-row.batch-row small {
  color: #667085;
  display: block;
  font-size: 11px;
  font-weight: 600;
  margin-top: 3px;
}

.quality-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.quality-summary-grid div {
  background: #f8fafc;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 10px 12px;
}

.quality-summary-grid span {
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.quality-summary-grid strong {
  color: #111827;
  font-size: 20px;
}

.quality-pill {
  border-radius: 999px;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
  line-height: 1;
  padding: 6px 8px;
  width: fit-content;
}

.quality-pill.valid {
  background: #dcfce7;
  color: #166534;
}

.quality-pill.warning {
  background: #fef3c7;
  color: #92400e;
}

.quality-pill.invalid {
  background: #fee2e2;
  color: #991b1b;
}

.analytics-export-panel {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0;
}

.analytics-period-panel {
  align-items: end;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0;
}

.analytics-period-panel label {
  color: #475467;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 6px;
}

.analytics-period-panel input {
  min-width: 170px;
}

.analytics-filter-panel {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(130px, 1fr)) auto;
  margin-top: 12px;
}

.analytics-filter-panel label {
  color: #667085;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 5px;
}

.analytics-filter-panel input,
.analytics-filter-panel select {
  background: #fff;
  border: 1px solid #d8e0ea;
  border-radius: 8px;
  color: #101828;
  padding: 9px 10px;
}

.analytics-export-panel button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 9px 11px;
  font-size: 13px;
}

.analytics-export-panel button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.dealer-report-preview {
  border-color: #cfd6e3;
}

.analytics-setup-panel,
.analytics-match-confidence-panel,
.monthly-readiness-panel,
.dealer-safe-analytics-panel {
  margin-top: 16px;
}

.dealer-report-preview.ready {
  border-color: #16a34a;
}

.monthly-readiness-panel.ready {
  border-color: #16a34a;
}

.dealer-report-preview.locked {
  box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.18);
}

.report-share-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.report-share-actions button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 7px 9px;
  font-size: 12px;
}

.report-status-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.report-status-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.report-status-grid span,
.report-status-grid strong {
  display: block;
}

.report-status-grid span {
  color: #667085;
  font-size: 12px;
}

.report-hero-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.report-hero-grid div,
.report-preview-grid article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.report-hero-grid span,
.report-preview-grid span {
  color: #667085;
  display: block;
  font-size: 12px;
}

.report-hero-grid strong {
  display: block;
  font-size: 24px;
  margin-top: 4px;
}

.report-preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.report-preview-grid strong {
  display: block;
  margin-top: 5px;
}

.report-preview-grid p {
  color: #475467;
  font-size: 13px;
  margin: 7px 0 0;
}

.snapshot-compare-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.snapshot-compare-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.snapshot-compare-grid span,
.snapshot-compare-grid strong {
  display: block;
}

.snapshot-compare-grid span {
  color: #667085;
  font-size: 12px;
}

.snapshot-list.compact article {
  grid-template-columns: 1fr auto;
}

.auto-publish-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  margin-top: 14px;
  padding: 12px;
}

.scheduler-state-panel {
  border-top: 1px solid #e5e9f0;
  margin-top: 12px;
  padding-top: 12px;
}

.auto-rule-grid,
.auto-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
}

.auto-rule-grid {
  margin-bottom: 12px;
}

.auto-rule-grid label {
  color: #475467;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 6px;
}

.auto-check-grid div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.auto-check-grid div.ok {
  border-color: #16a34a;
}

.auto-check-grid div.blocked {
  border-color: #f59e0b;
}

.auto-check-grid span,
.auto-check-grid strong,
.auto-check-grid small {
  display: block;
}

.auto-check-grid span,
.auto-check-grid small {
  color: #667085;
  font-size: 12px;
}

.automation-log-panel {
  border-top: 1px solid #e5e9f0;
  margin-top: 12px;
  padding-top: 12px;
}

.automation-log-panel article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  margin-top: 8px;
  padding: 10px;
}

.automation-log-panel article.ok {
  border-color: #16a34a;
}

.automation-log-panel article.blocked {
  border-color: #f59e0b;
}

.automation-log-panel small,
.automation-log-panel p,
.automation-log-panel li {
  color: #667085;
  font-size: 12px;
}

.automation-log-panel p {
  margin: 4px 0;
}

.exception-task-list {
  display: grid;
  gap: 8px;
}

.exception-task-list article {
  align-items: center;
  border: 1px solid #f59e0b;
  border-radius: 8px;
  background: #fff;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  padding: 10px;
}

.exception-task-list small,
.exception-task-list p {
  color: #667085;
  font-size: 12px;
  margin: 4px 0 0;
}

.exception-task-list button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 7px 9px;
  font-size: 12px;
}

.task-remediation {
  border-left: 3px solid #f59e0b;
  margin-top: 8px;
  padding-left: 8px;
}

.task-remediation span {
  color: #667085;
  display: block;
  font-size: 12px;
  font-weight: 700;
}

.task-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.manual-import-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  margin: 12px 0;
  padding: 12px;
}

.manual-import-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
}

.manual-import-grid label {
  color: #475467;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 6px;
}

.manual-import-grid .wide {
  grid-column: 1 / -1;
}

.manual-import-grid input,
.manual-import-grid textarea {
  font-size: 13px;
  font-weight: 400;
}

.csv-import-panel {
  border-top: 1px solid #e1e7f0;
  margin-top: 16px;
  padding-top: 16px;
}

.csv-import-grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 10px;
}

.csv-import-grid label {
  color: #475467;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 6px;
}

.csv-import-grid .wide {
  grid-column: 1 / -1;
}

.csv-import-grid input,
.csv-import-grid textarea {
  font-size: 13px;
  font-weight: 400;
  width: 100%;
}

.csv-preview-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.csv-preview-summary div {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
}

.csv-preview-summary span,
.csv-mapping-list span {
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.csv-preview-summary strong {
  color: #111827;
  font-size: 18px;
}

.csv-mapping-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.csv-mapping-list span {
  background: #eef4ff;
  border: 1px solid #c7d7fe;
  border-radius: 999px;
  padding: 6px 8px;
}

.csv-preview-table {
  margin-top: 12px;
}

.csv-profile-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  margin-top: 12px;
  padding: 12px;
}

.csv-profile-panel input {
  min-width: 180px;
}

.csv-field-map-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
}

.csv-field-map-grid label {
  color: #475467;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 6px;
}

.csv-profile-management {
  border-top: 1px solid #e1e7f0;
  margin-top: 12px;
  padding-top: 12px;
}

.csv-profile-fit-alert {
  align-items: center;
  background: #fff7e6;
  border: 1px solid #f4c56d;
  border-radius: 8px;
  color: #7a4b00;
  display: grid;
  gap: 8px;
  grid-template-columns: auto 1fr auto;
  margin-top: 12px;
  padding: 10px 12px;
}

.csv-profile-fit-alert button {
  background: #7a4b00;
  color: #fff;
}

.csv-profile-fit-alert.quiet {
  background: #f8fafc;
  border-color: #d8e0ea;
  color: #344054;
}

.csv-profile-detail-panel {
  background: #f8fafc;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
}

.csv-profile-detail-panel small {
  color: #667085;
  display: block;
  margin-top: 3px;
}

.csv-profile-map-list {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.csv-profile-map-list span {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  color: #667085;
  display: grid;
  gap: 3px;
  padding: 8px;
  text-transform: capitalize;
}

.csv-profile-map-list strong {
  color: #101828;
  text-transform: none;
}

.analytics-row.csv-profile-row {
  grid-template-columns: 1.2fr 0.7fr 0.6fr 0.9fr 1.35fr;
}

.analytics-row.csv-profile-row small {
  color: #667085;
  display: block;
  font-size: 11px;
  font-weight: 600;
  margin-top: 3px;
}

.match-review-panel {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.match-review-panel article {
  align-items: end;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: 1.2fr 1fr auto;
  padding: 10px;
}

.match-review-panel span {
  color: #9a3412;
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-top: 4px;
}

.match-review-panel label {
  color: #475467;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 6px;
}

.import-batch-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  margin: 12px 0;
  padding: 12px;
}

.batch-detail-panel,
.match-override-table {
  border-top: 1px solid #e1e7f0;
  margin-top: 14px;
  padding-top: 14px;
}

.recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.recommendation-grid article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.recommendation-grid article.success {
  border-color: #16a34a;
  box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.14);
}

.recommendation-grid article.warning {
  border-color: #f59e0b;
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.16);
}

.recommendation-grid span,
.recommendation-grid small {
  color: #667085;
  display: block;
  font-size: 12px;
}

.recommendation-grid strong {
  display: block;
  margin-top: 4px;
}

.recommendation-grid p {
  color: #475467;
  font-size: 13px;
  margin: 7px 0;
}

.confidence-strip {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  display: grid;
  gap: 3px;
  margin: 8px 0;
  padding: 8px;
}

.confidence-strip b,
.confidence-strip span,
.confidence-strip small {
  display: block;
  font-size: 12px;
}

.confidence-strip.medium {
  border-color: #f59e0b;
  background: #fffbeb;
}

.confidence-strip.high {
  border-color: #16a34a;
  background: #f0fdf4;
}

.recommendation-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.recommendation-actions button {
  border: 1px solid #cfd6e3;
  border-radius: 7px;
  background: #fff;
  padding: 7px 9px;
  font-size: 12px;
}

.recommendation-actions button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.rules-list {
  display: grid;
  gap: 8px;
}

.rules-list div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 11px 12px;
  background: #f8fafc;
}

.preview-frame {
  min-height: 360px;
  background: linear-gradient(135deg, #0f172a, #374151);
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: #fff;
  font-weight: 800;
}

.preview-frame small,
.preview-frame span {
  display: block;
  text-align: center;
}

.preview-frame small {
  color: #d1d5db;
  font-weight: 500;
}

.final-video-player {
  width: 100%;
  min-height: 360px;
  max-height: 680px;
  border-radius: 8px;
  background: #000;
}

.final-qa {
  margin: 12px 0;
}

.final-qa .preflight-grid {
  max-height: 360px;
  overflow: auto;
  padding-right: 2px;
}

.export-package {
  margin-top: 16px;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
}

.export-package .section-head {
  margin-bottom: 12px;
}

.button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.home-office-hours-note {
  align-items: start;
  background: #fff7f7;
  border: 1px solid #fecdd3;
  border-radius: 8px;
  display: grid;
  gap: 5px;
  justify-items: start;
  min-height: 70px;
  min-width: 280px;
  padding: 12px 16px;
}

.home-office-hours-note strong {
  color: #111827;
  font-size: 16px;
  line-height: 1.2;
}

.home-office-hours-note span,
.home-office-hours-note a {
  color: #475467;
  font-size: 14px;
  line-height: 1.25;
}

.home-office-hours-note a {
  background: transparent;
  border: 0;
  color: #ef3f46;
  font-family: inherit;
  font-weight: 800;
  padding: 0;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.final-download-meter {
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
  padding: 10px;
}

.final-download-meter span,
.final-download-meter small,
.final-download-meter em {
  color: #667085;
  display: block;
  font-size: 12px;
  font-style: normal;
}

.final-download-meter strong {
  display: block;
  font-size: 22px;
  margin-top: 2px;
}

.final-download-meter .meter-bar {
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
  height: 8px;
}

.onboarding-meter {
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
  height: 8px;
  margin-top: 8px;
}

.final-download-meter .meter-bar i {
  display: block;
  background: #111827;
  height: 100%;
}

.onboarding-meter i {
  display: block;
  background: #111827;
  height: 100%;
}

.final-download-meter.is-blocked {
  border-color: #fecaca;
  background: #fff5f5;
}

.final-download-meter.is-blocked .meter-bar i {
  background: #ef4444;
}

.trial-download-gate {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 92px;
  gap: 14px;
  align-items: center;
  border: 1px solid #fecaca;
  border-radius: 8px;
  background: #fff7f7;
  padding: 14px;
  margin-bottom: 14px;
}

.trial-download-gate span {
  display: block;
  color: #b91c1c;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.trial-download-gate strong {
  display: block;
  font-size: 19px;
  color: #111827;
  margin-top: 3px;
}

.trial-download-gate small {
  color: #667085;
}

.trial-download-gate img {
  width: 92px;
  height: 92px;
  object-fit: contain;
  opacity: 0.82;
  border-radius: 8px;
  background: #fff;
}

.trial-plan-actions {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.trial-plan-actions button {
  display: grid;
  gap: 2px;
  text-align: left;
  border: 1px solid #fca5a5;
  background: #fff;
  color: #111827;
  border-radius: 7px;
  padding: 10px;
  font-weight: 800;
}

.trial-plan-actions button small {
  color: #667085;
  font-weight: 500;
}

.delivery-grid {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 12px;
  margin-bottom: 12px;
}

.delivery-asset {
  aspect-ratio: 16 / 10;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  display: grid;
  place-items: center;
  overflow: hidden;
  font-weight: 800;
}

.delivery-asset img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.delivery-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.delivery-meta div,
.caption-grid article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.delivery-meta span,
.delivery-meta strong,
.caption-grid strong {
  display: block;
}

.delivery-meta span {
  color: #667085;
  font-size: 12px;
}

.delivery-meta strong {
  margin-top: 3px;
  overflow-wrap: anywhere;
}

.delivery-action-center {
  border: 1px solid #d7deea;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin: 12px 0;
  padding: 14px;
}

.delivery-action-center.ready {
  border-color: #a7f3d0;
  background: #ecfdf5;
}

.delivery-action-center.blocked {
  border-color: #f4c56d;
  background: #fffbeb;
}

.delivery-action-center.pending {
  background: #f8fafc;
}

.delivery-action-center span,
.delivery-action-status span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.delivery-action-center h3 {
  margin: 3px 0 5px;
}

.delivery-action-center p {
  margin: 0;
}

.delivery-action-buttons {
  align-content: center;
  display: grid;
  gap: 10px;
  min-width: min(360px, 100%);
}

.delivery-action-buttons button {
  justify-content: center;
}

.delivery-action-group {
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 8px;
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 8px;
}

.delivery-action-group > span {
  grid-column: 1 / -1;
}

.delivery-action-group .primary-action {
  grid-column: 1 / -1;
}

.compact-delivery-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.delivery-action-status {
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.delivery-action-status div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  display: grid;
  gap: 3px;
  padding: 9px;
}

.delivery-advanced-panel {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #f8fafc;
  margin: 12px 0;
  padding: 10px 12px;
}

.delivery-advanced-panel summary {
  color: #344054;
  cursor: pointer;
  font-weight: 900;
}

.final-delivery-package,
.delivery-center-hero,
.dealer-handoff-panel,
.platform-export-panel,
.package-contents-panel,
.final-asset-history {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  margin-top: 12px;
}

.delivery-center-hero {
  align-items: center;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(220px, 320px) 1fr;
}

.delivery-center-hero.ready {
  border-color: #bde8c9;
  background: #f1fbf5;
}

.delivery-center-hero.blocked {
  border-color: #fecdd3;
  background: #fff1f2;
}

.dealer-handoff-panel.ready {
  border-color: #bde8c9;
}

.dealer-handoff-panel.blocked {
  border-color: #f4c56d;
}

.dealer-handoff-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  margin-bottom: 12px;
}

.dealer-handoff-summary div {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 10px;
}

.dealer-handoff-actions {
  display: grid;
  gap: 8px;
}

.dealer-handoff-actions article {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 10px;
}

.dealer-handoff-actions article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.dealer-handoff-actions article.blocked {
  background: #fff7e6;
  border-color: #f4c56d;
}

.dealer-handoff-actions article div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.dealer-handoff-summary span,
.dealer-handoff-summary small,
.dealer-handoff-actions span,
.dealer-handoff-actions small {
  color: #667085;
  font-size: 12px;
}

.delivery-hero-media {
  align-items: center;
  aspect-ratio: 16 / 9;
  background: #111827;
  border-radius: 8px;
  color: #fff;
  display: grid;
  justify-items: center;
  overflow: hidden;
}

.delivery-hero-media video,
.delivery-hero-media img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.delivery-center-hero h3 {
  margin: 4px 0 6px;
}

.delivery-center-hero span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.delivery-hero-stats,
.platform-export-grid,
.package-contents-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.delivery-hero-stats {
  margin-top: 12px;
}

.delivery-hero-stats div,
.platform-export-grid article,
.package-contents-grid article {
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  display: grid;
  gap: 4px;
  padding: 10px;
}

.delivery-hero-stats small,
.platform-export-grid small,
.platform-export-grid em,
.package-contents-grid small {
  color: #667085;
  font-size: 12px;
}

.platform-export-grid article.selected,
.package-contents-grid article.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.platform-export-grid article button {
  margin-top: 6px;
  min-height: 38px;
}

.package-contents-grid article.blocked {
  background: #fff7e6;
  border-color: #f4c56d;
}

.platform-export-grid span,
.package-contents-grid span {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.final-package-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
}

.final-package-grid div {
  border: 1px solid #eef2f7;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 9px;
}

.final-package-grid span,
.final-history-row small {
  color: #667085;
  font-size: 12px;
}

.final-package-grid strong {
  color: #111827;
  overflow-wrap: anywhere;
}

.final-history-list {
  display: grid;
  gap: 8px;
}

.final-version-list {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.final-version-row {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr 0.7fr 1fr 0.9fr;
  padding: 9px;
}

.final-version-row.master {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.final-history-row {
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr 0.8fr 0.8fr 0.65fr 0.9fr auto;
  padding: 9px;
}

.final-history-row.ready {
  background: #f1fbf5;
  border-color: #bde8c9;
}

.final-history-row.failed {
  background: #fff7f7;
  border-color: #ffc9c9;
}

.tracking-panel {
  margin: 14px 0;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.tracking-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
}

.tracking-grid div {
  border: 1px solid #eef2f7;
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
}

.tracking-grid span,
.tracking-grid strong {
  display: block;
}

.tracking-grid span {
  color: #667085;
  font-size: 12px;
}

.tracking-grid strong {
  margin-top: 3px;
  overflow-wrap: anywhere;
}

.ad-mapping-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.ad-mapping-grid label {
  color: #475467;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 6px;
}

.ad-mapping-grid input {
  font-size: 13px;
  font-weight: 400;
}

.caption-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.caption-grid p {
  color: #475467;
  font-size: 13px;
  margin: 6px 0 0;
}

.delivery-copy {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.delivery-checklist,
.channel-delivery-panel {
  border-top: 1px solid #e5e9f0;
  margin-top: 14px;
  padding-top: 14px;
}

.channel-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.channel-grid article {
  display: grid;
  gap: 6px;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.channel-grid p {
  margin: 0;
  color: #344054;
  font-size: 13px;
  line-height: 1.45;
}

.channel-grid small {
  color: #667085;
  font-size: 12px;
}

.delivery-downloads {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.render-error {
  border: 1px solid #f2b8b5;
  border-radius: 8px;
  background: #fff5f5;
  color: #b42318;
  padding: 10px;
}

.final-toggle {
  margin: 12px 0;
}

.brand-preview {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 10px;
  align-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  padding: 10px;
  margin: 10px 0;
  background: #f8fafc;
}

.brand-preview > span {
  min-height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid #e1e7f0;
  border-radius: 8px;
  background: #fff;
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.brand-preview img {
  max-width: 58px;
  max-height: 34px;
  object-fit: contain;
}

.brand-preview strong,
.brand-preview small {
  display: block;
}

.brand-preview small {
  color: #667085;
  margin-top: 3px;
}

.final-render-preflight-actions {
  display: grid;
  gap: 8px;
  margin: 12px 0;
}

.final-render-preflight-actions > button {
  justify-self: start;
}

.mobile-upload-label input[type="file"] {
  width: 100%;
  min-height: 54px;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  padding: 14px;
  background: #f8fafc;
  font-size: 15px;
}

.mobile-upload-label small {
  display: block;
  margin-top: 8px;
}

@media (max-width: 980px) {
  .trial-signup-panel {
    grid-template-columns: 1fr;
  }

  .trial-signup-copy,
  .trial-signup-form {
    padding: 24px;
  }

  .trial-signup-copy h1 {
    font-size: 32px;
  }

  .trial-signup-stats {
    grid-template-columns: 1fr;
  }

  .workspace-grid,
  .campaign-setup-grid,
  .editor-layout,
  .video-editor-layout,
  .final-preview,
  .delivery-grid,
  .delivery-copy,
  .credit-planner-grid,
  .auto-topup-controls,
  .delivery-center-hero,
  .customer-first-run-hero,
  .global-job-list article,
  .job-detail-grid,
  .health-rollup-row,
  .admin-action-list article,
  .morning-ops-hero,
  .morning-ops-next,
  .daily-ops-snapshot-list article,
  .daily-ops-trend-list article,
  .run-history-row {
    grid-template-columns: 1fr;
  }

  .campaign-setup-grid > .panel:last-child {
    position: static;
  }

  .reference-library-head,
  .reference-library-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .reference-library-actions {
    justify-content: flex-start;
  }

  .reference-upload-toolbar {
    grid-template-columns: 1fr;
  }

  .reference-upload-toolbar .span-two {
    grid-column: 1;
  }

  .clip-trim-panel {
    grid-template-columns: 1fr;
  }

  .camtasia-timeline-dock {
    position: static;
  }

  .proof-summary-grid,
  .proof-detail-grid,
  .proof-columns,
  .usage-export-controls,
  .credit-add-controls,
  .addon-grid,
  .client-credit-hero,
  .client-credit-workspace,
  .client-credit-controls,
  .client-credit-buys,
  .auto-topup-preview,
  .provider-funding-grid,
  .provider-funding-flow,
  .admin-library-summary,
  .purchase-readiness-grid,
  .purchase-action-grid,
  .credit-cost-grid,
  .closeout-file-grid,
  .account-health-grid,
  .renewal-exception-list article,
  .closeout-period-list article,
  .closeout-event-list article,
  .reconciliation-exception-grid,
  .plan-grid,
  .usage-summary-grid,
  .home-onboarding-grid,
  .billing-upgrade-guide,
  .home-credit-grid,
  .content-plan-summary,
  .content-plan-months,
  .usage-account-grid,
  .vehicle-proof-panel {
    grid-template-columns: 1fr;
  }

  .compact-creation-summary .setup-flow-steps {
    grid-template-columns: 1fr;
  }

  .home-office-hours {
    align-items: stretch;
    flex-direction: column;
  }

  .workflow-progress,
  .campaign-summary,
  .customer-launch-steps,
  .clip-step-grid,
  .clip-quality-panel,
  .clip-quality-grid,
  .campaign-quality-summary,
  .campaign-quality-strip,
  .fix-queue-list article,
  .dashboard-focus-main,
  .metric-grid,
  .audio-grid,
  .audio-controls,
  .delivery-meta,
  .shot-set-summary,
  .bulk-coverage-summary,
  .gate-grid,
  .plan-grid,
  .command-summary,
  .queue-status-grid,
  .queue-action-grid,
  .batch-dashboard-summary,
  .batch-progress-metrics,
  .prompt-review-grid,
  .caption-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .customer-first-run-path {
    grid-template-columns: 1fr;
  }

  .dashboard-mode-grid {
    grid-template-columns: 1fr;
  }

  .executive-launch-hero,
  .rooftop-launch-hero,
  .production-start-hero,
  .campaign-exception-list article,
  .production-start-list article,
  .provider-reconcile-row,
  .dealer-home-batch-list article,
  .dealer-home-video-list article,
  .content-coverage-list article,
  .block-environment-panel,
  .dealer-handoff-actions article {
    grid-template-columns: 1fr;
  }

  .dashboard-focus-actions,
  .vehicle-library-actions,
  .button-row {
    justify-content: flex-start;
  }

  .vehicle-library-actions {
    flex-direction: column;
  }

  .block-editor-mode-grid {
    grid-template-columns: 1fr;
  }

  .mode-banner {
    align-items: flex-start;
    flex-direction: column;
  }

  .block-row,
  .review-card,
  .review-version,
  .preflight-command-row,
  .delivery-action-center,
  .campaign-row,
  .angle-preset-card,
  .scene-plan-angle-list,
  .scene-plan-usage-stats,
  .setup-form-grid,
  .audit-row,
  .generation-queue-row,
  .rooftop-vehicle-row,
  .locked-vehicle-row,
  .intake-card-head,
  .upload-panel,
  .bulk-import-row,
  .submit-review-panel,
  .template-brief {
    grid-template-columns: 1fr;
  }

  .scene-plan-usage-head {
    flex-direction: column;
  }

  .setup-section-head,
  .setup-action-row {
    align-items: stretch;
    flex-direction: column;
  }

  .setup-section-head > strong,
  .setup-action-row .primary-action {
    width: 100%;
  }

  .variation-pill {
    white-space: normal;
  }

  .closeout-readiness {
    align-items: flex-start;
    flex-direction: column;
  }

  .access-grid {
    grid-template-columns: 1fr;
  }

  .job-panel-head,
  .job-row-main {
    align-items: flex-start;
    grid-template-columns: 1fr;
  }

  .review-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pacing-grid,
  .runtime-breakdown,
  .generation-empty-steps,
  .final-editor-summary,
  .delivery-action-status,
  .trial-download-gate,
  .trial-plan-actions,
  .final-block-summary,
  .approval-block-grid,
  .revision-log-list,
  .snapshot-create,
  .snapshot-meta,
  .block-text-controls {
    grid-template-columns: 1fr;
  }

  .final-editor-strip {
    flex-wrap: wrap;
  }

  .sidebar {
    position: static;
  }
}

@media (max-width: 640px) {
  html,
  body,
  #root {
    height: auto;
    min-height: 100%;
    overflow: visible;
  }

  .app-shell {
    height: auto;
    min-height: 100vh;
    position: static;
    width: auto;
    grid-template-columns: 1fr;
    overflow: visible;
  }

  main {
    padding: 14px;
    overflow-y: visible;
  }

  .sidebar {
    padding: 14px;
    border-right: 0;
    border-bottom: 1px solid #e4e7ec;
  }

  .sidebar nav {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .sidebar nav button {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 10px 13px;
    white-space: nowrap;
  }

  .topbar {
    align-items: flex-start;
    gap: 14px;
  }

  .topbar-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .people-cast-row {
    grid-template-columns: 1fr;
  }

  .campaign-summary,
  .dealer-home-metrics,
  .customer-launch-steps,
  .production-step-list,
  .production-completion-banner,
  .metric-grid,
  .audio-grid,
  .audio-controls,
  .delivery-meta,
  .shot-set-summary,
  .bulk-coverage-summary,
  .gate-grid,
  .queue-status-grid,
  .queue-action-grid,
  .prompt-review-grid,
  .caption-grid,
  .review-summary {
    grid-template-columns: 1fr;
  }

  .panel,
  .submit-review-panel,
  .upload-panel {
    padding: 16px;
  }

  .mobile-upload-label input[type="file"] {
    min-height: 60px;
    padding: 16px;
    font-size: 16px;
  }

  input,
  select,
  textarea,
  button {
    max-width: 100%;
  }

  .batch-report-menu,
  .batch-report-menu > div {
    position: static;
    width: 100%;
  }

  .reference-approval-row {
    align-items: stretch;
    flex-direction: column;
  }
}

.theme-dark {
  background: #0f172a;
  color: #e5e7eb;
}

.theme-dark main {
  background: #0f172a;
}

.theme-dark .sidebar,
.theme-dark .panel,
.theme-dark .login-panel,
.theme-dark .login-type-card,
.theme-dark .login-account,
.theme-dark .oem-model-grid article,
.theme-dark .oem-rollout-list article,
.theme-dark .oem-trim-list span,
.theme-dark .oem-rollout-chips span,
.theme-dark .library-count,
.theme-dark .secondary-action,
.theme-dark .status-pill,
.theme-dark .theme-toggle,
.theme-dark .icon-button,
.theme-dark .topbar-context-pill,
.theme-dark .topbar-credit-pill,
.theme-dark .role-switcher select,
.theme-dark .account-chip,
.theme-dark .reference-tile,
.theme-dark .insert-clip,
.theme-dark input,
.theme-dark select,
.theme-dark textarea {
  background: #111827;
  color: #e5e7eb;
  border-color: #2f3a4d;
}

.theme-dark .topbar-credit-pill span {
  color: #9ca3af;
}

.theme-dark .topbar-credit-pill strong {
  color: #f9fafb;
}

.theme-dark .trial-allowance-panel span,
.theme-dark .trial-allowance-panel small,
.theme-dark .trial-allowance-panel strong {
  color: #fed7aa;
}

.theme-dark .topbar-credit-pill.ready {
  background: #052e1a;
  border-color: #14532d;
  color: #86efac;
}

.theme-dark .topbar-credit-pill.low {
  background: #3b2f05;
  border-color: #854d0e;
  color: #fde68a;
}

.theme-dark .topbar-credit-pill.empty {
  background: #3f111b;
  border-color: #881337;
  color: #fecdd3;
}

.theme-dark .client-credit-hero span,
.theme-dark .client-credit-hero small,
.theme-dark .auto-topup-preview span,
.theme-dark .credit-planner-grid span,
.theme-dark .credit-planner-grid small,
.theme-dark .credit-planner-grid label,
.theme-dark .auto-topup-controls label,
.theme-dark .provider-funding-grid span,
.theme-dark .provider-funding-grid small,
.theme-dark .provider-funding-flow small {
  color: #9ca3af;
}

.theme-dark .client-credit-hero strong,
.theme-dark .auto-topup-preview strong,
.theme-dark .credit-planner-grid strong,
.theme-dark .home-onboarding-guide h3,
.theme-dark .home-onboarding-grid span,
.theme-dark .home-office-hours strong,
.theme-dark .home-photo-format-note strong,
.theme-dark .billing-upgrade-guide strong,
.theme-dark .home-credit-explainer h3,
.theme-dark .home-credit-grid strong,
.theme-dark .provider-funding-grid strong {
  color: #f9fafb;
}

.theme-dark .metric-grid div,
.theme-dark .audio-grid div,
.theme-dark .audio-controls label,
.theme-dark .voice-admin-row strong,
.theme-dark .campaign-summary div,
.theme-dark .campaign-gate,
.theme-dark .generation-plan,
.theme-dark .angle-preset-card,
.theme-dark .scene-plan-usage-card,
.theme-dark .scene-plan-angle-list small,
.theme-dark .setup-section,
.theme-dark .content-plan-summary div,
.theme-dark .content-plan-months article,
.theme-dark .content-coverage-list article,
.theme-dark .gate-grid div,
.theme-dark .plan-grid div,
.theme-dark .workflow-progress button,
.theme-dark .block-tabs button,
.theme-dark .clip,
.theme-dark .timeline-strip,
.theme-dark .editor-timeline,
.theme-dark .insert-inspector,
.theme-dark .inspector-empty,
.theme-dark .job-panel,
.theme-dark .job-row,
.theme-dark .brand-preview,
.theme-dark .export-package,
.theme-dark .delivery-center-hero,
.theme-dark .delivery-hero-stats div,
.theme-dark .platform-export-panel,
.theme-dark .platform-export-grid article,
.theme-dark .package-contents-panel,
.theme-dark .package-contents-grid article,
.theme-dark .final-download-meter,
.theme-dark .trial-download-gate,
.theme-dark .final-delivery-package,
.theme-dark .final-asset-history,
.theme-dark .final-package-grid div,
.theme-dark .final-version-row,
.theme-dark .final-history-row,
.theme-dark .delivery-meta div,
.theme-dark .tracking-panel,
.theme-dark .tracking-grid div,
.theme-dark .caption-grid article,
.theme-dark .dealer-handoff-panel,
.theme-dark .dealer-handoff-summary div,
.theme-dark .dealer-handoff-actions article,
.theme-dark .review-summary div,
.theme-dark .brand-score-grid div,
.theme-dark .brand-access-preview div,
.theme-dark .brand-access-list div,
.theme-dark .proof-summary-grid div,
.theme-dark .proof-detail-grid div,
.theme-dark .dealer-home-library-grid article,
.theme-dark .performance-library-stats div,
.theme-dark .performance-record-grid article,
.theme-dark .performance-metrics-inline span,
.theme-dark .performance-permission-row,
.theme-dark .clip-trim-panel,
.theme-dark .camtasia-timeline-dock,
.theme-dark .vehicle-library-stats span,
.theme-dark .setup-flow-panel,
.theme-dark .setup-flow-panel span,
.theme-dark .proof-row,
.theme-dark .access-snapshot-card,
.theme-dark .usage-summary-grid div,
.theme-dark .home-onboarding-guide,
.theme-dark .home-onboarding-grid div,
.theme-dark .home-office-hours,
.theme-dark .home-photo-format-note,
.theme-dark .billing-upgrade-guide div,
.theme-dark .home-credit-explainer,
.theme-dark .home-credit-grid div,
.theme-dark .usage-account-grid div,
.theme-dark .usage-ledger-list article,
.theme-dark .client-credit-hero,
.theme-dark .client-credit-hero div,
.theme-dark .client-credit-card,
.theme-dark .auto-topup-preview div,
.theme-dark .credit-planner-grid > div,
.theme-dark .credit-planner-grid label,
.theme-dark .provider-funding-grid div,
.theme-dark .provider-funding-flow article,
.theme-dark .closeout-file-grid article,
.theme-dark .closeout-readiness,
.theme-dark .closeout-period-list article,
.theme-dark .closeout-event-list article,
.theme-dark .renewal-status-card,
.theme-dark .renewal-meter-card,
.theme-dark .renewal-exception-list article,
.theme-dark .account-health-hero,
.theme-dark .account-health-grid article,
.theme-dark .rooftop-launch-hero,
.theme-dark .rooftop-launch-grid article,
.theme-dark .health-rollup-table,
.theme-dark .health-rollup-row,
.theme-dark .reconciliation-check-list article,
.theme-dark .reconciliation-exception-grid div,
.theme-dark .addon-grid button,
.theme-dark .purchase-readiness-grid div,
.theme-dark .purchase-action-grid button,
.theme-dark .trial-allowance-panel,
.theme-dark .statement-preview,
.theme-dark .billing-status-actions button,
.theme-dark .credit-cost-grid div,
.theme-dark .monthly-refill-panel,
.theme-dark .monthly-refill-list article,
.theme-dark .plan-grid div,
.theme-dark .generation-queue-row,
.theme-dark .queue-pill,
.theme-dark .queue-action-grid button,
.theme-dark .prompt-review-panel,
.theme-dark .prompt-review-head span,
.theme-dark .prompt-review-grid div,
.theme-dark .customer-first-run-hero,
.theme-dark .customer-first-run-score,
.theme-dark .customer-first-run-path button,
.theme-dark .dashboard-focus-main div,
.theme-dark .executive-launch-hero,
.theme-dark .executive-launch-grid article,
.theme-dark .campaign-row,
.theme-dark .campaign-actions button,
.theme-dark .dashboard-mode-grid button,
.theme-dark .block-editor-mode-panel,
.theme-dark .block-editor-mode-grid button,
.theme-dark .template-governance div,
.theme-dark .template-fit-panel div,
.theme-dark .reuse-choice-grid article,
.theme-dark .reuse-preview-modal,
.theme-dark .reuse-preview-source,
.theme-dark .reuse-preview-note,
.theme-dark .reuse-preview-grid div,
.theme-dark .origin-summary-grid div,
.theme-dark .campaign-version-list article,
.theme-dark .origin-history-list article,
.theme-dark .template-grid article,
.theme-dark .template-actions button,
.theme-dark .reuse-choice-grid button,
.theme-dark .analytics-connect-grid article,
.theme-dark .analytics-category-grid article,
.theme-dark .analytics-table,
.theme-dark .analytics-row-head,
.theme-dark .analytics-export-panel button,
.theme-dark .report-share-actions button,
.theme-dark .report-status-grid div,
.theme-dark .report-hero-grid div,
.theme-dark .report-preview-grid article,
.theme-dark .snapshot-compare-grid div,
.theme-dark .auto-publish-panel,
.theme-dark .auto-check-grid div,
.theme-dark .automation-log-panel article,
.theme-dark .exception-task-list article,
.theme-dark .exception-task-list button,
.theme-dark .manual-import-panel,
.theme-dark .recommendation-grid article,
.theme-dark .recommendation-actions button,
.theme-dark .confidence-strip,
.theme-dark .locked-vehicle-row,
.theme-dark .locked-vehicle-row button,
.theme-dark .access-item,
.theme-dark .audit-row,
.theme-dark .reference-card,
.theme-dark .rooftop-vehicle-row,
.theme-dark .rooftop-card,
.theme-dark .upload-panel,
.theme-dark .upload-dropzone,
.theme-dark .bulk-import-panel,
.theme-dark .bulk-import-drop,
.theme-dark .bulk-import-row,
.theme-dark .admin-library-summary div,
.theme-dark .admin-library-actions button,
.theme-dark .shot-set-summary div,
.theme-dark .bulk-coverage-summary div,
.theme-dark .missing-shot-strip span,
.theme-dark .used-intake-panel,
.theme-dark .used-intake-rules span,
.theme-dark .used-shot-guide div,
.theme-dark .used-quality-grid div,
.theme-dark .used-photo-grade-panel,
.theme-dark .used-photo-grade-grid article,
.theme-dark .submit-review-panel,
.theme-dark .coverage-slot,
.theme-dark .slot-upload-button,
.theme-dark .intake-card,
.theme-dark .review-version,
.theme-dark .review-empty,
.theme-dark .runtime-panel,
.theme-dark .preflight-command-center,
.theme-dark .paid-guardrails-panel,
.theme-dark .paid-queue-preview,
.theme-dark .paid-queue-list article,
.theme-dark .paid-guardrail-card,
.theme-dark .provider-recovery-watch,
.theme-dark .credential-entry-card,
.theme-dark .command-summary div,
.theme-dark .preflight-command-row,
.theme-dark .final-editor-command,
.theme-dark .final-editor-next,
.theme-dark .final-editor-summary div,
.theme-dark .final-editor-strip button,
.theme-dark .final-advanced-panel,
.theme-dark .delivery-action-center,
.theme-dark .delivery-action-status div,
.theme-dark .delivery-advanced-panel,
.theme-dark .final-assembly,
.theme-dark .final-readiness,
.theme-dark .final-block-summary,
.theme-dark .approval-workflow,
.theme-dark .approval-block-grid article,
.theme-dark .revision-log-panel,
.theme-dark .revision-log-list article,
.theme-dark .snapshot-panel,
.theme-dark .snapshot-list article,
.theme-dark .snapshot-meta div,
.theme-dark .delivery-lock-panel,
.theme-dark .assembly-lane,
.theme-dark .final-block-summary article,
.theme-dark .pacing-grid button,
.theme-dark .runtime-breakdown div,
.theme-dark .template-brief div,
.theme-dark .workflow-mode-grid div,
.theme-dark .workflow-queue-list button,
.theme-dark .job-center-stats div,
.theme-dark .global-job-list article,
.theme-dark .job-detail-drawer,
.theme-dark .job-detail-grid div,
.theme-dark .job-detail-section pre,
.theme-dark .job-detail-status,
.theme-dark .safety-status,
.theme-dark .override-log article,
.theme-dark .launch-checklist-grid button,
.theme-dark .qa-checklist-grid button,
.theme-dark .provider-readiness-grid article,
.theme-dark .voice-coverage-list button,
.theme-dark .voice-recommended span,
.theme-dark .support-diagnostics-hero,
.theme-dark .support-diagnostics-grid article,
.theme-dark .support-playbook-list article,
.theme-dark .campaign-exception-summary div,
.theme-dark .campaign-exception-list article,
.theme-dark .production-brief-grid div,
.theme-dark .production-block-plan article,
.theme-dark .spend-authorization-hero,
.theme-dark .spend-check-grid article,
.theme-dark .spend-approval-validity,
.theme-dark .spend-approval-hero div,
.theme-dark .spend-approval-history article,
.theme-dark .spend-approval-callout,
.theme-dark .spend-delta-row,
.theme-dark .campaign-paid-queue-summary div,
.theme-dark .block-spend-matrix button,
.theme-dark .campaign-paid-queue-row,
.theme-dark .production-start-hero,
.theme-dark .production-start-grid div,
.theme-dark .production-start-list article,
.theme-dark .provider-reconcile-summary div,
.theme-dark .provider-reconcile-row,
.theme-dark .readiness-score-badge,
.theme-dark .readiness-grid article,
.theme-dark .bulk-run-summary div,
.theme-dark .demo-script-grid article,
.theme-dark .operating-guide-list article,
.theme-dark .run-history-row,
.theme-dark .run-audit-summary div,
.theme-dark .bulk-pre-run-review,
.theme-dark .bulk-review-list article,
.theme-dark .server-batch-check,
.theme-dark .suggestion-panel,
.theme-dark .suggestion-card,
.theme-dark .review-card,
.theme-dark .rules-list div,
.theme-dark .version-row,
.theme-dark .block-row button,
.theme-dark .approval-controls button,
.theme-dark .review-actions button,
.theme-dark .template-suggestions span {
  background: #172033;
  border-color: #2f3a4d;
}

.theme-dark .workflow-progress button.active {
  background: #2a1212;
  border-color: #7f1d1d;
  color: #fecaca;
}

.theme-dark .dashboard-mode-grid button.active {
  background: #2a1212;
  border-color: #7f1d1d;
  color: #fecaca;
}

.theme-dark .block-editor-mode-grid button.active {
  background: #2a1212;
  border-color: #7f1d1d;
  color: #fecaca;
}

.theme-dark .campaign-summary .summary-warning,
.theme-dark .mode-banner.live,
.theme-dark .campaign-access-panel.blocked,
.theme-dark .vehicle-proof-panel.blocked,
.theme-dark .vehicle-proof-mini.blocked span,
.theme-dark .preview-notice,
.theme-dark .validation-panel.has-warnings {
  background: #33260a;
  border-color: #92400e;
  color: #fde68a;
}

.theme-dark .validation-panel.has-stops {
  background: #3f1111;
  border-color: #991b1b;
  color: #fecaca;
}

.theme-dark .campaign-summary .summary-ok,
.theme-dark .mode-banner.demo,
.theme-dark .campaign-access-panel,
.theme-dark .vehicle-proof-panel,
.theme-dark .vehicle-proof-mini span,
.theme-dark .preview-admin-panel,
.theme-dark .validation-panel {
  background: #06281c;
  border-color: #14532d;
  color: #86efac;
}

.theme-dark .dealer-handoff-panel.ready,
.theme-dark .dealer-handoff-actions article.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .executive-launch-hero.ready,
.theme-dark .executive-launch-grid article.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .dealer-handoff-panel.blocked,
.theme-dark .dealer-handoff-actions article.blocked {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .executive-launch-hero.warning,
.theme-dark .executive-launch-grid article.warning,
.theme-dark .executive-launch-grid article.needs-attention {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .executive-launch-hero.blocked,
.theme-dark .executive-launch-grid article.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .preflight-item {
  background: rgba(17, 24, 39, 0.72);
  border-color: #334155;
}

.theme-dark .preflight-item.check {
  background: #06281c;
  border-color: #14532d;
  color: #86efac;
}

.theme-dark .paid-queue-list article.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .preflight-item.warning {
  background: #33260a;
  border-color: #92400e;
  color: #fde68a;
}

.theme-dark .paid-queue-list article.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .workflow-queue-list button.needs {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .preflight-item.stop {
  background: #3f1111;
  border-color: #991b1b;
  color: #fecaca;
}

.theme-dark .customer-reference-why {
  border-color: #1d4ed8;
  background: rgba(30, 64, 175, 0.2);
  color: #bfdbfe;
}

.theme-dark .customer-reference-why.warning {
  border-color: #854d0e;
  background: rgba(120, 53, 15, 0.25);
  color: #fde68a;
}

.theme-dark .customer-launch-steps button {
  background: #111827;
  border-color: #2f3a4d;
  color: #e5e7eb;
}

.theme-dark .customer-launch-steps button small {
  color: #9ca3af;
}

.theme-dark .customer-launch-steps button.ready {
  border-color: #166534;
  background: rgba(20, 83, 45, 0.22);
}

.theme-dark .customer-launch-steps button.todo {
  border-color: #7f1d1d;
  background: rgba(127, 29, 29, 0.22);
}

.theme-dark .customer-clip-action-panel,
.theme-dark .customer-advanced-prompt,
.theme-dark .customer-reference-package,
.theme-dark .customer-reference-drawer-more,
.theme-dark .block-text-overlay-panel,
.theme-dark .pattern-audio-panel,
.theme-dark .clip-step-status {
  background: #111827;
  border-color: #2f3a4d;
}

.theme-dark .production-step-card {
  background: #111827;
  border-color: #2f3a4d;
}

.theme-dark .production-step-card > span {
  background: #1f2937;
  color: #cbd5e1;
}

.theme-dark .production-step-card small {
  color: #9ca3af;
}

.theme-dark .production-step-card.complete {
  border-color: #166534;
  background: rgba(20, 83, 45, 0.22);
}

.theme-dark .production-step-card.active {
  border-color: #854d0e;
  background: rgba(120, 53, 15, 0.25);
}

.theme-dark .production-step-card.blocked {
  border-color: #7f1d1d;
  background: rgba(127, 29, 29, 0.22);
}

.theme-dark .clip-step-status small {
  color: #9ca3af;
}

.theme-dark .clip-step-status.ready {
  border-color: #166534;
  background: rgba(20, 83, 45, 0.22);
}

.theme-dark .clip-step-status.ready span {
  color: #86efac;
}

.theme-dark .clip-step-status.blocked {
  border-color: #7f1d1d;
  background: rgba(127, 29, 29, 0.22);
}

.theme-dark .clip-step-status.blocked span {
  color: #fecaca;
}

.theme-dark .generation-review-gate {
  border-color: #854d0e;
  background: rgba(120, 53, 15, 0.25);
}

.theme-dark .generation-review-gate span,
.theme-dark .generation-review-gate small {
  color: #cbd5e1;
}

.theme-dark .generation-credit-gate {
  border-color: #854d0e;
  background: rgba(120, 53, 15, 0.25);
}

.theme-dark .generation-credit-gate span,
.theme-dark .generation-credit-gate small,
.theme-dark .generation-credit-gate em {
  color: #cbd5e1;
}

.theme-dark .reference-approval-row {
  border-top-color: #2f3a4d;
}

.theme-dark .reference-approval-row small {
  color: #9ca3af;
}

.theme-dark .reference-source-note {
  background: rgba(30, 64, 175, 0.2);
  border-color: #1d4ed8;
  color: #bfdbfe;
}

.theme-dark .reference-source-note span {
  color: #cbd5e1;
}

.theme-dark .reference-locked-scene-notice {
  background: rgba(6, 78, 59, 0.28);
  border-color: #047857;
  color: #a7f3d0;
}

.theme-dark .reference-locked-scene-notice strong {
  color: #d1fae5;
}

.theme-dark .shot-type-lock-panel {
  background: rgba(30, 64, 175, 0.2);
  border-color: #1d4ed8;
  color: #bfdbfe;
}

.theme-dark .shot-type-lock-panel strong {
  color: #dbeafe;
}

.theme-dark .scene-safety-summary {
  background: rgba(30, 64, 175, 0.2);
  border-color: #1d4ed8;
}

.theme-dark .scene-safety-summary div,
.theme-dark .scene-safety-details,
.theme-dark .reference-library-details {
  background: #111827;
  border-color: #2f3a4d;
}

.theme-dark .scene-safety-summary strong {
  color: #dbeafe;
}

.theme-dark .scene-safety-summary span,
.theme-dark .scene-safety-summary small,
.theme-dark .scene-safety-details span {
  color: #bfdbfe;
}

.theme-dark .scene-strategy-meta {
  background: rgba(30, 64, 175, 0.2);
  border-color: #1d4ed8;
  color: #bfdbfe;
}

.theme-dark .clip-quality-panel,
.theme-dark .clip-quality-score,
.theme-dark .clip-quality-grid div {
  background: #111827;
  border-color: #2f3a4d;
}

.theme-dark .clip-quality-panel.ready {
  border-color: #166534;
  background: rgba(20, 83, 45, 0.22);
}

.theme-dark .clip-quality-panel.warning {
  border-color: #854d0e;
  background: rgba(120, 53, 15, 0.25);
}

.theme-dark .clip-quality-panel.blocked {
  border-color: #7f1d1d;
  background: rgba(127, 29, 29, 0.22);
}

.theme-dark .clip-quality-score strong {
  color: #e5e7eb;
}

.theme-dark .campaign-quality-panel,
.theme-dark .campaign-quality-summary div,
.theme-dark .campaign-quality-strip button {
  background: #111827;
  border-color: #2f3a4d;
}

.theme-dark .campaign-quality-panel.ready,
.theme-dark .campaign-quality-strip button.ready {
  border-color: #166534;
  background: rgba(20, 83, 45, 0.22);
}

.theme-dark .campaign-quality-panel.warning,
.theme-dark .campaign-quality-strip button.warning {
  border-color: #854d0e;
  background: rgba(120, 53, 15, 0.25);
}

.theme-dark .campaign-quality-panel.blocked,
.theme-dark .campaign-quality-strip button.blocked {
  border-color: #7f1d1d;
  background: rgba(127, 29, 29, 0.22);
}

.theme-dark .campaign-fix-queue.ready,
.theme-dark .fix-queue-list article {
  background: #111827;
  border-color: #2f3a4d;
}

.theme-dark .fix-queue-list article.warning {
  border-color: #854d0e;
  background: rgba(120, 53, 15, 0.25);
}

.theme-dark .fix-queue-list article.blocked {
  border-color: #7f1d1d;
  background: rgba(127, 29, 29, 0.22);
}

.theme-dark .fix-queue-list article > span {
  background: #263244;
  color: #d1d5db;
}

.theme-dark .fix-queue-list em {
  color: #e5e7eb;
}

.theme-dark .paid-queue-list article.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .safety-status.check {
  background: #06281c;
  border-color: #14532d;
  color: #86efac;
}

.theme-dark .safety-status.warning {
  background: #33260a;
  border-color: #92400e;
  color: #fde68a;
}

.theme-dark .safety-status.stop {
  background: #3f1111;
  border-color: #991b1b;
  color: #fecaca;
}

.theme-dark .override-log span {
  color: #cbd5e1;
}

.theme-dark .launch-checklist-grid button.ready,
.theme-dark .qa-checklist-grid button.ready,
.theme-dark .provider-readiness-grid article.ready,
.theme-dark .support-diagnostics-grid article.ready,
.theme-dark .support-diagnostics-hero.ready,
.theme-dark .support-playbook-list article.ready,
.theme-dark .campaign-exception-list article.ready,
.theme-dark .spend-authorization-hero.ready,
.theme-dark .spend-check-grid article.ready,
.theme-dark .production-start-hero.ready,
.theme-dark .production-start-list article.ready,
.theme-dark .provider-reconcile-row.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .provider-reconcile-row.pending {
  background: #111827;
  border-color: #334155;
}

.theme-dark .spend-approval-hero.authorized div,
.theme-dark .spend-approval-hero.conditional div {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .spend-approval-validity.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .spend-approval-callout.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .spend-delta-row.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .campaign-paid-queue-row.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .block-spend-matrix button.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .launch-checklist-grid button.blocked,
.theme-dark .qa-checklist-grid button.blocked,
.theme-dark .provider-readiness-grid article.blocked,
.theme-dark .support-diagnostics-grid article.warning,
.theme-dark .support-diagnostics-hero.warning,
.theme-dark .support-playbook-list article.warning,
.theme-dark .campaign-exception-list article.warning,
.theme-dark .spend-authorization-hero.warning,
.theme-dark .spend-check-grid article.warning,
.theme-dark .production-start-hero.warning,
.theme-dark .production-start-list article.warning,
.theme-dark .provider-reconcile-row.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .spend-approval-validity.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .spend-approval-callout.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .spend-delta-row.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .campaign-paid-queue-row.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .block-spend-matrix button.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .support-diagnostics-grid article.blocked,
.theme-dark .support-diagnostics-hero.blocked,
.theme-dark .support-playbook-list article.blocked,
.theme-dark .campaign-exception-list article.blocked,
.theme-dark .spend-authorization-hero.blocked,
.theme-dark .spend-check-grid article.blocked,
.theme-dark .production-start-hero.blocked,
.theme-dark .production-start-list article.blocked,
.theme-dark .provider-reconcile-row.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .spend-approval-validity.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .spend-approval-callout.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .spend-delta-row.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .campaign-paid-queue-row.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .block-spend-matrix button.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .spend-delta-row.head,
.theme-dark .campaign-paid-queue-row.head,
.theme-dark .provider-reconcile-row.head {
  background: #111827;
  border-color: #334155;
}

.theme-dark .job-row.generating {
  background: #10233f;
  border-color: #1d4ed8;
}

.theme-dark .global-job-list article.generating {
  background: #10233f;
  border-color: #1d4ed8;
}

.theme-dark .job-detail-status.generating,
.theme-dark .job-detail-status.queued,
.theme-dark .job-detail-status.polling {
  background: #10233f;
  border-color: #1d4ed8;
}

.theme-dark .job-row.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .global-job-list article.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .monthly-refill-list article.eligible {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .closeout-readiness.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .closeout-readiness.needs-review {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .closeout-readiness.locked {
  background: #1e1b4b;
  border-color: #4338ca;
}

.theme-dark .closeout-file-grid em {
  background: #1e1b4b;
  color: #c7d2fe;
}

.theme-dark .closeout-period-list article.closed,
.theme-dark .closeout-event-list article.closed {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .closeout-period-list article.open,
.theme-dark .closeout-event-list article.open {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .renewal-status-card.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .renewal-status-card.watch,
.theme-dark .renewal-status-card.pending {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .renewal-status-card.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .renewal-status-card em {
  background: #e5e7eb;
  color: #111827;
}

.theme-dark .renewal-meter-card .meter-bar {
  background: #1f2937;
}

.theme-dark .renewal-meter-card .meter-bar i {
  background: #e5e7eb;
}

.theme-dark .renewal-exception-list article.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .renewal-exception-list article.already-refilled {
  background: #1e1b4b;
  border-color: #4338ca;
}

.theme-dark .renewal-exception-list article.skipped {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .account-health-grid article.ok {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .rooftop-launch-hero.ready,
.theme-dark .rooftop-launch-grid article.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .account-health-grid article.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .rooftop-launch-hero.warning,
.theme-dark .rooftop-launch-grid article.blocked {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .account-health-grid article.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .rooftop-launch-hero.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .health-rollup-head {
  background: #0f172a;
  color: #94a3b8;
}

.theme-dark .health-rollup-row.healthy {
  background: #06281c;
}

.theme-dark .health-rollup-row.needs-attention {
  background: #33260a;
}

.theme-dark .health-rollup-row.blocked {
  background: #3f1111;
}

.theme-dark .health-rollup-actions button {
  background: #111827;
  border-color: #2f3a4d;
  color: #e5e7eb;
}

.theme-dark .admin-action-list article,
.theme-dark .admin-action-rank,
.theme-dark .admin-action-controls button {
  background: #111827;
  border-color: #2f3a4d;
  color: #e5e7eb;
}

.theme-dark .admin-action-list article.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .admin-action-list article.warning {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .admin-action-list article.deferred {
  background: #0f172a;
  border-color: #475569;
}

.theme-dark .admin-action-list article.resolved {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .morning-ops-hero,
.theme-dark .morning-ops-score,
.theme-dark .morning-ops-next {
  background: #111827;
  border-color: #2f3a4d;
  color: #e5e7eb;
}

.theme-dark .morning-ops-hero.blocked {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .morning-ops-hero.watch {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .morning-ops-hero.healthy {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .morning-ops-next button {
  background: #e5e7eb;
  border-color: #e5e7eb;
  color: #111827;
}

.theme-dark .daily-ops-snapshot-list article,
.theme-dark .daily-ops-snapshot-list button,
.theme-dark .daily-ops-trend-panel,
.theme-dark .daily-ops-trend-list article {
  background: #111827;
  border-color: #2f3a4d;
  color: #e5e7eb;
}

.theme-dark .daily-ops-snapshot-actions button[data-action="delete-daily-ops-snapshot"] {
  border-color: #991b1b;
  color: #fecdd6;
}

.theme-dark .daily-ops-trend-list article.current {
  border-color: #e5e7eb;
}

.theme-dark .trend-bar,
.theme-dark .trend-split {
  background: #1f2937;
}

.theme-dark .account-health-grid em {
  background: #111827;
  color: #e5e7eb;
}

.theme-dark .reconciliation-check-list article.ok {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .reconciliation-check-list article.watch {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .reconciliation-check-list article.attention {
  background: #3f1111;
  border-color: #991b1b;
}

.theme-dark .reconciliation-check-list em {
  background: #111827;
  color: #e5e7eb;
}

.theme-dark .job-detail-status.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .final-history-row.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .final-version-row.master {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .workflow-queue-list button.ready {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .job-row.failed {
  background: #2a1212;
  border-color: #7f1d1d;
}

.theme-dark .global-job-list article.failed {
  background: #2a1212;
  border-color: #7f1d1d;
}

.theme-dark .job-detail-status.failed {
  background: #2a1212;
  border-color: #7f1d1d;
}

.theme-dark .final-history-row.failed {
  background: #2a1212;
  border-color: #7f1d1d;
}

.theme-dark .track-lane {
  background: #111827;
  border-color: #2f3a4d;
}

.theme-dark .editor-actions button,
.theme-dark .inspector-buttons button,
.theme-dark .suggestion-panel .section-head button,
.theme-dark .role-notice button,
.theme-dark .recovery-banner button,
.theme-dark .global-job-actions a,
.theme-dark .global-job-actions button,
.theme-dark .usage-row-actions button,
.theme-dark .drawer-head button,
.theme-dark .drawer-actions button,
.theme-dark .drawer-actions a,
.theme-dark .preview-admin-panel button,
.theme-dark .proof-actions button {
  background: #111827;
  color: #e5e7eb;
  border-color: #2f3a4d;
}

.theme-dark .main-clip {
  background: #030712;
}

.theme-dark .sidebar {
  border-right-color: #2f3a4d;
}

.theme-dark .brand small,
.theme-dark .quiet,
.theme-dark .login-account small,
.theme-dark .section-head p,
.theme-dark .metric-grid span,
.theme-dark .meter-stack span,
.theme-dark .reconciliation-grid small,
.theme-dark .closeout-grid small,
.theme-dark .closeout-file-grid span,
.theme-dark .closeout-readiness span,
.theme-dark .renewal-grid small,
.theme-dark .renewal-exception-summary small,
.theme-dark .renewal-status-card span,
.theme-dark .renewal-meter-card span,
.theme-dark .renewal-exception-list span,
.theme-dark .health-score-ring span,
.theme-dark .account-health-hero > div:last-child span,
.theme-dark .account-health-grid span,
.theme-dark .rooftop-launch-hero span,
.theme-dark .rooftop-launch-hero small,
.theme-dark .rooftop-launch-grid span,
.theme-dark .rooftop-launch-grid small,
.theme-dark .rooftop-launch-grid em,
.theme-dark .executive-launch-hero span,
.theme-dark .executive-launch-hero small,
.theme-dark .executive-launch-grid span,
.theme-dark .executive-launch-grid small,
.theme-dark .dashboard-focus-main span,
.theme-dark .dashboard-focus-main small,
.theme-dark .closeout-period-list span,
.theme-dark .closeout-event-list span,
.theme-dark .closeout-event-list p,
.theme-dark .reconciliation-check-list span,
.theme-dark .reconciliation-exception-grid span,
.theme-dark .audio-grid span,
.theme-dark .paid-queue-list span,
.theme-dark .paid-queue-list small,
.theme-dark .paid-queue-total span,
.theme-dark .block-row em {
  color: #9ca3af;
}

.theme-dark .paid-queue-list em {
  color: #cbd5e1;
}

.theme-dark .meter-stack .meter-bar,
.theme-dark .plan-guardrails-panel .meter-bar {
  background: #1f2937;
}

.theme-dark .meter-stack .meter-bar i,
.theme-dark .plan-guardrails-panel .meter-bar i {
  background: #e5e7eb;
}

.theme-dark .notice {
  background: #06281c;
  color: #86efac;
  border-color: #14532d;
}

.theme-dark .notice.muted {
  background: #172033;
  color: #cbd5e1;
}

.theme-dark .workflow-requirement-item {
  background: #172033;
  border-color: #334155;
}

.theme-dark .workflow-requirement-item small {
  color: #cbd5e1;
}

.theme-dark .workflow-requirement-item em {
  color: #fbbf24;
}

.theme-dark .workflow-requirement-item.readonly em {
  color: #34d399;
}

.theme-dark .quick-text-options button {
  background: #172033;
  border-color: #334155;
  color: #e5e7eb;
}

.theme-dark .quick-text-options button small {
  color: #cbd5e1;
}

.theme-dark .brand-score-grid div.approved {
  background: #06281c;
  border-color: #14532d;
}

.theme-dark .brand-score-grid div.ignored {
  background: #33260a;
  border-color: #92400e;
}

.theme-dark .brand-score-grid small,
.theme-dark .brand-discovery-results details,
.theme-dark .brand-access-preview span,
.theme-dark .brand-access-list span,
.theme-dark .proof-summary-grid span,
.theme-dark .proof-detail-grid span,
.theme-dark .proof-detail-grid small,
.theme-dark .proof-row span,
.theme-dark .access-snapshot-card p,
.theme-dark .usage-summary-grid span,
.theme-dark .home-onboarding-guide p,
.theme-dark .home-onboarding-grid li,
.theme-dark .home-onboarding-grid small,
.theme-dark .home-office-hours span,
.theme-dark .home-office-hours small,
.theme-dark .home-photo-format-note span,
.theme-dark .home-photo-format-note small,
.theme-dark .billing-upgrade-guide span,
.theme-dark .billing-upgrade-guide small,
.theme-dark .home-credit-explainer p,
.theme-dark .home-credit-grid span,
.theme-dark .home-credit-grid small,
.theme-dark .usage-account-grid span,
.theme-dark .usage-account-grid small,
.theme-dark .usage-ledger-list span,
.theme-dark .monthly-refill-list span,
.theme-dark .final-download-meter span,
.theme-dark .final-download-meter small,
.theme-dark .final-download-meter em,
.theme-dark .trial-download-gate small,
.theme-dark .dealer-handoff-summary span,
.theme-dark .dealer-handoff-summary small,
.theme-dark .dealer-handoff-actions span,
.theme-dark .dealer-handoff-actions small,
.theme-dark .final-package-grid span,
.theme-dark .final-version-row small,
.theme-dark .final-history-row small,
.theme-dark .addon-grid span,
.theme-dark .addon-grid small,
.theme-dark .credit-cost-grid span,
.theme-dark .plan-grid span,
.theme-dark .plan-grid small,
.theme-dark .workflow-mode-grid span,
.theme-dark .workflow-mode-grid small,
.theme-dark .workflow-queue-list span,
.theme-dark .workflow-queue-list small,
.theme-dark .job-center-stats span,
.theme-dark .global-job-list small,
.theme-dark .template-fit-panel span,
.theme-dark .template-fit-panel small,
.theme-dark .support-playbook-list span,
.theme-dark .support-playbook-list small,
.theme-dark .campaign-exception-summary span,
.theme-dark .campaign-exception-list small,
.theme-dark .production-brief-grid span,
.theme-dark .production-brief-grid small,
.theme-dark .production-block-plan span,
.theme-dark .production-block-plan small,
.theme-dark .spend-authorization-hero span,
.theme-dark .spend-authorization-hero small,
.theme-dark .spend-check-grid span,
.theme-dark .spend-check-grid small,
.theme-dark .spend-approval-hero span,
.theme-dark .spend-approval-hero small,
.theme-dark .spend-approval-validity span,
.theme-dark .spend-approval-validity small,
.theme-dark .spend-approval-history span,
.theme-dark .spend-approval-history small,
.theme-dark .spend-approval-callout span,
.theme-dark .spend-approval-callout small,
.theme-dark .spend-delta-row span,
.theme-dark .campaign-paid-queue-summary span,
.theme-dark .block-spend-matrix span,
.theme-dark .block-spend-matrix small,
.theme-dark .block-spend-matrix em,
.theme-dark .campaign-paid-queue-row span,
.theme-dark .campaign-paid-queue-row small,
.theme-dark .campaign-paid-queue-row em,
.theme-dark .production-start-hero span,
.theme-dark .production-start-hero small,
.theme-dark .production-start-grid span,
.theme-dark .production-start-grid small,
.theme-dark .production-start-list span,
.theme-dark .production-start-list small,
.theme-dark .provider-reconcile-summary span,
.theme-dark .provider-reconcile-summary small,
.theme-dark .provider-reconcile-row span,
.theme-dark .provider-reconcile-row small,
.theme-dark .brand-chip-row em {
  color: #9ca3af;
}

.theme-dark .support-playbook-list p {
  color: #cbd5e1;
}

.theme-dark .support-playbook-rank strong {
  color: #f8fafc;
}

.theme-dark .campaign-exception-list article > span {
  background: #111827;
  border-color: #334155;
  color: #f8fafc;
}

.theme-dark .brand-chip-row span {
  background: #172033;
  border-color: #3730a3;
  color: #c7d2fe;
}

.theme-dark .template-fit-meter::before {
  background: #2f3a4d;
}

.theme-dark .template-fit-meter span {
  color: #e5e7eb;
}

.theme-dark .template-missing-tags span {
  background: #33260a;
  border-color: #92400e;
  color: #fde68a;
}

.theme-dark .role-notice span {
  color: #cbd5e1;
}

.theme-dark.login-shell,
.theme-dark .login-shell {
  background: #0f172a;
}

.theme-dark .account-chip strong,
.theme-dark .login-account strong,
.theme-dark .final-package-grid strong {
  color: #e5e7eb;
}

.theme-dark .account-chip span {
  color: #9ca3af;
}

.theme-dark .tag-group,
.theme-dark .block-row {
  border-color: #2f3a4d;
}

.theme-dark .remove-image-btn {
  background: #2a1212;
  border-color: #7f1d1d;
  color: #fecaca;
}

.theme-dark .restore-tile {
  background: #111827;
  border-color: #2f3a4d;
}

.theme-dark .restore-tile span {
  color: #9ca3af;
}

.theme-dark .restore-tile button {
  background: #172033;
  border-color: #2f3a4d;
  color: #e5e7eb;
}

.theme-dark .coverage-list div {
  border-color: #2f3a4d;
}


.locked-rooftop-field {
  border: 1px solid #dbe4f0;
  border-radius: 8px;
  background: #f8fafc;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.locked-rooftop-field span,
.locked-rooftop-field small {
  color: #667085;
  font-size: 12px;
}

.locked-rooftop-field strong {
  color: #111827;
  font-size: 18px;
}

.theme-dark .locked-rooftop-field {
  background: #172033;
  border-color: #344054;
}

.theme-dark .locked-rooftop-field strong {
  color: #f8fafc;
}

.theme-dark .video-setup-head,
.theme-dark .setup-action-row {
  border-color: #344054;
}

.theme-dark .setup-section-head > strong {
  border-color: #344054;
  color: #f8fafc;
}


.oem-license-panel .oem-rooftop-select {
  display: grid;
  gap: 8px;
  margin: 12px 0 16px;
  font-weight: 700;
}

.oem-license-panel .oem-rooftop-select select {
  max-width: 420px;
}

.oem-license-panel .oem-rooftop-select small {
  color: var(--muted);
  font-weight: 500;
}

.oem-license-panel .oem-rooftop-list article.selected {
  border-color: var(--accent);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent) 34%, transparent);
}

.oem-license-panel .oem-rooftop-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.oem-license-panel .oem-rooftop-list article {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--surface);
}

.oem-license-panel .oem-rooftop-list strong,
.oem-license-panel .oem-rooftop-list span,
.oem-license-panel .oem-rooftop-list small {
  display: block;
}

.oem-license-panel .oem-rooftop-list span,
.oem-license-panel .oem-rooftop-list small {
  color: var(--muted);
  font-size: 0.84rem;
}

.client-archive-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 16px 0;
}

.client-archive-assets,
.client-archive-block-prompts {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--surface);
}

.client-archive-asset-row {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 4px 10px;
  align-items: start;
  padding: 8px 0;
  border-top: 1px solid var(--border);
}

.client-archive-asset-row:first-of-type {
  border-top: 0;
}

.client-archive-asset-row span {
  color: var(--muted);
  font-size: 0.78rem;
  text-transform: uppercase;
}

.client-archive-asset-row a,
.client-archive-asset-row b {
  min-width: 0;
  overflow-wrap: anywhere;
}

.client-archive-asset-row small {
  grid-column: 2;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.client-archive-prompt-grid {
  display: grid;
  gap: 14px;
}

.client-archive-prompt-field {
  display: grid;
  gap: 7px;
  font-weight: 700;
}

.client-archive-prompt-field textarea {
  width: 100%;
  min-height: 92px;
  resize: vertical;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 0.86rem;
  line-height: 1.45;
}

.client-archive-block-prompts > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
}

@media (max-width: 900px) {
  .client-archive-two-col {
    grid-template-columns: 1fr;
  }
}
