/* =====================================================================
   DuruFlora Logo Component
   Kullanım: .df-logo öğesine data-theme ve data-mode attribute'ları ekleyin.
   data-theme: "summer" | "autumn" | "winter" | "spring" | "classic"   (varsayılan: summer)
   data-mode : "light" | "dark"                                        (varsayılan: light)
   data-tap  : "true" eklerseniz tıklayınca dokunma efekti + tekrar oynatma aktif olur
   data-df-auto-mode="true": logonun altındaki arka planı algılayıp light/dark'ı otomatik seçer
   ===================================================================== */

.df-logo{
  --df-front:  #2c4634;
  --df-duru:   #2c4634;
  --df-gold:   #a4906d;
  --df-accent: #f3c96b; /* yaz: güneş parıltısı / diğer temalarda dekoratif öğe rengi */

  display:inline-flex;
  align-items:center;
  width:180px;              /* site genelinde kullanılacak boyut - istediğiniz gibi ölçekleyin */
  cursor:default;
  user-select:none;
  font-family:'Georgia','Times New Roman',serif;
}
.df-logo[data-tap="true"]{ cursor:pointer; }
.df-logo svg{ width:100%; height:auto; display:block; overflow:visible; }

/* --------------------------- TEMA RENKLERİ (AÇIK VE KOYU ZEMİN) --------------------------- */

/* YAZ (Summer - Açık Zemin) */
.df-logo[data-theme="summer"],
.df-logo[data-theme="summer"][data-mode="light"] {
  --df-front:  #2c4634;
  --df-duru:   #2c4634;
  --df-gold:   #a4906d;
  --df-accent: #f3c96b;
}

/* SONBAHAR (Autumn - Açık Zemin) */
.df-logo[data-theme="autumn"],
.df-logo[data-theme="autumn"][data-mode="light"] {
  --df-front:  #a6431f;
  --df-duru:   #a6431f;
  --df-gold:   #d8a13a;
  --df-accent: #d8a13a;
}

/* KIŞ (Winter - Açık Zemin) */
.df-logo[data-theme="winter"],
.df-logo[data-theme="winter"][data-mode="light"] {
  --df-front:  #33505c;
  --df-duru:   #33505c;
  --df-gold:   #a9c1cc;
  --df-accent: #eaf6fb;
}

/* İLKBAHAR (Spring - Açık Zemin) */
.df-logo[data-theme="spring"],
.df-logo[data-theme="spring"][data-mode="light"] {
  --df-front:  #3e7a3f;
  --df-duru:   #3e7a3f;
  --df-gold:   #e893b3;
  --df-accent: #e893b3;
}

/* KLASİK / SADE (Açık Zemin) */
.df-logo[data-theme="classic"],
.df-logo[data-theme="classic"][data-mode="light"] {
  --df-front:  #2c4634;
  --df-duru:   #2c4634;
  --df-gold:   #a4906d;
  --df-accent: #f3c96b;
}

/* ─── HERO HEADER ŞEFFAF MOD DESTEĞİ ─── */
.site-header--hero:not(.is-scrolled):not(.site-header--theme-light_cream) .df-logo .word-duru {
  fill: var(--df-duru) !important;
}

/* ─── KOYU ZEMİNLER / DARK MODE (HER TEMA İÇİN ÖZGÜN RENKLER) ─── */

