/* Native account forms: presentation only. Field visibility and submission stay with PrestaShop. */
.paracel-cream#authentication .paracel-auth-entry { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 24px; max-width: 60rem; margin: 0 0 32px; }
.paracel-cream#authentication .paracel-auth-entry:before,
.paracel-cream#authentication .paracel-auth-entry:after { display: none; }
.paracel-cream#authentication .paracel-auth-choice { width: auto; float: none; min-width: 0; padding: 0; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-panel { background: var(--plate); border: 1px solid var(--rule); border-radius: 2px; padding: 20px 16px; margin-bottom: 24px; box-shadow: none; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form { max-width: 46rem; min-width: 0; }
.paracel-cream:is(#authentication, #order-opc) #login_form.paracel-auth-form,
.paracel-cream#authentication #create-account_form.paracel-auth-form { min-height: 0; margin-bottom: 0; }
.paracel-cream#authentication #create-account_form.paracel-auth-panel { background: var(--paper-2); }
.paracel-cream#order-opc #login_form.paracel-auth-form { margin-bottom: 24px; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-panel .page-subheading { margin: 0 0 20px; padding: 0; border: 0; font-size: 1.5rem; line-height: 1.2; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-intro { max-width: 55ch; margin: 0 0 24px; color: var(--ink-2); }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form .form-group { max-width: 40rem; margin: 0 0 24px; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form .form-group > label,
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .paracel-date-label { display: block; margin: 0 0 8px; font: 500 .9375rem/1.4 var(--body); color: var(--ink); }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form .form-control { width: 100%; max-width: none; height: 48px; min-height: 48px; font-size: 1.0625rem; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form textarea.form-control { height: auto; min-height: 120px; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form .form_info,
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form .inline-infos { color: var(--ink-2); font-size: .9375rem; line-height: 1.5; margin-top: 8px; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .gender-line { margin: 0 0 24px; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .radio-inline { min-height: 44px; padding-top: 8px; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .checkbox { max-width: 40rem; margin: 12px 0; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .checkbox label { line-height: 1.5; }
/* Uniform keeps the actual select; full-width display wrappers survive its inline resize measurements. */
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form div.selector { width: 100% !important; box-sizing: border-box; height: 48px; min-height: 48px; padding: 0; line-height: 46px; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form div.selector > span { width: 100% !important; box-sizing: border-box; height: 46px; line-height: 46px; padding-left: 12px; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form div.selector select { height: 48px; min-height: 48px; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form div.selector.focus { outline: 2px solid var(--olive); outline-offset: 2px; }
.paracel-cream:is(#authentication, #order-opc) .paracel-password-field { display: flex; flex-wrap: wrap; align-items: stretch; gap: 8px; }
.paracel-cream:is(#authentication, #order-opc) .paracel-password-field > input.form-control { flex: 1 1 12rem; width: 0; min-width: 0; }
.paracel-cream:is(#authentication, #order-opc) .paracel-password-toggle { flex: 0 0 auto; min-height: 48px; padding: 10px 12px; border: 1px solid var(--rule-strong); border-radius: 2px; background: var(--paper); color: var(--olive); font: 500 1.0625rem/1.4 var(--body); }
.paracel-cream:is(#authentication, #order-opc) .paracel-password-toggle:hover { background: var(--paper-2); }
.paracel-cream .paracel-password-toggle[hidden] { display: none !important; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .lost_password,
.paracel-cream:is(#authentication, #order-opc) #openLoginFormBlock { min-height: 44px; line-height: 1.5; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form a.lost_password,
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .lost_password a,
.paracel-cream#order-opc #openLoginFormBlock { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; text-decoration: underline; text-underline-offset: 3px; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form .submit { margin: 24px 0 0; padding-top: 0; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form .submit .button { max-width: 100%; white-space: normal; text-align: center; }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .submit > .required { float: none !important; margin: 12px 0; }
.paracel-cream#authentication .paracel-auth-entry .submit .button,
.paracel-cream#password #form_forgotpassword .submit .button { width: 100%; }
.paracel-cream#authentication #SubmitCreate { background: transparent; color: var(--olive); border-color: var(--olive); }
.paracel-cream#authentication #SubmitCreate:hover { background: var(--paper); }
.paracel-cream:is(#authentication, #order-opc) .paracel-auth-form .top-indent { margin-top: 36px; }
.paracel-cream#authentication .paracel-auth-form .account_creation + .account_creation { padding-top: 28px; margin-top: 28px; border-top: 1px solid var(--rule); }
.paracel-cream#order-opc #opc_account_choice { margin-top: 20px; }
.paracel-cream#order-opc #opc_account_choice .title_block { font: 600 1.25rem/1.3 var(--display); color: var(--olive); }
.paracel-cream#order-opc #opc_account_choice .bullet { padding-left: 0; line-height: 1.6; }
.paracel-cream#order-opc .paracel-auth-form .opc-add-save { border-top: 1px solid var(--rule); padding-top: 24px; }
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-errors,
.paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-form .alert { overflow-wrap: anywhere; }
.paracel-cream#password .paracel-auth-reset { max-width: 38rem; }
.paracel-cream#password .paracel-auth-reset .paracel-auth-reset-heading { font-size: clamp(1.75rem, 1.5rem + 1vw, 2.25rem); line-height: 1.1; }
.paracel-cream#password .footer_links { max-width: 38rem; }
@media (min-width: 768px) {
  .paracel-cream#authentication .paracel-auth-entry { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
  .paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-panel { padding: 28px 24px; }
}
@media (min-width: 1024px) {
  .paracel-cream:is(#authentication, #order-opc, #password) .paracel-auth-panel { padding: 32px; }
}

/* Native validate.js marks the immediate input wrapper, including password controls. */
.paracel-cream .paracel-password-field.form-error > input { border-color: var(--clay); color: var(--ink); background-color: var(--plate); }
.paracel-cream .paracel-password-field.form-ok > input { border-color: var(--olive); }
