/*
 * qbmap / public research atlas
 *
 * The homepage is a live, dark relationship field. Analysis pages are the
 * complementary reading room: warm paper, strong editorial hierarchy,
 * visible methodology, and progressive disclosure for dense data.
 */

.analysis-page {
  --atlas-paper: #f1eee4;
  --atlas-sheet: #fbfaf5;
  --atlas-ink: #171914;
  --atlas-muted: #62655b;
  --atlas-faint: #7b7e73;
  --atlas-rule: rgba(23, 25, 20, .16);
  --atlas-rule-strong: rgba(23, 25, 20, .42);
  --atlas-signal: #334f17;
  --atlas-serif: "Iowan Old Style", "Baskerville", "Songti SC", "STSong", serif;
  --ground: var(--atlas-paper);
  --surface: var(--atlas-sheet);
  --surface-2: #e9e5da;
  --surface-3: #ddd8cb;
  --line: var(--atlas-rule);
  --line-strong: var(--atlas-rule-strong);
  --ink: var(--atlas-ink);
  --ink-2: var(--atlas-muted);
  --ink-3: var(--atlas-faint);
  color-scheme: light;
  min-height: 100vh;
  background: var(--atlas-paper);
}

.analysis-page::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  opacity: .32;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.76' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.055'/%3E%3C/svg%3E");
}

.analysis-page::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .24;
  background-size: 48px 48px;
}

.analysis-page[data-atlas-group="people"]::after {
  background-image: repeating-linear-gradient(90deg, transparent 0 47px, rgba(23,25,20,.12) 47px 48px);
}
.analysis-page[data-atlas-group="network"]::after {
  background-image: radial-gradient(circle, rgba(23,25,20,.22) 0 1px, transparent 1.5px);
}
.analysis-page[data-atlas-group="fields"]::after {
  background-image:
    repeating-radial-gradient(ellipse at 84% 8%, transparent 0 42px, rgba(23,25,20,.10) 43px 44px, transparent 45px 76px);
  background-size: 100% 100%;
}
.analysis-page[data-atlas-group="motion"]::after {
  background-image: repeating-linear-gradient(135deg, transparent 0 68px, rgba(23,25,20,.1) 68px 69px);
}

.analysis-page .shell { max-width: 1280px; }

/* Header -------------------------------------------------------------- */

.analysis-page .topbar,
.analysis-page > nav.nav {
  position: sticky;
  top: 0;
  z-index: 60;
  border-bottom: 1px solid var(--atlas-rule-strong);
  background: rgba(241, 238, 228, .9) !important;
  backdrop-filter: blur(16px) saturate(.8);
}

.analysis-page .topbar-in {
  max-width: 1280px;
  min-height: 64px;
  gap: clamp(18px, 3vw, 44px);
}

.analysis-page .brand { align-items: center; gap: 9px; }
.analysis-page .brand-name {
  font-family: var(--atlas-serif);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -.04em;
}
.analysis-page .brand-sub {
  padding-left: 10px;
  border-left: 1px solid var(--atlas-rule-strong);
  font-size: 10px;
  letter-spacing: .1em;
}

.analysis-page .nav { justify-content: flex-end; align-items: center; gap: 2px; }
.analysis-page .topbar .nav {
  padding: 0;
  border: 0;
  background: transparent !important;
}
.analysis-page .nav a,
.analysis-page .nav button {
  min-height: 38px;
  padding: 8px 12px;
  border: 0;
  border-radius: 999px;
  color: var(--atlas-muted);
  font-size: 12px;
  letter-spacing: .04em;
}
.analysis-page .nav a:hover,
.analysis-page .nav button:hover,
.analysis-page .nav a[aria-current="page"] {
  border-bottom-color: transparent;
  border-radius: 999px;
  background: rgba(23,25,20,.065);
  color: var(--atlas-ink);
}
.analysis-page .nav a[aria-current="page"]::before {
  content: "";
  width: 5px;
  height: 5px;
  margin-right: 7px;
  border-radius: 50%;
  background: var(--atlas-signal);
}
.analysis-page .atlas-search-trigger {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: 8px;
  border: 1px solid var(--atlas-rule-strong) !important;
  color: var(--atlas-ink) !important;
}
.analysis-page .atlas-search-trigger kbd {
  font: 10px/1 var(--mono);
  color: var(--atlas-faint);
}

/* Page coordinate strip ---------------------------------------------- */

.atlas-coordinate {
  border-bottom: 1px solid var(--atlas-rule);
  background: rgba(251,250,245,.58);
}
.atlas-coordinate-in {
  max-width: 1280px;
  min-height: 42px;
  margin: 0 auto;
  padding: 0 var(--shell-pad);
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 18px;
  font: 10px/1.3 var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--atlas-faint);
}
.atlas-coordinate-code { color: var(--atlas-signal); }
.atlas-coordinate-path { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.atlas-coordinate-step { display: flex; gap: 4px; }
.atlas-coordinate-step a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 9px;
  border: 1px solid transparent;
  text-decoration: none;
}
.atlas-coordinate-step a:hover { border-color: var(--atlas-rule); background: var(--atlas-sheet); }

/* Editorial hero ------------------------------------------------------ */

