/* Positive valence glow effects */
.glow-border-1 {
    position: relative;
    animation: glow-1 1.5s infinite alternate;
}

@keyframes glow-1 {
    from {
        box-shadow: 0 0 1px rgba(134, 187, 216, 0.3), 0 0 2px rgba(134, 187, 216, 0.3), 0 0 3px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 2px rgba(134, 187, 216, 0.6), 0 0 4px rgba(134, 187, 216, 0.6), 0 0 6px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-2 {
    position: relative;
    animation: glow-2 1.5s infinite alternate;
}

@keyframes glow-2 {
    from {
        box-shadow: 0 0 2px rgba(134, 187, 216, 0.3), 0 0 4px rgba(134, 187, 216, 0.3), 0 0 6px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 4px rgba(134, 187, 216, 0.6), 0 0 8px rgba(134, 187, 216, 0.6), 0 0 12px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-3 {
    position: relative;
    animation: glow-3 1.5s infinite alternate;
}

@keyframes glow-3 {
    from {
        box-shadow: 0 0 3px rgba(134, 187, 216, 0.3), 0 0 6px rgba(134, 187, 216, 0.3), 0 0 9px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 6px rgba(134, 187, 216, 0.6), 0 0 12px rgba(134, 187, 216, 0.6), 0 0 18px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-4 {
    position: relative;
    animation: glow-4 1.5s infinite alternate;
}

@keyframes glow-4 {
    from {
        box-shadow: 0 0 4px rgba(134, 187, 216, 0.3), 0 0 8px rgba(134, 187, 216, 0.3), 0 0 12px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 8px rgba(134, 187, 216, 0.6), 0 0 16px rgba(134, 187, 216, 0.6), 0 0 24px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-5 {
    position: relative;
    animation: glow-5 1.5s infinite alternate;
}

@keyframes glow-5 {
    from {
        box-shadow: 0 0 5px rgba(134, 187, 216, 0.3), 0 0 10px rgba(134, 187, 216, 0.3), 0 0 15px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 10px rgba(134, 187, 216, 0.6), 0 0 20px rgba(134, 187, 216, 0.6), 0 0 30px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-6 {
    position: relative;
    animation: glow-6 1.5s infinite alternate;
}

@keyframes glow-6 {
    from {
        box-shadow: 0 0 6px rgba(134, 187, 216, 0.3), 0 0 12px rgba(134, 187, 216, 0.3), 0 0 18px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 12px rgba(134, 187, 216, 0.6), 0 0 24px rgba(134, 187, 216, 0.6), 0 0 36px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-7 {
    position: relative;
    animation: glow-7 1.5s infinite alternate;
}

@keyframes glow-7 {
    from {
        box-shadow: 0 0 7px rgba(134, 187, 216, 0.3), 0 0 14px rgba(134, 187, 216, 0.3), 0 0 21px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 14px rgba(134, 187, 216, 0.6), 0 0 28px rgba(134, 187, 216, 0.6), 0 0 42px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-8 {
    position: relative;
    animation: glow-8 1.5s infinite alternate;
}

@keyframes glow-8 {
    from {
        box-shadow: 0 0 8px rgba(134, 187, 216, 0.3), 0 0 16px rgba(134, 187, 216, 0.3), 0 0 24px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 16px rgba(134, 187, 216, 0.6), 0 0 32px rgba(134, 187, 216, 0.6), 0 0 48px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-9 {
    position: relative;
    animation: glow-9 1.5s infinite alternate;
}

@keyframes glow-9 {
    from {
        box-shadow: 0 0 9px rgba(134, 187, 216, 0.3), 0 0 18px rgba(134, 187, 216, 0.3), 0 0 27px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 18px rgba(134, 187, 216, 0.6), 0 0 36px rgba(134, 187, 216, 0.6), 0 0 54px rgba(134, 187, 216, 0.6);
    }
}

.glow-border-10 {
    position: relative;
    animation: glow-10 1.5s infinite alternate;
}

@keyframes glow-10 {
    from {
        box-shadow: 0 0 10px rgba(134, 187, 216, 0.3), 0 0 20px rgba(134, 187, 216, 0.3), 0 0 30px rgba(134, 187, 216, 0.3);
    }
    to {
        box-shadow: 0 0 20px rgba(134, 187, 216, 0.6), 0 0 40px rgba(134, 187, 216, 0.6), 0 0 60px rgba(134, 187, 216, 0.6);
    }
}

/* Negative valence glow effects */
.glow-border--1 {
    position: relative;
    animation: glow--1 1.5s infinite alternate;
}

@keyframes glow--1 {
    from {
        box-shadow: 0 0 1px rgba(255, 105, 180, 0.3), 0 0 2px rgba(255, 105, 180, 0.3), 0 0 3px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 2px rgba(255, 105, 180, 0.6), 0 0 4px rgba(255, 105, 180, 0.6), 0 0 6px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--2 {
    position: relative;
    animation: glow--2 1.5s infinite alternate;
}

@keyframes glow--2 {
    from {
        box-shadow: 0 0 2px rgba(255, 105, 180, 0.3), 0 0 4px rgba(255, 105, 180, 0.3), 0 0 6px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 4px rgba(255, 105, 180, 0.6), 0 0 8px rgba(255, 105, 180, 0.6), 0 0 12px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--3 {
    position: relative;
    animation: glow--3 1.5s infinite alternate;
}

@keyframes glow--3 {
    from {
        box-shadow: 0 0 3px rgba(255, 105, 180, 0.3), 0 0 6px rgba(255, 105, 180, 0.3), 0 0 9px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 6px rgba(255, 105, 180, 0.6), 0 0 12px rgba(255, 105, 180, 0.6), 0 0 18px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--4 {
    position: relative;
    animation: glow--4 1.5s infinite alternate;
}

@keyframes glow--4 {
    from {
        box-shadow: 0 0 4px rgba(255, 105, 180, 0.3), 0 0 8px rgba(255, 105, 180, 0.3), 0 0 12px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 8px rgba(255, 105, 180, 0.6), 0 0 16px rgba(255, 105, 180, 0.6), 0 0 24px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--5 {
    position: relative;
    animation: glow--5 1.5s infinite alternate;
}

@keyframes glow--5 {
    from {
        box-shadow: 0 0 5px rgba(255, 105, 180, 0.3), 0 0 10px rgba(255, 105, 180, 0.3), 0 0 15px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 10px rgba(255, 105, 180, 0.6), 0 0 20px rgba(255, 105, 180, 0.6), 0 0 30px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--6 {
    position: relative;
    animation: glow--6 1.5s infinite alternate;
}

@keyframes glow--6 {
    from {
        box-shadow: 0 0 6px rgba(255, 105, 180, 0.3), 0 0 12px rgba(255, 105, 180, 0.3), 0 0 18px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 12px rgba(255, 105, 180, 0.6), 0 0 24px rgba(255, 105, 180, 0.6), 0 0 36px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--7 {
    position: relative;
    animation: glow--7 1.5s infinite alternate;
}

@keyframes glow--7 {
    from {
        box-shadow: 0 0 7px rgba(255, 105, 180, 0.3), 0 0 14px rgba(255, 105, 180, 0.3), 0 0 21px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 14px rgba(255, 105, 180, 0.6), 0 0 28px rgba(255, 105, 180, 0.6), 0 0 42px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--8 {
    position: relative;
    animation: glow--8 1.5s infinite alternate;
}

@keyframes glow--8 {
    from {
        box-shadow: 0 0 8px rgba(255, 105, 180, 0.3), 0 0 16px rgba(255, 105, 180, 0.3), 0 0 24px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 16px rgba(255, 105, 180, 0.6), 0 0 32px rgba(255, 105, 180, 0.6), 0 0 48px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--9 {
    position: relative;
    animation: glow--9 1.5s infinite alternate;
}

@keyframes glow--9 {
    from {
        box-shadow: 0 0 9px rgba(255, 105, 180, 0.3), 0 0 18px rgba(255, 105, 180, 0.3), 0 0 27px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 18px rgba(255, 105, 180, 0.6), 0 0 36px rgba(255, 105, 180, 0.6), 0 0 54px rgba(255, 105, 180, 0.6);
    }
}

.glow-border--10 {
    position: relative;
    animation: glow--10 1.5s infinite alternate;
}

@keyframes glow--10 {
    from {
        box-shadow: 0 0 10px rgba(255, 105, 180, 0.3), 0 0 20px rgba(255, 105, 180, 0.3), 0 0 30px rgba(255, 105, 180, 0.3);
    }
    to {
        box-shadow: 0 0 20px rgba(255, 105, 180, 0.6), 0 0 40px rgba(255, 105, 180, 0.6), 0 0 60px rgba(255, 105, 180, 0.6);
    }
}

/* Neutral valence glow effect */
.glow-border-0 {
    position: relative;
    animation: glow-0 1.5s infinite alternate;
}

@keyframes glow-0 {
    from {
        box-shadow: 0 0 1px rgba(255, 255, 255, 0.3), 0 0 2px rgba(255, 255, 255, 0.3), 0 0 3px rgba(255, 255, 255, 0.3);
    }
    to {
        box-shadow: 0 0 2px rgba(255, 255, 255, 0.6), 0 0 4px rgba(255, 255, 255, 0.6), 0 0 6px rgba(255, 255, 255, 0.6);
    }
}

/* ========================================================================
 * Accessibility - Reduced Motion Support
 * Disables animated glow effects for users with vestibular disorders
 * Provides static glow fallback to preserve visual meaning
 * ======================================================================== */

@media (prefers-reduced-motion: reduce) {
    /* Positive valence (blue) - disable animation, keep static glow */
    .glow-border-1, .glow-border-2, .glow-border-3,
    .glow-border-4, .glow-border-5, .glow-border-6,
    .glow-border-7, .glow-border-8, .glow-border-9, .glow-border-10 {
        animation: none;
        box-shadow: 0 0 8px rgba(134, 187, 216, 0.5);
    }

    /* Negative valence (pink) - disable animation, keep static glow */
    .glow-border--1, .glow-border--2, .glow-border--3,
    .glow-border--4, .glow-border--5, .glow-border--6,
    .glow-border--7, .glow-border--8, .glow-border--9, .glow-border--10 {
        animation: none;
        box-shadow: 0 0 8px rgba(255, 105, 180, 0.5);
    }

    /* Neutral valence (white) - disable animation, keep static glow */
    .glow-border-0 {
        animation: none;
        box-shadow: 0 0 6px rgba(255, 255, 255, 0.4);
    }
}

