/* GENERATED by gen-bridge.py from tux-tokens.css — DO NOT EDIT.
 * Re-scopes the canonical TUX `tti-dark` theme onto Forgejo's theme selectors,
 * and `tti-hc` onto the forge-side html.tti-hc class (Forgejo owns data-theme
 * there; standalone pages use the kit's own [data-theme="tti-hc"] directly).
 * The kit file's `:root` (light) block needs no re-scope — it matches everywhere.
 * PREFIX-MATCHED (2026-08-29 review): Forgejo also ships colorblind variants
 * (forgejo-dark-tritanopia, forgejo-auto-deuteranopia, …) and gitea-* themes;
 * an exact match left them with light canonical tokens under header.tmpl's
 * theme-agnostic var mapping — broken light/dark mixes. ^= covers the family.
 * (Their colorblind-tuned accent hues are overridden by our palette — a known
 * limitation, consistent with the rest of the overlay; the page is coherent.)
 * ORDER IS LOAD-BEARING: the hc block comes LAST so it wins its specificity
 * ties against both dark blocks. Load order on pages: tux-tokens.css, then
 * this file. */

:root[data-theme^="forgejo-dark"],
:root[data-theme^="gitea-dark"] {
  color-scheme: dark;
  --brand-primary: #6BB4C0;
  --brand-primary-deep: #5B9CA8;
  --brand-accent: var(--tti-gold);
  --brand-accent-deep: #F0C362;
  --brand-secondary: #8ab7e2;
  --brand-fill: var(--tti-maroon);
  --surface-page: #15100F;
  --surface-raised: #221F1F;
  --surface-sunken: #0B0908;
  --surface-border: #3D3A3A;
  --surface-border-subtle: #2E2B2A;
  --text-primary: #FAFAFA;
  --text-secondary: #D1D2D4;
  --text-muted: #B5B5B5;
  --text-inverse: #221F1F;
  --text-brand: #5B9CA8;
  --text-on-brand: var(--neutral-0);
  --color-maroon-400: #6BB4C0;
  --color-success: #ABCC8E;
  --color-warning: #F5D98A;
  --color-danger: #e795a8;
  --color-error: #F59292;
  --color-info: #9BD4E0;
  --focus-ring-outer: var(--brand-primary);
  --focus-ring-inner: #3D2E0F;
  --shadow-focus: 0 0 0 2px var(--focus-ring-inner), 0 0 0 4px var(--focus-ring-outer);
  --elevation-flat: none;
  --elevation-rest: var(--shadow-sm);
  --elevation-hover: var(--shadow-md);
  --elevation-overlay: 0 10px 15px -3px rgba(0, 0, 0, 0.20), 0 4px 6px -2px rgba(0, 0, 0, 0.12);
  --elevation-pinned: 0 4px 6px -2px rgba(0, 0, 0, 0.18);
  --color-brand-primary: var(--brand-primary);
  --color-brand-primary-deep: var(--brand-primary-deep);
  --color-brand-accent: var(--brand-accent);
  --color-brand-accent-deep: var(--brand-accent-deep);
  --color-brand-secondary: var(--brand-secondary);
  --color-brand-fill: var(--brand-fill);
  --color-surface-page: var(--surface-page);
  --color-surface-raised: var(--surface-raised);
  --color-surface-sunken: var(--surface-sunken);
  --color-surface-border: var(--surface-border);
  --color-surface-border-subtle: var(--surface-border-subtle);
  --color-text-primary: var(--text-primary);
  --color-text-secondary: var(--text-secondary);
  --color-text-muted: var(--text-muted);
  --color-text-inverse: var(--text-inverse);
  --color-text-brand: var(--text-brand);
  --color-text-on-brand: var(--text-on-brand);
  --chart-1: #c47585;
  --chart-2: #6B8DA3;
  --chart-3: #E0BC60;
  --chart-4: #93B57E;
  --chart-5: #B58463;
  --chart-6: #8AA0B2;
  --chart-7: #D67272;
  --chart-8: #6E8FBE;
  --chart-9: #A08CB4;
  --chart-10: #B0A578;
  --map-seq-maroon-1: #3D1110;
  --map-seq-maroon-2: #702C28;
  --map-seq-maroon-3: #A14A3D;
  --map-seq-maroon-4: #C97058;
  --map-seq-maroon-5: #E89B7E;
  --map-seq-slate-1: #1A2129;
  --map-seq-slate-2: #3F5A6F;
  --map-seq-slate-3: #6F8294;
  --map-seq-slate-4: #9CADBD;
  --map-seq-slate-5: #C2D0DE;
  --map-outline: rgba(255, 255, 255, 0.22);
  --map-flow: #E89B7E;
}