.analysis-page .atlas-page-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(360px, 1.28fr);
  gap: clamp(34px, 7vw, 100px);
  align-items: end;
  padding: clamp(58px, 8vw, 104px) 0 clamp(36px, 5vw, 64px);
  margin: 0;
  border-bottom: 1px solid var(--atlas-rule-strong);
}
.analysis-page .atlas-page-hero::after {
  content: attr(data-atlas-index);
  position: absolute;
  right: 0;
  top: clamp(38px, 6vw, 72px);
  font: 700 clamp(72px, 11vw, 148px)/.75 var(--atlas-serif);
  letter-spacing: -.08em;
  color: rgba(23,25,20,.035);
  pointer-events: none;
}
.atlas-hero-kicker {
  align-self: start;
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: -10px;
  font: 10px/1.4 var(--mono);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--atlas-signal);
}
.atlas-hero-kicker::before { content: ""; width: 38px; height: 1px; background: currentColor; }
.analysis-page .atlas-page-hero h1 {
  max-width: 8em;
  margin: 0;
  font-family: var(--atlas-serif);
  font-size: clamp(46px, 5.4vw, 76px);
  font-weight: 600;
  line-height: .98;
  letter-spacing: -.055em;
  color: var(--atlas-ink);
}
.analysis-page .atlas-page-hero > p,
.analysis-page .atlas-page-hero .sub {
  max-width: 700px;
  margin: 0;
  color: var(--atlas-muted);
  font-family: var(--atlas-serif);
  font-size: clamp(17px, 1.45vw, 21px);
  line-height: 1.72;
}
.analysis-page .atlas-page-hero .kicker { display: none; }
.analysis-page .atlas-page-hero .eyebrow { display: none; }
.analysis-page .atlas-page-hero > .meta {
  grid-column: 2;
  margin-top: -26px;
  font: 10px/1.55 var(--mono);
  letter-spacing: .08em;
  color: var(--atlas-faint);
}

/* Page-specific interpretation --------------------------------------- */

.atlas-brief {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  margin: 0 0 clamp(30px, 5vw, 58px);
  border-bottom: 1px solid var(--atlas-rule-strong);
}
.atlas-brief article {
  min-width: 0;
  padding: 22px clamp(16px, 2.2vw, 28px) 24px 0;
}
.atlas-brief article + article {
  padding-left: clamp(16px, 2.2vw, 28px);
  border-left: 1px solid var(--atlas-rule);
}
.atlas-brief-label {
  display: block;
  margin-bottom: 9px;
  font: 9px/1.3 var(--mono);
  letter-spacing: .16em;
  color: var(--atlas-faint);
}
.atlas-brief p { margin: 0; color: var(--atlas-ink); font-size: 13px; line-height: 1.75; }
.atlas-brief .atlas-caution p { color: var(--atlas-muted); }

/* Workbench ----------------------------------------------------------- */

.atlas-workbench {
  position: sticky;
  top: 65px;
  z-index: 35;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  margin: 0 0 30px;
  padding: 7px 8px;
  border: 1px solid var(--atlas-rule-strong);
  background: rgba(251,250,245,.92);
  box-shadow: 6px 6px 0 rgba(23,25,20,.05);
  backdrop-filter: blur(14px);
}
.atlas-workbench-label {
  margin: 0 auto 0 8px;
  font: 10px/1.3 var(--mono);
  letter-spacing: .12em;
  color: var(--atlas-faint);
  text-transform: uppercase;
}
.atlas-tool {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 32px;
  padding: 6px 11px;
  border: 1px solid var(--atlas-rule);
  border-radius: 999px;
  background: transparent;
  color: var(--atlas-muted);
  font: 12px/1.2 var(--sans);
  cursor: pointer;
}
.atlas-tool:hover { border-color: var(--atlas-rule-strong); color: var(--atlas-ink); background: var(--atlas-paper); }
.atlas-tool[data-active="true"] { background: var(--atlas-ink); border-color: var(--atlas-ink); color: var(--atlas-sheet); }
.atlas-toast {
  position: fixed;
  left: 50%;
  bottom: 28px;
  z-index: 90;
  translate: -50% 14px;
  opacity: 0;
  padding: 10px 16px;
  border: 1px solid var(--atlas-rule-strong);
  background: var(--atlas-ink);
  color: var(--atlas-sheet);
  font-size: 12px;
  transition: opacity .18s, translate .18s;
  pointer-events: none;
}
.atlas-toast.show { opacity: 1; translate: -50% 0; }

