/* ================================
   WAVEDESK DESIGN SYSTEM (GLOBAL)
================================ */

/* ===== ROOT TOKENS ===== */
:root {
  --brand-primary: #1B3470;
  --brand-primary-light: #2a4a8f;
  --brand-accent: #66C4FB;
  --brand-accent-subtle: rgba(102,196,251,0.12);

  --surface-0: #f4f6fb;
  --surface-1: #ffffff;
  --surface-2: #f9fafd;

  --text-primary: #0f1b3c;
  --text-secondary: #5b6684;
  --text-tertiary: #8892a8;

  --border: #e4e8f0;

  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;

  --shadow-card: 0 1px 3px rgba(27,52,112,0.04),
                 0 0 0 1px rgba(27,52,112,0.05);

  --font-body: 'DM Sans', sans-serif;
}

/* ===== GLOBAL ===== */
body {
  font-family: var(--font-body);
  background: var(--surface-0);
  color: var(--text-primary);
}

/* ===== SIDEBAR (override existing) ===== */
.sidebar {
  background: var(--brand-primary) !important;
  border-right: 1px solid rgba(255,255,255,0.08);
}

.sidebar a {
  color: #8a9bc4 !important;
}

.sidebar a.active {
  background: rgba(102,196,251,0.15) !important;
  color: var(--brand-accent) !important;
}

/* ===== TOPBAR ===== */
.topbar {
  background: var(--surface-1) !important;
  border-bottom: 1px solid var(--border);
}

/* ===== CARDS ===== */
.card,
.stat-card,
.dashboard-card,
.box {
  background: var(--surface-1) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: var(--shadow-card) !important;
  border: none !important;
}

/* ===== BUTTONS ===== */
button,
.btn {
  border-radius: var(--radius-sm);
  font-weight: 500;
}

.btn-primary {
  background: var(--brand-primary) !important;
  color: white !important;
}

/* ===== TABLES ===== */
table {
  background: var(--surface-1);
  border-radius: var(--radius-md);
  overflow: hidden;
}

table thead {
  background: var(--surface-2);
}

/* ===== INPUTS ===== */
input,
select,
textarea {
  border-radius: var(--radius-sm);
  border: 1px solid var(--border);
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--brand-accent);
  box-shadow: 0 0 0 3px var(--brand-accent-subtle);
}

/* ===== BADGES ===== */
.status,
.badge {
  border-radius: 20px;
  padding: 4px 10px;
  font-size: 12px;
}

/* ===== SMOOTH UI ===== */
* {
  transition: all 0.2s ease;
}