/* Başlık grubu: başlık sayfası, entry kartı, yazma kutusu. Renkler app.css değişkenlerinden gelir (açık/koyu tema). */

:root {
  --bslk-sari: #b7791f;
  --bslk-kirmizi: #d64545;
}
[data-bs-theme="dark"] {
  --bslk-sari: #f0b429;
  --bslk-kirmizi: #f07171;
}

/* ---------------------------------------------------------------- başlık üst bölümü */
.bslk-ust { margin-bottom: 1rem; }
.bslk-ust-satir { display: flex; align-items: flex-start; gap: .5rem; }
.bslk-ust-satir .baslik-h1 { flex: 1; min-width: 0; padding-top: .1rem; }
.bslk-ust .baslik-h1 a:hover { text-decoration: none; color: var(--ts-vurgu); }
.bslk-arac { display: flex; align-items: center; gap: .1rem; flex: none; }
.bslk-arac .eylem { width: 36px; height: 36px; justify-content: center; padding: 0; font-size: 1.05rem; }
.bslk-ust-bilgi { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem 1rem; margin-top: .4rem; font-size: .84rem; color: var(--ts-yazi-soluk); }
.bslk-ust-bilgi .bi { margin-right: .15rem; }
.bslk-ust-bilgi a { color: inherit; font-weight: 600; }
.bslk-ust-bilgi a:hover { color: var(--ts-vurgu); }
.bslk-ust-bilgi .bslk-yaz-git { color: var(--ts-vurgu); }
.bslk-ust .sayfalama { margin: .6rem 0 0 !important; justify-content: flex-start !important; }
.bslk-aktarma { display: inline-flex; align-items: center; gap: .4rem; margin-bottom: .75rem; padding: .35rem .75rem; border-radius: 999px; background: var(--ts-vurgu-acik); color: var(--bs-body-color); font-size: .85rem; }
p.bslk-aktarma { border-radius: var(--ts-yaricap); }
.bslk-alt-baslik { font-size: .8rem; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--ts-yazi-soluk); margin: 0 0 .5rem; }

/* ---------------------------------------------------------------- entry kartı */
.entry .bslk-no { color: var(--ts-yazi-soluk); font-size: .8rem; font-weight: 600; margin-right: .4rem; font-variant-numeric: tabular-nums; user-select: none; }
/* Entry metnindeki bağlantı / *123 / #123 / youtube düğmeleri (entry_bicimle) */
.entry-metin .btn.btn-light { --bs-btn-bg: var(--bs-tertiary-bg); --bs-btn-color: var(--ts-vurgu); --bs-btn-hover-bg: var(--ts-vurgu-acik); --bs-btn-hover-color: var(--ts-vurgu); --bs-btn-active-bg: var(--ts-vurgu-acik); font-size: .84rem; font-weight: 500; border-radius: 999px; padding: 0 .55rem; vertical-align: baseline; text-transform: none; }
.entry .bslk-durum { display: flex; gap: .4rem; align-items: baseline; padding: .35rem .65rem; margin-bottom: .6rem; font-size: .82rem; border-radius: calc(var(--ts-yaricap) - 4px); }
.bslk-duzenleme { margin-top: .4rem; font-size: .78rem; color: var(--ts-yazi-soluk); }
.bslk-gizlendi > summary { list-style: none; cursor: pointer; color: var(--ts-yazi-soluk); font-size: .9rem; font-style: italic; }
.bslk-gizlendi > summary::-webkit-details-marker { display: none; }
.bslk-gizlendi .bslk-goster { font-style: normal; color: var(--ts-vurgu); font-weight: 600; margin-left: .25rem; white-space: nowrap; }
.bslk-gizlendi[open] .bslk-goster { display: none; }
.bslk-gizlendi[open] > summary { margin-bottom: .5rem; }

