:root {
  --admissions-gap: var(--opening-meta-gap, 12px);
  --admissions-section-gap: var(--detail-gap, 24px);
  --admissions-touch-target: var(--touch-target, 44px);
  --admissions-control-pad-block: var(--opening-action-pad-block, 12px);
  --admissions-heading-font: var(--serif, "Gowun Batang", serif);
  --admissions-leading: var(--body-leading, 1.8);
  --admissions-emphasis-weight: var(--opening-kicker-weight, 600);
  --admissions-meta-size: var(--opening-meta-size, 14px);
  --admissions-copy: var(--ink-soft, var(--muted, #667085));
  --admissions-focus-width: var(--focus-ring-width, 2px);
  --admissions-focus-offset: var(--focus-ring-offset, 3px);
  --admissions-actions-gap: var(--opening-actions-gap, 16px);
  --admissions-rule-width: 3px;
  --admissions-error: var(--error, #a33d2d);
  --admissions-error-surface: #fff2ef;
  --admissions-heading-size: clamp(22px, 2.5vw, 30px);
  --admissions-control-size: 20px;
  --admissions-checkbox-offset: 3px;
  --admissions-form-column-min: 240px;
  --admissions-preview-max: var(--copy-max, 640px);
}
[data-admission-tabs] {
  display: flex;
  gap: var(--admissions-gap);
  margin: 0 0 var(--admissions-section-gap);
  border-block-end: 1px solid var(--line);
}
[data-admission-tabs] button {
  flex: 1;
  min-block-size: var(--admissions-touch-target);
  padding-block: var(--admissions-control-pad-block);
  padding-inline: var(--admissions-gap);
  border: 0;
  border-block-end: var(--admissions-rule-width) solid transparent;
  background: transparent;
  color: var(--admissions-copy);
  font: inherit;
  font-weight: var(--admissions-emphasis-weight);
  cursor: pointer;
}
[data-admission-tabs] button[aria-selected="true"] {
  border-block-end-color: var(--bronze);
  color: var(--navy);
}
[data-admission-tabs] button:focus-visible {
  outline: var(--admissions-focus-width) solid var(--navy);
  outline-offset: var(--admissions-focus-offset);
}
[data-admission-pane][hidden] { display: none; }
.event-intake-heading { margin: 0 0 var(--admissions-gap); }
.event-intake-heading h3 {
  margin: 0 0 var(--admissions-gap);
  color: var(--navy);
  font: var(--admissions-emphasis-weight) var(--admissions-heading-size)/1.4 var(--admissions-heading-font);
}
.event-intake-heading p { margin: 0; color: var(--admissions-copy); line-height: var(--admissions-leading); }
.event-intake-status {
  margin: 0 0 var(--admissions-actions-gap);
  padding: var(--admissions-gap);
  border-inline-start: var(--admissions-rule-width) solid var(--bronze);
  background: var(--paper);
  color: var(--navy);
}
.event-intake-status.is-closed { line-height: var(--admissions-leading); word-break: keep-all; overflow-wrap: anywhere; }
.consult-form .field-note {
  margin: 0;
  color: var(--admissions-copy);
  font-size: var(--admissions-meta-size);
  line-height: 1.6;
  word-break: keep-all;
}
.consult-form .field-note strong { color: inherit; font-weight: var(--admissions-emphasis-weight); }
.consult-form .field-error {
  display: block;
  color: var(--admissions-error);
  font-size: var(--admissions-meta-size);
  font-weight: var(--admissions-emphasis-weight);
  line-height: var(--admissions-leading);
}
.consult-form .field.is-invalid label,
.consult-form .choice-field.is-invalid legend,
.consult-form .privacy-block.is-invalid .consent { color: var(--admissions-error); }
.consult-form .field.is-invalid input,
.consult-form .field.is-invalid select,
.consult-form .field.is-invalid textarea {
  border-color: var(--admissions-error);
  box-shadow: 0 0 0 1px var(--admissions-error);
}
.consult-form .choice-field.is-invalid .choice-option {
  border-color: var(--admissions-error);
  background: var(--admissions-error-surface);
}
.consult-form .privacy-block.is-invalid .consent input {
  outline: 2px solid var(--admissions-error);
  outline-offset: 2px;
}
.consult-form .form-status.is-error { color: var(--admissions-error); }
.callout .consult-form .field-error,
.callout .consult-form .field.is-invalid label,
.callout .consult-form .choice-field.is-invalid legend,
.callout .consult-form .privacy-block.is-invalid .consent { color: var(--error-on-dark, #ffd1c7); }
.callout .consult-form .field.is-invalid input,
.callout .consult-form .field.is-invalid select,
.callout .consult-form .field.is-invalid textarea,
.callout .consult-form .privacy-block.is-invalid .consent input {
  border-color: var(--error-on-dark, #ffd1c7);
  box-shadow: 0 0 0 1px var(--error-on-dark, #ffd1c7);
}
.callout .consult-form .privacy-block.is-invalid h3,
.callout .consult-form .form-status.is-error { color: var(--error-on-dark, #ffd1c7); }
.callout .consult-form .choice-field.is-invalid .choice-option {
  border-color: var(--error-on-dark, #ffd1c7);
  background: rgb(255 255 255 / 8%);
}
.callout .choice-field legend,
.callout .privacy-block h3 { color: var(--ivory); }
.event-intake-heading p + p { margin-block-start: var(--admissions-gap); color: var(--bronze); font-size: var(--admissions-meta-size); }
.event-preview #event-preview-form .consult-form {
  display: grid;
  max-inline-size: var(--admissions-preview-max);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--admissions-form-column-min)), 1fr));
  gap: var(--admissions-gap);
}
.event-preview #event-preview-form .field { display: grid; gap: var(--admissions-gap); min-width: 0; }
.event-preview #event-preview-form .field.full,
.event-preview #event-preview-form .choice-field,
.event-preview #event-preview-form .privacy-block,
.event-preview #event-preview-form .form-actions,
.event-preview #event-preview-form .form-status { grid-column: 1 / -1; }
.event-preview #event-preview-form .choice-field { min-width: 0; margin: 0; padding: 0; border: 0; }
.event-preview #event-preview-form .choice-field legend { margin-block-end: var(--admissions-gap); color: var(--navy); font-weight: var(--admissions-emphasis-weight); }
.event-preview #event-preview-form .choice-options { display: grid; gap: var(--admissions-gap); }
.event-preview #event-preview-form .choice-option {
  display: flex;
  min-block-size: var(--admissions-touch-target);
  align-items: center;
  gap: var(--admissions-gap);
  padding: var(--admissions-gap);
  border: 1px solid var(--line);
  cursor: pointer;
}
.event-preview #event-preview-form .choice-option input {
  width: var(--admissions-control-size);
  min-height: var(--admissions-control-size);
  margin: 0;
  padding: 0;
  accent-color: var(--navy);
}
.event-preview #event-preview-form .privacy-block { display: grid; gap: var(--admissions-gap); }
.event-preview #event-preview-form .privacy-block .consent { display: flex; align-items: flex-start; gap: var(--admissions-gap); }
.event-preview #event-preview-form .privacy-block .consent input {
  flex: 0 0 var(--admissions-control-size);
  width: var(--admissions-control-size);
  min-height: var(--admissions-control-size);
  margin-block-start: var(--admissions-checkbox-offset);
}
.event-preview #event-preview-form .form-status { min-height: var(--admissions-touch-target); }
@media (max-width: 900px) {
  .v-form-wrap[data-admissions-root] #event-intake-pane .consult-form,
  .event-preview #event-preview-form .consult-form { grid-template-columns: 1fr; }
}

#event-intake-description, #event-preview-description { white-space: pre-line; font-size: var(--admissions-meta-size); line-height: var(--admissions-leading); }

.admission-confirm { box-sizing: border-box; width: min(520px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow: auto; margin: auto; padding: var(--admissions-section-gap); border: 1px solid var(--line); border-radius: 8px; background: var(--paper, #fffdf8); color: var(--navy); font: inherit; }
.admission-confirm::backdrop { background: rgb(20 35 46 / .55); }
.admission-confirm h2 { margin: 0 0 var(--admissions-gap); font: var(--admissions-emphasis-weight) var(--admissions-heading-size)/1.4 var(--admissions-heading-font); word-break: keep-all; }
.admission-confirm p { margin: 0; color: var(--admissions-copy); line-height: var(--admissions-leading); }
.admission-confirm dl { margin: var(--admissions-section-gap) 0; }
.admission-confirm dl > div { padding-block: var(--admissions-gap); border-bottom: 1px solid var(--line); }
.admission-confirm dt { color: var(--admissions-copy); font-size: var(--admissions-meta-size); }
.admission-confirm dd { margin: 4px 0 0; font-weight: var(--admissions-emphasis-weight); overflow-wrap: anywhere; }
.admission-confirm__actions { display: flex; gap: var(--admissions-gap); margin-top: var(--admissions-section-gap); }
.admission-confirm__actions button { flex: 1; min-height: var(--admissions-touch-target); padding: var(--admissions-control-pad-block) var(--admissions-gap); border: 1px solid var(--navy); font: inherit; font-weight: var(--admissions-emphasis-weight); cursor: pointer; }
.admission-confirm__edit { background: transparent; color: var(--navy); }
.admission-confirm__accept { background: var(--navy); color: var(--paper, #fffdf8); }
.admission-confirm__actions button:focus-visible { outline: var(--admissions-focus-width) solid var(--bronze); outline-offset: var(--admissions-focus-offset); }
