/* ===========================================================================
   HarveyOS x LUMEN v3.2 — dark-room convergence

   This layer intentionally owns chrome, records, tables, forms, and routine
   workbenches. It does not own the Today Triage Flow or Today KPI strip.
   Those two islands remain under their existing stylesheets with no selector
   from this file targeting them or their descendants.

   Matter is neutral. Content domains, stable identities, data, and semantic
   state may illuminate it locally; the room never becomes a uniform tint.
   Routine work happens in context. Only destructive confirmation is modal.
   ========================================================================== */

body {
  --lm-ink: #0a0a0c;
  --lm-ink-deep: #060607;
  --lm-panel: #121214;
  --lm-panel-2: #19191c;
  --lm-panel-3: #212125;
  --lm-seam: rgb(255 252 248 / .07);
  --lm-seam-strong: rgb(255 252 248 / .13);
  --lm-seam-soft: rgb(255 252 248 / .045);
  --lm-matte: #f7f5f2;
  --lm-matte-2: #a7a4a0;
  --lm-matte-3: #84817e;
  --lm-matte-4: #454340;
  --lm-shade: rgb(255 252 248 / .10);
  --lm-gridline: rgb(255 252 248 / .05);
  --lm-anchor: var(--lm-matte);
  --lm-anchor-ink: var(--lm-ink);
  --lm-critical: #ff4d5e;
  --lm-warning: #ffc940;
  --lm-positive: #5ef7a6;
  --lm-focus: #3178ff;
  --lm-lamp-ember: #ff5b04;
  --lm-lamp-gold: #ffc940;
  --lm-lamp-rose: #ff3d8b;
  --lm-lamp-iris: #9d5cff;
  --lm-lamp-cobalt: #3178ff;
  --lm-lamp-aqua: #0bebe9;
  --lm-lamp-mint: #5ef7a6;
  --lm-lamp-chartreuse: #c6f432;
  --lm-key: var(--lm-lamp-ember);
  --lm-fill: var(--lm-lamp-cobalt);
  --lm-rad-s: 10px;
  --lm-rad-m: 16px;
  --lm-rad-l: 22px;
  --lm-depth-1: inset 0 1px 0 rgb(255 252 248 / .045), 0 3px 9px rgb(0 0 0 / .34);
  --lm-depth-2: inset 0 1px 0 rgb(255 252 248 / .05), 0 18px 54px -20px rgb(0 0 0 / .78);
  --lm-depth-machined:
    inset 0 1px 0 rgb(255 252 248 / .07),
    inset 0 0 0 1px rgb(0 0 0 / .36),
    0 18px 54px -28px rgb(0 0 0 / .92);
  --lm-key-radiance:
    0 0 12px -3px color-mix(in srgb, var(--lm-key) 78%, transparent),
    0 0 34px -10px color-mix(in srgb, var(--lm-key) 52%, transparent),
    0 12px 48px -30px color-mix(in srgb, var(--lm-key) 40%, transparent);
  --lm-fill-radiance:
    0 0 12px -3px color-mix(in srgb, var(--lm-fill) 74%, transparent),
    0 0 34px -10px color-mix(in srgb, var(--lm-fill) 48%, transparent);
  --lm-ease: cubic-bezier(.2, .8, .2, 1);
  --lm-ease-out: cubic-bezier(.16, 1, .3, 1);
  --lm-motion-fast: 160ms;
  --lm-motion-base: 360ms;
  --lm-motion-long: 560ms;
  --lm-page-x: clamp(16px, 3vw, 48px);
  --lm-page-y: clamp(24px, 2.5vw, 40px);
  --lm-space-section: clamp(24px, 2.4vw, 34px);
  --lm-space-cluster: clamp(16px, 1.7vw, 24px);
  --lm-space-control: 12px;
}

body[data-lumen-scene="heat"] {
  --lm-key: var(--lm-lamp-ember);
  --lm-fill: var(--lm-lamp-cobalt);
}
body[data-lumen-scene="bloom"] {
  --lm-key: var(--lm-lamp-rose);
  --lm-fill: var(--lm-lamp-aqua);
}
body[data-lumen-scene="field"] {
  --lm-key: var(--lm-lamp-iris);
  --lm-fill: var(--lm-lamp-chartreuse);
}

body:not(.page-today) {
  /* Retire the legacy ambient product spectrum everywhere except Today. The
     protected Today instruments still resolve their original variables and
     therefore retain their exact computed appearance. */
  --bg-app: var(--lm-ink);
  --bg-surface: var(--lm-panel);
  --bg-raised: var(--lm-panel-2);
  --border-subtle: var(--lm-seam-strong);
  --border-focus: var(--lm-focus);
  --text-main: var(--lm-matte);
  --text-dim: var(--lm-matte-2);
  --text-secondary: var(--lm-matte-2);
  --steel: var(--lm-matte-3);
  --steel-soft: var(--lm-matte-2);
  --accent-green: var(--lm-matte-3);
  --accent-mid: var(--lm-matte-3);
  --accent-blue: var(--lm-matte-3);
  --accent-gradient: linear-gradient(118deg, var(--lm-matte-2), var(--lm-matte-3));
  --accent-gradient-soft: linear-gradient(118deg, rgb(255 252 248 / .07), rgb(255 252 248 / .035));
  --exec-muted: var(--lm-matte-2);
  --exec-steel-soft: var(--lm-matte-2);
  --exec-border: var(--lm-seam-strong);
  --exec-panel: linear-gradient(180deg, var(--lm-panel-2), var(--lm-panel));
  --surface-a: linear-gradient(180deg, var(--lm-panel-2), var(--lm-panel));
  --surface-b: linear-gradient(180deg, var(--lm-panel-2), var(--lm-panel));
  --surface-c: color-mix(in srgb, var(--lm-panel) 88%, transparent);
  --line-soft: var(--lm-seam);
  --line-med: var(--lm-seam-strong);
  --ink-faint: var(--lm-matte-2);
  color-scheme: dark;
  background: var(--lm-ink);
  color: var(--lm-matte);
}

/* The page domain supplies a static two-lamp rig. Each pool lands on the page
   horizon and fades fully back to neutral matter; this is illumination, not a
   persistent colored product background. */
body:not(.page-today) .app-atmosphere {
  display: block;
  background:
    radial-gradient(ellipse 74% 44% at 18% 0%, color-mix(in srgb, var(--lm-key) 21%, transparent), color-mix(in srgb, var(--lm-key) 6%, transparent) 44%, transparent 72%),
    radial-gradient(ellipse 64% 40% at 92% 12%, color-mix(in srgb, var(--lm-fill) 16%, transparent), color-mix(in srgb, var(--lm-fill) 4%, transparent) 48%, transparent 75%),
    radial-gradient(ellipse 46% 24% at 58% 42%, color-mix(in srgb, var(--lm-fill) 4%, transparent), transparent 76%),
    linear-gradient(180deg, var(--lm-ink-deep), var(--lm-ink) 520px, var(--lm-ink));
}
body:not(.page-today) .app-atmosphere i { position: absolute; display: block; }
body:not(.page-today) .app-atmosphere .atmosphere-grid {
  inset: 0;
  opacity: .42;
  background-image:
    linear-gradient(rgb(255 252 248 / .018) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 252 248 / .018) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(ellipse 88% 55% at 52% 0%, #000 0, rgb(0 0 0 / .72) 46%, transparent 82%);
}
body:not(.page-today) .app-atmosphere .atmosphere-glow {
  width: min(72vw, 1050px);
  aspect-ratio: 1;
  top: -52vw;
  left: 3vw;
  border-radius: 50%;
  background: radial-gradient(circle, color-mix(in srgb, var(--lm-key) 26%, transparent), color-mix(in srgb, var(--lm-key) 8%, transparent) 42%, transparent 72%);
  filter: blur(62px);
  animation: none;
}
body:not(.page-today) .app-atmosphere .atmosphere-orbit {
  width: min(46vw, 680px);
  aspect-ratio: 1;
  top: -300px;
  right: -190px;
  border: 1px solid color-mix(in srgb, var(--lm-fill) 38%, transparent);
  border-radius: 50%;
  box-shadow:
    0 0 0 72px color-mix(in srgb, var(--lm-fill) 5.5%, transparent),
    0 0 104px color-mix(in srgb, var(--lm-fill) 15%, transparent);
  animation: none;
}

body:not(.page-today) main {
  width: min(100%, 1600px);
  max-width: 1600px;
  padding: var(--lm-page-y) var(--lm-page-x);
}

body:not(.page-today) :where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
  outline: 2px solid var(--lm-focus) !important;
  outline-offset: 3px;
}

/* --- shell: the IA is frozen; only its material changes ------------------ */
.topbar {
  background: color-mix(in srgb, var(--lm-panel) 96%, transparent);
  border-color: var(--lm-seam);
  box-shadow: 0 1px 0 var(--lm-seam-soft), 0 16px 48px -36px #000;
}

.brand-mark { filter: grayscale(1); opacity: .84; }
.topbar .brand {
  min-height: 44px;
  align-items: center;
}
.topbar .brand .brand-word,
.topbar .brand .brand-word span,
.topbar .brand small {
  background: none;
  color: var(--lm-matte);
  -webkit-text-fill-color: currentColor;
}
.brand small { opacity: .52; }

.command-trigger,
.topbar :where(.nav-parent, .sidebar-utilities > a, .sidebar-automation > summary) {
  border-color: transparent;
  color: var(--lm-matte-2);
  background: transparent;
  box-shadow: none;
}

.topbar :where(.nav-parent, .sidebar-utilities > a, .sidebar-automation > summary):hover,
.topbar :where(.nav-parent, .sidebar-utilities > a, .sidebar-automation > summary):focus-visible {
  color: var(--lm-matte);
  background: var(--lm-panel-2);
  text-decoration: none;
}

.topbar :where(.nav-parent.on, .nav-parent[aria-current="page"], .sidebar-utilities > a.on) {
  color: var(--lm-anchor-ink);
  background: var(--lm-anchor);
  box-shadow: none;
}

.topbar :where(.nav-parent.on, .nav-parent[aria-current="page"], .sidebar-utilities > a.on) .nav-icon {
  color: var(--lm-anchor-ink);
}

.nav-section-label,
.nav-popover-label { color: var(--lm-matte-3); }

.nav-popover,
.mobile-more-panel,
.palette-box {
  border-color: var(--lm-seam-strong);
  background: var(--lm-panel);
  box-shadow: var(--lm-depth-2);
}

.nav-popover :where(a, summary),
.mobile-more-panel a { color: var(--lm-matte-2); }
.nav-popover :where(a, summary):hover,
.nav-popover :where(a, summary):focus-visible,
.mobile-more-panel a:hover,
.mobile-more-panel a:focus-visible {
  color: var(--lm-matte);
  background: var(--lm-panel-2);
}

/* Navigation information architecture is frozen. These rules only replace
   the old atmospheric green/blue material with the neutral LUMEN room. */
@media (min-width: 1024px) {
  body:not(.page-login) .topbar {
    border-right-color: var(--lm-seam);
    background: color-mix(in srgb, var(--lm-panel) 97%, transparent);
    box-shadow: 12px 0 44px -38px #000;
  }

  .topbar .command-trigger {
    border-color: var(--lm-seam-strong);
    background: var(--lm-panel-2);
    color: var(--lm-matte-2);
  }

  .topbar .command-trigger:hover,
  .topbar .command-trigger:focus-visible {
    border-color: rgb(255 252 248 / .22);
    background: var(--lm-panel-3);
    color: var(--lm-matte);
  }

  .topbar .nav-parent:hover,
  .topbar .sidebar-utilities a:hover,
  .topbar .sidebar-automation > summary:hover {
    color: var(--lm-matte);
    background: rgb(255 252 248 / .045);
  }

  .topbar .nav-parent.on,
  .topbar .sidebar-utilities a.on,
  .topbar .sidebar-automation > summary.on {
    color: var(--lm-matte);
    background:
      linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 12%, transparent), transparent 78%),
      var(--lm-panel-3);
    box-shadow:
      inset 2px 0 var(--lm-key),
      -8px 0 30px -16px color-mix(in srgb, var(--lm-key) 78%, transparent);
  }

  .topbar .nav-parent.on > .nav-icon:first-child {
    color: var(--lm-key);
    filter: drop-shadow(0 0 6px color-mix(in srgb, var(--lm-key) 64%, transparent));
  }
  .topbar .nav-popover.nav-children { border-left-color: var(--lm-seam-strong); }
  .topbar .nav-popover.nav-children a::before { background: var(--lm-matte-4); }
  .topbar .nav-popover.nav-children a.on {
    color: var(--lm-matte);
    background: linear-gradient(90deg, color-mix(in srgb, var(--lm-fill) 10%, transparent), transparent 78%), var(--lm-panel-3);
    box-shadow: inset 2px 0 var(--lm-fill);
  }
  .topbar .nav-popover.nav-children.nav-work-children > a.nav-work-overview {
    color: var(--lm-matte-2);
    border-bottom-color: var(--lm-seam);
  }
  .topbar .nav-popover.nav-children.nav-work-children > a small,
  .topbar .nav-source-entry small {
    color: var(--lm-matte-3);
  }
  .topbar .nav-popover.nav-children.nav-work-children > a:hover small,
  .topbar .nav-popover.nav-children.nav-work-children > a.on small,
  .topbar .nav-source-entry.on small,
  .topbar .nav-source-entry:hover small {
    color: var(--lm-matte-2);
  }
}

@media (max-width: 1023px) {
  body:not(.page-login) .topbar,
  body:not(.page-login) .mobile-dock,
  body:not(.page-login) .mobile-more-panel,
  body:not(.page-login) .mobile-more-panel > header {
    border-color: var(--lm-seam-strong);
    background: color-mix(in srgb, var(--lm-panel) 97%, transparent);
  }

  body:not(.page-login) .mobile-dock > :is(a, button).on,
  body:not(.page-login) .mobile-dock > :is(a, button).is-open {
    color: var(--lm-matte);
    background: var(--lm-panel-3);
  }

  dialog.record-editor-dialog,
  dialog.contact-capture-dialog:not(.record-delete-dialog),
  dialog.profile-edit-dialog:not(.record-delete-dialog),
  dialog.is-workbench-dialog {
    top: 76px;
    max-height: calc(100dvh - 152px);
  }
}

/* --- neutral matter ------------------------------------------------------ */
body :where(.card, .stack-overview, .stack-index, .stack-inspector,
  .commitment-index-pane, .commitment-action-pane, .source-record-feed,
  .baseline-reconciliation-explainer, .source-lens-summary > div) {
  border-color: var(--lm-seam);
  background: var(--lm-panel);
  box-shadow: var(--lm-depth-1);
}

body :where(.card, .stack-overview, .stack-index, .stack-inspector,
  .commitment-index-pane, .commitment-action-pane) {
  border-radius: var(--lm-rad-m);
}

body :where(.page-header, .contact-command-hero, .commitment-inspector-head) {
  background-image: none;
}

body:not(.page-today) .page-header {
  min-height: clamp(156px, 12vw, 184px);
  margin: 0 0 var(--lm-space-section);
  padding: clamp(26px, 3vw, 42px);
  overflow: hidden;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-l);
  background:
    radial-gradient(ellipse 64% 128% at 3% 8%, color-mix(in srgb, var(--lm-key) 17%, transparent), color-mix(in srgb, var(--lm-key) 5%, transparent) 44%, transparent 70%),
    radial-gradient(ellipse 44% 112% at 98% 10%, color-mix(in srgb, var(--lm-fill) 13%, transparent), color-mix(in srgb, var(--lm-fill) 3%, transparent) 48%, transparent 74%),
    linear-gradient(118deg, rgb(255 252 248 / .025), transparent 42%),
    color-mix(in srgb, var(--lm-panel) 90%, transparent);
  box-shadow:
    var(--lm-depth-machined),
    -22px -18px 68px -48px color-mix(in srgb, var(--lm-key) 78%, transparent),
    24px -12px 74px -54px color-mix(in srgb, var(--lm-fill) 72%, transparent);
}
body:not(.page-today) .page-header .page-header-copy { max-width: 78ch; }
body:not(.page-today) .page-header p { max-width: 72ch; }
body:not(.page-today) .page-header::before {
  content: "";
  position: absolute;
  inset: auto 32px 0;
  display: block;
  height: 1px;
  background: linear-gradient(90deg, var(--lm-key), color-mix(in srgb, var(--lm-key) 32%, transparent) 34%, color-mix(in srgb, var(--lm-fill) 24%, transparent) 72%, var(--lm-fill));
  box-shadow:
    0 -4px 14px color-mix(in srgb, var(--lm-key) 54%, transparent),
    0 -16px 48px color-mix(in srgb, var(--lm-key) 28%, transparent),
    0 -12px 44px color-mix(in srgb, var(--lm-fill) 24%, transparent);
}
body:not(.page-today) .page-header::after {
  content: "";
  position: absolute;
  display: block;
  width: 280px;
  height: 280px;
  right: -120px;
  top: -196px;
  border: 1px solid color-mix(in srgb, var(--lm-fill) 26%, transparent);
  border-radius: 50%;
  box-shadow:
    0 0 0 34px color-mix(in srgb, var(--lm-fill) 5%, transparent),
    0 0 74px color-mix(in srgb, var(--lm-fill) 15%, transparent);
}
body:not(.page-today) .page-header .page-eyebrow,
body:not(.page-today) main > :not(.page-header) .page-eyebrow { color: var(--lm-matte-2); }
body:not(.page-today) .page-header .page-eyebrow::before,
body:not(.page-today) .lumen-visual-head .page-eyebrow::before,
dialog.is-workbench-dialog .page-eyebrow::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: var(--lm-key);
  box-shadow: 0 0 8px var(--lm-key), 0 0 24px color-mix(in srgb, var(--lm-key) 56%, transparent);
}
body:not(.page-today) .page-header .page-eyebrow,
body:not(.page-today) .lumen-visual-head .page-eyebrow,
dialog.is-workbench-dialog .page-eyebrow { display: inline-flex; align-items: center; gap: 9px; }

body:not(.page-today) .card::before,
body:not(.page-today) .exec-return::before,
body:not(.page-today) .exec-rail-card::before {
  background: radial-gradient(340px circle at var(--spot-x, 50%) var(--spot-y, 50%), color-mix(in srgb, var(--lm-key) 9%, transparent), color-mix(in srgb, var(--lm-fill) 2%, transparent) 46%, transparent 72%);
}

body :where(.page-eyebrow, .pal-group, .nav-section-label) {
  color: var(--lm-matte-3);
}

body :where(.dim, .cardmeta) { color: var(--lm-matte-2); }

/* --- actions: luminous actuators, with hue used as hierarchy ------------- */
body :where(.btn-primary, button.btn-primary, .adjudication-submit) {
  min-height: 44px;
  border: 1px solid color-mix(in srgb, var(--lm-key) 62%, var(--lm-seam-strong));
  border-radius: var(--lm-rad-s);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--lm-key) 26%, var(--lm-panel-3)), color-mix(in srgb, var(--lm-key) 13%, var(--lm-panel-2)) 58%, var(--lm-panel-2));
  color: var(--lm-matte);
  box-shadow:
    inset 0 1px 0 color-mix(in srgb, var(--lm-key) 40%, transparent),
    inset 3px 0 var(--lm-key),
    0 10px 28px -20px color-mix(in srgb, var(--lm-key) 76%, transparent);
  font-weight: 700;
  text-shadow: 0 1px 0 rgb(0 0 0 / .45);
  transition: border-color 150ms var(--lm-ease), background-color 150ms var(--lm-ease), box-shadow 150ms var(--lm-ease), transform 150ms var(--lm-ease);
}

body :where(.btn-primary, button.btn-primary, .adjudication-submit):hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--lm-key) 86%, var(--lm-seam-strong));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--lm-key) 34%, var(--lm-panel-3)), color-mix(in srgb, var(--lm-key) 17%, var(--lm-panel-2)) 58%, var(--lm-panel-2));
  color: var(--lm-matte);
  box-shadow:
    inset 0 1px 0 color-mix(in srgb, var(--lm-key) 54%, transparent),
    inset 3px 0 var(--lm-key),
    var(--lm-key-radiance);
  transform: translateY(-1px);
}

body:not(.page-today) .btn-primary,
body:not(.page-today) button.btn-primary,
body:not(.page-today) .adjudication-submit,
body:not(.page-today) .stack-open-source {
  border-color: color-mix(in srgb, var(--lm-key) 62%, var(--lm-seam-strong)) !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--lm-key) 26%, var(--lm-panel-3)), color-mix(in srgb, var(--lm-key) 13%, var(--lm-panel-2)) 58%, var(--lm-panel-2)) !important;
  color: var(--lm-matte) !important;
  box-shadow: inset 0 1px 0 color-mix(in srgb, var(--lm-key) 40%, transparent), inset 3px 0 var(--lm-key), 0 10px 28px -20px color-mix(in srgb, var(--lm-key) 76%, transparent) !important;
  text-shadow: 0 1px 0 rgb(0 0 0 / .45) !important;
}

body :where(.btn-secondary, .record-editor-trigger, .ledger-verb,
  .contact-quick-actions button, .contact-quick-actions a) {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-s);
  background: linear-gradient(180deg, rgb(255 252 248 / .025), transparent), var(--lm-panel-2);
  color: var(--lm-matte);
  box-shadow: inset 0 1px rgb(255 252 248 / .035), 0 8px 24px -22px #000;
  transition: border-color 150ms var(--lm-ease), background-color 150ms var(--lm-ease), box-shadow 150ms var(--lm-ease), transform 150ms var(--lm-ease);
}

body .btn-secondary,
body .rec-verb-link.btn-secondary {
  min-height: 44px;
}

body :where(.btn-secondary, .record-editor-trigger, .ledger-verb,
  .contact-quick-actions button, .contact-quick-actions a):hover:not(:disabled) {
  border-color: rgb(255 252 248 / .22);
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-fill) 8%, transparent), transparent 72%), var(--lm-panel-3);
  color: var(--lm-matte);
  box-shadow: inset 0 1px rgb(255 252 248 / .05), 0 0 24px -10px color-mix(in srgb, var(--lm-fill) 42%, transparent);
  transform: translateY(-1px);
  text-decoration: none;
}

body :where(.btn-danger, .record-delete-trigger, .fact-reject) {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  border-color: color-mix(in srgb, var(--lm-critical) 42%, var(--lm-seam));
  background: color-mix(in srgb, var(--lm-critical) 8%, transparent);
  color: #ff9aa4;
  box-shadow: inset 3px 0 var(--lm-critical), 0 0 24px -14px color-mix(in srgb, var(--lm-critical) 68%, transparent);
}

body .btn-danger { min-height: 44px; }

body:not(.page-today) .btn-mini {
  min-height: 44px;
}

/* --- writing surfaces ---------------------------------------------------- */
body {
  --field-radius: var(--lm-rad-s);
  --field-min-height: 48px;
  --field-text: 1rem;
  --field-gap: 8px;
  --field-label-color: var(--lm-matte-2);
  --field-label-focus: var(--lm-matte);
  --field-border: var(--lm-seam-strong);
}

body main :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), textarea, select),
.palette-box :where(input, textarea, select),
dialog :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), textarea, select) {
  min-height: 48px;
  padding: 11px 13px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-s);
  background:
    linear-gradient(180deg, rgb(255 252 248 / .03), transparent 42%),
    color-mix(in srgb, var(--lm-panel-3) 94%, var(--lm-ink));
  color: var(--lm-matte);
  box-shadow:
    inset 0 1px 0 rgb(255 252 248 / .04),
    inset 0 -1px rgb(0 0 0 / .36),
    0 8px 24px -22px #000;
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.5;
  caret-color: var(--lm-matte);
}

body:not(.page-today) main input[type="search"] {
  padding-left: 42px;
  background-image: url('/static/icons/lumen/search.svg');
  background-repeat: no-repeat;
  background-position: 14px center;
  background-size: 16px;
}

body main :where(input, textarea)::placeholder,
.palette-box :where(input, textarea)::placeholder,
dialog :where(input, textarea)::placeholder {
  color: var(--lm-matte-3);
  opacity: 1;
}

body main :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):hover,
.palette-box :where(input, textarea, select):hover,
dialog :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):hover {
  border-color: rgb(255 252 248 / .2);
}

body main :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):focus,
.palette-box :where(input, textarea, select):focus,
dialog :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):focus {
  outline: 2px solid var(--lm-focus);
  outline-offset: 2px;
  border-color: var(--lm-focus);
  box-shadow:
    0 0 0 2px var(--lm-ink),
    0 0 16px -2px color-mix(in srgb, var(--lm-focus) 68%, transparent),
    0 0 42px -16px color-mix(in srgb, var(--lm-focus) 54%, transparent);
}

body main textarea,
dialog textarea { min-height: 132px; resize: vertical; }
dialog.record-editor-dialog .record-editor-form textarea,
dialog.contact-capture-dialog:not(.record-delete-dialog) textarea,
dialog.profile-edit-dialog:not(.record-delete-dialog) textarea,
dialog.is-workbench-dialog textarea {
  min-height: 132px !important;
  font-size: 1rem !important;
  line-height: 1.5 !important;
}

.field.field > :is(span, b):first-child,
.field > :is(span, b):first-child,
.record-editor-form label > :is(span, b):first-child,
.today-record-classification-note > :is(span, b):first-child,
.stack-generic-inspector dt,
.stack-generic-inspector section > span,
.commitment-editor-form label > span,
.commitment-primary-action label > span,
.commitment-duplicate-tool label > span,
.commitment-destructive-tool label > span {
  color: var(--lm-matte-2);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: .01em;
  text-transform: none;
}

.field::after,
.record-editor-form label::after,
.today-record-classification-note::after { display: none; }

.field:focus-within > :is(span, b):first-child,
.record-editor-form label:focus-within > :is(span, b):first-child,
.today-record-classification-note:focus-within > :is(span, b):first-child {
  color: var(--lm-matte);
}

.field > :is(small, .field-help, .field-error),
.field > span:not(:first-child),
.record-editor-form label > small {
  color: var(--lm-matte-2);
  font-size: 1rem;
  line-height: 1.45;
}

.field.is-invalid > :is(input, textarea, select),
body main :where(input, textarea, select)[aria-invalid="true"] {
  border-color: var(--lm-critical);
}

.field-group {
  border-color: var(--lm-seam);
  background: var(--lm-panel-2);
  box-shadow: inset 0 1px 0 rgb(255 252 248 / .025);
}

.capture-bar,
.dock-capture {
  padding: 8px 10px 8px 16px;
  border: 1px solid var(--lm-seam-strong);
  border-left: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background: var(--lm-panel-2);
  box-shadow: var(--lm-depth-1);
}

.capture-bar:focus-within,
.dock-capture:focus-within {
  border-color: var(--lm-focus);
  box-shadow: 0 0 0 2px var(--lm-ink), 0 0 0 4px var(--lm-focus);
}

.capture-field > input {
  min-height: 52px;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* --- instrumented tables: compare first, decorate never ------------------ */
body:not(.page-today) .lumen-table-viewport {
  position: relative;
  max-width: 100%;
  overflow: auto;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background:
    radial-gradient(ellipse 52% 190px at 4% 0%, color-mix(in srgb, var(--lm-key) 10%, transparent), color-mix(in srgb, var(--lm-key) 2%, transparent) 52%, transparent 80%),
    radial-gradient(ellipse 40% 160px at 100% 0%, color-mix(in srgb, var(--lm-fill) 6%, transparent), transparent 78%),
    var(--lm-panel);
  box-shadow:
    var(--lm-depth-machined),
    0 0 42px -28px color-mix(in srgb, var(--lm-key) 58%, transparent);
  scrollbar-color: var(--lm-matte-4) var(--lm-panel);
  scrollbar-gutter: stable;
}

body:not(.page-today) .lumen-table-viewport:focus-visible {
  outline: 2px solid var(--lm-focus);
  outline-offset: 2px;
  border-color: var(--lm-focus);
  box-shadow: 0 0 0 2px var(--lm-ink);
}

body:not(.page-today) table.lumen-instrumented-table {
  width: 100%;
  min-width: 720px;
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
  color: var(--lm-matte);
  font-size: .9375rem;
  line-height: 1.45;
  font-variant-numeric: tabular-nums;
}

body:not(.page-today) .lumen-instrumented-table thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  min-height: 48px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--lm-seam-strong);
  background: color-mix(in srgb, var(--lm-panel-2) 97%, transparent);
  color: var(--lm-matte-3);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .085em;
  text-transform: uppercase;
  text-align: left;
  backdrop-filter: blur(12px);
}

body:not(.page-today) .lumen-instrumented-table th,
body:not(.page-today) .lumen-instrumented-table td {
  min-height: 52px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--lm-seam);
  vertical-align: middle;
}

body:not(.page-today) .lumen-instrumented-table :is(th, td)[data-column-kind="numeric"] {
  text-align: right;
  font-variant-numeric: tabular-nums lining-nums;
}

body:not(.page-today) .lumen-instrumented-table td > small {
  display: block;
  margin-top: 2px;
  color: var(--lm-matte-3);
  font-size: .75rem;
  line-height: 1.35;
}

body:not(.page-today) .lumen-instrumented-table tbody tr {
  background: transparent;
  transition: background-color 140ms var(--lm-ease), box-shadow 140ms var(--lm-ease);
}

body:not(.page-today) .lumen-instrumented-table tbody tr:hover {
  background: linear-gradient(90deg, color-mix(in srgb, var(--row-lamp, var(--lm-key)) 7%, transparent), rgb(255 252 248 / .025) 62%, transparent);
  box-shadow: inset 2px 0 color-mix(in srgb, var(--row-lamp, var(--lm-key)) 64%, transparent);
}
body:not(.page-today) .lumen-instrumented-table tbody tr:focus-within,
body:not(.page-today) .lumen-instrumented-table tbody tr:focus-visible,
body:not(.page-today) .lumen-instrumented-table tbody tr.is-selected {
  outline: 0;
  background: linear-gradient(90deg, color-mix(in srgb, var(--row-lamp, var(--lm-key)) 10%, transparent), rgb(255 252 248 / .025) 72%);
  box-shadow: inset 3px 0 var(--row-lamp, var(--lm-key));
}

body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort] {
  display: flex;
  width: 100%;
  min-height: 48px;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  color: inherit;
  background: transparent;
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .055em;
  text-align: inherit;
  text-transform: uppercase;
}

body:not(.page-today) .lumen-instrumented-table th[data-column-kind="numeric"] [data-tanstack-sort] {
  justify-content: flex-end;
}

body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort]:hover,
body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort][data-direction="asc"],
body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort][data-direction="desc"] {
  color: var(--lm-matte);
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 7%, transparent), transparent 78%);
}

body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort] i,
body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort][data-direction="asc"] i,
body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort][data-direction="desc"] i {
  width: 16px;
  height: 16px;
  flex-basis: 16px;
  background: currentColor;
  color: var(--lm-key);
  filter: drop-shadow(0 0 6px color-mix(in srgb, var(--lm-key) 72%, transparent));
  mask: url('/static/icons/lumen/sort.svg') center / contain no-repeat;
}

body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort] i::before,
body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort] i::after {
  content: none;
}

body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort][data-direction="asc"] i,
body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort][data-direction="desc"] i {
  mask-image: url('/static/icons/lumen/sort-descending.svg');
}

body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort][data-direction="asc"] i {
  transform: rotate(180deg);
}

body:not(.page-today) .lumen-instrumented-table [data-tanstack-sort]:focus-visible {
  outline: 2px solid var(--lm-focus);
  outline-offset: -4px;
  box-shadow: none;
}

body:not(.page-today) .lumen-table-toolbar {
  position: sticky;
  left: 0;
  z-index: 4;
  display: flex;
  min-width: min(100%, 520px);
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--lm-seam-strong);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 8%, transparent), transparent 36%, color-mix(in srgb, var(--lm-fill) 5%, transparent)),
    color-mix(in srgb, var(--lm-panel-2) 95%, transparent);
  box-shadow: inset 0 1px rgb(255 252 248 / .035), 0 10px 30px -28px color-mix(in srgb, var(--lm-key) 68%, transparent);
  backdrop-filter: blur(14px);
}
body:not(.page-today) .lumen-table-scope { display: grid; gap: 2px; }
body:not(.page-today) .lumen-table-scope b {
  color: var(--lm-matte);
  font-size: .9375rem;
  font-variant-numeric: tabular-nums;
}
body:not(.page-today) .lumen-table-scope small { color: var(--lm-matte-3); font-size: .8125rem; }
body:not(.page-today) .lumen-table-overflow-cue { display: none; }
body:not(.page-today) .lumen-table-density {
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-s);
  background: var(--lm-panel-3);
  color: var(--lm-matte-2);
  font-size: .875rem;
  white-space: nowrap;
}
body:not(.page-today) .lumen-table-density:hover,
body:not(.page-today) .lumen-table-density:focus-visible,
body:not(.page-today) .lumen-table-density[aria-pressed="true"] {
  border-color: color-mix(in srgb, var(--lm-key) 48%, var(--lm-seam-strong));
  color: var(--lm-matte);
  background: color-mix(in srgb, var(--lm-key) 8%, var(--lm-panel-3));
  box-shadow: inset 0 1px color-mix(in srgb, var(--lm-key) 24%, transparent), 0 0 18px -8px color-mix(in srgb, var(--lm-key) 58%, transparent);
}
body:not(.page-today) table.lumen-instrumented-table.is-compact :is(th, td) {
  min-height: 44px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.lumen-cell-bar {
  --cell-lamp: var(--lm-lamp-iris);
  position: relative;
  display: grid;
  min-width: 92px;
  justify-items: end;
  gap: 7px;
}
.lumen-cell-bar[data-lamp="aqua"] { --cell-lamp: var(--lm-lamp-aqua); }
.lumen-cell-bar[data-lamp="gold"] { --cell-lamp: var(--lm-lamp-gold); }
.lumen-cell-bar[data-lamp="rose"] { --cell-lamp: var(--lm-lamp-rose); }
.lumen-cell-bar[data-lamp="cobalt"] { --cell-lamp: var(--lm-lamp-cobalt); }
.lumen-cell-bar[data-lamp="mint"] { --cell-lamp: var(--lm-lamp-mint); }
.lumen-cell-value { position: relative; z-index: 1; color: var(--lm-matte); font-variant-numeric: tabular-nums; }
.lumen-cell-bar > i {
  position: relative;
  display: block;
  width: 100%;
  height: 3px;
  overflow: visible;
  border-radius: 999px;
  background: var(--lm-panel-3);
}
.lumen-cell-bar > i::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--cell-ratio);
  border-radius: inherit;
  background: var(--cell-lamp);
  box-shadow: 0 0 8px color-mix(in srgb, var(--cell-lamp) 72%, transparent), 0 0 20px color-mix(in srgb, var(--cell-lamp) 34%, transparent);
  transform-origin: left center;
  animation: lm-bar-charge var(--lm-motion-long) var(--lm-ease-out) both;
}
body:not(.page-today) .lumen-instrumented-table tbody tr:hover .lumen-cell-bar > i::before,
body:not(.page-today) .lumen-instrumented-table tbody tr:focus-within .lumen-cell-bar > i::before {
  filter: brightness(1.18) saturate(1.15);
}
body:not(.page-today) .lumen-instrumented-table td.okc::before,
body:not(.page-today) .lumen-instrumented-table td.errc::before,
body:not(.page-today) .lumen-instrumented-table td.warnc::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 8px;
  border-radius: 50%;
  vertical-align: .08em;
  background: currentColor;
  box-shadow: 0 0 9px currentColor;
}
body:not(.page-today) .lumen-instrumented-table td.okc { color: var(--lm-positive); }
body:not(.page-today) .lumen-instrumented-table td.warnc { color: var(--lm-warning); }
body:not(.page-today) .lumen-instrumented-table td.errc { color: var(--lm-critical); }

/* The old ledger layer converted each table row into a card. Restore the
   semantic comparison instrument and let the anchored inspector carry depth. */
.stack-index table.ledger-table {
  display: table !important;
  width: 100% !important;
  min-width: 700px;
  table-layout: fixed;
}
.stack-index .ledger-table thead { display: table-header-group !important; }
.stack-index .ledger-table tbody { display: table-row-group !important; }
.stack-index .ledger-table :where(thead tr, tbody tr) { display: table-row !important; }
.stack-index .ledger-table thead th,
.stack-index .ledger-table tbody td {
  display: table-cell !important;
  width: auto;
  max-width: none;
  padding: 14px 16px;
  border-bottom: 1px solid var(--lm-seam);
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}
.stack-index .ledger-table th:nth-child(1) { width: 58px; }
.stack-index .ledger-table th:nth-child(2) { width: 25%; }
.stack-index .ledger-table th:nth-child(3) { width: 26%; }
.stack-index .ledger-table th:nth-child(4) { width: 98px; }
.stack-index .ledger-table th:nth-child(5) { width: 174px; }

