/* Xyncema One — theme tokens.
   One token set per vertical, scoped by [data-theme]. Roles, not raw hues:
   --bg / --surface / --surface-2 / --text / --muted / --primary / --on-primary / --primary-ink (accent used as text)
   --secondary / --on-secondary / --border / --focus / --danger / --radius / --radius-btn / --font-heading / --font-body
   Contrast pairs are checked by tools/check-contrast.mjs (targets: 4.5:1 text, 3:1 UI). */

[data-theme="one"] {
  --bg: #F6F7F9; --surface: #FFFFFF; --surface-2: #101114; --on-surface-2: #F6F7F9;
  --text: #101114; --muted: #525761; --primary: #5A48E8; --on-primary: #FFFFFF; --primary-ink: #4E3DD9;
  --primary-on-dark: #A59CF7; --secondary: #101114; --on-secondary: #F6F7F9;
  --border: #DADDE3; --focus: #5A48E8; --danger: #B3261E;
  --radius: 10px; --radius-btn: 999px;
  --font-heading: "Space Grotesk", "Helvetica Neue", Arial, sans-serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="agency"] {
  --bg: #F6F7F9; --surface: #FFFFFF; --surface-2: #101114; --on-surface-2: #F6F7F9;
  --text: #101114; --muted: #535862; --primary: #6554F0; --on-primary: #FFFFFF; --primary-ink: #5040E0;
  --primary-on-dark: #A79EF8; --secondary: #101114; --on-secondary: #F6F7F9;
  --border: #D5D8DE; --focus: #6554F0; --danger: #B3261E;
  --radius: 2px; --radius-btn: 2px;
  --font-heading: "Space Grotesk", "Helvetica Neue", Arial, sans-serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="saas"] {
  --bg: #F4F7FF; --surface: #FFFFFF; --surface-2: #122449; --on-surface-2: #F4F7FF;
  --text: #122449; --muted: #4A5878; --primary: #2457E6; --on-primary: #FFFFFF; --primary-ink: #1D4ACB;
  --primary-on-dark: #8FB0FF; --secondary: #122449; --on-secondary: #FFFFFF;
  --border: #D5DEF2; --focus: #2457E6; --danger: #B42318;
  --radius: 14px; --radius-btn: 10px;
  --font-heading: "Manrope", "Helvetica Neue", Arial, sans-serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="consulting"] {
  --bg: #F4F6F7; --surface: #FFFFFF; --surface-2: #193B54; --on-surface-2: #F4F6F7;
  --text: #14222E; --muted: #4F5E69; --primary: #193B54; --on-primary: #FFFFFF; --primary-ink: #193B54;
  --primary-on-dark: #D9B98C; --secondary: #B7894D; --on-secondary: #14222E;
  --border: #D3DADF; --focus: #193B54; --danger: #A8231A;
  --radius: 4px; --radius-btn: 3px;
  --font-heading: "DM Serif Display", Georgia, serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="architecture"] {
  --bg: #F2EDE5; --surface: #FAF7F2; --surface-2: #33312D; --on-surface-2: #F2EDE5;
  --text: #33312D; --muted: #625D55; --primary: #A35137; --on-primary: #FFFFFF; --primary-ink: #93472F;
  --primary-on-dark: #E3A68F; --secondary: #33312D; --on-secondary: #F2EDE5;
  --border: #D6CDBF; --focus: #A35137; --danger: #A12A1F;
  --radius: 0px; --radius-btn: 0px;
  --font-heading: "Cormorant Garamond", Georgia, serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="real-estate"] {
  --bg: #F1F6F3; --surface: #FFFFFF; --surface-2: #123F2E; --on-surface-2: #F1F6F3;
  --text: #16241D; --muted: #4F5E57; --primary: #176346; --on-primary: #FFFFFF; --primary-ink: #176346;
  --primary-on-dark: #C6A66A; --secondary: #C6A66A; --on-secondary: #16241D;
  --border: #D0DED6; --focus: #176346; --danger: #A8231A;
  --radius: 12px; --radius-btn: 8px;
  --font-heading: "Manrope", "Helvetica Neue", Arial, sans-serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="hospitality"] {
  --bg: #F7F3E9; --surface: #FFFDF8; --surface-2: #2F3726; --on-surface-2: #F7F3E9;
  --text: #2B2E24; --muted: #605F51; --primary: #556B3F; --on-primary: #FFFFFF; --primary-ink: #4B5F37;
  --primary-on-dark: #D6C3A2; --secondary: #C1A57B; --on-secondary: #2B2E24;
  --border: #DDD4C2; --focus: #556B3F; --danger: #A12A1F;
  --radius: 2px; --radius-btn: 0px;
  --font-heading: "Cormorant Garamond", Georgia, serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="restaurant"] {
  --bg: #FFF4E3; --surface: #FFFBF4; --surface-2: #2A3A28; --on-surface-2: #FFF4E3;
  --text: #2A1F1A; --muted: #67564A; --primary: #B43A2E; --on-primary: #FFFFFF; --primary-ink: #A33327;
  --primary-on-dark: #F2A28F; --secondary: #364C33; --on-secondary: #FFF4E3;
  --border: #E6D3B8; --focus: #B43A2E; --danger: #9B2A1F;
  --radius: 6px; --radius-btn: 999px;
  --font-heading: "DM Serif Display", Georgia, serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="cafe"] {
  --bg: #FBF4E9; --surface: #FFFAF2; --surface-2: #3E2A1F; --on-surface-2: #FBF4E9;
  --text: #2E2019; --muted: #6A5647; --primary: #60412F; --on-primary: #FFFFFF; --primary-ink: #60412F;
  --primary-on-dark: #E2B97F; --secondary: #D5A568; --on-secondary: #2E2019;
  --border: #E6D6BF; --focus: #60412F; --danger: #9B2A1F;
  --radius: 16px; --radius-btn: 999px;
  --font-heading: "DM Serif Display", Georgia, serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="fashion"] {
  --bg: #FAF6F3; --surface: #FFFFFF; --surface-2: #2A1E21; --on-surface-2: #FAF6F3;
  --text: #1E1A1A; --muted: #655C5B; --primary: #76263D; --on-primary: #FFFFFF; --primary-ink: #76263D;
  --primary-on-dark: #E3C6C0; --secondary: #D5B9B3; --on-secondary: #1E1A1A;
  --border: #E4D9D4; --focus: #76263D; --danger: #A12A1F;
  --radius: 0px; --radius-btn: 0px;
  --font-heading: "Cormorant Garamond", Georgia, serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="furniture"] {
  --bg: #F5F0E7; --surface: #FBF8F2; --surface-2: #3A2E24; --on-surface-2: #F5F0E7;
  --text: #2B241D; --muted: #665B4E; --primary: #9C542C; --on-primary: #FFFFFF; --primary-ink: #8C4A25;
  --primary-on-dark: #E0B08F; --secondary: #AA946D; --on-secondary: #2B241D;
  --border: #DDD2C0; --focus: #9C542C; --danger: #A12A1F;
  --radius: 4px; --radius-btn: 3px;
  --font-heading: "DM Serif Display", Georgia, serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="beauty"] {
  --bg: #FBF3F4; --surface: #FFFFFF; --surface-2: #4A2E3A; --on-surface-2: #FBF3F4;
  --text: #2F2327; --muted: #6A575E; --primary: #94526E; --on-primary: #FFFFFF; --primary-ink: #864863;
  --primary-on-dark: #E7C3D0; --secondary: #CCAF9A; --on-secondary: #2F2327;
  --border: #E8D6DA; --focus: #94526E; --danger: #A12A1F;
  --radius: 18px; --radius-btn: 999px;
  --font-heading: "Cormorant Garamond", Georgia, serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="healthcare"] {
  --bg: #F4FBFC; --surface: #FFFFFF; --surface-2: #0B4A50; --on-surface-2: #F4FBFC;
  --text: #0F2A30; --muted: #4A6166; --primary: #007A83; --on-primary: #FFFFFF; --primary-ink: #006D75;
  --primary-on-dark: #B4DFE0; --secondary: #B4DFE0; --on-secondary: #0F2A30;
  --border: #CFE5E8; --focus: #007A83; --danger: #A8231A;
  --radius: 12px; --radius-btn: 10px;
  --font-heading: "Manrope", "Helvetica Neue", Arial, sans-serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="fitness"] {
  --bg: #F7FAF1; --surface: #FFFFFF; --surface-2: #171C14; --on-surface-2: #F7FAF1;
  --text: #171C14; --muted: #4E5647; --primary: #C3EF43; --on-primary: #171C14; --primary-ink: #3F5A00;
  --primary-on-dark: #C3EF43; --secondary: #171C14; --on-secondary: #F7FAF1;
  --border: #D8E0CB; --focus: #3F5A00; --danger: #A8231A;
  --radius: 0px; --radius-btn: 0px;
  --font-heading: "Barlow Condensed", "Arial Narrow", Arial, sans-serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="education"] {
  --bg: #F4F3FC; --surface: #FFFFFF; --surface-2: #26256A; --on-surface-2: #F4F3FC;
  --text: #1D1C44; --muted: #54537A; --primary: #45449E; --on-primary: #FFFFFF; --primary-ink: #45449E;
  --primary-on-dark: #EDB644; --secondary: #EDB644; --on-secondary: #1D1C44;
  --border: #DAD8F0; --focus: #45449E; --danger: #A8231A;
  --radius: 14px; --radius-btn: 10px;
  --font-heading: "Manrope", "Helvetica Neue", Arial, sans-serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="events"] {
  --bg: #FBF6F8; --surface: #FFFFFF; --surface-2: #4A3446; --on-surface-2: #FBF6F8;
  --text: #2E2530; --muted: #685A66; --primary: #85607C; --on-primary: #FFFFFF; --primary-ink: #775570;
  --primary-on-dark: #DEC49A; --secondary: #C5A46D; --on-secondary: #2E2530;
  --border: #E7DAE1; --focus: #85607C; --danger: #A12A1F;
  --radius: 2px; --radius-btn: 999px;
  --font-heading: "Cormorant Garamond", Georgia, serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="travel"] {
  --bg: #F0F8FC; --surface: #FFFFFF; --surface-2: #073A57; --on-surface-2: #F0F8FC;
  --text: #0E2433; --muted: #4A6070; --primary: #00699E; --on-primary: #FFFFFF; --primary-ink: #00608F;
  --primary-on-dark: #F0AE57; --secondary: #F0AE57; --on-secondary: #0E2433;
  --border: #D0E4EE; --focus: #00699E; --danger: #A8231A;
  --radius: 16px; --radius-btn: 999px;
  --font-heading: "Manrope", "Helvetica Neue", Arial, sans-serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="automotive"] {
  --bg: #F4F5F6; --surface: #FFFFFF; --surface-2: #1B2229; --on-surface-2: #F4F5F6;
  --text: #1B2229; --muted: #525B65; --primary: #D95724; --on-primary: #111418; --primary-ink: #A9401A;
  --primary-on-dark: #F07A45; --secondary: #1B2229; --on-secondary: #F4F5F6;
  --border: #D6DADE; --focus: #A9401A; --danger: #A8231A;
  --radius: 2px; --radius-btn: 2px;
  --font-heading: "Barlow Condensed", "Arial Narrow", Arial, sans-serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="construction"] {
  --bg: #F3F5F6; --surface: #FFFFFF; --surface-2: #303E4A; --on-surface-2: #F3F5F6;
  --text: #1E272F; --muted: #515D68; --primary: #F3BD32; --on-primary: #1E272F; --primary-ink: #7A5700;
  --primary-on-dark: #F3BD32; --secondary: #303E4A; --on-secondary: #F3F5F6;
  --border: #D4DADF; --focus: #303E4A; --danger: #A8231A;
  --radius: 0px; --radius-btn: 0px;
  --font-heading: "Barlow Condensed", "Arial Narrow", Arial, sans-serif; --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="cleaning"] {
  --bg: #F0FBF7; --surface: #FFFFFF; --surface-2: #0A4B44; --on-surface-2: #F0FBF7;
  --text: #0F2B27; --muted: #4A635D; --primary: #087F73; --on-primary: #FFFFFF; --primary-ink: #077066;
  --primary-on-dark: #A9E3D2; --secondary: #A9E3D2; --on-secondary: #0F2B27;
  --border: #CDE8DF; --focus: #087F73; --danger: #A8231A;
  --radius: 16px; --radius-btn: 999px;
  --font-heading: "Manrope", "Helvetica Neue", Arial, sans-serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="editorial"] {
  --bg: #FFF8F0; --surface: #FFFDF9; --surface-2: #253746; --on-surface-2: #FFF8F0;
  --text: #1F2A33; --muted: #5E5954; --primary: #B64A28; --on-primary: #FFFFFF; --primary-ink: #A34122;
  --primary-on-dark: #F2A283; --secondary: #253746; --on-secondary: #FFF8F0;
  --border: #E6D8C8; --focus: #B64A28; --danger: #9B2A1F;
  --radius: 0px; --radius-btn: 0px;
  --font-heading: "DM Serif Display", Georgia, serif; --font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="law"] {
  --bg: #F4F1EA; --surface: #FFFFFF; --surface-2: #221F1D; --on-surface-2: #F4F1EA;
  --text: #221F1D; --muted: #5C5550; --primary: #6E2F3B; --on-primary: #FFFFFF; --primary-ink: #632934;
  --primary-on-dark: #E0A9B1; --secondary: #221F1D; --on-secondary: #F4F1EA;
  --border: #DDD6C9; --focus: #6E2F3B; --danger: #A8231A;
  --radius: 3px; --radius-btn: 2px;
  --font-heading: "Libre Baskerville", Georgia, serif; --font-body: "Inter", "Helvetica Neue", Arial, sans-serif;
}
/* The library's first dark-first set: an operations interface, where status colour has to read at a glance
   and long tables need a quiet ground. --surface-2 inverts to a light band, so its "on-" pairs invert too. */
