/* variables.css – merged theme tokens; last-definition-wins. */


/* From 1.variables.css */


:root {
     --accent: #2dd4bf;
     --bg: #0b0c10;
     --border: #2a3140;
     --border-radius: 4px;
     --border-radius-lg: 8px;
     --border-radius-sm: 2px;
     --card: #12141a;
     --checkbox-border-color: rgba(97, 197, 184, 1);
     --checkbox-checked-color: rgba(58, 41, 114, 1);
     --container: 1100px;
     --danger: #ff4d4f;
     --dropdown-max-h: min(68vh, 520px);
     --dropdown-max-w: clamp(240px, 60vw, 420px);
     --dropdown-min-w: 220px;
     --easing: cubic-bezier(0.4, 0, 0.2, 1);
     --font-family: system-ui, -apple-system, "Segoe UI", Roboto, Inter, Arial, sans-serif;
     --font-size: 18px;

     --font-size-base: 16px;
     --font-size-lg: 20px;
     --font-size-sm: 14px;
     --footer-z: 3000;
     --fs-0: 0.88rem;
     --fs-1: 0.95rem;
     --fs-2: 1rem;
     --fs-3: 1.125rem;
     --fs-4: 1.25rem;
     --gold: #d1b97f;
     --grid-h: 26px;
     --gutter-w: 260px;
     --h: 72vh;
     --ink: #e9eef5;
     --lane-gap: 10px;
     --lane-h: 28px;
     --menu-font: 14px;
     --menu-max-h: calc(100dvh - var(--topbar-h));
     --menu-max-w: clamp(240px, 60vw, 420px);
     --menu-min-w: 240px;
     --menu-overflow: auto;
     --menu-w: clamp(280px, 45vw, 560px);
     --modalFeedback-bg: rgba(0, 0, 0, 0.55);
     --modalFeedback-max-width: 640px;
     --modalFeedback-radius: 12px;
     --muted: #9aa3af;
     --ok: #2ecc71;
     --btn-bg-main: #2dd4bf;
     --btn-bg-secondary: #2dd4bf;
     --btn-bg-accent: #2dd4bf;
     --btn-bg-success: #2dd4bf;
     --btn-bg-warn: #2dd4bf;
     --btn-bg-danger: #2dd4bf;
     --pad: 12px;
     --panel: #141821;
     --paper: #0f1117;
     --pdf-backdrop: rgba(0, 0, 0, 0.72);
     --pdf-chrome-h: 56px;
     --pdf-gap: 24px;
     --pdf-pad: 20px;
     --pdf-radius: 12px;
     --pdf-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
     --primary: #c21a28;
     --radius: 12px;
     --radius-sm: 8px;
     --shadow: 0 16px 32px rgba(0, 0, 0, 0.35);
     --shadow-1: 0 6px 14px rgba(0, 0, 0, 0.32);
     --shadow-2: 0 10px 28px rgba(0, 0, 0, 0.42);
     --shadow-hover: 0 12px 32px rgba(0, 0, 0, 0.45);
     --sidebar-w: 420px;
     --space-1: 6px;
     --space-2: 8px;
     --space-3: 10px;
     --space-4: 12px;
     --space-5: 14px;
     --space-6: 16px;
     --space-7: 18px;
     --space-8: 20px;
     --space-9: 24px;
     --spacer: 1rem;
     --spacer-lg: 2rem;
     --spacer-sm: 0.5rem;
     --text: #e9edf6;
     --tooltip-z: 50;
     --topbar-h: 56px;
     --warn: #f1c40f;
     /* Non-variable declarations found (review): */
     /* (broken?) Inter, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, sans-serif */
}

