/* ═══════════════════════════════════════════════════════════════════════════
   icons.css — локальный набор иконок Font Awesome 6.4.0 (Free)

   ── ЗАЧЕМ ─────────────────────────────────────────────────────────────────
   Раньше подключался all.min.css с cdnjs: ~30 КБ CSS с описанием 2000+ иконок
   плюс шрифт на 150 КБ, и всё это блокировало рендер, да ещё и с чужого домена
   (лишние DNS + TLS). Проекту нужно 165 иконок, они вырезаны в subset-шрифты:
   solid 12.6 КБ, regular 1.1 КБ, brands 0.7 КБ.

   ── КАК ОБНОВИТЬ ──────────────────────────────────────────────────────────
   Файл собран скриптом из @fortawesome/fontawesome-free@6.4.0: классы взяты
   из css/all.css, глифы вырезаны pyftsubset по списку реально используемых
   иконок. Добавил в разметку новую иконку — допиши сюда правило с её кодом
   из all.css И пересобери subset, иначе глифа в шрифте не будет и место
   останется пустым.

   Лицензия: Font Awesome Free, CC BY 4.0 (иконки) / SIL OFL 1.1 (шрифты),
   https://fontawesome.com/license/free
   ═══════════════════════════════════════════════════════════════════════════ */

@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url('/assets/fonts/fa-solid-900-subset.woff2') format('woff2');
}

@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('/assets/fonts/fa-regular-400-subset.woff2') format('woff2');
}

@font-face {
  font-family: 'Font Awesome 6 Brands';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('/assets/fonts/fa-brands-400-subset.woff2') format('woff2');
}

.fa, .fas, .far, .fab,
.fa-solid, .fa-regular, .fa-brands {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: var(--fa-display, inline-block);
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
}

.fa, .fas, .fa-solid  { font-family: 'Font Awesome 6 Free'; font-weight: 900; }
.far, .fa-regular     { font-family: 'Font Awesome 6 Free'; font-weight: 400; }
.fab, .fa-brands      { font-family: 'Font Awesome 6 Brands'; font-weight: 400; }

/* ── Модификаторы, которые используются в разметке ──────────────────────── */
.fa-2x { font-size: 2em; }

.fa-spin {
  animation-name: fa-spin;
  animation-duration: var(--fa-animation-duration, 2s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, linear);
}

@media (prefers-reduced-motion: reduce) {
  .fa-spin { animation-delay: -1ms; animation-duration: 1ms; animation-iteration-count: 1; }
}

@keyframes fa-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}


