/* ============================================================
   abonement-cards.css — стили карточек мероприятий «Абонемент»
   ------------------------------------------------------------
   Подключается:
     - на пользовательской части (index.php, webinar_list.php, video_list.php)
     - в админке (предпросмотр карточки в edit.php)

   ────────────────────────────────────────────────────────────
   ПРИНЦИП РАБОТЫ
   ────────────────────────────────────────────────────────────

   1. Каждая карточка — это один корневой элемент с классом
      .abn-card (плюс модификатор типа):
        .abn-card--main     — главное событие
        .abn-card--regular  — обычное предстоящее
        .abn-card--past     — прошедшее

   2. Внутри карточки единая структура:
        .abn-card__inner    — обёртка с фоном/рамкой/min-height
        .abn-card__badge    — бейдж (дата или тип)
        .abn-card__image    — обёртка изображения
        .abn-card__body     — заголовок + описание
        .abn-card__action   — обёртка кнопки (прижата к низу)

   3. КАРТОЧКА АВТОМАТИЧЕСКИ ПОДСТРАИВАЕТСЯ ПОД СЕТКУ:

      Вариант A — собственная flex-сетка через .abn-cards:
        <div class="abn-cards abn-cards--main">    → 2 в ряд
        <div class="abn-cards abn-cards--regular"> → 3 в ряд (lg) / 2 (md)
        <div class="abn-cards abn-cards--past">    → 4 в ряд (lg) / 2 (md)

      Вариант B — внутри Bootstrap .row:
        <div class="row">
          <div class="col-lg-4 col-md-6">          → обычная карточка
            <div class="abn-card abn-card--regular">...
          <div class="col-lg-3 col-md-6">          → прошедшая
            <div class="abn-card abn-card--past">...
          <div class="col-lg-6">                   → главная (2 в ряд)
            <div class="abn-card abn-card--main">...

      В обоих вариантах карточка растягивается на 100% ширины
      своего родителя и на 100% высоты (align-items: stretch).

   ────────────────────────────────────────────────────────────
   ПЕРЕМЕННЫЕ ТЕМЫ (можно переопределять на уровне .abn-cards)
   ──────────────────────────────────────────────────────────── */
.abn-cards,
.abn-card {
    --abn-accent:        #F26F31;  /* оранжевый акцент (кнопки, бейджи) */
    --abn-accent-hover:  #d55113;  /* hover кнопок */
    --abn-text-dark:     #2D3039;  /* тёмный текст (заголовки) */
    --abn-text-muted:    #6c757d;  /* серый текст (описания) */
    --abn-text-sub:      #4a4a4a;  /* подзаголовок главной */
    --abn-border:         #E6E6E6;  /* рамка карточек */
    --abn-bg-card:       #fff;     /* фон обычных карточек */
    --abn-bg-past:       #ffe8dd;  /* фон прошедших */
    --abn-radius:        10px;
    --abn-radius-img:    4px;
    --abn-min-height:    500px;
}

/* ──────────────────────────────────────────────────────────────
   1. РОДИТЕЛЬСКИЕ КОНТЕЙНЕРЫ (для варианта A — собственная сетка)
   ────────────────────────────────────────────────────────────── */

/* Базовый flex-контейнер */
.abn-cards {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 20px;
    width: 100%;
    box-sizing: border-box;
}

/* Главные события — 2 в ряд */
.abn-cards--main .abn-card {
    flex: 0 1 calc(50% - 10px);
    min-width: 280px;
}

/* Обычные предстоящие — 3 в ряд на lg, 2 на md */
.abn-cards--regular .abn-card {
    flex: 0 1 calc(33.333% - 14px);
    min-width: 280px;
}
@media (max-width: 991px) {
    .abn-cards--regular .abn-card {
        flex: 0 1 calc(50% - 10px);
    }
}

/* Прошедшие — 4 в ряд на lg, 2 на md */
.abn-cards--past .abn-card {
    flex: 0 1 calc(25% - 15px);
    min-width: 220px;
}
@media (max-width: 991px) {
    .abn-cards--past .abn-card {
        flex: 0 1 calc(50% - 10px);
    }
}

/* На мобильных — все карточки в один столбец */
@media (max-width: 640px) {
    .abn-cards--main .abn-card,
    .abn-cards--regular .abn-card,
    .abn-cards--past .abn-card {
        flex: 0 1 100%;
        min-width: 100%;
    }
}

