@charset "UTF-8";
/* =========================================================================
   Prof. Dr. Yavuz Erdoğan — akademik site
   Tasarım sistemi. Harici yazı tipi / harici kaynak KULLANILMAZ:
   ziyaretçi verisi hiçbir üçüncü tarafa gitmez (KVKK m. 5, 9).
   ========================================================================= */

/* ---------- 1. Değişkenler ---------- */
:root {
  /* Kağıt ve mürekkep */
  --kagit:        #FBFAF7;
  --kagit-2:      #F4F1EA;
  --kagit-3:      #EDE8DE;
  --murekkep:     #17181A;
  --murekkep-2:   #3A3B3E;
  --sessiz:       #6E6A63;
  --cizgi:        #E0DACE;
  --cizgi-koyu:   #C9C1B2;

  /* Vurgu: koyu bordo — akademik hukuk yayıncılığının rengi */
  --vurgu:        #6E1F2E;
  --vurgu-acik:   #8E2E40;
  --vurgu-zemin:  #F6EDEE;

  /* Tipografi */
  --serif: Georgia, "Iowan Old Style", "Palatino Linotype", "Book Antiqua",
           "Times New Roman", serif;
  --sans:  -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
           "Helvetica Neue", Arial, sans-serif;

  /* Ölçek */
  --olcu:      68rem;
  --olcu-dar:  42rem;
  --bosluk:    clamp(3rem, 7vw, 6rem);
  --yuvarlak:  4px;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-tema="acik"]) {
    --kagit: #141311; --kagit-2: #1C1B18; --kagit-3: #24221E;
    --murekkep: #EDEAE3; --murekkep-2: #C6C1B7; --sessiz: #9A948A;
    --cizgi: #302D28; --cizgi-koyu: #423E37;
    --vurgu: #D98A99; --vurgu-acik: #E9A6B3; --vurgu-zemin: #2A1D20;
  }
}
:root[data-tema="koyu"] {
  --kagit: #141311; --kagit-2: #1C1B18; --kagit-3: #24221E;
  --murekkep: #EDEAE3; --murekkep-2: #C6C1B7; --sessiz: #9A948A;
  --cizgi: #302D28; --cizgi-koyu: #423E37;
  --vurgu: #D98A99; --vurgu-acik: #E9A6B3; --vurgu-zemin: #2A1D20;
}

/* ---------- 1b. Palet seçenekleri ----------
   Üç palet arasında geçiş yapılabilir. Seçim tarayıcıda saklanır.
   A) kagit  — kırık beyaz kâğıt + bordo (varsayılan, editoryal)
   B) gece   — gece mavisi + şampanya altını (yüksek kontrast, otoriter)
   C) murekkep — mürekkep siyahı + antik pirinç (koyu, ağırbaşlı)
   ------------------------------------------------------------------ */
