:root {
  --rose-wash: #f4e7e9;
  --rose-line: #d5a8b2;
  --rose-ink: #7b4050;
}
.intake-header .text-link, .intake-contact a { color: var(--rose-ink); }
.owner-intake { grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr); gap: clamp(25px, 5vw, 74px); }
.owner-intake .intake-notice { background: var(--rose-wash); border-left: 3px solid var(--rose-line); }
.intake-contact { margin-top: 24px; overflow-wrap: anywhere; }
.intake-contact a, .case-fields a, .detail-list a { text-decoration: underline; text-underline-offset: 3px; }
.form-step { border-top: 1px solid var(--line); margin-top: 25px; padding-top: 23px; }
.intake-card fieldset > .form-step:first-child { border-top: 0; margin-top: 0; padding-top: 0; }
.form-step .mini-label { color: var(--rose-ink); }
.intake-card h2, .form-step h2 { font-size: clamp(27px, 3vw, 36px); margin: 6px 0 14px; }
.form-step h3 { margin: 0 0 12px; font: 23px/1.2 var(--serif); }
.form-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
.intake-card textarea {
  width: 100%; display: block; padding: 10px 11px; resize: vertical; margin-top: 4px;
  border: 1px solid #9ba88c; border-radius: 0; background: white; color: var(--ink);
  font: 16px/1.4 var(--sans);
}
.form-columns :is(input, select), .form-step input { margin-top: 4px; }
.field-note { font-size: 12px; color: #515f50; font-weight: 400; }
#file-help { margin: 6px 0 0; }
#intake-status { overflow-wrap: anywhere; }
.review-login { max-width: 610px; padding-block: clamp(34px, 9vw, 115px); }
.review-login .intake-card { margin-top: 22px; }
.review-login h1, .dashboard h1 { font-size: clamp(43px, 6vw, 74px); line-height: 1.05; margin: 15px 0 10px; }
.review-login h1 em, .dashboard h1 em { color: var(--rose-ink); }
.dashboard { padding-block: clamp(34px, 5vw, 80px); }
.dashboard-heading { margin-bottom: 28px; }
.dashboard-heading p { color: var(--muted); }
.dashboard-grid { display: grid; grid-template-columns: minmax(245px, .38fr) minmax(0, 1fr); gap: clamp(16px, 3vw, 35px); align-items: start; }
.queue, .case-card { min-width: 0; }
.queue-list, .detail-list { padding: 0; margin: 14px 0; list-style: none; }
.queue-list button { text-align: left; width: 100%; border-top: 1px solid var(--line); padding: 12px 8px; overflow-wrap: anywhere; }
.queue-list button[aria-current="true"], .queue-list button:hover { background: var(--rose-wash); }
.queue-list small { display: block; color: var(--muted); margin-top: 3px; }
.case-fields { display: grid; grid-template-columns: minmax(115px, .26fr) 1fr; gap: 8px 16px; }
.case-fields dt { font-weight: 600; }
.case-fields dd, .outline-panel li, .detail-list li { margin: 0; overflow-wrap: anywhere; white-space: pre-wrap; }
.detail-list li { border-top: 1px solid var(--line); padding: 8px 0; }
.history { margin-top: 10px; }
.question-row, .check-row { background: #f0f2e8; padding: 10px 12px; margin-bottom: 10px; }
.check-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(102px, .4fr) auto; gap: 10px; align-items: end; }
.question-row label, .check-row label { margin-top: 3px; }
.question-row .remove { margin-top: 8px; }
.remove { color: var(--rose-ink); text-decoration: underline; min-height: 39px; padding-inline: 4px; }
.action-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.secondary { border: 1px solid #a8b29d; padding: 9px 12px; background: #fbfcf5; text-align: left; }
.secondary:hover { background: var(--rose-wash); border-color: var(--rose-line); }
.review-actions { margin-top: 20px; }
.outline-panel { border-top: 2px solid var(--rose-line); }
.outline-panel h4 { margin: 16px 0 4px; }
.outline-panel ul { padding-left: 20px; }
.outline-panel li { margin: 6px 0; }
@media (max-width: 850px) {
  .owner-intake, .dashboard-grid { grid-template-columns: 1fr; }
}
@media (max-width: 540px) {
  .form-columns, .case-fields { grid-template-columns: 1fr; }
  .case-fields { row-gap: 4px; }
  .case-fields dd { margin-bottom: 9px; }
  .check-row { grid-template-columns: 1fr auto; }
  .check-row label:first-child { grid-column: 1 / -1; }
}

.queue-counts { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:22px 0; }
.count-card { border:1px solid var(--rose-line); background:var(--rose-wash); padding:14px; font-size:14px; }
.review-progress { background:var(--rose-wash); padding:12px 14px; border-left:3px solid var(--rose-line); }
#save-state { color:var(--rose-ink); font-size:13px; }
#search-form { margin-bottom:14px; }
#search-form button { margin-top:8px; }
#outline-version { max-width:100%; }
@media(max-width:700px) { .queue-counts { grid-template-columns:repeat(2,minmax(0,1fr)); } }