.atlas-context {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin: -22px 0 30px;
  padding: 16px 18px;
  border: 1px solid var(--atlas-rule-strong);
  border-left: 4px solid var(--atlas-signal);
  background: var(--atlas-ink);
  color: var(--atlas-sheet);
}
.atlas-context > div:first-child {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px 12px;
  align-items: baseline;
}
.atlas-context-kicker {
  color: var(--atlas-signal);
  font: 700 10px/1 ui-monospace, "SFMono-Regular", Menlo, monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.atlas-context strong { font: 600 18px/1.2 var(--atlas-serif); }
.atlas-context small {
  grid-column: 2;
  color: rgba(251,250,245,.66);
  font-size: 12px;
}
.atlas-context-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.atlas-context a {
  padding: 7px 10px;
  border: 1px solid rgba(251,250,245,.34);
  color: var(--atlas-sheet);
  font: 600 11px/1.2 var(--sans);
  text-decoration: none;
}
.atlas-context a:hover { border-color: var(--atlas-signal); color: var(--atlas-signal); }
.analysis-page .is-context-person {
  outline: 2px solid var(--atlas-signal);
  outline-offset: -2px;
  background: color-mix(in srgb, var(--atlas-signal) 9%, transparent);
}

/* Existing components, deliberately re-art-directed ----------------- */

.analysis-page .kpis {
  gap: 0;
  margin: 0 0 clamp(34px, 5vw, 58px);
  border: 1px solid var(--atlas-rule-strong);
  background: rgba(251,250,245,.58);
}
.analysis-page .kpi {
  min-height: 116px;
  padding: 20px 22px;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.analysis-page .kpi + .kpi { border-left: 1px solid var(--atlas-rule); }
.analysis-page .kpi-v {
  font-family: var(--atlas-serif);
  font-size: clamp(26px, 3vw, 40px);
  font-weight: 600;
  letter-spacing: -.035em;
}
.analysis-page .kpi-k {
  margin-top: 8px;
  font: 9px/1.45 var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
}

.analysis-page .sec,
.analysis-page section { scroll-margin-top: 132px; }
.analysis-page .sec { margin-top: clamp(42px, 6vw, 72px); }
.analysis-page .sec-head {
  align-items: end;
  padding-bottom: 11px;
  margin-bottom: 13px;
  border-bottom: 1px solid var(--atlas-rule-strong);
}
.analysis-page .sec-title {
  font-family: var(--atlas-serif);
  font-size: clamp(20px, 2.2vw, 29px);
  font-weight: 600;
  letter-spacing: -.025em;
}
.analysis-page .sec-note { font: 10px/1.5 var(--mono); letter-spacing: .04em; }
.analysis-page h2:not(.caliber-k) {
  font-family: var(--atlas-serif);
  letter-spacing: -.025em;
}

.analysis-page .card,
.analysis-page .panel,
.analysis-page .caliber,
.analysis-page .notice {
  border-color: var(--atlas-rule);
  border-radius: 0;
  background: rgba(251,250,245,.76);
  box-shadow: none;
}
.analysis-page .notice,
.analysis-page .caliber { border-left: 3px solid var(--atlas-ink); }

.analysis-page .input,
.analysis-page input,
.analysis-page select {
  border-color: var(--atlas-rule-strong);
  border-radius: 0 !important;
  background: rgba(251,250,245,.9);
}
.analysis-page .btn,
.analysis-page button { border-radius: 999px; }

.analysis-page .tblwrap,
.analysis-page [style*="overflow-x: auto"],
.analysis-page [style*="overflow-x:auto"] {
  scrollbar-color: var(--atlas-rule-strong) transparent;
}
.analysis-page[data-atlas-page="14"] #flow-scroll {
  max-height: min(72vh, 760px);
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  border-block: 1px solid var(--atlas-rule);
}
.analysis-page[data-atlas-page="14"] #provenance .ex {
  max-height: 460px;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  border-block: 1px solid var(--atlas-rule);
}
.analysis-page .founder-search {
  display: grid;
  grid-template-columns: auto minmax(220px, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
  padding: 12px 14px;
  border: 1px solid var(--atlas-rule-strong);
  background: rgba(251,250,245,.78);
}
.analysis-page .founder-search label {
  font: 10px/1.3 var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--atlas-signal);
}
.analysis-page .founder-search input { width: 100%; }
.analysis-page .founder-search span { color: var(--atlas-faint); font-size: 11px; }
.atlas-institution-compare { margin-top: clamp(42px, 6vw, 72px); }
.atlas-institution-compare #institution-compare { border-top: 1px solid var(--atlas-rule-strong); }
.atlas-institution-row {
  display: grid;
  grid-template-columns: minmax(190px, .65fr) minmax(320px, 1.35fr);
  gap: clamp(28px, 6vw, 84px);
  align-items: center;
  padding: clamp(24px, 4vw, 42px) 0;
  border-bottom: 1px solid var(--atlas-rule-strong);
}
.atlas-institution-name { display: grid; grid-template-columns: auto 1fr; gap: 6px 10px; align-items: center; }
.atlas-institution-name h3 { margin: 0; font: 600 clamp(25px, 3vw, 38px)/1 var(--atlas-serif); letter-spacing: -.04em; }
.atlas-institution-name p { grid-column: 2; margin: 0; color: var(--atlas-faint); font: 10px/1.4 var(--mono); text-transform: uppercase; }
.atlas-institution-measures { display: grid; gap: 8px; }
.atlas-measure-head { display: flex; justify-content: space-between; gap: 20px; color: var(--atlas-muted); font-size: 11px; }
.atlas-measure-head b { color: var(--atlas-ink); font: 600 12px var(--mono); }
.atlas-measure { display: flex; height: 8px; background: rgba(23,25,20,.08); }
.atlas-measure i { display: block; background: var(--atlas-ink); }
.atlas-measure.split i { background: var(--atlas-rule-strong); }
.atlas-measure.split em { display: block; background: var(--atlas-ink); }
.atlas-institution-measures > p { margin: 4px 0 0; color: var(--atlas-faint); font-size: 11px; }
.analysis-page table {
  border-collapse: collapse;
  background: transparent;
}
.analysis-page table thead { position: sticky; top: 113px; z-index: 8; }
.analysis-page table thead th {
  background: rgba(233,229,218,.96);
  backdrop-filter: blur(10px);
  border-bottom-color: var(--atlas-rule-strong) !important;
}
.analysis-page table tbody tr { transition: background .12s, transform .12s; }
.analysis-page table tbody tr:hover { background: rgba(23,25,20,.045); }
.analysis-page table tbody tr[data-id]:hover { box-shadow: inset 2px 0 0 var(--atlas-signal); }
.analysis-page table td,
.analysis-page table th { border-color: var(--atlas-rule) !important; }
.analysis-page .atlas-person-link {
  color: inherit;
  font-weight: inherit;
  text-decoration-color: var(--atlas-rule-strong);
}
.analysis-page .atlas-person-link::after { content: " ↗"; color: var(--atlas-faint); font: 9px var(--mono); }

.atlas-table-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 10px;
  border-top: 1px solid var(--atlas-rule);
  background: rgba(233,229,218,.48);
}
.atlas-table-count { margin-right: auto; color: var(--atlas-faint); font: 10px/1.3 var(--mono); letter-spacing: .06em; }
.atlas-window-hidden { display: none !important; }
.analysis-page.density-compact table td,
.analysis-page.density-compact table th { padding-top: 5px !important; padding-bottom: 5px !important; }

/* Search palette ------------------------------------------------------ */