/* YAZ — Koyu */
.df-logo[data-mode="dark"][data-theme="summer"],
.site-footer .df-logo[data-theme="summer"],
.reviews-section .df-logo[data-theme="summer"],
[data-df-bg="dark"] .df-logo[data-theme="summer"],
.site-header--nft_arch .df-logo[data-theme="summer"],
.hdr .df-logo[data-theme="summer"],
.hdr .logo .df-logo[data-theme="summer"],
.site-header--theme-dark_forest .df-logo[data-theme="summer"],
.site-header--theme-dark_velosphere .df-logo[data-theme="summer"],
.site-header--theme-transparent_dark .df-logo[data-theme="summer"],
.blek-master-canvas:not(.blek-master-canvas--theme-light_cream) .df-logo[data-theme="summer"],
.site-header--blek:not(.site-header--theme-light_cream) .df-logo[data-theme="summer"],
.site-header--hero:not(.is-scrolled):not(.site-header--theme-light_cream) .df-logo[data-theme="summer"] {
  --df-front:  #cfe0c9 !important;
  --df-duru:   #f6efe0 !important;
  --df-gold:   #f3c96b !important;
  --df-accent: #f3c96b !important;
}

/* SONBAHAR — Koyu */
.df-logo[data-mode="dark"][data-theme="autumn"],
.site-footer .df-logo[data-theme="autumn"],
.reviews-section .df-logo[data-theme="autumn"],
[data-df-bg="dark"] .df-logo[data-theme="autumn"],
.site-header--nft_arch .df-logo[data-theme="autumn"],
.hdr .df-logo[data-theme="autumn"],
.hdr .logo .df-logo[data-theme="autumn"],
.site-header--theme-dark_forest .df-logo[data-theme="autumn"],
.site-header--theme-dark_velosphere .df-logo[data-theme="autumn"],
.site-header--theme-transparent_dark .df-logo[data-theme="autumn"],
.blek-master-canvas:not(.blek-master-canvas--theme-light_cream) .df-logo[data-theme="autumn"],
.site-header--blek:not(.site-header--theme-light_cream) .df-logo[data-theme="autumn"],
.site-header--hero:not(.is-scrolled):not(.site-header--theme-light_cream) .df-logo[data-theme="autumn"] {
  --df-front:  #f2b46e !important;
  --df-duru:   #f7e2c9 !important;
  --df-gold:   #ffb066 !important;
  --df-accent: #ffd08a !important;
}

/* KIŞ — Koyu */
.df-logo[data-mode="dark"][data-theme="winter"],
.site-footer .df-logo[data-theme="winter"],
.reviews-section .df-logo[data-theme="winter"],
[data-df-bg="dark"] .df-logo[data-theme="winter"],
.site-header--nft_arch .df-logo[data-theme="winter"],
.hdr .df-logo[data-theme="winter"],
.hdr .logo .df-logo[data-theme="winter"],
.site-header--theme-dark_forest .df-logo[data-theme="winter"],
.site-header--theme-dark_velosphere .df-logo[data-theme="winter"],
.site-header--theme-transparent_dark .df-logo[data-theme="winter"],
.blek-master-canvas:not(.blek-master-canvas--theme-light_cream) .df-logo[data-theme="winter"],
.site-header--blek:not(.site-header--theme-light_cream) .df-logo[data-theme="winter"],
.site-header--hero:not(.is-scrolled):not(.site-header--theme-light_cream) .df-logo[data-theme="winter"] {
  --df-front:  #cfe8ec !important;
  --df-duru:   #eaf6fb !important;
  --df-gold:   #bcd8e0 !important;
  --df-accent: #eaf6fb !important;
}

/* İLKBAHAR — Koyu */
.df-logo[data-mode="dark"][data-theme="spring"],
.site-footer .df-logo[data-theme="spring"],
.reviews-section .df-logo[data-theme="spring"],
[data-df-bg="dark"] .df-logo[data-theme="spring"],
.site-header--nft_arch .df-logo[data-theme="spring"],
.hdr .df-logo[data-theme="spring"],
.hdr .logo .df-logo[data-theme="spring"],
.site-header--theme-dark_forest .df-logo[data-theme="spring"],
.site-header--theme-dark_velosphere .df-logo[data-theme="spring"],
.site-header--theme-transparent_dark .df-logo[data-theme="spring"],
.blek-master-canvas:not(.blek-master-canvas--theme-light_cream) .df-logo[data-theme="spring"],
.site-header--blek:not(.site-header--theme-light_cream) .df-logo[data-theme="spring"],
.site-header--hero:not(.is-scrolled):not(.site-header--theme-light_cream) .df-logo[data-theme="spring"] {
  --df-front:  #c9f2c9 !important;
  --df-duru:   #eafbe9 !important;
  --df-gold:   #f6a8c4 !important;
  --df-accent: #f6a8c4 !important;
}