@media (prefers-color-scheme: dark) {
  :root[data-theme^="forgejo-auto"],
  :root[data-theme^="gitea-auto"] {
  color-scheme: dark;
  --brand-primary: #6BB4C0;
  --brand-primary-deep: #5B9CA8;
  --brand-accent: var(--tti-gold);
  --brand-accent-deep: #F0C362;
  --brand-secondary: #8ab7e2;
  --brand-fill: var(--tti-maroon);
  --surface-page: #15100F;
  --surface-raised: #221F1F;
  --surface-sunken: #0B0908;
  --surface-border: #3D3A3A;
  --surface-border-subtle: #2E2B2A;
  --text-primary: #FAFAFA;
  --text-secondary: #D1D2D4;
  --text-muted: #B5B5B5;
  --text-inverse: #221F1F;
  --text-brand: #5B9CA8;
  --text-on-brand: var(--neutral-0);
  --color-maroon-400: #6BB4C0;
  --color-success: #ABCC8E;
  --color-warning: #F5D98A;
  --color-danger: #e795a8;
  --color-error: #F59292;
  --color-info: #9BD4E0;
  --focus-ring-outer: var(--brand-primary);
  --focus-ring-inner: #3D2E0F;
  --shadow-focus: 0 0 0 2px var(--focus-ring-inner), 0 0 0 4px var(--focus-ring-outer);
  --elevation-flat: none;
  --elevation-rest: var(--shadow-sm);
  --elevation-hover: var(--shadow-md);
  --elevation-overlay: 0 10px 15px -3px rgba(0, 0, 0, 0.20), 0 4px 6px -2px rgba(0, 0, 0, 0.12);
  --elevation-pinned: 0 4px 6px -2px rgba(0, 0, 0, 0.18);
  --color-brand-primary: var(--brand-primary);
  --color-brand-primary-deep: var(--brand-primary-deep);
  --color-brand-accent: var(--brand-accent);
  --color-brand-accent-deep: var(--brand-accent-deep);
  --color-brand-secondary: var(--brand-secondary);
  --color-brand-fill: var(--brand-fill);
  --color-surface-page: var(--surface-page);
  --color-surface-raised: var(--surface-raised);
  --color-surface-sunken: var(--surface-sunken);
  --color-surface-border: var(--surface-border);
  --color-surface-border-subtle: var(--surface-border-subtle);
  --color-text-primary: var(--text-primary);
  --color-text-secondary: var(--text-secondary);
  --color-text-muted: var(--text-muted);
  --color-text-inverse: var(--text-inverse);
  --color-text-brand: var(--text-brand);
  --color-text-on-brand: var(--text-on-brand);
  --chart-1: #c47585;
  --chart-2: #6B8DA3;
  --chart-3: #E0BC60;
  --chart-4: #93B57E;
  --chart-5: #B58463;
  --chart-6: #8AA0B2;
  --chart-7: #D67272;
  --chart-8: #6E8FBE;
  --chart-9: #A08CB4;
  --chart-10: #B0A578;
  --map-seq-maroon-1: #3D1110;
  --map-seq-maroon-2: #702C28;
  --map-seq-maroon-3: #A14A3D;
  --map-seq-maroon-4: #C97058;
  --map-seq-maroon-5: #E89B7E;
  --map-seq-slate-1: #1A2129;
  --map-seq-slate-2: #3F5A6F;
  --map-seq-slate-3: #6F8294;
  --map-seq-slate-4: #9CADBD;
  --map-seq-slate-5: #C2D0DE;
  --map-outline: rgba(255, 255, 255, 0.22);
  --map-flow: #E89B7E;
  }
}

