/* Direction: civic trust — deep governance navy, warm gold accent, a
   confident serif for headings over a crisp geometric sans for data. */
/* Completed by the platform from the short form: both modes, every
   palette token, each text-on-ground pair at its floor. To restyle, write the
   short form again (the decisions in one :root) and it is completed again. */

:root {
  --canvas: #f4f6f9;
  --surface: #ffffff;
  --surface-2: #eaeef4;
  --border: #dde2ea;
  --border-strong: #c3cbda;
  --ink: #131a2b;
  --muted: #5b6579;
  --accent: #1d3a6e;
  --accent-hover: #16305c;
  --accent-ink: #ffffff;
  --accent-text: #1d3a6e;
  --accent-strong: #16305c;
  --accent-soft: #e4ebf8;
  --accent-border: #b7c6e6;
  --success: #1f7a4d;
  --success-ink: #ffffff;
  --success-soft: #dae7e4;
  --success-strong: #1d7047;
  --warning: #b3790a;
  --warning-ink: #131a2b;
  --warning-soft: #ece7dc;
  --warning-strong: #8c5e07;
  --danger: #b2352c;
  --danger-ink: #ffffff;
  --danger-soft: #ecdfe0;
  --danger-strong: #b2352c;
  --chart-1: #1d3a6e;
  --chart-2: #74377f;
  --chart-3: #86262c;
  --chart-4: #5b4f05;
  --chart-5: #0d6d5d;
  --chart-6: #2762aa;

  --font-display: "Fraunces", Georgia, serif;
  --font-body: "Public Sans", "Inter", system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", monospace;
  --radius-card: 16px;
  --radius-btn: 10px;
  --radius-input: 10px;
  --x-sidebar: #101b33;
  --x-sidebar-ink: #d7deec;
  --x-sidebar-muted: #8b96b3;
  --x-sidebar-active: #24406f;
  --x-on-photo: #ffffff;
  --x-demo: #c8952e;
  --font-sans: "Public Sans", "Inter", system-ui, sans-serif;
  --display-weight: 700;
  --display-tracking: -0.02em;
  --eyebrow-tracking: 0.08em;
}

html[data-theme="dark"] {
  --canvas: #04080f;
  --surface: #1d2127;
  --surface-2: #11141b;
  --border: #272b31;
  --border-strong: #4f5257;
  --ink: #f4f6f9;
  --muted: #94979b;
  --accent: #1d3a6e;
  --accent-hover: #3f5884;
  --accent-ink: #ffffff;
  --accent-text: #8190af;
  --accent-strong: #7686a8;
  --accent-soft: #0a1324;
  --accent-border: #0f1e3a;
  --success: #1f7a4d;
  --success-ink: #ffffff;
  --success-soft: #0a211d;
  --success-strong: #509874;
  --warning: #b3790a;
  --warning-ink: #ffffff;
  --warning-soft: #2b210e;
  --warning-strong: #b9841e;
  --danger: #b2352c;
  --danger-ink: #ffffff;
  --danger-soft: #2a1215;
  --danger-strong: #c86f68;
  --chart-1: #4d6da6;
  --chart-2: #ab6cb7;
  --chart-3: #c25d5d;
  --chart-4: #a67914;
  --chart-5: #509346;
  --chart-6: #1dabb3;
}

/*
 * app.css — THIS APP'S OWN CSS, for what no primitive and no utility covers:
 * the one screen that makes this app itself — a timer's dial, a kanban
 * board's columns, a seating plan, a game grid. Write those here, named for
 * what they are, in tokens only (var(--accent), var(--radius-card),
 * var(--font-display)). It loads last, after design.css and theme.css, and
 * wins. Ships empty.
 *
 * Not for restyling a primitive: those live in tailwind/components.css and
 * are yours to edit there. Not for colours: those live in theme.css.
 */
