/* 6102TTK.com — docs/TASARIM.md'nin kod karşılığı.
   Bu dosyadaki hiçbir renk/font token dışından türetilmez (TASARIM.md m.3). */

/* Fontlar taban.html'de <link> ile yükleniyor. @import BURADAN kaldırıldı:
   CSS içinden zincirleme iner (ana.css inmeden font isteği başlamaz),
   <link> paralel iner. Davranış aynı, ilk boyama daha erken. */

:root {
  /* --- Palet: tamamı; başka renk türetilmez (TASARIM.md) --- */
  --murekkep: #1e2a32;
  --zemin: #ffffff;
  --yuzey: #f2f4f3;
  --cizgi: #d8dddb;
  --lacivert: #24476b;
  --karar: #a6192e; /* Emsal karar türü + kritik hata (v1.1: mühür kalktı) */
  --yururlukte: #2e6e4e;
  --degisik: #9a6a00;
  --duyuru: #2563a8; /* tür rengi: --lacivert'ten biraz daha canlı mavi
                        (kurucu isteği 2026-07-19). Beyaz üzerinde 6.12:1,
                        WCAG AA geçiyor. Bağlantı rengi --lacivert AYNI kaldı. */
  --mulga: rgba(30, 42, 50, 0.55);

  --serif: Literata, Georgia, "Times New Roman", serif;
  --sans: "IBM Plex Sans", system-ui, -apple-system, sans-serif;
  --mono: "IBM Plex Mono", ui-monospace, "Courier New", monospace;

  --olcu: 70ch; /* madde metni satır genişliği */
  --bosluk: 1rem;
}

*, *::before, *::after { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--zemin);
  color: var(--murekkep);
  font-family: var(--sans);
  font-size: 15px;
  line-height: 1.5;
}

/* --- Tipografi ölçeği (desktop → mobile) --- */
h1 { font-family: var(--serif); font-size: 34px; line-height: 1.25; margin: 0 0 .5rem; }
h2 { font-family: var(--serif); font-size: 24px; line-height: 1.3; margin: 2rem 0 .75rem; }
h3 { font-family: var(--sans); font-size: 17px; font-weight: 600; margin: 1.25rem 0 .5rem; }

a { color: var(--lacivert); }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible {
  outline: 2px solid var(--lacivert);
  outline-offset: 2px;
}

/* "Kimi ilgilendirir" — okuyan kendini tanısın diye görsel olarak ayrışır.
   Token dışı renk yok (TASARIM.md m.3): yüzey zemin + lacivert sol şerit. */
.kimi-ilgilendirir {
  background: var(--yuzey);
  border-left: 3px solid var(--lacivert);
  padding: .5rem .8rem;
  margin: .5rem 0;
  font-size: 15px;
}
.kimi-ilgilendirir strong { color: var(--lacivert); }

/* Hareket duyarlılığı: v1.0'da bu koruma yalnız mühür animasyonunu kapatıyordu;
   mühür kalkınca (v1.1) genel kurala çevrildi — geriye kalan tek hareket test
   şıklarının hover geçişi, ama kural yeni eklenen her hareketi de kapsasın. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* TÜR RENGİ — v1.1 imza öğesi (mühür rozetinin yerine).
   Renk DEKOR DEĞİL tarama aracıdır: okur listede "hangisi karar, hangisi
   mevzuat" diye okumak zorunda kalmasın. Madde metni türsüzdür (kanunun
   kendisi, bizim ürettiğimiz içerik değil) — şerit almaz. */
.tur-karar   { --tur: var(--karar); }
.tur-mevzuat { --tur: var(--degisik); }
.tur-duyuru  { --tur: var(--duyuru); }

.tur-etiket {
  font-family: var(--mono); font-size: 10.5px; font-weight: 700;
  letter-spacing: .06em; text-transform: uppercase;
  color: var(--tur, var(--mulga));
}

/* Bölüm başlığı: aynı renkte ince alt çizgi — bölümün kimliğini taşır. */
.bolum-basligi {
  border-bottom: 2px solid var(--tur, var(--cizgi));
  padding-bottom: .3rem; margin-bottom: .2rem;
  display: flex; align-items: baseline; justify-content: space-between; gap: 1rem;
}
.bolum-basligi h2 { margin: 0; }
.bolum-basligi .tumu { font-family: var(--sans); font-size: 13.5px; }

/* --- Yerleşim: 3 sütun --- */
/* Üst şerit (v1.2): solda kimlik, sağda BİRLEŞİK arama, altta gezinme.
   Arama artık sitenin tek giriş noktası ve her sayfada aynı yerde — eskiden
   kanun araması sol kolonda, karar araması ayrı bir sayfada duruyordu. */
