/* Status Page Specific Styles */

.status-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.35;
    pointer-events: none;
}

.status-card {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.status-card:hover {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.18);
    transform: translateY(-2px);
}

/* Indicator Pulse Animation */
@keyframes pulse-ring {
    0% {
        transform: scale(0.95);
        opacity: 0.8;
    }
    50% {
        transform: scale(1.15);
        opacity: 0.4;
    }
    100% {
        transform: scale(0.95);
        opacity: 0.8;
    }
}

.pulse-ring-emerald {
    animation: pulse-ring 2.5s infinite ease-in-out;
    box-shadow: 0 0 16px rgba(16, 185, 129, 0.4);
}

.pulse-ring-amber {
    animation: pulse-ring 2.5s infinite ease-in-out;
    box-shadow: 0 0 16px rgba(245, 158, 11, 0.4);
}

.pulse-ring-orange {
    animation: pulse-ring 2.5s infinite ease-in-out;
    box-shadow: 0 0 16px rgba(249, 115, 22, 0.4);
}

.pulse-ring-rose {
    animation: pulse-ring 2.5s infinite ease-in-out;
    box-shadow: 0 0 16px rgba(244, 63, 94, 0.4);
}

.pulse-ring-blue {
    animation: pulse-ring 2.5s infinite ease-in-out;
    box-shadow: 0 0 16px rgba(59, 130, 246, 0.4);
}

/* Skeleton Loading Shimmer */
@keyframes skeleton-shimmer {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

.skeleton-box {
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0.04) 25%,
        rgba(255, 255, 255, 0.09) 37%,
        rgba(255, 255, 255, 0.04) 63%
    );
    background-size: 400% 100%;
    animation: skeleton-shimmer 1.8s ease-in-out infinite;
    border-radius: 0.5rem;
}

/* Group Section Accordion Transition */
.group-content {
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
    overflow: hidden;
}

.group-content.collapsed {
    max-height: 0 !important;
    opacity: 0;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
}

/* Refresh Button Rotation */
.spinning {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
