/* Footer addons (Professional Footer) */

/* Ensure dashboards list can shrink when stream toggle is present */
.dashboards-footer .dashboards-list {
    flex: 1 1 auto;
    min-width: 0; /* allow overflow-x scroll inside */
}

/* Stream Toggle Button in Footer */
.footer-stream-toggle {
    position: relative;
    margin-left: auto;
    padding-left: 1rem;
    border-left: 1px solid var(--border, #e2e8f0);
    flex-shrink: 0;
}

.stream-toggle-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border: 1px solid var(--border, #e2e8f0);
    border-radius: 999px;
    background: var(--bg-primary, #fff);
    color: var(--text-primary, #0f172a);
    font-weight: 600;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.2s ease;
    user-select: none;
}

.stream-toggle-btn:hover {
    background: var(--bg-hover, #f1f5f9);
    border-color: var(--primary, #6366f1);
}

.stream-toggle-btn:focus-visible {
    outline: 2px solid var(--primary, #6366f1);
    outline-offset: 2px;
}

.stream-toggle-icon {
    display: inline-flex;
    align-items: center;
}

/* Active/Recording State */
.stream-toggle-btn[aria-pressed="true"] {
    background: var(--danger);
    color: var(--text-inverse);
    border-color: var(--danger);
}

.stream-toggle-status {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #94a3b8;
}

.stream-toggle-status.is-ready {
    background: var(--success);
}

.stream-toggle-status.is-recording {
    background: var(--danger);
    animation: streamPulse 1s infinite;
}

@keyframes streamPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.7; transform: scale(1.1); }
}


