/* Yönetim paneli (yp-*). Renkler app.css / Bootstrap değişkenlerinden gelir: açık ve koyu temada çalışır.
   Yerleşim kap sorgularıyla (container query) yapılır: panel geniş alanda solda menülü iki sütun,
   dar alanda (telefon, pencere) tek sütun + üstte kayan hap menü olur. Tablolar dar alanda karta döner. */

/* ---------------------------------------------------------------- iskelet */
@media (min-width: 992px) {
  .icerik:has(> .yp) { max-width: none; }
}
.yp { container: yp / inline-size; }
.yp-govde { container: ypg / inline-size; min-width: 0; }
.yp-soluk { color: var(--ts-yazi-soluk); }

/* Menü: telefonda yatay kayan haplar */
.yp-nav { margin: 0 -1rem 1.1rem; }
.yp-nav-kim { display: none; }
.yp-nav-liste {
  display: flex; align-items: center; gap: .35rem; overflow-x: auto; padding: .1rem 1rem .35rem;
  scrollbar-width: none; scroll-behavior: smooth; -webkit-overflow-scrolling: touch;
  mask-image: linear-gradient(to right, transparent 0, #000 1rem, #000 calc(100% - 1.5rem), transparent);
}
.yp-nav-liste::-webkit-scrollbar { display: none; }
.yp-grup { display: flex; align-items: center; gap: .3rem; flex: none; }
.yp-grup + .yp-grup { padding-left: .45rem; margin-left: .1rem; border-left: 1px solid var(--ts-cizgi); }
.yp-grup-ad { font-size: .66rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ts-yazi-soluk); padding: 0 .15rem; white-space: nowrap; }
.yp-link {
  position: relative; display: inline-flex; align-items: center; gap: .4rem; flex: none;
  padding: .34rem .75rem; border-radius: 999px; border: 1px solid var(--ts-cizgi);
  background: var(--ts-yuzey); color: var(--bs-body-color); font-size: .86rem; white-space: nowrap;
}
.yp-link .bi { color: var(--ts-yazi-soluk); }
.yp-link:hover { text-decoration: none; border-color: color-mix(in srgb, var(--ts-vurgu) 40%, var(--ts-cizgi)); }
.yp-link.aktif { background: var(--ts-vurgu-acik); border-color: color-mix(in srgb, var(--ts-vurgu) 45%, transparent); color: var(--ts-vurgu); font-weight: 600; }
.yp-link.aktif .bi { color: var(--ts-vurgu); }
.yp-rozet {
  display: inline-flex; align-items: center; justify-content: center; min-width: 1.25rem; height: 1.25rem; padding: 0 .38rem;
  border-radius: 999px; background: #d64545; color: #fff; font-size: .7rem; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums;
}
.yp-rozet[hidden] { display: none !important; }

/* Geniş alan: solda yapışkan dikey menü */
@container yp (min-width: 780px) {
  .yp:not(.yp-tek) > .yp-izgara { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 1.75rem; align-items: start; }
  .yp-nav {
    position: sticky; top: calc(var(--ts-ust-yukseklik) + 1rem); margin: 0;
    max-height: calc(100vh - var(--ts-ust-yukseklik) - 2rem); overflow-y: auto; scrollbar-width: thin;
  }
  .yp-nav-kim {
    display: flex; align-items: center; gap: .45rem; padding: .5rem .65rem .75rem; margin-bottom: .25rem;
    border-bottom: 1px solid var(--ts-cizgi); font-size: .85rem; font-weight: 600; min-width: 0;
  }
  .yp-nav-kim > .bi { color: var(--ts-vurgu); }
  .yp-nav-kim .yp-etiket { margin-left: auto; }
  .yp-nav-liste { display: block; overflow: visible; padding: 0; mask-image: none; }
  .yp-grup { display: block; }
  .yp-grup + .yp-grup { padding: 0; margin: .9rem 0 0; border: 0; }
  .yp-grup-ad { display: block; padding: 0 .65rem .3rem; }
  .yp-link { display: flex; border: 0; background: none; border-radius: 8px; padding: .42rem .65rem; font-size: .9rem; white-space: normal; }
  .yp-link:hover { background: var(--bs-tertiary-bg); }
  .yp-link.aktif { background: var(--ts-vurgu-acik); }
  .yp-link.aktif::before { content: ""; position: absolute; left: -.5rem; top: .45rem; bottom: .45rem; width: 3px; border-radius: 3px; background: var(--ts-vurgu); }
  .yp-link-ad { flex: 1; min-width: 0; }
  .yp-link .bi { width: 1.1rem; text-align: center; }
}