:root[data-palet="gece"] {
  --kagit:      #0F172A;
  --kagit-2:    #16203A;
  --kagit-3:    #1E293B;
  --murekkep:   #F1F5F9;
  --murekkep-2: #CBD5E1;
  --sessiz:     #94A3B8;
  --cizgi:      #24324D;
  --cizgi-koyu: #35476B;
  --vurgu:      #D4AF37;
  --vurgu-acik: #E3C55C;
  --vurgu-zemin:#1E2A44;
}
:root[data-palet="murekkep"] {
  --kagit:      #14161A;
  --kagit-2:    #1B1E23;
  --kagit-3:    #23262C;
  --murekkep:   #E9E5DC;
  --murekkep-2: #C4BFB4;
  --sessiz:     #8D887E;
  --cizgi:      #2A2D33;
  --cizgi-koyu: #3C4048;
  --vurgu:      #C9A227;
  --vurgu-acik: #DBB847;
  --vurgu-zemin:#241F14;
}
/* Koyu paletlerde portre tam kontrastla dursun */
:root[data-palet="gece"] .portre img,
:root[data-palet="murekkep"] .portre img { filter: grayscale(1) contrast(1.08) brightness(1.02); }
:root[data-palet="gece"] .dugme,
:root[data-palet="murekkep"] .dugme { background: var(--vurgu); border-color: var(--vurgu); color: #14161A; }
:root[data-palet="gece"] .dugme:hover,
:root[data-palet="murekkep"] .dugme:hover { background: var(--vurgu-acik); border-color: var(--vurgu-acik); color: #14161A; }
:root[data-palet="gece"] .dugme-ikincil,
:root[data-palet="murekkep"] .dugme-ikincil { background: transparent; color: var(--murekkep); border-color: var(--cizgi-koyu); }

/* Palet seçici */
.palet-secici { display: flex; gap: .3rem; align-items: center; margin-left: 1rem; }
.palet-secici button {
  width: 1.5rem; height: 1.5rem; min-height: 0; border-radius: 50%; cursor: pointer;
  border: 1px solid var(--cizgi-koyu); padding: 0; font-size: 0; line-height: 0;
}
.palet-secici button[aria-pressed="true"] { outline: 2px solid var(--vurgu); outline-offset: 2px; }
.palet-secici .p-kagit    { background: linear-gradient(135deg, #FBFAF7 55%, #6E1F2E 55%); }
.palet-secici .p-gece     { background: linear-gradient(135deg, #0F172A 55%, #D4AF37 55%); }
.palet-secici .p-murekkep { background: linear-gradient(135deg, #14161A 55%, #C9A227 55%); }
@media (max-width: 860px) { .palet-secici { order: 3; margin-left: .5rem; } }

/* ---------- 2. Temel ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Sabit üst menünün bağlantıyla gelinen başlığı örtmesini engeller */
:target, h1, h2, h3, section, article { scroll-margin-top: 5.5rem; }

body {
  margin: 0;
  background: var(--kagit);
  color: var(--murekkep);
  font: 400 1.0625rem/1.7 var(--serif);
  font-kerning: normal;
  text-rendering: optimizeLegibility;
  overflow-wrap: break-word;
}

h1, h2, h3, h4 { font-family: var(--serif); font-weight: 700; line-height: 1.2; margin: 0 0 .6em; letter-spacing: -.011em; }
h1 { font-size: clamp(2rem, 4.6vw, 3.15rem); letter-spacing: -.021em; }
h2 { font-size: clamp(1.5rem, 2.9vw, 2.05rem); }
h3 { font-size: clamp(1.15rem, 2vw, 1.35rem); }
p  { margin: 0 0 1.15em; }
p:last-child { margin-bottom: 0; }

a { color: inherit; text-decoration-color: var(--cizgi-koyu); text-underline-offset: .18em; }
a:hover { text-decoration-color: var(--vurgu); color: var(--vurgu); }
:focus-visible { outline: 2px solid var(--vurgu); outline-offset: 3px; border-radius: 2px; }

img { max-width: 100%; height: auto; display: block; }
hr { border: 0; border-top: 1px solid var(--cizgi); margin: var(--bosluk) 0; }

/* Ekran okuyucu / atlama bağlantısı */
.gizli-erisilebilir {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.atla {
  position: absolute; left: -9999px; top: 0; z-index: 100;
  background: var(--murekkep); color: var(--kagit); padding: .75rem 1.25rem;
  font-family: var(--sans); font-size: .9rem;
}
.atla:focus { left: .5rem; top: .5rem; }

/* ---------- 3. Düzen ---------- */
.kap      { width: min(100% - 2.5rem, var(--olcu)); margin-inline: auto; }
.kap-dar  { width: min(100% - 2.5rem, var(--olcu-dar)); margin-inline: auto; }
.bolum    { padding-block: var(--bosluk); }
.bolum + .bolum { padding-top: 0; }

.bolum-basi { margin-bottom: 2.5rem; }
.bolum-basi .ust-etiket { margin-bottom: .5rem; }
.bolum-basi h2 { margin-bottom: .3em; }
.bolum-basi .aciklama { color: var(--sessiz); max-width: 46ch; margin: 0; }

.ust-etiket {
  font-family: var(--sans); font-size: .72rem; font-weight: 600;
  letter-spacing: .13em; text-transform: uppercase; color: var(--vurgu);
  display: block;
}

/* ---------- 4. Üst menü ---------- */
.ust {
  position: sticky; top: 0; z-index: 50;
  background: color-mix(in srgb, var(--kagit) 88%, transparent);
  backdrop-filter: saturate(1.6) blur(10px);
  border-bottom: 1px solid var(--cizgi);
}
.ust-ic { display: flex; align-items: center; gap: 1.5rem; min-height: 4.25rem; }
.marka { font-family: var(--serif); font-weight: 700; font-size: 1.02rem; letter-spacing: -.01em; text-decoration: none; line-height: 1.25; }
.marka span { display: block; font-family: var(--sans); font-weight: 500; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; color: var(--sessiz); margin-top: .18rem; }

.gezinme { margin-left: auto; }
.gezinme ul { display: flex; gap: 1.6rem; list-style: none; margin: 0; padding: 0; }
.gezinme a {
  font-family: var(--sans); font-size: .84rem; font-weight: 500;
  letter-spacing: .02em; text-decoration: none; color: var(--murekkep-2);
  padding-block: .3rem; border-bottom: 2px solid transparent;
}
.gezinme a:hover, .gezinme a[aria-current="page"] { color: var(--vurgu); border-bottom-color: var(--vurgu); }

.menu-dugme {
  display: none; margin-left: auto; background: none; border: 1px solid var(--cizgi);
  border-radius: var(--yuvarlak); padding: .5rem .8rem; cursor: pointer;
  font-family: var(--sans); font-size: .85rem; color: inherit;
}

@media (max-width: 860px) {
  .menu-dugme { display: block; }
  .gezinme {
    position: fixed; inset: 4.25rem 0 auto 0; background: var(--kagit);
    border-bottom: 1px solid var(--cizgi); padding: 1rem 1.25rem 1.5rem;
    display: none;
  }
  .gezinme[data-acik="evet"] { display: block; }
  .gezinme ul { flex-direction: column; gap: 0; }
  .gezinme a { display: block; padding: .85rem 0; border-bottom: 1px solid var(--cizgi); font-size: 1rem; }
}

/* ---------- 5. Giriş bölümü ---------- */
.giris { padding-block: clamp(3rem, 7vw, 5.5rem) var(--bosluk); }
.giris-izgara { display: grid; grid-template-columns: minmax(0,1fr) 20rem; gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.giris h1 { margin-bottom: .18em; }

/* Ad altındaki mesleki unvan satırı */
.giris .unvan-satiri {
  font-family: var(--sans);
  font-size: clamp(.95rem, 1.7vw, 1.22rem);
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--vurgu);
  margin: 0 0 .9rem;
}

/* Çalışma alanları satırı */
.giris .alan-satiri {
  font-size: clamp(.95rem, 1.35vw, 1.05rem);
  line-height: 1.6;
  color: var(--murekkep-2);
  max-width: 52ch;
  margin: 0 0 1.4rem;
  padding-bottom: 1.4rem;
  border-bottom: 1px solid var(--cizgi);
}
.giris .alan-satiri span { display: block; color: var(--sessiz); font-size: .93em; margin-top: .15rem; }

.giris .tanim { font-size: clamp(1.05rem, 1.6vw, 1.2rem); color: var(--murekkep-2); max-width: 54ch; }
.giris .kunye-satiri { font-family: var(--sans); font-size: .85rem; color: var(--sessiz); margin-top: 1.5rem; line-height: 1.9; }
.giris .kunye-satiri strong { color: var(--murekkep-2); font-weight: 600; }

.portre { position: relative; }
.portre img {
  width: 100%; border-radius: var(--yuvarlak);
  background: var(--kagit-2);
  filter: grayscale(1) contrast(1.03);
  transition: filter .5s ease;
}
.portre:hover img { filter: grayscale(0) contrast(1); }
@media (max-width: 780px) {
  .giris-izgara { grid-template-columns: 1fr; }
  .portre { max-width: 15rem; order: -1; }
}

/* ---------- 6. Düğmeler ---------- */
.dugmeler { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
.dugme {
  font-family: var(--sans); font-size: .88rem; font-weight: 600;
  padding: .78rem 1.4rem; border-radius: var(--yuvarlak);
  text-decoration: none; border: 1px solid var(--murekkep);
  background: var(--murekkep); color: var(--kagit);
  display: inline-flex; align-items: center; gap: .5rem;
  cursor: pointer; transition: background .18s, color .18s, border-color .18s;
}
.dugme:hover { background: var(--vurgu); border-color: var(--vurgu); color: #fff; }
.dugme-ikincil { background: transparent; color: var(--murekkep); border-color: var(--cizgi-koyu); }
.dugme-ikincil:hover { background: transparent; color: var(--vurgu); border-color: var(--vurgu); }

/* ---------- 7. Alıntı kuşağı ---------- */
.alinti-kusak { background: var(--kagit-2); border-block: 1px solid var(--cizgi); padding-block: clamp(2.5rem, 5vw, 3.5rem); }
.alinti { text-align: center; max-width: 44rem; margin-inline: auto; }
.alinti blockquote { margin: 0; font-size: clamp(1.15rem, 2.2vw, 1.5rem); font-style: italic; line-height: 1.5; }
.alinti figcaption { font-family: var(--sans); font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; color: var(--sessiz); margin-top: 1.1rem; }
.alinti figcaption cite { font-style: normal; }
.alinti .kaynak { display: block; text-transform: none; letter-spacing: 0; font-size: .78rem; margin-top: .3rem; opacity: .8; }
.alinti[data-gecis="evet"] { transition: opacity .6s ease; }

/* ---------- 8. Yayın listesi ---------- */
.yayin-listesi { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--cizgi); }
.yayin {
  border-bottom: 1px solid var(--cizgi);
  display: grid; grid-template-columns: 4.5rem minmax(0,1fr) auto;
  gap: 1.5rem; align-items: baseline; padding: 1.5rem 0;
}
.yayin:hover { background: color-mix(in srgb, var(--kagit-2) 55%, transparent); }
.yayin .yil { font-family: var(--sans); font-size: .82rem; font-weight: 600; color: var(--sessiz); font-variant-numeric: tabular-nums; }
.yayin h3 { margin: 0 0 .3rem; font-size: 1.12rem; line-height: 1.35; }
.yayin h3 a { text-decoration: none; }
.yayin h3 a:hover { text-decoration: underline; text-decoration-color: var(--vurgu); }
.yayin .kunye { font-family: var(--sans); font-size: .84rem; color: var(--sessiz); font-style: normal; }
.yayin .kunye em { font-style: italic; }
.tur {
  display: inline-block;
  font-family: var(--sans); font-size: .68rem; font-weight: 600;
  letter-spacing: .09em; text-transform: uppercase; color: var(--vurgu);
  background: var(--vurgu-zemin); padding: .3rem .6rem; border-radius: 999px;
  white-space: nowrap; line-height: 1.4; margin-right: .35rem;
}
@media (max-width: 700px) {
  .yayin { grid-template-columns: 1fr; gap: .45rem; }
  .yayin .tur { justify-self: start; }
}

/* ---------- 9. Kapak ızgarası ---------- */
.kapak-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr)); gap: 1.75rem 1.5rem; }
.kapak-oge { text-align: left; }
.kapak-cerceve {
  aspect-ratio: 2 / 3; background: var(--kagit-3);
  border: 1px solid var(--cizgi); border-radius: 2px; overflow: hidden;
  display: grid; place-items: center; margin-bottom: .7rem;
  box-shadow: 0 1px 2px rgba(0,0,0,.05), 0 8px 22px -12px rgba(0,0,0,.28);
  transition: transform .22s ease, box-shadow .22s ease;
}
.kapak-oge:hover .kapak-cerceve { transform: translateY(-3px); box-shadow: 0 2px 4px rgba(0,0,0,.06), 0 16px 30px -14px rgba(0,0,0,.35); }
.kapak-cerceve img { width: 100%; height: 100%; object-fit: cover; }
.kapak-oge .ad { font-size: .92rem; line-height: 1.35; margin: 0 0 .2rem; font-weight: 700; }
.kapak-oge .ad a { text-decoration: none; }
.kapak-oge .alt { font-family: var(--sans); font-size: .76rem; color: var(--sessiz); }

/* ---------- 10. Alan kartları ---------- */
/* gap ile ayrılır — boş hücre artefaktı oluşmaz */
.alan-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); gap: 1rem; }
.alan-kart {
  background: var(--kagit); padding: 1.5rem 1.4rem; text-decoration: none; display: block;
  border: 1px solid var(--cizgi); border-radius: var(--yuvarlak);
  transition: background .18s, border-color .18s;
}
.alan-kart:hover { background: var(--kagit-2); border-color: var(--cizgi-koyu); color: inherit; }
.alan-kart .sayi { font-family: var(--sans); font-size: .74rem; font-weight: 600; color: var(--vurgu); letter-spacing: .05em; }
.alan-kart h3 { font-size: 1.05rem; margin: .45rem 0 .3rem; }
.alan-kart p { font-family: var(--sans); font-size: .82rem; color: var(--sessiz); margin: 0; }

/* ---------- 11. Etkinlik ızgarası ---------- */
.etkinlik-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr)); gap: 2rem 1.5rem; }
.etkinlik .afis {
  aspect-ratio: 4 / 5; background: var(--kagit-3); border: 1px solid var(--cizgi);
  overflow: hidden; border-radius: 2px; margin-bottom: .8rem;
}
.etkinlik .afis img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.etkinlik:hover .afis img { transform: scale(1.03); }
.etkinlik .tarih { font-family: var(--sans); font-size: .74rem; font-weight: 600; letter-spacing: .06em; color: var(--vurgu); text-transform: uppercase; }
.etkinlik h3 { font-size: .98rem; line-height: 1.35; margin: .35rem 0 0; }

/* ---------- 12. Yazı gövdesi ---------- */
.yazi { max-width: 40rem; }
.yazi h2 { font-size: clamp(1.25rem, 2.3vw, 1.5rem); margin-top: 2.4em; padding-top: 0; }
.yazi h2:first-child { margin-top: 0; }
.yazi p { font-size: 1.09rem; line-height: 1.78; }
.yazi ul, .yazi ol { padding-left: 1.3em; margin: 0 0 1.3em; }
.yazi li { margin-bottom: .5em; line-height: 1.7; }
.yazi > *:first-child { margin-top: 0; }

.yazi-basi { border-bottom: 1px solid var(--cizgi); padding-bottom: 2rem; margin-bottom: 2.5rem; }
.yazi-basi h1 { font-size: clamp(1.7rem, 3.6vw, 2.5rem); }
.yazi-kunye { font-family: var(--sans); font-size: .87rem; color: var(--sessiz); line-height: 1.8; }
.yazi-kunye strong { color: var(--murekkep-2); font-weight: 600; }
.yazi-kunye a { color: var(--vurgu); }

.izmerkezi { font-family: var(--sans); font-size: .8rem; color: var(--sessiz); margin-bottom: 1.5rem; }
.izmerkezi a { text-decoration: none; }
.izmerkezi span { margin-inline: .45rem; opacity: .5; }

/* Sesli okuma çubuğu */
.sesli {
  display: flex; align-items: center; gap: .6rem; flex-wrap: wrap;
  background: var(--kagit-2); border: 1px solid var(--cizgi);
  border-radius: var(--yuvarlak); padding: .7rem .9rem; margin-bottom: 2rem;
  font-family: var(--sans); font-size: .82rem;
}
.sesli button {
  font: inherit; font-weight: 600; cursor: pointer; padding: .4rem .85rem;
  border: 1px solid var(--cizgi-koyu); border-radius: var(--yuvarlak);
  background: var(--kagit); color: inherit;
}
.sesli button:hover { border-color: var(--vurgu); color: var(--vurgu); }
.sesli .not { color: var(--sessiz); margin-left: auto; }

/* ---------- 13. Sıkça sorulan sorular ---------- */
.sss { border-top: 1px solid var(--cizgi); }
.sss details { border-bottom: 1px solid var(--cizgi); }
.sss summary {
  cursor: pointer; list-style: none; padding: 1.25rem 2.5rem 1.25rem 0;
  position: relative; font-weight: 700; font-size: 1.05rem; line-height: 1.4;
}
.sss summary::-webkit-details-marker { display: none; }
.sss summary::after {
  content: "+"; position: absolute; right: .4rem; top: 50%; transform: translateY(-50%);
  font-family: var(--sans); font-size: 1.35rem; font-weight: 400; color: var(--vurgu); line-height: 1;
}
.sss details[open] summary::after { content: "−"; }
.sss summary:hover { color: var(--vurgu); }
.sss .cevap { padding: 0 2.5rem 1.5rem 0; max-width: 42rem; }
.sss .cevap p { font-size: 1.02rem; }
.sss .dayanak { font-family: var(--sans); font-size: .8rem; color: var(--sessiz); border-left: 2px solid var(--cizgi-koyu); padding-left: .9rem; margin-top: 1.1rem; }

/* ---------- 14. Formlar ---------- */
.form-izgara { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1.1rem; }
.alan { display: flex; flex-direction: column; gap: .4rem; }
.alan.tam { grid-column: 1 / -1; }
.alan label { font-family: var(--sans); font-size: .82rem; font-weight: 600; }
.alan .ipucu { font-family: var(--sans); font-size: .76rem; color: var(--sessiz); font-weight: 400; }
.alan input, .alan select, .alan textarea {
  font: inherit; font-size: .98rem; padding: .72rem .85rem;
  border: 1px solid var(--cizgi-koyu); border-radius: var(--yuvarlak);
  background: var(--kagit); color: var(--murekkep); width: 100%;
}
.alan textarea { min-height: 10rem; resize: vertical; line-height: 1.6; }
.alan input:focus, .alan select:focus, .alan textarea:focus { border-color: var(--vurgu); outline: none; box-shadow: 0 0 0 3px var(--vurgu-zemin); }
.onay { display: flex; gap: .7rem; align-items: flex-start; font-family: var(--sans); font-size: .84rem; line-height: 1.6; }
.onay input { width: 1.05rem; height: 1.05rem; margin-top: .18rem; flex: none; accent-color: var(--vurgu); }
.tuzak { position: absolute !important; left: -9999px !important; }
@media (max-width: 640px) { .form-izgara { grid-template-columns: 1fr; } }

.form-uyari { font-family: var(--sans); font-size: .85rem; padding: .9rem 1.1rem; border-radius: var(--yuvarlak); margin-bottom: 1.25rem; }
.form-uyari.bilgi  { background: var(--kagit-2); border: 1px solid var(--cizgi); color: var(--murekkep-2); }
.form-uyari.basari { background: #EAF3EC; border: 1px solid #BBD9C2; color: #17492A; }
.form-uyari.hata   { background: #FBEDEE; border: 1px solid #EBC3C7; color: #7A1F29; }

/* ---------- 15. Alt bilgi ---------- */
.alt { background: var(--kagit-2); border-top: 1px solid var(--cizgi); margin-top: var(--bosluk); padding-block: 3.5rem 2rem; font-family: var(--sans); font-size: .86rem; }
.alt-izgara { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 2.5rem; }
.alt h4 { font-family: var(--sans); font-size: .72rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; color: var(--sessiz); margin-bottom: 1rem; }
.alt ul { list-style: none; margin: 0; padding: 0; }
.alt li { margin-bottom: .55rem; }
.alt a { text-decoration: none; color: var(--murekkep-2); }
.alt a:hover { color: var(--vurgu); }
.alt .kunye-blok { color: var(--sessiz); line-height: 1.85; }
.alt .kunye-blok strong { color: var(--murekkep-2); }
.alt-son { border-top: 1px solid var(--cizgi); margin-top: 2.5rem; padding-top: 1.5rem; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; color: var(--sessiz); font-size: .8rem; }
.uyari-metni { font-size: .8rem; color: var(--sessiz); line-height: 1.7; margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--cizgi); }
@media (max-width: 780px) { .alt-izgara { grid-template-columns: 1fr; gap: 2rem; } }

/* ---------- 16. Çerez bandı ---------- */
.cerez {
  position: fixed; inset: auto 1rem 1rem 1rem; z-index: 80; max-width: 34rem;
  background: var(--kagit); border: 1px solid var(--cizgi-koyu); border-radius: var(--yuvarlak);
  box-shadow: 0 18px 45px -18px rgba(0,0,0,.4); padding: 1.35rem 1.5rem;
  font-family: var(--sans); font-size: .86rem; line-height: 1.65;
}
.cerez[hidden] { display: none; }
.cerez h2 { font-family: var(--sans); font-size: .95rem; margin: 0 0 .5rem; }
.cerez p { margin: 0 0 1rem; color: var(--murekkep-2); }
.cerez .dugmeler { margin-top: 0; }
.cerez .dugme { padding: .55rem 1.1rem; font-size: .82rem; }

/* ---------- 17. Yardımcılar ---------- */
.merkez { text-align: center; }
.sessiz-metin { color: var(--sessiz); }
.bag-daha { font-family: var(--sans); font-size: .84rem; font-weight: 600; text-decoration: none; color: var(--vurgu); white-space: nowrap; }
.bag-daha::after { content: " →"; }
.bolum-basi-satir { display: flex; align-items: flex-end; justify-content: space-between; gap: 1.5rem; flex-wrap: wrap; }

.suzgec { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2rem; }
.suzgec button {
  font-family: var(--sans); font-size: .82rem; font-weight: 500; cursor: pointer;
  padding: .45rem .95rem; border: 1px solid var(--cizgi-koyu); border-radius: 999px;
  background: transparent; color: var(--murekkep-2);
}
.suzgec button:hover { border-color: var(--vurgu); color: var(--vurgu); }
.suzgec button[aria-pressed="true"] { background: var(--murekkep); border-color: var(--murekkep); color: var(--kagit); }

/* ---------- 17b. Dokunma hedefleri ----------
   WCAG 2.2 — 2.5.8 asgari 24x24 CSS piksel; Apple ve Android kılavuzları
   44 piksel önerir. Dar ekranda tüm tıklanabilir öğeleri 44 piksele çıkarıyoruz. */
@media (pointer: coarse), (max-width: 860px) {
  .gezinme a { min-height: 44px; display: flex; align-items: center; }
  .menu-dugme { min-height: 44px; padding-inline: 1rem; }
  .bag-daha {
    min-height: 44px; display: inline-flex; align-items: center;
    padding-inline: .1rem;
  }
  .yayin h3 a, .kapak-oge .ad a, .etkinlik h3 a {
    display: inline-block; padding-block: .45rem;
  }
  .alt li { margin-bottom: 0; }
  .alt li a { min-height: 44px; display: inline-flex; align-items: center; }
  .alt .kunye-blok a { min-height: 44px; display: inline-flex; align-items: center; }
  .izmerkezi a { min-height: 44px; display: inline-flex; align-items: center; }
  .sss summary { min-height: 44px; }
  .sesli button { min-height: 44px; }
  .suzgec button { min-height: 44px; }
  .dugme { min-height: 48px; }
  .onay input { width: 1.35rem; height: 1.35rem; }
}

/* ---------- 18. Yazdırma ---------- */
@media print {
  .ust, .alt, .cerez, .sesli, .dugmeler, .suzgec { display: none !important; }
  body { background: #fff; color: #000; font-size: 11pt; }
  .kap, .kap-dar { width: 100%; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9pt; color: #555; }
}

/* ---------- Dil secici (cok dilli altyapi, 14.08.2026) ----------
   Ayrik, cerceveli hap tasarimi: aktif dil dolgulu, digerleri sade.
   Basliktaki palet dugmelerinden gorsel olarak net bicimde ayrilir. */
.dil-secici{display:inline-flex;align-items:center;gap:.15rem;border:1.5px solid var(--vurgu);border-radius:999px;padding:.28rem .28rem .28rem 0;margin-left:0;flex:none;box-shadow:0 2px 10px rgba(0,0,0,.18)}
.dil-secici::before{content:"🌐";font-size:1.05rem;line-height:1;margin:0 .35rem 0 .6rem}
.dil-secici a{padding:.44rem .85rem;border-radius:999px;font-size:.88rem;font-weight:700;letter-spacing:.05em;line-height:1;text-decoration:none;color:var(--murekkep);white-space:nowrap;transition:color .15s,background .15s,transform .15s}
.dil-secici a:hover{color:var(--vurgu);transform:translateY(-1px)}
.dil-secici a[aria-current="true"]{background:var(--vurgu);color:#14161A;box-shadow:0 2px 8px rgba(0,0,0,.28)}
:root:not([data-palet]) .dil-secici a[aria-current="true"]{color:#fff}
@media (max-width:860px){
  .dil-secici{order:4;width:100%;justify-content:center;margin:.6rem 0 .35rem;padding:.3rem;gap:.4rem}
  .dil-secici a{font-size:.95rem;padding:.55rem 1.05rem}
  .ust-ic{flex-wrap:wrap}
}

/* ---------- Prestij gelistirmeleri (15.08.2026) ----------
   1) Kitap kapaklari: 3B perspektif + yukselme (elevation) efekti.
   2) Mobil dokunma alanlari: 44px asgari hedef.
   3) CTA vurgusu: dugmelere derinlik ve belirginlik. */

/* 3B kitap kapaklari */
.kapak-cerceve{
  transform:perspective(1000px) rotateY(-10deg);
  transform-style:preserve-3d;
  transform-origin:left center;
  border-radius:4px;
  box-shadow:
    -4px 0 0 0 rgba(0,0,0,.18),
    -8px 4px 10px rgba(0,0,0,.22),
    12px 18px 32px rgba(0,0,0,.28);
  transition:transform .35s cubic-bezier(.2,.7,.3,1), box-shadow .35s;
  will-change:transform;
}
.kapak-oge:hover .kapak-cerceve,
.kapak-oge:focus-within .kapak-cerceve{
  transform:perspective(1000px) rotateY(-2deg) translateY(-8px);
  box-shadow:
    -2px 0 0 0 rgba(0,0,0,.14),
    -4px 3px 8px rgba(0,0,0,.18),
    16px 26px 44px rgba(0,0,0,.34);
}
.kapak-cerceve img{border-radius:4px;display:block}
@media (prefers-reduced-motion: reduce){
  .kapak-cerceve{transform:none;transition:none}
  .kapak-oge:hover .kapak-cerceve{transform:none}
}

/* CTA belirginligi */
.dugme{
  min-height:44px;
  padding:.8rem 1.7rem;
  font-weight:600;
  letter-spacing:.03em;
  box-shadow:0 2px 6px rgba(0,0,0,.22);
  transition:transform .18s, box-shadow .18s;
}
.dugme:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.3)}
.bag-daha{min-height:44px;display:inline-flex;align-items:center}

/* Mobil dokunma hedefleri */
@media (max-width:860px){
  .menu-dugme{min-height:44px;min-width:72px;padding:.6rem 1rem;font-size:1rem}
  .palet-secici button{min-width:44px;min-height:32px}
  .gezinme a{min-height:48px;display:flex;align-items:center}
  .dugme{width:100%;justify-content:center;display:inline-flex;text-align:center}
}