:root {
     /* spacing scale */
     --sp-1: .25rem;
     --sp-2: .5rem;
     --sp-3: .75rem;
     --sp-4: 1rem;
     --sp-5: 1.25rem;
     --sp-6: 1.5rem;

     /* typography */
     --font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, Arial, sans-serif;
     --font-size: 16px;

     /* colors (fallbacks; your themes can override) */
     --bg: #f7f7f9;
     --card: #fff;
     --input: #fff;
     --text: #1e1e1e;
     --text-1: var(--text);
     --muted: #5e5e5e;
     --black: #000;
     --white: #fff;
     --accent: #5a28cc;
     --brand-h: 260;
     --brand-s: 70%;
     --brand-l: 48%;
     --accent-h: 260;
     --accent-s: 70%;
     --accent-l: 50%;
     --border: #e2e2e6;
     --bg-dropdown: rgba(0, 0, 0, .06);
     --checkbox-checked-color: color-mix(in srgb, var(--accent) 80%, black 0%);
     --checkbox-border-color: color-mix(in srgb, var(--accent) 60%, black 0%);

     /* gradient helpers (fallbacks) */
     --gradient-start: #5a28cc;
     --gradient-end: #00b3ff;

     /* surfaces */
     --paper: color-mix(in srgb, var(--card) 98%, white 2%);
     --panel: color-mix(in srgb, var(--card) 96%, white 4%);
     --surface-0: var(--card);
     --surface-1: var(--card);
     --surface-2: #f0f1f6;
     --hero-bg-from: rgba(15, 23, 42, .94);
     --hero-bg-to: rgba(2, 6, 23, .98);

     /* radii */
     --border-radius: 4px;
     --border-radius-sm: 2px;
     --border-radius-lg: 8px;
     --radius: 12px;
     --radius-sm: 8px;

     /* shadows */
     --shadow: 0 16px 32px rgba(0, 0, 0, .28);
     --shadow-1: 0 6px 14px rgba(15, 23, 42, .28);
     --shadow-2: 0 10px 28px rgba(15, 23, 42, .32);
     --shadow-hover: 0 14px 36px rgba(15, 23, 42, .35);

     /* layout helpers */
     --container: 1100px;
     --topbar-h: 56px;
     --footer-z: 3000;
     --footer-bar-h: 56px;
     --sidebar-w: 420px;
     --grid-h: 26px;
     --gutter-w: 260px;
     --h: 72vh;
     --lane-gap: 10px;
     --lane-h: 28px;

     /* footer bar */
     --footer-bg: #111;
     --footer-border: #2a2a2a;
     --footer-ink: #eee;
     --footer-muted: #a8a8a8;
     --footer-radius: 12px;
     --footer-shadow: 0 -8px 24px rgba(0, 0, 0, .25);

     /* component bits */
     --pdf-backdrop: rgba(0, 0, 0, .72);
     --pdf-chrome-h: 56px;
     --pdf-gap: 24px;
     --pdf-pad: 20px;
     --pdf-radius: 12px;
     --pdf-shadow: 0 20px 50px rgba(0, 0, 0, .35);
     --tooltip-z: 50;

     /* buttons (base palette; per-theme or per-button overrides allowed) */
     --btn-bg-main: color-mix(in srgb, var(--accent) 90%, black 6%);
     --btn-bg-secondary: color-mix(in srgb, var(--paper) 90%, var(--accent) 10%);
     --btn-bg-success: #22c55e;
     --btn-bg-warn: #facc15;
     --btn-bg-danger: #ef4444;
     --btn-text: #fff;

     /* misc */
     --space-1: 6px;
     --space-2: 8px;
     --space-3: 10px;
     --space-4: 12px;
     --space-5: 14px;
     --space-6: 16px;
     --space-7: 18px;
     --space-8: 20px;
     --space-9: 24px;
     --pad: 12px;
     --spacer: .75rem;
     --spacer-sm: .5rem;
     --spacer-lg: 1.5rem;

     --easing: cubic-bezier(.4, 0, .2, 1);
     --timing: 220ms var(--easing);
     --ring: 0 0 0 3px color-mix(in srgb, var(--accent) 85%, white 15%);
}