/* Sayfa başlığı */
.yp-ust { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: .75rem 1rem; margin-bottom: 1.25rem; }
.yp-ust-sol { min-width: 0; flex: 1 1 18rem; }
.yp-yol { display: inline-flex; align-items: center; gap: .3rem; font-size: .8rem; color: var(--ts-yazi-soluk); margin-bottom: .2rem; }
.yp-yol a { color: inherit; }
a.yp-yol:hover, .yp-yol a:hover { color: var(--ts-vurgu); }
.yp-yol .bi-chevron-right { font-size: .65rem; }
.yp-baslik { font-size: 1.45rem; font-weight: 700; letter-spacing: -.01em; margin: 0; overflow-wrap: anywhere; display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.yp-sayi { display: inline-block; font-size: .78rem; font-weight: 600; padding: .12rem .55rem; border-radius: 999px; background: var(--bs-tertiary-bg); color: var(--ts-yazi-soluk); letter-spacing: 0; font-variant-numeric: tabular-nums; }
.yp-alt { margin: .3rem 0 0; color: var(--ts-yazi-soluk); font-size: .9rem; max-width: 62ch; }
.yp-ust-eylem { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; }

/* Bölümler */
.yp-bolum { margin-top: 1.75rem; }
.yp-ust + .yp-bolum, .yp-ust + .alert + .yp-bolum { margin-top: 0; }
.yp-bolum-baslik { font-size: .78rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--ts-yazi-soluk); margin: 0 0 .65rem; float: none; width: auto; padding: 0; }
.yp-bolum-baslik .bi { margin-right: .2rem; }
.yp-bolum-ust { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .5rem; margin-bottom: .65rem; }
.yp-dar { max-width: 640px; }
.yp-orta { max-width: 760px; }
.yp-tehlike { border-color: color-mix(in srgb, var(--bs-danger) 40%, var(--ts-cizgi)); }

/* ---------------------------------------------------------------- etiketler */
.yp-etiket {
  display: inline-flex; align-items: center; gap: .25rem; padding: .1rem .5rem; border-radius: 999px; white-space: nowrap; vertical-align: middle;
  font-size: .72rem; font-weight: 600; line-height: 1.45; background: var(--bs-tertiary-bg); color: var(--ts-yazi-soluk);
}
.yp-iyi { background: var(--bs-success-bg-subtle); color: var(--bs-success-text-emphasis); }
.yp-bekle { background: var(--bs-warning-bg-subtle); color: var(--bs-warning-text-emphasis); }
.yp-kotu, .yp-rol-mod { background: var(--bs-danger-bg-subtle); color: var(--bs-danger-text-emphasis); }
.yp-bilgi { background: var(--bs-info-bg-subtle); color: var(--bs-info-text-emphasis); }
.yp-rol-admin { background: var(--bs-primary-bg-subtle); color: var(--bs-primary-text-emphasis); }
.yp-rol-modust { background: var(--bs-emphasis-color); color: var(--bs-body-bg); }
.yp-rol-gammaz { background: var(--bs-warning-bg-subtle); color: var(--bs-warning-text-emphasis); }

