/* ─────────────────────────────
   BRAND THEME
   ─────────────────────────────

   The design system (design-system.css) ships neutral defaults on
   real token names. This file is your brand: override §1/§2
   primitives here and the semantic layer cascades through them.
   You should rarely need to restate semantic tokens.

   Load AFTER design-system.css:
     <link rel="stylesheet" href="assets/css/design-system.css">
     <link rel="stylesheet" href="assets/css/theme.css">

   Fonts: self-host with @font-face (files in assets/fonts/), or
   @import a Google Fonts URL at the top of this file.

   Everything below is a commented example - uncomment and edit
   to apply your brand.
   ───────────────────────────── */


/* -- Brand fonts (self-hosted example) -- */
/*
@font-face {
  font-family: "Your Font";
  src: url("../fonts/your-font.woff2") format("woff2");
  font-weight: 300 900;
  font-style: normal;
  font-display: swap;
}
*/

:root {

  /* -- Fonts -- */
  /*
  --font-primary: "Your Font", sans-serif;
  --font-secondary: Georgia, serif;
  --font-tertiary: ui-monospace, monospace;
  */

  /* -- Core colours -- */
  /* --text-accent drives --text-link and --input-focus */
  /*
  --text-accent: #3485cd;
  --text-primary: var(--neutral-800);
  --background-primary: var(--white);
  */

  /* -- Status colours (optional) -- */
  /*
  --status-info: #0969da;
  --status-success: #1a7f37;
  --status-warning: #9a6700;
  --status-danger: #cf222e;
  */

}


/* -- Dark mode overrides (optional) -- */
[data-theme="dark"] {
  /*
  --text-accent: #7db8e8;
  */

  /* Status text: the design system's dark block never flips the pastel
     --status-*-bg backgrounds, but swaps --status-* text to light tints -
     light-on-light in callouts, summary cards, and toasts. Keep the pastel
     chips and revert the status text colours to the light-mode palette so
     titles and icons stay dark enough to read on pastel. */
  --status-info: var(--blue);
  --status-success: var(--green);
  --status-warning: var(--yellow-dark);
  --status-danger: var(--red);
}


/* -- System preference fallback (no-JS) --
   Must mirror the [data-theme="dark"] block above exactly.
   Drift between the two blocks is a known failure mode. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    /*
    --text-accent: #7db8e8;
    */

    /* Mirror of the [data-theme="dark"] status text colours above */
    --status-info: var(--blue);
    --status-success: var(--green);
    --status-warning: var(--yellow-dark);
    --status-danger: var(--red);
  }
}