[data-theme="Day"] {
     --accent: rgba(28, 67, 145, 1);
     --accent-color: rgba(255, 0, 0, 1);
     --accent-hover: rgb(150, 34, 34);
     --bg: rgba(247, 247, 249, 1);
     --bg-dropdown: rgba(0, 0, 0, 0.05);
     --black: rgba(0, 0, 0, 1);
     --border: rgba(0, 0, 0, 0.1);
     --btn-bg-danger: rgba(255, 50, 50, 1);
     --btn-bg-danger-hover: rgba(255, 50, 50, 0.8);
     --btn-bg-info: rgba(50, 255, 255, 1);
     --btn-bg-info-hover: rgba(50, 255, 255, 0.8);
     --btn-bg-main: rgba(240, 240, 240, 1);
     --btn-bg-main-hover: rgba(220, 220, 220, 1);
     --btn-bg-primary: rgba(220, 220, 220, 1);
     --btn-bg-primary-hover: rgba(200, 200, 200, 0.9);
     --btn-bg-secondary: rgba(200, 200, 200, 1);
     --btn-bg-secondary-hover: rgba(180, 180, 180, 0.8);
     --btn-bg-success: rgba(50, 255, 50, 1);
     --btn-bg-success-hover: rgba(50, 255, 50, 0.8);
     --btn-bg-warning: rgba(255, 255, 50, 1);
     --btn-bg-warning-hover: rgba(255, 255, 50, 0.8);
     --btn-primary-text: rgba(255, 255, 255, 1);
     --btn-secondary-text: rgba(255, 255, 255, 1);
     --btn-text: rgba(255, 255, 255, 1);
     --card: rgba(255, 255, 255, 1);
     --card-bg: rgba(255, 255, 255, 0.95);
     --danger: rgba(255, 80, 80, 1);
     --footer-bar-h: 48px;
     --footer-bg: rgba(255, 255, 255, 1);
     --footer-border: rgba(0, 0, 0, 0.1);
     --footer-ink: rgba(0, 53, 127, 1);
     --footer-muted: rgba(170, 178, 189, 1);
     --footer-radius: 12px;
     --footer-shadow: 0 12px 28px rgba(0, 0, 0, 0.1);
     --gradient-end: rgb(56, 83, 173);
     --gradient-start: rgba(35, 85, 248, 1);
     --grid-h: 26px;
     --h: 72vh;
     --info: rgba(50, 255, 255, 1);
     --ink: rgba(32, 32, 32, 1);
     --input: rgba(255, 255, 255, 1);
     --lane-gap: 10px;
     --lane-h: 28px;
     --menu-font: 14px;
     --menu-max-h: calc(100dvh - var(--topbar-h));
     --menu-max-w: clamp(240px, 60vw, 420px);
     --menu-min-w: 240px;
     --menu-overflow: auto;
     --menu-w: clamp(280px, 45vw, 560px);
     --muted: rgba(105, 110, 122, 1);
     --ok: rgba(50, 205, 50, 1);
     --panel: rgba(244, 244, 246, 1);
     --paper: rgba(255, 255, 255, 0.98);
     --primary: rgba(192, 0, 0, 1);
     --ring: 0 0 0 3px rgba(0, 122, 255, 0.18);
     --shadow: rgba(0, 0, 0, 0.12);
     --shadow-1: 0 6px 14px rgba(0, 0, 0, 0.06);
     --shadow-2: 0 10px 24px rgba(0, 0, 0, 0.08);
     --shadow-hover: 0 12px 32px rgba(0, 0, 0, 0.15);
     --sidebar-w: 420px;
     --space-1: 6px;
     --space-2: 8px;
     --space-3: 10px;
     --space-4: 12px;
     --space-5: 14px;
     --space-6: 16px;
     --space-7: 18px;
     --space-8: 20px;
     --space-9: 24px;
     --spacer: 1rem;
     --spacer-lg: 2rem;
     --spacer-sm: 0.5rem;
     --success: rgba(50, 205, 50, 1);
     --text: rgba(32, 32, 32, 1);
     --text-1: rgba(46, 46, 46, 1);
     --text-2: rgba(88, 88, 88, 1);
     --text-inverse: rgba(255, 255, 255, 1);
     --timeline-bg: rgba(247, 247, 249, 1);
     --timeline-card: rgba(255, 255, 255, 1);
     --timeline-highlight: rgba(0, 120, 255, 0.12);
     --timeline-line: rgba(255, 255, 255, 0.95);
     --tip-bg: rgba(255, 255, 255, 1);
     --tip-border: rgba(220, 220, 230, 1);
     --tip-ink: rgba(40, 44, 54, 1);
     --tip-muted: rgba(120, 128, 140, 1);
     --topbar-h: 56px;
     --transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
     --warn: rgba(255, 255, 80, 1);
     --warning: rgba(255, 255, 80, 1);
     --white: rgba(255, 255, 255, 1);
}