/* ──────────────────────────────────────────────────────────────
   2. КАРТОЧКА — БАЗОВЫЕ КЛАССЫ (общие для всех типов)
   ────────────────────────────────────────────────────────────── */

.abn-card {
    display: block;
    box-sizing: border-box;
    margin-bottom: 15px;
    height: auto;
}

/* Если карточка внутри Bootstrap .col-* — растягивается на высоту колонки */
.col-lg-1 > .abn-card,
.col-lg-2 > .abn-card,
.col-lg-3 > .abn-card,
.col-lg-4 > .abn-card,
.col-lg-5 > .abn-card,
.col-lg-6 > .abn-card,
.col-lg-7 > .abn-card,
.col-lg-8 > .abn-card,
.col-lg-9 > .abn-card,
.col-lg-10 > .abn-card,
.col-lg-11 > .abn-card,
.col-lg-12 > .abn-card,
.col-md-1 > .abn-card,
.col-md-2 > .abn-card,
.col-md-3 > .abn-card,
.col-md-4 > .abn-card,
.col-md-5 > .abn-card,
.col-md-6 > .abn-card,
.col-md-7 > .abn-card,
.col-md-8 > .abn-card,
.col-md-9 > .abn-card,
.col-md-10 > .abn-card,
.col-md-11 > .abn-card,
.col-md-12 > .abn-card {
    height: 100%;
}

/* Внутренняя обёртка — фон/рамка, flex-колонка
   Высота НЕ ограничена — карточка растёт под содержимое.
   Кнопка прижимается к низу через margin-top:auto на .abn-card__action */
.abn-card__inner {
    position: relative;
    background: var(--abn-bg-card);
    border: 1px solid var(--abn-border);
    border-radius: var(--abn-radius);
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: all 0.5s ease;
}
.abn-card__inner:hover {
    -webkit-box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.12);
    -moz-box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.12);
    box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.12);
}

/* Бейдж (дата для предстоящих / тип для прошедших) */
.abn-card__badge {
    display: inline-block;
    text-transform: uppercase;
    border: 1px solid var(--abn-accent);
    border-radius: 2px;
    font-size: 11px;
    line-height: normal;
    color: var(--abn-accent);
    font-weight: 400;
    padding: 2px 5px;
    width: fit-content;
}

/* Обёртка изображения */
.abn-card__image {
    padding-top: 15px;
    flex: 1;
}
.abn-card__image a {
    display: block;
    text-decoration: none;
}
.abn-card__image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: var(--abn-radius-img);
}

/* Тело карточки — заголовок + описание */
.abn-card__title {
    font-size: 16px;
    font-weight: 600;
    color: var(--abn-text-dark);
    margin: 12px 0 8px;
    padding-top: 0;
}
.abn-card__subtitle {
    font-size: 13px;
    line-height: 1.5;
    color: var(--abn-text-muted);
    margin: 0;
}
.abn-card__subtitle--main {
    color: var(--abn-text-sub);
}

/* Обёртка кнопки — прижата к низу карточки через flex
   (не absolute, чтобы не налезать на текст при длинном описании) */
.abn-card__action {
    margin-top: auto;
    padding-top: 15px;
}

/* Кнопка действия */
.abn-card__btn,
.abn-card .pbill3 {
    display: inline-block;
    padding: 8px 14px;
    background: var(--abn-accent);
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    margin: 0;
    transition: background 0.2s ease;
    border: none;
    cursor: pointer;
}
.abn-card__btn:hover,
.abn-card .pbill3:hover {
    background: var(--abn-accent-hover);
    color: #fff;
    text-decoration: none;
}

/* ──────────────────────────────────────────────────────────────
   3. КАРТОЧКА ГЛАВНОГО СОБЫТИЯ (.abn-card--main)
   ────────────────────────────────────────────────────────────── */