.stack-index .ledger-table tbody tr[data-row-href] {
  --row-lamp: var(--lane-accent, var(--lm-key));
  cursor: pointer;
}
.stack-index .ledger-table tbody tr[data-row-href]:focus-visible {
  outline: 2px solid var(--lm-focus);
  outline-offset: -3px;
}

.stack-index .ledger-table td[data-label="Rank"] { position: static; }
.stack-index .ledger-table td.ledger-act { margin: 0; }
.stack-index .ledger-table .ledger-verbs { gap: 7px; }
.stack-index .ledger-table .ledger-verb {
  min-height: 38px;
  padding-inline: 11px;
  border-color: var(--lm-seam-strong);
  background: transparent;
  color: var(--lm-matte-2);
  font-size: .875rem;
}
.stack-index .ledger-table .ledger-verb:hover,
.stack-index .ledger-table .ledger-verb:focus-visible {
  border-color: rgb(255 252 248 / .22);
  background: var(--lm-panel-2);
  color: var(--lm-matte);
}
.stack-index .ledger-table .ledger-verb.is-settle,
.stack-index .ledger-table .ledger-verb.is-handoff,
.stack-index .ledger-table .ledger-verb.is-undo {
  border-color: var(--lm-seam-strong);
  background: transparent;
  color: var(--lm-matte-2);
}

.stack-rank-number,
.stack-index .ledger-table .stack-rank-number {
  min-height: 36px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--lm-matte);
  font-variant-numeric: tabular-nums;
}

.stack-score-beam i,
.stack-selected-beam i { height: 2px; background: var(--lm-matte-4); }
.stack-score-beam i::before,
.stack-selected-beam i::before {
  background: var(--lane-accent, var(--lm-key));
  box-shadow: 0 0 8px color-mix(in srgb, var(--lane-accent, var(--lm-key)) 72%, transparent), 0 0 22px color-mix(in srgb, var(--lane-accent, var(--lm-key)) 34%, transparent);
}
.stack-score-beam span,
.stack-object-cell small,
.stack-table td > small { color: var(--lm-matte-2); font-size: .875rem; }
.stack-object-cell a { color: var(--lm-matte); }
.stack-state { color: var(--lm-matte-2); font-size: .875rem; }
.stack-state.is-overdue { color: #ff9aa4; }
.stack-state.is-act,
.stack-state.is-watch { color: var(--lm-matte); }

.ledger-lane-head,
.ledger-lane-index a { border-color: var(--lm-seam); }
.ledger-lane-head { border-left-color: var(--lane-accent); }
.ledger-lane-index a { color: var(--lm-matte-2); }
.ledger-lane-index a:hover,
.ledger-lane-index a:focus-visible { color: var(--lm-matte); }

.page-stack .ledger-lane-index b,
.page-stack .ledger-lane-order,
.page-stack .ledger-lane-count,
.page-stack .ledger-fold > summary span {
  color: var(--lane-accent);
  text-shadow: 0 0 12px color-mix(in srgb, var(--lane-accent) 54%, transparent);
}
.page-stack .ledger-lane-head {
  background: linear-gradient(90deg, color-mix(in srgb, var(--lane-accent) 7%, transparent), transparent 52%);
}
.page-stack .ledger-lane-index a:hover,
.page-stack .ledger-lane-index a:focus-visible {
  background: linear-gradient(180deg, color-mix(in srgb, var(--lane-accent) 7%, transparent), transparent);
  border-bottom-color: var(--lane-accent);
}
.page-stack .stack-overview-total b {
  color: var(--lm-matte);
  text-shadow: none;
}
.page-stack .stack-horizon i::before {
  background: var(--lm-fill);
  box-shadow: 0 0 12px color-mix(in srgb, var(--lm-fill) 54%, transparent);
}
.page-stack .stack-horizon a:first-child i::before {
  background: var(--lm-key);
  box-shadow: 0 0 12px color-mix(in srgb, var(--lm-key) 58%, transparent);
}
.page-stack .stack-horizon a.has-deadline i::before {
  background: var(--lm-critical);
  box-shadow: 0 0 12px color-mix(in srgb, var(--lm-critical) 58%, transparent);
}
.page-stack .stack-query > a { color: var(--lm-matte-2); }

/* --- authored evidence instruments ------------------------------------- */
.lumen-visual-instrument {
  position: relative;
  isolation: isolate;
  margin: 0 0 var(--lm-space-section);
  padding: clamp(22px, 2.5vw, 34px);
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-l);
  background:
    radial-gradient(ellipse 60% 88% at 3% 4%, color-mix(in srgb, var(--lm-key) 15%, transparent), color-mix(in srgb, var(--lm-key) 3%, transparent) 52%, transparent 72%),
    radial-gradient(ellipse 48% 78% at 97% 10%, color-mix(in srgb, var(--lm-fill) 12%, transparent), color-mix(in srgb, var(--lm-fill) 3%, transparent) 48%, transparent 74%),
    var(--lm-panel);
  box-shadow:
    var(--lm-depth-machined),
    -20px -10px 58px -46px color-mix(in srgb, var(--lm-key) 76%, transparent),
    22px -8px 64px -50px color-mix(in srgb, var(--lm-fill) 70%, transparent);
}
.lumen-visual-instrument::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto 24px 0;
  height: 1px;
  background: linear-gradient(90deg, var(--lm-key), transparent 42%, var(--lm-fill));
  box-shadow:
    0 -4px 16px color-mix(in srgb, var(--lm-key) 48%, transparent),
    0 -18px 52px color-mix(in srgb, var(--lm-key) 24%, transparent),
    0 -14px 48px color-mix(in srgb, var(--lm-fill) 22%, transparent);
}
.lumen-visual-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
}
.lumen-visual-head h2,
.lumen-visual-head h3 {
  margin: 5px 0 0;
  color: var(--lm-matte);
  font-size: clamp(1.3rem, 2vw, 1.85rem);
  line-height: 1.12;
  letter-spacing: -.025em;
}
.lumen-variant-label {
  display: inline-flex;
  min-height: 32px;
  align-items: center;
  padding: 6px 10px;
  border: 1px solid color-mix(in srgb, var(--lm-fill) 35%, var(--lm-seam));
  border-radius: 999px;
  background: color-mix(in srgb, var(--lm-fill) 6%, transparent);
  color: var(--lm-matte-2);
  font-size: .8125rem;
  white-space: nowrap;
}
.lumen-visual-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 350px);
  align-items: stretch;
  gap: clamp(20px, 2.5vw, 36px);
}
.lumen-operating-chart {
  position: relative;
  width: 100%;
  min-height: 352px;
  overflow: hidden;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-m);
  background:
    linear-gradient(rgb(255 252 248 / .022) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 252 248 / .022) 1px, transparent 1px),
    radial-gradient(ellipse 72% 100% at 10% 0%, color-mix(in srgb, var(--lm-key) 7%, transparent), transparent 72%),
    radial-gradient(ellipse 60% 100% at 100% 100%, color-mix(in srgb, var(--lm-fill) 5%, transparent), transparent 76%),
    color-mix(in srgb, var(--lm-ink) 76%, var(--lm-panel));
  background-size: 32px 32px, 32px 32px, auto, auto, auto;
  box-shadow:
    inset 0 1px rgb(255 252 248 / .035),
    inset 0 0 70px rgb(0 0 0 / .24),
    0 18px 44px -36px color-mix(in srgb, var(--lm-key) 54%, transparent);
  transition: opacity var(--lm-motion-base) var(--lm-ease-out), transform var(--lm-motion-base) var(--lm-ease-out), border-color var(--lm-motion-fast) var(--lm-ease);
}
.lumen-operating-chart.is-wide { min-height: 394px; }
.lumen-operating-chart.is-rendering { opacity: .18; transform: scale(.994); }
.lumen-operating-chart:hover { border-color: color-mix(in srgb, var(--lm-key) 28%, var(--lm-seam-strong)); }
.lumen-visual-finding {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(22px, 2vw, 28px);
  border: 1px solid var(--lm-seam);
  border-left: 3px solid var(--lm-key);
  border-radius: var(--lm-rad-m);
  background:
    linear-gradient(115deg, color-mix(in srgb, var(--lm-key) 8%, transparent), transparent 56%),
    color-mix(in srgb, var(--lm-panel-2) 90%, transparent);
  box-shadow:
    inset 18px 0 46px -32px color-mix(in srgb, var(--lm-key) 84%, transparent),
    -12px 0 34px -26px color-mix(in srgb, var(--lm-key) 72%, transparent),
    inset 0 1px rgb(255 252 248 / .035);
}
.lumen-visual-finding > span {
  color: var(--lm-key);
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.lumen-visual-finding > b {
  margin-top: 9px;
  color: var(--lm-matte);
  font-size: 1.12rem;
  line-height: 1.35;
}
.lumen-visual-finding > p { margin: 24px 0 8px; color: var(--lm-matte); line-height: 1.5; }
.lumen-visual-finding > small { color: var(--lm-matte-2); font-size: .875rem; line-height: 1.5; }
.lumen-visual-evidence {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid var(--lm-seam);
  color: var(--lm-matte-3);
  font-size: .8125rem;
}
.lumen-visual-evidence :first-child { color: var(--lm-matte-2); }
.lumen-method-note { margin-top: 12px; color: var(--lm-matte-2); font-size: .875rem; }
.lumen-method-note summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; color: var(--lm-matte-2); }
.lumen-method-note p { max-width: 82ch; margin: 0; padding: 0 0 6px; line-height: 1.5; }
.stack-overview .ledger-pressure { margin-inline: 18px; }

.lumen-operating-chart:focus-visible,
body:not(.page-today) .lumen-chart:focus-visible {
  outline: 2px solid var(--lm-focus);
  outline-offset: 4px;
  border-radius: var(--lm-rad-s);
  box-shadow: 0 0 22px color-mix(in srgb, var(--lm-focus) 24%, transparent);
}

/* --- inspector: the stable second pane ---------------------------------- */
.stack-workbench { gap: 16px; grid-template-columns: minmax(0, 1fr) minmax(320px, 360px); }
.stack-index,
.stack-inspector {
  border-color: var(--lm-seam);
  background: var(--lm-panel);
}
.stack-inspector {
  top: 82px;
  max-height: calc(100dvh - 104px);
  background:
    radial-gradient(ellipse 90% 240px at 0 0, color-mix(in srgb, var(--lm-key) 8%, transparent), transparent 72%),
    var(--lm-panel);
  box-shadow: var(--lm-depth-2), inset 0 1px color-mix(in srgb, var(--lm-key) 24%, transparent), -12px 0 44px -32px color-mix(in srgb, var(--lm-key) 58%, transparent);
}
.stack-generic-inspector { padding: 24px; }
.stack-generic-inspector header h2 { color: var(--lm-matte); }
.stack-generic-inspector header p,
.stack-generic-inspector dd,
.stack-generic-inspector section p { color: var(--lm-matte-2); }
.stack-generic-inspector dl,
.stack-generic-inspector dl > div,
.stack-generic-inspector section,
.stack-correction-form { border-color: var(--lm-seam); }
.stack-generic-inspector section {
  background: linear-gradient(120deg, color-mix(in srgb, var(--lm-fill) 5%, transparent), transparent 58%), var(--lm-panel-2);
}
.stack-open-source { color: var(--lm-matte); }

.commitment-index-row:hover { background: rgb(255 252 248 / .035); }
.commitment-index-row.is-selected {
  background: rgb(255 252 248 / .065);
  box-shadow: inset 3px 0 var(--lm-matte);
}
.commitment-index-row.is-selected .signal-dot { box-shadow: none; }
.commitment-inspector-head { border-color: var(--lm-seam); }

/* --- routine workbench: visible context, no backdrop, no focus trap ------ */
dialog.record-editor-dialog,
dialog.contact-capture-dialog:not(.record-delete-dialog),
dialog.profile-edit-dialog:not(.record-delete-dialog),
dialog.is-workbench-dialog {
  position: fixed;
  inset: 16px 16px auto auto;
  width: min(620px, calc(100vw - 32px));
  max-width: none;
  height: auto;
  max-height: calc(100dvh - 32px);
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-l);
  background:
    radial-gradient(ellipse 80% 300px at 0 0, color-mix(in srgb, var(--lm-key) 17%, transparent), color-mix(in srgb, var(--lm-key) 3%, transparent) 52%, transparent 74%),
    radial-gradient(ellipse 64% 260px at 100% 0, color-mix(in srgb, var(--lm-fill) 12%, transparent), color-mix(in srgb, var(--lm-fill) 2%, transparent) 54%, transparent 76%),
    var(--lm-panel);
  color: var(--lm-matte);
  box-shadow:
    var(--lm-depth-2),
    -26px 22px 86px -38px rgb(0 0 0 / .9),
    -18px -10px 62px -42px color-mix(in srgb, var(--lm-key) 72%, transparent),
    16px -8px 58px -44px color-mix(in srgb, var(--lm-fill) 64%, transparent);
  z-index: 80;
}

dialog.is-workbench-dialog::before {
  content: "";
  position: absolute;
  inset: 0 22px auto;
  z-index: 3;
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg, var(--lm-key), transparent 48%, var(--lm-fill));
  box-shadow:
    0 4px 14px color-mix(in srgb, var(--lm-key) 52%, transparent),
    0 18px 48px color-mix(in srgb, var(--lm-key) 25%, transparent),
    0 14px 42px color-mix(in srgb, var(--lm-fill) 22%, transparent);
}

dialog.record-editor-dialog::backdrop,
dialog.contact-capture-dialog:not(.record-delete-dialog)::backdrop,
dialog.profile-edit-dialog:not(.record-delete-dialog)::backdrop,
dialog.is-workbench-dialog::backdrop {
  background: transparent;
  backdrop-filter: none;
}

.record-editor-shell {
  grid-template-rows: auto minmax(0, 1fr);
  height: auto;
  max-height: calc(100dvh - 34px);
}

.record-editor-head,
.contact-capture-dialog-head {
  min-height: 112px;
  padding: 22px 24px 18px;
  border-color: var(--lm-seam);
  background:
    linear-gradient(110deg, color-mix(in srgb, var(--lm-key) 12%, transparent), transparent 52%, color-mix(in srgb, var(--lm-fill) 5%, transparent)),
    color-mix(in srgb, var(--lm-panel-2) 92%, transparent);
}

.record-editor-head h2,
.contact-capture-dialog-head h2 { color: var(--lm-matte); }
.record-editor-head p,
.contact-capture-dialog-head p { color: var(--lm-matte-2); font-size: 1rem; }
.record-editor-body,
.profile-edit-scroll {
  max-height: calc(100dvh - 148px);
  overflow: auto;
  padding: 24px;
  scrollbar-color: var(--lm-matte-4) transparent;
}
.record-editor-form { gap: 18px; }
.record-editor-form > label,
.profile-edit-form > label,
.profile-edit-section > label {
  min-width: 0;
}
.record-editor-form:has(> label:nth-of-type(4)) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.record-editor-form:not(:has(> label:nth-of-type(4))) {
  grid-template-columns: minmax(0, 1fr);
}
.profile-edit-section,
.contact-capture-panel {
  margin: 16px 24px;
  padding: 20px;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-m);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--lm-key) 4%, transparent), transparent 42%),
    color-mix(in srgb, var(--lm-panel-2) 88%, transparent);
  box-shadow: inset 0 1px rgb(255 252 248 / .035), var(--lm-depth-1);
}
.profile-edit-section > header,
.contact-capture-panel > header {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--lm-seam);
}
.profile-edit-section > header span,
.contact-capture-panel > header span { color: var(--lm-key); }
.profile-edit-form,
.contact-capture-dialog > form { max-height: calc(100dvh - 146px); overflow: auto; }
.profile-edit-actions,
.contact-capture-dialog-actions {
  position: sticky;
  bottom: 0;
  z-index: 2;
  margin-top: 16px;
  padding: 16px 24px;
  border-top: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel) 96%, transparent);
  backdrop-filter: blur(14px);
}
.record-editor-footer {
  position: sticky;
  bottom: 0;
  z-index: 2;
  padding: 16px 0 0;
  border-top: 1px solid var(--lm-seam);
  background: var(--lm-panel);
  box-shadow: 0 -14px 24px -22px #000;
}

.record-editor-close,
.contact-capture-dialog-head > button,
button[data-close-contact-editor],
button[data-close-partner-editor],
button[data-close-conference-editor] {
  width: 44px;
  min-width: 44px;
  min-height: 44px;
  padding: 0;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-s);
  background-color: var(--lm-panel-3);
  background-image: url('/static/icons/lumen/close.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
  color: transparent;
  font-size: 0;
}

.record-editor-close:hover,
.contact-capture-dialog-head > button:hover,
button[data-close-contact-editor]:hover,
button[data-close-partner-editor]:hover,
button[data-close-conference-editor]:hover {
  border-color: color-mix(in srgb, var(--lm-fill) 46%, var(--lm-seam-strong));
  background-color: #2a2a2f;
  box-shadow: var(--lm-fill-radiance);
}

.record-editor-danger {
  margin-top: 24px;
  padding: 18px;
  border: 1px solid color-mix(in srgb, var(--lm-critical) 28%, var(--lm-seam));
  border-radius: var(--lm-rad-s);
  background: color-mix(in srgb, var(--lm-critical) 5%, transparent);
}

/* Destructive dialogs remain explicitly modal and visually distinct. */
dialog.record-delete-dialog {
  border: 1px solid color-mix(in srgb, var(--lm-critical) 34%, var(--lm-seam));
  background:
    radial-gradient(ellipse 88% 240px at 0 0, color-mix(in srgb, var(--lm-critical) 14%, transparent), transparent 74%),
    var(--lm-panel);
  color: var(--lm-matte);
  box-shadow: var(--lm-depth-2), 0 0 72px -34px color-mix(in srgb, var(--lm-critical) 48%, transparent);
}
dialog.record-delete-dialog::backdrop {
  background: rgb(3 3 4 / .76);
  backdrop-filter: blur(8px);
}

/* --- page families: one system, six kinds of work ----------------------- */
body:not(.page-today) main {
  overflow-wrap: anywhere;
}

body:not(.page-today) main :where(h1, h2, h3, b, strong) {
  text-wrap: balance;
}

body:not(.page-today) main :where(p, li, dd, blockquote) {
  text-wrap: pretty;
}

body:not(.page-today) main > .statrow,
body:not(.page-today) main > .card,
body:not(.page-today) main > :where(.chat-layout, .intel-detail-grid, .connection-grid) {
  margin-bottom: var(--lm-space-cluster);
}

body:not(.page-today) main > .lumen-visual-instrument + .card {
  margin-top: 0;
}

/* Detail pages have their own hero vocabulary, so they receive the same
   authored two-lamp horizon as the shared page-header without flattening
   their record-specific composition. */
body:not(.page-today) :where(.intel-hero, .case-hero, .baseline-library-hero,
  .wb-head, .portfolio-intelligence-hero, .contact-command-hero) {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-l);
  background:
    radial-gradient(ellipse 66% 138% at 2% 0%, color-mix(in srgb, var(--lm-key) 19%, transparent), color-mix(in srgb, var(--lm-key) 4%, transparent) 50%, transparent 72%),
    radial-gradient(ellipse 50% 114% at 100% 8%, color-mix(in srgb, var(--lm-fill) 15%, transparent), color-mix(in srgb, var(--lm-fill) 3%, transparent) 50%, transparent 74%),
    color-mix(in srgb, var(--lm-panel) 92%, transparent);
  box-shadow:
    var(--lm-depth-machined),
    -18px -12px 58px -44px color-mix(in srgb, var(--lm-key) 70%, transparent),
    20px -10px 64px -48px color-mix(in srgb, var(--lm-fill) 66%, transparent);
}

body:not(.page-today) :where(.intel-hero, .case-hero, .baseline-library-hero,
  .wb-head, .portfolio-intelligence-hero, .contact-command-hero)::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto 28px 0;
  height: 1px;
  background: linear-gradient(90deg, var(--lm-key), transparent 46%, var(--lm-fill));
  box-shadow:
    0 -4px 15px color-mix(in srgb, var(--lm-key) 52%, transparent),
    0 -16px 44px color-mix(in srgb, var(--lm-key) 25%, transparent),
    0 -12px 40px color-mix(in srgb, var(--lm-fill) 22%, transparent);
}

body:not(.page-today) :where(.intel-hero, .case-hero, .baseline-library-hero,
  .wb-head, .portfolio-intelligence-hero, .contact-command-hero) h1 {
  color: var(--lm-matte);
  letter-spacing: -.035em;
}

body:not(.page-today) :where(.intel-hero, .case-hero, .baseline-library-hero,
  .wb-head, .portfolio-intelligence-hero, .contact-command-hero) :where(p, small) {
  color: var(--lm-matte-2);
}

/* Dense applications used dozens of nearly-identical gray panels. Normalize
   their matter first; local lamps remain at meaningful boundaries and state. */
body:not(.page-today) main :where(
  .attention-command, .attention-panel, .attention-evolution,
  .attention-session-evidence, .attention-coverage, .attention-read-card,
  .attention-ledger-brief, .clickup-health, .clickup-create, .clickup-lane,
  .connection-lens-callout, .connection-contract, .connection-create,
  .executive-state-section, .learning-section, .source-lens-tabs,
  .source-lens-filters, .source-record-feed, .baseline-state-tabs,
  .baseline-library-search, .baseline-library-list, .intel-command,
  .intel-index-card, .contact-workspace, .contact-context-rail,
  .relationship-operating-panel, .buyer-floor-card, .buyer-visual-card,
  .buyer-learning-card, .buyer-source-ledger, .crm-intelligence,
  .meeting-series-card, .meeting-row, .wb-card, .wb-section,
  .artifact-shelf > article, .staff-card, .studio-block, .studio-evidence,
  .observatory-field, .observatory-compound, .portfolio-hypothesis,
  .hypothesis-card, .outcome-card, .rec-machine, .rec-side,
  .commitment-capture, .case-row, .case-compose, .case-transition
) {
  border-color: var(--lm-seam);
  background-color: var(--lm-panel);
  background-image:
    radial-gradient(ellipse 60% 120px at 0 0, color-mix(in srgb, var(--lm-key) 4.5%, transparent), transparent 76%),
    linear-gradient(145deg, rgb(255 252 248 / .025), transparent 48%);
  box-shadow: var(--lm-depth-machined);
}

body:not(.page-today) main :where(.card, .attention-panel, .clickup-create,
  .clickup-lane, .connection-contract, .executive-state-section,
  .learning-section, .intel-command, .intel-index-card, .wb-card,
  .wb-section, .staff-card, .studio-block, .portfolio-hypothesis,
  .hypothesis-card, .outcome-card, .rec-machine, .rec-side) {
  color: var(--lm-matte);
}

body:not(.page-today) main :where(.card, .attention-panel, .clickup-create,
  .clickup-lane, .connection-contract, .executive-state-section,
  .learning-section, .intel-command, .intel-index-card, .wb-card,
  .wb-section, .staff-card, .studio-block, .portfolio-hypothesis,
  .hypothesis-card, .outcome-card, .rec-machine, .rec-side) :where(p, small) {
  color: var(--lm-matte-2);
}

/* Section headers become stable landmarks inside long control planes. */
body:not(.page-today) main :where(.card, .attention-panel, .clickup-create,
  .clickup-lane, .executive-state-section, .learning-section,
  .studio-block, .wb-section) > :where(h2, header:first-child) {
  border-bottom-color: var(--lm-seam);
}

body:not(.page-today) main .card > h2:first-child {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: -2px 0 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--lm-seam);
  color: var(--lm-matte);
  font-size: clamp(1.08rem, 1.7vw, 1.35rem);
  letter-spacing: -.018em;
}

body:not(.page-today) main .card > h2:first-child::after {
  content: "";
  min-width: 32px;
  height: 1px;
  flex: 1 1 auto;
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 52%, transparent), color-mix(in srgb, var(--lm-fill) 16%, transparent) 58%, transparent);
  box-shadow: 0 0 16px -4px color-mix(in srgb, var(--lm-key) 52%, transparent);
}

body:not(.page-today) main .card > .row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px;
  min-height: 58px;
  padding: 14px 2px;
  border-color: var(--lm-seam);
  background: transparent;
}

body:not(.page-today) main .card > .row:hover {
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 5%, transparent), transparent 62%);
}

body:not(.page-today) main .card > .row > :where(.cardmeta, .dim) {
  min-width: 0;
  margin: 0;
  line-height: 1.45;
}

/* KPI strips are one comparison surface, not a row of unrelated cards. */
body:not(.page-today) .statrow {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(142px, 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-m);
  background: var(--lm-seam);
  box-shadow:
    var(--lm-depth-machined),
    0 0 36px -28px color-mix(in srgb, var(--lm-key) 58%, transparent),
    0 0 42px -30px color-mix(in srgb, var(--lm-fill) 52%, transparent);
}

body:not(.page-today) .statrow .stat {
  min-width: 0;
  min-height: 92px;
  align-content: center;
  padding: 16px 18px;
  border: 0;
  border-radius: 0;
  background: var(--lm-panel);
  box-shadow: none;
}

body:not(.page-today) .statrow .stat:first-child {
  background: linear-gradient(145deg, color-mix(in srgb, var(--lm-key) 13%, transparent), transparent 66%), var(--lm-panel);
}

body:not(.page-today) .statrow .stat:last-child {
  background: linear-gradient(215deg, color-mix(in srgb, var(--lm-fill) 10%, transparent), transparent 64%), var(--lm-panel);
}

body:not(.page-today) .statrow .stat b {
  color: var(--lm-matte);
  font-variant-numeric: tabular-nums;
}

body:not(.page-today) .statrow .stat span { color: var(--lm-matte-2); }

/* Consistent disclosure makes long pages scannable without hiding state. */
body:not(.page-today) main details {
  border-color: var(--lm-seam);
}

body:not(.page-today) main details > summary {
  min-height: 48px;
  border-radius: var(--lm-rad-s);
  color: var(--lm-matte-2);
  cursor: pointer;
}

body:not(.page-today) main details > summary:hover,
body:not(.page-today) main details > summary:focus-visible {
  color: var(--lm-matte);
  background: rgb(255 252 248 / .035);
}

body:not(.page-today) main details[open] > summary {
  color: var(--lm-matte);
  border-bottom-color: var(--lm-seam);
}

/* Writing surfaces: generous composition areas, quiet routing controls, and
   labels that never disappear once someone starts typing. */
body:not(.page-today) main :where(.stack-form, .profile-form, .role-grid,
  .settings-thresholds, .memory-settings-grid, .contact-capture-form,
  .connection-create-form, .connection-editor-form, .terminology-form,
  .terminology-detection, .equality-map-form, .metric-import-form) label,
dialog :where(.profile-form, .record-editor-form, .contact-capture-form,
  .connection-create-form, .connection-editor-form) label {
  display: grid;
  align-content: start;
  gap: 7px;
  min-width: 0;
  color: var(--lm-matte-2);
  font-size: 1rem;
  font-weight: 600;
}

body:not(.page-today) .settings-thresholds {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  overflow: visible;
  padding: 0;
  border: 0;
  background: transparent;
}

body:not(.page-today) .settings-thresholds > .setting-threshold {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-auto-rows: max-content;
  align-content: start;
  align-items: stretch;
  gap: 8px !important;
  min-width: 0;
  margin: 0;
  padding: 18px;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-s);
  background: var(--lm-panel-2);
}

body:not(.page-today) .settings-thresholds > .setting-threshold > * {
  grid-column: 1 !important;
  min-width: 0;
}

body:not(.page-today) .settings-thresholds > .setting-threshold-wide {
  grid-column: 1 / -1;
}

body:not(.page-today) .settings-thresholds > button {
  grid-column: 1 / -1;
  justify-self: start;
  width: auto;
  min-width: 180px;
  padding-inline: 20px;
}

body:not(.page-today) .settings-thresholds .setting-threshold :where(input, select, textarea) {
  width: 100%;
  min-height: 48px;
  margin-top: 0;
}

/* Settings fields carry both a description and a validation/help line. The
   shared field primitive gives those nodes the same named grid row, which is
   useful for simple fields but caused the two lines to print on top of one
   another here. Settings are authored controls, so keep their full reading
   sequence in normal document order. */
body:not(.page-today) .settings-thresholds > .setting-threshold.field {
  grid-template-areas: none;
}

body:not(.page-today) .settings-thresholds > .setting-threshold.field > * {
  grid-area: auto !important;
  grid-column: 1 !important;
}

body:not(.page-today) .settings-thresholds .setting-threshold textarea,
body:not(.page-today) main .stack-form textarea {
  min-height: 180px;
}

.settings-lane-cadence { margin: 0; }

body:not(.page-today) main :where(.role-grid, .clickup-create, .case-compose,
  .commitment-capture, .profile-form) textarea {
  min-height: 154px;
  padding: 15px 16px;
  background:
    linear-gradient(180deg, rgb(255 252 248 / .018), transparent 34px),
    var(--lm-panel-3);
  line-height: 1.58;
}

body:not(.page-today) main .appr-artifact {
  min-height: clamp(260px, 42vh, 620px);
  padding: clamp(18px, 2.5vw, 30px);
  border-radius: var(--lm-rad-m);
  background:
    radial-gradient(ellipse 48% 100px at 8% 0%, color-mix(in srgb, var(--lm-key) 5%, transparent), transparent 78%),
    var(--lm-panel-3);
  font-size: 1.02rem;
  line-height: 1.68;
  tab-size: 2;
}

body:not(.page-today) main fieldset,
dialog fieldset {
  min-width: 0;
  border-color: var(--lm-seam);
  border-radius: var(--lm-rad-m);
  background: color-mix(in srgb, var(--lm-panel-2) 86%, transparent);
}

body:not(.page-today) main legend,
dialog legend {
  padding-inline: 8px;
  color: var(--lm-matte);
  font-weight: 700;
}

body:not(.page-today) main :where(.tool-check, .setting-check, .check) {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  gap: 10px !important;
  min-height: 44px;
  padding: 10px 12px;
  border-color: var(--lm-seam);
  border-radius: var(--lm-rad-s);
  background: linear-gradient(180deg, rgb(255 252 248 / .02), transparent), var(--lm-panel-2);
  color: var(--lm-matte-2);
}

body:not(.page-today) main :where(.tool-check, .setting-check, .check) input[type="checkbox"] {
  flex: 0 0 18px;
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 0;
  padding: 0;
  accent-color: var(--lm-key);
}

body:not(.page-today) main :where(.tool-check, .setting-check, .check):has(input:checked) {
  border-color: color-mix(in srgb, var(--lm-key) 42%, var(--lm-seam));
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 14%, transparent), transparent 78%), var(--lm-panel-2);
  color: var(--lm-matte);
  box-shadow: inset 3px 0 var(--lm-key), 0 0 24px -14px color-mix(in srgb, var(--lm-key) 70%, transparent);
}

/* The left rail and inspectors carry useful continuity instead of becoming
   dead gray acreage. Their atmosphere is local and content-bound. */
body:not(.page-today) :where(.chat-layout > aside, .intel-side-column,
  .contact-context-rail, .commitment-action-pane, .rec-side) {
  position: relative;
  border-color: var(--lm-seam);
  background:
    radial-gradient(ellipse 110% 250px at 0 0, color-mix(in srgb, var(--lm-key) 13%, transparent), color-mix(in srgb, var(--lm-key) 2%, transparent) 52%, transparent 74%),
    radial-gradient(ellipse 90% 220px at 100% 100%, color-mix(in srgb, var(--lm-fill) 7%, transparent), transparent 78%),
    var(--lm-panel);
}

body:not(.page-today) .chat-layout > aside {
  position: sticky;
  top: 24px;
  max-height: calc(100dvh - 48px);
  overflow: auto;
  padding: 1px;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-m);
  box-shadow: var(--lm-depth-1);
}

body:not(.page-today) .chat-layout > aside > .card {
  margin: 0;
  border: 0;
  border-radius: inherit;
  background: transparent;
  box-shadow: none;
}

body:not(.page-today) :where(.thread, .contact-index-row,
  .commitment-index-row, .source-record-feed article) {
  min-height: 58px;
  border-color: var(--lm-seam);
  color: var(--lm-matte-2);
}

body:not(.page-today) .intel-back {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: var(--lm-matte-2);
}

body:not(.page-today) .intel-back:hover,
body:not(.page-today) .intel-back:focus-visible { color: var(--lm-matte); }

body:not(.page-today) :where(.thread, .contact-index-row,
  .commitment-index-row, .source-record-feed article):hover {
  background: rgb(255 252 248 / .035);
  color: var(--lm-matte);
}

body:not(.page-today) .thread.on {
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 16%, transparent), color-mix(in srgb, var(--lm-key) 3%, transparent) 66%, transparent);
  box-shadow: inset 3px 0 var(--lm-key), 0 0 28px -18px color-mix(in srgb, var(--lm-key) 72%, transparent);
  color: var(--lm-matte);
}

/* Relationship and queue cards keep their semantics but shed ornamental
   gradients. A thin illuminated boundary marks the current focal object. */
body:not(.page-today) :where(.intel-index-card, .staff-card, .wb-card,
  .meeting-series-card, .conference-card, .case-row, .artifact-shelf > article) {
  position: relative;
  overflow: hidden;
  border-radius: var(--lm-rad-m);
}

body:not(.page-today) :where(.intel-index-card, .staff-card, .wb-card,
  .meeting-series-card, .conference-card, .case-row, .artifact-shelf > article)::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 1px;
  background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--lm-key) 72%, transparent), transparent);
  box-shadow: 4px 0 26px color-mix(in srgb, var(--lm-key) 36%, transparent);
}

body:not(.page-today) :where(.intel-index-card, .staff-card, .wb-card,
  .meeting-series-card, .conference-card, .case-row, .artifact-shelf > article):hover {
  border-color: var(--lm-seam-strong);
  background-image: linear-gradient(125deg, color-mix(in srgb, var(--lm-key) 6%, transparent), transparent 58%);
  transform: translateY(-1px);
}

/* Empty and exception screens should still feel designed, not abandoned. */
body:not(.page-today) .empty-state {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 220px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 10px;
  padding: clamp(28px, 6vw, 64px);
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background:
    radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--lm-key) 17%, transparent), color-mix(in srgb, var(--lm-key) 4%, transparent) 28%, transparent 46%),
    radial-gradient(ellipse 42% 70% at 100% 100%, color-mix(in srgb, var(--lm-fill) 7%, transparent), transparent 76%),
    color-mix(in srgb, var(--lm-panel-2) 74%, transparent);
  box-shadow:
    inset 0 0 0 1px rgb(0 0 0 / .4),
    inset 0 1px rgb(255 252 248 / .04),
    0 0 54px -34px color-mix(in srgb, var(--lm-key) 72%, transparent);
  text-align: center;
}

body:not(.page-today) .empty-state::before,
body:not(.page-today) .empty-state::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  border-radius: 50%;
}

body:not(.page-today) .empty-state::before {
  width: 260px;
  height: 260px;
  top: -196px;
  left: calc(50% - 130px);
  border: 1px solid color-mix(in srgb, var(--lm-key) 28%, transparent);
  box-shadow: 0 0 0 28px color-mix(in srgb, var(--lm-key) 3%, transparent), 0 0 72px color-mix(in srgb, var(--lm-key) 12%, transparent);
}

body:not(.page-today) .empty-state::after {
  width: 1px;
  height: 68%;
  inset: 16% auto auto 50%;
  border-radius: 0;
  background: linear-gradient(180deg, color-mix(in srgb, var(--lm-key) 32%, transparent), transparent 34%, transparent 68%, color-mix(in srgb, var(--lm-fill) 28%, transparent));
  opacity: .38;
}

body:not(.page-today) .empty-state .empty-mark {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--lm-key) 28%, var(--lm-seam));
  border-radius: 50%;
  background: color-mix(in srgb, var(--lm-key) 7%, transparent);
  color: var(--lm-matte-2);
  box-shadow:
    0 0 14px color-mix(in srgb, var(--lm-key) 58%, transparent),
    0 0 44px color-mix(in srgb, var(--lm-key) 22%, transparent);
}

body:not(.page-today) .empty-state .empty-mark img {
  width: 24px;
  height: 24px;
  display: block;
}