[data-theme="Ocean"] {

     --accent: rgba(15, 122, 191, 1);
     --accent-color: rgba(15, 122, 191, 1);
     --accent-hover: rgba(12, 108, 170, 1);
     --bg: rgba(242, 247, 250, 1);
     --bg-dropdown: rgba(0, 44, 77, 0.05);
     --black: rgba(0, 0, 0, 1);
     --border: rgba(198, 214, 225, 1);
     --btn-bg-danger: rgba(210, 90, 90, 1);
     --btn-bg-danger-hover: rgba(210, 90, 90, 0.9);
     --btn-bg-info: rgba(70, 170, 235, 1);
     --btn-bg-info-hover: rgba(70, 170, 235, 0.9);
     --btn-bg-main: rgba(234, 244, 249, 1);
     --btn-bg-main-hover: rgba(222, 238, 246, 1);
     --btn-bg-primary: rgba(212, 236, 241, 1);
     --btn-bg-primary-hover: rgba(196, 228, 236, 0.95);
     --btn-bg-secondary: rgba(210, 226, 238, 1);
     --btn-bg-secondary-hover: rgba(196, 214, 228, 0.92);
     --btn-bg-success: rgba(34, 180, 140, 1);
     --btn-bg-success-hover: rgba(34, 180, 140, 0.9);
     --btn-bg-warning: rgba(245, 195, 90, 1);
     --btn-bg-warning-hover: rgba(245, 195, 90, 0.9);
     --btn-primary-text: rgba(24, 34, 45, 1);
     --btn-secondary-text: rgba(24, 34, 45, 1);
     --btn-text: rgba(255, 255, 255, 1);
     --card: rgba(255, 255, 255, 1);
     --card-bg: rgba(255, 255, 255, 0.96);
     --danger: rgba(210, 90, 90, 1);
     --footer-bar-h: 48px;
     --footer-bg: rgba(236, 244, 249, 1);
     --footer-border: rgba(180, 200, 214, 1);
     --footer-ink: rgba(15, 90, 160, 1);
     --footer-muted: rgba(125, 144, 160, 1);
     --footer-radius: 12px;
     --footer-shadow: 0 12px 28px rgba(8, 34, 60, 0.1);
     --gradient-end: rgba(9, 102, 158, 1);
     --gradient-start: rgba(16, 134, 204, 1);
     --grid-h: 26px;
     --h: 72vh;
     --info: rgba(48, 152, 220, 1);
     --ink: rgba(31, 42, 54, 1);
     --input: rgba(255, 255, 255, 1);
     --lane-gap: 10px;
     --lane-h: 28px;
     --menu-font: 14px;
     --menu-max-h: calc(100dvh - var(--topbar-h));
     --menu-max-w: clamp(240px, 60vw, 420px);
     --menu-min-w: 240px;
     --menu-overflow: auto;
     --menu-w: clamp(280px, 45vw, 560px);
     --muted: rgba(118, 136, 151, 1);
     --ok: rgba(28, 158, 120, 1);
     --panel: rgba(224, 237, 244, 1);
     --paper: rgba(248, 251, 253, 0.98);
     --primary: rgba(10, 156, 164, 1);
     --ring: 0 0 0 3px rgba(15, 122, 191, 0.18);
     --shadow: 0 16px 32px rgba(8, 34, 60, 0.22);
     --shadow-1: 0 6px 14px rgba(8, 34, 60, 0.08);
     --shadow-2: 0 10px 24px rgba(8, 34, 60, 0.12);
     --shadow-hover: 0 12px 32px rgba(8, 34, 60, 0.18);
     --sidebar-w: 420px;
     --space-1: 6px;
     --space-2: 8px;
     --space-3: 10px;
     --space-4: 12px;
     --space-5: 14px;
     --space-6: 16px;
     --space-7: 18px;
     --space-8: 20px;
     --space-9: 24px;
     --spacer: 1rem;
     --spacer-lg: 2rem;
     --spacer-sm: 0.5rem;
     --success: rgba(34, 180, 140, 1);
     --text: rgba(31, 42, 54, 1);
     --text-1: rgba(24, 34, 45, 1);
     --text-2: rgba(92, 107, 121, 1);
     --text-inverse: rgba(255, 255, 255, 1);
     --timeline-bg: rgba(242, 247, 250, 1);
     --timeline-card: rgba(255, 255, 255, 1);
     --timeline-highlight: rgba(15, 122, 191, 0.16);
     --timeline-line: rgba(0, 44, 77, 0.1);
     --tip-bg: rgba(242, 247, 250, 1);
     --tip-border: rgba(198, 214, 225, 1);
     --tip-ink: rgba(31, 42, 54, 1);
     --tip-muted: rgba(118, 136, 151, 1);
     --topbar-h: 56px;
     --transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
     --warn: rgba(245, 195, 90, 1);
     --warning: rgba(245, 195, 90, 1);
     --white: rgba(255, 255, 255, 1);
}