.ust {
  border-bottom: 1px solid var(--cizgi);
  padding: .85rem 1rem .55rem;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas: "kimlik arama" "nav nav";
  gap: .5rem 1.5rem;
  /* center DEĞİL start: arama kutusu iki satırlı (radyo + girdi), kimlik tek
     satırlı. center'da kutu satırın tamamını doldurup ÜSTE YAPIŞIYOR, kimlik
     ise ortalanınca üstten boşluk alıyordu — asimetrik görünüyordu. start ile
     ikisi aynı hizadan başlar; kimlik'in küçük payı font boyu farkı içindir
     (18px serif başlık ile 13px radyo etiketini optik hizalamak için). */
  align-items: start;
}
.ust-kimlik {
  grid-area: kimlik; display: flex; align-items: baseline; gap: .5rem;
  margin-top: .15rem;
}
.ust .marka { font-family: var(--serif); font-weight: 700; font-size: 18px; color: var(--murekkep); text-decoration: none; }
.marka-alt { font-family: var(--sans); font-size: 13px; color: var(--mulga); }
/* TASARIM.md: arayüz ölçeği 15px. 14 sözleşmeye aykırıydı ve
   üst şeridi olduğundan küçük gösteriyordu. */
.ust nav { grid-area: nav; display: flex; gap: 1.15rem; font-size: 15px; flex-wrap: wrap; }

/* --- Birleşik arama kutusu --- */
.gizli {
  position: absolute; width: 1px; height: 1px; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap;
}
.arama-kutu { position: relative; }
.arama-ust { grid-area: arama; justify-self: end; width: min(100%, 520px); }
@media (max-width: 760px) { .ust-kimlik { margin-top: 0; } }
.arama-sayfa { width: 100%; margin-bottom: .5rem; }

.arama-mod { border: 0; margin: 0 0 .25rem; padding: 0; display: flex; gap: .9rem; }
.arama-mod label {
  font-family: var(--sans); font-size: 13px; color: var(--mulga);
  display: inline-flex; align-items: center; gap: .3rem; cursor: pointer;
}
.arama-mod input:checked + * , .arama-mod label:has(input:checked) { color: var(--murekkep); font-weight: 600; }
.arama-satir { display: flex; gap: .35rem; }
.arama-satir input {
  flex: 1; min-width: 0; font-family: var(--sans); font-size: 15px;
  padding: .45rem .6rem; border: 1px solid var(--cizgi);
  background: var(--zemin); color: var(--murekkep);
}
.arama-satir input:focus { border-color: var(--lacivert); }
.arama-satir button {
  font-family: var(--sans); font-size: 14px; padding: .45rem .9rem; cursor: pointer;
  border: 1px solid var(--lacivert); background: var(--lacivert); color: var(--zemin);
}
.arama-hata { color: var(--karar); font-size: 12.5px; margin: .3rem 0 0; }
.arama-hata:empty { margin: 0; }
/* Üstteki kutunun sonuç listesi sayfayı itmesin: açılır katman. */
.arama-ust .arama-sonuc {
  position: absolute; z-index: 20; left: 0; right: 0;
  background: var(--zemin); border: 1px solid var(--cizgi);
  max-height: 60vh; overflow-y: auto;
}
.arama-ust .arama-sonuc:empty { border: 0; }
.arama-sonuc a {
  display: flex; gap: .5rem; align-items: baseline;
  padding: .45rem .6rem; line-height: 1.4; text-decoration: none;
  border-bottom: 1px solid var(--cizgi);
}
.arama-sonuc a:last-child { border-bottom: none; }
.arama-sonuc a:hover { background: var(--yuzey); }
.arama-noscript { font-size: 13px; margin: .3rem 0 0; }

@media (max-width: 760px) {
  .ust { grid-template-columns: 1fr; grid-template-areas: "kimlik" "arama" "nav"; }
  .arama-ust { justify-self: stretch; width: 100%; }
}

.duzen {
  display: grid;
  /* Sol kolon genişliği DEĞİŞKEN: kullanıcı sağ kenarından tutup sürükleyebilir
     (site.js kolonKur). Varsayılan 280px; çift tıkla buraya döner. */
  grid-template-columns: var(--sol-genislik, 280px) minmax(0, 1fr) 240px;
  gap: 2rem;
  max-width: 1240px;
  margin: 0 auto;
  padding: 1.5rem 1rem 4rem;
  align-items: start;
}
/* Sağ künye sütunu olmayan sayfalar (ana sayfa, düz metin): 2 sütun. */
.duzen-2 { grid-template-columns: var(--sol-genislik, 280px) minmax(0, 1fr); }
.duzen-2 main { max-width: var(--olcu); }
@media (max-width: 1000px) {
  .duzen, .duzen-2 { grid-template-columns: 1fr; }
  .yan-sol { order: -1; }
  .yan-sag { order: 1; }
}

.yan-sol, .yan-sag { position: sticky; top: 1rem; font-size: 14px; }
.yan-sol { position: sticky; }

