:root,
:root[data-theme="light"] {
  --cr-canvas: #f4f6f8;
  --cr-surface: #ffffff;
  --cr-surface-subtle: #eef2f6;
  --cr-surface-strong: #e4eaf0;
  --cr-ink: #15202b;
  --cr-muted: #4e5d6c;
  --cr-faint: #687888;
  --cr-line: #c8d1da;
  --cr-line-strong: #91a0af;
  --cr-brand: #173f6b;
  --cr-brand-strong: #0e1929;
  --cr-brand-soft: #e8f0fb;
  --cr-on-brand: #ffffff;
  --cr-success: #17623d;
  --cr-success-soft: #e5f4eb;
  --cr-success-line: #91c5a8;
  --cr-warning: #814708;
  --cr-warning-soft: #fff2d8;
  --cr-danger: #a02323;
  --cr-danger-soft: #fdeaea;
  --cr-external: #405a78;
  --cr-external-soft: #edf3f9;
  --cr-focus: #2563a8;
  --cr-sidebar: #0e1929;
  --cr-sidebar-raised: #172a43;
  --cr-font-sans: "Onest Variable", "Segoe UI Variable Text", "Segoe UI", Arial, sans-serif;
  --cr-font-mono: "JetBrains Mono Variable", "Cascadia Mono", "SFMono-Regular", Consolas, monospace;
  --cr-header-height: 68px;
  --cr-header-height-mobile: 64px;
  --cr-control-min: 44px;
  --cr-public-width: 1360px;
  --cr-app-width: 1540px;
  --cr-reading-width: 1120px;

  /* Compatibility aliases: page styles keep layout ownership while every
     customer surface consumes the same organization visual contract. */
  --bg: var(--cr-canvas);
  --page: var(--cr-canvas);
  --background: var(--cr-canvas);
  --paper: var(--cr-surface);
  --surface: var(--cr-surface);
  --surface-2: var(--cr-surface-subtle);
  --surface-3: var(--cr-surface-strong);
  --surface-soft: var(--cr-surface-subtle);
  --surface-subtle: var(--cr-surface-subtle);
  --foreground: var(--cr-ink);
  --ink: var(--cr-ink);
  --text: var(--cr-ink);
  --muted: var(--cr-muted);
  --faint: var(--cr-faint);
  --border: var(--cr-line);
  --line: var(--cr-line);
  --line-strong: var(--cr-line-strong);
  --green: var(--cr-brand);
  --green-deep: var(--cr-brand-strong);
  --green-soft: var(--cr-brand-soft);
  --green-ink: var(--cr-on-brand);
  --primary: var(--cr-brand);
  --primary-on: var(--cr-on-brand);
  --accent: var(--cr-brand);
  --accent-dark: var(--cr-brand-strong);
  --accent-2: var(--cr-brand-strong);
  --accent-ink: var(--cr-on-brand);
  --blue: var(--cr-external);
  --blue-soft: var(--cr-external-soft);
  --focus: var(--cr-focus);
  --success: var(--cr-success);
  --amber: var(--cr-warning);
  --red: var(--cr-danger);
  --sidebar: var(--cr-sidebar);
  --sidebar-text: #f4f7fb;
  --sidebar-muted: #b8c6d6;
  --sidebar-faint: #91a4ba;
  --sidebar-line: rgba(220, 231, 244, .16);
  --sidebar-active: #173f6b;
  --sans: var(--cr-font-sans);
  --display: var(--cr-font-sans);
  --mono: var(--cr-font-mono);

  --color-canvas: var(--cr-canvas);
  --color-surface: var(--cr-surface);
  --color-surface-subtle: var(--cr-surface-subtle);
  --color-surface-raised: var(--cr-surface);
  --color-ink: var(--cr-ink);
  --color-ink-muted: var(--cr-muted);
  --color-ink-faint: var(--cr-faint);
  --color-line: var(--cr-line);
  --color-line-strong: var(--cr-line-strong);
  --color-accent: var(--cr-brand);
  --color-accent-strong: var(--cr-brand-strong);
  --color-accent-soft: var(--cr-brand-soft);
  --color-success: var(--cr-success);
  --color-success-soft: var(--cr-success-soft);
  --color-warning: var(--cr-warning);
  --color-warning-soft: var(--cr-warning-soft);
  --color-danger: var(--cr-danger);
  --color-danger-soft: var(--cr-danger-soft);
  --color-external: var(--cr-external);
  --color-external-soft: var(--cr-external-soft);
  --color-focus: var(--cr-focus);
  --color-sidebar: var(--cr-sidebar);
  --color-sidebar-raised: var(--cr-sidebar-raised);
  --color-sidebar-border: #31465f;
  --color-sidebar-control: var(--cr-brand);
  --color-sidebar-control-line: #6685a9;
  --color-external-line: #a7b8ca;
  --color-external-ink: #334d69;
  --color-on-accent: var(--cr-on-brand);
  --font-sans: var(--cr-font-sans);
  --font-mono: var(--cr-font-mono);
}