/* [data-theme="Autumn"] {
     --accent: rgba(230, 170, 70, 1);
     --accent-color: rgba(200, 140, 60, 1);
     --accent-hover: rgba(255, 190, 90, 1);
     --bg: rgba(44, 40, 36, 1);
     --bg-dropdown: rgba(255, 255, 255, 0.05);
     --black: rgba(0, 0, 0, 1);
     --border: rgba(88, 82, 76, 1);
     --btn-bg-danger: rgba(200, 90, 70, 1);
     --btn-bg-danger-hover: rgba(200, 90, 70, 0.9);
     --btn-bg-info: rgba(220, 170, 100, 1);
     --btn-bg-info-hover: rgba(220, 170, 100, 0.9);
     --btn-bg-main: rgba(68, 62, 56, 1);
     --btn-bg-main-hover: rgba(78, 72, 66, 1);
     --btn-bg-primary: rgba(90, 75, 60, 1);
     --btn-bg-primary-hover: rgba(100, 85, 70, 0.95);
     --btn-bg-secondary: rgba(78, 70, 64, 1);
     --btn-bg-secondary-hover: rgba(86, 78, 72, 0.9);
     --btn-bg-success: rgba(110, 180, 100, 1);
     --btn-bg-success-hover: rgba(110, 180, 100, 0.9);
     --btn-bg-warning: rgba(235, 185, 90, 1);
     --btn-bg-warning-hover: rgba(235, 185, 90, 0.9);
     --btn-primary-text: rgba(240, 234, 226, 1);
     --btn-secondary-text: rgba(240, 234, 226, 1);
     --btn-text: rgba(255, 255, 255, 1);
     --card: rgba(58, 52, 46, 1);
     --card-bg: rgba(58, 52, 46, 0.98);
     --danger: rgba(210, 90, 70, 1);
     --footer-bar-h: 48px;
     --footer-bg: rgba(54, 48, 44, 1);
     --footer-border: rgba(88, 80, 74, 1);
     --footer-ink: rgba(250, 210, 120, 1);
     --footer-muted: rgba(160, 150, 135, 1);
     --footer-radius: 12px;
     --footer-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
     --gradient-end: rgba(140, 90, 45, 1);
     --gradient-start: rgba(200, 140, 60, 1);
     --grid-h: 26px;
     --h: 72vh;
     --info: rgba(220, 170, 100, 1);
     --ink: rgba(236, 230, 222, 1);
     --input: rgba(60, 55, 50, 1);
     --lane-gap: 10px;
     --lane-h: 28px;
     --menu-font: 14px;
     --menu-max-h: calc(100dvh - var(--topbar-h));
     --menu-max-w: clamp(240px, 60vw, 420px);
     --menu-min-w: 240px;
     --menu-overflow: auto;
     --menu-w: clamp(280px, 45vw, 560px);
     --muted: rgba(180, 172, 162, 1);
     --ok: rgba(100, 180, 90, 1);
     --panel: rgba(66, 60, 54, 1);
     --paper: rgba(62, 56, 50, 0.98);
     --primary: rgba(190, 80, 60, 1);
     --ring: 0 0 0 3px rgba(230, 170, 70, 0.25);
     --shadow: 0 16px 32px rgba(0, 0, 0, 0.35);
     --shadow-1: 0 6px 14px rgba(0, 0, 0, 0.32);
     --shadow-2: 0 10px 28px rgba(0, 0, 0, 0.42);
     --shadow-hover: 0 12px 32px rgba(0, 0, 0, 0.45);
     --sidebar-w: 420px;
     --space-1: 6px;
     --space-2: 8px;
     --space-3: 10px;
     --space-4: 12px;
     --space-5: 14px;
     --space-6: 16px;
     --space-7: 18px;
     --space-8: 20px;
     --space-9: 24px;
     --spacer: 1rem;
     --spacer-lg: 2rem;
     --spacer-sm: 0.5rem;
     --text: rgb(200, 145, 75);
     --text-1: rgb(202, 144, 82);
     --text-2: rgba(180, 172, 162, 1);
     --text-inverse: rgba(22, 20, 18, 1);
     --timeline-line: rgba(255, 240, 200, 0.15);
     --tip-bg: rgba(70, 62, 56, 1);
     --tip-border: rgba(95, 86, 78, 1);
     --tip-ink: rgba(250, 242, 230, 1);
     --tip-muted: rgba(190, 180, 168, 1);
     --topbar-h: 56px;
     --transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
     --warn: rgba(235, 185, 90, 1);
     --warning: rgba(255, 190, 80, 1);
     --white: rgba(255, 255, 255, 1);
     --timeline-bg: rgba(44, 40, 36, 1);
     --timeline-card: rgba(54, 48, 44, 1);
     --timeline-highlight: rgba(230, 170, 70, 0.18);
     --timeline-dot-border: rgba(230, 170, 70, 1);
} */