/* KLASİK — Koyu */
.df-logo[data-mode="dark"][data-theme="classic"],
.site-footer .df-logo[data-theme="classic"],
.reviews-section .df-logo[data-theme="classic"],
[data-df-bg="dark"] .df-logo[data-theme="classic"],
.site-header--nft_arch .df-logo[data-theme="classic"],
.hdr .df-logo[data-theme="classic"],
.hdr .logo .df-logo[data-theme="classic"],
.site-header--theme-dark_forest .df-logo[data-theme="classic"],
.site-header--theme-dark_velosphere .df-logo[data-theme="classic"],
.site-header--theme-transparent_dark .df-logo[data-theme="classic"],
.blek-master-canvas:not(.blek-master-canvas--theme-light_cream) .df-logo[data-theme="classic"],
.site-header--blek:not(.site-header--theme-light_cream) .df-logo[data-theme="classic"],
.site-header--hero:not(.is-scrolled):not(.site-header--theme-light_cream) .df-logo[data-theme="classic"] {
  --df-front:  #cfe0c9 !important;
  --df-duru:   #f6efe0 !important;
  --df-gold:   #f3c96b !important;
  --df-accent: #f3c96b !important;
}

/* Koyu Zemin Genel Fallback (Tema belirtilmemişse) */
.df-logo[data-mode="dark"]:not([data-theme]),
.site-footer .df-logo:not([data-theme]),
.reviews-section .df-logo:not([data-theme]),
[data-df-bg="dark"] .df-logo:not([data-theme]),
.site-header--nft_arch .df-logo:not([data-theme]),
.hdr .df-logo:not([data-theme]),
.site-header--theme-dark_forest .df-logo:not([data-theme]),
.site-header--theme-dark_velosphere .df-logo:not([data-theme]) {
  --df-front:  #cfe0c9;
  --df-duru:   #f6efe0;
  --df-gold:   #f3c96b;
  --df-accent: #f3c96b;
}

/* Tüm durumlarda logo parçalarının değişkenleri kesin olarak kullanması */
.df-logo .word-duru {
  fill: var(--df-duru) !important;
}
.df-logo .word-flora {
  fill: var(--df-gold) !important;
}
.df-logo .leaf-back,
.df-logo .leaf-front,
.df-logo .leaf-arc {
  fill: var(--df-front) !important;
}

/* --------------------------- YAPRAK İŞARETİ (3 parça: sol yaprak, dikey yaprak, yay) --------------------------- */
/* Tüm parçalar aynı renkte (tek renkli işaret). Dönüş merkezleri SVG koordinatında:
   gövdenin tabanı (27, 54), dikey yaprağın tabanı (27, 37) */
.df-logo .leaf-group{ transform-box:view-box; transform-origin:27px 54px; }
.df-logo .leaf-back,
.df-logo .leaf-front,
.df-logo .leaf-arc{ fill:var(--df-front); fill-rule:evenodd; transform-box:view-box; transform-origin:27px 54px; }
.df-logo .leaf-front{ transform-origin:27px 37px; }
.df-logo .word-duru{ fill:var(--df-duru); }
.df-logo .word-flora{ fill:var(--df-gold); }