.atlas-command {
  width: min(720px, calc(100vw - 28px));
  max-height: min(760px, calc(100vh - 44px));
  padding: 0;
  border: 1px solid var(--atlas-ink);
  border-radius: 0;
  background: var(--atlas-sheet);
  color: var(--atlas-ink);
  box-shadow: 18px 18px 0 rgba(23,25,20,.13);
}
.atlas-command::backdrop { background: rgba(20,22,18,.58); backdrop-filter: blur(5px); }
.atlas-command-head {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  min-height: 58px;
  padding: 0 12px 0 20px;
  border-bottom: 1px solid var(--atlas-rule-strong);
}
.atlas-command-head span { font: 10px var(--mono); letter-spacing: .15em; color: var(--atlas-faint); }
.atlas-command-close { width: 36px; height: 36px; border: 0; background: transparent; font-size: 22px; cursor: pointer; }
.atlas-command-search { position: relative; padding: 18px 20px; }
.atlas-command-search input {
  width: 100%;
  min-height: 62px;
  padding: 0 18px;
  border: 1px solid var(--atlas-rule-strong);
  background: var(--atlas-paper);
  color: var(--atlas-ink);
  font: 22px var(--atlas-serif);
}
.atlas-command-hint { margin: 9px 0 0; color: var(--atlas-faint); font-size: 11px; }
.atlas-command-results { max-height: 430px; overflow: auto; padding: 0 20px 20px; }
.atlas-command-result {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 4px;
  border-bottom: 1px solid var(--atlas-rule);
  text-decoration: none;
}
.atlas-command-result:hover { background: var(--atlas-paper); }
.atlas-command-name { font-family: var(--atlas-serif); font-size: 17px; }
.atlas-command-meta { overflow: hidden; color: var(--atlas-faint); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.atlas-command-empty { padding: 26px 2px; color: var(--atlas-muted); font-size: 13px; }

/* Existing detail modals were one-off dark islands. Keep their rich content,
   but return them to the atlas surface and expose a canonical profile exit. */
.analysis-page .atlas-person-modal { background: rgba(23,25,20,.62) !important; backdrop-filter: blur(6px); }
.analysis-page .atlas-person-card {
  border: 1px solid var(--atlas-ink) !important;
  border-radius: 0 !important;
  background: var(--atlas-sheet) !important;
  color: var(--atlas-ink) !important;
  box-shadow: 14px 14px 0 rgba(23,25,20,.13);
}
.analysis-page .atlas-person-card [style*="background:#0f1218"],
.analysis-page .atlas-person-card [style*="background: #0f1218"],
.analysis-page .atlas-person-card [style*="background:#1d2635"] { background: var(--atlas-paper) !important; }
.analysis-page .atlas-person-card [style*="color:#e6e9f0"],
.analysis-page .atlas-person-card [style*="color: #e6e9f0"] { color: var(--atlas-ink) !important; }
.analysis-page .atlas-person-card [style*="color:#8a93a6"],
.analysis-page .atlas-person-card [style*="color: #8a93a6"] { color: var(--atlas-muted) !important; }
.analysis-page .atlas-person-card [style*="color:#6b7280"],
.analysis-page .atlas-person-card [style*="color: #6b7280"] { color: var(--atlas-faint) !important; }
.analysis-page .atlas-person-card [style*="color:#7ee2a8"] { color: var(--atlas-signal) !important; }
.atlas-profile-cta {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  margin-top: 16px;
  padding: 0 15px;
  border: 1px solid var(--atlas-ink);
  background: var(--atlas-ink);
  color: var(--atlas-sheet) !important;
  font-size: 12px;
  text-decoration: none;
}
.atlas-profile-cta:hover { background: var(--atlas-signal); }

.atlas-network-people {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
  padding-top: 13px;
  border-top: 1px solid var(--atlas-rule);
}
.atlas-network-people a {
  padding: 5px 9px;
  border: 1px solid var(--atlas-rule);
  color: var(--atlas-muted);
  font-size: 11px;
  text-decoration: none;
}
.atlas-network-people a:hover { border-color: var(--atlas-rule-strong); color: var(--atlas-ink); }

/* Group map ----------------------------------------------------------- */

.atlas-route-map {
  margin-top: clamp(70px, 10vw, 128px);
  padding: clamp(34px, 5vw, 58px) 0;
  border-top: 1px solid var(--atlas-rule-strong);
  border-bottom: 1px solid var(--atlas-rule-strong);
}
.atlas-route-map-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: end;
  margin-bottom: 22px;
}
.atlas-route-map-head h2 { font-family: var(--atlas-serif); font-size: 28px; }
.atlas-route-map-head p { max-width: 480px; margin: 0; color: var(--atlas-muted); font-size: 12px; }
.atlas-route-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); border: 1px solid var(--atlas-rule); }
.atlas-route-group { min-width: 0; padding: 18px; }
.atlas-route-group + .atlas-route-group { border-left: 1px solid var(--atlas-rule); }
.atlas-route-group h3 { margin-bottom: 12px; font: 10px var(--mono); letter-spacing: .14em; color: var(--atlas-faint); }
.atlas-route-group a {
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 5px;
  padding: 7px 0;
  color: var(--atlas-muted);
  font-size: 12px;
  text-decoration: none;
}
.atlas-route-group a span { color: var(--atlas-faint); font: 9px var(--mono); }
.atlas-route-group a:hover,
.atlas-route-group a[aria-current="page"] { color: var(--atlas-ink); }
.atlas-route-group a[aria-current="page"] { font-weight: 600; }
.atlas-route-group a[aria-current="page"] span { color: var(--atlas-signal); }

.analysis-page .foot {
  margin-top: 0;
  padding-top: 28px;
  border-top: 0;
  color: var(--atlas-faint);
}

/* Repair the formerly standalone future-destinations page ------------ */

.analysis-page .wrap { max-width: 1280px; padding: 0 var(--shell-pad) 80px; }
.analysis-page .timeline-bars { gap: 8px; }
.analysis-page .tl-bar {
  border-radius: 0;
  background: var(--atlas-ink);
}
.analysis-page .topic {
  border-color: var(--atlas-rule);
  border-radius: 0;
  background: rgba(251,250,245,.78);
}
.analysis-page .topic:hover { background: var(--atlas-ink); border-color: var(--atlas-ink); color: var(--atlas-sheet); }
.analysis-page #net { border-radius: 0; background: #e9e5da; }
.analysis-page .tooltip { border-radius: 0; background: var(--atlas-ink); }

