/* Общий компонент «карточка режима консультации» — единый источник стилей для
   home.html и classic.html (задача #120, третья итерация 2026-08-08: заказчик
   явно попросил не дублировать стили карточек в двух файлах).

   Разметка страниц называет классы по-разному (.card на home.html,
   .mode-card на classic.html — рабочий чат с 74 тестами, переименовывать его
   разметку сочли более рискованным, чем свести правила общими селекторами
   через запятую). var(..., fallback) — тот же приём: на home.html токены
   --radius/--fill/--fill-hi/--blue определены в :root и подставляются, на
   classic.html их нет — используется fallback, совпадающий с прежними
   значениями .mode-card, чтобы classic.html не пришлось заводить те же токены. */

.card, .mode-card {
  background: var(--fill, rgba(255,255,255,.05));
  border: 1px solid rgba(200,149,42,.15);
  border-radius: var(--radius, 16px);
  padding: 24px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .25s cubic-bezier(.16,1,.3,1), border-color .25s ease,
    box-shadow .25s ease, background-color .25s ease;
}
.card:hover, .mode-card:hover {
  background: var(--fill-hi, rgba(255,255,255,.09));
  border-color: rgba(200,149,42,.5);
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,.4), 0 0 15px rgba(200,149,42,.1);
}
.card::before, .mode-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  border-radius: var(--radius, 16px) var(--radius, 16px) 0 0;
  opacity: 0; transition: opacity .2s;
}
.card:hover::before, .card[aria-pressed="true"]::before, .mode-card:hover::before { opacity: 1; }

.card[data-mode="tax"]::before, .mode-card[data-mode="tax"]::before { background: var(--gold); }
.card[data-mode="accounting"]::before, .mode-card[data-mode="accounting"]::before { background: var(--teal-light); }
.card[data-mode="ifrs"]::before, .mode-card[data-mode="ifrs"]::before { background: var(--blue, #5B8DEF); }
.card[data-mode="dipifr"]::before, .mode-card[data-mode="dipifr"]::before { background: var(--violet); }

/* CTA-пилюля: общая для обеих страниц. margin-top:auto прижимает её книзу
   flex-карточки — описания разной длины не рассогласовывают кнопки по высоте. */
.card__cta {
  margin-top: auto; align-self: flex-start; padding: 7px 14px;
  border-radius: 999px; font-size: 11.5px; font-weight: 700;
  display: inline-flex; align-items: center; gap: 4px;
  background: linear-gradient(135deg, var(--gold-light), var(--gold)); color: #0D1B2A;
  transition: background .2s;
}
.card:hover .card__cta, .mode-card:hover .card__cta { background: linear-gradient(135deg,#FFD54F,var(--gold-light)); }
.card__cta-arrow { display: inline-block; transition: transform .25s cubic-bezier(.16,1,.3,1); }
.card:hover .card__cta-arrow, .mode-card:hover .card__cta-arrow { transform: translateX(3px); }
