/* ==========================================================================
   D20 Magazin Teması — çekirdek stil
   Renkler ve fontlar ayarlardan gelir (inline --vurgu / --font-* değişkenleri).
   Aydınlık + karanlık ayrı ayrı tasarlanır (naif ters çevirme değil).
   ========================================================================== */

:root{
  /* ayarlardan gelmezse güvenli varsayılanlar */
  --vurgu:#dc303c; --vurgu-rgb:220,48,60; --vurgu-metin:#dc303c;
  --ikinci:#436dfb; --ikinci-metin:#436dfb;
  --ucuncu:#fbcc4f; --ucuncu-metin:#9c7409;
  --font-baslik:Georgia,'Times New Roman',serif;
  --font-govde:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;

  --murekkep:#15161a; --murekkep-soft:#4b4e57; --soluk:#7b7f89;
  --kagit:#fff; --yuzey:#f5f6f4; --yuzey-2:#e6e8e6;
  --cizgi:#e2e4e1; --cizgi-kuvvetli:#15161a;
  --foto-bos:linear-gradient(145deg,#d8dad6,#a9aca7);
  --olcu:1240px; --yazi-olcu:760px; --kose:4px;
}

@media (prefers-color-scheme:dark){
  :root:not([data-tema="light"]){
    --murekkep:#f3f3f0; --murekkep-soft:#c3c5cc; --soluk:#8f9299;
    --kagit:#0d0e11; --yuzey:#16181c; --yuzey-2:#1e2126;
    --cizgi:#282b31; --cizgi-kuvvetli:#f3f3f0;
    --foto-bos:linear-gradient(145deg,#3a3d42,#24262a);
    --vurgu-metin:var(--vurgu); --ikinci-metin:var(--ikinci); --ucuncu-metin:var(--ucuncu);
  }
}
:root[data-tema="dark"]{
  --murekkep:#f3f3f0; --murekkep-soft:#c3c5cc; --soluk:#8f9299;
  --kagit:#0d0e11; --yuzey:#16181c; --yuzey-2:#1e2126;
  --cizgi:#282b31; --cizgi-kuvvetli:#f3f3f0;
  --foto-bos:linear-gradient(145deg,#3a3d42,#24262a);
  --vurgu-metin:var(--vurgu); --ikinci-metin:var(--ikinci); --ucuncu-metin:var(--ucuncu);
}
:root[data-tema="light"]{
  --murekkep:#15161a; --murekkep-soft:#4b4e57; --soluk:#7b7f89;
  --kagit:#fff; --yuzey:#f5f6f4; --yuzey-2:#e6e8e6;
  --cizgi:#e2e4e1; --cizgi-kuvvetli:#15161a;
  --foto-bos:linear-gradient(145deg,#d8dad6,#a9aca7);
}

*,*::before,*::after{box-sizing:border-box}
body{
  margin:0;background:var(--kagit);color:var(--murekkep);
  font-family:var(--font-govde);font-size:16px;line-height:1.55;
  -webkit-font-smoothing:antialiased;
  /* ⚠⚠ `overflow-x:hidden` DEĞİL. hidden bir KAYDIRMA KABI yaratır ve içindeki
     `position:sticky` artık ekrana değil o kaba göre konumlanır — üst bar
     aşağı inildikçe kayıp gidiyordu (DP144'te Cevdet bildirdi). `clip` aynı
     yatay taşmayı keser ama kap yaratmaz, sticky çalışmaya devam eder.
     ⭐ DP36'da works/budget'ta birebir aynı tuzağa düşülmüştü.
     Sıra önemli: `clip` bilmeyen eski tarayıcı `hidden`da kalır. */
  overflow-x:hidden;
  overflow-x:clip;
}

/* Sabit üst barın altına çapa hedefi girmesin.
   ⚠ `scrollIntoView({block:'start'})` hedefi ekranın EN ÜSTÜNE koyar; sticky
   bar da orada durduğu için başlık ve arama kutusu barın ALTINDA kalıyordu
   (Cevdet: "arama barını da içerisine almalı"). */
:target{scroll-margin-top:var(--capa-bosluk,86px)}
.yzr-capa{scroll-margin-top:var(--capa-bosluk,86px)}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--font-baslik);font-weight:400;line-height:1.1;letter-spacing:-.01em;margin:0}
p{margin:0 0 1.1em}
:focus-visible{outline:2.5px solid var(--ikinci);outline-offset:2px;border-radius:2px}
.sarmal{max-width:var(--olcu);margin:0 auto;padding:0 24px}
.atla{position:absolute;left:-9999px}
.atla:focus{left:8px;top:8px;z-index:100;background:var(--murekkep);color:var(--kagit);padding:10px 16px;border-radius:6px}

/* ---------- üst bar ---------- */
.ust-bar{position:sticky;top:0;z-index:40;background:var(--kagit);border-bottom:2px solid var(--cizgi-kuvvetli)}
.ust-ic{display:flex;align-items:center;gap:22px;height:66px}
.logo{font-family:var(--font-baslik);font-size:29px;line-height:1;white-space:nowrap}
.logo .bang{color:var(--vurgu)}
.custom-logo-link img{max-height:44px;width:auto}
/* Menü: tek satır, taşanlar "Daha fazla" altına toplanır (JS ölçer) */
.ana-nav{flex:1 1 auto;min-width:0;overflow:visible}
.ana-nav .nav-liste{display:flex;gap:18px;list-style:none;margin:0;padding:0;flex-wrap:nowrap;align-items:center}
.ana-nav li{white-space:nowrap;flex:none}
.ana-nav li.gizli{display:none}
.ana-nav a{font-weight:600;font-size:14px;position:relative;padding:6px 0;display:inline-block;letter-spacing:.005em}
.ana-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2.5px;background:var(--vurgu);transition:right .18s}
.ana-nav a:hover::after,.ana-nav .current-cat>a::after,.ana-nav .current-menu-item>a::after{right:0}

/* "Daha fazla" açılır listesi */
.nav-daha{position:relative}
.nav-daha>button{background:none;border:0;padding:6px 0;font:inherit;font-weight:600;font-size:14px;color:var(--murekkep);cursor:pointer;display:inline-flex;align-items:center;gap:5px}
.nav-daha>button::after{content:"";width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s}
.nav-daha.acik>button::after{transform:rotate(-135deg) translateY(-1px)}
.nav-daha-liste{position:absolute;top:calc(100% + 12px);left:0;background:var(--kagit);border:1.5px solid var(--cizgi);border-radius:8px;padding:8px;min-width:210px;
  box-shadow:0 18px 44px -18px rgba(0,0,0,.45);display:none;z-index:50;list-style:none;margin:0}
.nav-daha.acik .nav-daha-liste{display:block}
.nav-daha-liste li{display:block;white-space:normal}
.nav-daha-liste a{display:block;padding:9px 12px;border-radius:6px;font-size:14px}
.nav-daha-liste a::after{display:none}
.nav-daha-liste a:hover{background:var(--yuzey);color:var(--vurgu-metin)}
.ust-sag{margin-left:auto;display:flex;align-items:center;gap:10px}
.ikon-btn{width:38px;height:38px;display:grid;place-items:center;border:1.5px solid var(--cizgi);background:transparent;color:var(--murekkep);border-radius:7px;cursor:pointer}
.ikon-btn:hover{border-color:var(--cizgi-kuvvetli)}
.ikon-btn svg{width:18px;height:18px}
.menu-btn{display:none}
.ara-kutu{border-bottom:1px solid var(--cizgi);padding:14px 0;background:var(--yuzey)}
.ara-kutu form{display:flex;gap:8px;max-width:520px}
.ara-kutu input[type=search]{flex:1;min-width:0;padding:11px 14px;border:1.5px solid var(--cizgi);border-radius:7px;background:var(--kagit);color:var(--murekkep);font:inherit}
.ara-kutu input[type=submit]{background:var(--vurgu);color:#fff;border:0;border-radius:7px;padding:0 18px;font-weight:700;cursor:pointer}

/* ---------- okuma çubuğu ---------- */
.ilerleme{position:sticky;top:66px;z-index:39;height:3px;background:transparent}
.ilerleme i{display:block;height:100%;width:0;background:var(--vurgu)}

/* ---------- düzen ---------- */
.ana-alan{display:block}
.sayfa-iki-sutun{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:44px;padding-top:30px}
.ana-sutun{min-width:0}

/* ---------- kart ---------- */
.kart-izgara{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 24px}
.karta{--kr:var(--vurgu);--kr-metin:var(--vurgu-metin)}
.karta.renk-ikinci{--kr:var(--ikinci);--kr-metin:var(--ikinci-metin)}
.karta.renk-ucuncu{--kr:var(--ucuncu);--kr-metin:var(--ucuncu-metin)}
.kart-gorsel{display:block;position:relative;aspect-ratio:3/2;border-radius:var(--kose);overflow:hidden;background:var(--foto-bos)}
.kart-gorsel img{width:100%;height:100%;object-fit:cover}
.kart-etk{margin-top:12px}
.etk{display:inline-block;font-weight:700;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--vurgu);padding:5px 9px;border-radius:var(--kose);line-height:1}
.etk-ikinci{background:var(--ikinci)}
.etk-ucuncu{background:var(--ucuncu);color:#241c00}
.kart-bas{font-size:18px;line-height:1.11;margin-top:8px}
.karta:hover .kart-bas a{color:var(--kr-metin);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.kart-ozet{font-size:14px;color:var(--murekkep-soft);margin-top:7px}
.meta{display:flex;align-items:center;gap:8px;margin-top:11px;font-size:12.5px;color:var(--soluk)}
.meta .avatar{width:22px;height:22px;border-radius:50%;background:var(--vurgu);color:#fff;display:grid;place-items:center;font-weight:700;font-size:10px;flex:none}
.meta .yzr{font-weight:600;color:var(--murekkep)}
.meta .yzr:hover{color:var(--vurgu-metin)}

/* ---------- yazı gövdesi ---------- */
.tek-yazi{max-width:var(--yazi-olcu)}
.yazi-govde{font-size:18px;line-height:1.72}
.yazi-govde p{margin:0 0 22px}
.yazi-govde h2{font-family:var(--font-baslik);font-size:27px;margin:38px 0 16px}
.yazi-govde h3{font-family:var(--font-baslik);font-size:22px;margin:30px 0 12px}
.yazi-govde a{color:var(--vurgu-metin);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2.5px;font-weight:600}
.yazi-govde img{border-radius:var(--kose);margin:8px 0}
.yazi-govde blockquote{margin:30px 0;padding:0 0 0 22px;border-left:3px solid var(--cizgi-kuvvetli);font-family:var(--font-baslik);font-size:22px;line-height:1.3}
.yazi-govde ul,.yazi-govde ol{padding-left:22px}
.yazi-govde li{margin:6px 0}

/* son güncelleme (mu-plugin yerine tema) */
.son-guncelleme{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--soluk);font-weight:600;margin:0 0 18px}
.sg-nokta{width:7px;height:7px;border-radius:50%;background:var(--vurgu);flex:none}

/* içindekiler (ez-toc yerine tema) */
.icindekiler{background:var(--yuzey);border:1.5px solid var(--cizgi);border-radius:6px;padding:16px 18px;margin:0 0 26px}
.toc-bas{background:none;border:0;padding:0;font-family:var(--font-baslik);font-size:18px;color:var(--murekkep);cursor:pointer}
.toc-liste{list-style:none;margin:12px 0 0;padding:0;font-size:15px}
.toc-liste li{margin:7px 0}
.toc-liste .toc-h3{padding-left:16px;font-size:14px}
.toc-liste a:hover{color:var(--vurgu-metin);text-decoration:underline}

/* reklam yuvası */
.reklam-yuva{margin:30px 0;text-align:center;min-height:1px}
.reklam-yuva:empty{display:none}

/* ---------- yazı sonu önceki/sonraki kartları ----------
   20 Eyl 2026: yüzen `.kenar-gez` okları emekli edildi (görünmez tıklanabilir
   kenar şeridi + telefonda hiç görünmeme). Tüm `.kenar-gez` / `.gez-*` / `.gk-*`
   kuralları ve `tema.js`'teki ipucu bloğu buradan kaldırıldı; ölü kod bırakılmadı. */
.yazi-gez{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:36px}
.yg-kart{display:block;min-width:0;border:1.5px solid var(--cizgi);border-radius:var(--kose);
  padding:14px 16px;background:var(--kagit);transition:border-color .18s,background .18s}
.yg-kart:hover{border-color:var(--cizgi-kuvvetli);background:var(--yuzey)}
/* Tek kart kalınca (en yeni / en eski yazı) kendi yarısında durur, genişlemez. */
.yg-sonraki{grid-column:2;text-align:right}
.yg-yon{display:block;font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--soluk)}
.yg-kart:hover .yg-yon{color:var(--vurgu-metin)}
.yg-gov{display:flex;align-items:center;gap:12px;margin-top:10px}
.yg-sonraki .yg-gov{flex-direction:row-reverse}
.yg-foto{width:72px;height:54px;border-radius:5px;background:var(--foto-bos);flex:none;overflow:hidden;line-height:0}
.yg-foto img{width:100%;height:100%;object-fit:cover}
.yg-baslik{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  min-width:0;font-family:var(--font-baslik);font-size:16px;line-height:1.2}
.yg-kart:hover .yg-baslik{color:var(--vurgu-metin)}
@media(prefers-reduced-motion:reduce){ .yg-kart{transition:none} }

/* ---------- yan sütun ---------- */
.yan-sutun{min-width:0}
.yan-sabit{position:sticky;top:100px;display:flex;flex-direction:column;gap:30px}
.yb-bas,.widget-baslik{font-family:var(--font-baslik);font-size:18px;padding-bottom:10px;margin:0 0 15px;border-bottom:2px solid var(--cizgi-kuvvetli)}
.populer{list-style:none;margin:0;padding:0}
.pop-i{display:flex;gap:14px;padding:13px 0;border-bottom:1px solid var(--cizgi)}
.pop-i:first-child{padding-top:0}
.pop-i:last-child{border-bottom:0}
.pop-no{font-family:var(--font-baslik);font-size:26px;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--soluk);width:28px;flex:none;font-variant-numeric:tabular-nums}
.pop-i:hover .pop-no{-webkit-text-stroke:1.5px var(--vurgu)}
.pop-t{font-weight:600;font-size:14px;line-height:1.28}
.pop-i:hover .pop-t{color:var(--vurgu-metin)}
.pop-m{font-size:12px;color:var(--soluk);margin-top:4px}
.pop-m a{color:inherit}
.pop-m a:hover{color:var(--vurgu-metin)}

/* ---------- arşiv başlığı / sayfalama / boş ---------- */
.ars-bas{padding:8px 0 22px;border-bottom:2px solid var(--cizgi-kuvvetli);margin-bottom:24px}
.ars-bas h1{font-size:40px}
.sayfalama{margin:38px 0 8px}
.sayfalama .nav-links{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.sayfalama .page-numbers{min-width:42px;height:42px;display:grid;place-items:center;border:1.5px solid var(--cizgi);border-radius:6px;font-weight:700;font-size:14px;padding:0 12px;font-variant-numeric:tabular-nums}
.sayfalama .page-numbers:hover{border-color:var(--cizgi-kuvvetli)}
.sayfalama .current{background:var(--murekkep);border-color:var(--murekkep);color:var(--kagit)}
.bos-blok{padding:56px 0;text-align:center}
.bos-kod{font-family:var(--font-baslik);font-size:60px;line-height:1;color:var(--vurgu);margin:0}
.bos-blok h2{font-size:28px;margin:14px 0 10px}
.bos-blok p{color:var(--murekkep-soft);max-width:48ch;margin:0 auto 22px}
.bos-blok form{justify-content:center;display:flex;gap:8px;max-width:420px;margin:0 auto}

/* ---------- alt bar ---------- */
.alt-bar{background:var(--murekkep);color:var(--kagit);margin-top:52px;padding:42px 0 28px}
.alt-grid{display:grid;grid-template-columns:1.5fr 1fr 1.15fr .8fr .8fr;gap:30px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.14)}
.alt-bar .logo{color:var(--kagit);font-size:30px}
.alt-slogan{font-size:14px;opacity:.72;max-width:34ch;margin-top:12px}
.alt-sutun h2{font-family:var(--font-govde);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ucuncu);margin-bottom:13px}
.alt-sutun ul{list-style:none;margin:0;padding:0}
.alt-sutun a{display:block;font-size:14px;opacity:.82;padding:5px 0}
.alt-sutun a:hover{opacity:1;color:var(--ucuncu)}
/* "Tüm evrenler →" — listenin devamı değil, ona açılan kapı: ayrı dursun */
.alt-tumu{margin-top:7px;padding-top:8px;border-top:1px solid var(--cizgi)}
.alt-tumu a{font-weight:700;opacity:1;color:var(--ucuncu)}
.alt-tumu a span{display:inline-block;transition:transform .14s}
.alt-tumu a:hover span{transform:translateX(3px)}
@media(prefers-reduced-motion:reduce){ .alt-tumu a span{transition:none} }
.alt-son{display:flex;align-items:center;justify-content:space-between;padding-top:20px;font-size:12.5px;flex-wrap:wrap;gap:12px}
.alt-son>span{opacity:.66}
.alt-son .kurum a{font-weight:700;color:var(--vurgu)}
/* Kurum logosu varsa: marka işareti soluk görünmemeli (opacity üstten miras alınamaz). */
.alt-son>span.kurum-gorsel{opacity:1}
.alt-son .kurum-gorsel a{display:inline-flex;align-items:center;text-decoration:none}
.kurum-logo{height:18px;width:auto;display:inline-block;vertical-align:-4px;margin:0 3px}
@media(max-width:520px){.kurum-logo{height:16px}}