/* --------------------------- DEKORATİF ÖĞELER & MEVSİMLER --------------------------- */
/* dekoratif öğeler: her biri varsayılan gizli, sadece kendi teması aktifken görünür */
.df-logo .leaf-glow,
.df-logo .leaf-sparkle,
.df-logo .leaf-falling,
.df-logo .leaf-blossom{ display:none; }
.df-logo[data-theme="summer"] .leaf-glow{ display:block; fill:var(--df-accent); filter:blur(5px); }
.df-logo[data-theme="winter"] .leaf-sparkle{ display:block; fill:var(--df-accent); }
.df-logo[data-theme="autumn"] .leaf-falling{ display:block; fill:var(--df-accent); }
.df-logo[data-theme="spring"] .leaf-blossom{ display:block; fill:var(--df-accent); }

.df-logo .tap-ring{ fill:none; stroke:var(--df-accent); stroke-width:2; opacity:0; transform-box:fill-box; transform-origin:center; }

/* --------------------------- GİRİŞ (ENTRANCE) ANİMASYONU --------------------------- */
/* Sayfa yüklendiğinde bir kere oynar: sol yaprak, dikey yaprak ve yay sırayla açılır, yazı belirir, üzerinden güneş ışığı geçer */

@keyframes df-leaf-pop{ from{ opacity:0; transform:scale(.3) rotate(-18deg); } to{ opacity:1; transform:scale(1) rotate(0deg); } }
@keyframes df-arc-in{ from{ opacity:0; transform:rotate(-30deg) scale(.7); } to{ opacity:1; transform:rotate(0deg) scale(1); } }
@keyframes df-word-in{ to{ opacity:1; transform:translateY(0); } }
@keyframes df-sweep-up{ 0%{transform:translateY(70px);opacity:0;} 18%{opacity:1;} 82%{opacity:1;} 100%{transform:translateY(-70px);opacity:0;} }

.df-logo.df-play .leaf-back{ opacity:0; animation:df-leaf-pop .55s cubic-bezier(.34,1.56,.64,1) .1s forwards; }
.df-logo.df-play .leaf-front{ opacity:0; animation:df-leaf-pop .55s cubic-bezier(.34,1.56,.64,1) .28s forwards; }
.df-logo.df-play .leaf-arc{ opacity:0; animation:df-arc-in .7s cubic-bezier(.22,1,.36,1) .42s forwards; }
.df-logo.df-play .word-duru{ opacity:0; transform:translateY(6px); animation:df-word-in .5s cubic-bezier(.22,1,.36,1) .55s forwards; }
.df-logo.df-play .word-flora{ opacity:0; transform:translateY(6px); animation:df-word-in .5s cubic-bezier(.22,1,.36,1) .65s forwards; }
.df-logo.df-play .sweep-rect{ transform:translateY(70px); opacity:0; animation:df-sweep-up 1.15s ease-out 1s forwards; }
.df-logo .sweep-layer{ mix-blend-mode:screen; pointer-events:none; }

/* animasyon oynamadan önce/JS devre dışıysa öğeler görünür kalsın */
.df-logo:not(.df-play) .leaf-back,
.df-logo:not(.df-play) .leaf-front,
.df-logo:not(.df-play) .leaf-arc,
.df-logo:not(.df-play) .word-duru,
.df-logo:not(.df-play) .word-flora{ opacity:1; transform:none; }
.df-logo:not(.df-play) .sweep-rect{ opacity:0; }

/* --------------------------- DOKUNMA (TAP) --------------------------- */
@keyframes df-tap-ripple{ 0%{ transform:scale(.5); opacity:.55; } 100%{ transform:scale(1.9); opacity:0; } }
@keyframes df-tap-bounce{ 0%{ transform:scale(1); } 35%{ transform:scale(.94); } 100%{ transform:scale(1); } }
.df-logo.df-tapped .tap-ring{ animation:df-tap-ripple .55s ease-out forwards; }
.df-logo.df-tapped .leaf-group{ animation:df-tap-bounce .4s ease; }

/* --------------------------- HOVER HAREKETLERİ (TEMAYA ÖZGÜ) --------------------------- */