.entry .entry-alt { justify-content: space-between; row-gap: .5rem; column-gap: .75rem; margin-top: .75rem; }
.bslk-eylemler { display: flex; flex-wrap: wrap; align-items: center; gap: .1rem; margin-left: -.5rem; }
.bslk-oylar { display: inline-flex; align-items: center; gap: .1rem; }
.bslk-oylar form { display: inline-flex; margin: 0; }
.bslk-eylemler .eylem { min-height: 32px; }
.bslk-eylemler .eylem .bi { font-size: 1rem; }
.bslk-sayi { font-variant-numeric: tabular-nums; }
.eylem.begeni:hover { color: var(--ts-vurgu); }
.eylem.kotu:hover { color: var(--bslk-kirmizi); background: color-mix(in srgb, var(--bslk-kirmizi) 12%, transparent); }
.eylem.kotu.aktif { color: var(--bslk-kirmizi); }
/* Favori (yıldız) */
.bslk-favori { display: inline-flex; }
.bslk-favori form { display: inline-flex; margin: 0; }
.eylem.fav:hover, .eylem.fav.aktif { color: var(--bslk-sari); }
.eylem.fav:hover { background: color-mix(in srgb, var(--bslk-sari) 14%, transparent); }
.bslk-favori .htmx-request .eylem, .bslk-favori button:disabled { opacity: .55; }
.eylem.aktif { background: color-mix(in srgb, currentColor 10%, transparent); }
.eylem.bslk-pasif, .eylem.bslk-pasif:hover { cursor: default; background: none; color: var(--ts-yazi-soluk); }
.bslk-oylar .htmx-request .eylem, .bslk-oylar button:disabled { opacity: .55; }
.eylem.bslk-id { font-size: .8rem; font-variant-numeric: tabular-nums; }
.entry .dropdown-menu { font-size: .9rem; --bs-dropdown-min-width: 12rem; }
.entry .dropdown-item .bi { width: 1.25rem; display: inline-block; color: var(--ts-yazi-soluk); }
.entry .dropdown-item.text-danger .bi { color: inherit; }

/* Yazar bloğu: avatar + nick + tarih */
.entry .entry-yazar { gap: .5rem; min-width: 0; }
.bslk-yazar-metin { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.25; min-width: 0; }
.bslk-yazar-metin > span { max-width: 14rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.entry .entry-yazar a.bslk-tarih { color: var(--ts-yazi-soluk); font-weight: 400; font-size: .76rem; font-variant-numeric: tabular-nums; }
.entry .entry-yazar a.bslk-tarih:hover { color: var(--ts-vurgu); }
.entry-yazar .bi-incognito, .entry-yazar .bi-gender-male, .entry-yazar .bi-gender-female { font-size: .8rem; color: var(--ts-yazi-soluk); }
.bslk-avatar-bag { order: 2; flex: none; line-height: 0; }
.bslk-avatar-bag img { width: 30px; height: 30px; }
.bslk-avatar-gizli { order: 2; flex: none; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 999px; background: var(--bs-tertiary-bg); color: var(--ts-yazi-soluk); }
.bslk-gizli-nick { font-style: italic; }

/* Yeni eklenen / güncellenen kart kısa süre vurgulanır */
.entry.bslk-yeni { animation: bslk-parla 2.4s ease-out; }
@keyframes bslk-parla {
  0%, 30% { border-color: var(--ts-vurgu); box-shadow: 0 0 0 4px var(--ts-vurgu-acik); }
  100% { border-color: var(--ts-cizgi); box-shadow: 0 0 0 0 transparent; }
}

/* Kart içinde düzenleme */
.entry.bslk-duzenle { border-color: color-mix(in srgb, var(--ts-vurgu) 45%, var(--ts-cizgi)); padding-bottom: .9rem; }
.bslk-duzenle-ust { font-size: .8rem; font-weight: 600; color: var(--ts-vurgu); margin-bottom: .5rem; }
.bslk-duzenle textarea { min-height: 140px; resize: vertical; }

/* ---------------------------------------------------------------- yazma kutusu */
.bslk-yaz { margin-top: 1.25rem; scroll-margin-top: calc(var(--ts-ust-yukseklik) + 1rem); }
.bslk-yaz:focus-within { border-style: solid; border-color: var(--ts-vurgu); box-shadow: 0 0 0 3px var(--ts-vurgu-acik); }
.bslk-yaz-etiket { display: block; font-size: .92rem; margin: 0 0 .4rem .25rem; color: var(--ts-yazi-soluk); }
.bslk-yaz-etiket b { color: var(--bs-body-color); }
.bslk-yaz-alt { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: .5rem; padding-top: .6rem; border-top: 1px solid var(--ts-cizgi); }
.bslk-isaretler { display: flex; flex-wrap: wrap; gap: .3rem; }
.bslk-isaret { border: 1px solid var(--ts-cizgi); background: var(--bs-tertiary-bg); color: var(--ts-yazi-soluk); border-radius: 999px; padding: .2rem .65rem; font-size: .8rem; line-height: 1.3; }
.bslk-isaret:hover { color: var(--ts-vurgu); border-color: color-mix(in srgb, var(--ts-vurgu) 40%, transparent); background: var(--ts-vurgu-acik); }
.bslk-yaz-sag { display: flex; align-items: center; gap: .5rem; margin-left: auto; }
.bslk-sayac { font-size: .75rem; color: var(--ts-yazi-soluk); font-variant-numeric: tabular-nums; }
.bslk-vazgec { border-radius: 999px; }
.bslk-gonder { border-radius: 999px; padding-left: .9rem; padding-right: .9rem; }
.bslk-gonder .htmx-indicator { display: none; margin-right: .25rem; }
.htmx-request .bslk-gonder .htmx-indicator, .htmx-request.bslk-gonder .htmx-indicator { display: inline-block; opacity: 1; }
.htmx-request .bslk-gonder .bi, .htmx-request.bslk-gonder .bi { display: none; }
.bslk-yaz-not { margin: .5rem 0 0 .25rem; font-size: .8rem; color: var(--ts-yazi-soluk); }
.bslk-yaz-giris { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; margin-top: 1.25rem; color: var(--ts-yazi-soluk); }
.bslk-yaz-giris b { color: var(--bs-body-color); }

/* (bkz: önerileri */
.bslk-oneri-kap { position: relative; }
.bslk-oneri-liste { position: absolute; left: 0; top: 100%; z-index: 1050; max-height: 260px; overflow-y: auto; min-width: min(320px, 100%); border-radius: var(--ts-yaricap); font-size: .92rem; }
.bslk-oneri-liste .dropdown-item { white-space: normal; overflow-wrap: anywhere; }
.bslk-oneri-liste .dropdown-item.active, .bslk-oneri-liste .dropdown-item:active { background: var(--ts-vurgu-acik); color: var(--bs-body-color); }
.bslk-oneri-liste .dropdown-header { font-size: .72rem; }

/* ---------------------------------------------------------------- liste, benzerler, ukde */
#bslk-yeniler:empty { display: none; }
.bslk-benzer { margin-top: 2rem; }
.bslk-cipler { display: flex; flex-wrap: wrap; gap: .4rem; }
.bslk-cip { padding: .3rem .8rem; border-radius: 999px; background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); color: var(--bs-body-color); font-size: .88rem; }
.bslk-cip:hover { text-decoration: none; color: var(--ts-vurgu); border-color: color-mix(in srgb, var(--ts-vurgu) 40%, transparent); background: var(--ts-vurgu-acik); }
.bslk-ukde { font-size: .92rem; }
.bslk-ukde-ver { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: .75rem; font-size: .85rem; color: var(--ts-yazi-soluk); }
.bslk-eid-alt { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; margin-top: 1rem; }
.bslk-eid-alt .btn { border-radius: 999px; }