.yp-cipler { display: flex; flex-wrap: wrap; gap: .35rem; }
.yp-cip { display: inline-flex; align-items: center; gap: .3rem; padding: .22rem .7rem; border-radius: 999px; background: var(--bs-tertiary-bg); color: var(--bs-body-color); font-size: .85rem; }
.yp-cip:hover { text-decoration: none; background: var(--ts-vurgu-acik); color: var(--ts-vurgu); }
.yp-oneriler { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .35rem; margin-top: .9rem; font-size: .85rem; }
.yp-mini-dugme { display: inline-flex; align-items: center; justify-content: center; width: 1.65rem; height: 1.65rem; border-radius: 999px; border: 0; background: none; color: var(--ts-yazi-soluk); vertical-align: middle; }
.yp-mini-dugme:hover { background: var(--ts-vurgu-acik); color: var(--ts-vurgu); text-decoration: none; }

/* ---------------------------------------------------------------- arama / süzgeç */
.yp-arama { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; padding: .55rem; }
.yp-arama-kutu { position: relative; flex: 1 1 14rem; min-width: 0; }
.yp-arama-kutu > .bi { position: absolute; left: .85rem; top: 50%; transform: translateY(-50%); color: var(--ts-yazi-soluk); pointer-events: none; }
.yp-arama-kutu .form-control { padding-left: 2.3rem; border-radius: 999px; background: var(--bs-tertiary-bg); border-color: transparent; }
.yp-arama-kutu .form-control:focus { background: var(--ts-yuzey); border-color: var(--ts-vurgu); }
.yp-arama .btn { border-radius: 999px; }
.yp-suzgec .form-select { width: auto; flex: 1 1 9rem; border-radius: 999px; }
@container ypg (min-width: 640px) {
  .yp-suzgec .form-select { flex: 0 1 12rem; }
}

/* ---------------------------------------------------------------- listeler */
.yp-satir { transition: opacity .18s ease, background-color .3s ease; }
.yp-satir.htmx-swapping { opacity: 0; }
.yp-satir.htmx-request { opacity: .6; }
.yp-vurgu { background: var(--ts-vurgu-acik) !important; }
.yp-bitti { display: none; }
.yp-liste:not(:has(.yp-satir)) { display: none; }
.yp-liste:not(:has(.yp-satir)) + .yp-bitti { display: block; }
.yp-liste:not(:has(.yp-satir)) ~ .yp-toplu { display: none; }
.yp-kartlar { display: flex; flex-direction: column; gap: .75rem; }
.yp-kartlar > .kart { margin: 0; }

/* Basit liste (ip, haber, soru) */
.yp-basit-liste { list-style: none; margin: 0; padding: 0 !important; overflow: visible; }
.yp-basit-liste > li { display: flex; align-items: center; gap: .75rem; padding: .7rem 1rem; border-bottom: 1px solid var(--ts-cizgi); }
.yp-basit-liste > li:last-child { border-bottom: 0; }
.yp-basit-liste > li:first-child { border-top-left-radius: inherit; border-top-right-radius: inherit; }
.yp-basit-liste > li:last-child { border-bottom-left-radius: inherit; border-bottom-right-radius: inherit; }
.yp-haber-metin { flex: 1; min-width: 0; }
.yp-haber-metin > * + * { margin-top: .15rem; }
.yp-haber-eylem { display: flex; align-items: center; gap: .25rem; flex: none; }
@container ypg (max-width: 480px) {
  .yp-basit-liste > li.yp-haber, .yp-basit-liste > li.yp-soru { flex-direction: column; align-items: stretch; }
  .yp-haber-eylem { justify-content: flex-end; }
}

