Files
SIEM---Wazuh/css/style.css
2025-08-27 21:17:28 +02:00

487 lines
8.2 KiB
CSS

/**
* SIEM-Wazuh Plugin for GLPI - Stylesheet
* Styles for the SIEM-Wazuh plugin interface
*/
/* General plugin styles */
.siem-wazuh-container {
padding: 15px;
}
.siem-wazuh-header {
display: flex;
align-items: center;
margin-bottom: 20px;
padding: 10px;
background: #f8f9fa;
border-radius: 5px;
}
.siem-wazuh-logo {
width: 32px;
height: 32px;
margin-right: 10px;
}
/* Server status indicators */
.server-status {
display: inline-block;
padding: 3px 8px;
border-radius: 3px;
font-size: 11px;
font-weight: bold;
text-transform: uppercase;
}
.server-status.active {
background-color: #28a745;
color: white;
}
.server-status.inactive {
background-color: #dc3545;
color: white;
}
.server-status.testing {
background-color: #ffc107;
color: #212529;
}
/* Alert severity badges */
.severity-badge {
display: inline-block;
padding: 2px 6px;
border-radius: 3px;
font-size: 10px;
font-weight: bold;
text-transform: uppercase;
}
.severity-low {
background-color: #28a745;
color: white;
}
.severity-medium {
background-color: #ffc107;
color: #212529;
}
.severity-high {
background-color: #fd7e14;
color: white;
}
.severity-critical {
background-color: #dc3545;
color: white;
}
/* Status badges */
.status-badge {
display: inline-block;
padding: 2px 6px;
border-radius: 3px;
font-size: 10px;
font-weight: bold;
}
.status-new {
background-color: #17a2b8;
color: white;
}
.status-processed {
background-color: #28a745;
color: white;
}
.status-ignored {
background-color: #6c757d;
color: white;
}
.status-ticket {
background-color: #007bff;
color: white;
}
.status-ticket_created {
background-color: #007bff;
color: white;
}
/* Rule level indicators */
.rule-level-1,
.rule-level-2,
.rule-level-3,
.rule-level-4 {
background-color: #28a745;
color: white;
}
.rule-level-5,
.rule-level-6,
.rule-level-7 {
background-color: #ffc107;
color: #212529;
}
.rule-level-8,
.rule-level-9,
.rule-level-10,
.rule-level-11 {
background-color: #fd7e14;
color: white;
}
.rule-level-12,
.rule-level-13,
.rule-level-14,
.rule-level-15 {
background-color: #dc3545;
color: white;
}
/* Alert summary styles */
.alert-summary {
margin-bottom: 20px;
}
.alert-summary .tab_cadre_fixe {
border: 1px solid #dee2e6;
}
.alert-summary td {
text-align: center;
padding: 10px;
border-right: 1px solid #dee2e6;
}
.alert-summary td:last-child {
border-right: none;
}
.alert-summary strong {
font-size: 18px;
display: block;
margin-bottom: 5px;
}
/* Filters section */
.alert-filters {
background-color: #f8f9fa;
padding: 15px;
border-radius: 5px;
margin-bottom: 20px;
}
/* Action buttons */
.action-buttons {
white-space: nowrap;
}
.action-buttons .btn {
margin: 0 2px;
padding: 4px 8px;
font-size: 11px;
border-radius: 3px;
}
.btn-primary {
background-color: #007bff;
border-color: #007bff;
color: white;
}
.btn-success {
background-color: #28a745;
border-color: #28a745;
color: white;
}
.btn-warning {
background-color: #ffc107;
border-color: #ffc107;
color: #212529;
}
.btn-danger {
background-color: #dc3545;
border-color: #dc3545;
color: white;
}
.btn-secondary {
background-color: #6c757d;
border-color: #6c757d;
color: white;
}
/* JSON data display */
.json-data {
background-color: #f8f9fa;
border: 1px solid #dee2e6;
border-radius: 4px;
padding: 10px;
font-family: Monaco, Menlo, "Ubuntu Mono", monospace;
font-size: 12px;
max-height: 300px;
overflow-y: auto;
white-space: pre-wrap;
}
/* Configuration tabs */
.config-tabs {
margin-bottom: 20px;
}
.config-tabs .nav-tabs {
border-bottom: 1px solid #dee2e6;
margin-bottom: 0;
}
.config-tabs .nav-item {
display: inline-block;
margin-bottom: -1px;
}
.config-tabs .nav-link {
display: block;
padding: 10px 15px;
text-decoration: none;
color: #495057;
border: 1px solid transparent;
border-top-left-radius: 0.25rem;
border-top-right-radius: 0.25rem;
margin-right: 2px;
}
.config-tabs .nav-link:hover {
border-color: #e9ecef #e9ecef #dee2e6;
text-decoration: none;
}
.config-tabs .nav-link.active {
color: #495057;
background-color: #fff;
border-color: #dee2e6 #dee2e6 #fff;
}
/* Log level badges */
.log-debug {
background-color: #d1ecf1;
color: #0c5460;
padding: 2px 6px;
border-radius: 3px;
font-size: 10px;
font-weight: bold;
}
.log-info {
background-color: #bee5eb;
color: #0c5460;
padding: 2px 6px;
border-radius: 3px;
font-size: 10px;
font-weight: bold;
}
.log-warning {
background-color: #fff3cd;
color: #856404;
padding: 2px 6px;
border-radius: 3px;
font-size: 10px;
font-weight: bold;
}
.log-error {
background-color: #f8d7da;
color: #721c24;
padding: 2px 6px;
border-radius: 3px;
font-size: 10px;
font-weight: bold;
}
.log-critical {
background-color: #f5c6cb;
color: #721c24;
padding: 2px 6px;
border-radius: 3px;
font-size: 10px;
font-weight: bold;
}
/* Alert messages */
.alert {
padding: 12px 20px;
margin: 15px 0;
border: 1px solid transparent;
border-radius: 4px;
}
.alert-success {
color: #155724;
background-color: #d4edda;
border-color: #c3e6cb;
}
.alert-info {
color: #0c5460;
background-color: #d1ecf1;
border-color: #bee5eb;
}
.alert-warning {
color: #856404;
background-color: #fff3cd;
border-color: #ffeaa7;
}
.alert-danger {
color: #721c24;
background-color: #f8d7da;
border-color: #f5c6cb;
}
/* Statistics cards */
.stats-card {
background: #fff;
border: 1px solid #dee2e6;
border-radius: 5px;
padding: 20px;
margin-bottom: 20px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.stats-card h3 {
color: #495057;
font-size: 18px;
margin-bottom: 15px;
border-bottom: 1px solid #dee2e6;
padding-bottom: 10px;
}
.stats-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 15px;
margin-top: 20px;
}
.stat-item {
text-align: center;
padding: 15px;
background: #f8f9fa;
border-radius: 5px;
}
.stat-number {
font-size: 24px;
font-weight: bold;
color: #007bff;
display: block;
}
.stat-label {
font-size: 12px;
color: #6c757d;
margin-top: 5px;
}
/* Responsive design */
@media (max-width: 768px) {
.alert-summary td {
padding: 5px;
font-size: 12px;
}
.alert-summary strong {
font-size: 14px;
}
.action-buttons .btn {
padding: 2px 4px;
font-size: 10px;
margin: 1px;
}
.stats-grid {
grid-template-columns: repeat(2, 1fr);
}
}
/* Loading animations */
.loading-spinner {
display: inline-block;
width: 16px;
height: 16px;
border: 2px solid #f3f3f3;
border-top: 2px solid #007bff;
border-radius: 50%;
animation: spin 1s linear infinite;
margin-right: 5px;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
/* Tooltip styles */
.wazuh-tooltip {
position: relative;
display: inline-block;
cursor: help;
}
.wazuh-tooltip .tooltiptext {
visibility: hidden;
width: 200px;
background-color: #555;
color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px;
position: absolute;
z-index: 1;
bottom: 125%;
left: 50%;
margin-left: -100px;
opacity: 0;
transition: opacity 0.3s;
font-size: 11px;
}
.wazuh-tooltip:hover .tooltiptext {
visibility: visible;
opacity: 1;
}
/* Dark theme support */
@media (prefers-color-scheme: dark) {
.siem-wazuh-header {
background: #343a40;
color: #fff;
}
.alert-filters {
background-color: #343a40;
color: #fff;
}
.json-data {
background-color: #2d3748;
color: #e2e8f0;
border-color: #4a5568;
}
.stats-card {
background: #343a40;
color: #fff;
border-color: #4a5568;
}
}