/* Kolon genişletme tutamağı. JS yoksa hiç basılmaz (aşamalı zenginleştirme). */
.sol-tut {
  position: absolute; top: 0; right: -1rem; width: 1rem; height: 100%;
  cursor: col-resize; background: none; border: 0; padding: 0;
  display: flex; align-items: center; justify-content: center;
}
.sol-tut::before {
  content: ""; width: 2px; height: 100%; background: transparent;
  transition: background .12s;
}
.sol-tut:hover::before, .sol-tut:focus-visible::before,
.sol-tut[data-surukle="1"]::before { background: var(--lacivert); }
.sol-tut:focus-visible { outline: none; }
body[data-surukleniyor="1"] { cursor: col-resize; user-select: none; }
@media (max-width: 1000px) { .sol-tut { display: none; } }
@media (max-width: 1000px) { .yan-sol, .yan-sag { position: static; } }

/* --- GİT kutusu --- */
.git-kutu { border: 1px solid var(--cizgi); background: var(--yuzey); padding: .75rem; margin-bottom: 1rem; }
.git-kutu label { display: block; font-size: 12px; font-weight: 600; margin-bottom: .35rem; }
.git-kutu .satir { display: flex; gap: .35rem; }
.git-kutu input {
  flex: 1; min-width: 0; font-family: var(--mono); font-size: 13.5px;
  padding: .4rem; border: 1px solid var(--cizgi); background: var(--zemin); color: var(--murekkep);
}
.git-kutu button {
  font-family: var(--sans); font-size: 13px; padding: .4rem .6rem; cursor: pointer;
  border: 1px solid var(--lacivert); background: var(--lacivert); color: var(--zemin);
}
.git-hata { color: var(--karar); font-size: 12.5px; margin-top: .4rem; }
.git-sonuc { margin-top: .5rem; max-height: 55vh; overflow-y: auto; }
.git-sonuc a {
  display: flex; gap: .5rem; align-items: baseline;
  padding: .45rem .3rem; line-height: 1.4; text-decoration: none;
  border-bottom: 1px solid var(--cizgi);
}
.git-sonuc a:last-child { border-bottom: none; }
.git-sonuc a:hover { background: var(--yuzey); }
.git-sonuc a:hover .madde-ad { text-decoration: underline; }

/* Madde bağlantısı: numara (mono, lacivert) + başlık (sans) ayrı dizilir.
   Ağaç ve GİT sonuç listesi paylaşır — okunabilirlik. */
.madde-no { font-family: var(--mono); font-size: 13px; font-weight: 700; color: var(--lacivert); flex: none; }
.madde-ad { font-family: var(--sans); font-size: 14px; font-weight: 400; color: var(--murekkep); }

/* --- Ağaç: KAPALI gelir; <details> ile JS'siz de çalışır --- */
.agac-baslik {
  font-family: var(--mono); font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .04em; color: var(--yururlukte);
  margin: 0 0 .35rem;
}
.agac { border: 1px solid var(--cizgi); padding: .6rem; }
.agac ul { list-style: none; margin: 0; padding-left: .9rem; }
.agac details > summary {
  cursor: pointer; padding: .4rem 0; font-size: 14px; line-height: 1.35;
  list-style: none;
}
.agac details > summary::-webkit-details-marker { display: none; }
.agac details > summary::before { content: "▸ "; color: var(--lacivert); }
.agac details[open] > summary::before { content: "▾ "; }
.agac a {
  display: flex; gap: .45rem; align-items: baseline;
  padding: .35rem .2rem; text-decoration: none; line-height: 1.35;
}
.agac a:hover { background: var(--yuzey); }
.agac a:hover .madde-ad { text-decoration: underline; }
.agac a.aktif .madde-ad { font-weight: 600; }
.agac a.aktif .madde-no::after { content: " ●"; }
.agac .yukleniyor { font-size: 12.5px; color: var(--mulga); padding: .3rem 0; }

/* --- Madde metni --- */
.yol { font-size: 12.5px; color: var(--mulga); margin-bottom: .75rem; }
.yol a { color: var(--mulga); }

article { max-width: var(--olcu); }
.madde-metin { font-family: var(--serif); font-size: 19px; line-height: 1.65; }
.fikra { display: flex; gap: .6rem; margin: 0 0 .9rem; }
.fikra-no { font-family: var(--mono); font-size: 15px; color: var(--lacivert); flex: none; padding-top: .2rem; }
.madde-atif { text-decoration-thickness: 1px; text-underline-offset: 2px; }

/* Bentler: fıkranın altında, paragraf başıyla; harf mono+lacivert. */
.bentler { list-style: none; margin: -.3rem 0 1rem; padding-left: 1.8rem; }
.bentler li { display: flex; gap: .55rem; margin: 0 0 .5rem; }
.bent-harf { font-family: var(--mono); font-size: 15px; color: var(--lacivert); flex: none; padding-top: .1rem; }

