﻿/**
 * Endelea 3026 Visual System — LOCKED
 * Source of truth: demos/endelea-3026-light-dark-rates-concept.html
 *                 + demos/endelea-3026-theme-tokens.css
 *
 * Concept D sci-fi · Light ↔ Dark · same world, two lighting conditions.
 * Visual only. Loaded last. Do not tone down futuristic character.
 *
 * Theme attribute: html[data-ed-theme="light"|"dark"]
 */

@import url("https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600&display=swap");

/* ═══════════════════════════════════════════════════════════
   0. Shared brand (mode-stable)
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 {
  --ed-petrol-pastel: #6f97ad;
  --ed-gold-pastel: #c4a052;
  --ed-sage-pastel: #6d917c;
  --ed-lilac-pastel: #9c8db5;
  --ed-petrol-deep: #1f5f78;
  --ed-signal-font: "DM Sans", system-ui, sans-serif;
  --ed-radius-sm: 8px;
  --ed-radius: 12px;
  --ed-radius-lg: 16px;
  --ed-ivory-literal: #F7F3EB;
  /*
   * Mode-stable ink for intentional LIGHT surfaces (white chips, ivory panels).
   * Never remap these with --ed-navy in dark mode — that causes light-on-light.
   */
  --ed-ink-on-light: #0F1F33;
  --ed-ink-muted-on-light: #3d4a58;
  --ed-ink-quiet-on-light: #5c6673;
  --ed-surface-light: #fffcf8;
}

/* ═══════════════════════════════════════════════════════════
   1. LIGHT — sci-fi daylight
   ═══════════════════════════════════════════════════════════ */
