.auth-page{min-height:100vh;display:flex;flex-direction:column}
.auth-header{display:flex;justify-content:space-between;align-items:center;padding:28px clamp(20px,6vw,80px);gap:20px}
.auth-brand{display:inline-flex;align-items:center;gap:10px;font-size:24px;font-weight:800;text-decoration:none;color:var(--forest)}
.auth-brand-icon{width:34px;height:34px;border-radius:9px;box-shadow:0 4px 12px rgba(6,59,43,.1)}
.auth-panel{width:min(460px,calc(100% - 40px));margin:35px auto 60px}
.auth-panel h1{font-size:clamp(30px,6vw,42px);line-height:1.15;letter-spacing:-.04em;margin:12px 0 18px}
.auth-eyebrow{color:var(--sage-700);font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.auth-panel label{display:grid;gap:8px;font-size:14px;font-weight:600;margin:20px 0}
.auth-panel input{width:100%;padding:13px 14px;border:1px solid var(--sage-300);border-radius:var(--radius-sm);background:white;font:inherit;color:var(--forest)}
.auth-panel button{font:inherit;cursor:pointer}
.auth-panel button:disabled{opacity:.55;cursor:default}
.auth-primary,.auth-secondary{width:100%;padding:13px;border-radius:var(--radius-sm);font-weight:600!important}
.auth-primary{background:var(--forest);color:white;border:1px solid var(--forest)}
.auth-secondary{background:white;color:var(--forest);border:1px solid var(--sage-300);margin:12px 0}
.auth-modes{display:flex;gap:24px;border-bottom:1px solid var(--sage-200);margin:25px 0}
.auth-modes button,.auth-tools button{border:0;background:none;color:var(--sage-700);padding:12px 0}
.auth-modes [aria-pressed=true]{border-bottom:2px solid var(--forest);color:var(--forest);font-weight:700}
.auth-tools,.auth-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:13px}
.auth-footer{margin-top:auto;justify-content:center;padding:24px}
#auth-status{font-size:14px;padding:12px 14px;background:var(--sage-100);border-radius:var(--radius-sm)}
#auth-status:empty{display:none}
#auth-legal,#auth-password-hint{font-size:13px;color:var(--slate);margin:25px 0}
.auth-panel [hidden]{display:none!important}
.auth-panel :focus-visible{outline:3px solid var(--carrot-deep);outline-offset:3px}
