/* Mobile-specific styles - only applies to screens smaller than 640px */
@media (max-width: 639px) {
    /* Mobile Navigation Menu */
    #mobile-menu {
        position: relative;
        width: 100%;
        max-height: calc(100vh - 4rem);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    #mobile-menu a {
        display: flex;
        align-items: center;
        min-height: 48px;
        width: 100%;
    }
    
    #mobile-menu .border-l-4 {
        border-left-width: 4px;
    }
    
    /* Ensure mobile menu items are properly aligned */
    #mobile-menu > div:first-child {
        padding-left: 0;
        padding-right: 0;
    }
    
    /* Mobile menu user section */
    #mobile-menu > div:last-child {
        position: sticky;
        bottom: 0;
        background-color: #f9fafb;
    }
    
    /* Hamburger button alignment */
    #mobile-menu-button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 44px;
        min-height: 44px;
    }
    
    /* Ensure navigation bar doesn't overflow on mobile */
    nav.bg-white {
        overflow: visible;
    }
    
    /* Mobile menu animation */
    #mobile-menu {
        animation: slideDown 0.2s ease-out;
    }
    
    @keyframes slideDown {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
    /* Programs Index Header */
    .programs-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 1rem !important;
    }
    .programs-header h1 {
        font-size: 1.5rem !important;
    }
    .programs-header-actions {
        flex-direction: column !important;
        width: 100% !important;
        gap: 0.5rem !important;
    }
    .programs-header-actions a {
        width: 100% !important;
        text-align: center !important;
    }

    /* Program Show Header */
    .program-show-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 1rem !important;
    }
    .program-show-header h1 {
        font-size: 1.5rem !important;
    }
    .program-show-header .flex.items-center {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.5rem !important;
    }
    .program-show-actions {
        flex-direction: column !important;
        width: 100% !important;
        gap: 0.5rem !important;
    }
    .program-show-actions a,
    .program-show-actions form,
    .program-show-actions button {
        width: 100% !important;
    }
    .program-show-actions button {
        text-align: center !important;
    }

    /* Donations Index Header */
    .donations-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 1rem !important;
    }
    .donations-header h1 {
        font-size: 1.5rem !important;
    }
    .donations-header a {
        width: 100% !important;
        text-align: center !important;
    }

    /* Expenses Index Header */
    .expenses-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 1rem !important;
    }
    .expenses-header h1 {
        font-size: 1.5rem !important;
    }
    .expenses-header a {
        width: 100% !important;
        text-align: center !important;
    }

    /* Accommodations Index Header */
    .accommodations-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 1rem !important;
    }
    .accommodations-header h1 {
        font-size: 1.5rem !important;
    }
    .accommodations-header a {
        width: 100% !important;
        text-align: center !important;
    }

    /* Users Index Header */
    .users-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 1rem !important;
    }
    .users-header h1 {
        font-size: 1.5rem !important;
    }
    .users-header a {
        width: 100% !important;
        text-align: center !important;
    }
}

