.content-studio-workspace {
  min-height: 420px;
  color: var(--vp-ink, #151821);
  background: #fff;
}

.content-studio-loading,
.cs-empty {
  min-height: 320px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 12px;
  padding: 42px 24px;
  color: var(--vp-muted, #697386);
  text-align: center;
}

.content-studio-spinner {
  width: 22px;
  height: 22px;
  border: 2px solid #e3e7ee;
  border-top-color: var(--vp-primary, #5b45f5);
  border-radius: 50%;
  animation: cs-spin .8s linear infinite;
}

@keyframes cs-spin { to { transform: rotate(360deg); } }

@media (prefers-reduced-motion: reduce) {
  .content-studio-spinner,
  .cs-setup-panel { animation: none; }
}

.cs-step-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
  padding: 22px 24px 18px;
  border-bottom: 1px solid var(--vp-line, #e7e9ef);
}

.cs-step-head-copy { min-width: 0; }
.cs-kicker {
  display: block;
  margin-bottom: 5px;
  color: #087a55;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}
.cs-step-head h3,
.cs-section h4,
.cs-empty h3 { margin: 0; letter-spacing: 0; }
.cs-step-head h3 { font-size: 18px; line-height: 1.3; }
.cs-step-head p,
.cs-empty p {
  max-width: 72ch;
  margin: 5px 0 0;
  color: var(--vp-muted, #697386);
  font-size: 12px;
  line-height: 1.55;
}

.cs-status {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid #dfe4eb;
  border-radius: 7px;
  color: #596273;
  background: #f8f9fb;
  font-size: 10.5px;
  font-weight: 750;
  white-space: nowrap;
}
.cs-status::before {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #98a2b3;
  content: '';
}
.cs-status.ready { color: #087a55; border-color: #bfe8d7; background: #effaf5; }
.cs-status.ready::before { background: #16a56f; }
.cs-status.warn { color: #965d0a; border-color: #f0d7aa; background: #fff9ed; }
.cs-status.warn::before { background: #d9911b; }
.cs-status.bad { color: #b4233b; border-color: #f1c3cc; background: #fff4f6; }
.cs-status.bad::before { background: #d93452; }

.cs-notice {
  margin: 18px 24px 0;
  padding: 11px 13px;
  border: 1px solid #dce5f3;
  border-radius: 7px;
  color: #294868;
  background: #f4f8fd;
  font-size: 11px;
  line-height: 1.5;
}
.cs-notice.bad { color: #a5233b; border-color: #f1c3cc; background: #fff5f6; }
.cs-notice.warn { color: #88530a; border-color: #efd6a6; background: #fff9ed; }
.cs-notice.ok { color: #087550; border-color: #bfe8d7; background: #effaf5; }
.cs-notice ul { margin: 7px 0 0; padding-left: 18px; }

.cs-section { padding: 22px 24px; }
.cs-section + .cs-section { border-top: 1px solid var(--vp-line, #e7e9ef); }
.cs-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}
.cs-section-head h4 { font-size: 14px; line-height: 1.4; }
.cs-section-head p {
  margin: 3px 0 0;
  color: var(--vp-muted, #697386);
  font-size: 11px;
  line-height: 1.5;
}
.cs-section-action { flex: 0 0 auto; }

.cs-context-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.cs-chip {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 4px 8px;
  border: 1px solid #dfe4eb;
  border-radius: 6px;
  color: #4b5565;
  background: #f8f9fb;
  font-size: 10px;
  font-weight: 700;
}
.cs-chip.green { color: #087550; border-color: #c9eadc; background: #f1faf6; }
.cs-chip.blue { color: #24599b; border-color: #cfdff3; background: #f2f7fd; }
.cs-chip.amber { color: #8a570e; border-color: #efd9b1; background: #fff9ef; }

.cs-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}
.cs-setup-form { min-width: 0; }
.cs-setup-progress {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  margin-bottom: 22px;
  border: 1px solid #e0e4eb;
  border-radius: 8px;
  background: #fbfcfd;
}
.cs-setup-progress-step {
  min-width: 0;
  display: grid;
  grid-template-columns: 27px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  padding: 12px;
  border: 0;
  border-left: 1px solid #e4e7ed;
  color: #5f6979;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.cs-setup-progress-step:first-child { border-left: 0; }
.cs-setup-progress-step:hover { background: #f7f8fa; }
.cs-setup-progress-step:disabled { cursor: not-allowed; opacity: .68; }
.cs-setup-progress-step:disabled:hover { background: transparent; }
.cs-setup-progress-step:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--vp-primary, #5b45f5); outline-offset: -2px; }
.cs-setup-progress-step.active { color: #34304b; background: #f7f6ff; box-shadow: inset 0 -2px 0 var(--vp-primary, #5b45f5); }
.cs-setup-number {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border: 1px solid #d8dde6;
  border-radius: 7px;
  color: #687284;
  background: #fff;
  font-size: 10px;
  font-weight: 800;
}
.cs-setup-progress-step.active .cs-setup-number { color: #fff; border-color: var(--vp-primary, #5b45f5); background: var(--vp-primary, #5b45f5); }
.cs-setup-progress-step.complete:not(.active) .cs-setup-number { color: #087550; border-color: #bfe8d7; background: #effaf5; }
.cs-setup-progress-copy { min-width: 0; }
.cs-setup-progress-copy strong,
.cs-setup-progress-copy small { display: block; }
.cs-setup-progress-copy strong { color: #303644; font-size: 10.75px; line-height: 1.3; }
.cs-setup-progress-copy small { overflow: hidden; margin-top: 2px; color: #7a8392; font-size: 8.75px; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.cs-setup-progress-state { color: #8a93a1; font-size: 8.5px; font-weight: 700; white-space: nowrap; }
.cs-setup-progress-step.complete .cs-setup-progress-state { color: #087550; }
.cs-setup-mobile-progress { display: none; }
.cs-setup-panel {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  animation: cs-panel-in .18s ease-out;
}
.cs-setup-panel[hidden] { display: none !important; }
@keyframes cs-panel-in {
  from { opacity: .25; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}
.cs-setup-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 17px;
}
.cs-setup-panel-head h5 { margin: 0; color: #242a35; font-size: 15px; line-height: 1.35; letter-spacing: 0; outline: none; }
.cs-setup-panel-head p { max-width: 68ch; margin: 4px 0 0; color: var(--vp-muted, #697386); font-size: 10.5px; line-height: 1.5; }
.cs-text-button,
.cs-fact-tools button {
  min-height: 28px;
  padding: 4px 7px;
  border: 0;
  border-radius: 5px;
  color: #4f46c8;
  background: transparent;
  font: inherit;
  font-size: 9.5px;
  font-weight: 750;
  cursor: pointer;
}
.cs-text-button:hover,
.cs-fact-tools button:hover { background: #f2f0ff; }
.cs-text-button:focus-visible,
.cs-fact-tools button:focus-visible { outline: 2px solid var(--vp-primary, #5b45f5); outline-offset: 1px; }
.cs-optional { margin-left: 4px; color: #7a8392; font-size: 8.75px; font-weight: 600; }
.cs-confirm-band {
  padding: 13px 14px;
  border: 1px solid #dfe4eb;
  border-radius: 8px;
  background: #fbfcfd;
}
.cs-setup-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 21px;
  padding-top: 16px;
  border-top: 1px solid #e7e9ef;
}
.cs-setup-footer-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.cs-step-requirement { color: #88530a; font-size: 10px; font-weight: 700; line-height: 1.45; }
.cs-step-requirement::before { margin-right: 6px; content: '\2022'; }
.cs-step-requirement.ready { color: #087550; }
.cs-save-state { display: block; margin-top: 3px; color: #8a93a1; font-size: 8.75px; }
.cs-field { min-width: 0; display: grid; gap: 6px; }
.cs-field.wide { grid-column: 1 / -1; }
.cs-field label,
.cs-field-label { color: #313744; font-size: 11px; font-weight: 750; }
.cs-required { color: #c42b46; }
.cs-field small { color: var(--vp-muted, #697386); font-size: 9.75px; line-height: 1.45; }
.cs-field.invalid .cs-field-message { color: #b4233b; font-weight: 700; }
.cs-field.invalid input,
.cs-field.invalid textarea { border-color: #dc8b99; background: #fffafb; }
.cs-field input,
.cs-field select,
.cs-field textarea,
.cs-revision textarea,
.cs-brief-field input,
.cs-brief-field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #d9dee7;
  border-radius: 7px;
  color: #1f2430;
  background: #fff;
  font: inherit;
  font-size: 12px;
  line-height: 1.5;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.cs-field input,
.cs-field select,
.cs-brief-field input { min-height: 42px; padding: 9px 11px; }
.cs-field textarea,
.cs-revision textarea,
.cs-brief-field textarea { min-height: 88px; resize: vertical; padding: 10px 11px; }
.cs-field input:focus,
.cs-field select:focus,
.cs-field textarea:focus,
.cs-revision textarea:focus,
.cs-brief-field input:focus,
.cs-brief-field textarea:focus {
  border-color: var(--vp-primary, #5b45f5);
  box-shadow: 0 0 0 3px rgba(91, 69, 245, .11);
}
.cs-optional-context {
  margin-top: 17px;
  padding-top: 13px;
  border-top: 1px solid #e7e9ef;
}
.cs-optional-context summary {
  width: fit-content;
  color: #4f46c8;
  font-size: 10.5px;
  font-weight: 750;
  cursor: pointer;
}
.cs-optional-context summary:focus-visible { outline: 2px solid var(--vp-primary, #5b45f5); outline-offset: 3px; }
.cs-optional-context-body {
  display: grid;
  grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr);
  gap: 15px;
  margin-top: 14px;
}

.cs-check {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  color: #313744;
  font-size: 11px;
  line-height: 1.5;
  cursor: pointer;
}
.cs-check input { width: 16px; height: 16px; flex: 0 0 auto; margin: 1px 0 0; accent-color: var(--vp-primary, #5b45f5); }
.cs-check strong { display: block; font-size: 11.5px; }
.cs-check span { display: block; margin-top: 1px; color: var(--vp-muted, #697386); }

.cs-fact-discovery {
  gap: 10px;
  padding: 14px;
  border: 1px solid #dfe4eb;
  border-radius: 8px;
  background: #fbfcfd;
}
.cs-fact-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}
.cs-fact-head-actions { flex: 0 0 auto; display: grid; justify-items: end; gap: 5px; }
.cs-fact-tools { display: flex; align-items: center; justify-content: flex-end; gap: 2px; }
.cs-fact-head strong { display: block; color: #242a35; font-size: 12px; }
.cs-fact-head p { max-width: 68ch; margin: 3px 0 0; color: var(--vp-muted, #697386); font-size: 10px; line-height: 1.5; }
.cs-fact-list {
  max-height: 330px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 1px solid #e0e4eb;
  border-radius: 8px;
  background: #fff;
}
.cs-fact-row {
  display: grid;
  grid-template-columns: 17px minmax(0, 1fr);
  gap: 10px;
  padding: 11px 12px;
  border-top: 1px solid #e7e9ef;
}
.cs-fact-row:first-child { border-top: 0; }
.cs-fact-row:has(input:checked) { background: #f5fbf8; }
.cs-fact-row > input { width: 16px; height: 16px; margin: 2px 0 0; accent-color: #11855d; }
.cs-fact-row label { display: block; color: #313744; font-size: 10.75px; font-weight: 650; line-height: 1.5; cursor: pointer; }
.cs-fact-row span { display: block; margin-top: 3px; color: #737d8d; font-size: 9.25px; line-height: 1.45; }
.cs-fact-row span span { display: inline; margin: 0; }
.cs-fact-row a { color: #315d96; font-weight: 700; overflow-wrap: anywhere; }
.cs-fact-empty {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid #efd6a6;
  border-radius: 7px;
  color: #70470b;
  background: #fff9ed;
  font-size: 10px;
  line-height: 1.5;
}
.cs-fact-empty strong { font-size: 10.75px; }
.cs-fact-legacy { color: #697386; font-size: 9.75px; line-height: 1.5; }
.cs-fact-gate {
  width: fit-content;
  max-width: 100%;
  padding: 7px 9px;
  border: 1px solid #efd6a6;
  border-radius: 6px;
  color: #88530a;
  background: #fff9ed;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.45;
}
.cs-fact-gate.ready { color: #087550; border-color: #bfe8d7; background: #effaf5; }

.cs-details {
  border-top: 1px solid var(--vp-line, #e7e9ef);
  background: #fbfcfd;
}
.cs-details > summary {
  padding: 13px 24px;
  color: #404755;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
  list-style-position: inside;
}
.cs-details[open] > summary { border-bottom: 1px solid var(--vp-line, #e7e9ef); }
.cs-details-body { padding: 18px 24px 22px; }

.cs-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin-top: 18px;
}
.cs-button {
  min-height: 39px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 8px 13px;
  border: 1px solid #d7dce5;
  border-radius: 7px;
  color: #303644;
  background: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}
.cs-button:hover { border-color: #bbc3d0; background: #f8f9fb; }
.cs-button:active { transform: translateY(1px); }
.cs-button:focus-visible { outline: 2px solid var(--vp-primary, #5b45f5); outline-offset: 2px; }
.cs-button.primary { color: #fff; border-color: var(--vp-primary, #5b45f5); background: var(--vp-primary, #5b45f5); }
.cs-button.primary:hover { border-color: #4833db; background: #4833db; }
.cs-button.green { color: #fff; border-color: #11855d; background: #11855d; }
.cs-button.danger { color: #b4233b; border-color: #edc3cb; background: #fff; }
.cs-button:disabled { opacity: .52; cursor: not-allowed; transform: none; }
.cs-button-busy::before {
  width: 12px;
  height: 12px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  content: '';
  animation: cs-spin .8s linear infinite;
}

.cs-project-context {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  padding: 10px 24px;
  border-top: 1px solid #e7e9ef;
  border-bottom: 1px solid #e7e9ef;
  background: #fbfbfd;
}
.cs-project-context-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid #dcd8ff;
  border-radius: 7px;
  color: #513be0;
  background: #f1efff;
  font-size: 10px;
  font-weight: 850;
}
.cs-project-context-copy { min-width: 0; }
.cs-project-context-copy > span,
.cs-project-context-copy small { display: block; color: #727b8b; font-size: 9px; line-height: 1.35; }
.cs-project-context-copy > span { font-weight: 750; text-transform: uppercase; }
.cs-project-context-copy strong {
  display: block;
  overflow: hidden;
  margin: 1px 0;
  font-size: 11px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cs-project-context[data-storage="workspace"] .cs-project-context-copy small { color: #21795b; }
.cs-project-context[data-storage="conflict"] { border-color: #e8c787; background: #fffaf0; }
.cs-project-context[data-storage="conflict"] .cs-project-context-icon { color: #8a5a08; border-color: #e8c787; background: #fff1cf; }
.cs-project-context[data-storage="conflict"] .cs-project-context-copy small { color: #8a5a08; }
.cs-project-context-actions { display: flex; gap: 7px; align-items: center; }
.cs-project-context-actions .cs-button { padding: 7px 10px; font-size: 9.75px; }
.cs-project-conflict {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 13px 24px;
  border-bottom: 1px solid #e8c787;
  color: #49340d;
  background: #fff8e8;
}
.cs-project-conflict > div:first-child { min-width: 0; }
.cs-project-conflict span { display: block; color: #8a5a08; font-size: 8px; font-weight: 850; text-transform: uppercase; }
.cs-project-conflict strong { display: block; margin-top: 2px; font-size: 11px; }
.cs-project-conflict p { max-width: 720px; margin: 3px 0 0; color: #6d5422; font-size: 9.5px; line-height: 1.5; }
.cs-project-conflict > div:last-child { flex: 0 0 auto; display: flex; flex-wrap: wrap; gap: 7px; }
.cs-content-journey {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid #e7e9ef;
  background: #fff;
}
.cs-content-journey-step {
  min-width: 0;
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 11px 13px;
  border: 0;
  border-left: 1px solid #e7e9ef;
  color: #697386;
  background: #fff;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: color .15s ease, background .15s ease;
}
.cs-content-journey-step:first-child { border-left: 0; }
.cs-content-journey-step:hover { color: #34304b; background: #fafafd; }
.cs-content-journey-step:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--vp-primary, #5b45f5); outline-offset: -2px; }
.cs-content-journey-step:disabled { cursor: default; }
.cs-content-journey-step:not(.active):not(.complete):disabled { color: #9ba3b1; background: #fbfcfd; }
.cs-content-journey-step.active { color: #4034ba; background: #f7f6ff; box-shadow: inset 0 -2px 0 var(--vp-primary, #5b45f5); }
.cs-content-journey-number {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  border: 1px solid #d9dee7;
  border-radius: 6px;
  color: #687284;
  background: #fff;
  font-size: 9px;
  font-weight: 850;
}
.cs-content-journey-step.active .cs-content-journey-number { color: #fff; border-color: var(--vp-primary, #5b45f5); background: var(--vp-primary, #5b45f5); }
.cs-content-journey-step.complete:not(.active) .cs-content-journey-number { color: #087550; border-color: #bfe8d7; background: #effaf5; }
.cs-content-journey-copy { min-width: 0; }
.cs-content-journey-copy strong,
.cs-content-journey-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cs-content-journey-copy strong { color: #303644; font-size: 10px; line-height: 1.3; }
.cs-content-journey-copy small { margin-top: 1px; color: #7a8392; font-size: 8.5px; line-height: 1.3; }
.cs-content-journey-state { color: #8a93a1; font-size: 8px; font-weight: 750; text-transform: uppercase; white-space: nowrap; }
.cs-content-journey-step.active .cs-content-journey-state { color: #4f46c8; }
.cs-content-journey-step.complete .cs-content-journey-state { color: #087550; }
.cs-mini-spinner {
  width: 13px;
  height: 13px;
  display: inline-block;
  border: 2px solid #c8c2ff;
  border-right-color: #5944ee;
  border-radius: 50%;
  animation: cs-spin .8s linear infinite;
}

.cs-project-library { background: #fff; }
.cs-project-list { overflow: hidden; border: 1px solid #e0e4eb; border-radius: 8px; }
.cs-project-row {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr) auto;
  gap: 13px;
  align-items: center;
  padding: 13px 14px;
  border-top: 1px solid #e7e9ef;
  background: #fff;
}
.cs-project-row:first-child { border-top: 0; }
.cs-project-row:hover { background: #fbfbfc; }
.cs-project-row.active { background: #f8f7ff; box-shadow: inset 3px 0 0 var(--vp-primary, #5b45f5); }
.cs-project-row-state { display: flex; gap: 6px; align-items: center; color: #727b8a; font-size: 9px; font-weight: 750; }
.cs-project-dot { width: 7px; height: 7px; border-radius: 50%; background: #aab1bd; }
.cs-project-row.active .cs-project-dot { background: #25a56f; box-shadow: 0 0 0 3px #dff6ec; }
.cs-project-row-copy { min-width: 0; }
.cs-project-row-copy strong {
  display: block;
  overflow: hidden;
  color: #282e39;
  font-size: 11px;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cs-project-row-copy span { display: block; margin-top: 2px; color: #7a8392; font-size: 9.25px; line-height: 1.4; }
.cs-project-row-actions { display: flex; gap: 5px; align-items: center; }
.cs-project-row-actions button,
.cs-current-project {
  padding: 6px 8px;
  border: 1px solid #d9dee7;
  border-radius: 6px;
  color: #394150;
  background: #fff;
  font: inherit;
  font-size: 9px;
  font-weight: 750;
}
.cs-project-row-actions button { cursor: pointer; }
.cs-project-row-actions button:hover { border-color: #b9c1ce; background: #f6f7f9; }
.cs-project-row-actions button.confirm { color: #a51f38; border-color: #e8aab6; background: #fff5f6; }
.cs-current-project { color: #176b50; border-color: #bfe6d7; background: #eefaf5; }
.cs-project-library-empty { padding: 18px; text-align: center; }
.cs-project-library-empty strong { display: block; font-size: 11.5px; }
.cs-project-library-empty span { display: block; max-width: 520px; margin: 4px auto 0; color: #737d8d; font-size: 10px; line-height: 1.5; }

.cs-opportunity-list { display: grid; border: 1px solid #e0e4eb; border-radius: 8px; overflow: hidden; }
.cs-opportunity {
  position: relative;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  gap: 13px;
  align-items: start;
  padding: 16px;
  border: 0;
  border-top: 1px solid #e7e9ef;
  color: inherit;
  background: #fff;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.cs-opportunity:first-child { border-top: 0; }
.cs-opportunity:hover { background: #fafbfc; }
.cs-opportunity.selected { background: #f7f6ff; box-shadow: inset 3px 0 0 var(--vp-primary, #5b45f5); }
.cs-radio {
  width: 16px;
  height: 16px;
  margin-top: 2px;
  border: 1.5px solid #aab2c0;
  border-radius: 50%;
  background: #fff;
}
.cs-opportunity.selected .cs-radio { border: 5px solid var(--vp-primary, #5b45f5); }
.cs-opportunity-copy { min-width: 0; }
.cs-opportunity-copy strong { display: block; font-size: 12.5px; line-height: 1.4; }
.cs-opportunity-copy p { margin: 4px 0 8px; color: var(--vp-muted, #697386); font-size: 10.5px; line-height: 1.5; }
.cs-opportunity-meta { display: flex; flex-wrap: wrap; gap: 6px 12px; color: #677182; font-size: 9.75px; }
.cs-priority { min-width: 82px; text-align: right; }
.cs-priority strong { display: block; color: #7d4c08; font-size: 12px; }
.cs-priority span { display: block; margin-top: 2px; color: #7b8493; font-size: 9px; }

.cs-brief-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: start; }
.cs-brief-title { margin: 0 0 5px; font-size: 17px; line-height: 1.35; }
.cs-brief-query { color: #4f596a; font-size: 10.5px; }
.cs-brief-query strong { color: #242a35; }
.cs-brief-angle { margin: 12px 0 0; color: #566071; font-size: 11px; line-height: 1.55; }
.cs-brief-edit { display: grid; gap: 13px; }
.cs-outline { counter-reset: cs-outline; border: 1px solid #e0e4eb; border-radius: 8px; overflow: hidden; }
.cs-outline-row {
  counter-increment: cs-outline;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 12px;
  padding: 14px 15px;
  border-top: 1px solid #e7e9ef;
}
.cs-outline-row:first-child { border-top: 0; }
.cs-outline-row::before {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  color: #315d96;
  background: #edf5fd;
  font-size: 10px;
  font-weight: 800;
  content: counter(cs-outline);
}
.cs-outline-row strong { display: block; font-size: 11.5px; }
.cs-outline-row p { margin: 3px 0 0; color: var(--vp-muted, #697386); font-size: 10.25px; line-height: 1.5; }
.cs-evidence-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 28px; }
.cs-evidence-group h5 { margin: 0 0 7px; font-size: 10.5px; }
.cs-evidence-group ul { margin: 0; padding-left: 16px; color: #5e6878; font-size: 10px; line-height: 1.55; }
.cs-evidence-group a { color: #315d96; overflow-wrap: anywhere; }

.cs-quality {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 20px;
  align-items: center;
}
.cs-score {
  width: 82px;
  height: 82px;
  display: grid;
  place-items: center;
  border: 7px solid #e7eaf0;
  border-radius: 50%;
  color: #252b36;
  background: #fff;
  font-size: 20px;
  font-weight: 800;
}
.cs-score strong { font-size: 20px; line-height: 1; }
.cs-score span { margin-top: -18px; color: var(--vp-muted, #697386); font-size: 9px; font-weight: 700; }
.cs-score.good { border-color: #78d2b0; }
.cs-score.warn { border-color: #efcb78; }
.cs-score.bad { border-color: #eba1af; }
.cs-quality h4 { margin: 0; font-size: 14px; }
.cs-quality p { margin: 4px 0 0; color: var(--vp-muted, #697386); font-size: 10.5px; line-height: 1.5; }
.cs-quality-plan {
  display: grid;
  gap: 12px;
  margin-top: 17px;
}
.cs-quality-plan.is-clear,
.cs-quality-plan-section {
  padding: 14px;
  border: 1px solid #dfe5ee;
  border-radius: 8px;
  background: #fafbfd;
}
.cs-quality-plan-section.must-fix { border-color: #edc4cc; background: #fffafb; }
.cs-quality-plan-section.optional { border-color: #ead9ad; background: #fffdf8; }
.cs-quality-plan.is-clear { border-color: #bfe6d6; background: #f5fcf9; }
.cs-quality-plan-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}
.cs-quality-plan-kicker {
  display: block;
  margin-bottom: 3px;
  color: #697386;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.cs-quality-plan-heading h5 { margin: 0; font-size: 12px; }
.cs-quality-plan-heading p { margin: 4px 0 0; max-width: 680px; color: #626d7e; font-size: 10px; line-height: 1.5; }
.cs-quality-plan-count {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  font-size: 8.5px;
  font-weight: 800;
  white-space: nowrap;
}
.cs-quality-plan-count.block { color: #a5233b; background: #fdecef; }
.cs-quality-plan-count.review { color: #855909; background: #fff0c9; }
.cs-quality-plan-count.clear { color: #087a55; background: #e4f7ef; }
.cs-quality-issue-list { display: grid; gap: 8px; margin-top: 12px; }
.cs-quality-issue {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 12px;
  border: 1px solid #e2e6ed;
  border-radius: 7px;
  background: #fff;
}
.cs-quality-issue-copy { min-width: 0; }
.cs-quality-issue-copy > div { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.cs-quality-issue-copy strong { font-size: 10.5px; }
.cs-quality-issue-copy > div > span {
  padding: 3px 6px;
  border-radius: 5px;
  color: #555fc7;
  background: #f0efff;
  font-size: 7.75px;
  font-weight: 800;
  text-transform: uppercase;
}
.cs-quality-issue.block .cs-quality-issue-copy > div > span { color: #a5233b; background: #fdecef; }
.cs-quality-issue-copy p { margin: 4px 0 0; color: #626d7e; font-size: 9.5px; line-height: 1.5; }
.cs-quality-issue-copy ul { margin: 6px 0 0; padding-left: 16px; color: #434b59; font-size: 9.5px; line-height: 1.5; }
.cs-quality-issue-copy a { display: inline-block; margin-top: 7px; color: #4f46c8; font-size: 9px; font-weight: 750; }
.cs-quality-issue .cs-button { flex: 0 0 auto; }
.cs-quality-plan-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-top: 12px; }
.cs-quality-plan-actions > span { color: #626d7e; font-size: 9px; line-height: 1.45; }
.cs-quality-scope {
  margin-top: 16px;
  padding: 10px 12px;
  border: 1px solid #dfe5ee;
  border-radius: 7px;
  color: #596477;
  background: #f8fafc;
  font-size: 10px;
  line-height: 1.5;
}
.cs-quality-dimensions {
  margin-top: 8px;
  border: 1px solid #e0e4eb;
  border-radius: 8px;
  overflow: hidden;
}
.cs-quality-details { margin-top: 14px; }
.cs-quality-details > summary { color: #4b5565; cursor: pointer; font-size: 9.5px; font-weight: 750; }
.cs-quality-details > summary:focus-visible { outline: 2px solid var(--vp-primary, #5b45f5); outline-offset: 3px; }
.cs-quality-dimension {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 14px;
  padding: 13px 14px;
  border-top: 1px solid #e7e9ef;
  background: #fff;
}
.cs-quality-dimension:first-child { border-top: 0; }
.cs-quality-dimension.block { background: #fffafb; }
.cs-quality-dimension.review { background: #fffdf8; }
.cs-quality-dimension-score { align-self: start; padding-top: 2px; }
.cs-quality-dimension-score strong { font-size: 17px; line-height: 1; }
.cs-quality-dimension-score span { color: var(--vp-muted, #697386); font-size: 8.5px; font-weight: 700; }
.cs-quality-dimension-copy > div { display: flex; align-items: center; gap: 8px; }
.cs-quality-dimension-copy h5 { margin: 0; font-size: 11px; }
.cs-quality-dimension-copy p { margin: 4px 0 0; color: var(--vp-muted, #697386); font-size: 10px; line-height: 1.5; }
.cs-quality-state { padding: 3px 6px; border-radius: 5px; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.cs-quality-state.pass { color: #087a55; background: #e9f8f1; }
.cs-quality-state.review { color: #8a5a08; background: #fff3d6; }
.cs-quality-state.block { color: #a5233b; background: #fdecef; }
.cs-quality-dimension details { margin-top: 7px; color: #596477; font-size: 9.5px; }
.cs-quality-dimension summary { cursor: pointer; font-weight: 700; }
.cs-quality-dimension ul { margin: 6px 0 0; padding-left: 16px; line-height: 1.5; }
.cs-precise-guidance {
  margin-top: 14px;
  border: 1px solid #dfe4ec;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.cs-precise-guidance > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  cursor: pointer;
  list-style: none;
  background: #fafbfc;
}
.cs-precise-guidance > summary::-webkit-details-marker { display: none; }
.cs-precise-guidance > summary:focus-visible { outline: 2px solid var(--vp-primary, #5b45f5); outline-offset: -2px; }
.cs-precise-guidance > summary span { min-width: 0; }
.cs-precise-guidance > summary strong { display: block; color: #333a47; font-size: 10.5px; }
.cs-precise-guidance > summary small { display: block; margin-top: 2px; color: #697386; font-size: 9px; line-height: 1.45; }
.cs-precise-guidance > summary b {
  flex: 0 0 auto;
  padding: 4px 7px;
  border-radius: 999px;
  color: #555fc7;
  background: #f0efff;
  font-size: 8px;
  white-space: nowrap;
}
.cs-precise-guidance-body { padding: 13px 14px 14px; border-top: 1px solid #e7e9ef; }
.cs-precise-guidance-list { display: grid; gap: 8px; }
.cs-precise-guidance-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 12px;
  border: 1px solid #e2e6ed;
  border-radius: 7px;
  background: #fffdf8;
}
.cs-precise-guidance-row > div:first-child { min-width: 0; }
.cs-precise-guidance-row span { display: block; color: #765909; font-size: 7.75px; font-weight: 800; text-transform: uppercase; }
.cs-precise-guidance-row strong { display: block; margin-top: 3px; font-size: 10.5px; }
.cs-precise-guidance-row p { margin: 3px 0 0; color: #4f5968; font-size: 9.5px; line-height: 1.5; }
.cs-precise-guidance-row small { display: block; margin-top: 4px; color: #697386; font-size: 9px; line-height: 1.5; }
.cs-precise-guidance-actions { flex: 0 0 auto; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.cs-precise-guidance-clear { margin: 0; color: #21795b; font-size: 9.5px; line-height: 1.5; }
.cs-schema-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
.cs-schema-candidate { padding: 11px 12px; border: 1px solid #dfe5ee; border-radius: 7px; background: #f8fafc; }
.cs-schema-candidate > div { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 7px; }
.cs-schema-candidate strong { font-size: 10.5px; }
.cs-schema-candidate span { padding: 3px 6px; border-radius: 5px; font-size: 7.75px; font-weight: 800; text-transform: uppercase; }
.cs-schema-candidate.candidate span { color: #087a55; background: #e4f7ef; }
.cs-schema-candidate.review span { color: #855909; background: #fff0c9; }
.cs-schema-candidate p { margin: 5px 0 0; color: #4f5968; font-size: 9.5px; line-height: 1.5; }
.cs-schema-candidate small { display: block; margin-top: 4px; color: #697386; font-size: 9px; line-height: 1.5; }
.cs-schema-candidate ul { margin: 7px 0 0; padding-left: 16px; color: #596477; font-size: 8.75px; line-height: 1.5; }
.cs-schema-note { margin: 10px 0 0; color: #697386; font-size: 8.75px; line-height: 1.5; }
.cs-link-placement-list { display: grid; gap: 8px; margin-bottom: 13px; }
.cs-link-placement-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 12px;
  border: 1px solid #cfe1f3;
  border-radius: 7px;
  background: #f8fbff;
}
.cs-link-placement-row > div { min-width: 0; }
.cs-link-placement-row a { display: block; color: #315d96; font-size: 10.5px; font-weight: 800; overflow-wrap: anywhere; }
.cs-link-placement-row span { display: block; margin-top: 3px; color: #687386; font-size: 9px; }
.cs-link-placement-row .cs-button { flex: 0 0 auto; }
.cs-link-placement-empty,
.cs-link-placement-complete { margin: 0 0 12px; color: #697386; font-size: 9.75px; line-height: 1.5; }
.cs-link-placement-complete { margin-bottom: 0; }
.cs-link-placement-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 11px; }
.cs-link-placement-controls label { display: grid; gap: 5px; }
.cs-link-placement-controls label > span { color: #333a47; font-size: 9.5px; font-weight: 750; }
.cs-link-placement-controls select {
  width: 100%;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid #d9dee7;
  border-radius: 7px;
  color: #242a35;
  background: #fff;
  font: inherit;
  font-size: 10.5px;
}
.cs-link-placement-controls select:focus { border-color: var(--vp-primary, #5b45f5); outline: 3px solid rgba(91, 69, 245, .11); }
.cs-link-placement-preview {
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px dashed #b9c8dc;
  border-radius: 7px;
  background: #fbfcfe;
}
.cs-link-placement-preview > span { display: block; color: #7a8494; font-size: 7.75px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.cs-link-placement-preview p { margin: 4px 0 0; color: #4f5969; font-size: 9.75px; line-height: 1.5; }
.cs-link-placement-preview a { color: #315d96; font-weight: 800; }
.cs-link-placement-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 11px; }
.cs-link-placement-actions > span { color: #697386; font-size: 9px; line-height: 1.45; }
.cs-check-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid #e0e4eb; border-radius: 8px; overflow: hidden; }
.cs-check-item { padding: 12px; border-left: 1px solid #e7e9ef; background: #fff; }
.cs-check-item:first-child { border-left: 0; }
.cs-check-item strong { display: block; font-size: 13px; }
.cs-check-item span { display: block; margin-top: 2px; color: var(--vp-muted, #697386); font-size: 9px; }

.cs-draft-meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid #e7e9ef; }
.cs-draft-meta > div { padding: 13px 16px; border-left: 1px solid #e7e9ef; }
.cs-draft-meta > div:first-child { border-left: 0; }
.cs-draft-meta span { display: block; color: var(--vp-muted, #697386); font-size: 9px; font-weight: 700; text-transform: uppercase; }
.cs-draft-meta strong { display: block; margin-top: 4px; font-size: 10.5px; line-height: 1.45; overflow-wrap: anywhere; }
.cs-article-preview { max-width: 780px; margin: 0 auto; padding: 28px 24px 36px; color: #262b35; }
.cs-article-preview h1 { margin: 0 0 14px; font-size: 24px; line-height: 1.25; letter-spacing: 0; }
.cs-article-preview h2 { margin: 25px 0 8px; font-size: 16px; letter-spacing: 0; }
.cs-article-preview h3 { margin: 18px 0 6px; font-size: 13px; letter-spacing: 0; }
.cs-article-preview p,
.cs-article-preview li { font-size: 11.5px; line-height: 1.7; }
.cs-article-preview ul,
.cs-article-preview ol { padding-left: 20px; }
.cs-article-preview .visiblepilot-related-link {
  margin-top: 13px;
  padding: 9px 11px;
  border-left: 3px solid #7b71f8;
  color: #596477;
  background: #f7f6ff;
}
.cs-article-preview .visiblepilot-related-link a { color: #4f46c8; font-weight: 800; }
.cs-article-preview [data-cs-article-section] { margin-inline: -12px; padding-inline: 12px; border-radius: 7px; transition: background .2s ease, box-shadow .2s ease; }
.cs-article-preview [data-cs-article-section]:focus { outline: none; }
.cs-article-preview [data-cs-article-section].is-focused { background: #fff8df; box-shadow: 0 0 0 2px #e8c75f; }

.cs-revision { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: end; }
.cs-revision textarea { min-height: 70px; }
.cs-revision-selection { min-height: 15px; margin: 6px 0 0; color: #4f46c8; font-size: 9px; font-weight: 700; line-height: 1.45; }
.cs-action-guidance {
  margin: 12px 0 0;
  padding: 10px 12px;
  border: 1px solid #e4e7ee;
  border-radius: 7px;
  color: #596477;
  background: #f8f9fb;
  font-size: 10px;
  line-height: 1.5;
}

.cs-publish-list { border: 1px solid #e0e4eb; border-radius: 8px; overflow: hidden; }
.cs-publish-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border-top: 1px solid #e7e9ef;
}
.cs-publish-row:first-child { border-top: 0; }
.cs-publish-row strong { display: block; font-size: 12px; }
.cs-publish-row p { margin: 3px 0 0; color: var(--vp-muted, #697386); font-size: 10.5px; line-height: 1.5; }
.cs-publish-result { display: inline-block; margin-top: 8px; color: #087a55; font-size: 9.5px; font-weight: 800; }
.cs-publish-controls {
  display: grid;
  grid-template-columns: auto minmax(132px, 160px) auto;
  align-items: center;
  gap: 8px;
}
.cs-publish-controls label { color: var(--vp-muted, #697386); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.cs-publish-controls select {
  min-height: 38px;
  padding: 0 30px 0 10px;
  border: 1px solid #d9dee7;
  border-radius: 7px;
  color: #252b36;
  background: #fff;
  font: inherit;
  font-size: 10px;
}
.cs-publish-controls select:focus-visible { outline: 2px solid rgba(91, 69, 245, .25); outline-offset: 2px; }
.cs-publication-check {
  grid-column: 1 / -1;
  min-width: 0;
  margin-top: 2px;
  padding: 14px;
  border: 1px solid #dce3eb;
  border-radius: 8px;
  background: #fbfcfd;
}
.cs-publication-check.is-passed { border-color: #bfe8d7; background: #f3fbf7; }
.cs-publication-check.is-review { border-color: #efd6a6; background: #fffaf0; }
.cs-publication-check.is-unavailable { border-color: #d8dee7; background: #f8f9fb; }
.cs-publication-check-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.cs-publication-check-kicker {
  display: block;
  margin-bottom: 3px;
  color: #5a4ac5;
  font-size: 8.75px;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.cs-publication-check h5 { margin: 0; color: #252b36; font-size: 12.5px; line-height: 1.4; }
.cs-publication-check-head p,
.cs-publication-check-item p,
.cs-publication-check-note {
  margin: 3px 0 0;
  color: #667181;
  font-size: 9.75px;
  line-height: 1.5;
}
.cs-publication-check-status {
  flex: 0 0 auto;
  min-height: 25px;
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border: 1px solid #d9dee7;
  border-radius: 6px;
  color: #626c7b;
  background: #fff;
  font-size: 9px;
  font-weight: 800;
  white-space: nowrap;
}
.is-passed .cs-publication-check-status { color: #087550; border-color: #b7dfcf; background: #fff; }
.is-review .cs-publication-check-status { color: #88530a; border-color: #e8c887; background: #fff; }
.cs-publication-check-time { margin-top: 8px; color: #7a8392; font-size: 8.75px; }
.cs-publication-check-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin-top: 11px;
}
.cs-publication-check-item {
  min-width: 0;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 8px;
  align-items: flex-start;
  padding: 9px;
  border: 1px solid #e0e4eb;
  border-radius: 7px;
  background: rgba(255, 255, 255, .8);
}
.cs-publication-check-item strong { display: block; color: #343b48; font-size: 10px; line-height: 1.4; }
.cs-publication-check-item p { font-size: 9px; }
.cs-publication-repair {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid #e5e8ed;
  color: #5f6877;
  font-size: 8.75px;
  line-height: 1.45;
}
.cs-publication-repair b { display: block; margin-bottom: 2px; color: #424a57; font-size: 8.75px; }
.cs-publication-repair.can-help b { color: #3e35aa; }
.cs-publication-repair .cs-button { flex: 0 0 auto; min-height: 29px; width: auto; padding: 5px 8px; font-size: 8.5px; text-decoration: none; }
.cs-publication-check-mark {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #6c7584;
  background: #edf0f4;
  font-size: 9px;
  font-weight: 850;
}
.cs-publication-check-item.pass .cs-publication-check-mark { color: #087550; background: #e7f7ef; }
.cs-publication-check-item.review .cs-publication-check-mark { color: #88530a; background: #fff0d2; }
.cs-publication-check-item.fail .cs-publication-check-mark { color: #a5233b; background: #fdebee; }
.cs-publication-check-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.cs-publication-check-actions .cs-button { min-height: 34px; padding: 6px 10px; font-size: 9.75px; text-decoration: none; }
.cs-publication-check-note { margin-top: 9px; }
.cs-safety-note { padding: 13px 24px; border-top: 1px solid #e7e9ef; color: #626c7b; background: #f8f9fb; font-size: 10px; line-height: 1.55; }

@media (max-width: 900px) {
  .cs-form-grid,
  .cs-optional-context-body,
  .cs-evidence-grid { grid-template-columns: 1fr; }
  .cs-setup-progress-step { grid-template-columns: 27px minmax(0, 1fr); }
  .cs-setup-progress-state { grid-column: 2; }
  .cs-check-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cs-check-item:nth-child(odd) { border-left: 0; }
  .cs-check-item:nth-child(n+3) { border-top: 1px solid #e7e9ef; }
  .cs-project-row { grid-template-columns: minmax(0, 1fr) auto; }
  .cs-project-row-state { grid-column: 1 / -1; }
  .cs-content-journey-step { grid-template-columns: 25px minmax(0, 1fr); }
  .cs-content-journey-state { grid-column: 2; }
}

@media (max-width: 640px) {
  .cs-step-head,
  .cs-section-head,
  .cs-brief-hero { display: block; }
  .cs-step-head,
  .cs-section,
  .cs-details-body { padding-left: 15px; padding-right: 15px; }
  .cs-details > summary { padding-left: 15px; padding-right: 15px; }
  .cs-status,
  .cs-section-action { margin-top: 10px; }
  .cs-project-context { grid-template-columns: 30px minmax(0, 1fr); padding: 10px 15px; }
  .cs-project-context-actions { grid-column: 1 / -1; }
  .cs-project-context-actions .cs-button { flex: 1 1 120px; width: auto; }
  .cs-project-conflict { align-items: flex-start; flex-direction: column; padding: 13px 15px; }
  .cs-project-conflict > div:last-child { width: 100%; }
  .cs-project-conflict .cs-button { flex: 1 1 180px; }
  .cs-content-journey { grid-template-columns: repeat(4, minmax(94px, 1fr)); overflow-x: auto; }
  .cs-content-journey-step { grid-template-columns: 23px minmax(0, 1fr); padding: 9px 10px; }
  .cs-content-journey-number { width: 23px; height: 23px; }
  .cs-content-journey-copy small,
  .cs-content-journey-state { display: none; }
  .cs-project-row { display: block; padding: 13px; }
  .cs-project-row-copy { margin-top: 7px; }
  .cs-project-row-copy strong { white-space: normal; }
  .cs-project-row-actions { flex-wrap: wrap; margin-top: 10px; }
  .cs-project-row-actions button,
  .cs-current-project { flex: 1 1 90px; text-align: center; }
  .cs-fact-head { display: block; }
  .cs-fact-head .cs-chip { margin-top: 8px; }
  .cs-fact-head-actions { justify-items: start; }
  .cs-fact-tools { justify-content: flex-start; }
  .cs-setup-progress { display: none; }
  .cs-setup-mobile-progress {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    padding: 9px 11px;
    border: 1px solid #e0e4eb;
    border-radius: 7px;
    color: #687284;
    background: #f8f9fb;
    font-size: 9.5px;
  }
  .cs-setup-mobile-progress strong { color: #303644; font-size: 10.5px; }
  .cs-setup-panel-head { display: block; }
  .cs-setup-panel-head .cs-text-button { margin-top: 8px; }
  .cs-setup-footer { position: sticky; bottom: 0; z-index: 2; display: block; margin-right: -15px; margin-left: -15px; padding: 12px 15px; background: rgba(255, 255, 255, .97); box-shadow: 0 -5px 14px rgba(16, 24, 40, .06); }
  .cs-setup-footer-actions { margin-top: 9px; }
  .cs-setup-footer-actions .cs-button { flex: 1 1 120px; width: auto; }
  .cs-opportunity { grid-template-columns: 20px minmax(0, 1fr); }
  .cs-priority { grid-column: 2; min-width: 0; text-align: left; }
  .cs-priority strong,
  .cs-priority span { display: inline; }
  .cs-quality { grid-template-columns: 1fr; }
  .cs-score { width: 70px; height: 70px; }
  .cs-quality-plan-heading { display: block; }
  .cs-quality-plan-count { display: inline-block; margin-top: 8px; }
  .cs-quality-issue { align-items: flex-start; flex-direction: column; }
  .cs-quality-issue .cs-button { width: 100%; }
  .cs-quality-plan-actions .cs-button { width: 100%; }
  .cs-precise-guidance > summary { align-items: flex-start; }
  .cs-precise-guidance-row { align-items: flex-start; flex-direction: column; }
  .cs-precise-guidance-actions { width: 100%; justify-content: stretch; }
  .cs-precise-guidance-actions .cs-button { flex: 1 1 130px; }
  .cs-schema-grid { grid-template-columns: 1fr; }
  .cs-link-placement-controls { grid-template-columns: 1fr; }
  .cs-link-placement-row { align-items: flex-start; flex-direction: column; }
  .cs-link-placement-row .cs-button,
  .cs-link-placement-actions .cs-button { width: 100%; }
  .cs-draft-meta { grid-template-columns: 1fr; }
  .cs-draft-meta > div { border-left: 0; border-top: 1px solid #e7e9ef; }
  .cs-draft-meta > div:first-child { border-top: 0; }
  .cs-revision,
  .cs-publish-row { grid-template-columns: 1fr; }
  .cs-publish-controls { grid-template-columns: 1fr; }
  .cs-publish-controls label { margin-top: 4px; }
  .cs-publication-check-head { display: block; }
  .cs-publication-check-status { margin-top: 9px; }
  .cs-publication-check-list { grid-template-columns: 1fr; }
  .cs-publication-repair { align-items: flex-start; flex-direction: column; }
  .cs-publication-repair .cs-button { width: 100%; }
  .cs-publication-check-actions .cs-button { flex: 1 1 130px; width: auto; }
  .cs-quality-dimension { grid-template-columns: 52px minmax(0, 1fr); padding: 12px; }
  .cs-button { width: 100%; }
  .cs-actions .cs-button { flex: 1 1 145px; width: auto; }
}

/* Focused workspace: the shell owns the four-stage journey. Inside the card,
   show only the current project and the decisions required for this stage. */
.content-studio-workspace { min-height: 360px; }
.cs-step-head {
  align-items: center;
  min-height: 82px;
  padding: 17px 20px 15px;
  background:
    radial-gradient(circle at 95% 0%, rgba(53, 184, 235, .08), transparent 25%),
    linear-gradient(135deg, #fff, #fcfbff);
}
.cs-kicker { margin-bottom: 4px; font-size: 9px; letter-spacing: .075em; }
.cs-step-head h3 { font-size: 17px; letter-spacing: -.018em; }
.cs-step-head p { max-width: 58ch; margin-top: 4px; font-size: 10.5px; }
.cs-status { min-height: 27px; border-radius: 999px; font-size: 9.5px; }
.cs-project-context {
  grid-template-columns: 32px minmax(0, 1fr) auto;
  padding: 9px 20px;
  border-top: 0;
  background: #fafbfc;
}
.cs-project-context-icon { width: 29px; height: 29px; border-radius: 9px; }
.cs-project-context-copy > span { color: #667085; font-size: 8px; letter-spacing: .055em; }
.cs-project-context-copy strong { font-size: 10.75px; }
.cs-project-context-copy small { font-size: 8.5px; }
.cs-project-context-actions .cs-button { min-height: 34px; border-radius: 8px; }
.cs-section { padding: 19px 20px; }
.cs-section-head { margin-bottom: 13px; }
.cs-section-head h4 { font-size: 13.5px; }
.cs-section-head p { font-size: 10.5px; }
.cs-context-summary { gap: 6px; }
.cs-setup-progress {
  margin-bottom: 18px;
  border-color: #e2e0f6;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 5px 15px rgba(16, 24, 40, .025);
}
.cs-setup-progress-step { min-height: 57px; padding: 10px 11px; }
.cs-setup-progress-step.active { background: linear-gradient(135deg, #faf9ff, #f5f3ff); box-shadow: inset 0 -3px 0 var(--vp-primary, #5b45f5); }
.cs-setup-panel-head { margin-bottom: 14px; }
.cs-setup-panel-head h5 { font-size: 14px; }
.cs-confirm-band,
.cs-fact-discovery { border-radius: 10px; }

@media (max-width: 640px) {
  .cs-step-head { min-height: 0; padding: 16px 15px 14px; }
  .cs-step-head h3 { font-size: 16px; }
  .cs-status { display: inline-flex; margin-top: 9px; }
  .cs-project-context { grid-template-columns: 29px minmax(0, 1fr); padding: 9px 15px; }
  .cs-project-context-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
  .cs-section { padding: 17px 15px; }
}