/* [data-theme="Night"] {
     --accent: rgba(120, 170, 255, 1);
     --accent-color: rgba(210, 60, 60, 1);
     --accent-hover: rgba(105, 155, 238, 1);
     --bg: rgba(22, 24, 28, 1);
     --bg-dropdown: rgba(255, 255, 255, 0.05);
     --black: rgba(0, 0, 0, 1);
     --border: rgba(62, 66, 74, 1);
     --btn-bg-danger: rgba(185, 60, 60, 1);
     --btn-bg-danger-hover: rgba(185, 60, 60, 0.9);
     --btn-bg-info: rgba(70, 150, 215, 1);
     --btn-bg-info-hover: rgba(70, 150, 215, 0.9);
     --btn-bg-main: rgba(44, 47, 54, 1);
     --btn-bg-main-hover: rgba(52, 56, 64, 1);
     --btn-bg-primary: rgba(56, 60, 68, 1);
     --btn-bg-primary-hover: rgba(64, 68, 76, 0.95);
     --btn-bg-secondary: rgba(50, 54, 62, 1);
     --btn-bg-secondary-hover: rgba(58, 62, 70, 0.9);
     --btn-bg-success: rgba(40, 150, 90, 1);
     --btn-bg-success-hover: rgba(40, 150, 90, 0.9);
     --btn-bg-warning: rgba(210, 165, 50, 1);
     --btn-bg-warning-hover: rgba(210, 165, 50, 0.9);
     --btn-primary-text: rgba(230, 232, 235, 1);
     --btn-secondary-text: rgba(230, 232, 235, 1);
     --btn-text: rgba(255, 255, 255, 1);
     --card: rgba(28, 31, 36, 1);
     --card-bg: rgba(28, 31, 36, 0.98);
     --danger: rgba(232, 95, 95, 1);
     --footer-bar-h: 48px;
     --footer-bg: rgba(26, 28, 32, 1);
     --footer-border: rgba(70, 74, 82, 1);
     --footer-ink: rgba(185, 205, 255, 1);
     --footer-muted: rgba(135, 142, 154, 1);
     --footer-radius: 12px;
     --footer-shadow: 0 14px 32px rgba(0, 0, 0, 0.55);
     --gradient-end: rgba(24, 52, 120, 1);
     --gradient-start: rgba(30, 70, 160, 1);
     --grid-h: 26px;
     --h: 72vh;
     --info: rgba(70, 150, 215, 1);
     --ink: rgba(230, 232, 235, 1);
     --input: rgba(36, 39, 44, 1);
     --lane-gap: 10px;
     --lane-h: 28px;
     --menu-font: 14px;
     --menu-max-h: calc(100dvh - var(--topbar-h));
     --menu-max-w: clamp(240px, 60vw, 420px);
     --menu-min-w: 240px;
     --menu-overflow: auto;
     --menu-w: clamp(280px, 45vw, 560px);
     --muted: rgba(140, 146, 156, 1);
     --ok: rgba(72, 186, 112, 1);
     --panel: rgba(34, 37, 42, 1);
     --paper: rgba(31, 34, 39, 0.98);
     --primary: rgba(215, 70, 70, 1);
     --ring: 0 0 0 3px rgba(120, 170, 255, 0.22);
     --shadow: 0 16px 32px rgba(0, 0, 0, 0.4);
     --shadow-1: 0 6px 14px rgba(0, 0, 0, 0.35);
     --shadow-2: 0 10px 28px rgba(0, 0, 0, 0.48);
     --shadow-hover: 0 12px 32px rgba(0, 0, 0, 0.55);
     --sidebar-w: 420px;
     --space-1: 6px;
     --space-2: 8px;
     --space-3: 10px;
     --space-4: 12px;
     --space-5: 14px;
     --space-6: 16px;
     --space-7: 18px;
     --space-8: 20px;
     --space-9: 24px;
     --spacer: 1rem;
     --spacer-lg: 2rem;
     --spacer-sm: 0.5rem;
     --success: rgba(72, 186, 112, 1);
     --text: rgba(230, 232, 235, 1);
     --text-1: rgba(242, 244, 246, 1);
     --text-2: rgba(165, 170, 178, 1);
     --text-inverse: rgba(22, 24, 28, 1);
     --timeline-bg: rgba(22, 24, 28, 1);
     --timeline-card: rgba(28, 31, 36, 1);
     --timeline-highlight: rgba(120, 170, 255, 0.18);
     --timeline-line: rgba(255, 255, 255, 0.1);
     --tip-bg: rgba(34, 37, 42, 1);
     --tip-border: rgba(74, 78, 86, 1);
     --tip-ink: rgba(232, 235, 240, 1);
     --tip-muted: rgba(155, 160, 170, 1);
     --topbar-h: 56px;
     --transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
     --warn: rgba(255, 197, 66, 1);
     --warning: rgba(255, 197, 66, 1);
     --white: rgba(255, 255, 255, 1);
} */




