/* Shared visual system: foundations, shell, content and controls. Responsive variants follow. */

:root {
  --bg: #f6f6f8;
  --surface: #fff;
  --surface-alt: #f8f8fa;
  --ink: #202124;
  --muted: #62666f;
  --line: #dedfe4;
  --accent: #225dcc;
  --accent-soft: #edf3ff;
  --positive: #0d7560;
  --positive-bg: #e8f7f0;
  --positive-bar: #81cdb7;
  --negative: #a94150;
  --negative-bg: #fff0f2;
  --negative-bar: #e9a0aa;
  --mixed: #82611a;
  --mixed-bg: #fff6df;
  --mixed-bar: #e8ca85;
  --shadow: none;
  --radius: 12px;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color: var(--ink);
  background: var(--bg);
  font-synthesis: none;
  color-scheme: light;
}

:root[data-theme=dark] {
  --bg: #141416;
  --surface: #1e1e21;
  --surface-alt: #242427;
  --ink: #f1f1f3;
  --muted: #b1b1ba;
  --line: #38383f;
  --accent: #9ebeff;
  --accent-soft: #26344d;
  --positive: #85d7bb;
  --positive-bg: #173b35;
  --positive-bar: #498d7d;
  --negative: #f2a2ad;
  --negative-bg: #3d2630;
  --negative-bar: #a45867;
  --mixed: #e9cb85;
  --mixed-bg: #3c3424;
  --mixed-bar: #9a824b;
  --shadow: none;
  color-scheme: dark;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
}

a {
  color: inherit;
  text-decoration: none;
}

button,input,select {
  font: inherit;
}

button,a,select,input {
  -webkit-tap-highlight-color: transparent;
}

button {
  cursor: pointer;
  border: 0;
}

button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 4px;
}

button,select,input {
  color: var(--ink);
}

h1,h2,h3,p {
  margin: 0;
}

small {
  font-size: 11px;
}

strong {
  font-weight: 620;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.skip {
  position: fixed;
  top: -80px;
  left: 20px;
  background: var(--surface);
  padding: 12px;
  z-index: 10;
}

.skip:focus {
  top: 12px;
}

.topbar {
  height: 76px;
  padding: 0 40px;
  display: flex;
  align-items: center;
  gap: 44px;
  background: var(--surface);
  border-bottom: 1px solid var(--line);
  min-height: 76px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 20px;
  font-weight: 690;
  letter-spacing: -.5px;
  white-space: nowrap;
}

.brand-icon {
  display: inline-block;
  width: 36px;
  height: 30px;
  flex-shrink: 0;
  background: #174df6;
  mask: url('/static/bird.svg') center/contain no-repeat;
  -webkit-mask: url('/static/bird.svg') center/contain no-repeat;
}

[data-theme=dark] .brand-icon {
  background: #b7caff;
}

.brand-tag {
  display: none;
  font-size: 8px;
  letter-spacing: 1.1px;
  color: var(--muted);
  font-weight: 600;
  margin-left: 8px;
  vertical-align: middle;
  border: 1px solid var(--line);
  padding: 2px 4px;
  border-radius: 3px;
}

.topbar nav {
  display: flex;
  height: 100%;
  gap: 28px;
  min-height: 44px;
}

.topbar nav>a {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 14px;
  position: relative;
  font-weight: 550;
}

.topbar nav>a>span {
  font-size: 20px;
}

.topbar nav>a[aria-current] {
  color: var(--accent);
}

.topbar nav>a[aria-current]:after {
  content: "";
  position: absolute;
  height: 2px;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--accent);
  border-radius: 3px 3px 0 0;
}

.topbar nav small {
  padding: 1px 6px;
  background: var(--accent-soft);
  border-radius: 10px;
  color: var(--accent);
}

.theme-switch {
  display: flex;
  margin-left: auto;
  padding: 3px;
  gap: 2px;
  border: 1px solid var(--line);
  border-radius: 8px;
}

.theme-switch button {
  background: transparent;
  padding: 5px 8px;
  border-radius: 5px;
  color: var(--muted);
  font-size: 12px;
  display: flex;
  gap: 6px;
  align-items: center;
  min-height: 32px;
}

.theme-switch button[aria-pressed=true] {
  background: var(--accent-soft);
  color: var(--accent);
}

main {
  max-width: 1560px;
  margin: auto;
  padding: 30px 40px 48px;
  padding-top: 18px;
}

.demo-note {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-size: 12px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 10px;
}

.demo-note a {
  margin-left: auto;
  color: var(--accent);
  white-space: nowrap;
}

.demo-pill {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.2px;
  border: 1px solid var(--line);
  padding: 3px 6px;
  border-radius: 4px;
  color: var(--muted);
}

.page-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0 24px;
  gap: 20px;
}

.eyebrow {
  font-size: 11px;
  color: var(--accent);
  letter-spacing: 1.8px;
  font-weight: 650;
}

.page-heading h1 {
  font-size: 32px;
  font-weight: 650;
  letter-spacing: -1px;
  line-height: 1.2;
  margin-top: 0;
  margin: 0;
}

.heading-dot {
  color: var(--accent);
}

.subtitle {
  color: var(--muted);
  font-size: 15px;
  margin-top: 4px;
}

.as-of {
  font-size: 11px;
  position: relative;
  color: var(--muted);
  padding-left: 15px;
}

.as-of small {
  display: block;
  margin-top: 6px;
  font-size: 10px;
}

.status-dot {
  height: 6px;
  width: 6px;
  border-radius: 50%;
  background: var(--muted);
  position: absolute;
  left: 0;
  top: 6px;
}

.controls {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  margin-bottom: 12px;
  flex-wrap: wrap;
}

.filters {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
  flex: 1;
}

.filters select {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 7px;
  height: 39px;
  font-size: 12px;
  padding: 0 30px 0 12px;
  min-width: 135px;
}

.search {
  display: flex;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
  height: 39px;
  padding: 0 10px;
  color: var(--muted);
}

.search>span:first-child {
  font-size: 23px;
}

.search input {
  border: 0;
  background: transparent;
  min-width: 0;
  width: 170px;
  font-size: 14px;
  outline-offset: 7px;
}

.search input::placeholder {
  color: var(--muted);
}

.filter-submit {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 7px;
  font-size: 11px;
  height: 39px;
  padding: 0 13px;
  color: var(--muted);
  display: inline-block;
}

.filter-submit:hover {
  color: var(--accent);
  border-color: var(--accent);
}

.switch {
  display: flex;
  align-items: center;
  border: 0;
  border-radius: 8px;
  background: var(--surface-alt);
  padding: 3px;
  gap: 2px;
  flex-wrap: wrap;
}

.switch a {
  color: var(--muted);
  font-size: 13px;
  white-space: nowrap;
  border-radius: 5px;
  padding: 8px 12px;
}

.switch a[aria-current] {
  background: var(--surface);
  color: var(--ink);
  font-weight: 600;
  box-shadow: 0 1px 4px #0001;
}

.switch a:hover {
  color: var(--accent);
}

.view-switch span {
  font-size: 17px;
  vertical-align: -1px;
  margin-right: 4px;
}

.board-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 13px;
  gap: 15px;
  margin: 16px 0 12px;
}

.board-toolbar>p {
  font-size: 13px;
  color: var(--muted);
}

.board-toolbar strong {
  color: var(--ink);
}

.toolbar-divider {
  margin: 0 10px;
  color: var(--line);
}

.horizons {
  padding: 2px;
  background: transparent;
}

.horizons a {
  font-size: 13px;
  padding: 8px 12px;
}

.radar-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 400px;
  align-items: start;
  gap: 24px;
}

.card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: none;
  overflow: hidden;
}

.board {
  min-width: 0;
}

.timeline {
  min-width: 680px;
}

.timeline-heading {
  height: 52px;
  display: grid;
  grid-template-columns: 300px minmax(0,1fr);
  padding: 0 24px;
  gap: 20px;
  border-bottom: 1px solid var(--line);
  position: sticky;
  top: 0;
  background: var(--surface);
  z-index: 3;
}

.timeline-heading>div:first-child {
  display: flex;
  justify-content: center;
  flex-direction: column;
  font-size: 13px;
}

.timeline-heading small {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 3px;
}

.axis {
  position: relative;
  margin-right: 5px;
}

.tick-label {
  position: absolute;
  bottom: 16px;
  font-size: 12px;
  color: var(--muted);
  transform: translateX(-50%);
  white-space: nowrap;
}

.tick-label.first {
  transform: translateX(0);
  color: var(--accent);
}

.tick-label.last {
  transform: translateX(-100%);
}

.timeline-row {
  min-height: 108px;
  display: grid;
  grid-template-columns: 300px minmax(0,1fr);
  padding: 18px 24px;
  gap: 20px;
  border-bottom: 1px solid var(--line);
  position: relative;
  padding-top: 16px;
  padding-bottom: 16px;
  scroll-margin-top: 65px;
}

.timeline-row:last-child {
  border-bottom: 0;
}

.timeline-row:hover {
  background: var(--surface-alt);
}

.timeline-row.selected {
  background: var(--accent-soft);
}

.timeline-row.selected:before {
  content: "";
  position: absolute;
  top: 12px;
  bottom: 12px;
  width: 3px;
  background: var(--accent);
  border-radius: 0 3px 3px 0;
  left: 0;
}

.row-title {
  font-size: 15px;
  font-weight: 620;
  letter-spacing: -.15px;
  display: -webkit-box;
  justify-content: space-between;
  gap: 8px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 1.4;
}

.row-title>span {
  color: var(--muted);
  font-size: 11px;
  opacity: 0;
  display: none;
}

.selected .row-title>span,.timeline-row:hover .row-title>span {
  opacity: 1;
}

.row-exposure {
  font-size: 13px;
  color: var(--muted);
  margin: 3px 0 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.row-exposure>span,.inspector-exposure>span {
  opacity: .45;
  margin: 0 5px;
}

.badges {
  display: flex;
  gap: 4px;
  align-items: center;
  flex-wrap: wrap;
}

.badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 9px;
  font-weight: 500;
  white-space: nowrap;
  padding: 2px 7px;
  border-radius: 4px;
  line-height: 1.6;
}

.badge.impact.positive {
  color: var(--positive);
  background: var(--positive-bg);
}

.badge.impact.negative {
  color: var(--negative);
  background: var(--negative-bg);
}

.badge.impact.mixed {
  color: var(--mixed);
  background: var(--mixed-bg);
}

.badge.impact>span {
  font-size: 13px;
  line-height: 1;
}

