/* ==========================================================================
   Belegt design tokens
   Structure, scale and naming mirror the America.gov design system
   (Tailwind v4 theme: --color-*, --spacing-*, --radius-*, --text-*, --ease-*)
   with the blue scale replaced by a Swiss red scale.

   Swiss red:
     --color-swiss  #FF0000  official digital value of the Swiss flag red
                             (Wappenschutzverordnung, Annex: Pantone 485 C,
                             RGB 255/0/0). Used for the brand mark only.
     --color-red-600 #DA291C common screen rendering of Pantone 485 C;
                             white text on it passes WCAG AA (4.9:1).
   America.gov blue-900 (#000c1f, ink) becomes red-900 (#1c0204, ink).
   ========================================================================== */

@font-face {
  font-family: "Newsreader";
  src: url(/fonts/newsreader-latin-standard-normal.woff2) format("woff2");
  font-weight: 200 800; font-style: normal; font-display: swap;
  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: "Newsreader";
  src: url(/fonts/newsreader-latin-ext-standard-normal.woff2) format("woff2");
  font-weight: 200 800; font-style: normal; font-display: swap;
  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: "Newsreader";
  src: url(/fonts/newsreader-latin-standard-italic.woff2) format("woff2");
  font-weight: 200 800; font-style: italic; font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url(/fonts/inter-latin-wght-normal.woff2) format("woff2");
  font-weight: 100 900; font-style: normal; font-display: swap;
  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";
  src: url(/fonts/inter-latin-ext-wght-normal.woff2) format("woff2");
  font-weight: 100 900; font-style: normal; font-display: swap;
  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;
}

:root {
  /* --- palette ---------------------------------------------------------- */
  --color-swiss: #ff0000;
  --color-red-50: #fdf3f2;
  --color-red-100: #fbe3e1;
  --color-red-500: #c8102e;   /* links (5.6:1 on white) */
  --color-red-600: #da291c;   /* primary action */
  --color-red-700: #8e0d14;   /* pressed / deep accents */
  --color-red-800: #3d0509;
  --color-red-900: #1c0204;   /* ink */
  --color-red-900-65: #1c0204a6;
  --color-red-900-45: #1c020473;
  --color-red-900-15: #1c020426;
  --color-red-900-10: #1c02041a;
  --color-red-900-5: #1c02040d;
  --color-green-50: #e6f6ea;
  --color-green-600: #007f26;
  --color-green: #34c759;
  --color-amber-50: #fff6e5;
  --color-amber-700: #8a5a00;
  --color-grey-50: #f7f7f7;
  --color-grey-100: #f0f0f0;
  --color-grey-200: #e3e4e6;
  --color-white: #fff;
  --color-black: #000;

  /* --- semantic (same names as America.gov) ----------------------------- */
  --color-text-primary: var(--color-red-900);
  --color-text-secondary: color-mix(in srgb, var(--color-text-primary) 65%, transparent);
  --color-text-tertiary: color-mix(in srgb, var(--color-text-primary) 45%, transparent);
  --color-text-disabled: color-mix(in srgb, var(--color-text-primary) 15%, transparent);
  --color-text-primary-invert: var(--color-white);
  --color-background-primary: var(--color-white);
  --color-background-secondary: color-mix(in srgb, var(--color-red-700) 8%, transparent);
  --color-background-tertiary: color-mix(in srgb, var(--color-red-700) 4%, transparent);
  --color-border-primary: color-mix(in srgb, var(--color-text-primary) 85%, transparent);
  --color-border-secondary: color-mix(in srgb, var(--color-text-primary) 45%, transparent);
  --color-border-tertiary: color-mix(in srgb, var(--color-text-primary) 10%, transparent);
  --color-border-quaternary: color-mix(in srgb, var(--color-text-primary) 5%, transparent);
  --color-link: var(--color-red-500);
  --color-primary: var(--color-red-900);
  --color-action: var(--color-red-600);
  --color-action-pressed: var(--color-red-700);
  --color-surface-muted: var(--color-grey-50);
  --color-surface-hero: #f1f0f0;
  --color-verified: var(--color-green-600);
  --color-verified-surface: var(--color-green-50);
  --color-highlight: #ffe3df;
  --color-notice-error-surface: color-mix(in srgb, var(--color-red-600) 5%, var(--color-background-primary));
  --color-notice-error-border: color-mix(in srgb, var(--color-red-600) 12%, var(--color-background-primary));

  /* --- type ------------------------------------------------------------- */
  --font-display: "Newsreader", "Rhymes Fallback", "Times New Roman", Times, serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-sans-display: "Inter", "Helvetica Neue", Arial, Helvetica, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  --text-heading-xl: clamp(4rem, 1rem + 14vw, 16rem);
  --text-heading-l: clamp(3rem, 2.3rem + 3.01vw, 5rem);
  --text-heading-m: clamp(2rem, 1.6rem + 1.6vw, 3rem);
  --text-heading-s: clamp(1.125rem, .99rem + .56vw, 1.5rem);
  --text-heading-xs: clamp(1rem, .96rem + .19vw, 1.125rem);
  --text-body-l: 1.125rem;
  --text-body-m: 1rem;
  --text-body-s: .75rem;
  --text-label-m: 1rem;
  --text-label-s: .75rem;
  --tracking-display: -.03em;
  --tracking-sans-display: -.01em;
  --tracking-body: -.02em;

  /* --- space, radius, motion ------------------------------------------- */
  --spacing-1: 4px; --spacing-2: 8px; --spacing-3: 12px; --spacing-4: 16px;
  --spacing-6: 24px; --spacing-8: 32px; --spacing-12: 48px; --spacing-16: 64px; --spacing-24: 96px;
  --spacing-page-inset: 1.5rem;
  --container-site: 87rem;
  --container-chat: 42rem;
  --radius-4: 4px; --radius-8: 8px; --radius-12: 12px; --radius-16: 16px; --radius-24: 24px;
  --radius-32: 32px; --radius-40: 40px; --radius-48: 48px; --radius-full: 9999px;
  --shadow-elevation-1: 0 10px 40px 0 #1c020414;
  --drop-shadow-soft-sm: 0 3.5px 9.6px #1c020414;
  --drop-shadow-soft-md: 0 5.859px 16.04px #1c020414;
  --drop-shadow-soft-lg: 0 8.682px 17.364px #1c020414;
  --blur-scrim: 12px;
  --blur-frost: 25px;
  --scale-press: .98;
  --ease-standard: cubic-bezier(.4, 0, .2, 1);
  --ease-out-quint: cubic-bezier(.22, 1, .36, 1);
  --ease-drawer: cubic-bezier(.32, .72, 0, 1);
  --z-dock: 40; --z-floating: 50; --z-scrim: 99; --z-modal: 100;
}