@media (max-width: 900px) {
  .analysis-page .atlas-page-hero { grid-template-columns: 1fr; gap: 22px; }
  .analysis-page .atlas-page-hero > p,
  .analysis-page .atlas-page-hero .sub { max-width: 760px; }
  .analysis-page .atlas-page-hero > .meta { grid-column: 1; margin-top: -12px; }
  .atlas-brief { grid-template-columns: 1fr 1fr; }
  .atlas-brief article:first-child { grid-column: 1 / -1; border-bottom: 1px solid var(--atlas-rule); }
  .atlas-brief article:nth-child(2) { padding-left: 0; border-left: 0; }
  .atlas-route-grid { grid-template-columns: 1fr 1fr; }
  .atlas-route-group:nth-child(3) { border-left: 0; border-top: 1px solid var(--atlas-rule); }
  .atlas-route-group:nth-child(4) { border-top: 1px solid var(--atlas-rule); }
}

@media (max-width: 720px) {
  .analysis-page .topbar-in { min-height: 56px; padding-top: 6px; padding-bottom: 6px; }
  .analysis-page .brand-sub { display: none; }
  .analysis-page .nav { order: initial; flex-basis: auto; flex-wrap: nowrap; }
  .analysis-page .nav a { display: none; }
  .analysis-page .nav a[aria-current="page"],
  .analysis-page .nav a:first-child,
  .analysis-page .atlas-search-trigger { display: inline-flex; }
  .analysis-page .atlas-search-trigger { margin-left: 0; }
  .analysis-page .atlas-search-trigger kbd { display: none; }
  .atlas-coordinate-in { grid-template-columns: auto 1fr; min-height: 38px; }
  .atlas-coordinate-step { display: none; }
  .analysis-page .atlas-page-hero { padding-top: 48px; padding-bottom: 34px; }
  .analysis-page .atlas-page-hero h1 { font-size: clamp(40px, 14vw, 58px); }
  .analysis-page .atlas-page-hero > p,
  .analysis-page .atlas-page-hero .sub { font-size: 16px; }
  .atlas-brief { grid-template-columns: 1fr; }
  .atlas-brief article,
  .atlas-brief article + article { grid-column: auto; padding: 17px 0; border-left: 0; border-bottom: 1px solid var(--atlas-rule); }
  .atlas-workbench { top: 57px; overflow-x: auto; scrollbar-width: none; }
  .atlas-workbench::-webkit-scrollbar { display: none; }
  .atlas-workbench-label { display: none; }
  .atlas-tool { white-space: nowrap; }
  .analysis-page .kpis { grid-template-columns: 1fr 1fr !important; }
  .analysis-page .kpi { min-height: 96px; padding: 15px; }
  .analysis-page .kpi:nth-child(odd) { border-left: 0; }
  .analysis-page .kpi:nth-child(n+3) { border-top: 1px solid var(--atlas-rule); }
  .analysis-page table thead { top: 105px; }
  .atlas-route-map-head { display: block; }
  .atlas-route-map-head p { margin-top: 8px; }
  .atlas-route-grid { grid-template-columns: 1fr; }
  .atlas-route-group + .atlas-route-group { border-left: 0; border-top: 1px solid var(--atlas-rule); }
  .analysis-page .founder-search { grid-template-columns: 1fr; gap: 7px; }
  .analysis-page[data-atlas-page="14"] #flow-scroll { max-height: 620px; }
  .atlas-institution-row { grid-template-columns: 1fr; gap: 18px; }
  .atlas-context { grid-template-columns: 1fr; gap: 13px; margin-top: -18px; }
  .atlas-context > div:first-child { grid-template-columns: 1fr; }
  .atlas-context small { grid-column: auto; }
  .atlas-context-actions { justify-content: flex-start; }
}

@media (max-width: 430px) {
  .analysis-page .shell,
  .analysis-page .wrap { --shell-pad: 16px; }
  .analysis-page .nav a[aria-current="page"] { display: inline-flex; }
  .analysis-page .atlas-page-hero::after { font-size: 84px; }
  .analysis-page .kpis { grid-template-columns: 1fr !important; }
  .analysis-page .kpi + .kpi { border-left: 0; border-top: 1px solid var(--atlas-rule); }
  .atlas-tool[data-tool="density"] { display: none; }
  .atlas-command-result { grid-template-columns: auto 1fr; }
  .atlas-command-meta { grid-column: 2; }
}

@media (prefers-reduced-motion: no-preference) {
  .analysis-page .atlas-page-hero > * {
    opacity: 0;
    transform: translateY(12px);
    animation: atlas-in .55s cubic-bezier(.2,.8,.2,1) forwards;
  }
  .analysis-page .atlas-page-hero > :nth-child(2) { animation-delay: .07s; }
  .analysis-page .atlas-page-hero > :nth-child(3) { animation-delay: .14s; }
  @keyframes atlas-in { to { opacity: 1; transform: none; } }
}

