/* dalla brand for LibreChat — mirrors dalla.ae ("espresso" palette, Fraunces +
 * Instrument Sans + IBM Plex Sans Arabic). Loaded after the app CSS and only
 * overrides theme variables + fonts, so LibreChat upgrades keep working. */
:root, html {
  --white: #f8f5ee; --black: #130e0b;
  --gray-20: #f3ede1; --gray-50: #f3ede1; --gray-100: #e9e1d1; --gray-200: #dccfb9; --gray-300: #c9bba2;
  --gray-400: #9a8c78; --gray-500: #6e6558; --gray-600: #4f4639; --gray-700: #3f382f; --gray-800: #1b1712;
  --gray-850: #17130f; --gray-900: #130e0b;
  --brand-purple: #3e2718;
  --green-500: #2f6b4f; --green-600: #2a5f46; --green-700: #3e2718; --green-800: #2a1a10; --green-900: #1d1510;
  --presentation: #f3ede1; --surface-primary: #f8f5ee; --surface-primary-alt: #f3ede1; --surface-primary-contrast: #e9e1d1;
  --surface-secondary: #f3ede1; --surface-secondary-alt: #e9e1d1; --surface-tertiary: #ece2d0; --surface-tertiary-alt: #f8f5ee;
  --surface-dialog: #f8f5ee; --surface-chat: #f8f5ee; --surface-hover: #e9e1d1; --surface-hover-alt: #dccfb9; --surface-active: #e9e1d1; --surface-active-alt: #dccfb9;
  --surface-submit: #3e2718; --surface-submit-hover: #2a1a10;
  --header-primary: #f3ede1; --header-hover: #e9e1d1; --header-button-hover: #e9e1d1;
  --text-primary: #1b1712; --text-secondary: #3f382f; --text-secondary-alt: #6e6558; --text-tertiary: #6e6558;
  --border-light: #e4dac7; --border-medium: #dccfb9; --border-medium-alt: #dccfb9; --border-heavy: #c9bba2; --border-xheavy: #9a8c78;
  --ring-primary: #3e2718;
  --background: 40 33% 95%; --foreground: 24 22% 9%; --card: 40 33% 95%; --card-foreground: 24 22% 9%;
  --primary: 24 44% 17%; --primary-foreground: 40 33% 95%; --secondary: 40 30% 88%; --secondary-foreground: 24 22% 9%;
  --muted: 40 30% 88%; --muted-foreground: 30 12% 39%; --accent: 40 30% 86%; --accent-foreground: 24 22% 9%;
  --border: 38 30% 82%; --input: 38 30% 82%; --ring: 24 44% 17%;
  --dalla-accent: #3e2718; --dalla-accent-ink: #f3ede1; --dalla-gold: #c9a25e; --dalla-ok: #2f6b4f; --dalla-err: #9a3b32;
}
.dark, html.dark {
  --white: #f3ede1;
  --presentation: #1d1510; --surface-primary: #130e0b; --surface-primary-alt: #17130f; --surface-primary-contrast: #1d1510;
  --surface-secondary: #1d1510; --surface-secondary-alt: #1d1510; --surface-tertiary: #2a2118; --surface-tertiary-alt: #2a2118;
  --surface-dialog: #17130f; --surface-chat: #1d1510; --surface-hover: #2a2118; --surface-hover-alt: #33291f; --surface-active: #33291f; --surface-active-alt: #2a2118;
  --surface-submit: #c9a25e; --surface-submit-hover: #b8913f;
  --header-primary: #1d1510; --header-hover: #2a2118; --header-button-hover: #2a2118;
  --text-primary: #f3ede1; --text-secondary: #d9cfbd; --text-secondary-alt: #b8ab94; --text-tertiary: #9a8c78;
  --border-light: rgba(243,237,225,.10); --border-medium: rgba(243,237,225,.16); --border-medium-alt: rgba(243,237,225,.16); --border-heavy: rgba(243,237,225,.24); --border-xheavy: rgba(243,237,225,.34);
  --ring-primary: #c9a25e;
  --background: 24 27% 6%; --foreground: 40 33% 92%; --card: 24 27% 6%; --card-foreground: 40 33% 92%;
  --primary: 40 33% 92%; --primary-foreground: 24 27% 6%; --secondary: 24 24% 12%; --secondary-foreground: 40 33% 92%;
  --muted: 24 24% 12%; --muted-foreground: 34 15% 60%; --accent: 24 24% 14%; --accent-foreground: 40 33% 92%;
  --border: 24 24% 16%; --input: 24 24% 16%; --ring: 40 50% 58%;
  --dalla-accent: #c9a25e; --dalla-accent-ink: #130e0b;
}
/* Fonts: body Instrument Sans (Arabic falls back to IBM Plex Sans Arabic), headings Fraunces, code IBM Plex Mono. */
body, button, input, textarea, select, .font-sans, [class*="font-sans"] { font-family: 'Instrument Sans', 'IBM Plex Sans Arabic', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif !important; }
code, pre, kbd, .font-mono, [class*="font-mono"], .hljs { font-family: 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace !important; }
h1, h2, .text-4xl, .text-3xl, .text-2xl { font-family: Fraunces, Georgia, serif !important; font-weight: 500 !important; letter-spacing: -0.02em; }
:lang(ar), [dir="rtl"] { font-family: 'IBM Plex Sans Arabic', 'Instrument Sans', system-ui, sans-serif !important; }
/* Submit / primary buttons pick up the espresso accent; links the accent. */
.bg-green-600, .bg-green-500, .bg-green-700 { background-color: var(--dalla-accent) !important; color: var(--dalla-accent-ink) !important; }
.hover\:bg-green-700:hover, .hover\:bg-green-600:hover { background-color: var(--surface-submit-hover) !important; }
.text-green-500, .text-green-600, .text-green-700 { color: var(--dalla-ok) !important; }
a.text-blue-500, a.text-blue-600, .text-blue-500, .text-blue-600 { color: var(--dalla-accent) !important; }
::selection { background: var(--dalla-accent); color: var(--dalla-accent-ink); }
/* Login / landing logo */
img[src*="logo.svg"], img[alt*="Logo"], img[alt*="logo"] { border-radius: 8px; }
/* Tailwind compiles bg-white/bg-gray-* to literal rgb(); remap the few used on shells. */
.bg-white, .bg-gray-50 { background-color: var(--surface-primary) !important; }
.dark .bg-gray-900, .dark .bg-gray-800, .dark .bg-black { background-color: var(--surface-primary) !important; }
.dark .bg-gray-700 { background-color: var(--surface-tertiary) !important; }
a { color: var(--dalla-accent); }
.dark a { color: var(--dalla-gold); }
