/**
 * Mobile Fix CSS
 *
 * This file contains styles to fix mobile-specific issues.
 *
 * @package LendSwift
 */

/* Mobile menu and navigation fixes */
@media (max-width: 768px) {
    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    img,
    svg,
    video,
    canvas,
    iframe {
        max-width: 100%;
        height: auto;
    }

    .container,
    .home-wrapper,
    .main-content,
    .footer,
    .footer-content,
    .footer-links,
    section,
    article {
        max-width: 100%;
    }

    .button,
    .button-large,
    .button-primary,
    .button-secondary,
    .auth-button,
    .loan-package-apply {
        max-width: 100%;
        white-space: normal;
        overflow-wrap: anywhere;
        text-align: center;
    }

    .hero-buttons .button,
    .cta-buttons .button,
    .button-block {
        width: 100%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .hero-slide,
    .hero-container,
    .hero-content,
    .hero-text,
    .hero-image,
    .loan-packages-grid,
    .services-grid,
    .features-cards,
    .testimonials-grid,
    .trust-indicators,
    .guest-application-container {
        max-width: 100%;
        min-width: 0;
    }

    .testimonial-card,
    .service-card,
    .loan-package-card,
    .feature-card,
    .form-card,
    .calculator-card {
        max-width: 100%;
        min-width: 0;
    }

    .privacy-tabs-navigation,
    .terms-tabs-navigation,
    .tabs-navigation,
    .table-responsive {
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .privacy-tabs-navigation,
    .terms-tabs-navigation {
        width: 100%;
    }

    .guest-application-container,
    .loan-application-container,
    .auth-card,
    .card {
        width: 100%;
    }

    /* Mobile menu toggle button styling */
    .mobile-menu-toggle {
        background-color: var(--primary-color) !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Fix for mobile hero title */
    .mobile-hero-title {
        color: var(--text-color) !important;
        -webkit-text-fill-color: var(--text-color) !important;
        background: none !important;
        -webkit-background-clip: initial !important;
        background-clip: initial !important;
        text-shadow: none !important;
    }

    /* Popup mobile menu styling */
    .mobile-menu {
        position: fixed !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) scale(0.9) !important;
        width: 90% !important;
        max-width: 320px !important;
        max-height: 80vh !important;
        background-color: white !important;
        z-index: 1010 !important;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2) !important;
        transition: transform 0.3s ease, opacity 0.3s ease !important;
        padding: 1.5rem !important;
        overflow-y: auto !important;
        opacity: 0 !important;
        border-radius: 12px !important;
        display: none !important;
    }

    /* Active state for popup menu */
    .mobile-menu.active,
    body.mobile-menu-active .mobile-menu {
        display: block !important;
        opacity: 1 !important;
        transform: translate(-50%, -50%) scale(1) !important;
    }
}
