:root{--forest:#12372f;--forest-2:#1b4d42;--forest-3:#276656;--cream:#f6f3eb;--paper:#fffdf8;--white:#fff;--ink:#17352f;--muted:#71817c;--gold:#d7a83d;--gold-soft:#f7e8ba;--mint:#e2eee8;--line:rgba(23,53,47,.13);--danger:#a44242;--shadow:0 22px 65px rgba(18,55,47,.12)}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--ink);background:var(--cream);font-family:"DM Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}.login-layout{min-height:100vh;display:grid}.login-story{display:none}.login-panel{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:20px 17px 28px}.mobile-brand{width:min(470px,100%);display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.mobile-brand>a:last-child{color:var(--muted);font-size:11px;font-weight:800;text-decoration:none}.login-brand{display:inline-flex;align-items:center;gap:9px;color:inherit;text-decoration:none}.login-brand>span{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;color:var(--gold-soft);background:var(--forest)}.login-brand svg{width:23px;height:23px}.login-brand strong{font:800 18px "Manrope",sans-serif}.login-card{width:min(470px,100%);padding:25px 20px;border:1px solid var(--line);border-radius:24px;background:var(--paper);box-shadow:var(--shadow)}.eyebrow{margin:0 0 9px;color:var(--forest-3);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.card-heading h2{margin:0;font:800 clamp(25px,7vw,34px)/1.13 "Manrope",sans-serif;letter-spacing:-.04em}.card-heading>p:last-child{margin:9px 0 23px;color:var(--muted);font-size:12px;line-height:1.5}.login-alert{display:flex;align-items:start;gap:9px;margin-bottom:16px;padding:11px 12px;border:1px solid rgba(164,66,66,.16);border-radius:12px;color:var(--danger);background:#fff0ee}.login-alert[hidden]{display:none}.login-alert>span{width:22px;height:22px;display:grid;place-items:center;flex:0 0 22px;border-radius:50%;color:#fff;background:var(--danger);font-size:11px;font-weight:800}.login-alert p{margin:2px 0 0;font-size:11px;line-height:1.45}.login-field{display:block;margin-bottom:15px}.login-field>span{display:block;margin-bottom:7px;font-size:11px;font-weight:800}.input-wrap{display:flex;align-items:center;gap:9px;padding:0 11px;border:1px solid var(--line);border-radius:13px;background:#fff}.input-wrap:focus-within{border-color:var(--forest-3);box-shadow:0 0 0 3px rgba(39,102,86,.1)}.input-wrap>i{color:var(--muted);font-style:normal}.input-wrap>i svg{width:18px;height:18px}.input-wrap input{width:100%;min-width:0;min-height:50px;border:0;outline:0;color:var(--ink);background:transparent;font:500 14px "DM Sans",sans-serif}.input-wrap input::placeholder{color:#9ba7a3}.password-toggle{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border:0;border-radius:9px;color:var(--muted);background:var(--cream);cursor:pointer}.password-toggle svg{width:18px;height:18px}.password-toggle .eye-closed,.password-toggle.showing .eye-open{display:none}.password-toggle.showing .eye-closed{display:block}.form-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-2px 0 18px;color:var(--muted);font-size:9px}.form-meta span:last-child{color:var(--forest-3);font-weight:800}.login-button{width:100%;min-height:51px;display:flex;align-items:center;justify-content:space-between;padding:12px 17px;border:0;border-radius:14px;color:#fff;background:var(--forest);box-shadow:0 12px 25px rgba(18,55,47,.18);font:800 13px "DM Sans",sans-serif;cursor:pointer}.login-button b{font-size:18px}.login-button:disabled{cursor:wait;opacity:.65}.register-prompt{margin-top:22px;padding:16px;border-radius:15px;background:var(--mint);text-align:center}.register-prompt span,.register-prompt a,.register-prompt small{display:block}.register-prompt span{color:var(--muted);font-size:10px}.register-prompt a{margin:4px 0;color:var(--forest);font-size:12px;font-weight:800}.register-prompt small{color:var(--muted);font-size:9px}.mobile-footer{margin:22px 0 0;color:var(--muted);font-size:9px}
@media(min-width:780px){.login-panel{padding:40px}.login-card{padding:36px}.mobile-brand{margin-bottom:35px}}
@media(min-width:1000px){.login-layout{grid-template-columns:minmax(430px,.88fr) minmax(530px,1.12fr)}.login-story{position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;padding:42px 5.5vw;color:#fff;background:var(--forest)}.login-story:after{content:"◇";position:absolute;right:-60px;bottom:-130px;color:rgba(247,232,186,.08);font-size:430px;line-height:1}.login-story .login-brand{position:relative;z-index:1}.login-story .login-brand>span{color:var(--forest);background:var(--gold-soft)}.story-copy{position:relative;z-index:1;max-width:550px;margin:auto 0}.story-copy .eyebrow{color:var(--gold-soft)}.story-copy h1{max-width:520px;margin:0;font:800 clamp(43px,5vw,66px)/1.02 "Manrope",sans-serif;letter-spacing:-.055em}.story-copy>p:nth-of-type(2){max-width:500px;margin:21px 0 30px;color:#bdd1ca;font-size:15px;line-height:1.7}.story-points{display:grid;gap:10px}.story-points>div{display:flex;align-items:center;gap:11px;padding:12px;border-radius:14px;background:rgba(255,255,255,.07)}.story-points b{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;border-radius:50%;color:var(--forest);background:var(--gold-soft);font-size:11px}.story-points strong,.story-points small{display:block}.story-points strong{font-size:11px}.story-points small{margin-top:2px;color:#abc5bb;font-size:9px}.story-footer{position:relative;z-index:1;margin:0;color:#91b0a5;font-size:9px}.login-panel{min-height:100vh;background:var(--cream)}.mobile-brand,.mobile-footer{display:none}.login-card{padding:42px;border:0;background:transparent;box-shadow:none}.card-heading>p:last-child{font-size:13px}.login-field>span{font-size:12px}}
@media(min-width:1350px){.login-layout{grid-template-columns:1fr 1fr}.login-story{padding-inline:7vw}.login-card{width:520px}}
.mobile-footer a,.story-footer a{color:inherit;font-weight:800;text-decoration:none}.mobile-footer a:hover,.story-footer a:hover{text-decoration:underline}
@media(hover:hover){.login-button:hover{background:var(--forest-2)}.register-prompt a:hover{color:var(--forest-3)}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
