:root{
  --bg:#0b1220; --text:#eaf0ff; --muted:#a9b6d6; --line:rgba(255,255,255,.10);
  --accent:#7c3aed; --accent2:#4f46e5; --shadow:0 14px 40px rgba(0,0,0,.45);
}
*{box-sizing:border-box;}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:
    radial-gradient(900px 500px at 15% -10%, rgba(124,58,237,.30), transparent 60%),
    radial-gradient(900px 500px at 95% 0%, rgba(34,197,94,.18), transparent 55%),
    radial-gradient(800px 500px at 60% 110%, rgba(59,130,246,.18), transparent 55%),
    var(--bg);
  color:var(--text);
}
.container{max-width:880px; margin:22px auto; padding:0 14px 44px;}
.topbar{
  display:flex; justify-content:space-between; align-items:center;
  padding:14px 16px;
  background: rgba(255,255,255,.04);
  border-bottom:1px solid var(--line);
  backdrop-filter: blur(6px);
}
.badge{display:inline-block; padding:7px 10px; border-radius:999px; background: rgba(255,255,255,.06); border:1px solid var(--line);}
.card{
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  padding:18px;
  box-shadow:var(--shadow);
  margin:14px 0;
}
h2{margin:8px 0 14px; text-align:center; font-weight:900;}
.msg,.err{padding:12px; border-radius:14px; border:1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.06); margin:10px 0;}
.msg{border-color: rgba(34,197,94,.35); background: rgba(34,197,94,.12);}
.err{border-color: rgba(239,68,68,.40); background: rgba(239,68,68,.12);}
input{
  width:100%; padding:12px 12px; margin:6px 0 10px;
  border:1px solid rgba(255,255,255,.16); border-radius:14px;
  background: rgba(10,18,35,.60); color:var(--text); outline:none;
}
input:focus{border-color: rgba(124,58,237,.70); box-shadow:0 0 0 4px rgba(124,58,237,.18);}
button{
  padding:12px 16px; cursor:pointer; border:0; border-radius:14px; font-weight:900; color:#fff;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  box-shadow:0 14px 28px rgba(124,58,237,.22);
}
a{color:#c4b5fd; text-decoration:none;}
a:hover{color:#ddd6fe;}
small{color:var(--muted);}
