/* static/css/catalog.css */
.catalog-header {
    text-align: left;
    margin-top: 50px;
    margin-bottom: 30px;
}

.catalog-header h1 {
    font-size: 32px;
    font-weight: 600;
    letter-spacing: -0.5px;
}

.courses-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 математически равные колонки */
    gap: 28px;
    padding-bottom: 60px;
}

/* Стрелка в заголовке */
.header-arrow {
    color: #86868b;
    font-weight: 400;
}

/* Стили для карточек "В разработке" */
.course-card.disabled {
    opacity: 0.6;
    cursor: default;
    background-color: #fbfbfd;
}

.course-card.disabled:hover {
    transform: none;
    box-shadow: var(--shadow);
}

/* Серый бейджик "Скоро" */
.course-badge.coming-soon {
    background: #e5e5ea;
    color: #86868b;
}

/* Сама карточка курса (книжечка) */
.course-card {
    background: var(--card-bg);
    border-radius: var(--border-radius);
    padding: 30px;
    width: 100%; /* Карточка полностью подчиняется сетке */
    box-shadow: var(--shadow);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    min-height: 180px;
}

.course-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

.course-badge {
    display: inline-block;
    background: #e8f5e9;
    color: #2e7d32;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 15px;
    align-self: flex-start; /* Фикс: запрещаем плашке растягиваться на всю ширину */
}

.course-card h2 {
    font-size: 18px; /* Уменьшили под строгий минимализм */
    margin-bottom: 10px;
    line-height: 1.3; /* Добавили воздух между строками для длинных названий */
}

.course-card p {
    font-size: 15px;
    color: #86868b;
    margin-bottom: 0;
    flex-grow: 1;
}

/* === АДАПТИВ ДЛЯ ПЛАНШЕТОВ (iPad, маленькие ноуты) === */
@media (max-width: 992px) {
    /* Центрируем заголовок вместе с сеткой */
    .catalog-header {
        text-align: center;
        margin-top: 40px;
    }

    .courses-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
        /* Ограничиваем максимальную ширину сетки, чтобы карточки не были слишком широкими */
        max-width: 700px;
        margin: 0 auto; /* Центрируем сетку на экране */
    }
}

/* === АДАПТИВ ДЛЯ МОБИЛЬНЫХ ТЕЛЕФОНОВ (iPhone, Android) === */
@media (max-width: 767px) {
    /* Заголовок по центру */
    .catalog-header {
        text-align: center;
        margin-top: 30px;
    }

    /* Карточки в одну колонку друг под другом */
    .courses-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        max-width: 420px; /* Защита от "сосисок" на широких телефонах (Surface Duo) */
        margin: 0 auto; /* Центрируем одиночные карточки */
    }

    /* Делаем все карточки одинаковыми по высоте на мобильных */
    .course-card {
        min-height: 240px;
    }
}