/* Loaded only by login.html; all cabinet screens keep their original styles. */
body[data-theme]{padding-bottom:0;background:#16123f}
.page.page-login{width:100%;padding:40px 24px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at 12% 10%,rgba(131,69,218,.35),transparent 60%),linear-gradient(120deg,rgba(19,15,57,.84),rgba(27,23,74,.88)),url('../img/magic-ui/library-bg-desktop.png') center/cover}
.page-login .flash-stack{width:min(1100px,100%);flex-shrink:0}
.page-login .login-shell{width:min(1100px,100%);max-width:1100px;padding:0;gap:0;grid-template-columns:1.08fr 1fr;align-items:stretch;border:1px solid #ffffff40;border-radius:32px;overflow:hidden;box-shadow:0 32px 90px #08051c66;background:#fff}
.page-login .login-hero{position:relative;isolation:isolate;min-width:0;min-height:660px;padding:0;background:#49337a;overflow:hidden}
.login-sparrow{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%;z-index:-2}
.page-login .login-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(32,13,75,.88),rgba(42,22,90,.6) 26%,transparent 47%,transparent 80%,rgba(20,13,59,.85))}
.login-hero-copy{padding:30px 34px}
.login-library{display:flex;align-items:center;gap:12px;margin-bottom:26px}
.page-login .login-logo{flex:0 0 44px;width:44px;height:44px;margin:0;border:1px solid #ffffff66;border-radius:14px;background:#ffffff18;color:#ffdb8c;font-size:28px;box-shadow:none}
.page-login .login-library p{font-size:15px;font-weight:650;line-height:1.4;margin:0;color:#fff}
.login-library small{display:block;font-size:12px;font-weight:400;opacity:.8;margin-top:3px}
.page-login .login-hero h1{font-size:clamp(30px,3.2vw,42px);line-height:1.08;color:#fff;margin:0 0 12px;letter-spacing:-.035em}
.page-login .login-caption{font-size:15px;color:#eee4ff;margin:0}
.page-login .login-points{position:absolute;bottom:24px;left:30px;right:20px;gap:7px}
.page-login .login-points span{font-size:11px;color:#fff;border:1px solid #ffffff40;background:#25164e99;padding:8px 11px}
.page-login .login-card{--text:#27203f;--muted:#746d85;--primary:#7139da;min-width:0;align-content:center;gap:21px;border-radius:0;padding:46px 42px;background:linear-gradient(145deg,#fff,#faf8ff);box-shadow:none;color:#27203f}
.page-login .login-card .eyebrow{font-size:11px;letter-spacing:.13em;color:#7648c2;margin-bottom:12px}
.page-login .login-card h2{font-size:32px;line-height:1.15;margin:0 0 12px;color:#27203f}
.page-login .login-card .muted{font-size:15px;line-height:1.6;margin-bottom:6px;color:#746d85}
.page-login .login-card label{font-size:13px;color:#342d49}
.page-login .login-card input:not([type="checkbox"]){min-width:0;max-width:100%;min-height:54px;background:#fff;border-color:#ded7eb;border-radius:13px;font-size:16px;color:#27203f}
.page-login .login-card input:focus{border-color:#9765eb;box-shadow:0 0 0 4px #eee6fc}
.page-login .login-card .remember-login{gap:12px}
.page-login .login-card .remember-login strong{color:#39304d}
.page-login .login-card .remember-login small{color:#756b84;line-height:1.5}
.page-login .login-card .button-primary{min-height:54px;border-radius:14px;background:linear-gradient(105deg,#843fe4,#6231ca);box-shadow:0 8px 20px #7439d62b;color:#fff}
.page-login .login-card .button-primary:hover{background:linear-gradient(105deg,#7331cf,#5125b1)}
.page-login .login-card .button-primary:focus-visible{outline:3px solid #ae8fe4;outline-offset:4px}
.page-login .privacy-note{margin:0;text-align:center;font-size:11px;line-height:1.6;color:#81778f}
.page-login+.footer{display:block;background:#16123f;color:#bdb3d3;padding:16px 20px;font-size:11px}
@media(min-width:1600px){.page-login .login-shell{width:min(1240px,100%);max-width:1240px}.page-login .login-hero{min-height:730px}.page-login .login-card{padding:60px}}
@media(max-width:850px){.page.page-login{padding:24px 16px}.page-login .login-shell{max-width:560px;grid-template-columns:1fr;border-radius:26px}.page-login .login-hero{min-height:260px}.login-sparrow{left:auto;width:245px;object-position:center 62%}.page-login .login-hero:after{background:linear-gradient(90deg,#392368 5%,rgba(57,35,104,.92) 35%,transparent 72%)}.login-hero-copy{padding:24px;width:76%}.login-library{margin-bottom:25px;gap:8px}.page-login .login-library p{font-size:12px}.login-library small{font-size:10px}.page-login .login-logo{width:32px;height:32px;flex-basis:32px;border-radius:10px;font-size:21px}.page-login .login-hero h1{font-size:29px;max-width:270px}.page-login .login-caption{font-size:12px;max-width:160px;line-height:1.5}.page-login .login-points{display:none}.page-login .login-card{padding:30px;gap:19px}}
@media(max-width:420px){.page.page-login{padding:12px 10px}.page-login .login-shell{border-radius:22px}.page-login .login-hero{min-height:230px}.login-sparrow{width:195px}.login-hero-copy{padding:20px 16px;width:85%}.page-login .login-library p{font-size:11px}.page-login .login-hero h1{font-size:25px;max-width:205px}.login-library{margin-bottom:24px}.page-login .login-card{padding:26px 20px;gap:18px}.page-login .login-card h2{font-size:28px}.page-login .login-card .muted{font-size:14px}.page-login .login-card .eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){.page-login .button{transition:none;transform:none}}
