/* ==========================================================================
   fa-yerel.css — Font Awesome CDN'siz yerel ikon köprüsü (DersTeders)
   --------------------------------------------------------------------------
   Neden var:
   pages/profile.html, 30.09.2026'da Font Awesome CDN'sinden kurtuldu.
   Sayfadaki sabit <i class="fas fa-*"> kullanımları zaten yerel `ui-icon`
   setine (assets/css/icons.css + assets/js/icon-set.js) taşındı; ancak
   js/profile.js ve js/progress.js çalışma anında hâlâ `fa-*` sınıf adlı
   öğeler üretiyor (rozetler, ders listeleri, bildirim toast'ı, favori
   çipleri, tema düğmesi). Bu dosya o sınıfları HARİCİ İSTEK OLMADAN
   yerel assets/icons SVG'lerine eşler (mask tabanlı, currentColor uyumlu).

   Kural:
   · Harici font/CDN yok (AGENTS.md: harici yeni istek YOK).
   · Karşılığı assets/icons içinde olanlar doğrudan oradan maskelenir.
   · Karşılığı olmayan üçlü (fa-times, fa-hand-holding-heart) dosya içindeki
     özgün SVG veri-URI ile üretilir.
   · Karşıtlık tablosu ptest/dalga-a.js ile denetlenir: sitede kalan her
     fa* öğesinin mask/background/svg karşılığı yoksa test HATA verir.
   ========================================================================== */

