.trend-signal {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: .25rem .6rem;
  margin-top: .85rem;
  padding: .75rem;
  border: 1px solid rgb(52 211 153 / .18);
  border-radius: .9rem;
  background: linear-gradient(135deg, rgb(16 185 129 / .11), rgb(34 211 238 / .045));
}

.trend-growth {
  grid-row: span 2;
  display: inline-flex;
  align-items: center;
  gap: .2rem;
  color: #6ee7b7;
  font-size: .9rem;
  font-weight: 900;
}

.trend-arrow {
  width: 1.15rem;
  height: 1.15rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  animation: trend-arrow-rise 1.45s ease-in-out infinite;
}

.trend-usage {
  color: #f8fafc;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.2;
}

.trend-count {
  display: inline-block;
  min-width: 2.4rem;
  color: #a7f3d0;
  font-variant-numeric: tabular-nums;
}

.trend-estimate {
  color: #94a3b8;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

html.light .trend-signal {
  border-color: rgb(5 150 105 / .2);
  background: linear-gradient(135deg, rgb(16 185 129 / .1), rgb(34 211 238 / .04));
}

html.light .trend-growth,
html.light .trend-count { color: #047857; }
html.light .trend-usage { color: #0f172a; }
html.light .trend-estimate { color: #64748b; }

@keyframes trend-arrow-rise {
  0%, 100% { opacity: .65; transform: translate3d(-1px, 2px, 0); }
  50% { opacity: 1; transform: translate3d(2px, -2px, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .trend-arrow { animation: none; }
}
