/* ============================================
   Responsive & Accessibility Styles
   ============================================ */

/* Mobile Responsive Adjustments */
@media (max-width: 768px) {
    .letter-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-sm);
    }

    .modal-content {
        padding: var(--spacing-md);
        border-radius: 16px;
    }

    .modal-letter-content h2 {
        font-size: 1.5rem;
    }

    .modal-letter-content p {
        font-size: 1rem;
    }
}

/* Accessibility - Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    header {
        animation: simpleFade 100ms ease-out forwards;
    }

    .countdown-section {
        animation: simpleFade 100ms ease-out 100ms forwards;
    }

    .letter-card {
        animation: simpleFade 100ms ease-out forwards !important;
    }

    .letter-card:hover {
        transform: none;
    }

    .letter-card.today {
        animation: simpleFade 100ms ease-out forwards !important;
        transform: none;
    }

    .modal-content {
        animation: simpleFade 150ms ease-out forwards;
    }
}
