*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Arial,system-ui,sans-serif}.premium-login{background:#f1f5ff;color:#102c57}.premium-layout{min-height:100vh;display:grid;grid-template-columns:62.5% 37.5%}.brand-panel{background:linear-gradient(115deg,#05245a,#0c448c 78%,#114f9d);color:#fff;padding:40px 4.5vw;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.brand-top{display:flex;align-items:center;gap:18px;z-index:1}.brand-logo{background:white;border-radius:14px;padding:10px 14px;width:216px;height:96px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.08)}.brand-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform:scale(1.5)}.brand-tag{color:#ffc943;font-size:12px;font-weight:750;letter-spacing:2px}.brand-story{position:relative;z-index:1;margin-bottom:10vh;max-width:720px}.access-pill{display:inline-block;border-radius:22px;padding:8px 16px;background:#ffc52b;color:#113365;font-size:12px;font-weight:800}.brand-story h1{font-size:clamp(44px,5vw,78px);line-height:1.08;font-weight:400;margin:18px 0;color:#ffffff;text-shadow:0 4px 20px rgba(0,0,0,.18)}.brand-story h1 strong{font-weight:750;color:#ffd24c;display:inline-block}.brand-story p{font-size:19px;line-height:1.7;max-width:590px}.admin-only{margin-top:26px;border:1px solid #ffffff40;background:#ffffff15;padding:15px 18px;border-radius:12px;display:inline-block;font-size:14px;font-weight:650}.admin-only small{font-weight:400;color:#c8d8f3}.brand-deco{position:absolute;bottom:-160px;right:-10%;width:75%;height:330px;background:#ffffff14;transform:rotate(-35deg);filter:blur(2px)}.sign-panel{display:flex;flex-direction:column;padding:28px 38px;position:relative;justify-content:center;align-items:center}.sign-top{position:absolute;top:32px;left:35px;right:35px;font-size:11px;letter-spacing:1.7px;color:#6580ae;display:flex;justify-content:space-between;gap:12px}.sign-top span{letter-spacing:0}.sign-card{max-width:420px;width:100%;background:#fff;border:1px solid #dbe5fa;box-shadow:0 24px 70px #0c336116;border-radius:23px;padding:30px 30px 26px}.welcome-logo{display:flex;align-items:center;justify-content:center;background:#fff7e1;border:1px solid #f4deb0;border-radius:14px;width:68px;height:54px;padding:7px 10px;margin-bottom:9px}.welcome-logo img{max-width:100%;max-height:100%;object-fit:contain}.welcome-small{font-size:10px;letter-spacing:1.3px;color:#7290b8}.sign-card h2{font-size:29px;font-weight:500;margin:5px 0 8px;color:#0c3270}.intro{font-size:14px;color:#607ca8;line-height:1.5;margin:0 0 22px}.sign-card label{display:block;font-size:12px;color:#244675;margin:14px 0 7px}.sign-card input{display:block;width:100%;min-height:45px;background:#e8f0ff;border:1px solid #ccdbf7;border-radius:10px;padding:12px;color:#163464;outline:none}.sign-card input:focus{border-color:#3986e6;box-shadow:0 0 0 3px #3986e622}.label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.password-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.show-toggle{display:inline-flex!important;align-items:center;gap:5px;margin:0!important;font-size:12px!important;color:#49678f;cursor:pointer}.show-toggle input{width:auto!important;min-height:auto!important;margin:0!important;accent-color:#0c448c;box-shadow:none!important}.label-row a{font-size:12px;color:#9f700b;text-decoration:none}.password-wrap{position:relative}.sign-card button{margin-top:16px;width:100%;background:#e8b22d;color:#0b3267;font-weight:750;border:0;border-radius:11px;padding:13px;cursor:pointer}.sign-card button:hover{background:#f7c94d}.login-note{text-align:center;font-size:11px;color:#8193b0;margin:18px 0 0}.copyright{font-size:11px;color:#7d8ba6;margin-top:24px;text-align:center}.auth-message{padding:12px;border-radius:9px;font-size:13px}.auth-message.success{background:#e3f7ea;color:#126b43}.auth-message.error{background:#fee8e8;color:#9b2830}@media(max-width:850px){.premium-layout{display:flex;flex-direction:column}.brand-panel{min-height:180px;padding:20px}.brand-story{margin:15px 0 0}.brand-story h1{font-size:28px;margin:10px 0}.brand-story p,.admin-only,.brand-deco{display:none}.brand-logo{height:72px;width:165px}.brand-tag{font-size:10px}.sign-panel{flex:1;padding:65px 16px 30px}.sign-top{top:18px;left:20px;right:20px}.sign-card{padding:24px 19px}}
/* 4.3.42: Accessible show/hide password eye, field-aligned */
.premium-login .sign-card .password-wrap{position:relative;width:100%}.premium-login .sign-card .password-wrap input{padding-right:54px}.premium-login .sign-card .password-wrap .password-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:38px;height:36px;min-width:38px;padding:0;margin:0;border:0;border-radius:8px;box-shadow:none;background:transparent;color:#526e99;cursor:pointer}.premium-login .sign-card .password-eye:hover{background:#dce8fb;color:#073873}.premium-login .sign-card .password-eye:focus-visible{outline:2px solid #2672d2;outline-offset:1px}.premium-login .sign-card .password-eye .eye-closed{display:none}.premium-login .sign-card .password-eye[aria-pressed="true"] .eye-open{display:none}.premium-login .sign-card .password-eye[aria-pressed="true"] .eye-closed{display:block}