/* YAZ: esintide hafif salınım + güneş parıltısı */
@keyframes df-summer-front{ 0%,100%{ transform:rotate(0deg) scale(1);} 30%{ transform:rotate(6deg) scale(1.03);} 60%{ transform:rotate(-4deg) scale(1);} }
@keyframes df-summer-back{ 0%,100%{ transform:rotate(0deg) scale(1);} 35%{ transform:rotate(-5deg) scale(1.03);} 65%{ transform:rotate(4deg) scale(1);} }
@keyframes df-summer-arc{ 0%,100%{ transform:rotate(0deg);} 50%{ transform:rotate(2deg);} }
@keyframes df-shimmer{ 0%,100%{ transform:scale(1); opacity:.55;} 50%{ transform:scale(1.15); opacity:.9;} }
.df-logo[data-theme="summer"]:hover .leaf-front{ animation:df-summer-front 1.3s ease-in-out infinite; }
.df-logo[data-theme="summer"]:hover .leaf-back{ animation:df-summer-back 1.3s ease-in-out infinite; animation-delay:.1s; }
.df-logo[data-theme="summer"]:hover .leaf-arc{ animation:df-summer-arc 1.3s ease-in-out infinite; }
.df-logo[data-theme="summer"] .leaf-glow{ opacity:0; transform-box:fill-box; transform-origin:center; transition:opacity .4s ease; }
.df-logo[data-theme="summer"]:hover .leaf-glow{ opacity:1; animation:df-shimmer 2.2s ease-in-out infinite; }

/* SONBAHAR: rüzgarda düşecekmiş gibi sallanma + kopup savrulan yaprak parçası */
@keyframes df-autumn-front{ 0%,100%{transform:rotate(0deg) translateY(0);} 25%{transform:rotate(14deg) translateY(1px);} 55%{transform:rotate(-11deg) translateY(2px);} 80%{transform:rotate(6deg) translateY(0);} }
@keyframes df-autumn-back{ 0%,100%{transform:rotate(0deg) translateY(0);} 25%{transform:rotate(-10deg) translateY(1px);} 55%{transform:rotate(8deg) translateY(2px);} 80%{transform:rotate(-4deg) translateY(0);} }
@keyframes df-autumn-arc{ 0%,100%{transform:rotate(0deg);} 50%{transform:rotate(4deg);} }
@keyframes df-autumn-fall{ 0%{transform:translate(0,0) rotate(0deg) scale(.55); opacity:0;} 12%{opacity:.9;} 100%{transform:translate(-22px,50px) rotate(200deg) scale(.4); opacity:0;} }
.df-logo[data-theme="autumn"]:hover .leaf-front{ animation:df-autumn-front 1.1s ease-in-out infinite; }
.df-logo[data-theme="autumn"]:hover .leaf-back{ animation:df-autumn-back 1.1s ease-in-out infinite; animation-delay:.08s; }
.df-logo[data-theme="autumn"]:hover .leaf-arc{ animation:df-autumn-arc 1.1s ease-in-out infinite; }
.df-logo[data-theme="autumn"] .leaf-falling{ opacity:0; transform-box:fill-box; transform-origin:center; }
.df-logo[data-theme="autumn"]:hover .leaf-falling{ animation:df-autumn-fall 2.1s ease-in infinite; animation-delay:.4s; }

