/* Kabuk ekleri · yeni tasarimin canliya uyarlanmasi (30.09). Tasarim dosyalarina
   (temel, gosterim, landing, panel) dokunulmaz; canliya ozgu ekler burada. */

/* Uye sayfalarinin sade altbilgisi */
.panel-alt { border-top: 1px solid var(--cizgi, rgba(26,34,45,.14)); margin-top: var(--b-8, 4rem); padding-block: var(--b-5, 1.5rem) calc(var(--b-7, 3rem) + env(safe-area-inset-bottom, 0px)); }
.panel-alt__ic { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem 1.5rem; }
.panel-alt p { margin: 0; font-size: var(--t-mini, .8125rem); color: var(--murekkep-2, #4B5563); max-width: none; }
.panel-alt nav { display: flex; flex-wrap: wrap; gap: .25rem 1rem; }
.panel-alt nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: var(--t-mini, .8125rem); color: var(--murekkep-2, #4B5563); }

/* Yapay zeka blogu (zeka.js sov yolu) */
.yanit .zeka-durum { margin: var(--b-3, .75rem) 0 0; font-size: var(--t-kucuk, .9375rem); line-height: 1.6; color: #CBC4B6; max-width: 62ch; }
.yanit .zeka-durum .baglanti { color: #D9B96E; }
.yanit .konsol__kaynaklar .goz { margin: 0 0 .25rem; color: #A19B90; }
a.kaynak { text-decoration: none; color: var(--belge-murekkep, #1A222D); }
a.kaynak:hover .kaynak__ad { text-decoration: underline; text-underline-offset: 3px; }
a.kaynak:focus-visible { outline: 2px solid #D9B96E; outline-offset: 3px; }
.cumle__kaynak:empty { display: none; }

/* Suzgec kolonu: uzun daire adlari (Yargıtay 6. Hukuk Dairesi (1.202)) acilir listeyi kolondan
   tasiriyordu. Form ogeleri kolon genisligine sabitlenir. */
.suzgec, .suzgec__form, .suzgec .alan { min-width: 0; }
.suzgec select, .suzgec input[type=date], .suzgec input[type=text], .suzgec input[type=search] { width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; }
.ara__izgara > aside { min-width: 0; }

/* Karar rozetleri: veri katmani (ict_rozet_yeni) .badge siniflariyla basiyor; yeni rozet gorunumu. */
.sonuc__rozet .badge {
  display: inline-flex; align-items: center; min-height: 1.75rem; padding: 0 .6rem; border-radius: var(--r-tam, 999px);
  font-family: var(--yazi-mono); font-size: var(--t-mini, .8125rem); font-weight: 600; letter-spacing: .04em; line-height: 1; white-space: nowrap;
}
.sonuc__rozet .badge-content { color: var(--murekkep-2); box-shadow: inset 0 0 0 1px var(--cizgi-2, rgba(26,34,45,.2)); }
/* Yalniz tam metin yesil; ozet ve yalniz kunye notr (sinif ayni, ipucu metni ayiriyor) */
.sonuc__rozet .badge-content[title^="Kararın tam metni"] { color: var(--dogru); background: var(--dogru-zemin); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--dogru) 40%, transparent); }
.sonuc__rozet .badge-outline { color: var(--murekkep-2); box-shadow: inset 0 0 0 1px var(--cizgi-2, rgba(26,34,45,.2)); }

/* Mobil ana baslik (kurucu msg 2255: "satir sayisi, font ve icerik mobilde daha iyi olabilir").
   Dar ekranda kisa baslik (2 satir) ve tek satirlik ust etiket; genis ekranda tasarimin baslik metni. */
.dar-yalniz { display: none; }
@media (max-width: 600px) {
  .genis-yalniz { display: none; }
  .dar-yalniz { display: inline; }
  .hero h1 .hero-dar { display: block; font-size: clamp(2.35rem, 9.4vw, 2.75rem); line-height: 1.06; letter-spacing: -0.015em; font-weight: 450; }
  .hero h1 .hero-dar em { display: block; }
  .hero .goz { white-space: nowrap; }
}

/* Dar ekranda cumle satiri: rozet cumlenin USTUNE, metin tam genislik (rozet sutunu metni
   6-7 satira sikistiriyordu). Konsol hem landing gosteriminde hem arama yanitinda ortak. */
@media (max-width: 600px) {
  .cumle { grid-template-columns: 1fr; gap: .4rem; }
  .cumle__rozet { grid-row: 1; justify-self: start; min-width: 0; justify-content: flex-start; }
  .cumle__metin { grid-row: 2; }
}

/* Parola degistirme (calisma masasi, Hesap kutusu) */
.parola-degis { margin-top: var(--b-4, 1rem); border-top: 1px solid var(--cizgi); padding-top: var(--b-3, .75rem); }
.parola-degis summary { display: flex; align-items: center; min-height: 44px; cursor: pointer; font-weight: 600; color: var(--murekkep); }
.parola-form { display: grid; gap: .75rem; margin-top: .5rem; }
.parola-form label { display: grid; gap: .3rem; font-size: var(--t-kucuk); color: var(--murekkep-2); }
.parola-form input { min-height: 44px; padding: .5rem .7rem; border: 1px solid var(--cizgi-2, rgba(26,34,45,.25)); border-radius: var(--r-1, 4px); background: var(--zemin-kart, #fff); color: var(--murekkep); font: inherit; }
.parola-form .dugme { justify-self: start; }
.parola-bildirim { margin: .75rem 0 0; padding: .6rem .8rem; border-radius: var(--r-1, 4px); font-size: var(--t-kucuk); background: var(--dogru-zemin); color: var(--murekkep); border-left: 3px solid var(--dogru); }
.parola-bildirim.hatali { background: var(--hata-zemin); border-left-color: var(--hata); }

/* KARAR OKUMA · MOBIL (30.09 mobil QA)
   Yapiskan eylem cubugu iPhone'da 154 px, Android'de 4 satir 200 px idi (ekranin %25-33'u). Mobilde tek satir,
   yatay kaydirilir. "Metinde bul" kutusu ve isaretli eslesmeler yapiskan barlarin altinda kalmaz. */
@media (max-width: 700px) {
  .eylem-cubugu { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; padding: .45rem 0; gap: .35rem; }
  .eylem-cubugu::-webkit-scrollbar { display: none; }
  .eylem-cubugu button, .eylem-cubugu a { flex: 0 0 auto; white-space: nowrap; }
}
.metinde-bul, #decision-find-query { scroll-margin-top: 9rem; }
.belge-metin mark { scroll-margin-top: 9rem; scroll-margin-bottom: 6rem; }
.belge-metin mark.aktif { outline: 2px solid var(--vurgu); outline-offset: 1px; }
.bul-gezin { display: inline-flex; align-items: center; gap: .5rem; margin-top: .5rem; }
.bul-gezin button { min-width: 2.75rem; min-height: 2.75rem; border: 0; border-radius: var(--r-2); background: var(--zemin-kart); box-shadow: inset 0 0 0 1px var(--cizgi-2); font-size: 1.25rem; line-height: 1; color: var(--murekkep); cursor: pointer; }
.bul-sayac { min-width: 4.5rem; text-align: center; font-variant-numeric: tabular-nums; font-size: var(--t-kucuk); }
.okuma-bildirim { position: fixed; left: 50%; bottom: calc(5.4rem + env(safe-area-inset-bottom, 0px)); z-index: 70;
  max-width: calc(100vw - 2rem); padding: .65rem 1.1rem; border-radius: 999px; background: #16233A; color: #fff;
  font-size: .9375rem; box-shadow: 0 6px 20px rgba(12,18,27,.3); opacity: 0; pointer-events: none;
  transform: translate(-50%, .75rem); transition: opacity .2s ease, transform .2s ease; }
.okuma-bildirim.gorunur { opacity: 1; transform: translate(-50%, 0); }
.okuma-bildirim.hatali { background: #7A2E2E; }
#decision-share { width: min(32rem, calc(100vw - 2rem)); }
#decision-share::backdrop { background: rgba(12, 18, 27, .45); }
@media (prefers-reduced-motion: reduce) { .okuma-bildirim { transition: none; } }

/* AI KUTUSU · MOBIL (30.09 mobil QA): baslik kesilmesin, rozet kodu dayanaga gitsin, daraltma dugmesi */
@media (max-width: 700px) { .sahne__baslik { white-space: normal; overflow: visible; text-overflow: clip; line-height: 1.35; } }
a.cumle__kaynak { color: inherit; text-decoration: underline; text-underline-offset: 2px; min-height: 1.75rem; display: inline-flex; align-items: center; padding: 0 .15rem; }
.cumle__rozet { gap: .25rem; }
.zeka-devam { margin-top: .75rem; }

/* MAHKEME SECIMI (30.09 avukat geri bildirimi) · Masa arama kutusunun ustunde */
.masa-mahkeme { display: flex; flex-wrap: wrap; gap: .4rem; border: 0; padding: 0; margin: 0 0 .7rem; }
.masa-mahkeme label { position: relative; display: inline-flex; }
.masa-mahkeme input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.masa-mahkeme span { display: inline-flex; align-items: center; min-height: 2.5rem; padding: 0 .9rem; border-radius: 999px;
  box-shadow: inset 0 0 0 1px var(--cizgi-2); background: var(--zemin-kart); font-size: var(--t-kucuk); font-weight: 500; color: var(--murekkep-2); }
.masa-mahkeme input:checked + span { background: var(--murekkep); color: var(--zemin); box-shadow: none; }
.masa-mahkeme input:focus-visible + span { outline: 2px solid var(--vurgu); outline-offset: 2px; }

/* MOBIL KUCUK DUZELTMELER (30.09 mobil QA)
   #15 abonelik karsilastirma tablosu kaydirma kutusunda: saginda golge + ipucu, kaydirilabildigi belli olsun
   #25 destek dugmesi son icerigi ortmesin (sayfa altina bosluk); Android'de menu dugmesi sikismasin
   #26 dokunma alanlari en az 44 px */
@media (max-width: 700px) {
  .karsilastir-kaydir { position: relative; background:
      linear-gradient(to right, var(--zemin-kart, #FBF8F1) 30%, transparent) left / 2rem 100% no-repeat local,
      linear-gradient(to left, var(--zemin-kart, #FBF8F1) 30%, transparent) right / 2rem 100% no-repeat local,
      radial-gradient(farthest-side at 100% 50%, rgba(12,18,27,.18), transparent) right / .9rem 100% no-repeat scroll; }
  .karsilastir-kaydir::before { content: "Tabloyu yana kaydırın →"; display: block; font-size: .8125rem; color: var(--murekkep-3, #6B7280); margin-bottom: .4rem; }
  main, #icerik { padding-bottom: 4.5rem; }
  .ustbar__menu { flex: 0 0 auto; min-width: 44px; }
  .alt a, .panel-alt a { min-height: 44px; }
  .alan-onay { min-height: 44px; display: flex; align-items: center; gap: .6rem; }
  .alan-onay input[type=checkbox] { width: 22px; height: 22px; }
  .komut__alt a { min-height: 40px; display: inline-flex; align-items: center; }
}
@media (max-width: 700px) {
  footer.alt, footer.panel-alt { padding-bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px)); }
}
/* MASA SADELIGI (30.09 avukat: "ana yuzu toplamak gerekebilir, karmasik durmasin"): mobilde arac kartlarindaki
   terminal gorunumlu tanitim kutulari gizli; kart = baslik + tek satir aciklama + sayi. */
@media (max-width: 700px) { .arac__mini { display: none; } }

/* 01.10 (QA G14): metinde bul gezintisi ekranin altinda sabit serit */
.bul-gezin--yuzen { position: fixed; left: 50%; transform: translateX(-50%); bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
  z-index: 65; margin: 0; padding: .3rem .45rem; border-radius: 999px; background: #0C121B; color: #F2ECDF; box-shadow: 0 6px 24px rgba(0,0,0,.25); }
.bul-gezin--yuzen button { background: transparent; color: #F2ECDF; box-shadow: none; font-size: 1.35rem; }
.bul-gezin--yuzen .bul-sayac { min-width: 4.5rem; text-align: center; font-variant-numeric: tabular-nums; }
.bul-gezin--yuzen .bul-kapat { display: inline-grid; place-items: center; min-width: 2.75rem; min-height: 2.75rem; color: #F2ECDF; text-decoration: none; font-size: 1.3rem; opacity: .75; }
html.cerez-acik .bul-gezin--yuzen { bottom: calc(var(--cerez-h, 0px) + 1rem); }

/* 01.10 (QA G15): yapay zeka kutusu yuklenirken ve yanitta AYNI yukseklikte; sonuclar kaymaz. Tamami dugmeyle acilir. */
#zeka.yanit[data-zeka-sov] { --zeka-h: 560px; position: relative; }
@media (min-width: 701px) { #zeka.yanit[data-zeka-sov] { --zeka-h: 600px; } }
#zeka.yanit[data-zeka-sov]:not(.zeka-acik) { height: var(--zeka-h); overflow: hidden; }
#zeka.yanit[data-zeka-sov]:not(.zeka-acik)::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 140px;
  background: linear-gradient(to bottom, transparent, var(--zeka-zemin, #0C121B) 70%); pointer-events: none; }
#zeka .zeka-tamami { position: absolute; left: 50%; transform: translateX(-50%); bottom: 18px; z-index: 2; white-space: nowrap; }

/* 01.10 (QA G20): klavye acikken (alana yazarken) yuzen destek dugmesi "Bul"/"Git" gibi dugmeleri ortmesin */
body:has(input:focus, textarea:focus) .destek-dugme { opacity: 0; pointer-events: none; }
/* 01.10 (QA G23): satis sayfalarinda sayfa ici capalar yapiskan ust cubugun (68 px) altinda kaliyordu */
html:has(.ustbar) { scroll-padding-top: 84px; }

/* 01.10 (QA G27): dokunma hedefleri 40 px'in altindaydi (landing "Durdur" 32 px, AI kaynak rozetleri 22x28).
   Gorunum ayni kalir; dokunma alani dolgu + negatif kenar boslugu ile 44 px'e cikar. */
@media (pointer: coarse) {
  .sahne__durdur { position: relative; }
  .sahne__durdur::after { content: ""; position: absolute; inset: -8px -6px; }
  a.cumle__kaynak { position: relative; }
  a.cumle__kaynak::after { content: ""; position: absolute; inset: -8px -4px; }
}

/* 01.10 (QA G23 ek): tanitim sayfasinda akis rayi da yapisik (top 68 px, 54 px yuksek): capalar ikisinin de altina insin.
   Gorunme animasyonu bekleyen hedef 22 px asagidadir, animasyon bitince yukari kayar; o fark kadar ek pay. */
html:has(.ustbar):has([data-ray]) { scroll-padding-top: 136px; }
.js-hareket [data-gir]:not(.gorunur)[id], .js-hareket [data-gir]:not(.gorunur) [id] { scroll-margin-top: 22px; }