/* Tablo: geniş alanda tablo, dar alanda kart */
.yp-tablo {
  width: 100%; border-collapse: separate; border-spacing: 0; font-size: .9rem;
  background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); border-radius: var(--ts-yaricap);
}
.yp-tablo th {
  padding: .55rem .75rem; text-align: left; white-space: nowrap; border-bottom: 1px solid var(--ts-cizgi);
  font-size: .72rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--ts-yazi-soluk);
  background: color-mix(in srgb, var(--bs-tertiary-bg) 55%, transparent);
}
.yp-tablo thead th:first-child { border-top-left-radius: var(--ts-yaricap); }
.yp-tablo thead th:last-child { border-top-right-radius: var(--ts-yaricap); }
.yp-tablo td { padding: .6rem .75rem; border-bottom: 1px solid var(--ts-cizgi); vertical-align: middle; }
.yp-tablo tbody tr:last-child > td { border-bottom: 0; }
.yp-tablo tbody tr.yp-satir:hover { background: color-mix(in srgb, var(--ts-vurgu-acik) 55%, transparent); }
.yp-tablo .yp-ana { font-weight: 500; overflow-wrap: anywhere; }
.yp-tablo .yp-ozet { font-size: .85rem; overflow-wrap: anywhere; }
.yp-tablo .yp-ozet a { color: var(--ts-yazi-soluk); }
.yp-tablo .yp-islem { text-align: right; white-space: nowrap; }
.yp-tablo .yp-sec { width: 2.25rem; text-align: center; }
.yp-tablo .yp-devam > td { padding: 0; border: 0; }
.yp-kisi { display: inline-flex; align-items: center; gap: .5rem; color: var(--bs-body-color); font-weight: 600; min-width: 0; }
.yp-kisi:hover { color: var(--ts-vurgu); }

@container ypg (max-width: 620px) {
  .yp-tablo, .yp-tablo tbody { display: block; border: 0; background: none; }
  .yp-tablo thead { display: none; }
  .yp-tablo tbody { display: flex; flex-direction: column; gap: .6rem; }
  .yp-tablo tr {
    position: relative; display: flex; flex-direction: column; gap: .15rem; padding: .75rem .9rem;
    background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); border-radius: var(--ts-yaricap);
  }
  .yp-tablo tbody tr.yp-satir:hover { background: var(--ts-yuzey); }
  .yp-tablo td { display: block; padding: .08rem 0; border: 0; text-align: left; min-width: 0; }
  .yp-tablo td[data-etiket]::before { content: attr(data-etiket); display: inline-block; min-width: 6.5rem; margin-right: .5rem; color: var(--ts-yazi-soluk); font-size: .78rem; font-weight: 400; }
  .yp-tablo td br { display: none; }
  .yp-tablo td br + * { margin-left: .5rem; }
  .yp-tablo td.yp-ana { display: block; text-align: left; font-weight: 600; font-size: .95rem; padding: 0 2rem .3rem 0; }
  .yp-tablo td.yp-ana::before { content: none; }
  .yp-tablo td.yp-islem { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: .3rem; margin-top: .4rem; padding-top: .5rem; border-top: 1px dashed var(--ts-cizgi); white-space: normal; }
  .yp-tablo td.yp-sec { position: absolute; top: .7rem; right: .8rem; width: auto; padding: 0; }
  .yp-tablo tr.yp-devam { padding: 0; background: none; border: 0; }
  .yp-tablo tr.yp-devam > td { display: block; }
}

/* Satır işlemleri */
.yp-eylem-form { display: inline-block; margin: 0; vertical-align: middle; }
.yp-acilir { display: inline-block; position: relative; vertical-align: middle; text-align: left; }
.yp-acilir > summary { list-style: none; }
.yp-acilir > summary::-webkit-details-marker { display: none; }
.yp-acilir[open] > summary { box-shadow: 0 0 0 .2rem var(--bs-danger-bg-subtle); }
.yp-acilir-ic {
  position: absolute; right: 0; top: calc(100% + .4rem); z-index: 30; width: min(18rem, 82vw); padding: .85rem;
  background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); border-radius: 10px; white-space: normal; text-align: left;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .14);
}
[data-bs-theme="dark"] .yp-acilir-ic { box-shadow: 0 12px 32px rgba(0, 0, 0, .5); }

