/* Tora Kaynakları — site stilleri
   Renk: tekhelet mavisi ve mürekkep; altın yalnızca sayılar ve İbranice vurgular için. */

:root {
  --kagit: #F3F5F8;
  --yuzey: #FFFFFF;
  --murekkep: #18213A;
  --soluk: #56607A;
  --tekhelet: #2B4C9B;
  --tekhelet-koyu: #1B2F63;
  --tekhelet-acik: #E3E9F6;
  --altin: #9A7522;
  --cizgi: #D5DBE6;
  --hata: #A3312B;
  --ok: #2D6A4F;

  --yazi: "Spectral", Georgia, "Times New Roman", serif;
  --ibrani: "Frank Ruhl Libre", "SBL Hebrew", "Ezra SIL", "Times New Roman", serif;

  --genislik: 72rem;
  --metin: 42rem;
  --r: 6px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --kagit: #0F1626;
    --yuzey: #162036;
    --murekkep: #E4E8F1;
    --soluk: #A3ACC2;
    --tekhelet: #8FA8E8;
    --tekhelet-koyu: #B7C7F0;
    --tekhelet-acik: #1E2C4C;
    --altin: #D4B062;
    --cizgi: #2A3654;
    --hata: #F08A80;
    --ok: #7FC8A0;
  }
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--kagit);
  color: var(--murekkep);
  font-family: var(--yazi);
  font-size: 1.125rem;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
}
img, svg { max-width: 100%; }
a { color: var(--tekhelet); text-underline-offset: .18em; text-decoration-thickness: 1px; }
a:hover { color: var(--tekhelet-koyu); text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--tekhelet); outline-offset: 2px; border-radius: 2px; }
h1, h2, h3 { line-height: 1.2; font-weight: 600; margin: 0 0 .5em; }
h1 { font-size: clamp(2rem, 4.5vw, 2.9rem); letter-spacing: -.01em; }
h2 { font-size: 1.6rem; }
h3 { font-size: 1.25rem; }
p { margin: 0 0 1em; }
[lang="he"], .he { font-family: var(--ibrani); }
.he-inline { font-size: 1.15em; }
.gizli { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.atla { position: absolute; left: -999px; top: .5rem; background: var(--yuzey); padding: .5rem 1rem; z-index: 50; }
.atla:focus { left: .5rem; }

/* ---------- Üst bölüm ---------- */
.ust { background: var(--yuzey); border-bottom: 1px solid var(--cizgi); position: sticky; top: 0; z-index: 20; }
.ust-ic { max-width: var(--genislik); margin: 0 auto; padding: .75rem 1rem; display: flex; align-items: center; gap: 1rem; }
.logo { display: flex; flex-direction: column; text-decoration: none; color: var(--murekkep); line-height: 1.1; margin-right: auto; }
.logo:hover { color: var(--murekkep); }
.logo-he { align-self: flex-start; font-size: 1.05rem; color: var(--tekhelet); font-weight: 500; }
.logo-tr { font-size: 1.3rem; font-weight: 600; }
.ust-ara input {
  width: 18rem; font: inherit; font-size: 1rem; padding: .45rem .8rem;
  border: 1px solid var(--cizgi); border-radius: 999px; background: var(--kagit); color: var(--murekkep);
}
.menu-dugme { display: none; background: none; border: 1px solid var(--cizgi); border-radius: var(--r); color: var(--murekkep); padding: .35rem .5rem; cursor: pointer; }
.ana-menu { max-width: var(--genislik); margin: 0 auto; padding: 0 1rem; }
.ana-menu ul { list-style: none; margin: 0; padding: 0; display: flex; gap: .25rem 1.5rem; flex-wrap: wrap; }
.ana-menu a { display: block; padding: .4rem 0 .6rem; text-decoration: none; color: var(--soluk); font-size: 1rem; border-bottom: 2px solid transparent; }
.ana-menu a:hover { color: var(--murekkep); }
.ana-menu a[aria-current="page"] { color: var(--murekkep); border-bottom-color: var(--tekhelet); }

@media (max-width: 760px) {
  .ust-ara { display: none; }
  .menu-dugme { display: block; }
  .ana-menu { display: none; padding-bottom: .75rem; }
  .ana-menu.acik { display: block; }
  .ana-menu ul { flex-direction: column; gap: 0; }
  .ana-menu a { padding: .55rem 0; border-bottom: 1px solid var(--cizgi); }
  .ana-menu a[aria-current="page"] { border-bottom-color: var(--cizgi); color: var(--tekhelet); }
}

main { display: block; }
.kap { max-width: var(--genislik); margin: 0 auto; padding: 2.5rem 1rem; }
.dar { max-width: var(--metin); margin: 0 auto; padding: 2.5rem 1rem; }
.bos { text-align: left; }
.giris { color: var(--soluk); font-size: 1.2rem; max-width: 40rem; }
.yol { font-size: .95rem; color: var(--soluk); margin-bottom: 1rem; }
.yol a { color: var(--soluk); }

/* ---------- Düğmeler ---------- */
.dugme {
  display: inline-block; font: inherit; font-size: 1rem; font-weight: 500;
  background: var(--tekhelet); color: #fff; border: 1px solid var(--tekhelet);
  padding: .55rem 1.1rem; border-radius: var(--r); text-decoration: none; cursor: pointer;
}
.dugme:hover { background: var(--tekhelet-koyu); border-color: var(--tekhelet-koyu); color: #fff; text-decoration: none; }
@media (prefers-color-scheme: dark) { .dugme, .dugme:hover { color: #0F1626; } }
.dugme.ikincil { background: transparent; color: var(--tekhelet); }
.dugme.ikincil:hover { background: var(--tekhelet-acik); color: var(--tekhelet-koyu); }

/* ---------- Ana sayfa: açılış ---------- */
.acilis { border-bottom: 1px solid var(--cizgi); background: var(--yuzey); }
.acilis-ic {
  max-width: var(--genislik); margin: 0 auto; padding: 3.5rem 1rem 3rem;
  display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 3rem; align-items: end;
}
.acilis-metin h1 { margin-bottom: .4em; }
.acilis-metin p { color: var(--soluk); font-size: 1.15rem; max-width: 30rem; }
.acilis-ayet { text-align: right; margin: 0; }
.acilis-ayet .he {
  display: block; font-size: clamp(2.2rem, 5.2vw, 3.9rem); line-height: 1.45; color: var(--murekkep);
  font-weight: 500;
}
.acilis-ayet .tr { display: block; margin-top: 1rem; font-style: italic; color: var(--soluk); font-size: 1.15rem; }
.acilis-ayet .kaynak { display: block; margin-top: .4rem; font-size: .95rem; }
@media (max-width: 860px) {
  .acilis-ic { grid-template-columns: 1fr; gap: 2rem; padding-top: 2.5rem; }
  .acilis-ayet { order: -1; }
}

/* Haftanın peraşası */
.hafta { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.5rem 2.5rem; align-items: center; padding: 2rem 0; border-bottom: 1px solid var(--cizgi); }
.hafta-etiket { color: var(--soluk); font-size: 1rem; margin: 0 0 .2rem; }
.hafta h2 { font-size: 2rem; margin: 0 0 .2rem; }
.hafta h2 .he { color: var(--tekhelet); margin-left: .5rem; font-weight: 500; }
.hafta p { margin: .3rem 0 0; }
.hafta-tarih { text-align: right; color: var(--soluk); font-size: 1rem; }
.hafta-tarih strong { display: block; color: var(--murekkep); font-size: 1.2rem; font-weight: 500; }
@media (max-width: 640px) { .hafta { grid-template-columns: 1fr; } .hafta-tarih { text-align: left; } }

/* İçindekiler tarzı bölüm listesi */
.dizin { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--cizgi); }
.dizin li { border-bottom: 1px solid var(--cizgi); }
.dizin a {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .2rem 1.5rem; align-items: baseline;
  padding: 1rem .25rem; text-decoration: none; color: var(--murekkep);
}
.dizin a:hover { background: var(--tekhelet-acik); }
.dizin .ad { font-size: 1.3rem; font-weight: 500; }
.dizin .ad small { color: var(--soluk); font-weight: 400; font-size: 1rem; margin-left: .4rem; }
.dizin .he { font-size: 1.6rem; color: var(--tekhelet); text-align: right; grid-row: span 2; }
.dizin .not { color: var(--soluk); font-size: 1rem; }

.iki-sutun { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 3rem; }
@media (max-width: 860px) { .iki-sutun { grid-template-columns: 1fr; gap: 2rem; } }
.bolum-baslik { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin: 2.5rem 0 1rem; }
.bolum-baslik h2 { margin: 0; }
.bolum-baslik a { font-size: 1rem; }

/* Yazı listesi */
.yazi-liste { list-style: none; margin: 0; padding: 0; }
.yazi-liste li { padding: 1.1rem 0; border-bottom: 1px solid var(--cizgi); }
.yazi-liste h3 { margin: 0 0 .25rem; font-size: 1.3rem; }
.yazi-liste h3 a { color: var(--murekkep); text-decoration: none; }
.yazi-liste h3 a:hover { color: var(--tekhelet); text-decoration: underline; }
.yazi-liste p { margin: 0; color: var(--soluk); font-size: 1.02rem; }
.yazi-liste .kat { font-size: .92rem; color: var(--tekhelet); }

.filtre { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 0 1.5rem; padding: 0; list-style: none; }
.filtre a { display: block; padding: .3rem .85rem; border: 1px solid var(--cizgi); border-radius: 999px; text-decoration: none; color: var(--soluk); font-size: .98rem; }
.filtre a[aria-current="true"] { background: var(--tekhelet); border-color: var(--tekhelet); color: #fff; }
@media (prefers-color-scheme: dark) { .filtre a[aria-current="true"] { color: #0F1626; } }

/* ---------- Kitaplar ---------- */
.kitap-grup { margin-bottom: 3rem; }
.kitap-grup > header { display: flex; align-items: baseline; justify-content: space-between; border-bottom: 2px solid var(--murekkep); padding-bottom: .4rem; margin-bottom: .2rem; }
.kitap-grup > header h2 { margin: 0; }
.kitap-grup > header .he { font-size: 1.7rem; color: var(--tekhelet); }
.kitap-grup > p { color: var(--soluk); margin: .4rem 0 0; }

.bolumler { display: grid; grid-template-columns: repeat(auto-fill, minmax(3.3rem, 1fr)); gap: .5rem; margin: 1.5rem 0; padding: 0; list-style: none; }
.bolumler a {
  display: flex; flex-direction: column; align-items: center; justify-content: center; aspect-ratio: 1;
  border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey);
  text-decoration: none; color: var(--murekkep); font-size: 1.1rem; line-height: 1.1;
}
.bolumler a small { font-family: var(--ibrani); color: var(--altin); font-size: .85rem; }
.bolumler a:hover { border-color: var(--tekhelet); background: var(--tekhelet-acik); }
.bolumler a.cevrili { border-color: var(--tekhelet); }

/* ---------- Okuma ---------- */
.okuma-ust { border-bottom: 1px solid var(--cizgi); background: var(--yuzey); }
.okuma-ust-ic { max-width: var(--genislik); margin: 0 auto; padding: 1.5rem 1rem 1rem; }
.okuma-ust h1 { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .5rem 1rem; }
.okuma-ust h1 .he { font-size: .95em; color: var(--tekhelet); font-weight: 500; }
.okuma-ust .alt-bilgi { color: var(--soluk); margin: .3rem 0 0; font-size: 1rem; }

.arac-cubugu {
  position: sticky; top: var(--ust-yukseklik, 0px); z-index: 10; background: var(--kagit);
  border-bottom: 1px solid var(--cizgi);
}
.arac-ic { max-width: var(--genislik); margin: 0 auto; padding: .5rem 1rem; display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; font-size: .95rem; }
.arac-ic select, .arac-ic button {
  font: inherit; font-size: .95rem; padding: .3rem .6rem; border: 1px solid var(--cizgi);
  border-radius: var(--r); background: var(--yuzey); color: var(--murekkep); cursor: pointer;
}
.arac-ic button[aria-pressed="true"] { background: var(--tekhelet); color: #fff; border-color: var(--tekhelet); }
@media (prefers-color-scheme: dark) { .arac-ic button[aria-pressed="true"] { color: #0F1626; } }
.arac-grup { display: inline-flex; gap: .3rem; align-items: center; }
.arac-ic .bosluk { flex: 1; }
.gezinti { display: inline-flex; gap: .5rem; }
.gezinti a { padding: .3rem .7rem; border: 1px solid var(--cizgi); border-radius: var(--r); text-decoration: none; background: var(--yuzey); }
.gezinti a[aria-disabled="true"] { pointer-events: none; opacity: .4; }

.ayetler { max-width: var(--genislik); margin: 0 auto; padding: 1.5rem 1rem 3rem; --he-boyut: 1.75rem; }
.bolum-notu { max-width: var(--metin); background: var(--yuzey); border-left: 3px solid var(--altin); padding: 1rem 1.25rem; margin: 0 0 2rem; font-size: 1.05rem; }
.bolum-notu p:last-child { margin: 0; }
.ayet {
  display: grid; grid-template-columns: 2.5rem minmax(0, 1fr) minmax(0, 1fr); gap: .25rem 2rem;
  padding: 1rem 0; border-bottom: 1px solid var(--cizgi); align-items: start;
}
.ayet:target { background: var(--tekhelet-acik); }
.perasa-isareti { order: -1; }
.onkelos { order: 4; }
.rasi { order: 5; }
.ayet-no { order: 1; color: var(--altin); font-size: .95rem; text-decoration: none; padding-top: .45rem; font-variant-numeric: tabular-nums; }
.ayet-tr { order: 2; }
.ayet-he { order: 3; direction: rtl; text-align: right; font-family: var(--ibrani); font-size: var(--he-boyut); line-height: 1.75; }
.ayet-tr.yok { color: var(--soluk); font-style: italic; font-size: 1rem; }
.ayetler.sadece-he .ayet { grid-template-columns: 2.5rem minmax(0, 1fr); }
.ayetler.sadece-he .ayet-tr { display: none; }
.ayetler.sadece-tr .ayet { grid-template-columns: 2.5rem minmax(0, 1fr); }
.ayetler.sadece-tr .ayet-he { display: none; }
.ayetler.sadece-tr .ayet-tr { max-width: var(--metin); }
.he-kelime { cursor: pointer; border-radius: 3px; }
.he-kelime:hover { background: var(--tekhelet-acik); }
.perasa-isareti { grid-column: 1 / -1; font-size: .95rem; color: var(--tekhelet); margin-bottom: .25rem; }
.perasa-isareti a { font-weight: 600; }
.bolum-ara { margin: 2rem 0 0; font-size: 1.3rem; }
.onkelos { display: none; grid-column: 2 / -1; direction: rtl; text-align: right; font-family: var(--ibrani); font-size: calc(var(--he-boyut) * .72); line-height: 1.7; color: var(--soluk); border-right: 2px solid var(--altin); padding-right: .75rem; }
.ayetler.onkelos-acik .onkelos { display: block; }
.yorum-etiket { font-size: .8em; color: var(--altin); margin-left: .35rem; }
.rasi { grid-column: 2 / -1; font-size: 1rem; }
.rasi summary { cursor: pointer; color: var(--tekhelet); font-size: .95rem; width: max-content; }
.rasi summary:hover { text-decoration: underline; }
.rasi > div { margin-top: .5rem; padding: .75rem 1rem; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); font-family: var(--ibrani); font-size: 1.2rem; line-height: 1.75; text-align: right; }
.rasi > div p { margin: 0 0 .5rem; }
.rasi > div p:last-child { margin: 0; }
.ayetler.sadece-tr .onkelos, .ayetler.sadece-tr .rasi { display: none; }
@media (max-width: 760px) { .onkelos, .rasi { grid-column: 2; } }
@media (max-width: 760px) {
  .ayet { grid-template-columns: 1.75rem minmax(0, 1fr); gap: .35rem .75rem; }
  .ayet-he { order: 2; grid-column: 2; }
  .ayet-tr { order: 3; grid-column: 2; }
  .ayetler { --he-boyut: 1.55rem; }
  .arac-cubugu { position: static; }
}

.kelime-balon {
  position: absolute; z-index: 30; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r);
  box-shadow: 0 6px 24px rgba(24, 33, 58, .18); padding: .75rem 1rem; min-width: 13rem; font-size: 1rem;
}
.kelime-balon .he { font-size: 1.8rem; display: block; text-align: right; }
.kelime-balon .deger { font-size: 1.4rem; color: var(--altin); font-weight: 600; }

/* ---------- Makale ---------- */
.makale { max-width: var(--metin); margin: 0 auto; padding: 2.5rem 1rem 3rem; }
.makale .ust-bilgi { color: var(--soluk); font-size: 1rem; margin-bottom: 2rem; }
.makale .ozet { font-size: 1.3rem; color: var(--soluk); line-height: 1.5; }
.yazi-govde { line-height: 1.75; }
.yazi-govde h2 { margin-top: 2rem; font-size: 1.45rem; }
.yazi-govde h3 { margin-top: 1.5rem; }
.yazi-govde blockquote { margin: 1.5rem 0; padding: .25rem 0 .25rem 1.25rem; border-left: 3px solid var(--tekhelet); color: var(--soluk); font-style: italic; }
.yazi-govde [lang="he"] { font-size: 1.2em; }
.yazi-govde p > [lang="he"]:only-child { display: block; font-size: 1.9rem; text-align: right; direction: rtl; line-height: 1.6; }
.yazi-govde ul, .yazi-govde ol { padding-left: 1.3rem; }
.yazi-govde li { margin-bottom: .4rem; }
.yazi-govde table { border-collapse: collapse; width: 100%; margin: 1.5rem 0; font-size: 1rem; }
.yazi-govde th, .yazi-govde td { border-bottom: 1px solid var(--cizgi); padding: .5rem; text-align: left; }

/* ---------- Gematria ---------- */
.gem-alan { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 2.5rem; align-items: start; }
@media (max-width: 860px) { .gem-alan { grid-template-columns: 1fr; } }
.gem-giris {
  width: 100%; font-family: var(--ibrani); font-size: 2.6rem; direction: rtl; text-align: right;
  padding: .5rem 1rem; border: 2px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); color: var(--murekkep);
}
.gem-giris:focus { border-color: var(--tekhelet); outline: none; }
.klavye { display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); gap: .35rem; direction: rtl; margin: .75rem 0 0; }
.klavye button {
  font-family: var(--ibrani); font-size: 1.45rem; padding: .3rem 0; border: 1px solid var(--cizgi);
  border-radius: var(--r); background: var(--yuzey); color: var(--murekkep); cursor: pointer; line-height: 1.2;
}
.klavye button small { display: block; font-family: var(--yazi); font-size: .7rem; color: var(--altin); }
.klavye button:hover { border-color: var(--tekhelet); background: var(--tekhelet-acik); }
.klavye .ozel { font-family: var(--yazi); font-size: .95rem; }
.gem-toplam { font-size: 4.5rem; line-height: 1; color: var(--altin); font-weight: 600; font-variant-numeric: tabular-nums; margin: .5rem 0 .25rem; }
.gem-yontemler { list-style: none; padding: 0; margin: 1rem 0; }
.gem-yontemler li { display: flex; justify-content: space-between; gap: 1rem; padding: .55rem 0; border-bottom: 1px solid var(--cizgi); }
.gem-yontemler li strong { font-variant-numeric: tabular-nums; font-size: 1.2rem; }
.gem-yontemler li span small { display: block; color: var(--soluk); font-size: .9rem; }
.harf-dokumu { display: flex; flex-wrap: wrap; gap: .4rem; direction: rtl; margin: 1rem 0; min-height: 3.5rem; }
.harf-dokumu span { display: inline-flex; flex-direction: column; align-items: center; min-width: 2.6rem; padding: .25rem .35rem; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); }
.harf-dokumu b { font-family: var(--ibrani); font-size: 1.5rem; font-weight: 500; }
.harf-dokumu i { font-style: normal; font-size: .85rem; color: var(--altin); }
.esler { display: flex; flex-wrap: wrap; gap: .5rem; margin: .75rem 0; padding: 0; list-style: none; }
.esler a { display: inline-block; padding: .2rem .7rem; border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); text-decoration: none; font-family: var(--ibrani); font-size: 1.3rem; color: var(--murekkep); }
.esler a:hover { border-color: var(--tekhelet); }
.esler small { font-family: var(--yazi); font-size: .8rem; color: var(--soluk); margin-right: .3rem; }
.ornekler button { font: inherit; background: none; border: none; color: var(--tekhelet); cursor: pointer; padding: 0; text-decoration: underline; text-underline-offset: .18em; }

/* ---------- Harfler ---------- */
.harf-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr)); gap: 1rem; direction: rtl; }
.harf { direction: ltr; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); padding: 1rem 1.25rem; }
.harf-ust { display: flex; justify-content: space-between; align-items: flex-start; }
.harf-buyuk { font-family: var(--ibrani); font-size: 4rem; line-height: 1; color: var(--murekkep); }
.harf-buyuk small { font-size: 2rem; color: var(--soluk); margin-right: .35rem; }
.harf-deger { font-size: 1.6rem; color: var(--altin); font-weight: 600; font-variant-numeric: tabular-nums; }
.harf h3 { margin: .5rem 0 0; }
.harf h3 .he { color: var(--tekhelet); font-weight: 500; margin-left: .3rem; }
.harf .anlam { color: var(--soluk); margin: 0 0 .5rem; font-size: 1rem; }
.harf p:last-child { margin: 0; font-size: 1rem; }