/* --- Karar tam metni: kaynak tek sıra geliyor, yapı geri kuruluyor --- */
.karar-tam-metin { font-family: var(--serif); font-size: 16.5px; line-height: 1.6; }
.karar-tam-metin p { margin: 0 0 .85rem; }
/* Künye alanı: etiket mono ve soluk, değer normal — "belge künyesi" hissi
   (TASARIM.md: künye/atıf mono). */
.ktm-kunye {
  font-family: var(--sans); font-size: 14px; line-height: 1.5;
  margin: 0 0 .2rem !important;
}
.ktm-etiket {
  font-family: var(--mono); font-size: 11.5px; letter-spacing: .03em;
  color: var(--mulga); text-transform: uppercase; margin-right: .4rem;
}
/* Bölüm başlığı: GEREKÇE, HÜKÜM, DAVA VE TALEP… */
.ktm-baslik {
  font-family: var(--mono); font-size: 12px; font-weight: 700;
  letter-spacing: .05em; color: var(--lacivert);
  margin: 1.5rem 0 .5rem; padding-bottom: .2rem;
  border-bottom: 1px solid var(--cizgi);
}

/* --- Karşılaştırma cetveli --- */
.cetvel-arac { margin: 1.25rem 0 .5rem; }
.cetvel-arac label { display: block; font-size: 12px; font-weight: 600; margin-bottom: .35rem; }
.cetvel-arac input {
  width: 100%; max-width: 420px; font-size: 14px; padding: .5rem;
  border: 1px solid var(--cizgi); background: var(--zemin); color: var(--murekkep);
  font-family: var(--sans);
}
.cetvel-sayac { font-size: 12.5px; color: var(--mulga); margin-top: .4rem; }
.cetvel-sar { overflow-x: auto; }
/* table-layout: fixed → kolon genişlikleri içeriğe değil bu oranlara bağlı;
   content-visibility ile ekran dışı satırlar render edilmese de kolonlar
   kaymaz. 1551 satırlık tablonun ilk render'ı böyle hızlanır. */
.cetvel { border-collapse: collapse; width: 100%; font-size: 14px; table-layout: fixed; }
.cetvel col.c-yeni { width: 8rem; }
.cetvel col.c-iliski { width: 7rem; }
.cetvel col.c-eski { width: 8rem; }
.cetvel tbody tr {
  content-visibility: auto;
  contain-intrinsic-size: auto 44px; /* ekran dışı satır için yükseklik tahmini */
}
.cetvel th, .cetvel td {
  text-align: left; padding: .5rem .7rem; border-bottom: 1px solid var(--cizgi);
  vertical-align: top; word-break: break-word;
}
.cetvel thead th {
  position: sticky; top: 0; background: var(--zemin);
  font-family: var(--sans); font-size: 11.5px; text-transform: uppercase;
  letter-spacing: .04em; color: var(--mulga); border-bottom: 2px solid var(--cizgi);
}
.cetvel a { text-decoration: none; }
.cetvel a:hover .madde-no { text-decoration: underline; }
.cetvel .cetvel-not { color: var(--mulga); font-size: 13px; }
.cetvel .cetvel-yok { color: var(--mulga); }

/* --- TTK dizin sayfası (/ttk/) --- */
.ttk-dizin h2 { font-size: 20px; border-bottom: 1px solid var(--cizgi); padding-bottom: .3rem; }
.ttk-dizin h3 { font-size: 16px; color: var(--mulga); margin: 1rem 0 .4rem; }
.dizin-bolum { font-family: var(--sans); font-size: 13px; font-weight: 600; color: var(--mulga); margin: .7rem 0 .2rem; }
.dizin-madde {
  display: flex; gap: .5rem; align-items: baseline; padding: .3rem .2rem;
  text-decoration: none;
  content-visibility: auto; contain-intrinsic-size: auto 32px;
}
.dizin-madde:hover { background: var(--yuzey); }
.dizin-madde:hover .madde-ad { text-decoration: underline; }

/* --- Durum etiketleri --- */
.durum { font-family: var(--mono); font-size: 12px; text-transform: uppercase; letter-spacing: .03em; }
.durum-yururlukte { color: var(--yururlukte); }
.durum-degisik { color: var(--degisik); }
.durum-mulga { color: var(--mulga); }

