/* Shared form requirements and disclosures; public pages retain their palette. */
.app-field-heading { display:flex; align-items:baseline; justify-content:flex-start; gap:var(--sp-1, 4px); width:100%; }
.app-field-name { min-width:0; overflow-wrap:anywhere; }
.app-required { color:var(--color-brand-text, #0369a1); font-size:12px; font-weight:600; white-space:nowrap; flex-shrink:0; margin-inline-start:0; }
.app-required[hidden] { display:none; }
details.app-disclosure { border:0; padding:0; margin-top:var(--sp-3, 12px); min-width:0; }
details.app-disclosure > summary { display:flex; align-items:center; gap:var(--sp-3, 12px); list-style:none; min-height:44px; padding:var(--sp-2, 8px) 0; cursor:pointer; color:var(--color-text); font-weight:var(--fw-semi, 600); }
details.app-disclosure > summary::-webkit-details-marker { display:none; }
details.app-disclosure > summary::marker { content:""; }
details.app-disclosure > summary:focus-visible { outline:2px solid var(--color-brand); outline-offset:3px; border-radius:var(--r-sm); }
details.app-disclosure[open] > summary { margin-bottom:var(--sp-3, 12px); }
.app-chevron { display:block; width:8px; height:8px; border-right:1.75px solid currentColor; border-bottom:1.75px solid currentColor; transform:rotate(45deg); flex:0 0 8px; margin:0 6px 4px auto; color:var(--color-text-muted); }
.app-disclosure[open] > summary > .app-chevron { transform:rotate(225deg); margin-bottom:0; }
.app-disclosure-status { margin-left:auto; font-size:var(--text-sm); color:var(--color-text-muted); font-weight:400; }
.app-disclosure-status + .app-chevron { margin-left:0; }
.wp-exercise-edit > summary [data-prescription-summary] { font-weight:400; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.app-form-rows .wp-fields { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--sp-4); }
.app-form-rows label.app-inline-field, .app-form-rows .field:has(> label.app-field-label) { display:grid; grid-template-columns:minmax(120px, .65fr) minmax(0, 1fr); gap:var(--sp-1) var(--sp-5); align-items:center; margin-bottom:var(--sp-3); }
.app-form-rows label.app-inline-field > .app-field-heading, .app-form-rows .field > label.app-field-label { display:flex; grid-column:1; grid-row:1; min-width:0; }
.app-form-rows label.app-inline-field > :is(input,select,textarea), .app-form-rows .field > :is(input,select,textarea) { grid-column:2; grid-row:1; width:100%; box-sizing:border-box; min-width:0; margin:0; }
.app-form-rows label.app-inline-field > small, .app-form-rows .field > .field-error { grid-column:2; }
.app-form-rows label.app-inline-field[hidden] { display:none; }
@media(max-width:600px) {
 .app-form-rows label.app-inline-field, .app-form-rows .field:has(> label.app-field-label) { grid-template-columns:minmax(0,1fr); gap:var(--sp-2); }
 .app-form-rows label.app-inline-field > .app-field-heading, .app-form-rows .field > label.app-field-label, .app-form-rows .field > label .app-field-heading { display:flex; grid-column:1; grid-row:auto; }
 .app-form-rows label.app-inline-field > :is(input,select,textarea,small), .app-form-rows .field > :is(input,select,textarea,.field-error) { grid-column:1; grid-row:auto; }
}