/* ── Коды иконок (класс задаёт глиф, семейство — .fas/.far/.fab) ────────── */
.fa-arrow-down-a-z::before { content: "\f15d"; }
.fa-arrow-down-wide-short::before { content: "\f160"; }
.fa-arrow-left::before { content: "\f060"; }
.fa-arrow-right::before { content: "\f061"; }
.fa-arrow-trend-up::before { content: "\e098"; }
.fa-arrow-up::before { content: "\f062"; }
.fa-arrow-up-right-from-square::before { content: "\f08e"; }
.fa-award::before { content: "\f559"; }
.fa-balance-scale::before { content: "\f24e"; }
.fa-ban::before { content: "\f05e"; }
.fa-bars::before { content: "\f0c9"; }
.fa-birthday-cake::before { content: "\f1fd"; }
.fa-bolt::before { content: "\f0e7"; }
.fa-book::before { content: "\f02d"; }
.fa-briefcase::before { content: "\f0b1"; }
.fa-broadcast-tower::before { content: "\f519"; }
.fa-building::before { content: "\f1ad"; }
.fa-building-columns::before { content: "\f19c"; }
.fa-bullhorn::before { content: "\f0a1"; }
.fa-bullseye::before { content: "\f140"; }
.fa-calculator::before { content: "\f1ec"; }
.fa-calendar::before { content: "\f133"; }
.fa-calendar-alt::before { content: "\f073"; }
.fa-calendar-check::before { content: "\f274"; }
.fa-car::before { content: "\f1b9"; }
.fa-car-crash::before { content: "\f5e1"; }
.fa-chart-bar::before { content: "\f080"; }
.fa-chart-line::before { content: "\f201"; }
.fa-chart-pie::before { content: "\f200"; }
.fa-check::before { content: "\f00c"; }
.fa-check-circle::before { content: "\f058"; }
.fa-chevron-down::before { content: "\f078"; }
.fa-chevron-left::before { content: "\f053"; }
.fa-chevron-right::before { content: "\f054"; }
.fa-child::before { content: "\f1ae"; }
.fa-circle-check::before { content: "\f058"; }
.fa-circle-exclamation::before { content: "\f06a"; }
.fa-circle-question::before { content: "\f059"; }
.fa-clock::before { content: "\f017"; }
.fa-code::before { content: "\f121"; }
.fa-cog::before { content: "\f013"; }
.fa-coins::before { content: "\f51e"; }
.fa-compass::before { content: "\f14e"; }
.fa-copy::before { content: "\f0c5"; }
.fa-couch::before { content: "\f4b8"; }
.fa-credit-card::before { content: "\f09d"; }
.fa-crown::before { content: "\f521"; }
.fa-dollar-sign::before { content: "\24"; }
.fa-envelope::before { content: "\f0e0"; }
.fa-euro-sign::before { content: "\f153"; }
.fa-exchange-alt::before { content: "\f362"; }
.fa-exclamation::before { content: "\21"; }
.fa-exclamation-circle::before { content: "\f06a"; }
.fa-exclamation-triangle::before { content: "\f071"; }
.fa-external-link-alt::before { content: "\f35d"; }
.fa-eye::before { content: "\f06e"; }
.fa-file-alt::before { content: "\f15c"; }
.fa-file-contract::before { content: "\f56c"; }
.fa-file-excel::before { content: "\f1c3"; }
.fa-file-import::before { content: "\f56f"; }
.fa-file-invoice::before { content: "\f570"; }
.fa-file-invoice-dollar::before { content: "\f571"; }
.fa-file-pdf::before { content: "\f1c1"; }
.fa-file-signature::before { content: "\f573"; }
.fa-filter::before { content: "\f0b0"; }
.fa-fire::before { content: "\f06d"; }
.fa-folder::before { content: "\f07b"; }
.fa-gamepad::before { content: "\f11b"; }
.fa-gem::before { content: "\f3a5"; }
.fa-gift::before { content: "\f06b"; }
.fa-globe::before { content: "\f0ac"; }
.fa-graduation-cap::before { content: "\f19d"; }
.fa-hammer::before { content: "\f6e3"; }
.fa-hand-holding-dollar::before { content: "\f4c0"; }
.fa-hand-holding-usd::before { content: "\f4c0"; }
.fa-heart::before { content: "\f004"; }
.fa-heartbeat::before { content: "\f21e"; }
.fa-home::before { content: "\f015"; }
.fa-hourglass-half::before { content: "\f252"; }
.fa-id-card::before { content: "\f2c2"; }
.fa-inbox::before { content: "\f01c"; }
.fa-info::before { content: "\f129"; }
.fa-info-circle::before { content: "\f05a"; }
.fa-landmark::before { content: "\f66f"; }
.fa-laptop::before { content: "\f109"; }
.fa-laptop-code::before { content: "\f5fc"; }
.fa-layer-group::before { content: "\f5fd"; }
.fa-lightbulb::before { content: "\f0eb"; }
.fa-link::before { content: "\f0c1"; }
.fa-list::before { content: "\f03a"; }
.fa-list-alt::before { content: "\f022"; }
.fa-list-ul::before { content: "\f0ca"; }
.fa-lock::before { content: "\f023"; }
.fa-magic::before { content: "\f0d0"; }
.fa-map-marker-alt::before { content: "\f3c5"; }
.fa-medal::before { content: "\f5a2"; }
.fa-minus-circle::before { content: "\f056"; }
.fa-mobile-alt::before { content: "\f3cd"; }
.fa-money-bill-wave::before { content: "\f53a"; }
.fa-moon::before { content: "\f186"; }
.fa-newspaper::before { content: "\f1ea"; }
.fa-paper-plane::before { content: "\f1d8"; }
.fa-pen::before { content: "\f304"; }
.fa-percent::before { content: "\25"; }
.fa-percentage::before { content: "\25"; }
.fa-phone::before { content: "\f095"; }
.fa-piggy-bank::before { content: "\f4d3"; }
.fa-plane::before { content: "\f072"; }
.fa-plus::before { content: "\2b"; }
.fa-plus-circle::before { content: "\f055"; }
.fa-plus-square::before { content: "\f0fe"; }
.fa-question-circle::before { content: "\f059"; }
.fa-receipt::before { content: "\f543"; }
.fa-redo::before { content: "\f01e"; }
.fa-refresh::before { content: "\f021"; }
.fa-rocket::before { content: "\f135"; }
.fa-ruble-sign::before { content: "\f158"; }
.fa-save::before { content: "\f0c7"; }
.fa-scale-balanced::before { content: "\f24e"; }
.fa-search::before { content: "\f002"; }
.fa-search-dollar::before { content: "\f688"; }
.fa-search-plus::before { content: "\f00e"; }
.fa-share-alt::before { content: "\f1e0"; }
.fa-shield-alt::before { content: "\f3ed"; }
.fa-shield-halved::before { content: "\f3ed"; }
.fa-shopping-bag::before { content: "\f290"; }
.fa-sms::before { content: "\f7cd"; }
.fa-spa::before { content: "\f5bb"; }
.fa-spinner::before { content: "\f110"; }
.fa-star::before { content: "\f005"; }
.fa-stopwatch::before { content: "\f2f2"; }
.fa-store::before { content: "\f54e"; }
.fa-sun::before { content: "\f185"; }
.fa-sync::before { content: "\f021"; }
.fa-sync-alt::before { content: "\f2f1"; }
.fa-table::before { content: "\f0ce"; }
.fa-tachometer-alt::before { content: "\f625"; }
.fa-tag::before { content: "\f02b"; }
.fa-tags::before { content: "\f02c"; }
.fa-telegram-plane::before { content: "\f2c6"; }
.fa-th::before { content: "\f00a"; }
.fa-th-large::before { content: "\f009"; }
.fa-thumbs-down::before { content: "\f165"; }
.fa-thumbs-up::before { content: "\f164"; }
.fa-ticket-alt::before { content: "\f3ff"; }
.fa-times::before { content: "\f00d"; }
.fa-trash::before { content: "\f1f8"; }
.fa-trash-alt::before { content: "\f2ed"; }
.fa-trophy::before { content: "\f091"; }
.fa-tshirt::before { content: "\f553"; }
.fa-university::before { content: "\f19c"; }
.fa-upload::before { content: "\f093"; }
.fa-user::before { content: "\f007"; }
.fa-user-clock::before { content: "\f4fd"; }
.fa-user-shield::before { content: "\f505"; }
.fa-users::before { content: "\f0c0"; }
.fa-utensils::before { content: "\f2e7"; }
.fa-vk::before { content: "\f189"; }
.fa-wallet::before { content: "\f555"; }
.fa-xmark::before { content: "\f00d"; }
.fa-yen-sign::before { content: "\f157"; }
