/* ==========================================================================
   URJADRISHTI — Design tokens (v2, aligned to approved mockups)
   ========================================================================== */

:root{
  /* --- brand --- */
  --navy-900:#0F2247;
  --navy-800:#152B57;
  --navy-700:#1B3868;
  --navy-600:#234A87;
  --blue-600:#1E63B8;   /* primary action / active state */
  --blue-500:#2D7DD2;   /* "Drishti" wordmark, links */
  --blue-100:#EAF4FC;
  --blue-50:#F3F9FE;
  --sky-300:#8FD1EE;
  --sky-500:var(--blue-500);   /* back-compat alias */
  --sky-100:var(--blue-100);   /* back-compat alias */
  --topbar-h:var(--header-h);  /* back-compat alias */

  --bolt-600:#C81E14;
  --bolt-500:#D9362B;   /* alerts / critical only, not primary actions */
  --bolt-100:#FDEDEC;

  --purple-600:#6A4FC7;
  --purple-100:#F1EDFB;

  /* --- neutrals --- */
  --ink-900:#101A2E;
  --ink-700:#3A4763;
  --ink-500:#647089;
  --ink-300:#9AA6BE;
  --line-200:#E3E9F2;
  --line-100:#EEF3F9;
  --surface:#F4F8FC;
  --white:#FFFFFF;

  /* --- semantic --- */
  --good:#1E8E5A;
  --good-bg:#E9F7EF;
  --warn:#B7791F;
  --warn-bg:#FCF3DE;
  --bad:#D9362B;
  --bad-bg:#FDEDEC;
  --info:#1E63B8;
  --info-bg:#EAF4FC;

  /* --- type --- */
  --font-display:"Poppins", "Segoe UI", sans-serif;
  --font-ui:"Inter", "Segoe UI", sans-serif;
  --font-mono:"IBM Plex Mono", ui-monospace, monospace;

  /* --- layout --- */
  --sidebar-w:260px;
  --header-h:96px;
  --radius-sm:8px;
  --radius-md:12px;
  --radius-lg:18px;
  --shadow-sm:0 1px 2px rgba(16,26,46,.05), 0 1px 1px rgba(16,26,46,.04);
  --shadow-md:0 8px 24px rgba(16,26,46,.08);
}

*,*::before,*::after{ box-sizing:border-box; }
html,body{ height:100%; }
body{
  margin:0;
  font-family:var(--font-ui);
  color:var(--ink-900);
  background:var(--surface);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{ font-family:var(--font-display); margin:0; color:var(--navy-900); font-weight:600; }
p{ margin:0; }
a{ color:inherit; text-decoration:none; }
ul{ margin:0; padding:0; list-style:none; }
button{ font-family:inherit; cursor:pointer; }
table{ border-collapse:collapse; width:100%; }
:focus-visible{ outline:2px solid var(--blue-500); outline-offset:2px; }
::selection{ background:var(--sky-300); color:var(--navy-900); }

.mono{ font-family:var(--font-mono); font-variant-numeric:tabular-nums; }

@media (prefers-reduced-motion: reduce){
  *{ animation-duration:.001ms !important; transition-duration:.001ms !important; }
}
