/**
 * Публичен сайт Megasoft – общи стилове + мобилна оптимизация
 * Не се ползва в админ панела.
 */

/* Base */
body {
    font-family: 'Roboto', sans-serif;
    color: #333;
}

/* Navbar – touch-friendly на мобилни */
.navbar-brand img {
    max-height: 48px;
}
@media (max-width: 991.98px) {
    .navbar-collapse {
        padding-top: 0.5rem;
    }
    .nav-link {
        padding: 0.6rem 0.75rem;
        min-height: 44px;
        display: flex;
        align-items: center;
    }
}

/* Sidebar с продукти – скрит на мобилни, видим от lg */
.sidebar {
    position: sticky;
    top: 0;
}
.sidebar .nav-link {
    border-radius: 6px;
}
.sidebar .nav-link:hover {
    background: rgba(13, 110, 253, 0.1);
}
.sidebar .product-link {
    padding-left: 1.25rem;
    font-size: 0.95rem;
}
@media (max-width: 991.98px) {
    .sidebar {
        position: static;
        border-right: none !important;
        border-bottom: 1px solid #dee2e6;
        padding-bottom: 1rem;
    }
}

/* Hero – по-компактен на малки екрани */
.hero-section {
    background-size: cover;
    background-position: center;
    color: white;
    text-align: center;
    padding: 2.5rem 1rem;
}
@media (min-width: 576px) {
    .hero-section {
        padding: 3.5rem 1rem;
    }
}
@media (min-width: 768px) {
    .hero-section {
        padding: 4rem 1rem;
    }
}
@media (min-width: 992px) {
    .hero-section {
        padding: 60px 0;
    }
}

/* Карточки и бутони – по-големи зони за докосване на мобилни */
@media (max-width: 575.98px) {
    .btn {
        min-height: 44px;
        padding: 0.5rem 1rem;
    }
    .card .btn {
        min-height: 40px;
    }
}

/* Footer */
footer {
    background: #222;
    color: #ccc;
    padding: 2rem 0;
}
footer a {
    padding: 0.25rem 0;
    display: inline-block;
}
@media (min-width: 768px) {
    footer {
        padding: 40px 0;
    }
}

/* Основно съдържание – по-добри отступи на мобилни */
main {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}
@media (min-width: 768px) {
    main {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}