/* --- Yapraklar (accordion) --- */
.yaprak { border-top: 1px solid var(--cizgi); }
.yaprak > summary {
  cursor: pointer; padding: .8rem 0; font-weight: 600; font-size: 15px; list-style: none;
}
.yaprak > summary::-webkit-details-marker { display: none; }
.yaprak > summary::before { content: "▸ "; color: var(--lacivert); }
.yaprak[open] > summary::before { content: "▾ "; }
.yaprak-govde { padding: 0 0 1rem; font-family: var(--serif); font-size: 17px; line-height: 1.6; }
.yaprak-pasif > summary { color: var(--mulga); cursor: default; }
.yaprak-bos { color: var(--mulga); font-family: var(--sans); font-size: 14px; padding-bottom: 1rem; }
/* Eski TTK (6762) karşılık kalemleri: birden çok eşleşme ayrı bloklarda. */
.eski-karsilik { border-top: 1px solid var(--cizgi); padding: .7rem 0; }
.eski-karsilik:first-child { border-top: none; padding-top: 0; }
.eski-metin { font-size: 15px; color: var(--mulga); margin-top: .3rem; }
.kunye-not {
  font-family: var(--mono); font-size: 12.5px; color: var(--mulga);
  border-left: 2px solid var(--cizgi); padding-left: .6rem; margin-top: .75rem;
}
/* Gerekçe, tasarı metnine yazılmıştır; yürürlükteki metinden sapabilir.
   Uyarı sessiz ama görünür olmalı — kullanıcı güncel sanmasın. */
.gerekce-uyari {
  font-family: var(--sans); font-size: 13px; color: var(--degisik);
  border: 1px solid var(--degisik); background: var(--zemin);
  padding: .5rem .6rem; margin-bottom: .75rem;
}

/* Mülga (6762) madde sayfası uyarısı — nötr, sessiz. */
.eski-uyari {
  font-family: var(--sans); font-size: 13px; color: var(--murekkep);
  border: 1px solid var(--cizgi); background: var(--yuzey);
  padding: .6rem .7rem; margin-bottom: 1rem;
}
h1 .durum { font-size: 12px; vertical-align: middle; margin-left: .5rem; }

/* Kanun kimliği etiketi — hangi numara hangi kanun, numaranın YANINDA belli
   olsun. Renk ayrımı: ESKİ=gri (mülga), YENİ=yeşil (yürürlükte). */
.kanun-kicker {
  display: inline-block; font-family: var(--mono); font-size: 11.5px;
  font-weight: 700; text-transform: uppercase; letter-spacing: .05em;
  margin: 0 0 .25rem;
}
.kanun-eski { color: var(--mulga); }
.kanun-yeni { color: var(--yururlukte); }
.kayit-liste .kanun-kicker { display: block; margin-bottom: .1rem; }

/* Maddeler arası prev/next gezinme */
.madde-gezinme {
  display: flex; justify-content: space-between; gap: 1rem;
  border-top: 1px solid var(--cizgi); margin-top: 2rem; padding-top: 1rem;
}
.madde-gezinme a {
  display: flex; flex-direction: column; gap: .15rem; text-decoration: none;
  padding: .4rem .6rem; border: 1px solid var(--cizgi);
}
.madde-gezinme a:hover { background: var(--yuzey); }
.madde-gezinme .sonraki { text-align: right; margin-left: auto; }
.madde-gezinme .yon { font-size: 12px; color: var(--mulga); }

/* --- Künye / atıf kutusu --- */
.kunye { border: 1px solid var(--cizgi); background: var(--yuzey); padding: .75rem; }
.kunye dt { font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em; color: var(--mulga); margin-top: .6rem; }
.kunye dd { margin: .15rem 0 0; font-family: var(--mono); font-size: 13.5px; }
.atif-kutu { border: 1px solid var(--cizgi); background: var(--zemin); padding: .6rem; margin-bottom: .75rem; }
.atif-metin { font-family: var(--mono); font-size: 13.5px; word-break: break-word; }
.atif-kutu button {
  margin-top: .5rem; width: 100%; cursor: pointer; font-size: 13px; padding: .35rem;
  border: 1px solid var(--lacivert); background: var(--zemin); color: var(--lacivert);
}

/* --- Listeler / boş durumlar --- */
.kayit-liste { list-style: none; padding: 0; margin: 0; }
/* Sol dikey şerit KALDIRILDI (kurucu, 2026-07-19): listedeki her öğe aynı
   türden olduğu için şerit kesintisiz bir çizgiye dönüşüyor ve bölüm başlığının
   zaten söylediğinden fazlasını söylemiyordu. Tür rengi artık yalnız bölüm
   başlığının alt çizgisinde ve tür etiketinde taşınıyor. */
.kayit-liste li {
  border-top: 1px solid var(--cizgi);
  padding: .9rem 0;
}
.kayit-liste li:first-child { border-top: none; }
.kayit-liste time { font-family: var(--mono); font-size: 12.5px; color: var(--mulga); }
.bos-durum { color: var(--mulga); font-size: 14px; border-top: 1px solid var(--cizgi); padding-top: .9rem; }

