*{box-sizing:border-box}body{margin:0;font:14px/1.55 Inter,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}[hidden]{display:none!important}
/* Per-domain local login, following references/Bảng đăng nhập quản trị DTWAF.png. */
body.auth-screen{color-scheme:light;--accent:#008c86;--accent-deep:#006b73;--accent-pale:#90dace;background:#edf6fc;color:#112c44}
body[data-login-profile=factory]{--accent:#008d91;--accent-deep:#00617c;--accent-pale:#98dbd3}
body[data-login-profile=staging]{--accent:#147c91;--accent-deep:#15516f;--accent-pale:#a9d9e5}
body[data-login-profile=registry]{--accent:#087c79;--accent-deep:#07556b;--accent-pale:#9bd7c8}
.auth-screen .shell{display:block;min-height:100svh;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 76% 40%,#cce4f0aa,transparent 55%),linear-gradient(125deg,#f5f9fd,#dfedf6)}
.auth-screen .shell::before,.auth-screen .shell::after{content:'';position:absolute;pointer-events:none;z-index:-1;width:145%;left:-22%;bottom:-16vh;height:40vh;border-radius:45% 70% 0 0;transform:rotate(-7deg);background:linear-gradient(90deg,var(--accent-pale),#c8ebe6 55%,var(--accent-pale))}
.auth-screen .shell::after{bottom:-23vh;left:-10%;transform:rotate(5deg);height:43vh;background:linear-gradient(120deg,var(--accent),var(--accent-deep));box-shadow:0 -12px 0 #6bc6c955}
.auth-screen .shell>aside,.auth-screen main>header,.auth-screen section>:not(#login){display:none!important}
.auth-screen main{min-height:100svh;display:grid;place-items:center;padding:40px 20px}
.auth-screen section{padding:0;margin:0;width:100%;max-width:440px}
#login.auth-card{max-width:none;margin:0;display:block;overflow:hidden;background:#ffffffeb;border:1px solid #fff;border-radius:20px;box-shadow:0 16px 50px #244d6c18;min-width:0;backdrop-filter:blur(12px)}
.auth-fields{min-width:0;padding:32px 36px 24px;text-align:left}
.auth-logo{display:flex;align-items:center;justify-content:center;gap:10px;font-size:27px;font-weight:800;letter-spacing:.3px;color:#102c47;margin-bottom:20px}
.auth-logo svg{width:35px;height:39px;fill:none;stroke:var(--accent);stroke-width:3.3;stroke-linecap:round;stroke-linejoin:round}
.auth-product{display:none}
.auth-fields h2{font-size:31px;line-height:1.25;letter-spacing:-.7px;color:#101e35;margin:0 0 7px;text-align:center}
.auth-fields .auth-description{font-size:16px;color:#40566c;margin:0 0 17px;text-align:center;line-height:1.5}
.auth-domain{display:flex;gap:7px;align-items:center;justify-content:center;font-size:11px;color:#70899b;margin-bottom:23px;overflow-wrap:anywhere}
.auth-dot{width:5px;height:5px;background:var(--accent);border-radius:50%;flex-shrink:0}
.auth-fields label{display:block;font-size:12px;font-weight:600;color:#294459;margin:17px 0 7px}
.auth-fields input{width:100%;height:46px;background:#ffffffb8;border:1px solid #aebfd0;color:#183348;padding:12px 13px;border-radius:7px;font-size:13px}
.auth-fields input::placeholder{color:#93a3b3}
.auth-fields input:focus-visible,.auth-fields button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.auth-password-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:17px}
.auth-password-label label{margin:0 0 7px}.auth-password-label>span{display:none}
.auth-password{position:relative}.auth-password input{padding-right:62px}
.auth-password #toggle-password{position:absolute;right:5px;top:5px;margin:0;border:0;background:transparent;color:#486780;font-size:11px;padding:9px;min-height:35px}
.auth-fields .auth-help{font-size:11px;color:#6d8294;margin:7px 0}
.auth-fields .auth-status{min-height:26px;margin:12px 0 5px;font-size:11px;line-height:1.5;color:#97632b}
.auth-fields .auth-submit{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;padding:13px 16px;margin-top:0;background:linear-gradient(100deg,var(--accent),var(--accent-deep));border:0;color:#fff;font-size:16px;font-weight:700;min-height:46px;border-radius:7px;box-shadow:0 4px 10px #008d8815}
.auth-fields .auth-submit:hover{filter:brightness(.95)}.auth-fields .auth-submit:disabled{opacity:.55;cursor:wait}
.auth-fields .auth-contact{font-size:13px;text-align:center;margin:17px 0 12px;color:#294e69}
.auth-session-note{border-top:1px solid #dfe9ef;padding-top:12px;color:#718a9c;text-align:center;font-size:10px;line-height:1.6}
.enrollment-screen .shell{display:block}.enrollment-screen .shell>aside,.enrollment-screen main>header{display:none!important}.enrollment-screen main{max-width:760px;margin:auto}.enrollment-screen #admin,.enrollment-screen #factory-root,.enrollment-screen #protection-root{display:none!important}
@media(max-width:520px){.auth-screen main{padding:24px 16px}.auth-fields{padding:27px 24px 21px}.auth-fields h2{font-size:28px}.auth-logo{font-size:25px}.auth-fields .auth-description{font-size:15px}}