.confidence {
  color: var(--muted);
  background: var(--bg);
  border: 1px solid var(--line);
}

.lane {
  position: relative;
  margin-right: 5px;
  min-width: 0;
}

.grid-line {
  position: absolute;
  top: -10px;
  bottom: -10px;
  border-left: 1px dashed var(--line);
  opacity: .7;
  pointer-events: none;
}

.range {
  position: absolute;
  top: 19px;
  min-width: 5px;
  height: 13px;
  border-radius: 7px;
  border: 1px solid;
  z-index: 1;
  transform: translateX(-1px);
}

.range:before,.range:after {
  content: "";
  position: absolute;
  height: 5px;
  width: 5px;
  background: currentColor;
  border-radius: 50%;
  top: 3px;
}

.range:before {
  left: 3px;
}

.range:after {
  right: 3px;
}

.range.positive {
  color: var(--positive);
  background: var(--positive-bar);
}

.range.negative {
  color: var(--negative);
  background: var(--negative-bar);
}

.range.mixed {
  color: var(--mixed);
  background: var(--mixed-bar);
}

.range-caption {
  position: absolute;
  top: 39px;
  white-space: normal;
  font-size: 12px;
  color: var(--muted);
  transform: translateX(-50%);
  padding: 0 4px;
  line-height: 1.25;
  width: 160px;
  text-align: center;
}

.range-caption.caption-left {
  transform: translateX(50%);
}

.range-caption small {
  display: block;
  font-size: 11px;
  text-align: center;
  color: var(--accent);
}

.board-foot {
  border-top: 1px solid var(--line);
  min-height: 41px;
  padding: 12px 18px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 12px;
  color: var(--muted);
  line-height: 1.5;
}

.legend-line {
  display: inline-block;
  height: 5px;
  width: 17px;
  border-radius: 3px;
  background: var(--muted);
  opacity: .65;
  margin-right: 4px;
  vertical-align: 1px;
}

.inspector {
  padding: 24px;
  scroll-margin-top: 20px;
  position: sticky;
  top: 20px;
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
}

.inspector-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.inspector-top .eyebrow {
  font-size: 11px;
  letter-spacing: 1.5px;
}

.inspector-index {
  color: var(--muted);
}

.inspector h2 {
  font-size: 24px;
  letter-spacing: -.7px;
  line-height: 1.3;
  margin: 15px 0 8px;
  font-weight: 630;
}

.inspector-exposure {
  font-size: 13px;
  color: var(--muted);
}

.inspector-badges {
  display: flex;
  gap: 7px;
  margin-top: 12px;
  flex-wrap: wrap;
}

.inspector-badges .badge {
  font-size: 10px;
  padding: 3px 7px;
}

.facts {
  padding: 17px 0;
  border-bottom: 1px solid var(--line);
  margin: 0;
}

.facts>div {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  font-size: 13px;
  padding: 5px 0;
}

.facts dt {
  color: var(--muted);
  flex-shrink: 1;
}

.facts dd {
  margin: 0;
  text-align: right;
}

.inspector-section {
  padding-top: 22px;
}

.inspector-section h3 {
  font-size: 14px;
  font-weight: 650;
  margin-bottom: 7px;
}

.inspector-section>p {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.7;
}

.inspector-section>p.small {
  font-size: 10px;
  margin-top: 7px;
}

.evidence h3 {
  display: flex;
  justify-content: space-between;
}

.evidence h3>span {
  color: var(--muted);
  font-weight: 400;
}

.evidence-item {
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 11px;
  margin-top: 9px;
}

.evidence-item>div {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
}

.evidence-stance {
  font-size: 12px;
  font-weight: 600;
}

.evidence-stance.supports {
  color: var(--positive);
}

.evidence-stance.challenges {
  color: var(--negative);
}

.source-kind {
  font-size: 8px;
  color: var(--muted);
  line-height: 1.3;
}

.evidence-item blockquote {
  font-size: 14px;
  line-height: 1.65;
  margin: 9px 0;
  color: var(--muted);
}

.evidence-author {
  font-size: 8px;
  color: var(--muted);
  line-height: 1.6;
}

.evidence-item>small {
  display: block;
  font-size: 8px;
  color: var(--muted);
  margin-top: 4px;
}

.source-link {
  display: inline-block;
  font-size: 9px;
  color: var(--accent);
  margin-top: 8px;
}

.exposure-detail {
  border-left: 2px solid var(--line);
  padding-left: 10px;
  margin-top: 12px;
}

.exposure-detail>div {
  display: flex;
  justify-content: space-between;
  font-size: 13px;
  flex-wrap: wrap;
}

.exposure-detail p {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.6;
  margin-top: 4px;
}

.exposure-detail small {
  color: var(--muted);
  font-size: 8px;
}

.text-positive {
  color: var(--positive);
}

.text-negative {
  color: var(--negative);
}

.text-mixed {
  color: var(--mixed);
}

.next-check {
  background: var(--surface-alt);
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 12px;
  margin-top: 20px;
}

.next-check h3 {
  color: var(--accent);
  display: flex;
  justify-content: space-between;
}

.inspector-demo {
  font-size: 8px;
  color: var(--muted);
  text-align: center;
  margin-top: 18px;
  letter-spacing: .3px;
}

.page-foot {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  font-size: 12px;
  color: var(--muted);
  padding-top: 17px;
}

.table-scroll,.timeline-scroll {
  overflow-x: auto;
}

table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  min-width: 690px;
}

th {
  text-align: left;
  font-size: 9px;
  color: var(--muted);
  font-weight: 500;
  padding: 18px 16px;
  border-bottom: 1px solid var(--line);
}

td {
  padding: 17px 16px;
  border-bottom: 1px solid var(--line);
  vertical-align: top;
}

td small {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-top: 4px;
}

.table-title {
  font-weight: 600;
  font-size: 14px;
  display: inline-block;
}

.table-title:hover {
  color: var(--accent);
}

.group-row {
  background: var(--surface-alt);
}

.group-row th {
  padding: 9px 16px;
  font-size: 9px;
  letter-spacing: .5px;
  color: var(--ink);
}

.group-row span {
  margin-left: 7px;
  color: var(--muted);
}

tr.selected {
  background: var(--accent-soft);
}

.window-cell {
  font-size: 10px;
  max-width: 140px;
}

.change-cell {
  color: var(--muted);
  font-size: 10px;
  max-width: 120px;
}

.support-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
}

.basket {
  padding: 24px;
}

.basket h2 {
  font-size: 21px;
  letter-spacing: -.5px;
  margin: 10px 0 18px;
}

.ticker-list {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.ticker-list span,.ticker-list a {
  border: 1px solid var(--line);
  background: var(--surface-alt);
  padding: 5px 9px;
  border-radius: 5px;
  font-size: 11px;
}

.subtle {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.7;
}

.coverage-grid {
  grid-template-columns: 1fr 1fr;
}

.source-policy {
  margin-top: 16px;
  padding: 25px;
  max-width: 1000px;
}

.source-policy h2 {
  font-size: 18px;
  margin-bottom: 12px;
}

.source-policy p {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.8;
}

.source-policy p+p {
  margin-top: 12px;
}

.empty {
  text-align: center;
  padding: 65px 24px;
  color: var(--muted);
}

.empty .brand-icon {
  height: 50px;
  width: 50px;
  opacity: .55;
  margin-bottom: 15px;
}

.empty h2 {
  font-size: 21px;
  font-weight: 550;
  color: var(--ink);
  margin-bottom: 10px;
  letter-spacing: -.5px;
}

.empty p {
  font-size: 12px;
  max-width: 400px;
  margin: auto;
}

.empty>a {
  display: inline-block;
  font-size: 12px;
  color: var(--accent);
  margin-top: 18px;
}

.change-list>article {
  padding: 23px;
  border-bottom: 1px solid var(--line);
}

.change-list h2 {
  font-size: 17px;
  margin: 10px 0;
}

.change-list article>p:not(.eyebrow) {
  font-size: 12px;
  color: var(--muted);
  margin-top: 7px;
}

.change-list small {
  display: block;
  margin-top: 10px;
  color: var(--muted);
}

.workspace-actions {
  display: flex;
  gap: 16px;
  align-items: center;
  margin: 0 0 18px;
  font-size: 14px;
  color: var(--accent);
  flex-wrap: wrap;
}

.secondary-button,.primary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  padding: 9px 14px;
  font: inherit;
  font-size: 14px;
  cursor: pointer;
  line-height: 1.4;
  min-height: 44px;
}

.secondary-button {
  background: var(--surface);
  border: 1px solid var(--line);
  color: var(--accent);
}

.primary-button {
  background: var(--accent);
  color: var(--surface);
  border: 1px solid var(--accent);
  font-weight: 600;
}

[data-theme=dark] .primary-button {
  color: #10141f;
}

.text-button {
  border: 0;
  background: none;
  color: var(--accent);
  padding: 2px 0;
  font-size: 11px;
  cursor: pointer;
}

.secondary-button:disabled {
  opacity: .45;
  cursor: default;
}

.basket-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 18px;
  font-size: 11px;
  color: var(--accent);
}

.inspector-edit {
  display: block;
  font-size: 13px;
  color: var(--accent);
  margin-top: 18px;
}

.change-read {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
  font-size: 10px;
  color: var(--muted);
}

.ideas,.source-list {
  margin-top: 20px;
  padding: 23px;
}

.section-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}

.section-title h2 {
  font-size: 17px;
  letter-spacing: -.3px;
}

.section-title>span {
  font-size: 10px;
  color: var(--muted);
}

.ideas article {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 0;
  border-top: 1px solid var(--line);
  margin-top: 15px;
}

.ideas h3,.source-list h3 {
  font-size: 13px;
  margin-bottom: 5px;
}

.ideas article p {
  font-size: 11px;
  color: var(--muted);
  max-width: 700px;
}

.ideas article small {
  font-size: 10px;
  color: var(--muted);
  display: block;
  margin-top: 7px;
}

.idea-actions {
  display: flex;
  align-items: center;
  gap: 13px;
  font-size: 11px;
  color: var(--accent);
  flex-shrink: 0;
}

.source-list article {
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
  overflow-wrap: anywhere;
}

.source-list article:last-child {
  border-bottom: 0;
}

.source-list h3 {
  margin-top: 10px;
}

