/* Mobile-first authentication, scoped independently from dashboard controls. */
.auth-screen{background:#fafbf6;padding-bottom:env(safe-area-inset-bottom,0px)}
.auth-screen header{padding:22px 24px 18px}
.auth-screen .brand{font-size:32px}
.auth-brand-note{font-size:12px;font-weight:500;line-height:1.45;text-align:right;color:#66735f}
.auth-brand-note span{display:block}
.welcome-art{position:relative;isolation:isolate;height:214px;margin:0 16px;overflow:hidden;border-radius:26px;background:#e9f1d7}
.welcome-circle{position:absolute;width:252px;height:252px;top:24px;right:-59px;border-radius:50%;background:#d2e8a3;box-shadow:0 0 0 18px #f5f9e64d}
.welcome-copy{position:relative;z-index:2;padding:25px 0 0 21px;width:53%}
.auth-screen .welcome-kicker{display:block;font-size:10px;letter-spacing:1.25px;font-weight:700;color:#59713e}
.welcome-copy p{margin-top:13px;font-family:Manrope,sans-serif;font-size:30px;line-height:1.19;letter-spacing:-1.3px;font-weight:800}
.welcome-copy em{font-style:normal;color:#557336}
.welcome-person{position:absolute;z-index:1;width:242px;height:242px;object-fit:contain;max-width:none;right:-32px;bottom:-24px}
.welcome-sticker{position:absolute;z-index:3;right:13px;bottom:13px;display:flex;align-items:center;gap:5px;padding:5px 10px 5px 4px;border-radius:30px;background:#fffef3f5;font-size:10px;font-weight:700;box-shadow:0 4px 16px #354b3214;transform:rotate(-5deg)}
.welcome-sticker img{width:28px;height:28px;object-fit:contain}
.welcome-spark{position:absolute;z-index:2;font-size:29px;color:#58723e;right:13px;top:12px}
.auth-screen .auth-form{padding:25px 24px 20px}
.auth-greeting{font-size:10px;letter-spacing:1.6px;font-weight:700;color:#63764f}
.auth-intro{scroll-margin-top:20px}
.auth-intro h1{font-size:29px;line-height:1.3;letter-spacing:-1px;margin:7px 0 8px}
.auth-intro h1 span{font-size:26px;display:inline-block;margin-left:3px}
.auth-intro p{font-size:15px;line-height:1.6;color:#65715e}
.auth-screen .auth-form form{margin-top:23px}
.auth-screen label{font-size:14px;font-weight:700}
.auth-screen .input-wrap{height:56px;border-radius:15px;border-color:#dce2d2;gap:11px;padding:0 15px;margin:9px 0 18px}
.auth-screen .input-wrap input{font-size:16px;height:100%}
.auth-screen .input-wrap input::placeholder{color:#808a78}
.auth-screen .input-wrap>.icon{width:20px;height:20px;color:#788b67}
.auth-screen .input-wrap:focus-within{border-color:#708e3f;box-shadow:0 0 0 3px #c8e89866}
.auth-screen .eye{display:grid;place-items:center;min-width:44px;min-height:48px;margin-right:-10px;color:#69785d}
.auth-screen .eye .icon{width:21px;height:21px}
.auth-screen .auth-submit{min-height:56px;border-radius:15px;font-size:16px;gap:13px;background:#d4f477;box-shadow:0 4px 0 #b9d661;margin-top:6px}
.auth-screen .auth-submit:hover{background:#c9ed67}
.auth-screen .auth-submit:active{transform:translateY(2px);box-shadow:0 2px 0 #b9d661}
.auth-screen .auth-submit .icon{width:21px;height:21px}
.auth-screen .error{font-size:14px}
.auth-screen .auth-form .auth-switch{font-size:14px;color:#64705c;margin:18px 0 14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px}
.auth-screen .auth-switch button{display:inline-flex;align-items:center;gap:5px;font-size:14px;min-height:44px;padding:0 5px}
.auth-screen .auth-switch .icon{width:16px;height:16px}
.auth-screen .auth-bottom{justify-content:center;gap:7px;padding-top:17px;line-height:1.5}
.auth-screen .auth-bottom span{font-size:12px;color:#738066}
.auth-screen .auth-bottom .icon{width:15px;height:15px;color:#738066}
@media(max-width:360px){
 .auth-screen header{padding-inline:20px}
 .auth-screen .auth-form{padding-inline:20px}
 .welcome-art{margin-inline:12px;height:194px}
 .welcome-copy{padding-left:17px;padding-top:23px}
 .welcome-copy p{font-size:26px}
 .auth-screen .welcome-kicker{font-size:9px;letter-spacing:1px}
 .welcome-person{width:211px;height:211px;right:-38px;bottom:-14px}
 .welcome-sticker{right:9px;bottom:10px;font-size:9px}
 .auth-intro h1{font-size:27px}
}