body:not(.page-today) .empty-state b { color: var(--lm-matte); font-size: 1.08rem; }
body:not(.page-today) .empty-state p { max-width: 54ch; margin: 0; color: var(--lm-matte-2); }

/* Record pages are intentionally compact, but now have a clear focal frame. */
body.page-record .rec-title {
  max-width: 28ch;
  margin-top: 24px;
  color: var(--lm-matte);
  font-size: clamp(2rem, 5vw, 4.4rem);
  line-height: .98;
  letter-spacing: -.05em;
}

body.page-record .rec-sub {
  max-width: 86ch;
  margin: 14px 0 28px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--lm-seam);
}

/* Maestro gets a framed operating room even before its client bundle mounts. */
body.page-chat main {
  min-height: calc(100dvh - 1px);
  padding: 18px;
}

body.page-chat .maestro-server-shell {
  min-height: calc(100dvh - 36px);
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-l);
  background:
    radial-gradient(ellipse 58% 42% at 12% 0%, color-mix(in srgb, var(--lm-key) 10%, transparent), transparent 72%),
    radial-gradient(ellipse 46% 36% at 92% 8%, color-mix(in srgb, var(--lm-fill) 7%, transparent), transparent 74%),
    var(--lm-panel);
  box-shadow: var(--lm-depth-2);
}

/* Login is sparse by design, never colorless. */
body.page-login .login-wrap .card {
  position: relative;
  overflow: hidden;
  border-color: var(--lm-seam-strong);
  border-radius: var(--lm-rad-l);
  background:
    radial-gradient(ellipse 90% 56% at 0 0, color-mix(in srgb, var(--lm-key) 14%, transparent), transparent 70%),
    radial-gradient(ellipse 76% 48% at 100% 8%, color-mix(in srgb, var(--lm-fill) 9%, transparent), transparent 74%),
    var(--lm-panel);
  box-shadow: var(--lm-depth-2);
}

/* Finite motion confirms that the operating surface has arrived. It never
   loops, never carries status by itself, and never displaces a target after
   the user can interact with it. */
@keyframes lm-page-arrive {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes lm-surface-arrive {
  from { opacity: 0; transform: translateY(8px) scale(.997); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes lm-workbench-arrive {
  from { opacity: 0; transform: translateX(18px) scale(.992); }
  to { opacity: 1; transform: translateX(0) scale(1); }
}

@keyframes lm-workbench-arrive-mobile {
  from { opacity: 0; transform: translateY(12px) scale(.992); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes lm-decision-arrive {
  from { opacity: 0; transform: translate(-50%, -50%) scale(.97); }
  to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

@keyframes lm-bar-charge {
  from { opacity: .35; transform: scaleX(0); }
  to { opacity: 1; transform: scaleX(1); }
}

body:not(.page-today) .page-header {
  animation: lm-page-arrive var(--lm-motion-long) var(--lm-ease-out) both;
}

body:not(.page-today) main > :where(.statrow, .lumen-visual-instrument, .card,
  .chat-layout, .intel-detail-grid, .connection-grid):not(.page-header) {
  animation: lm-surface-arrive var(--lm-motion-long) 70ms var(--lm-ease-out) both;
}

dialog.record-editor-dialog[open]:not(.record-delete-dialog),
dialog.contact-capture-dialog[open]:not(.record-delete-dialog),
dialog.profile-edit-dialog[open]:not(.record-delete-dialog),
dialog.is-workbench-dialog[open] {
  animation: lm-workbench-arrive var(--lm-motion-base) var(--lm-ease-out) both;
}

dialog.record-delete-dialog.destructive-confirm-dialog[open] {
  animation: lm-decision-arrive var(--lm-motion-base) var(--lm-ease-out) both;
}

/* Destruction is the one task that keeps a modal boundary. */
.destructive-confirm-dialog {
  position: fixed;
  isolation: isolate;
  overflow: hidden;
  inset: 50% auto auto 50%;
  width: min(480px, calc(100vw - 32px));
  max-width: none;
  max-height: calc(100dvh - 32px);
  padding: 0;
  margin: 0;
  border-radius: var(--lm-rad-l);
  transform: translate(-50%, -50%);
}

.destructive-confirm-dialog::before {
  content: "";
  position: absolute;
  inset: 0 24px auto;
  z-index: 2;
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg, var(--lm-critical), color-mix(in srgb, var(--lm-critical) 22%, transparent), transparent);
  box-shadow: 0 8px 28px color-mix(in srgb, var(--lm-critical) 34%, transparent);
}

.destructive-confirm-shell { display: grid; }
.destructive-confirm-shell header {
  padding: 28px 28px 22px;
  border-bottom: 1px solid var(--lm-seam);
  background: linear-gradient(135deg, color-mix(in srgb, var(--lm-critical) 8%, transparent), transparent 62%);
}
.destructive-confirm-shell .page-eyebrow { color: #ff9aa4; }
.destructive-confirm-shell h2 { margin: 7px 0 8px; color: var(--lm-matte); font-size: 1.45rem; }
.destructive-confirm-shell p { margin: 0; color: var(--lm-matte-2); line-height: 1.55; }
.destructive-confirm-shell footer {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 18px 28px 24px;
}

/* Utility cleanup for templates that formerly needed one-off inline styles. */
.inline-action { display: inline; }
.context-artifacts-title { margin-top: 1.2rem; }
.model-catalog-filter { width: 100%; margin-bottom: 10px; }
.model-catalog-scroll { max-height: 420px; overflow: auto; }
.connection-category-title {
  margin: 18px 0 6px;
  color: var(--lm-matte-3);
  font-size: .8125rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 1380px) {
  .stack-workbench { grid-template-columns: 1fr; }
  .stack-inspector { position: static; max-height: none; }
}

@media (max-width: 1023px) and (min-width: 761px) {
  body:not(.page-today) {
    --lm-page-x: 24px;
    --lm-page-y: 28px;
    --lm-space-section: 28px;
  }

  .lumen-visual-layout {
    grid-template-columns: minmax(0, 1fr) minmax(248px, 290px);
    gap: 22px;
  }

  .lumen-operating-chart { min-height: 340px; }
  .lumen-operating-chart.is-wide { min-height: 372px; }

  dialog.record-editor-dialog,
  dialog.contact-capture-dialog:not(.record-delete-dialog),
  dialog.profile-edit-dialog:not(.record-delete-dialog),
  dialog.is-workbench-dialog {
    top: 76px;
    max-height: calc(100dvh - 152px);
  }
}

@media (max-width: 760px) {
  body:not(.page-today) {
    --lm-page-x: 16px;
    --lm-page-y: 20px;
    --lm-space-section: 22px;
    --lm-space-cluster: 16px;
  }

  body:not(.page-today) main { padding: var(--lm-page-y) var(--lm-page-x); }

  body:not(.page-today) .page-header {
    min-height: 138px;
    margin-bottom: var(--lm-space-section);
    padding: 24px 20px;
  }

  .lumen-visual-head { display: grid; gap: 10px; }
  .lumen-variant-label { justify-self: start; }
  .lumen-visual-layout { grid-template-columns: 1fr; }
  .lumen-operating-chart,
  .lumen-operating-chart.is-wide { min-height: 318px; }
  .lumen-visual-instrument { padding: 20px; }
  .stack-overview .ledger-pressure { margin-inline: 12px; }
  .lumen-table-toolbar { align-items: flex-start; }
  .lumen-table-scope small { max-width: 27ch; }
  .lumen-table-sort-summary { display: none; }

  body:not(.page-today) .lumen-table-viewport { border-radius: var(--lm-rad-s); }
  body:not(.page-today) table.lumen-instrumented-table { width: max-content; min-width: 100%; }
  body:not(.page-today) .lumen-table-overflow-cue:not([hidden]) {
    display: block;
    margin-top: 2px;
    color: color-mix(in srgb, var(--lm-key) 74%, var(--lm-matte-2));
  }

  body:not(.page-today) .lumen-instrumented-table :is(th, td):first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    background: color-mix(in srgb, var(--lm-panel) 97%, transparent);
    box-shadow: 1px 0 var(--lm-seam-strong), 12px 0 24px -22px #000;
  }

  body:not(.page-today) .lumen-instrumented-table :is(th, td):first-child {
    width: 156px;
    max-width: 156px;
  }

  body:not(.page-today) .lumen-instrumented-table thead th:first-child {
    z-index: 5;
    background: color-mix(in srgb, var(--lm-panel-2) 98%, transparent);
  }

  body:not(.page-today) .lumen-instrumented-table tbody tr:hover td:first-child,
  body:not(.page-today) .lumen-instrumented-table tbody tr:focus-within td:first-child,
  body:not(.page-today) .lumen-instrumented-table tbody tr.is-selected td:first-child {
    background: color-mix(in srgb, var(--row-lamp, var(--lm-key)) 8%, var(--lm-panel));
  }

  .page-stack table.stack-table,
  .page-stack table.stack-table thead,
  .page-stack table.stack-table tbody,
  .page-stack table.stack-table tr,
  .page-stack table.stack-table th,
  .page-stack table.stack-table td {
    display: revert !important;
  }
  .page-stack table.stack-table { display: table !important; min-width: 820px; }
  .page-stack table.stack-table thead { display: table-header-group !important; }
  .page-stack table.stack-table tbody { display: table-row-group !important; }
  .page-stack table.stack-table tr { display: table-row !important; }
  .page-stack table.stack-table th,
  .page-stack table.stack-table td { display: table-cell !important; }

  .stack-index .ledger-table th:nth-child(1),
  .stack-index .ledger-table td[data-label="Rank"] {
    position: sticky !important;
    left: 0;
    z-index: 2;
    background: var(--lm-panel);
  }
  .stack-index .ledger-table th:nth-child(2),
  .stack-index .ledger-table td[data-label="Object"] {
    position: sticky !important;
    left: 58px;
    z-index: 2;
    background: var(--lm-panel);
    box-shadow: 1px 0 var(--lm-seam-strong);
  }
  .stack-index .ledger-table thead :where(th):nth-child(-n+2) {
    z-index: 4;
    background: var(--lm-panel-2);
  }
  .stack-index .ledger-table tr:hover :where(td):nth-child(-n+2),
  .stack-index .ledger-table tr.is-selected :where(td):nth-child(-n+2) {
    background: #1a1a1e;
  }

  dialog.record-editor-dialog,
  dialog.contact-capture-dialog:not(.record-delete-dialog),
  dialog.profile-edit-dialog:not(.record-delete-dialog),
  dialog.is-workbench-dialog {
    inset: 72px 16px auto;
    width: auto;
    height: auto;
    max-height: calc(100dvh - 148px);
    border: 1px solid var(--lm-seam-strong);
    border-radius: var(--lm-rad-m);
  }

  .record-editor-shell { max-height: calc(100dvh - 150px); }
  .record-editor-body,
  .profile-edit-scroll { max-height: calc(100dvh - 260px); }
  .profile-edit-form,
  .contact-capture-dialog > form { max-height: calc(100dvh - 260px); }
  .profile-edit-section,
  .contact-capture-panel { margin: 12px 16px; padding: 16px; }
  .profile-edit-actions,
  .contact-capture-dialog-actions { padding: 14px 16px; }

  .record-editor-head,
  .contact-capture-dialog-head { padding: 18px 16px 15px; }
  .record-editor-body,
  .profile-edit-scroll { padding: 16px; }

  /* Page-family mobile composition. Dense controls become a deliberate
     reading sequence; comparison instruments retain horizontal semantics. */
  body:not(.page-today) {
    overflow-x: clip;
  }

  body:not(.page-today) main :where(.card, .attention-panel, .clickup-create,
    .clickup-lane, .executive-state-section, .learning-section,
    .studio-block, .wb-section, .connection-contract) {
    border-radius: var(--lm-rad-m);
  }

  body:not(.page-today) main .card { padding: 18px; }

  body:not(.page-today) :where(.intel-hero, .case-hero,
    .baseline-library-hero, .wb-head, .portfolio-intelligence-hero,
    .contact-command-hero) {
    padding: 22px 18px;
    border-radius: var(--lm-rad-m);
  }

  body:not(.page-today) :where(.intel-hero, .case-hero,
    .baseline-library-hero, .wb-head, .portfolio-intelligence-hero,
    .contact-command-hero) :where(.intel-hero-main, .intel-hero-signals,
    .intel-hero-meta, aside) {
    min-width: 0;
  }

  body:not(.page-today) :where(.role-grid, .settings-thresholds,
    .memory-settings-grid, .profile-form, .contact-capture-form,
    .connection-editor-form, .connection-create-form, .equality-map-form,
    .metric-import-form, .terminology-create-grid, .terminology-form,
    .case-transition, .case-task-compose, .case-link-form,
    .clickup-create > form, .case-compose > form,
    .commitment-capture form, .outcome-forecast) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body:not(.page-today) :where(.role-grid, .settings-thresholds,
    .memory-settings-grid, .profile-form, .contact-capture-form,
    .connection-editor-form, .connection-create-form, .equality-map-form,
    .metric-import-form, .terminology-create-grid, .terminology-form,
    .case-transition, .case-task-compose, .case-link-form,
    .clickup-create > form, .case-compose > form,
    .commitment-capture form, .outcome-forecast) > * {
    grid-column: 1 !important;
    min-width: 0;
  }

  body:not(.page-today) :where(.clickup-compose-routing,
    .case-compose-routing) {
    border-left: 0;
    border-top: 1px solid var(--lm-seam);
  }

  body:not(.page-today) :where(.statrow, .learning-kpis) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body:not(.page-today) :where(.commitment-kpis, .baseline-state-tabs,
    .source-lens-tabs, .attention-command, .clickup-health,
    .contact-signal-strip, .contact-delta-strip, .intel-hero-meta) {
    display: flex;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline proximity;
    scrollbar-width: thin;
  }

  body:not(.page-today) :where(.commitment-kpis, .baseline-state-tabs,
    .source-lens-tabs, .attention-command, .clickup-health,
    .contact-signal-strip, .contact-delta-strip, .intel-hero-meta) > * {
    flex: 0 0 min(76vw, 260px);
    min-width: 0;
    scroll-snap-align: start;
  }

  body:not(.page-today) :where(.attention-primary-grid, .attention-evolution-grid,
    .studio-duo, .studio-sparks, .meeting-columns, .meeting-series-grid,
    .buyer-visual-grid, .buyer-floor-grid, .buyer-learning-grid,
    .buyer-operating-grid, .intel-detail-grid, .case-evidence-grid,
    .case-support-grid, .contact-prepare-grid, .conference-detail-grid,
    .portfolio-rivals, .executive-state-split, .grid2, .rec-grid,
    .clickup-task-list, .staff-grid, .wb-cards) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body:not(.page-today) .tool-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  body:not(.page-today) .chat-layout > aside {
    position: static;
    max-height: none;
    overflow: visible;
  }

  body:not(.page-today) :where(.intel-side-column, .contact-context-rail,
    .commitment-action-pane, .rec-side) {
    position: static;
    max-height: none;
  }

  body:not(.page-today) :where(.operator-panel-head, .contact-section-heading,
    .studio-block > header, .attention-evolution > header,
    .clickup-create > header, .commitment-inspector-head,
    .case-compose-head, .lumen-visual-head) {
    align-items: flex-start;
    flex-direction: column;
  }

  body:not(.page-today) :where(.profile-edit-actions,
    .contact-capture-dialog-actions, .record-editor-footer,
    .destructive-confirm-shell footer) {
    align-items: stretch;
    flex-direction: column-reverse;
  }

  body:not(.page-today) .destructive-confirm-shell footer {
    flex-direction: column;
  }

  body:not(.page-today) :where(.profile-edit-actions,
    .contact-capture-dialog-actions, .record-editor-footer,
    .destructive-confirm-shell footer) > :where(button, a) {
    width: 100%;
  }

  body:not(.page-today) .btn-mini { min-height: 44px; }

  /* The workbench body already owns scrolling. Let the action rail follow the
     form on small screens so it never masks the last lines of a textarea. */
  dialog.is-workbench-dialog .record-editor-footer,
  dialog.record-editor-dialog .record-editor-footer {
    position: static;
  }

  body:not(.page-today) .settings-thresholds .setting-threshold textarea,
  body:not(.page-today) main .stack-form textarea {
    min-height: 160px;
  }

  body.page-chat main { min-height: calc(100dvh - 132px); padding: 8px; }
  body.page-chat .maestro-server-shell {
    min-height: calc(100dvh - 148px);
    border-radius: var(--lm-rad-m);
  }
}

/* ===========================================================================
   Company Intelligence · governed marketplace workspace
   One focal model, two coordinated continuations, one instrumented ledger.
   ========================================================================== */
.marketplace-workspace {
  position: relative;
  isolation: isolate;
  margin-top: var(--lm-space-section);
  overflow: hidden;
  border-color: color-mix(in srgb, var(--lm-lamp-aqua) 23%, var(--lm-seam-strong));
  background:
    radial-gradient(ellipse 62% 48% at 7% 4%, color-mix(in srgb, var(--lm-lamp-rose) 13%, transparent), transparent 72%),
    radial-gradient(ellipse 58% 48% at 98% 8%, color-mix(in srgb, var(--lm-lamp-aqua) 14%, transparent), transparent 72%),
    radial-gradient(ellipse 42% 34% at 54% 106%, color-mix(in srgb, var(--lm-lamp-iris) 11%, transparent), transparent 74%),
    linear-gradient(148deg, color-mix(in srgb, var(--lm-panel-2) 94%, transparent), color-mix(in srgb, var(--lm-panel) 98%, transparent));
  box-shadow: var(--lm-depth-2), 0 0 78px -50px color-mix(in srgb, var(--lm-lamp-aqua) 70%, transparent);
}
.marketplace-workspace::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(110deg, var(--lm-lamp-rose), transparent 27%, transparent 70%, var(--lm-lamp-aqua));
  opacity: .72;
  pointer-events: none;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
.marketplace-workspace-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 28px;
  padding: clamp(22px, 2.5vw, 34px) clamp(20px, 3vw, 40px) 20px;
}
.marketplace-workspace-head h2 {
  max-width: 25ch;
  margin: 7px 0 9px;
  color: var(--lm-matte);
  font-size: clamp(1.55rem, 2.5vw, 2.4rem);
  line-height: 1.09;
  letter-spacing: -.035em;
}
.marketplace-workspace-head p {
  max-width: 72ch;
  margin: 0;
  color: var(--lm-matte-2);
  font-size: .9375rem;
  line-height: 1.55;
}
.marketplace-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 clamp(20px, 3vw, 40px) 22px;
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: 14px;
  background: color-mix(in srgb, var(--lm-ink-deep) 56%, transparent);
}
.marketplace-kpis section {
  min-width: 0;
  padding: 16px 18px;
  border-right: 1px solid var(--lm-seam);
}
.marketplace-kpis section:last-child { border-right: 0; }
.marketplace-kpis span,
.marketplace-kpis small { display: block; color: var(--lm-matte-3); font-size: .75rem; }
.marketplace-kpis span { font-weight: 720; letter-spacing: .08em; text-transform: uppercase; }
.marketplace-kpis b {
  display: block;
  margin: 5px 0 3px;
  color: var(--lm-matte);
  font-size: clamp(1.2rem, 1.7vw, 1.65rem);
  font-variant-numeric: tabular-nums;
  letter-spacing: -.025em;
}
.marketplace-kpis section:nth-child(1) b { color: var(--lm-lamp-aqua); text-shadow: 0 0 22px color-mix(in srgb, var(--lm-lamp-aqua) 44%, transparent); }
.marketplace-kpis section:nth-child(4) b { color: var(--lm-lamp-rose); text-shadow: 0 0 22px color-mix(in srgb, var(--lm-lamp-rose) 38%, transparent); }
.marketplace-focal-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(248px, .29fr);
  gap: clamp(16px, 2vw, 26px);
  padding: 0 clamp(20px, 3vw, 40px) clamp(22px, 3vw, 36px);
}
.marketplace-chart-stage { min-width: 0; }
.marketplace-mekko-chart { min-height: clamp(420px, 44vw, 560px); }
.marketplace-market-axis { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; margin-top: 8px; }
.marketplace-market-axis button { position: relative; min-height: 50px; display: grid; grid-template-columns: 5px minmax(0, 1fr) auto; align-items: center; gap: 7px; padding: 7px 9px; border: 1px solid var(--lm-seam); border-radius: 9px; background: color-mix(in srgb, var(--lm-panel-2) 76%, transparent); color: var(--lm-matte-2); text-align: left; }
.marketplace-market-axis button i { width: 4px; height: 24px; border-radius: 99px; background: var(--market-lamp); box-shadow: 0 0 9px var(--market-lamp); }
.marketplace-market-axis button span { min-width: 0; overflow: hidden; color: var(--lm-matte-2); font-size: .7rem; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.marketplace-market-axis button b { color: var(--lm-matte); font-size: .72rem; font-variant-numeric: tabular-nums; }
.marketplace-market-axis button:nth-child(1) { --market-lamp: var(--lm-lamp-aqua); }
.marketplace-market-axis button:nth-child(2) { --market-lamp: var(--lm-lamp-iris); }
.marketplace-market-axis button:nth-child(3) { --market-lamp: var(--lm-lamp-rose); }
.marketplace-market-axis button:nth-child(4) { --market-lamp: var(--lm-lamp-mint); }
.marketplace-market-axis button:nth-child(5) { --market-lamp: var(--lm-lamp-gold); }
.marketplace-market-axis button[aria-pressed="true"] { border-color: color-mix(in srgb, var(--market-lamp) 56%, var(--lm-seam)); background: color-mix(in srgb, var(--market-lamp) 8%, var(--lm-panel-2)); box-shadow: 0 0 20px -13px var(--market-lamp); }
.marketplace-mobile-map { display: none; }
.marketplace-finding {
  align-self: stretch;
  min-width: 0;
  padding: clamp(20px, 2.4vw, 30px);
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 24%, var(--lm-seam-strong));
  border-radius: 16px;
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--lm-lamp-aqua) 11%, transparent), transparent 42%),
    color-mix(in srgb, var(--lm-panel-2) 88%, transparent);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .04), 0 0 34px -25px var(--lm-lamp-aqua);
}
.marketplace-finding > span { color: var(--lm-lamp-aqua); font-size: .72rem; font-weight: 760; letter-spacing: .12em; text-transform: uppercase; }
.marketplace-finding > b { display: block; margin: 12px 0 20px; color: var(--lm-matte); font-size: 1.12rem; line-height: 1.35; }
.marketplace-finding > p { margin: 0 0 10px; color: var(--lm-matte); font-size: 1rem; line-height: 1.55; }
.marketplace-finding > small { display: block; color: var(--lm-matte-2); font-size: .875rem; line-height: 1.6; }
.marketplace-finding dl { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin: 24px 0 0; border: 1px solid var(--lm-seam); border-radius: 11px; overflow: hidden; background: var(--lm-seam); }
.marketplace-finding dl div { padding: 12px; background: color-mix(in srgb, var(--lm-ink-deep) 78%, transparent); }
.marketplace-finding dt { color: var(--lm-matte-3); font-size: .7rem; text-transform: uppercase; letter-spacing: .07em; }
.marketplace-finding dd { margin: 4px 0 0; color: var(--lm-matte); font-size: 1.02rem; font-weight: 730; font-variant-numeric: tabular-nums; }
.marketplace-exact-register { margin: 0 clamp(20px, 3vw, 40px) 28px; border: 1px solid var(--lm-seam-strong); border-radius: 12px; overflow: hidden; }
.marketplace-exact-register > summary { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 15px; color: var(--lm-matte); cursor: pointer; font-weight: 700; }
.marketplace-exact-register > summary span { color: var(--lm-matte-3); font-size: .78rem; font-weight: 500; }
.marketplace-exact-register > div { max-height: 410px; overflow: auto; border-top: 1px solid var(--lm-seam); }
.marketplace-exact-register table { width: 100%; border-collapse: collapse; font-size: .875rem; }
.marketplace-exact-register caption { padding: 13px 15px; color: var(--lm-matte-3); text-align: left; }
.marketplace-exact-register :where(th, td) { padding: 12px 15px; border-top: 1px solid var(--lm-seam); text-align: right; font-variant-numeric: tabular-nums; }
.marketplace-exact-register :where(th, td):first-child { text-align: left; }
.marketplace-exact-register thead th { position: sticky; top: 0; z-index: 1; background: var(--lm-panel-2); color: var(--lm-matte-2); }
.marketplace-exact-register tbody th { color: var(--lm-matte); font-weight: 650; }
.marketplace-identity-coverage {
  margin: 0 clamp(20px, 3vw, 40px) 30px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-gold) 30%, var(--lm-seam-strong));
  border-radius: 15px;
  background:
    radial-gradient(ellipse at 100% 0, color-mix(in srgb, var(--lm-lamp-gold) 10%, transparent), transparent 54%),
    color-mix(in srgb, var(--lm-panel) 88%, transparent);
  box-shadow: 0 0 36px -28px var(--lm-lamp-gold);
}
.marketplace-identity-coverage > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding: 20px 22px; }
.marketplace-identity-coverage h3 { margin: 6px 0; color: var(--lm-matte); font-size: clamp(1.08rem, 1.8vw, 1.4rem); }
.marketplace-identity-coverage header p { max-width: 70ch; margin: 0; color: var(--lm-matte-2); font-size: .84rem; line-height: 1.55; }
.marketplace-identity-coverage header > strong { color: var(--lm-lamp-gold); font-size: 1.35rem; font-variant-numeric: tabular-nums; text-align: right; text-shadow: 0 0 20px color-mix(in srgb, var(--lm-lamp-gold) 34%, transparent); white-space: nowrap; }
.marketplace-identity-coverage header > strong small { display: block; margin-top: 4px; color: var(--lm-matte-3); font-size: .7rem; font-weight: 600; text-shadow: none; }
.marketplace-coverage-meter { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px 24px; margin: 0 22px; padding-top: 13px; }
.marketplace-coverage-meter::before,
.marketplace-coverage-meter > i { content: ""; position: absolute; left: 0; top: 0; height: 5px; border-radius: 999px; }
.marketplace-coverage-meter::before { width: 100%; background: var(--lm-lamp-gold); box-shadow: 0 0 10px color-mix(in srgb, var(--lm-lamp-gold) 56%, transparent); }
.marketplace-coverage-meter > i { z-index: 1; width: var(--coverage-resolved); background: linear-gradient(90deg, var(--lm-lamp-aqua), var(--lm-lamp-mint)); box-shadow: 0 0 12px var(--lm-lamp-aqua); }
.marketplace-coverage-meter span:last-child { text-align: right; }
.marketplace-coverage-meter b { display: block; color: var(--lm-matte); font-size: .96rem; font-variant-numeric: tabular-nums; }
.marketplace-coverage-meter small { display: block; margin-top: 2px; color: var(--lm-matte-3); font-size: .72rem; }
.marketplace-coverage-actions { display: flex; flex-wrap: wrap; gap: 8px; padding: 18px 22px; }
.marketplace-coverage-actions span { min-width: 150px; flex: 1; display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 4px 10px; padding: 10px 12px; border: 1px solid var(--lm-seam); border-radius: 9px; background: color-mix(in srgb, var(--lm-ink-deep) 58%, transparent); }
.marketplace-coverage-actions b { color: var(--lm-lamp-gold); font-size: .7rem; letter-spacing: .08em; }
.marketplace-coverage-actions strong { color: var(--lm-matte); font-size: .86rem; font-variant-numeric: tabular-nums; text-align: right; }
.marketplace-coverage-actions small { grid-column: 1 / -1; color: var(--lm-matte-3); font-size: .7rem; }
.marketplace-coverage-register { border-top: 1px solid var(--lm-seam); }
.marketplace-coverage-register > summary { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 22px; color: var(--lm-matte); cursor: pointer; font-size: .84rem; font-weight: 700; }
.marketplace-coverage-register > summary span { color: var(--lm-matte-3); font-size: .72rem; font-weight: 500; }
.marketplace-coverage-register > div { max-height: 420px; overflow: auto; border-top: 1px solid var(--lm-seam); }
.marketplace-coverage-register table { width: 100%; min-width: 800px; border-collapse: collapse; font-size: .8rem; }
.marketplace-coverage-register caption { padding: 12px 15px; color: var(--lm-matte-3); text-align: left; }
.marketplace-coverage-register :where(th, td) { padding: 11px 14px; border-top: 1px solid var(--lm-seam); color: var(--lm-matte-2); text-align: right; font-variant-numeric: tabular-nums; }
.marketplace-coverage-register :where(th, td):first-child,
.marketplace-coverage-register :where(th, td):nth-child(2),
.marketplace-coverage-register :where(th, td):nth-child(3) { text-align: left; }
.marketplace-coverage-register thead th { position: sticky; top: 0; z-index: 1; background: var(--lm-panel-2); color: var(--lm-matte-3); }
.marketplace-coverage-register tbody th b { display: block; color: var(--lm-matte); }
.marketplace-coverage-register tbody th small { display: block; margin-top: 2px; color: var(--lm-matte-3); font-weight: 500; }
.coverage-action { display: inline-flex; padding: 4px 7px; border: 1px solid color-mix(in srgb, var(--lm-lamp-gold) 34%, var(--lm-seam)); border-radius: 999px; color: var(--lm-lamp-gold); font-size: .66rem; font-weight: 760; letter-spacing: .07em; }
.marketplace-secondary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(14px, 2vw, 22px);
  padding: 28px clamp(20px, 3vw, 40px);
  border-top: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-ink-deep) 28%, transparent);
}
.marketplace-analysis-panel { min-width: 0; padding: clamp(18px, 2.2vw, 26px); border: 1px solid var(--lm-seam-strong); border-radius: 15px; background: color-mix(in srgb, var(--lm-panel) 82%, transparent); }
.marketplace-analysis-panel > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.marketplace-analysis-panel h3 { margin: 6px 0 0; color: var(--lm-matte); font-size: 1.18rem; line-height: 1.3; }
.marketplace-analysis-panel > header > span { color: var(--lm-matte-3); font-size: .72rem; text-align: right; }
.marketplace-support-chart { min-height: 360px; margin-top: 14px; }
.marketplace-chart-selection { min-height: 46px; display: flex; align-items: center; margin: 10px 0 0; padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 20%, var(--lm-seam)); border-radius: 10px; background: linear-gradient(90deg, color-mix(in srgb, var(--lm-lamp-aqua) 7%, transparent), transparent); color: var(--lm-matte-2); font-size: .8125rem; line-height: 1.4; }
.marketplace-workspace > .lumen-visual-evidence { padding-inline: clamp(20px, 3vw, 40px); }

.company-ledger { margin-top: var(--lm-space-section); overflow: hidden; border: 1px solid var(--lm-seam-strong); border-radius: 16px; background: color-mix(in srgb, var(--lm-panel) 90%, transparent); box-shadow: var(--lm-depth-1); }
.company-ledger > header { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding: clamp(20px, 2.5vw, 30px); border-bottom: 1px solid var(--lm-seam); background: radial-gradient(ellipse at 100% 0, color-mix(in srgb, var(--lm-lamp-iris) 10%, transparent), transparent 58%); }
.company-ledger > header h2 { margin: 6px 0 0; color: var(--lm-matte); font-size: clamp(1.25rem, 2vw, 1.7rem); letter-spacing: -.025em; }
.company-ledger > header p { max-width: 50ch; margin: 0; color: var(--lm-matte-2); font-size: .875rem; line-height: 1.5; text-align: right; }
.company-ledger .lumen-table-viewport { border: 0; border-radius: 0; }
.company-intelligence-table { width: 100%; min-width: 980px; border-collapse: collapse; }
.company-intelligence-table :where(th, td) { padding: 14px 16px; border-bottom: 1px solid var(--lm-seam); vertical-align: middle; }
.company-intelligence-table thead th { color: var(--lm-matte-3); font-size: .7rem; letter-spacing: .075em; text-transform: uppercase; }
.company-intelligence-table tbody tr { transition: background var(--lm-motion-fast) var(--lm-ease), box-shadow var(--lm-motion-fast) var(--lm-ease); }
.company-intelligence-table tbody tr:is(:hover, :focus-within) { background: linear-gradient(90deg, color-mix(in srgb, var(--lm-lamp-aqua) 6%, transparent), transparent 60%, color-mix(in srgb, var(--lm-lamp-iris) 4%, transparent)); box-shadow: inset 2px 0 var(--lm-lamp-aqua); }
.company-intelligence-table tbody th > a { display: flex; align-items: center; gap: 11px; min-height: 44px; color: inherit; text-decoration: none; }
.company-intelligence-table tbody th > a > span:last-child { min-width: 0; }
.company-intelligence-table tbody th b { display: block; color: var(--lm-matte); font-size: .9375rem; }
.company-intelligence-table tbody th small,
.company-revenue-value small,
.company-evidence-cell small { display: block; margin-top: 3px; color: var(--lm-matte-3); font-size: .75rem; font-weight: 500; line-height: 1.35; }
.company-revenue-value b,
.company-evidence-cell b { color: var(--lm-matte); font-size: .875rem; font-variant-numeric: tabular-nums; }
.company-continuity-cell { display: grid; grid-template-columns: auto minmax(48px, 1fr); align-items: center; gap: 4px 10px; min-width: 112px; }
.company-continuity-cell b { grid-row: 1 / span 2; color: var(--lm-matte); font-size: 1rem; font-variant-numeric: tabular-nums; }
.company-continuity-cell i { position: relative; display: block; height: 3px; overflow: visible; border-radius: 99px; background: var(--lm-seam-strong); }
.company-continuity-cell i::after { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--continuity); border-radius: inherit; background: var(--lm-lamp-aqua); box-shadow: 0 0 8px var(--lm-lamp-aqua); }
.company-continuity-cell small { color: var(--lm-matte-3); font-size: .7rem; }
.company-open-record { min-height: 44px; display: inline-flex; align-items: center; gap: 7px; padding: 0 12px; border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 22%, var(--lm-seam)); border-radius: 9px; color: var(--lm-matte); font-size: .8125rem; font-weight: 700; text-decoration: none; }
.company-open-record:is(:hover, :focus-visible) { border-color: color-mix(in srgb, var(--lm-lamp-aqua) 58%, var(--lm-seam)); background: color-mix(in srgb, var(--lm-lamp-aqua) 8%, transparent); box-shadow: 0 0 20px -10px var(--lm-lamp-aqua); }
.company-ledger-fold { border-top: 1px solid var(--lm-seam); }
.company-ledger-fold > summary { min-height: 52px; display: flex; align-items: center; padding: 12px 18px; color: var(--lm-matte); cursor: pointer; font-weight: 700; }
.company-ledger-fold > summary .dim { margin-left: 8px; color: var(--lm-matte-3); font-size: .78rem; font-weight: 500; }

@media (max-width: 980px) {
  .marketplace-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .marketplace-kpis section:nth-child(2) { border-right: 0; }
  .marketplace-kpis section:nth-child(-n+2) { border-bottom: 1px solid var(--lm-seam); }
  .marketplace-focal-layout { grid-template-columns: minmax(0, 1fr); }
  .marketplace-finding { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .55fr); align-items: start; gap: 0 24px; }
  .marketplace-finding > span,
  .marketplace-finding > b { grid-column: 1; }
  .marketplace-finding > p,
  .marketplace-finding > small { grid-column: 1; }
  .marketplace-finding dl { grid-column: 2; grid-row: 1 / span 4; margin-top: 0; }
}