:root[data-theme="dark"] {
  --cr-brand: #7fb0e6;
  --cr-brand-strong: #c0d8f2;
  --cr-brand-soft: #193756;
  --cr-on-brand: #0e1929;
  --cr-external: #aebed0;
  --cr-external-soft: #1c2b3d;
  --cr-focus: #8fc0f2;
  --cr-sidebar: #081321;
  --cr-sidebar-raised: #14263b;
  --bg: #0b1422;
  --sidebar: var(--cr-sidebar);
  --surface: #111e2f;
  --surface-2: #17263a;
  --surface-3: #20324a;
  --line: rgba(218, 229, 242, .13);
  --line-strong: rgba(218, 229, 242, .24);
  --text: #f2f6fb;
  --muted: #afbdcc;
  --faint: #91a2b5;
  --accent: var(--cr-brand);
  --accent-2: var(--cr-brand-strong);
  --accent-ink: var(--cr-on-brand);
  --blue: var(--cr-external);
  --blue-soft: var(--cr-external-soft);
  --focus: var(--cr-focus);
}

body { font-family: var(--cr-font-sans); }

:focus-visible {
  outline: 3px solid var(--cr-focus);
  outline-offset: 3px;
}

.cr-suite-enabled .sidebar { border-color: #293d55; }
.cr-suite-enabled .navigation-close {
  color: var(--sidebar-text);
  background: var(--cr-sidebar-raised);
  border-color: var(--sidebar-line);
}
.cr-suite-enabled .boundary-stamp { border-color: #405a78; border-left-color: #6f91b8; }
.cr-suite-enabled .primary-nav a:hover { color: #fff; background: #152a44; }
.cr-suite-enabled .primary-nav a[aria-current="page"] { color: #fff; background: #173f6b; border-color: #527aa7; }
.cr-suite-enabled .primary-nav output { color: #deebf8; background: #285887; }
.cr-suite-enabled .sidebar-session { border-top-color: #31465f; }

.glossary-intro > span:first-child,
.term-trigger::after { background: var(--cr-brand); }
.glossary-intro strong { color: var(--cr-ink); }
.term-trigger:hover,
.term-trigger:focus-visible {
  color: var(--cr-brand-strong);
  background: var(--cr-brand-soft);
  border-bottom-color: var(--cr-brand);
}

/* Navy is the shared product identity. Green remains reserved for explicitly
   labelled successful runtime states and is never the only evidence. */
.status--live,
.status-live,
.status-observed,
.status-ready,
.status-tag.success,
.truth-register [data-tone="live"] b {
  color: var(--cr-success);
}

.status--live,
.status-tag.success,
.truth-register [data-tone="live"] {
  background: var(--cr-success-soft);
  border-color: var(--cr-success-line);
}

.organization-path {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  color: var(--cr-muted);
  background: color-mix(in srgb, var(--cr-surface) 96%, transparent);
  border: 1px solid var(--cr-line);
  border-radius: 8px;
  list-style: none;
  overflow: hidden;
}

.organization-path a {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-width: 0;
  min-height: 44px;
  padding: 8px 12px;
  color: var(--cr-muted);
  border-right: 1px solid var(--cr-line);
  font-size: 11px;
  font-weight: 680;
  line-height: 1.25;
  text-decoration: none;
}

.organization-path a:last-child { border-right: 0; }
.organization-path a:hover { color: var(--cr-brand-strong); background: var(--cr-brand-soft); }
.organization-path a::after { display: none !important; }
.organization-path a > span:first-child {
  color: var(--cr-faint);
  font: 700 9px/1 var(--cr-font-mono);
  letter-spacing: .04em;
}

.organization-path a[aria-current="step"] {
  color: var(--cr-brand-strong);
  background: var(--cr-brand-soft);
  box-shadow: inset 0 -3px 0 var(--cr-brand);
}

.organization-path a[aria-current="step"] > span:first-child { color: var(--cr-brand); }

/* The shared suite rail owns the product phases. Hide older local rails if a
   cached document still contains them, so navigation stays single-layered. */
.cr-suite-enabled .organization-path--workspace,
.cr-suite-enabled .organization-path--engineering { display: none; }

.sales-header > .organization-path { width: min(620px, 100%); justify-self: center; }
.organization-path--page { width: min(1120px, calc(100% - 36px)); margin: 14px auto 0; }
.organization-path--workspace {
  position: sticky;
  z-index: 24;
  top: 68px;
  border-width: 0 0 1px;
  border-radius: 0;
}
.organization-path--workspace a { padding-inline: clamp(10px, 2vw, 24px); }
.organization-path--engineering {
  width: min(1120px, calc(100% - 36px));
  margin: 16px auto 0;
}

.nav-group-label {
  margin: 18px 10px 7px;
  color: var(--color-sidebar-muted);
  font: 700 9px/1.3 var(--font-mono);
  letter-spacing: .09em;
  text-transform: uppercase;
}
.nav-group-label:first-child { margin-top: 0; }
.primary-nav a { grid-template-columns: 25px 18px minmax(0, 1fr) auto; }
.primary-nav .nav-order {
  color: var(--color-sidebar-muted);
  font: 700 9px/1 var(--font-mono);
  letter-spacing: .03em;
}
.primary-nav a[aria-current="page"] .nav-order { color: #d9eaff; }

.sidebar .sidebar-close { display: none; }
.onboarding-plan li { display: block; min-height: 0; padding: 0; }
.onboarding-step-link {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  width: 100%;
  min-height: 92px;
  padding: 16px 20px;
  color: var(--color-ink);
  text-decoration: none;
}
.onboarding-step-link:hover { background: var(--color-accent-soft); }
.onboarding-step-link:hover .onboarding-step-copy strong { color: var(--color-accent-strong); }
.onboarding-step-link:focus-visible { outline-offset: -4px; }

.workflow-navigation {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--color-line);
}
.workflow-navigation a {
  display: grid;
  gap: 2px;
  min-height: 56px;
  align-content: center;
  padding: 10px 14px;
  color: var(--color-ink-muted);
  background: var(--color-surface);
  border: 1px solid var(--color-line-strong);
  border-radius: var(--radius-control, 6px);
  font-size: 11px;
  text-decoration: none;
}
.workflow-navigation a:last-child { color: var(--color-on-accent); background: var(--color-accent); border-color: var(--color-accent); text-align: right; }
.workflow-navigation a:hover { border-color: var(--color-accent); }
.workflow-navigation a:last-child:hover { background: var(--color-accent-strong); }
.workflow-navigation strong { font-size: 13px; }

@media (max-width: 1180px) {
  .sales-header > .organization-path { display: none; }
}

@media (max-width: 1023px) {
  .sidebar .sidebar-close { display: inline-grid; }
}

@media (max-width: 760px) {
  .organization-path { grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
  .organization-path--page { width: calc(100% - 24px); }
  .organization-path--workspace { top: 60px; }
  .organization-path a { min-height: 48px; }
  .organization-path a span:last-child { white-space: normal; overflow-wrap: anywhere; }
  .onboarding-step-link { grid-template-columns: 28px minmax(0, 1fr); padding-inline: 16px; }
  .onboarding-step-link .status-tag { grid-column: 2; justify-self: start; }
}

@media (max-width: 480px) {
  .workflow-navigation { grid-template-columns: 1fr; }
  .workflow-navigation a:last-child { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
  .organization-path *,
  .onboarding-step-link { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
