/* 상담 화면에만 적용하는 V8 수정안. 공용 V8 스타일은 보존합니다. */
:root { --form-error: #b42318; --form-error-wash: #fff5f4; }
.status-select { position: relative; }
.status-trigger {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  width: 100%; min-height: 54px; padding: 12px 16px;
  border: 1px solid #a4a4a4; border-radius: 4px; background: #fff;
  font-size: 16px; line-height: 1.7; text-align: left;
}
.status-trigger:hover { border-color: var(--ink); }
.status-trigger:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
.status-trigger[aria-expanded=true] { border-color: var(--ink); }
.status-trigger:active { transform: none; }
.select-chevron {
  display: block; width: 20px; height: 20px; flex: none;
  fill: none; stroke: currentColor; stroke-width: 1.5;
  stroke-linecap: round; stroke-linejoin: round;
}
.status-trigger[aria-expanded=true] .select-chevron { transform: rotate(180deg); }
.status-options {
  position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 5;
  padding: 6px; margin: 0; list-style: none;
  border: 1px solid #b8b8b8; border-radius: 6px; background: #fff;
  box-shadow: 0 6px 20px rgb(0 0 0 / 9%);
  overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin;
}
.opens-up .status-options { top: auto; bottom: calc(100% + 6px); }
.status-options [role=option] {
  position: relative; display: flex; align-items: center; min-height: 46px;
  padding: 9px 42px 9px 12px; border-radius: 3px;
  font-size: 16px; line-height: 1.6; cursor: pointer;
}
.status-options [role=option]:hover, .status-options .is-active { background: var(--wash); }
.status-options [aria-selected=true] { font-weight: 600; }
.status-options [aria-selected=true]::after {
  content: ''; position: absolute; right: 17px; top: 16px;
  width: 6px; height: 11px; border-right: 1.5px solid; border-bottom: 1.5px solid;
  transform: rotate(45deg);
}
.field input[aria-invalid=true], .audience-options:has([aria-invalid=true])>label {
  border: 2px solid var(--form-error); background: var(--form-error-wash);
}
.field input[aria-invalid=true]:focus { outline-color: var(--form-error); }
.field-error, .consult-privacy>.field-error {
  color: var(--form-error); border-left: 0; padding-left: 0; font-size: 15px; font-weight: 550;
}
.consent-choice {
  display: flex; align-items: flex-start; gap: 12px;
  min-height: 44px; margin-top: 20px; padding: 10px 0;
  line-height: 1.75; cursor: pointer;
}
.consent-choice input { width: 18px; height: 18px; margin: 5px 0 0; flex: none; accent-color: var(--ink); }
.consent-choice>span { word-break: keep-all; overflow-wrap: anywhere; }
.consent-choice:has([aria-invalid=true]) { border: 1px solid var(--form-error); background: var(--form-error-wash); padding: 12px; }
.consent-choice input[aria-invalid=true] { outline: 2px solid var(--form-error); outline-offset: 2px; }
.consult-privacy .privacy-detail { line-height: 1.8; }
@media (prefers-reduced-motion: reduce) { .status-trigger, .select-chevron { transition: none; } }

/* Submission states use the approved form error colour. */
.submit-status{margin:24px 0;padding:16px 18px;background:#f5f5f5;line-height:1.65;word-break:keep-all;overflow-wrap:anywhere;scroll-margin-top:120px}
.submit-status.is-error{color:#b42318;border-left:3px solid #b42318;background:#fff5f4}
.form-actions button:disabled,.edit-link:disabled{opacity:.55;cursor:default}
