/* Shared parent form geometry. Native fields and enhanced choices use the same edges. */
body.parent-form-page { --paper:#f5f6f4; --ink:#24352f; --line:#d6ded9; --muted:#59685f; --teal:#246c58; --navy:#243c33; --gold:#e7eee9; --coral:#246c58; font:16px/1.55 'Segoe UI',Arial,sans-serif; background:var(--paper); color:var(--ink); }
body.parent-form-page > header { background:#fff; color:#243c33; border-bottom:1px solid #d6ded9; padding:18px max(20px,calc((100vw - 760px)/2)); min-height:76px; box-shadow:none; }
body.parent-form-page > header > a span { background:#e7eee9; color:#246c58; border-radius:10px; }
body.parent-form-page > header :is(.languages,.language-picker) button { color:#43584c; background:white; border:1px solid #ccd6cf; border-radius:7px; font-weight:600; min-height:42px; }
body.parent-form-page > header :is(.languages,.language-picker) button.active { color:white; background:#246c58; border-color:#246c58; }
body.parent-form-page main { width:min(760px,calc(100% - 40px)); margin:40px auto 80px; }
body.parent-form-page .intro { margin:0 0 28px; padding:0; background:none; border:0; }
body.parent-form-page .intro h1 { font-family:inherit; font-size:clamp(28px,4vw,38px); letter-spacing:-.025em; line-height:1.2; margin:10px 0 12px; }
body.parent-form-page .intro p { color:var(--muted); font-size:16px; line-height:1.6; }
body.parent-form-page :is(#feedback-form,#intake-form,#student-form) { --field-surface:#fff; --field-text:#24352f; --field-muted:#59685f; --field-line:#d6ded9; --choice-bg:#f7f9f7; --choice-checked:#e9f3ed; --choice-accent:#246c58; min-width:0; }
body.parent-form-page form :is(input,select,textarea,button) { font:inherit; box-shadow:none; border-radius:7px; }
body.parent-form-page form :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) { width:100%; min-width:0; min-height:46px; box-sizing:border-box; padding:10px 12px; border:1px solid var(--field-line); background:var(--field-surface); color:var(--field-text); margin:8px 0 0; }
body.parent-form-page form :is(.question,.quick-answer) { display:block; min-width:0; margin:0; border:0; padding:0; background:none; border-radius:0; }
body.parent-form-page form :is(.question legend,.quick-answer legend) { display:block; float:none; width:100%; padding:0; margin:0 0 12px; color:var(--field-text); font:600 16px/1.5 'Segoe UI',Arial,sans-serif; }
body.parent-form-page form :is(.question>span,.quick-answer legend>span) { display:flex; gap:8px; align-items:baseline; font-weight:600; }
body.parent-form-page form .quick-answer legend b { display:none; }
body.parent-form-page form :is(.choices,.quick-options) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; }
body.parent-form-page form :is(.choices,.quick-options) label { display:flex; align-items:center; gap:12px; min-height:48px; padding:12px 14px; margin:0; border:1px solid var(--field-line); border-radius:8px; color:var(--field-text); background:var(--choice-bg); font:400 16px/1.4 'Segoe UI',Arial,sans-serif; }
body.parent-form-page form :is(.choices,.quick-options) :is(input[type=checkbox],input[type=radio]) { flex:0 0 18px; width:18px; height:18px; margin:0; padding:0; accent-color:var(--choice-accent); }
body.parent-form-page form :is(.choices,.quick-options) label:has(input:checked) { background:var(--choice-checked); border-color:var(--choice-accent); color:var(--field-text); }
body.parent-form-page form :is(.quick-detail,#favorite-other-field,#reason-other-field) { display:block; margin:14px 0 0; }
body.parent-form-page form [hidden] { display:none!important; }
body.parent-form-page form :is(.hint,small) { color:var(--field-muted); font-size:14px; font-weight:400; }
body.parent-form-page form :is(input,select,textarea,button):focus-visible { outline:3px solid var(--choice-accent); outline-offset:3px; }
body.parent-form-page #feedback-form { display:grid; grid-template-columns:1fr; gap:26px; padding:30px; background:var(--field-surface); border:1px solid var(--field-line); border-radius:12px; }
body.parent-form-page #feedback-form .question>span { padding:0; margin:0; }
body.parent-form-page #feedback-form :is(#frequency-question,#absenceReasons-question,#paidInterest-question) .choices { grid-template-columns:1fr; }
body.parent-form-page form footer { margin:4px 0 0; padding:22px 0 0; border-top:1px solid var(--field-line); background:none; display:flex; gap:16px; align-items:center; }
body.parent-form-page form footer button { background:var(--choice-accent); color:#fff; border:0; min-height:48px; padding:12px 24px; font-weight:600; }
body.parent-form-page :is(#intake-form,#student-form)>section { padding:28px; border:1px solid var(--field-line); border-radius:12px; background:var(--field-surface); margin:0 0 20px; }
body.parent-form-page :is(#intake-form,#student-form) .grid { align-items:start; gap:24px; }
body.parent-form-page :is(#intake-form,#student-form) .grid>label { margin:0; display:block; }
body.parent-form-page :is(#intake-form,#student-form)>section>.quick-answer { margin:24px 0; }
body.parent-form-page.workspace-resource :is(#feedback-form,#intake-form,#student-form) { --field-surface:var(--studio-panel); --field-text:var(--studio-text); --field-muted:var(--studio-muted); --field-line:var(--studio-line); --choice-bg:var(--studio-raised); --choice-checked:var(--studio-mint-bg); --choice-accent:var(--studio-mint); }
body.parent-form-page.workspace-resource form footer button { background:var(--studio-mint); color:var(--studio-bg); }
@media(max-width:620px) { body.parent-form-page main { width:calc(100% - 32px); margin-top:28px; } body.parent-form-page #feedback-form,body.parent-form-page :is(#intake-form,#student-form)>section { padding:20px; } body.parent-form-page form :is(.choices,.quick-options) { grid-template-columns:1fr; } body.parent-form-page form footer { align-items:stretch; flex-direction:column; } body.parent-form-page form footer button { width:100%; } }
body.parent-form-page form :is(.question legend,.quick-answer legend) { margin-bottom:0; font-weight:600; }
body.parent-form-page form :is(.question legend,.quick-answer legend)+:is(.choices,.quick-options) { margin-top:12px; }
body.parent-form-page form .quick-answer>.quick-options { margin-top:12px; }
body.parent-form-page form .grid>label { font-weight:600; }
body.parent-form-page form :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { font-weight:400; }
body.parent-form-page :is(#intake-form,#student-form)>section { box-shadow:none; }
body.parent-form-page .intro :is(.eyebrow,[data-t=eyebrow]) { color:#246c58; }
