body {
    background-color: #f3f5f7;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.cp-header {
    background: linear-gradient(90deg, #0b3f78, #09335f);
}

.cp-main .card {
    border-radius: 1rem;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08);
    border: none;
}

.cp-stat-card {
    border-radius: 1rem;
    padding: 1.4rem 1.6rem;
    color: #fff;
}

.cp-stat-card h2 {
    font-size: 2.4rem;
    margin: 0;
}

.cp-stat-blue { background-color: #1d4ed8; }
.cp-stat-green { background-color: #16a34a; }
.cp-stat-gray  { background-color: #6b7280; }
.cp-stat-orange{ background-color: #ea580c; }

.cp-tab-header .nav-link {
    border-bottom: 2px solid transparent;
    color: #4b5563;
}
.cp-tab-header .nav-link.active {
    border-color: #2563eb;
    color: #111827;
    font-weight: 600;
}

.cp-phase-on {
    color: #16a34a;
    font-weight: 600;
}
.cp-phase-off {
    color: #9ca3af;
    font-weight: 500;
}

.cp-status-dot {
    width: .6rem;
    height: .6rem;
    border-radius: 999px;
    display: inline-block;
    margin-right: .35rem;
}
.cp-status-online  { background-color: #16a34a; }
.cp-status-offline { background-color: #ef4444; }

.cp-event-alarm   { color: #dc2626; font-weight: 600; }
.cp-event-warning { color: #f97316; font-weight: 600; }
.cp-event-error   { color: #b91c1c; font-weight: 600; }
.cp-event-info    { color: #2563eb; font-weight: 600; }