.source-list blockquote {
  font-size: 15px;
  color: var(--muted);
  line-height: 1.7;
  margin: 10px 0;
  max-width: 900px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.source-list article>a {
  display: inline-block;
  color: var(--accent);
  font-size: 11px;
  margin-top: 9px;
}

.editor-main {
  max-width: 1000px;
  padding-top: 28px;
}

.back-link {
  font-size: 11px;
  color: var(--muted);
}

.editor-main .page-heading h1 {
  font-size: 37px;
}

.editor-section {
  padding: 25px 28px;
  margin-bottom: 18px;
}

.editor-section h2 {
  font-size: 17px;
  letter-spacing: -.3px;
  margin-bottom: 20px;
}

.editor-section>.subtle {
  margin-top: -7px;
  margin-bottom: 15px;
}

.field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin-bottom: 17px;
  font-size: 12px;
  min-width: 0;
}

.field>span {
  font-weight: 550;
}

.field>span>small {
  color: var(--muted);
  font-size: 9px;
  font-weight: 400;
  margin-left: 5px;
}

.field input,.field textarea,.field select {
  background: var(--surface-alt);
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 10px 11px;
  min-height: 40px;
  width: 100%;
  font-size: 12px;
  color: var(--ink);
}

.field textarea {
  resize: vertical;
  line-height: 1.7;
}

.field small {
  font-size: 10px;
  color: var(--muted);
  line-height: 1.6;
}

.field-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 20px;
}

.checkbox-group {
  display: flex;
  gap: 22px;
  flex-wrap: wrap;
  border: 0;
  padding: 0;
  margin: 0 0 22px;
  font-size: 12px;
}

.checkbox-group legend {
  font-size: 12px;
  margin-bottom: 12px;
  font-weight: 550;
}

.checkbox-group label,.check-field {
  display: flex;
  align-items: center;
  gap: 7px;
}

.check-field {
  font-size: 11px;
  color: var(--muted);
}

input[type=checkbox] {
  accent-color: var(--accent);
  width: 15px;
  height: 15px;
}

.form-error {
  background: var(--negative-bg);
  border: 1px solid var(--negative);
  color: var(--negative);
  padding: 15px 20px;
  border-radius: 9px;
  font-size: 12px;
  margin-bottom: 20px;
  overflow-wrap: anywhere;
}

.form-error p {
  margin-top: 7px;
  white-space: pre-wrap;
}

.editor-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  padding: 6px 0 30px;
  font-size: 12px;
  color: var(--muted);
}

.exposure-form {
  padding: 20px 0;
  border-top: 1px solid var(--line);
  position: relative;
}

.exposure-form:first-child {
  padding-top: 0;
  border: 0;
}

.exposure-form .text-button {
  margin-top: -8px;
  margin-bottom: 15px;
}

.citation-editor {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 13px 15px;
  margin-top: 12px;
}

.citation-editor summary {
  cursor: pointer;
  font-size: 11px;
  font-weight: 550;
}

.citation-editor summary>span {
  color: var(--muted);
  font-size: 10px;
  float: right;
}

.citation-editor>p {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.7;
  margin: 14px 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.citation-editor .field:last-child {
  margin-bottom: 0;
}

.source-controls {
  padding: 24px 26px;
  margin-bottom: 18px;
}

.refresh-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.control-feedback {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.7;
  margin-top: 12px;
  min-height: 1px;
}

.source-status-grid {
  margin-bottom: 18px;
  align-items: stretch;
}

.source-status-grid .basket {
  padding: 24px 26px;
}

.status-facts {
  margin: 0;
}

.status-facts>div {
  display: flex;
  gap: 15px;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
  padding: 9px 0;
  font-size: 10px;
  align-items: flex-start;
}

.status-facts>div:last-child {
  border-bottom: 0;
}

.status-facts dt {
  color: var(--muted);
  flex-shrink: 0;
  max-width: 50%;
}

.status-facts dd {
  margin: 0;
  text-align: right;
  overflow-wrap: anywhere;
  min-width: 0;
}

.status-note {
  font-size: 10px;
  margin-top: 16px;
}

.status-issues {
  font-size: 11px;
  line-height: 1.8;
  color: var(--negative);
  padding-left: 18px;
  margin-bottom: 0;
}

.status-error {
  color: var(--negative);
  font-size: 11px;
  line-height: 1.7;
  overflow-wrap: anywhere;
  margin-top: 12px;
}

.budget-unit {
  font-size: 10px;
  color: var(--muted);
  font-weight: 400;
  letter-spacing: 0;
}

.query-status {
  font-size: 10px;
  margin-top: 16px;
}

.query-status summary {
  cursor: pointer;
  color: var(--accent);
}

.query-status article {
  border-top: 1px solid var(--line);
  padding: 10px 0;
  margin-top: 8px;
}

.query-status article p {
  color: var(--muted);
  margin-top: 5px;
  overflow-wrap: anywhere;
}

.query-status strong {
  overflow-wrap: anywhere;
}

.schedule-form {
  display: flex;
  align-items: center;
  gap: 23px;
  flex-wrap: wrap;
  margin-top: 20px;
  margin-bottom: 10px;
}

.schedule-form .field {
  margin: 0;
  min-width: 190px;
}

.schedule-form input[type=time] {
  padding: 8px;
  min-height: 36px;
}

.schedule-form .check-field {
  font-size: 11px;
  max-width: 240px;
}

.notification-test {
  display: flex;
  align-items: center;
  gap: 20px;
  border-top: 1px solid var(--line);
  padding-top: 20px;
  margin-top: 24px;
}

.notification-test p {
  max-width: 600px;
  font-size: 10px;
}

.notification-test button {
  flex-shrink: 0;
}

.cli-help {
  padding: 18px 24px;
  margin-top: 18px;
  font-size: 11px;
}

.cli-help summary {
  cursor: pointer;
  color: var(--accent);
}

.cli-help p {
  color: var(--muted);
  max-width: 800px;
  margin-top: 15px;
  line-height: 1.7;
}

.cli-help pre {
  background: var(--surface-alt);
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 15px 18px;
  line-height: 1.9;
  overflow: auto;
  font-size: 11px;
}

.refresh-actions button:disabled,.schedule-form button:disabled,.notification-test button:disabled {
  opacity: .55;
  cursor: wait;
}

.review-status {
  color: var(--negative);
  background: var(--negative-bg);
  border: 1px solid var(--negative);
  font-size: 8px;
}

.change-cell .review-status {
  display: table;
  margin-top: 6px;
}

.review-warning {
  grid-column: 1/-1;
  margin-top: 16px;
  padding: 12px;
  border-radius: 7px;
  border: 1px solid var(--negative);
  background: var(--negative-bg);
  color: var(--negative);
  font-size: 14px;
}

.review-warning strong {
  font-size: 11px;
}

.review-warning p {
  font-size: 10px;
  line-height: 1.7;
  margin-top: 5px;
}

.change-heading {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
}

.change-heading time {
  color: var(--muted);
  font-size: 9px;
}

.change-list h2 a:hover {
  color: var(--accent);
}

.change-list h2 a span {
  color: var(--muted);
  font-size: 12px;
}

.change-comparisons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 30px;
  margin: 15px 0;
}

.change-comparisons>div {
  min-width: 180px;
}

.change-comparisons dt {
  color: var(--muted);
  font-size: 9px;
  margin-bottom: 5px;
}

.change-comparisons dd {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-size: 11px;
}

.change-comparisons dd>span {
  color: var(--muted);
}

.change-comparisons dd>strong {
  font-weight: 500;
}

.change-exposures {
  display: flex;
  gap: 18px 35px;
  flex-wrap: wrap;
  margin: 16px 0;
}

.change-exposures>div {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}

.change-exposure-label {
  color: var(--muted);
  font-size: 9px;
  margin-right: 3px;
}

.change-exposure {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  background: var(--surface-alt);
  border: 1px solid var(--line);
  border-radius: 5px;
  padding: 5px 8px;
  font-size: 10px;
}

.change-exposure small {
  display: inline;
  font-size: 8px;
  margin: 0;
}

.change-sources {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 15px;
  margin-top: 14px;
  font-size: 10px;
  align-items: center;
}

.change-sources>span {
  color: var(--muted);
}

.change-sources a {
  color: var(--accent);
}

.evidence-needs {
  margin-top: 18px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface-alt);
}

.evidence-needs h3 {
  font-size: 11px;
  font-weight: 600;
}

.evidence-needs ul {
  padding-left: 17px;
  margin: 9px 0;
  font-size: 11px;
  line-height: 1.8;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.evidence-needs a {
  font-size: 10px;
  color: var(--accent);
}

.delivery-status {
  display: inline-block;
  font-size: 9px;
  color: var(--muted);
  padding: 3px 7px;
  border: 1px solid var(--line);
  border-radius: 4px;
  margin-top: 14px;
  background: var(--surface-alt);
}

.delivery-status.delivery-attention {
  color: var(--negative);
  border-color: var(--negative);
  background: var(--negative-bg);
}

.owner-controls {
  display: flex;
  gap: 12px;
  align-items: center;
  font-size: 11px;
  color: var(--muted);
}

.owner-controls form {
  margin: 0;
}

.sign-in-main {
  max-width: 480px;
  padding-top: 65px;
}

.sign-in-card {
  padding: 35px;
}

.sign-in-card>.brand-icon {
  width: 55px;
  height: 60px;
  margin-bottom: 20px;
}

.sign-in-card h1 {
  font-size: 32px;
  letter-spacing: -1px;
  margin-top: 8px;
}

.sign-in-card .subtitle {
  margin-bottom: 28px;
}

.sign-in-card .field {
  margin-bottom: 20px;
}

.password-field {
  position: relative;
  display: block;
}

.password-field input {
  padding-right: 112px;
}

.password-field button {
  position: absolute;
  right: 12px;
  top: 11px;
  font-size: 10px;
}

.sign-in-submit {
  width: 100%;
  margin-top: 24px;
}

.sign-in-card .form-error {
  margin-bottom: 22px;
}

.auth-methods {
  display: flex;
  gap: 8px;
  padding: 3px;
  border: 1px solid var(--line);
  border-radius: 8px;
  margin-bottom: 24px;
}

.auth-methods a {
  flex: 1;
  text-align: center;
  padding: 8px;
  color: var(--muted);
  border-radius: 5px;
  font-size: 12px;
}

.auth-methods a[aria-current] {
  color: var(--accent);
  background: var(--accent-soft);
}

.auth-code-status {
  margin-bottom: 18px;
}

.auth-code-status+p {
  margin-bottom: 20px;
}

.auth-code-actions {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  margin-top: 22px;
  color: var(--accent);
  font-size: 11px;
}

.auth-code-actions form {
  margin: 0;
}

.auth-code-actions button:disabled {
  color: var(--muted);
  cursor: default;
}

.auth-mail-note {
  margin-top: 20px;
}

#sign-in-code {
  font-size: 24px;
  letter-spacing: .35em;
}

