.research-v714-callout,
.research-v714-card,
.research-v714-packet,
.research-v714-workspace {
  border: 1px solid var(--ws-rule, #c8c8c8);
  background: var(--ws-paper, #fff);
  padding: clamp(.9rem, 2vw, 1.4rem);
}

.research-v714-grid,
.research-v714-scorecard,
.research-v714-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: 1rem;
}

.research-v714-stack { display: grid; gap: 1rem; }
.research-v714-card h2,
.research-v714-card h3 { margin-top: .35rem; }
.research-v714-card[data-priority="P1_CRITICAL_RESEARCH_QUEUE"] { border-top: .45rem double currentColor; }
.research-v714-card[data-readiness="NOT_READY"],
.research-v714-card[data-readiness="NEEDS_LOCATOR"] { border-left: .35rem dashed currentColor; }

.research-v714-metrics > div,
.research-v714-scorecard > div { border: 1px solid var(--ws-rule, #c8c8c8); padding: .8rem; }
.research-v714-metrics dt,
.research-v714-scorecard dt { font-weight: 700; }
.research-v714-metrics dd,
.research-v714-scorecard dd { margin: .25rem 0 0; }
.research-v714-metrics dd { font-size: clamp(1.5rem, 3vw, 2.25rem); }

.research-v714-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
  gap: .8rem;
  margin-block: 1rem;
}
.research-v714-form > div { display: grid; gap: .3rem; }
.research-v714-form input,
.research-v714-form select,
.research-v714-form button { min-height: 44px; width: 100%; padding: .55rem; border: 1px solid #111; background: #fff; color: #111; }
.research-v714-form button { align-self: end; }

.research-v714-badges { display: flex; flex-wrap: wrap; gap: .5rem; }
.research-v714-badge {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  padding: .2rem .55rem;
  border: 1px solid currentColor;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.research-v714-badge::before { content: "●"; margin-right: .35rem; }
.research-v714-origin { font-size: .85rem; border-left: .25rem solid currentColor; padding-left: .6rem; }
.research-v714-empty { border: 2px dashed currentColor; padding: 1rem; }
.research-v714-chain { overflow-wrap: anywhere; }

@media (max-width: 390px) {
  .research-v714-card,
  .research-v714-packet,
  .research-v714-workspace { padding: .75rem; }
  .research-v714-grid,
  .research-v714-scorecard,
  .research-v714-metrics,
  .research-v714-form { grid-template-columns: 1fr; }
}
