/* Device status styles */
.status-online { 
    color: #28a745; 
}

.status-offline { 
    color: #6c757d; 
}

/* Active status animation */
@keyframes pulse {
    0% { opacity: 1; }
    50% { opacity: 0.6; }
    100% { opacity: 1; }
}

/* Search and dropdown conflict prevention */
.search-results, .content-section, .media-grid, .table-responsive {
    position: relative;
    z-index: 1;
}

/* Ensure search dropdowns don't interfere with main content */
.search-dropdown {
    position: absolute;
    background: white;
    border: 1px solid #cdd4e0;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    max-height: 200px;
    overflow-y: auto;
    z-index: 10000;
    display: none;
}

.search-dropdown.show {
    display: block;
}

.search-dropdown-option {
    padding: 8px 12px;
    cursor: pointer;
    border-bottom: 1px solid #eee;
    transition: background-color 0.2s;
}

.search-dropdown-option:hover {
    background-color: #f8f9fa;
}

.search-dropdown-option:last-child {
    border-bottom: none;
}

/* Bootstrap color variables for schedule status */
:root {
    --bs-primary: #007bff;
    --bs-secondary: #6c757d;
    --bs-success: #28a745;
    --bs-danger: #dc3545;
    --bs-warning: #ffc107;
    --bs-info: #17a2b8;
}

/* Prevent dropdown conflicts with search results */
.content-section .card-body,
.media-gallery,
.table-responsive,
#filesList,
#channelsList,
#devicesTable,
#wallsList,
#locationsList,
#squadsList,
#schedulesList {
    position: relative;
    z-index: 2;
}

/* Ensure modals and their dropdowns work correctly */
.modal, [style*="position: fixed"] {
    z-index: 9999;
}

.modal .search-dropdown,
[style*="position: fixed"] .search-dropdown {
    z-index: 10001;
}