/* Twoje istniejące style */
.push-up-for-footer {
    padding-bottom: 200px !important;
}
.fixed-width-btn {
    min-width: 180px;
}
.category-btn {
    transition: transform 0.1s ease-in-out, box-shadow 0.1s ease-in-out;
    height: 110px; /* Domyślna wysokość na desktop */
}
.category-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    opacity: 0.9;
}

/* Domyślne style dla desktop (i medium breakpoint) */
.fixed-width-btn {
    min-width: 180px; /* Domyślna szerokość tylko na dużych ekranach */
}

/* Optymalizacja dla urządzeń mobilnych (ekran < 768px) */
@media (max-width: 767.98px) {
    .fixed-width-btn {
        min-width: 100%; /* Nadpisz, by zajmował całą szerokość */
        width: 100%;
    }
    .keys-info {
        display: none;
    }
    .category-btn strong.mt-2 {
        font-size: 0.85rem;
    }

    /* KLUCZOWE: Upewnij się, że element nadrzędny nie wymusza szerokości.
       Użycie gap-3 na mobile może powodować scrol, jeśli nie ma odpowiednich marginesów.
    */
    .d-flex.flex-column.flex-md-row.gap-3 {
        /* Dodaj padding, aby odstęp gap-3 nie wychodził poza ekran,
           lub zmień d-flex na block, aby przyciski układały się w kolumnie bez flexa.
           Ponieważ już używasz flex-column na mobile, to jest bezpieczniejsze:
        */
        padding: 0 10px; /* Opcjonalny padding, jeśli przyciski są zbyt blisko krawędzi */
    }

    .category-btn {
        height: 70px;
        min-width: 100%;
        /* Wyrównanie dla flexa w kolumnie */
        align-items: center;
    }

    /* NOWOŚĆ: Celowanie w element span z ikoną */
    .category-btn span {
        font-size: 1.25rem !important; /* Zmniejszenie ikony z 1.75rem na 1.25rem */
    }

    .category-btn strong.mt-2 {
        font-size: 0.85rem;
    }
}