.step{display:none;padding:26px}.step.active{display:block}.step h2{font-size:29px;line-height:1.12;letter-spacing:-.035em;margin:0 0 7px;font-weight:600}.sub{color:var(--muted);line-height:1.5;margin:0 0 19px}.field{margin-top:16px}.field label,.choice-title{display:block;font-size:14px;font-weight:600;margin-bottom:7px}input,select{display:block;width:100%;min-height:52px;padding:12px 14px;border:1px solid var(--line);background:var(--surface);border-radius:2px;color:var(--ink)}input::placeholder{color:var(--muted);opacity:.8}.grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice input{position:absolute;opacity:0}.choice label{display:grid;place-items:center;min-height:52px;margin:0;border:1px solid var(--line);background:var(--surface);font-weight:600;cursor:pointer}.choice input:checked+label{background:var(--green-soft);border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.hint,.fine{font-size:12px;line-height:1.5;color:var(--muted);margin:7px 0 0}.area-note{display:none;margin-top:8px;padding:10px 12px;border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--ink);font-size:13px;line-height:1.4}.nav{display:flex;gap:10px;margin-top:23px}.btn{min-height:54px;padding:13px 18px;border:1px solid transparent;border-radius:2px;font-weight:600;font-size:16px}.btn-primary{flex:1;background:var(--accent);border-color:var(--accent);color:#201914}.btn-primary:hover{background:var(--accent-deep)}.btn-secondary{background:var(--surface-soft);border-color:var(--line);color:var(--ink)}.consent-field{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:13px;border:1px solid var(--line);font-size:13px;line-height:1.45;color:var(--muted)}.consent-field input{width:20px;min-height:20px;margin:1px 0 0;accent-color:var(--accent)}.bot{position:absolute!important;left:-10000px!important}.er-consent{position:static;inset:auto;z-index:auto}.er-consent__inner{max-width:780px;margin:auto;padding:19px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink)}.er-consent__inner h2{font-size:18px;margin:0}.er-consent__inner p{font-size:14px;line-height:1.45;color:var(--muted);margin:7px 0 15px}.er-consent__actions{display:flex;gap:9px;flex-wrap:wrap}.er-consent__link{display:inline-block;margin-top:12px;font-size:13px;color:var(--ink)}@media(max-width:850px){.step{padding:22px 18px}.step h2{font-size:25px}.grid{grid-template-columns:1fr}.btn{min-height:56px}.er-consent{inset:auto 10px 10px}.er-consent__inner{padding:17px}}

.er-consent__details{margin:0 0 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 0}
.er-consent__details summary{cursor:pointer;font-weight:600;font-size:13px}
.er-consent__details p{margin:8px 0 2px;font-size:13px}
.er-consent__actions .btn{flex:1 1 230px}

.er-consent__choice{flex:1 1 230px;background:var(--surface-soft);border-color:var(--line);color:var(--ink)}
.er-consent__choice--yes{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.er-consent__choice:hover{background:var(--surface)}

.service-time-note{margin:14px 0 -9px;color:var(--muted);font-size:12px;line-height:1.45}
.step{animation:step-in .2s ease both}.step.step-back{animation:step-back .2s ease both}.step.step-leave{animation:step-out .2s ease both}@keyframes step-in{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}@keyframes step-back{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}@keyframes step-out{to{opacity:0;transform:translateX(-16px)}}
.progress-wrap{display:flex;align-items:center;gap:12px}.progress-segments{display:flex;gap:4px}.progress-segments i{display:block;width:28px;height:3px;background:var(--line)}.progress-segments i.active{background:var(--accent-deep)}
@media(prefers-reduced-motion:reduce){.step,.step.step-leave{animation:none}}
.step-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;color:var(--muted);font-size:12px;line-height:1.3}.step-progress .progress-segments{display:flex;gap:5px}.step-progress i{display:block;width:34px;height:4px;border-radius:2px;background:var(--line)}.step-progress i.active{background:var(--accent-deep)}.form-summary{display:grid;gap:4px;margin-top:18px;padding:11px 13px;background:var(--surface-soft);border:1px solid var(--line);font-size:13px;color:var(--muted)}.form-summary strong{color:var(--ink);font-size:14px}.form-summary b{font-weight:650;color:var(--ink)}
.er-consent__inner{max-height:min(82vh,620px);overflow:auto}.er-consent__actions .btn{min-height:48px;color:var(--ink)}.er-consent__choice--yes{background:var(--surface-soft)}
@media(max-width:420px){.step-progress i{width:28px}.step-progress{margin-top:15px}.er-consent__inner{max-height:calc(100svh - 24px)}.er-consent__actions{flex-wrap:nowrap}.er-consent__actions .btn{flex:1 1 0;font-size:13px;padding-inline:7px}}

/* V4 Pass B final: calm assistant card and compact final step. */
.form-panel{border-radius:12px;background:#fffdfc;box-shadow:0 8px 24px rgba(38,51,46,.07)}
.step h2{font-size:29px;line-height:1.12}
input,select{border-radius:8px;min-height:52px}
input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.consent-field{padding:11px 12px;border-radius:8px;line-height:1.4}
.step-progress{grid-column:1/-1;margin-top:16px;padding-top:2px}
.step-progress .progress-segments{flex:1;gap:6px}.step-progress i{width:auto;flex:1;height:4px;background:#e3d9d0}.step-progress i.active{background:#b85c32}
.form-summary{background:#fffdfc;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;padding:12px 0;margin-top:16px;gap:0}.form-summary strong{margin-bottom:4px}.form-summary span{display:flex;justify-content:space-between;gap:14px;padding:4px 0;border-top:1px solid color-mix(in srgb,var(--line) 60%,transparent)}
@media(max-width:640px){.form-panel{width:calc(100% + 16px);margin-left:-8px;border-radius:12px}.step{padding:20px 19px}.panel-top{padding:16px 19px 13px}.form-footer{padding:13px 19px;border-radius:0 0 12px 12px}.step h2{font-size:28px}.field{margin-top:15px}.nav{margin-top:20px}.btn{min-height:52px}.step-progress{margin-top:14px}}
@media(min-width:1100px){.step h2{font-size:27px}.step-progress{max-width:570px}}

/* V4 Pass C: compact, equal-choice consent sheet and one final form notice. */
.er-consent{inset:auto 16px calc(16px + env(safe-area-inset-bottom));}
.er-consent__inner{width:min(100%,600px);max-height:min(46vh,620px);padding:16px 18px;overflow:auto;border-radius:12px;}
.er-consent__inner h2{line-height:1.2;margin:0 0 6px;}
.er-consent__inner p{line-height:1.4;}
.er-consent__details{margin:8px 0 10px;padding:7px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.er-consent__actions{display:flex;gap:10px;align-items:stretch;flex-wrap:nowrap;}
.er-consent__actions .btn{flex:1 1 0;min-width:0;min-height:50px;padding:10px 12px;line-height:1.2;}
.er-consent__link{display:inline-block;margin-top:9px;line-height:1.3;}
.form-footer{display:none;}
.form-safety{margin:16px 0 0;color:var(--muted);font-size:12px;line-height:1.45;}
.scope-fieldset{min-width:0;margin:0;padding:0;border:0}.scope-fieldset legend{padding:0;font-size:14px;font-weight:600}.scope-fieldset>.sub{margin:6px 0 12px;font-size:13px}.scope-options{display:grid;gap:9px}.scope-option{display:flex;align-items:center;gap:11px;min-height:54px;padding:11px 13px;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer;font-size:14px;line-height:1.35}.scope-option:has(input:checked){border-color:var(--green);background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green)}.scope-option input{flex:0 0 auto;width:20px;min-height:20px;margin:0;accent-color:var(--accent)}.scope-value-wrap{margin-top:12px}.scope-value-control{position:relative}.scope-value-control input{padding-right:52px}.scope-value-unit{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px;pointer-events:none}.single-item-field{margin-top:22px}.single-item-toggle{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid var(--line);border-radius:8px;font-size:14px;line-height:1.4;cursor:pointer}.single-item-toggle input{flex:0 0 auto;width:20px;min-height:20px;margin:1px 0 0;accent-color:var(--accent)}.single-item-warning{display:flex;gap:10px;align-items:flex-start;width:100%;margin:11px 0 0;padding:13px 14px;border:2px solid #b42318;border-radius:8px;background:#fff1f0;color:#57130f;font-size:14px;line-height:1.45}.single-item-warning-icon{flex:0 0 auto;font-size:20px;font-weight:700;line-height:1.1}.btn:disabled{cursor:not-allowed;opacity:.58}
.scope-value-wrap[hidden],.single-item-warning[hidden]{display:none!important}
@media(max-width:420px){
  .er-consent{inset:auto 8px calc(8px + env(safe-area-inset-bottom));}
  .er-consent__inner{width:100%;max-height:46vh;padding:15px 16px;border-radius:12px;}
  .er-consent__inner h2{font-size:17px;}
  .er-consent__inner p{font-size:13px;margin:5px 0 9px;}
  .er-consent__actions{gap:8px;}
  .er-consent__actions .btn{min-height:50px;padding:9px 7px;font-size:13px;}
}
@media(max-width:340px), (min-resolution:192dpi) and (max-width:420px){
  .er-consent__actions{flex-wrap:wrap;}
  .er-consent__actions .btn{flex-basis:100%;}
}
@media (min-width:851px){.er-consent{inset:auto 16px calc(16px + env(safe-area-inset-bottom));}.er-consent__inner{max-height:min(60vh,620px);}}

/* V3: accessible, tap-friendly choice cards for the first form step. */
.choice-group{min-width:0;margin:0;padding:0;border:0}.choice-group legend{padding:0;font-size:14px;font-weight:600}.choice-group>.sub{margin:6px 0 12px;font-size:13px}.choice-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.choice-card{position:relative;display:flex;align-items:center;min-width:0;min-height:58px;margin:0;padding:12px 13px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:14px;line-height:1.35;cursor:pointer;overflow-wrap:anywhere;white-space:normal}.choice-card input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.choice-card:has(input:checked){border-color:var(--green);background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green)}.choice-card:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.choice-card-grid--scope .choice-card:last-child{grid-column:1/-1}.scope-choice-group{margin-top:16px}.object-choice-group+.scope-choice-group{margin-top:20px}.choice-card span{min-width:0}.er-consent{position:static;inset:auto;z-index:auto;width:100%;max-width:100%;margin:0 0 18px}.er-consent__inner{width:100%;max-width:none;max-height:none;overflow:visible}.er-consent__inner h2{font-size:17px}.er-consent__inner p{font-size:13px}.er-consent__details{max-height:none}
@media(max-width:640px){.choice-card-grid{grid-template-columns:1fr}.choice-card-grid--object{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-card-grid--scope{grid-template-columns:1fr}.choice-card-grid--scope .choice-card:last-child{grid-column:auto}.choice-card{min-width:0;min-height:58px}.er-consent{margin:0 0 16px}.er-consent__inner{padding:15px 16px}.er-consent__actions{flex-wrap:wrap}.er-consent__actions .btn{flex-basis:100%}}

/* V4: keep the visible form and consent typography on the shared UI family. */
.form-panel,.form-panel button,.form-panel input,.form-panel select,.form-panel label,.form-panel legend,.form-panel .sub,.choice-card,.choice-card span,.er-consent,.er-consent button,.er-consent a,.er-consent summary,.er-consent p,.site-footer{font-family:var(--font-main)}.form-panel button,.form-panel input,.form-panel select,.er-consent button{font:inherit}.choice-card{font-size:15px;line-height:1.4}.choice-group legend{font-size:15px;line-height:1.4}.er-consent__inner h2{font-family:var(--font-main);line-height:1.25}.er-consent__inner p,.er-consent__details p{font-size:14px;line-height:1.45}.er-consent__details summary,.er-consent__link{font-family:var(--font-main);line-height:1.4}
.object-choice-group .choice-card,.scope-choice-group .choice-card{font-family:var(--font-main);font-size:14px;font-weight:400;line-height:1.4;letter-spacing:normal;padding:12px 13px;justify-content:flex-start;text-align:left}.object-choice-group .choice-card span,.scope-choice-group .choice-card span{font:inherit;text-align:left}.object-choice-group .choice-card:has(input:checked),.scope-choice-group .choice-card:has(input:checked){border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}
