:root {
  --bg-dark: #0d0d17;
  --accent-purple: #8167ff;
  --accent-glow: rgba(129, 103, 255, 0.4);
  --accent-light: #b4a4ff;
  --text-main: #ffffff;
  --text-muted: #8e8ea0;
  --input-bg: #1a1a26;
  --input-border: rgba(255, 255, 255, 0.1);
  --sidebar-bg: #0a0a12;
  --sidebar-hover: rgba(255, 255, 255, 0.05);
}
* { margin:0; padding:0; box-sizing:border-box; }
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: var(--bg-dark);
  color: var(--text-main);
  min-height: 100vh;
}
.btn {
  padding: 8px 16px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  font-weight: 500;
  transition: 0.2s;
  font-family: inherit;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  text-decoration: none;
}
.btn-primary { background: var(--accent-purple); color: white; }
.btn-primary:hover { background: #7559e6; }
.btn-danger { background: #dc3545; color: white; }
.btn-danger:hover { background: #c82333; }
.btn-success { background: #28a745; color: white; }
.btn-success:hover { background: #218838; }
.btn-secondary { background: var(--input-bg); color: var(--text-muted); border: 1px solid var(--input-border); }
.btn-secondary:hover { background: var(--sidebar-hover); }
.badge {
  padding: 4px 12px;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 600;
}
.badge-active { background: #28a745; color: white; }
.badge-blocked { background: #dc3545; color: white; }
.badge-pending { background: #ffc107; color: #1a2b4c; }