@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,wght@0,300;0,400;0,600;0,700;1,300&family=DM+Sans:wght@300;400;500;600;700&family=DM+Mono:wght@400;500&display=swap');

:root {
  --navy: #1f2b4d;
  --navy-dark: #141b33;
  --navy-light: #3d5188;
  --navy-pale: #eef1f8;
  --gold: #b8892f;
  --gold-light: #e0b563;
  --gold-pale: #fbf6ea;
  --white: #ffffff;
  --bg: #f7f6f3;
  --bg-card: #ffffff;
  --surface: #fafaf8;
  --text: #1c1b19;
  --text-2: #4a473f;
  --text-3: #8b8579;
  --border: #e7e3da;
  --border-dark: #d6d0c3;
  --green: #1a6b3c;
  --green-bg: #f0faf5;
  --amber: #b06a00;
  --amber-bg: #fdf6e8;
  --red-bg: #fdf1f1;
  --crimson: #a6303f;
  --sidebar-w: 240px;
  --topbar-h: 56px;
  --radius: 8px;
  --radius-lg: 12px;
  --shadow-sm: 0 1px 3px rgba(28,27,25,.06), 0 1px 2px rgba(28,27,25,.04);
  --shadow: 0 4px 16px rgba(28,27,25,.08), 0 1px 4px rgba(28,27,25,.04);
  --shadow-lg: 0 12px 40px rgba(28,27,25,.12), 0 4px 12px rgba(28,27,25,.06);
  --transition: all 0.18s cubic-bezier(0.4,0,0.2,1);

  /* Chat-specific */
  --chat-bg: #f7f6f3;
  --chat-max-w: 760px;
  --bubble-user-bg: var(--navy);
  --bubble-user-text: var(--white);
  --bubble-assistant-bg: transparent;
  --composer-bg: #ffffff;
  --composer-border: #d6d0c3;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { font-size: 15px; -webkit-font-smoothing: antialiased; }

body {
  font-family: 'DM Sans', sans-serif;
  background: var(--bg);
  color: var(--text);
  min-height: 100vh;
  line-height: 1.5;
}

::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--border-dark); border-radius: 99px; }