/* ---------------------------------------------------------------- entry kartları (kuyruklar) */
.yp-entry { padding-bottom: .85rem; }
.yp-entry-ust { display: flex; justify-content: space-between; align-items: baseline; gap: .75rem; margin-bottom: .45rem; }
.yp-entry-ust > :first-child { min-width: 0; overflow-wrap: anywhere; }
.yp-entry-no { flex: none; font-size: .8rem; color: var(--ts-yazi-soluk); }
.yp-entry-metin { max-height: 16rem; overflow: auto; }
.yp-entry-not { margin-top: .55rem; padding-left: .6rem; border-left: 3px solid var(--bs-warning); font-size: .8rem; color: var(--ts-yazi-soluk); }
.yp-entry-meta { display: flex; flex-wrap: wrap; gap: .3rem 1.25rem; margin: .75rem 0 0; padding-top: .6rem; border-top: 1px solid var(--ts-cizgi); font-size: .82rem; }
.yp-entry-meta > div { display: flex; align-items: center; gap: .35rem; min-width: 0; }
.yp-entry-meta dt { font-weight: 400; color: var(--ts-yazi-soluk); }
.yp-entry-meta dd { margin: 0; overflow-wrap: anywhere; }
.yp-entry-eylem { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: .4rem; margin-top: .75rem; }

.yp-sikayet-ust { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: .25rem .75rem; margin-bottom: .45rem; }
.yp-sikayet-metin { overflow-wrap: anywhere; }
.yp-alinti { font-style: italic; border-left: 3px solid var(--ts-cizgi); padding-left: .75rem; }