/* Высота не ограничена (см. базовый класс .abn-card__inner) */
.abn-card--main .abn-card__inner {
    padding: 20px;
    border: 2px solid var(--abn-accent);
    background: linear-gradient(135deg, #fff 0%, #fff5ef 100%);
    /* box-shadow: 0 6px 18px rgba(242, 111, 49, 0.18); */
}

.abn-card--main .abn-card__image {
    padding-top: 15px;
}

.abn-card--main .abn-card__title {
    font-size: 18px;
}

/* ──────────────────────────────────────────────────────────────
   4. КАРТОЧКА ОБЫЧНОГО ПРЕДСТОЯЩЕГО (.abn-card--regular)
   ────────────────────────────────────────────────────────────── */

/* Высота не ограничена (см. базовый класс .abn-card__inner) */
.abn-card--regular .abn-card__inner {
    padding: 20px;
}

.abn-card--regular .abn-card__image {
    padding-top: 20px;
}

.abn-card--regular .abn-card__image a {
    font-size: 16px;
    font-weight: 600;
    color: var(--abn-text-dark);
}

/* ──────────────────────────────────────────────────────────────
   5. КАРТОЧКА ПРОШЕДШЕГО СОБЫТИЯ (.abn-card--past)
   ────────────────────────────────────────────────────────────── */

.abn-card--past .abn-card__inner,
.abn-card--past .member {
    background: var(--abn-bg-past);
    border: 1px solid var(--abn-border);
    border-radius: var(--abn-radius);
    height: 100%;
    overflow: hidden;
    position: relative;
    padding: 20px;  /* у прошедших теперь тот же padding, что у остальных */
    box-sizing: border-box;
}

/* Прошедшая карточка без видео — белый фон (как у обычных) */
.abn-card--past-no-video .abn-card__inner,
.abn-card--past-no-video .member {
    background: var(--abn-bg-card);
}

/* Бейдж даты у прошедших — такой же, как у предстоящих (оранжевая обводка) */
.abn-card--past .abn-card__badge {
    /* убраны compact/absolute — наследуется базовый стиль */
}

/* Изображение прошедшей карточки */
.abn-card--past .abn-card__image,
.abn-card--past .member-img {
    position: relative;
    overflow: hidden;
    padding-top: 15px;
    flex: 0 0 auto;
}
.abn-card--past .abn-card__image img,
.abn-card--past .member-img img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

/* Тело прошедшей карточки */
.abn-card--past .abn-card__body,
.abn-card--past .member-info {
    padding: 0;
    box-sizing: border-box;
    flex: 1;
}
.abn-card--past .abn-card__title,
.abn-card--past .member-info h4 {
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 18px;
    color: var(--abn-text-dark);
}
.abn-card--past .abn-card__subtitle,
.abn-card--past .member-info p {
    font-size: 12px;
    line-height: 17px;
    font-weight: 400;
    padding-top: 20px;
    color: var(--abn-text-muted);
    margin: 0;
}

/* Кнопка прошедшей — прижата к низу через margin-top:auto (см. базовый класс) */
.abn-card--past .abn-card__action {
    /* переопределений не нужно — наследуется базовый стиль */
}

/* ──────────────────────────────────────────────────────────────
   6. АДАПТИВНОСТЬ — мобильные
   ────────────────────────────────────────────────────────────── */

@media (max-width: 640px) {
    /* Высота карточек на мобилке не ограничена */
    .abn-card .abn-card__inner,
    .abn-card--past .member {
        min-height: auto;
    }
    .abn-card--main .abn-card__subtitle--main {
        padding-bottom: 0;
    }
    .abn-card--past .member-info,
    .abn-card--past .abn-card__body {
        min-height: auto;
    }

    /* ── Выделение главных мероприятий на мобилке ──
       Десктоп: главные отличаются только размером заголовка и подзаголовком --main.
       Мобилки: добавляем лейбу «Главное», утолщённую рамку и заливку градиентом,
       чтобы карточка визуально выделялась среди обычных. */
    .abn-card--main .abn-card__inner {
        border: 2px solid var(--abn-accent);
        background: linear-gradient(135deg, #fff 0%, #fff5ef 100%);
        box-shadow: 0 6px 18px rgba(242, 111, 49, 0.18);
    }
    .abn-card--main .abn-card__title {
        font-size: 20px;  /* крупнее обычных на мобилке */
    }

    /* Лейба «Главное» в правом верхнем углу — только на мобилке */
    .abn-card__main-flag {
        display: inline-block;
        position: absolute;
        top: -1px;       /* компенсируем border:2px */
        right: -1px;
        background: var(--abn-accent);
        color: #fff;
        padding: 4px 12px;
        font-size: 11px;
        font-weight: 600;
        text-transform: uppercase;
        border-radius: 0 8px 0 8px;
        z-index: 5;
    }
}

/* На десктопе лейба «Главное» скрыта (карточка и так отличается размером) */
.abn-card__main-flag {
    display: none;
}

/* ──────────────────────────────────────────────────────────────
   7. БЛОК СПИКЕРОВ (общий, для детальной страницы и админ-предпросмотра)
   ────────────────────────────────────────────────────────────── */

.abn-speakers {
    margin-top: 15px;
}
.abn-speakers__title {
    font-size: 13px;
    color: var(--abn-text-muted);
    margin-bottom: 10px;
    font-weight: 600;
}
.abn-speakers__list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.abn-speaker {
    display: flex;
    align-items: center;
    flex: 0 1 calc(50% - 5px);
    min-width: 200px;
}
.abn-speaker__photo {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    background-color: #ddd;
    margin-right: 10px;
    flex-shrink: 0;
}
.abn-speaker__photo--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    color: #666;
    font-size: 18px;
}
.abn-speaker__info {
    flex: 1;
    min-width: 0;
}
.abn-speaker__name {
    font-weight: 600;
    font-size: 13px;
    color: var(--abn-text-dark);
}
.abn-speaker__regalia {
    font-size: 11px;
    color: var(--abn-text-muted);
    line-height: 1.4;
}

/* ──────────────────────────────────────────────────────────────
   8. БЛОК ПРЕДПРОСМОТРА РАЗВЁРНУТОГО ОПИСАНИЯ (только для админки)
   ────────────────────────────────────────────────────────────── */

.abn-preview-desc-long {
    margin-top: 15px;
    padding: 12px;
    background: #fff;
    border-radius: 4px;
    border: 1px solid var(--abn-border);
}
.abn-preview-desc-long summary {
    cursor: pointer;
    font-size: 13px;
    color: var(--abn-text-muted);
    font-weight: 600;
}
.abn-preview-desc-long__content {
    margin-top: 10px;
    font-size: 13px;
    color: var(--abn-text-dark);
    white-space: pre-wrap;
    line-height: 1.6;
}

/* ──────────────────────────────────────────────────────────────
   9. УТИЛИТЫ
   ────────────────────────────────────────────────────────────── */

.abn-text-muted {
    color: var(--abn-text-muted) !important;
}
.abn-empty {
    color: var(--abn-text-muted);
    font-style: italic;
    font-size: 13px;
}

/* ──────────────────────────────────────────────────────────────
   11. БЕЙДЖИ РУБРИКИ И ТИПА (на карточках)
   ────────────────────────────────────────────────────────────── */

/* Контейнер для нескольких бейджей в карточке */
.abn-card__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}

