/*=============================================
                Каталог всех товаров
===============================================*/

.products-catalog-page {
    margin-top: 25px;
}

.products-catalog-header {
    margin-bottom: 30px;
    text-align: center;
}

.products-catalog-title {
    font-size: clamp(28px, 4vw, 48px);
    font-weight: 600;
    color: #000000;
    margin: 0 0 15px 0;
    letter-spacing: -1.5px;
}

.products-catalog-description {
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 400;
    color: #666666;
    margin: 0 auto;
    max-width: 600px;
    line-height: 1.5;
}

/*=============================================
                Пустое состояние
===============================================*/

.empty-state {
    text-align: center;
    padding: 60px 20px;
    background-color: #f8f8f8;
    border-radius: 16px;
    margin: 40px 0;
}

.empty-state-icon {
    font-size: 48px;
    margin-bottom: 20px;
    opacity: 0.5;
}

.empty-state-title {
    font-size: 24px;
    font-weight: 600;
    color: #333333;
    margin: 0 0 10px 0;
}

.empty-state-description {
    font-size: 16px;
    color: #666666;
    margin: 0;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
}

/*=============================================
                Загрузка
===============================================*/

.loading-state {
    text-align: center;
    padding: 60px 20px;
}

.loading-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #f3f3f3;
    border-top: 4px solid #333;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin: 0 auto 20px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.loading-text {
    font-size: 16px;
    color: #666666;
    margin: 0;
}
