body.login-page{margin:0;background:#0a0a0d;color:#f2f4f8}
.login-page .login-wrap{min-height:100svh;display:flex;align-items:center;justify-content:center;padding:32px 20px;background:#0a0a0d;overflow:visible}
.login-page .login-side{width:100%;max-width:410px;padding:0;flex:none}
.login-page .login-box{width:100%;max-width:none;padding:32px;background:#16161b;border:1px solid #2a2a33;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.3);text-align:left;animation:none;overflow:visible}
.login-page .login-box::after{display:none}
.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:30px;color:#f2f4f8;font-size:20px;font-weight:750}
.login-brand img{object-fit:contain;border-radius:10px}
.login-page .login-box .login-title{font-size:23px;font-weight:700;letter-spacing:-.02em;text-align:left;color:#f2f4f8;margin:0 0 24px}
.login-page .login-box label{color:#c9ced7;font-size:13px;font-weight:600;margin:18px 0 8px}
.login-page .login-box input{background:#16161b;color:#f2f4f8;border:1px solid #3a3a45;border-radius:8px;padding:12px 14px;font-size:16px;min-height:48px;box-shadow:none}
.login-page .login-box input:focus{outline:3px solid #2563eb18;border-color:#2563eb}
.login-page .login-box input::placeholder{color:#6d7480}
.password-field{position:relative}.login-page .password-field input{padding-right:64px}
.password-toggle{position:absolute;right:6px;top:4px;height:40px;border:0;background:transparent;color:#9198a4;font:inherit;font-size:12px;cursor:pointer;padding:0 9px;border-radius:5px}
.password-toggle:focus-visible{outline:2px solid #2563eb}
.login-page .login-box .btn{min-height:48px;padding:12px 16px;border:1px solid #2563eb;border-radius:8px;background:#2563eb;color:white;box-shadow:none;font-size:14px;font-weight:600;margin-top:24px}
.login-page .login-box .btn:hover{background:#1d4ed8}
.login-page .login-box .btn-ghost{background:#16161b;border-color:#3a3a45;color:#c9ced7}
.login-page .login-box .btn-ghost:hover{background:#25252c}
.login-page .login-box .btn-ok{background:#202027;color:#1d4ed8;border-color:#3a3a45}
.login-page .flash{font-size:13px;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:480px){.login-page .login-wrap{padding:24px 16px}.login-page .login-box{padding:28px 24px}.login-brand{font-size:19px}}

.login-page .login-box input{background:#1d1d23}.login-page .login-box .btn-ghost{background:#202027}.login-page .login-wrap{background:radial-gradient(ellipse at 50% 25%,rgba(37,99,235,.08),transparent 60%),#0a0a0d}

/* Premium dark sign-in, matched to the panel. */
.login-page .login-wrap{position:relative;isolation:isolate;background:radial-gradient(ellipse at 16% 15%,#163b7938,transparent 48%),radial-gradient(ellipse at 86% 85%,#871f3330,transparent 48%),#090b12}
.login-page .login-wrap:before,.login-page .login-wrap:after{content:"";display:block;position:absolute;z-index:-1;pointer-events:none;width:320px;height:320px;border-radius:50%;filter:blur(80px);opacity:.2}
.login-page .login-wrap:before{background:#2563eb;left:calc(50% - 340px);top:calc(50% - 320px)}
.login-page .login-wrap:after{background:#dc2626;right:calc(50% - 340px);bottom:calc(50% - 320px)}
.login-page .login-side{max-width:440px;position:relative}
.login-page .login-box{position:relative;padding:40px 36px;border:1px solid #334057;border-radius:24px;background:linear-gradient(155deg,#1b2434eb,#11151fee 65%);box-shadow:0 32px 90px #0008,0 1px 0 #ffffff0d inset;backdrop-filter:blur(20px)}
.login-page .login-box:after{content:"";display:block;position:absolute;left:32px;right:32px;top:0;height:3px;border-radius:0 0 8px 8px;background:linear-gradient(90deg,#3b82f6 0%,#60a5fa 35%,#ef4444 100%)}
.login-brand{justify-content:center;gap:14px;font-size:24px;letter-spacing:.025em;margin:0 0 32px;color:#f5f7fc}
.login-brand img{width:56px;height:56px;padding:5px;background:#242a3d;border:1px solid #495675;border-radius:16px;box-shadow:0 8px 24px #0004}
.login-page .login-box .login-title{text-align:center;font-size:27px;letter-spacing:-.025em;margin-bottom:30px;font-weight:700}
.login-page .login-box label{font-size:12px;letter-spacing:.025em;color:#c2cddd;margin-top:20px}
.login-page .login-box input{background:#0c111de6;border:1px solid #354156;min-height:52px;border-radius:12px;padding:14px 16px;color:#f3f6fc;transition:border-color .15s,box-shadow .15s}
.login-page .login-box input:focus{border-color:#60a5fa;outline:0;box-shadow:0 0 0 4px #3b82f620}
.login-page .login-box input::placeholder{color:#6f7f95}
.login-page .password-field input{padding-right:70px}
.password-toggle{top:6px;color:#8fb9f1}
.login-page .login-box .btn{background:linear-gradient(100deg,#1d4ed8,#3478ec);border:1px solid #4d8af6;border-radius:12px;min-height:52px;margin-top:28px;box-shadow:0 8px 26px #2563eb35,0 1px 0 #ffffff26 inset;font-size:15px;letter-spacing:.015em}
.login-page .login-box .btn:hover{background:linear-gradient(100deg,#2459eb,#4086fa);box-shadow:0 10px 32px #2563eb50}
.login-page .login-box .btn-ghost{background:#202a3a55;color:#c8d4e7;border:1px solid #354156;box-shadow:none;font-size:13px}
.login-page .login-box .btn-ghost:hover{background:#263349;border-color:#4b6284}
.login-page .login-box .btn-ok{background:#142742;color:#b5d4ff;border-color:#315780;box-shadow:none}
@media(max-width:480px){.login-page .login-wrap{padding:28px 18px;overflow:hidden}.login-page .login-box{padding:34px 26px;border-radius:22px}.login-brand{font-size:22px}.login-page .login-box .login-title{font-size:25px}}
@media(prefers-reduced-motion:reduce){.login-page *{transition:none!important}}

.panel-welcome{text-align:center;margin:0 0 32px;line-height:1.15}
.panel-welcome span{display:block}
.welcome-label{font-size:11px;font-weight:600;letter-spacing:.26em;color:#94a7c2;margin-bottom:13px}
.welcome-name{font-size:32px;font-weight:850;letter-spacing:-.025em;background:linear-gradient(105deg,#93c5fd,#f8fafc 52%,#fca5a5);background-clip:text;-webkit-background-clip:text;color:transparent}
.welcome-panel{font-size:12px;letter-spacing:.38em;font-weight:600;color:#b9c9e2;margin-top:11px}
@media(max-width:380px){.welcome-name{font-size:27px}}