/* Бейдж даты (оранжевая обводка) — см. .abn-card__badge выше */

/* Бейдж типа мероприятия (заливка оранжевым, белый текст) */
.abn-card__type {
    display: inline-block;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 2px;
    font-size: 10px;
    line-height: normal;
    background: var(--abn-accent);
    color: #fff;
    font-weight: 600;
    width: fit-content;
}

/* Бейдж рубрики (нейтральный серый фон) */
.abn-card__rubric {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 2px;
    font-size: 11px;
    line-height: normal;
    background: #f0f0f0;
    color: #4a4a4a;
    font-weight: 400;
    width: fit-content;
}

/* У прошедших — бейджи в обычном потоке (как у предстоящих),
   чтобы не перекрывать изображение */
.abn-card--past .abn-card__badges {
    /* наследуется базовый стиль из секции 11 */
}
.abn-card--past .abn-card__type {
    /* наследуется базовый стиль */
}
.abn-card--past .abn-card__rubric {
    /* наследуется базовый стиль */
}

/* ──────────────────────────────────────────────────────────────
   12. ФИЛЬТРЫ (дропдауны над списками)
   ────────────────────────────────────────────────────────────── */

.abn-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 20px;
    padding: 12px 15px;
    background: #fff;
    border: 1px solid var(--abn-border);
    border-radius: 8px;
}

.abn-filters__label {
    font-size: 13px;
    color: var(--abn-text-dark);
    font-weight: 600;
    margin-right: 5px;
}

