/*
  PRICES.CSS — Страница прейскуранта услуг
  Подключение в шаблоне:
    <link rel="stylesheet" href="{% static 'css/prices.css' %}">

  Зависит от base.css (CSS-переменные: --cream, --ivory, --sage, --sage-dk,
  --sage-lt, --warm, --text, --muted, --sys, --serif, --radius-md, --radius-pill и т.д.)
*/

/* ══════════════════════════════════════════
   ОБЁРТКА СТРАНИЦЫ
══════════════════════════════════════════ */
.prices-section {
  padding: 3rem 1.5rem 5rem;
}

.prices-container {
  max-width: 1000px;
  margin: 0 auto;
}

/* ══════════════════════════════════════════
   ШАПКА
══════════════════════════════════════════ */
.prices-header {
  text-align: center;
  margin-bottom: 2.5rem;
}

.prices-updated {
  font-size: var(--text-sm);
  margin-top: .5rem;
}

/* ══════════════════════════════════════════
   ПОИСК
══════════════════════════════════════════ */
.prices-search {
  margin-bottom: 1.5rem;
}

.prices-search__input {
  width: 100%;
  padding: .75rem 1.25rem;
  font-family: var(--sys);
  font-size: var(--text-base);
  color: var(--text);
  background: var(--white);
  border: 1px solid rgba(107,143,113,.3);
  border-radius: var(--radius-pill);
  outline: none;
  transition: border-color .2s, box-shadow .2s;
}

.prices-search__input::placeholder {
  color: var(--muted);
}

.prices-search__input:focus {
  border-color: var(--sage);
  box-shadow: 0 0 0 3px rgba(107,143,113,.12);
}

/* ══════════════════════════════════════════
   ОБЁРТКА ТАБЛИЦЫ
══════════════════════════════════════════ */
.prices-table-wrap {
  border-radius: var(--radius-md);
  overflow: hidden;
  border: 1px solid rgba(107,143,113,.2);
}

/* ══════════════════════════════════════════
   ТАБЛИЦА — БАЗОВЫЕ СТИЛИ
══════════════════════════════════════════ */
.prices-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-base);
}

/* Ширина колонок */
.prices-table .col-num   { width: 52px; }
.prices-table .col-code  { width: 150px; }
.prices-table .col-name  { }
.prices-table .col-price { width: 130px; text-align: right; white-space: nowrap; }

/* Шапка таблицы */
.prices-table thead th {
  padding: 12px 14px;
  font-family: var(--sys);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--muted);
  background: var(--ivory);
  border-bottom: 1px solid rgba(107,143,113,.25);
  text-align: center;
}

.prices-table thead th.col-price {
  text-align: right;
}

/* Базовые ячейки */
.prices-table td {
  padding: 9px 14px;
  vertical-align: middle;
  border-bottom: .5px solid rgba(0,0,0,.06);
  color: var(--text);
  font-size: var(--text-base);
}

.prices-table .col-num  { color: var(--muted); font-size: var(--text-sm); }
.prices-table .col-code { color: var(--muted); font-size: var(--text-xs); font-family: 'Courier New', monospace; letter-spacing: .02em; }
.prices-table .col-price { text-align: right; font-weight: 600; }

/* ══════════════════════════════════════════
   ЗАГОЛОВКИ РАЗДЕЛОВ
══════════════════════════════════════════ */
.section-header td {
  font-family: var(--sys);
  font-size: var(--text-sm);
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 9px 14px;
  border-bottom: none;
  text-align: center;
  padding-top: 30px;
}

/* ══════════════════════════════════════════
   ЦВЕТА РАЗДЕЛОВ
   Заголовок — насыщеннее, чётные строки — светлее, нечётные — белые
══════════════════════════════════════════ */

/* Зелёный */
.section--green.section-header td { background: #b7e4c7; color: #1b4332; }
.section--green.row-even td       { background: #d8f3dc; }
.section--green.row-odd  td       { background: #ffffff; }

/* Розовый */
.section--pink.section-header td  { background: #f4acb7; color: #6d1a2a; }
.section--pink.row-even td        { background: #ffd6e0; }
.section--pink.row-odd  td        { background: #ffffff; }

/* Жёлтый */
.section--yellow.section-header td { background: #ffe066; color: #5a4200; }
.section--yellow.row-even td       { background: #fff3b0; }
.section--yellow.row-odd  td       { background: #ffffff; }

/* Голубой */
.section--blue.section-header td  { background: #a8dadc; color: #1b3a4b; }
.section--blue.row-even td        { background: #caf0f8; }
.section--blue.row-odd  td        { background: #ffffff; }

/* Лавандовый */
.section--lavender.section-header td { background: #c5b4e3; color: #2e1a5e; }
.section--lavender.row-even td       { background: #e8ddf7; }
.section--lavender.row-odd  td       { background: #ffffff; }

/* Персиковый */
.section--peach.section-header td { background: #ffcba4; color: #6b2d00; }
.section--peach.row-even td       { background: #ffe8d6; }
.section--peach.row-odd  td       { background: #ffffff; }

/* ══════════════════════════════════════════
   БЕЙДЖ «БЕСПЛАТНО»
══════════════════════════════════════════ */
.badge-free {
  display: inline-block;
  padding: 2px 10px;
  background: #d8f3dc;
  color: #1b4332;
  font-size: var(--text-xs);
  font-weight: 700;
  border-radius: var(--radius-pill);
  letter-spacing: .04em;
}

/* ══════════════════════════════════════════
   ПУСТОЙ ПОИСК
══════════════════════════════════════════ */
.prices-empty {
  padding: 2.5rem;
  text-align: center;
  font-size: var(--text-base);
  color: var(--muted);
  background: var(--ivory);
}

/* ══════════════════════════════════════════
   ПОДВАЛ СТРАНИЦЫ
══════════════════════════════════════════ */
.prices-footer-note {
  margin-top: 1.25rem;
  font-size: var(--text-xs);
  text-align: center;
}

/* ══════════════════════════════════════════
   АДАПТИВ
══════════════════════════════════════════ */
@media (max-width: 640px) {
  .prices-table .col-code,
  .prices-table .col-num { display: none; }
  .prices-table td, .prices-table th { padding: 8px 10px; }
  .prices-table { font-size: var(--text-sm); }
}