/* llama.online design tokens – "Andean warmth". Shared by the site (site.css) and the chat app (assets/chat/**).
   Fonts are self-hosted variable WOFF2 (SIL OFL, see /assets/fonts/OFL-*.txt). */

@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-display: swap; font-weight: 200 800; src: url(/assets/fonts/bricolage-grotesque-latin-wght-normal.woff2) format('woff2-variations'); 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; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-display: swap; font-weight: 200 800; src: url(/assets/fonts/bricolage-grotesque-latin-ext-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-display: swap; font-weight: 200 800; src: url(/assets/fonts/bricolage-grotesque-vietnamese-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }

@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/assets/fonts/inter-latin-wght-normal.woff2) format('woff2-variations'); 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; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/assets/fonts/inter-latin-ext-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/assets/fonts/inter-cyrillic-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/assets/fonts/inter-cyrillic-ext-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/assets/fonts/inter-greek-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF; }
@font-face { font-family: 'Inter'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/assets/fonts/inter-vietnamese-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }

:root {
  /* brand */
  --oat: #F7F2EA;
  --marigold: #F2A93B;
  --teal: #0E6B66;
  --terracotta: #D45D3A;
  --espresso: #1D1713;

  /* surfaces and text */
  --bg: #F7F2EA;
  --bg-soft: #F1EADF;
  --surface: #FFFDF9;
  --surface-2: #F4EEE4;
  --border: #E6DCCD;
  --border-strong: #D3C5B1;
  --text: #1D1713;
  --text-soft: #3C332C;
  --muted: #6B6159;

  /* accents: marigold buttons with ink text, teal links/focus, terracotta highlights */
  --accent: #F2A93B;
  --accent-hover: #E89A26;
  --accent-2: #D45D3A;
  --accent-ink: #0E6B66;
  --accent-soft: #FCEBCB;
  --accent-grad: linear-gradient(135deg, #F5B850 0%, #F2A93B 55%, #E8902F 100%);
  --on-accent: #1D1713;
  --coral: #B4472A;
  --coral-soft: #F8E0D6;
  --teal-soft: #DCEFEC;
  --success: #2E7D4F;
  --danger: #B4372A;

  --radius-sm: 10px;
  --radius: 18px;
  --radius-lg: 24px;
  --radius-pill: 999px;
  --shadow-sm: 0 1px 2px rgba(74, 52, 30, .06), 0 1px 1px rgba(74, 52, 30, .04);
  --shadow: 0 2px 6px rgba(74, 52, 30, .06), 0 12px 28px -8px rgba(74, 52, 30, .14);
  --shadow-lg: 0 4px 12px rgba(74, 52, 30, .08), 0 28px 60px -16px rgba(74, 52, 30, .24);
  --ring: 0 0 0 3px rgba(14, 107, 102, .35);

  --font: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
  --font-display: 'Bricolage Grotesque', 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, 'Cascadia Code', Menlo, Consolas, 'Liberation Mono', monospace;

  --header-h: 68px;
  --maxw: 1200px;
  --ease: cubic-bezier(.2, .7, .2, 1);

  /* textile: stepped diamonds + zig-zag, drawn in the current palette */
  --weave-a: #F2A93B;
  --weave-b: #0E6B66;
  --weave-c: #D45D3A;
  --grain-opacity: .05;

  color-scheme: light;
}

[data-theme="dark"] {
  --oat: #14110F;
  --marigold: #F5B44E;
  --teal: #3FB8AE;
  --terracotta: #E07A57;

  --bg: #14110F;
  --bg-soft: #191512;
  --surface: #1E1A17;
  --surface-2: #26211D;
  --border: #332C26;
  --border-strong: #463D35;
  --text: #F3ECE2;
  --text-soft: #DCD2C5;
  --muted: #A69A8D;

  --accent: #F5B44E;
  --accent-hover: #F8C36D;
  --accent-2: #E07A57;
  --accent-ink: #3FB8AE;
  --accent-soft: rgba(245, 180, 78, .14);
  --accent-grad: linear-gradient(135deg, #F8C36D 0%, #F5B44E 55%, #EC9B3A 100%);
  --on-accent: #1D1713;
  --coral: #EE8F6C;
  --coral-soft: rgba(224, 122, 87, .16);
  --teal-soft: rgba(63, 184, 174, .14);
  --success: #5CC08A;
  --danger: #F07A6A;

  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);
  --shadow: 0 2px 6px rgba(0, 0, 0, .3), 0 14px 32px -10px rgba(0, 0, 0, .5);
  --shadow-lg: 0 6px 16px rgba(0, 0, 0, .35), 0 30px 64px -18px rgba(0, 0, 0, .65);
  --ring: 0 0 0 3px rgba(63, 184, 174, .45);

  --weave-a: #F5B44E;
  --weave-b: #3FB8AE;
  --weave-c: #E07A57;
  --grain-opacity: .07;

  color-scheme: dark;
}

/* Scripts without a bundled webfont: system stacks; headings use the same family. */
:lang(zh) { --font: system-ui, -apple-system, 'PingFang SC', 'Microsoft YaHei', 'Noto Sans SC', 'Noto Sans CJK SC', sans-serif; }
:lang(ja) { --font: system-ui, -apple-system, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Yu Gothic UI', 'Meiryo', 'Noto Sans JP', sans-serif; }
:lang(ko) { --font: system-ui, -apple-system, 'Apple SD Gothic Neo', 'Malgun Gothic', 'Noto Sans KR', sans-serif; }
:lang(th) { --font: system-ui, -apple-system, 'Leelawadee UI', 'Thonburi', 'Noto Sans Thai', 'Tahoma', sans-serif; }
:lang(ar) { --font: system-ui, -apple-system, 'Segoe UI', 'Geeza Pro', 'Noto Sans Arabic', 'Tahoma', sans-serif; }
:lang(fa) { --font: system-ui, -apple-system, 'Segoe UI', 'Noto Sans Arabic', 'Vazirmatn', 'Tahoma', sans-serif; }
:lang(ur) { --font: 'Noto Nastaliq Urdu', system-ui, -apple-system, 'Segoe UI', 'Noto Sans Arabic', 'Tahoma', sans-serif; }
:lang(hi) { --font: system-ui, -apple-system, 'Nirmala UI', 'Kohinoor Devanagari', 'Noto Sans Devanagari', sans-serif; }
:lang(bn) { --font: system-ui, -apple-system, 'Nirmala UI', 'Kohinoor Bangla', 'Noto Sans Bengali', sans-serif; }
:lang(zh), :lang(ja), :lang(ko), :lang(th), :lang(ar), :lang(fa), :lang(ur), :lang(hi), :lang(bn) { --font-display: var(--font); }
/* Bricolage has no Cyrillic: Russian/Ukrainian headings use Inter (same metrics family as the body). */
:lang(ru), :lang(uk) { --font-display: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif; }
/* Korean wraps between words (spaces), not between syllables. */
:lang(ko) { word-break: keep-all; overflow-wrap: break-word; }
