/* Единый блок для всех мобильных устройств с шириной экрана меньше 768px */
@media (max-width: 768px) {
    
    /* 1. Адаптивность структуры (сжатие блоков) */
    .page-container, .main-container, #content-wrapper, .header-container, .category-sidebar, .category-content {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        float: none !important;
        box-sizing: border-box !important;
    }
    body {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
    .category-grid, .f-blocks {
        display: flex !important;
        flex-direction: column !important;
    }
    .category-grid .f-block, .f-blocks .f-block {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        box-sizing: border-box !important;
    }
    #header, .indico-header {
        height: auto !important;
        padding: 10px !important;
    }
    #header .logo img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* 2. Адаптивность шрифтов (Исправленная версия) */
    html {
        /* Принудительно заставляем мобильные браузеры (особенно Safari на iOS) 
           крупно рендерить текст, отключая их внутреннее авто-уменьшение */
        -webkit-text-size-adjust: 140% !important;
        -moz-text-size-adjust: 140% !important;
        text-size-adjust: 140% !important;
    }

    /* Точечно увеличиваем текст в списках и блоках Indico */
    span, a, p, li, td, th, div, input, button {
        font-size: 15px !important; 
    }
    .f-title, .category-title, h1, h2, h3 {
        font-size: 20px !important;
        font-weight: bold !important;
    }
}
