/* GENERATED by `npm run themes` from frontend/scripts/themes/ — do not edit by hand.
   The API reference's own token names, mapped from the app tokens in scripts/themes/render.ts.
   Every theme is one block of the same tokens; the colour-blind-safe status palette
   (data-status-palette="cvd") re-maps only the status tokens and layers on any theme. */

/* Dark */
:root,
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #080b11;
  --bg-alt: #141b25;
  --bg-code: #0d1219;
  --sidebar-bg: #0d1219;
  --text: #eaf1f8;
  --text-muted: #96a8ba;
  --border: #212c39;
  --border-strong: #33414f;
  --scrollbar-track: #101720;
  --scrollbar-thumb: #566c83;
  --scrollbar-thumb-hover: #708ba5;
  --scrollbar-thumb-active: #88a6bf;
  --accent: #5aa9ff;
  --accent-soft: rgba(31, 139, 255, 0.14);
  --on-accent: #080b11;
  --link: #5aa9ff;
  --focus-width: 2px;
  --glow: #12233f;
  --grid-line: rgba(90, 169, 255, 0.028);
  --get: #2ec46b;
  --get-bg: #052e1a;
  --post: #5aa9ff;
  --post-bg: #12233f;
  --put: #f5a524;
  --put-bg: #2a1f05;
  --delete: #fca5a5;
  --delete-bg: #2a0d10;
  --req: #f5a524;
  --patch: #b892f6;
  --patch-bg: #221733;
}

/* Light */
:root[data-theme="light"] {
  color-scheme: light;
  --bg: #e8ecf2;
  --bg-alt: #eef1f6;
  --bg-code: #f1f4f8;
  --sidebar-bg: #ffffff;
  --text: #131a24;
  --text-muted: #586574;
  --border: #ccd4df;
  --border-strong: #a5b2c2;
  --scrollbar-track: #e9eef4;
  --scrollbar-thumb: #76899d;
  --scrollbar-thumb-hover: #5f748b;
  --scrollbar-thumb-active: #48627d;
  --accent: #0f5bb5;
  --accent-soft: rgba(31, 111, 230, 0.12);
  --on-accent: #ffffff;
  --link: #0f5bb5;
  --focus-width: 2px;
  --glow: #e0eaf9;
  --grid-line: rgba(22, 104, 204, 0.032);
  --get: #147337;
  --get-bg: #dcfce7;
  --post: #0f5bb5;
  --post-bg: #e0eaf9;
  --put: #92400e;
  --put-bg: #fef3c7;
  --delete: #b42318;
  --delete-bg: #fef2f2;
  --req: #92400e;
  --patch: #6b21a8;
  --patch-bg: #f3e8ff;
}

/* Dim */
:root[data-theme="dim"] {
  color-scheme: dark;
  --bg: #1a1f27;
  --bg-alt: #222833;
  --bg-code: #1d2128;
  --sidebar-bg: #1d2128;
  --text: #dae1ea;
  --text-muted: #aabace;
  --border: #313740;
  --border-strong: #404751;
  --scrollbar-track: #1f252d;
  --scrollbar-thumb: #788493;
  --scrollbar-thumb-hover: #98a6b8;
  --scrollbar-thumb-active: #afbed1;
  --accent: #8cbcf7;
  --accent-soft: rgba(98, 163, 238, 0.14);
  --on-accent: #1a1f27;
  --link: #8cbcf7;
  --focus-width: 2px;
  --glow: #233b57;
  --grid-line: rgba(140, 188, 247, 0.028);
  --get: #5cc38a;
  --get-bg: #002a16;
  --post: #8cbcf7;
  --post-bg: #233b57;
  --put: #e0aa4c;
  --put-bg: #2d1f05;
  --delete: #fda19d;
  --delete-bg: #2b0e0e;
  --req: #e0aa4c;
  --patch: #c2a3f7;
  --patch-bg: #2a2140;
}

