body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Flex children need min-h-0 or overflow-y-auto will expand the panel instead of scrolling */
.chat-panel {
  min-height: 0;
}

.chat-messages {
  scroll-behavior: smooth;
}

@keyframes pulse-red {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); }
  70% { transform: scale(1); box-shadow: 0 0 0 10px rgba(239, 68, 68, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); }
}

.bearish-pulse {
  animation: pulse-red 2s infinite;
  border-radius: 50%;
  background: #ef4444;
}

.thought-stream {
  background: rgba(0, 10, 0, 0.4);
  color: #00ff41;
  font-family: "Courier New", Courier, monospace;
  height: 100%;
  padding: 8px;
  font-size: 10px;
  overflow-y: auto;
  border: none;
}

.htmx-indicator {
  display: none;
}
.htmx-request .htmx-indicator,
.htmx-request.htmx-indicator {
  display: block;
}

#dashboard-root.theme-volatile {
  background-color: rgba(69, 10, 10, 0.2);
}
#dashboard-root.theme-volatile #report-area {
  box-shadow: 0 0 50px rgba(239, 68, 68, 0.2);
}

.ticker-row.hidden {
  display: none;
}

.chart-panel-wrap {
  isolation: isolate;
}

.chart-insight-badge {
  z-index: 5;
  pointer-events: none;
}

.brightdata-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  border: 1px solid transparent;
  max-width: 11rem;
  text-align: right;
  line-height: 1.2;
}

.brightdata-badge::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 9999px;
  flex-shrink: 0;
}

.brightdata-badge.bd-connected {
  color: #6ee7b7;
  background: rgba(6, 78, 59, 0.35);
  border-color: rgba(52, 211, 153, 0.35);
}

.brightdata-badge.bd-connected::before {
  background: #34d399;
  box-shadow: 0 0 6px rgba(52, 211, 153, 0.8);
}

.brightdata-badge.bd-offline {
  color: #94a3b8;
  background: rgba(30, 41, 59, 0.5);
  border-color: rgba(71, 85, 105, 0.5);
}

.brightdata-badge.bd-offline::before {
  background: #64748b;
}
