﻿.sentinel-light {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin: 4px auto;
    transition: all 0.4s ease;
    box-shadow: 0 0 6px rgba(0,0,0,0.4);
}

/* Stati principali */
.sentinel-green {
    background: #28d17c;
    box-shadow: 0 0 12px #28d17c;
}

.sentinel-yellow {
    background: #ffdd57;
    box-shadow: 0 0 12px #ffdd57;
}

.sentinel-red {
    background: #ff4d4d;
    box-shadow: 0 0 12px #ff4d4d;
}

/* Stati aggiuntivi */
.sentinel-blue {
    background: #4da6ff;
    box-shadow: 0 0 12px #4da6ff;
}

.sentinel-grey {
    background: #bfbfbf;
    box-shadow: 0 0 12px #bfbfbf;
}

/* Animazioni */
.sentinel-pulse {
    animation: pulse 1.4s infinite ease-in-out;
}

.sentinel-blink {
    animation: blink 0.9s infinite alternate;
}

.sentinel-wave {
    animation: wave 2s infinite ease-in-out;
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.15);
        opacity: 0.85;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes blink {
    from {
        opacity: 1;
    }

    to {
        opacity: 0.3;
    }
}

@keyframes wave {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.25);
    }

    100% {
        transform: scale(1);
    }
}

/* PREMIUM BLUE-GOLD GLOW */
.sentinel-premium-glow {
    box-shadow: 0 0 25px rgba(0, 102, 255, 0.7), 0 0 45px rgba(255, 215, 0, 0.6);
}

/* WAVE EFFECT (OK) */
.sentinel-wave-strong {
    animation: waveStrong 2.2s infinite ease-in-out;
}

@keyframes waveStrong {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.25);
    }

    100% {
        transform: scale(1);
    }
}

/* BLINK EFFECT (WARNING) */
.sentinel-blink-strong {
    animation: blinkStrong 0.7s infinite alternate;
}

@keyframes blinkStrong {
    from {
        opacity: 1;
    }

    to {
        opacity: 0.3;
    }
}

/* CRITICAL PULSE */
.sentinel-pulse-strong {
    animation: pulseStrong 1.1s infinite ease-in-out;
}

@keyframes pulseStrong {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.35);
        opacity: 0.6;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}
