/* ==========================================================================
   Token desain Ayam Bawang Putih Abang Hugo

   Warna diambil langsung dari berkas logo, bukan dikira-kira:
     #E84D1F  tulisan "Ayam Bawang Putih"  → warna utama
     #F3931A  tulisan "Abang Hugo"          → warna harga & aksen
     #F37D1D  ayam goreng di ilustrasi

   Tersedia dua suasana: gelap (enak dilihat di ruangan remang) dan terang
   (warna kertas nasi bungkus, cocok siang hari). Pilihan pengunjung disimpan
   sebagai atribut data-theme pada elemen <html>.

   Sudut membulat SENGAJA tidak seragam — kartu, tombol, dan gambar punya
   lengkungan berbeda supaya tidak terlihat seperti template.
   ========================================================================== */

@font-face {
  font-family: 'Archivo Black';
  src: url('../fonts/archivo-black-latin.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Plus Jakarta Sans';
  src: url('../fonts/jakarta-latin.woff2') format('woff2');
  font-weight: 400 800;
  font-style: normal;
  font-display: swap;
}

/* --- Yang sama di kedua suasana ----------------------------------------- */

:root {
  --brand-red:   #E84D1F;
  --brand-amber: #F3931A;

  --on-accent: #2A1000;   /* teks di atas tombol berwarna */
  --wa:        #25D366;
  --wa-ink:    #06331A;

  --font-display: 'Archivo Black', 'Arial Black', system-ui, sans-serif;
  --font-body:    'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;

  --text-xs:   .75rem;
  --text-sm:   .8125rem;
  --text-base: .9375rem;
  --text-md:   1.0625rem;
  --text-lg:   1.375rem;
  --text-xl:   1.75rem;
  --text-2xl:  2.25rem;
  --text-3xl:  3rem;

  --sp-1: .25rem;
  --sp-2: .5rem;
  --sp-3: .75rem;
  --sp-4: 1rem;
  --sp-5: 1.5rem;
  --sp-6: 2rem;
  --sp-7: 3rem;

  --r-card:  14px;
  --r-img:   10px;
  --r-input: 12px;
  --r-chip:  8px;
  --r-pill:  999px;

  --ease:   cubic-bezier(.2, .8, .3, 1);
  --spring: cubic-bezier(.34, 1.56, .64, 1);
  --t-fast: 150ms;
  --t-base: 220ms;
  --t-slow: 300ms;

  --bar-h: 72px;
  --max-w: 1120px;
}

/* --- Suasana gelap ------------------------------------------------------ */

:root,
:root[data-theme='dark'] {
  color-scheme: dark;

  --bg:        #14110E;
  --bg-blur:   rgba(20, 17, 14, .92);
  --surface:   #1F1B16;
  --surface-2: #2B251E;
  --surface-3: #3A322A;

  --fg:        #F7F1E6;
  --muted:     #A99B88;
  --muted-dim: #6F6354;

  /* Merah bata logo dicerahkan sedikit supaya tetap terbaca di latar arang */
  --accent:       #FF6B2C;
  --accent-hover: #E85718;
  --price:        #F8A83C;

  --red:   #E5533F;
  --green: #4CB35C;

  --line:        rgba(247, 241, 230, .10);
  --line-strong: rgba(247, 241, 230, .18);

  --motif-opacity: .10;

  --shadow-float: 0 -8px 32px rgba(0, 0, 0, .55);
  --shadow-sheet: 0 -12px 48px rgba(0, 0, 0, .65);
  --shadow-card:  none;

  --notice-error-bg: rgba(229, 83, 63, .12);
  --notice-error-bd: rgba(229, 83, 63, .40);
  --notice-error-fg: #FFB9AF;
  --notice-info-bg:  rgba(248, 168, 60, .10);
  --notice-info-bd:  rgba(248, 168, 60, .35);
  --notice-info-fg:  #F8A83C;
  --notice-ok-bg:    rgba(76, 179, 92, .12);
  --notice-ok-bd:    rgba(76, 179, 92, .40);
  --notice-ok-fg:    #A9E6B3;
}

/* --- Suasana terang ----------------------------------------------------- */

:root[data-theme='light'] {
  color-scheme: light;

  /* Bukan putih polos — warna kertas nasi bungkus */
  --bg:        #FBF4E7;
  --bg-blur:   rgba(251, 244, 231, .93);
  --surface:   #FFFDF8;
  --surface-2: #F3E9D6;
  --surface-3: #E7D9C0;

  --fg:        #24190F;
  --muted:     #7A6A55;
  --muted-dim: #A2937D;

  /* Merah bata asli logo, cukup gelap untuk kontras di kertas krem */
  --accent:       #E84D1F;
  --accent-hover: #C93F14;
  --price:        #B5560A;

  --red:   #C7301F;
  --green: #2E8B3D;

  --line:        rgba(36, 25, 15, .12);
  --line-strong: rgba(36, 25, 15, .22);

  --motif-opacity: .13;

  --shadow-float: 0 -6px 24px rgba(78, 48, 18, .18);
  --shadow-sheet: 0 -12px 40px rgba(78, 48, 18, .22);
  --shadow-card:  0 1px 2px rgba(78, 48, 18, .06);

  --notice-error-bg: rgba(199, 48, 31, .08);
  --notice-error-bd: rgba(199, 48, 31, .30);
  --notice-error-fg: #8E2114;
  --notice-info-bg:  rgba(181, 86, 10, .08);
  --notice-info-bd:  rgba(181, 86, 10, .28);
  --notice-info-fg:  #8A4207;
  --notice-ok-bg:    rgba(46, 139, 61, .08);
  --notice-ok-bd:    rgba(46, 139, 61, .30);
  --notice-ok-fg:    #1F6129;
}

/* Kalau pengunjung belum pernah memilih, ikuti pengaturan sistem HP-nya. */
@media (prefers-color-scheme: light) {
  :root:not([data-theme='dark']) {
    color-scheme: light;

    --bg:        #FBF4E7;
    --bg-blur:   rgba(251, 244, 231, .93);
    --surface:   #FFFDF8;
    --surface-2: #F3E9D6;
    --surface-3: #E7D9C0;

    --fg:        #24190F;
    --muted:     #7A6A55;
    --muted-dim: #A2937D;

    --accent:       #E84D1F;
    --accent-hover: #C93F14;
    --price:        #B5560A;

    --red:   #C7301F;
    --green: #2E8B3D;

    --line:        rgba(36, 25, 15, .12);
    --line-strong: rgba(36, 25, 15, .22);

    --motif-opacity: .13;

    --shadow-float: 0 -6px 24px rgba(78, 48, 18, .18);
    --shadow-sheet: 0 -12px 40px rgba(78, 48, 18, .22);
    --shadow-card:  0 1px 2px rgba(78, 48, 18, .06);

    --notice-error-bg: rgba(199, 48, 31, .08);
    --notice-error-bd: rgba(199, 48, 31, .30);
    --notice-error-fg: #8E2114;
    --notice-info-bg:  rgba(181, 86, 10, .08);
    --notice-info-bd:  rgba(181, 86, 10, .28);
    --notice-info-fg:  #8A4207;
    --notice-ok-bg:    rgba(46, 139, 61, .08);
    --notice-ok-bd:    rgba(46, 139, 61, .30);
    --notice-ok-fg:    #1F6129;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --t-fast: 1ms;
    --t-base: 1ms;
    --t-slow: 1ms;
  }
  *, *::before, *::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 1ms !important;
    scroll-behavior: auto !important;
  }
}
