body.premium-login{margin:0;min-height:100vh;background:#edf3ef;color:#18333e}
.login-layout{min-height:100vh;display:grid;grid-template-columns:1.08fr 1fr;padding:22px;gap:22px}
.login-story{position:relative;overflow:hidden;padding:42px clamp(30px,5vw,80px);border-radius:28px;background:radial-gradient(ellipse at 100% 80%,#1d776b88,transparent 55%),linear-gradient(145deg,#172d40,#0c3538);color:#fff;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 8px 0 #d1ddd7,0 20px 40px #173c3b15}
.login-story:before,.login-story:after{content:'';position:absolute;width:450px;height:450px;right:-220px;bottom:-180px;border:1px solid #c4dfcc25;border-radius:50%;pointer-events:none}
.login-story:after{width:550px;height:550px;right:-270px;bottom:-230px}
.login-brand{display:flex;align-items:center;gap:13px;color:#fff;font-weight:600;font-size:.95rem}
.login-brand img{width:52px;height:52px;object-fit:contain;padding:6px;background:#fff;border-radius:13px;box-shadow:0 4px 0 #0003}
.login-brand small{display:block;color:#9ebebd;font-size:.63rem;letter-spacing:.15em;font-weight:500;margin-top:4px}
.login-story-copy{padding:60px 0 38px;position:relative;z-index:1}
body .login-story h1{font-size:clamp(2.4rem,4.3vw,4.8rem);line-height:1.08;color:white;font-weight:700;letter-spacing:-.065em;margin:18px 0 22px}
.login-story h1 em{color:#dfc593;font-style:normal}
.login-story-copy>p{color:#b6cccd;font-size:.95rem;line-height:1.9;max-width:400px}
.login-preview{margin-top:36px;background:linear-gradient(120deg,#ffffff16,#ffffff06);border:1px solid #ffffff25;padding:23px;border-radius:19px;box-shadow:0 7px 0 #061e2666,0 25px 35px #0002;transform:perspective(800px) rotateY(-7deg) rotateX(4deg);max-width:420px}
.login-preview-top{display:flex;justify-content:space-between;font-size:.75rem;color:#dce8e4;margin-bottom:23px}
.login-preview-top span:last-child{color:#e3c58f;font-size:.6rem;letter-spacing:.1em}
.login-feature{display:flex;align-items:center;gap:13px;margin-top:16px;font-size:.8rem;color:#c9ded8}
.login-feature b{display:grid;place-items:center;border:1px solid #ffffff20;border-radius:11px;width:34px;height:34px;color:#ead2a6;background:#ffffff0a;box-shadow:0 3px 0 #0002}
.login-story-footer{display:flex;justify-content:space-between;gap:15px;color:#8eb2ac;font-size:.65rem;letter-spacing:.04em;position:relative;z-index:1}
.login-main{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px clamp(20px,5vw,80px);position:relative}
.login-switch{position:absolute;right:25px;top:20px;color:#526c6b;font-size:.75rem;padding:10px 16px;border:1px solid #cfddd5;border-radius:30px;background:#ffffff80}
.login-form-wrap{width:100%;max-width:410px;margin:75px 0 45px}
.login-badge{display:inline-flex;gap:8px;align-items:center;background:#e0ebe5;color:#34675e;border:1px solid #ccddd3;border-radius:30px;padding:8px 13px;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.login-badge:before{content:'';width:6px;height:6px;background:#087f75;border-radius:50%;box-shadow:0 0 0 3px #087f7514}
body .login-form-wrap h2{font-size:2.3rem;font-weight:700;letter-spacing:-.055em;margin:23px 0 10px}
.login-intro{font-size:.88rem;color:#6a7d7c;line-height:1.8;margin-bottom:32px}
.login-form-wrap label{font-size:.77rem;font-weight:600;display:block;margin-bottom:9px}
.login-input{margin-bottom:22px;position:relative}
body.premium-login .form-control{min-height:55px;padding:14px 16px;border-radius:13px!important;background:#ffffffba!important;box-shadow:inset 0 2px 4px #173c3b08,0 4px 0 #dce6de!important}
.login-password .form-control{padding-right:65px}
.login-password-toggle{position:absolute;right:9px;top:9px;border:0;background:#e6eee9;color:#3f675f;border-radius:8px;padding:9px;font-size:.68rem;cursor:pointer}
.login-remember{display:flex;align-items:center;gap:9px;margin:24px 0;color:#617671;font-size:.77rem}
.login-remember input{accent-color:#087f75;width:16px;height:16px}
.login-remember label{margin:0;font-weight:400}
body .login-submit{width:100%;min-height:54px;background:linear-gradient(120deg,#188d80,#075e58)!important;color:#fff!important;border:1px solid #096b61;border-radius:13px!important;box-shadow:0 5px 0 #044c46,0 13px 23px #087f752a!important;font-weight:600;font-size:.86rem;display:flex;align-items:center;justify-content:space-between;padding:15px 20px;margin:24px 0}
.login-help{border-top:1px solid #d5e1d9;margin-top:32px;padding-top:22px;color:#6b8079;font-size:.77rem;line-height:1.9}
.login-help a{color:#0b7267;font-weight:600}
.login-note{text-align:center;font-size:.69rem;line-height:1.8;color:#7a8b83;max-width:360px}
.login-otp-symbol{display:grid;place-items:center;width:58px;height:58px;margin:24px 0 0;color:#0b7565;font-size:1.65rem;background:linear-gradient(135deg,#f8fcf9,#dceee3);border:1px solid #bfd8c9;border-radius:17px;box-shadow:0 4px 0 #ccdcd1,0 10px 18px #183c3910}
body.premium-login .form-control.login-otp-input{height:76px;font-size:1.8rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.45em;text-align:center;padding:15px 10px 15px calc(10px + .45em);color:#174c43!important;background:linear-gradient(145deg,#fff,#f6faf7)!important;border-color:#c0d6c8!important}
.login-otp-input::placeholder{color:#becfc4;opacity:1}
.login-otp-hint{font-size:.68rem;color:#71877a;line-height:1.7;margin-top:-5px;margin-bottom:26px}
.login-otp-error{padding:13px 15px;background:#faebee;color:#9b3c52;border:1px solid #edcdd5;border-radius:11px;font-size:.77rem;line-height:1.7;margin-bottom:22px}
@media(max-width:991px){.login-layout{grid-template-columns:.9fr 1fr;padding:14px;gap:0}.login-story{padding:30px}.login-main{padding:30px}.login-preview{transform:none}.login-story h1{font-size:3rem!important}.login-story-footer{display:block}.login-story-footer span{display:block;margin-top:8px}}
@media(max-width:767px){.login-layout{display:block;padding:0}.login-story{border-radius:0;padding:24px;box-shadow:none}.login-story-copy{padding:25px 0 0}.login-story h1{font-size:2.4rem!important;margin:10px 0 0}.login-story-copy>p,.login-preview,.login-story-footer{display:none}.login-story .premium-eyebrow{display:none}.login-brand img{width:42px;height:42px}.login-main{padding:25px}.login-switch{position:static;align-self:flex-end}.login-form-wrap{margin:25px 0}.login-form-wrap h2{font-size:2rem!important}.login-note{margin-bottom:15px}}
