/* Compact CompaniesMarketCap Top 100 index */
.marketcap-source-note {
  margin: .8rem 0 1rem;
  padding: .55rem .7rem;
  border: 1px solid var(--research-border);
  border-radius: 10px;
  font-size: .58rem;
  opacity: .72;
}

.marketcap-company-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .48rem;
  margin: 1rem 0 2rem;
}

.marketcap-company-card {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: .55rem;
  min-height: 66px;
  padding: .56rem .62rem;
  border: 1px solid var(--research-border);
  border-radius: 10px;
  color: var(--md-default-fg-color) !important;
  background: var(--md-default-bg-color);
  text-decoration: none !important;
  transition: transform 120ms ease, border-color 120ms ease, background 120ms ease;
}

.marketcap-company-card.is-link:hover {
  transform: translateY(-1px);
  border-color: var(--md-accent-fg-color);
  background: var(--research-soft);
}

.marketcap-rank {
  font-size: .6rem;
  font-weight: 780;
  font-variant-numeric: tabular-nums;
  opacity: .45;
}

.marketcap-company-main {
  min-width: 0;
}

.marketcap-company-main strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .66rem;
  line-height: 1.2;
}

.marketcap-company-main span {
  display: block;
  margin-top: .15rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .51rem;
  opacity: .58;
}

.marketcap-company-side {
  text-align: right;
  white-space: nowrap;
}

.marketcap-company-side b {
  display: block;
  font-size: .58rem;
  font-variant-numeric: tabular-nums;
}

.marketcap-company-side small {
  display: block;
  margin-top: .12rem;
  font-size: .46rem;
  opacity: .52;
}

.marketcap-research-badge {
  display: inline-block;
  margin-top: .18rem;
  padding: .08rem .25rem;
  border: 1px solid var(--md-accent-fg-color);
  border-radius: 999px;
  font-size: .42rem;
  font-weight: 760;
  opacity: .88;
}

.marketcap-extra-note {
  margin-top: -.35rem;
  font-size: .62rem;
  opacity: .65;
}

.marketcap-extra-grid {
  display: flex;
  flex-wrap: wrap;
  gap: .38rem;
  margin: .8rem 0 2rem;
}

.marketcap-extra-grid a {
  padding: .3rem .46rem;
  border: 1px solid var(--research-border);
  border-radius: 8px;
  color: var(--md-default-fg-color) !important;
  font-size: .53rem;
  text-decoration: none !important;
}

.marketcap-extra-grid a:hover {
  border-color: var(--md-accent-fg-color);
  background: var(--research-soft);
}

@media screen and (max-width: 1250px) {
  .marketcap-company-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media screen and (max-width: 900px) {
  .marketcap-company-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media screen and (max-width: 560px) {
  .marketcap-company-grid { grid-template-columns: 1fr; }
}