@media (max-width: 760px) {
  .marketplace-workspace { margin-inline: -5px; border-radius: 16px; }
  .marketplace-workspace-head { display: block; padding: 20px 17px 16px; }
  .marketplace-workspace-head h2 { font-size: 1.55rem; }
  .marketplace-workspace-head .lumen-variant-label { display: inline-flex; margin-top: 14px; }
  .marketplace-kpis { margin: 0 14px 17px; }
  .marketplace-kpis section { padding: 13px 12px; }
  .marketplace-kpis b { font-size: 1.2rem; }
  .marketplace-focal-layout { padding: 0 14px 20px; }
  .marketplace-mekko-chart { display: none; min-height: 0; }
  .marketplace-market-axis { display: none; }
  .marketplace-mobile-map { display: grid; gap: 8px; }
  .marketplace-mobile-map button { position: relative; min-height: 72px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; overflow: hidden; padding: 12px 13px 14px; border: 1px solid var(--lm-seam-strong); border-radius: 12px; background: color-mix(in srgb, var(--lm-panel-2) 90%, transparent); color: inherit; text-align: left; }
  .marketplace-mobile-map button > span,
  .marketplace-mobile-map button > strong { position: relative; z-index: 1; min-width: 0; }
  .marketplace-mobile-map button b { display: block; overflow-wrap: anywhere; color: var(--lm-matte); font-size: .9375rem; line-height: 1.25; }
  .marketplace-mobile-map button small { display: block; margin-top: 3px; color: var(--lm-matte-3); font-size: .72rem; font-weight: 500; }
  .marketplace-mobile-map button strong { color: var(--lm-matte); font-size: .9375rem; font-variant-numeric: tabular-nums; text-align: right; }
  .marketplace-mobile-map button > i { position: absolute; left: 0; bottom: 0; width: var(--market-cell-share); height: 3px; background: linear-gradient(90deg, var(--lm-lamp-aqua), var(--lm-lamp-iris)); box-shadow: 0 0 12px var(--lm-lamp-aqua); }
  .marketplace-mobile-map button[aria-pressed="true"] { border-color: color-mix(in srgb, var(--lm-lamp-aqua) 52%, var(--lm-seam)); background: linear-gradient(100deg, color-mix(in srgb, var(--lm-lamp-aqua) 10%, var(--lm-panel-2)), color-mix(in srgb, var(--lm-lamp-iris) 6%, var(--lm-panel-2))); box-shadow: 0 0 28px -18px var(--lm-lamp-aqua); }
  .marketplace-finding { display: block; padding: 19px; }
  .marketplace-finding dl { margin-top: 20px; }
  .marketplace-exact-register { margin: 0 14px 20px; }
  .marketplace-exact-register > summary span { display: none; }
  .marketplace-exact-register > div { overflow-x: auto; }
  .marketplace-exact-register table { min-width: 680px; }
  .marketplace-identity-coverage { margin: 0 14px 20px; }
  .marketplace-identity-coverage > header { display: block; padding: 18px 16px; }
  .marketplace-identity-coverage header > strong { display: block; margin-top: 14px; text-align: left; }
  .marketplace-coverage-meter { margin-inline: 16px; }
  .marketplace-coverage-actions { padding: 16px; }
  .marketplace-coverage-register > summary { padding-inline: 16px; }
  .marketplace-coverage-register > summary span { display: none; }
  .marketplace-secondary-grid { grid-template-columns: minmax(0, 1fr); padding: 20px 14px; }
  .marketplace-analysis-panel { padding: 16px 12px; }
  .marketplace-analysis-panel > header { padding-inline: 3px; }
  .marketplace-analysis-panel > header > span { max-width: 12ch; }
  .marketplace-support-chart { min-height: 340px; }
  .marketplace-workspace > .lumen-visual-evidence { padding-inline: 16px; }
  .company-ledger { margin-inline: -5px; border-radius: 14px; }
  .company-ledger > header { display: block; padding: 19px 16px; }
  .company-ledger > header p { margin-top: 9px; text-align: left; }
  .company-ledger .lumen-table-toolbar { padding-inline: 12px; }
  .company-ledger .lumen-table-viewport { overflow: visible; }
  .company-intelligence-table,
  .company-intelligence-table tbody { display: block; min-width: 0; width: 100%; }
  .company-intelligence-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
  .company-intelligence-table tbody tr { display: grid; grid-template-columns: minmax(0, 1fr) minmax(118px, .55fr); gap: 0 15px; padding: 16px; border-bottom: 1px solid var(--lm-seam); }
  .company-intelligence-table tbody :where(th, td) { display: block; padding: 0; border: 0; text-align: left; }
  .company-intelligence-table tbody th { grid-column: 1 / -1; margin-bottom: 14px; }
  .company-intelligence-table tbody td::before { content: attr(data-label); display: block; margin-bottom: 5px; color: var(--lm-matte-3); font-size: .65rem; font-weight: 720; letter-spacing: .07em; text-transform: uppercase; }
  .company-intelligence-table tbody td:nth-child(2) { grid-column: 1; padding: 11px 0; border-top: 1px solid var(--lm-seam); }
  .company-intelligence-table tbody td:nth-child(3) { grid-column: 2; padding: 11px 0; border-top: 1px solid var(--lm-seam); }
  .company-intelligence-table tbody td:nth-child(4) { grid-column: 1; padding: 11px 0; border-top: 1px solid var(--lm-seam); }
  .company-intelligence-table tbody td:nth-child(5) { grid-column: 2; padding: 11px 0; border-top: 1px solid var(--lm-seam); }
  .company-intelligence-table tbody td:nth-child(6) { grid-column: 1 / -1; padding: 11px 0 2px; border-top: 1px solid var(--lm-seam); }
  .company-intelligence-table tbody td:nth-child(7) { grid-column: 1 / -1; margin-top: 9px; }
  .company-open-record { width: 100%; justify-content: space-between; }
}

@media (max-width: 380px) {
  .marketplace-kpis { grid-template-columns: minmax(0, 1fr); }
  .marketplace-kpis section { border-right: 0; border-bottom: 1px solid var(--lm-seam); }
  .marketplace-kpis section:last-child { border-bottom: 0; }
  .company-intelligence-table tbody tr { grid-template-columns: minmax(0, 1fr); }
  .company-intelligence-table tbody td:nth-child(n) { grid-column: 1; }
}

@media (prefers-reduced-motion: no-preference) {
  .marketplace-workspace::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 42%;
    height: 1px;
    left: -44%;
    top: 0;
    background: linear-gradient(90deg, transparent, var(--lm-lamp-aqua), transparent);
    filter: blur(.3px);
    animation: marketplace-scan 12s var(--lm-ease) infinite;
  }
  @keyframes marketplace-scan { 0%, 18% { transform: translateX(0); opacity: 0; } 24% { opacity: .8; } 58% { transform: translateX(345%); opacity: .35; } 64%, 100% { transform: translateX(345%); opacity: 0; } }
}

/* 2026-08-15 — Authored writing instruments. The field is a quiet writing
   well; radiance belongs to the active editing edge, not a permanent bevel. */
body {
  --lm-writing-well: color-mix(in srgb, var(--lm-panel-2) 76%, var(--lm-ink));
  --lm-writing-seam: color-mix(in srgb, var(--lm-matte) 15%, var(--lm-seam));
  --lm-writing-active: color-mix(in srgb, var(--lm-key) 70%, var(--lm-matte));
}

body main :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), textarea, select),
.palette-box :where(input, textarea, select),
dialog :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), textarea, select) {
  appearance: none;
  min-height: 48px;
  padding: 11px 14px;
  border: 1px solid var(--lm-writing-seam);
  border-radius: 10px;
  background: var(--lm-writing-well);
  color: var(--lm-matte);
  box-shadow: inset 0 1px 1px rgb(0 0 0 / .28);
  transition: border-color 140ms var(--lm-ease), background-color 140ms var(--lm-ease), box-shadow 140ms var(--lm-ease);
}

body main :where(select),
.palette-box select,
dialog select {
  padding-right: 42px;
  background-image: url('/static/icons/lumen/select-chevron.svg');
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 13px;
}

body main :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):hover,
.palette-box :where(input, textarea, select):hover,
dialog :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):hover {
  border-color: color-mix(in srgb, var(--lm-matte) 25%, var(--lm-seam));
  background-color: color-mix(in srgb, var(--lm-panel-2) 84%, var(--lm-ink));
}

body main :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):focus,
.palette-box :where(input, textarea, select):focus,
dialog :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select):focus {
  outline: 0;
  border-color: var(--lm-writing-active);
  background-color: color-mix(in srgb, var(--lm-panel-2) 90%, var(--lm-ink));
  box-shadow:
    inset 0 -2px var(--lm-writing-active),
    0 0 0 3px color-mix(in srgb, var(--lm-key) 14%, transparent),
    0 0 22px -12px color-mix(in srgb, var(--lm-key) 70%, transparent);
}

body main :where(input, textarea)::placeholder,
.palette-box :where(input, textarea)::placeholder,
dialog :where(input, textarea)::placeholder {
  color: var(--lm-matte-2);
  opacity: 1;
}

body main :where(input, textarea, select):read-only,
dialog :where(input, textarea, select):read-only {
  border-style: dashed;
  color: var(--lm-matte-2);
  background: color-mix(in srgb, var(--lm-panel-2) 64%, var(--lm-ink));
}

body main :where(input, textarea, select)[aria-invalid="true"],
body main :where(input, textarea, select):user-invalid,
dialog :where(input, textarea, select)[aria-invalid="true"],
dialog :where(input, textarea, select):user-invalid {
  border-color: color-mix(in srgb, var(--lm-critical) 78%, var(--lm-writing-seam));
  box-shadow: inset 0 -2px var(--lm-critical), 0 0 18px -11px var(--lm-critical);
}

body main :where(input, textarea, select):-webkit-autofill,
dialog :where(input, textarea, select):-webkit-autofill {
  -webkit-text-fill-color: var(--lm-matte);
  box-shadow: inset 0 0 0 1000px color-mix(in srgb, var(--lm-panel-2) 88%, var(--lm-key)) !important;
  caret-color: var(--lm-matte);
}

body main textarea,
dialog textarea,
dialog.record-editor-dialog .record-editor-form textarea,
dialog.contact-capture-dialog:not(.record-delete-dialog) textarea,
dialog.profile-edit-dialog:not(.record-delete-dialog) textarea,
dialog.is-workbench-dialog textarea {
  min-height: 104px !important;
  resize: vertical;
}

.record-editor-form,
.record-editor-form:has(> label:nth-of-type(4)),
.record-editor-form:not(:has(> label:nth-of-type(4))) {
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
}

.field::after,
.record-editor-form label::after,
.today-record-classification-note::after {
  display: block;
  content: "";
  width: 22px;
  height: 1px;
  margin-top: 8px;
  background: color-mix(in srgb, var(--lm-fill) 34%, transparent);
  transition: width 140ms var(--lm-ease), background-color 140ms var(--lm-ease), box-shadow 140ms var(--lm-ease);
}

.field:focus-within::after,
.record-editor-form label:focus-within::after,
.today-record-classification-note:focus-within::after {
  width: 56px;
  background: var(--lm-writing-active);
  box-shadow: 0 0 12px color-mix(in srgb, var(--lm-key) 72%, transparent);
}

.today-record-dialog .today-record-close {
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  align-self: start;
  padding: 0;
  border-radius: 12px;
  background-image: url('/static/icons/lumen/close.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px;
}

.today-record-dialog .today-record-close span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}

.interaction-toast {
  --toast-lamp: var(--lm-info);
  border-color: color-mix(in srgb, var(--toast-lamp) 38%, var(--lm-seam));
  background:
    radial-gradient(circle at 24px 50%, color-mix(in srgb, var(--toast-lamp) 20%, transparent), transparent 26px),
    color-mix(in srgb, var(--lm-panel-2) 96%, transparent);
  box-shadow: var(--lm-depth-2), 0 0 34px -17px color-mix(in srgb, var(--toast-lamp) 72%, transparent);
}
.interaction-toast::before { background: var(--toast-lamp); box-shadow: 0 0 9px var(--toast-lamp), 0 0 20px color-mix(in srgb, var(--toast-lamp) 48%, transparent); }
.interaction-toast[data-tone="critical"] { --toast-lamp: var(--lm-critical); }
.interaction-toast[data-tone="positive"] { --toast-lamp: var(--lm-success); }
.interaction-toast[data-tone="warning"] { --toast-lamp: var(--lm-attention); }

/* Marketplace release corrections live last because the shared index/table
   responsive layer above deliberately has broader fallback behavior. */
@media (min-width: 761px) {
  .company-intelligence-table {
    min-width: 1040px;
    table-layout: fixed;
  }
  .company-intelligence-table :where(th, td) { padding-inline: 12px; }
  .company-intelligence-table :is(th, td):nth-child(1) { width: 24%; }
  .company-intelligence-table :is(th, td):nth-child(2) { width: 17%; }
  .company-intelligence-table :is(th, td):nth-child(3) { width: 11%; }
  .company-intelligence-table :is(th, td):nth-child(4) { width: 14%; }
  .company-intelligence-table :is(th, td):nth-child(5) { width: 13%; }
  .company-intelligence-table :is(th, td):nth-child(6) { width: 15%; }
  .company-intelligence-table :is(th, td):nth-child(7) { width: 6%; }
  .company-open-record { padding-inline: 9px; }
}

@media (max-width: 560px) {
  .is-company-index .relationship-filters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    max-width: none;
    padding-bottom: 0;
    overflow: visible;
    scroll-snap-type: none;
  }
  .is-company-index .relationship-filters > :where(label, .filter-reset) {
    min-width: 0;
    width: auto;
    flex: none;
  }
  .is-company-index .relationship-filters label:nth-of-type(5) { grid-column: 1 / -1; }
  .is-company-index .relationship-filters select {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .company-intelligence-table,
  .company-intelligence-table tbody,
  .company-intelligence-table tbody tr,
  .company-intelligence-table tbody :where(th, td) {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    white-space: normal !important;
  }
  .company-intelligence-table tbody td::before {
    overflow-wrap: anywhere;
    line-height: 1.25;
  }
  .company-intelligence-table tbody th > a {
    padding-right: 0;
    border-right: 0;
  }
}

@media (max-width: 760px) {
  .today-record-edit-grid,
  .record-editor-grid,
  .profile-edit-section,
  .contact-capture-form,
  .conference-capture-form {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .record-editor-body,
  .profile-edit-scroll {
    padding: 18px 16px;
  }

  .interaction-toast {
    left: max(12px, env(safe-area-inset-left));
    right: max(12px, env(safe-area-inset-right));
    bottom: calc(84px + env(safe-area-inset-bottom));
    min-width: 0;
    max-width: none;
  }
}

@media (max-width: 390px) {
  body:not(.page-today) main { padding: 18px 16px; }

  body:not(.page-today) .page-header {
    min-height: 128px;
    padding: 21px 18px;
    border-radius: var(--lm-rad-m);
  }

  body:not(.page-today) .page-header h1 {
    font-size: clamp(1.85rem, 10vw, 2.6rem);
  }

  body:not(.page-today) main .card { padding: 16px; }

  body:not(.page-today) .lumen-table-toolbar {
    display: grid;
    min-width: 100%;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    padding: 11px 12px;
  }

  body:not(.page-today) .lumen-table-scope b { font-size: .875rem; }
  body:not(.page-today) .lumen-table-overflow-cue { font-size: .75rem; }
  body:not(.page-today) .lumen-table-density {
    width: 78px;
    min-width: 78px;
    padding-inline: 8px;
  }

  body:not(.page-today) .lumen-instrumented-table :is(th, td) {
    padding-inline: 13px;
  }

  body:not(.page-today) .lumen-instrumented-table :is(th, td):first-child {
    width: 148px;
    max-width: 148px;
  }

  body:not(.page-today) :where(.statrow, .learning-kpis) {
    grid-template-columns: minmax(0, 1fr);
  }

  body:not(.page-today) .statrow .stat { min-height: 74px; }

  dialog.record-editor-dialog,
  dialog.contact-capture-dialog:not(.record-delete-dialog),
  dialog.profile-edit-dialog:not(.record-delete-dialog),
  dialog.is-workbench-dialog {
    inset: 64px 16px auto;
    max-height: calc(100dvh - 132px);
    border-radius: 13px;
  }

  .record-editor-shell { max-height: calc(100dvh - 134px); }
  .record-editor-body,
  .profile-edit-scroll,
  .profile-edit-form,
  .contact-capture-dialog > form { max-height: calc(100dvh - 238px); }

  .destructive-confirm-dialog { width: calc(100vw - 24px); }
  .destructive-confirm-shell header { padding: 22px 20px 18px; }
  .destructive-confirm-shell footer { padding: 16px 20px 20px; }

  body:not(.page-today) .lumen-operating-chart,
  body:not(.page-today) .lumen-operating-chart.is-wide { min-height: 286px; }

  body:not(.page-today) .lumen-visual-instrument { padding: 16px; }
  body:not(.page-today) .lumen-visual-finding { padding: 17px; }
}

@media (pointer: coarse) {
  body:not(.page-today) :where(button, .btn-mini, .btn-secondary, .record-editor-trigger,
    .ledger-verb, summary, main a) {
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.page-today) :where(.page-header, main > .statrow,
    main > .lumen-visual-instrument, main > .card, main > .chat-layout,
    main > .intel-detail-grid, main > .connection-grid,
    .lumen-cell-bar > i::before),
  dialog:is(.record-editor-dialog, .contact-capture-dialog,
    .profile-edit-dialog, .record-delete-dialog)[open],
  dialog.is-workbench-dialog[open] {
    animation: none !important;
  }

  body:not(.page-today) :where(.lumen-instrumented-table tbody tr,
    .lumen-operating-chart, button, a, input, select, textarea, summary),
  dialog :where(button, input, select, textarea, summary) {
    transition-duration: .01ms !important;
  }
}

/* ========================================================================
   ANALYTICAL ENVIRONMENTS · evidence-contract projections
   ======================================================================== */

.lumen-insight-environment {
  position: relative;
  isolation: isolate;
  margin: clamp(24px, 4vw, 44px) 0;
  padding: clamp(18px, 3vw, 30px);
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 22%, var(--lm-seam-strong));
  border-radius: clamp(20px, 3vw, 32px);
  background:
    radial-gradient(68% 88% at 5% 0%, color-mix(in srgb, var(--lm-lamp-iris) 11%, transparent), transparent 66%),
    radial-gradient(76% 96% at 100% 18%, color-mix(in srgb, var(--lm-lamp-aqua) 8%, transparent), transparent 72%),
    linear-gradient(145deg, rgba(15, 18, 24, .94), rgba(8, 11, 16, .97));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .035),
    0 0 42px color-mix(in srgb, var(--lm-lamp-iris) 7%, transparent);
  overflow: clip;
}

.observatory-field .observatory-webgl {
  position: relative;
  z-index: 1;
  display: block;
  background:
    radial-gradient(circle at 50% 48%, rgba(11, 235, 233, .035), transparent 62%),
    linear-gradient(rgba(82, 112, 137, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(82, 112, 137, .035) 1px, transparent 1px);
  background-size: auto, 34px 34px, 34px 34px;
}

.observatory-webgl-labels {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  pointer-events: none;
}

.observatory-webgl-labels span {
  position: absolute;
  left: 0;
  top: 0;
  max-width: 180px;
  padding-left: 9px;
  font-size: .7rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .015em;
  text-shadow: 0 0 10px currentColor, 0 1px 2px #020407;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.lumen-insight-environment::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent 4%, var(--lm-lamp-iris), var(--lm-lamp-rose), var(--lm-lamp-aqua), transparent 96%);
  opacity: .72;
  box-shadow: 0 0 18px color-mix(in srgb, var(--lm-lamp-aqua) 58%, transparent);
  pointer-events: none;
}

.lumen-insight-environment.is-work {
  border-color: color-mix(in srgb, var(--lm-lamp-rose) 24%, var(--lm-seam-strong));
  background:
    radial-gradient(65% 90% at 4% 0%, color-mix(in srgb, var(--lm-lamp-rose) 10%, transparent), transparent 68%),
    radial-gradient(62% 92% at 100% 30%, color-mix(in srgb, var(--lm-lamp-gold) 7%, transparent), transparent 72%),
    linear-gradient(145deg, rgba(17, 15, 22, .95), rgba(8, 11, 16, .97));
}

.lumen-insight-environment.is-compact {
  margin-block: 20px 28px;
}

.lumen-insight-environment-head {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: clamp(18px, 3vw, 28px);
}

.lumen-insight-environment-head > div {
  max-width: 860px;
}

.lumen-insight-environment-head h2 {
  max-width: 840px;
  margin: 5px 0 7px;
  font-family: "Archivo", "IBM Plex Sans", sans-serif;
  font-size: clamp(1.34rem, 2.3vw, 2rem);
  line-height: 1.08;
  letter-spacing: -.025em;
  color: var(--lm-matte);
}

.lumen-insight-environment-head p {
  max-width: 800px;
  margin: 0;
  color: var(--lm-matte-2);
  font-size: clamp(.91rem, 1.25vw, 1rem);
  line-height: 1.58;
}

.lumen-insight-environment-head > a,
.lumen-insight-environment-head > span {
  flex: 0 0 auto;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 10px 14px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 28%, var(--lm-seam-strong));
  border-radius: 999px;
  background: color-mix(in srgb, var(--lm-lamp-aqua) 5%, rgba(10, 14, 19, .9));
  color: color-mix(in srgb, var(--lm-lamp-aqua) 78%, white);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .035em;
  text-decoration: none;
}

.lumen-insight-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(16px, 2.2vw, 24px);
}

.lumen-insight-grid.is-featured {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lumen-insight-grid.is-featured > .lumen-insight.is-hero:first-child {
  grid-column: 1 / -1;
}

.lumen-insight-grid.is-duo {
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr);
}

.lumen-insight {
  position: relative;
  min-width: 0;
  padding: clamp(15px, 2vw, 22px);
  border: 1px solid color-mix(in srgb, var(--lm-lamp-iris) 17%, var(--lm-seam-strong));
  border-radius: 22px;
  background:
    radial-gradient(75% 55% at 50% 0%, color-mix(in srgb, var(--lm-lamp-aqua) 5%, transparent), transparent 72%),
    rgba(8, 11, 15, .76);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025);
  overflow: hidden;
}

.lumen-insight::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(115deg, transparent 20%, rgba(157, 92, 255, .025) 48%, transparent 74%);
  pointer-events: none;
}

.lumen-insight-head {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
}

.lumen-insight-head > div {
  min-width: 0;
  max-width: 740px;
}

.lumen-insight-head h2 {
  margin: 4px 0 5px;
  font-size: clamp(1.08rem, 1.6vw, 1.38rem);
  line-height: 1.16;
  letter-spacing: -.016em;
  color: var(--lm-matte);
}

.lumen-insight-head p {
  margin: 0;
  color: var(--lm-matte-2);
  font-size: .86rem;
  line-height: 1.5;
}

.lumen-insight-variant {
  max-width: 150px;
  color: color-mix(in srgb, var(--lm-lamp-iris) 62%, var(--lm-matte-2));
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: .075em;
  text-align: right;
  text-transform: uppercase;
}

.lumen-insight-plot {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 330px;
  min-height: 260px;
  margin: 12px 0 6px;
  border: 1px solid rgba(92, 111, 130, .16);
  border-radius: 16px;
  background:
    linear-gradient(rgba(78, 104, 126, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(78, 104, 126, .035) 1px, transparent 1px),
    radial-gradient(60% 80% at 50% 45%, rgba(11, 235, 233, .025), transparent 72%),
    rgba(5, 8, 12, .64);
  background-size: 36px 36px, 36px 36px, auto, auto;
  overflow: hidden;
}

.lumen-insight.is-hero .lumen-insight-plot {
  height: clamp(340px, 42vw, 480px);
}

.lumen-insight-plot.is-scrollable-plot {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-color: color-mix(in srgb, var(--lm-lamp-aqua) 40%, transparent) transparent;
  scrollbar-width: thin;
}

.lumen-insight-plot.is-d3-svg svg {
  display: block;
  min-width: 100%;
  font-family: "IBM Plex Sans", sans-serif;
}

.lumen-d3-grid line,
.lumen-d3-axis .tick line,
.lumen-d3-axis path {
  stroke: rgba(102, 123, 142, .18);
}

.lumen-d3-axis text {
  fill: var(--lm-matte-2);
  font-size: 12px;
  font-weight: 600;
}

.lumen-d3-axis .domain {
  stroke-opacity: .25;
}

.lumen-d3-cell {
  fill: rgba(16, 21, 28, .72);
  stroke: rgba(93, 117, 139, .18);
  stroke-width: 1;
}

.lumen-insight-read {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1.15fr 1fr;
  gap: 1px;
  margin-top: 10px;
  border: 1px solid rgba(93, 117, 139, .2);
  border-radius: 14px;
  background: rgba(38, 47, 58, .36);
  overflow: hidden;
}

.lumen-insight-read p {
  min-width: 0;
  margin: 0;
  padding: 12px 13px;
  background: rgba(7, 10, 14, .82);
  color: var(--lm-matte-2);
  font-size: .77rem;
  line-height: 1.45;
}

.lumen-insight-read span {
  display: block;
  margin-bottom: 5px;
  color: var(--lm-matte-3);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .105em;
  text-transform: uppercase;
}

.lumen-insight-read b,
.lumen-insight-read strong {
  display: block;
  color: var(--lm-matte);
  font-size: .82rem;
  line-height: 1.45;
}

.lumen-insight-read strong {
  color: color-mix(in srgb, var(--lm-lamp-aqua) 76%, var(--lm-matte));
}

.lumen-insight-evidence {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.2fr 1fr .72fr .8fr;
  gap: 10px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(93, 117, 139, .15);
}

.lumen-insight-evidence span {
  min-width: 0;
  color: var(--lm-matte-2);
  font-size: .75rem;
  line-height: 1.38;
  overflow-wrap: anywhere;
}

.lumen-insight-evidence b {
  display: block;
  margin-bottom: 3px;
  color: color-mix(in srgb, var(--lm-lamp-iris) 64%, var(--lm-matte-2));
  font-size: .75rem;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.lumen-insight-plot :focus-visible {
  outline: 2px solid var(--lm-lamp-aqua);
  outline-offset: 2px;
}

.today-operating-lens,
.company-relationship-lens,
.people-context-lens,
.company-record-lens,
.person-record-lens {
  background:
    radial-gradient(70% 105% at 0% 6%, color-mix(in srgb, var(--lm-lamp-rose) 9%, transparent), transparent 68%),
    radial-gradient(74% 112% at 100% 32%, color-mix(in srgb, var(--lm-lamp-aqua) 9%, transparent), transparent 70%),
    radial-gradient(52% 76% at 54% 100%, color-mix(in srgb, var(--lm-lamp-iris) 7%, transparent), transparent 72%),
    linear-gradient(145deg, rgba(16, 17, 23, .96), rgba(7, 10, 15, .98));
}

.relationship-insight-register {
  position: relative;
  z-index: 3;
  margin: 8px 0 2px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 16%, var(--lm-seam));
  border-radius: 12px;
  background: rgba(6, 9, 13, .72);
  overflow-x: auto;
  scrollbar-color: color-mix(in srgb, var(--lm-lamp-aqua) 38%, transparent) transparent;
}

.relationship-insight-register > summary {
  position: sticky;
  left: 0;
  min-height: 44px;
  display: flex;
  align-items: center;
  padding: 10px 13px;
  color: color-mix(in srgb, var(--lm-lamp-aqua) 68%, var(--lm-matte));
  font-size: .75rem;
  font-weight: 720;
  letter-spacing: .025em;
  cursor: pointer;
  list-style: none;
}

.relationship-insight-register > summary::-webkit-details-marker { display: none; }

.relationship-insight-register > summary::after {
  content: "+";
  margin-left: auto;
  padding-left: 16px;
  color: var(--lm-lamp-iris);
  font-size: 1rem;
}

.relationship-insight-register[open] > summary::after { content: "−"; }

.relationship-insight-register .lumen-chart-data {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  display: table !important;
  contain: none !important;
  margin: 0 !important;
  clip: auto !important;
  clip-path: none !important;
  overflow: visible !important;
  white-space: normal !important;
  border-collapse: collapse !important;
  border-top: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 13%, var(--lm-seam)) !important;
  color: var(--lm-matte-2);
  font-size: .75rem;
}

.relationship-insight-register .lumen-chart-data caption {
  padding: 10px 12px 6px;
  color: var(--lm-matte-3);
  text-align: left;
}

.relationship-insight-register .lumen-chart-data :where(th, td) {
  min-width: 94px;
  padding: 9px 11px;
  border-bottom: 1px solid color-mix(in srgb, var(--lm-seam) 74%, transparent);
  text-align: left;
  vertical-align: top;
}

.relationship-insight-register .lumen-chart-data th {
  color: var(--lm-matte);
  font-weight: 700;
}

.relationship-insight-register .lumen-chart-data tbody tr:is(:hover, :focus-within) {
  background: color-mix(in srgb, var(--lm-lamp-aqua) 5%, transparent);
}

.lumen-insight-plot.is-d3-svg svg { overflow: visible; }

.lumen-insight-plot.is-d3-svg g[role="link"]:focus-visible circle {
  stroke-width: 3;
  stroke-dasharray: 3 2;
  filter: saturate(1.35) brightness(1.18);
}

