.admin-login-body{min-height:100vh;background:#eef3f8;color:#17334d}
.admin-login-page{position:relative;min-height:100vh;display:grid;place-items:center;padding:38px 20px 80px;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,rgba(67,142,177,.12),transparent 48%),linear-gradient(145deg,#f7f9fb,#eaf0f5)}
.admin-login-page:before,.admin-login-page:after{content:"";position:absolute;pointer-events:none;border:1px solid rgba(38,91,125,.08);border-radius:50%;width:560px;height:560px;right:-230px;bottom:-390px;box-shadow:0 0 0 44px rgba(38,91,125,.025),0 0 0 94px rgba(38,91,125,.02)}
.admin-login-page:after{width:440px;height:440px;right:auto;left:-270px;top:-330px;bottom:auto;box-shadow:0 0 0 52px rgba(38,91,125,.025)}
.admin-login-card{position:relative;z-index:1;width:min(100%,420px);padding:34px 38px 27px;border:1px solid #dce6ee;border-radius:17px;background:rgba(255,255,255,.96);box-shadow:0 24px 64px rgba(19,51,77,.11),0 2px 8px rgba(19,51,77,.035)}
.admin-login-identity{display:flex;flex-direction:column;align-items:center;margin:0 auto 26px;padding-bottom:22px;border-bottom:1px solid #edf1f4;text-align:center}
.admin-login-brand-logo{display:block;width:104px;height:64px;object-fit:contain;margin:0 auto 10px}
.admin-login-identity span{color:#173a58;font-size:10px;font-weight:750;letter-spacing:.17em}
.admin-login-identity small{margin-top:5px;color:#8c9eac;font-size:8px;font-weight:650;letter-spacing:.2em}
.admin-login-card .login-kicker{color:#128e9a;font-size:9px;font-weight:700;letter-spacing:.15em}
.admin-login-card h2{margin:9px 0 5px;color:#163a58;font-size:25px;letter-spacing:-.7px}
.admin-login-card .login-help{margin:0 0 25px;color:#7c8fa0;font-size:11px;line-height:1.65}
.admin-login-card .login-label{display:block;margin:0 0 7px;color:#3e5a70;font-size:10px;font-weight:650}
.admin-login-card .login-input{display:block;width:100%;height:45px;margin:0 0 18px;padding:0 13px;border:1px solid #d9e4ed;border-radius:8px;background:#fbfdff;color:#183b56;font-size:11px;outline:none;transition:border-color .16s,box-shadow .16s}
.admin-login-card .login-input:focus{border-color:#49aeb5;box-shadow:0 0 0 4px rgba(45,160,169,.12)}
.admin-login-card .login-submit{width:100%;height:47px;margin-top:2px;border:0;border-radius:8px;background:linear-gradient(100deg,#123b5c,#17688d);box-shadow:0 9px 20px rgba(20,81,120,.18);font-size:11px}
.admin-login-card .login-submit span{margin-left:auto}
.admin-login-secure{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;padding-top:15px;border-top:1px solid #edf1f4;color:#91a1ae;font-size:9px}
.admin-login-secure span{color:#22a58f;font-size:8px;box-shadow:0 0 0 4px #e7f6f2;border-radius:50%}
.admin-login-copyright{margin-top:18px;color:#9aa8b4;font-size:9px;text-align:center}
.admin-login-agency{position:absolute;z-index:1;bottom:23px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:6px;color:#8a9cab;font-size:9px;white-space:nowrap}
.admin-login-agency strong{color:#274c68;font-size:10px;letter-spacing:.01em}
.admin-login-page .error-alert,.admin-login-page .setup-alert{margin:0 0 16px;font-size:10px}
@media(max-width:520px){.admin-login-page{padding:22px 16px 68px}.admin-login-card{padding:27px 23px 22px;border-radius:14px}.admin-login-identity{margin-bottom:22px;padding-bottom:18px}.admin-login-brand-logo{width:88px;height:54px}.admin-login-card h2{font-size:22px}.admin-login-card .login-help{margin-bottom:21px}}
