/* Purchase/auth presentation only. Keep native selectors, actions and guards. */
body:is(#password,#password-infos) #wrapper #main .customer-password-reset__fields { display: grid; gap: 16px; margin-top: 24px; padding: 0; }
body:is(#password,#password-infos) #wrapper #main .customer-password-reset__fields > .form-group { margin: 0; }
body:is(#password,#password-infos) #wrapper #main .customer-password-reset .form-control-label { display: block; width: 100%; margin: 0 0 8px; padding: 0; text-align: left; }
body:is(#password,#password-infos) #wrapper #main .customer-password-reset__actions { width: 100%; margin: 0; padding: 0; }
body:is(#password,#password-infos) #wrapper #main .customer-password-reset .btn-primary { width: 100%; margin: 0; }
body#checkout #wrapper .checkout-step .step-title { font-family: var(--vvp-font-ui,Inter,system-ui,sans-serif); font-weight: 600; line-height: 1.4; }
body#checkout #wrapper .checkout-step .step-edit { font-weight: 500; color: var(--vvp-ds-action); }
body#checkout #payment-confirmation button.btn:is(.disabled,:disabled),
body#checkout #payment-confirmation button.btn:is(.disabled,:disabled):hover {
  background: var(--vvp-color-panel-line); border-color: #d4dae4; color: #667184; box-shadow: none; opacity: 1; cursor: not-allowed;
}

body:is(#password,#password-infos) #wrapper #main .customer-password-reset .email { padding: 0; overflow-wrap: anywhere; }
body:is(#checkout,#authentication,#registration) #wrapper .skrupt-form-consent__label,
body:is(#checkout,#authentication,#registration) #wrapper .skrupt-form-consent__label > span { text-align: left; }
/* A native login plus Magic Login needs two usable columns, not two half-cards. */
body#authentication #wrapper #main > #content:has(> .psmagiclogin-hook),
body#authentication #wrapper #main > #content:has(#customer-form) { max-width: 1040px; }
body#authentication #wrapper #main .register-form__login a { color: var(--vvp-ds-action); }
body:is(#authentication,#registration) #wrapper #main > .page-header::after { color: var(--vvp-hero-muted,var(--vvp-color-inverse-muted)); }
body#authentication #wrapper #main #login-form .form-control-label { text-align: left; }
body#authentication #wrapper #main #login-form :is(#field-email,#field-password) { padding-left: 44px; }
body#authentication #wrapper #main :is(#login-form,#customer-form) .input-group { display: flex; align-items: stretch; }
body#authentication #wrapper #main :is(#login-form,#customer-form) .input-group > .form-control { flex: 1 1 0%; min-width: 0; width: 1%; border-radius: var(--vvp-ui-control-radius,10px) 0 0 var(--vvp-ui-control-radius,10px); }
/* Date of birth at the 48 px control height (its calendar control made it 50 px). */
body#authentication #wrapper #main #customer-form input[name="birthday"].form-control { height: var(--vvp-ui-control-height,48px); }
body#authentication #wrapper #main :is(#login-form,#customer-form) .input-group-btn { position: static; display: flex; flex: 0 0 auto; width: auto; height: auto; }
body#authentication #wrapper #main :is(#login-form,#customer-form) .input-group-btn > .btn { position: static; display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: auto; min-width: 96px; min-height: 48px; height: auto; margin: 0; padding: 10px 12px; border: 1px solid var(--vvp-color-field-border); border-left: 0; border-radius: 0 var(--vvp-ui-control-radius,10px) var(--vvp-ui-control-radius,10px) 0; color: var(--vvp-ds-action); background: var(--vvp-ui-action-bg,#f2f4f7); font-size: var(--vvp-control-font-size-compact); font-weight: var(--vvp-control-weight); line-height: 20px; white-space: nowrap; }
body#authentication #wrapper #main #login-form .forgot-password a { display: inline-flex; align-items: center; min-height: 44px; color: var(--vvp-color-action); font-size: var(--vvp-control-font-size-compact); font-weight: var(--vvp-control-weight); }
body#authentication #wrapper #main .psmagiclogin-hook .psmagiclogin-button { color: #fff; background: var(--vvp-ds-action); box-shadow: none; font-weight: var(--vvp-control-weight); }
@media(max-width:767.98px) { body#authentication #wrapper #main > #content:has(> .psmagiclogin-hook) { grid-template-columns: minmax(0,1fr); } }
body#checkout #wrapper .checkout-step .step-title .vvp-title__lead { font-weight: 600; }
body#checkout #wrapper .checkout-step .step-title .vvp-title__soft { font-weight: 400; }
body#checkout #wrapper .checkout-step .step-edit :is(.vvp-title__lead,.vvp-title__soft) { font-weight: 500; }
body#checkout #wrapper #main .psmagiclogin-hook .psmagiclogin-button { color: #fff; background: var(--vvp-ds-action); box-shadow: none; font-weight: var(--vvp-control-weight); }

body#authentication #wrapper #main #customer-form .form-group:has(input[name="birthday"]) { background: var(--vvp-ui-action-bg,#f2f4f7); border-color: var(--vvp-ui-panel-line,#dce1e9); }
body#authentication #wrapper #main #customer-form .form-group:has(input[name="birthday"])::after { color: var(--vvp-ui-text-muted,#677285); }