.sorumluluk {
  border-top: 1px solid var(--cizgi); margin-top: 3rem; padding: 1rem;
  font-size: 12.5px; color: var(--mulga); text-align: center;
}
.alt { border-top: 1px solid var(--cizgi); padding: 1.5rem 1rem; font-size: 13px; }
.alt nav { display: flex; gap: 1rem; flex-wrap: wrap; justify-content: center; }

/* --- Ana sayfa başı (v1.2: kahraman kutusu kalktı, arama üst şeritte) --- */
.sayfa-basi { max-width: 1240px; margin: 0 auto; padding: 1.6rem 1rem .2rem; }
.sayfa-basi h1 { margin-bottom: .2rem; }
.sayfa-basi-alt { color: var(--mulga); font-size: 15px; margin: 0; }

/* --- Mobil ölçek --- */
@media (max-width: 640px) {
  h1 { font-size: 26px; }
  h2 { font-size: 20px; }
  .madde-metin { font-size: 17px; }
}

/* =========================================================================
   BASKI — hukukçular yazdırır. Ağaç/panel gizlenir; madde + künye + URL kalır.
   Yapraklar baskıda AÇIK basılır (TASARIM.md kalite tabanı).
   ========================================================================= */
@media print {
  .ust, .yan-sol, .git-kutu, .alt, .atif-kutu button, nav { display: none !important; }
  .duzen { display: block; max-width: none; padding: 0; }
  body { font-size: 11pt; }
  .madde-metin { font-size: 11pt; max-width: none; }
  .yaprak > summary::before { content: ""; }
  .yaprak-govde { display: block !important; }
  details { display: block !important; }
  details > summary { list-style: none; font-weight: 700; }
  .muhur { animation: none; box-shadow: none; }
  a[href^="/"]::after { content: " (6102ttk.com" attr(href) ")"; font-size: 9pt; color: #555; }
  .baski-kunye { display: block !important; margin-top: 1rem; font-size: 9pt; }
}
.baski-kunye { display: none; }

/* --- "Kendinizi test edin" (test bileşeni; docs/TASARIM token'ları) --- */
/* Türetilen tint'ler: --mulga deseni gibi, token renklerinin opaklık varyantı.
   KIRMIZI YOK — yanlış cevap soluk gösterilir; kırmızı emsal karar türüne
   ve kritik hataya ayrılmıştır (TASARIM.md v1.1). */
:root {
  --test-dogru-zemin: rgba(46, 110, 78, .08);  /* --yururlukte %8 */
  --test-dogru-cizgi: rgba(46, 110, 78, .5);
  --test-secili-zemin: rgba(36, 71, 107, .06); /* --lacivert %6 */
}
.test-yaprak { border-top: 1px solid var(--cizgi); margin-top: .5rem; }
.test-yaprak > summary {
  cursor: pointer; padding: .8rem 0; font-weight: 600; font-size: 15px;
  list-style: none; font-family: var(--sans);
}
.test-yaprak > summary::-webkit-details-marker { display: none; }
.test-yaprak > summary::before { content: "▸ "; color: var(--lacivert); }
.test-yaprak[open] > summary::before { content: "▾ "; }
.test-ic { padding-bottom: 1rem; }
.test-meta { font-family: var(--mono); font-size: 12.5px; color: var(--mulga); margin: 0 0 .5rem; }
.test-soru { font-family: var(--serif); font-size: 17px; line-height: 1.6; margin: 0 0 1rem; }
.test-durum { font-family: var(--sans); font-size: 14px; font-weight: 600; margin: 0 0 .8rem; }
.test-durum.dogru { color: var(--yururlukte); }
.test-durum.notr { color: var(--mulga); }
.test-siklar { display: flex; flex-direction: column; gap: .55rem; margin-bottom: 1rem; }
.test-sik {
  position: relative; font-family: var(--serif); font-size: 16px; line-height: 1.5;
  color: var(--murekkep); background: var(--zemin); border: 1px solid var(--cizgi);
  border-radius: 4px; padding: .8rem 1rem .8rem 2.5rem; cursor: pointer;
  transition: border-color .12s, background .12s;
}
.test-sik:hover { border-color: var(--lacivert); }
.test-sik:focus-visible { outline: 2px solid var(--lacivert); outline-offset: 2px; }
.test-sik.secili { border-color: var(--lacivert); background: var(--test-secili-zemin); }
.test-sik.kilitli { cursor: default; }
.test-sik.kilitli:hover { border-color: var(--cizgi); }
.test-sik.dogru, .test-sik.dogru:hover {
  border-color: var(--test-dogru-cizgi); background: var(--test-dogru-zemin);
}
.test-sik.dogru .test-harf { color: var(--yururlukte); }
.test-sik.yanlis-secili { opacity: .7; }
.test-harf {
  position: absolute; left: .9rem; top: .8rem; font-family: var(--mono);
  font-size: 13px; font-weight: 600; color: var(--mulga);
}
.test-rozet {
  display: inline-block; font-family: var(--sans); font-size: 12px;
  font-weight: 600; margin-left: .5rem;
}
.test-rozet.ok { color: var(--yururlukte); }
.test-rozet.senin { color: var(--mulga); font-weight: 500; }
.test-neden {
  margin-top: .5rem; padding-top: .5rem; border-top: 1px solid var(--cizgi);
  font-family: var(--sans); font-size: 13.5px; color: var(--mulga); line-height: 1.5;
}
.test-neden b { color: var(--lacivert); font-weight: 600; }
.test-aciklama {
  margin: 0 0 1rem; padding: .9rem 1.05rem; background: var(--yuzey);
  border-left: 3px solid var(--lacivert); border-radius: 0 4px 4px 0;
  font-family: var(--sans); font-size: 14px; line-height: 1.6;
}
.test-aciklama b { color: var(--lacivert); }
.test-eylem { display: flex; gap: .7rem; flex-wrap: wrap; align-items: center; }
.test-btn {
  font-family: var(--sans); font-size: 14px; font-weight: 600; cursor: pointer;
  border-radius: 4px; padding: .55rem 1.1rem; border: 1px solid transparent;
}
.test-btn-birincil { background: var(--lacivert); color: var(--zemin); }
.test-btn-birincil:disabled { opacity: .4; cursor: default; }
.test-btn-ikincil { background: transparent; color: var(--lacivert); border-color: var(--cizgi); }
.test-siklar-statik { font-family: var(--serif); font-size: 16px; line-height: 1.5; padding-left: 1.4rem; }
.test-siklar-statik li { list-style: upper-alpha; margin: .3rem 0; }
.test-cevap { margin-top: .6rem; }
.test-cevap > summary { cursor: pointer; font-family: var(--sans); font-size: 14px; color: var(--lacivert); }
@media print { .test-yaprak { display: none; } }
.test-bitti { font-family: var(--sans); font-size: 13.5px; color: var(--mulga); margin: .2rem 0 .8rem; }

/* --- Yapısal atıf linki (bu Kısım / İkinci Kitap) + birim sayfası --- */
/* madde-atif düz altçizgi; birim-atif NOKTALI — okur yapısal birime gittiğini anlar. */
.birim-atif { text-decoration-style: dotted; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.ust-yol { font-family: var(--mono); font-size: 12.5px; color: var(--mulga); margin: 0 0 .3rem; text-transform: uppercase; letter-spacing: .04em; }
.birim-yol { font-family: var(--sans); font-size: 14px; margin: 0 0 1.2rem; }
.birim-yol a { color: var(--lacivert); }
.birim-liste, .birim-madde-liste { list-style: none; padding: 0; margin: .4rem 0 1.4rem; }
.birim-liste li { border-top: 1px solid var(--cizgi); padding: .6rem 0; }
.birim-liste li:last-child { border-bottom: 1px solid var(--cizgi); }
.birim-madde-liste li { padding: .35rem 0; border-top: 1px solid var(--cizgi); }
.birim-madde-liste .madde-no { margin-right: .5rem; }
.birim-madde-liste .madde-ad { font-family: var(--serif); }

/* --- Çoklu madde birlikte görüntüleme (/ttk/birlikte/) --- */
.birlikte-aciklama { color: var(--mulga); font-family: var(--sans); font-size: 14.5px; margin: .2rem 0 1.1rem; }
.birlikte-form { margin: 0 0 1.4rem; }
.birlikte-form label { display: block; font-family: var(--sans); font-size: 13px; color: var(--mulga); margin-bottom: .3rem; }
.birlikte-git { display: inline-block; font-family: var(--sans); font-size: 13.5px; color: var(--lacivert); margin: .2rem 0 .6rem; }
.birlikte-sonuc { display: flex; flex-direction: column; gap: 1.6rem; }
.birlikte-madde { border-top: 2px solid var(--cizgi); padding-top: 1rem; }
.birlikte-madde h2 { font-size: 20px; margin: 0 0 .6rem; }
.birlikte-tamlink { display: inline-block; font-family: var(--sans); font-size: 13px; color: var(--lacivert); margin-top: .5rem; }
.yukleniyor { font-family: var(--sans); font-size: 13.5px; color: var(--mulga); }

/* --- Gelişmeler sayfalama --- */
.sayfalama { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: 1.6rem 0 .5rem; padding-top: 1rem; border-top: 1px solid var(--cizgi); font-family: var(--sans); font-size: 14px; }
.sayfalama a { color: var(--lacivert); font-weight: 600; }
.sayfalama .sayfa-no { color: var(--mulga); font-family: var(--mono); font-size: 13px; }

/* --- TTK arama (/ara/) --- */
/* Odaklı, tek sütun arama sayfası (ağaç kenar çubuğu yok — ferah). */
.ara-sayfa { max-width: 820px; margin: 0 auto; padding: 1.5rem 1.2rem 4rem; }
.ara-sayfa h1 { margin-bottom: .3rem; }
.ara-aciklama { color: var(--mulga); font-family: var(--sans); font-size: 15px; line-height: 1.55; margin: 0 0 1.5rem; max-width: 62ch; }
/* /kararlar/ hub'ından arama sayfasına kısayol. Yalnız mevcut token'lar. */
.ara-kisayol { font-family: var(--sans); font-size: 14px; margin: 0 0 1.2rem; }
.ara-kisayol a { color: var(--lacivert); font-weight: 600; }
.ara-kisayol span { color: var(--mulga); }

.ara-form { margin: 0 0 .3rem; }
.ara-satir { display: flex; gap: .6rem; }
.ara-satir input {
  flex: 1; min-width: 0; font-family: var(--sans); font-size: 16.5px;
  padding: .75rem .95rem; border: 1px solid var(--cizgi); border-radius: 6px;
  background: var(--zemin); color: var(--murekkep);
}
.ara-satir input:focus-visible { border-color: var(--lacivert); }
.ara-satir button {
  font-family: var(--sans); font-size: 15px; font-weight: 600; cursor: pointer;
  padding: 0 1.5rem; border: 1px solid var(--lacivert); border-radius: 6px;
  background: var(--lacivert); color: var(--zemin);
}
.ara-kontrol {
  display: flex; align-items: center; gap: 1.25rem; flex-wrap: wrap;
  margin-top: .85rem; font-family: var(--sans); font-size: 13px; color: var(--mulga);
}
.ara-alan-et { font-size: 13px; color: var(--mulga); }
.ara-kontrol select {
  font-family: var(--sans); font-size: 13.5px; padding: .35rem .5rem; margin-left: .4rem;
  border: 1px solid var(--cizgi); border-radius: 4px; background: var(--zemin); color: var(--murekkep);
}
.ara-durum { font-family: var(--mono); font-size: 12.5px; color: var(--mulga); margin: 1.4rem 0 .5rem; min-height: 1em; }
.ara-sonuc { display: flex; flex-direction: column; }
.ara-oge { border-top: 1px solid var(--cizgi); padding: .7rem 0 .75rem; }
.ara-oge h3 { font-size: 16px; line-height: 1.35; margin: 0 0 .15rem; font-weight: 600; }
.ara-yol { font-family: var(--mono); font-size: 11.5px; color: var(--mulga); margin: 0 0 .3rem; letter-spacing: .01em; }
.ara-snippet { font-family: var(--serif); font-size: 14.5px; line-height: 1.5; margin: 0; color: var(--mulga); max-width: 70ch; }
.ara-snippet mark { background: rgba(36, 71, 107, .11); color: var(--murekkep); font-weight: 600; padding: 0 .08em; border-radius: 2px; }
.ara-gerekce-sec { font-family: var(--sans); font-size: 13px; color: var(--mulga); display: inline-flex; align-items: center; gap: .35rem; margin-left: .3rem; cursor: pointer; }
.ara-etiket { font-family: var(--sans); font-size: 11px; font-weight: 600; color: var(--degisik); background: rgba(154, 106, 0, .1); padding: .05em .45em; border-radius: 3px; margin-right: .45rem; vertical-align: .08em; }

/* Emsal karar merkezi (/kararlar/) + breadcrumb */
.ekmek-kirintisi { font-family: var(--sans); font-size: 12.5px; color: var(--mulga); margin: 0 0 1rem; }
.ekmek-kirintisi a { color: var(--lacivert); }
.karar-liste { list-style: none; padding: 0; margin: 1.5rem 0 0; }
.karar-oge {
  border-top: 1px solid var(--cizgi);
  padding: 1rem 0 1.1rem;
}
.karar-liste { --tur: var(--karar); }  /* başlık alt çizgisi ve etiketler için */
.karar-oge h2 { font-size: 17px; line-height: 1.35; margin: 0 0 .25rem; font-weight: 600; }
.karar-oge h2 a { color: var(--lacivert); }
.karar-kunye { font-family: var(--sans); font-size: 12.5px; color: var(--mulga); margin: 0 0 .35rem; }
.karar-ozet { font-size: 15px; line-height: 1.5; margin: 0 0 .55rem; }
.karar-etiketler { display: flex; flex-wrap: wrap; gap: .4rem; margin: 0; }
.etiket { font-family: var(--sans); font-size: 11.5px; font-weight: 600; padding: .12em .5em; border-radius: 3px; text-decoration: none; }
.etiket-madde { color: var(--lacivert); background: rgba(36, 71, 107, .09); border: 1px solid rgba(36, 71, 107, .18); }
.etiket-kavram { color: var(--degisik); background: rgba(154, 106, 0, .1); }
