.auth-wrap{padding:5rem 5%;min-height:60vh;display:flex;align-items:center;justify-content:center;background:var(--lt)}
.auth-box{background:#fff;border:1px solid var(--border);border-radius:8px;padding:2.6rem;width:100%;max-width:460px;box-shadow:0 20px 50px rgba(0,0,0,.06)}
.auth-box h2{font-family:var(--hd);font-size:1.4rem;font-weight:900;color:var(--dark);text-transform:uppercase;letter-spacing:.02em;text-align:center;margin-bottom:.3rem}
.auth-box p.sub{text-align:center;color:var(--gray);font-size:.82rem;margin-bottom:1.8rem}
.role-pick{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:1.2rem}
.role-pick label{border:1.5px solid var(--border);border-radius:6px;padding:.9rem .7rem;text-align:center;cursor:pointer;font-size:.8rem;font-weight:600;color:var(--gray);transition:.2s}
.role-pick input{display:none}
.role-pick input:checked+span{color:var(--gold-dk)}
.role-pick label:has(input:checked){border-color:var(--gold);background:var(--gold-lt);color:var(--gold-dk)}
.auth-alert{padding:.7rem 1rem;border-radius:6px;font-size:.82rem;margin-bottom:1.1rem;font-weight:500}
.auth-alert.error{background:#fee2e2;color:#b91c1c}
.auth-alert.success{background:#dcfce7;color:#15803d}
.auth-foot{text-align:center;font-size:.82rem;color:var(--gray);margin-top:1.3rem}
.auth-foot a{color:var(--gold-dk);font-weight:700}
.btn-full{width:100%;justify-content:center;padding:.8rem;border:none;background:var(--gold);color:#fff;border-radius:5px;font-weight:700;font-size:.88rem;cursor:pointer;transition:.2s}
.btn-full:hover{background:var(--gold-dk)}