/* ---------------------------------------------------------------- pano */
.yp-isler { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: .6rem; }
.yp-is {
  display: flex; align-items: center; gap: .75rem; padding: .8rem .9rem; color: var(--bs-body-color);
  background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); border-radius: var(--ts-yaricap);
  transition: border-color .15s ease, transform .15s ease;
}
.yp-is:hover { text-decoration: none; border-color: color-mix(in srgb, var(--ts-vurgu) 45%, var(--ts-cizgi)); transform: translateY(-1px); }
.yp-is-ikon { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 2.25rem; height: 2.25rem; border-radius: 10px; background: var(--bs-tertiary-bg); color: var(--ts-yazi-soluk); font-size: 1.05rem; }
.yp-is-metin { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.yp-is-ad { font-weight: 600; font-size: .92rem; }
.yp-is-aciklama { font-size: .78rem; color: var(--ts-yazi-soluk); }
.yp-is-sayi { flex: none; min-width: 2rem; text-align: center; font-weight: 700; font-size: 1.05rem; color: var(--ts-yazi-soluk); font-variant-numeric: tabular-nums; }
.yp-is-var { border-color: color-mix(in srgb, #d64545 35%, var(--ts-cizgi)); }
.yp-is-var .yp-is-ikon { background: color-mix(in srgb, #d64545 14%, transparent); color: #d64545; }
.yp-is-var .yp-is-sayi { padding: .15rem .55rem; border-radius: 999px; background: #d64545; color: #fff; font-size: .9rem; }

.yp-istatistik { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 9.5rem), 1fr)); gap: .6rem; }
.yp-stat { display: flex; flex-direction: column; gap: .2rem; padding: .75rem .9rem; color: var(--bs-body-color); background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); border-radius: var(--ts-yaricap); }
a.yp-stat:hover { text-decoration: none; border-color: color-mix(in srgb, var(--ts-vurgu) 45%, var(--ts-cizgi)); }
.yp-stat-ad { font-size: .78rem; color: var(--ts-yazi-soluk); }
.yp-stat-sayi { font-size: 1.45rem; font-weight: 700; letter-spacing: -.01em; font-variant-numeric: tabular-nums; }

.yp-kisayollar { display: flex; flex-wrap: wrap; gap: .4rem; }
.yp-kisayol { display: inline-flex; align-items: center; gap: .45rem; padding: .45rem .85rem; border-radius: 999px; background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); color: var(--bs-body-color); font-size: .88rem; }
.yp-kisayol .bi { color: var(--ts-vurgu); }
.yp-kisayol:hover { text-decoration: none; border-color: var(--ts-vurgu); }
.yp-hizli-ara { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: .6rem; margin-top: .75rem; }
.yp-hizli-ara > .kart { margin: 0; }

.yp-zaman { list-style: none; margin: 0; padding: .35rem 1.15rem; }
.yp-zaman > li { display: grid; grid-template-columns: 1fr auto; gap: .1rem 1rem; padding: .6rem 0; border-bottom: 1px solid var(--ts-cizgi); font-size: .86rem; }
.yp-zaman > li:last-child { border-bottom: 0; }
.yp-zaman-ne { min-width: 0; overflow-wrap: anywhere; }
.yp-zaman-tarih { grid-row: 1; grid-column: 2; font-size: .75rem; color: var(--ts-yazi-soluk); white-space: nowrap; }
.yp-zaman-ayrinti { grid-column: 1 / -1; color: var(--ts-yazi-soluk); font-size: .8rem; overflow-wrap: anywhere; }

/* ---------------------------------------------------------------- formlar */
.yp-form .kart + .kart, .yp-form .kart + .yp-form-bolum { margin-top: .75rem; }
.yp-form-bolum { padding: 1.1rem 1.25rem; }
.yp-bolumler { border: 0; margin: 0; padding: 0; min-width: 0; }
.yp-bolumler > .kart + .kart { margin-top: .75rem; }
.yp-bolumler[disabled] .yp-form-alt { display: none; }
.yp-alan { margin-bottom: 1rem; }
.yp-form-bolum > .row:not(:last-child) { margin-bottom: 1rem; }
.yp-alan:last-child, .row > [class*="col"] > .yp-alan, .row > .yp-alan { margin-bottom: 0; }
.yp-form .form-label { font-weight: 600; font-size: .88rem; margin-bottom: .3rem; }
.yp-istege-bagli { font-weight: 400; font-size: .78rem; color: var(--ts-yazi-soluk); }
.yp-sayac { font-size: .75rem; color: var(--ts-yazi-soluk); font-variant-numeric: tabular-nums; }
.yp-form-alt { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: 1rem; }
.yp-yapiskan { position: sticky; bottom: 0; z-index: 5; padding: .6rem 0; background: color-mix(in srgb, var(--ts-zemin) 90%, transparent); backdrop-filter: blur(6px); }
@media (max-width: 991.98px) {
  .yp-yapiskan { bottom: calc(58px + env(safe-area-inset-bottom)); }
}
.yp-satir-form { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .5rem .75rem; }
.yp-satir-form-alan { flex: 1 1 16rem; min-width: 0; }
.yp-satir-form > .btn { margin-top: 1.95rem; }
.yp-satir-form .yp-alan { margin-bottom: 0; }

.yp-secenekler { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 12rem), 1fr)); gap: .5rem; }
.yp-secenekler-genis { grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr)); }
.yp-secenek {
  display: flex; align-items: flex-start; gap: .65rem; margin: 0; padding: .7rem .85rem; cursor: pointer;
  background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); border-radius: 10px; transition: border-color .15s ease, background-color .15s ease;
}
.yp-secenek:hover { border-color: color-mix(in srgb, var(--ts-vurgu) 40%, var(--ts-cizgi)); }
.yp-secenek .form-check-input { flex: none; margin-top: .2rem; }
.yp-secenek:has(input:checked) { border-color: var(--ts-vurgu); background: var(--ts-vurgu-acik); }
.yp-secenek-tehlike:has(input:checked) { border-color: var(--bs-danger); background: var(--bs-danger-bg-subtle); }
.yp-secenek:has(input:focus-visible) { outline: 2px solid var(--ts-vurgu); outline-offset: 2px; }
.yp-secenek-ad { display: block; font-weight: 600; font-size: .92rem; }
.yp-secenek-aciklama { display: block; font-size: .8rem; color: var(--ts-yazi-soluk); }

