/* Quiet o24 foundations shared by every application page and the atlas. */
@font-face { font-family: 'Atlas Sohne'; src: url('assets/fonts/o24-atlas/test-soehne-buch.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Atlas Sohne'; src: url('assets/fonts/o24-atlas/test-soehne-kraftig.woff2') format('woff2'); font-weight: 500; font-display: swap; }
@font-face { font-family: 'Atlas Sohne'; src: url('assets/fonts/o24-atlas/test-soehne-halbfett.woff2') format('woff2'); font-weight: 600 800; font-display: swap; }
@font-face { font-family: 'Atlas Breit'; src: url('assets/fonts/o24-atlas/test-soehne-breit-halbfett.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Atlas Founders'; src: url('assets/fonts/o24-atlas/test-founders-grotesk-medium.woff2') format('woff2'); font-weight: 500; font-display: swap; }
:root {
  --qa-blue: #1d63f2; --qa-blue-hover: #124fca; --qa-ink: #20252b;
  --qa-muted: #646c76; --qa-paper: #f7f8fa; --qa-surface: #fff;
  --qa-line: #e1e4e8; --qa-soft: #edf2fc; --qa-input-line: #8b939e;
  --qa-green: #267049; --qa-green-bg: #eaf4ed; --qa-amber: #865c10;
  --qa-amber-bg: #faf1de; --qa-red: #ae3535; --qa-red-bg: #fbecec;
  --brand-font: 'Atlas Breit'; --brand-weight: 600; --rail-width: 208px;
  --color-primary-red: var(--qa-blue); --color-primary-blue: var(--qa-ink);
  --quiet-coral: var(--qa-blue); --quiet-ink: var(--qa-ink);
  --quiet-navy-hover: var(--qa-blue-hover); --quiet-line: var(--qa-line);
  --quiet-line-strong: var(--qa-input-line); --quiet-surface: var(--qa-surface);
  --quiet-surface-active: var(--qa-soft); --color-bg-cream: var(--qa-paper);
  --color-text-primary: var(--qa-ink); --color-text-secondary: var(--qa-muted);
  --color-text-charcoal: var(--qa-ink); --color-text-body: var(--qa-muted);
  --color-surface: var(--qa-surface); --color-surface-input: var(--qa-surface);
  --color-border: var(--qa-line); --color-text-link: var(--qa-blue);
  --radius-sm: 6px; --radius-md: 10px; --radius-lg: 14px;
  color-scheme: light; scroll-behavior: smooth; scroll-padding-top: 90px;
}
:root[data-theme='dark'] {
  --qa-ink: #e9edf3; --qa-muted: #a1abb9; --qa-paper: #15181d;
  --qa-surface: #1c2027; --qa-line: #343b46; --qa-soft: #243450;
  --qa-input-line: #697789; --qa-green: #93d7ae; --qa-green-bg: #20392d;
  --qa-amber: #e6c786; --qa-amber-bg: #3b3222; --qa-red: #f2aaaa;
  --qa-red-bg: #43282c; color-scheme: dark;
}

:root {
  --font-ui: 'Atlas Sohne', Arial, sans-serif;
  --color-primary-green: var(--qa-green); --color-primary-yellow: var(--qa-amber);
  --color-primary-light: #8bb3ff; --color-danger: var(--qa-red);
  --color-bg-cream-brand: var(--qa-paper); --color-bg-white: var(--qa-surface);
  --color-bubble-grey: var(--qa-line); --color-border-light: var(--qa-line);
  --color-surface-alt: var(--qa-paper); --color-surface-panel: var(--qa-surface);
  --color-surface-active: var(--qa-soft); --color-surface-pilled: var(--qa-paper);
  --color-text-placeholder: var(--qa-muted); --color-text-inverse: #fff;
  --color-bot-bubble-bg: var(--qa-paper); --color-user-bubble-bg: var(--qa-blue);
  --quiet-canvas: var(--qa-surface); --quiet-surface-subtle: var(--qa-paper);
  --quiet-ink-muted: var(--qa-muted);
  --spacing-xs: .5rem; --spacing-sm: 1rem; --spacing-md: 2rem;
  --radius-full: 9999px; --chat-width: 800px;
  --shadow-sm: 0 1px 2px #20252b08;
  --shadow-md: 0 6px 20px #20252b0d;
  --shadow-lg: 0 16px 44px #20252b1a;
}
:root[data-theme='dark'] { --color-text-link: #8bb3ff; }
