﻿/**
 * layout.css - Page Layout & Responsive Framework
 * Global responsive rules and mobile optimizations
 */

/* ============================================
   MOBILE RESPONSIVE RULES
   ============================================ */

@media (max-width: 767.98px) {
    /* ===== TYPOGRAPHY ===== */
    h1 {
        font-size: 1.8rem !important;
    }

    h2 {
        font-size: 1.5rem !important;
    }

    h3 {
        font-size: 1.3rem !important;
    }

    /* ===== LAYOUT ===== */
    .container-fluid {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Prevent horizontal overflow */
    html, body {
        overflow-x: hidden !important;
    }
/*
    .row {
        margin-left: -10px !important;
        margin-right: -10px !important;
    }*/

    .col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6,
    .col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
    .col-sm, .col-md, .col-lg, .col-xl {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* ===== FORMS ===== */
    .form-control, input[type="text"], input[type="email"],
    input[type="password"], input[type="number"], input[type="date"],
    input[type="tel"], input[type="month"], select, textarea {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 16px !important; /* Prevents iOS zoom */
        padding: 12px !important;
        box-sizing: border-box !important;
    }

    .form-label {
        font-size: 14px !important;
    }

    /* Make checkboxes more touch-friendly */
    .form-check-input {
        width: 20px !important;
        height: 20px !important;
        margin-top: 2px !important;
    }

    .form-check-label {
        margin-left: 5px !important;
        padding: 3px 0 !important;
    }

    /* Submit buttons on forms */
    .d-grid .btn {
        padding: 12px !important;
        font-size: 16px !important;
    }

    .mb-3 {
        margin-bottom: 20px !important;
    }

    /* Bootstrap modal fixes */
    .modal-dialog {
        margin: 10px;
        width: calc(100% - 20px);
        max-width: none;
    }

    /* Enhanced touch targets */
    button, .btn, a.btn, input[type="submit"], input[type="button"] {
        min-height: 44px !important;
        min-width: 44px !important;
        padding: 10px 15px !important;
        touch-action: manipulation !important;
    }

    /* Reduce padding on mobile */
    .container-fluid {
        padding-left: 15px;
        padding-right: 15px;
    }

    /* Adjust card images for mobile */
    .listing-image-container {
        height: 200px;
    }

    /* Stack navigation items */
    .navbar-nav {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    /* Tablet adjustments */
    .listing-image-container {
        height: 220px;
    }
}
