/* =====================================================================
   mobile-fix.css — правки tap-targets и читаемости для мобильной версии vmeste.life
   Подключается ПОСЛЕ styles.css?v=23 и menu-fix.css?v=1, перебивает
   минифицированные правила через !important.
   Задачи аудита: К1 (бургер), К3 (поиск), С1 (пункты меню), С2 (ссылки болезней),
                  К4 (текст согласия), С5 (чекбокс согласия).
   Цель tap-target: ≥44×44px (WCAG 2.5.5), шрифт согласия ≥14px.
   Добавлено 2026-08-05.
   ===================================================================== */

/* === К1. Бургер-меню: тап-зона 44×44 (было 36×25) === */
/* styles.css: .mainHeader__menuTrigger{flex:0 0 36px;height:25px}
   Увеличиваем зону до 44px, иконка-стрелка 25px центрируется padding'ом. */
@media only screen and (max-width: 1070px) {
    .mainHeader__menuTrigger {
        flex: 0 0 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        padding: 9px 4px !important;   /* центрирует иконку 25px в зоне 44px */
        box-sizing: border-box !important;
    }
}

/* === К3. Кнопка поиска: высота 44px (было ~20px) === */
/* styles.css: .mainHeader__searchSubmit{right:20px;top:13px;font-size:16px}
   Увеличиваем высоту, компенсируем сдвиг top. */
@media only screen and (max-width: 1070px) {
    .mainHeader__searchSubmit {
        min-height: 44px !important;
        padding: 10px 16px !important;
        top: 6px !important;           /* компенсируем увеличенную высоту */
        font-size: 16px !important;
    }
}

/* === С1. Основные пункты меню: высота строки ≥44px (было ~35px) === */
/* styles.css: .mainHeader__menuLink{padding:6px 20px}, на mobile font-size:18px
   Увеличиваем padding чтобы высота строки стала ≥44px. */
@media only screen and (max-width: 1070px) {
    .mainHeader__menuLink {
        padding: 12px 20px !important; /* 18px*1.5lh≈27px + 24px padding ≈ 51px */
        line-height: 1.3 !important;
        font-size: 18px !important;
    }
}

/* === С2. Ссылки на болезни: тап-зона ≥40px (было ~21px) === */
/* styles.css: .maintenance__link{display:block;margin:15px 0}
   Применяем на всех экранах — улучшит и десктоп, на мобильных делаем крупнее. */
.maintenance__link {
    font-size: 17px !important;
    line-height: 1.4 !important;
    padding: 8px 0 !important;        /* было margin 15px, добавим padding для тап-зоны */
    margin: 6px 0 !important;
    display: block !important;
}
@media only screen and (max-width: 1070px) {
    .maintenance__link {
        min-height: 40px !important;
        padding: 10px 0 !important;
        font-size: 18px !important;
    }
}

/* === К4. Текст согласия: 14px (было 11px) — минимально читаемо === */
/* styles.css: .form__text{margin:45px 0 25px;font-size:11px;line-height:1.7} */
.form__text {
    font-size: 14px !important;       /* с 11px до 14px — минимально читаемо */
    line-height: 1.6 !important;
}
/* Ссылка внутри согласия тоже больше */
.form__text .linkSpan,
.form__text a {
    font-size: 14px !important;
}

/* === С5. Чекбокс согласия: крупнее (было 13×13) + тап-зона ярлыка 44px === */
/* Кастомная отрисовка чекбокса крупнее на всех экранах, label = 44px на мобильных. */
.form__text input[type="checkbox"],
#questionForm input[type="checkbox"],
#questionForm2 input[type="checkbox"],
.callback-form input[type="checkbox"] {
    width: 20px !important;
    height: 20px !important;
    margin-right: 8px !important;
    vertical-align: middle !important;
    cursor: pointer !important;
}
/* Тап-зона всего label = 44px на мобильных */
@media only screen and (max-width: 1070px) {
    .form__text label {
        display: inline-block !important;
        min-height: 44px !important;
        padding: 12px 0 !important;
    }
}

/* === Back-to-top button (C4, 2026-08-07) === */
.btt-button {
    position: fixed !important;
    right: 16px !important;
    bottom: 16px !important;
    z-index: 900 !important;
    display: none !important;
    width: 50px !important;
    height: 50px !important;
    border-radius: 50% !important;
    background-color: #a6c757 !important;
    color: #000 !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25) !important;
    font-size: 22px !important;
    line-height: 50px !important;
    text-align: center !important;
    padding: 0 !important;
    opacity: 0 !important;
    transition: opacity 0.25s ease, transform 0.25s ease !important;
}
.btt-button.btt-visible {
    display: block !important;
    opacity: 0.9 !important;
}
.btt-button:hover {
    opacity: 1 !important;
    transform: translateY(-2px) !important;
    background-color: #8eb03b !important;
}
@media only screen and (max-width: 1070px) {
    .btt-button {
        width: 54px !important;
        height: 54px !important;
        line-height: 54px !important;
        bottom: 20px !important;
        right: 20px !important;
        font-size: 24px !important;
    }
}