.stock-scope {
  font-size: 11px;
  margin: -3px 0 14px;
  line-height: 1.6;
  margin-bottom: 10px;
}

.ticker-list a:hover {
  border-color: var(--accent);
  color: var(--accent);
}

.badges>small {
  color: var(--muted);
  font-size: 9px;
}

.current-thinking {
  padding: 22px;
  margin: 18px 0;
  overflow-wrap: anywhere;
}

.current-thinking h2 {
  font-size: 16px;
  margin: 0 0 12px;
}

.current-thinking h3 {
  font-size: 14px;
}

.current-thinking a {
  color: var(--accent);
}

.current-thinking p {
  line-height: 1.65;
  font-size: 13px;
}

.insight-preview {
  padding: 14px 0;
  border-top: 1px solid var(--line);
}

.insight-preview:first-of-type {
  margin-top: 15px;
}

.insight-preview small {
  color: var(--muted);
  font-size: 12px;
}

.research-prose {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  max-width: 85ch;
  font-size: 16px;
}

.research-scope {
  display: flex;
  gap: 12px;
  align-items: end;
  margin-bottom: 20px;
}

.research-scope label {
  display: grid;
  gap: 8px;
  min-width: 250px;
}

.research-scope select,.task-disposition input {
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface);
  color: var(--text);
}

.task-disposition {
  display: flex;
  gap: 12px;
  align-items: end;
  margin-top: 12px;
  flex-wrap: wrap;
}

.task-disposition label {
  display: grid;
  gap: 7px;
  font-size: 12px;
}

.research-detail {
  max-width: 1100px;
}

.research-detail h1 {
  font-size: 28px;
  overflow-wrap: anywhere;
}

.research-detail blockquote {
  margin: 10px 0;
  padding-left: 15px;
  border-left: 2px solid var(--accent);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 13px;
  line-height: 1.7;
}

.scope-picker {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 0 14px;
  margin-bottom: 0;
}

.scope-picker label {
  font-size: 13px;
  color: var(--muted);
}

.scope-picker input {
  width: 235px;
  max-width: 100%;
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 7px;
  padding: 10px 12px;
}

.scope-picker>a {
  font-size: 13px;
  color: var(--accent);
}

[data-copy-status] {
  font-size: 12px;
  color: var(--muted);
  margin-left: 8px;
}

[data-copy-fallback] {
  display: block;
  width: 100%;
  min-height: 120px;
  margin-top: 8px;
}

summary:focus-visible,textarea:focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 3px;
}

summary {
  cursor: pointer;
}

.as-of,.as-of small {
  font-size: 12px;
}

.controls .scope-picker {
  margin: 0;
}

.controls .scope-picker label {
  position: static;
  clip: auto;
  width: auto;
  height: auto;
  overflow: visible;
}

.filters select,.search,.filter-submit {
  font-size: 14px;
  height: 42px;
}

.view-switch a,.horizons a {
  font-size: 13px;
}

.attention-strip {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  font-size: 13px;
  color: var(--muted);
  margin: 0 0 12px;
}

.attention-strip a,.manual-actions a {
  color: var(--accent);
}

.manual-actions {
  margin-left: auto;
}

.current-thinking.brief-compact {
  padding: 10px 12px;
  margin: 0 0 12px;
  margin-bottom: 8px;
}

.brief-compact .section-title h2 {
  font-size: 15px;
  margin: 0;
}

.brief-preview {
  font-size: 14px;
  max-width: 100ch;
  margin: 4px 0;
}

.brief-compact details {
  display: inline;
  font-size: 13px;
}

.brief-compact details[open] {
  display: block;
}

.current-thinking .subtle {
  font-size: 12px;
}

.inspector-section>p,.inspector-section>p.small,.inspector-section p {
  font-size: 15px;
  line-height: 1.65;
}

.inspector-section summary {
  font-size: 14px;
}

.badge,.inspector-badges .badge {
  font-size: 12px;
  padding: 2px 6px;
}

.back-to-event {
  font-size: 12px;
  color: var(--accent);
}

.exposure-detail small,.evidence-author,.evidence-item>small,.source-kind,.source-link {
  font-size: 12px;
}

.inspector .next-check {
  margin-top: 16px;
}

.evidence details {
  margin-top: 10px;
}

.timeline-heading,.timeline-row {
  grid-template-columns: 260px minmax(0,1fr);
  gap: 16px;
  padding-left: 18px;
  padding-right: 18px;
}

.range.continues-left {
  border-left-style: dashed;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.range.continues-right {
  border-right-style: dashed;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.range.continues-left:before,.range.continues-right:after {
  border-radius: 0;
  transform: rotate(45deg);
}

.timeline-scroll {
  max-height: 68dvh;
  overflow: auto;
  scrollbar-gutter: stable;
}

.mobile-hint {
  display: none;
}

th,.group-row th {
  font-size: 12px;
}

.window-cell,.change-cell {
  font-size: 13px;
}

.subtle,small {
  font-size: 13px;
}

.current-thinking>p,.insight-preview p {
  font-size: 15px;
}

.current-thinking a,.research-detail a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.support-grid .current-thinking {
  text-decoration: none;
}

.scope-picker input,.scope-picker button,.secondary-button {
  min-height: 42px;
}

.inbox-filters {
  margin: 8px 0 12px;
  display: flex;
  align-items: end;
  gap: 10px;
  flex-wrap: wrap;
}

.inbox-filters label {
  display: grid;
  gap: 4px;
  font-size: 13px;
  color: var(--muted);
  min-width: 120px;
}

.inbox-filters input {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 7px;
  min-height: 42px;
  padding: 8px 10px;
}

.inbox-filters select {
  font-size: 14px;
  min-height: 42px;
  max-width: 240px;
}

.change-group {
  border-bottom: 1px solid var(--line);
}

.change-group>summary {
  padding: 18px;
  display: list-item;
  list-style-position: inside;
}

.change-group>summary>strong {
  font-size: 16px;
}

.change-group>summary>span {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
}

.change-group>article {
  padding: 18px 24px;
  border-top: 1px solid var(--line);
}

.change-list .change-comparisons dt,.change-list .change-comparisons dd,.change-list .change-exposures,.change-list article>p:not(.eyebrow) {
  font-size: 14px;
}

.pagination {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: center;
  margin: 16px 0;
  font-size: 13px;
  flex-wrap: wrap;
}

.pagination a {
  color: var(--accent);
}

.operations {
  padding: 16px;
  margin-top: 12px;
}

.operations>summary {
  font-size: 14px;
  font-weight: 600;
}

.source-list a {
  font-size: 14px;
  color: var(--accent);
}

.source-coverage {
  margin: 10px 0;
}

.task-disposition input {
  max-width: 100%;
}

.fact-basis {
  overflow-wrap: anywhere;
}

.source-list .section-title {
  flex-wrap: wrap;
}

.group-control {
  margin: 0 0 10px;
  margin-bottom: 6px;
}

.group-control a {
  color: var(--accent);
  padding: 6px;
}

.group-control a[aria-current] {
  font-weight: 700;
  text-decoration: underline;
}

.timeline-group>summary {
  font-size: 13px;
  padding: 10px 18px;
  background: var(--surface-alt);
  border-bottom: 1px solid var(--line);
}

.brief-compact .section-title {
  margin-bottom: 4px;
}

.brief-compact .brief-preview {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.5;
  margin: 2px 0;
}

.research-overview {
  display: grid;
  grid-template-columns: minmax(0,2fr) minmax(240px,1fr);
  gap: 16px;
  align-items: start;
}

.research-status {
  position: sticky;
  top: 16px;
}

.research-status h3 {
  margin-top: 20px;
}

.research-status p {
  margin-top: 8px;
}

.insight-category {
  margin-top: 20px;
  color: var(--muted);
}

.refine-controls {
  flex: 1;
  margin: 0 0 12px;
  font-size: 14px;
  color: var(--muted);
}

.refine-controls>summary {
  display: list-item;
  cursor: pointer;
  padding: 6px 0;
}

.brief-meta-mobile {
  display: none;
}

.youtube-sources {
  padding: 16px;
  margin: 16px 0;
  margin-top: 10px;
}

.youtube-sources>.subtle,.youtube-heartbeat {
  font-size: 13px;
  line-height: 1.55;
}

.youtube-command {
  margin: 12px 0;
  font-size: 13px;
}

.youtube-command pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  background: var(--surface-alt);
  padding: 12px;
  border-radius: 6px;
}

.youtube-table-scroll {
  max-height: 520px;
  overflow: auto;
  border-top: 1px solid var(--line);
}

.youtube-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.youtube-table th {
  position: sticky;
  top: 0;
  background: var(--surface);
  z-index: 1;
  text-align: left;
  padding: 10px;
}

.youtube-table td {
  padding: 10px;
  vertical-align: top;
  overflow-wrap: anywhere;
  max-width: 300px;
}

.youtube-table td small {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: var(--muted);
}

.youtube-table a {
  color: var(--accent);
}

.youtube-facts {
  margin: 14px 0;
  font-size: 13px;
}

.youtube-facts>div {
  display: grid;
  grid-template-columns: 150px minmax(0,1fr);
  gap: 12px;
  margin: 10px 0;
}

.youtube-facts dt {
  color: var(--muted);
}

.youtube-facts dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.youtube-provenance {
  padding: 12px 0;
  border-block: 1px solid var(--line);
  overflow-wrap: anywhere;
}

.youtube-provenance details {
  font-size: 13px;
}

.youtube-ranges {
  max-height: 280px;
  overflow: auto;
}

.youtube-ranges table {
  font-size: 13px;
  width: 100%;
}

.youtube-ranges th,.youtube-ranges td {
  text-align: left;
  padding: 8px;
}

.youtube-ranges th {
  white-space: normal;
}

.youtube-table td small,.youtube-table td span {
  white-space: normal;
  overflow-wrap: anywhere;
}

.youtube-progress {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  margin: 14px 0;
  font-size: 13px;
  color: var(--muted);
}

.youtube-progress strong {
  color: var(--ink);
  font-size: 16px;
  font-variant-numeric: tabular-nums;
}

.youtube-progress span {
  white-space: nowrap;
}

.page-heading .eyebrow {
  display: none;
}

.page-heading .subtitle {
  font-size: 13px;
}

.page-heading>.secondary-button {
  flex-shrink: 0;
}

.scope-field {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size: 12px;
  min-width: 0;
}

.scope-picker .scope-field {
  display: grid;
  gap: 4px;
}

.scope-field input {
  width: 240px;
  max-width: 100%;
  min-height: 40px;
  padding: 8px 10px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 7px;
}

.scope-picker button,.scope-picker input {
  min-height: 40px;
}

.controls .scope-picker label>span,.research-toolbar .scope-field>span {
  position: absolute;
  clip: rect(0,0,0,0);
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.controls .search {
  max-width: 220px;
}

.controls .search input {
  width: 100%;
  min-width: 0;
}

.controls .filters {
  gap: 8px;
}

.brief-compact .brief-meta {
  margin-top: 3px;
}

.inbox-filters label.scope-field {
  min-width: 220px;
  flex: 1;
}

.inbox-filters input,.inbox-filters select {
  min-height: 40px;
  height: 40px;
}

.inbox-filters label:not(.scope-field) {
  flex: 0 1 auto;
}

.inbox-filters label:has(input[type=search]) {
  flex: 1;
  min-width: 180px;
}

.inbox-filters button {
  min-height: 40px;
}

.source-tabs {
  display: inline-flex;
  margin: 0 0 10px;
}

.source-tabs a {
  font-size: 14px;
  padding: 8px 14px;
}

.coverage-summary {
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  margin-bottom: 12px;
  font-size: 13px;
}

.coverage-summary .subtle {
  margin-top: 3px;
}

.coverage-summary a {
  color: var(--accent);
}

.source-list {
  margin-top: 0;
}

.channel-details>summary {
  font-size: 14px;
  padding: 12px 0;
  color: var(--accent);
}

.channel-details .youtube-table-scroll {
  margin-top: 4px;
}

.collection-toolbar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0 0 12px;
}

.collection-toolbar .switch a {
  padding: 7px 14px;
  font-size: 13px;
}

.research-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}