/* tti-hc — deliberately light-surfaced (ADR-0006); enabling it pins the
 * light theme, so these override the light values, and file order beats
 * the dark blocks in any transient mixed state. */
:root.tti-hc {
  --brand-primary: #500000;
  --brand-primary-deep: #3A0000;
  --brand-accent: #DCAA37;
  --brand-accent-deep: #B88A21;
  --brand-secondary: #000000;
  --brand-fill: #500000;
  --surface-page: #FFFFFF;
  --surface-raised: #FFFFFF;
  --surface-sunken: #F0F0F0;
  --surface-border: #5D5D5D;
  --surface-border-subtle: #5D5D5D;
  --text-primary: #000000;
  --text-secondary: #221F1F;
  --text-muted: #4D4D4D;
  --text-inverse: #FFFFFF;
  --text-brand: #500000;
  --text-on-brand: var(--neutral-0);
  --color-maroon-400: #500000;
  --color-maroon-500: #500000;
  --color-success: #3D5328;
  --color-warning: var(--tti-gold);
  --color-danger: #500000;
  --color-error: #A02828;
  --color-info: #1F5D66;
  --focus-ring-outer: #000000;
  --focus-ring-inner: #FFFFFF;
  --shadow-focus: 0 0 0 2px var(--focus-ring-inner), 0 0 0 5px var(--focus-ring-outer);
  --elevation-flat: none;
  --elevation-rest: none;
  --elevation-hover: none;
  --elevation-overlay: 0 0 0 2px var(--surface-border);
  --elevation-pinned: 0 0 0 1px var(--surface-border);
  --color-brand-primary: var(--brand-primary);
  --color-brand-primary-deep: var(--brand-primary-deep);
  --color-brand-accent: var(--brand-accent);
  --color-brand-accent-deep: var(--brand-accent-deep);
  --color-brand-secondary: var(--brand-secondary);
  --color-brand-fill: var(--brand-fill);
  --color-surface-page: var(--surface-page);
  --color-surface-raised: var(--surface-raised);
  --color-surface-sunken: var(--surface-sunken);
  --color-surface-border: var(--surface-border);
  --color-surface-border-subtle: var(--surface-border-subtle);
  --color-text-primary: var(--text-primary);
  --color-text-secondary: var(--text-secondary);
  --color-text-muted: var(--text-muted);
  --color-text-inverse: var(--text-inverse);
  --color-text-brand: var(--text-brand);
  --color-text-on-brand: var(--text-on-brand);
  --chart-1: #000000;
  --chart-2: var(--brand-primary);
  --chart-3: #5D5D5D;
  --chart-4: #8A6915;
  --chart-5: #4A4A4A;
  --chart-6: #1F5D66;
  --chart-7: #6B0000;
  --chart-8: #2A2A2A;
  --map-seq-maroon-1: #FFFFFF;
  --map-seq-maroon-2: #C8C8C8;
  --map-seq-maroon-3: #8A8A8A;
  --map-seq-maroon-4: #4A4A4A;
  --map-seq-maroon-5: #000000;
  --map-seq-slate-1: #FFFFFF;
  --map-seq-slate-2: #C8C8C8;
  --map-seq-slate-3: #8A8A8A;
  --map-seq-slate-4: #4A4A4A;
  --map-seq-slate-5: #000000;
  --map-outline: #000000;
  --map-flow: #000000;
}
