@font-face{font-family:NextLogin;src:url('../../../assets/font/Alexandria-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:NextLogin;src:url('../../../assets/font/Alexandria-SemiBold.ttf') format('truetype');font-weight:600 700;font-display:swap}
*{box-sizing:border-box}
body.login-page{--card-bg:#fff;--text-color:#243b5b;--input-bg:#f8faff;--line:#dce5f2;--muted:#7788a1;margin:0;min-height:100vh;min-height:100dvh;padding:70px 24px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 0%,#234876 0%,transparent 65%),linear-gradient(135deg,#152644,#0c172c);color:var(--text-color);font:14px/1.8 NextLogin,Tahoma,sans-serif}
body.login-page.dark{--card-bg:#15243d;--text-color:#e1eafa;--input-bg:#10203a;--line:#30435f;--muted:#a1b2cc;background:radial-gradient(ellipse at 12% 12%,#19365b,transparent 48%),#0c172c;color-scheme:dark}
.login-shell{width:100%;max-width:460px;background:var(--card-bg);border:1px solid #ffffff28;border-radius:20px;overflow:hidden;box-shadow:0 28px 80px #0004}
.login-brand-panel{padding:32px 34px 26px;background:linear-gradient(120deg,#f2f7ff,#fff);border-bottom:1px solid var(--line);color:#193760;text-align:center}
.dark .login-brand-panel{background:linear-gradient(120deg,#1b3151,#15243d);color:#edf4ff}
.login-brand{display:flex;align-items:center;justify-content:center;gap:14px;position:relative;z-index:1}
.login-brand-mark{display:grid;place-items:center;width:48px;height:52px;border-radius:12px 4px;background:linear-gradient(135deg,#22b9ed,#3263ff);color:#fff;font:bold 34px Arial;transform:skew(-8deg);box-shadow:0 5px 15px #347af82b}
.login-brand strong{font:700 28px/1.3 Arial,sans-serif;display:block;direction:ltr}
.login-brand small{display:block;color:#7b90ad;font-size:11px;margin-top:7px}
.login-card{padding:26px 36px 24px;min-width:0;text-align:right}
.login-card h2{font-size:23px;font-weight:600;line-height:1.7;margin:0 0 5px;color:var(--text-color);text-align:center}
.login-card p{font-size:12px;color:var(--muted);margin:0 0 25px;text-align:center}
.login-card .field-label{display:block;font-size:12px;font-weight:600;margin:0 0 8px;color:var(--text-color)}
.login-card .input-group{position:relative;display:block;margin-bottom:19px}
.login-card .input-group input,.login-card .input-group select{display:block;width:100%;height:52px;border:1px solid var(--line);border-radius:10px!important;background:var(--input-bg);color:var(--text-color);padding:0 42px 0 32px;font:13px NextLogin,Tahoma,sans-serif;outline:none;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.login-card .input-group input::placeholder{color:var(--muted)}
.login-card .input-group i{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#5685c6;font-size:15px;pointer-events:none}
.login-card .input-group select{appearance:none;cursor:pointer}
.login-card .select-wrapper:after{content:"";position:absolute;left:17px;top:20px;width:7px;height:7px;border-left:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(-45deg);pointer-events:none}
.login-card .input-group input:focus,.login-card .input-group select:focus{border-color:#347af8;box-shadow:0 0 0 3px #347af81a}
.login-card select option{background:var(--card-bg);color:var(--text-color)}
.toggle{display:flex;align-items:center;gap:8px;margin:2px 0 22px;font-size:12px}
.toggle label{margin:0;cursor:pointer;color:var(--muted)}
.toggle input{width:16px;height:16px;margin:0;accent-color:#347af8;cursor:pointer}
.btn-login{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:52px;border:0;border-radius:10px;background:linear-gradient(120deg,#216bff,#4386ff);box-shadow:0 4px 13px #1264ff25;color:#fff;font:600 14px NextLogin,Tahoma,sans-serif;cursor:pointer;transition:filter .15s,transform .15s}
.btn-login:hover{filter:brightness(1.07);transform:translateY(-1px)}
.login-card .copyright{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);text-align:center;color:var(--muted);font-size:10px}
.dark-toggle{position:absolute;top:22px;left:28px;display:grid;place-items:center;width:38px;height:38px;background:var(--card-bg);border:1px solid var(--line);border-radius:10px;color:var(--text-color);font-size:18px;cursor:pointer}
.login-page button:focus-visible,.login-page input[type=checkbox]:focus-visible{outline:3px solid #669bff;outline-offset:3px}
@media(max-width:520px){body.login-page{padding:68px 16px 24px}.login-shell{border-radius:16px}.login-brand-panel{padding:25px 22px}.login-card{padding:24px}.dark-toggle{top:17px;left:18px}.login-card .input-group input,.login-card .input-group select{font-size:16px}}
@media(prefers-reduced-motion:reduce){.login-page *{transition:none!important}}