html[data-ed-theme="light"] body.ed-y3026 {
  --ed-dusk: #FAF7F1;
  --ed-dusk-deep: #F3EFE7;
  --ed-dusk-mid: #E6DDD1;
  --ed-text-on-dusk: #2E3640;
  --ed-text-soft: #3d4a58;
  --ed-text-quiet: #5c6670;
  --ed-glass: rgba(255, 255, 255, 0.88);
  --ed-glass-strong: rgba(255, 252, 248, 0.95);
  --ed-glass-border: rgba(15, 31, 51, 0.14);
  --ed-surface-connected: #f7fbfd;

  --ed-navy: #0F2A44;
  --ed-navy-soft: #3d4a58;
  --ed-blue: #6f97ad;
  --ed-interaction: #0F2A44;
  --ed-interaction-soft: rgba(15, 42, 68, 0.08);
  --ed-amber: #c4a052;
  --ed-amber-soft: rgba(196, 160, 82, 0.14);
  --ed-amber-border: rgba(196, 160, 82, 0.35);
  --ed-amber-muted: #7a5a18;
  --ed-ivory: #FAF7F1;
  --ed-ivory-deep: #E6DDD1;
  --ed-white: #fffcf8;
  /* Opaque panels/menus/modals — never use glass --ed-white for these. */
  --ed-surface-solid: #fffcf8;
  --ed-surface-muted: #F3EFE7;
  --ed-surface-light: #fffcf8;
  --ed-surface: rgba(255, 255, 255, 0.88);

  --ed-text: #2E3640;
  --ed-text-muted: #3d4a58;
  --ed-text-subtle: #5c6670;
  --ed-heading: #0F2A44;
  --ed-number: #0F1F33;
  --ed-number-secondary: #2a3542;
  --ed-text-on-accent: #fffcf8;
  --ed-border: rgba(46, 54, 64, 0.14);
  --ed-border-light: rgba(46, 54, 64, 0.08);
  --ed-border-glow: rgba(15, 42, 68, 0.28);

  --ed-danger: #b56b6b;
  --ed-danger-light: rgba(181, 107, 107, 0.14);
  --ed-warn: #c4a052;
  --ed-warn-light: rgba(196, 160, 82, 0.14);

  --ed-primary: #0F2A44;
  --ed-primary-hover: #163656;
  --ed-accent: #c4a052;

  --ed-rack: #7a5a18;
  --ed-sto: #1a4f64;
  --ed-rack-soft: rgba(196, 160, 82, 0.14);
  --ed-sto-soft: rgba(31, 95, 120, 0.10);

  --ed-prop-0: #35586a;
  --ed-prop-0-mark: #6f97ad;
  --ed-prop-0-wash: linear-gradient(90deg, rgba(111, 151, 173, 0.16), rgba(111, 151, 173, 0.03) 70%, transparent);
  --ed-prop-1: #6a5630;
  --ed-prop-1-mark: #c4a052;
  --ed-prop-1-wash: linear-gradient(90deg, rgba(196, 160, 82, 0.18), rgba(196, 160, 82, 0.03) 70%, transparent);
  --ed-prop-2: #355a46;
  --ed-prop-2-mark: #6d917c;
  --ed-prop-2-wash: linear-gradient(90deg, rgba(109, 145, 124, 0.16), rgba(109, 145, 124, 0.03) 70%, transparent);
  --ed-prop-3: #524468;
  --ed-prop-3-mark: #9c8db5;
  --ed-prop-3-wash: linear-gradient(90deg, rgba(156, 141, 181, 0.16), rgba(156, 141, 181, 0.03) 70%, transparent);

  --navy: var(--ed-navy);
  --navy-soft: var(--ed-navy-soft);
  --amber: var(--ed-amber);
  --amber-soft: var(--ed-amber-soft);
  --amber-border: var(--ed-amber-border);
  --ivory: var(--ed-ivory);
  --sidebar-bg: rgba(255, 252, 248, 0.78);
  --bg: var(--ed-dusk);
  --surface: var(--ed-surface);
  --border: var(--ed-border);
  --border-focus: #0F2A44;
  --text: var(--ed-text);
  --text-muted: var(--ed-text-muted);
  --primary: var(--ed-primary);
  --primary-hover: var(--ed-primary-hover);
  --primary-light: rgba(15, 42, 68, 0.08);
  --accent: var(--ed-accent);
  --danger: var(--ed-danger);
  --danger-light: var(--ed-danger-light);
  --warn: var(--ed-warn);
  --warn-light: var(--ed-warn-light);

  --ed-shadow-sm: 0 1px 2px rgba(15, 31, 51, 0.06);
  --ed-shadow: 0 8px 28px rgba(15, 31, 51, 0.10);
  --ed-shadow-md: 0 16px 40px rgba(15, 31, 51, 0.12);
  --ed-shadow-lg: 0 24px 60px rgba(15, 31, 51, 0.14);
  --shadow: var(--ed-shadow-sm);
  --shadow-md: var(--ed-shadow-md);

  --ed-glow-petrol: 0 0 22px rgba(111, 151, 173, 0.28);
  --ed-glow-gold: 0 0 20px rgba(196, 160, 82, 0.28);
  --ed-control-active: #0F2A44;
  --ed-control-active-glow: none;
  --ed-surface-grad: linear-gradient(165deg, rgba(255, 255, 255, 0.95), rgba(247, 251, 253, 0.82));
  --ed-panel-grad: linear-gradient(145deg, rgba(255, 255, 255, 0.92), rgba(232, 238, 242, 0.55));
  --ed-inset-shine: inset 0 1px 0 rgba(255, 255, 255, 0.7);
  --ed-depth-shadow: 0 18px 40px rgba(15, 31, 51, 0.10);
  --ed-row-bg: rgba(255, 255, 255, 0.55);
  --ed-row-hover: rgba(111, 151, 173, 0.10);
  --ed-input-bg: rgba(255, 255, 255, 0.92);
  --ed-card-footer-bg: rgba(232, 238, 242, 0.55);
  --ed-nav-active-bg: rgba(15, 42, 68, 0.06);
  --ed-nav-active-fg: #0F2A44;
  --ed-sidebar-grad: rgba(255, 252, 248, 0.78);
  --ed-scrollbar-track: rgba(15, 31, 51, 0.06);
  --ed-board-bg: rgba(255, 255, 255, 0.65);
  --ed-list-bg: rgba(255, 255, 255, 0.72);
  --ed-attn-why: #7a5a18;
  --ed-home-lens: #355a46;
  --ed-link-hover: #163656;

  --ep-canvas: var(--ed-dusk);
  --ep-ink: var(--ed-text);
  --ep-muted: var(--ed-text-muted);
  --ep-line: var(--ed-border);
  --ep-accent: var(--ed-petrol-pastel);
  --ep-ask: var(--ed-gold-pastel);

  /* Folder pastels — daylight (identity preserved) */
  --ed-tab-rail: rgba(15, 31, 51, 0.14);
  --ed-tab-acc-bg: #dceaf2;
  --ed-tab-acc-fg: #2f4a5a;
  --ed-tab-acc-bd: #b9ccd8;
  --ed-tab-acc-active: #f3f8fb;
  --ed-tab-fees-bg: #ddeee4;
  --ed-tab-fees-fg: #2f4a3a;
  --ed-tab-fees-bd: #b7d0c0;
  --ed-tab-fees-active: #f3faf5;
  --ed-tab-ext-bg: #f0e6d2;
  --ed-tab-ext-fg: #5a4b30;
  --ed-tab-ext-bd: #dcc9a6;
  --ed-tab-ext-active: #fbf6ec;
  --ed-tab-inc-bg: #e8e2f0;
  --ed-tab-inc-fg: #46395a;
  --ed-tab-inc-bd: #cfc4de;
  --ed-tab-inc-active: #f7f4fa;
  --ed-tab-spc-bg: #f0e0e6;
  --ed-tab-spc-fg: #5a323a;
  --ed-tab-spc-bd: #d4b8c0;
  --ed-tab-spc-active: #fbf4f6;
  --ed-tab-notes-bg: #eee8df;
  --ed-tab-notes-fg: #4a4338;
  --ed-tab-notes-bd: #d5cbb8;
  --ed-tab-notes-active: #faf7f2;

  color: var(--ed-text);
  background:
    radial-gradient(ellipse 55% 40% at 0% 0%, rgba(230, 221, 209, 0.55), transparent 60%),
    linear-gradient(180deg, #FAF7F1 0%, #F6F1E8 100%);
}

/* ═══════════════════════════════════════════════════════════
   2. DARK — sci-fi night
   ═══════════════════════════════════════════════════════════ */
html[data-ed-theme="dark"] body.ed-y3026 {
  --ed-dusk: #1a2230;
  --ed-dusk-deep: #121820;
  --ed-dusk-mid: #151c28;
  --ed-text-on-dusk: #f2f6fa;
  --ed-text-soft: #d7e0e8;
  --ed-text-quiet: #b8c5d2;
  --ed-glass: rgba(255, 252, 248, 0.11);
  --ed-glass-strong: rgba(255, 252, 248, 0.16);
  --ed-glass-border: rgba(247, 243, 235, 0.14);
  --ed-surface-connected: rgba(20, 30, 42, 0.92);

  --ed-navy: #eef3f7;
  --ed-navy-soft: #b7c2ce;
  --ed-blue: #6f97ad;
  --ed-interaction: #6f97ad;
  --ed-interaction-soft: rgba(111, 151, 173, 0.18);
  --ed-amber: #c4a052;
  --ed-amber-soft: rgba(196, 160, 82, 0.16);
  --ed-amber-border: rgba(196, 160, 82, 0.35);
  --ed-amber-muted: #c4a052;
  --ed-ivory: #1a2230;
  --ed-ivory-deep: #121820;
  --ed-white: rgba(255, 252, 248, 0.1);
  /* Opaque reading surfaces above dusk — menus, cards, modal bodies. */
  --ed-surface-solid: #1a2230;
  /* Muted panels on dusk canvas (dark). Intentional white chips use --ed-surface-light. */
  --ed-surface-muted: #222b3a;
  --ed-surface-light: #fffcf8;
  --ed-surface: rgba(255, 252, 248, 0.11);

  --ed-text: #f2f6fa;
  /* Secondary / tertiary lifted for commercial readability — hierarchy preserved */
  --ed-text-muted: #d7e0e8;
  --ed-text-soft: #d7e0e8;
  --ed-text-quiet: #b8c5d2;
  --ed-text-subtle: #b8c5d2;
  --ed-heading: #fffcf8;
  --ed-number: #fffcf8;
  --ed-number-secondary: #e8eef4;
  --ed-text-on-accent: #121820;
  --ed-border: rgba(247, 243, 235, 0.14);
  --ed-border-light: rgba(247, 243, 235, 0.08);
  --ed-border-glow: rgba(111, 151, 173, 0.45);

  --ed-danger: #f0a8a0;
  --ed-danger-light: rgba(180, 35, 24, 0.22);
  --ed-warn: #e6d3a4;
  --ed-warn-light: rgba(196, 160, 82, 0.16);

  --ed-primary: #6f97ad;
  --ed-primary-hover: #8fb0c4;
  --ed-accent: #c4a052;

  --ed-rack: #e6d19a;
  --ed-sto: #9fc8d8;
  --ed-rack-soft: rgba(196, 160, 82, 0.16);
  --ed-sto-soft: rgba(111, 151, 173, 0.16);

  --ed-prop-0: #d5e7f0;
  --ed-prop-0-mark: #6f97ad;
  --ed-prop-0-wash: linear-gradient(90deg, rgba(111, 151, 173, 0.22), rgba(111, 151, 173, 0.04) 70%, transparent);
  --ed-prop-1: #edd9a8;
  --ed-prop-1-mark: #c4a052;
  --ed-prop-1-wash: linear-gradient(90deg, rgba(196, 160, 82, 0.22), rgba(196, 160, 82, 0.04) 70%, transparent);
  --ed-prop-2: #cfe0d4;
  --ed-prop-2-mark: #6d917c;
  --ed-prop-2-wash: linear-gradient(90deg, rgba(109, 145, 124, 0.22), rgba(109, 145, 124, 0.04) 70%, transparent);
  --ed-prop-3: #ddd4e8;
  --ed-prop-3-mark: #9c8db5;
  --ed-prop-3-wash: linear-gradient(90deg, rgba(156, 141, 181, 0.22), rgba(156, 141, 181, 0.04) 70%, transparent);

  --navy: var(--ed-navy);
  --navy-soft: var(--ed-navy-soft);
  --amber: var(--ed-amber);
  --amber-soft: var(--ed-amber-soft);
  --amber-border: var(--ed-amber-border);
  --ivory: var(--ed-ivory);
  --sidebar-bg: rgba(247, 243, 235, 0.05);
  --bg: var(--ed-dusk);
  --surface: var(--ed-surface);
  --border: var(--ed-border);
  --border-focus: #FAF7F1;
  --text: var(--ed-text);
  --text-muted: var(--ed-text-muted);
  --primary: var(--ed-primary);
  --primary-hover: var(--ed-primary-hover);
  --primary-light: rgba(111, 151, 173, 0.18);
  --accent: var(--ed-accent);
  --danger: var(--ed-danger);
  --danger-light: var(--ed-danger-light);
  --warn: var(--ed-warn);
  --warn-light: var(--ed-warn-light);

  --ed-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.25);
  --ed-shadow: 0 8px 28px rgba(0, 0, 0, 0.28);
  --ed-shadow-md: 0 16px 40px rgba(0, 0, 0, 0.32);
  --ed-shadow-lg: 0 24px 60px rgba(0, 0, 0, 0.38);
  --shadow: var(--ed-shadow-sm);
  --shadow-md: var(--ed-shadow-md);

  --ed-glow-petrol: 0 0 28px rgba(111, 151, 173, 0.28);
  --ed-glow-gold: 0 0 24px rgba(196, 160, 82, 0.28);
  --ed-control-active: linear-gradient(105deg, rgba(111, 151, 173, 0.95), rgba(111, 151, 173, 0.55));
  --ed-control-active-glow: 0 0 22px rgba(111, 151, 173, 0.4);
  --ed-surface-grad: linear-gradient(165deg, rgba(255, 252, 248, 0.12), rgba(255, 252, 248, 0.04));
  --ed-panel-grad: linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
  --ed-inset-shine: inset 0 1px 0 rgba(255, 255, 255, 0.12);
  --ed-depth-shadow: 0 20px 44px rgba(0, 0, 0, 0.35);
  --ed-row-bg: rgba(18, 24, 32, 0.35);
  --ed-row-hover: rgba(111, 151, 173, 0.12);
  --ed-input-bg: rgba(18, 24, 32, 0.55);
  --ed-card-footer-bg: rgba(18, 24, 32, 0.25);
  --ed-nav-active-bg: linear-gradient(105deg, rgba(111, 151, 173, 0.28), rgba(247, 243, 235, 0.06));
  --ed-nav-active-fg: #fffcf8;
  --ed-sidebar-grad: linear-gradient(180deg, rgba(247, 243, 235, 0.07), rgba(247, 243, 235, 0.02));
  --ed-scrollbar-track: rgba(0, 0, 0, 0.15);
  --ed-board-bg: rgba(18, 24, 32, 0.25);
  --ed-list-bg: rgba(18, 24, 32, 0.35);
  --ed-attn-why: #e6d3a4;
  --ed-home-lens: #b7d0c0;
  --ed-link-hover: #9fc0d0;

  --ep-canvas: var(--ed-dusk);
  --ep-ink: var(--ed-text);
  --ep-muted: var(--ed-text-muted);
  --ep-line: var(--ed-border);
  --ep-accent: var(--ed-petrol-pastel);
  --ep-ask: var(--ed-gold-pastel);

  /* Folder pastels — night translation of the same identity */
  --ed-tab-rail: rgba(247, 243, 235, 0.14);
  --ed-tab-acc-bg: rgba(227, 238, 246, 0.12);
  --ed-tab-acc-fg: #b9d0de;
  --ed-tab-acc-bd: rgba(185, 204, 216, 0.35);
  --ed-tab-acc-active: rgba(30, 44, 58, 0.95);
  --ed-tab-fees-bg: rgba(227, 240, 232, 0.12);
  --ed-tab-fees-fg: #b7d0c0;
  --ed-tab-fees-bd: rgba(183, 208, 192, 0.35);
  --ed-tab-fees-active: rgba(28, 42, 34, 0.95);
  --ed-tab-ext-bg: rgba(243, 234, 216, 0.12);
  --ed-tab-ext-fg: #dcc9a6;
  --ed-tab-ext-bd: rgba(220, 201, 166, 0.4);
  --ed-tab-ext-active: rgba(42, 36, 26, 0.95);
  --ed-tab-inc-bg: rgba(236, 230, 243, 0.12);
  --ed-tab-inc-fg: #cfc4de;
  --ed-tab-inc-bd: rgba(207, 196, 222, 0.35);
  --ed-tab-inc-active: rgba(36, 32, 46, 0.95);
  --ed-tab-spc-bg: rgba(243, 230, 234, 0.12);
  --ed-tab-spc-fg: #d4b8c0;
  --ed-tab-spc-bd: rgba(212, 184, 192, 0.4);
  --ed-tab-spc-active: rgba(46, 32, 36, 0.95);
  --ed-tab-notes-bg: rgba(238, 232, 223, 0.12);
  --ed-tab-notes-fg: #d5cbb8;
  --ed-tab-notes-bd: rgba(213, 203, 184, 0.35);
  --ed-tab-notes-active: rgba(42, 38, 32, 0.95);

  color: var(--ed-text);
  background:
    radial-gradient(ellipse 70% 50% at 18% 12%, rgba(111, 151, 173, 0.22), transparent 55%),
    radial-gradient(ellipse 55% 45% at 88% 18%, rgba(196, 160, 82, 0.14), transparent 50%),
    radial-gradient(ellipse 50% 40% at 70% 88%, rgba(156, 141, 181, 0.16), transparent 55%),
    linear-gradient(165deg, #151c28 0%, #1a2230 42%, #17141f 100%);
}

/* Fallback if attribute missing (pre-script): dark */
body.ed-y3026:not(html[data-ed-theme] body) {
  /* no-op — html attribute set in head */
}

/* ═══════════════════════════════════════════════════════════
   3. App shell
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 .ed-app {
  background: transparent;
  color: var(--ed-text);
}
body.ed-y3026 .ed-sidebar {
  background: var(--ed-sidebar-grad);
  border-right: 1px solid var(--ed-border-light);
  backdrop-filter: blur(18px) saturate(1.15);
  box-shadow: inset -1px 0 0 rgba(111, 151, 173, 0.08);
}
body.ed-y3026 .ed-brand,
body.ed-y3026 .ed-brand-name,
body.ed-y3026 .ed-logo-word {
  color: var(--ed-heading);
  font-family: var(--ed-signal-font);
  letter-spacing: 0.22em;
  text-shadow: 0 0 18px rgba(111, 151, 173, 0.18);
}
body.ed-y3026 .ed-brand-name {
  color: #0F2A44;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-shadow: none;
}
body.ed-y3026 .ed-brand-tagline {
  display: block;
  font-family: var(--ed-font, "DM Sans", system-ui, sans-serif);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: none;
  text-shadow: none;
  color: #2E3640;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-brand-name {
  color: #FAF7F1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-brand-tagline {
  color: #E6DDD1;
}
body.ed-y3026 .ed-nav-section { display: none; }

body.ed-y3026 .ed-nav-item {
  color: var(--ed-text-soft);
  font-family: var(--ed-signal-font);
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: 0;
  border: 0;
  background: transparent;
}
body.ed-y3026 .ed-nav-item:hover {
  color: var(--ed-heading);
  background: rgba(15, 42, 68, 0.05);
  border-color: transparent;
}
body.ed-y3026 .ed-nav-item.active {
  color: var(--ed-nav-active-fg);
  background: transparent;
  border-color: transparent;
  box-shadow: inset 2px 0 0 var(--ed-heading);
  font-weight: 600;
}
body.ed-y3026 .ed-nav-item.active .ed-nav-icon {
  opacity: 1;
  stroke: var(--ed-heading);
  filter: none;
}
body.ed-y3026 .ed-nav-icon {
  stroke: var(--ed-text-quiet);
  opacity: 0.85;
}
body.ed-y3026 .ed-sidebar-foot,
body.ed-y3026 .ed-sidebar-user,
body.ed-y3026 .ed-sidebar-user-name,
body.ed-y3026 .ed-sidebar-user-role,
body.ed-y3026 .ed-product-interchange-link {
  color: var(--ed-text-quiet);
  border-color: var(--ed-border-light);
}
body.ed-y3026 .ed-sidebar-user-name { color: var(--ed-text-soft); }
body.ed-y3026 .ed-sidebar-user-avatar {
  background: rgba(111, 151, 173, 0.25);
  color: var(--ed-heading);
  box-shadow: 0 0 12px rgba(111, 151, 173, 0.25);
}
body.ed-y3026 .ed-product-interchange-link:hover,
body.ed-y3026 .ed-product-interchange-link:focus-visible {
  color: var(--ed-heading);
}

/* Discreet Light / Dark control */
body.ed-y3026 .ed-theme-toggle {
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: 0 0 10px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid var(--ed-border);
  background: var(--ed-input-bg);
  color: var(--ed-text-quiet);
  font-family: var(--ed-signal-font);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}
body.ed-y3026 .ed-theme-toggle:hover,
body.ed-y3026 .ed-theme-toggle:focus-visible {
  color: var(--ed-text-soft);
  border-color: var(--ed-border-glow);
  box-shadow: var(--ed-glow-petrol);
  outline: none;
}
body.ed-y3026 .ed-theme-toggle-mark {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--ed-petrol-pastel);
  box-shadow: 0 0 10px rgba(111, 151, 173, 0.65);
  flex-shrink: 0;
}
html[data-ed-theme="light"] body.ed-y3026 .ed-theme-toggle-mark {
  background: var(--ed-gold-pastel);
  box-shadow: 0 0 10px rgba(196, 160, 82, 0.55);
}
body.ed-y3026 .ed-app.ed-nav-collapsed .ed-theme-toggle {
  justify-content: center;
  padding: 8px;
  gap: 0;
}
body.ed-y3026 .ed-app.ed-nav-collapsed .ed-theme-toggle-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

