/* =============================================================
   ORTAK 3B EVREN — tüm sayfalarda (js/dt-evren.js ile eşleşir)
   Sabit perde + kart 3B girişi. Ana sayfa kendi WebGL katmanını kullanır.
   ============================================================= */

:root{
  --evren-p:0;            /* sayfa ilerlemesi 0→1 (JS yazar) */
  --evren-adim:0;         /* geçilen evren dilimi 0-6 (JS yazar) */
}

/* --- Perde --- */
.dt-evren{
  position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  opacity:0;transition:opacity 1.1s ease .12s;
  /* üç derinlik katmanı: yıldız alanı, ışık halesi, renk sisi */
  background:
    radial-gradient(760px 520px at calc(18% + var(--evren-p) * 62%) calc(12% + var(--evren-p) * 30%),
      hsla(calc(190 + var(--evren-adim) * 14), 62%, 46%, .16), transparent 64%),
    radial-gradient(660px 480px at calc(82% - var(--evren-p) * 58%) calc(88% - var(--evren-p) * 34%),
      hsla(calc(38 + var(--evren-adim) * 10), 70%, 52%, .13), transparent 66%),
    linear-gradient(180deg,rgba(5,18,23,.55),rgba(3,12,16,.72));
}
.dt-evren-acik{opacity:1}

/* İçerik her zaman perdenin ÜSTÜNDE (perde dekoratif) */
/* İstisna listesi KAPSAMLI: gövdedeki `position:fixed` + `z-index:-1` katmanları
   korunmalı (akis-3d-bg = akışın 3B perdesi, dt-evren-tuval = gezi tuvali). */
:where(body > *:not(.dt-evren):not(.dt-evren-tuval):not(.cv-uyari):not(.dt-promo-bar):not(.akis-3d-bg):not(.bolum3d-tuval):not(.dt-parca-tuval):not(.dt-oda-rozet):not(.cookie-banner)) {position:relative;z-index:1}

/* AÇIK TEMA: koyu sis açık sayfayı karartır — yerine çok açık bir evren tonu */
html:not([data-theme="dark"]) .dt-evren{
  background:
    radial-gradient(760px 520px at calc(18% + var(--evren-p) * 62%) calc(12% + var(--evren-p) * 30%),
      hsla(calc(190 + var(--evren-adim) * 14), 68%, 52%, .13), transparent 66%),
    radial-gradient(660px 480px at calc(82% - var(--evren-p) * 58%) calc(88% - var(--evren-p) * 34%),
      hsla(calc(38 + var(--evren-adim) * 10), 74%, 58%, .12), transparent 68%),
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(240,246,247,.16));
}
html:not([data-theme="dark"]) .dt-evren::before{opacity:.22}
html:not([data-theme="dark"]) .dt-evren::after{opacity:.18}

/* yıldız alanı: iki katman, kaydırmayla farklı hızda kayar (paralaks) */
.dt-evren::before,.dt-evren::after{
  content:"";position:absolute;inset:-20%;
  background-repeat:repeat;
  transition:transform .18s linear;
  will-change:transform;
}
.dt-evren::before{
  background-image:
    radial-gradient(1.4px 1.4px at 24px 34px,rgba(226,242,246,.55),transparent 100%),
    radial-gradient(1.1px 1.1px at 96px 78px,rgba(245,197,66,.40),transparent 100%),
    radial-gradient(1px 1px at 168px 22px,rgba(190,226,236,.42),transparent 100%);
  background-size:210px 190px;
  opacity:.5;
  transform:translate3d(calc(var(--evren-p) * -40px),calc(var(--evren-p) * -120px),0) rotate(calc(var(--evren-p) * 3deg));
}
.dt-evren::after{
  background-image:
    radial-gradient(1.6px 1.6px at 60px 120px,rgba(226,242,246,.35),transparent 100%),
    radial-gradient(1.2px 1.2px at 190px 40px,rgba(143,214,230,.30),transparent 100%);
  background-size:320px 280px;
  opacity:.42;
  transform:translate3d(calc(var(--evren-p) * -110px),calc(var(--evren-p) * -300px),0) rotate(calc(var(--evren-p) * 6deg));
}

/* bölüm sınırı geçişinde kısa "atlama" parlaması (yeni evren) */
.dt-evren.evren-atlama::before{opacity:.78}
.dt-evren.evren-atlama::after{opacity:.6}
.dt-evren::before,.dt-evren::after{transition:transform .18s linear, opacity .5s ease}

/* --- Kart 3B girişi --- */
.dt3b-gir{animation:dt3b-gir .8s cubic-bezier(.2,.8,.2,1) both}
@keyframes dt3b-gir{
  from{opacity:0;transform:perspective(900px) translate3d(0,30px,-80px) rotateX(10deg) scale(.96)}
  to{opacity:1;transform:perspective(900px) translate3d(0,0,0) rotateX(0) scale(1)}
}

/* --- Hareket azaltma --- */
@media (prefers-reduced-motion:reduce){
  .dt-evren{opacity:.42}
  .dt-evren::before,.dt-evren::after{transform:none!important}
  .dt3b-gir{animation:none!important;transform:none!important;opacity:1!important}
}

/* --- Yazdırma --- */
@media print{
  .dt-evren{display:none!important}
  .dt3b-gir{animation:none!important;transform:none!important}
}

/* --- Mobil: daha sakin --- */
@media (max-width:640px){
  .dt-evren{opacity:.8}
  .dt-evren::before{opacity:.34}
  .dt-evren::after{opacity:.28}
}