@media print {
  .analysis-page { background: #fff; }
  .analysis-page::before,
  .analysis-page::after,
  .analysis-page .topbar,
  .atlas-coordinate,
  .atlas-workbench,
  .atlas-context,
  .atlas-route-map,
  .atlas-toast { display: none !important; }
  .atlas-window-hidden { display: table-row !important; }
  .analysis-page table thead { position: static; }
}

/* Professional application baseline ---------------------------------
   Analysis pages share one dense, conventional product system. */
.atlas-page.analysis-page {
  --atlas-paper: #f5f7f8;
  --atlas-sheet: #ffffff;
  --atlas-ink: #17212b;
  --atlas-muted: #667085;
  --atlas-faint: #7b8794;
  --atlas-rule: #e2e7ec;
  --atlas-rule-strong: #cbd3db;
  --atlas-signal: #176b59;
  --atlas-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  --ground: var(--atlas-paper);
  --surface: #fff;
  --surface-2: #f8fafb;
  --surface-3: #eef2f5;
  --line: var(--atlas-rule);
  --line-strong: var(--atlas-rule-strong);
  --ink: var(--atlas-ink);
  --ink-2: var(--atlas-muted);
  --ink-3: var(--atlas-faint);
  background: var(--atlas-paper);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
}
.atlas-page.analysis-page::before,
.atlas-page.analysis-page::after { display: none; }
.atlas-page.analysis-page .shell,
.atlas-page.analysis-page .wrap { max-width: 1180px; }

.atlas-page.analysis-page .topbar,
.atlas-page.analysis-page > nav.nav {
  border-bottom: 1px solid var(--atlas-rule);
  background: rgba(255,255,255,.96) !important;
}
.atlas-page.analysis-page .topbar-in { min-height: 60px; gap: 24px; }
.atlas-page.analysis-page .brand-name { font-family: inherit; font-size: 20px; font-weight: 760; }
.atlas-page.analysis-page .brand-sub { padding-left: 0; border: 0; font-size: 11px; letter-spacing: 0; }
.atlas-page.analysis-page .nav a,
.atlas-page.analysis-page .nav button { min-height: 36px; padding: 7px 10px; border-radius: 6px; font-size: 12px; letter-spacing: 0; }
.atlas-page.analysis-page .nav a:hover,
.atlas-page.analysis-page .nav button:hover,
.atlas-page.analysis-page .nav a[aria-current="page"] { border-radius: 6px; background: #f1f5f7; }
.atlas-page.analysis-page .atlas-search-trigger { margin-left: 5px; border: 1px solid var(--atlas-rule-strong) !important; }

.atlas-page.analysis-page .atlas-coordinate { border-bottom: 1px solid var(--atlas-rule); background: #fff; }
.atlas-page.analysis-page .atlas-coordinate-in { max-width: 1180px; min-height: 38px; gap: 14px; font-family: inherit; font-size: 11px; letter-spacing: 0; text-transform: none; }
.atlas-page.analysis-page .atlas-coordinate-code { color: var(--atlas-signal); font-weight: 650; }
.atlas-page.analysis-page .atlas-coordinate-step a { min-height: 28px; border-radius: 5px; }

.atlas-page.analysis-page .atlas-page-hero {
  display: block;
  padding: 28px 0 20px;
  border-bottom: 0;
}
.atlas-page.analysis-page .atlas-page-hero::after { display: none; }
.atlas-page.analysis-page .atlas-hero-kicker {
  display: block;
  margin: 0 0 7px;
  color: var(--atlas-signal);
  font-family: inherit;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0;
  text-transform: none;
}
.atlas-page.analysis-page .atlas-hero-kicker::before { display: none; }
.atlas-page.analysis-page .atlas-page-hero h1 {
  max-width: none;
  margin: 0;
  font-family: inherit;
  font-size: clamp(30px, 3.5vw, 42px);
  font-weight: 730;
  line-height: 1.18;
  letter-spacing: -.025em;
}
.atlas-page.analysis-page .atlas-page-hero > p,
.atlas-page.analysis-page .atlas-page-hero .sub {
  max-width: 800px;
  margin-top: 10px;
  color: var(--atlas-muted);
  font-family: inherit;
  font-size: 14px;
  line-height: 1.7;
}
.atlas-page.analysis-page .atlas-page-hero > .meta { margin-top: 8px; font-family: inherit; font-size: 11px; letter-spacing: 0; }
.atlas-page.analysis-page .atlas-page-hero .kicker,
.atlas-page.analysis-page .atlas-page-hero .eyebrow { display: none !important; }

.atlas-page.analysis-page .atlas-brief { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 0 0 18px; border: 0; }
.atlas-page.analysis-page .atlas-brief article,
.atlas-page.analysis-page .atlas-brief article + article {
  min-width: 0;
  padding: 15px 16px;
  background: #fff;
  border: 1px solid var(--atlas-rule);
  border-radius: 9px;
}
.atlas-page.analysis-page .atlas-brief-label { margin-bottom: 7px; color: var(--atlas-signal); font-family: inherit; font-size: 11px; font-weight: 650; letter-spacing: 0; }
.atlas-page.analysis-page .atlas-brief p { font-size: 12px; line-height: 1.65; }

.atlas-page.analysis-page .atlas-workbench {
  top: 61px;
  min-height: 46px;
  margin-bottom: 20px;
  padding: 6px 7px;
  border: 1px solid var(--atlas-rule);
  border-radius: 8px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 1px 2px rgba(16,24,40,.04);
}
.atlas-page.analysis-page .atlas-workbench-label { font-family: inherit; font-size: 11px; letter-spacing: 0; text-transform: none; }
.atlas-page.analysis-page .atlas-tool { min-height: 32px; border-radius: 6px; background: #fff; }
.atlas-page.analysis-page .atlas-tool[data-active="true"] { color: #fff; background: var(--atlas-signal); border-color: var(--atlas-signal); }
.atlas-page.analysis-page .atlas-toast { border: 0; border-radius: 7px; background: var(--atlas-ink); color: #fff; }

.atlas-page.analysis-page .atlas-context { margin: -8px 0 20px; padding: 14px 16px; border: 1px solid #cde2da; border-left: 4px solid var(--atlas-signal); border-radius: 8px; background: #eef7f3; color: var(--atlas-ink); }
.atlas-page.analysis-page .atlas-context-kicker { color: var(--atlas-signal); font-family: inherit; font-size: 11px; font-weight: 650; line-height: 1.2; letter-spacing: 0; text-transform: none; }
.atlas-page.analysis-page .atlas-context strong { font-family: inherit; font-size: 16px; font-weight: 650; line-height: 1.25; }
.atlas-page.analysis-page .atlas-context small { color: var(--atlas-muted); }
.atlas-page.analysis-page .atlas-context a { border: 1px solid var(--atlas-rule-strong); border-radius: 5px; color: var(--atlas-ink); background: #fff; }

.atlas-page.analysis-page .kpis { gap: 1px; margin: 0 0 22px; border: 1px solid var(--atlas-rule); border-radius: 10px; background: var(--atlas-rule); overflow: hidden; }
.atlas-page.analysis-page .kpi { min-height: 92px; padding: 16px 18px; background: #fff; }
.atlas-page.analysis-page .kpi + .kpi { border-left: 0; }
.atlas-page.analysis-page .kpi-v { font-family: inherit; font-size: clamp(23px, 2.5vw, 30px); font-weight: 680; letter-spacing: -.02em; }
.atlas-page.analysis-page .kpi-k { margin-top: 5px; font-family: inherit; font-size: 11px; letter-spacing: 0; text-transform: none; }
.atlas-page.analysis-page .sec { margin-top: 32px; }
.atlas-page.analysis-page .sec-head { align-items: end; padding-bottom: 10px; margin-bottom: 12px; border-bottom-color: var(--atlas-rule); }
.atlas-page.analysis-page .sec-title,
.atlas-page.analysis-page h2:not(.caliber-k) { font-family: inherit; font-size: 20px; font-weight: 680; letter-spacing: -.015em; }
.atlas-page.analysis-page .sec-note { font-family: inherit; font-size: 11px; letter-spacing: 0; }
.atlas-page.analysis-page .card,
.atlas-page.analysis-page .panel,
.atlas-page.analysis-page .caliber,
.atlas-page.analysis-page .notice { border-color: var(--atlas-rule); border-radius: 9px; background: #fff; box-shadow: 0 1px 2px rgba(16,24,40,.04); }
.atlas-page.analysis-page .notice,
.atlas-page.analysis-page .caliber { border-left: 3px solid var(--atlas-signal); }
.atlas-page.analysis-page .input,
.atlas-page.analysis-page input,
.atlas-page.analysis-page select { border-color: var(--atlas-rule-strong); border-radius: 6px !important; background: #fff; }
.atlas-page.analysis-page .btn,
.atlas-page.analysis-page button { border-radius: 6px; }
.atlas-page.analysis-page table thead { top: 107px; }
.atlas-page.analysis-page table thead th { background: rgba(248,250,251,.96); }
.atlas-page.analysis-page table tbody tr:hover { background: #f8fafb; }
.atlas-page.analysis-page .atlas-table-actions { background: #f8fafb; }
.atlas-page.analysis-page .atlas-table-count { font-family: inherit; letter-spacing: 0; }

.atlas-page.analysis-page .atlas-command { border: 1px solid var(--atlas-rule-strong); border-radius: 10px; background: #fff; box-shadow: 0 20px 48px rgba(16,24,40,.18); }
.atlas-page.analysis-page .atlas-command-head span { font-family: inherit; letter-spacing: 0; }
.atlas-page.analysis-page .atlas-command-search input { min-height: 54px; border-radius: 7px !important; background: #fff; font-family: inherit; font-size: 17px; }
.atlas-page.analysis-page .atlas-command-name { font-family: inherit; font-size: 15px; font-weight: 620; }
.atlas-page.analysis-page .atlas-person-card { border: 1px solid var(--atlas-rule) !important; border-radius: 10px !important; background: #fff !important; box-shadow: 0 20px 48px rgba(16,24,40,.18); }
.atlas-page.analysis-page .atlas-profile-cta { border-radius: 6px; background: var(--atlas-signal); border-color: var(--atlas-signal); color: #fff !important; }

.atlas-page.analysis-page .atlas-route-map { margin-top: 56px; padding: 28px 0; border-color: var(--atlas-rule); }
.atlas-page.analysis-page .atlas-route-map-head h2 { font-family: inherit; font-size: 24px; }
.atlas-page.analysis-page .atlas-route-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; border: 0; }
.atlas-page.analysis-page .atlas-route-group,
.atlas-page.analysis-page .atlas-route-group + .atlas-route-group { padding: 15px; background: #fff; border: 1px solid var(--atlas-rule); border-radius: 8px; }
.atlas-page.analysis-page .atlas-route-group h3 { font-family: inherit; font-size: 12px; letter-spacing: 0; }
.atlas-page.analysis-page .atlas-route-group a span { font-family: inherit; }
.atlas-page.analysis-page .foot { padding-top: 22px; color: var(--atlas-faint); }

@media (max-width: 900px) {
  .atlas-page.analysis-page .atlas-brief { grid-template-columns: 1fr; gap: 8px; }
  .atlas-page.analysis-page .atlas-brief article,
  .atlas-page.analysis-page .atlas-brief article + article { grid-column: auto; padding: 13px 14px; border: 1px solid var(--atlas-rule); }
  .atlas-page.analysis-page .atlas-route-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .atlas-page.analysis-page .atlas-route-group,
  .atlas-page.analysis-page .atlas-route-group + .atlas-route-group { border: 1px solid var(--atlas-rule); }
}

@media (max-width: 720px) {
  .atlas-page.analysis-page .topbar-in { min-height: 56px; }
  .atlas-page.analysis-page .atlas-coordinate-in { min-height: 36px; }
  .atlas-page.analysis-page .atlas-page-hero { padding: 22px 0 16px; }
  .atlas-page.analysis-page .atlas-page-hero h1 { font-size: 30px; }
  .atlas-page.analysis-page .atlas-page-hero > p,
  .atlas-page.analysis-page .atlas-page-hero .sub { font-size: 13px; }
  .atlas-page.analysis-page .atlas-workbench { top: 57px; margin-bottom: 16px; }
  .atlas-page.analysis-page .kpis { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .atlas-page.analysis-page .kpi { min-height: 82px; padding: 13px 14px; }
  .atlas-page.analysis-page .kpi + .kpi { border-top: 0; }
  .atlas-page.analysis-page table thead { top: 99px; }
  .atlas-page.analysis-page .atlas-route-grid { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
  .atlas-page.analysis-page .shell,
  .atlas-page.analysis-page .wrap { --shell-pad: 14px; }
  .atlas-page.analysis-page .kpis { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .atlas-page.analysis-page .kpi + .kpi { border-left: 0; }
}

/* Data-first analysis flow ------------------------------------------ */
.atlas-page.analysis-page .atlas-page-hero { padding: 22px 0 14px; }
.atlas-page.analysis-page .atlas-page-hero h1 { font-size: clamp(28px, 3vw, 36px); }
.atlas-page.analysis-page .atlas-page-hero > p,
.atlas-page.analysis-page .atlas-page-hero .sub { max-width: 860px; margin-top: 7px; font-size: 13px; }
.atlas-page.analysis-page .atlas-hero-kicker { display: none; }
.atlas-page.analysis-page .atlas-method { margin: 0 0 14px; background: #fff; border: 1px solid var(--atlas-rule); border-radius: 8px; }
.atlas-page.analysis-page .atlas-method summary { min-height: 44px; display: flex; align-items: center; gap: 10px; padding: 0 14px; list-style: none; cursor: pointer; }
.atlas-page.analysis-page .atlas-method summary::-webkit-details-marker { display: none; }
.atlas-page.analysis-page .atlas-method summary span { font-size: 12px; font-weight: 650; }
.atlas-page.analysis-page .atlas-method summary small { color: var(--atlas-muted); font-size: 11px; }
.atlas-page.analysis-page .atlas-method summary::after { content: "+"; margin-left: auto; color: var(--atlas-signal); font-size: 18px; }
.atlas-page.analysis-page .atlas-method[open] summary::after { content: "−"; }
.atlas-page.analysis-page .atlas-method-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--atlas-rule); }
.atlas-page.analysis-page .atlas-method-grid article { min-width: 0; padding: 14px; }
.atlas-page.analysis-page .atlas-method-grid article + article { border-left: 1px solid var(--atlas-rule); }
.atlas-page.analysis-page .atlas-method-grid article > span { display: block; margin-bottom: 6px; color: var(--atlas-signal); font-size: 11px; font-weight: 650; }
.atlas-page.analysis-page .atlas-method-grid p { margin: 0; color: var(--atlas-muted); font-size: 12px; line-height: 1.65; }
.atlas-page.analysis-page .atlas-workbench { margin-bottom: 14px; }

@media (max-width: 720px) {
  .atlas-page.analysis-page .atlas-page-hero { padding: 18px 0 12px; }
  .atlas-page.analysis-page .atlas-page-hero h1 { font-size: 27px; }
  .atlas-page.analysis-page .atlas-method summary { align-items: flex-start; flex-direction: column; gap: 2px; padding: 10px 42px 10px 12px; position: relative; }
  .atlas-page.analysis-page .atlas-method summary::after { position: absolute; top: 11px; right: 13px; }
  .atlas-page.analysis-page .atlas-method-grid { grid-template-columns: 1fr; }
  .atlas-page.analysis-page .atlas-method-grid article + article { border-top: 1px solid var(--atlas-rule); border-left: 0; }
}

/* Related analysis is a short next-step panel, not a repeated site map. */
.atlas-page.analysis-page .atlas-coordinate-code { text-decoration: none; }
.atlas-page.analysis-page .atlas-coordinate-path strong { color: var(--atlas-ink); font-weight: 620; }
.atlas-page.analysis-page .atlas-route-map { margin-top: 36px; padding: 22px 0; }
.atlas-page.analysis-page .atlas-route-map-head { align-items: center; margin-bottom: 12px; }
.atlas-page.analysis-page .atlas-route-map-head span { display: block; margin-bottom: 3px; color: var(--atlas-muted); font-size: 11px; }
.atlas-page.analysis-page .atlas-route-map-head h2 { margin: 0; font-size: 18px; }
.atlas-page.analysis-page .atlas-route-map-head > a { color: var(--atlas-signal); font-size: 12px; text-decoration: none; }
.atlas-page.analysis-page .atlas-route-map-head > a:hover { text-decoration: underline; }
.atlas-page.analysis-page .atlas-route-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.atlas-page.analysis-page .atlas-route-link {
  position: relative;
  min-width: 0;
  min-height: 70px;
  display: block;
  padding: 11px 30px 10px 12px;
  color: var(--atlas-ink);
  background: #fff;
  border: 1px solid var(--atlas-rule);
  border-radius: 7px;
  text-decoration: none;
}
.atlas-page.analysis-page .atlas-route-link:hover { border-color: var(--atlas-rule-strong); background: #f8fafb; }
.atlas-page.analysis-page .atlas-route-link strong { display: block; font-size: 13px; }
.atlas-page.analysis-page .atlas-route-link span { display: -webkit-box; margin-top: 4px; overflow: hidden; color: var(--atlas-muted); font-size: 10px; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.atlas-page.analysis-page .atlas-route-link i { position: absolute; top: 11px; right: 11px; color: var(--atlas-signal); font-style: normal; }

@media (max-width: 720px) {
  .atlas-page.analysis-page .atlas-route-map { margin-top: 26px; padding: 18px 0; }
  .atlas-page.analysis-page .atlas-route-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .atlas-page.analysis-page .atlas-route-link { min-height: 62px; }
  .atlas-page.analysis-page .atlas-route-link span { -webkit-line-clamp: 1; }
}

/* Keep table headers in document flow. Chromium offsets sticky table cells by
   the toolbar inset before the table reaches the viewport, which can cover the
   first data row on narrow screens. A stable reading order is more valuable
   than a decorative sticky header here. */
.atlas-page.analysis-page table thead { position: static; }
.atlas-page.analysis-page table thead th { position: static; }