.research-toolbar .collection-toolbar {
  margin: 0;
}

.research-index-section {
  margin: 18px 0;
}

.research-index-section>h2 {
  font-size: 15px;
  margin: 0 0 8px;
}

.research-index {
  display: grid;
  gap: 10px;
}

.research-index.layout-cards {
  grid-template-columns: repeat(3,minmax(0,1fr));
}

.research-index-item {
  padding: 14px 16px;
  min-width: 0;
}

.research-index-title {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: start;
}

.research-index-title h3 {
  font-size: 15px;
}

.research-index-title a {
  color: var(--accent);
}

.research-index-title .badge {
  flex-shrink: 0;
}

.research-index-preview {
  font-size: 14px;
  line-height: 1.55;
  overflow-wrap: anywhere;
  margin: 7px 0;
}

.research-index-item>.subtle {
  font-size: 12px;
}

.research-index.layout-list .research-index-item {
  display: grid;
  grid-template-columns: minmax(180px,1fr) minmax(0,3fr);
  gap: 4px 20px;
  align-items: start;
}

.research-index.layout-list .research-index-title {
  grid-column: 1;
  grid-row: 1/3;
  display: block;
}

.research-index.layout-list .research-index-title .badge {
  margin-top: 6px;
  display: inline-block;
}

.research-index.layout-list .research-index-preview {
  margin: 0;
}

.insight-layout-cards .insight-items {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  margin-top: 12px;
}

.insight-layout-cards .insight-preview {
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  margin: 0;
}

.basket-collection {
  display: grid;
  gap: 10px;
}

.basket-collection.layout-cards {
  grid-template-columns: repeat(3,minmax(0,1fr));
}

.basket-collection .membership-count {
  display: block;
  margin-top: 4px;
}

.basket-collection .ticker-list {
  margin-top: 10px;
}

.basket-collection.layout-list .basket {
  display: grid;
  grid-template-columns: minmax(150px,1fr) minmax(0,3fr) minmax(130px,1fr);
  gap: 4px 18px;
  padding: 14px 16px;
  align-items: start;
}

.basket-collection.layout-list .eyebrow {
  grid-column: 1;
  grid-row: 1;
}

.basket-collection.layout-list h2 {
  grid-column: 1;
  grid-row: 2;
  margin: 0;
  font-size: 17px;
}

.basket-collection.layout-list .membership-count {
  grid-column: 1;
  grid-row: 3;
  margin: 0;
}

.basket-collection.layout-list .ticker-list {
  grid-column: 2;
  grid-row: 1/4;
  margin: 0;
}

.basket-collection.layout-list p.subtle {
  grid-column: 2;
  margin-top: 0;
}

.basket-collection.layout-list .basket-actions {
  grid-column: 3;
  grid-row: 1;
  margin: 0;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 0;
}

.basket-collection .ticker-list a {
  font-size: 13px;
  padding: 3px 8px;
}

.page-radar .timeline-row {
  min-height: 108px;
}

.page-radar .timeline-heading {
  height: 46px;
  z-index: 4;
}

.page-radar .row-exposure {
  margin: 2px 0;
}

.page-radar .board-foot {
  padding: 8px 12px;
}

.page-radar .timeline-scroll {
  scrollbar-gutter: stable;
}

.page-radar .inspector {
  scrollbar-gutter: stable;
}

.page-radar .timeline-heading .axis {
  min-width: 0;
}

.filter-toolbar {
  display: flex;
  align-items: end;
  gap: 12px;
  flex-wrap: wrap;
  margin: 8px 0 12px;
}

.filter-toolbar>.scope-picker {
  align-items: end;
  flex: 1;
  min-width: 300px;
  flex-wrap: nowrap;
}

.filter-toolbar .scope-picker .scope-field {
  min-width: 160px;
  flex: 1;
}

.filter-toolbar .scope-picker input {
  width: 100%;
}

.filter-toolbar .scope-picker>a {
  white-space: nowrap;
  padding-bottom: 10px;
}

.filter-toolbar>.inbox-filters {
  margin: 0;
  flex: 2;
}

.research-overview .research-prose {
  white-space: normal;
  font-size: 15px;
}

.research-overview .current-thinking {
  margin-top: 0;
}

.collection-warning {
  padding: 10px 12px;
  border: 1px solid var(--negative);
  border-radius: 8px;
  background: var(--negative-bg);
  color: var(--negative);
  margin: 0 0 10px;
  font-size: 13px;
  overflow-wrap: anywhere;
}

.heading-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.heading-actions .collection-toolbar {
  margin: 0;
}

.basket-members {
  min-width: 0;
}

.basket-members .ticker-list {
  margin-bottom: 8px;
}

.basket-collection.layout-list .basket-identity {
  grid-column: 1;
  grid-row: 1;
}

.basket-collection.layout-list .basket-members {
  grid-column: 2;
  grid-row: 1;
}

.basket-collection.layout-list .basket-members .ticker-list {
  margin: 0 0 7px;
}

.basket-collection.layout-list .basket-identity h2 {
  margin: 0;
}

.basket-collection.layout-list .basket-members p.subtle {
  margin: 0;
}

.badge.review-status {
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: 100%;
  box-sizing: border-box;
}

.research-triage {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: end;
  margin: 12px 0;
}

.research-triage label {
  display: flex;
  flex-direction: column;
  gap: 5px;
  color: var(--muted);
  font-size: 13px;
}

.research-triage input,.research-triage select {
  max-width: 100%;
  min-height: 40px;
}

.research-triage>a {
  padding: 10px 2px;
}

.research-index-item .review-reasons {
  font-size: 13px;
  color: var(--muted);
  margin: 6px 0;
}

.research-index-item .checkpoint {
  font-size: 13px;
  margin: 6px 0;
  overflow-wrap: anywhere;
}

.change-group-note {
  padding: 0 18px;
}

.range.timing-estimated {
  border: 1px dashed currentColor;
}

.range.timing-uncertain {
  border: 1px dotted currentColor;
  opacity: .7;
}

.research-triage input {
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
  color: var(--ink);
  min-width: 240px;
}

.triage-layout {
  margin-left: auto;
}

.triage-help {
  font-size: 13px;
  color: var(--muted);
  margin: 0 0 12px;
}

.triage-help summary {
  cursor: pointer;
}

.triage-help p {
  max-width: 85ch;
}

.index-reviews {
  padding: 10px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  font-size: 13px;
  margin: 12px 0 20px;
}

.index-reviews summary {
  cursor: pointer;
}

.page-sources .filter-toolbar {
  align-items: start;
}

.page-sources .filter-toolbar>.scope-picker {
  margin-top: 0;
  align-self: start;
}

.source-filter-toolbar>.source-filters {
  display: block;
  min-width: 0;
}

.source-primary-filters,.source-advanced-fields {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 10px;
}

.source-filter-reset {
  font-size: 13px;
  color: var(--accent);
  padding: 10px 0;
}

.source-advanced-filters {
  margin-top: 10px;
  font-size: 13px;
  color: var(--muted);
}

.source-advanced-filters>summary {
  padding: 5px 0;
  overflow-wrap: anywhere;
}

.source-advanced-fields {
  padding-top: 8px;
}

.source-list .source-preview {
  white-space: normal;
}

.research-section-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin: 12px 0;
  font-size: 13px;
  scroll-margin-top: 18px;
}

.research-section-nav>a {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
  color: var(--accent);
  padding: 8px 10px;
}

.research-section-nav>a>span {
  color: var(--muted);
  margin-left: 5px;
}

.research-section-heading {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 8px;
}

.research-section-heading h2 {
  font-size: 15px;
  scroll-margin-top: 18px;
}

.research-section-heading>a {
  color: var(--accent);
  font-size: 12px;
  white-space: nowrap;
}

.basket-inspection-links {
  font-size: 11px;
  color: var(--muted);
  margin-top: 8px;
}

.projection-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

.projection-links>a {
  font-size: 11px;
  color: var(--accent);
  padding: 4px 0;
}

.info-help {
  display: inline;
  vertical-align: middle;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: normal;
  text-transform: none;
}

.info-trigger {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  min-width: 28px;
  min-height: 28px;
  padding: 0;
  margin: 0 2px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: var(--surface);
  color: var(--muted);
  font: 600 14px/1 Georgia,serif;
  cursor: help;
  vertical-align: middle;
}

.info-trigger:hover {
  color: var(--accent);
  border-color: var(--accent);
}

