/* ============================================================
   EKITI STATE GOVERNMENT — Elections Management Portal
   Design System tokens + base components
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,500;0,8..60,600;0,8..60,700;1,8..60,400&family=Public+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&display=swap');

:root{
  /* ---- Brand greens (Ekiti: vegetation, rolling hills) ---- */
  --g-900:#08311c;   /* deepest forest */
  --g-800:#0c3f25;
  --g-700:#0f4d2c;   /* PRIMARY deep green */
  --g-600:#155f38;
  --g-500:#1d7a49;
  --g-400:#2f9a60;
  --g-300:#69bb8c;
  --g-100:#dcefe3;
  --g-50:#eef7f1;

  /* ---- Brand golds (Ekiti: new dawn / sun) ---- */
  --gold-700:#b07d05;
  --gold-600:#cf9509;
  --gold-500:#e6ab10;  /* PRIMARY gold */
  --gold-400:#f1c23b;
  --gold-200:#f8e2a0;
  --gold-100:#fcf2d4;

  /* ---- BAO brand (sampled from official logo) ---- */
  --bao-blue:#53c3ed;
  --bao-red:#e4222a;
  --bao-green:#3eb655;

  /* ---- Ink + neutrals (warm, faint green tint) ---- */
  --ink-900:#10201a;
  --ink-700:#27362e;
  --ink-600:#3c4a41;
  --ink-500:#536158;   /* muted body */
  --ink-400:#74837a;
  --line:#e3e8e3;
  --line-2:#eef1ee;
  --surface:#ffffff;
  --bg:#f3f6f3;
  --bg-2:#eef2ee;

  /* ---- Status ---- */
  --ok:#1d7a49;
  --ok-bg:#e7f4ec;
  --warn:#b8860b;
  --warn-bg:#fbf2d8;
  --danger:#b3261e;
  --danger-bg:#fbe9e8;
  --info:#1f5fa8;
  --info-bg:#e6eff7;

  /* ---- Type ---- */
  --serif:"Source Serif 4", Georgia, serif;
  --sans:"Public Sans", system-ui, -apple-system, sans-serif;

  /* ---- Radius / shadow ---- */
  --r-sm:6px; --r-md:10px; --r-lg:16px; --r-xl:22px;
  --sh-1:0 1px 2px rgba(16,32,26,.05), 0 1px 3px rgba(16,32,26,.06);
  --sh-2:0 4px 14px rgba(16,32,26,.07), 0 2px 6px rgba(16,32,26,.05);
  --sh-3:0 18px 48px rgba(8,49,28,.16), 0 6px 16px rgba(8,49,28,.08);
}

*{box-sizing:border-box}
html,body{margin:0}
body{
  font-family:var(--sans);
  color:var(--ink-900);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* ---------- shared bits ---------- */
.badge{
  display:inline-flex;align-items:center;gap:6px;
  font:600 11.5px/1 var(--sans);letter-spacing:.04em;
  padding:5px 10px;border-radius:999px;text-transform:uppercase;
}
.badge.pending{color:var(--warn);background:var(--warn-bg);border:1px solid #efdca0}
.badge.resolved{color:var(--ok);background:var(--ok-bg);border:1px solid #bfe2cd}
.badge.review{color:var(--info);background:var(--info-bg);border:1px solid #c7d9f0}
.badge.urgent{color:var(--danger);background:var(--danger-bg);border:1px solid #f1c9c6}

.dot{width:7px;height:7px;border-radius:50%;display:inline-block}
