/* QPoint colour tokens — plain CSS, no Bootstrap required */
:root {
  --qp-green-50: #eafcf3;
  --qp-green-100: #d2f1e2;
  --qp-green-200: #ade0c9;
  --qp-green-300: #75ceaa;
  --qp-green-400: #2bb78b;
  --qp-green-500: #009a73;
  --qp-green-600: #008265;
  --qp-green-700: #006a53;
  --qp-green-800: #005240;
  --qp-green-900: #003c2f;
  --qp-green-950: #00261e;

  --qp-navy-50: #f9fafc;
  --qp-navy-100: #f2f3f8;
  --qp-navy-200: #e4e6ed;
  --qp-navy-300: #d0d2dd;
  --qp-navy-400: #a0a3b7;
  --qp-navy-500: #70748b;
  --qp-navy-600: #5a5e79;
  --qp-navy-700: #444864;
  --qp-navy-800: #323654;
  --qp-navy-900: #21243c;
  --qp-navy-950: #131527;

  --qp-teal-50: #e7fcfa;
  --qp-teal-100: #d1f3f0;
  --qp-teal-200: #ace7e2;
  --qp-teal-300: #7ed7d1;
  --qp-teal-400: #45c4be;
  --qp-teal-500: #00afa9;
  --qp-teal-600: #00938d;
  --qp-teal-700: #007671;
  --qp-teal-800: #005b57;
  --qp-teal-900: #00403d;
  --qp-teal-950: #002725;

  --qp-cyan-50: #e7fbff;
  --qp-cyan-100: #d2f3fb;
  --qp-cyan-200: #afe6f5;
  --qp-cyan-300: #83d7eb;
  --qp-cyan-400: #4ec5df;
  --qp-cyan-500: #18b1cd;
  --qp-cyan-600: #0093ad;
  --qp-cyan-700: #00768d;
  --qp-cyan-800: #005a6c;
  --qp-cyan-900: #003e4d;
  --qp-cyan-950: #00252f;

  --qp-sky-50: #e9f9ff;
  --qp-sky-100: #d5efff;
  --qp-sky-200: #b3e0ff;
  --qp-sky-300: #8bcdfb;
  --qp-sky-400: #60b8f2;
  --qp-sky-500: #3ca2e0;
  --qp-sky-600: #2086c0;
  --qp-sky-700: #0b6b9d;
  --qp-sky-800: #00517b;
  --qp-sky-900: #003958;
  --qp-sky-950: #002238;

  --qp-blue-50: #edf7ff;
  --qp-blue-100: #d9eaff;
  --qp-blue-200: #b9d5ff;
  --qp-blue-300: #95bbff;
  --qp-blue-400: #709ef6;
  --qp-blue-500: #5283e0;
  --qp-blue-600: #3f6cc3;
  --qp-blue-700: #3057a2;
  --qp-blue-800: #224280;
  --qp-blue-900: #172f5f;
  --qp-blue-950: #0c1d3f;

  --qp-indigo-50: #f3f5ff;
  --qp-indigo-100: #e2e4ff;
  --qp-indigo-200: #c7cbff;
  --qp-indigo-300: #a9acf7;
  --qp-indigo-400: #8a8ae9;
  --qp-indigo-500: #6e6bcf;
  --qp-indigo-600: #5c58b6;
  --qp-indigo-700: #4b4798;
  --qp-indigo-800: #3a367a;
  --qp-indigo-900: #2a275b;
  --qp-indigo-950: #1b193f;

  --qp-violet-50: #faf3ff;
  --qp-violet-100: #eee2ff;
  --qp-violet-200: #ddc9fe;
  --qp-violet-300: #c7aaf5;
  --qp-violet-400: #b08ae7;
  --qp-violet-500: #986dd0;
  --qp-violet-600: #8057b4;
  --qp-violet-700: #684595;
  --qp-violet-800: #513476;
  --qp-violet-900: #3b2457;
  --qp-violet-950: #26153a;

  --qp-pink-50: #fff0fb;
  --qp-pink-100: #ffe0f1;
  --qp-pink-200: #fdc8e4;
  --qp-pink-300: #f4aad4;
  --qp-pink-400: #e88cc1;
  --qp-pink-500: #d472ac;
  --qp-pink-600: #b45990;
  --qp-pink-700: #934474;
  --qp-pink-800: #723159;
  --qp-pink-900: #52203f;
  --qp-pink-950: #341026;

  --qp-coral-50: #fff1ed;
  --qp-coral-100: #ffe2dc;
  --qp-coral-200: #ffcbc2;
  --qp-coral-300: #ffafa3;
  --qp-coral-400: #fa9284;
  --qp-coral-500: #e8796c;
  --qp-coral-600: #c65f54;
  --qp-coral-700: #a1483f;
  --qp-coral-800: #7d342d;
  --qp-coral-900: #59211c;
  --qp-coral-950: #38100d;

  --qp-amber-50: #fff5e5;
  --qp-amber-100: #ffecd2;
  --qp-amber-200: #ffdfb3;
  --qp-amber-300: #ffce8d;
  --qp-amber-400: #ffbd66;
  --qp-amber-500: #f5ae4b;
  --qp-amber-600: #cd8b27;
  --qp-amber-700: #a46b0b;
  --qp-amber-800: #7c4e00;
  --qp-amber-900: #553200;
  --qp-amber-950: #311900;

  --qp-lime-50: #effbe9;
  --qp-lime-100: #e2f6d8;
  --qp-lime-200: #ceefbd;
  --qp-lime-300: #b7e69d;
  --qp-lime-400: #9fda7d;
  --qp-lime-500: #8ccc66;
  --qp-lime-600: #6da948;
  --qp-lime-700: #528631;
  --qp-lime-800: #3a641d;
  --qp-lime-900: #24440c;
  --qp-lime-950: #0f2601;

  --qp-red-50: #ffefeb;
  --qp-red-100: #ffdbd6;
  --qp-red-200: #ffbcb5;
  --qp-red-300: #ff938b;
  --qp-red-400: #fe6863;
  --qp-red-500: #e64343;
  --qp-red-600: #c72b30;
  --qp-red-700: #a51b22;
  --qp-red-800: #830f17;
  --qp-red-900: #61080e;
  --qp-red-950: #410306;

  --qp-brand: #009a73;

  /* Typography */
  --qp-font-sans: "Figtree", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --qp-text-xs: .75rem;  --qp-text-sm: .875rem; --qp-text-base: 1rem;  --qp-text-md: 1.125rem;
  --qp-text-lg: 1.25rem; --qp-text-xl: 1.5rem;  --qp-text-2xl: 2rem;   --qp-text-3xl: 2.5rem;
  --qp-text-4xl: 3rem;   --qp-text-5xl: 4rem;
  --qp-weight-regular: 400; --qp-weight-medium: 500; --qp-weight-semibold: 600; --qp-weight-bold: 700;

  /* Semantic — light */
  --qp-bg: #ffffff;               --qp-surface: var(--qp-navy-50);   --qp-surface-raised: #ffffff;
  --qp-text: var(--qp-navy-800);  --qp-text-secondary: var(--qp-navy-600); --qp-text-muted: var(--qp-navy-500);
  --qp-border: var(--qp-navy-200); --qp-border-strong: var(--qp-navy-300);
  --qp-action: var(--qp-green-500); --qp-action-hover: var(--qp-green-600); --qp-on-action: #ffffff;
  --qp-link: var(--qp-green-600);  --qp-focus: rgb(0 154 115 / .35);
  --qp-success: var(--qp-green-500); --qp-info: var(--qp-sky-600); --qp-warning: var(--qp-amber-500); --qp-danger: var(--qp-red-500);
}
[data-bs-theme="dark"], .qp-dark {
  --qp-bg: var(--qp-navy-950);    --qp-surface: var(--qp-navy-900);  --qp-surface-raised: var(--qp-navy-900);
  --qp-text: var(--qp-navy-100);  --qp-text-secondary: var(--qp-navy-400); --qp-text-muted: #888ba1;
  --qp-border: var(--qp-navy-800); --qp-border-strong: var(--qp-navy-700);
  --qp-action: var(--qp-green-500); --qp-action-hover: var(--qp-green-600); --qp-on-action: #ffffff;
  --qp-link: var(--qp-green-300);
  --qp-success: var(--qp-green-500); --qp-info: var(--qp-sky-600); --qp-warning: var(--qp-amber-500); --qp-danger: var(--qp-red-500);
  /* status text on dark: green-300, sky-400, amber-400, red-400 */
}
