/* Okuyucunun kullandığı birkaç düzen yardımcısı (panel tarafındaki Tailwind karşılıkları). */
.fb-arac .flex, .fb-kapak .flex, .oku-okuyucu .flex { display: flex; }
.oku-okuyucu .flex-col { flex-direction: column; }
.oku-okuyucu .items-center { align-items: center; }
.oku-okuyucu .justify-between { justify-content: space-between; }
.oku-okuyucu .gap-3 { gap: 12px; }
.oku-okuyucu .gap-5 { gap: 20px; }
.oku-okuyucu .is-full { inline-size: 100%; }

/* Bülten okuyucusu — oku.css içindeki fb-* kurallarından üretildi. */

.fb-sahne {
  --fb-sayfa-en: 470px;
  --fb-sayfa-boy: 640px;

  position: relative;
  inline-size: 100%;
  display: flex;
  justify-content: center;
  perspective: 2600px;
  padding-block: 8px;
}

.fb-kitap {
  position: relative;
  inline-size: calc(var(--fb-sayfa-en) * 2);
  block-size: var(--fb-sayfa-boy);
  transform-style: preserve-3d;
  transition: transform 0.6s ease;
}

.fb-kitap::before {
  content: '';
  position: absolute;
  inset-block: 0;
  inset-inline-start: 50%;
  inline-size: 34px;
  transform: translateX(-50%);
  background: linear-gradient(
    90deg,
    rgb(0 0 0 / 0) 0%,
    rgb(0 0 0 / 0.16) 42%,
    rgb(0 0 0 / 0.3) 50%,
    rgb(0 0 0 / 0.16) 58%,
    rgb(0 0 0 / 0) 100%
  );
  z-index: 500;
  pointer-events: none;
}

.fb-kitap::after {
  content: '';
  position: absolute;
  inset-block-end: -22px;
  inset-inline: 4%;
  block-size: 26px;
  background: radial-gradient(ellipse at center, rgb(0 0 0 / 0.3) 0%, rgb(0 0 0 / 0) 72%);
  filter: blur(3px);
  pointer-events: none;
}

.fb-yaprak {
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 50%;
  inline-size: var(--fb-sayfa-en);
  block-size: 100%;
  transform-origin: left center;
  transform-style: preserve-3d;
  transition: transform 0.85s cubic-bezier(0.42, 0.05, 0.25, 1);
  will-change: transform;
}

.fb-yaprak[data-cevrili='true'] {
  transform: rotateY(-180deg);
}

.fb-yuz {
  position: absolute;
  inset: 0;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  overflow: hidden;
  background: #fffdf8;
  color: #22303f;
  box-shadow: inset 0 0 40px rgb(120 100 70 / 0.08);
}

[data-mui-color-scheme='dark'] .fb-yuz {
  background: #f7f4ec;
}

.fb-yuz-on {
  border-start-end-radius: 6px;
  border-end-end-radius: 6px;
  /* Sırta yakın taraf koyulaşır */
  background-image: linear-gradient(90deg, rgb(0 0 0 / 0.07) 0%, rgb(0 0 0 / 0) 9%);
}

.fb-yuz-arka {
  transform: rotateY(180deg);
  border-start-start-radius: 6px;
  border-end-start-radius: 6px;
  background-image: linear-gradient(270deg, rgb(0 0 0 / 0.07) 0%, rgb(0 0 0 / 0) 9%);
}

.fb-sayfa-ic {
  block-size: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.fb-sayfa-govde {
  flex: 1;
  overflow: hidden;
  padding: 24px 26px 8px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13.5px;
  line-height: 1.7;
  color: #33475b;
}

.fb-sayfa-govde table {
  inline-size: 100% !important;
  max-inline-size: 100% !important;
}

.fb-sayfa-govde img {
  max-inline-size: 100%;
  block-size: auto;
}

.fb-sayfa-govde h3 {
  font-family: Georgia, 'Times New Roman', serif;
}

.fb-sayfa-alt {
  padding: 8px 30px 16px;
  font-family: Georgia, serif;
  font-size: 11px;
  letter-spacing: 1px;
  color: #98a4b5;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-block-start: 1px solid rgb(0 0 0 / 0.06);
  margin-inline: 30px;
  padding-inline: 0;
}

.fb-kapak {
  block-size: 100%;
  position: relative;
  display: flex;
  align-items: flex-end;
  background: var(--oku-lacivert);
}

.fb-kapak img {
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}

.fb-kapak-yazi {
  position: relative;
  z-index: 2;
  inline-size: 100%;
  padding: 26px;
  background: linear-gradient(0deg, rgb(5 20 40 / 0.86) 0%, rgb(5 20 40 / 0) 100%);
  color: #fff;
}

.fb-arka-kapak {
  block-size: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 10px;
  padding: 40px;
  background: linear-gradient(135deg, #092a52 0%, #0e3a6e 100%);
  color: #fff;
}

.fb-kontrol {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.fb-ok {
  position: absolute;
  inset-block-start: 50%;
  transform: translateY(-50%);
  z-index: 600;
  inline-size: 58px;
  block-size: 58px;
  border-radius: 50%;
  border: 0;
  background: linear-gradient(135deg, #0e3a6e 0%, #1b57a0 100%);
  color: #ffffff;
  display: grid;
  place-items: center;
  cursor: pointer;
  box-shadow: 0 10px 26px rgb(9 42 82 / 0.34);
  transition: transform 0.2s, box-shadow 0.2s, opacity 0.2s;
}

.fb-ok i {
  font-size: 30px;
  line-height: 1;
}

.fb-ok:hover:not(:disabled) {
  transform: translateY(-50%) scale(1.08);
  box-shadow: 0 14px 32px rgb(9 42 82 / 0.42);
}

.fb-ok:disabled {
  opacity: 0.35;
  cursor: default;
}

.fb-ok-sol {
  /* Kenara taşırılmıyor: dış kap yuvarlak köşeli olduğu için ok kesiliyordu. */
  inset-inline-start: 10px;
}

.fb-ok-sag {
  inset-inline-end: 10px;
}

.fb-tam-ekran {
  position: fixed;
  inset: 0;
  z-index: 1400;
  background: #0a1420;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 20px;
}

.fb-sahne[data-tek='true'] .fb-kitap {
  inline-size: var(--fb-sayfa-en);
}

.fb-sahne[data-tek='true'] .fb-kitap::before {
  display: none;
}

.fb-sahne[data-tek='true'] .fb-yaprak {
  inset-inline-start: 0;
  transform-origin: center center;
  transition: opacity 0.32s ease;
  transform: none !important;
}

.fb-sahne[data-tek='true'] .fb-yaprak[data-gizli='true'] {
  opacity: 0;
  pointer-events: none;
}

.fb-sahne[data-tek='true'] .fb-yuz-arka {
  transform: none;
}

  .fb-yaprak {
    transition-duration: 0.01ms;
  }

@media (prefers-reduced-motion: reduce) {
  .fb-yaprak {
    transition-duration: 0.01ms;
  }
}
/* ── Fareyle sayfa çevirme ──────────────────────────────────────────
   Kitabın kenarından tutulup sürüklenebildiği belli olsun. */
.fb-kitap {
  cursor: grab;
  touch-action: pan-y;
}

.fb-kitap[data-surukleniyor='true'] {
  cursor: grabbing;
}

.fb-kitap[data-surukleniyor='true'] .fb-yuz {
  user-select: none;
}

@media (max-width: 640px) {
  .fb-ok {
    inline-size: 46px;
    block-size: 46px;
  }

  .fb-ok i {
    font-size: 24px;
  }
}
