/* Mobile-first responsive styles */

/* Base mobile styles */
@media screen and (max-width: 767px) {
    /* General */
    body {
        font-size: 14px !important;
        overflow-x: hidden;
    }

    .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
        max-width: 100% !important;
    }

    /* Header */
    .site-header {
        padding: 8px 0 !important;
    }

    .site-logo {
        font-size: 1.1rem !important;
    }

    /* Main content area */
    .content-area {
        padding: 10px 0 !important;
    }

    /* App info block */
    .bg-white.border.rounded {
        padding: 12px !important;
        margin-bottom: 15px !important;
    }

    /* Screenshots */
    .screenshots img,
    .content img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* Download button */
    .btn-dw {
        font-size: 16px !important;
        padding: 12px 20px !important;
        width: 100% !important;
    }

    /* Tables */
    .table {
        font-size: 13px !important;
    }

    .table td, .table th {
        padding: 8px 5px !important;
    }

    /* Grid adjustments */
    .col-12, .col-md-6, .col-xl-4 {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* Typography */
    h1 {
        font-size: 1.4rem !important;
    }

    h2 {
        font-size: 1.25rem !important;
    }

    h3, .h3 {
        font-size: 1.1rem !important;
    }

    h4, .h4 {
        font-size: 1rem !important;
    }

    /* App icon */
    .flex-shrink-0.mr-3 img {
        width: 60px !important;
        height: 60px !important;
    }

    /* Rating stars */
    .jq-ry-container {
        transform: scale(0.9);
        transform-origin: left center;
    }

    /* Footer */
    .site-footer {
        padding: 15px 0 !important;
        font-size: 13px !important;
    }

    .site-footer .container {
        flex-direction: column !important;
        text-align: center;
    }

    /* Social buttons */
    .socials a {
        margin: 5px !important;
    }

    /* Hide ads on very small screens */
    .adsbygoogle {
        display: none !important;
    }

    /* Breadcrumbs */
    .breadcrumb {
        font-size: 12px !important;
        flex-wrap: wrap;
    }

    /* Related apps grid */
    .row .col-12.col-md-6.col-xl-4 {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    /* Table of contents */
    .table-of-contents {
        padding: 10px !important;
        font-size: 13px !important;
    }

    /* Collapse buttons */
    .btn-light {
        font-size: 13px !important;
        padding: 8px 12px !important;
    }
}

/* Extra small devices */
@media screen and (max-width: 480px) {
    body {
        font-size: 13px !important;
    }

    .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    h1 {
        font-size: 1.2rem !important;
    }

    h2 {
        font-size: 1.1rem !important;
    }

    /* App icon smaller */
    .flex-shrink-0.mr-3 img {
        width: 50px !important;
        height: 50px !important;
    }

    /* Related apps - single column */
    .row .col-12.col-md-6.col-xl-4 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    /* Download button */
    .btn-dw {
        font-size: 14px !important;
        padding: 10px 15px !important;
    }

    .table td, .table th {
        padding: 6px 4px !important;
        font-size: 12px !important;
    }
}

/* Touch-friendly improvements */
@media (hover: none) and (pointer: coarse) {
    a, button, .btn {
        min-height: 44px;
        min-width: 44px;
    }

    .btn-dw {
        padding: 14px 20px !important;
    }
}