.info-trigger:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.info-panel {
  position: fixed;
  inset: 0;
  margin: auto;
  height: fit-content;
  padding: 14px 16px;
  width: 330px;
  max-width: calc(100vw - 24px);
  max-height: calc(100dvh - 24px);
  overflow: auto;
  box-sizing: border-box;
  border: 1px solid var(--line);
  border-radius: 10px;
  box-shadow: 0 8px 30px #0003;
  background: var(--surface);
  color: var(--ink);
  font: 400 14px/1.55 system-ui,sans-serif;
  letter-spacing: normal;
  text-transform: none;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: left;
  z-index: 100;
}

.info-panel::backdrop {
  background: transparent;
  pointer-events: none;
}

.research-overview.no-checklist {
  grid-template-columns: minmax(0,1fr);
}

.subject-navigation {
  padding: 0 0 18px;
  border-bottom: 1px solid var(--line);
  margin-bottom:  18px;
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin: 0 0 24px;
  font-size: 14px;
  color: var(--muted);
}

.subject-navigation [aria-current="page"] {
  font-weight: 650;
  text-decoration: none;
  color: var(--ink);
}

.saved-receipt {
  padding:  16px;
  margin-bottom:  18px;
}

.saved-receipt small {
  display:  block;
  overflow-wrap:  anywhere;
}

.change-group > summary .change-scan {
  display:  grid;
  gap:  8px;
  flex-basis:  100%;
  color:  var(--text);
  white-space:  normal;
  overflow-wrap:  anywhere;
}

.source-variant {
  padding: 10px 0;
  min-width: 0;
}

.source-variant summary {
  font-size: 12px;
  line-height: 1.6;
  cursor: pointer;
}

.source-group-item {
  padding: 12px 0;
  border-top: 1px solid var(--line);
  min-width: 0;
}

.source-group-item .record-metadata,.source-used-in .record-metadata {
  overflow-wrap: anywhere;
}

.source-group-item .subtle {
  overflow-wrap: anywhere;
}

.source-origin-group>h3 {
  overflow-wrap: anywhere;
}

.source-used-in {
  overflow-wrap: anywhere;
}

.page-requests .page-heading {
  align-items: flex-start;
  flex-wrap: wrap;
}

.page-requests .page-heading>div {
  flex: 1 1 30rem;
  min-width: 0;
}

.page-requests .page-heading h1,.page-requests .request-question {
  overflow-wrap: anywhere;
}

.page-requests .request-question {
  max-width: 90ch;
  margin-top: 8px;
}

.page-requests .request-subject-link {
  flex-shrink: 0;
  white-space: nowrap;
}

.page-requests .request-worker-status {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin-bottom: 12px;
}

.page-requests .request-worker-status>a {
  white-space: nowrap;
}

.page-requests .request-failure {
  overflow-wrap: anywhere;
}

.page-requests td:first-child small {
  display: block;
  max-width: 90ch;
  white-space: normal;
  overflow-wrap: anywhere;
}

.owner-menu {
  position: relative;
  margin-left: auto;
  flex-shrink: 0;
  font-size: 13px;
}

.owner-menu>summary {
  cursor: pointer;
  padding: 10px 0;
  color: var(--muted);
}

.owner-menu-panel {
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 20;
  padding: 16px;
  min-width: 220px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 12px 40px #0002;
}

.owner-menu .theme-switch {
  margin: 0;
  justify-content: center;
}

.owner-menu .owner-controls {
  display: grid;
  gap: 10px;
  margin-top: 16px;
  font-size: 13px;
}

.subject-identity {
  font-weight: 600;
  color: var(--ink);
  margin-right: auto;
}

.radar-secondary { display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin:8px 0 16px; color:var(--muted); font-size:13px; }
.radar-count { margin-right:auto; }
.radar-research-state { margin:0 0 12px; }
.radar-research-state a { color:var(--accent); }
.radar-secondary .attention-strip { margin:0; }
.radar-secondary .refine-controls { margin:0; }
.radar-secondary .refine-controls[open] { flex-basis:100%; order:3; }
.inspector .inspector-top .secondary-button { min-height:36px; padding:5px 8px; font-size:12px; }
.inspector .inspector-claim { padding-top:0; }
.inspector .inspector-claim h3 { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.inspector .facts { padding:12px 0; }
.inspector .inspector-badges { margin:12px 0 0; }
.inspector .exposure-detail { margin-top:6px; }
.radar-toolbar {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}

.radar-toolbar .scope-picker {
  margin: 0;
  flex: 1;
}

.radar-toolbar .scope-field>span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
}

.radar-toolbar .scope-picker>a {
  font-size: 13px;
}

.refine-controls .filters {
  padding: 10px 0;
  gap: 10px;
  align-items: end;
}

.refine-controls .filters label {
  font-size: 13px;
}

.radar-research-summary {
  font-size: 14px;
  margin: 12px 0;
  color: var(--muted);
}

.radar-research-summary>summary {
  cursor: pointer;
}

