/* Login-only composition: account screens keep their existing styles. */
.login{
 --login-paper:oklch(0.99 0.003 15);
 --login-ink:oklch(0.25 0.035 15);
 --login-muted:oklch(0.52 0.025 15);
 --login-light:oklch(1 0 0);
 --login-soft:oklch(0.9 0.045 15);
 --login-line:oklch(1 0 0 / 22%);
 --login-red:oklch(0.54 0.215 20);
 --login-deep:oklch(0.38 0.15 15);
 --login-shadow:0 24px 38px oklch(0.2 0.08 15 / 28%);
 font-family:'Manrope',var(--font-sans);
 grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
}
.login .login-art{padding:36px 48px;gap:28px;background:linear-gradient(145deg,var(--login-red),var(--login-deep))!important;color:var(--login-light)}
.login .login-art::after{display:none}
.login .login-art .brand{align-self:flex-start}
.login .login-story{max-width:520px;margin:auto 0}
.login .login-kicker{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;color:var(--login-soft);margin-bottom:18px}
.login .login-kicker::before{content:'';width:28px;height:1px;background:currentColor}
.login .login-art h1{font:600 46px/1.12 'Manrope',var(--font-sans);letter-spacing:0;margin:0 0 18px;max-width:480px}
.login .login-art h1 span{display:block;background:none;color:var(--login-soft)}
.login .login-art p{font-size:15px;line-height:1.7;color:var(--login-soft);max-width:450px}
.login .login-card-stage{position:relative;height:176px;margin:24px 0 0;isolation:isolate}
.login .login-card-stage::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--login-line)}
.login .login-card-stage img{position:absolute;width:240px;height:150px;object-fit:contain;filter:drop-shadow(var(--login-shadow));animation:login-card-drift 7s ease-in-out infinite}
.login .login-card-stage img:first-child{left:14px;top:6px;transform:rotate(-12deg);z-index:1}
.login .login-card-stage img:last-child{left:170px;top:15px;transform:rotate(10deg);animation-delay:-3.5s;z-index:2}
.login .login-art .feat{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;font:500 11px/1.5 'Manrope',var(--font-sans);letter-spacing:0;color:var(--login-soft)}
.login .login-art .feat span{display:flex;align-items:center;gap:9px}
.login .login-art .feat span::before{content:'✓';color:var(--login-light);font-size:14px}
.login .login-form{background:var(--login-paper);padding:40px 36px;color:var(--login-ink)}
.login .login-box{width:min(400px,100%)}
.login .label,.login .divider,.login .pw button{font-family:'Manrope',var(--font-sans);letter-spacing:0}
.login .login-box>.label{font-size:11px;line-height:1.5;font-weight:600;color:var(--cyan)}
.login .login-box h2{font:700 32px/1.2 'Manrope',var(--font-sans);letter-spacing:0;margin:14px 0 10px}
.login .login-box .sub{color:var(--login-muted);line-height:1.6;margin-bottom:30px}
.login .field>.label{color:var(--login-muted);font-size:11px}
.login input[type=email],.login input[type=password]{font-family:'Manrope',var(--font-sans);background:var(--login-light);border-radius:8px;color:var(--login-ink)}
.login .btn{border-radius:8px;font-family:'Manrope',var(--font-sans)}
.login .btn-ghost{background:transparent}
.login .login-back{height:42px;padding:0 14px;margin-bottom:24px;font-size:13px;color:var(--login-muted)}
.login .login-brand-m{display:none;justify-content:center;margin:0 0 20px}
.login .login-brand-m .brand-logo{height:42px;width:auto;filter:none}
@keyframes login-card-drift{50%{translate:0 -9px}}
@media(min-width:981px) and (max-width:1190px){.login .login-art{padding:32px}.login .login-art h1{font-size:40px}.login .login-card-stage img{width:210px}.login .login-card-stage img:last-child{left:135px}}
@media(max-width:980px){.login{grid-template-columns:1fr;min-height:100vh}.login .login-art{display:none}.login .login-brand-m{display:flex}.login .login-form{padding:30px 22px 44px}}
@media(max-width:480px){.login .login-box h2{font-size:28px}.login .login-brand-m .brand-logo{height:36px}}
@media(prefers-reduced-motion:reduce){.login .login-card-stage img{animation:none}}