/* Mobile-specific fixes */

/* Enable proper touch scrolling */
* {
    -webkit-overflow-scrolling: touch;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

/* Fix scrolling on mobile devices */
@media (max-width: 767px) {
    /* Ensure body is scrollable */
    html, body {
        overflow-x: hidden !important;
        overflow-y: auto !important;
        height: auto !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        -webkit-text-size-adjust: 100%;
        font-family: var(--font-body) !important;
    }

    h1, h2, h3, h4, h5, h6 {
        font-family: var(--font-heading) !important;
    }
    
    /* Fix scrolling container issues */
    div, section, main, article, aside, header, footer {
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
        position: relative !important;
    }
    
    /* Fix input fields on mobile */
    input[type="text"],
    input[type="number"],
    input[type="email"],
    input[type="tel"],
    input[type="password"],
    input[type="search"],
    select,
    textarea {
        font-family: var(--font-body) !important;
        font-size: 16px !important; /* Prevents iOS zoom */
        max-width: 100% !important;
        width: 100% !important;
        box-sizing: border-box !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        border-radius: 4px !important;
        padding: 8px 12px !important;
        margin-bottom: 10px !important;
        border: 1px solid #ccc !important;
        background-color: #fff !important;
        color: #333 !important;
        position: static !important;
        z-index: auto !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* Fix search container on mobile */
    .search-container {
        position: relative !important;
        z-index: 1000 !important;
        width: 100% !important;
        margin: 10px 0 !important;
        display: flex !important;
        gap: 10px !important;
    }

    /* Fix search bar on mobile */
    #search-bar {
        height: 44px !important;
        font-size: 16px !important;
        padding: 8px 12px !important;
        margin: 0 !important;
        flex: 1 !important;
        min-width: 0 !important;
        background-color: #fff !important;
        color: #333 !important;
        border: 1px solid #ccc !important;
        border-radius: 4px !important;
        -webkit-appearance: none !important;
        appearance: none !important;
    }

    /* Fix search button on mobile */
    #search-button {
        height: 44px !important;
        min-width: 80px !important;
        font-size: 16px !important;
        padding: 0 15px !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
    }

    /* Fix input group layouts */
    .input-group {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        margin-bottom: 15px !important;
        width: 100% !important;
    }

    .input-group input,
    .input-group select {
        margin-bottom: 0 !important;
        height: 44px !important;
    }

    /* Fix converter container layout */
    .converter-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 15px !important;
        padding: 15px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Make buttons more touchable */
    button,
    .btn {
        min-height: 44px !important; /* iOS minimum touch target size */
        padding: 12px 20px !important;
        width: 100% !important;
        margin: 5px 0 !important;
        font-size: 16px !important;
        touch-action: manipulation;
    }
    
    /* Fix tool containers */
    .tool-container {
        padding: 10px !important;
        margin: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    #tool-interface, #tool-result {
        padding: 15px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    /* Fix button wrapping */
    .button-group {
        display: flex;
        flex-direction: column !important;
        gap: 10px;
        width: 100% !important;
    }

    /* Ensure proper z-index for inputs */
    .tool-interface input,
    .tool-interface select {
        position: relative !important;
        z-index: 1 !important;
    }

    /* Fix any fixed positioned elements */
    .fixed-element {
        position: relative !important;
    }

    /* Fix select dropdowns */
    select {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='6'%3E%3Cpath fill='%23333' d='M0 0l6 6 6-6z'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: right 8px center !important;
        padding-right: 24px !important;
    }

    /* Fix iframe issues */
    iframe {
        max-width: 100%;
        max-height: 250px;
    }
    
    /* Fix textarea heights on mobile */
    textarea {
        max-height: 200px !important;
        overflow-y: auto !important;
    }
    
    /* Fix table scrolling */
    table {
        display: block;
        overflow-x: auto;
        width: 100% !important;
    }
} 