*{box-sizing:border-box}
body.login-page{margin:0;min-height:100vh;background:#faf9f6;color:#171717;font:14px/1.6 system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
.login-page a{color:inherit;text-underline-offset:4px}
.login-page :focus-visible{outline:2px solid #171717;outline-offset:4px}
.login-page .cyberleads-nav{display:flex;align-items:baseline;gap:10px;width:100%;max-width:780px;margin:auto;padding:30px 24px}
.login-page .cyberleads-brand{font-size:19px;font-weight:650;letter-spacing:-.7px;text-decoration:none}
.login-main{width:100%;max-width:780px;margin:64px auto 0;padding:0 24px 80px}
.login-panel{position:relative;isolation:isolate;width:100%;max-width:440px;margin:0 auto;padding:36px 28px;background:linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,255,255,.4) 48%,rgba(255,255,255,.56));border:1px solid rgba(255,255,255,.95);border-radius:24px;backdrop-filter:blur(30px) saturate(140%);-webkit-backdrop-filter:blur(30px) saturate(140%);box-shadow:0 24px 48px -25px rgba(40,44,48,.2),0 5px 14px -8px rgba(40,44,48,.1),0 0 0 1px rgba(95,105,115,.07),inset 0 1px 0 rgba(255,255,255,.85),inset 0 -1px 0 rgba(255,255,255,.45)}
.login-panel h1{margin:0 0 28px;font-size:28px;font-weight:500;line-height:1.2;letter-spacing:-.8px}
.login-field{margin-bottom:18px}
.login-field label{display:block;margin:0 0 6px;color:#777;font-size:12px}
.login-field input{display:block;width:100%;min-width:0;padding:12px 14px;border:1px solid rgba(110,110,110,.16);border-radius:6px;background:#fffefa;color:inherit;font:inherit;font-size:16px;box-shadow:inset 0 1px 3px rgba(0,0,0,.025),0 1px 0 rgba(255,255,255,.8)}
.login-field input::placeholder{color:#999}
.login-submit{display:block;width:100%;margin-top:24px;padding:12px 20px;border:0;border-radius:6px;background:#171717;color:#fff;font:500 14px/1.6 system-ui,-apple-system,sans-serif;cursor:pointer;transition:background .15s}
.login-submit:hover{background:#333}
.login-submit:disabled{opacity:.45;cursor:wait}
.login-recovery{display:block;width:fit-content;margin:22px auto 0;color:#818181!important;font-size:12px}
.login-recovery:hover{color:#171717!important}
.login-alert,#error_explanation{margin:0 0 22px;padding:12px 14px;border:1px solid #e2c9c3;border-radius:6px;background:#fff6f2;color:#814539;font-size:13px;overflow-wrap:anywhere}
#error_explanation h2{margin:0 0 8px;font-size:14px;font-weight:500}
#error_explanation ul{margin:0;padding-left:18px}
@media(max-width:560px){.login-main{margin-top:40px;padding:0 24px 48px}.login-panel{padding:26px 18px;border-radius:20px}}