[data-theme="logistics"] {
  --bg: #0F1317; --surface: #171D23; --surface-2: #EDF1F4; --on-surface-2: #0F1317;
  --text: #E9EEF2; --muted: #A0ADB8; --primary: #3DDC84; --on-primary: #062015; --primary-ink: #3DDC84;
  --primary-on-dark: #14663D; --secondary: #EDF1F4; --on-secondary: #0F1317;
  --border: #2A333C; --focus: #3DDC84; --danger: #FF7A7A;
  --radius: 6px; --radius-btn: 6px;
  --font-heading: "IBM Plex Sans", "Helvetica Neue", Arial, sans-serif; --font-body: "IBM Plex Sans", "Helvetica Neue", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}
[data-theme="nonprofit"] {
  --bg: #FCFAF6; --surface: #FFFFFF; --surface-2: #191A17; --on-surface-2: #FCFAF6;
  --text: #191A17; --muted: #57564F; --primary: #B02E4E; --on-primary: #FFFFFF; --primary-ink: #9E2745;
  --primary-on-dark: #F0A0B4; --secondary: #191A17; --on-secondary: #FCFAF6;
  --border: #E0DBD1; --focus: #B02E4E; --danger: #A8231A;
  --radius: 0px; --radius-btn: 0px;
  --font-heading: "Spectral", Georgia, serif; --font-body: "Work Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="coworking"] {
  --bg: #F6F5F2; --surface: #FFFFFF; --surface-2: #1B1A1F; --on-surface-2: #F6F5F2;
  --text: #1B1A1F; --muted: #57555E; --primary: #6B3FA0; --on-primary: #FFFFFF; --primary-ink: #5E3590;
  --primary-on-dark: #C9B1F0; --secondary: #1B1A1F; --on-secondary: #F6F5F2;
  --border: #DEDBD4; --focus: #6B3FA0; --danger: #B3261E;
  --radius: 12px; --radius-btn: 999px;
  --font-heading: "Sora", "Helvetica Neue", Arial, sans-serif; --font-body: "Figtree", "Helvetica Neue", Arial, sans-serif;
}
/* Monochrome by design: black is the action colour, and the marker yellow is only ever a background. */
[data-theme="jobs"] {
  --bg: #FAFAF7; --surface: #FFFFFF; --surface-2: #111111; --on-surface-2: #FAFAF7;
  --text: #111111; --muted: #55554F; --primary: #111111; --on-primary: #FFFFFF; --primary-ink: #111111;
  --primary-on-dark: #FFE45C; --secondary: #FFE45C; --on-secondary: #111111;
  --border: #DCDBD3; --focus: #111111; --danger: #B3261E;
  --radius: 8px; --radius-btn: 8px;
  --font-heading: "Bricolage Grotesque", "Helvetica Neue", Arial, sans-serif; --font-body: "Public Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="museum"] {
  --bg: #FFFFFF; --surface: #F4F4F2; --surface-2: #0D0D0D; --on-surface-2: #FFFFFF;
  --text: #0D0D0D; --muted: #5A5A57; --primary: #002FA7; --on-primary: #FFFFFF; --primary-ink: #002FA7;
  --primary-on-dark: #8FA8FF; --secondary: #0D0D0D; --on-secondary: #FFFFFF;
  --border: #DADAD6; --focus: #002FA7; --danger: #B3261E;
  --radius: 0px; --radius-btn: 0px;
  --font-heading: "Instrument Serif", Georgia, serif; --font-body: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
}
/* Orange is a button and diagram colour here, with dark text on it; as text on white it is the darker ink. */
[data-theme="solar"] {
  --bg: #F7F9FA; --surface: #FFFFFF; --surface-2: #10212E; --on-surface-2: #F7F9FA;
  --text: #10212E; --muted: #4E5D69; --primary: #F28C28; --on-primary: #10212E; --primary-ink: #9A4A00;
  --primary-on-dark: #F7A95C; --secondary: #10212E; --on-secondary: #F7F9FA;
  --border: #D6DEE4; --focus: #10212E; --danger: #B3261E;
  --radius: 10px; --radius-btn: 10px;
  --font-heading: "Archivo", "Helvetica Neue", Arial, sans-serif; --font-body: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
}
[data-theme="vet"] {
  --bg: #FFF7F0; --surface: #FFFFFF; --surface-2: #3A1F2B; --on-surface-2: #FFF7F0;
  --text: #2E1A22; --muted: #6A5660; --primary: #B8375A; --on-primary: #FFFFFF; --primary-ink: #A52F50;
  --primary-on-dark: #F6C453; --secondary: #F6C453; --on-secondary: #2E1A22;
  --border: #EBDCD3; --focus: #B8375A; --danger: #A8231A;
  --radius: 18px; --radius-btn: 999px;
  --font-heading: "Nunito", "Helvetica Neue", Arial, sans-serif; --font-body: "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
}
/* The library's second dark theme: warm near-black and brass, where Route's is cool and signal green. */
[data-theme="barber"] {
  --bg: #141210; --surface: #1D1A17; --surface-2: #F2EBE0; --on-surface-2: #141210;
  --text: #F2EBE0; --muted: #B3A897; --primary: #C9A36A; --on-primary: #141210; --primary-ink: #D9B57E;
  --primary-on-dark: #6E5020; --secondary: #F2EBE0; --on-secondary: #141210;
  --border: #352F28; --focus: #D9B57E; --danger: #F08A7E;
  --radius: 4px; --radius-btn: 4px;
  --font-heading: "Anton", Impact, "Arial Narrow", sans-serif; --font-body: "Lato", "Helvetica Neue", Arial, sans-serif;
}

[data-theme="market"] {
  --bg: #FBF7EE; --surface: #FFFFFF; --surface-2: #1F3D2A; --on-surface-2: #FBF7EE;
  --text: #1E2A20; --muted: #56604F; --primary: #2E6B3F; --on-primary: #FFFFFF; --primary-ink: #245533;
  --primary-on-dark: #9ED3A8; --secondary: #F2B33D; --on-secondary: #1E2A20;
  --border: #E3DCCB; --focus: #245533; --danger: #B3261E;
  --radius: 12px; --radius-btn: 999px;
  --font-heading: "Fraunces", Georgia, serif; --font-body: "Figtree", "Helvetica Neue", Arial, sans-serif;
}