.abn-filters__select {
    padding: 6px 30px 6px 12px;
    border: 1px solid var(--abn-border);
    border-radius: 4px;
    background: #fff;
    font-size: 13px;
    color: var(--abn-text-dark);
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path d='M3 4.5L6 7.5L9 4.5' stroke='%236c757d' stroke-width='1.5' fill='none' stroke-linecap='round'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center;
    transition: border-color 0.2s ease;
    min-width: 160px;
}
.abn-filters__select:hover {
    border-color: var(--abn-accent);
}
.abn-filters__select:focus {
    outline: none;
    border-color: var(--abn-accent);
    box-shadow: 0 0 0 3px rgba(242, 111, 49, 0.15);
}

.abn-filters__reset {
    padding: 6px 14px;
    background: transparent;
    border: 1px solid var(--abn-border);
    border-radius: 4px;
    font-size: 13px;
    color: var(--abn-text-muted);
    cursor: pointer;
    transition: all 0.2s ease;
}
.abn-filters__reset:hover {
    color: var(--abn-text-dark);
    border-color: var(--abn-text-muted);
}

/* ──────────────────────────────────────────────────────────────
   13. СКЕЛЕТОН-КАРТОЧКИ (индикатор загрузки)
   ────────────────────────────────────────────────────────────── */

.abn-skeletons {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}
.abn-skeletons--regular > * {
    flex: 0 1 calc(33.333% - 14px);
    min-width: 280px;
}
.abn-skeletons--past > * {
    flex: 0 1 calc(25% - 15px);
    min-width: 220px;
}
@media (max-width: 991px) {
    .abn-skeletons--regular > *,
    .abn-skeletons--past > * {
        flex: 0 1 calc(50% - 10px);
    }
}
@media (max-width: 640px) {
    .abn-skeletons--regular > *,
    .abn-skeletons--past > * {
        flex: 0 1 100%;
        min-width: 100%;
    }
}

.abn-skeleton {
    background: #fff;
    border: 1px solid var(--abn-border);
    border-radius: var(--abn-radius);
    min-height: 500px;
    padding: 20px;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
}

/* Shimmer-анимация */
.abn-skeleton::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(242, 111, 49, 0.06) 50%,
        transparent 100%
    );
    transform: translateX(-100%);
    animation: abn-shimmer 1.6s infinite;
}

@keyframes abn-shimmer {
    100% {
        transform: translateX(100%);
    }
}

/* Внутренние блоки скелетона */
.abn-skeleton__badge {
    width: 120px;
    height: 18px;
    background: #ececec;
    border-radius: 2px;
    margin-bottom: 15px;
}
.abn-skeleton__image {
    width: 100%;
    height: 200px;
    background: #ececec;
    border-radius: 4px;
    margin-bottom: 15px;
}
.abn-skeleton__title {
    width: 90%;
    height: 18px;
    background: #ececec;
    border-radius: 2px;
    margin-bottom: 8px;
}
.abn-skeleton__title--short {
    width: 60%;
}
.abn-skeleton__text {
    width: 100%;
    height: 12px;
    background: #ececec;
    border-radius: 2px;
    margin-bottom: 6px;
}
.abn-skeleton__text--short {
    width: 80%;
}

/* ──────────────────────────────────────────────────────────────
   14. КНОПКА «ПОКАЗАТЬ ЕЩЁ» + СОСТОЯНИЕ ЗАГРУЗКИ
   ────────────────────────────────────────────────────────────── */

.abn-load-more {
    text-align: center;
    padding: 25px 0 10px;
}
.abn-load-more__btn {
    display: inline-block;
    padding: 12px 32px;
    background: var(--abn-accent);
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s ease;
    text-decoration: none;
}
.abn-load-more__btn:hover {
    background: var(--abn-accent-hover);
    color: #fff;
    text-decoration: none;
}
.abn-load-more__btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}
.abn-load-more__btn .bx-spin {
    display: none;
    margin-right: 8px;
}
.abn-load-more__btn.is-loading .bx-spin {
    display: inline-block;
}
.abn-load-more__btn.is-loading .abn-load-more__text-default {
    display: none;
}

.abn-load-more__count {
    display: block;
    margin-top: 8px;
    font-size: 12px;
    color: var(--abn-text-muted);
}

.abn-empty-state {
    text-align: center;
    padding: 40px 20px;
    color: var(--abn-text-muted);
}
.abn-empty-state .bx {
    font-size: 36px;
    display: block;
    margin-bottom: 10px;
}

/* ──────────────────────────────────────────────────────────────
   15. СЕКЦИЯ СПИСКА (обёртка для фильтров + контейнер + кнопка)
   ────────────────────────────────────────────────────────────── */