@media (max-width: 980px) {
  .lumen-insight-grid.is-duo {
    grid-template-columns: minmax(0, 1fr);
  }

  .lumen-insight-evidence {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .relationship-insight-register .lumen-chart-data :where(th, td) {
    min-width: 86px;
    padding: 8px 9px;
  }
}

@media (max-width: 760px) {
  .lumen-insight-environment {
    width: auto;
    margin: 20px 0 28px;
    padding: 14px;
    border-radius: 24px;
    overflow: hidden;
  }

  .lumen-insight-environment-head {
    align-items: start;
    flex-direction: column;
    gap: 13px;
    margin-bottom: 16px;
  }

  .lumen-insight-environment-head > a,
  .lumen-insight-environment-head > span {
    max-width: 100%;
    white-space: normal;
  }

  .lumen-insight-grid.is-featured,
  .lumen-insight-grid.is-duo {
    grid-template-columns: minmax(0, 1fr);
  }

  .lumen-insight-grid.is-featured > .lumen-insight.is-hero:first-child {
    grid-column: auto;
  }

  .lumen-insight {
    padding: 14px 12px;
    border-radius: 18px;
  }

  .lumen-insight-head {
    display: block;
  }

  .lumen-insight-variant {
    display: block;
    max-width: none;
    margin-top: 8px;
    text-align: left;
  }

  .lumen-insight-plot,
  .lumen-insight.is-hero .lumen-insight-plot {
    height: 330px;
    min-height: 300px;
    margin-top: 10px;
    border-radius: 13px;
  }

  .lumen-insight-read {
    grid-template-columns: minmax(0, 1fr);
  }

  .lumen-insight-read p {
    padding: 11px 12px;
  }

  .lumen-insight-evidence {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 9px 12px;
  }
}

@media (max-width: 390px) {
  .lumen-insight-environment {
    padding: 11px;
    border-radius: 20px;
  }

  .lumen-insight {
    padding: 12px 9px;
  }

  .lumen-insight-plot,
  .lumen-insight.is-hero .lumen-insight-plot {
    height: 310px;
  }

  .lumen-insight-evidence {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .lumen-insight,
  .lumen-insight-plot,
  .lumen-insight-plot * {
    scroll-behavior: auto !important;
    animation: none !important;
    transition-duration: .01ms !important;
  }
}

@media (forced-colors: active) {
  .lumen-insight-environment,
  .lumen-insight,
  .lumen-insight-plot,
  .lumen-insight-read,
  .lumen-insight-evidence {
    border-color: CanvasText;
    background: Canvas;
    box-shadow: none;
  }
}

@media (forced-colors: active) {
  body:not(.page-today) .lumen-table-viewport,
  .stack-index,
  .stack-inspector,
  dialog.is-workbench-dialog { border: 1px solid CanvasText; }
  body:not(.page-today) .lumen-instrumented-table tbody tr.is-selected { outline: 2px solid Highlight; }
  body:not(.page-today) .app-atmosphere i,
  .lumen-visual-instrument::after,
  dialog.is-workbench-dialog::before,
  .lumen-cell-bar > i::before { box-shadow: none; filter: none; }
}

/* --- 2026-08-15 gateway + relationship intelligence --------------------
   Color is a routing grammar here: iris = judgment, aqua = observed linked
   intelligence, rose = human relationship context. Warm semantic hues remain
   reserved for pressure or incomplete coverage. The protected Today flow and
   KPI strip are intentionally absent from every selector in this section. */
body.page-today .today-signal-gateway {
  position: relative;
  isolation: isolate;
  margin: clamp(24px, 3.4vw, 46px) 0;
  padding: clamp(22px, 3vw, 38px);
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / .11);
  border-radius: 22px;
  background:
    radial-gradient(ellipse 46% 80% at 2% 0%, rgb(157 92 255 / .18), rgb(157 92 255 / .035) 54%, transparent 76%),
    radial-gradient(ellipse 42% 72% at 52% 2%, rgb(11 235 233 / .13), rgb(11 235 233 / .025) 52%, transparent 76%),
    radial-gradient(ellipse 42% 82% at 100% 8%, rgb(255 61 139 / .16), rgb(255 61 139 / .025) 52%, transparent 76%),
    linear-gradient(145deg, #15151a, #0b0b0e 68%);
  box-shadow:
    inset 0 1px rgb(255 255 255 / .06),
    0 24px 70px -40px rgb(0 0 0 / .95),
    -22px -12px 72px -56px rgb(157 92 255 / .72),
    22px -10px 74px -58px rgb(255 61 139 / .68);
}
body.page-today .today-signal-gateway::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: .45;
  background-image:
    linear-gradient(rgb(255 255 255 / .022) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 255 255 / .022) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(#000, transparent 88%);
}
body.page-today .today-signal-gateway::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto 32px 0;
  height: 1px;
  background: linear-gradient(90deg, var(--lm-lamp-iris), var(--lm-lamp-aqua) 50%, var(--lm-lamp-rose));
  box-shadow:
    0 -5px 20px rgb(11 235 233 / .32),
    0 -18px 64px rgb(157 92 255 / .16),
    0 -18px 68px rgb(255 61 139 / .14);
}
body.page-today .today-gateway-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: clamp(20px, 2.4vw, 30px);
}
body.page-today .today-gateway-eyebrow,
body.page-today .today-gateway-aperture > header > span {
  color: var(--gateway-lamp, var(--lm-lamp-aqua));
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
body.page-today .today-gateway-head h2 {
  max-width: 18ch;
  margin: 7px 0 8px;
  color: #f7f5f2;
  font-size: clamp(1.75rem, 3.6vw, 3.15rem);
  font-weight: 780;
  line-height: 1.01;
  letter-spacing: -.055em;
}
body.page-today .today-gateway-head p {
  max-width: 75ch;
  margin: 0;
  color: #aaa7a3;
  font-size: .95rem;
  line-height: 1.55;
}
body.page-today .today-gateway-freshness {
  flex: 0 0 auto;
  padding: 8px 11px;
  border: 1px solid rgb(255 255 255 / .08);
  border-radius: 999px;
  color: #8d8a87;
  font-size: .75rem;
}
body.page-today .today-gateway-thread {
  --thread-lamp: var(--lm-lamp-iris);
  position: relative;
  display: grid;
  grid-template-columns: minmax(118px, .42fr) minmax(280px, 1fr) minmax(220px, .72fr) auto;
  align-items: center;
  gap: 12px 20px;
  min-height: 80px;
  margin: 0 0 22px;
  padding: 14px 16px 14px 22px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--thread-lamp) 30%, rgb(255 255 255 / .1));
  border-radius: 14px;
  background: color-mix(in srgb, var(--thread-lamp) 7%, rgb(12 12 16 / .94));
  color: #f7f5f2;
  box-shadow:
    inset 3px 0 color-mix(in srgb, var(--thread-lamp) 76%, transparent),
    inset 0 1px rgb(255 255 255 / .045),
    0 16px 38px -32px color-mix(in srgb, var(--thread-lamp) 82%, transparent);
  transform: translateY(0);
  transition:
    transform 120ms var(--lm-ease-out),
    border-color 120ms var(--lm-ease-out),
    box-shadow 120ms var(--lm-ease-out);
}
body.page-today .today-gateway-thread::after {
  content: "";
  position: absolute;
  left: 16px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--thread-lamp);
  box-shadow:
    0 0 9px var(--thread-lamp),
    0 0 24px color-mix(in srgb, var(--thread-lamp) 62%, transparent);
  transform: translate(-50%, -50%);
}
body.page-today .today-gateway-thread:hover,
body.page-today .today-gateway-thread:focus-visible {
  border-color: color-mix(in srgb, var(--thread-lamp) 62%, rgb(255 255 255 / .12));
  box-shadow:
    inset 3px 0 var(--thread-lamp),
    inset 0 1px rgb(255 255 255 / .07),
    0 20px 44px -28px color-mix(in srgb, var(--thread-lamp) 74%, transparent);
  transform: translateY(-2px);
}
body.page-today .today-gateway-thread:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--thread-lamp) 80%, white);
  outline-offset: 3px;
}
body.page-today .today-gateway-thread-kicker {
  color: var(--thread-lamp);
  font-size: .71rem;
  font-weight: 760;
  letter-spacing: .1em;
  text-transform: uppercase;
}
body.page-today .today-gateway-thread strong {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 10px;
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  line-height: 1.25;
  letter-spacing: -.02em;
}
body.page-today .today-gateway-thread strong b {
  flex: 0 0 auto;
  color: var(--thread-lamp);
  font-size: clamp(1.85rem, 3vw, 2.55rem);
  font-variant-numeric: tabular-nums;
  line-height: .9;
  text-shadow: 0 0 20px color-mix(in srgb, var(--thread-lamp) 48%, transparent);
}
body.page-today .today-gateway-thread small {
  color: #aaa7a3;
  font-size: .78rem;
  line-height: 1.45;
}
body.page-today .today-gateway-thread-action {
  justify-self: end;
  color: #ddd9d5;
  font-size: .78rem;
  font-weight: 720;
  white-space: nowrap;
  transform: translateX(0);
  transition:
    transform 120ms var(--lm-ease-out),
    color 120ms var(--lm-ease-out);
}
body.page-today .today-gateway-thread:hover .today-gateway-thread-action,
body.page-today .today-gateway-thread:focus-visible .today-gateway-thread-action {
  color: #fff;
  transform: translateX(2px);
}
body.page-today .today-gateway-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr) minmax(0, 1.14fr);
  gap: 12px;
}
body.page-today .today-gateway-aperture {
  --gateway-lamp: var(--lm-lamp-aqua);
  position: relative;
  min-width: 0;
  min-height: 390px;
  display: flex;
  flex-direction: column;
  padding: clamp(18px, 2vw, 24px);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--gateway-lamp) 20%, rgb(255 255 255 / .07));
  border-radius: 16px;
  background:
    radial-gradient(ellipse 90% 220px at 0 0, color-mix(in srgb, var(--gateway-lamp) 13%, transparent), color-mix(in srgb, var(--gateway-lamp) 2%, transparent) 58%, transparent 78%),
    linear-gradient(155deg, rgb(255 255 255 / .035), transparent 48%),
    rgb(15 15 19 / .9);
  box-shadow:
    inset 0 1px rgb(255 255 255 / .045),
    inset 3px 0 color-mix(in srgb, var(--gateway-lamp) 68%, transparent),
    -8px 0 34px -24px color-mix(in srgb, var(--gateway-lamp) 78%, transparent);
}
body.page-today .today-gateway-aperture.is-judgment {
  --gateway-lamp: var(--lm-lamp-iris);
  min-height: 414px;
  margin-top: -10px;
  background:
    radial-gradient(ellipse 100% 240px at 0 0, color-mix(in srgb, var(--gateway-lamp) 18%, transparent), color-mix(in srgb, var(--gateway-lamp) 3%, transparent) 60%, transparent 80%),
    linear-gradient(155deg, rgb(255 255 255 / .045), transparent 48%),
    rgb(15 15 19 / .94);
}
body.page-today .today-gateway-aperture.is-intelligence { --gateway-lamp: var(--lm-lamp-aqua); }
body.page-today .today-gateway-aperture.is-relationships { --gateway-lamp: var(--lm-lamp-rose); }
body.page-today .today-gateway-aperture.is-marketplace { --gateway-lamp: var(--lm-lamp-gold); grid-column: 1 / -1; min-height: 250px; }
body.page-today .today-gateway-aperture.is-marketplace > h3 { max-width: 24ch; }
body.page-today .today-marketplace-read { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(180px, .55fr); gap: 12px; margin: 2px 0 20px; }
body.page-today .today-marketplace-read section { padding: 13px 14px; border: 1px solid rgb(255 255 255 / .075); border-radius: 11px; background: rgb(0 0 0 / .18); }
body.page-today .today-marketplace-read span,
body.page-today .today-marketplace-read small { display: block; color: #8d8a87; font-size: .75rem; }
body.page-today .today-marketplace-read b { display: block; margin: 5px 0 3px; color: #f7f5f2; font-size: 1rem; }
body.page-today .today-marketplace-read > i { grid-column: 1 / -1; position: relative; height: 3px; border-radius: 99px; background: rgb(255 255 255 / .07); }
body.page-today .today-marketplace-read > i::after { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--market-delta); max-width: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--lm-lamp-rose), var(--lm-lamp-gold), var(--lm-lamp-mint)); box-shadow: 0 0 14px color-mix(in srgb, var(--lm-lamp-gold) 64%, transparent); }
body.page-today .today-gateway-aperture::after {
  content: "";
  position: absolute;
  inset: auto 20px 0;
  height: 1px;
  background: linear-gradient(90deg, var(--gateway-lamp), transparent 82%);
  box-shadow: 0 -6px 22px color-mix(in srgb, var(--gateway-lamp) 44%, transparent);
}
body.page-today .today-gateway-aperture > header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
body.page-today .today-gateway-aperture > header > b {
  color: #f7f5f2;
  font-size: clamp(1.7rem, 3vw, 2.45rem);
  font-variant-numeric: tabular-nums;
  text-shadow: 0 0 22px color-mix(in srgb, var(--gateway-lamp) 55%, transparent);
}
body.page-today .today-gateway-aperture > h3 {
  max-width: 18ch;
  margin: 24px 0 10px;
  color: #f7f5f2;
  font-size: clamp(1.28rem, 1.9vw, 1.64rem);
  font-weight: 750;
  line-height: 1.15;
  letter-spacing: -.035em;
}
body.page-today .today-gateway-aperture > p {
  margin: 0 0 20px;
  color: #aaa7a3;
  font-size: .9rem;
  line-height: 1.5;
}
body.page-today .today-gateway-aperture > footer {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid rgb(255 255 255 / .065);
}
body.page-today .today-gateway-aperture > footer a {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  padding: 8px 11px;
  border: 1px solid color-mix(in srgb, var(--gateway-lamp) 24%, rgb(255 255 255 / .08));
  border-radius: 9px;
  background: color-mix(in srgb, var(--gateway-lamp) 6%, transparent);
  color: #ddd9d5;
  font-size: .8rem;
  font-weight: 650;
}
body.page-today .today-gateway-aperture > footer a:hover,
body.page-today .today-gateway-aperture > footer a:focus-visible {
  border-color: color-mix(in srgb, var(--gateway-lamp) 54%, transparent);
  background: color-mix(in srgb, var(--gateway-lamp) 12%, transparent);
  color: #fff;
  box-shadow: 0 0 24px -12px color-mix(in srgb, var(--gateway-lamp) 78%, transparent);
}
body.page-today .today-gateway-lanes { display: grid; gap: 9px; margin-bottom: 18px; }
body.page-today .today-gateway-lanes a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  align-items: center;
  min-height: 44px;
  padding: 8px 10px;
  border-radius: 9px;
  color: #aaa7a3;
  font-size: .8rem;
}
body.page-today .today-gateway-lanes a:hover { background: rgb(255 255 255 / .035); color: #f7f5f2; }
body.page-today .today-gateway-lanes i {
  grid-column: 1 / -1;
  width: var(--gateway-share);
  min-width: 4px;
  height: 2px;
  border-radius: 4px;
  background: var(--gateway-lamp);
  box-shadow: 0 0 12px color-mix(in srgb, var(--gateway-lamp) 64%, transparent);
}
body.page-today .today-gateway-lanes b { color: #f7f5f2; font-variant-numeric: tabular-nums; }
body.page-today .today-gateway-lead,
body.page-today .today-gateway-empty {
  min-height: 136px;
  display: grid;
  align-content: center;
  gap: 7px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--gateway-lamp) 20%, rgb(255 255 255 / .06));
  border-radius: 12px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--gateway-lamp) 8%, transparent), transparent 72%);
  color: #f7f5f2;
}
body.page-today .today-gateway-lead > span { color: var(--gateway-lamp); font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
body.page-today .today-gateway-lead > b { font-size: .94rem; line-height: 1.42; }
body.page-today .today-gateway-lead > small,
body.page-today .today-gateway-empty small { color: #95918e; line-height: 1.4; }
body.page-today .today-gateway-pairs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
body.page-today .today-gateway-pairs a { display: grid; gap: 4px; padding: 12px; border-radius: 10px; background: rgb(255 255 255 / .028); color: #aaa7a3; }
body.page-today .today-gateway-pairs b { color: #f7f5f2; font-size: 1.35rem; font-variant-numeric: tabular-nums; }
body.page-today .today-gateway-pairs span { font-size: .75rem; }
body.page-today .today-gateway-relationship-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-bottom: 18px; }
body.page-today .today-gateway-relationship-split > section { min-width: 0; padding: 12px; border: 1px solid rgb(255 255 255 / .06); border-radius: 11px; background: rgb(255 255 255 / .02); }
body.page-today .today-gateway-relationship-split section > header { display: flex; justify-content: space-between; gap: 8px; padding-bottom: 9px; border-bottom: 1px solid rgb(255 255 255 / .06); color: #aaa7a3; font-size: .72rem; }
body.page-today .today-gateway-relationship-split section > header b { color: var(--gateway-lamp); }
body.page-today .today-gateway-relationship-split section > a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 47px; padding: 8px 0; border-bottom: 1px solid rgb(255 255 255 / .045); color: #d6d2ce; }
body.page-today .today-gateway-relationship-split section > a:last-of-type { border-bottom: 0; }
body.page-today .today-gateway-relationship-split section > a span { min-width: 0; }
body.page-today .today-gateway-relationship-split section > a b,
body.page-today .today-gateway-relationship-split section > a small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.page-today .today-gateway-relationship-split section > a b { font-size: .78rem; }
body.page-today .today-gateway-relationship-split section > a small { margin-top: 3px; color: #85817e; font-size: .68rem; }
body.page-today .today-gateway-relationship-split section > a i { flex: 0 0 auto; color: var(--gateway-lamp); font-size: .67rem; font-style: normal; }
body.page-today .today-gateway-relationship-split p { margin: 12px 0 0; color: #85817e; font-size: .75rem; line-height: 1.4; }
body.page-today .today-gateway-evidence { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; margin-top: 18px; padding-top: 14px; border-top: 1px solid rgb(255 255 255 / .065); color: #7f7b78; font-size: .72rem; line-height: 1.45; }

/* Company and People indexes become analytical destinations rather than a
   filter form followed by repeated records. The chart and exact register are
   two readings of the same current result set. */
.intelligence-index-page { min-width: 0; }
.intelligence-index-page .page-header { margin-bottom: 14px; }
.intelligence-index-page .intel-command {
  position: relative;
  gap: 18px;
  padding: clamp(18px, 2.2vw, 26px);
  border-color: var(--lm-seam-strong);
  background:
    radial-gradient(ellipse 40% 160px at 0 0, rgb(255 61 139 / .09), transparent 76%),
    radial-gradient(ellipse 36% 150px at 100% 100%, rgb(11 235 233 / .07), transparent 76%),
    var(--lm-panel);
}
.intelligence-index-page .relationship-query {
  grid-template-columns: minmax(220px, 1fr) auto auto;
  gap: 10px;
}
.intelligence-index-page .relationship-query input { min-height: 52px; font-size: 1rem; }
.intelligence-index-page .relationship-query button { min-height: 52px; }
.intelligence-index-page .relationship-filters { gap: 10px; }
.intelligence-index-page .relationship-filters label {
  min-width: 0;
  padding: 9px 11px;
  border: 1px solid var(--lm-seam);
  border-radius: 10px;
  background: rgb(255 255 255 / .018);
}
.intelligence-index-page .relationship-filters select { min-height: 42px; }
.intelligence-index-page .intel-scope {
  display: grid;
  grid-template-columns: auto minmax(88px, 1fr);
  gap: 4px 9px;
  align-content: center;
  min-width: 214px;
  padding: 14px 16px;
  border: 1px solid var(--lm-seam);
  border-radius: 12px;
  background: rgb(255 255 255 / .022);
  white-space: normal;
}
.intelligence-index-page .intel-scope b { color: var(--lm-matte); font-size: 1.4rem; font-variant-numeric: tabular-nums; }
.intelligence-index-page .intel-scope span { color: var(--lm-matte-2); font-size: .75rem; line-height: 1.3; }
.intelligence-index-page :where(.intel-source-strip, .intel-dark-strip) > a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
}
.relationship-overview { --lm-key: var(--lm-lamp-rose); --lm-fill: var(--lm-lamp-aqua); }
.relationship-overview .relationship-index-chart { min-height: 390px; }
.relationship-overview .relationship-overview-action {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  margin-top: 20px;
  padding: 9px 12px;
  border: 1px solid color-mix(in srgb, var(--lm-key) 30%, var(--lm-seam));
  border-radius: 9px;
  color: var(--lm-matte);
  font-size: .82rem;
  font-weight: 650;
}
.relationship-overview .relationship-overview-action:hover,
.relationship-overview .relationship-overview-action:focus-visible {
  background: color-mix(in srgb, var(--lm-key) 9%, transparent);
  box-shadow: 0 0 24px -12px color-mix(in srgb, var(--lm-key) 78%, transparent);
}
.relationship-overview-facets {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}
.relationship-overview-facets > section {
  min-width: 0;
  padding: 15px;
  border: 1px solid var(--lm-seam);
  border-radius: 13px;
  background: rgb(255 255 255 / .018);
}
.relationship-overview-facets > section > header { display: flex; justify-content: space-between; gap: 12px; color: var(--lm-matte-2); font-size: .78rem; }
.relationship-overview-facets > section > header > span { color: var(--lm-matte); font-weight: 700; }
.relationship-overview-facets > section > header > small { color: var(--lm-matte-3); }
.relationship-overview-facets > section > div { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.relationship-overview-facets [data-facet] {
  --facet-lamp: var(--lm-lamp-cobalt);
  min-height: 44px;
  display: inline-flex;
  align-items: baseline;
  gap: 7px;
  padding: 8px 11px;
  border: 1px solid color-mix(in srgb, var(--facet-lamp) 22%, var(--lm-seam));
  border-radius: 999px;
  background: color-mix(in srgb, var(--facet-lamp) 6%, transparent);
  color: var(--lm-matte-2);
  font-size: .75rem;
}
.relationship-overview-facets a[data-facet]:hover,
.relationship-overview-facets a[data-facet]:focus-visible {
  border-color: color-mix(in srgb, var(--facet-lamp) 56%, transparent);
  background: color-mix(in srgb, var(--facet-lamp) 12%, transparent);
  color: var(--lm-matte);
  box-shadow: 0 0 22px -12px color-mix(in srgb, var(--facet-lamp) 80%, transparent);
}
.relationship-overview-facets [data-facet] b { color: var(--facet-lamp); font-size: 1rem; font-variant-numeric: tabular-nums; text-shadow: 0 0 14px color-mix(in srgb, var(--facet-lamp) 45%, transparent); }
.relationship-overview-facets [data-facet="active"],
.relationship-overview-facets [data-facet="connected"],
.relationship-overview-facets [data-facet="internal"] { --facet-lamp: var(--lm-lamp-mint); }
.relationship-overview-facets [data-facet="prospect"],
.relationship-overview-facets [data-facet="partner"],
.relationship-overview-facets [data-facet="facts"] { --facet-lamp: var(--lm-lamp-aqua); }
.relationship-overview-facets [data-facet="vendor"],
.relationship-overview-facets [data-facet="leadership"] { --facet-lamp: var(--lm-lamp-iris); }
.relationship-overview-facets [data-facet="external"],
.relationship-overview-facets [data-facet="decision-makers"] { --facet-lamp: var(--lm-lamp-rose); }
.relationship-overview-facets [data-facet="paused"],
.relationship-overview-facets [data-facet="needs-context"],
.relationship-overview-facets [data-facet="undated"],
.relationship-overview-facets [data-facet="legal_counsel"] { --facet-lamp: var(--lm-lamp-gold); }
.relationship-overview-facets [data-facet="churned"] { --facet-lamp: var(--lm-critical); }
.relationship-overview-facets [data-facet="team"],
.relationship-overview-facets [data-facet="company"],
.relationship-overview-facets [data-facet="metrics"] { --facet-lamp: var(--lm-lamp-cobalt); }
.relationship-overview-facets [data-facet="unknown"] { --facet-lamp: var(--lm-matte-3); }
.relationship-facet-empty { color: var(--lm-matte-3); font-size: .8rem; }
.relationship-chart-register {
  margin-top: 12px;
  border: 1px solid var(--lm-seam) !important;
  border-radius: 12px;
  background: rgb(255 255 255 / .014);
}
.relationship-chart-register > summary { padding: 0 14px; }
.relationship-chart-register ol { max-height: 430px; margin: 0; padding: 0 14px 12px; overflow: auto; list-style: none; }
.relationship-chart-register li { border-top: 1px solid var(--lm-seam); }
.relationship-chart-register li > a { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 2px; color: var(--lm-matte-2); }
.relationship-chart-register li > a:hover { color: var(--lm-matte); }
.relationship-chart-register li span { min-width: 0; }
.relationship-chart-register li b,
.relationship-chart-register li small { display: block; }
.relationship-chart-register li small { margin-top: 3px; color: var(--lm-matte-3); }
.relationship-chart-register li strong { color: var(--lm-lamp-aqua); font-size: 1.15rem; font-variant-numeric: tabular-nums; }

.intelligence-index-page .intel-index-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.intelligence-index-page .intel-index-card { gap: 14px; padding: 20px; }
.intel-continuity-meter { display: grid; grid-template-columns: auto minmax(72px, 1fr); align-items: center; gap: 12px; }
.intel-continuity-meter > span { color: var(--lm-matte-2); font-size: .78rem; }
.intel-continuity-meter > span b { color: var(--lm-matte); font-size: 1rem; font-variant-numeric: tabular-nums; }
.intel-continuity-meter > i,
.contact-index-signal.is-continuity > i {
  position: relative;
  height: 3px;
  overflow: visible;
  border-radius: 4px;
  background: rgb(255 255 255 / .065);
}
.intel-continuity-meter > i::before,
.contact-index-signal.is-continuity > i::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--continuity);
  min-width: 3px;
  border-radius: inherit;
  background: var(--lm-lamp-aqua);
  box-shadow: 0 0 12px rgb(11 235 233 / .56), 0 0 28px -7px rgb(11 235 233 / .5);
}
.intelligence-index-page .intel-index-facts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.intel-open-cue,
.contact-open-cue { color: var(--lm-lamp-aqua) !important; font-weight: 700; }

.intelligence-index-page .contact-index-list {
  border-color: var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background:
    radial-gradient(ellipse 54% 240px at 0 0, rgb(255 61 139 / .06), transparent 76%),
    var(--lm-panel);
  box-shadow: var(--lm-depth-machined);
}
.intelligence-index-page .contact-index-row {
  grid-template-columns: 46px minmax(200px, 1.25fr) minmax(140px, .8fr) minmax(150px, .6fr) 110px 108px;
  min-height: 88px;
  padding: 14px 18px;
  border-color: var(--lm-seam);
  transition: background var(--lm-motion-fast) var(--lm-ease), box-shadow var(--lm-motion-fast) var(--lm-ease);
}
.intelligence-index-page .contact-index-row:hover,
.intelligence-index-page .contact-index-row:focus-visible {
  background: linear-gradient(90deg, rgb(255 61 139 / .075), rgb(11 235 233 / .025) 72%, transparent);
  box-shadow: inset 3px 0 var(--lm-lamp-rose), -8px 0 28px -20px rgb(255 61 139 / .7);
}
.contact-index-signal.is-continuity { display: grid; grid-template-columns: max-content minmax(max-content, 1fr); align-items: center; gap: 2px 8px; }
.contact-index-signal.is-continuity > small { grid-column: 2; }
.contact-index-signal.is-continuity > i { grid-column: 1 / -1; width: 100%; margin-top: 4px; }
.contact-index-signal > :is(b, small) {
  word-break: normal;
  overflow-wrap: normal;
  white-space: nowrap;
}
.contact-open-cue { text-align: right; font-size: .76rem; }

/* Detail records preserve the same journey color without adding new IA. */
body.page-partner .intel-hero { --lm-key: var(--lm-lamp-aqua); --lm-fill: var(--lm-lamp-rose); }
body.page-contact .contact-command-hero { --lm-key: var(--lm-lamp-rose); --lm-fill: var(--lm-lamp-aqua); }
body.page-contact .contact-local-nav {
  top: 12px;
  border-color: var(--lm-seam-strong);
  background: color-mix(in srgb, var(--lm-panel) 91%, transparent);
  box-shadow: 0 16px 44px -34px #000, 0 0 28px -22px rgb(255 61 139 / .52);
  backdrop-filter: blur(18px) saturate(1.15);
}
body.page-contact .contact-local-nav a:hover,
body.page-contact .contact-local-nav a:focus-visible { color: var(--lm-lamp-rose); }

@media (max-width: 1120px) {
  body.page-today .today-gateway-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-today .today-gateway-aperture.is-judgment { min-height: 390px; margin-top: 0; }
  body.page-today .today-gateway-aperture.is-relationships { grid-column: 1 / -1; min-height: 330px; }
  .intelligence-index-page .intel-index-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .intelligence-index-page .contact-index-row { grid-template-columns: 46px minmax(180px, 1.2fr) minmax(130px, .8fr) minmax(150px, .6fr) 100px; }
  .intelligence-index-page .contact-open-cue { display: none; }
}

@media (max-width: 820px) {
  body.page-today .today-signal-gateway { margin-block: 24px; padding: 20px; border-radius: 18px; }
  body.page-today .today-gateway-head { flex-direction: column; gap: 12px; }
  body.page-today .today-gateway-freshness { align-self: flex-start; }
  body.page-today .today-gateway-thread {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 9px 14px;
    padding-block: 16px;
  }
  body.page-today .today-gateway-thread strong,
  body.page-today .today-gateway-thread small { grid-column: 1 / -1; }
  body.page-today .today-gateway-thread-action { grid-column: 2; grid-row: 1; }
  body.page-today .today-gateway-grid { grid-template-columns: minmax(0, 1fr); }
  body.page-today .today-gateway-aperture,
  body.page-today .today-gateway-aperture.is-relationships,
  body.page-today .today-gateway-aperture.is-marketplace { grid-column: auto; min-height: 0; }
  body.page-today .today-marketplace-read { grid-template-columns: minmax(0, 1fr); }
  body.page-today .today-gateway-relationship-split { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .intelligence-index-page .intel-command { grid-template-columns: minmax(0, 1fr); }
  .intelligence-index-page .intel-scope { grid-template-columns: repeat(3, auto minmax(74px, 1fr)); min-width: 0; }
  .relationship-visual-layout,
  .relationship-overview-facets { grid-template-columns: minmax(0, 1fr); }
  .relationship-overview .relationship-index-chart { min-height: 330px; }
  .intelligence-index-page .contact-index-row {
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 8px 12px;
    padding: 14px;
  }
  .intelligence-index-page .contact-index-name { grid-column: 2; }
  .intelligence-index-page .contact-index-partners { grid-column: 2; }
  .intelligence-index-page .contact-index-row .contact-index-signals {
    grid-column: 2 / -1;
    grid-row: 3;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
    min-width: 0;
    margin-top: 5px;
  }
  .intelligence-index-page .contact-index-row .contact-index-signal {
    display: grid;
    grid-template-columns: max-content minmax(max-content, 1fr);
    grid-column: auto;
    grid-row: auto;
    align-items: baseline;
    gap: 6px;
    min-width: 0;
    text-align: left;
  }
  .intelligence-index-page .contact-index-row .contact-index-signal.is-continuity {
    grid-template-columns: max-content minmax(max-content, 1fr);
  }
  .intelligence-index-page .contact-index-row .contact-index-signal.is-continuity > i {
    grid-column: 1 / -1;
  }
  .intelligence-index-page .contact-index-row time { grid-column: 3; grid-row: 1 / span 2; align-self: center; max-width: 88px; }
}

@media (max-width: 560px) {
  body.page-today .today-signal-gateway { padding: 16px; }
  body.page-today .today-gateway-head h2 { font-size: clamp(1.5rem, 9vw, 2.2rem); }
  body.page-today .today-gateway-thread { grid-template-columns: minmax(0, 1fr); margin-bottom: 18px; }
  body.page-today .today-gateway-thread strong,
  body.page-today .today-gateway-thread small,
  body.page-today .today-gateway-thread-action { grid-column: 1; grid-row: auto; }
  body.page-today .today-gateway-thread-action { justify-self: start; white-space: normal; }
  body.page-today .today-gateway-relationship-split { grid-template-columns: minmax(0, 1fr); }
  body.page-today .today-gateway-aperture > footer { display: grid; grid-template-columns: minmax(0, 1fr); }
  body.page-today .today-gateway-aperture > footer a { width: 100%; }
  .intelligence-index-page .relationship-query { grid-template-columns: minmax(0, 1fr) auto; }
  .intelligence-index-page .relationship-query .live-filter-status { grid-column: 1 / -1; text-align: left; }
  .intelligence-index-page .relationship-filters {
    display: flex;
    max-width: 100%;
    padding-bottom: 6px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline proximity;
    scrollbar-width: thin;
  }
  .intelligence-index-page .relationship-filters > :where(label, .filter-reset) {
    flex: 0 0 min(74vw, 252px);
    scroll-snap-align: start;
  }
  .intelligence-index-page .intel-scope { grid-template-columns: auto minmax(0, 1fr); }
  .intelligence-index-page .intel-index-grid { grid-template-columns: minmax(0, 1fr); }
  .relationship-overview .lumen-visual-head { gap: 12px; }
  .relationship-overview .lumen-variant-label { white-space: normal; }
  .relationship-overview-facets > section > header { align-items: flex-start; flex-direction: column; gap: 4px; }
  .intelligence-index-page .contact-index-row { grid-template-columns: 40px minmax(0, 1fr); }
  .intelligence-index-page .contact-index-row time { grid-column: 2; grid-row: auto; max-width: none; text-align: left; }
  .intelligence-index-page .contact-index-row .contact-index-signals { grid-column: 2; }
}

@media (prefers-reduced-motion: reduce) {
  body.page-today .today-gateway-aperture { animation: none !important; }
  body.page-today .today-gateway-thread,
  body.page-today .today-gateway-thread-action { transition-duration: .01ms !important; }
  body.page-today .today-gateway-thread:hover,
  body.page-today .today-gateway-thread:focus-visible,
  body.page-today .today-gateway-thread:hover .today-gateway-thread-action,
  body.page-today .today-gateway-thread:focus-visible .today-gateway-thread-action { transform: none; }
  .intelligence-index-page :where(.contact-index-row, .intel-index-card),
  .relationship-overview-facets [data-facet] { transition-duration: .01ms !important; }
}

@media (forced-colors: active) {
  body.page-today .today-signal-gateway,
  body.page-today .today-gateway-thread,
  body.page-today .today-gateway-aperture,
  .relationship-overview,
  .intelligence-index-page .contact-index-list { border: 1px solid CanvasText; background: Canvas; box-shadow: none; }
  body.page-today .today-signal-gateway::before,
  body.page-today .today-signal-gateway::after,
  body.page-today .today-gateway-aperture::after,
  body.page-today .today-gateway-thread::after,
  .intel-continuity-meter > i::before,
  .contact-index-signal.is-continuity > i::before { box-shadow: none; }
  .relationship-overview-facets [data-facet],
  body.page-today .today-gateway-thread,
  body.page-today .today-gateway-aperture > footer a { border: 1px solid ButtonText; }
}

/* ========================================================================
   2026-08-15 · PLATFORM COMPLETION

   Every routed surface and interaction state now shares one LUMEN grammar.
   This layer completes controls, command search, navigation skin, workbenches,
   decision boundaries, popovers, table tools, state feedback, and mobile
   behavior. Information architecture and the two protected Today islands are
   intentionally outside this layer.
   ======================================================================== */

body {
  --lm-control-height: 48px;
  --lm-touch-target: 44px;
  --lm-overlay-clearance: 16px;
  --lm-info: var(--lm-lamp-cobalt);
  --lm-attention: var(--lm-lamp-ember);
  --lm-success: var(--lm-lamp-mint);
  --lm-neutral-control:
    linear-gradient(180deg, rgb(255 252 248 / .038), transparent 48%),
    color-mix(in srgb, var(--lm-panel-2) 94%, var(--lm-ink));
  --lm-control-shadow:
    inset 0 1px 0 rgb(255 252 248 / .045),
    inset 0 -1px 0 rgb(0 0 0 / .34),
    0 9px 24px -22px #000;
}

body .sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
}

/* --- complete action grammar ------------------------------------------- */
body:not(.page-today) main button:not(.btn-primary):not(.btn-danger):not(.record-editor-close):not([data-tanstack-sort]),
dialog:not(.record-delete-dialog) button:not(.btn-primary):not(.btn-danger):not(.record-editor-close):not([class*="close"]),
.palette-box button:not(.command-card):not(.palette-close),
.today-coverage-dialog button:not(.record-editor-close),
.today-exception-dialog button:not(.record-editor-close),
.today-intelligence-dialog button:not(.record-editor-close),
.create-operating-dialog button:not(.record-editor-close),
.today-record-dialog button:not(.today-record-close) {
  min-height: var(--lm-touch-target);
  padding: 9px 14px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-s);
  background: var(--lm-neutral-control);
  color: var(--lm-matte);
  box-shadow: var(--lm-control-shadow);
  font-family: var(--font-body);
  font-size: .9375rem;
  font-weight: 650;
  line-height: 1.2;
  transition:
    color var(--lm-motion-fast) var(--lm-ease),
    border-color var(--lm-motion-fast) var(--lm-ease),
    background-color var(--lm-motion-fast) var(--lm-ease),
    box-shadow var(--lm-motion-fast) var(--lm-ease),
    transform var(--lm-motion-fast) var(--lm-ease);
}

body:not(.page-today) main button:not(.btn-primary):not(.btn-danger):not(.record-editor-close):not([data-tanstack-sort]):hover:not(:disabled),
dialog:not(.record-delete-dialog) button:not(.btn-primary):not(.btn-danger):not(.record-editor-close):not([class*="close"]):hover:not(:disabled),
.palette-box button:not(.command-card):not(.palette-close):hover:not(:disabled),
.today-coverage-dialog button:not(.record-editor-close):hover:not(:disabled),
.today-exception-dialog button:not(.record-editor-close):hover:not(:disabled),
.today-intelligence-dialog button:not(.record-editor-close):hover:not(:disabled),
.create-operating-dialog button:not(.record-editor-close):hover:not(:disabled),
.today-record-dialog button:not(.today-record-close):hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--lm-fill) 42%, var(--lm-seam-strong));
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--lm-fill) 9%, transparent), transparent 76%),
    var(--lm-panel-3);
  box-shadow:
    inset 0 1px 0 color-mix(in srgb, var(--lm-fill) 18%, transparent),
    0 0 24px -11px color-mix(in srgb, var(--lm-fill) 58%, transparent);
  transform: translateY(-1px);
}

body :where(button, input, select, textarea)[disabled],
body :where(button, input, select, textarea)[aria-disabled="true"] {
  cursor: not-allowed;
  filter: saturate(.45);
  opacity: .46;
  box-shadow: none;
}

body form[aria-busy="true"] :where(input, select, textarea) {
  opacity: .76;
}

body form[aria-busy="true"] :where(button[type="submit"], button:not([type])) {
  position: relative;
  padding-right: 42px;
}

body form[aria-busy="true"] :where(button[type="submit"], button:not([type]))::after {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  right: 15px;
  top: 50%;
  border: 2px solid color-mix(in srgb, currentColor 28%, transparent);
  border-top-color: currentColor;
  border-radius: 50%;
  animation: lm-control-spin 760ms linear infinite;
  transform: translateY(-50%);
}

@keyframes lm-control-spin {
  to { transform: translateY(-50%) rotate(1turn); }
}

/* --- every writing instrument ------------------------------------------ */
body:not(.page-today) main form label:has(> input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"])),
body:not(.page-today) main form label:has(> textarea),
body:not(.page-today) main form label:has(> select),
dialog form label:has(> input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"])),
dialog form label:has(> textarea),
dialog form label:has(> select) {
  min-width: 0;
  color: var(--lm-matte-2);
  font-family: var(--font-body);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
}

body:not(.page-today) main form label > :where(input, textarea, select),
dialog form label > :where(input, textarea, select) {
  width: 100%;
  margin-top: 7px;
  font-weight: 500;
}

body main input[type="checkbox"],
body main input[type="radio"],
dialog input[type="checkbox"],
dialog input[type="radio"],
.palette-box input[type="checkbox"],
.palette-box input[type="radio"] {
  inline-size: 20px;
  block-size: 20px;
  min-width: 20px;
  min-height: 20px;
  margin: 0;
  accent-color: var(--lm-key);
  color-scheme: dark;
  filter: drop-shadow(0 0 7px color-mix(in srgb, var(--lm-key) 34%, transparent));
}

body main input[type="range"],
dialog input[type="range"] {
  min-height: 44px;
  accent-color: var(--lm-key);
}

body main input[type="file"],
dialog input[type="file"] {
  min-height: 52px;
  padding: 5px;
}

body main input[type="file"]::file-selector-button,
dialog input[type="file"]::file-selector-button {
  min-height: 40px;
  margin-right: 12px;
  padding: 8px 13px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: 8px;
  background: var(--lm-panel-2);
  color: var(--lm-matte);
  font: 650 .875rem/1 var(--font-body);
}

body progress {
  height: 8px;
  overflow: hidden;
  border: 0;
  border-radius: 999px;
  color: var(--lm-key);
  background: var(--lm-panel-3);
  box-shadow: inset 0 1px 2px rgb(0 0 0 / .48);
}
body progress::-webkit-progress-bar { background: var(--lm-panel-3); }
body progress::-webkit-progress-value {
  border-radius: inherit;
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 42%, transparent), var(--lm-key));
  box-shadow: 0 0 14px color-mix(in srgb, var(--lm-key) 48%, transparent);
}
body progress::-moz-progress-bar {
  border-radius: inherit;
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 42%, transparent), var(--lm-key));
  box-shadow: 0 0 14px color-mix(in srgb, var(--lm-key) 48%, transparent);
}

.field-chip,
.status-chip,
body:not(.page-today) .tag {
  border-color: color-mix(in srgb, var(--state-lamp, var(--lm-key)) 34%, var(--lm-seam));
  background: color-mix(in srgb, var(--state-lamp, var(--lm-key)) 9%, transparent);
  color: color-mix(in srgb, var(--state-lamp, var(--lm-key)) 78%, var(--lm-matte));
  box-shadow: inset 0 1px color-mix(in srgb, var(--state-lamp, var(--lm-key)) 18%, transparent);
}

body:not(.page-today) :where(.okc, .is-success, .status-active) { --state-lamp: var(--lm-success); }
body:not(.page-today) :where(.warnc, .is-warning, .status-stale) { --state-lamp: var(--lm-warning); }
body:not(.page-today) :where(.errc, .is-error, .status-failed) { --state-lamp: var(--lm-critical); }

/* Machine evidence remains typographically native to LUMEN: tabular and
   compact, but never a coding-font island. */
body :where(.mono, pre, code) {
  font-family: var(--font-body) !important;
  font-variant-numeric: tabular-nums;
}

body:not(.page-today) main pre,
dialog pre {
  max-width: 100%;
  padding: 16px;
  overflow: auto;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-s);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--lm-fill) 4%, transparent), transparent 55%),
    color-mix(in srgb, var(--lm-ink-deep) 82%, var(--lm-panel));
  color: var(--lm-matte-2);
  font-size: .875rem;
  line-height: 1.6;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

