/* GreenPro Auth UI — compact mobile-first, responsive, no page scrolling */
:root{--gp-purple:#7a18b8;--gp-purple2:#4f0a82;--gp-accent:#d22c91;--gp-ink:#171b20;--gp-muted:#9da4aa;--gp-field:#f1f3f5}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;overflow:hidden;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--gp-ink);background:#170b20}
body{min-height:100dvh}
.auth-bg{width:100%;height:100dvh;display:flex;align-items:center;justify-content:center;padding:10px;background:radial-gradient(circle at 50% 4%,rgba(255,255,255,.14),transparent 28%),linear-gradient(135deg,#160a1d,#4f0a82 55%,#1e0b2a)}
.auth-device{width:min(100%,430px);height:min(920px,calc(100dvh - 20px));background:#fff;border-radius:42px;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.42);display:flex;flex-direction:column}
.auth-hero{height:clamp(155px,27dvh,265px);flex:0 0 auto;background:var(--gp-purple);position:relative;overflow:hidden}
.auth-hero img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center}
.auth-hero-fallback{width:100%;height:100%;background:radial-gradient(circle at 70% 25%,rgba(255,255,255,.2),transparent 12%),linear-gradient(150deg,var(--gp-purple2),var(--gp-purple) 55%,var(--gp-accent))}
.auth-panel{position:relative;z-index:2;flex:1;min-height:0;background:#fff;border-radius:38px 38px 0 0;margin-top:-1px;padding:0 clamp(18px,5vw,28px) 14px;display:flex;flex-direction:column}
.auth-logo-wrap{width:clamp(76px,19vw,96px);height:clamp(76px,19vw,96px);flex:0 0 auto;margin:clamp(-48px,-11vw,-38px) auto 7px;z-index:5;border-radius:50%;background:#fff;padding:6px;box-shadow:0 7px 24px rgba(0,0,0,.18)}
.auth-logo{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--gp-purple);border:2px solid #eee}
.auth-logo img{width:100%;height:100%;object-fit:cover}
.auth-logo-text{color:#fff;font-weight:950;font-size:22px;letter-spacing:-1px}
.auth-tabs{height:44px;display:flex;justify-content:center;align-items:flex-start;gap:clamp(48px,14vw,72px);margin:0 0 8px;flex:0 0 auto}
.auth-tab{border:0;background:transparent;font-size:20px;line-height:30px;font-weight:850;color:#a6adb1;padding:0 0 8px;position:relative;text-decoration:none}
.auth-tab.active{color:#171c20}
.auth-tab.active:after{content:"";position:absolute;left:7px;right:7px;bottom:0;height:4px;border-radius:99px;background:var(--gp-purple)}
.auth-hint{display:flex;align-items:flex-start;gap:6px;color:#7a18b8;background:#f7effc;border:1px solid rgba(122,24,184,.10);border-radius:10px;padding:6px 10px;font-size:10px;font-weight:700;margin:-2px 0 7px}.auth-alert{border:0;border-radius:12px;background:#fff0f0;color:#9d2a2a;padding:7px 10px;font-size:11px;font-weight:700;margin:0 0 8px;flex:0 0 auto}
.auth-form-scroll{min-height:0;flex:1;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain;scrollbar-width:none}.auth-form-scroll::-webkit-scrollbar{display:none}
.auth-form-scroll form{margin:0}
.auth-field{height:clamp(47px,6.4dvh,58px);border:0;background:var(--gp-field);border-radius:30px;display:flex;align-items:center;padding:0 15px;margin-bottom:8px;flex:0 0 auto}
.auth-field:focus-within{box-shadow:0 0 0 3px rgba(122,24,184,.12)}
.auth-field .ico{width:29px;flex:0 0 29px;font-size:17px;color:#9ba2a7}
.auth-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:14px;color:#202629;padding:0}
.auth-field input::placeholder{color:#a2a8ac}
.auth-prefix{font-size:16px;font-weight:850;color:#7a18b8;padding-right:10px;border-right:2px solid #d8dcde;margin-right:10px;flex:0 0 auto}
.eye{border:0;background:transparent;color:#9aa2a6;font-size:20px;padding:3px 0 3px 8px;line-height:1}
.auth-check{display:flex;justify-content:flex-start;align-items:center;margin:0 3px 8px;font-size:12px;height:22px}
.auth-check label{display:flex;align-items:center;gap:7px;font-weight:600}
.auth-check input{width:17px;height:17px;accent-color:var(--gp-purple);margin:0}
.auth-btn{width:100%;height:clamp(48px,6.8dvh,58px);border:0;border-radius:30px;background:linear-gradient(180deg,var(--gp-purple),var(--gp-accent));color:#fff;font-size:17px;font-weight:950;letter-spacing:.05em;box-shadow:0 12px 24px rgba(122,24,184,.22);margin-top:1px}
.auth-btn:active{transform:translateY(1px)}
.auth-bottom{text-align:center;margin-top:8px;color:#7e8589;font-size:12px;line-height:20px;flex:0 0 auto}
.auth-bottom a{color:#6f169f;font-weight:900;text-decoration:none}
@media(max-width:560px){
 .auth-hint{font-size:9.5px;padding:5px 9px;margin-bottom:6px}
 .auth-bg{padding:0;align-items:stretch;background:#180c20}
 .auth-device{width:100%;height:100dvh;min-height:0;border-radius:0;box-shadow:none}
 .auth-hero{height:clamp(130px,23dvh,220px)}
 .auth-panel{border-radius:34px 34px 0 0;padding-left:18px;padding-right:18px;padding-bottom:8px}
 .auth-logo-wrap{width:84px;height:84px;margin-top:-42px;margin-bottom:5px}
 .auth-tabs{height:39px;gap:58px;margin-bottom:6px}
 .auth-tab{font-size:18px;line-height:27px;padding-bottom:7px}
 .auth-field{height:clamp(44px,6.5dvh,54px);margin-bottom:7px;padding:0 13px}
 .auth-field input{font-size:13px}
 .auth-prefix{font-size:15px;padding-right:8px;margin-right:8px}
 .auth-field .ico{width:27px;flex-basis:27px;font-size:16px}
 .eye{font-size:19px}
 .auth-check{margin-bottom:6px}
 .auth-btn{height:clamp(46px,6.5dvh,54px);font-size:16px}
 .auth-bottom{font-size:11px;margin-top:6px}
}
@media(max-width:560px) and (max-height:700px){
 .auth-hero{height:150px}
 .auth-logo-wrap{width:72px;height:72px;margin-top:-36px}
 .auth-tabs{height:35px}
 .auth-tab{font-size:17px}
 .auth-field{height:43px;margin-bottom:5px}
 .auth-btn{height:45px}
 .auth-bottom{margin-top:4px;line-height:17px}
}
@media(max-width:560px) and (max-height:620px){
 .auth-hero{height:108px}
 .auth-panel{padding-left:14px;padding-right:14px}
 .auth-logo-wrap{width:60px;height:60px;margin-top:-30px;padding:4px;margin-bottom:2px}
 .auth-tabs{height:31px;gap:45px;margin-bottom:4px}
 .auth-tab{font-size:16px;line-height:23px;padding-bottom:5px}
 .auth-field{height:37px;margin-bottom:4px;padding:0 11px}
 .auth-field input{font-size:12px}
 .auth-prefix{font-size:14px}
 .auth-field .ico{width:24px;flex-basis:24px;font-size:14px}
 .eye{font-size:17px}
 .auth-check{height:18px;font-size:11px;margin-bottom:4px}
 .auth-check input{width:15px;height:15px}
 .auth-btn{height:40px;font-size:14px}
 .auth-bottom{font-size:10px;line-height:15px;margin-top:2px}
}
@media(min-width:561px) and (max-height:760px){
 .auth-device{height:calc(100dvh - 12px)}
 .auth-hero{height:185px}
 .auth-logo-wrap{width:76px;height:76px;margin-top:-38px}
 .auth-tabs{height:39px}
 .auth-field{height:47px;margin-bottom:6px}
 .auth-btn{height:49px}
}
