/**
 * Environment Module Admin Panel Fixes
 *
 * This CSS ensures that the environment module admin panels are properly visible
 * and correctly styled with consistent appearance across all browsers.
 */

/* Make sure admin tab and content are visible */
#admin-tab-pane, 
#admin-tab-pane.active,
#admin-tab-pane.show {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Ensure admin navigation sidebar is visible */
#environmentAdminNavigation,
.admin-navigation {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Make sure all admin tab panes are visible when active */
.admin-content .tab-pane.active,
.admin-content .tab-pane.show.active {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Fix device table visibility */
#connectedDevicesTable,
#connectedDevicesTable tbody,
#connectedDevicesTable tbody tr,
#connectedDevicesTable tbody tr td {
    display: revert !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Fix for admin dashboard layout */
.admin-dashboard {
    min-height: 500px !important;
}

.admin-dashboard .row {
    display: flex !important;
    flex-wrap: wrap !important;
}

/* Fix for admin panel coloring */
.admin-dashboard h2 {
    color: white !important;
    margin-bottom: 1.5rem !important;
    padding-bottom: 0.5rem !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.admin-navigation .list-group-item {
    background-color: #2a2f35 !important;
    color: #e4e6eb !important;
    border-color: #495057 !important;
}

.admin-navigation .list-group-item:hover {
    background-color: #343a40 !important;
}

.admin-navigation .list-group-item.active {
    background-color: #0d6efd !important;
    border-color: #0d6efd !important;
    color: white !important;
}

/* Force all tables to be visible */
.admin-content table,
.admin-content table thead,
.admin-content table tbody,
.admin-content table tr,
.admin-content table th,
.admin-content table td {
    display: revert !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Ensure table cells are properly sized */
.admin-content table td,
.admin-content table th {
    padding: 0.5rem !important;
}

/* Fix card styles in admin panels */
.admin-content .card {
    background-color: #2a2f35 !important;
    border-color: #495057 !important;
    margin-bottom: 1.5rem !important;
}

.admin-content .card-header {
    background-color: #343a40 !important;
    border-bottom-color: #495057 !important;
}

.admin-content .card-body {
    padding: 1.25rem !important;
}

/* Fix for device action buttons */
.device-actions .btn {
    display: inline-block !important;
    margin-right: 0.25rem !important;
}

/* Fix the admin forms */
.admin-content form,
.admin-content input,
.admin-content select,
.admin-content textarea,
.admin-content button {
    display: revert !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Fix search input in admin panels */
.admin-search-form {
    margin-bottom: 1rem !important;
    display: flex !important;
}

.admin-search-form input {
    background-color: #2a2f35 !important;
    border-color: #495057 !important;
    color: #e4e6eb !important;
}

/* Ensure all icons are visible */
.admin-content .fas,
.admin-content .far,
.admin-content .fab {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Fix form controls in admin panels */
.admin-content .form-control,
.admin-content .form-select {
    background-color: #2a2f35 !important;
    border-color: #495057 !important;
    color: #e4e6eb !important;
}

.admin-content .form-control:focus,
.admin-content .form-select:focus {
    background-color: #343a40 !important;
    border-color: #0d6efd !important;
}

/* Fix admin status display */
.admin-stat-card {
    background-color: #2a2f35 !important;
    border-radius: 0.5rem !important;
    padding: 1.25rem !important;
    text-align: center !important;
    border-left: 4px solid #0d6efd !important;
    margin-bottom: 1rem !important;
    display: block !important;
}

.admin-stat-value {
    font-size: 2rem !important;
    font-weight: 600 !important;
    color: white !important;
    margin-bottom: 0.25rem !important;
}

.admin-stat-label {
    color: #adb5bd !important;
    font-size: 0.9rem !important;
}

/* Custom styles specifically for the table in the environment module */
#admin-tab-pane table {
    width: 100% !important;
    border-collapse: collapse !important;
    color: #e4e6eb !important;
}

#admin-tab-pane table th,
#admin-tab-pane table td {
    padding: 0.75rem !important;
    vertical-align: top !important;
    border-top: 1px solid #495057 !important;
}

#admin-tab-pane table thead th {
    vertical-align: bottom !important;
    border-bottom: 2px solid #495057 !important;
    background-color: #343a40 !important;
}

#admin-tab-pane table tbody tr:hover {
    background-color: rgba(255, 255, 255, 0.05) !important;
}