/* --- navigation: aesthetic skin only ----------------------------------- */
@media (min-width: 1024px) {
  body:not(.page-login) .topbar {
    isolation: isolate;
    padding: 24px 15px 16px;
    border-right: 1px solid var(--lm-seam-strong);
    background:
      radial-gradient(ellipse 150% 36% at 8% -2%, color-mix(in srgb, var(--lm-key) 15%, transparent), transparent 72%),
      radial-gradient(ellipse 110% 30% at 100% 46%, color-mix(in srgb, var(--lm-fill) 7%, transparent), transparent 76%),
      color-mix(in srgb, var(--lm-panel) 97%, transparent);
    box-shadow:
      inset -1px 0 rgb(255 252 248 / .02),
      18px 0 62px -48px color-mix(in srgb, var(--lm-key) 42%, transparent),
      12px 0 38px -34px #000;
  }

  body:not(.page-login) .topbar::before {
    content: "";
    position: absolute;
    inset: 0 14px auto;
    z-index: -1;
    height: 1px;
    background: linear-gradient(90deg, var(--lm-key), color-mix(in srgb, var(--lm-key) 22%, transparent) 46%, var(--lm-fill));
    box-shadow:
      0 5px 18px color-mix(in srgb, var(--lm-key) 34%, transparent),
      0 16px 46px color-mix(in srgb, var(--lm-fill) 16%, transparent);
  }

  .topbar .brand {
    position: relative;
    width: calc(100% - 12px);
    margin: 0 6px 18px;
    padding: 4px 5px 15px;
    border-bottom: 1px solid var(--lm-seam);
  }

  .topbar .brand::after {
    content: "";
    position: absolute;
    left: 5px;
    bottom: -1px;
    width: 74px;
    height: 1px;
    background: linear-gradient(90deg, var(--lm-key), transparent);
    box-shadow: 0 0 12px color-mix(in srgb, var(--lm-key) 56%, transparent);
  }

  .brand-mark {
    filter: saturate(1.26) brightness(1.12) drop-shadow(0 0 8px color-mix(in srgb, var(--lm-fill) 36%, transparent));
    opacity: 1;
  }

  .topbar .command-trigger {
    min-height: 48px;
    margin-bottom: 18px;
    padding-inline: 12px;
    border-color: color-mix(in srgb, var(--lm-fill) 24%, var(--lm-seam-strong));
    background:
      radial-gradient(circle at 12% 50%, color-mix(in srgb, var(--lm-fill) 12%, transparent), transparent 38%),
      var(--lm-panel-2);
    box-shadow:
      inset 0 1px rgb(255 252 248 / .04),
      0 0 28px -18px color-mix(in srgb, var(--lm-fill) 54%, transparent);
  }

  .topbar .command-trigger .nav-icon {
    color: var(--lm-fill);
    filter: drop-shadow(0 0 7px color-mix(in srgb, var(--lm-fill) 60%, transparent));
  }

  .topbar :where(.nav-parent, .sidebar-utilities > a, .sidebar-automation > summary) {
    height: auto !important;
    min-height: 44px !important;
    border-radius: 10px;
  }

  .topbar .nav-menu > summary .nav-icon:last-child,
  .topbar .sidebar-automation > summary .nav-icon:last-child {
    opacity: .56;
  }

  .topbar .nav-popover.nav-children {
    margin: 3px 0 7px 13px;
    padding-left: 12px;
  }

  .topbar .nav-popover.nav-children a {
    min-height: 42px;
    border-radius: 8px;
  }

  .topbar .nav-popover.nav-children.nav-work-children > a {
    display: grid;
    align-content: center;
    gap: 3px;
  }

  .topbar .nav-popover.nav-children.nav-work-children > a :is(b, small) {
    display: block;
    min-width: 0;
  }

  .topbar .nav-popover.nav-children a.on {
    box-shadow:
      inset 2px 0 var(--lm-fill),
      -10px 0 26px -17px color-mix(in srgb, var(--lm-fill) 74%, transparent);
  }

  .custody-mini {
    padding: 12px;
    border-color: color-mix(in srgb, var(--lm-key) 18%, var(--lm-seam));
    border-radius: 12px;
    background:
      radial-gradient(ellipse 94% 120% at 0 0, color-mix(in srgb, var(--lm-key) 8%, transparent), transparent 70%),
      color-mix(in srgb, var(--lm-panel-2) 90%, transparent);
    box-shadow: inset 0 1px rgb(255 252 248 / .03);
  }

  .custody-mini > div a {
    border-color: var(--lm-seam);
    background: rgb(255 252 248 / .02);
  }

  .custody-mini > div a:hover,
  .custody-mini > div a:focus-visible {
    border-color: color-mix(in srgb, var(--lm-key) 32%, var(--lm-seam));
    background: color-mix(in srgb, var(--lm-key) 6%, var(--lm-panel-3));
  }
}

.nav-custody-badge {
  border-color: color-mix(in srgb, var(--lm-fill) 34%, var(--lm-seam));
  background: color-mix(in srgb, var(--lm-fill) 9%, transparent);
  color: color-mix(in srgb, var(--lm-fill) 74%, var(--lm-matte));
  box-shadow: 0 0 13px -6px color-mix(in srgb, var(--lm-fill) 64%, transparent);
}

.nav-custody-badge.has-alert {
  border-color: color-mix(in srgb, var(--lm-warning) 46%, var(--lm-seam));
  background: color-mix(in srgb, var(--lm-warning) 10%, transparent);
  color: var(--lm-warning);
  box-shadow: 0 0 14px -5px color-mix(in srgb, var(--lm-warning) 66%, transparent);
}

/* --- command lens ------------------------------------------------------- */
.palette-overlay {
  align-items: flex-start;
  padding:
    max(18px, env(safe-area-inset-top))
    max(16px, env(safe-area-inset-right))
    max(18px, env(safe-area-inset-bottom))
    max(16px, env(safe-area-inset-left));
  background:
    radial-gradient(ellipse 58% 44% at 28% 0, color-mix(in srgb, var(--lm-key) 17%, transparent), transparent 76%),
    radial-gradient(ellipse 52% 38% at 82% 12%, color-mix(in srgb, var(--lm-fill) 13%, transparent), transparent 78%),
    rgb(4 4 6 / .82);
  backdrop-filter: blur(14px) saturate(1.1);
}

.palette-box {
  position: relative;
  width: min(760px, calc(100vw - 32px));
  max-height: min(820px, calc(100dvh - 36px));
  margin-top: clamp(18px, 8vh, 78px);
  padding: 20px;
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-l);
  background:
    radial-gradient(ellipse 72% 260px at 0 0, color-mix(in srgb, var(--lm-key) 15%, transparent), transparent 76%),
    radial-gradient(ellipse 58% 220px at 100% 0, color-mix(in srgb, var(--lm-fill) 10%, transparent), transparent 78%),
    var(--lm-panel);
  box-shadow:
    var(--lm-depth-2),
    0 0 120px -38px color-mix(in srgb, var(--lm-key) 44%, transparent),
    0 0 96px -44px color-mix(in srgb, var(--lm-fill) 40%, transparent);
}

.palette-box::before {
  content: "";
  position: absolute;
  inset: 0 24px auto;
  height: 1px;
  background: linear-gradient(90deg, var(--lm-key), transparent 46%, var(--lm-fill));
  box-shadow:
    0 7px 18px color-mix(in srgb, var(--lm-key) 42%, transparent),
    0 16px 42px color-mix(in srgb, var(--lm-fill) 19%, transparent);
}

.palette-kicker {
  min-height: 34px;
  padding: 2px 4px 12px;
  border-bottom: 1px solid var(--lm-seam);
  color: var(--lm-matte-2);
  font-size: .75rem;
  letter-spacing: .12em;
}

.palette-kicker small { color: var(--lm-matte-3); font-size: .75rem; }
.palette-top { gap: 10px; margin-top: 14px; }
.palette-top > .palette-field { row-gap: 0; }

.palette-box #palette-input {
  min-height: 54px;
  padding-left: 46px;
  border-color: color-mix(in srgb, var(--lm-fill) 26%, var(--lm-seam-strong));
  border-radius: 13px;
  background-color: color-mix(in srgb, var(--lm-panel-3) 92%, var(--lm-ink));
  background-image: url('/static/icons/lumen/search.svg');
  background-repeat: no-repeat;
  background-position: 16px center;
  background-size: 18px;
  box-shadow:
    inset 0 1px rgb(255 252 248 / .045),
    0 0 28px -18px color-mix(in srgb, var(--lm-fill) 56%, transparent);
}

.palette-box #palette-input:focus {
  border-color: var(--lm-focus);
  box-shadow:
    0 0 0 2px var(--lm-ink),
    0 0 0 4px var(--lm-focus),
    0 0 38px -10px color-mix(in srgb, var(--lm-focus) 66%, transparent);
}

.palette-close {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  display: grid;
  place-items: center;
  border: 1px solid var(--lm-seam-strong);
  border-radius: 12px;
  background-color: var(--lm-panel-3);
  background-image: url('/static/icons/lumen/close.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 17px;
  color: transparent;
  font-size: 0;
}

.palette-close:hover,
.palette-close:focus-visible {
  border-color: color-mix(in srgb, var(--lm-fill) 44%, var(--lm-seam-strong));
  background-color: #29292e;
  box-shadow: var(--lm-fill-radiance);
}

.palette-home {
  gap: 10px;
  padding: 14px 0 6px;
}

.command-card {
  --command-lamp: var(--lm-fill);
  position: relative;
  min-height: 88px;
  padding: 15px;
  overflow: hidden;
  border-color: var(--lm-seam);
  border-radius: 13px;
  background:
    radial-gradient(ellipse 76% 120% at 0 0, color-mix(in srgb, var(--command-lamp) 7%, transparent), transparent 72%),
    rgb(255 252 248 / .022);
  box-shadow: inset 0 1px rgb(255 252 248 / .025);
  transition:
    transform var(--lm-motion-fast) var(--lm-ease),
    border-color var(--lm-motion-fast) var(--lm-ease),
    background-color var(--lm-motion-fast) var(--lm-ease),
    box-shadow var(--lm-motion-fast) var(--lm-ease);
}

.command-card-hero { --command-lamp: var(--lm-key); }
.command-card::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--command-lamp) 78%, transparent), transparent);
  opacity: .46;
}

.command-card:hover,
.command-card:focus-visible {
  border-color: color-mix(in srgb, var(--command-lamp) 42%, var(--lm-seam));
  background:
    radial-gradient(ellipse 88% 140% at 0 0, color-mix(in srgb, var(--command-lamp) 13%, transparent), transparent 72%),
    var(--lm-panel-2);
  box-shadow:
    inset 0 1px color-mix(in srgb, var(--command-lamp) 16%, transparent),
    0 0 26px -13px color-mix(in srgb, var(--command-lamp) 58%, transparent);
  transform: translateY(-2px);
}

.command-glyph {
  border-color: color-mix(in srgb, var(--command-lamp) 30%, var(--lm-seam));
  background: color-mix(in srgb, var(--command-lamp) 8%, transparent);
  color: var(--command-lamp);
  box-shadow: 0 0 16px -8px color-mix(in srgb, var(--command-lamp) 70%, transparent);
}

.command-card b { color: var(--lm-matte); font-size: .9375rem; }
.command-card small { color: var(--lm-matte-2); font-size: .8125rem; }

#palette-results {
  max-height: min(50dvh, 520px);
  margin-top: 10px;
  padding-right: 4px;
  scrollbar-color: var(--lm-matte-4) transparent;
}

.pal-group {
  margin: 14px 4px 6px;
  color: var(--lm-matte-3);
  font-size: .75rem;
  letter-spacing: .1em;
}

.pal-item {
  min-height: 48px;
  display: flex;
  align-items: center;
  padding: 11px 13px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: var(--lm-matte-2);
}

.pal-item:hover,
.pal-item:focus-visible,
.pal-item.is-selected {
  border-color: color-mix(in srgb, var(--lm-fill) 30%, var(--lm-seam));
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-fill) 10%, transparent), transparent 78%), var(--lm-panel-2);
  color: var(--lm-matte);
  box-shadow: inset 2px 0 var(--lm-fill);
  text-decoration: none;
}

.palette-recents {
  margin-top: 14px;
  padding-top: 13px;
  border-top-color: var(--lm-seam);
}
.palette-recents a {
  min-height: 48px;
  border-color: var(--lm-seam);
  background: rgb(255 252 248 / .018);
}
.palette-recents a:hover,
.palette-recents a:focus-visible {
  border-color: color-mix(in srgb, var(--lm-key) 30%, var(--lm-seam));
  background: color-mix(in srgb, var(--lm-key) 6%, var(--lm-panel-2));
}
.palette-foot {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--lm-seam);
  color: var(--lm-matte-3);
}
.palette-foot b { color: var(--lm-matte-2); }

/* --- table quality-of-life --------------------------------------------- */
body:not(.page-today) .lumen-table-tools {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
}

body:not(.page-today) .lumen-table-filter {
  position: relative;
  display: block;
  min-width: min(240px, 32vw);
  margin: 0;
}

body:not(.page-today) .lumen-table-filter input {
  width: 100%;
  min-height: 44px;
  margin: 0;
  padding: 9px 12px 9px 38px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-s);
  background-color: color-mix(in srgb, var(--lm-panel-3) 92%, var(--lm-ink));
  background-image: url('/static/icons/lumen/search.svg');
  background-repeat: no-repeat;
  background-position: 12px center;
  background-size: 15px;
  color: var(--lm-matte);
  box-shadow: inset 0 1px rgb(255 252 248 / .035);
  font-size: .875rem;
}

body:not(.page-today) .lumen-table-filter input:focus {
  outline: 2px solid var(--lm-focus);
  outline-offset: 2px;
  border-color: var(--lm-focus);
}

body:not(.page-today) .lumen-table-no-results {
  position: sticky;
  left: 0;
  display: flex;
  min-height: 92px;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 20px;
  border-top: 1px solid var(--lm-seam);
  background:
    radial-gradient(ellipse 50% 120% at 50% 100%, color-mix(in srgb, var(--lm-key) 8%, transparent), transparent 76%),
    var(--lm-panel);
  color: var(--lm-matte-2);
}
body:not(.page-today) .lumen-table-no-results[hidden] { display: none; }
body:not(.page-today) .lumen-table-no-results button { min-height: 44px; }

body:not(.page-today) table.lumen-instrumented-table.is-filtered tbody tr:not([hidden]) {
  animation: lm-filter-row 220ms var(--lm-ease-out) both;
}

@keyframes lm-filter-row {
  from { opacity: .45; transform: translateX(-5px); }
  to { opacity: 1; transform: translateX(0); }
}

body:not(.page-today) .table-scroll,
body:not(.page-today) .metric-table-wrap,
body:not(.page-today) .model-catalog-scroll {
  max-width: 100%;
  overflow: auto;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background: var(--lm-panel);
  box-shadow: var(--lm-depth-1);
  scrollbar-color: var(--lm-matte-4) var(--lm-panel);
  scrollbar-gutter: stable;
}

/* --- contextual popovers and disclosures ------------------------------- */
.mywork-pop {
  width: min(340px, calc(100vw - 32px));
  max-height: min(62dvh, 480px);
  border-color: var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background:
    radial-gradient(ellipse 84% 150px at 0 0, color-mix(in srgb, var(--lm-key) 14%, transparent), transparent 74%),
    var(--lm-panel);
  box-shadow:
    var(--lm-depth-2),
    0 0 54px -28px color-mix(in srgb, var(--lm-key) 52%, transparent);
}
.mywork-pop > header {
  min-height: 58px;
  padding: 10px 8px 10px 16px;
  border-bottom-color: var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel-2) 90%, transparent);
}
.mywork-pop > header b { color: var(--lm-matte); font-size: .9375rem; }
.mywork-pop-close {
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: var(--lm-matte-2);
}
.mywork-pop-close:hover,
.mywork-pop-close:focus-visible {
  border-color: var(--lm-seam-strong);
  background: var(--lm-panel-3);
  color: var(--lm-matte);
}
.mywork-pop-option {
  min-height: 50px;
  padding: 12px 16px;
  border-bottom-color: var(--lm-seam);
  color: var(--lm-matte-2);
  font-size: .875rem;
}
.mywork-pop-option:hover,
.mywork-pop-option:focus-visible,
.mywork-pop-option.is-current {
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 10%, transparent), transparent 76%), var(--lm-panel-2);
  color: var(--lm-matte);
  box-shadow: inset 2px 0 var(--lm-key);
}

body:not(.page-today) main details > summary::marker,
dialog details > summary::marker { color: var(--lm-fill); }

body:not(.page-today) main details[open],
dialog details[open] {
  border-color: color-mix(in srgb, var(--lm-fill) 20%, var(--lm-seam));
}

/* --- state and feedback surfaces --------------------------------------- */
.interaction-toast {
  left: auto;
  right: max(16px, env(safe-area-inset-right));
  bottom: max(16px, env(safe-area-inset-bottom));
  min-width: min(320px, calc(100vw - 32px));
  max-width: min(460px, calc(100vw - 32px));
  min-height: 50px;
  display: flex;
  align-items: center;
  padding: 12px 16px 12px 46px;
  border: 1px solid color-mix(in srgb, var(--lm-info) 34%, var(--lm-seam));
  border-radius: 13px;
  background:
    radial-gradient(circle at 24px 50%, color-mix(in srgb, var(--lm-info) 19%, transparent), transparent 26px),
    color-mix(in srgb, var(--lm-panel-2) 96%, transparent);
  color: var(--lm-matte);
  box-shadow:
    var(--lm-depth-2),
    0 0 34px -18px color-mix(in srgb, var(--lm-info) 66%, transparent);
  font-size: .875rem;
  backdrop-filter: blur(16px);
}
.interaction-toast::before {
  content: "";
  position: absolute;
  left: 21px;
  top: calc(50% - 4px);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--lm-info);
  box-shadow: 0 0 9px var(--lm-info), 0 0 20px color-mix(in srgb, var(--lm-info) 48%, transparent);
}
.interaction-toast[hidden] { display: none; }

body:not(.page-today) :where(.record-status-banner, .operator-notice, .staff-flash, .flash),
dialog :where(.operator-notice, .record-status-banner),
.today-record-dialog :where(.operator-notice, .record-status-banner) {
  --notice-lamp: var(--lm-info);
  position: relative;
  min-height: 54px;
  display: flex;
  align-items: flex-start;
  gap: 10px 16px;
  margin-block: 12px;
  padding: 14px 16px 14px 20px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--notice-lamp) 26%, var(--lm-seam));
  border-radius: 12px;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--notice-lamp) 9%, transparent), transparent 58%),
    var(--lm-panel-2);
  color: var(--lm-matte-2);
  box-shadow: inset 3px 0 var(--notice-lamp), 0 0 30px -24px color-mix(in srgb, var(--notice-lamp) 58%, transparent);
}
body:not(.page-today) :where(.record-status-banner, .operator-notice, .staff-flash, .flash) b,
dialog :where(.operator-notice, .record-status-banner) b { color: var(--lm-matte); }

body:not(.page-today) :where(.state-empty-line, .meeting-empty, .metric-empty,
  .contact-inline-empty, .contact-empty-prepare, .dossier-honest-empty,
  .crm-empty, .operator-empty, .relationship-facet-empty, .replay-empty-copy) {
  position: relative;
  min-height: 88px;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 18px 18px 18px 22px;
  overflow: hidden;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-m);
  background:
    radial-gradient(ellipse 48% 140% at 0 50%, color-mix(in srgb, var(--lm-fill) 7%, transparent), transparent 76%),
    color-mix(in srgb, var(--lm-panel-2) 88%, transparent);
  color: var(--lm-matte-2);
}
body:not(.page-today) :where(.state-empty-line, .meeting-empty, .metric-empty,
  .contact-inline-empty, .contact-empty-prepare, .dossier-honest-empty,
  .crm-empty, .operator-empty, .relationship-facet-empty, .replay-empty-copy)::before {
  content: "";
  position: absolute;
  inset: 18px auto 18px 0;
  width: 2px;
  border-radius: 2px;
  background: var(--lm-fill);
  box-shadow: 0 0 13px color-mix(in srgb, var(--lm-fill) 62%, transparent);
}

body :where([data-lumen-state="loading"], .is-loading, .skeleton) {
  position: relative;
  overflow: hidden;
}
body :where([data-lumen-state="loading"], .is-loading, .skeleton)::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(105deg, transparent 24%, rgb(255 252 248 / .055) 44%, color-mix(in srgb, var(--lm-fill) 7%, transparent) 50%, transparent 70%);
  transform: translateX(-100%);
  animation: lm-state-shimmer 1.35s var(--lm-ease) infinite;
}
@keyframes lm-state-shimmer { to { transform: translateX(100%); } }

body :where(.has-verdict-error, [data-lumen-state="error"]) {
  --notice-lamp: var(--lm-critical);
}

.capture-status:not(:empty),
.ledger-verb-status:not(:empty),
.appr-decide-status:not(:empty),
.adjudication-status:not(:empty),
.rec-verb-status:not(:empty) {
  display: block;
  margin-top: 8px;
  color: var(--lm-matte-2);
  font-size: .875rem;
  line-height: 1.45;
}

/* --- page-specific interaction gaps ------------------------------------ */
body:not(.page-today) .appr-card {
  border-left: 1px solid var(--lm-seam);
  background:
    radial-gradient(ellipse 48% 220px at 0 0, color-mix(in srgb, var(--lm-key) 8%, transparent), transparent 78%),
    var(--lm-panel);
}
.appr-head {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--lm-seam);
}
.appr-verbs {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--lm-seam);
}
.appr-verbs > button { flex: 1 1 150px; }

body.page-login .login-card::after {
  content: "";
  position: absolute;
  inset: 0 28px auto;
  height: 1px;
  background: linear-gradient(90deg, var(--lm-key), transparent 52%, var(--lm-fill));
  box-shadow: 0 8px 30px color-mix(in srgb, var(--lm-key) 34%, transparent);
}
body.page-login .login-card form { display: grid; gap: 12px; }
body.page-login .login-card input { min-height: 52px; }

body.page-chat .maestro-server-shell {
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  background:
    radial-gradient(ellipse 70% 42% at 12% 0, color-mix(in srgb, var(--lm-key) 12%, transparent), transparent 76%),
    radial-gradient(ellipse 54% 36% at 100% 0, color-mix(in srgb, var(--lm-fill) 9%, transparent), transparent 78%),
    var(--lm-panel);
  box-shadow: var(--lm-depth-machined), 0 0 70px -46px color-mix(in srgb, var(--lm-key) 54%, transparent);
}

/* --- mobile is a sibling target ---------------------------------------- */
@media (max-width: 1023px) {
  body:not(.page-login) .topbar {
    border-bottom-color: var(--lm-seam-strong);
    background:
      radial-gradient(ellipse 46% 120% at 0 0, color-mix(in srgb, var(--lm-key) 10%, transparent), transparent 74%),
      color-mix(in srgb, var(--lm-panel) 97%, transparent);
    box-shadow: 0 14px 38px -34px color-mix(in srgb, var(--lm-key) 52%, transparent);
  }

  body:not(.page-login) .mobile-dock {
    padding:
      7px
      max(6px, env(safe-area-inset-right))
      max(7px, env(safe-area-inset-bottom))
      max(6px, env(safe-area-inset-left));
    border-top-color: var(--lm-seam-strong);
    background: color-mix(in srgb, var(--lm-panel) 96%, transparent);
    box-shadow:
      0 -18px 46px -38px #000,
      0 -14px 44px -40px color-mix(in srgb, var(--lm-fill) 56%, transparent);
    backdrop-filter: blur(18px) saturate(1.12);
  }

  body:not(.page-login) .mobile-dock > :is(a, button) {
    position: relative;
    min-height: 52px;
    border-radius: 11px;
    color: var(--lm-matte-3);
  }

  body:not(.page-login) .mobile-dock > :is(a, button).on,
  body:not(.page-login) .mobile-dock > :is(a, button).is-open {
    color: var(--lm-matte);
    background:
      radial-gradient(ellipse 90% 120% at 50% 100%, color-mix(in srgb, var(--lm-key) 13%, transparent), transparent 76%),
      var(--lm-panel-3);
    box-shadow: inset 0 -2px var(--lm-key), 0 0 20px -13px color-mix(in srgb, var(--lm-key) 72%, transparent);
  }

  body:not(.page-login) .mobile-dock > :is(a, button).on .nav-icon,
  body:not(.page-login) .mobile-dock > :is(a, button).is-open .nav-icon {
    color: var(--lm-key);
    filter: drop-shadow(0 0 7px color-mix(in srgb, var(--lm-key) 66%, transparent));
  }

  body:not(.page-login) .mobile-more-panel {
    left: max(16px, env(safe-area-inset-left));
    right: max(16px, env(safe-area-inset-right));
    bottom: calc(76px + env(safe-area-inset-bottom));
    width: auto;
    max-height: min(76dvh, 720px);
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--lm-seam-strong);
    border-radius: 22px;
    background:
      radial-gradient(ellipse 72% 230px at 0 0, color-mix(in srgb, var(--lm-key) 13%, transparent), transparent 76%),
      radial-gradient(ellipse 56% 180px at 100% 0, color-mix(in srgb, var(--lm-fill) 8%, transparent), transparent 78%),
      var(--lm-panel);
    box-shadow:
      var(--lm-depth-2),
      0 0 72px -38px color-mix(in srgb, var(--lm-key) 48%, transparent);
  }

  body:not(.page-login) .mobile-more-panel > header {
    position: sticky;
    top: 0;
    z-index: 3;
    min-height: 64px;
    padding: 14px 12px 12px 18px;
    border-bottom: 1px solid var(--lm-seam);
    background: color-mix(in srgb, var(--lm-panel-2) 92%, transparent);
    backdrop-filter: blur(16px);
  }

  .mobile-sheet-handle {
    position: absolute;
    width: 42px;
    height: 3px;
    top: 7px;
    left: calc(50% - 21px);
    border-radius: 999px;
    background: linear-gradient(90deg, var(--lm-key), var(--lm-fill));
    box-shadow: 0 0 12px color-mix(in srgb, var(--lm-key) 52%, transparent);
  }

  .mobile-more-panel > header button {
    width: 44px;
    height: 44px;
    border: 1px solid var(--lm-seam-strong);
    border-radius: 10px;
    background: var(--lm-panel-3);
    color: var(--lm-matte-2);
  }

  .mobile-sheet-view {
    max-height: calc(76dvh - 116px);
    padding: 12px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-color: var(--lm-matte-4) transparent;
  }

  .mobile-more-panel a {
    min-height: 56px;
    padding: 10px 12px;
    border: 1px solid transparent;
    border-radius: 11px;
  }

  .mobile-more-panel a:hover,
  .mobile-more-panel a:focus-visible,
  .mobile-more-panel a.on {
    border-color: color-mix(in srgb, var(--lm-key) 22%, var(--lm-seam));
    background: linear-gradient(90deg, color-mix(in srgb, var(--lm-key) 9%, transparent), transparent 78%), var(--lm-panel-2);
    box-shadow: inset 2px 0 var(--lm-key);
  }
}

@media (max-width: 760px) {
  .palette-overlay {
    align-items: stretch;
    padding: max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));
  }

  .palette-box {
    width: 100%;
    max-height: calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    margin-top: 0;
    padding: 16px;
    border-radius: 18px;
  }

  .palette-kicker small { display: none; }
  .palette-home,
  .palette-recents > div { grid-template-columns: minmax(0, 1fr); }
  .command-card { min-height: 76px; }
  #palette-results { max-height: calc(100dvh - 210px); }
  .palette-foot { display: none; }

  body:not(.page-today) .lumen-table-toolbar {
    position: sticky;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    min-width: 100%;
  }
  body:not(.page-today) .lumen-table-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    justify-content: stretch;
  }
  body:not(.page-today) .lumen-table-filter { min-width: 0; }
  body:not(.page-today) .lumen-table-filter input { min-height: 46px; }
  body:not(.page-today) .lumen-table-density {
    min-width: 84px;
    padding-inline: 10px;
  }
  body:not(.page-today) .lumen-table-no-results {
    align-items: stretch;
    flex-direction: column;
    text-align: center;
  }

  /* Routine editors become inset bottom workbenches. They retain origin
     context above the sheet and never impersonate a full-screen page. */
  dialog.record-editor-dialog:not(.record-delete-dialog),
  dialog.contact-capture-dialog:not(.record-delete-dialog),
  dialog.profile-edit-dialog:not(.record-delete-dialog),
  dialog.is-workbench-dialog:not(.record-delete-dialog) {
    inset:
      auto
      max(16px, env(safe-area-inset-right))
      max(16px, env(safe-area-inset-bottom))
      max(16px, env(safe-area-inset-left));
    width: auto;
    max-height: min(84dvh, 780px);
    border-radius: 22px;
    box-shadow:
      var(--lm-depth-2),
      0 -24px 80px -48px color-mix(in srgb, var(--lm-key) 50%, transparent);
  }

  dialog.record-editor-dialog:not(.record-delete-dialog)::after,
  dialog.contact-capture-dialog:not(.record-delete-dialog)::after,
  dialog.profile-edit-dialog:not(.record-delete-dialog)::after,
  dialog.is-workbench-dialog:not(.record-delete-dialog)::after {
    content: "";
    position: absolute;
    z-index: 5;
    width: 44px;
    height: 3px;
    top: 8px;
    left: calc(50% - 22px);
    border-radius: 999px;
    background: linear-gradient(90deg, var(--lm-key), var(--lm-fill));
    box-shadow: 0 0 12px color-mix(in srgb, var(--lm-key) 48%, transparent);
    pointer-events: none;
  }

  .record-editor-shell { max-height: min(84dvh, 780px); }
  .record-editor-head,
  .contact-capture-dialog-head { padding-top: 24px; }
  .record-editor-body,
  .profile-edit-scroll,
  .profile-edit-form,
  .contact-capture-dialog > form { max-height: calc(min(84dvh, 780px) - 116px); }

  .interaction-toast {
    left: max(16px, env(safe-area-inset-left));
    right: max(16px, env(safe-area-inset-right));
    bottom: calc(84px + env(safe-area-inset-bottom));
    min-width: 0;
    max-width: none;
  }

  .appr-verbs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .appr-verbs > button { width: 100%; }
}

@media (max-width: 390px) {
  .palette-box { padding: 14px; border-radius: 16px; }
  .palette-box #palette-input { min-height: 52px; padding-left: 42px; }
  .palette-close { width: 46px; height: 46px; flex-basis: 46px; }
  .command-card { min-height: 72px; padding: 13px; }
  .mobile-more-panel {
    left: max(12px, env(safe-area-inset-left));
    right: max(12px, env(safe-area-inset-right));
    bottom: calc(72px + env(safe-area-inset-bottom));
    border-radius: 18px;
  }
  dialog.record-editor-dialog:not(.record-delete-dialog),
  dialog.contact-capture-dialog:not(.record-delete-dialog),
  dialog.profile-edit-dialog:not(.record-delete-dialog),
  dialog.is-workbench-dialog:not(.record-delete-dialog) {
    inset:
      auto
      max(12px, env(safe-area-inset-right))
      max(12px, env(safe-area-inset-bottom))
      max(12px, env(safe-area-inset-left));
    max-height: min(88dvh, 780px);
    border-radius: 18px;
  }
  .record-editor-shell { max-height: min(88dvh, 780px); }
  .record-editor-body,
  .profile-edit-scroll,
  .profile-edit-form,
  .contact-capture-dialog > form { max-height: calc(min(88dvh, 780px) - 108px); }
  .appr-verbs { grid-template-columns: minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
  body form[aria-busy="true"] :where(button[type="submit"], button:not([type]))::after,
  body :where([data-lumen-state="loading"], .is-loading, .skeleton)::after,
  body:not(.page-today) table.lumen-instrumented-table.is-filtered tbody tr:not([hidden]) {
    animation: none !important;
  }
}

@media (forced-colors: active) {
  .palette-box,
  .mobile-more-panel,
  .mywork-pop,
  .interaction-toast,
  body:not(.page-today) .lumen-table-no-results,
  dialog.record-editor-dialog:not(.record-delete-dialog) {
    border: 2px solid CanvasText;
    background: Canvas;
    color: CanvasText;
    box-shadow: none;
  }
  .command-card,
  .pal-item,
  .mobile-more-panel a,
  .mywork-pop-option { border: 1px solid ButtonText; }
  body form[aria-busy="true"] :where(button[type="submit"], button:not([type]))::after,
  body :where([data-lumen-state="loading"], .is-loading, .skeleton)::after,
  .interaction-toast::before { display: none; }
}

/* Final mobile geometry guards. These sit at the end of the LUMEN cascade so
   old detail-page offsets cannot place local navigation beneath the shell or
   let an in-context Today workbench exceed the visual viewport. */
@media (max-width: 760px) {
  body.page-contact .contact-local-nav {
    top: calc(58px + env(safe-area-inset-top));
  }

  dialog.record-editor-dialog:not(.record-delete-dialog),
  dialog.contact-capture-dialog:not(.record-delete-dialog),
  dialog.profile-edit-dialog:not(.record-delete-dialog),
  dialog.is-workbench-dialog:not(.record-delete-dialog) {
    left: max(12px, env(safe-area-inset-left));
    right: max(12px, env(safe-area-inset-right));
    width: calc(100vw - max(12px, env(safe-area-inset-left)) - max(12px, env(safe-area-inset-right)));
    max-width: calc(100vw - max(12px, env(safe-area-inset-left)) - max(12px, env(safe-area-inset-right)));
    margin-inline: 0;
    box-sizing: border-box;
  }

  body.page-today dialog.today-record-dialog.is-workbench-dialog {
    left: max(12px, env(safe-area-inset-left));
    right: max(12px, env(safe-area-inset-right));
    width: calc(100vw - max(12px, env(safe-area-inset-left)) - max(12px, env(safe-area-inset-right)));
    max-width: calc(100vw - max(12px, env(safe-area-inset-left)) - max(12px, env(safe-area-inset-right)));
    margin-inline: 0;
    transform: none;
  }

  dialog.record-editor-dialog[open]:not(.record-delete-dialog),
  dialog.contact-capture-dialog[open]:not(.record-delete-dialog),
  dialog.profile-edit-dialog[open]:not(.record-delete-dialog),
  dialog.is-workbench-dialog[open]:not(.record-delete-dialog) {
    animation-name: lm-workbench-arrive-mobile;
    transform-origin: center bottom;
  }

  body.page-stack .stack-index .ledger-table thead [data-tanstack-sort] {
    min-width: 44px;
    white-space: nowrap;
  }
}

/* Contact intelligence — identity, next move, evidence, then administration. */
body.page-contact .contact-command-hero {
  padding-block: 20px 22px;
}

body.page-contact .contact-command-topline {
  margin-bottom: 16px;
}

.contact-command-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.contact-command-actions > .contact-add-context {
  min-height: 44px;
  padding: 10px 18px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-rose) 58%, var(--lm-seam));
  border-radius: 11px;
  background: linear-gradient(105deg, color-mix(in srgb, var(--lm-lamp-rose) 18%, var(--lm-panel-2)), color-mix(in srgb, var(--lm-lamp-aqua) 8%, var(--lm-panel-2)));
  color: var(--lm-matte);
  box-shadow: inset 3px 0 var(--lm-lamp-rose), 0 0 24px -15px var(--lm-lamp-rose);
  font-weight: 700;
}

.contact-utility-menu {
  position: relative;
  margin: 0;
  padding: 0;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.contact-utility-menu > summary {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid var(--lm-seam-strong);
  border-radius: 11px;
  background: var(--lm-panel-2) url('/static/icons/lumen/more.svg') center / 19px no-repeat;
  cursor: pointer;
  list-style: none;
}
.contact-utility-menu > summary::-webkit-details-marker { display: none; }
.contact-utility-menu > summary span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.contact-utility-menu[open] > summary {
  border-color: color-mix(in srgb, var(--lm-lamp-aqua) 48%, var(--lm-seam));
  box-shadow: 0 0 18px -10px var(--lm-lamp-aqua);
}

.contact-utility-menu > div {
  position: absolute;
  z-index: 40;
  top: calc(100% + 8px);
  right: 0;
  width: min(310px, calc(100vw - 32px));
  display: grid;
  padding: 7px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: 14px;
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--lm-lamp-aqua) 9%, transparent), transparent 44%),
    color-mix(in srgb, var(--lm-panel) 97%, transparent);
  box-shadow: var(--lm-depth-2), 0 0 38px -24px var(--lm-lamp-aqua);
  backdrop-filter: blur(18px) saturate(1.18);
}

.contact-utility-menu > div > :where(a, button) {
  min-height: 54px;
  display: grid;
  justify-items: start;
  gap: 3px;
  padding: 10px 12px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--lm-matte);
  text-align: left;
  text-decoration: none;
  box-shadow: none;
}
.contact-utility-menu > div > :where(a, button):hover,
.contact-utility-menu > div > :where(a, button):focus-visible {
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-lamp-aqua) 9%, transparent), transparent);
}
.contact-utility-menu > div > :where(a, button) b { font-size: .9375rem; }
.contact-utility-menu > div > :where(a, button) small { color: var(--lm-matte-3); font-size: .8125rem; font-weight: 500; }
.contact-utility-menu > div > .record-delete-trigger { color: color-mix(in srgb, var(--lm-critical) 78%, var(--lm-matte)); }

body.page-contact .contact-command-identity {
  align-items: center;
}
body.page-contact .contact-command-identity h1 {
  font-size: clamp(2rem, 4vw, 2.85rem);
}
body.page-contact .contact-signal-strip {
  min-width: min(100%, 430px);
  border-color: var(--lm-seam-strong);
  background: color-mix(in srgb, var(--lm-panel-2) 74%, transparent);
}