/* KIŞ: soğuktan titreme + parıldayan buz taneleri */
@keyframes df-winter-front{ 0%,100%{transform:rotate(0deg);} 20%{transform:rotate(-2.5deg);} 40%{transform:rotate(2.5deg);} 60%{transform:rotate(-2deg);} 80%{transform:rotate(1.5deg);} }
@keyframes df-winter-back{ 0%,100%{transform:rotate(0deg);} 20%{transform:rotate(2deg);} 40%{transform:rotate(-2deg);} 60%{transform:rotate(1.5deg);} 80%{transform:rotate(-1deg);} }
@keyframes df-winter-twinkle{ 0%,100%{opacity:0; transform:scale(.5);} 50%{opacity:1; transform:scale(1);} }
.df-logo[data-theme="winter"]:hover .leaf-front{ animation:df-winter-front .5s ease-in-out infinite; }
.df-logo[data-theme="winter"]:hover .leaf-back,
.df-logo[data-theme="winter"]:hover .leaf-arc{ animation:df-winter-back .5s ease-in-out infinite; }
.df-logo[data-theme="winter"] .leaf-sparkle{ opacity:0; transform-box:fill-box; transform-origin:center; }
.df-logo[data-theme="winter"]:hover .leaf-sparkle{ animation:df-winter-twinkle 1.4s ease-in-out infinite; }
.df-logo[data-theme="winter"]:hover .leaf-sparkle.s2{ animation-delay:.35s; }
.df-logo[data-theme="winter"]:hover .leaf-sparkle.s3{ animation-delay:.7s; }

/* İLKBAHAR: büyüme/nefes alma + açan tomurcuk */
@keyframes df-spring-breathe{ 0%,100%{transform:scale(1);} 50%{transform:scale(1.09);} }
@keyframes df-spring-bloom{ 0%{transform:scale(0); opacity:0;} 40%{transform:scale(1); opacity:1;} 75%{transform:scale(1); opacity:1;} 100%{transform:scale(0); opacity:0;} }
.df-logo[data-theme="spring"]:hover .leaf-group{ animation:df-spring-breathe 1.8s ease-in-out infinite; }
.df-logo[data-theme="spring"] .leaf-blossom{ opacity:0; transform-box:fill-box; transform-origin:center; }
.df-logo[data-theme="spring"]:hover .leaf-blossom{ animation:df-spring-bloom 2.2s ease-in-out infinite; }

/* =====================================================================
   YÜKLENİYOR (SPINNER) — her tema için ayrı, .df-spinner data-theme ile seçilir
   ===================================================================== */
.df-spinner{
  width:44px; height:44px; display:inline-block; overflow:visible;
  --sp-main:#2c4634; --sp-soft:#f6c1d4; --sp-accent:#a4906d;
}

