/* =========================================================
   Bihar SEDM Portal – design tokens & base styles
   Change colours / fonts here; every module picks them up.
   ========================================================= */
:root {
  /* Brand */
  --navy-900: #0A2350;
  --navy-800: #0E2D63;
  --navy-700: #123A7A;
  --blue-600: #1B5FB8;
  --blue-100: #E6F0FB;
  --green-700: #1F7A3A;
  --green-600: #2E8B47;
  --green-100: #E5F4E9;
  --amber-700: #9A5B00;
  --amber-500: #E8A317;
  --amber-100: #FFF4DB;
  --red-700: #B42318;
  --red-600: #D92D20;
  --red-100: #FDECEA;
  --grey-900: #14213D;
  --grey-700: #3F4A5C;
  --grey-600: #556070;
  --grey-300: #CBD3DE;
  --grey-200: #DFE5EC;
  --grey-100: #EEF2F6;
  --grey-50:  #F6F8FB;
  --white: #FFFFFF;

  /* Semantic */
  --bg: var(--grey-50);
  --surface: var(--white);
  --text: var(--grey-900);
  --text-muted: var(--grey-600);
  --border: var(--grey-200);
  --primary: var(--navy-800);
  --accent: var(--blue-600);
  --ok: var(--green-700);
  --warn: var(--amber-700);
  --danger: var(--red-700);

  /* Type */
  --font: "Noto Sans", "Noto Sans Devanagari", "Segoe UI", system-ui, sans-serif;
  --font-num: "Noto Sans Mono", "Consolas", ui-monospace, monospace;

  /* Shape */
  --radius-sm: 4px;
  --radius: 8px;
  --radius-lg: 12px;
  --shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .08);

  --sidebar-w: 252px;
}

*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; }
body {
  font-family: var(--font);
  font-size: 14px;
  line-height: 1.45;
  color: var(--text);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3 { margin: 0; line-height: 1.2; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
button, input, select { font: inherit; color: inherit; }
.num { font-variant-numeric: tabular-nums; }
.muted { color: var(--text-muted); }
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
[hidden] { display: none !important; }
