:root{--brand-forest:#0d4937;--brand-forest-deep:#083c2f;--auth-ink:#202723;--auth-muted:#69736e;--auth-line:#dce4df;--auth-canvas:#f4f6f2}
.auth-screen{height:100svh;min-height:100svh;overflow:auto;background:var(--auth-canvas);color:var(--auth-ink);display:grid;grid-template-columns:minmax(390px,1fr) minmax(350px,.9fr);font-family:Inter,"DM Sans",system-ui,sans-serif}
.auth-panel{min-height:100svh;display:flex;flex-direction:column;justify-content:center;width:min(100%,590px);padding:54px clamp(28px,7vw,104px);margin:auto}
.auth-brand{display:flex;align-items:center;gap:17px;margin-bottom:44px;color:var(--brand-forest);font-size:11px;font-weight:750;letter-spacing:.12em}
.auth-brand img{width:106px;height:106px;object-fit:contain;border-radius:8px}
.auth-panel h1{font-family:Manrope,Inter,system-ui,sans-serif;font-size:clamp(28px,3vw,38px);line-height:1.12;letter-spacing:-.035em;margin:0 0 12px;color:#1f2823}
.auth-description{max-width:39ch;margin:0 0 28px;color:var(--auth-muted);font-size:15px;line-height:1.65}
.auth-form{display:grid;gap:17px;max-width:420px}
.auth-form label{display:grid;gap:7px;font-size:13px;font-weight:650;color:#303a34}
.auth-form input{height:48px;border:1px solid var(--auth-line);border-radius:7px;background:white;padding:0 13px;color:var(--auth-ink);font:inherit;font-size:15px;outline:none;transition:border-color .18s,box-shadow .18s}
.auth-form input:focus{border-color:var(--brand-forest);box-shadow:0 0 0 3px #0d49371c}
.auth-form input[readonly]{background:#f7f8f6;color:#5a635e}
.auth-form small{font-size:11px;font-weight:450;color:var(--auth-muted)}
.auth-submit{min-height:48px;border:0;border-radius:7px;background:var(--brand-forest);color:white;padding:0 18px;font:inherit;font-weight:700;cursor:pointer;margin-top:5px;transition:background .18s,transform .18s}
.auth-submit:hover{background:var(--brand-forest-deep);transform:translateY(-1px)}
.auth-submit:disabled{opacity:.58;cursor:wait;transform:none}
.auth-error{max-width:420px;border:1px solid #e6b8b1;border-radius:7px;background:#fff4f1;color:#8c3428;padding:12px 14px;font-size:13px;line-height:1.45}
.auth-help{max-width:410px;margin-top:24px;color:var(--auth-muted);font-size:12px;line-height:1.6}
.auth-back{align-self:flex-start;margin-top:19px;padding:8px 0;border:0;background:transparent;color:var(--brand-forest);font:inherit;font-size:13px;font-weight:650;cursor:pointer}
.auth-footer{margin-top:40px;color:#85908a;font-size:11px}
.auth-aside{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;min-height:100svh;padding:clamp(36px,7vw,96px);background:var(--brand-forest);color:white}
.auth-aside:after{content:"";position:absolute;width:min(60vw,740px);height:min(60vw,740px);right:-15%;top:-16%;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 56px #ffffff09,0 0 0 112px #ffffff07}
.auth-aside-mark{position:absolute;z-index:1;top:13%;right:14%;display:grid;place-items:center;width:clamp(170px,28vw,390px);aspect-ratio:1;border:1px solid #ffffff2a;border-radius:50%;color:#ffffffd9;font-family:Manrope,system-ui,sans-serif;font-size:clamp(82px,16vw,220px);font-weight:800;letter-spacing:-.1em}
.auth-aside p{position:relative;z-index:1;max-width:520px;margin:0 0 14px;font-family:Manrope,system-ui,sans-serif;font-size:clamp(25px,3vw,42px);font-weight:650;line-height:1.18;letter-spacing:-.035em}
.auth-aside>span{position:relative;z-index:1;color:#d7e4de;font-size:13px;letter-spacing:.04em}
@media(max-width:760px){.auth-screen{display:block;background:white}.auth-panel{min-height:100svh;padding:34px 25px 28px}.auth-brand{margin-bottom:36px}.auth-brand img{width:82px;height:82px}.auth-panel h1{font-size:30px}.auth-aside{display:none}.auth-description{font-size:14px}.auth-footer{margin-top:32px}}
@media(prefers-reduced-motion:reduce){.auth-form input,.auth-submit{transition:none}}
