/* style.css */
body {
    font-family: 'JetBrains Mono', monospace;
    background-color: #050505 !important;
    color: #e0e0e0;
}

/* --- Text Visibility Fixes --- */
/* Overriding Bootstrap's text-muted to be visible on black */
.text-muted {
    color: #8b949e !important; /* Lighter Gray */
}

h5.text-muted {
    color: #8b949e !important;
    font-weight: 600;
    letter-spacing: 1px;
}
/* ----------------------------- */

/* Navbar Pulse Dot */
.pulse-dot {
    width: 10px;
    height: 10px;
    background-color: #00ff00;
    border-radius: 50%;
    box-shadow: 0 0 0 0 rgba(0, 255, 0, 0.7);
    animation: pulse-green 2s infinite;
}

@keyframes pulse-green {
    0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 255, 0, 0.7); }
    70% { transform: scale(1); box-shadow: 0 0 0 10px rgba(0, 255, 0, 0); }
    100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 255, 0, 0); }
}

/* Stat Boxes */
.stat-box {
    background: #0d1117;
    border: 1px solid #30363d;
    border-radius: 6px;
    padding: 20px;
    height: 100%; /* Ensure equal height */
}

/* Agent Cards */
.agent-card {
    background: #0d1117;
    border: 1px solid #30363d;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.agent-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.5);
}

/* Dynamic Status Borders */
.border-healthy { border-top: 4px solid #2ea043 !important; }
.border-degraded { border-top: 4px solid #d29922 !important; }
.border-down { border-top: 4px solid #da3633 !important; }

/* Text Colors */
.text-healthy { color: #2ea043; }
.text-degraded { color: #d29922; }
.text-down { color: #da3633; }

.vitality-number {
    font-size: 3.5rem; /* Slightly larger */
    font-weight: 700;
}

.small-badge {
    font-size: 0.6em;
    vertical-align: middle;
}