#account-login-dialog {
    --account-primary: #283e8a;
    box-sizing: border-box;
    width: 560px;
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 32px);
    margin: auto;
    padding: 26px 26px 22px;
    border: 0;
    border-radius: 18px;
    background: #fff;
    color: #1c2340;
    font: 400 15px/1.45 Mulish, sans-serif;
    text-align: start;
    box-shadow: 0 24px 70px #00000061;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: #c5cae0 transparent;

}
#account-login-dialog * { box-sizing: border-box; }
#account-login-dialog::backdrop { background: #0a0f289e; }
#account-login-dialog:not([open]), #account-login-dialog [hidden] { display: none !important; }
html:has(#account-login-dialog[open]), body.account-login-open { overflow: hidden; }
body.account-login-open .go-up { display: none !important; }
#account-login-dialog h2 { margin: 0 40px 6px 0; padding: 0; color: #1c2340; font-size: 24px; font-weight: 800; line-height: 1.2; }
#account-login-dialog .account-login-description { margin: 0 0 14px; color: #5b6280; font-size: 14px; line-height: 1.45; }
#account-login-dialog .account-login-close { position: absolute; inset-inline-end: 8px; top: 8px; z-index: 2; width: 44px; height: 44px; padding: 1px 6px; border: 0; border-radius: 50%; background: transparent; color: #5b6280; font-size: 30px; font-weight: 400; line-height: 1; cursor: pointer; }
#account-login-dialog .account-login-close:hover { background: #00000014; }
#account-login-dialog .account-login-field { min-width: 0; margin-bottom: 14px; }
#account-login-dialog .account-login-field > label { display: block; margin: 0 0 6px; color: #1c2340; font-size: 14px; font-weight: 600; }
#account-login-dialog input:not([type="hidden"]):not([type="checkbox"]) { width: 100%; min-width: 0; min-height: 46px; height: 46px; margin: 0; padding: 10px 14px; border: 1px solid #cdd2e6; border-radius: 10px; background: #fff; color: #1c2340; font: 400 16px/1.45 Mulish, sans-serif; }
#account-login-dialog input:focus { outline: 2px solid var(--account-primary); outline-offset: 1px; border-color: var(--account-primary); }
#account-login-dialog [aria-invalid="true"] { border-color: #dc3545 !important; }
#account-login-dialog .account-login-password { position: relative; }
#account-login-dialog .account-login-password input { padding-inline-end: 50px !important; }
#account-login-dialog [data-account-toggle] { position: absolute; inset-inline-end: 0; top: 0; display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; padding: 1px 6px; border: 0; border-radius: 10px; background: transparent; color: #5b6280; }
#account-login-dialog .account-login-options { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 0; }
#account-login-dialog .account-login-options label { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 14px; cursor: pointer; }
#account-login-dialog input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--account-primary); }
#account-login-dialog a:not(.account-back-button) { color: var(--account-primary); font-weight: 600; text-decoration: underline; }
#account-login-dialog .account-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
#account-login-dialog .account-login-submit, #account-login-dialog .account-back-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 10px 24px; border: 2px solid transparent; border-radius: 10px; font: 700 15px/1.2 Mulish, sans-serif; text-decoration: none; white-space: normal; cursor: pointer; transition: none; }
#account-login-dialog .account-login-submit { background: var(--account-primary); color: #fff; border-color: var(--account-primary); }
#account-login-dialog .account-login-submit:hover { filter: brightness(.95); }
#account-login-dialog .account-back-button { background: #fff; color: #1c2340; border-color: #cdd2e6; }
#account-login-dialog button:focus-visible, #account-login-dialog a:focus-visible { outline: 3px solid #283e8a73; outline-offset: 2px; }
#account-login-dialog .account-login-captcha { max-width: 100%; margin-bottom: 14px; overflow-x: auto; }
#account-login-dialog .account-social-login { margin-top: 18px; padding-top: 14px; border-top: 1px solid #dfe3f1; text-align: center; }
#account-login-dialog .account-social-login p { margin: 0 0 14px; color: #5b6280; font-size: 14px; }
#account-login-dialog .account-social-buttons { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); gap: 12px; }
#account-login-dialog .account-social-buttons a { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 10px 12px; border: 1px solid #cdd2e6; border-radius: 10px; white-space: normal; overflow-wrap: anywhere; }
#account-login-dialog .account-login-feedback, #account-login-dialog .account-login-status { padding: 12px 14px; margin: 20px 0 14px; border-radius: 10px; font-size: 14px; }
#account-login-dialog .account-login-feedback { color: #842029; background: #f8d7da; }
#account-login-dialog .account-login-status { color: #0f5132; background: #d1e7dd; }
#account-login-dialog .account-login-feedback p { margin: 0; }
#account-login-dialog [aria-busy="true"] { opacity: .7; }
.account-auth-page { min-height: 100dvh; padding: 28px; background: #283e8a url('/assets/img/email-temp-address-back-image.jpg') center/cover; }
.account-auth-home { display: inline-flex; align-items: center; gap: 16px; color: #fff; font: 600 16px Mulish, sans-serif; }
.account-auth-home img { width: 170px; height: auto; }
@media (max-width: 640px) {
    #account-login-dialog { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; min-height: 100dvh; margin: 0; padding: 22px 16px 20px; border-radius: 0; }
    #account-login-dialog h2 { font-size: 21px; }
    #account-login-dialog .account-actions { flex-direction: column-reverse; }
    #account-login-dialog .account-actions > * { width: 100%; }
}