/* /Components/AlertsComponent.razor.rz.scp.css */
.alerts-panel[b-og79gpsl41] {
    width: 100%;
    font-family: 'IBM Plex Mono', monospace;
}

/* ── Empty state ─────────────────────────────────────────────────────────── */

.alerts-empty[b-og79gpsl41] {
    display:         flex;
    align-items:     center;
    gap:             10px;
    padding:         20px 16px;
    color:           #6b7280;
    font-size:       0.9rem;
}

.alerts-empty-icon[b-og79gpsl41] {
    display:          inline-flex;
    align-items:      center;
    justify-content:  center;
    width:            24px;
    height:           24px;
    border-radius:    50%;
    background:       #22c55e22;
    color:            #22c55e;
    font-size:        0.8rem;
    font-weight:      700;
    flex-shrink:      0;
}

/* ── Table ───────────────────────────────────────────────────────────────── */

.alerts-table[b-og79gpsl41] {
    width:           100%;
    border-collapse: collapse;
    font-size:       0.85rem;
}

.alerts-table thead tr[b-og79gpsl41] {
    border-bottom: 1px solid #ffffff14;
}

.alerts-table th[b-og79gpsl41] {
    padding:        10px 14px;
    text-align:     left;
    font-size:      0.72rem;
    font-weight:    600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color:          #6b7280;
    white-space:    nowrap;
}

.alerts-table td[b-og79gpsl41] {
    padding:       12px 14px;
    border-bottom: 1px solid #ffffff08;
    vertical-align: middle;
}

.alert-row:last-child td[b-og79gpsl41] {
    border-bottom: none;
}

/* Row accent — left border by status */
.alert-row.status-alarm td:first-child[b-og79gpsl41] {
    border-left: 3px solid #ef4444;
    padding-left: 11px;
}

.alert-row.status-delayed td:first-child[b-og79gpsl41] {
    border-left: 3px solid #f97316;
    padding-left: 11px;
}

.alert-row.status-maintenance td:first-child[b-og79gpsl41] {
    border-left: 3px solid #9ca3af;
    padding-left: 11px;
}

/* ── Status badge ────────────────────────────────────────────────────────── */

.status-badge[b-og79gpsl41] {
    display:       inline-block;
    padding:       3px 10px;
    border-radius: 4px;
    font-size:     0.75rem;
    font-weight:   600;
    letter-spacing: 0.04em;
    white-space:   nowrap;
}

.status-badge.status-alarm[b-og79gpsl41] {
    background: #ef444422;
    color:      #f87171;
    border:     1px solid #ef444440;
}

.status-badge.status-delayed[b-og79gpsl41] {
    background: #f9731622;
    color:      #fb923c;
    border:     1px solid #f9731640;
}

.status-badge.status-maintenance[b-og79gpsl41] {
    background: #9ca3af22;
    color:      #d1d5db;
    border:     1px solid #9ca3af40;
}

/* ── Point name ──────────────────────────────────────────────────────────── */

.point-name[b-og79gpsl41] {
    font-weight: 500;
    color:       #f3f4f6;
}

/* ── Device status cells ─────────────────────────────────────────────────── */

.device-cell[b-og79gpsl41] {
    font-size: 0.8rem;
}

.device-cell.device-online[b-og79gpsl41]  { color: #22c55e; }
.device-cell.device-delayed[b-og79gpsl41] { color: #f97316; }
.device-cell.device-offline[b-og79gpsl41] { color: #ef4444; }

/* ── Last seen ───────────────────────────────────────────────────────────── */

.last-seen[b-og79gpsl41] {
    color:     #6b7280;
    font-size: 0.8rem;
    white-space: nowrap;
}
/* /Components/MapComponent.razor.rz.scp.css */
/* Leaflet renders inside a plain div — tweak the popup style to match the dark theme */

:global(.leaflet-popup-content-wrapper)[b-rn932j8v2m] {
    background:    #1f2937;
    color:         #f3f4f6;
    border-radius: 6px;
    border:        1px solid #374151;
    box-shadow:    0 4px 20px #00000060;
    font-family:   'IBM Plex Mono', monospace;
}

:global(.leaflet-popup-tip)[b-rn932j8v2m] {
    background: #1f2937;
}

:global(.leaflet-popup-close-button)[b-rn932j8v2m] {
    color: #9ca3af !important;
}

:global(.leaflet-popup-close-button:hover)[b-rn932j8v2m] {
    color: #f3f4f6 !important;
}
