/* Canonical corporate palette, used by the main site and approved services. */
html[data-corporate-theme] {
  color-scheme: dark;
  --nav-background: rgba(7, 11, 20, 0.8);
  --nav-solid: rgba(7, 11, 20, 0.98);
  --button-background: #0052cc;
  --button-hover: #0044aa;
  --bg-base:       #070b14;
  --bg-primary:    #0a0e1a;
  --bg-secondary:  #0d1117;
  --bg-card:       #111827;
  --bg-card-hover: #141e2e;
  --bg-elevated:   #1a2235;

  --cyan:          #79acff;
  --cyan-dim:      rgba(121, 172, 255, 0.1);
  --cyan-border:   rgba(121, 172, 255, 0.25);
  --blue:          #0066ff;
  --blue-dim:      rgba(0, 102, 255, 0.12);
  --green:         #8fbcff;
  --green-dim:     rgba(0, 255, 136, 0.12);
  --orange:        #ff6b35;
  --orange-dim:    rgba(255, 107, 53, 0.12);
  --purple:        #779ed0;

  --text-primary:  #f0f6fc;
  --text-secondary:#8899aa;
  --text-muted:    #8996a9;

  --border-subtle: rgba(255, 255, 255, 0.05);
  --border-visible:rgba(255, 255, 255, 0.1);
  --border-accent: rgba(121, 172, 255, 0.3);

  --shadow-card:   0 4px 32px rgba(0, 0, 0, 0.5);
  --shadow-glow: none;
  --shadow-glow-strong: none;

  --font-display: 'Avenir Next', 'Segoe UI', sans-serif;
  --font-body:    'Avenir Next', 'Segoe UI', sans-serif;
  --font-mono:    'SFMono-Regular', Consolas, monospace;

  --nav-height:    72px;
  --section-pad:   96px;
  --container-max: 1200px;

  --ease:          cubic-bezier(0.4, 0, 0.2, 1);
  --transition:    0.2s var(--ease);
  --transition-slow: 0.4s var(--ease);
}

html[data-corporate-theme][data-theme="light"] {
  color-scheme: light;
  --bg-base: #eaf0f7;
  --bg-primary: #f7f9fc;
  --bg-secondary: #edf2f8;
  --bg-card: #ffffff;
  --bg-card-hover: #f0f5fb;
  --bg-elevated: #e4ecf5;
  --nav-background: rgba(247, 249, 252, 0.88);
  --nav-solid: rgba(247, 249, 252, 0.98);
  --cyan: #205aa3;
  --cyan-dim: rgba(32, 90, 163, 0.08);
  --cyan-border: rgba(32, 90, 163, 0.3);
  --blue: #0052cc;
  --blue-dim: rgba(0, 82, 204, 0.08);
  --green: #087443;
  --green-dim: rgba(8, 116, 67, 0.08);
  --orange: #aa3b13;
  --orange-dim: rgba(170, 59, 19, 0.08);
  --purple: #6940bc;
  --text-primary: #14243a;
  --text-secondary: #465970;
  --text-muted: #596a7e;
  --border-subtle: rgba(20, 36, 58, 0.12);
  --border-visible: rgba(20, 36, 58, 0.2);
  --border-accent: rgba(32, 90, 163, 0.3);
  --shadow-card: 0 4px 32px rgba(20, 36, 58, 0.08);
  --shadow-glow: none;
  --shadow-glow-strong: none;
}


/* Adapters for existing application tokens; semantic state colors stay distinct. */
html[data-corporate-theme] {
  --bg: var(--bg-primary); --background: var(--bg-primary); --foreground: var(--text-primary);
  --surface: var(--bg-card); --surface-2: var(--bg-elevated); --border: var(--border-visible);
  --text: var(--text-primary); --accent: var(--button-background); --accent-text: var(--cyan);
  --accent-muted: var(--blue-dim); --accent-border: var(--cyan-border);
  --paper: var(--bg-primary); --ink: var(--text-primary); --orange: var(--cyan); --line: var(--border-visible);
  --fg: var(--text-primary); --muted: var(--text-secondary); --rule: var(--border-visible);
  --link: var(--cyan); --link-visited: var(--cyan); --focus: var(--cyan);
  --bg-gradient: none; --accent-bg: var(--bg-card);
  --bg-tertiary: var(--bg-elevated); --border-color: var(--border-visible);
  --accent-blue: var(--cyan); --accent-purple: var(--cyan);
  --navy-dark: var(--bg-secondary); --navy-primary: var(--button-background); --navy-light: var(--bg-elevated);
  --navy-accent: var(--cyan); --white: var(--bg-card); --light-gray: var(--bg-primary);
  --medium-gray: var(--text-secondary); --dark-gray: var(--text-primary);
  --knowledge-paper: var(--bg-card); --knowledge-ink: var(--text-primary); --knowledge-rule: var(--border-visible);
  --font-interface: var(--font-body); --font-editorial: var(--font-display); --font-code: var(--font-mono);
  --ads-canvas: var(--bg-primary); --ads-surface: var(--bg-card); --ads-surface-raised: var(--bg-elevated);
  --ads-surface-subtle: var(--bg-secondary); --ads-border: var(--border-visible); --ads-border-strong: var(--border-accent);
  --ads-text: var(--text-primary); --ads-text-muted: var(--text-secondary); --ads-text-subtle: var(--text-muted);
  --ads-accent: var(--cyan); --ads-accent-strong: var(--cyan); --ads-accent-muted: var(--blue-dim); --ads-focus: var(--cyan);
  --ads-font-interface: var(--font-body); --ads-font-editorial: var(--font-display); --ads-font-code: var(--font-mono);
  --ads-primary: var(--button-background); --ads-secondary: var(--bg-secondary); --ads-light: var(--bg-elevated); --ads-dark: var(--text-primary);
  --bs-body-bg: var(--bg-primary); --bs-body-color: var(--text-primary); --bs-border-color: var(--border-visible);
  --bs-tertiary-bg: var(--bg-elevated); --bs-secondary-color: var(--text-secondary);
}
html[data-corporate-theme] body { background: var(--bg-primary); color: var(--text-primary); font-family: var(--font-body); }
html[data-corporate-theme] :where(h1,h2,h3,h4) { font-family: var(--font-display); }
html[data-corporate-theme] :where(input,select,textarea) { color: var(--text-primary); background-color: var(--bg-card); border-color: var(--border-visible); }
html[data-corporate-theme] :where(a,button,input,select,textarea):focus-visible { outline: 3px solid var(--cyan); outline-offset: 4px; }
html[data-corporate-theme] .theme-switcher {
  display: inline-flex; align-items: center; justify-content: center;
  color: var(--text-primary); background: var(--bg-card); border: 1px solid var(--border-visible);
  border-radius: 6px; min-height: 44px; padding: 0.5rem 0.75rem; flex-shrink: 0;
  font: 400 0.875rem/1.4 var(--font-body); cursor: pointer; white-space: nowrap; box-shadow: none;
}
html[data-corporate-theme] .theme-switcher[hidden] { display: none; }
html[data-corporate-theme] .theme-switcher:hover { border-color: var(--cyan); }
.corporate-theme-bar { display:flex; justify-content:flex-end; gap:16px; padding:12px 24px; background:var(--bg-secondary); border-bottom:1px solid var(--border-visible); }
@media (prefers-reduced-motion: reduce) { html[data-corporate-theme] *, html[data-corporate-theme] *::before, html[data-corporate-theme] *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
@media print { html[data-corporate-theme] .theme-switcher, .corporate-theme-bar { display:none !important; } }
