/*
	Belgeler arası sayfa geçişi (View Transition API).
	Bu dosya file:// protokolünde devre dışı bırakılır: tarayıcı orada
	geçişi yapamayıp konsola hata düşürüyor, yerine perde animasyonu çalışıyor.
*/
/*begin::Sayfa geçişi(View Transition API)*/
/* Chrome 126+ belgeler arası geçişi destekler; desteklemeyen tarayıcı
   normal şekilde gezinir, hiçbir şey bozulmaz. */
@view-transition {
	navigation: auto;
}

::view-transition-old(root) {
	animation: dk-sayfa-cik 0.4s cubic-bezier(0.4, 0, 0.2, 1) both;
}

::view-transition-new(root) {
	animation: dk-sayfa-gir 0.4s cubic-bezier(0.4, 0, 0.2, 1) both;
}

@keyframes dk-sayfa-cik {
	to {
		opacity: 0;
		transform: translateX(-22%);
	}
}

@keyframes dk-sayfa-gir {
	from {
		opacity: 0;
		transform: translateX(100%);
	}
}

/* View Transition desteklenmediğinde (ör. file://) geçiş perde ile yapılır.
   Sayfaya transform verilmez: slider arka planı file:// altında bozuluyor. */
.dk-perde {
	position: fixed;
	z-index: 1200;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: var(--dk-dark);
	pointer-events: none;
	transform: translateX(100%);
	will-change: transform;
}

html.dk-sayfa-girdi .dk-perde {
	animation: dk-perde-acil 0.42s cubic-bezier(0.4, 0, 0.2, 1) both;
}

html.dk-sayfa-cikis .dk-perde {
	animation: dk-perde-kapan 0.33s cubic-bezier(0.4, 0, 0.2, 1) both;
}

@keyframes dk-perde-kapan {
	from { transform: translateX(100%); }
	to { transform: translateX(0); }
}

@keyframes dk-perde-acil {
	from { transform: translateX(0); }
	to { transform: translateX(-100%); }
}

@media (prefers-reduced-motion: reduce) {
	html.dk-sayfa-cikis .dk-perde,
	html.dk-sayfa-girdi .dk-perde {
		animation: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	::view-transition-old(root),
	::view-transition-new(root) {
		animation: none;
	}
}
/*end::Sayfa geçişi*/
