/**
 * NES LEARNING CENTER — DESIGN TOKENS (satu-satunya sumber)
 * =====================================================================
 * Sebelum file ini ada, tiap halaman (index, blog, faq, program,
 * daftar-siswa, login, dst) punya blok <style>:root{...} sendiri-sendiri,
 * hasil copy-paste manual — dan salinan-salinan itu sudah mulai berbeda
 * satu sama lain (contoh: --paper krem #f8f5ee di 6 halaman vs putih
 * dingin #fdfeff di homepage), jadi warna latar berubah-ubah saat
 * pengunjung pindah halaman. Ini hasil audit desain sistem (24 Sept 2026).
 *
 * ATURAN: ubah nilai token HANYA di file ini. Jangan lagi menulis
 * :root{...} di dalam <style> tiap halaman — cukup:
 *   <link rel="stylesheet" href="assets/nes-tokens.css">
 *   <link rel="stylesheet" href="assets/nes-components.css">
 * ditaruh SEBELUM <style> bawaan halaman (supaya halaman masih bisa
 * override kalau ada kebutuhan sangat spesifik, meski idealnya tidak perlu).
 *
 * KEPUTUSAN --paper: PUTIH DINGIN (#fdfeff), bukan krem — dikonfirmasi
 * pemilik situs 24 Sept 2026. Halaman yang sebelumnya pakai krem #f8f5ee
 * / #efeadd (blog, faq, program, daftar-siswa, login, tutor) otomatis
 * ikut putih begitu file ini dipasang & :root lokalnya dihapus.
 * =====================================================================
 */
:root{
  /* ---- Warna brand ---- */
  --navy-950:#0a1730;
  --navy-900:#0e2049;
  --navy-800:#16305f;
  --navy-700:#1f4079;
  --gold-600:#c68f2e;
  --gold-500:#d6a23f;
  --gold-300:#e8c988;
  --gold-100:#f6e9c9;
  /* --gold-700: teks/eyebrow emas di atas latar TERANG (putih/paper) —
     gold-500/600 gagal kontras AA (2.3–2.9:1) untuk teks kecil. Pakai
     gold-700 untuk .eyebrow/.tag/.pnum/badge-soon DI LATAR TERANG;
     gold-500/600 tetap dipakai untuk isian warna (background tombol,
     dot, border) dan untuk teks emas di ATAS latar gelap (navy) yang
     kontrasnya sudah lolos (±11:1). */
  --gold-700:#8a6116;

  /* ---- Netral / permukaan ---- */
  --paper:#fdfeff;
  --paper-dim:#eef2f9;
  --ink:#1c2333;
  --ink-soft:#4a5268;
  --line:#e1dbc8;
  --white:#ffffff;

  /* ---- Token semantik (status) — dipakai buat badge/pesan/label status,
     bukan buat warna dekoratif. Tiap warna punya versi -bg (latar
     lembut) dan versi solid (teks/ikon/border di atas latar terang). ---- */
  --success:#1e6b2f;
  --success-bg:#e8f5e9;
  --danger:#a12626;
  --danger-bg:#fdeaea;
  --warning:#8a5a00;
  --warning-bg:#fff3d6;
  --info:#1a5fa8;
  --info-bg:#e6f0fb;

  /* ---- Radius ---- */
  --radius-s:6px;
  --radius-m:14px;
  --radius-l:28px;

  /* ---- Shadow ---- */
  --shadow-soft:0 20px 50px -25px rgba(10,23,48,0.35);
  --shadow-tight:0 8px 20px -12px rgba(10,23,48,0.4);

  /* ---- Skala tipografi (pengganti puluhan ukuran font lepas yang
     ditemukan audit — 12/14/16/19/24/32 + clamp buat judul besar). Pakai
     ini utamanya di komponen BARU; teks yang sudah ada boleh tetap pakai
     ukuran lamanya sampai halaman itu dirapikan menyeluruh. ---- */
  --fs-xs:12px;
  --fs-s:14px;
  --fs-m:16px;
  --fs-l:19px;
  --fs-xl:24px;
  --fs-xxl:32px;
  --fs-display:clamp(28px,4vw,44px);

  /* ---- Skala spasi (pengganti ±30 nilai padding/gap/margin lepas) ---- */
  --sp-1:4px;
  --sp-2:8px;
  --sp-3:12px;
  --sp-4:16px;
  --sp-5:24px;
  --sp-6:32px;
  --sp-7:56px;

  /* ---- Motion ---- */
  --ease:cubic-bezier(.4,0,.2,1);
  --dur-fast:.2s;
  --dur-base:.3s;
}

/* ---- Reset dasar & tipografi global — satu sumber, dipasang di semua
   halaman (masing-masing <style> HALAMAN tidak perlu mengulang ini
   lagi). Font family di-load lewat <link> Google Fonts tiap halaman
   seperti biasa (file token ini tidak meng-import font). ---- */
*{box-sizing:border-box;}
body{margin:0;font-family:'Plus Jakarta Sans',sans-serif;color:var(--ink);background:var(--paper);}
h1,h2,h3{font-family:'Fraunces',serif;margin:0;letter-spacing:-0.01em;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;}

/* ---- Focus ring — DIPERBAIKI dari audit: outline gold-500 di atas
   latar terang cuma 2.3:1 (gagal aturan non-teks 3:1). Ganti ke
   navy-900, kontrasnya jauh lebih tinggi di atas putih/paper/gold. ---- */
:focus-visible{outline:2.5px solid var(--navy-900);outline-offset:2px;}