.abn-section {
    margin-bottom: 30px;
}
.abn-section__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--abn-text-dark);
    margin-bottom: 20px;
}
.abn-section__list {
    /* сюда AJAX-ом кладётся HTML из webinar_list.php / video_list.php */
    min-height: 100px;
}
.abn-section__list.is-loading {
    /* признак идущей загрузки */
    opacity: 0.6;
    pointer-events: none;
}

/* ──────────────────────────────────────────────────────────────
   16. СОВМЕСТИМОСТЬ СО СТАРЫМ КОДОМ
   ------------------------------------------------------------
   На пользовательской части сейчас используются старые классы
   (.item-hover, .kadrovik__title, .pbill3, .member, .member-img,
   .member-info, .cards-row, .card-col, .card-action).
   Эти классы определены в style.css и во встроенных <style> блоках
   webinar_list.php. При переходе на новую разметку можно удалить
   этот блок — пока он гарантирует, что старый код не сломается.
   ────────────────────────────────────────────────────────────── */

/* Старый контейнер .cards-row (главные события) — преобразуется в flex */
.cards-row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: 20px;
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}
.cards-row .card-col {
    flex: 0 1 calc(50% - 10px);
    min-width: 280px;
    box-sizing: border-box;
    margin-bottom: 15px;
}
@media (max-width: 640px) {
    .cards-row .card-col {
        flex: 0 1 100%;
        min-width: 100%;
    }
}

/* Старая карточка .item-hover — стилизуется как новая .abn-card__inner */
.item-hover {
    position: relative;
    background: #fff;
    border: 1px solid #E6E6E6;
    border-radius: 10px;
    min-height: 500px;
    padding: 20px 20px 80px 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: all 0.5s ease;
}
.item-hover:hover {
    -webkit-box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.12);
    -moz-box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.12);
    box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.12);
}

/* Старый бейдж */
.item-top span.badge {
    text-transform: uppercase;
    padding: 2px 5px;
    border: 1px solid #F26F31;
    border-radius: 2px;
    font-size: 11px;
    line-height: normal;
    color: #F26F31;
    font-weight: 400;
}

/* Старый контент */
.item-content {
    padding-top: 15px;
    flex: 1;
}
.item-content img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

/* Старый заголовок/подзаголовок */
.kadrovik__title {
    font-size: 16px;
    font-weight: 600;
    color: #2D3039;
    margin: 12px 0 8px;
    padding-top: 0;
}
.kadrovik__subtitle {
    font-size: 13px;
    color: #6c757d;
    line-height: 1.5;
    margin: 0;
}
.kadrovik__subtitle--main {
    font-size: 13px;
    color: #4a4a4a;
    line-height: 1.5;
    margin: 0;
    padding-bottom: 68px;
}

/* Старая кнопка .pbill3 */
.pbill3 {
    display: inline-block;
    padding: 8px 14px;
    background: #F26F31;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    margin: 0;
    transition: background 0.2s ease;
}
.pbill3:hover {
    background: #d55113;
    color: #fff;
    text-decoration: none;
}

/* Старая обёртка кнопки */
.card-action {
    position: absolute;
    bottom: 15px;
    left: 15px;
}

/* Старая прошедшая карточка .member */
.member {
    position: relative;
    margin-bottom: 20px;
    overflow: hidden;
    text-align: left;
    border: 1px solid #E6E6E6;
    border-radius: 10px;
    background: #ffe8dd;
    min-height: 500px;
    height: 100%;
    box-sizing: border-box;
}
.member-img {
    position: relative;
    overflow: hidden;
}
.member-img img {
    width: 100%;
    height: auto;
    display: block;
}
.member-info {
    padding: 15px;
    min-height: 350px;
    box-sizing: border-box;
}
.member-info h4 {
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 18px;
    color: #2D3039;
}
.member-info p {
    font-size: 12px;
    line-height: 17px;
    font-weight: 400;
    padding-top: 20px;
    color: #6c757d;
    margin: 0;
}

/* Адаптивность для старых карточек на мобильных */
@media (max-width: 640px) {
    .item-hover,
    .member {
        min-height: auto;
    }
    .kadrovik__subtitle--main {
        padding-bottom: 0;
    }
    .member-info {
        min-height: auto;
    }
}
