/* ── Component collapse ───────────────────────────────────────────────── */
.component-headline { display: none; }
.component-card[data-collapsed="true"] .component-headline { display: block; }
.component-card[data-collapsed="true"] .component-body   { display: none;  }

.collapse-toggle {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  width: 12px;
  height: 12px;
  font-size: 9px;
  line-height: 1;
  opacity: 0.28;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.15s ease, opacity 0.15s ease;
  flex-shrink: 0;
  color: currentColor;
}
.collapse-toggle:hover { opacity: 0.65; }
.component-card[data-collapsed="true"] .collapse-toggle { transform: rotate(-90deg); }

/* ── Custom Scrollbar for a cleaner UI ───────────────────────────────── */
/* Custom Scrollbar for a cleaner UI */
.custom-scrollbar::-webkit-scrollbar {
    width: 6px;
}
.custom-scrollbar::-webkit-scrollbar-track {
    background: transparent;
}
.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #e5e7eb;
    border-radius: 10px;
}

/* Connection indicator animation */
.conn-dot.connected {
    background-color: #36d399;
    box-shadow: 0 0 10px #36d399;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% { transform: scale(0.95); opacity: 0.7; }
    70% { transform: scale(1.1); opacity: 1; }
    100% { transform: scale(0.95); opacity: 0.7; }
}
