/* Private entry only. The official PNG is displayed intact at its native ratio. */
body.login-page{min-height:100vh;background:#080d1d;color:#f6f7ff;overflow-x:hidden}
.login-page .login-layout{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(410px,.84fr);min-height:100vh;max-width:none;margin:0;padding:0}
.login-page .login-story{position:relative;isolation:isolate;display:block;min-width:0;padding:0;border:0;overflow:hidden;background:radial-gradient(circle at 56% 38%,#30326f 0,#1b2449 28%,#101b35 58%,#0b1429 100%)}
.login-page .login-story:before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,#8db9ff0a,transparent 43%,#a283fc12),repeating-linear-gradient(90deg,transparent 0 79px,#b3c7ff07 80px 81px);pointer-events:none}
.login-page .login-story:after{content:'';position:absolute;inset:24px;border:1px solid #d5ddff15;border-radius:25px;pointer-events:none}
.login-page .login-story-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;min-height:100vh;padding:59px clamp(45px,6vw,105px) 36px}
.login-page .login-glow{position:absolute;z-index:0;border-radius:50%;filter:blur(2px);pointer-events:none;animation:login-drift 13s ease-in-out infinite alternate}
.login-page .login-glow-one{width:440px;height:440px;top:10%;left:-180px;background:radial-gradient(circle,#61b2e342,transparent 69%)}
.login-page .login-glow-two{width:580px;height:580px;bottom:-200px;right:-210px;background:radial-gradient(circle,#9274df50,transparent 69%);animation-delay:-6s}
.login-page .login-topline{display:flex;align-items:center;gap:10px;align-self:flex-start;color:#afbfdd;font-size:9px;letter-spacing:2.2px;font-weight:700;white-space:nowrap}
.login-page .login-topline-mark{width:8px;height:8px;border:2px solid #c7a5ff;border-radius:3px;transform:rotate(45deg)}
.login-page .login-topline-rule{width:26px;height:1px;background:#8ea1c077;margin:0 5px}
.login-page .login-logo-link{display:block;width:min(100%,580px);margin:auto auto 0;line-height:0;filter:drop-shadow(0 15px 42px #99a7dc38);animation:logo-reveal 950ms cubic-bezier(.18,.65,.24,1) both}
.login-page .login-official-logo{display:block;width:100%;height:auto;object-fit:contain}
.login-page .login-theme{display:flex;align-items:center;gap:18px;margin:-3px 0 auto;color:#dbc7ff;font-size:12px;letter-spacing:7px;font-weight:750;line-height:1.4;animation:login-rise 700ms 180ms both}
.login-page .login-theme-rule{width:47px;height:1px;background:linear-gradient(90deg,transparent,#bda7fa88)}
.login-page .login-theme-rule:last-child{transform:rotate(180deg)}
.login-page .login-story-copy{position:relative;z-index:1;align-self:flex-start;max-width:515px;margin:15px 0 0;padding:0;animation:login-rise 800ms 300ms both}
.login-page .login-eyebrow{color:#bba6fd;font-size:10px;letter-spacing:2.3px;font-weight:800}
.login-page .login-story-copy h1{margin:13px 0 8px;color:#f7f8ff;font-size:clamp(28px,3vw,43px);font-weight:690;letter-spacing:-1.2px;line-height:1.14}
.login-page .login-story-copy p{max-width:460px;margin:0;color:#b6c5e1;font-size:13px;line-height:1.75}
.login-page .login-story-bottom{align-self:stretch;display:flex;justify-content:space-between;gap:16px;border-top:1px solid #c3d2f022;margin-top:35px;padding-top:19px;color:#98aacc;font-size:9px;font-weight:650;letter-spacing:1.8px}
.login-page .login-story-bottom span:first-child{display:flex;align-items:center;gap:9px}
.login-page .login-story-bottom i{display:block;width:3px;height:3px;border-radius:50%;background:#b99cff}
.login-page .login-card-wrap{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:46px clamp(32px,5vw,100px);background:radial-gradient(circle at 78% 8%,#3a285324,transparent 40%),#090e1d}
.login-page .login-card-wrap:before{content:'';position:absolute;inset:0 0 auto;height:1px;background:#ffffff17}
.login-page .login-card{position:relative;width:100%;max-width:460px;padding:37px clamp(28px,3vw,44px) 33px;border:1px solid #8397c435;border-radius:24px;background:linear-gradient(145deg,#1b2541de,#111a31f5 58%,#121b31f2);box-shadow:0 30px 80px #01050e80,0 1px 0 #f8faff0d inset;animation:login-rise 750ms 150ms both}
.login-page .login-card:before{content:'';position:absolute;inset:0 0 auto;height:2px;border-radius:24px 24px 0 0;background:linear-gradient(90deg,transparent,#9eb8ff9e,#bba4ffbb,transparent)}
.login-page .login-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.login-page .login-card-symbol{width:48px;height:48px;display:grid;place-items:center;border:1px solid #b49cf35e;border-radius:13px;background:linear-gradient(135deg,#9e86ed31,#5e96dc17);color:#cdb6ff;box-shadow:0 7px 24px #6d54c629}
.login-page .login-card-symbol svg{width:24px;height:24px}
.login-page .login-secure-label{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #6ed6bb36;border-radius:30px;background:#52d6b40b;color:#8bdcc9;font-size:8px;letter-spacing:1.3px;font-weight:800}
.login-page .login-secure-label i{width:6px;height:6px;border-radius:50%;background:#75dec1;box-shadow:0 0 9px #75dec1aa}
.login-page .login-card-heading{margin:31px 0 27px}
.login-page .login-card-heading h2{margin:8px 0 7px;color:#f9faff;font-size:34px;font-weight:680;letter-spacing:-1px}
.login-page .login-card-heading p{max-width:360px;margin:0;color:#aebcd8;font-size:12px;line-height:1.7}
.login-page .login-card .form-field{display:block;margin:0 0 17px}
.login-page .login-card .form-field>span:first-child{display:block;margin-bottom:8px;color:#d4def2;font-size:11px;font-weight:620}
.login-page .login-card .form-field input{display:block;width:100%;height:47px;padding:11px 14px;border:1px solid #60709370;border-radius:10px;background:#0b1327;color:#f4f6ff;font-size:12px;outline:none;transition:border-color 200ms,box-shadow 200ms}
.login-page .login-card .form-field input::placeholder{color:#71819f}
.login-page .login-card .form-field input:focus{border-color:#b89cff;box-shadow:0 0 0 3px #ae90fb20}
.login-page .password-field{display:block;position:relative}
.login-page .password-field input{padding-right:75px!important}
.login-page .password-field button{position:absolute;right:8px;top:7px;min-width:52px;padding:8px 7px;border:0;border-radius:6px;background:transparent;color:#c2addf;font-size:11px}
.login-page .password-field button:hover{background:#a889fa16;color:#eee6ff}
.login-page .login-submit{display:flex;justify-content:space-between;width:100%;height:48px;margin:8px 0 0;padding:0 17px;border:1px solid #c0b2ff9c;border-radius:10px;background:linear-gradient(110deg,#765cdb,#916fe6 55%,#ad7fe4);box-shadow:0 10px 22px #664bd23b;color:white;font-size:12px;font-weight:700;transition:transform 200ms,filter 200ms,box-shadow 200ms}
.login-page .login-submit:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 14px 27px #664bd259}
.login-page .login-submit>span{font-size:18px;font-weight:400}
.login-page .form-error{display:none;margin:0 0 12px;padding:9px 11px;border:1px solid #f595a55c;border-radius:8px;background:#e3597520;color:#ffb4c1;font-size:11px}
.login-page .login-access-note{display:flex;align-items:center;gap:13px;margin:26px 0 0;padding:20px 0 0;border-top:1px solid #6c7c9a40;color:#a6b5d0;font-size:10px;line-height:1.55}
.login-page .login-access-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:8px;background:#9a81e320;color:#b89fff;font-size:22px}
.login-page .login-help{max-width:460px;margin:21px 0 0;color:#8999b6;font-size:10px;text-align:center}
@keyframes login-drift{to{transform:translate(35px,-25px) scale(1.08)}}
@keyframes logo-reveal{from{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:none}}
@keyframes login-rise{from{opacity:0;transform:translateY(17px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.login-page .login-layout{grid-template-columns:minmax(0,1fr) minmax(380px,.9fr)}.login-page .login-story-inner{padding:42px 38px 30px}.login-page .login-story-copy h1{font-size:32px}.login-page .login-card-wrap{padding:36px 26px}}
@media(max-width:760px){.login-page .login-layout{display:flex;flex-direction:column;min-height:100dvh}.login-page .login-story{flex:0 0 auto;border-bottom:1px solid #a5b6ec38}.login-page .login-story:after{inset:12px;border-radius:15px}.login-page .login-story-inner{min-height:0;padding:27px 28px 26px}.login-page .login-topline{font-size:8px;letter-spacing:1.5px}.login-page .login-logo-link{width:min(100%,370px);margin:3px auto 0}.login-page .login-theme{margin:-8px auto 0;font-size:10px;letter-spacing:5px}.login-page .login-theme-rule{width:30px}.login-page .login-story-copy,.login-page .login-story-bottom{display:none}.login-page .login-card-wrap{flex:1;padding:26px 20px 29px}.login-page .login-card{max-width:450px;padding:26px 25px 25px;border-radius:18px}.login-page .login-card-heading{margin:22px 0 22px}.login-page .login-card-heading h2{font-size:28px}.login-page .login-help{margin:17px 0 0}}
@media(max-width:390px){.login-page .login-story-inner{padding:22px 22px 20px}.login-page .login-topline{font-size:7px;letter-spacing:1.1px}.login-page .login-topline-rule{width:13px;margin:0 1px}.login-page .login-card-wrap{padding:21px 15px 25px}.login-page .login-card{padding:23px 21px}.login-page .login-logo-link{width:min(100%,330px)}}
@media(prefers-reduced-motion:reduce){.login-page .login-glow,.login-page .login-logo-link,.login-page .login-theme,.login-page .login-story-copy,.login-page .login-card{animation:none!important}}
