/**
 * Styles pour les logos animés des activités
 */

.card-icon {
    position: relative;
    width: 120px;
    height: 120px;
    margin: 0 auto 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
}

.activity-logo {
    width: 100%;
    height: 100%;
    display: block;
}

/* Moving Head specifics */
[data-logo-type="moving-head"] {
    overflow: visible;
}

.moving-head-fixture {
    will-change: transform;
}

.light-beam {
    will-change: transform, opacity;
    pointer-events: none;
}

/* Matrix specifics */
[data-logo-type="matrix"] {
    /* Fond transparent, uniquement les colonnes de caractères */
}

.matrix-column {
    will-change: transform;
}

[data-logo-type="matrix"] text {
    font-family: 'Courier New', monospace;
    font-weight: bold;
}

/* Animation de clignotement pour les caractères Matrix */
@keyframes matrix-blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

.matrix-column text:nth-child(1) {
    animation: matrix-blink 1s infinite;
}

.matrix-column text:nth-child(2) {
    animation: matrix-blink 1.3s infinite;
}

.matrix-column text:nth-child(3) {
    animation: matrix-blink 1.7s infinite;
}

/* Ban Hammer specifics */
[data-logo-type="ban-hammer"] {
    overflow: visible;
}

.ban-hammer {
    will-change: transform;
}

/* Choir logo specifics */
[data-logo-type="choir"] {
    overflow: visible;
}

.fisher-element,
.fishing-rod {
    will-change: transform;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .card-icon {
        width: 100px;
        height: 100px;
    }
}

@media (max-width: 480px) {
    .card-icon {
        width: 80px;
        height: 80px;
    }
}

/* Amélioration des performances */
.activity-card {
    will-change: transform;
}

.card-icon * {
    transform-style: preserve-3d;
    backface-visibility: hidden;
}