/* From 1.variables.css */
/* Normalized theme tokens – generated */
/* Strategy: last-definition-wins merged, tokens sorted A→Z per theme */

:root {
     --accent: #2dd4bf;
     --bg: #0b0c10;
     --border: #2a3140;
     --border-radius: 4px;
     --border-radius-lg: 8px;
     --border-radius-sm: 2px;
     --card: #12141a;
     --checkbox-border-color: rgba(97, 197, 184, 1);
     --checkbox-checked-color: rgba(58, 41, 114, 1);
     --container: 1100px;
     --danger: #ff4d4f;
     --dropdown-max-h: min(68vh, 520px);
     --dropdown-max-w: clamp(240px, 60vw, 420px);
     --dropdown-min-w: 220px;
     --easing: cubic-bezier(0.4, 0, 0.2, 1);
     --font-family: system-ui, -apple-system, "Segoe UI", Roboto, Inter, Arial, sans-serif;
     --font-size: 18px;
     --font-size-base: 16px;
     --font-size-lg: 20px;
     --font-size-sm: 14px;
     --footer-z: 3000;
     --fs-0: 0.88rem;
     --fs-1: 0.95rem;
     --fs-2: 1rem;
     --fs-3: 1.125rem;
     --fs-4: 1.25rem;
     --gold: #d1b97f;
     --grid-h: 26px;
     --gutter-w: 260px;
     --h: 72vh;
     --ink: #e9eef5;
     --lane-gap: 10px;
     --lane-h: 28px;
     --menu-font: 14px;
     --menu-max-h: calc(100dvh - var(--topbar-h));
     --menu-max-w: clamp(240px, 60vw, 420px);
     --menu-min-w: 240px;
     --menu-overflow: auto;
     --menu-w: clamp(280px, 45vw, 560px);
     --modalFeedback-bg: rgba(0, 0, 0, 0.55);
     --modalFeedback-max-width: 640px;
     --modalFeedback-radius: 12px;
     --muted: #9aa3af;
     --ok: #2ecc71;
     --btn-bg-main: #2dd4bf;
     --btn-bg-secondary: #2dd4bf;
     --btn-bg-accent: #2dd4bf;
     --btn-bg-success: #2dd4bf;
     --btn-bg-warn: #2dd4bf;
     --btn-bg-danger: #2dd4bf;
     --pad: 12px;
     --panel: #141821;
     --paper: #0f1117;
     --pdf-backdrop: rgba(0, 0, 0, 0.72);
     --pdf-chrome-h: 56px;
     --pdf-gap: 24px;
     --pdf-pad: 20px;
     --pdf-radius: 12px;
     --pdf-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
     --primary: #c21a28;
     --radius: 12px;
     --radius-sm: 8px;
     --ring: 0 0 0 3px rgba(45, 212, 191, 0.25);
     --shadow: 0 16px 32px rgba(0, 0, 0, 0.35);
     --sidebar-w: 420px;
     --space-1: 6px;
     --space-2: 8px;
     --space-3: 10px;
     --space-4: 12px;
     --space-5: 14px;
     --space-6: 16px;
     --space-7: 18px;
     --space-8: 20px;
     --space-9: 24px;
     --spacer: 1rem;
     --spacer-lg: 2rem;
     --spacer-sm: 0.5rem;
     --text: #e9edf6;
     --tooltip-z: 50;
     --topbar-h: 56px;
     --warn: #f1c40f;
     /* Non-variable declarations found (review): */
     /* (broken?) Inter, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, sans-serif */
}


