/* Wedding Countdown - Premium Wedding Theme */

.countdown-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(255, 250, 245, 0.9));
    backdrop-filter: blur(16px);
    border: 1px solid rgba(212, 169, 55, 0.15);
}

/* Countdown Number Animation */
.countdown-number {
    font-variant-numeric: tabular-nums;
    transition: transform 0.3s ease;
    font-family: 'Cormorant Garamond', serif;
}

.countdown-number.flip {
    animation: flipNumber 0.5s ease-in-out;
}

@keyframes flipNumber {
    0% { transform: rotateX(0deg); }
    50% { transform: rotateX(90deg); opacity: 0.5; }
    100% { transform: rotateX(0deg); opacity: 1; }
}

/* Hearts floating */
.floating-hearts {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.floating-heart {
    position: absolute;
    bottom: -20px;
    animation: floatUp 7s ease-in-out infinite;
    opacity: 0;
}

.floating-heart:nth-child(1) { left: 10%; animation-delay: 0s; }
.floating-heart:nth-child(2) { left: 25%; animation-delay: 1.5s; }
.floating-heart:nth-child(3) { left: 45%; animation-delay: 3s; }
.floating-heart:nth-child(4) { left: 65%; animation-delay: 0.8s; }
.floating-heart:nth-child(5) { left: 80%; animation-delay: 2.2s; }
.floating-heart:nth-child(6) { left: 92%; animation-delay: 4s; }

@keyframes floatUp {
    0% { opacity: 0; transform: translateY(0) rotate(0deg); }
    10% { opacity: 0.6; }
    90% { opacity: 0.4; }
    100% { opacity: 0; transform: translateY(-100vh) rotate(360deg); }
}

/* Milestone Badge */
.milestone-badge {
    animation: bounceIn 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

@keyframes bounceIn {
    0% { transform: scale(0); }
    60% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

/* Tip Card */
.tip-card {
    transition: all 0.3s ease;
    border-left: 4px solid rgba(212, 169, 55, 0.3);
}

.tip-card:hover {
    transform: translateX(4px);
    border-left-color: #d4a926;
    background: #fffaf5;
}
