:root{font-family:"Segoe UI",system-ui,sans-serif;color:#173d38;background:#f5f7f3;font-size:16px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 10% 5%,#e6eee3 0,transparent 55%),#f5f7f3}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}.login-shell{width:100%;max-width:510px;margin:auto;padding:62px 24px 28px}.login-brand{display:flex;gap:13px;align-items:center;text-decoration:none;color:#173d38;font-size:29px;font-weight:650;width:max-content;margin:0 auto 36px}.brand-light{font-weight:400}.brand-icon{background:#245b46;color:white;display:grid;place-items:center;width:51px;height:51px;border-radius:12px;font-size:25px}.login-brand small{display:block;font-size:10px;letter-spacing:2px;font-weight:500;color:#7a8c7d;margin-top:4px}.login-card{background:#fff;border:1px solid #dfe7dc;border-radius:13px;padding:32px;box-shadow:0 15px 60px #193d2810}.eyebrow{font-size:11px;letter-spacing:1.7px;color:#799079;margin-bottom:13px}h1{font-size:28px;letter-spacing:-.7px;margin:0 0 10px;font-weight:600}p{color:#738272;line-height:1.65;font-size:15px;margin:0 0 25px}label{display:grid;gap:8px;margin-top:20px;font-size:15px;color:#355442}input{border:1px solid #d9e2d5;border-radius:6px;height:48px;width:100%;padding:10px 12px;min-width:0;color:#173d38;background:#fff}input:focus{outline:2px solid #7f9f82;outline-offset:1px}.password-wrap{position:relative}.password-wrap input{padding-right:65px}.password-wrap button{border:0;background:none;position:absolute;right:8px;top:0;height:48px;padding:0 7px;color:#55745b;font-size:13px}.primary{width:100%;border:0;border-radius:6px;min-height:48px;padding:10px;background:#285f48;color:#fff;font-weight:600;margin-top:24px}.primary:hover{background:#1d4c38}.login-links{display:flex;justify-content:space-between;gap:10px;margin-top:21px;flex-wrap:wrap}.login-links button{border:0;padding:0;background:none;color:#39654c;font-size:13px;text-decoration:underline;text-underline-offset:3px;min-height:30px}.help{font-size:13px;line-height:1.5;margin:10px 0 0}#login-message{font-size:14px;line-height:1.6;padding:12px;border-radius:6px;margin-top:18px;background:#edf4e9;color:#3e6749}#login-message.error{background:#fff1ed;color:#9a4b3c}.login-note{text-align:center;font-size:12px;line-height:1.8;margin:23px 0 16px}.login-footer{text-align:center;color:#93a08d;font-size:11px;letter-spacing:.4px}@media(max-width:480px){.login-shell{padding:32px 18px 20px}.login-card{padding:25px}.login-brand{margin-bottom:25px}}