/* Research Library and explicit request completion use the shared reading scale. */
.research-modes { display:flex; gap:28px; border-bottom:1px solid var(--line); margin:0 0 24px; font-size:15px; }
.research-modes a { color:var(--muted); padding:0 0 12px; }
.research-modes [aria-current] { color:var(--ink); font-weight:650; border-bottom:2px solid var(--ink); }
.library-search { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-bottom:18px; }
.library-search>input[type=search] { width:min(600px,100%); flex:1 1 260px; min-width:0; min-height:46px; background:var(--surface); border:1px solid var(--line); border-radius:9px; padding:10px 14px; }
.library-advanced { color:var(--muted); font-size:13px; }
.library-advanced[open] { flex-basis:100%; order:3; }
.library-advanced>summary { cursor:pointer; padding:4px 0; }
.library-advanced label { display:grid; gap:5px; max-width:300px; margin:8px 0; }
.library-advanced select { padding:8px; background:var(--surface); border:1px solid var(--line); border-radius:7px; }
.library-toolbar { display:flex; justify-content:space-between; gap:16px; align-items:center; flex-wrap:wrap; margin-bottom:12px; }
.page-heading .research-modes { margin:0; border:0; }
.page-heading .research-modes a { padding:8px 0; }
.library-results.layout-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.library-results.layout-cards .library-row { display:block; padding:20px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
.library-results.layout-cards .library-row-identity { margin-bottom:12px; }
.library-view>summary { cursor:pointer; }
.library-view .collection-toolbar { margin:8px 0 0; }
.library-types { display:flex; align-items:center; gap:10px 24px; flex-wrap:wrap; font-size:14px; margin:0; }
.library-types>a { color:var(--muted); padding:5px 0; }
.library-types [aria-current] { color:var(--ink); font-weight:650; border-bottom:2px solid var(--ink); }
.library-types>details { font-size:13px; color:var(--muted); }
.library-types>details>summary { cursor:pointer; }
.library-types>details>a { display:inline-block; padding:8px 12px 0 0; }
.library-count { display:flex; align-items:center; margin:0; white-space:nowrap; }
.library-row { display:grid; grid-template-columns:minmax(200px,1fr) minmax(0,3fr); gap:24px; padding:20px 0; border-top:1px solid var(--line); }
.library-row-identity { min-width:0; }
.library-row-type { font-size:12px; color:var(--muted); }
.library-row h2 { font-size:17px; font-weight:600; line-height:1.45; margin:3px 0 5px; overflow-wrap:anywhere; }
.library-row h2 a { color:var(--accent); }
.library-row small { color:var(--muted); }
.library-row-view { min-width:0; font-size:15px; overflow-wrap:anywhere; }
.library-row-view>p+p { margin-top:6px; }
.library-review { font-size:13px; color:var(--muted); }
.request-state { align-self:center; }
.schedule-later { margin:18px 0; font-size:14px; }
.schedule-later>summary { cursor:pointer; color:var(--accent); }
.schedule-later>.field { margin-top:12px; max-width:360px; }
.request-worker-details { margin:0 0 18px; color:var(--muted); font-size:13px; }
.request-worker-details>summary { cursor:pointer; }
.request-worker-details[open]>.request-worker-status { margin-top:12px; }
.review-handoff { border-left:3px solid var(--accent); background:var(--accent-soft); padding:20px 24px; margin:20px 0; }
.review-handoff h2 { font-size:20px; margin-bottom:8px; }
.review-handoff p { font-size:15px; max-width:85ch; margin-bottom:12px; }
.review-handoff>details { margin-top:16px; font-size:13px; }
.review-handoff>details>summary { cursor:pointer; }
.review-handoff textarea { width:100%; font-size:13px; line-height:1.6; margin-top:10px; overflow-wrap:anywhere; }
@media(max-width:640px) {
 .library-results.layout-cards { grid-template-columns:minmax(0,1fr); }
 .page-heading:has(.research-modes) { flex-wrap:wrap; gap:12px; }
 .library-row { grid-template-columns:minmax(0,1fr); gap:8px; padding:18px 0; }
 .library-types { gap:8px 18px; }
 .library-search>input[type=search] { flex-basis:180px; }
 .review-handoff { padding:16px; }
 .request-worker-details .review-warning { font-size:13px; }
}

/* Document-first evidence and outcome-first collection. */
.source-filter-toolbar { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin:0 0 16px; }
.source-filter-toolbar>.source-scope-picker { order:2; color:var(--muted); font-size:13px; }
.source-scope-picker>summary { cursor:pointer; }
.source-scope-picker[open] { flex-basis:100%; }
.source-scope-picker .scope-picker { margin-top:10px; }
.source-filter-toolbar>.source-filters { display:flex; align-items:end; flex-wrap:wrap; gap:12px; margin:0; min-width:0; flex:1; }
.source-primary-filters { flex:1; align-items:end; }
.source-primary-filters>label:first-child { flex:1; min-width:180px; }
.source-primary-filters input { width:100%; }
.source-advanced-filters { margin:0; }
.source-advanced-filters[open] { flex-basis:100%; }
.source-list-summary { display:flex; align-items:center; gap:5px; margin-bottom:8px; }
.source-origin-group { padding:20px 0; border-top:1px solid var(--line); }
.source-origin-group>h2 { font-size:19px; font-weight:600; line-height:1.45; overflow-wrap:anywhere; }
.source-group-item { border:0; padding:6px 0; }
.source-document-meta { margin-bottom:5px; }
.source-document-actions { display:flex; flex-wrap:wrap; align-items:baseline; gap:10px 20px; font-size:14px; }
.source-document-actions>a { color:var(--accent); }
.source-document-actions .record-metadata { margin:0; font-size:12px; color:var(--muted); }
.source-document-actions .record-metadata[open] { flex-basis:100%; }
.source-list .source-preview { margin:12px 0; padding:0; border:0; font-size:15px; line-height:1.7; max-width:100ch; white-space:normal; }
.source-attribution-gap,.source-gap { display:block; font-size:13px; color:var(--negative); margin:5px 0; }
.source-representations { margin-top:12px; font-size:13px; color:var(--muted); }
.source-representations>summary,.collection-diagnostics>summary { cursor:pointer; padding:8px 0; }
.collection-diagnostics { margin:16px 0 24px; color:var(--muted); font-size:14px; }
.collection-diagnostics[open]>summary { margin-bottom:12px; }
.collection-diagnostics .card { box-shadow:none; }
.youtube-sources { padding:20px 24px; margin:0 0 20px; }
.youtube-progress { margin:12px 0; gap:8px 24px; }
.youtube-progress strong { font-size:18px; }
.source-controls { padding:20px 24px; margin-bottom:16px; }
.source-controls .refresh-actions { margin-top:12px; }
.source-collection-attention { margin:0 0 12px; }
.source-collection-attention a { color:var(--accent); }
.change-filter-details { color:var(--muted); font-size:13px; }
.change-filter-details>summary { cursor:pointer; padding:10px 0; }
.change-filter-details[open] { flex-basis:100%; order:4; }
.change-filter-details label { display:inline-grid; margin:10px 12px 0 0; }
.change-group>summary { padding:16px 20px; }
.change-group>summary .change-scan { gap:6px; }
.change-list { background:transparent; box-shadow:none; }
.page-watchlist .heading-actions>.primary-button { white-space:nowrap; }
@media(max-width:640px) {
 .source-filter-toolbar>.source-filters { width:100%; flex-basis:100%; }
 .source-primary-filters { display:flex; flex-wrap:wrap; }
 .source-primary-filters>label:first-child { flex-basis:100%; }
 .source-primary-filters>.source-sort { flex:1; }
 .source-document-actions { gap:8px 14px; }
 .youtube-sources,.source-controls { padding:18px; }
 .source-origin-group>h2 { font-size:18px; }
 .page-sources .page-heading { flex-wrap:wrap; gap:12px; }
 .page-sources .page-heading>div { flex-basis:100%; }
}

@media(min-width:1500px) {
  .timeline-heading,.timeline-row { grid-template-columns: 310px minmax(0,1fr); }
  .radar-layout { grid-template-columns: minmax(0,1fr) 400px; }
  .timeline-row { min-height: 114px; }
  .range { top: 31px; }
  .range-caption { top: 53px; }
  .row-title { font-size: 13px; }
}

@media(max-width:1200px) {
  .topbar { gap: 28px; }
  .brand { font-size: 18px; }
  .brand-tag { display: none; }
  .topbar nav { gap: 18px; }
  .radar-layout { grid-template-columns: minmax(0,1fr) 290px; gap: 13px; }
  .timeline-heading,.timeline-row { grid-template-columns: 245px minmax(0,1fr); padding-left: 18px; padding-right: 18px; gap: 17px; }
  .timeline { min-width: 610px; }
  .inspector { padding: 20px 18px; }
  .inspector h2 { font-size: 21px; }
  .search input { width: 155px; }
  .filters { gap: 7px; }
  .filters select { min-width: 120px; }
  .board-foot { flex-direction: column; gap: 3px; }
  .horizons a { padding-left: 11px; padding-right: 11px; }
}

@media(max-width:1000px) {
  .controls { align-items: flex-start; }
  .filters { max-width: 650px; }
  .search { order: 4; }
  .filter-submit { order: 5; }
  .radar-layout { grid-template-columns: 1fr; }
  .topbar { gap: 16px; padding: 0 24px; }
  .topbar nav { gap: 18px; }
  .topbar nav>a { font-size: 12px; }
  .theme-switch button span { display: none; }
  main { padding-left: 24px; padding-right: 24px; }
  .timeline { min-width: 600px; }
  .timeline-heading,.timeline-row { grid-template-columns: 270px minmax(0,1fr); }
  .support-grid { grid-template-columns: 1fr 1fr; }
  .inspector { position: static; max-height: none; display: block; }
  .back-to-event { display: inline-block; }
  .attention-strip { gap: 8px 14px; }
  .page-radar .timeline-scroll { max-height: none; height: auto; overflow-x: auto; }
  .page-radar .inspector { height: auto; max-height: none; overflow: visible; }
  .research-index.layout-cards,.basket-collection.layout-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .basket-collection.layout-list .basket { grid-template-columns: 160px minmax(0,1fr); }
  .basket-collection.layout-list .basket-actions { grid-column: 2; grid-row: 2; justify-content: flex-start; }
}

@media(max-width:800px) {
  .topbar { height: auto; min-height: 72px; padding: 14px 24px 0; flex-wrap: wrap; gap: 12px; padding-top: 10px; padding-bottom: 0; }
  .brand { font-size: 19px; }
  .brand-icon { width: 34px; height: 26px; }
  .topbar nav { order: 3; width: 100%; height: 48px; justify-content: space-between; gap: 14px; min-height: 44px; }
  .topbar nav>a { font-size: 14px; gap: 6px; }
  .theme-switch { margin-left: auto; }
  .theme-switch button span { display: inline; }
  .page-heading { padding-top: 26px; align-items: flex-start; }
  .page-heading h1 { font-size: 27px; }
  .as-of { font-size: 10px; }
  .as-of small { max-width: 155px; font-size: 9px; }
  .radar-layout { grid-template-columns: 1fr; gap: 12px; }
  .inspector { display: block; padding: 24px; }
  .inspector-top,.inspector h2,.inspector-exposure,.inspector-badges,.facts,.inspector-demo { grid-column: 1/-1; }
  .inspector h2 { font-size: 26px; }
  .facts>div { font-size: 13px; }
  .inspector-section { padding-top: 22px; }
  .inspector-section>p { font-size: 15px; }
  .inspector-section h3 { font-size: 14px; }
  .evidence-item blockquote { font-size: 14px; }
  .inspector .next-check { align-self: start; margin-top: 22px; }
  .timeline { min-width: 650px; }
  .tick-label:not(.first):not(.last) { display:none; }
  .timeline-heading,.timeline-row { grid-template-columns: 275px minmax(0,1fr); }
  .demo-note { font-size: 10px; }
  .demo-note a { display: none; }
  .controls { margin-bottom: 20px; }
  .view-switch a { font-size: 11px; padding: 8px 10px; }
  .view-switch span { display: none; }
  .board-toolbar { align-items: flex-end; }
  .board-toolbar>p>span:last-child,.toolbar-divider { display: none; }
  .board-foot { flex-direction: row; }
  .page-foot { font-size: 8px; }
  .coverage-grid { grid-template-columns: 1fr 1fr; }
  .topbar nav>a[aria-current]:after { bottom: 0; }
  .timeline-scroll { max-height: 60dvh; }
  .research-overview { display: block; }
  .research-status { position: static; }
  .owner-menu { margin-left: auto; }
  .radar-toolbar { align-items: start; }
  .radar-toolbar .scope-picker { flex-basis: 100%; }
}

@media(max-width:540px) {
  .topbar nav { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; min-width:0; }
  .topbar nav small { font-size:10px; padding:0 3px; }

  main { padding: 20px 16px 32px; }
  .topbar { padding-left: 16px; padding-right: 16px; gap: 6px; }
  .brand { font-size: 18px; gap: 7px; }
  .theme-switch button { padding: 4px 6px; font-size: 11px; min-height: 36px; }
  .theme-switch button span { display: none; }
  .page-heading { display: block; padding-bottom: 22px; padding: 12px 0; }
  .page-heading h1 { font-size: 28px; }
  .subtitle { font-size: 14px; }
  .as-of { margin-top: 8px; font-size: 10px; }
  .as-of small { display: block; max-width: none; margin-left: 0; font-size: 12px; }
  .controls { display: flex; flex-wrap: wrap; gap: 8px; align-items: flex-start; }
  .filters { display: flex; grid-template-columns: 1fr 1fr; gap: 8px; flex-wrap: wrap; }
  .filters select { width: 100%; font-size: 11px; flex: 1; min-width: 120px; }
  .search { grid-column: 1/-1; order: initial; width: 100%; }
  .search input { width: 100%; }
  .filter-submit { display: block; order: initial; min-width: 80px; min-height: 42px; }
  .view-switch { width: max-content; margin-top: 10px; }
  .view-switch a { padding: 7px 14px; }
  .board-toolbar { align-items: flex-start; margin-top: 0; flex-wrap: wrap; gap: 10px; }
  .board-toolbar>p { font-size: 10px; }
  .horizons { margin-left: 0; max-width: 100%; }
  .horizons a { font-size: 12px; padding: 8px; }
  .timeline-heading,.timeline-row { grid-template-columns: 210px minmax(0,1fr); gap: 12px; padding-left: 12px; padding-right: 12px; }
  .timeline { min-width: 660px; }
  .timeline-row { min-height: 116px; }
  .row-title { font-size: 14px; }
  .board-foot { font-size: 8px; flex-direction: column; gap: 4px; }
  .inspector { display: block; padding: 20px; }
  .inspector h2 { font-size: 24px; }
  .inspector-section { padding-top: 20px; }
  .evidence-item { padding: 13px; }
  .evidence-item blockquote { font-size: 14px; }
  .source-kind { font-size: 9px; }
  .evidence-author,.evidence-item>small { font-size: 9px; }
  .page-foot { display: block; line-height: 1.8; }
  .page-foot>span { display: block; }
  .support-grid,.coverage-grid { grid-template-columns: 1fr; }
  .demo-note { align-items: flex-start; line-height: 1.6; }
  .demo-pill { flex-shrink: 0; }
  .basket { padding: 22px; }
  .source-policy { padding: 22px; }
  .empty { padding: 45px 22px; }
  .source-controls,.source-status-grid .basket { padding: 22px 20px; }
  .schedule-form { display: block; }
  .schedule-form>* { margin-top: 17px!important; }
  .notification-test { display: block; }
  .notification-test p { margin-top: 12px; }
  .refresh-actions { gap: 8px; }
  .refresh-actions button { font-size: 11px; padding-left: 10px; padding-right: 10px; }
  .status-facts>div { font-size: 9px; gap: 10px; flex-wrap: wrap; }
  .change-comparisons { display: block; }
  .change-comparisons>div { margin-top: 12px; }
  .change-comparisons dd { font-size: 10px; }
  .change-heading { align-items: flex-start; }
  .change-exposures { gap: 12px; }
  .review-warning { grid-column: 1/-1; }
  .sign-in-main { padding-top: 30px; }
  .sign-in-card { padding: 25px; }
  .owner-controls { gap: 8px; margin-left: auto; }
  .owner-controls>span { display: none; }
  .scope-picker { gap: 8px; }
  .scope-picker label { width: 100%; }
  .scope-picker input { width: 100%; }
  .topbar nav>a { font-size: 12px; min-width:0; justify-content:center; flex-wrap:wrap; gap:2px; padding:8px 0; }
  .controls .scope-picker { margin-bottom: 0; width: 100%; display: grid; grid-template-columns: minmax(0,1fr) auto; }
  .board-toolbar>p>span:last-child,.toolbar-divider { display: inline; }
  .mobile-hint { display: block; padding: 10px 12px; font-size: 12px; }
  .row-summary,.timeline-heading>div:first-child { position: sticky; left: 0; z-index: 2; background: var(--surface); padding-right: 8px; }
  .selected .row-summary { background: var(--accent-soft); }
  .timeline-row:hover .row-summary { background: var(--surface-alt); }
  .badge { font-size: 12px; }
  .row-exposure { font-size: 12px; }
  .timeline-scroll { max-height: 58dvh; }
  .evidence-author,.evidence-item>small,.source-kind { font-size: 12px; }
  .board-foot,.page-foot { font-size: 12px; }
  .manual-actions { margin-left: 0; }
  .workspace-actions { gap: 10px; }
  .support-grid { min-width: 0; }
  .inspector .facts>div { font-size: 13px; }
  .inbox-filters { display: flex; flex-wrap: wrap; }
  .inbox-filters label { width: 100%; }
  .inbox-filters input,.inbox-filters select { width: 100%; }
  .change-group>summary { padding: 14px; }
  .change-group>article { padding: 14px; }
  .operations { padding: 12px; }
  .section-title { flex-wrap: wrap; }
  .task-disposition label { max-width: 100%; }
  .brief-compact .brief-preview { display: none; }
  .brief-compact .section-title h2 { font-size: 14px; }
  .brief-compact details { display: block; }
  .brief-compact .subtle { margin-top: 5px; }
  .controls .scope-picker input { width: 100%; }
  .page-heading .subtitle { display: none; }
  .controls .scope-picker>a { grid-column: 1/-1; }
  .refine-controls { flex: 1; min-width: 140px; }
  .refine-controls>summary { display: list-item; padding: 10px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface); font-size: 13px; }
  .refine-controls .filters { margin-top: 8px; align-items: stretch; }
  .controls .view-switch { margin: 0; }
  .controls .view-switch a { font-size: 12px; padding: 8px 10px; }
  .board .table-scroll table { min-width: 0; display: block; }
  .board table thead { display: none; }
  .board table tbody { display: block; }
  .board table tr:not(.group-row) { display: grid; grid-template-columns: 1fr 1fr; padding: 10px; border-bottom: 1px solid var(--line); }
  .board table td { display: block; padding: 8px; border: 0; max-width: none; font-size: 14px; }
  .board table td:first-child { grid-column: 1/-1; }
  .board table td[data-label]:before { content: attr(data-label); display: block; color: var(--muted); font-size: 12px; margin-bottom: 4px; }
  .board table .group-row,.board table .group-row th { display: block; }
  .board table .group-row th { font-size: 13px; }
  .brief-compact>.brief-meta,.stock-scope { display: none; }
  .brief-compact .brief-meta-mobile { display: block; }
  .subject-navigation { gap: 14px; padding-bottom: 16px; }
  .subject-identity { flex-basis: 100%; }
  .radar-toolbar { gap: 10px; }
  .radar-toolbar .scope-picker { display: flex; flex-wrap: wrap; }
  .radar-toolbar .scope-field { flex: 1; min-width: 0; }
  .radar-toolbar .scope-field input { width: 100%; }
  .radar-toolbar .scope-picker>a { flex-basis: 100%; }
  .radar-toolbar .switch a { padding: 8px 10px; }
  .radar-toolbar .view-switch { margin: 0; }
  .radar-toolbar .horizons { width: 100%; }
  .radar-toolbar .horizons a { flex: 1; text-align: center; }
  .owner-menu-panel { position: absolute; right: 0; }
  .refine-controls .search { width: 100%; }
  .radar-layout { gap: 18px; }
}