.yp-profil { display: flex; align-items: center; gap: 1rem; }
.yp-profil-bilgi { min-width: 0; display: flex; flex-direction: column; gap: .2rem; }
.yp-tanim { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 13rem), 1fr)); gap: .75rem 1.25rem; margin: 0; }
.yp-tanim dt { font-size: .75rem; font-weight: 500; color: var(--ts-yazi-soluk); }
.yp-tanim dd { margin: 0; overflow-wrap: anywhere; }

.yp-toplu { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: .5rem .75rem; margin-top: .5rem; }

/* ---------------------------------------------------------------- görseller (adm:gorseller) */
.yp-gorseller {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 9rem), 1fr)); gap: .6rem;
  margin: 0; padding: 0; list-style: none;
}
.yp-gorseller > .yp-devam { grid-column: 1 / -1; }
.yp-gorsel {
  display: flex; flex-direction: column; min-width: 0; overflow: hidden;
  background: var(--ts-yuzey); border: 1px solid var(--ts-cizgi); border-radius: var(--ts-yaricap);
}
.yp-gorsel-resim { display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; background: var(--bs-tertiary-bg); }
.yp-gorsel-resim > a { display: block; width: 100%; height: 100%; }
.yp-gorsel-resim img { display: block; width: 100%; height: 100%; object-fit: cover; }
.yp-gorsel-resim > a:focus-visible { outline: 2px solid var(--ts-vurgu); outline-offset: -2px; }
.yp-gorsel-yok { display: flex; flex-direction: column; align-items: center; gap: .2rem; color: var(--ts-yazi-soluk); font-size: .8rem; }
.yp-gorsel-yok .bi { font-size: 1.6rem; }
.yp-gorsel-silindi .yp-gorsel-resim {
  background: repeating-linear-gradient(45deg, transparent 0 8px, color-mix(in srgb, var(--bs-danger) 8%, transparent) 8px 16px), var(--bs-tertiary-bg);
}
.yp-gorsel-bilgi { flex: 1; display: flex; flex-direction: column; gap: .3rem; min-width: 0; padding: .6rem .7rem .7rem; font-size: .82rem; }
.yp-gorsel-ust { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .3rem .4rem; min-width: 0; }
.yp-gorsel-ust .yp-kisi { gap: .3rem; max-width: 100%; font-size: .86rem; }
.yp-gorsel-meta { display: flex; flex-wrap: wrap; gap: .1rem .6rem; color: var(--ts-yazi-soluk); font-size: .75rem; font-variant-numeric: tabular-nums; }
.yp-gorsel-yer { font-size: .78rem; overflow-wrap: anywhere; }
.yp-gorsel-eylem { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .35rem; margin-top: auto; padding-top: .35rem; }
.yp-gorsel-kod { padding: 0; background: none; color: var(--ts-yazi-soluk); font-size: .72rem; }
.yp-gorsel-ozet { grid-template-columns: repeat(auto-fill, minmax(min(100%, 8.5rem), 1fr)); }
.yp-gorsel-ozet .yp-stat-sayi { font-size: 1.2rem; }

/* Pencere (modal) içinde */
body.cerceve .yp-ust { margin-bottom: 1rem; }
body.cerceve .yp-baslik { font-size: 1.2rem; }
body.cerceve .yp-yapiskan { bottom: 0; }

@media (prefers-reduced-motion: reduce) {
  .yp-is:hover { transform: none; }
}
