:root{--ink:#073934;--green:#17675a;--paper:#f5f3ec;--line:#d9dfda;--muted:#687b78;--danger:#a93434}*{box-sizing:border-box}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper)}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(420px,.95fr)}.auth-intro{padding:54px clamp(42px,7vw,110px);background:linear-gradient(145deg,#0b413a,#1c6b5e);color:white;display:flex;flex-direction:column;justify-content:space-between}.brand{display:flex;align-items:center;gap:14px;font:800 21px Manrope}.brand span{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#f1d89e;color:#164f46}.auth-intro h1{font:800 clamp(38px,4.2vw,68px)/1.08 Manrope;margin:13px 0 20px;max-width:720px}.auth-intro p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:610px;color:#dbe9e5}.auth-intro small{color:#bdd2cd}.auth-panel{display:grid;place-items:center;padding:36px}.auth-panel form,.password-page form{width:min(100%,480px);background:white;padding:clamp(30px,4vw,52px);border:1px solid var(--line);border-radius:24px;box-shadow:0 22px 60px #173e3620}.eyebrow{letter-spacing:.18em;font-weight:700;font-size:12px;color:#78908b}.auth-panel h2,.password-page h2{font:800 34px Manrope;margin:8px 0}.subtitle{color:var(--muted);font-size:16px;margin:0 0 28px}label{display:grid;gap:9px;font-weight:700;font-size:14px;margin:19px 0}input{width:100%;height:52px;border:1px solid #cbd7d2;border-radius:12px;padding:0 15px;font:500 16px "DM Sans";outline:none}input:focus{border-color:#297d6e;box-shadow:0 0 0 4px #297d6e18}button{width:100%;height:52px;border:0;border-radius:12px;background:var(--green);color:#fff;font:700 16px "DM Sans";cursor:pointer;margin-top:9px;box-shadow:0 9px 22px #17675a35}.help{font-size:13px;line-height:1.55;color:var(--muted);margin-top:22px}.error,.notice{padding:13px 15px;border-radius:10px;margin:18px 0;font-size:14px}.error{background:#fff0ef;color:var(--danger);border:1px solid #f0c5c1}.notice{background:#eef8f5;border:1px solid #bcded5}.password-page{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at top left,#dcece6,transparent 38%),var(--paper)}@media(max-width:800px){.auth-shell{grid-template-columns:1fr}.auth-intro{min-height:300px;padding:32px}.auth-intro h1{font-size:38px}.auth-intro small{display:none}.auth-panel{padding:22px}.auth-panel form{padding:30px 24px}}
