/* Login uses the same quiet plum and muted rose palette as the main site. */
.login-page{--carnival-red:#a83e59;--line-soft:#51405f;--muted:#c5b7ce;--bulb:#e3cddd;background:radial-gradient(ellipse at 50% 0,rgba(95,60,118,.25),transparent 65%),#170f24}
.login-page .booth{width:100%;max-width:640px;padding:24px 20px 16px}
.login-page .booth-bg::before,.login-page .booth-bg::after{opacity:.2}
.login-page .login-card{width:100%;max-width:560px;margin:0 auto;padding:24px 28px;background:#20152e;border:1px solid #51405f;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.login-page .login-card .booth-brand{margin:0 auto 12px;max-width:300px;overflow:visible}
.login-page .login-card .booth-brand img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;border-radius:0}
.login-page .auth-mode-switch{display:flex;width:max-content;max-width:100%;margin:12px auto;background:#291d36;border-color:#51405f;gap:4px;padding:4px}
.login-page .auth-mode-btn{font-size:13px;line-height:1.5;padding:9px 20px;white-space:nowrap;font-weight:600;transition:background-color .18s ease}
.login-page .auth-mode-btn.active{background:#a83e59;color:#fff;box-shadow:none}
.login-page .auth-mode-btn:hover{background:#40304f;color:#fff}
.login-page .auth-mode-btn.active:hover{background:#91334c}
.login-page .login-card .sub{font-size:12px;line-height:1.75;max-width:none;text-wrap:pretty}
.login-page .zalo-btn,.login-page .mail-btn,.login-page #modal-agree-close-btn{background:#a83e59;color:#fff;box-shadow:0 3px 10px rgba(0,0,0,.18);border:1px solid #a83e59;font-family:var(--fb);font-size:14px;font-weight:600;line-height:1.5;padding:12px 18px;transition:background-color .18s ease;white-space:nowrap}
.login-page .zalo-btn:hover,.login-page .mail-btn:hover,.login-page #modal-agree-close-btn:hover{background:#91334c;box-shadow:0 3px 10px rgba(0,0,0,.18);transform:none}
.login-page .zalo-btn .zlogo{width:26px;height:26px;border-radius:7px}
.login-page .zalo-btn .zlogo img,.login-page .zalo-btn .zlogo svg{width:20px;height:20px}
.login-page #zalo-btn-wrapper,.login-page #register-email-wrapper{margin-bottom:12px}
.login-page .login-consents{max-width:440px;margin-top:20px;gap:14px}
.login-page .login-consents label{font-size:12px;line-height:1.8;gap:10px;text-wrap:pretty}
.login-page .login-consents label > span{min-width:0}
.login-page .login-consents input{width:16px;height:16px;margin-top:3px;accent-color:#a83e59}
.login-page .consent-modal-link{color:#e0c5d2;font-weight:600;text-shadow:none;text-decoration-color:#846c8b}
.login-page .consent-modal-link:hover{color:#fff;text-shadow:none}
.login-page .auth-switch-hint{line-height:1.8;text-wrap:pretty}
.login-page .auth-switch-action{display:inline-block;white-space:nowrap}
.login-page .login-field label{font-size:12px;font-weight:600}
.login-page .login-field input{background:#291d36;border-color:#665373;font-size:16px}
.login-page .login-field input:focus{border-color:#b9a4ca;box-shadow:0 0 0 3px rgba(185,164,202,.12)}
.login-page .policy-modal-card{background:#20152e;border-color:#665373;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.login-page .modal-tab-btn{font-size:11px;letter-spacing:0;white-space:normal;text-wrap:pretty;line-height:1.5}
.login-page .modal-tab-btn.active{background:#40304f;color:#f0e8f4;border-color:#756080;box-shadow:none}
.login-page .policy-modal-close,.login-page .login-cancel-link{color:#dfd1e7}
.login-page .foot-nav .nav-link{background:#30233f;border-color:#665373;color:#eee7f2;font-size:12px}
.login-page .foot-nav .nav-link:hover{background:#40304f;border-color:#927b9e}
.login-page :is(button,a,input,[role="button"]):focus-visible{outline:2px solid #d9bddf;outline-offset:3px}
.login-page .official-sponsors{padding-top:24px}
.login-page .official-sponsors__title{font-size:10px;letter-spacing:.1em}
.login-page .official-sponsors__logo{background-size:266.67px 32px}
.login-page .official-sponsors__logo--axe{width:86px;background-position:left center}
.login-page .official-sponsors__logo--lifebuoy{width:66px;background-position:right center}
.login-page .official-sponsors__logo--lux{width:70px;background-position:-102px center}
@media(max-width:540px){
 .login-page .booth{padding:16px 14px}
 .login-page .login-card{padding:20px 16px;border-radius:16px}
 .login-page .login-card .booth-brand{max-width:260px}
 .login-page .auth-mode-btn{padding:8px 16px;font-size:12px}
 .login-page .login-consents label{font-size:11.5px;line-height:1.8}
 .login-page .auth-switch-hint{font-size:12px!important}
 .login-page .zalo-btn{font-size:13px;padding:11px 12px;gap:8px}
}