.contact-hero-next-move {
  display: grid;
  grid-template-columns: minmax(150px, .42fr) minmax(260px, 1fr) auto;
  align-items: center;
  gap: 12px 18px;
  margin-top: 16px;
  padding: 12px 14px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 22%, var(--lm-seam));
  border-radius: 12px;
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-lamp-rose) 7%, transparent), color-mix(in srgb, var(--lm-lamp-aqua) 6%, transparent));
  color: var(--lm-matte);
  text-decoration: none;
  box-shadow: inset 2px 0 var(--lm-lamp-aqua), 0 0 28px -24px var(--lm-lamp-aqua);
}
.contact-hero-next-move > span { color: var(--lm-lamp-aqua); font-size: .75rem; font-weight: 720; letter-spacing: .08em; text-transform: uppercase; }
.contact-hero-next-move > b { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .9375rem; }
.contact-hero-next-move > small { color: var(--lm-matte-2); font-size: .8125rem; white-space: nowrap; }

body.page-contact .contact-local-nav > div {
  display: flex;
  overflow-x: auto;
  scrollbar-width: none;
}
body.page-contact .contact-local-nav a {
  flex: 0 0 auto;
  min-height: 48px;
  padding: 15px 13px 12px;
  border: 0;
  border-bottom: 2px solid transparent;
  white-space: nowrap;
}

body.page-contact .contact-workspace {
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .72fr);
  grid-template-areas: "prepare prepare" "signals context" "crm record" "history history";
  gap: 16px;
}

.contact-supporting-intelligence {
  display: grid;
  gap: 16px;
  margin-top: 20px;
}
.contact-supporting-intelligence > * { margin: 0; }

@media (max-width: 1050px) {
  body.page-contact .contact-workspace {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "prepare" "signals" "crm" "context" "record" "history";
  }
}

@media (max-width: 760px) {
  body.page-contact .contact-command-hero {
    padding: 14px 14px 16px;
  }
  body.page-contact .contact-command-topline {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
  }
  body.page-contact .contact-command-topline > .intel-back {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .contact-command-actions { margin-left: auto; }
  .contact-command-actions > .contact-add-context { padding-inline: 14px; white-space: nowrap; }
  .contact-utility-menu > div { position: fixed; top: calc(116px + env(safe-area-inset-top)); right: 12px; }

  body.page-contact .contact-command-identity {
    display: grid;
    gap: 12px;
  }
  body.page-contact .contact-command-identity .intel-hero-main {
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: center;
  }
  body.page-contact .contact-command-identity h1 { margin-top: 2px; font-size: 1.72rem; }
  body.page-contact .contact-command-identity p { font-size: .9375rem; line-height: 1.35; }
  body.page-contact .contact-command-identity .page-eyebrow { font-size: .6875rem; }
  body.page-contact .contact-command-identity .profile-tags { margin-top: 7px; }

  body.page-contact .contact-signal-strip {
    width: 100%;
    display: flex;
    overflow-x: auto;
    border-radius: 10px;
    scrollbar-width: none;
  }
  body.page-contact .contact-signal-strip > span {
    flex: 0 0 118px;
    min-height: 58px;
    padding: 9px 11px;
    border: 0;
    border-right: 1px solid var(--lm-seam) !important;
  }
  body.page-contact .contact-signal-strip > span:last-child { border-right: 0 !important; }
  body.page-contact .contact-signal-strip b { font-size: 1rem; }

  .contact-hero-next-move {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 10px;
    margin-top: 12px;
    padding: 11px 12px;
  }
  .contact-hero-next-move > span { grid-column: 1 / -1; font-size: .6875rem; }
  .contact-hero-next-move > b { font-size: .875rem; }
  .contact-hero-next-move > small { font-size: 0; }
  .contact-hero-next-move > small::after { content: "→"; font-size: 1rem; color: var(--lm-lamp-aqua); }

  body.page-contact .contact-local-nav {
    top: calc(58px + env(safe-area-inset-top));
    display: block;
    padding: 0 8px !important;
  }
  body.page-contact .contact-local-nav > div {
    width: 100%;
    display: flex !important;
    grid-template-columns: none !important;
    gap: 0 !important;
    overflow-x: auto !important;
  }
  body.page-contact .contact-local-nav a {
    min-height: 44px;
    padding: 13px 11px 10px;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    white-space: nowrap;
  }
  body.page-contact .contact-local-nav > span { display: none; }

  body.page-contact .contact-workspace { gap: 12px; }
  body.page-contact .contact-workspace > .card,
  body.page-contact .contact-context-rail > .card { padding: 16px 14px; }
  body.page-contact .contact-prepare-grid,
  body.page-contact .contact-prepare-lists { grid-template-columns: minmax(0, 1fr); }
  body.page-contact .contact-prepare-grid article { border-right: 0; border-bottom: 1px solid var(--lm-seam); }
  body.page-contact .contact-prepare-grid article:last-child { border-bottom: 0; }
}

/* Company intelligence — a single analytical instrument, not chart-card wallpaper. */
.partner-supporting-intelligence {
  display: grid;
  gap: 16px;
  margin-block: 18px;
}
.partner-supporting-intelligence > * { margin: 0; }

.buyer-analysis-workbench {
  position: relative;
  margin-bottom: 14px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 24%, var(--lm-seam));
  border-radius: 16px;
  background:
    radial-gradient(ellipse 70% 260px at 100% 0, color-mix(in srgb, var(--lm-lamp-aqua) 9%, transparent), transparent 76%),
    radial-gradient(ellipse 48% 220px at 0 100%, color-mix(in srgb, var(--lm-lamp-gold) 6%, transparent), transparent 78%),
    color-mix(in srgb, var(--lm-panel-2) 92%, var(--lm-ink));
  box-shadow: inset 0 1px rgb(255 255 255 / .035), 0 0 44px -34px var(--lm-lamp-aqua);
}
.buyer-analysis-workbench::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: linear-gradient(var(--lm-lamp-gold), var(--lm-lamp-aqua) 58%, transparent);
  box-shadow: 0 0 16px var(--lm-lamp-aqua);
}

.buyer-analysis-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 20px 16px;
  border-bottom: 1px solid var(--lm-seam);
}
.buyer-analysis-head h3 { margin: 5px 0 4px; font-size: 1.25rem; }
.buyer-analysis-head p { max-width: 68ch; margin: 0; color: var(--lm-matte-2); font-size: .9375rem; }

.buyer-analysis-tabs {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 4px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: 11px;
  background: color-mix(in srgb, var(--lm-panel) 82%, transparent);
}
.buyer-analysis-tabs button {
  min-height: 44px !important;
  padding: 8px 13px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--lm-matte-2) !important;
  box-shadow: none !important;
  white-space: nowrap;
}
.buyer-analysis-tabs button[aria-selected="true"] {
  background: linear-gradient(100deg, color-mix(in srgb, var(--lm-lamp-aqua) 14%, var(--lm-panel-3)), color-mix(in srgb, var(--lm-lamp-gold) 5%, var(--lm-panel-3))) !important;
  color: var(--lm-matte) !important;
  box-shadow: inset 0 -2px var(--lm-lamp-aqua), 0 0 18px -12px var(--lm-lamp-aqua) !important;
}

.buyer-analysis-standing {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  border-bottom: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel) 42%, transparent);
}
.buyer-analysis-standing > span {
  min-width: 0;
  display: grid;
  gap: 5px;
  padding: 14px 20px;
  border-right: 1px solid var(--lm-seam);
}
.buyer-analysis-standing > span:last-child { border-right: 0; }
.buyer-analysis-standing small { color: var(--lm-lamp-aqua); font-size: .6875rem; font-weight: 720; letter-spacing: .08em; text-transform: uppercase; }
.buyer-analysis-standing b { color: var(--lm-matte); font-size: .9375rem; line-height: 1.4; }

.buyer-analysis-panel {
  display: grid;
  grid-template-columns: minmax(180px, .32fr) minmax(0, 1fr);
  gap: 18px;
  padding: 20px;
}
.buyer-analysis-panel[hidden] { display: none; }
.buyer-analysis-copy {
  padding: 14px 0 0 2px;
}
.buyer-analysis-copy h4 { margin: 7px 0 8px; color: var(--lm-matte); font-size: 1.08rem; }
.buyer-analysis-copy p { margin: 0; color: var(--lm-matte-2); font-size: .9375rem; line-height: 1.55; }
.buyer-analysis-plot { min-width: 0; }
.buyer-analysis-plot .buyer-chart { min-height: 246px; }

.buyer-chart-selection {
  min-height: 42px;
  display: flex;
  align-items: center;
  margin: 4px 0 0;
  padding: 9px 12px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 20%, var(--lm-seam));
  border-radius: 9px;
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-lamp-aqua) 7%, transparent), transparent);
  color: var(--lm-matte);
  font-size: .875rem;
  font-variant-numeric: tabular-nums;
}

.buyer-analysis-panel table.lumen-chart-data {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: table !important;
  contain: none !important;
  margin: 12px 0 0 !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  white-space: normal !important;
  border: 1px solid var(--lm-seam) !important;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 10px;
  color: var(--lm-matte-2);
  font-size: .8125rem;
}
.buyer-analysis-panel table.lumen-chart-data caption {
  padding: 10px 11px;
  color: var(--lm-matte-2);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-align: left;
  text-transform: uppercase;
}
.buyer-analysis-panel table.lumen-chart-data :where(th, td) {
  padding: 9px 11px;
  border-top: 1px solid var(--lm-seam);
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.buyer-analysis-panel table.lumen-chart-data :where(th, td):first-child { text-align: left; }
.buyer-analysis-panel table.lumen-chart-data th { color: var(--lm-matte-3); font-weight: 650; }
.buyer-analysis-panel table.lumen-chart-data tbody tr:hover { background: color-mix(in srgb, var(--lm-lamp-aqua) 5%, transparent); }

.buyer-analysis-source {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 20px;
  border-top: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel) 45%, transparent);
}
.buyer-analysis-source span { color: var(--lm-lamp-gold); font-size: .75rem; font-weight: 700; }
.buyer-analysis-source small { color: var(--lm-matte-3); font-size: .75rem; text-align: right; }

.company-revenue-workbench {
  position: relative;
  isolation: isolate;
  margin: 18px 0 22px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 32%, var(--lm-seam));
  border-radius: 18px;
  background:
    radial-gradient(ellipse 62% 290px at 100% 0, color-mix(in srgb, var(--lm-lamp-aqua) 13%, transparent), transparent 72%),
    radial-gradient(ellipse 52% 260px at 0 100%, color-mix(in srgb, var(--lm-lamp-blue) 10%, transparent), transparent 76%),
    linear-gradient(145deg, color-mix(in srgb, var(--lm-panel-2) 96%, var(--lm-ink)), color-mix(in srgb, var(--lm-panel) 92%, var(--lm-ink)));
  box-shadow: inset 0 1px rgb(255 255 255 / .045), 0 22px 54px -44px var(--lm-lamp-blue), 0 0 56px -46px var(--lm-lamp-aqua);
}
.company-revenue-workbench::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0 9% auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--lm-lamp-blue), var(--lm-lamp-aqua), transparent);
  box-shadow: 0 0 13px var(--lm-lamp-aqua);
  pointer-events: none;
}
.company-revenue-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding: 22px 22px 18px;
}
.company-revenue-head > div { min-width: 0; }
.company-revenue-head h2 { margin: 6px 0 5px; color: var(--lm-matte); font-size: clamp(1.25rem, 2vw, 1.55rem); }
.company-revenue-head p { max-width: 72ch; margin: 0; color: var(--lm-matte-2); font-size: .9375rem; line-height: 1.55; }
.company-revenue-stamp {
  flex: 0 0 auto;
  display: grid;
  gap: 3px;
  min-width: 150px;
  padding: 11px 13px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 22%, var(--lm-seam));
  border-radius: 11px;
  background: color-mix(in srgb, var(--lm-panel-3) 80%, transparent);
  box-shadow: inset 0 1px rgb(255 255 255 / .035), 0 0 22px -18px var(--lm-lamp-aqua);
}
.company-revenue-stamp b { color: var(--lm-lamp-aqua); font-size: .75rem; letter-spacing: .06em; text-transform: uppercase; }
.company-revenue-stamp small { color: var(--lm-matte-3); font-size: .75rem; }

.company-revenue-tabs {
  display: flex;
  gap: 6px;
  padding: 8px 14px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  border-block: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel) 52%, transparent);
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, var(--lm-lamp-aqua) 32%, transparent) transparent;
}
.company-revenue-tabs button {
  flex: 0 0 auto;
  min-height: 44px !important;
  padding: 8px 14px !important;
  border: 1px solid transparent !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: var(--lm-matte-2) !important;
  box-shadow: none !important;
  white-space: nowrap;
}
.company-revenue-tabs button:is(:hover, :focus-visible) {
  border-color: color-mix(in srgb, var(--lm-lamp-aqua) 24%, var(--lm-seam)) !important;
  color: var(--lm-matte) !important;
}
.company-revenue-tabs button[aria-selected="true"] {
  border-color: color-mix(in srgb, var(--lm-lamp-aqua) 38%, var(--lm-seam)) !important;
  background: linear-gradient(100deg, color-mix(in srgb, var(--lm-lamp-blue) 13%, var(--lm-panel-3)), color-mix(in srgb, var(--lm-lamp-aqua) 10%, var(--lm-panel-3))) !important;
  color: var(--lm-matte) !important;
  box-shadow: inset 0 -2px var(--lm-lamp-aqua), 0 0 21px -13px var(--lm-lamp-aqua) !important;
}

.company-revenue-standing {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  border-bottom: 1px solid var(--lm-seam);
}
.company-revenue-standing > span {
  min-width: 0;
  display: grid;
  gap: 5px;
  padding: 14px 22px;
  border-right: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel-2) 42%, transparent);
}
.company-revenue-standing > span:last-child { border-right: 0; }
.company-revenue-standing small { color: var(--lm-lamp-aqua); font-size: .6875rem; font-weight: 720; letter-spacing: .08em; text-transform: uppercase; }
.company-revenue-standing b { color: var(--lm-matte); font-size: .9375rem; line-height: 1.45; }

.company-revenue-panel {
  display: grid;
  grid-template-columns: minmax(210px, .31fr) minmax(0, 1fr);
  gap: 22px;
  padding: 22px;
}
.company-revenue-panel[hidden] { display: none; }
.company-revenue-copy { padding: 15px 0 0 2px; }
.company-revenue-copy h3 { max-width: 25ch; margin: 8px 0 10px; color: var(--lm-matte); font-size: 1.12rem; line-height: 1.35; }
.company-revenue-copy p { max-width: 42ch; margin: 0; color: var(--lm-matte-2); font-size: .9375rem; line-height: 1.6; }
.company-revenue-plot { min-width: 0; }
.company-revenue-chart { min-height: 246px; }
.company-revenue-selection {
  min-height: 44px;
  display: flex;
  align-items: center;
  margin: 5px 0 0;
  padding: 10px 12px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 24%, var(--lm-seam));
  border-radius: 10px;
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-lamp-aqua) 8%, transparent), color-mix(in srgb, var(--lm-lamp-blue) 4%, transparent), transparent);
  color: var(--lm-matte);
  font-size: .875rem;
  font-variant-numeric: tabular-nums;
}

.company-revenue-panel table.lumen-chart-data {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: table !important;
  contain: none !important;
  margin: 13px 0 0 !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  white-space: normal !important;
  border: 1px solid var(--lm-seam-strong) !important;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 11px;
  color: var(--lm-matte-2);
  font-size: .8125rem;
}
.company-revenue-panel table.lumen-chart-data caption {
  padding: 10px 12px;
  background: color-mix(in srgb, var(--lm-panel-3) 62%, transparent);
  color: var(--lm-matte-2);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-align: left;
  text-transform: uppercase;
}
.company-revenue-panel table.lumen-chart-data :where(th, td) {
  padding: 10px 12px;
  border-top: 1px solid var(--lm-seam);
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.company-revenue-panel table.lumen-chart-data :where(th, td):first-child { text-align: left; }
.company-revenue-panel table.lumen-chart-data th { color: var(--lm-matte-3); font-weight: 680; }
.company-revenue-panel table.lumen-chart-data tbody tr:is(:hover, :focus-within) { background: color-mix(in srgb, var(--lm-lamp-aqua) 6%, transparent); }

.company-revenue-source {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 22px;
  border-top: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel) 48%, transparent);
}
.company-revenue-source span { color: var(--lm-lamp-aqua); font-size: .75rem; font-weight: 700; }
.company-revenue-source small { color: var(--lm-matte-3); font-size: .75rem; text-align: right; }

body.page-partner .buyer-command {
  margin-top: 16px;
}

@media (max-width: 820px) {
  .buyer-analysis-head { align-items: stretch; flex-direction: column; }
  .buyer-analysis-tabs { width: 100%; }
  .buyer-analysis-standing { grid-template-columns: minmax(0, 1fr); }
  .buyer-analysis-standing > span { border-right: 0; border-bottom: 1px solid var(--lm-seam); }
  .buyer-analysis-standing > span:last-child { border-bottom: 0; }
  .buyer-analysis-panel { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .buyer-analysis-copy { padding-top: 0; }
  .company-revenue-head { align-items: stretch; flex-direction: column; gap: 14px; }
  .company-revenue-stamp { width: fit-content; }
  .company-revenue-standing { grid-template-columns: minmax(0, 1fr); }
  .company-revenue-standing > span { border-right: 0; border-bottom: 1px solid var(--lm-seam); }
  .company-revenue-standing > span:last-child { border-bottom: 0; }
  .company-revenue-panel { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .company-revenue-copy { padding-top: 0; }
  .company-revenue-copy h3 { max-width: 36ch; }
}

@media (max-width: 560px) {
  .buyer-analysis-workbench { margin-inline: -3px; border-radius: 14px; }
  .buyer-analysis-head { padding: 15px 14px 13px; }
  .buyer-analysis-head h3 { font-size: 1.12rem; }
  .buyer-analysis-head p { font-size: .875rem; }
  .buyer-analysis-tabs button { padding-inline: 8px !important; font-size: .8125rem !important; }
  .buyer-analysis-standing > span { padding: 12px 14px; }
  .buyer-analysis-standing b { font-size: .875rem; }
  .buyer-analysis-panel { padding: 15px 10px 16px; }
  .buyer-analysis-copy { padding-inline: 4px; }
  .buyer-analysis-copy p { font-size: .875rem; }
  .buyer-chart-selection { margin-inline: 4px; font-size: .8125rem; }
  .buyer-analysis-panel table.lumen-chart-data {
    display: block !important;
    width: calc(100% - 8px) !important;
    max-width: calc(100% - 8px) !important;
    margin-inline: 4px !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
  }
  .buyer-analysis-panel table.lumen-chart-data :where(th, td) { padding: 9px; }
  .buyer-analysis-source { display: grid; padding: 11px 14px; }
  .buyer-analysis-source small { text-align: left; line-height: 1.4; }
  .company-revenue-workbench { margin-inline: -3px; border-radius: 14px; }
  .company-revenue-head { padding: 17px 14px 15px; }
  .company-revenue-head p { font-size: .875rem; }
  .company-revenue-stamp { width: 100%; min-width: 0; }
  .company-revenue-tabs { padding-inline: 10px; scroll-padding-inline: 10px; }
  .company-revenue-tabs button { padding-inline: 12px !important; font-size: .8125rem !important; }
  .company-revenue-standing > span { padding: 12px 14px; }
  .company-revenue-standing b { font-size: .875rem; }
  .company-revenue-panel { padding: 16px 10px 17px; }
  .company-revenue-copy { padding-inline: 4px; }
  .company-revenue-copy h3 { font-size: 1.02rem; }
  .company-revenue-copy p { font-size: .875rem; }
  .company-revenue-selection { margin-inline: 4px; font-size: .8125rem; }
  .company-revenue-panel table.lumen-chart-data {
    display: table !important;
    width: calc(100% - 8px) !important;
    max-width: calc(100% - 8px) !important;
    margin-inline: 4px !important;
    overflow: hidden !important;
    table-layout: fixed;
    white-space: normal !important;
  }
  .company-revenue-panel table.lumen-chart-data :where(th, td) { padding: 9px 7px; overflow-wrap: anywhere; }
  .company-revenue-panel table.lumen-chart-data :where(th, td):first-child {
    width: 45%;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
  }
  .company-revenue-panel table.lumen-chart-data :where(th, td):nth-child(2) { width: 33%; }
  .company-revenue-panel table.lumen-chart-data :where(th, td):nth-child(3) { width: 22%; }
  .company-revenue-source { display: grid; padding: 11px 14px; }
  .company-revenue-source small { text-align: left; line-height: 1.45; }
}

/* Settings carry descriptive copy before and after their controls. The shared
   field underline uses a named grid area, which creates implicit columns once
   those settings rows deliberately return to normal document order. Settings
   already receive the complete focus rim, so suppress that duplicate mark and
   keep the composition in one readable lane. */
body:not(.page-today) .settings-thresholds > .setting-threshold.field::after {
  display: none;
  content: none;
}

body:not(.page-today) .settings-thresholds .setting-threshold textarea {
  min-height: 180px !important;
}

@media (max-width: 560px) {
  body:not(.page-today) .settings-thresholds .setting-threshold textarea {
    min-height: 160px !important;
  }
}

/* Final corrective specificity: later legacy toast rules still used the info
   lamp directly, so semantic tone owns the complete material here. */
.interaction-toast[data-tone] {
  --toast-lamp: var(--lm-info);
  border-color: color-mix(in srgb, var(--toast-lamp) 40%, var(--lm-seam));
  background:
    radial-gradient(circle at 24px 50%, color-mix(in srgb, var(--toast-lamp) 21%, transparent), transparent 26px),
    color-mix(in srgb, var(--lm-panel-2) 96%, transparent);
  box-shadow: var(--lm-depth-2), 0 0 34px -17px color-mix(in srgb, var(--toast-lamp) 72%, transparent);
}
.interaction-toast[data-tone]::before {
  background: var(--toast-lamp);
  box-shadow: 0 0 9px var(--toast-lamp), 0 0 20px color-mix(in srgb, var(--toast-lamp) 48%, transparent);
}
.interaction-toast[data-tone="critical"] { --toast-lamp: var(--lm-critical); }
.interaction-toast[data-tone="positive"] { --toast-lamp: var(--lm-success); }
.interaction-toast[data-tone="warning"] { --toast-lamp: var(--lm-attention); }

@media (max-width: 760px) {
  .contact-hero-next-move {
    position: relative;
    display: block;
    padding-right: 44px;
  }
  .contact-hero-next-move > span,
  .contact-hero-next-move > b { display: block; }
  .contact-hero-next-move > b {
    margin-top: 5px;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    line-height: 1.4;
  }
  .contact-hero-next-move > small { display: none !important; }
  .contact-hero-next-move::after {
    content: "→";
    position: absolute;
    right: 15px;
    top: calc(50% - 11px);
    color: var(--lm-lamp-aqua);
    font-size: 1.15rem;
    text-shadow: 0 0 12px color-mix(in srgb, var(--lm-lamp-aqua) 72%, transparent);
  }
}

/* Final company-index mobile authorship and desktop ledger sizing. This must
   remain after the shared index fallback so form controls never regress to a
   clipped horizontal rail on phones. */
@media (min-width: 761px) {
  .company-intelligence-table { min-width: 100% !important; }
}
@media (max-width: 560px) {
  .intelligence-index-page.is-company-index .relationship-filters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    max-width: none;
    padding-bottom: 0;
    overflow: visible;
    scroll-snap-type: none;
  }
  .intelligence-index-page.is-company-index .relationship-filters > :where(label, .filter-reset) {
    min-width: 0;
    width: auto;
    flex: none;
  }
  .intelligence-index-page.is-company-index .relationship-filters label:nth-of-type(5) { grid-column: 1 / -1; }
  .intelligence-index-page.is-company-index .relationship-filters select { width: 100%; min-width: 0; text-overflow: ellipsis; }
  .company-intelligence-table tbody td::before { white-space: normal !important; overflow-wrap: anywhere; }
}
@media (max-width: 340px) {
  .intelligence-index-page.is-company-index .relationship-query,
  .intelligence-index-page.is-company-index .relationship-filters { grid-template-columns: minmax(0, 1fr); }
  .intelligence-index-page.is-company-index .relationship-query button { width: 100%; }
  .intelligence-index-page.is-company-index .relationship-filters label:nth-of-type(5) { grid-column: 1; }
}

/* Wide relationship workspaces use the LUMEN 1,920px analytical boundary.
   The desktop navigation shell previously centered every route around 1,380px
   while this final layer also capped <main>; on ultrawide monitors those two
   constraints compounded into a large, functionless right-hand void. Indexes
   now use the wide boundary, while record pages retain a calmer 1,760px line.
   Tablet and mobile remain governed by the existing single-column contracts. */
@media (min-width: 1440px) {
  body:is(.page-partners, .page-contacts) main {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-left: max(32px, calc((100vw - var(--nav-width) - 1920px) / 2 + 32px));
    padding-right: max(32px, calc((100vw - var(--nav-width) - 1920px) / 2 + 32px));
  }

  body:is(.page-partner, .page-contact) main {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-left: max(32px, calc((100vw - var(--nav-width) - 1760px) / 2 + 32px));
    padding-right: max(32px, calc((100vw - var(--nav-width) - 1760px) / 2 + 32px));
  }
}

@media (min-width: 1800px) {
  body.page-partners .marketplace-focal-layout {
    grid-template-columns: minmax(0, 2.7fr) minmax(320px, .7fr);
  }

  body.page-partners .marketplace-mekko-chart {
    min-height: clamp(520px, 34vw, 680px);
  }

  body.page-partners .marketplace-finding {
    align-content: start;
  }

  body.page-partners .marketplace-secondary-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  }
}

/* Marketplace identity resolution — durable source-account decisions.
   The queue is an instrumented operating list, not a commodity grid: source
   value establishes row weight, state carries semantic light, and the selected
   account opens a complete decision surface without a generic drawer/modal. */
.company-identity-entrypoints {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.company-identity-entrypoints :is(.baseline-library-link, .identity-resolution-link) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 18px;
  min-height: 54px;
  padding: 11px 14px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-s);
  background: color-mix(in srgb, var(--lm-panel-2) 86%, transparent);
  color: var(--lm-matte);
  text-decoration: none;
  transition: border-color var(--lm-motion-fast) var(--lm-ease),
    background var(--lm-motion-fast) var(--lm-ease),
    transform var(--lm-motion-fast) var(--lm-ease);
}
.company-identity-entrypoints :is(.baseline-library-link, .identity-resolution-link)::after {
  content: "Open";
  grid-column: 2;
  grid-row: 1 / span 2;
  color: var(--lm-lamp-aqua);
  font: 700 .72rem/1 var(--exec-data);
  letter-spacing: .06em;
  text-transform: uppercase;
}
.company-identity-entrypoints .identity-resolution-link {
  background:
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--lm-lamp-aqua) 10%, transparent), transparent 48%),
    color-mix(in srgb, var(--lm-panel-2) 88%, transparent);
}
.company-identity-entrypoints :is(.baseline-library-link, .identity-resolution-link):hover {
  border-color: color-mix(in srgb, var(--lm-lamp-aqua) 42%, var(--lm-seam));
  background-color: var(--lm-panel-2);
  transform: translateY(-1px);
}
.company-identity-entrypoints :is(.baseline-library-link, .identity-resolution-link) b {
  font: 700 .84rem/1.25 var(--exec-body);
}
.company-identity-entrypoints :is(.baseline-library-link, .identity-resolution-link) span {
  color: var(--lm-matte-2);
  font: 500 .76rem/1.4 var(--exec-body);
}
.identity-resolution-entry {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  width: max-content;
  margin-top: 14px;
  padding: 0 15px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 42%, var(--lm-seam));
  border-radius: var(--lm-rad-s);
  background: color-mix(in srgb, var(--lm-lamp-aqua) 8%, var(--lm-panel));
  color: var(--lm-lamp-aqua);
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 0 24px -18px var(--lm-lamp-aqua);
}
.marketplace-coverage-register td:last-child a { color: var(--lm-lamp-aqua); font-weight: 700; white-space: nowrap; }

.identity-resolution-page {
  --identity-state-color: var(--lm-warning);
  display: grid;
  gap: clamp(18px, 2vw, 28px);
  width: 100%;
}
.identity-resolution-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .56fr);
  gap: 32px;
  align-items: end;
  min-height: 250px;
  padding: clamp(24px, 3vw, 42px);
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-l);
  background:
    radial-gradient(ellipse 64% 120% at 0% 0%, color-mix(in srgb, var(--lm-lamp-rose) 17%, transparent), transparent 72%),
    radial-gradient(ellipse 54% 110% at 100% 10%, color-mix(in srgb, var(--lm-lamp-aqua) 15%, transparent), transparent 70%),
    linear-gradient(140deg, var(--lm-panel-2), var(--lm-panel));
  box-shadow: var(--lm-depth-2);
}
.identity-resolution-hero::after {
  content: "";
  position: absolute;
  right: -110px;
  top: -190px;
  width: 420px;
  height: 420px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 34%, transparent);
  border-radius: 50%;
  box-shadow: 0 0 0 58px color-mix(in srgb, var(--lm-lamp-aqua) 4%, transparent),
    0 0 90px -24px color-mix(in srgb, var(--lm-lamp-aqua) 28%, transparent);
  pointer-events: none;
}
.identity-resolution-hero > * { position: relative; z-index: 1; }
.identity-resolution-hero .intel-back { display: inline-flex; margin-bottom: 28px; color: var(--lm-matte-2); }
.identity-resolution-hero h1 {
  max-width: 760px;
  margin: 7px 0 10px;
  color: var(--lm-matte);
  font: 650 clamp(2rem, 3.2vw, 3.55rem)/1.02 var(--exec-display);
  letter-spacing: -.045em;
}
.identity-resolution-hero > div > p { max-width: 76ch; margin: 0; color: var(--lm-matte-2); font-size: 1rem; line-height: 1.65; }
.identity-resolution-hero dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background: color-mix(in srgb, var(--lm-ink) 68%, transparent);
  backdrop-filter: blur(18px);
}
.identity-resolution-hero dl > div { min-width: 0; padding: 18px; border-right: 1px solid var(--lm-seam); }
.identity-resolution-hero dl > div:last-child { border-right: 0; }
.identity-resolution-hero dt { color: var(--lm-matte-3); font: 700 .67rem/1.2 var(--exec-data); letter-spacing: .07em; text-transform: uppercase; }
.identity-resolution-hero dd { margin: 7px 0 4px; color: var(--lm-matte); font: 720 1.65rem/1 var(--exec-display); font-variant-numeric: tabular-nums; }
.identity-resolution-hero dl > div:first-child dd { color: var(--lm-lamp-gold); text-shadow: 0 0 18px color-mix(in srgb, var(--lm-lamp-gold) 45%, transparent); }
.identity-resolution-hero dl small { display: block; color: var(--lm-matte-3); font-size: .69rem; line-height: 1.4; }

.identity-notice { margin: 0; }
.identity-notice.is-error { border-color: color-mix(in srgb, var(--lm-critical) 42%, var(--lm-seam)); box-shadow: inset 3px 0 0 var(--lm-critical); }
.identity-notice.is-error b { color: var(--lm-critical); }

.identity-add-source,
.identity-context-editor,
.identity-audit {
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background: color-mix(in srgb, var(--lm-panel) 94%, transparent);
  box-shadow: var(--lm-depth-1);
}
.identity-add-source > summary,
.identity-context-editor > summary,
.identity-audit > summary {
  display: flex;
  min-height: 58px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 18px;
  color: var(--lm-matte);
  cursor: pointer;
  font-weight: 700;
}
.identity-add-source > summary small,
.identity-context-editor > summary small,
.identity-audit > summary small { color: var(--lm-matte-3); font-weight: 500; }
.identity-add-source[open] > summary,
.identity-context-editor[open] > summary,
.identity-audit[open] > summary { border-bottom: 1px solid var(--lm-seam); }
.identity-add-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  padding: 22px;
  background:
    radial-gradient(circle at 0% 0%, color-mix(in srgb, var(--lm-lamp-aqua) 7%, transparent), transparent 38%),
    var(--lm-panel);
}
.identity-add-form label,
.identity-map-panel form label,
.identity-context-editor form > label,
.identity-search label {
  display: grid;
  align-content: start;
  gap: 8px;
  color: var(--lm-matte-2);
  font: 700 .76rem/1.25 var(--exec-body);
}
.identity-add-form label > span,
.identity-map-panel form label > span,
.identity-context-editor form > label > span,
.identity-search label > span { color: var(--lm-matte); }
.identity-add-form label small,
.identity-map-panel form label small { color: var(--lm-matte-3); font-size: .72rem; font-weight: 500; line-height: 1.45; }
.identity-add-form label.is-wide { grid-column: 1 / -1; }
.identity-add-form :is(input, textarea),
.identity-map-panel form :is(input, textarea),
.identity-context-editor form :is(input, textarea),
.identity-search input {
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-s);
  background: color-mix(in srgb, var(--lm-ink-deep) 82%, var(--lm-panel));
  color: var(--lm-matte);
  font: 500 1rem/1.4 var(--exec-body);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .025);
  transition: border-color var(--lm-motion-fast) var(--lm-ease),
    box-shadow var(--lm-motion-fast) var(--lm-ease),
    background var(--lm-motion-fast) var(--lm-ease);
}
.identity-add-form textarea,
.identity-map-panel form textarea,
.identity-context-editor form textarea { min-height: 86px; resize: vertical; }
.identity-add-form :is(input, textarea):focus,
.identity-map-panel form :is(input, textarea):focus,
.identity-context-editor form :is(input, textarea):focus,
.identity-search input:focus {
  border-color: color-mix(in srgb, var(--lm-lamp-aqua) 55%, var(--lm-seam));
  background: var(--lm-ink-deep);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--lm-lamp-aqua) 10%, transparent),
    0 0 28px -18px var(--lm-lamp-aqua);
}
.identity-form-actions { grid-column: 1 / -1; display: flex; align-items: center; gap: 14px; }
.identity-form-actions small { color: var(--lm-matte-3); }

