.research-v713-hero,
.research-v713-panel,
.research-gap-card,
.research-trace-card,
.maturity-dimension-card {
  border: 1px solid var(--ws-rule, #d5d5d5);
  background: var(--ws-paper, #fff);
}

.research-v713-hero,
.research-v713-panel { padding: clamp(1rem, 3vw, 2rem); }

.research-v713-nav,
.research-v713-actions,
.research-v713-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
}

.research-v713-nav a,
.research-v713-actions a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: .55rem .8rem;
  border: 1px solid currentColor;
}

.research-v713-metrics,
.research-gap-grid,
.maturity-dimensions,
.research-v713-filter-grid,
.trace-node-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
  gap: 1rem;
}

.research-v713-metrics > div,
.maturity-dimension-card,
.research-gap-card,
.research-trace-card { padding: 1rem; }

.research-v713-metrics dt,
.maturity-dimension-card dt,
.research-trace-card dt { font-weight: 600; }

.research-v713-metrics dd {
  margin: .2rem 0 0;
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  line-height: 1;
}

.maturity-dimension-card[data-state*="NOT_"],
.maturity-dimension-card[data-state*="MISSING"],
.maturity-dimension-card[data-state*="REQUIRED"],
.research-gap-card[data-status="OPEN"] { border-left: .45rem double #111; }

.research-v713-badge {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  padding: .2rem .55rem;
  border: 1px solid currentColor;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.research-v713-filter-grid label { display: grid; gap: .3rem; }
.research-v713-filter-grid input,
.research-v713-filter-grid select { width: 100%; min-height: 44px; padding: .55rem; border: 1px solid #111; background: #fff; color: #111; }
.research-v713-filter-grid button { align-self: end; min-height: 44px; }

.research-trace-chain {
  margin: 1rem 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 8rem), 1fr));
  gap: .5rem;
  counter-reset: trace;
}

.research-trace-chain li {
  counter-increment: trace;
  padding: .65rem;
  border: 1px solid #111;
}

.research-trace-chain li::before { content: counter(trace) ". "; font-weight: 600; }
.research-trace-chain li[data-missing="true"] { border-style: dashed; }
.research-trace-chain li[data-missing="true"]::after { content: " — unresolved"; }

.research-v713-table-wrap { overflow-x: auto; overscroll-behavior-inline: contain; }
.research-v713-table-wrap table { min-width: 48rem; width: 100%; }
.research-v713-table-wrap th,
.research-v713-table-wrap td { padding: .65rem; border: 1px solid var(--ws-rule, #d5d5d5); text-align: left; vertical-align: top; }

.research-gap-count { font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1; }
.research-v713-empty { padding: 1rem; border: 2px dashed #111; }

@media (max-width: 390px) {
  .research-v713-hero,
  .research-v713-panel,
  .research-gap-card,
  .research-trace-card,
  .maturity-dimension-card { padding: .8rem; }
  .research-v713-nav a,
  .research-v713-actions a { flex: 1 1 100%; justify-content: center; }
  .research-trace-chain { grid-template-columns: 1fr; }
}