body.ed-y3026 .ed-topbar,
body.ed-y3026 .ed-topbar-inner {
  background: transparent;
  border-bottom: 1px solid var(--ed-border-light);
  color: var(--ed-text);
}
/* Views that hide the page title still keep the signed-in control. */
body.ed-client-file-detail-view .ed-topbar,
body.ed-journey-setup-view .ed-topbar,
body.ed-quote-edit-view .ed-topbar {
  display: block;
  padding: 8px 16px 0;
  background: transparent;
  border-bottom: none;
}
body.ed-client-file-detail-view .ed-topbar-titles,
body.ed-journey-setup-view .ed-topbar-titles,
body.ed-quote-edit-view .ed-topbar-titles,
body.ed-client-file-detail-view .ed-topbar #btn-header-action,
body.ed-journey-setup-view .ed-topbar #btn-header-action,
body.ed-quote-edit-view .ed-topbar #btn-header-action {
  display: none;
}
body.ed-client-file-detail-view .ed-topbar-inner,
body.ed-journey-setup-view .ed-topbar-inner,
body.ed-quote-edit-view .ed-topbar-inner {
  justify-content: flex-end;
  align-items: center;
}
body.ed-y3026.ed-client-file-detail-view .ed-topbar,
body.ed-y3026.ed-client-file-detail-view .ed-topbar-inner,
body.ed-y3026.ed-journey-setup-view .ed-topbar,
body.ed-y3026.ed-journey-setup-view .ed-topbar-inner,
body.ed-y3026.ed-quote-edit-view .ed-topbar,
body.ed-y3026.ed-quote-edit-view .ed-topbar-inner {
  background: transparent;
  border-bottom: none;
}
body.ed-y3026 .ed-page-title,
body.ed-y3026 .ed-display {
  color: var(--ed-heading);
  text-shadow: 0 0 40px rgba(111, 151, 173, 0.12);
}
body.ed-y3026 .ed-main,
body.ed-y3026 .ed-content,
body.ed-y3026 #ed-main,
body.ed-y3026 #ed-view {
  background: transparent;
  color: var(--ed-text);
}
body.ed-y3026 .ed-topbar .ed-page-subtitle,
body.ed-y3026 .ed-breadcrumb,
body.ed-y3026 .ed-meta {
  color: var(--ed-text-quiet);
}

