.login-page{padding:0;min-height:100vh;min-height:100svh;background:radial-gradient(ellipse at 50% 10%,#714a12 0,#30210b 45%,#1b160e 100%)}
.login-main{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:100px 22px calc(50px + env(safe-area-inset-bottom,0px))}
.login-card{width:100%;max-width:390px;text-align:center;padding:36px 28px 28px;border:1px solid #e5bd6240;border-radius:20px;background:#221b10e8;box-shadow:0 18px 70px #0003}
.login-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 24px;color:#ffe174;background:#ba84231a;border:1px solid #d4a54150;border-radius:18px}
.login-icon svg{width:32px;height:32px}
.login-card h1{font-size:27px;letter-spacing:-.5px;margin:0 0 14px;color:#fff5d6}
#login-status{font-size:15px;line-height:1.7;color:#f1e0bb;margin:0}
.login-hint{color:#b8a889;font-size:13px;line-height:1.7;margin:16px 0 24px;overflow-wrap:anywhere}
.login-continue{width:100%;font-size:15px}
.login-back{display:inline-block;color:#dfc88d;font-size:13px;padding:12px;margin-top:20px;text-decoration:none}
.login-back:hover{text-decoration:underline}
.login-spinner{width:26px;height:26px;border:2px solid #80632c;border-top-color:#ffe174;border-radius:50%;margin:22px auto 0;animation:login-spin .8s linear infinite}
[hidden]{display:none!important}
@keyframes login-spin{to{transform:rotate(360deg)}}
@media(max-width:360px){.login-card{padding:30px 18px 22px}.login-main{padding-left:16px;padding-right:16px}}
@media(prefers-reduced-motion:reduce){.login-spinner{animation:none}}
