/* ==========================================================================
   tokens.css — Design token Portal Kabupaten Grobogan
   Dimuat SEBELUM app.css. Semua warna, radius, dan tipografi diambil dari sini
   agar konsisten antar halaman dan mudah diubah.
   ========================================================================== */

:root {
  /* --- Palet hijau Grobogan -------------------------------------------------*/
  --gb-green-950: #04231a;
  --gb-green-900: #07301f;
  --gb-green-800: #0a3d2a;
  --gb-green-700: #125c41;
  --gb-green-600: #1b7a56;
  --gb-green-500: #2e9b6c;
  --gb-green-300: #8ecfb0;
  --gb-green-100: #d9ede2;
  --gb-green-50: #e8f5ee;

  /* --- Emas / kuning pemanis -----------------------------------------------*/
  --gb-gold-700: #b8800a;
  --gb-gold-600: #d99a0b;
  --gb-gold-500: #f2b21b;
  --gb-gold-300: #f8d073;
  --gb-gold-100: #fdefcf;

  /* --- Netral --------------------------------------------------------------*/
  --gb-cream: #fbf7ec;
  --gb-cream-200: #f3eddd;
  --gb-cream-300: #e9e1cd;
  --gb-ink: #0f2a21;
  --gb-muted: #5c6f66;
  --gb-line: #e6e0d0;
  --gb-white: #ffffff;

  /* --- Aksen statistik (dipakai kartu "Data Hari Ini") ---------------------*/
  --gb-blue: #2f6fed;
  --gb-blue-50: #e8effe;
  --gb-orange: #e8801a;
  --gb-orange-50: #fdf1e2;
  --gb-teal: #0f8f86;
  --gb-teal-50: #e2f4f2;
  --gb-red: #c0392b;
  --gb-red-50: #fbeae7;

  /* --- Tipografi -----------------------------------------------------------*/
  /* Font di-host sendiri sebelum produksi; lihat README bagian "Font". */
  --gb-font-sans: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI",
    Roboto, "Helvetica Neue", Arial, sans-serif;
  --gb-font-script: "Great Vibes", "Segoe Script", cursive;

  --gb-fs-h1: clamp(1.85rem, 1.15rem + 2.15vw, 3.05rem);
  --gb-fs-h2: clamp(1.35rem, 1.15rem + 0.6vw, 1.7rem);
  --gb-fs-h3: clamp(1.1rem, 1rem + 0.35vw, 1.3rem);
  --gb-fs-lead: 0.975rem;
  --gb-fs-body: 0.9375rem;
  --gb-fs-small: 0.8125rem;
  --gb-fs-tiny: 0.6875rem;

  /* --- Spasi & bentuk -----------------------------------------------------*/
  --gb-container: 1280px;
  --gb-radius-sm: 10px;
  --gb-radius: 14px;
  --gb-radius-lg: 20px;
  --gb-radius-pill: 999px;
  --gb-shadow-sm: 0 2px 8px rgba(8, 55, 42, 0.06);
  --gb-shadow: 0 6px 24px rgba(8, 55, 42, 0.08);
  --gb-shadow-lg: 0 16px 44px rgba(8, 55, 42, 0.14);
  --gb-header-h: 76px;

  /* --- Override variabel Bootstrap 5.3 ------------------------------------*/
  --bs-body-font-family: var(--gb-font-sans);
  --bs-body-font-size: var(--gb-fs-body);
  --bs-body-color: var(--gb-ink);
  --bs-body-bg: var(--gb-cream);
  --bs-heading-color: var(--gb-ink);
  --bs-primary: var(--gb-green-700);
  --bs-primary-rgb: 18, 92, 65;
  --bs-link-color: var(--gb-green-700);
  --bs-link-color-rgb: 18, 92, 65;
  --bs-link-hover-color: var(--gb-green-600);
  --bs-link-hover-color-rgb: 27, 122, 86;
  --bs-border-color: var(--gb-line);
  --bs-border-radius: var(--gb-radius);
  --bs-border-radius-sm: var(--gb-radius-sm);
  --bs-border-radius-lg: var(--gb-radius-lg);
  --bs-secondary-color: var(--gb-muted);
  --bs-emphasis-color: var(--gb-ink);
  --bs-focus-ring-color: rgba(242, 178, 27, 0.45);
  --bs-focus-ring-width: 3px;
}

/* --- Kontrol ukuran huruf (A- A A+), disimpan di localStorage --------------*/
html {
  font-size: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--gb-header-h) + 16px);
}

html[data-ukuran="kecil"] {
  font-size: 87.5%;
}

html[data-ukuran="besar"] {
  font-size: 112.5%;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
