/* Reviewed existing-screen consistency; quote-card colors and shape retain their live source. */
@import url('./sovra-primitives.css');
body[data-sv-design]:not([data-sv-design="comparison"]){--ink:var(--sv-ink);--ink-2:var(--sv-body);--ink-3:var(--sv-muted);--ink-4:var(--sv-muted);--ink2:var(--sv-body);--ink3:var(--sv-muted);--ink4:var(--sv-muted);--off:var(--sv-cream);--bg:var(--sv-cream);--warm:var(--sv-warm);--rule:var(--sv-line);--rule-2:var(--sv-line);--green:var(--sv-forest);--blue:var(--sv-forest);--price:var(--sv-forest);--red:var(--sv-error);--fs:var(--sv-font);--fd:var(--sv-font);--sans:var(--sv-font);--serif:var(--sv-font)}
body[data-sv-design] :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--sv-forest);outline-offset:3px}
/* Excludes carousels, radio/check boxes, icon buttons and legacy admin controls. */
body[data-sv-design] :is(.new-btn-p,.n-cta,.btn-go,.btn-bk,.sb,.bsm,.head-back,.talk-btn,.talk-cta,.talk-linkbtn,.enroll,.mock-enroll,.mock-action-btn,.signin-submit,.dash-signout,.consult-btn,.acct-email-form button){min-height:48px;font-family:var(--sv-font);font-size:15px;border-radius:100px;transition-duration:var(--sv-motion)}
body[data-sv-design] :is(.btn-go,.new-btn-p,.signin-submit,.consult-btn.primary){background:var(--sv-ink);color:var(--sv-white);box-shadow:none}
body[data-sv-design] :is(.btn-go,.new-btn-p,.signin-submit,.consult-btn.primary):hover:not(:disabled){background:var(--sv-forest)}
body[data-sv-design] :is(.btn-go,.signin-submit,.consult-btn,.talk-cta):disabled{opacity:1;background:var(--sv-warm);color:var(--sv-muted);border-color:var(--sv-line);box-shadow:none;transform:none}
body[data-sv-design] :is(.opt,.tin,.signin-input,.talk-in,.acct-email-form input){border-radius:var(--sv-field-radius);min-height:48px}
body[data-sv-design] :is(.signin-input,.talk-in,.acct-email-form input){font-size:16px;border-color:#888078}
body[data-sv-design] :is(.tin,.signin-input,.talk-in)::placeholder{color:var(--sv-muted)}
body[data-sv-design] :is(.opts,.opts.g2){gap:var(--sv-space-1)}
body[data-sv-design] :is(.signin-form,.signin-field){gap:var(--sv-space-2)}
body[data-sv-design] :is(.signin-card,.dash-empty,.consult-row,.dash-feature,.sovra-preparation){border-radius:var(--sv-radius)}
body[data-sv-design] :is(.new-sub,.new-note,.new-pillar-p,.opt-s,.plans-loading-sub,.sovra-preparation-note,.signin-p,.signin-trust,.dash-sub,.dash-empty-p,.talk-sheet-p,.talk-opt-s){color:var(--sv-muted);line-height:1.65;font-weight:400}
body[data-sv-design] .opt.sel .opt-s{color:#fff}
body[data-sv-design] :is(.signin-eyebrow,.dash-eyebrow){font-size:12px;color:var(--sv-forest);font-weight:600}
body[data-sv-design] :is(.signin-msg,.consult-tag,.role-badge){font-size:13px;line-height:1.65}
body[data-sv-design] :is(.signin-msg.err,.talk-msg){color:var(--sv-error)}
/* iOS keeps the input zoom protection; mono code/numerical hero fields retain sizes. */
@media(prefers-reduced-motion:reduce){body[data-sv-design] *,body[data-sv-design] *::before,body[data-sv-design] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
body[data-sv-design="account"] .adv-inputrow input{min-height:48px;border:1px solid #888078;border-radius:var(--sv-field-radius);padding:12px 14px;font-family:var(--sv-font);font-size:16px;color:var(--sv-ink);background:var(--sv-white)}
body[data-sv-design="account"] .adv-inputrow input::placeholder{color:var(--sv-muted)}
body[data-sv-design="account"] #sms-phone{flex:1;min-width:0}
body[data-sv-design="account"] #sms-btn{flex-shrink:0;white-space:nowrap}