/* ---------- anasayfa: hero ---------- */
.hero{display:grid;grid-template-columns:1.6fr 1fr;gap:26px;padding-top:34px;align-items:start}
.hero-buyuk{grid-row:span 2}
.hero-buyuk .kart-gorsel{aspect-ratio:16/10}
.hero-yan .kart-gorsel{aspect-ratio:16/9}
.hero-govde{margin-top:14px}
.hero-bas{font-size:20px;line-height:1.08;margin-top:8px}
.hero-buyuk .hero-bas{font-size:38px}
.hero-buyuk .hero-ozet{font-size:16.5px;color:var(--murekkep-soft);margin-top:12px;max-width:60ch}
.hero article:hover .hero-bas a,.hero .karta:hover .hero-bas a{color:var(--kr-metin);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.reklam-genis{margin:30px 0 6px;text-align:center}
.reklam-genis:empty{display:none}

/* bölüm başlığı */
.blok-bas{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:38px 0 18px;padding-bottom:11px;border-bottom:2px solid var(--cizgi-kuvvetli)}
.blok-bas h2{font-size:21px}
.blok-tumu{margin-left:auto;font-weight:700;font-size:12.5px;color:var(--soluk);text-transform:uppercase;letter-spacing:.08em}
.blok-tumu:hover{color:var(--vurgu-metin)}

/* ---------- yazı sayfası ---------- */
.yazi-bas{padding-top:8px}
.kunye-ust{display:flex;align-items:center;gap:12px;font-size:12.5px;color:var(--soluk);margin-bottom:14px;flex-wrap:wrap}
.yazi-baslik{font-size:42px;line-height:1.06;letter-spacing:-.015em;text-wrap:balance}
.yazi-spot{font-size:18.5px;line-height:1.5;color:var(--murekkep-soft);margin-top:16px;max-width:64ch}
.yazar-kunye{display:flex;align-items:center;gap:13px;margin:22px 0 0;padding:16px 0;border-top:1px solid var(--cizgi);border-bottom:1px solid var(--cizgi)}
.avatar.buyuk{width:44px;height:44px;font-size:15px;border-radius:50%;background:var(--vurgu);color:#fff;display:grid;place-items:center;font-weight:700;flex:none}
.yazar-kunye .kim .ad{font-weight:700;font-size:15px;display:block}
.yazar-kunye .kim .ad:hover{color:var(--vurgu-metin)}
.yazar-kunye .kim .tarih{font-size:13px;color:var(--soluk)}
.yazi-kapak{margin:22px 0 0}
.yazi-kapak img{border-radius:var(--kose);width:100%}
.yazi-kapak figcaption{font-size:12.5px;color:var(--soluk);margin-top:8px}
.yazi-govde{margin-top:30px}
/* eksen şeridi — evren + format (etiketlerin yerine, DP145) */
.yazi-eksen{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 0;align-items:center}
.eks{font-size:13px;font-weight:600;padding:6px 13px;border:1.5px solid var(--cizgi);
  border-radius:999px;color:var(--murekkep-soft);transition:border-color .14s,color .14s}
.eks:hover{border-color:var(--vurgu);color:var(--vurgu-metin)}
/* evren kendi tonunu taşır — kart sistemiyle aynı renk kimliği */
.eks-evren{border-color:color-mix(in srgb,var(--eks-ton,var(--vurgu)) 55%,transparent);
  color:var(--eks-ton,var(--murekkep-soft))}
.eks-evren::before{content:"";width:7px;height:7px;border-radius:50%;
  background:var(--eks-ton,var(--vurgu));display:inline-block;margin-right:7px;vertical-align:1px}
.eks-evren:hover{border-color:var(--eks-ton,var(--vurgu));color:var(--eks-ton,var(--vurgu-metin))}
/* format nötr kalır: o bir biçim etiketi, kimlik değil */
.eks-format{font-weight:700;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
  padding:6px 11px;opacity:.85}
@media(prefers-reduced-motion:reduce){ .eks{transition:none} }

/* yazar kutusu (E-E-A-T) */
.yazar-kutu{display:flex;gap:16px;border-top:2px solid var(--cizgi-kuvvetli);padding-top:22px;margin-top:38px}
.yazar-kutu .avatar.buyuk{width:64px;height:64px;font-size:20px}
.yk-ad{font-weight:700;font-size:17px}
.yk-ad:hover{color:var(--vurgu-metin)}
.yk-bio{font-size:14.5px;color:var(--murekkep-soft);margin:9px 0 0;max-width:60ch}
.yk-tumu{display:inline-block;margin-top:10px;font-size:13px;font-weight:600;color:var(--vurgu-metin)}
.yk-tumu:hover{text-decoration:underline}

.ilgili{margin-top:44px}
.kart-izgara.uc{grid-template-columns:repeat(3,1fr)}

/* ---------- tartışma / yorumlar ---------- */
.tartisma{margin-top:46px}
.yorum-liste{list-style:none;margin:0;padding:0}
.yorum-liste .comment,.yorum-liste .pingback{padding:18px 0;border-bottom:1px solid var(--cizgi)}
.yorum-liste .children{list-style:none;margin:14px 0 0 24px;padding:0}
.yorum-liste .comment-meta{display:flex;align-items:center;gap:10px;margin-bottom:9px;font-size:13px;flex-wrap:wrap}
.yorum-liste .comment-author img{border-radius:50%}
.yorum-liste .comment-author{display:flex;align-items:center;gap:9px}
.yorum-liste .fn{font-weight:700;font-style:normal;font-size:14.5px}
.yorum-liste .comment-metadata a{color:var(--soluk);font-size:12.5px}
.yorum-liste .comment-content{font-size:15.5px;line-height:1.6}
.yorum-liste .reply a{font-size:12.5px;font-weight:600;color:var(--soluk)}
.yorum-liste .reply a:hover{color:var(--vurgu-metin)}
.yorum-liste .bypostauthor>.comment-body .fn::after{content:"·";margin:0 6px;color:var(--soluk)}
.yorum-not{font-size:12.5px;color:var(--soluk);margin-bottom:14px}
.comment-respond{background:var(--yuzey);border:1.5px solid var(--cizgi);border-radius:8px;padding:20px;margin-top:26px}
.comment-reply-title{font-family:var(--font-baslik);font-size:22px;margin-bottom:8px}
.comment-form label{display:block;font-size:13px;font-weight:600;margin-bottom:5px}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{
  width:100%;background:var(--kagit);border:1.5px solid var(--cizgi);border-radius:6px;padding:11px 13px;
  font:inherit;color:var(--murekkep);margin-bottom:12px}
.comment-form textarea{resize:vertical;line-height:1.55}
.comment-form .form-submit{margin:0}
.comment-form input[type=submit],.gonder-btn{background:var(--vurgu);color:#fff;border:0;border-radius:6px;padding:12px 22px;font-weight:700;font-size:14px;cursor:pointer}
.comment-form input[type=submit]:hover{filter:brightness(1.08)}
.yorum-kapali{font-size:14px;color:var(--soluk);font-style:italic}
.ekran-disi{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* arama formu (genel) */
.ara-form{display:flex;gap:8px}
.ara-form input[type=search]{flex:1;min-width:0;padding:11px 14px;border:1.5px solid var(--cizgi);border-radius:7px;background:var(--kagit);color:var(--murekkep);font:inherit}
.ara-form input[type=submit]{background:var(--vurgu);color:#fff;border:0;border-radius:7px;padding:0 18px;font-weight:700;cursor:pointer}
.gorsel-yok{display:block;width:100%;height:100%;background:var(--foto-bos)}

/* ---------- duyarlı ---------- */
@media(max-width:1000px){
  .hero{grid-template-columns:1fr;gap:22px}
  .hero-buyuk{grid-row:auto}
  .kart-izgara.uc{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .yazi-baslik{font-size:31px}
  .hero-buyuk .hero-bas{font-size:28px}
  .kart-izgara.uc{grid-template-columns:1fr}
  .yazar-kutu{flex-direction:column;gap:12px}
  .yorum-liste .children{margin-left:12px}
  /* tek sütun: DOM sırası gereği "Önceki" üstte kalır */
  .yazi-gez{grid-template-columns:1fr;gap:12px}
  .yg-sonraki{grid-column:auto;text-align:left}
  .yg-sonraki .yg-gov{flex-direction:row}
}
@media(max-width:1000px){
  .sayfa-iki-sutun{grid-template-columns:1fr;gap:36px}
  .yan-sabit{position:static}
  .kart-izgara{grid-template-columns:1fr 1fr}
  .alt-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .ana-nav{display:none}
  .ana-nav.acik{display:block;position:absolute;top:66px;left:0;right:0;background:var(--kagit);border-bottom:2px solid var(--cizgi-kuvvetli);padding:14px 24px}
  .ana-nav.acik .nav-liste{flex-direction:column;gap:4px}
  .menu-btn{display:grid}
  .kart-izgara{grid-template-columns:1fr}
  .ars-bas h1{font-size:29px}
  .yazi-govde{font-size:17px}
  .sarmal{padding:0 16px}
  .alt-grid{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* ---------- liste ailesi (archive) ---------- */
.ars-bas{position:relative}
.ars-ust{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--soluk);margin:0 0 6px}
.ars-bas.ars-vurgu{border-bottom-color:var(--vurgu)}
.ars-bas.ars-ikinci{border-bottom-color:var(--ikinci)}
.ars-bas.ars-ucuncu{border-bottom-color:var(--ucuncu)}
.ars-logo{max-height:46px;width:auto;display:block;margin-bottom:10px}
.ars-aciklama{color:var(--murekkep-soft);font-size:15px;max-width:62ch;margin-top:8px}
.ars-sayi{font-size:13px;color:var(--soluk);margin:8px 0 0;font-variant-numeric:tabular-nums}
/* sayı solda · arşiv içi arama sağda (.yzr-ara'nın margin-left:auto'su burada iş görür) */
.ars-satir{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:8px}
.ars-satir .ars-sayi{margin:0}
.ars-temizle{margin-left:9px;font-size:12.5px;color:var(--soluk);
  text-decoration:underline;text-underline-offset:2px}
.ars-temizle:hover{color:var(--vurgu-metin)}
.ars-alt{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.ars-alt a{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--cizgi);border-radius:999px;
  padding:5px 12px;font-size:13px;font-weight:600}
.ars-alt a:hover{border-color:var(--cizgi-kuvvetli)}
.ars-alt a span{font-size:11px;color:var(--soluk);font-variant-numeric:tabular-nums}

/* ---------- evren hub ---------- */
.hub-bas{padding:10px 0 22px;border-bottom:2px solid var(--cizgi-kuvvetli);margin-bottom:22px}
.hub-zincir{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;color:var(--soluk);margin-bottom:8px}
.hub-zincir a{font-weight:600}
.hub-zincir a:hover{color:var(--vurgu-metin)}
.hub-bas h1{font-size:44px;line-height:1.03;margin:0}
.hub-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0 0}
.hub-tip{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#fff;
  background:var(--murekkep);padding:4px 9px;border-radius:var(--kose);line-height:1}
.hub-sayi,.hub-dal{font-size:13px;color:var(--soluk);font-variant-numeric:tabular-nums}
.hub-dal::before{content:"·";margin-right:8px}
.hub-not{margin:12px 0 0;padding:11px 14px;background:var(--yuzey);border-left:3px solid var(--vurgu);
  border-radius:var(--kose);font-size:14px;color:var(--murekkep-soft);max-width:76ch}
.hub-aciklama{color:var(--murekkep-soft);font-size:15px;max-width:62ch;margin-top:10px}

.hub-altlar{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-bottom:26px}
.hub-dugum{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;
  border:1.5px solid var(--cizgi);border-radius:var(--kose);padding:10px 13px;font-size:14px;font-weight:600}
.hub-dugum:hover{border-color:var(--cizgi-kuvvetli)}
.hub-dugum-ad{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hub-dugum-sayi{font-size:11.5px;color:var(--soluk);font-variant-numeric:tabular-nums;flex:none}
.hub-dugum.bos{opacity:.55}
.hub-dugum.bos .hub-dugum-sayi{opacity:.7}

.hub-capraz{margin-bottom:26px}
.hub-capraz h2{font-size:15px;margin:0 0 8px}
.hub-capraz-liste{display:flex;flex-wrap:wrap;gap:7px}
.hub-capraz-liste a{border:1.5px dashed var(--cizgi);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}
.hub-capraz-liste a:hover{border-style:solid;border-color:var(--cizgi-kuvvetli)}
.hub-yazi-bas{font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:var(--soluk);
  margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid var(--cizgi)}

@media (max-width:900px){
  .hub-bas h1{font-size:34px}
  .hub-altlar{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
  .ars-bas h1{font-size:30px}
}

/* ---------- alt bar: DP139 düzeni (kategori · evren · format) ---------- */
.alt-marka .kurum{display:block;margin-top:18px;opacity:.9}
.alt-marka .kurum a{display:inline-flex;align-items:center;text-decoration:none}
.alt-marka .kurum-logo{height:26px;margin:0}
.alt-marka .kurum:hover{opacity:1}
.alt-son .alt-kurumsal{display:flex;flex-wrap:wrap;gap:16px;list-style:none;margin:0;padding:0}
.alt-son .alt-kurumsal a{font-size:12.5px;opacity:.72}
.alt-son .alt-kurumsal a:hover{opacity:1;color:var(--ucuncu)}
/* 11 kategori tek sütunda uzar — iki kolona böl */
.alt-sutun ul{columns:1}
.alt-grid>.alt-sutun:first-of-type ul{columns:2;column-gap:18px}
@media(max-width:900px){.alt-grid>.alt-sutun:first-of-type ul{columns:1}}
/* alt bar: 5 sütun (marka + kategori + evren + format + kurumsal) */
@media(max-width:1100px){.alt-grid{grid-template-columns:1.4fr 1fr 1fr;row-gap:26px}}
@media(max-width:820px){.alt-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.alt-grid{grid-template-columns:1fr}}
.alt-son{justify-content:flex-start}

/* ---------- evren şeridi (anasayfa) ---------- */
/* ---------- anasayfa: öne çıkan evrenler ---------- */
/* Kartlar dizindekiyle AYNI bileşen (kart.css + d20mag_evren_kart). Buradaki
   kurallar yalnız YERLEŞİM: 2×2 kart + sağda dikey kapı. Kartın görünümüne
   dokunulmaz — o Görünüm → Kart Tasarımı'ndan yönetilir.
   ⚠ Kapı sütunu dar tutuldu ki kartlar 429px'te kalsın; genişletilirse kart
   daralır ve figürler kırpılır (bkz. d20mag_anasayfa_kota). */
.evren-one{margin:34px 0 6px}
.evren-one-bas{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.evren-one-bas h2{font-size:20px;margin:0}
.evren-one-bas p{margin:0;font-size:13.5px;color:var(--murekkep-soft);min-width:0}
/* 3+3 = altı hücre; sonuncusu dizine götüren davet kartı (yani beş evren).
   Kart 388px — evrenler dizinindeki 372px'e çok yakın, kanıtlanmış ölçü. */
/* ⚠⚠ Burada bir kez `zoom` + genişlik telafisi denendi ("içindeki her şey aynı
   oranla küçülsün" için). SONUÇ: kartlar hücrelerinden taştı, aralarındaki 14px
   boşluk yok oldu, figürler komşu kartın üstüne bindi. `zoom` layout ölçüsünü
   ölçekler ama grid hücresiyle birlikte hesaplanışı öngörülemez — telafi
   (`width:calc(100%/.9)`) taşmayı büyüttü.
   ÇÖZÜM ölçeklemeyi hiç yapmamak: 3 sütunda kart zaten 388px ve evrenler
   dizinindeki 372px'e neredeyse eş — yani kartın kanıtlanmış, deforme olmayan
   ölçüsü. Küçültmeye gerek yoktu. */
/* ⚠⚠ Anasayfa ızgarası (`.evren-one-*`), takip tuşu ve kapının alt satırı
   DP145'te **kart.css'e TAŞINDI**. Sebep: yönetimdeki Kart Tasarımı önizlemesi
   yalnız `kart.css`'i yükler; kurallar burada kalınca ızgara editörde çöküyor,
   kartlar alt alta blok oluyordu — satır yüksekliği değişince de karakter
   (yüzdeyle ölçekli) farklı görünüyordu.
   ⭐ DP140'ta birebir aynı ders yaşanmıştı: *bileşeni ayrı dosyaya çıkarırken
   düzen kuralları da onunla gitmeli.* */

/* Kapı — ızgaranın SON hücresi, kart ölçüsünde bir davet kutusu. Yüksekliğini
   satırdaki kartlardan alır (stretch); min-height yalnız yalnız kaldığı hâl için.
   Ben-Day tramı kartlarla akrabalık kurar ama kapı kart değildir: nötr,
   marka renginden bağımsız. */
/* Davet kartı — artık kart ailesinin üyesi (`.evren-kart .evren-kapi`), yani
   zemin/desen/perde/logo/karakter kart.css'ten ve ayarlardan geliyor. Burada
   kalan tek şey kapıya özel alt satır.
   ⚠ Bir ara zemini `--murekkep` idi: aydınlık temada koyu ama KARANLIK temada
   bembeyaz bir dikdörtgen oluyordu — kaldırılan dikey bandın aynısı. Renk artık
   ayardan (varsayılan nötr koyu #1c1c1c), tema-bağımsız. */
/* (kapının kendi kuralları da kart.css'e taşındı — yukarıdaki nota bakın) */

/* ---------- evrenler dizini ---------- */
.evren-ara{display:block;margin-top:16px}
.evren-ara input{width:100%;max-width:460px;font:inherit;font-size:15px;padding:11px 14px;
  border:1.5px solid var(--cizgi);border-radius:var(--kose);background:var(--kagit);color:var(--murekkep)}
.evren-ara input:focus{outline:none;border-color:var(--cizgi-kuvvetli)}
.ekran-disi{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.evren-bolum{margin-bottom:34px}
.evren-bolum-bas{font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--soluk);margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid var(--cizgi)}
.evren-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px 20px}
.evren-kart h3{font-size:16px;margin:0;display:flex;align-items:baseline;gap:8px}
.evren-kart h3 a:hover{color:var(--vurgu-metin)}
.evren-sayi{font-size:11.5px;color:var(--soluk);font-variant-numeric:tabular-nums;flex:none}
.evren-alt{margin:5px 0 0;font-size:13px;color:var(--murekkep-soft);line-height:1.5}
.evren-alt a{color:var(--murekkep-soft)}
.evren-alt a:hover{color:var(--vurgu-metin)}
.evren-kart.bos{opacity:.5}
.evren-bos-uyari{padding:40px 0;text-align:center;color:var(--murekkep-soft)}
/* Tablet (721-1100px) "arada kalmış" bir aralıktı: burada ızgara 2 sütuna iner,
   altı hücre üç satır olur; kapı yine son hücrede kalır. */
/* ⚠ `.evren-one-izgara` ve `.evren-kapi` kırılma noktaları da kart.css'te. */
@media(max-width:720px){
  .evren-izgara{grid-template-columns:1fr}
}

/* ---------- evrenler dizini: sekmeler ---------- */
/* Beş tip renk: üçü marka renkleri, ikisi onlardan türetilmiş (white-label korunur). */
.evren-sekme{--a:var(--vurgu);--b:var(--ikinci);--c:var(--ucuncu);
  --d:color-mix(in srgb, var(--ikinci) 55%, var(--ucuncu));
  --e:color-mix(in srgb, var(--vurgu) 55%, var(--ikinci));
  display:flex;gap:8px;overflow-x:auto;padding:4px 0 14px;margin-bottom:8px;
  scrollbar-width:none;-webkit-overflow-scrolling:touch}
.evren-sekme::-webkit-scrollbar{display:none}
.evren-sekme-btn{--r:var(--vurgu);
  display:inline-flex;align-items:center;gap:8px;flex:none;cursor:pointer;
  font:inherit;font-size:14px;font-weight:700;color:var(--murekkep);
  background:var(--kagit);border:1.5px solid var(--cizgi);border-radius:999px;padding:9px 16px;
  transition:border-color .12s,background .12s,color .12s}
.evren-sekme-btn[data-renk="a"]{--r:var(--a)} .evren-sekme-btn[data-renk="b"]{--r:var(--b)}
.evren-sekme-btn[data-renk="c"]{--r:var(--c)} .evren-sekme-btn[data-renk="d"]{--r:var(--d)}
.evren-sekme-btn[data-renk="e"]{--r:var(--e)}
.evren-sekme-btn span{font-size:11.5px;font-weight:600;color:var(--soluk);font-variant-numeric:tabular-nums}
.evren-sekme-btn:hover{border-color:var(--r)}
.evren-sekme-btn[aria-selected="true"]{background:var(--r);border-color:var(--r);color:#fff}
.evren-sekme-btn[aria-selected="true"] span{color:rgba(255,255,255,.78)}
/* sarı zeminde beyaz yazı okunmaz */
.evren-sekme-btn[data-renk="c"][aria-selected="true"]{color:#241c00}
.evren-sekme-btn[data-renk="c"][aria-selected="true"] span{color:rgba(36,28,0,.6)}
.evren-sekme-btn.sonuc-var{border-color:var(--r)}
/* bölüm rengi: kart başlığı hover + sayı vurgusu sekmeyle aynı renkte */
.evren-bolum[data-renk="a"]{--br:var(--vurgu)} .evren-bolum[data-renk="b"]{--br:var(--ikinci)}
.evren-bolum[data-renk="c"]{--br:var(--ucuncu)}
.evren-bolum[data-renk="d"]{--br:color-mix(in srgb, var(--ikinci) 55%, var(--ucuncu))}
.evren-bolum[data-renk="e"]{--br:color-mix(in srgb, var(--vurgu) 55%, var(--ikinci))}
.evren-bolum .evren-kart h3 a:hover{color:var(--br)}
.evren-bolum .evren-izgara{border-top:3px solid var(--br);padding-top:18px}

/* ---------- PORTRE — paylasilan bilesen ----------
   ⭐ `d20mag_yazar_portre()` bunu profil sayfasinda, yazarlar dizininde ve
   ileride yazi kunyesinde de basar; o yuzden stili sayfaya degil TEMAYA ait.

   ⚠⚠ Burada eskiden DP142 oncesi profilin stilleri duruyordu (.yzr-bas,
   .yzr-kimlik, .yzr-harf, .yzr-uzmanlik, .yzr-eksen-liste, .yzr-rozet…).
   Profil yeniden yazilinca sablonda kullanilmaz oldular ama CSS'te kaldilar —
   ve olu degillerdi: `.yzr-foto{width:80px;height:80px;border:…}` kurali yeni
   portreye de uyguluyordu. Olculdu (DP143), kullanilmayan kurallar silindi.
   ⭐ Ders: bilesen yeniden yazilinca ESKI CSS'i de birlikte emekli et.

   Olcu burada YOK — her kullanim kendi boyunu verir (kunye 92px, dizin 76/52/34). */
.yzr-mono{
  flex:none;position:relative;overflow:hidden;border-radius:50%;
  background:#fff;color:var(--ton-metin,var(--ton,var(--yazar,var(--vurgu))));
  display:grid;place-items:center;
  font-family:var(--font-baslik);line-height:1;
}
.yzr-foto{object-fit:cover}
/* Gravatar `d=blank` ile istenir: hesabi olmayan kiside SAYDAM doner, altindaki
   monogram gorunur. Kirik gorsel imkansiz, sunucudan sorma ihtiyaci yok. */
.yzr-foto-ust{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}

.yzr-takip{width:auto;margin-top:13px;padding-left:15px;padding-right:15px}
.evren-takip-sayi{font-size:12px;font-weight:800;color:var(--soluk);
  font-variant-numeric:tabular-nums;margin-left:2px}
.evren-takip[aria-pressed="true"] .evren-takip-sayi{color:inherit;opacity:.75}

/* --- Yazara yorum ---------------------------------------------------- *
   ⚠ Yazıya değil KİŞİYE yazılan not (Cevdet). Yazı yorumlarından görsel
   olarak da ayrışsın diye kendi bloğu var.                              */
.yzr-yorumlar{margin:44px 0 0;padding-top:26px;border-top:2px solid var(--cizgi-kuvvetli)}
.yzr-yorum-baslik{font-family:var(--font-baslik);font-size:22px;margin:0 0 18px}
.yzr-yorum-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.yzr-yorum-yanit{list-style:none;margin:14px 0 0 26px;padding-left:16px;
  border-left:2px solid var(--cizgi);display:flex;flex-direction:column;gap:14px}

.yzr-yorum{background:var(--yuzey);border:1.5px solid var(--cizgi);
  border-radius:var(--kose,6px);padding:14px 16px}
.yzr-yorum-ust{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin-bottom:7px}
.yzr-yorum-kim{font-weight:700;font-size:14px}
.yzr-yorum-tarih{font-size:12px;color:var(--soluk);margin-left:auto}
.yzr-yorum-metin{font-size:15px;line-height:1.6;color:var(--murekkep-soft)}
.yzr-yorum-metin p{margin:0 0 8px}
.yzr-yorum-metin p:last-child{margin-bottom:0}

/* Profilin sahibi cevap verdiğinde ayrışsın — mockup'taki "Yazar" rozeti. */
.yzr-yorum-etiket{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  background:var(--vurgu);color:var(--vurgu-metin,#fff);padding:2px 7px;border-radius:20px}
.yzr-yorum-sahibi{border-color:var(--cizgi-kuvvetli);background:var(--kagit)}

.yzr-yorum-form{margin-top:20px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.yzr-yorum-form textarea{width:100%;padding:12px 14px;border:1.5px solid var(--cizgi);
  border-radius:var(--kose,6px);background:var(--kagit);color:var(--murekkep);font:inherit;
  font-size:15px;resize:vertical}
.yzr-yorum-form textarea:focus{border-color:var(--cizgi-kuvvetli);outline:none}
.yzr-yorum-gonder{padding:10px 20px;font:inherit;font-weight:700;font-size:14px;
  background:var(--murekkep);color:var(--kagit);border:0;border-radius:var(--kose,6px);cursor:pointer}
.yzr-yorum-gonder[disabled]{opacity:.5;cursor:default}
.yzr-yorum-giris{font-size:14px;color:var(--soluk);margin-top:16px}
.yzr-yorum-durum{font-size:13px;color:var(--soluk);margin:8px 0 0}

@media(max-width:720px){
  .yzr-kunye h1{font-size:29px}
  .yzr-eksen-ad{min-width:0;width:100%}
  .yzr-yorum-yanit{margin-left:12px;padding-left:12px}
  .yzr-yorum-tarih{margin-left:0;width:100%}
}

/* ==========================================================================
   STATİK SAYFA (page.php)
   ⚠ Bu şablon temada hiç yoktu; sayfalar index.php'ye düşüp arşiv ızgarası
   olarak çiziliyordu — başlık ve içerik hiç basılmıyordu.
   Yan sütun bilerek yok: Hakkımızda okunan bir metindir, "son yazılar"
   listesi orada dikkat dağıtır.
   ========================================================================== */
.syf{padding-top:30px}
.syf-govde{max-width:var(--yazi-olcu);margin:0 auto}
.syf-govde .ars-bas{margin-bottom:26px}
.syf-kapak{margin:0 0 28px}
.syf-kapak img{border-radius:var(--kose);width:100%}
.syf-sayfalama{margin-top:30px}

/* ==========================================================================
   404
   ⭐ 13 yıllık arşiv + birkaç adres göçü var; buraya düşen okur çoğunlukla
   gerçek bir şey arıyor. Sayfanın işi özür dilemek değil, yaklaştırmak.
   ========================================================================== */
.dortyuz{padding-top:20px;padding-bottom:20px}
.dortyuz-bas{padding-bottom:34px}
.dortyuz-bas h1{font-size:34px;margin:14px 0 10px;font-family:var(--font-baslik);font-weight:400}
.dortyuz-blok{margin-top:10px}
.dortyuz-cipler{display:flex;flex-wrap:wrap;gap:9px}
.dortyuz-cip{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--cizgi);
  border-radius:999px;padding:8px 16px;font-size:14.5px;font-weight:600;
  transition:border-color .14s,color .14s}
.dortyuz-cip:hover{border-color:var(--cizgi-kuvvetli);color:var(--vurgu-metin)}
.dortyuz-cip em{font-style:normal;font-weight:800;font-size:12px;color:var(--soluk);
  font-variant-numeric:tabular-nums}

@media(max-width:760px){
  .dortyuz-bas h1{font-size:26px}
  .dortyuz .kart-izgara{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .dortyuz-cip{transition:none}
}


/* ==========================================================================
   ARAMA SONUCLARI (search.php)
   ⚠ Bu sablon da temada hic yoktu; arama index.php'ye dusuyor, okur ne
   aradigini ve kac sonuc ciktigini goremiyordu.
   ========================================================================== */
.ara{padding-bottom:20px}
.ara-bas{padding-top:30px;margin-bottom:26px}
.ara-ust{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--vurgu-metin);margin:0 0 8px}
.ara-bas h1{font-size:44px;line-height:1.04;margin:0;word-break:break-word}
.ara-ozet{margin:10px 0 0;font-size:14.5px;color:var(--murekkep-soft);
  font-variant-numeric:tabular-nums}
.ara-ozet b{font-family:var(--font-baslik);font-size:19px;font-weight:400;color:var(--murekkep)}
.ara-form{margin-top:16px;max-width:460px}
.ara-blok{margin-top:8px}
.ara-blok+.ara-blok{margin-top:34px}

/* ---------- yazar profilinde "bu yazarda ara" ----------
   ⚠ Blok basliginin icinde durur; olcu sayaci sagda kalsin diye araya girer. */
.yzr-ara{display:flex;align-items:center;gap:0;margin-left:auto;
  border:1.5px solid var(--cizgi);border-radius:999px;overflow:hidden;
  background:var(--kagit);transition:border-color .14s}
.yzr-ara:focus-within{border-color:var(--cizgi-kuvvetli)}
.yzr-ara input[type="search"]{border:0;background:transparent;color:var(--murekkep);
  font:inherit;font-size:13.5px;padding:7px 4px 7px 14px;width:150px;min-width:0}
.yzr-ara input[type="search"]:focus{outline:none}
.yzr-ara button{border:0;background:transparent;color:var(--soluk);cursor:pointer;
  padding:7px 12px 7px 6px;display:grid;place-items:center}
.yzr-ara button:hover{color:var(--vurgu-metin)}
.yzr-ara svg{width:16px;height:16px;fill:currentColor;display:block}

@media(max-width:760px){
  .ara-bas h1{font-size:30px}
  .ara .kart-izgara{grid-template-columns:1fr}
  .yzr-ara{margin-left:0;width:100%}
  .yzr-ara input[type="search"]{width:auto;flex:1}
}
@media(prefers-reduced-motion:reduce){ .yzr-ara{transition:none} }

/* ---------- Yazı içi görünürlük yardımcıları ----------
   ⚠ Bunlar `custom-css-js` eklentisinden TAŞINDI (DP144). Eklenti CheerUp
   döneminden kalma 5 kural tutuyordu; dördü eski temanın sınıflarını hedefliyordu
   (ölü), ama bu ikisi bir yazının GÖVDESİNDE kullanılıyor — eklentiyi silmeden
   önce taşınmaları gerekiyordu, yoksa o yazıda sessizce bozulurdu. */
@media only screen and (max-width:580px){ .gy-hidden-mobile{display:none !important} }
@media only screen and (min-width:581px){ .gy-hidden-desktop{display:none !important} }

/* ---------- WP YÖNETİM ÇUBUĞU PAYI — DP144 ----------
   ⚠⚠ Giriş yapmış kullanıcıda WordPress üste 32px'lik SABİT bir çubuk koyar.
   `top:0` olan sticky üst bar onun ALTINDA kalır: üst kısmı kırpılmış görünür,
   sayfa kaydıkça "bar kayıyor" izlenimi verir. (Cevdet bildirdi; ekran
   görüntüsünde logo yarıdan kesikti.)
   ⚠ Okur bunu HİÇ görmez — yalnız yönetici/editör görür. Yine de düzeltilmeli:
   siteyi en çok o gözle bakan kişiler kullanıyor.
   ⭐ Tek değişken: bütün sabit öğeler ve çapa boşluğu aynı yerden beslenir. */
:root{--ust-ofset:0px}
body.admin-bar{--ust-ofset:32px}
/* WP 782px altında çubuğu 46px yapar ve o da sabittir. */
@media screen and (max-width:782px){ body.admin-bar{--ust-ofset:46px} }

.ust-bar{top:var(--ust-ofset)}
.ilerleme{top:calc(66px + var(--ust-ofset))}
.yan-sabit{top:calc(100px + var(--ust-ofset))}
:target,.yzr-capa{scroll-margin-top:calc(86px + var(--ust-ofset))}

/* ==========================================================================
   TEKİL YAZI DÜZENİ + YAZAR KUTUSU + 404 — 17 Eyl 2026 (Deniz'in hotfix turu)
   Deniz: "Yazı solda sıkışıyor, popüler sütunu dar. Odak yazı metninde;
   sağda popüler ve kayan sütunlar daha küçük."

   ÖLÇÜLEN SORUN (1280/1440/1920 px için aynı, sarmal 1240'ta sabitlendiği için):
     sarmal iç genişlik  1240 − 48 = 1192px
     ızgara izi (1fr)    1192 − 320 − 44 = 828px
     makale (.tek-yazi)  --yazi-olcu = 760px
     → izin sağında 68px ÖLÜ BOŞLUK: metin sola yapışık, popüler sütunu kopuk.
     Satır uzunluğu: 760px / (0,4674em × 18px) = 90,3 karakter.
     (0,4674em = AllRoundGothic Book'un gerçek ortalama ilerlemesi; Türkçe bir
      paragrafın 298 karakteri fontTools ile ölçüldü — tahmin değil.)

   YENİ DÜZEN:
     kapsayıcı  780 + 300 + 60 + 48 = 1188px
     ana sütun  780px (ölü boşluk 0)  ·  kenar sütunu 300px (sticky)
     gövde      20px/1.68, ölçü 71ch = 741px → 79,3 karakter (hedef 65-80 ✓)
   ========================================================================== */
.yazi-duzen{
  --yazi-ana:780px; --yazi-yan:300px; --yazi-bos:60px;
  max-width:calc(var(--yazi-ana) + var(--yazi-yan) + var(--yazi-bos) + 48px);
  grid-template-columns:minmax(0,1fr) var(--yazi-yan);
  gap:var(--yazi-bos);
}
/* Kapak artık ızgara izinin kendisi — ayrı bir 760px kapağı ölü boşluk üretiyordu. */
.yazi-duzen .tek-yazi{max-width:none}
/* ⭐ Ölçü `ch` ile: birim fontun kendi "0" genişliğidir, yani marka fontu
   değişse de satır uzunluğu aynı karakter aralığında kalır. */
.yazi-duzen .yazi-govde{font-size:20px;line-height:1.68;max-width:71ch}
.yazi-duzen .yazi-govde p{margin:0 0 24px}
.yazi-duzen .yazi-govde h2{font-size:29px;margin:42px 0 16px}
.yazi-duzen .yazi-govde h3{font-size:23px;margin:32px 0 12px}
.yazi-duzen .yazi-govde blockquote{font-size:23px}

/* ⚠ 721-1100 aralığı bilinen sorundu: eski kırılma 1000px olduğu için
   1001-1100'de ana sütun 590-640px'e düşüyordu. Kırılma 1060'a çekildi;
   iki sütunlu hâlde ana sütun hiçbir zaman 650px'in altına inmiyor. */
@media(max-width:1060px){
  .yazi-duzen{grid-template-columns:1fr;gap:40px}
  .yazi-duzen .tek-yazi{max-width:var(--yazi-ana);margin-inline:auto}
  .yazi-duzen .yan-sutun{max-width:var(--yazi-ana);margin-inline:auto;width:100%}
  .yazi-duzen .yan-sabit{position:static}
}
@media(max-width:720px){
  /* Telefonda tek sütun; 360px ekranda 328px ölçü → 39 karakter. */
  .yazi-duzen .yazi-govde{font-size:18px;line-height:1.7}
  .yazi-duzen .yazi-govde h2{font-size:25px}
  .yazi-duzen .yazi-govde h3{font-size:21px}
}

/* ---------- yazar künyesi + kutusu: harf yerine GERÇEK portre ----------
   `d20mag_yazar_portre()` fotoğraf → saydam yedekli Gravatar → monogram
   sırasını uyguluyor (DP143). Ölçüm: 12 yazarda yüklü fotoğraf var ve yazı
   sayfasında hiçbiri görünmüyordu — künye harf rozeti basıyordu.
   `.yzr-mono` ölçüsünü her kullanım kendi verir (tema.css §portre notu). */
.yazar-kunye .yzr-mono{width:44px;height:44px;font-size:17px;background:var(--vurgu);color:#fff}
.yazar-kutu{gap:18px}
.yk-portre{flex:none;display:block;line-height:0}
.yazar-kutu .yzr-mono{width:72px;height:72px;font-size:28px;background:var(--vurgu);color:#fff}
.yk-gov{min-width:0}

/* Sosyal satır — yalnız dolu meta basılır (`d20mag_yazar_sosyal_satiri`).
   ⚠ `assets/css/yazar.css` yalnız yazar sayfasında yükleniyor; oradaki
   koyu-zemin sürümüyle çakışmaz, bu kurallar yazı sayfasının kendi hâli. */
.yazar-kutu .yzr-sos{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.yazar-kutu .yzr-sos-bag{display:inline-flex;align-items:center;gap:7px;
  font-size:12.5px;font-weight:600;padding:5px 11px;border:1.5px solid var(--cizgi);
  border-radius:999px;color:var(--murekkep-soft);transition:border-color .14s,color .14s}
.yazar-kutu .yzr-sos-bag:hover{border-color:var(--vurgu);color:var(--vurgu-metin)}
.yazar-kutu .yzr-sos-ikon{display:block;width:14px;height:14px;flex:none}
.yazar-kutu .yzr-sos-ikon svg{width:14px;height:14px;display:block;fill:currentColor}
@media(prefers-reduced-motion:reduce){ .yazar-kutu .yzr-sos-bag{transition:none} }

/* ---------- 404 / 410 görseli ---------- */
.dortyuz-gorsel{margin:24px auto 26px;max-width:720px}
.dortyuz-gorsel img{display:block;width:100%;height:auto;border-radius:var(--kose)}
.dortyuz-eve{margin:18px 0 0}
.dortyuz-eve-bag{display:inline-block;font-weight:700;font-size:14px;
  color:var(--vurgu-metin);border-bottom:2px solid var(--vurgu);padding-bottom:2px}
.dortyuz-eve-bag:hover{border-bottom-color:var(--murekkep)}

/* ---------- miras gövde içeriği: mobil taşma kalkanı (GB-1 / #131381, 20 Eyl 2026) ----------
   ⚠ Sorun tema kaynaklı DEĞİL, arşiv kaynaklı: 2013-2019 klasik editör dönemi
   yazılarında görseller `class="alignleft"` + satır içi `style="width:342px"`
   taşıyor. Çekirdek blok stili `.alignleft{float:left}` veriyor; 360px'lik bir
   ekranda 342px'lik yüzen bir figür paragrafa 0-20px bırakıyor ve metin ekranın
   dışına taşıyor. Canlı temada (CheerUp) bu kural zaten vardı, yeni temada yoktu.
   Ölçüm (20 Eyl 2026, staging): yayındaki 9.733 yazının 154'ü alignleft/alignright,
   1'i wp-block-columns, 0'ı wp-block-media-text taşıyor.

   ⚠ Kapsam bilerek `.yazi-govde`: kalkan yalnız editör içeriğine uygulanır,
   temanın kendi bileşenlerine (kart ızgarası, yan sütun, künye) dokunmaz. */
.yazi-govde figure,
.yazi-govde img,
.yazi-govde iframe,
.yazi-govde video,
.yazi-govde embed,
.yazi-govde object,
.yazi-govde pre{max-width:100%}
.yazi-govde iframe,
.yazi-govde video{height:auto}
.yazi-govde pre{overflow-x:auto;white-space:pre-wrap;overflow-wrap:break-word}
.yazi-govde figure{margin-inline:0}

@media(max-width:720px){
  /* Yüzen figür metni boğmasın: 342px'lik bir figür 500px'lik gövdede
     paragrafa 150px bırakıyordu. Yüzme korunuyor, ölçü sınırlanıyor. */
  .yazi-govde .alignleft,
  .yazi-govde .alignright{max-width:42%}
  /* Blok düzenleri tek sütuna iner (çekirdeğin `is-stacked-on-mobile`
     davranışı yalnız media-text'te var; columns'ta sarma gerekiyor). */
  .yazi-govde .wp-block-media-text{display:block}
  .yazi-govde .wp-block-media-text__media,
  .yazi-govde .wp-block-media-text__content{width:auto;max-width:100%;padding:0}
  .yazi-govde .wp-block-media-text__media img{width:100%}
  .yazi-govde .wp-block-columns{flex-wrap:wrap}
  .yazi-govde .wp-block-column{flex-basis:100%!important}
  /* Geniş tablo sayfayı yana kaydırmasın — kendi içinde kaysın.
     `display:block` şart: `overflow-x` bir `table` kutusunda çalışmaz. */
  .yazi-govde table{display:block;width:100%;max-width:100%;overflow-x:auto}
}

@media(max-width:480px){
  /* Telefonda yüzme tamamen kalkar: görsel tam genişlik, metin altında.
     Satır içi `width:NNNpx` `max-width:100%` ile zaten kapsayıcıya iniyor. */
  .yazi-govde .alignleft,
  .yazi-govde .alignright{float:none;max-width:100%;margin-left:0;margin-right:0;
    margin-bottom:18px;display:block}
  .yazi-govde .alignleft img,
  .yazi-govde .alignright img{width:100%}
}

/* ---------- yan sütun: son yorumlar (GB-1 / #131369, 20 Eyl 2026) ----------
   Popüler bloğunun tipografisini paylaşır (`yan-blok` + `yb-bas`); yeni renk
   ya da yazı tipi yok. Blok yalnız son 180 günde en az 3 onaylı yorum varsa
   basılır — kuralı `inc/son-yorumlar.php` uyguluyor. */
.syorum{list-style:none;margin:0;padding:0}
.sy-i{padding:13px 0;border-bottom:1px solid var(--cizgi)}
.sy-i:first-child{padding-top:0}
.sy-i:last-child{border-bottom:0}
.sy-kim{font-size:12px;color:var(--soluk);margin:0;display:flex;flex-wrap:wrap;gap:5px;align-items:baseline}
.sy-ad{font-weight:700;color:var(--murekkep-soft)}
.sy-alinti{font-size:13.5px;line-height:1.45;margin:6px 0;color:var(--murekkep-soft)}
.sy-yazi{display:block;font-weight:600;font-size:13px;line-height:1.3}
.sy-i:hover .sy-yazi{color:var(--vurgu-metin)}