/* From 2.style.css */
/* ─── TOKENS & BASES ─── (Global) */
:root {
     /* spacing scale */
     --sp-1: .25rem;
     --sp-2: .5rem;
     --sp-3: .75rem;
     --sp-4: 1rem;
     --sp-5: 1.25rem;
     --sp-6: 1.5rem;

     /* typography */
     --font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, Arial, sans-serif;
     --font-size: 16px;

     /* colors (fallbacks; your themes can override) */
     --bg: #f7f7f9;
     --card: #fff;
     --input: #fff;
     --text: #1e1e1e;
     --text-1: var(--text);
     --muted: #5e5e5e;
     --black: #000;
     --white: #fff;
     --accent: #5a28cc;
     --brand-h: 260;
     --brand-s: 70%;
     --brand-l: 48%;
     --accent-h: 260;
     --accent-s: 70%;
     --accent-l: 50%;
     --border: #e2e2e6;
     --bg-dropdown: rgba(0, 0, 0, .06);
     --checkbox-checked-color: color-mix(in srgb, var(--accent) 80%, black 0%);
     --checkbox-border-color: color-mix(in srgb, var(--accent) 60%, black 0%);

     /* gradient helpers (fallbacks) */
     --gradient-start: #5a28cc;
     --gradient-end: #00b3ff;

     /* surfaces & shadows */
     --surface-0: #fff;
     --surface-1: #f8f8fb;
     --surface-2: #f1f1f5;
     --shadow-1: 0 2px 8px rgba(0, 0, 0, .06);
     --shadow-s: var(--shadow-1);
     --shadow-m: 0 12px 28px rgba(0, 0, 0, .16);
     --shadow-2: 0 8px 24px rgba(0, 0, 0, .12);
     --ring: 0 0 0 .2rem color-mix(in srgb, var(--accent) 30%, transparent);

     /* radii */
     --radius: .75rem;
     --radius-sm: .375rem;

     /* layout bars */
     --topbar-h: 56px;

     /* right-side menu */
     --menu-max-w: 92vw;
     --menu-max-h: 80vh;
     --menu-font: .95rem;

     /* dropdowns */
     --dropdown-min-w: 220px;
     --dropdown-max-w: min(96vw, 360px);
     --dropdown-max-h: 70vh;

     /* footer */
     --footer-bg: #111;
     --footer-ink: #eee;
     --footer-border: #2a2a2a;
     --footer-muted: #a8a8a8;
     --footer-bar-h: 56px;
     --footer-radius: 12px;
     --footer-shadow: 0 -8px 24px rgba(0, 0, 0, .25);

     /* timing */
     --timing: .2s ease;
     --easing: cubic-bezier(.4, 0, .2, 1);

     --radius: 12px;
     --surface-1: var(--card, #fff);
     --text: #222;
     --muted: #6b7280;
     --accent: #0b84ff;
     --shadow-s: 0 2px 8px rgba(0, 0, 0, .06), 0 1px 3px rgba(0, 0, 0, .08);
     --shadow-m: 0 12px 28px rgba(0, 0, 0, .14), 0 6px 12px rgba(0, 0, 0, .10);
     --timing: 220ms cubic-bezier(.2, .65, .3, 1);
     --ring: 0 0 0 3px rgba(11, 132, 255, .28);
}

/* ─── END TOKENS & BASES (Global) ─── */