/* High contrast dark */
:root[data-theme="hc-dark"] {
  color-scheme: dark;
  --bg: #000000;
  --bg-alt: #0b0d11;
  --bg-code: #05070a;
  --sidebar-bg: #05070a;
  --text: #ffffff;
  --text-muted: #dee5ec;
  --border: #878c92;
  --border-strong: #b2b8be;
  --scrollbar-track: #080b0f;
  --scrollbar-thumb: #cad0d7;
  --scrollbar-thumb-hover: #d7dde4;
  --scrollbar-thumb-active: #e2e8ee;
  --accent: #a0cfff;
  --accent-soft: rgba(108, 182, 255, 0.14);
  --on-accent: #000000;
  --link: #a0cfff;
  --focus-width: 3px;
  --glow: #00050e;
  --grid-line: rgba(160, 207, 255, 0.05);
  --get: #4ade80;
  --get-bg: #052912;
  --post: #a0cfff;
  --post-bg: #00050e;
  --put: #fbbf24;
  --put-bg: #2c2005;
  --delete: #fda299;
  --delete-bg: #2b0e0c;
  --req: #fbbf24;
  --patch: #d2b8ff;
  --patch-bg: #24173d;
}

/* High contrast light */
:root[data-theme="hc-light"] {
  color-scheme: light;
  --bg: #ffffff;
  --bg-alt: #ecf0f7;
  --bg-code: #f2f5fb;
  --sidebar-bg: #ffffff;
  --text: #000000;
  --text-muted: #2d3036;
  --border: #606369;
  --border-strong: #44484e;
  --scrollbar-track: #eef2f9;
  --scrollbar-thumb: #373b41;
  --scrollbar-thumb-hover: #30343a;
  --scrollbar-thumb-active: #25282d;
  --accent: #003f94;
  --accent-soft: rgba(4, 75, 170, 0.12);
  --on-accent: #ffffff;
  --link: #003f94;
  --focus-width: 3px;
  --glow: #fbfcff;
  --grid-line: rgba(4, 75, 170, 0.045);
  --get: #0a5c2b;
  --get-bg: #dffde4;
  --post: #003f94;
  --post-bg: #fbfcff;
  --put: #7a3b00;
  --put-bg: #fff0e7;
  --delete: #8b0001;
  --delete-bg: #fff2f0;
  --req: #7a3b00;
  --patch: #4c1d95;
  --patch-bg: #f3e8ff;
}

/* Colour-blind-safe status palette (method chips). */
:root[data-status-palette="cvd"],
:root[data-theme="dark"][data-status-palette="cvd"] {
  --get: #58a6ff;
  --get-bg: #0a223d;
  --put: #e3b341;
  --put-bg: #2b2005;
  --delete: #f7a97c;
  --delete-bg: #291103;
  --req: #e3b341;
}
:root[data-theme="light"][data-status-palette="cvd"] {
  --get: #0761c7;
  --get-bg: #ecf4ff;
  --put: #8a5a00;
  --put-bg: #fff1e0;
  --delete: #9f3f00;
  --delete-bg: #fef2ee;
  --req: #8a5a00;
}
:root[data-theme="dim"][data-status-palette="cvd"] {
  --get: #6cb0f5;
  --get-bg: #07233d;
  --put: #e3b341;
  --put-bg: #2b2005;
  --delete: #f7a97b;
  --delete-bg: #291103;
  --req: #e3b341;
}
:root[data-theme="hc-dark"][data-status-palette="cvd"] {
  --get: #79c0ff;
  --get-bg: #03233c;
  --put: #f2cc60;
  --put-bg: #2a2005;
  --delete: #f5af75;
  --delete-bg: #281201;
  --req: #f2cc60;
}
:root[data-theme="hc-light"][data-status-palette="cvd"] {
  --get: #004ba8;
  --get-bg: #edf4ff;
  --put: #6e4800;
  --put-bg: #fff1df;
  --delete: #782b00;
  --delete-bg: #fef2ee;
  --req: #6e4800;
}
