/* Setup: one purpose per section, clear optional depth and an always visible next action. */
.setup-v18 .intake {max-width:1100px;gap:clamp(32px,7vw,100px);padding-top:42px;align-items:start}
.setup-v18 .intake>section {min-width:0;max-width:650px}
.setup-v18 .intake h1 {font-size:clamp(27px,3.4vw,40px);line-height:1.12;letter-spacing:-.035em;margin:8px 0 14px}
.setup-v18 .setup-intro {font-size:16px;color:var(--muted,#aaa);margin:0 0 30px;line-height:1.6}
.setup-v18 .intake-steps {gap:12px}
.setup-v18 .intake-steps li {padding:0!important;display:block}
.setup-v18 .intake-steps button {background:none;border:0;color:inherit;font:inherit;display:flex;align-items:center;gap:12px;padding:12px 0;min-height:48px;text-align:left;width:100%;cursor:pointer}
.setup-v18 .intake-steps button:disabled {cursor:default;opacity:.6}
.setup-v18 .intake-steps li.current button {color:var(--gold,#ecca7c)}
.setup-v18 .intake-steps button:focus-visible,.schedule-preset:focus-visible {outline:2px solid #ecca7c;outline-offset:4px}
.setup-v18 .field {margin:0 0 18px}
.setup-v18 .field label {font-size:15px;line-height:1.4}
.setup-v18 .two-grid {gap:16px}
.setup-v18 .two-grid .field {min-width:0}
.setup-v18 .field-help {font-size:14px;line-height:1.55;margin:0 0 20px}
.setup-v18 input,.setup-v18 select,.setup-v18 textarea {font-size:16px;min-height:48px}
.setup-v18 [hidden] {display:none!important}
.setup-v18 .setup-extra {margin:16px 0;border:1px solid #343632;border-radius:12px;padding:0 18px;background:transparent}
.setup-v18 .setup-extra>summary {min-height:54px;padding:16px 0;font-size:14px;line-height:1.5;font-weight:500;color:#d5d6cf}
.setup-v18 .setup-extra[open]>summary {margin-bottom:12px}
.setup-v18 .setup-baseline {border-top:1px solid #343632;padding-top:22px;margin-top:24px}
.setup-v18 .setup-baseline h2 {font-size:18px;letter-spacing:-.02em;margin:0 0 10px}
.setup-v18 fieldset {margin-bottom:24px}
.setup-v18 legend {font-size:16px;font-weight:600;margin-bottom:12px}
.setup-v18 .day-picker {gap:6px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.setup-v18 .day-picker label span {padding:12px 0;font-size:14px;display:block;text-align:center}
.setup-v18 .equipment-picker {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.setup-v18 .equipment-picker .check-row {margin:0;min-height:50px;font-size:14px;padding:9px;border:1px solid #343632;border-radius:9px;align-items:center}
.setup-v18 .equipment-picker input {min-height:0;flex-shrink:0}
.schedule-presets {display:flex;gap:8px;margin-bottom:12px}
.schedule-preset {border:1px solid #666856;color:#f2f1e9;background:#21221d;border-radius:24px;font:inherit;font-size:14px;padding:10px 18px;min-height:44px;cursor:pointer}
.setup-fit {padding:18px;border:1px solid #555648;background:#23251e;border-radius:12px;line-height:1.55;font-size:14px;margin:24px 0}
.setup-fit p {margin:8px 0 0}.setup-fit.fits {border-color:#6d8164}.setup-fit.needs-change {border-color:#b1905a}
.fit-actions {display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.setup-v18 .setup-actions {position:sticky;bottom:0;background:#111411f5;padding:18px 0;margin:20px 0 0;z-index:2;border-top:1px solid #343632;display:flex;gap:12px}
.setup-v18 .setup-actions>[type=submit] {flex:1;min-height:52px;font-size:16px}
.setup-v18 [aria-invalid=true] {border-color:#ffb49d}
.setup-v18 #setup-issues {padding:18px;border:1px solid #b1905a;margin-top:20px;border-radius:12px}
.setup-v18 #setup-issues .text-button {font-size:14px;text-align:left;line-height:1.5;padding:7px 0;white-space:normal}
@media(max-width:760px){
 .setup-v18 .intake {display:block;padding:16px 20px 24px}
 .setup-v18>header {padding:16px 20px}
 .setup-v18 .intake>aside>h2,.setup-v18 .intake>aside>.eyebrow {display:none}
 .setup-v18 .intake-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
 .setup-v18 .intake-steps button {flex-direction:column;gap:8px;font-size:12px;text-align:center;line-height:1.3;padding:8px 0}
 .setup-v18 .intake-steps li span {width:28px;height:28px;display:grid;place-items:center;margin:0}
 .setup-v18 .intake-save {text-align:center;font-size:12px;margin:10px 0 24px}
 .setup-v18 .intake>section {padding:0}
 .setup-v18 .setup-intro {margin-bottom:24px}
 .setup-v18 .two-grid {grid-template-columns:1fr}
 .setup-v18 .setup-actions {bottom:0;padding-bottom:max(16px,env(safe-area-inset-bottom))}
 .setup-v18 .setup-actions>.secondary {min-width:72px;padding:12px}
}
@media(prefers-reduced-motion:reduce){.setup-v18 *{scroll-behavior:auto!important}}
.plan-preview .preview-reason {margin-bottom:24px}
.plan-preview .review-note {margin:20px 0}
.preview-confirm {position:sticky;bottom:0;background:#111411f5;border-top:1px solid #343632;padding:16px 0 max(16px,env(safe-area-inset-bottom));z-index:3}
.preview-confirm>.button {width:100%}
.preview-confirm>.field-help {margin:10px 0 0;font-size:13px;line-height:1.5}
@media(max-width:760px){
 .setup-v18 .intake>aside {margin:0 0 18px;padding:0}
 .setup-v18 .intake-save {margin:6px 0 12px}
 .setup-v18[data-setup-step="0"] form>.two-grid:first-child {grid-template-columns:minmax(0,1fr) 80px;gap:12px}
 .setup-v18[data-setup-step="0"] #division {padding-left:10px;padding-right:20px;font-size:14px}
}
/* V19: a visible starting point, required answers and corrections beside the question. */
.setup-v19 {background:radial-gradient(ellipse at 9% 35%,#29302366,transparent 44%),#111510;min-height:100vh}
.setup-v19>header {max-width:1250px;margin:auto;border-bottom:1px solid #30382c}
.setup-v19 .intake {max-width:1180px;grid-template-columns:310px minmax(0,660px);gap:64px;padding:48px 32px 64px;justify-content:center}
.setup-v19 .intake>aside {top:32px}
.setup-v19 .intake>aside h2 {font-size:clamp(32px,3vw,43px);letter-spacing:-.045em;line-height:1.1;margin:18px 0;color:#f2f3ec}
.setup-v19 .setup-side-copy {font-size:16px;line-height:1.6;color:#aab5a1;max-width:255px;margin-bottom:32px}
.setup-v19 .intake>section {background:#1b211a;border:1px solid #36412f;border-radius:24px;padding:32px 36px 20px;box-shadow:0 20px 80px #0002}
.setup-v19 .setup-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:17px}
.setup-v19 .setup-heading>.eyebrow {margin:0;color:#ecca7c;font-size:12px}
.setup-progress {width:84px;height:4px;display:block;background:#3a4335;border-radius:4px;overflow:hidden}
.setup-progress i {height:100%;display:block;background:#ecca7c;border-radius:4px}
.setup-v19 .intake h1 {font-size:clamp(28px,3vw,36px);margin:0 0 12px;line-height:1.15;color:#f4f5ee}
.setup-v19 .setup-intro {color:#b9c2b2;font-size:15px;line-height:1.65;margin-bottom:22px}
.required-key {display:flex;align-items:center;gap:5px;color:#e8eee3;font-size:12px;padding:12px 0 18px;border-bottom:1px solid #36412f;margin:0 0 24px}
.required-key>span:last-child {margin-left:auto;color:#aab5a1;font-size:12px}
.required-mark {color:#ecca7c;font-weight:700;vertical-align:baseline}
.setup-v19 .field {margin-bottom:21px}
.setup-v19 .field label {color:#e7ecdf;font-size:14px;font-weight:550;margin-bottom:9px;display:block}
.setup-v19 input:not([type=checkbox]),.setup-v19 select,.setup-v19 textarea {border:1px solid #55604b;background:#11170f;border-radius:10px;color:#f2f4eb;min-height:52px;width:100%;font-size:16px;padding:13px 14px;box-sizing:border-box}
.setup-v19 input::placeholder,.setup-v19 textarea::placeholder {color:#829077}
.setup-v19 input:not([type=checkbox]):focus,.setup-v19 select:focus,.setup-v19 textarea:focus {outline:2px solid #ecca7c;outline-offset:2px;border-color:#ecca7c}
.setup-v19 .field-help {color:#aebba4;font-size:13px;line-height:1.6}
.timeline-guide {padding:14px 16px;background:#283124;border-left:2px solid #879f71;border-radius:0 10px 10px 0;margin:0 0 23px;font-size:13px;line-height:1.6;color:#c4d0ba}
.timeline-guide p {margin:0}.timeline-guide .text-button {font-size:13px;margin-top:10px;min-height:40px}
.setup-v19 .setup-extra {border-color:#43503b;background:#1a2018;border-radius:12px;margin:22px 0;padding:0 16px}
.setup-v19 .setup-extra>summary {color:#d9e3ce;font-size:14px;font-weight:600;padding:17px 0}
.setup-v19 .setup-baseline {padding-top:0}
.setup-v19 .setup-extra[open] {padding-bottom:4px}
.setup-v19 .setup-fit {display:flex;gap:13px;border:1px solid #526047;background:#25321f;padding:18px;margin:24px 0;border-radius:14px;color:#ccd8c0;font-size:13px}
.setup-v19 .setup-fit strong {color:#eff5e7;font-size:15px;line-height:1.4;display:block}
.setup-v19 .setup-fit p {font-size:13px;line-height:1.65;color:inherit}
.setup-v19 .setup-fit.fits {border-color:#6d8a55;background:#243b20}
.setup-v19 .setup-fit.needs-change {border-color:#a59163;background:#352f1f;color:#dfd8c4}
.fit-symbol {flex:0 0 27px;height:27px;border-radius:50%;background:#ffffff10;color:#ecca7c;display:grid;place-items:center;font-size:15px;font-weight:700}
.setup-v19 .setup-fit ul {padding-left:19px;margin:13px 0;line-height:1.7}
.setup-v19 .fit-actions {gap:9px;align-items:flex-start}
.setup-v19 .fit-actions>.button {border:1px solid #c7b075;background:#0001;color:#f0e4c0;border-radius:8px;padding:10px 13px;min-height:44px;white-space:normal;text-align:left;font-size:13px;line-height:1.35}
.setup-v19 .fit-actions>.field-help {width:100%;margin:0;font-size:12px}
.setup-v19 .fit-guidance {font-size:12px!important;margin-top:15px}
.setup-v19 .inline-error {font-size:13px;color:#ffbda9;line-height:1.5;margin:9px 0 0}
.setup-v19 [aria-invalid=true] {border-color:#ffbda9!important}
.setup-v19 #setup-issues {background:#392820;border-color:#a57862;color:#ffdbc7;font-size:13px;padding:16px}
.setup-v19 legend {font-size:15px;color:#e5eddc;margin-bottom:9px}
.setup-v19 .schedule-presets {gap:9px}
.setup-v19 .schedule-preset {flex:1;font-size:14px;border-color:#667559;border-radius:10px;background:#151b11;min-height:46px;color:#dbe8ce}
.setup-v19 .schedule-preset[aria-pressed=true] {background:#d9bf7f;color:#161c13;border-color:#d9bf7f}
.setup-v19 .day-picker label span {border-radius:9px;min-width:0;font-size:13px;border-color:#526347;background:#151b11;color:#cbd8be}
.setup-v19 .day-picker input:checked+span {background:#d9bf7f;color:#161c13;border-color:#d9bf7f}
.setup-v19 .equipment-picker .check-row {background:#141b10;border-color:#48563d;border-radius:10px;font-size:13px;padding:12px;min-height:54px;line-height:1.4;color:#cbd8be}
.setup-v19 .equipment-picker label:has(input:checked) {background:#2c3b23;border-color:#8da777;color:#f1f5e9}
.setup-v19 input[type=checkbox] {accent-color:#d9bf7f;width:18px;height:18px;min-height:0}
.setup-v19 .setup-actions {background:#1b211af5;border-color:#43503b;bottom:0;padding:16px 0 12px;margin-top:27px;backdrop-filter:blur(8px)}
.setup-v19 .setup-actions>[type=submit] {border-radius:10px;color:#1c2017;background:#ecca7c;border-color:#ecca7c;font-weight:650;min-height:54px}
.setup-v19 .setup-actions>.secondary {border-radius:10px;color:#d2ddc6;border-color:#667559;min-width:76px;background:#0001}
.setup-action-note {text-align:center;color:#9eae91;font-size:12px;line-height:1.5;margin:0 0 5px}
.setup-side-note {display:flex;align-items:center;gap:9px;margin-top:27px;padding-top:20px;border-top:1px solid #3c4634}
.setup-v19 .setup-side-note .intake-save {font-size:12px;margin:0;color:#b5c3a7}
.save-dot {width:6px;height:6px;border-radius:50%;background:#a7b991;flex-shrink:0}
.setup-side-footer {font-size:13px;line-height:1.7;color:#829377;margin-top:18px}
.setup-v19 .intake-steps li {max-width:none;border:0!important}
.setup-v19 .intake-steps li button {color:#92a084;padding:12px 0;gap:13px;font-size:14px}
.setup-v19 .intake-steps li button>span:first-child {width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#25301e;border:1px solid #47553a;color:#a7b892;flex-shrink:0}
.setup-v19 .intake-steps li button>.step-name {width:auto;height:auto;background:none;border:0;border-radius:0;display:block;text-align:left}
.setup-v19 .intake-steps li.current button {color:#f0e4c5}.setup-v19 .intake-steps li.current button>span:first-child {background:#ecca7c;border-color:#ecca7c;color:#1b2116}
.setup-v19 .intake-steps li.passed button>span:first-child {border-color:#7f9868;color:#b9d09d}
@media(max-width:900px) and (min-width:761px){.setup-v19 .intake{grid-template-columns:220px minmax(0,1fr);gap:28px;padding:35px 24px}.setup-v19 .intake>section{padding:28px 25px}}
@media(max-width:760px){
 .setup-v19 .intake {padding:12px 16px 28px;display:block}
 .setup-v19>header {padding:14px 20px;min-height:68px;height:auto}
 .setup-v19 .intake>aside {padding:0;margin:0 0 15px}
 .setup-v19 .setup-side-copy,.setup-v19 .setup-side-footer {display:none}
 .setup-v19 .intake-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .setup-v19 .intake-steps li button {font-size:11px;flex-direction:column;gap:6px;padding:7px 0;line-height:1.4}
 .setup-v19 .intake-steps li button>.step-name {text-align:center;font-size:11px}
 .setup-v19 .setup-side-note {justify-content:center;border:0;margin:5px 0 0;padding:0;gap:7px}
 .setup-v19 .setup-side-note .intake-save {font-size:11px;text-align:center}
 .setup-v19 .intake>section {padding:24px 18px 15px;border-radius:18px;max-width:none}
 .setup-v19 .intake h1 {font-size:28px;letter-spacing:-.045em}
 .setup-v19 .setup-intro {font-size:14px;margin-bottom:18px}
 .setup-v19 .setup-heading {margin-bottom:15px}
 .setup-v19 .required-key {font-size:11px;gap:4px;margin-bottom:23px;padding-bottom:15px}
 .setup-v19 .required-key>span:last-child {font-size:11px}
 .setup-v19 .two-grid {gap:0}
 .setup-v19[data-setup-step="0"] form>.two-grid:first-child {grid-template-columns:1fr}
 .setup-v19[data-setup-step="0"] #division {font-size:16px;padding:13px 14px}
 .setup-v19 .field label {font-size:14px}
 .setup-v19 .equipment-picker {grid-template-columns:1fr;gap:8px}
 .setup-v19 .equipment-picker .check-row {min-height:49px;font-size:14px}
 .setup-v19 .day-picker {gap:4px}.setup-v19 .day-picker label span {font-size:11px;padding:10px 0;min-height:42px}
 .setup-v19 .setup-extra {padding-left:14px;padding-right:14px}
 .setup-v19 .setup-actions {padding-bottom:max(12px,env(safe-area-inset-bottom));gap:9px}
 .setup-v19 .setup-actions>[type=submit] {font-size:14px;min-height:52px;padding:13px 10px}
 .setup-v19 .setup-actions>.secondary {min-width:62px;padding:12px 9px;font-size:13px}
 .setup-v19 .setup-fit {padding:16px 13px;gap:10px}.setup-v19 .fit-actions {flex-direction:column}
 .setup-v19 .fit-actions>.button {width:100%;text-align:center}
}
@media(max-width:350px){.setup-v19 .intake{padding-left:10px;padding-right:10px}.setup-v19 .intake>section{padding-left:15px;padding-right:15px}.setup-v19 .intake h1{font-size:26px}.setup-v19 .required-key{flex-wrap:wrap}.setup-v19 .required-key>span:last-child{margin-left:7px}}

.setup-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