/* --- 1) Temel fa* sınıfı (eski FA'nın kutu davranışı) --------------------- */
.fa,
.fas,
.far,
.fab,
.fal,
.fa-solid,
.fa-regular {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  width: 1.15em;
  height: 1.15em;
  vertical-align: -0.18em;
  flex-shrink: 0;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

/* --- 2) Karşılıklar: ders/konu ikonları (js/profile.js SUBJECTS) ---------- */
.fa-square-root-alt { -webkit-mask-image: url(../icons/matematik.svg); mask-image: url(../icons/matematik.svg); }
.fa-atom            { -webkit-mask-image: url(../icons/fizik.svg);     mask-image: url(../icons/fizik.svg); }
.fa-flask           { -webkit-mask-image: url(../icons/deney.svg);     mask-image: url(../icons/deney.svg); }
.fa-leaf            { -webkit-mask-image: url(../icons/bitki.svg);     mask-image: url(../icons/bitki.svg); }
.fa-book-reader     { -webkit-mask-image: url(../icons/kitap-acik.svg); mask-image: url(../icons/kitap-acik.svg); }
.fa-landmark        { -webkit-mask-image: url(../icons/bina.svg);      mask-image: url(../icons/bina.svg); }
.fa-language        { -webkit-mask-image: url(../icons/ingilizce.svg); mask-image: url(../icons/ingilizce.svg); }
.fa-globe-americas  { -webkit-mask-image: url(../icons/dunya.svg);     mask-image: url(../icons/dunya.svg); }
.fa-brain           { -webkit-mask-image: url(../icons/beyin.svg);     mask-image: url(../icons/beyin.svg); }
.fa-mosque          { -webkit-mask-image: url(../icons/din.svg);       mask-image: url(../icons/din.svg); }
.fa-book            { -webkit-mask-image: url(../icons/kitap.svg);     mask-image: url(../icons/kitap.svg); }

/* --- 3) Karşılıklar: durum / bildirim (toast) ---------------------------- */
.fa-check-circle      { -webkit-mask-image: url(../icons/durum-basari.svg); mask-image: url(../icons/durum-basari.svg); }
.fa-exclamation-circle{ -webkit-mask-image: url(../icons/durum-uyari.svg);  mask-image: url(../icons/durum-uyari.svg); }
.fa-times-circle      { -webkit-mask-image: url(../icons/durum-hata.svg);   mask-image: url(../icons/durum-hata.svg); }
.fa-triangle-exclamation { -webkit-mask-image: url(../icons/durum-uyari.svg); mask-image: url(../icons/durum-uyari.svg); }

/* --- 4) Karşılıklar: eylem ikonları (aktilite / devam / paylaşım) --------- */
.fa-play      { -webkit-mask-image: url(../icons/oynat.svg);   mask-image: url(../icons/oynat.svg); }
.fa-pen       { -webkit-mask-image: url(../icons/kalem.svg);   mask-image: url(../icons/kalem.svg); }
.fa-pen-fancy { -webkit-mask-image: url(../icons/kalem-yazi.svg); mask-image: url(../icons/kalem-yazi.svg); }
.fa-file-alt  { -webkit-mask-image: url(../icons/belge.svg);   mask-image: url(../icons/belge.svg); }
.fa-check     { -webkit-mask-image: url(../icons/onay.svg);    mask-image: url(../icons/onay.svg); }
.fa-star      { -webkit-mask-image: url(../icons/yildiz.svg);  mask-image: url(../icons/yildiz.svg); }
.fa-award     { -webkit-mask-image: url(../icons/madalya.svg); mask-image: url(../icons/madalya.svg); }
.fa-medal     { -webkit-mask-image: url(../icons/madalya.svg); mask-image: url(../icons/madalya.svg); }
.fa-upload    { -webkit-mask-image: url(../icons/yukle.svg);   mask-image: url(../icons/yukle.svg); }
.fa-save      { -webkit-mask-image: url(../icons/disk.svg);    mask-image: url(../icons/disk.svg); }
.fa-trash-alt { -webkit-mask-image: url(../icons/sil.svg);     mask-image: url(../icons/sil.svg); }
.fa-sun       { -webkit-mask-image: url(../icons/gunes.svg);   mask-image: url(../icons/gunes.svg); }
.fa-moon      { -webkit-mask-image: url(../icons/ay.svg);      mask-image: url(../icons/ay.svg); }
.fa-desktop   { -webkit-mask-image: url(../icons/monitor.svg); mask-image: url(../icons/monitor.svg); }

/* --- 5) Karşılıklar: rozet simgeleri (js/progress.js BADGES) -------------- */
.fa-shoe-prints       { -webkit-mask-image: url(../icons/beden.svg);      mask-image: url(../icons/beden.svg); }
.fa-running           { -webkit-mask-image: url(../icons/beden.svg);      mask-image: url(../icons/beden.svg); }
.fa-fire              { -webkit-mask-image: url(../icons/ates.svg);       mask-image: url(../icons/ates.svg); }
.fa-graduation-cap    { -webkit-mask-image: url(../icons/mezun.svg);      mask-image: url(../icons/mezun.svg); }
.fa-crosshairs        { -webkit-mask-image: url(../icons/hedef.svg);      mask-image: url(../icons/hedef.svg); }
.fa-compass           { -webkit-mask-image: url(../icons/yon-ok.svg);     mask-image: url(../icons/yon-ok.svg); }
.fa-rocket            { -webkit-mask-image: url(../icons/roket.svg);      mask-image: url(../icons/roket.svg); }
.fa-calendar-check    { -webkit-mask-image: url(../icons/takvim.svg);     mask-image: url(../icons/takvim.svg); }
.fa-hand-holding-heart{ -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 20.5l-1.4-1.3C5.9 15.1 3 12.5 3 9.2 3 6.5 5.1 4.4 7.8 4.4c1.5 0 3 .7 4.2 2 1.2-1.3 2.7-2 4.2-2 2.7 0 4.8 2.1 4.8 4.8 0 3.3-2.9 5.9-7.6 10L12 20.5z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 20.5l-1.4-1.3C5.9 15.1 3 12.5 3 9.2 3 6.5 5.1 4.4 7.8 4.4c1.5 0 3 .7 4.2 2 1.2-1.3 2.7-2 4.2-2 2.7 0 4.8 2.1 4.8 4.8 0 3.3-2.9 5.9-7.6 10L12 20.5z'/%3E%3C/svg%3E"); }

/* Özgün (karşılığı olmayan) — kapatma işareti */
.fa-times { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6.6 6.6l10.8 10.8M17.4 6.6L6.6 17.4'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6.6 6.6l10.8 10.8M17.4 6.6L6.6 17.4'/%3E%3C/svg%3E"); }

/* --- 6) profile.html rengi: css/profile.css'te 'i' ile yazılan kurallar ---- */
/* Tehlikeli bölge başlığı ve onay diyaloğu kırmızı kalır; durum-uyari
   sınıfı icons.css'te sabit kehribar rengi atadığı için currentColor'a çekiyoruz. */
.danger-zone .section-header h2 .ui-icon {
  color: var(--danger);
  background-color: currentColor;
}
.modal-icon .ui-icon {
  background-color: currentColor;
}

/* --- 7) Hareket azaltma tercihi: maske animasyonu/flicker yok ------------- */
@media (prefers-reduced-motion: reduce) {
  .fa, .fas, .far, .fab { transition: none; }
}

.fa-crown { -webkit-mask-image: url(../icons/rozet-yildiz.svg); mask-image: url(../icons/rozet-yildiz.svg); }

.fa-trophy { -webkit-mask-image: url(../icons/kupa.svg); mask-image: url(../icons/kupa.svg); }

.fa-bolt { -webkit-mask-image: url(../icons/elektrik.svg); mask-image: url(../icons/elektrik.svg); }

.fa-user-plus { -webkit-mask-image: url(../icons/kullanici-ekle.svg); mask-image: url(../icons/kullanici-ekle.svg); }

.fa-user-check { -webkit-mask-image: url(../icons/onay.svg); mask-image: url(../icons/onay.svg); }
