.auth-page #main { height: auto; min-height: 100svh; padding: 140px 20px 60px; align-items: flex-start; }
.auth-page #main > .container { width: min(100%, 440px); }
.auth-page header:has(> .auth-link) { gap: 20px; }
.auth-page header > .auth-link { margin-left: auto; font-size: 14px; }
.auth-page .reg-box { width: 100%; padding: 32px 36px; border: 1px solid var(--theme-border-color); }
.auth-page .reg-text .desc { line-height: 1.55; margin-top: 8px; }
.auth-page .reg-text h2 { font-size: 28px; line-height: 1.25; }
.auth-page .inputs .input { margin-top: 16px; }
.auth-page .inputs input { margin-bottom: 0; min-height: 48px; font-size: 16px; }
.auth-page .inputs input:focus { border-color: var(--main-color); box-shadow: 0 0 0 3px #078ad61c; }
.auth-page .password-field { position: relative; }
.auth-page .password-field input { padding-right: 90px; }
.auth-page .password-toggle { position: absolute; right: 10px; top: 5px; height: 48px; padding: 0 4px; border: 0; background: transparent; color: var(--theme-text-desc-color); font: inherit; font-size: 12px; cursor: pointer; }
.auth-page .password-toggle:hover { color: var(--theme-text-color); }
.auth-page button:focus-visible, .auth-page a:focus-visible { outline: 2px solid var(--main-color); outline-offset: 3px; }
.auth-page .forgot-link { text-align: right; margin-top: 12px; font-size: 14px; }
.auth-page .forgot-link a, .auth-page .auth-link, .auth-page .have-acc a { color: var(--main-color); }
.auth-page button.auth-link { border: 0; background: transparent; padding: 0; font: inherit; cursor: pointer; }
.auth-page .forgot-link a:hover, .auth-page .auth-link:hover { text-decoration: underline; }
.auth-page .btn-register button { margin-top: 24px; min-height: 48px; }
.auth-page .btn-register button:disabled { opacity: .6; cursor: wait; }
.auth-page .have-acc { margin-top: 18px; font-size: 14px; line-height: 1.5; }
.auth-page .auth-hint { font-size: 13px; margin-top: 8px; color: #bd7b23; }
.auth-page .auth-success { color: var(--theme-text-color); line-height: 1.6; }
.auth-page .auth-success p { margin: 16px 0; }
.auth-page .auth-primary-link { display: block; padding: 14px; margin-top: 24px; border-radius: 8px; background: var(--main-color); color: #fff; text-align: center; font-weight: 600; }
.auth-page .auth-support { margin-top: 18px; font-size: 13px; line-height: 1.5; color: var(--theme-text-desc-color); }
.auth-page .auth-support a { color: var(--main-color); }
.auth-page #account-status:empty { margin: 0; }
@media (max-width: 600px) {
    .auth-page #main { padding: 110px 16px 36px; }
    .auth-page .reg-box { padding: 28px 22px; }
    .auth-page .reg-text h2 { font-size: 25px; }
}