@media (max-width: 575.98px) {
  .bslk-ust .baslik-h1 { font-size: 1.35rem; }
  .entry { padding: .9rem .9rem .5rem; }
  .bslk-eylemler { margin-left: -.4rem; }
  .bslk-eylemler .eylem { padding: .25rem .45rem; }
  .bslk-yazar-metin > span { max-width: 11rem; }
}

/* ---------------------------------------------------------------- başlık takibi, sıralama */
.bslk-takip { display: inline-flex; }
.bslk-takip form { display: inline-flex; margin: 0; }
.bslk-arac .bslk-takip .eylem { width: auto; padding: 0 .75rem; gap: .35rem; font-size: .85rem; border: 1px solid var(--ts-cizgi); }
.bslk-arac .bslk-takip .eylem .bi { font-size: 1rem; }
.bslk-arac .bslk-takip .eylem.aktif { border-color: color-mix(in srgb, var(--ts-vurgu) 35%, transparent); }
.bslk-takip button:disabled { opacity: .55; }
.bslk-sirala { margin-bottom: .9rem; }
.bslk-sirala { flex-wrap: wrap; row-gap: .35rem; }
.bslk-sirala .bi { margin-right: .15rem; }
@media (max-width: 575.98px) {
  .bslk-sirala { gap: .15rem; }
  .bslk-sirala .sekme { padding: .3rem .55rem; font-size: .84rem; }
  .bslk-sirala .sekme > .bi { display: none; }
  /* Telefonda sadece simge (etiket ekran okuyuculara kalır) */
  .bslk-arac .bslk-takip .eylem { width: 36px; padding: 0; justify-content: center; }
  .bslk-takip-etiket { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}

/* ---------------------------------------------------------------- engellenen yazarın entry'si */
.bslk-engelli > summary { list-style: none; cursor: pointer; color: var(--ts-yazi-soluk); font-size: .9rem; font-style: italic; }
.bslk-engelli > summary::-webkit-details-marker { display: none; }
.bslk-engelli .bslk-goster { font-style: normal; color: var(--ts-vurgu); font-weight: 600; margin-left: .25rem; white-space: nowrap; }
.bslk-engelli[open] .bslk-goster { display: none; }
.bslk-engelli[open] > summary { margin-bottom: .5rem; }
.entry.bslk-engelli-entry:not(:has(.bslk-engelli[open])) { padding-bottom: 1rem; background: transparent; border-style: dashed; }

/* ---------------------------------------------------------------- yazma kutusu: görsel, spoiler, doğrulama */
.bslk-gorsel-onizleme:empty { display: none; }
.bslk-gorsel-onizleme { display: flex; flex-wrap: wrap; padding: 0 .25rem; }
.bslk-gorsel-dugme .bi { margin-right: .15rem; }
.bslk-gorsel-dosya { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; margin: .4rem .25rem 0; font-size: .82rem; color: var(--ts-yazi-soluk); }
.bslk-gorsel-dosya input { font-size: .82rem; max-width: 100%; }
.bslk-yaz textarea.gorsel-yukleniyor { background-image: linear-gradient(90deg, transparent, var(--ts-vurgu-acik), transparent); background-size: 200% 100%; animation: bslk-yukleniyor 1.2s linear infinite; }
@keyframes bslk-yukleniyor { from { background-position: 200% 0; } to { background-position: -200% 0; } }
.bslk-dogrula { border-style: solid; border-color: color-mix(in srgb, var(--bslk-sari) 45%, var(--ts-cizgi)); background: color-mix(in srgb, var(--bslk-sari) 7%, var(--ts-yuzey)); }
.bslk-dogrula b { color: var(--bs-body-color); }
.bslk-dogrula .bi-envelope-exclamation { color: var(--bslk-sari); }
.bslk-dogrula .btn { border-radius: 999px; flex: none; }

/* ---------------------------------------------------------------- debe */
.debe-ikon { color: var(--bslk-sari); font-size: .9em; }
.debe-oge .ls-grup-baslik::before { display: none; }
.debe-sira {
  flex: none; display: inline-flex; align-items: center; justify-content: center; min-width: 1.8rem; height: 1.8rem; padding: 0 .35rem;
  border-radius: 999px; background: color-mix(in srgb, var(--ts-yazi-soluk) 14%, transparent); color: var(--ts-yazi-soluk);
  font-size: .8rem; font-weight: 700; font-variant-numeric: tabular-nums;
}
.debe-oge:nth-child(1) .debe-sira { background: #f3d36b; color: #4d3a00; }
.debe-oge:nth-child(2) .debe-sira { background: #d5dbe1; color: #343b42; }
.debe-oge:nth-child(3) .debe-sira { background: #e7b58b; color: #4f2a0b; }

/* ---------------------------------------------------------------- detaylı arama */
.ara-ikon { color: var(--ts-vurgu); font-size: .9em; }
.ara-form { margin-bottom: 1rem; }
.ara-form .form-label { margin-bottom: .2rem; font-size: .8rem; font-weight: 600; color: var(--ts-yazi-soluk); }
.ara-form .form-control, .ara-form .form-select { border-radius: 10px; background-color: var(--bs-tertiary-bg); border-color: var(--ts-cizgi); }
.ara-form .form-control:focus, .ara-form .form-select:focus { background-color: var(--ts-yuzey); border-color: var(--ts-vurgu); box-shadow: 0 0 0 3px var(--ts-vurgu-acik); }
.ara-form-alt { display: flex; justify-content: flex-end; align-items: center; gap: .5rem; margin-top: .75rem; }
.ara-form-alt .btn { border-radius: 999px; padding-left: .9rem; padding-right: .9rem; }
.ara-sonuclar { display: flex; flex-direction: column; gap: .6rem; }
.ara-sonuclar > .kart + .kart { margin-top: 0; }
.ara-sonuc { padding: .85rem 1.1rem; }
.ara-baslik { margin: 0 0 .35rem; font-size: 1rem; font-weight: 650; overflow-wrap: anywhere; }
.ara-baslik a { color: var(--bs-body-color); }
.ara-baslik a:hover { color: var(--ts-vurgu); }
.ara-ozet { margin: 0; line-height: 1.6; overflow-wrap: anywhere; word-break: break-word; text-transform: lowercase; }
.ara-sonuc mark, .ls-baslik-ad mark { padding: 0 .1em; border-radius: 3px; background: color-mix(in srgb, var(--bslk-sari) 30%, transparent); color: inherit; }
.ara-alt { display: flex; flex-wrap: wrap; align-items: center; gap: .2rem 1rem; margin-top: .5rem; color: var(--ts-yazi-soluk); font-size: .8rem; }
.ara-alt a { color: inherit; font-weight: 600; }
.ara-alt a:hover { color: var(--ts-vurgu); }