/* ---------- Sefirot ---------- */
.sefirot-alan { display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 3rem; align-items: start; }
@media (max-width: 860px) { .sefirot-alan { grid-template-columns: 1fr; gap: 1.5rem; } .agac { max-width: 320px; margin: 0 auto; } }
.agac svg { display: block; width: 100%; height: auto; }
.agac .yol-cizgi { stroke: var(--cizgi); stroke-width: 2; }
.agac .yol-cizgi.etkin { stroke: var(--tekhelet); stroke-width: 3; }
.agac .sefira { cursor: pointer; }
.agac .sefira circle { fill: var(--yuzey); stroke: var(--tekhelet); stroke-width: 2; transition: fill .15s; }
.agac .sefira text { fill: var(--murekkep); font-family: var(--ibrani); font-size: 15px; text-anchor: middle; pointer-events: none; }
.agac .sefira text.tr { font-family: var(--yazi); font-size: 11px; fill: var(--soluk); }
.agac .sefira:hover circle, .agac .sefira:focus circle { fill: var(--tekhelet-acik); }
.agac .sefira.secili circle { fill: var(--tekhelet); }
.agac .sefira.secili text { fill: #fff; }
@media (prefers-color-scheme: dark) { .agac .sefira.secili text { fill: #0F1626; } }
.agac .sefira:focus { outline: none; }
.agac .sefira:focus-visible circle { stroke-width: 4; }
.sefira-detay { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); padding: 1.5rem; position: sticky; top: 7rem; }
.sefira-detay h2 { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; margin-bottom: .2rem; }
.sefira-detay h2 .he { font-size: 2.2rem; color: var(--tekhelet); font-weight: 500; }
.sefira-detay .anlam { color: var(--soluk); font-size: 1.15rem; margin-bottom: 1rem; }
.sefira-detay dl { display: grid; grid-template-columns: auto 1fr; gap: .4rem 1rem; margin: 1rem 0 0; font-size: 1rem; }
.sefira-detay dt { color: var(--soluk); }
.sefira-detay dd { margin: 0; }
.sefira-liste { columns: 2 16rem; column-gap: 2rem; padding: 0; list-style: none; }
.sefira-liste li { break-inside: avoid; margin-bottom: 1rem; }

/* ---------- Sözlük ---------- */
.sozluk-filtre { width: 100%; max-width: 26rem; font: inherit; padding: .55rem .9rem; border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); color: var(--murekkep); margin-bottom: 1.5rem; }
.terimler { margin: 0; }
.terim { display: grid; grid-template-columns: minmax(0, 14rem) minmax(0, 1fr); gap: .25rem 2rem; padding: 1rem 0; border-bottom: 1px solid var(--cizgi); }
.terim dt { font-weight: 600; font-size: 1.2rem; }
.terim dt .he { display: block; font-weight: 400; font-size: 1.5rem; color: var(--tekhelet); }
.terim dd { margin: 0; }
@media (max-width: 640px) { .terim { grid-template-columns: 1fr; } }

/* ---------- Arama ---------- */
.ara-form { display: flex; gap: .5rem; max-width: 34rem; margin-bottom: 2rem; }
.ara-form input { flex: 1; font: inherit; padding: .55rem .9rem; border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); color: var(--murekkep); }
.sonuc { padding: 1rem 0; border-bottom: 1px solid var(--cizgi); }
.sonuc .ref { font-size: .95rem; }
.sonuc .he { direction: rtl; text-align: right; font-size: 1.5rem; display: block; }
mark { background: #F5E2A8; color: inherit; padding: 0 .1em; border-radius: 2px; }
@media (prefers-color-scheme: dark) { mark { background: #5B4A1E; } }

/* ---------- Peraşa listesi ---------- */
.perasa-tablo { width: 100%; border-collapse: collapse; font-size: 1.02rem; }
.perasa-tablo th { text-align: left; font-weight: 500; color: var(--soluk); border-bottom: 2px solid var(--murekkep); padding: .5rem; }
.perasa-tablo td { padding: .65rem .5rem; border-bottom: 1px solid var(--cizgi); vertical-align: baseline; }
.perasa-tablo td.he { font-size: 1.35rem; color: var(--tekhelet); text-align: right; }
.perasa-tablo tr.bu-hafta td { background: var(--tekhelet-acik); }
.perasa-tablo .kitap-satir th { border-bottom: none; padding-top: 2rem; font-size: 1.3rem; color: var(--murekkep); font-weight: 600; }
@media (max-width: 640px) { .perasa-tablo .gizle-mobil { display: none; } }

/* ---------- Sayfalama, alt bölüm ---------- */
.sayfalama { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: 2rem; }
.sayfalama a, .sayfalama span { padding: .3rem .75rem; border: 1px solid var(--cizgi); border-radius: var(--r); text-decoration: none; }
.sayfalama span { background: var(--tekhelet); color: #fff; border-color: var(--tekhelet); }

.alt { border-top: 1px solid var(--cizgi); background: var(--yuzey); margin-top: 2rem; font-size: 1rem; color: var(--soluk); }
.alt-ic { max-width: var(--genislik); margin: 0 auto; padding: 2.5rem 1rem 1rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; }
.alt-logo { color: var(--murekkep); font-size: 1.2rem; font-weight: 600; }
.alt-logo span { color: var(--tekhelet); font-weight: 500; margin-right: .3rem; }
.alt ul { list-style: none; margin: 0; padding: 0; columns: 2; column-gap: 2rem; }
.alt li { margin-bottom: .3rem; }
.alt-not { max-width: var(--genislik); margin: 0 auto; padding: 1rem 1rem 2rem; font-size: .9rem; }
@media (max-width: 640px) { .alt-ic { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }
@media print {
  .ust, .arac-cubugu, .alt, .menu-dugme { display: none !important; }
  body { background: #fff; color: #000; }
}
