/* КПКІТП — консультації (rozklad-consultations.css)
   Стилі ізоляційні: працюють тільки всередині .consultations-wrap
   Використовують глобальні змінні з header.php:
   --bg, --text, --muted, --border, --kp-mint, --kp-violet, --kp-violet-2, --shadow, --radius
*/

body{
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Noto Sans',sans-serif;
  background: var(--bg);
  color: var(--text);
}

/* Обгортка */
.consultations-wrap{
  background:
    radial-gradient(900px 420px at 10% 0%, rgba(159,231,221,.30) 0%, rgba(159,231,221,.08) 55%, rgba(255,255,255,0) 100%),
    linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(255,255,255,.78) 100%);
  border: 1px solid rgba(59,31,94,.14);
  border-radius: 18px;
  box-shadow: 0 18px 40px rgba(16,24,40,.10);
  padding: 14px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

/* Контейнер — хай буде стандартний, але не перебиваємо глобально */
.consultations-wrap .container{
  max-width: 1200px;
  margin: 0 auto;
}

/* Заголовки */
.consultations-wrap .page-title{
  color: var(--kp-violet);
  font-size: clamp(22px, 2.8vw, 30px);
  margin-bottom: 14px;
  font-weight: 900;
  letter-spacing: .2px;
}

.consultations-wrap .block-title{
  font-size: clamp(18px, 2.4vw, 24px);
  color: var(--kp-violet-2);
  margin-bottom: 12px;
  font-weight: 900;
  letter-spacing: .2px;
}

/* Карточка-блок */
.consultations-wrap .block-card{
  background: rgba(255,255,255,.86);
  padding: clamp(14px, 3vw, 22px);
  border: 1px solid rgba(59,31,94,.14);
  border-radius: 18px;
  box-shadow: 0 14px 30px rgba(16,24,40,.10);
  margin-bottom: 18px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.consultations-wrap .block-card:hover{
  transform: translateY(-2px);
  border-color: rgba(59,31,94,.20);
  box-shadow: 0 18px 40px rgba(16,24,40,.12);
}

/* Таблиця */
.consultations-wrap .schedule-table{
  margin-top: 10px;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid rgba(59,31,94,.14);
  border-radius: 16px;
  overflow: hidden;
  background: rgba(255,255,255,.92);
}

.consultations-wrap .schedule-table th,
.consultations-wrap .schedule-table td{
  border-bottom: 1px solid rgba(59,31,94,.10);
  font-size: 15px;
  padding: 12px;
  text-align: center;
  vertical-align: middle;
}

.consultations-wrap .schedule-table tr:last-child td{
  border-bottom: 0;
}

.consultations-wrap .schedule-table thead th{
  background:
    linear-gradient(180deg, rgba(159,231,221,.35) 0%, rgba(255,255,255,.88) 100%);
  font-weight: 900;
  color: var(--kp-violet-2);
  letter-spacing: .15px;
}

/* Дрібні покращення */
.consultations-wrap .table-responsive{
  -webkit-overflow-scrolling: touch;
}

/* Хелпер для ширини кнопок */
.consultations-wrap .w-sm-auto{
  width: auto;
}

/* Кнопки — НЕ перетираємо глобальний bootstrap, лише всередині wrap */
.consultations-wrap .btn{
  border-radius: 12px;
  font-weight: 800;
}

.consultations-wrap .btn-primary{
  background: linear-gradient(180deg, rgba(59,31,94,.92) 0%, rgba(43,18,72,.98) 100%);
  border-color: rgba(59,31,94,.10);
  box-shadow: 0 10px 20px rgba(16,24,40,.12);
}
.consultations-wrap .btn-primary:hover{
  filter: brightness(1.03);
  transform: translateY(-1px);
}

.consultations-wrap .btn-outline-secondary{
  border-width: 1px;
  border-color: rgba(59,31,94,.22);
  color: var(--kp-violet-2);
  background: rgba(255,255,255,.70);
}
.consultations-wrap .btn-outline-secondary:hover{
  background: rgba(255,255,255,.88);
}

/* ====== Мобільна адаптація: таблиця -> картки ====== */
@media (max-width: 575.98px){
  .consultations-wrap{
    padding: 10px;
    border-radius: 16px;
  }

  .consultations-wrap .container{
    padding-left: 10px;
    padding-right: 10px;
  }

  .consultations-wrap .w-sm-auto{
    width: 100% !important;
  }

  .consultations-wrap .schedule-table thead{
    display: none;
  }

  .consultations-wrap .schedule-table,
  .consultations-wrap .schedule-table tbody,
  .consultations-wrap .schedule-table tr,
  .consultations-wrap .schedule-table td{
    display: block;
    width: 100%;
  }

  .consultations-wrap .schedule-table{
    border: 0;
    background: transparent;
  }

  .consultations-wrap .schedule-table tr{
    background:
      linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(255,255,255,.82) 100%);
    border: 1px solid rgba(59,31,94,.14);
    border-radius: 16px;
    margin: 10px 0;
    padding: 8px 10px;
    box-shadow: 0 12px 26px rgba(16,24,40,.10);
  }

  .consultations-wrap .schedule-table td{
    border: none;
    border-bottom: 1px dashed rgba(59,31,94,.18);
    text-align: left;
    font-size: 15px;
    padding: 10px 8px;
    position: relative;
  }

  .consultations-wrap .schedule-table td:last-child{
    border-bottom: none;
  }

  .consultations-wrap .schedule-table td::before{
    content: attr(data-label);
    font-weight: 900;
    display: block;
    margin-bottom: 4px;
    color: var(--kp-violet-2);
  }

  .consultations-wrap .block-card{
    box-shadow: 0 12px 26px rgba(16,24,40,.10);
  }
}

/* ====== Планшети: легке зменшення ====== */
@media (min-width: 576px) and (max-width: 991.98px){
  .consultations-wrap .schedule-table th,
  .consultations-wrap .schedule-table td{
    font-size: 14px;
  }
}