@media(prefers-reduced-motion:no-preference) {
  a,button { transition: color .12s ease,background-color .12s ease; }
}

@media(max-width:700px) {
  .ideas article { display: block; }
  .idea-actions { margin-top: 15px; }
  .editor-section { padding: 22px 20px; }
  .editor-main .page-heading h1 { font-size: 32px; }
  .field-grid { grid-template-columns: 1fr; }
  .citation-editor summary>span { display: block; float: none; margin-top: 5px; }
  .research-triage { align-items: stretch; }
  .research-triage label { flex: 1 1 200px; }
  .inbox-filters label { max-width: 100%; }
  .inbox-filters select { max-width: 100%; }
}

@media(max-width:640px) {
  .research-scope,.task-disposition { display: grid; }
  .research-scope label { min-width: 0; }
  .youtube-sources { padding: 12px; }
  .youtube-table-scroll { max-height: 460px; }
  .youtube-table,.youtube-table tbody { display: block; }
  .youtube-table thead { display: none; }
  .youtube-table tr { display: grid; grid-template-columns: 1fr; gap: 6px; padding: 12px 0; border-bottom: 1px solid var(--line); }
  .youtube-table td { display: block; max-width: none; padding: 3px 0; border: 0; }
  .youtube-table td:before { content: attr(data-label); display: block; color: var(--muted); font-size: 11px; margin-bottom: 3px; }
  .youtube-facts>div { display: block; }
  .youtube-facts dd { margin-top: 4px; }
  .youtube-heartbeat { overflow-wrap: anywhere; }
  .research-index.layout-list .research-index-item { display: block; }
  .research-index.layout-list .research-index-title { display: flex; }
  .research-index.layout-list .research-index-title .badge { margin-top: 0; }
  .research-index.layout-list .research-index-preview { margin: 8px 0; }
  .research-index.layout-cards,.basket-collection.layout-cards,.insight-layout-cards .insight-items { grid-template-columns: 1fr; }
  .basket-collection.layout-list .basket { grid-template-columns: 1fr; }
  .basket-collection.layout-list .eyebrow,.basket-collection.layout-list h2,.basket-collection.layout-list .membership-count,.basket-collection.layout-list .ticker-list,.basket-collection.layout-list p.subtle,.basket-collection.layout-list .basket-actions { grid-column: 1; grid-row: auto; }
  .basket-collection.layout-list .ticker-list { margin: 8px 0; }
  .inbox-filters label,.inbox-filters label.scope-field { width: 100%; min-width: 0; flex: auto; }
  .inbox-filters .scope-field input { width: 100%; }
  .research-toolbar { align-items: start; }
  .research-toolbar .scope-picker { width: 100%; }
  .scope-picker .scope-field { flex: 1; }
  .scope-picker .scope-field input { width: 100%; }
  .controls .scope-picker .scope-field { grid-column: 1; grid-row: 1; display: block; width: 100%; }
  .controls .scope-picker button { grid-column: 2; grid-row: 1; }
  .page-heading .subtitle { display: block; }
  .page-heading { align-items: flex-start; }
  .page-heading h1 { font-size: 24px; }
  .research-index-title { flex-wrap: wrap; }
  .page-radar .timeline-row { min-height: 110px; }
  .filter-toolbar>.scope-picker { width: 100%; min-width: 0; flex-wrap: wrap; }
  .filter-toolbar>.inbox-filters { width: 100%; flex: auto; }
  .filter-toolbar .scope-picker>a { padding-bottom: 0; }
  .filter-toolbar .scope-field>span { font-size: 12px; }
  .heading-actions { gap: 8px; }
  .page-watchlist .page-heading { flex-wrap: wrap; }
  .basket-collection.layout-list .basket-identity,.basket-collection.layout-list .basket-members,.basket-collection.layout-list .basket-actions { grid-column: 1; grid-row: auto; }
  .basket-collection.layout-list .basket-members .ticker-list { margin-top: 8px; }
  .research-triage input { min-width: 0; width: 100%; }
  .triage-layout { margin-left: 0; }
  .research-triage { gap: 8px; }
  .source-primary-filters,.source-advanced-fields { align-items: stretch; }
  .source-primary-filters label,.source-advanced-fields label { min-width: 0; width: 100%; }
  .source-primary-filters input,.source-primary-filters select,.source-advanced-fields select { width: 100%; }
  .research-section-nav>a { max-width: 100%; }
  .research-section-heading { flex-wrap: wrap; gap: 4px; }
  .page-requests .page-heading { display: flex; gap: 10px; }
  .page-requests .page-heading>div { flex-basis: 100%; }
  .page-requests .request-worker-status { gap: 4px 8px; }
}

@media(min-width:1001px) {
  .page-radar .radar-layout { align-items: start; }
  .page-radar .board { overflow: hidden; }
  .research-index.layout-list .research-index-preview { max-width: 100ch; }
  .page-radar .timeline-scroll { height: var(--radar-pane-height,68dvh); min-height: 500px; overflow: auto; overscroll-behavior-y: contain; }
  .page-radar .inspector { position: sticky; top: 20px; height: var(--radar-pane-height,68dvh); min-height: 500px; max-height: none; overflow: auto; overscroll-behavior-y: contain; }
}

@media(min-width:541px) and (max-width:1000px) {
  .page-radar .controls { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px; align-items: start; }
  .page-radar .controls>.scope-picker { grid-column: 1/-1; display: flex; flex-wrap: nowrap; width: 100%; min-width: 0; }
  .page-radar .controls .scope-field { flex: 1; min-width: 0; width: auto; }
  .page-radar .controls .scope-field input { width: 100%; }
  .page-radar .controls>.refine-controls { grid-column: 1; min-width: 0; width: 100%; }
  .page-radar .controls .refine-controls .filters { display: flex; flex-wrap: wrap; gap: 8px; }
  .page-radar .controls .search { flex: 1; min-width: 150px; max-width: none; }
  .page-radar .controls>.view-switch { grid-column: 2; margin: 0; }
  .page-radar .controls .scope-picker>a { white-space: nowrap; }
}

@media(pointer:coarse) {
  .info-trigger { width: 36px; height: 36px; min-width: 36px; min-height: 36px; }
}