/* ---------- AÇIK ZEMİN (varsayılan) ---------- */
.df-spinner[data-theme="summer"]{ --sp-main:#2c4634; --sp-soft:#4a6f52; --sp-accent:#a4906d; }
.df-spinner[data-theme="autumn"]{ --sp-main:#a6431f; --sp-soft:#c96b2e; --sp-accent:#d8a13a; }
.df-spinner[data-theme="winter"]{ --sp-main:#7fa8ac; --sp-accent:#33505c; }
.df-spinner[data-theme="spring"]{ --sp-main:#e893b3; --sp-soft:#f6c1d4; --sp-accent:#3e7a3f; }

/* ---------- KOYU ZEMİN ---------- */
.df-spinner[data-theme="summer"][data-mode="dark"],
.df-loading-overlay[data-mode="dark"] .df-spinner[data-theme="summer"],
.site-footer .df-spinner[data-theme="summer"],
.reviews-section .df-spinner[data-theme="summer"],
[data-df-bg="dark"] .df-spinner[data-theme="summer"],
.site-header--nft_arch .df-spinner[data-theme="summer"],
.hdr .df-spinner[data-theme="summer"],
.site-header--theme-dark_forest .df-spinner[data-theme="summer"],
.site-header--theme-dark_velosphere .df-spinner[data-theme="summer"] {
  --sp-main:#cfe0c9; --sp-soft:#8faa8f; --sp-accent:#f3c96b;
}

.df-spinner[data-theme="autumn"][data-mode="dark"],
.df-loading-overlay[data-mode="dark"] .df-spinner[data-theme="autumn"],
.site-footer .df-spinner[data-theme="autumn"],
.reviews-section .df-spinner[data-theme="autumn"],
[data-df-bg="dark"] .df-spinner[data-theme="autumn"],
.site-header--nft_arch .df-spinner[data-theme="autumn"],
.hdr .df-spinner[data-theme="autumn"],
.site-header--theme-dark_forest .df-spinner[data-theme="autumn"],
.site-header--theme-dark_velosphere .df-spinner[data-theme="autumn"] {
  --sp-main:#f2b46e; --sp-soft:#e0935a; --sp-accent:#ffd08a;
}

.df-spinner[data-theme="winter"][data-mode="dark"],
.df-loading-overlay[data-mode="dark"] .df-spinner[data-theme="winter"],
.site-footer .df-spinner[data-theme="winter"],
.reviews-section .df-spinner[data-theme="winter"],
[data-df-bg="dark"] .df-spinner[data-theme="winter"],
.site-header--nft_arch .df-spinner[data-theme="winter"],
.hdr .df-spinner[data-theme="winter"],
.site-header--theme-dark_forest .df-spinner[data-theme="winter"],
.site-header--theme-dark_velosphere .df-spinner[data-theme="winter"] {
  --sp-main:#9fc4c9; --sp-soft:#7fa8ac; --sp-accent:#eaf6fb;
}

.df-spinner[data-theme="spring"][data-mode="dark"],
.df-loading-overlay[data-mode="dark"] .df-spinner[data-theme="spring"],
.site-footer .df-spinner[data-theme="spring"],
.reviews-section .df-spinner[data-theme="spring"],
[data-df-bg="dark"] .df-spinner[data-theme="spring"],
.site-header--nft_arch .df-spinner[data-theme="spring"],
.hdr .df-spinner[data-theme="spring"],
.site-header--theme-dark_forest .df-spinner[data-theme="spring"],
.site-header--theme-dark_velosphere .df-spinner[data-theme="spring"] {
  --sp-main:#f6a8c4; --sp-soft:#fbd3e1; --sp-accent:#c9f2c9;
}

/* ---------- ŞEKİLLER ---------- */
.df-spinner .spin-front{ fill:var(--sp-main); }
.df-spinner .spin-back{ fill:var(--sp-soft); }
.df-spinner .spin-ring{ fill:none; stroke:var(--sp-accent); stroke-width:2.5; stroke-linecap:round; stroke-dasharray:30 130; opacity:.55; }
.df-spinner .spin-line{ stroke:var(--sp-main); stroke-width:2.6; stroke-linecap:round; fill:none; }
.df-spinner .spin-tip{ fill:var(--sp-accent); }
.df-spinner .spin-petal{ fill:var(--sp-main); opacity:.9; }
.df-spinner .spin-petal.soft{ fill:var(--sp-soft); opacity:.9; }
.df-spinner .spin-core{ fill:var(--sp-accent); }

/* yaz + sonbahar: yaprak grubu kendi merkezi etrafında döner, halka kendi merkezi etrafında */
.df-spinner[data-theme="summer"] .spin-group,
.df-spinner[data-theme="summer"] .spin-ring,
.df-spinner[data-theme="autumn"] .spin-group{ transform-box:fill-box; transform-origin:center; }
/* kış + ilkbahar: dönüş merkezi (24, 30). Parent transform YOK, koordinatlar doğrudan geçerli */
.df-spinner[data-theme="winter"] .spin-group,
.df-spinner[data-theme="spring"] .spin-group{ transform-box:view-box; transform-origin:24px 30px; }

/* ---------- HAREKETLER ---------- */
/* yaz: yaprak döner + güneş halkası */
@keyframes df-spin-summer-leaf{ 0%{transform:rotate(0deg) scale(1);} 50%{transform:rotate(180deg) scale(.85);} 100%{transform:rotate(360deg) scale(1);} }
@keyframes df-spin-ring{ to{ transform:rotate(360deg); } }
.df-spinner[data-theme="summer"] .spin-group{ animation:df-spin-summer-leaf 1.6s cubic-bezier(.45,0,.55,1) infinite; }
.df-spinner[data-theme="summer"] .spin-ring{ animation:df-spin-ring 1.1s linear infinite; }

/* sonbahar: yaprak dönerek/savrularak daire çizer */
@keyframes df-spin-autumn-path{ 0%{transform:translate(0,0) rotate(0deg);} 25%{transform:translate(7px,-5px) rotate(90deg);} 50%{transform:translate(0,-9px) rotate(180deg);} 75%{transform:translate(-7px,-5px) rotate(270deg);} 100%{transform:translate(0,0) rotate(360deg);} }
.df-spinner[data-theme="autumn"] .spin-group{ animation:df-spin-autumn-path 1.8s linear infinite; }

/* kış: kar tanesi yavaşça döner, uçları sırayla parıldar */
@keyframes df-spin-winter{ to{ transform:rotate(360deg); } }
@keyframes df-spin-winter-tip{ 0%,100%{opacity:.35;} 50%{opacity:1;} }
.df-spinner[data-theme="winter"] .spin-group{ animation:df-spin-winter 4.5s linear infinite; }
.df-spinner[data-theme="winter"] .spin-tip{ animation:df-spin-winter-tip 1.6s ease-in-out infinite; }
.df-spinner[data-theme="winter"] .spin-tip.t2{ animation-delay:.3s; }
.df-spinner[data-theme="winter"] .spin-tip.t3{ animation-delay:.6s; }

/* ilkbahar: çiçek açılıp kapanır, hafifçe döner */
@keyframes df-spin-spring{ 0%{transform:scale(.8) rotate(0deg);} 50%{transform:scale(1.12) rotate(20deg);} 100%{transform:scale(.8) rotate(0deg);} }
.df-spinner[data-theme="spring"] .spin-group{ animation:df-spin-spring 1.7s ease-in-out infinite; }

/* ---------- TAM EKRAN YÜKLENİYOR KATMANI (overlay) ---------- */
.df-loading-overlay{
  position:fixed !important; inset:0 !important; z-index:999999 !important;
  display:none !important; align-items:center !important; justify-content:center !important; flex-direction:column !important; gap:12px !important;
  background:#ffffff !important;                               /* sayfa beyazken açık zemin (beyaz) */
}
.df-loading-overlay.is-active{ display:flex !important; }
.df-loading-overlay[data-mode="dark"][data-theme="summer"]{ background:rgba(21,32,25,.92) !important; }
.df-loading-overlay[data-mode="dark"][data-theme="autumn"]{ background:rgba(36,18,9,.92) !important; }
.df-loading-overlay[data-mode="dark"][data-theme="winter"]{ background:rgba(13,22,32,.92) !important; }
.df-loading-overlay[data-mode="dark"][data-theme="spring"]{ background:rgba(24,42,26,.92) !important; }

/* overlay içinde sadece aktif temanın spinner'ı görünür */
.df-loading-overlay .df-spinner{ display:none !important; }
.df-loading-overlay[data-theme="summer"] .df-spinner[data-theme="summer"],
.df-loading-overlay[data-theme="autumn"] .df-spinner[data-theme="autumn"],
.df-loading-overlay[data-theme="winter"] .df-spinner[data-theme="winter"],
.df-loading-overlay[data-theme="spring"] .df-spinner[data-theme="spring"]{ display:block !important; }

.df-loading-label{ font-family:sans-serif !important; font-size:11px !important; letter-spacing:1.5px !important; color:#8b8168 !important; }
.df-loading-overlay[data-mode="dark"] .df-loading-label{ color:#cbb98a !important; }

@media (prefers-reduced-motion: reduce){
  .df-logo *, .df-spinner *{ animation:none !important; }
  .df-logo .leaf-back, .df-logo .leaf-front, .df-logo .leaf-arc,
  .df-logo .word-duru, .df-logo .word-flora{ opacity:1 !important; transform:none !important; }
}