/* ═══════════════════════════════════════════════════════════
   4. Cards / panels / glass
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 .card,
body.ed-y3026 .card-body,
body.ed-y3026 .ed-panel,
body.ed-y3026 .ed-card,
body.ed-y3026 .panel,
body.ed-y3026 .modal,
body.ed-y3026 .dialog,
body.ed-y3026 .ep-dialog,
body.ed-y3026 .ed-modal,
body.ed-y3026 .ed-drawer,
body.ed-y3026 .popover,
body.ed-y3026 .dropdown-menu,
body.ed-y3026 .ed-menu,
body.ed-y3026 .main-card,
body.ed-y3026 .ed-surface-card {
  background: var(--ed-surface-grad);
  border: 1px solid var(--ed-border);
  color: var(--ed-text);
  box-shadow: var(--ed-inset-shine), var(--ed-depth-shadow);
  backdrop-filter: blur(16px) saturate(1.1);
}
body.ed-y3026 .card-body { background: transparent; }
body.ed-y3026 .card-footer,
body.ed-y3026 .card-header {
  background: var(--ed-card-footer-bg);
  border-color: var(--ed-border-light);
  color: var(--ed-text-soft);
}

body.ed-y3026 .bg-white,
body.ed-y3026 .surface,
body.ed-y3026 .ed-surface,
body.ed-y3026 .workspace-panel,
body.ed-y3026 .ce-modal,
body.ed-y3026 .ce-drawer,
body.ed-y3026 .ce-popover,
body.ed-y3026 .ce-add-service-modal,
body.ed-y3026 .ce-journey-composer,
body.ed-y3026 .ep-confirm-delete-rate,
body.ed-y3026 .ep-more-menu,
body.ed-y3026 .ep-add-choice-btn,
body.ed-y3026 .ep-dialog,
body.ed-y3026 .ep-edit-rate-dialog,
body.ed-y3026 .cf-journey-card,
body.ed-y3026 .cf-details-journey-row,
body.ed-y3026 .cf-life-more-menu,
body.ed-y3026 .ed-toast,
body.ed-y3026 .tooltip,
body.ed-y3026 .ed-tooltip,
body.ed-y3026 .ex-frame,
body.ed-y3026 .ex-surface,
body.ed-y3026 .ex-panel,
body.ed-y3026 .end-exp-frame,
body.ed-y3026 .end-exp-surface {
  background: var(--ed-surface-grad) !important;
  border-color: var(--ed-border) !important;
  color: var(--ed-text) !important;
  box-shadow: var(--ed-inset-shine), var(--ed-depth-shadow);
  backdrop-filter: blur(16px);
}

/* Opaque interaction surfaces — never inherit glass/backdrop wash */
body.ed-y3026 .ce-journey-composer,
body.ed-y3026 .ep-more-menu,
body.ed-y3026 .ep-add-choice-btn,
body.ed-y3026 .ep-dialog,
body.ed-y3026 .ep-edit-rate-dialog,
body.ed-y3026 .cf-journey-card,
body.ed-y3026 .cf-details-journey-row,
body.ed-y3026 .cf-life-more-menu,
body.ed-y3026 .cf-quote-life-body,
body.ed-y3026 .ep-quote-life-body,
body.ed-y3026 .ed-account-menu {
  background: var(--ed-surface-solid) !important;
  backdrop-filter: none;
  opacity: 1 !important;
  color: var(--ed-text) !important;
}
body.ed-y3026 .ep-more-menu button {
  color: var(--ed-text) !important;
}
body.ed-y3026 .ep-more-menu button:hover {
  background: var(--ed-row-hover) !important;
  color: var(--ed-heading) !important;
}
body.ed-y3026 .ep-add-choice-btn strong {
  color: var(--ed-heading) !important;
}
body.ed-y3026 .ep-add-choice-btn span {
  color: var(--ed-text-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer-overlay,
html[data-ed-theme="dark"] body.ed-y3026 .ep-dialog-overlay,
html[data-ed-theme="dark"] body.ed-y3026 .ws-modal-overlay {
  background: rgba(0, 0, 0, 0.72);
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer {
  isolation: isolate;
  background: var(--ed-surface-solid) !important;
  opacity: 1 !important;
  color: var(--ed-text) !important;
  backdrop-filter: none !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer *:not(.ed-date-native):not(.ed-date-value):not(.ed-currency-display):not(input[type="radio"]):not(input[type="checkbox"]),
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-title,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-lead,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer label,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .field label,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-quote-eyebrow,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-hint,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-type,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-foot,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-esc-hint,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer input:not(.ed-date-native):not(.ed-date-value):not(.ed-currency-display):not([type="radio"]):not([type="checkbox"]),
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer select,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer button:not(:disabled) {
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-title,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer label,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .field label,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-quote-eyebrow,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-type {
  color: var(--ed-text) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-lead,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-hint,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-esc-hint {
  color: var(--ed-text-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-add-dependent:not(.ce-add-dependent--active) {
  opacity: 0.55;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-add-dependent--active {
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-quote-secondary .collapsible-body,
html[data-ed-theme="dark"] body.ed-y3026 .collapsible-body {
  background: var(--ed-surface-solid) !important;
  color: var(--ed-text);
}

/* ═══════════════════════════════════════════════════════════
   5. Buttons / forms
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 .btn,
body.ed-y3026 button.btn,
body.ed-y3026 .ed-btn {
  border-radius: 8px;
  font-family: var(--ed-signal-font);
  letter-spacing: 0.01em;
}
body.ed-y3026 .btn-primary,
body.ed-y3026 .ed-btn-primary {
  background: var(--ed-control-active);
  border: 1px solid var(--ed-border-glow);
  color: var(--ed-text-on-accent);
  box-shadow: var(--ed-control-active-glow);
}
html[data-ed-theme="dark"] body.ed-y3026 .btn-primary,
html[data-ed-theme="dark"] body.ed-y3026 .ed-btn-primary {
  color: #0F2A44;
  background: #FAF7F1;
  border-color: transparent;
  box-shadow: none;
}
body.ed-y3026 .btn-primary:hover:not(:disabled),
body.ed-y3026 .ed-btn-primary:hover:not(:disabled) {
  background: #163656;
  box-shadow: none;
}
html[data-ed-theme="dark"] body.ed-y3026 .btn-primary:hover:not(:disabled),
html[data-ed-theme="dark"] body.ed-y3026 .ed-btn-primary:hover:not(:disabled) {
  background: #E6DDD1;
  color: #0F2A44;
  box-shadow: none;
}
body.ed-y3026 .btn-secondary,
body.ed-y3026 .btn-ghost,
body.ed-y3026 .ed-btn-secondary {
  background: var(--ed-input-bg);
  border: 1px solid var(--ed-border);
  color: var(--ed-text-soft);
}
body.ed-y3026 .btn-secondary:hover:not(:disabled),
body.ed-y3026 .btn-ghost:hover:not(:disabled) {
  background: rgba(111, 151, 173, 0.14);
  border-color: rgba(111, 151, 173, 0.35);
  color: var(--ed-heading);
}
body.ed-y3026 .btn-accent {
  background: linear-gradient(105deg, #e8d7ae, var(--ed-gold-pastel));
  border: 1px solid rgba(196, 160, 82, 0.55);
  color: #121820;
  box-shadow: var(--ed-glow-gold);
}

body.ed-y3026 input:not([type="radio"]):not([type="checkbox"]),
body.ed-y3026 select,
body.ed-y3026 textarea,
body.ed-y3026 .ed-input,
body.ed-y3026 .form-control,
body.ed-y3026 .ep-search-input {
  background: var(--ed-input-bg) !important;
  border: 1px solid var(--ed-border) !important;
  color: var(--ed-text) !important;
  border-radius: 10px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
body.ed-y3026 input::placeholder,
body.ed-y3026 textarea::placeholder {
  color: var(--ed-text-quiet) !important;
}
body.ed-y3026 input:not([type="radio"]):not([type="checkbox"]):focus,
body.ed-y3026 select:focus,
body.ed-y3026 textarea:focus,
body.ed-y3026 .ed-input:focus,
body.ed-y3026 .form-control:focus {
  border-color: rgba(111, 151, 173, 0.55) !important;
  box-shadow: 0 0 0 3px rgba(111, 151, 173, 0.18), 0 0 18px rgba(111, 151, 173, 0.15) !important;
  outline: none;
}
body.ed-y3026 label,
body.ed-y3026 .ed-label,
body.ed-y3026 .field-label {
  color: var(--ed-text-soft);
}

/* ═══════════════════════════════════════════════════════════
   6. Tables / commercial numbers
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 table,
body.ed-y3026 .ep-mx,
body.ed-y3026 .ep-fees-table,
body.ed-y3026 .ep-rates,
body.ed-y3026 .ce-quote-workspace table {
  background: transparent;
  color: var(--ed-text);
}
body.ed-y3026 th {
  color: var(--ed-text-soft);
  border-bottom-color: var(--ed-border) !important;
  background: transparent !important;
  font-family: var(--ed-signal-font);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 600;
}
body.ed-y3026 td {
  border-bottom-color: var(--ed-border-light) !important;
  color: var(--ed-text-soft);
}
body.ed-y3026 tr:hover td,
body.ed-y3026 .ep-sup-row:hover,
body.ed-y3026 .ep-work-row:hover {
  background: var(--ed-row-hover) !important;
}

/* Product names / amounts — primary readability */
body.ed-y3026 .ep-prod-name,
body.ed-y3026 .ep-rate-product,
body.ed-y3026 .ep-mx .ep-prod,
body.ed-y3026 .ep-rs-name,
body.ed-y3026 td strong,
body.ed-y3026 .ep-sup-name {
  color: var(--ed-text) !important;
  font-weight: 650;
}
body.ed-y3026 .ep-rs-rack,
body.ed-y3026 .ep-rs-rack b,
body.ed-y3026 .ep-leg-rack b,
body.ed-y3026 .ep-mx .ep-rack,
body.ed-y3026 [data-ep-col="rack"],
body.ed-y3026 .ep-amt-rack {
  color: var(--ed-rack) !important;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
}
body.ed-y3026 .ep-rs-sto,
body.ed-y3026 .ep-rs-sto b,
body.ed-y3026 .ep-leg-sto b,
body.ed-y3026 .ep-mx .ep-sto,
body.ed-y3026 [data-ep-col="sto"],
body.ed-y3026 .ep-amt-sto {
  color: var(--ed-sto) !important;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
}
body.ed-y3026 .ep-rs-pct,
body.ed-y3026 .ep-mx .ep-pct,
body.ed-y3026 [data-ep-col="pct"] {
  color: var(--ed-number-secondary) !important;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
body.ed-y3026 .ep-period,
body.ed-y3026 .ep-rs-period,
body.ed-y3026 .ep-dates,
body.ed-y3026 .ep-mx-season-dates {
  color: var(--ed-text-soft) !important;
  font-variant-numeric: tabular-nums;
}

/* Secondary metadata — clearly readable (not collapsed into tertiary) */
body.ed-y3026 .ep-muted,
body.ed-y3026 .ep-read,
body.ed-y3026 .ep-page-head p,
body.ed-y3026 .ep-list header p,
body.ed-y3026 .ep-hero p,
body.ed-y3026 .ep-acc-legend,
body.ed-y3026 .ep-kept-line,
body.ed-y3026 .ep-validity-hint,
body.ed-y3026 .ep-kv-k,
body.ed-y3026 .ep-status-move,
body.ed-y3026 .ep-basis,
body.ed-y3026 .ep-mx-basis,
body.ed-y3026 .ep-mx-id .ep-muted,
body.ed-y3026 .ep-mx-records td.ep-mx-period {
  color: var(--ed-text-soft) !important;
}

/* Tertiary metadata — quieter, still comfortable on dark surfaces */
body.ed-y3026 .ep-counts,
body.ed-y3026 .ep-more,
body.ed-y3026 .ep-mx-cur,
body.ed-y3026 .ep-mx-board-count,
body.ed-y3026 .text-muted,
body.ed-y3026 .ep-mx-records thead th,
body.ed-y3026 .ep-rates th,
body.ed-y3026 .ep-fees-table th,
body.ed-y3026 .ep-mx thead th {
  color: var(--ed-text-quiet) !important;
}

/* Dark: lift column headings one step — orientation must not require squinting */
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records thead th,
html[data-ed-theme="dark"] body.ed-y3026 .ep-rates th,
html[data-ed-theme="dark"] body.ed-y3026 .ep-fees-table th,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx thead th,
html[data-ed-theme="dark"] body.ed-y3026 th {
  color: var(--ed-text-soft) !important;
}

/* Legend body text secondary; Rack/STO marks stay semantic */
html[data-ed-theme="dark"] body.ed-y3026 .ep-acc-legend {
  color: var(--ed-text-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-leg-rack,
html[data-ed-theme="dark"] body.ed-y3026 .ep-leg-sto {
  color: var(--ed-text-soft);
}

/* Currency / counts — tertiary but readable */
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-cur,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-board-count,
html[data-ed-theme="dark"] body.ed-y3026 .ep-counts {
  color: #c2ced9 !important;
}

/* Secondary actions */
html[data-ed-theme="dark"] body.ed-y3026 .btn-secondary,
html[data-ed-theme="dark"] body.ed-y3026 .btn-ghost,
html[data-ed-theme="dark"] body.ed-y3026 .ed-btn-secondary,
html[data-ed-theme="dark"] body.ed-y3026 .ep-link,
html[data-ed-theme="dark"] body.ed-y3026 .ep-rate-actions .ep-link,
html[data-ed-theme="dark"] body.ed-y3026 .edit {
  color: var(--ed-text-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-link {
  color: #a8c4d4 !important;
}

/* Dark: Rack/STO column ink — light-mode browns/navies are unreadable on dusk */
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records thead th.ep-wb-rack,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records td.ep-wb-rack {
  color: var(--ed-rack) !important;
  background: var(--ed-rack-soft) !important;
  box-shadow: inset 2px 0 0 rgba(196, 160, 82, 0.55);
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records thead th.ep-wb-sto,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records td.ep-wb-sto {
  color: var(--ed-sto) !important;
  background: var(--ed-sto-soft) !important;
  box-shadow: inset 2px 0 0 rgba(111, 151, 173, 0.55);
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records thead th.ep-wb-pct,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records td.ep-wb-pct {
  color: var(--ed-number-secondary) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-prod {
  color: var(--ed-text) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records td.ep-wb-period {
  color: var(--ed-text-soft) !important;
}

/* Review workbench (.ep-wb) — same dark ink rules as stored matrix */
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb thead th.ep-wb-rack,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-rack,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-rack b {
  color: var(--ed-rack) !important;
  background: var(--ed-rack-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-rack {
  box-shadow: inset 2px 0 0 rgba(196, 160, 82, 0.55);
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb thead th.ep-wb-sto,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-sto,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-sto b {
  color: var(--ed-sto) !important;
  background: var(--ed-sto-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-sto {
  box-shadow: inset 2px 0 0 rgba(111, 151, 173, 0.55);
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb thead th.ep-wb-pct,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-pct {
  color: var(--ed-number-secondary) !important;
}

/* Rate-row secondary metadata — readable, still quieter than primary */
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb-prod-basis,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb-occ-inline,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb-season-meta,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb-money-ccy,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-rack .ep-wb-money-ccy,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-sto .ep-wb-money-ccy,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records td.ep-wb-rack .ep-wb-money-ccy,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-records td.ep-wb-sto .ep-wb-money-ccy,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-basis,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td.ep-wb-period,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb-period-range,
html[data-ed-theme="dark"] body.ed-y3026 .ep-rs-pct,
html[data-ed-theme="dark"] body.ed-y3026 .ep-rs-empty,
html[data-ed-theme="dark"] body.ed-y3026 .ep-rs-sep {
  color: var(--ed-text-soft) !important;
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb-prod-name,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-prod {
  color: var(--ed-heading) !important;
}

/* ═══════════════════════════════════════════════════════════
   7. Folder / file-tab system (identity — translated, not replaced)
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 .ep-sup-tabs,
body.ed-y3026 .cf-tabs,
body.ed-y3026 .ep-quote-life-tabs,
body.ed-y3026 .cf-quote-life-tabs {
  border-bottom-color: var(--ed-tab-rail) !important;
}
body.ed-y3026 .ep-sup-tab,
body.ed-y3026 .cf-tab,
body.ed-y3026 .ep-quote-life-tab,
body.ed-y3026 .cf-quote-life-tab {
  font-family: var(--ed-signal-font);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: none;
}

/* Accommodation / details / draft — petrol family */
body.ed-y3026 .ep-sup-tab--accommodation,
body.ed-y3026 .cf-tab--details,
body.ed-y3026 .ep-quote-life-tab--draft,
body.ed-y3026 .cf-quote-life-tab--draft {
  background: var(--ed-tab-acc-bg) !important;
  color: var(--ed-tab-acc-fg) !important;
  border-color: var(--ed-tab-acc-bd) !important;
}
body.ed-y3026 .ep-sup-tab--accommodation.is-active,
body.ed-y3026 .cf-tab--details.is-active,
body.ed-y3026 .ep-quote-life-tab--draft.is-active,
body.ed-y3026 .cf-quote-life-tab--draft.is-active {
  background: var(--ed-tab-acc-active) !important;
  color: var(--ed-tab-acc-fg) !important;
  border-color: var(--ed-tab-acc-bd) !important;
  border-bottom-color: var(--ed-tab-acc-active) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), var(--ed-glow-petrol);
}
body.ed-y3026 .ep-sup-panel[data-ep-sup-tab="accommodation"],
body.ed-y3026 .cf-file-body[data-cf-active-tab="details"] .cf-tab-panel,
body.ed-y3026 .ep-quote-life[data-quote-life-tab="draft"] .ep-quote-life-body,
body.ed-y3026 .cf-quote-life[data-quote-life-tab="draft"] .cf-quote-life-body {
  background: var(--ed-tab-acc-active) !important;
  border-color: var(--ed-tab-acc-bd) !important;
  box-shadow: var(--ed-depth-shadow);
  backdrop-filter: blur(12px);
}

/* Fees / journeys / issued — sage */
body.ed-y3026 .ep-sup-tab--fees,
body.ed-y3026 .cf-tab--journeys,
body.ed-y3026 .ep-quote-life-tab--issued,
body.ed-y3026 .cf-quote-life-tab--issued {
  background: var(--ed-tab-fees-bg) !important;
  color: var(--ed-tab-fees-fg) !important;
  border-color: var(--ed-tab-fees-bd) !important;
}
body.ed-y3026 .ep-sup-tab--fees.is-active,
body.ed-y3026 .cf-tab--journeys.is-active,
body.ed-y3026 .ep-quote-life-tab--issued.is-active,
body.ed-y3026 .cf-quote-life-tab--issued.is-active {
  background: var(--ed-tab-fees-active) !important;
  color: var(--ed-tab-fees-fg) !important;
  border-color: var(--ed-tab-fees-bd) !important;
  border-bottom-color: var(--ed-tab-fees-active) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 0 16px rgba(109, 145, 124, 0.22);
}
body.ed-y3026 .ep-sup-panel[data-ep-sup-tab="fees"],
body.ed-y3026 .cf-file-body[data-cf-active-tab="journeys"] .cf-tab-panel,
body.ed-y3026 .ep-quote-life[data-quote-life-tab="issued"] .ep-quote-life-body,
body.ed-y3026 .cf-quote-life[data-quote-life-tab="issued"] .cf-quote-life-body {
  background: var(--ed-tab-fees-active) !important;
  border-color: var(--ed-tab-fees-bd) !important;
  box-shadow: var(--ed-depth-shadow);
}

/* Extras / documents / confirmed — gold sand */
body.ed-y3026 .ep-sup-tab--extras,
body.ed-y3026 .cf-tab--documents,
body.ed-y3026 .ep-quote-life-tab--confirmed,
body.ed-y3026 .cf-quote-life-tab--confirmed {
  background: var(--ed-tab-ext-bg) !important;
  color: var(--ed-tab-ext-fg) !important;
  border-color: var(--ed-tab-ext-bd) !important;
}
body.ed-y3026 .ep-sup-tab--extras.is-active,
body.ed-y3026 .cf-tab--documents.is-active,
body.ed-y3026 .ep-quote-life-tab--confirmed.is-active,
body.ed-y3026 .cf-quote-life-tab--confirmed.is-active {
  background: var(--ed-tab-ext-active) !important;
  color: var(--ed-tab-ext-fg) !important;
  border-color: var(--ed-tab-ext-bd) !important;
  border-bottom-color: var(--ed-tab-ext-active) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), var(--ed-glow-gold);
}
body.ed-y3026 .ep-sup-panel[data-ep-sup-tab="extras"],
body.ed-y3026 .cf-file-body[data-cf-active-tab="documents"] .cf-tab-panel,
body.ed-y3026 .ep-quote-life[data-quote-life-tab="confirmed"] .ep-quote-life-body,
body.ed-y3026 .cf-quote-life[data-quote-life-tab="confirmed"] .cf-quote-life-body {
  background: var(--ed-tab-ext-active) !important;
  border-color: var(--ed-tab-ext-bd) !important;
  box-shadow: var(--ed-depth-shadow);
}

/* Inclusions / notes-cf / accepted — lilac */
body.ed-y3026 .ep-sup-tab--inclusions,
body.ed-y3026 .cf-tab--notes,
body.ed-y3026 .ep-quote-life-tab--accepted,
body.ed-y3026 .cf-quote-life-tab--accepted {
  background: var(--ed-tab-inc-bg) !important;
  color: var(--ed-tab-inc-fg) !important;
  border-color: var(--ed-tab-inc-bd) !important;
}
body.ed-y3026 .ep-sup-tab--inclusions.is-active,
body.ed-y3026 .cf-tab--notes.is-active,
body.ed-y3026 .ep-quote-life-tab--accepted.is-active,
body.ed-y3026 .cf-quote-life-tab--accepted.is-active {
  background: var(--ed-tab-inc-active) !important;
  color: var(--ed-tab-inc-fg) !important;
  border-color: var(--ed-tab-inc-bd) !important;
  border-bottom-color: var(--ed-tab-inc-active) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 0 16px rgba(156, 141, 181, 0.22);
}
body.ed-y3026 .ep-sup-panel[data-ep-sup-tab="inclusions"],
body.ed-y3026 .cf-file-body[data-cf-active-tab="notes"] .cf-tab-panel,
body.ed-y3026 .ep-quote-life[data-quote-life-tab="accepted"] .ep-quote-life-body,
body.ed-y3026 .cf-quote-life[data-quote-life-tab="accepted"] .cf-quote-life-body {
  background: var(--ed-tab-inc-active) !important;
  border-color: var(--ed-tab-inc-bd) !important;
  box-shadow: var(--ed-depth-shadow);
}

/* Specials — rose */
body.ed-y3026 .ep-sup-tab--specials,
body.ed-y3026 .ep-quote-life-tab--cancelled,
body.ed-y3026 .cf-quote-life-tab--cancelled {
  background: var(--ed-tab-spc-bg) !important;
  color: var(--ed-tab-spc-fg) !important;
  border-color: var(--ed-tab-spc-bd) !important;
}
body.ed-y3026 .ep-sup-tab--specials.is-active,
body.ed-y3026 .ep-quote-life-tab--cancelled.is-active,
body.ed-y3026 .cf-quote-life-tab--cancelled.is-active {
  background: var(--ed-tab-spc-active) !important;
  color: var(--ed-tab-spc-fg) !important;
  border-color: var(--ed-tab-spc-bd) !important;
  border-bottom-color: var(--ed-tab-spc-active) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 0 14px rgba(181, 107, 107, 0.2);
}
body.ed-y3026 .ep-sup-panel[data-ep-sup-tab="specials"],
body.ed-y3026 .ep-quote-life[data-quote-life-tab="cancelled"] .ep-quote-life-body,
body.ed-y3026 .cf-quote-life[data-quote-life-tab="cancelled"] .cf-quote-life-body {
  background: var(--ed-tab-spc-active) !important;
  border-color: var(--ed-tab-spc-bd) !important;
  box-shadow: var(--ed-depth-shadow);
}

/* Commercial notes — warm sand */
body.ed-y3026 .ep-sup-tab--notes {
  background: var(--ed-tab-notes-bg) !important;
  color: var(--ed-tab-notes-fg) !important;
  border-color: var(--ed-tab-notes-bd) !important;
}
body.ed-y3026 .ep-sup-tab--notes.is-active {
  background: var(--ed-tab-notes-active) !important;
  color: var(--ed-tab-notes-fg) !important;
  border-color: var(--ed-tab-notes-bd) !important;
  border-bottom-color: var(--ed-tab-notes-active) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 0 14px rgba(196, 160, 82, 0.16);
}
body.ed-y3026 .ep-sup-panel[data-ep-sup-tab="notes"] {
  background: var(--ed-tab-notes-active) !important;
  border-color: var(--ed-tab-notes-bd) !important;
  box-shadow: var(--ed-depth-shadow);
}

body.ed-y3026 .ep-sup-panel,
body.ed-y3026 .cf-tab-panel,
body.ed-y3026 .ep-quote-life-body,
body.ed-y3026 .cf-quote-life-body {
  color: var(--ed-text);
}

/* Lifecycle chips */
body.ed-y3026 .ep-life li:nth-child(1) {
  background: var(--ed-tab-acc-bg);
  color: var(--ed-tab-acc-fg);
  border-color: var(--ed-tab-acc-bd);
}
body.ed-y3026 .ep-life li:nth-child(2) {
  background: var(--ed-tab-fees-bg);
  color: var(--ed-tab-fees-fg);
  border-color: var(--ed-tab-fees-bd);
}
body.ed-y3026 .ep-life li:nth-child(3) {
  background: var(--ed-tab-ext-bg);
  color: var(--ed-tab-ext-fg);
  border-color: var(--ed-tab-ext-bd);
}
body.ed-y3026 .ep-life li:nth-child(4) {
  background: var(--ed-tab-inc-bg);
  color: var(--ed-tab-inc-fg);
  border-color: var(--ed-tab-inc-bd);
}
body.ed-y3026 .ep-life .is-current {
  box-shadow: var(--ed-glow-petrol);
  opacity: 1;
}

/* ═══════════════════════════════════════════════════════════
   8. Property colour language
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="0"] .ep-prop-title::before,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="0"] .ep-prop-title::before {
  background: var(--ed-prop-0-mark);
  box-shadow: 0 0 10px rgba(111, 151, 173, 0.7);
}
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="1"] .ep-prop-title::before,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="1"] .ep-prop-title::before {
  background: var(--ed-prop-1-mark);
  box-shadow: 0 0 10px rgba(196, 160, 82, 0.65);
}
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="2"] .ep-prop-title::before,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="2"] .ep-prop-title::before {
  background: var(--ed-prop-2-mark);
  box-shadow: 0 0 10px rgba(109, 145, 124, 0.6);
}
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="3"] .ep-prop-title::before,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="3"] .ep-prop-title::before {
  background: var(--ed-prop-3-mark);
  box-shadow: 0 0 10px rgba(156, 141, 181, 0.6);
}
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="0"] th,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="0"] th {
  color: var(--ed-prop-0);
  background: var(--ed-prop-0-wash);
}
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="1"] th,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="1"] th {
  color: var(--ed-prop-1);
  background: var(--ed-prop-1-wash);
}
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="2"] th,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="2"] th {
  color: var(--ed-prop-2);
  background: var(--ed-prop-2-wash);
}
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="3"] th,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="3"] th {
  color: var(--ed-prop-3);
  background: var(--ed-prop-3-wash);
}
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="0"] .ep-prop-title,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="0"] .ep-prop-title { color: var(--ed-prop-0) !important; }
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="1"] .ep-prop-title,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="1"] .ep-prop-title { color: var(--ed-prop-1) !important; }
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="2"] .ep-prop-title,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="2"] .ep-prop-title { color: var(--ed-prop-2) !important; }
body.ed-y3026 .ep-mx .ep-rate-property[data-ep-prop-tone="3"] .ep-prop-title,
body.ed-y3026 .ep-wb .ep-mx-prop[data-ep-prop-tone="3"] .ep-prop-title { color: var(--ed-prop-3) !important; }

/* Property / group identity labels on boards (Accommodation rates) — same colour meaning */
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="0"] .ep-mx-board-head,
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="0"] .ep-prop-title {
  color: var(--ed-prop-0) !important;
  background: var(--ed-prop-0-wash);
}
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="1"] .ep-mx-board-head,
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="1"] .ep-prop-title {
  color: var(--ed-prop-1) !important;
  background: var(--ed-prop-1-wash);
}
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="2"] .ep-mx-board-head,
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="2"] .ep-prop-title {
  color: var(--ed-prop-2) !important;
  background: var(--ed-prop-2-wash);
}
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="3"] .ep-mx-board-head,
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="3"] .ep-prop-title {
  color: var(--ed-prop-3) !important;
  background: var(--ed-prop-3-wash);
}
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="0"] .ep-prop-title::before { background: var(--ed-prop-0-mark); box-shadow: 0 0 10px rgba(111, 151, 173, 0.7); }
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="1"] .ep-prop-title::before { background: var(--ed-prop-1-mark); box-shadow: 0 0 10px rgba(196, 160, 82, 0.65); }
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="2"] .ep-prop-title::before { background: var(--ed-prop-2-mark); box-shadow: 0 0 10px rgba(109, 145, 124, 0.6); }
body.ed-y3026 .ep-mx-board[data-ep-prop-tone="3"] .ep-prop-title::before { background: var(--ed-prop-3-mark); box-shadow: 0 0 10px rgba(156, 141, 181, 0.6); }

/* Dark: ensure identity label ink beats any leftover light-mode hardcoded browns/navy */
html[data-ed-theme="dark"] body.ed-y3026 .ep-prop-title,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-board-head .ep-prop-title,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx .ep-rate-property .ep-prop-title,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb .ep-mx-prop .ep-prop-title {
  font-weight: 650;
}

/* ═══════════════════════════════════════════════════════════
   9. Home
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 .ep-home {
  --ep-home-ink: var(--ed-text);
  --ep-home-muted: var(--ed-text-soft);
  --ep-home-line: var(--ed-border-light);
  --ep-home-petrol: var(--ed-petrol-pastel);
  --ep-home-amber: var(--ed-gold-pastel);
  --ep-home-ivory: transparent;
  --ep-home-surface: var(--ed-surface-grad);
  max-width: none;
  width: 100%;
  color: var(--ep-home-ink);
}
body.ed-y3026 .ep-home-lead {
  border-bottom: 1px solid var(--ed-border-light);
}
body.ed-y3026 .ep-home-lead h1 {
  color: var(--ed-heading);
  font-size: 32px;
  font-weight: 500;
  line-height: 1;
  text-shadow: 0 0 28px rgba(111, 151, 173, 0.1);
}
body.ed-y3026 .ep-home-kicker,
body.ed-y3026 .ep-home-summary {
  color: var(--ed-text-soft);
}
body.ed-y3026 .ep-home-kicker { margin-top: 2px; }
body.ed-y3026 .ep-home-identity {
  font-family: var(--ed-signal-font);
  color: var(--ed-text-quiet);
  padding-top: 2px;
}
body.ed-y3026 .ep-home-identity .ep-home-co {
  color: var(--ed-text-soft);
  font-family: var(--ed-font, "DM Sans", system-ui, sans-serif);
}
body.ed-y3026 .ep-home-section h2,
body.ed-y3026 .ep-home-section .zone-label {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ed-heading);
  background: none;
}
body.ed-y3026 .ep-home-section h2::before { content: none; }
body.ed-y3026 .ep-home-section[data-ep-home="continue-working"],
body.ed-y3026 .ep-home-section[data-ep-home="needs-attention"],
body.ed-y3026 .ep-home-section[data-ep-home="supplier-rates"],
body.ed-y3026 .ep-home-section[data-ep-home="recent-activity"] {
  padding: 0;
  margin-top: 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
body.ed-y3026 .ep-home-lead {
  margin-bottom: 0;
  padding-bottom: 4px;
  border-bottom: 1px solid rgba(111, 151, 173, 0.22);
}
body.ed-y3026 .ep-home .ep-work-row.ep-home-entry {
  min-height: 0;
  padding-top: 3px;
  padding-bottom: 3px;
}
body.ed-y3026 .ep-home .ep-home-list--work .ep-work-row.ep-home-entry,
body.ed-y3026 .ep-home .ep-home-list--ck .ep-work-row.ep-home-entry,
body.ed-y3026 .ep-home .ep-home-list--activity .ep-work-row.ep-home-entry {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(247, 243, 235, 0.08);
  border-radius: 0;
  box-shadow: none;
  margin: 0;
}
body.ed-y3026 .ep-home .ep-home-list--work .ep-work-row.ep-home-entry:hover,
body.ed-y3026 .ep-home .ep-home-list--ck .ep-work-row.ep-home-entry:hover,
body.ed-y3026 .ep-home .ep-home-list--activity .ep-work-row.ep-home-entry:hover {
  background: rgba(111, 151, 173, 0.08);
  border-color: transparent;
  box-shadow: none;
}
body.ed-y3026 .ep-home-who {
  color: var(--ed-heading);
  font-family: "DM Sans", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
}
body.ed-y3026 .ep-home-what,
body.ed-y3026 .ep-home-reading,
body.ed-y3026 .ep-home-facts,
body.ed-y3026 .ep-home-activity-line {
  color: var(--ed-text-soft);
}
body.ed-y3026 .ep-home-ref,
body.ed-y3026 .ep-home-when {
  color: var(--ed-text-quiet);
}
body.ed-y3026 .ep-home .ep-home-list--attn .ep-work-row.ep-home-entry {
  background: linear-gradient(90deg, rgba(196, 160, 82, 0.16), rgba(196, 160, 82, 0.04) 55%, transparent);
  border: 0;
  border-bottom: 1px solid rgba(196, 160, 82, 0.12);
  border-radius: 0;
  box-shadow: inset 2px 0 0 var(--ed-gold-pastel);
}
body.ed-y3026 .ep-home .ep-home-list--attn .ep-work-row.ep-home-entry:hover {
  background: linear-gradient(90deg, rgba(196, 160, 82, 0.22), rgba(196, 160, 82, 0.06) 55%, transparent);
  border-color: transparent;
  box-shadow: inset 2px 0 0 var(--ed-gold-pastel);
}
body.ed-y3026 .ep-home-why {
  color: var(--ed-attn-why);
  text-shadow: none;
}
body.ed-y3026 .ep-home .ep-home-action,
body.ed-y3026 .ep-home .ep-view-all {
  color: var(--ed-heading);
  font-family: "DM Sans", system-ui, sans-serif;
}
body.ed-y3026 .ep-home-lens { color: var(--ed-home-lens); }
body.ed-y3026 .ep-home .ep-home-status { color: var(--ed-text-soft); }
body.ed-y3026 .ep-home .ep-home-status--draft .ep-home-dot {
  background: #a8b0bb;
  box-shadow: none;
}
body.ed-y3026 .ep-home .ep-home-status--issued .ep-home-dot {
  background: #6f97ad;
  box-shadow: 0 0 8px rgba(111, 151, 173, 0.85);
}
body.ed-y3026 .ep-home .ep-home-status--confirmed .ep-home-dot {
  background: #6d917c;
  box-shadow: 0 0 8px rgba(109, 145, 124, 0.75);
}
body.ed-y3026 .ep-home .ep-home-status--accepted .ep-home-dot {
  background: #c4a052;
  box-shadow: 0 0 8px rgba(196, 160, 82, 0.7);
}
body.ed-y3026 .ep-home-empty { color: var(--ed-text-quiet); }
body.ed-y3026 .ep-home-summary {
  position: static;
  margin-top: 2px;
  padding: 0;
  max-width: none;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: var(--ed-text-quiet);
}
body.ed-y3026 .ep-home-summary::before { content: none; }

/* ═══════════════════════════════════════════════════════════
   10. Quote / client / commercial surfaces
   ═══════════════════════════════════════════════════════════ */
body.ed-y3026 .ce-quote-workspace,
body.ed-y3026 .ce-quote-workspace .ce-pane,
body.ed-y3026 .ce-quote-workspace .ce-panel,
body.ed-y3026 .cf-file,
body.ed-y3026 .cf-panel,
body.ed-y3026 .ep-supplier,
body.ed-y3026 .ep-ingest,
body.ed-y3026 .ep-list,
body.ed-y3026 .ed-suppliers-root,
body.ed-y3026 .ed-client-files-root,
body.ed-y3026 #ce-costing-host,
body.ed-y3026 .ce-costing,
body.ed-y3026 .costing-root {
  color: var(--ed-text);
}
body.ed-y3026 .ce-quote-workspace,
body.ed-y3026 .cf-file,
body.ed-y3026 .ep-supplier,
body.ed-y3026 .ep-list,
body.ed-y3026 .ep-ingest {
  background: transparent;
}
body.ed-y3026 .ce-quote-workspace .ce-pane,
body.ed-y3026 .ce-quote-workspace .ce-composer,
body.ed-y3026 .ce-quote-workspace .ce-itinerary,
body.ed-y3026 .ce-quote-workspace .ce-side,
body.ed-y3026 .cf-panel,
body.ed-y3026 .ep-mx-board,
body.ed-y3026 .ep-sup-panel,
body.ed-y3026 .ep-notes-panel {
  background: var(--ed-panel-grad) !important;
  border: 1px solid var(--ed-border) !important;
  box-shadow: var(--ed-inset-shine), var(--ed-depth-shadow);
  backdrop-filter: blur(14px);
  color: var(--ed-text);
}
body.ed-y3026 h1,
body.ed-y3026 h2,
body.ed-y3026 h3,
body.ed-y3026 .ep-hero h1,
body.ed-y3026 .ep-list h1,
body.ed-y3026 .ep-supplier h1,
body.ed-y3026 .ep-ingest h1,
body.ed-y3026 .ep-page-head h1,
body.ed-y3026 .ep-list header h1 {
  color: var(--ed-heading) !important;
}

body.ed-y3026 .ep-sup-row,
body.ed-y3026 .cf-row,
body.ed-y3026 .ce-rate-option,
body.ed-y3026 .ep-quote-row,
body.ed-y3026 .ep-list-row {
  background: var(--ed-row-bg) !important;
  border: 1px solid var(--ed-border-light);
  color: var(--ed-text) !important;
}
body.ed-y3026 .ep-sup-row:hover,
body.ed-y3026 .cf-row:hover,
body.ed-y3026 .ce-rate-option:hover,
body.ed-y3026 .ce-rate-option.is-selected,
body.ed-y3026 .ep-quote-row:hover {
  background: var(--ed-row-hover) !important;
  border-color: rgba(111, 151, 173, 0.35);
}

body.ed-y3026 .ep-ask {
  background: var(--ed-amber-soft);
  border-left: 3px solid var(--ed-gold-pastel);
  color: var(--ed-text-soft);
}

body.ed-y3026 .ep-sup-list,
body.ed-y3026 .ep-list-body,
body.ed-y3026 .ep-quote-list,
body.ed-y3026 .cf-list,
body.ed-y3026 .ed-list,
body.ed-y3026 ul.ep-sup-list,
body.ed-y3026 .ep-suppliers,
body.ed-y3026 [data-ep-list] {
  background: var(--ed-list-bg) !important;
  color: var(--ed-text) !important;
  border-color: var(--ed-border-light) !important;
}
body.ed-y3026 .ep-mx,
body.ed-y3026 .ep-fees-table,
body.ed-y3026 .ep-rates,
body.ed-y3026 .ep-mx-board {
  background: var(--ed-board-bg) !important;
}
body.ed-y3026 .ep-mx .ep-rate-property:not(:first-child) th {
  border-top-color: var(--ed-border-light) !important;
}

body.ed-y3026 a,
body.ed-y3026 .ep-view-all,
body.ed-y3026 .ep-link {
  color: var(--ed-heading) !important;
}
body.ed-y3026 a:hover {
  color: var(--ed-link-hover) !important;
}

body.ed-y3026 .empty,
body.ed-y3026 .ed-empty,
body.ed-y3026 .ep-home-empty,
body.ed-y3026 .ep-search-empty {
  color: var(--ed-text-quiet);
}

body.ed-y3026 hr,
body.ed-y3026 .divider {
  border-color: var(--ed-border-light);
}

body.ed-y3026 .ep-kv,
body.ed-y3026 .settings-section,
body.ed-y3026 .ed-settings {
  color: var(--ed-text-soft);
}

body.ed-y3026 .cf-life,
body.ed-y3026 .qw-life,
body.ed-y3026 .ep-life {
  filter: saturate(1.05);
}

body.ed-y3026 .ed-account-menu {
  background: var(--ed-surface-solid) !important;
  border: 1px solid var(--ed-border) !important;
  box-shadow: var(--ed-depth-shadow);
  color: var(--ed-text);
  backdrop-filter: none;
}
body.ed-y3026 .ed-account-menu-item {
  color: var(--ed-text-soft);
}
body.ed-y3026 .ed-account-menu-item:hover {
  background: var(--ed-row-hover);
  color: var(--ed-heading);
}

/* Client / journey / quote card hierarchy — secondary readable, not disabled */
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-title,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-card-main,
html[data-ed-theme="dark"] body.ed-y3026 .ed-cf-card-name,
html[data-ed-theme="dark"] body.ed-y3026 .cf-detail-name {
  color: var(--ed-heading) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-version,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-updated,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-context,
html[data-ed-theme="dark"] body.ed-y3026 .cf-details-journey-meta,
html[data-ed-theme="dark"] body.ed-y3026 .cf-detail-summary,
html[data-ed-theme="dark"] body.ed-y3026 .cf-detail-summary-value,
html[data-ed-theme="dark"] body.ed-y3026 .cf-detail-lead-label,
html[data-ed-theme="dark"] body.ed-y3026 .cf-detail-status-label,
html[data-ed-theme="dark"] body.ed-y3026 .cf-detail-file-note,
html[data-ed-theme="dark"] body.ed-y3026 .cf-responsibility-panel p,
html[data-ed-theme="dark"] body.ed-y3026 .ed-cf-card-meta,
html[data-ed-theme="dark"] body.ed-y3026 .ed-cf-card-ref,
html[data-ed-theme="dark"] body.ed-y3026 .ce-quote-meta,
html[data-ed-theme="dark"] body.ed-y3026 .ce-muted,
html[data-ed-theme="dark"] body.ed-y3026 .ce-composer-lead,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-meta,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-meta,
html[data-ed-theme="dark"] body.ed-y3026 .cf-life-meta {
  color: var(--ed-text-soft) !important;
  opacity: 1 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings-lead,
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings-hint,
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings-file,
html[data-ed-theme="dark"] body.ed-y3026 .ed-activity-when,
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings-activity,
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings-activity li,
html[data-ed-theme="dark"] body.ed-y3026 .ed-logo-empty,
html[data-ed-theme="dark"] body.ed-y3026 .settings-section p,
html[data-ed-theme="dark"] body.ed-y3026 .settings-section .field label,
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings .field label,
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings .field-hint,
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings-pref-copy {
  color: var(--ed-text-soft) !important;
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings-label,
html[data-ed-theme="dark"] body.ed-y3026 .ed-settings-nav-item.is-active {
  color: var(--ed-heading) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .js-col-currency,
html[data-ed-theme="dark"] body.ed-y3026 .ce-currency-field {
  background: var(--ed-surface-solid) !important;
  border-color: var(--ed-border) !important;
  color: var(--ed-text) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .js-col-currency select,
html[data-ed-theme="dark"] body.ed-y3026 .ce-currency-field select {
  color: var(--ed-text) !important;
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .js-col-currency select:disabled,
html[data-ed-theme="dark"] body.ed-y3026 .ce-currency-field select:disabled {
  opacity: 0.45;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-quote-secondary summary,
html[data-ed-theme="dark"] body.ed-y3026 .ce-quote-settings,
html[data-ed-theme="dark"] body.ed-y3026 .ce-reference-items,
html[data-ed-theme="dark"] body.ed-y3026 .ce-reference-hint {
  color: var(--ed-text-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-sidebar-user-wrap {
  overflow: visible;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-sidebar-foot,
body.ed-y3026 .ed-sidebar-foot {
  overflow: visible;
}
body.ed-y3026 .ed-account-menu {
  z-index: 40;
  max-height: min(70vh, 320px);
  overflow: auto;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-account-menu,
html[data-ed-theme="dark"] body.ed-y3026 .ed-account-menu-item {
  color: var(--ed-text) !important;
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-account-menu-item {
  color: var(--ed-text-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-account-menu-item:hover {
  color: var(--ed-heading) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-product-interchange-family,
html[data-ed-theme="dark"] body.ed-y3026 .ed-product-interchange-link {
  color: var(--ed-text-soft) !important;
  opacity: 1;
}

body.ed-y3026 .ws-modal-overlay,
body.ed-y3026 .ep-dialog-overlay {
  background: rgba(11, 19, 32, 0.58);
}
body.ed-y3026 .ce-journey-composer-overlay {
  background: rgba(15, 31, 51, 0.58);
}

/* Scrollbars */
body.ed-y3026 *::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
body.ed-y3026 *::-webkit-scrollbar-thumb {
  background: rgba(111, 151, 173, 0.35);
  border-radius: 999px;
}
body.ed-y3026 *::-webkit-scrollbar-track {
  background: var(--ed-scrollbar-track);
}

/* Special form surfaces inside folders */
body.ed-y3026 .ep-special-form,
body.ed-y3026 .ep-notes-panel,
body.ed-y3026 .ep-incl-block {
  background: var(--ed-row-bg) !important;
  border-color: var(--ed-border) !important;
  color: var(--ed-text);
}

/* ═══════════════════════════════════════════════════════════
   SYSTEMATIC DARK READABILITY — shared causes (not page one-offs)
   ═══════════════════════════════════════════════════════════ */

/*
 * Cause A: --ed-navy remaps to near-white in dark, but many controls still
 * paint intentional LIGHT surfaces (#fff / ivory / surface-muted fallbacks).
 * Light surface + remapped navy = invisible text.
 * Fix: mode-stable --ed-ink-on-light on those surfaces.
 */
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel,
html[data-ed-theme="dark"] body.ed-y3026 .ed-on-light,
html[data-ed-theme="dark"] body.ed-y3026 [data-ed-on-light="1"] {
  background: var(--ed-surface-light) !important;
  color: var(--ed-ink-on-light) !important;
  backdrop-filter: none;
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel .cf-journey-overview-summary,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel .cf-jo-identity,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel .cf-jo-empty,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel .cf-jo-label,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel .cf-jo-value,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel a,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel button,
html[data-ed-theme="dark"] body.ed-y3026 .ed-on-light,
html[data-ed-theme="dark"] body.ed-y3026 .ed-on-light * {
  color: var(--ed-ink-on-light) !important;
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel .cf-jo-label,
html[data-ed-theme="dark"] body.ed-y3026 .cf-journey-overview-panel .cf-journey-overview-summary::after,
html[data-ed-theme="dark"] body.ed-y3026 .ed-on-light .ed-muted,
html[data-ed-theme="dark"] body.ed-y3026 .ed-on-light .text-muted {
  color: var(--ed-ink-muted-on-light) !important;
}

/*
 * Cause B: body/supporting copy still on --ep-muted with glass panels or
 * inherited opacity — Commercial Notes and similar reading surfaces.
 */
html[data-ed-theme="dark"] body.ed-y3026 .ep-notes,
html[data-ed-theme="dark"] body.ed-y3026 .ep-notes li,
html[data-ed-theme="dark"] body.ed-y3026 .ep-notes-label,
html[data-ed-theme="dark"] body.ed-y3026 .ep-period-notes,
html[data-ed-theme="dark"] body.ed-y3026 .ep-note-pop,
html[data-ed-theme="dark"] body.ed-y3026 .ep-note-pop li,
html[data-ed-theme="dark"] body.ed-y3026 .ep-notes-panel,
html[data-ed-theme="dark"] body.ed-y3026 .ep-notes-panel p,
html[data-ed-theme="dark"] body.ed-y3026 .ep-sup-panel .ep-notes-label {
  color: var(--ed-text-soft) !important;
  opacity: 1 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-notes-panel,
html[data-ed-theme="dark"] body.ed-y3026 .ep-note-pop {
  background: var(--ed-surface-solid) !important;
  backdrop-filter: none;
  color: var(--ed-text) !important;
}

/*
 * Cause C: hardcoded #fff / light table shells under remapped ink.
 */
html[data-ed-theme="dark"] body.ed-y3026 .ep-fees-table,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx-wrap,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb-wrap {
  background: transparent !important;
  color: var(--ed-text);
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-fees-table td,
html[data-ed-theme="dark"] body.ed-y3026 .ep-wb td,
html[data-ed-theme="dark"] body.ed-y3026 .ep-mx td {
  color: inherit;
}

/*
 * Cause D: Add Service / composer chips use --ed-white + --ed-navy, and
 * pressed state is near-white background + #fff text in dark mode.
 */
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-type {
  background: var(--ed-surface-solid) !important;
  color: var(--ed-text-soft) !important;
  border-color: var(--ed-border) !important;
  opacity: 1 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-type[aria-pressed="true"] {
  background: var(--ed-interaction) !important;
  color: var(--ed-ivory-literal) !important;
  border-color: var(--ed-border-glow) !important;
  opacity: 1 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-type:disabled {
  opacity: 0.45 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-quote-eyebrow,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-rate-product,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-rate-amt,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-date-option,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-rate-trigger,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer select,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer input:not([type="checkbox"]):not([type="radio"]):not(.ed-date-native):not(.ed-date-value):not(.ed-currency-display),
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .field label {
  color: var(--ed-text) !important;
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-rate-basis,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-rate-when,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-hint,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-composer-lead,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-esc-hint,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-muted {
  color: var(--ed-text-soft) !important;
  opacity: 1 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-rate-option,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-date-option {
  background: var(--ed-surface-solid) !important;
  border-color: var(--ed-border) !important;
  color: var(--ed-text) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-rate-option:hover,
html[data-ed-theme="dark"] body.ed-y3026 .ce-journey-composer .ce-rate-option.is-selected {
  background: var(--ed-row-hover) !important;
}

/*
 * Cause E: shared secondary/tertiary floor — quiet must stay readable on dusk.
 * Do not lift primary; only ensure secondary selectors are not on tertiary/disabled.
 */
html[data-ed-theme="dark"] body.ed-y3026 {
  --ed-text-quiet: #c2ced9;
  --ed-text-subtle: #c2ced9;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-notes .ep-link,
html[data-ed-theme="dark"] body.ed-y3026 .ep-note-edit .ep-link {
  color: #a8c4d4 !important;
  opacity: 1;
}

/* Enabled controls must not inherit disabled opacity from parents */
html[data-ed-theme="dark"] body.ed-y3026 .ce-add-dependent--active,
html[data-ed-theme="dark"] body.ed-y3026 .ce-add-dependent--active label,
html[data-ed-theme="dark"] body.ed-y3026 .ce-add-dependent--active .field,
html[data-ed-theme="dark"] body.ed-y3026 .ce-add-dependent--active select,
html[data-ed-theme="dark"] body.ed-y3026 .ce-add-dependent--active input {
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-add-dependent:not(.ce-add-dependent--active) {
  opacity: 0.55;
}

/* Tab / panel body text on translated folder surfaces */
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab-panel,
html[data-ed-theme="dark"] body.ed-y3026 .ep-sup-panel,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-body,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-body {
  color: var(--ed-text) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab-panel .cf-tab-lead,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab-panel .cf-tab-empty,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab-panel .cf-journey-updated,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab-panel .cf-journey-context,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab-panel .cf-journey-version,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab-panel .ed-cf-card-meta {
  color: var(--ed-text-soft) !important;
  opacity: 1;
}

/* Inputs on dusk — never look disabled when enabled.
   Exclude intentional transparency overlays (native date hosts, segment radios,
   currency face overlays) — forcing opacity:1 on those caused garbled dates
   (yyDD/Mon/YYYY) and clipped/disabled-looking currency + pay controls. */
html[data-ed-theme="dark"] body.ed-y3026 input:not(:disabled):not([type="hidden"]):not([type="radio"]):not([type="checkbox"]):not(.ed-date-native):not(.ed-date-value):not(.ed-currency-display),
html[data-ed-theme="dark"] body.ed-y3026 select:not(:disabled),
html[data-ed-theme="dark"] body.ed-y3026 textarea:not(:disabled) {
  color: var(--ed-text);
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 input:disabled,
html[data-ed-theme="dark"] body.ed-y3026 select:disabled,
html[data-ed-theme="dark"] body.ed-y3026 textarea:disabled,
html[data-ed-theme="dark"] body.ed-y3026 button:disabled {
  opacity: 0.45;
}

/* Keep host/overlay controls invisible except when intentionally focused */
html[data-ed-theme="dark"] body.ed-y3026 .ed-date-native,
html[data-ed-theme="dark"] body.ed-y3026 .ed-date-field input.ed-date-value[type="date"],
html[data-ed-theme="dark"] body.ed-y3026 .ce-pay-seg-opt input[type="radio"] {
  opacity: 0 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-currency-field--stacked .ed-currency-display:not(:focus):not(:focus-visible) {
  opacity: 0 !important;
}

/* Unified date field readability on dusk */
html[data-ed-theme="dark"] body.ed-y3026 .ed-date-display {
  color: var(--ed-text) !important;
  background: var(--ed-input-bg, var(--ed-surface-solid)) !important;
  border-color: var(--ed-border) !important;
  opacity: 1 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-date-display::placeholder {
  color: var(--ed-text-subtle) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-date-picker {
  color: var(--ed-text-soft) !important;
}

/* Quote FX / payment strip — remapped navy + white made enabled controls look disabled */
html[data-ed-theme="dark"] body.ed-y3026 .ce-fx-strip,
html[data-ed-theme="dark"] body.ed-y3026 .ce-fx-strip-currency,
html[data-ed-theme="dark"] body.ed-y3026 .ce-pay-mode {
  overflow: visible;
  color: var(--ed-text);
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-fx-quiet-label,
html[data-ed-theme="dark"] body.ed-y3026 .ce-fx-pair-meta,
html[data-ed-theme="dark"] body.ed-y3026 .ce-fx-strip-status,
html[data-ed-theme="dark"] body.ed-y3026 .ce-fx-strip-note,
html[data-ed-theme="dark"] body.ed-y3026 .ce-pay-multi-hint {
  color: var(--ed-text-soft) !important;
  opacity: 1;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-fx-override {
  color: var(--ed-text) !important;
  background: var(--ed-input-bg, var(--ed-surface-solid)) !important;
  border-color: var(--ed-border) !important;
  opacity: 1 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-fx-override:disabled {
  opacity: 0.45 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-pay-seg {
  background: var(--ed-surface-solid) !important;
  border-color: var(--ed-border) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-pay-seg-opt span {
  color: var(--ed-text-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-pay-seg-opt:hover span {
  color: var(--ed-heading) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ce-pay-seg-opt:has(input:checked) span {
  background: var(--ed-interaction, var(--ed-control-active)) !important;
  color: var(--ed-ivory-literal) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-currency-field--stacked .ed-currency-code,
html[data-ed-theme="dark"] body.ed-y3026 .ed-currency-field--stacked .ed-currency-face {
  color: var(--ed-text) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-currency-field--stacked .ed-currency-name {
  color: var(--ed-text-soft) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ed-currency-field--stacked .ed-currency-display:focus,
html[data-ed-theme="dark"] body.ed-y3026 .ed-currency-field--stacked .ed-currency-display:focus-visible {
  opacity: 1 !important;
  color: var(--ed-text) !important;
  background: var(--ed-surface-solid) !important;
  border-color: var(--ed-border-glow, var(--ed-border)) !important;
}

/* Shared floating menus — same surface family as Quote Workspace Actions. */
body.ed-y3026 .ce-actions-menu,
body.ed-y3026 .ce-version-history,
body.ed-y3026 .cf-life-more-menu,
body.ed-y3026 .ep-more-menu,
body.ed-y3026 .ed-account-menu,
body.ed-y3026 .ce-rate-dropdown,
body.ed-y3026 .ce-supplier-list,
body.ed-y3026 .ws-combobox-list {
  background: var(--ed-surface-solid) !important;
  color: var(--ed-text);
  border: 1px solid var(--ed-border) !important;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(15, 31, 51, 0.12);
  backdrop-filter: none;
}
body.ed-y3026 .ce-version-history,
body.ed-y3026 .cf-life-more-menu,
body.ed-y3026 .ep-more-menu,
body.ed-y3026 .ed-account-menu,
body.ed-y3026 .ws-combobox-list,
body.ed-y3026 .ce-supplier-list,
body.ed-y3026 .ce-rate-list {
  padding: 6px;
  gap: 2px;
}
body.ed-y3026 .cf-life-more-menu > button,
body.ed-y3026 .ep-more-menu > button,
body.ed-y3026 .ed-account-menu-item,
body.ed-y3026 .ws-combobox-option,
body.ed-y3026 .ce-supplier-option,
body.ed-y3026 .ce-rate-option {
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 7px 14px;
  border: 1px solid var(--ed-border);
  border-radius: 999px;
  background: var(--ed-input-bg);
  color: var(--ed-text-soft);
  font-family: var(--ed-signal-font, inherit);
  font-size: var(--ed-text-sm);
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.2;
  text-align: left;
  cursor: pointer;
}
body.ed-y3026 .ce-rate-option {
  flex-direction: column;
  align-items: flex-start;
  border-radius: 16px;
}
body.ed-y3026 .cf-life-more-menu > button:hover,
body.ed-y3026 .ep-more-menu > button:hover,
body.ed-y3026 .ed-account-menu-item:hover,
body.ed-y3026 .ws-combobox-option:hover,
body.ed-y3026 .ws-combobox-option.active,
body.ed-y3026 .ce-supplier-option:hover,
body.ed-y3026 .ce-supplier-option.is-selected,
body.ed-y3026 .ce-rate-option:hover,
body.ed-y3026 .ce-rate-option.is-selected {
  background: rgba(15, 42, 68, 0.08);
  border-color: rgba(15, 42, 68, 0.28);
  color: var(--ed-heading);
}
body.ed-y3026 .cf-life-more-menu > button:focus-visible,
body.ed-y3026 .ep-more-menu > button:focus-visible,
body.ed-y3026 .ed-account-menu-item:focus-visible,
body.ed-y3026 .ws-combobox-option:focus-visible,
body.ed-y3026 .ce-supplier-option:focus-visible,
body.ed-y3026 .ce-rate-option:focus-visible,
body.ed-y3026 .ce-version-history .ce-version-open:focus-visible,
body.ed-y3026 .ce-actions-menu .btn:focus-visible {
  outline: 2px solid var(--ed-heading, #0F2A44);
  outline-offset: 1px;
}
body.ed-y3026 .ws-combobox-option {
  justify-content: space-between;
}
body.ed-y3026 .cf-life-more-menu > button.cf-life-danger,
body.ed-y3026 .ep-more-menu > button.ep-more-quiet-danger {
  color: var(--ed-danger, #9f1d1d);
}
body.ed-y3026 .cf-life-more-menu,
body.ed-y3026 .ep-more-menu,
body.ed-y3026 .ed-account-menu:not([hidden]) {
  display: flex;
  flex-direction: column;
}
body.ed-y3026 .cf-life-more-menu,
body.ed-y3026 .ep-more-menu {
  width: max-content;
  min-width: 220px;
}
body.ed-y3026 .cf-life-more-menu > button,
body.ed-y3026 .ep-more-menu > button {
  white-space: nowrap;
}

/* Review workbench headers stay solid. The global th rule clears backgrounds. */
body.ed-y3026 .ep-ingest.ep-workbench .ep-wb thead th {
  background: #3e4c5c !important;
  color: #f6f3ec !important;
}
body.ed-y3026 .ep-ingest.ep-workbench .ep-wb thead th.ep-wb-rack,
html[data-ed-theme="dark"] body.ed-y3026 .ep-ingest.ep-workbench .ep-wb thead th.ep-wb-rack {
  background: #8d7748 !important;
  color: #f6f3ec !important;
}
body.ed-y3026 .ep-ingest.ep-workbench .ep-wb thead th.ep-wb-pct,
html[data-ed-theme="dark"] body.ed-y3026 .ep-ingest.ep-workbench .ep-wb thead th.ep-wb-pct {
  background: #6a7c8d !important;
  color: #f6f3ec !important;
}
body.ed-y3026 .ep-ingest.ep-workbench .ep-wb thead th.ep-wb-sto,
html[data-ed-theme="dark"] body.ed-y3026 .ep-ingest.ep-workbench .ep-wb thead th.ep-wb-sto {
  background: #3f6f72 !important;
  color: #f6f3ec !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-ingest.ep-workbench .ep-wb td.ep-wb-rack {
  background: transparent !important;
  color: #e6dcc4 !important;
  box-shadow: inset 3px 0 0 rgba(196, 160, 82, 0.4) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-ingest.ep-workbench .ep-wb td.ep-wb-rack b {
  background: transparent !important;
  color: #e6dcc4 !important;
  box-shadow: none !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-ingest.ep-workbench .ep-wb td.ep-wb-sto {
  background: transparent !important;
  color: #c9e0dc !important;
  box-shadow: inset 3px 0 0 rgba(63, 111, 114, 0.4) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-ingest.ep-workbench .ep-wb td.ep-wb-sto b {
  background: transparent !important;
  color: #c9e0dc !important;
  box-shadow: none !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-ingest.ep-workbench .ep-wb td.ep-wb-pct {
  background: transparent !important;
  color: #d5dde4 !important;
}

/* Supplier Library only. Client files, quote life tabs and Review stay on their own rules. */
body.ed-y3026 .ep-supplier .ep-sup-tab {
  background: #eef1f4 !important;
  color: #4a5562 !important;
  border-color: #c5cdd6 !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-supplier .ep-sup-tab:hover {
  background: #e2e7ee !important;
  color: #243038 !important;
  border-color: #b7c0cb !important;
}
body.ed-y3026 .ep-supplier .ep-sup-tab:focus-visible {
  outline: 2px solid #8d7748 !important;
  outline-offset: 2px;
  z-index: 2;
}
body.ed-y3026 .ep-supplier .ep-sup-tab.is-active,
body.ed-y3026 .ep-supplier .ep-sup-tab.is-active:hover {
  background: #3e4c5c !important;
  color: #f6f3ec !important;
  border-color: #3e4c5c !important;
  border-bottom-color: #3e4c5c !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-supplier .ep-sup-panel {
  background: #f7f5f1 !important;
  border-color: #d5dbe2 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  color: var(--ed-text);
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-sup-tab {
  background: rgba(255, 255, 255, 0.05) !important;
  color: #c9d2db !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-sup-tab:hover {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #f6f3ec !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-sup-tab.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-sup-tab.is-active:hover {
  background: #3e4c5c !important;
  color: #f6f3ec !important;
  border-color: #8ea0b3 !important;
  border-bottom-color: #3e4c5c !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-sup-panel {
  background: rgba(18, 24, 32, 0.42) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #f3efe6 !important;
}
body.ed-y3026 .ep-supplier .ep-sup-summary h2,
body.ed-y3026 .ep-supplier .ep-acc-head h2,
body.ed-y3026 .ep-supplier .ep-acc-head h3 {
  color: #3e4c5c !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-sup-summary h2,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-acc-head h2,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-acc-head h3 {
  color: #d5dde4 !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records thead th,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records thead th,
body.ed-y3026 .ep-supplier .ep-fees-table thead th,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-fees-table thead th {
  background: #3e4c5c !important;
  color: #f6f3ec !important;
  border-bottom-color: transparent !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records thead th.ep-wb-rack,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records thead th.ep-wb-rack {
  background: #8d7748 !important;
  color: #f6f3ec !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records thead th.ep-wb-pct,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records thead th.ep-wb-pct {
  background: #6a7c8d !important;
  color: #f6f3ec !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records thead th.ep-wb-sto,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records thead th.ep-wb-sto {
  background: #3f6f72 !important;
  color: #f6f3ec !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-rack {
  background: transparent !important;
  color: #3d3426 !important;
  box-shadow: inset 3px 0 0 #8d7748 !important;
  padding-left: 12px !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-rack b {
  background: transparent !important;
  color: #3d3426 !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-sto {
  background: transparent !important;
  color: #1c3f42 !important;
  box-shadow: inset 3px 0 0 #3f6f72 !important;
  padding-left: 12px !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-sto b {
  background: transparent !important;
  color: #1c3f42 !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-pct {
  background: transparent !important;
  color: #3e4c5c !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-rack {
  background: transparent !important;
  color: #e6dcc4 !important;
  box-shadow: inset 3px 0 0 rgba(196, 160, 82, 0.55) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-rack b {
  background: transparent !important;
  color: #e6dcc4 !important;
  box-shadow: none !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-sto {
  background: transparent !important;
  color: #c9e0dc !important;
  box-shadow: inset 3px 0 0 rgba(63, 111, 114, 0.55) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-sto b {
  background: transparent !important;
  color: #c9e0dc !important;
  box-shadow: none !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-records td.ep-wb-pct {
  background: transparent !important;
  color: #d5dde4 !important;
}
body.ed-y3026 .ep-supplier .ep-mx-prod {
  color: #243038 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-prod {
  color: #f6f3ec !important;
}
body.ed-y3026 .ep-supplier .ep-mx-board-head,
body.ed-y3026 .ep-supplier .ep-mx-board .ep-prop-title {
  color: #3e4c5c !important;
  background: rgba(62, 76, 92, 0.08) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-board-head,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-mx-board .ep-prop-title {
  color: #f6f3ec !important;
  background: rgba(62, 76, 92, 0.55) !important;
}
body.ed-y3026 .ep-supplier .ep-mx-board[data-ep-prop-tone="0"] .ep-prop-title::before { background: #3e4c5c !important; box-shadow: none !important; }
body.ed-y3026 .ep-supplier .ep-mx-board[data-ep-prop-tone="1"] .ep-prop-title::before { background: #8d7748 !important; box-shadow: none !important; }
body.ed-y3026 .ep-supplier .ep-mx-board[data-ep-prop-tone="2"] .ep-prop-title::before { background: #6a7c8d !important; box-shadow: none !important; }
body.ed-y3026 .ep-supplier .ep-mx-board[data-ep-prop-tone="3"] .ep-prop-title::before { background: #3f6f72 !important; box-shadow: none !important; }
body.ed-y3026 .ep-supplier .ep-rate-actions .ep-link,
body.ed-y3026 .ep-supplier .ep-acc-head .ep-link {
  color: #2f6468 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-rate-actions .ep-link,
html[data-ed-theme="dark"] body.ed-y3026 .ep-supplier .ep-acc-head .ep-link {
  color: #c9e0dc !important;
}

/* Clients, journeys and quote tables share the library tab and header language. */
body.ed-y3026 .ep-quote-life-tab--draft,
body.ed-y3026 .ep-quote-life-tab--issued,
body.ed-y3026 .ep-quote-life-tab--confirmed,
body.ed-y3026 .ep-quote-life-tab--accepted,
body.ed-y3026 .ep-quote-life-tab--cancelled,
body.ed-y3026 .cf-quote-life-tab--draft,
body.ed-y3026 .cf-quote-life-tab--issued,
body.ed-y3026 .cf-quote-life-tab--confirmed,
body.ed-y3026 .cf-quote-life-tab--accepted,
body.ed-y3026 .cf-quote-life-tab--cancelled,
body.ed-y3026 .cf-tab--details,
body.ed-y3026 .cf-tab--journeys,
body.ed-y3026 .cf-tab--documents,
body.ed-y3026 .cf-tab--notes {
  background: #eef1f4 !important;
  color: #4a5562 !important;
  border-color: #c5cdd6 !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-quote-life-tab--draft.is-active,
body.ed-y3026 .ep-quote-life-tab--issued.is-active,
body.ed-y3026 .ep-quote-life-tab--confirmed.is-active,
body.ed-y3026 .ep-quote-life-tab--accepted.is-active,
body.ed-y3026 .ep-quote-life-tab--cancelled.is-active,
body.ed-y3026 .cf-quote-life-tab--draft.is-active,
body.ed-y3026 .cf-quote-life-tab--issued.is-active,
body.ed-y3026 .cf-quote-life-tab--confirmed.is-active,
body.ed-y3026 .cf-quote-life-tab--accepted.is-active,
body.ed-y3026 .cf-quote-life-tab--cancelled.is-active,
body.ed-y3026 .cf-tab--details.is-active,
body.ed-y3026 .cf-tab--journeys.is-active,
body.ed-y3026 .cf-tab--documents.is-active,
body.ed-y3026 .cf-tab--notes.is-active {
  background: #3e4c5c !important;
  color: #f6f3ec !important;
  border-color: #3e4c5c !important;
  border-bottom-color: #3e4c5c !important;
  box-shadow: none !important;
}
body.ed-y3026 .ep-quote-life[data-quote-life-tab] .ep-quote-life-body,
body.ed-y3026 .cf-quote-life[data-quote-life-tab] .cf-quote-life-body,
body.ed-y3026 .cf-file-body[data-cf-active-tab] .cf-tab-panel {
  background: #f7f5f1 !important;
  border-color: #d5dbe2 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--draft,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--issued,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--confirmed,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--accepted,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--cancelled,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--draft,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--issued,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--confirmed,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--accepted,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--cancelled,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab--details,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab--journeys,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab--documents,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab--notes {
  background: rgba(255, 255, 255, 0.05) !important;
  color: #c9d2db !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--draft.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--issued.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--confirmed.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--accepted.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life-tab--cancelled.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--draft.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--issued.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--confirmed.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--accepted.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life-tab--cancelled.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab--details.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab--journeys.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab--documents.is-active,
html[data-ed-theme="dark"] body.ed-y3026 .cf-tab--notes.is-active {
  background: #3e4c5c !important;
  color: #f6f3ec !important;
  border-color: #8ea0b3 !important;
}
html[data-ed-theme="dark"] body.ed-y3026 .ep-quote-life[data-quote-life-tab] .ep-quote-life-body,
html[data-ed-theme="dark"] body.ed-y3026 .cf-quote-life[data-quote-life-tab] .cf-quote-life-body,
html[data-ed-theme="dark"] body.ed-y3026 .cf-file-body[data-cf-active-tab] .cf-tab-panel {
  background: rgba(18, 24, 32, 0.42) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
body.ed-y3026 .ce-table thead th,
html[data-ed-theme="dark"] body.ed-y3026 .ce-table thead th {
  background: #3e4c5c !important;
  color: #f6f3ec !important;
  border-bottom-color: transparent !important;
}
/* Quote service card only. Light-mode STO ink (#173d4d) stays; dark uses the existing teal token. */
html[data-ed-theme="dark"] body.ed-y3026 .ce-glance-sto {
  color: var(--ed-sto);
}
body.ed-y3026 .ep-quote-life-tab:focus-visible,
body.ed-y3026 .cf-tab:focus-visible {
  outline: 2px solid #8d7748 !important;
  outline-offset: 2px;
}
