/**
 * ============================================================
 * ALBUMSHOVE — COMING SOON LOCAL CSS / PASS 91R
 * Purpose: Keep only WooCommerce replacement mechanics and AlbumShove-specific
 * top-border/title/badge motion here. Page field, width, surface, typography,
 * spacing, responsive behavior and footer anchoring are universal.
 * Coded: 2026-09-25
 * ============================================================
 */

/* PRODUCT HOST — keep the proven WooCommerce product container alive and
 * hide only its normal product children after the universal surface is inserted.
 * Coded: 2026-09-25 */
.albumshove-coming-soon-page .albumshove-product-placeholder > *:not(.albumshove-coming-soon) {
    display: none !important;
}

.albumshove-coming-soon-page .albumshove-product-placeholder {
    display: block !important;
}

/* ALBUMSHOVE COMING SOON MOTION — feature-specific animation remains local.
 * Coded: 2026-09-14 */
.albumshove-coming-soon {
    position: relative;
    overflow: hidden;
}

.albumshove-coming-soon::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 4px;
    background: linear-gradient(90deg, #20D8FF 0%, #347DFF 35%, #785CFF 68%, #F245C7 100%);
    background-size: 220% 100%;
    animation: albumshove-coming-soon-sweep 3.2s linear infinite;
}

.albumshove-coming-soon__badge {
    animation: albumshove-coming-soon-pulse 2.4s ease-in-out infinite;
}

.albumshove-coming-soon__title {
    background: linear-gradient(90deg, #08172F 0%, #347DFF 35%, #785CFF 65%, #08172F 100%);
    background-size: 220% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: albumshove-coming-soon-title 4.2s ease-in-out infinite;
}

@keyframes albumshove-coming-soon-sweep {
    from { background-position: 100% 0; }
    to { background-position: -120% 0; }
}

@keyframes albumshove-coming-soon-pulse {
    0%, 100% {
        transform: translateY(0);
        box-shadow: 0 0 0 rgba(52, 125, 255, 0);
    }
    50% {
        transform: translateY(-2px);
        box-shadow: 0 8px 24px rgba(52, 125, 255, 0.22);
    }
}

@keyframes albumshove-coming-soon-title {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

@media (prefers-reduced-motion: reduce) {
    .albumshove-coming-soon::before,
    .albumshove-coming-soon__badge,
    .albumshove-coming-soon__title {
        animation: none !important;
    }
}
