/* ============================================================
   RADAR DE MERCADO
   ============================================================ */

.radar-quote {
  display: grid;
  grid-template-columns: auto minmax(10rem, auto) minmax(30rem, 1fr);
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-3) var(--space-4);
}

.radar-quote__main {
  display: flex;
  align-items: baseline;
  gap: var(--space-3);
}

.radar-quote__pair { color: var(--text-secondary); font-size: var(--text-sm); font-weight: var(--font-semibold); }
.radar-quote__main > strong { font-size: clamp(1.75rem, 3vw, 2.5rem); letter-spacing: -0.04em; }
.radar-change { font-size: var(--text-sm); font-weight: var(--font-semibold); }
.radar-change.up { color: var(--success); }
.radar-change.down { color: var(--danger); }

.radar-quote__meta {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 0.125rem;
  margin-top: 0;
  color: var(--text-secondary);
  font-size: var(--text-xs);
  line-height: 1.35;
}

.radar-market-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-2);
  margin-top: 0;
}

.radar-market-stats > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-1);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-lg);
  background: var(--bg-tertiary);
}

.radar-market-stats span { color: var(--text-secondary); font-size: 0.65rem; text-transform: uppercase; }
.radar-market-stats strong { font-size: var(--text-sm); }
.radar-chart-card .card__body { position: relative; padding: var(--space-3); }

.radar-chart-toolbar { display: flex; align-items: center; justify-content: space-between; }
.radar-timeframes { display: inline-flex; padding: 0.15rem; border: 1px solid var(--border-color); border-radius: var(--radius-md); }
.radar-timeframes button { padding: var(--space-1) var(--space-3); color: var(--text-secondary); font-size: var(--text-xs); border: 0; border-radius: var(--radius-sm); background: transparent; cursor: pointer; }
.radar-timeframes button.active { color: white; background: var(--accent); }
.radar-legend { display: flex; gap: var(--space-3); font-size: var(--text-xs); }
.radar-legend span::before { content: ""; display: inline-block; width: 0.75rem; height: 2px; margin-right: var(--space-1); vertical-align: middle; background: currentColor; }
.radar-legend .ema9 { color: #f59e0b; }
.radar-legend .ema21 { color: #8b5cf6; }
.radar-chart { width: 100%; min-height: 430px; }
.radar-chart-loading { position: absolute; inset: var(--space-3); z-index: 2; display: grid; place-items: center; color: var(--text-secondary); background: color-mix(in srgb, var(--bg-primary) 86%, transparent); }
.radar-chart-loading[hidden] { display: none; }
.radar-fallback-chart { width: 100%; min-height: 390px; }
.radar-chart-notice { color: var(--text-tertiary); font-size: var(--text-xs); text-align: center; }
.radar-disclaimer { margin-top: var(--space-3); color: var(--text-tertiary); font-size: var(--text-xs); text-align: center; }
.radar-sources { margin-top: var(--space-4); }
.radar-source-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: var(--space-3); }
.radar-source-item { display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-3); border: 1px solid var(--border-color); border-radius: var(--radius-lg); background: var(--bg-secondary); }
.radar-source-item span, .radar-source-item small { color: var(--text-secondary); font-size: var(--text-xs); }
.radar-source-item strong { font-size: var(--text-lg); }
.radar-source-links { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-3); padding-top: var(--space-3); border-top: 1px solid var(--border-color); }
.radar-source-links a { color: var(--accent); font-size: var(--text-sm); font-weight: 600; }

@media (max-width: 1100px) {
  .radar-quote { grid-template-columns: auto 1fr; }
  .radar-market-stats { grid-column: 1 / -1; }
}

@media (max-width: 720px) {
  .radar-quote { grid-template-columns: 1fr; }
  .radar-quote__main { align-items: flex-start; flex-direction: column; gap: var(--space-1); }
  .radar-quote__meta { align-items: flex-start; flex-direction: column; gap: var(--space-1); }
  .radar-market-stats { grid-column: auto; }
  .radar-market-stats { grid-template-columns: repeat(2, 1fr); }
  .radar-chart-toolbar { align-items: flex-start; flex-direction: column; gap: var(--space-3); }
  .radar-chart { min-height: 360px; }
}
