*{box-sizing:border-box}
:root{color-scheme:light}
body{margin:0;min-height:100svh;display:flex;flex-direction:column;font:15px/1.5 'Segoe UI',Arial,sans-serif;color:#17382e;background:linear-gradient(to right,#112f2b 40%,#f6f7f3 40%)}
button,input{font:inherit}a{color:#166b53;text-underline-offset:3px}
.login-layout{flex:1;display:grid;grid-template-columns:40% 60%}
.identity{display:flex;align-items:stretch;background:#112f2b;color:#e9f1d7;padding:48px clamp(32px,5vw,80px)}
.identity-content{max-width:380px;display:flex;flex-direction:column;gap:48px}.brand{display:flex;align-items:center;gap:16px;font-size:30px;font-weight:650;letter-spacing:-.7px}.brand img{display:block;width:72px;height:72px;flex-shrink:0}
.story-copy{margin:auto 0}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;margin:0 0 24px}.story-copy h2{font-size:clamp(28px,3.2vw,46px);line-height:1.16;font-weight:500;letter-spacing:-1.5px;margin:0 0 24px}.story-copy h2 span{display:block}.story-description{max-width:310px;color:#b5c8ba;font-size:15px;line-height:1.8;margin:0}
.entry{display:flex;align-items:center;justify-content:center;padding:48px 32px}.entry-content{width:100%;max-width:380px}
h1{font-size:32px;font-weight:600;letter-spacing:-.8px;line-height:1.25;margin:0 0 28px}
#login-description{margin:-12px 0 24px;color:#617268;font-size:14px}#login-description:empty{display:none}
form{display:flex;flex-direction:column;gap:20px}label{display:grid;gap:8px;font-size:13px;font-weight:600;line-height:20px}
input{width:100%;min-width:0;min-height:48px;padding:12px 14px;border:1px solid #bdcdc2;background:#fff;border-radius:6px;color:#17382e;font-size:16px}
input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid #41816b;outline-offset:3px}
.password-field{position:relative;display:block}.password-field input{padding-right:76px}
.password-toggle{position:absolute;right:4px;top:4px;bottom:4px;min-width:60px;padding:0 9px;border:0;border-radius:4px;background:transparent;color:#166b53;font-size:13px;font-weight:600;cursor:pointer}
.password-toggle:hover{background:#edf3ed}
button[type="submit"],#logout,#verify-email{min-height:48px;width:100%;padding:12px 16px;background:#176c53;color:#fff;border:0;border-radius:6px;font-weight:600;cursor:pointer}
button[type="submit"]:hover,#logout:hover,#verify-email:hover{background:#125640}button:disabled{opacity:.6;cursor:wait}
#email-tools{margin:-8px 0 -6px;font-size:13px;line-height:22px}#email-tools a{display:inline-block;padding:3px 0}
#login-status{margin:16px 0 0;color:#a23e32;font-size:13px;line-height:1.6;overflow-wrap:anywhere}#login-status:empty{display:none}
#login-status[data-kind="success"]{color:#176c53}#login-status[data-kind="neutral"]{color:#617268}
.help{margin:24px 0 0;color:#617268;font-size:12px;line-height:1.7}#back-portal{display:inline-block;margin-top:16px;font-size:13px}#logout{margin-top:16px}
footer{width:60%;margin-left:40%;padding:14px 24px;text-align:center;font-size:11px;line-height:18px;color:#6a7971;background:#f6f7f3}
[hidden]{display:none!important}
@media(max-width:760px){
 body{background:#f6f7f3}.login-layout{display:flex;flex-direction:column;flex:1}.identity{padding:24px 24px 20px}.identity-content{width:100%;max-width:380px;margin:0 auto;gap:14px}.brand{gap:12px;font-size:25px}.brand img{width:48px;height:48px}.story-copy{margin:0}.eyebrow,.story-description{display:none}.story-copy h2{font-size:18px;line-height:1.5;letter-spacing:-.3px;margin:0}.story-copy h2 span{display:inline}
 .entry{align-items:flex-start;padding:26px 24px 24px}h1{font-size:28px;margin-bottom:22px}form{gap:18px}input,button[type="submit"]{min-height:46px}.help{margin-top:20px}footer{width:100%;margin-left:0;padding:12px 20px}
}
@media(max-width:760px) and (max-height:650px){.identity{padding:16px 24px}.brand img{width:40px;height:40px}.brand{font-size:23px}.identity-content{gap:10px}.story-copy h2{font-size:16px}.entry{padding-top:20px}h1{margin-bottom:18px}form{gap:16px}.help{margin-top:16px}}
