:root {
  --bg1: #0f172a; --bg2: #1e1b4b;
  --accent: #818cf8; --accent2: #22d3ee;
  --text: #e2e8f0; --muted: #94a3b8;
  --card: rgba(255, 255, 255, 0.06);
  --border: rgba(255, 255, 255, 0.12);
  --radius: 18px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
body {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  color: var(--text); min-height: 100vh;
  background: radial-gradient(circle at 20% 20%, #312e81 0%, transparent 40%),
              radial-gradient(circle at 80% 80%, #0e7490 0%, transparent 40%),
              linear-gradient(135deg, var(--bg1), var(--bg2));
  background-attachment: fixed;
}
.glass {
  background: var(--card); border: 1px solid var(--border);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border-radius: var(--radius);
}
.btn {
  border: 0; cursor: pointer; font: inherit; font-weight: 600; color: #fff;
  padding: 12px 20px; border-radius: 12px;
  background: linear-gradient(90deg, var(--accent), var(--accent2));
  transition: transform .15s, opacity .15s;
}
.btn:hover { transform: translateY(-1px); }
.btn:disabled { opacity: .6; cursor: wait; }
.btn.ghost { background: transparent; border: 1px solid var(--border); }