:root{
  --bg:#0a0f1e; --panel:#0f1630; --stroke:#1c2446;
  --muted:#9aa3b2; --text:#eef3fb; --brand:#6d5bfd; --brand2:#22d3ee;
}
*{box-sizing:border-box} html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
a{color:inherit;text-decoration:none}
.muted{color:var(--muted)} .tiny{font-size:.9rem}
.btn{display:inline-block;padding:12px 16px;border-radius:12px;font-weight:700;border:1px solid #0005;background:linear-gradient(90deg,var(--brand),var(--brand2));color:#fff;box-shadow:0 8px 26px #0006}
.btn.ghost{background:transparent;border:1px solid var(--stroke)}
.btn.sm{padding:8px 12px;border-radius:10px}
.btn.wide{width:100%;text-align:center}
.btn.full{display:block;width:100%}
input{width:100%;padding:12px 12px;border-radius:10px;background:#0e152e;border:1px solid var(--stroke);color:var(--text)}
label{display:grid;gap:6px;font-weight:600;margin:10px 0}
.card{background:var(--panel);border:1px solid var(--stroke);border-radius:16px;padding:18px}
.auth-nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--stroke);backdrop-filter:blur(10px);background:rgba(10,15,30,.6)}
.brand{display:flex;gap:8px;align-items:center;font-weight:800}
.auth-wrap{min-height:calc(100dvh - 64px);display:grid;place-items:center;padding:24px}
.auth-card{width:min(520px,94vw)}
.sep{display:grid;place-items:center;margin:12px 0;color:var(--muted)}
.sep span{background:rgba(255,255,255,.06);border:1px solid var(--stroke);padding:4px 10px;border-radius:999px}
.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}
.role-card{display:block;padding:16px;border-radius:14px;border:1px solid var(--stroke);background:#0e152e}
.role-card:hover{outline:2px solid rgba(109,91,253,.35)}
.role-card .emoji{font-size:28px;margin-bottom:8px}
.form{margin-top:2px;display:grid;gap:6px}
.msg{margin-top:12px;color:var(--muted)}
