/* Design tokens: docs/research/design.md section 2. Inter is vendored (WebView works offline). */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../vendor/inter-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --g-50:#EAF7F1; --g-100:#D3F0E3; --g-200:#A8E1C9; --g-300:#74CBAA;
  --g-400:#3FB78C; --g-500:#16A07A; --g-600:#0B7A55; --g-700:#075E41;
  --g-800:#064A35; --g-900:#04382A;

  --bg:#F6FAF8; --surface:#FFFFFF; --surface-2:#EEF4F1; --border:#DCE7E2;
  --text:#0F1F1A; --text-2:#475A53; --text-3:#5E706A;
  --primary:#0B7A55; --primary-hover:#075E41; --on-primary:#FFFFFF;
  --primary-text:#0B7A55; --primary-tint:#E3F4EC; --focus:#16A07A;

  --kcal:#0B7A55; --protein:#B4382F; --carbs:#9A6200; --fat:#2B63C4;
  --protein-bg:#FCE9E7; --carbs-bg:#FBEFD6; --fat-bg:#E4EDFB; --kcal-bg:#E3F4EC;

  --success:#0B7A55; --success-bg:#E3F4EC;
  --warn:#8A5A00; --warn-bg:#FBEFD6;
  --danger:#C0322B; --danger-bg:#FCE9E7;
  --info:#2B63C4; --info-bg:#E4EDFB;

  --dot:#9DB2AA; --trend:#0B7A55; --grid:#E4ECE8;
  --h0:#EDF3F0; --h1:#BFE6D3; --h2:#74CBAA; --h3:#2FA77F; --h4:#0B7A55;

  --toast-bg:#10231C; --toast-text:#E8F2EE;
  --scrim:rgba(8,20,15,.42);

  --shadow-1:0 1px 2px rgba(15,31,26,.06),0 1px 3px rgba(15,31,26,.05);
  --shadow-2:0 4px 12px rgba(15,31,26,.08),0 2px 4px rgba(15,31,26,.05);
  --shadow-3:0 12px 32px rgba(15,31,26,.14);

  --r-chip:999px; --r-ctl:12px; --r-card:16px; --r-sheet:24px;
  --gutter:16px; --card-pad:16px; --gap:12px;
  --nav-h:64px;
  --font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color-scheme: light;
}

:root[data-theme="dark"] {
  --bg:#0D1512; --surface:#16211C; --surface-2:#1E2C26; --border:#2A3B34;
  --text:#E8F2EE; --text-2:#A3B5AE; --text-3:#8EA199;
  --primary:#34C28F; --on-primary:#06231A; --primary-hover:#4FD1A1;
  --primary-text:#4FD1A1; --primary-tint:#173A2D; --focus:#4FD1A1;
  --kcal:#4FD1A1; --protein:#FF8F86; --carbs:#F2B84B; --fat:#7DAAF5;
  --protein-bg:#3A1F1D; --carbs-bg:#3A2D12; --fat-bg:#1B2A47; --kcal-bg:#173A2D;
  --success:#4FD1A1; --success-bg:#173A2D;
  --warn:#F2B84B; --warn-bg:#3A2D12;
  --danger:#FF8F86; --danger-bg:#3A1F1D;
  --info:#7DAAF5; --info-bg:#1B2A47;
  --dot:#5F7A6F; --trend:#4FD1A1; --grid:#24342D;
  --h0:#1E2C26; --h1:#1F4A39; --h2:#23765A; --h3:#2FA77F; --h4:#4FD1A1;
  --toast-bg:#E8F2EE; --toast-text:#0F1F1A;
  --scrim:rgba(0,0,0,.55);
  --shadow-1:none; --shadow-2:0 0 0 1px #2A3B34; --shadow-3:0 12px 32px rgba(0,0,0,.5);
  color-scheme: dark;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg:#0D1512; --surface:#16211C; --surface-2:#1E2C26; --border:#2A3B34;
    --text:#E8F2EE; --text-2:#A3B5AE; --text-3:#8EA199;
    --primary:#34C28F; --on-primary:#06231A; --primary-hover:#4FD1A1;
    --primary-text:#4FD1A1; --primary-tint:#173A2D; --focus:#4FD1A1;
    --kcal:#4FD1A1; --protein:#FF8F86; --carbs:#F2B84B; --fat:#7DAAF5;
    --protein-bg:#3A1F1D; --carbs-bg:#3A2D12; --fat-bg:#1B2A47; --kcal-bg:#173A2D;
    --success:#4FD1A1; --success-bg:#173A2D;
    --warn:#F2B84B; --warn-bg:#3A2D12;
    --danger:#FF8F86; --danger-bg:#3A1F1D;
    --info:#7DAAF5; --info-bg:#1B2A47;
    --dot:#5F7A6F; --trend:#4FD1A1; --grid:#24342D;
    --h0:#1E2C26; --h1:#1F4A39; --h2:#23765A; --h3:#2FA77F; --h4:#4FD1A1;
    --toast-bg:#E8F2EE; --toast-text:#0F1F1A;
    --scrim:rgba(0,0,0,.55);
    --shadow-1:none; --shadow-2:0 0 0 1px #2A3B34; --shadow-3:0 12px 32px rgba(0,0,0,.5);
    color-scheme: dark;
  }
}

@media (min-width: 640px) { :root { --gutter:24px; } }
@media (min-width: 1024px) { :root { --gutter:32px; --card-pad:20px; --gap:16px; } }