.identity-state-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background: var(--lm-seam);
}
.identity-state-tabs a {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px 10px;
  align-content: center;
  min-height: 78px;
  padding: 14px 16px;
  background: var(--lm-panel);
  color: var(--lm-matte-2);
  text-decoration: none;
}
.identity-state-tabs a::after { content: ""; position: absolute; inset: auto 12px 0; height: 2px; background: transparent; }
.identity-state-tabs a:hover { background: var(--lm-panel-2); }
.identity-state-tabs a.is-active {
  color: var(--lm-matte);
  background:
    radial-gradient(circle at 10% 0%, color-mix(in srgb, var(--lm-lamp-aqua) 9%, transparent), transparent 58%),
    var(--lm-panel-2);
}
.identity-state-tabs a.is-active::after { background: var(--lm-lamp-aqua); box-shadow: 0 0 15px var(--lm-lamp-aqua); }
.identity-state-tabs b { grid-row: 1 / span 2; align-self: center; color: var(--lm-matte); font: 720 1.4rem/1 var(--exec-display); }
.identity-state-tabs span { font-weight: 700; }
.identity-state-tabs small { color: var(--lm-matte-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.identity-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: end;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background: var(--lm-panel);
}
.identity-search :is(button, a) { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 17px; }

.identity-resolution-workspace {
  display: grid;
  grid-template-columns: minmax(430px, .78fr) minmax(620px, 1.22fr);
  gap: clamp(18px, 1.8vw, 28px);
  align-items: start;
}
.identity-queue,
.identity-inspector {
  min-width: 0;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-l);
  background: color-mix(in srgb, var(--lm-panel) 96%, transparent);
  box-shadow: var(--lm-depth-2);
}
.identity-queue { overflow: hidden; }
.identity-queue > header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  padding: 20px 22px;
  border-bottom: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel-2) 78%, transparent);
}
.identity-queue h2 { margin: 5px 0 0; color: var(--lm-matte); font-size: 1.15rem; }
.identity-queue > header > small { color: var(--lm-matte-3); text-align: right; }
.identity-queue-list { display: grid; }
.identity-queue-row {
  --identity-state-color: var(--lm-warning);
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 18px;
  min-height: 132px;
  padding: 17px 20px 18px;
  border-bottom: 1px solid var(--lm-seam);
  background: transparent;
  color: var(--lm-matte);
  text-decoration: none;
  transition: background var(--lm-motion-fast) var(--lm-ease),
    box-shadow var(--lm-motion-fast) var(--lm-ease),
    transform var(--lm-motion-fast) var(--lm-ease);
}
.identity-queue-row:last-child { border-bottom: 0; }
.identity-queue-row.is-mapped { --identity-state-color: var(--lm-positive); }
.identity-queue-row.is-excluded { --identity-state-color: var(--lm-lamp-rose); }
.identity-queue-row.is-retired { --identity-state-color: var(--lm-matte-3); }
.identity-queue-row:hover { background: var(--lm-panel-2); }
.identity-queue-row.is-selected {
  background:
    linear-gradient(100deg, color-mix(in srgb, var(--identity-state-color) 10%, transparent), transparent 62%),
    var(--lm-panel-2);
  box-shadow: inset 3px 0 0 var(--identity-state-color),
    inset 18px 0 38px -34px var(--identity-state-color);
}
.identity-state {
  --identity-state-color: var(--lm-warning);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--identity-state-color);
  font: 750 .75rem/1 var(--exec-data);
  letter-spacing: .075em;
  text-transform: uppercase;
}
.identity-state.is-mapped { --identity-state-color: var(--lm-positive); }
.identity-state.is-excluded { --identity-state-color: var(--lm-lamp-rose); }
.identity-state.is-retired { --identity-state-color: var(--lm-matte-3); }
.identity-state i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 13px currentColor; }
.identity-queue-row > .identity-state { grid-column: 1; }
.identity-queue-name { display: grid; min-width: 0; gap: 3px; }
.identity-queue-name b { overflow: hidden; color: var(--lm-matte); font: 680 1rem/1.25 var(--exec-display); text-overflow: ellipsis; white-space: nowrap; }
.identity-queue-name small,
.identity-queue-value small,
.identity-queue-destination small { color: var(--lm-matte-3); }
.identity-queue-value { grid-column: 2; grid-row: 1 / span 2; display: grid; justify-items: end; align-content: center; gap: 4px; }
.identity-queue-value b { color: var(--lm-matte); font: 720 1.06rem/1 var(--exec-data); font-variant-numeric: tabular-nums; }
.identity-share-track { grid-column: 1 / -1; height: 4px; overflow: hidden; border-radius: 999px; background: var(--lm-panel-3); }
.identity-share-track i { display: block; width: min(100%, max(2px, var(--identity-share))); height: 100%; background: var(--identity-state-color); box-shadow: 0 0 14px color-mix(in srgb, var(--identity-state-color) 64%, transparent); }
.identity-queue-destination { grid-column: 1 / -1; display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
.identity-queue-destination b { color: var(--lm-matte-2); font-size: .78rem; text-align: right; }

.identity-inspector {
  position: sticky;
  top: 82px;
  display: grid;
  gap: 0;
  overflow: clip;
}
.identity-inspector > header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: start;
  padding: 24px;
  border-bottom: 1px solid var(--lm-seam);
  background:
    radial-gradient(circle at 0% 0%, color-mix(in srgb, var(--lm-lamp-rose) 10%, transparent), transparent 44%),
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--lm-lamp-aqua) 8%, transparent), transparent 42%),
    var(--lm-panel-2);
}
.identity-inspector > header h2 { margin: 8px 0 5px; color: var(--lm-matte); font: 680 clamp(1.45rem, 2vw, 2rem)/1.08 var(--exec-display); letter-spacing: -.025em; }
.identity-inspector > header p { margin: 0; color: var(--lm-matte-2); overflow-wrap: anywhere; }
.identity-inspector > header > a { display: none; color: var(--lm-lamp-aqua); }
.identity-impact {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-bottom: 1px solid var(--lm-seam);
  background: var(--lm-ink-deep);
}
.identity-impact > div { display: grid; gap: 6px; min-width: 0; padding: 18px 20px; border-right: 1px solid var(--lm-seam); }
.identity-impact > div:last-child { border-right: 0; }
.identity-impact span { color: var(--lm-matte-3); font: 700 .65rem/1.2 var(--exec-data); letter-spacing: .065em; text-transform: uppercase; }
.identity-impact b { color: var(--lm-matte); font: 720 1.08rem/1.2 var(--exec-data); overflow-wrap: anywhere; }
.identity-impact > div:first-child b { color: var(--lm-lamp-aqua); text-shadow: 0 0 17px color-mix(in srgb, var(--lm-lamp-aqua) 34%, transparent); }
.identity-impact small { color: var(--lm-matte-3); line-height: 1.4; }
.identity-current-map {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 16px 22px;
  border-bottom: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-positive) 5%, var(--lm-panel));
}
.identity-current-map > span { color: var(--lm-positive); font: 700 .68rem/1.3 var(--exec-data); letter-spacing: .055em; text-transform: uppercase; }
.identity-current-map > div { display: grid; gap: 3px; }
.identity-current-map small { color: var(--lm-matte-3); }
.identity-current-map a { color: var(--lm-lamp-aqua); font-weight: 700; }

.identity-market-mix,
.identity-map-panel,
.identity-state-actions { padding: 22px 24px; border-bottom: 1px solid var(--lm-seam); }
.identity-market-mix > header,
.identity-map-panel > header,
.identity-state-actions > header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
}
.identity-market-mix header span,
.identity-map-panel header span,
.identity-state-actions header span { color: var(--lm-lamp-aqua); font: 700 .66rem/1.2 var(--exec-data); letter-spacing: .065em; text-transform: uppercase; }
.identity-market-mix h3,
.identity-map-panel h3,
.identity-state-actions h3 { margin: 5px 0 0; color: var(--lm-matte); font-size: 1.04rem; }
.identity-market-mix header > small,
.identity-map-panel header > small,
.identity-state-actions header > small { max-width: 34ch; color: var(--lm-matte-3); text-align: right; line-height: 1.45; }
.identity-market-mix > div { display: grid; gap: 8px; }
.identity-market-mix article {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 58px;
  padding: 10px 13px 13px;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-s);
  background: var(--lm-panel-2);
}
.identity-market-mix article > span,
.identity-market-mix article > strong { display: grid; gap: 3px; }
.identity-market-mix article > strong { justify-items: end; color: var(--lm-matte); font-family: var(--exec-data); }
.identity-market-mix article small { color: var(--lm-matte-3); font-size: .7rem; }
.identity-market-mix article > i { position: absolute; inset: auto 0 0; height: 3px; background: var(--lm-panel-3); }
.identity-market-mix article > i::after { content: ""; display: block; width: var(--market-share); height: 100%; background: var(--lm-lamp-iris); box-shadow: 0 0 12px var(--lm-lamp-iris); }
.identity-market-mix > div > p { margin: 0; color: var(--lm-matte-3); }

.identity-map-panel {
  background:
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--lm-lamp-aqua) 8%, transparent), transparent 44%),
    var(--lm-panel);
}
.identity-map-panel form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); gap: 14px; }
.identity-map-panel form > div { grid-column: 1 / -1; display: flex; align-items: center; gap: 16px; }
.identity-map-panel form > div a { color: var(--lm-matte-2); font-size: .78rem; }
.identity-map-panel button:disabled { opacity: .42; cursor: not-allowed; box-shadow: none; }

.identity-context-editor { margin: 20px 24px; }
.identity-context-editor form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding: 18px; }
.identity-context-editor form > button { align-self: end; }
.identity-check { grid-column: 1 / -1; grid-template-columns: auto minmax(0, 1fr) !important; align-items: start !important; padding: 13px; border: 1px solid var(--lm-seam); border-radius: var(--lm-rad-s); background: var(--lm-panel-2); }
.identity-check input { width: 20px !important; min-height: 20px !important; margin-top: 2px; accent-color: var(--lm-lamp-aqua); }
.identity-check > span { display: grid; gap: 4px; }
.identity-check small { color: var(--lm-matte-3); font-weight: 500; line-height: 1.45; }

.identity-state-actions > div { display: flex; flex-wrap: wrap; gap: 9px; }
.identity-state-actions form { margin: 0; }
.identity-state-actions button { min-height: 44px; }

.identity-audit { margin: 0 24px 24px; }
.identity-audit > div { display: grid; }
.identity-audit article {
  display: grid;
  grid-template-columns: 132px minmax(160px, .65fr) minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-height: 68px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--lm-seam);
}
.identity-audit article:last-child { border-bottom: 0; }
.identity-audit time { color: var(--lm-matte-3); font: 650 .68rem/1.4 var(--exec-data); }
.identity-audit article > span { display: grid; gap: 4px; }
.identity-audit article b { color: var(--lm-matte); text-transform: capitalize; }
.identity-audit article small { color: var(--lm-matte-3); }
.identity-audit article p { margin: 0; color: var(--lm-matte-2); line-height: 1.45; }
.identity-audit > div > p { margin: 0; padding: 18px; color: var(--lm-matte-3); }
.identity-empty { display: grid; gap: 7px; padding: 24px; color: var(--lm-matte-2); }
.identity-empty b { color: var(--lm-matte); }
.identity-empty p { margin: 0; line-height: 1.5; }

.company-source-identities {
  overflow: hidden;
  border-color: color-mix(in srgb, var(--lm-lamp-aqua) 18%, var(--lm-seam-strong));
  background:
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--lm-lamp-aqua) 8%, transparent), transparent 38%),
    radial-gradient(circle at 0% 100%, color-mix(in srgb, var(--lm-lamp-rose) 6%, transparent), transparent 34%),
    var(--lm-panel);
}
.company-source-identities > header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 24px;
  padding: 22px 24px;
  border-bottom: 1px solid var(--lm-seam);
}
.company-source-identities > header > div { max-width: 72ch; }
.company-source-identities > header h2 { margin: 6px 0 7px; color: var(--lm-matte); font-size: clamp(1.2rem, 1.8vw, 1.65rem); }
.company-source-identities > header p { margin: 0; color: var(--lm-matte-2); line-height: 1.55; }
.company-source-identities > header > a { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; text-decoration: none; }
.company-source-identity-list { display: grid; }
.company-source-identity-list article {
  display: grid;
  grid-template-columns: 100px minmax(0, 1fr) minmax(180px, auto);
  gap: 18px;
  align-items: center;
  min-height: 78px;
  padding: 15px 24px;
  border-bottom: 1px solid var(--lm-seam);
  background: color-mix(in srgb, var(--lm-panel-2) 58%, transparent);
}
.company-source-identity-list article:last-child { border-bottom: 0; }
.company-source-identity-list article > div,
.company-source-identity-list article > span:last-child { display: grid; gap: 5px; min-width: 0; }
.company-source-identity-list article > div b { overflow: hidden; color: var(--lm-matte); font: 680 .96rem/1.3 var(--exec-display); text-overflow: ellipsis; white-space: nowrap; }
.company-source-identity-list article small { color: var(--lm-matte-3); overflow-wrap: anywhere; }
.company-source-identity-list article > span:last-child { justify-items: end; }
.company-source-identity-list article a { color: var(--lm-lamp-aqua); font-weight: 700; }
.company-source-identity-empty { display: grid; gap: 7px; padding: 20px 24px; }
.company-source-identity-empty b { color: var(--lm-matte); }
.company-source-identity-empty p { margin: 0; color: var(--lm-matte-2); line-height: 1.5; }
.company-source-identity-empty a { width: fit-content; color: var(--lm-lamp-aqua); font-weight: 700; }

@media (max-width: 1180px) {
  .identity-resolution-hero { grid-template-columns: 1fr; min-height: 0; }
  .identity-resolution-hero dl { max-width: 720px; }
  .identity-resolution-workspace { grid-template-columns: minmax(340px, .72fr) minmax(500px, 1.28fr); }
  .identity-impact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .identity-impact > div:nth-child(2) { border-right: 0; }
  .identity-impact > div:last-child { grid-column: 1 / -1; border-top: 1px solid var(--lm-seam); }
  .identity-map-panel form { grid-template-columns: 1fr; }
  .identity-map-panel form > div { grid-column: 1; }
}
@media (max-width: 900px) {
  .company-identity-entrypoints { grid-template-columns: 1fr; }
  .identity-add-form { grid-template-columns: 1fr 1fr; }
  .identity-add-form label.is-wide { grid-column: 1 / -1; }
  .identity-state-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); border-radius: var(--lm-rad-s); }
  .identity-state-tabs a:last-child { grid-column: 1 / -1; }
  .identity-resolution-workspace { grid-template-columns: 1fr; }
  .identity-inspector { position: static; order: -1; }
  .identity-inspector > header > a { display: inline-flex; min-height: 44px; align-items: center; }
  .identity-queue-row { min-height: 118px; }
  .company-source-identity-list article { grid-template-columns: 90px minmax(0, 1fr); }
  .company-source-identity-list article > span:last-child { grid-column: 2; justify-items: start; }
}
@media (max-width: 640px) {
  .identity-resolution-page { gap: 16px; }
  .identity-resolution-hero { padding: 22px 18px; border-radius: var(--lm-rad-m); }
  .identity-resolution-hero .intel-back { margin-bottom: 22px; }
  .identity-resolution-hero h1 { font-size: clamp(1.82rem, 9vw, 2.45rem); }
  .identity-resolution-hero > div > p { font-size: .92rem; }
  .identity-resolution-hero dl { grid-template-columns: 1fr; }
  .identity-resolution-hero dl > div { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 12px; padding: 13px 15px; border-right: 0; border-bottom: 1px solid var(--lm-seam); }
  .identity-resolution-hero dl > div:last-child { border-bottom: 0; }
  .identity-resolution-hero dd { grid-column: 2; grid-row: 1 / span 2; }
  .identity-add-source > summary,
  .identity-context-editor > summary,
  .identity-audit > summary { display: grid; gap: 4px; padding: 13px 15px; }
  .identity-add-form { grid-template-columns: 1fr; padding: 16px; }
  .identity-add-form label.is-wide,
  .identity-form-actions { grid-column: 1; }
  .identity-form-actions { display: grid; }
  .identity-state-tabs a { min-height: 72px; padding: 12px; }
  .identity-search { grid-template-columns: 1fr 1fr; }
  .identity-search label { grid-column: 1 / -1; }
  .identity-queue,
  .identity-inspector { border-radius: var(--lm-rad-m); }
  .identity-inspector > header { grid-template-columns: 1fr; padding: 20px 17px; }
  .identity-inspector > header > a { justify-self: start; }
  .identity-impact { grid-template-columns: 1fr 1fr; }
  .identity-impact > div { padding: 15px; }
  .identity-impact > div:last-child { grid-column: 1 / -1; }
  .identity-current-map { grid-template-columns: 1fr auto; padding: 15px 17px; }
  .identity-current-map > span { grid-column: 1 / -1; }
  .identity-market-mix,
  .identity-map-panel,
  .identity-state-actions { padding: 20px 17px; }
  .identity-market-mix > header,
  .identity-map-panel > header,
  .identity-state-actions > header { display: grid; gap: 6px; }
  .identity-market-mix header > small,
  .identity-map-panel header > small,
  .identity-state-actions header > small { text-align: left; }
  .identity-map-panel form > div { display: grid; }
  .identity-context-editor,
  .identity-audit { margin: 16px; }
  .identity-context-editor form { grid-template-columns: 1fr; padding: 15px; }
  .identity-check { grid-column: 1; }
  .identity-state-actions > div { display: grid; }
  .identity-state-actions :is(form, button) { width: 100%; }
  .identity-audit article { grid-template-columns: 1fr; gap: 5px; padding: 14px; }
  .identity-queue-row { grid-template-columns: minmax(0, 1fr) auto; padding: 15px; }
  .identity-queue-name small { white-space: normal; overflow-wrap: anywhere; }
  .identity-queue-destination { display: grid; gap: 3px; }
  .identity-queue-destination b { text-align: left; }
  .company-source-identities > header { display: grid; padding: 20px 17px; }
  .company-source-identities > header > a { width: 100%; }
  .company-source-identity-list article { grid-template-columns: 1fr; gap: 8px; padding: 15px 17px; }
  .company-source-identity-list article > span:last-child { grid-column: 1; justify-items: start; }
  .company-source-identity-empty { padding: 18px 17px; }
}
@media (forced-colors: active) {
  .identity-resolution-hero,
  .identity-map-panel,
  .identity-queue-row.is-selected,
  .company-identity-entrypoints .identity-resolution-link,
  .company-source-identities { background: Canvas; }
  .identity-state i,
  .identity-share-track i,
  .identity-market-mix article > i::after { box-shadow: none; forced-color-adjust: auto; }
  .identity-queue-row.is-selected { outline: 3px solid Highlight; outline-offset: -3px; }
}
@media (prefers-reduced-motion: reduce) {
  .company-identity-entrypoints :is(.baseline-library-link, .identity-resolution-link),
  .identity-queue-row { transition: none; }
}

/* ==========================================================================
   Operating Proof Book — action forecasts become work only after execution.
   State owns color locally: rose asks for judgment, aqua marks observation,
   amber marks execution uncertainty, and mint marks evidence-backed closure.
   ========================================================================== */
.page-decisions .proof-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.page-decisions .proof-kpis a {
  --proof-lamp: var(--lm-lamp-aqua);
  border-color: color-mix(in srgb, var(--proof-lamp) 24%, var(--lm-seam-strong));
  background:
    radial-gradient(circle at 8% 0%, color-mix(in srgb, var(--proof-lamp) 13%, transparent), transparent 52%),
    linear-gradient(180deg, var(--lm-panel-2), var(--lm-panel));
}
.page-decisions .proof-kpis a:nth-child(1) { --proof-lamp: var(--lm-lamp-rose); }
.page-decisions .proof-kpis a:nth-child(3) { --proof-lamp: var(--lm-lamp-gold); }
.page-decisions .proof-kpis a:nth-child(4) { --proof-lamp: var(--lm-lamp-mint); }
.page-decisions .proof-kpis a::after { background: var(--proof-lamp); box-shadow: 0 0 18px color-mix(in srgb, var(--proof-lamp) 74%, transparent); }
.page-decisions .proof-kpis b { color: var(--proof-lamp); text-shadow: 0 0 22px color-mix(in srgb, var(--proof-lamp) 44%, transparent); }

.proof-pipeline {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 0 0 clamp(22px, 3vw, 34px);
  padding: 1px;
  overflow: hidden;
  border: 1px solid var(--lm-seam-strong);
  border-radius: var(--lm-rad-m);
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-lamp-cobalt) 45%, transparent), color-mix(in srgb, var(--lm-lamp-aqua) 38%, transparent), color-mix(in srgb, var(--lm-lamp-rose) 42%, transparent), color-mix(in srgb, var(--lm-lamp-mint) 38%, transparent));
  box-shadow: var(--lm-depth-2);
}
.proof-pipeline a {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 64px;
  padding: 12px 15px;
  background: color-mix(in srgb, var(--lm-panel) 94%, transparent);
  color: var(--lm-matte);
  text-decoration: none;
}
.proof-pipeline a:not(:last-child)::after {
  content: "";
  position: absolute;
  z-index: 2;
  right: -5px;
  width: 9px;
  height: 9px;
  border-top: 1px solid var(--lm-seam-strong);
  border-right: 1px solid var(--lm-seam-strong);
  background: var(--lm-panel);
  transform: rotate(45deg);
}
.proof-pipeline span { color: var(--lm-matte-3); font: 650 .67rem/1 var(--exec-data); letter-spacing: .08em; }
.proof-pipeline b { min-width: 0; font-size: .84rem; }
.proof-pipeline i {
  display: grid;
  place-items: center;
  min-width: 27px;
  height: 27px;
  border: 1px solid var(--lm-seam-strong);
  border-radius: 999px;
  color: var(--lm-matte-2);
  font: 700 .76rem/1 var(--exec-data);
  font-style: normal;
}
.proof-pipeline a:nth-child(2) i { color: var(--lm-lamp-aqua); box-shadow: 0 0 14px -5px var(--lm-lamp-aqua); }
.proof-pipeline a:nth-child(3) i { color: var(--lm-lamp-rose); box-shadow: 0 0 14px -5px var(--lm-lamp-rose); }
.proof-pipeline a:nth-child(4) i { color: var(--lm-lamp-mint); box-shadow: 0 0 14px -5px var(--lm-lamp-mint); }

.proof-lane {
  --proof-lamp: var(--lm-lamp-aqua);
  position: relative;
  margin-top: clamp(22px, 3vw, 34px);
  scroll-margin-top: 92px;
}
.proof-lane.is-judgment { --proof-lamp: var(--lm-lamp-rose); }
.proof-lane > header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 11px;
  padding: 0 2px 10px;
  border-bottom: 1px solid color-mix(in srgb, var(--proof-lamp) 24%, var(--lm-seam));
}
.proof-lane > header h3 { margin: 3px 0 0; font-size: clamp(1rem, 2vw, 1.3rem); }
.proof-lane > header > b {
  color: var(--proof-lamp);
  font: 700 1.3rem/1 var(--exec-data);
  text-shadow: 0 0 16px color-mix(in srgb, var(--proof-lamp) 54%, transparent);
}
.proof-focus-list { display: grid; gap: 12px; }
.proof-focus-card {
  --proof-lamp: var(--lm-lamp-rose);
  position: relative;
  padding: clamp(15px, 2.2vw, 22px);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--proof-lamp) 30%, var(--lm-seam-strong));
  border-radius: var(--lm-rad-m);
  background:
    radial-gradient(ellipse 55% 85% at 0% 0%, color-mix(in srgb, var(--proof-lamp) 11%, transparent), transparent 67%),
    linear-gradient(165deg, var(--lm-panel-2), var(--lm-panel) 76%);
  box-shadow: var(--lm-depth-machined), 0 0 34px -24px color-mix(in srgb, var(--proof-lamp) 72%, transparent);
}
.proof-focus-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: var(--proof-lamp);
  box-shadow: 0 0 15px 1px color-mix(in srgb, var(--proof-lamp) 70%, transparent);
}
.proof-focus-card.state-execution-ambiguous { --proof-lamp: var(--lm-lamp-gold); }
.proof-focus-card > header { display: flex; align-items: center; gap: 9px; color: var(--lm-matte-2); font: 650 .68rem/1.2 var(--exec-data); letter-spacing: .06em; text-transform: uppercase; }
.proof-focus-card > header a { margin-left: auto; color: var(--proof-lamp); text-decoration: none; }
.proof-state { color: var(--proof-lamp); text-shadow: 0 0 12px color-mix(in srgb, var(--proof-lamp) 55%, transparent); }
.proof-focus-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin: 18px 0 8px; }
.proof-focus-heading h3, .proof-focus-card > h3 { margin: 3px 0 0; font-size: clamp(1.15rem, 2.5vw, 1.6rem); line-height: 1.2; }
.proof-focus-heading small { color: var(--lm-matte-3); font: 650 .67rem/1.2 var(--exec-data); letter-spacing: .08em; text-transform: uppercase; }
.proof-focus-heading > span { display: grid; justify-items: end; flex: 0 0 auto; color: var(--lm-matte); font: 700 1rem/1.15 var(--exec-data); }
.proof-focus-heading > span small { margin-top: 3px; }
.proof-prediction { max-width: 78ch; margin: 0 0 14px; color: var(--lm-matte-2); line-height: 1.55; }
.proof-contract-grid {
  display: grid;
  grid-template-columns: minmax(120px, .55fr) minmax(155px, .7fr) minmax(190px, 1fr) minmax(190px, 1fr);
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-s);
  background: var(--lm-seam);
}
.proof-contract-grid > div { display: grid; align-content: start; gap: 6px; min-height: 82px; padding: 12px 13px; background: color-mix(in srgb, var(--lm-panel) 92%, transparent); }
.proof-contract-grid span, .proof-result p span { color: var(--lm-matte-3); font: 650 .66rem/1.25 var(--exec-data); letter-spacing: .075em; text-transform: uppercase; }
.proof-contract-grid b { font-size: .84rem; line-height: 1.45; }
.proof-adjudication { display: grid; grid-template-columns: minmax(260px, 1fr) auto; gap: 12px; align-items: end; margin-top: 13px; }
.proof-evidence-entry { display: grid; gap: 9px; min-width: 0; }
.proof-evidence-source { display: grid; grid-template-columns: minmax(130px, .42fr) minmax(220px, 1fr); gap: 9px; }
.proof-evidence-source > * { min-width: 0; }
.proof-evidence-source :is(input, select) { width: 100%; min-width: 0; }
.proof-adjudication textarea { min-height: 108px; resize: vertical; }
.proof-adjudication fieldset { display: grid; grid-template-columns: repeat(2, minmax(112px, 1fr)); gap: 8px; min-width: 260px; margin: 0; padding: 0; border: 0; }
.proof-adjudication legend { grid-column: 1 / -1; width: 100%; margin-bottom: 6px; color: var(--lm-matte-3); font: 650 .67rem/1.2 var(--exec-data); letter-spacing: .075em; text-transform: uppercase; }
.proof-adjudication button { min-height: 44px; }
.proof-integrity-callout { display: grid; grid-template-columns: minmax(140px, .4fr) minmax(260px, 1fr) auto; align-items: center; gap: 14px; margin-top: 15px; padding: 14px; border: 1px solid color-mix(in srgb, var(--lm-lamp-gold) 30%, var(--lm-seam)); border-radius: var(--lm-rad-s); background: color-mix(in srgb, var(--lm-lamp-gold) 6%, var(--lm-panel)); }
.proof-integrity-callout b { color: var(--lm-lamp-gold); }
.proof-integrity-callout span { color: var(--lm-matte-2); font-size: .84rem; line-height: 1.5; }
.proof-integrity-callout a { white-space: nowrap; text-decoration: none; }

.proof-watch-list, .proof-awaiting-list, .proof-resolved-list { display: grid; gap: 7px; }
.proof-watch-row {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr) 72px minmax(120px, .35fr);
  align-items: center;
  gap: 14px;
  min-height: 70px;
  padding: 12px 14px;
  border: 1px solid color-mix(in srgb, var(--lm-lamp-aqua) 20%, var(--lm-seam));
  border-radius: var(--lm-rad-s);
  background: linear-gradient(90deg, color-mix(in srgb, var(--lm-lamp-aqua) 5%, var(--lm-panel)), var(--lm-panel));
  color: var(--lm-matte);
  text-decoration: none;
  transition: border-color var(--lm-motion-fast) var(--lm-ease), transform var(--lm-motion-fast) var(--lm-ease);
}
.proof-watch-row:hover { border-color: color-mix(in srgb, var(--lm-lamp-aqua) 44%, var(--lm-seam)); transform: translateY(-1px); }
.proof-watch-state { display: flex; align-items: center; gap: 8px; color: var(--lm-lamp-aqua); font: 650 .7rem/1 var(--exec-data); letter-spacing: .06em; text-transform: uppercase; }
.proof-watch-state i { width: 7px; height: 7px; border-radius: 50%; background: var(--lm-lamp-aqua); box-shadow: 0 0 13px 2px color-mix(in srgb, var(--lm-lamp-aqua) 62%, transparent); }
.proof-watch-copy, .proof-watch-time { display: grid; gap: 3px; min-width: 0; }
.proof-watch-copy b, .proof-watch-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.proof-watch-copy small, .proof-watch-time small { color: var(--lm-matte-3); }
.proof-watch-time { justify-items: end; font-family: var(--exec-data); }
.proof-watch-time b { color: var(--lm-lamp-aqua); }
.proof-watch-meter { height: 4px; overflow: hidden; border-radius: 999px; background: color-mix(in srgb, var(--lm-lamp-aqua) 12%, var(--lm-panel-3)); }
.proof-watch-meter i { display: block; width: var(--proof-progress); height: 100%; border-radius: inherit; background: var(--lm-lamp-aqua); box-shadow: 0 0 12px var(--lm-lamp-aqua); }

.proof-awaiting-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.proof-awaiting-list a {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 3px 12px;
  min-height: 76px;
  align-content: center;
  padding: 13px 14px;
  border: 1px solid var(--lm-seam);
  border-radius: var(--lm-rad-s);
  background: var(--lm-panel);
  color: var(--lm-matte);
  text-decoration: none;
}
.proof-awaiting-list a > span { grid-row: span 2; align-self: center; color: var(--lm-matte-3); font: 650 .68rem/1.35 var(--exec-data); letter-spacing: .05em; text-transform: uppercase; }
.proof-awaiting-list small { color: var(--lm-matte-3); }

.proof-result { overflow: hidden; border: 1px solid var(--lm-seam); border-radius: var(--lm-rad-s); background: var(--lm-panel); }
.proof-result > summary { display: grid; grid-template-columns: 104px minmax(0, 1fr) auto; align-items: center; gap: 13px; min-height: 68px; padding: 12px 14px; cursor: pointer; }
.proof-result > summary > span:nth-child(2) { display: grid; gap: 3px; min-width: 0; }
.proof-result > summary small { color: var(--lm-matte-3); }
.proof-result > summary > i { color: var(--lm-matte-3); font: 650 .7rem/1 var(--exec-data); font-style: normal; }
.proof-result-grade { color: var(--lm-matte-2); font: 700 .7rem/1 var(--exec-data); letter-spacing: .07em; text-transform: uppercase; }
.proof-result.status-supported .proof-result-grade { color: var(--lm-lamp-mint); text-shadow: 0 0 13px color-mix(in srgb, var(--lm-lamp-mint) 50%, transparent); }
.proof-result.status-disproven .proof-result-grade { color: var(--lm-critical); }
.proof-result.status-mixed .proof-result-grade { color: var(--lm-lamp-gold); }
.proof-result > div { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; padding: 1px; border-top: 1px solid var(--lm-seam); background: var(--lm-seam); }
.proof-result p { display: grid; gap: 7px; min-height: 94px; margin: 0; padding: 14px; background: var(--lm-panel); line-height: 1.5; }
.proof-result nav { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 14px; padding: 10px 14px; background: var(--lm-panel); }
.proof-result nav a { color: var(--lm-lamp-aqua); font-size: .78rem; text-decoration: none; }

.proof-audit { margin-top: 22px; border: 1px solid var(--lm-seam); border-radius: var(--lm-rad-s); background: color-mix(in srgb, var(--lm-panel) 88%, transparent); }
.proof-audit > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 62px; padding: 12px 15px; cursor: pointer; }
.proof-audit > summary span { display: grid; gap: 3px; }
.proof-audit > summary small, .proof-audit > summary i { color: var(--lm-matte-3); font-style: normal; }
.proof-audit > div { display: grid; border-top: 1px solid var(--lm-seam); }
.proof-audit > div a { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 3px 12px; padding: 11px 15px; border-bottom: 1px solid var(--lm-seam); color: var(--lm-matte); text-decoration: none; }
.proof-audit > div a:last-child { border-bottom: 0; }
.proof-audit > div span { grid-row: span 2; color: var(--lm-matte-3); font: 650 .68rem/1.4 var(--exec-data); text-transform: uppercase; }
.proof-audit > div small { color: var(--lm-matte-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

@media (max-width: 900px) {
  .page-decisions .proof-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .proof-contract-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .proof-adjudication { grid-template-columns: 1fr; }
  .proof-adjudication fieldset { min-width: 0; }
  .proof-integrity-callout { grid-template-columns: 1fr; }
  .proof-integrity-callout a { width: max-content; }
  .proof-watch-row { grid-template-columns: 100px minmax(0, 1fr) 64px; }
  .proof-watch-meter { grid-column: 2 / -1; }
}
@media (max-width: 640px) {
  .proof-pipeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .proof-pipeline a:nth-child(2)::after { display: none; }
  .proof-lane > header { align-items: start; }
  .proof-focus-card > header { align-items: flex-start; flex-wrap: wrap; line-height: 1.35; }
  .proof-focus-card > header a { width: 100%; margin: 2px 0 0; }
  .proof-focus-heading { align-items: start; }
  .proof-focus-heading > span { font-size: .86rem; }
  .proof-contract-grid { grid-template-columns: 1fr; }
  .proof-contract-grid > div { min-height: 0; }
  .proof-adjudication fieldset { grid-template-columns: 1fr 1fr; }
  .proof-evidence-source { grid-template-columns: 1fr; }
  .proof-watch-row { grid-template-columns: 1fr auto; gap: 7px 12px; }
  .proof-watch-state { grid-column: 1; }
  .proof-watch-copy { grid-column: 1; }
  .proof-watch-time { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
  .proof-watch-meter { grid-column: 1 / -1; }
  .proof-watch-copy small { white-space: normal; }
  .proof-awaiting-list { grid-template-columns: 1fr; }
  .proof-awaiting-list a { grid-template-columns: 92px minmax(0, 1fr); }
  .proof-result > summary { grid-template-columns: 82px minmax(0, 1fr); }
  .proof-result > summary > i { display: none; }
  .proof-result > div { grid-template-columns: 1fr; }
  .proof-result nav { grid-column: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .proof-watch-row { transition: none; }
}

/* ========================================================================
   TOUCH TARGETS — measured remediation (2026-08-20)
   ========================================================================
   The action-grammar block above sets 44px, but it only ever matched
   `button`. Anchors were never covered, so every link-shaped control fell
   through. Measured on the live surface at 1440px and 390px:
     /decisions   97 anchors at 19x129   ("Open full source")
     /decisions    7 anchors at 14x212   ("Action + execution receipt")
     /            27 anchors at 18x341   (work-radar identity names)
     /            23 summary at 40px
   Two tiers, deliberately:
     - standalone action links, nav, sidebar, footer -> 44px (WCAG AAA)
     - dense inline metadata inside a row           -> 32px (clears the
       24px AA floor without adding 26px to every one of ~250 radar rows)
   `inline-flex` is what makes min-height apply at all: these were
   `display:inline`, where a min-height is silently ignored.
   ======================================================================== */

/* --- tier 1: standalone action links ---------------------------------- */
body .hypothesis-watch-detail a,
body .proof-focus-card header a,
body .hypothesis-card header a,
body a.hypothesis-source-link,
body .today-gateway-aperture footer a,
body .proof-awaiting-list a,
body footer.foot a {
  display: inline-flex;
  align-items: center;
  min-height: var(--lm-touch-target, 44px);
  padding-block: 6px;
}

/* --- tier 1: chrome (nav popovers, sidebar utilities) ----------------- */
body nav.primary-nav .nav-popover a,
body nav.sidebar-utilities a,
body nav.sidebar-utilities summary,
body details.nav-menu > summary {
  display: flex;
  align-items: center;
  min-height: var(--lm-touch-target, 44px);
}

/* --- tier 1: disclosure controls -------------------------------------- */
body summary {
  min-height: var(--lm-touch-target, 44px);
}
body summary::-webkit-details-marker { height: auto; }

/* --- tier 2: dense in-row metadata ------------------------------------ */
/* .work-radar-identity is `display:flex; gap:7px` — siblings sit side by
   side, so growing these vertically cannot overlap an adjacent target. */
body .work-radar-identity > a,
body .work-radar-identity > a.work-radar-company {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
}

/* --- the row title: 40px -> 44px without reflowing the wrap ----------- */
body .work-radar-copy > a {
  display: inline-block;
  min-height: var(--lm-touch-target, 44px);
  padding-block: 2px;
}

/* --- coarse pointers: finish the job on the dense tier ----------------- */
/* Deliberately NOT `main a { display: inline-flex }`. An inline-flex box does
   not break across lines, so every wrapping prose link would become one long
   unwrappable run and push the page into horizontal scroll — the exact defect
   this section exists to avoid. Only elements already laid out as their own
   box get grown. */
@media (pointer: coarse) {
  body .work-radar-identity > a,
  body .work-radar-identity > a.work-radar-company {
    min-height: var(--lm-touch-target, 44px);
  }
  body nav a,
  body main a[class] {
    min-height: var(--lm-touch-target, 44px);
  }
}

/* --- tier 3: the three that lost on specificity, measured post-deploy ---
   The block above uses `body`-prefixed selectors, which lose to existing
   rules that are more specific. Verified by reading computed style on the
   live surface rather than guessing: min-height resolved to the OLD value in
   each case, so the declaration was outranked, not inapplicable.
     .work-radar-classify > summary            (0,1,1)  40px  x21
     .topbar .sidebar-automation > div a       (0,2,2)  26px  x6   desktop only
     body.page-today ....> footer a            (0,2,3)  42px  x8
   Each override below is the winning selector plus one step. */

body .work-radar-classify > summary {
  min-height: var(--lm-touch-target, 44px);
}

body.page-today .today-gateway-grid .today-gateway-aperture > footer a {
  min-height: var(--lm-touch-target, 44px);
}

/* The topbar automation menu is a 2-column grid inside a dropdown, desktop
   only. 44px there would add ~54px of height to a menu that is deliberately
   compact, so it gets 36px with a mouse and the full target on touch. */
body .topbar .sidebar-automation > div a {
  min-height: 36px;
}
@media (pointer: coarse) {
  body .topbar .sidebar-automation > div a {
    min-height: var(--lm-touch-target, 44px);
  }
}
