/* =========================
   Genel / Admin stilleri
   ========================= */

/* --- Navbar dropdown davranışı (taşırmasın) --- */
.navbar.fixed-top .dropdown { position: relative; }
.navbar.fixed-top .dropdown-menu{
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: .4rem;
  padding: .25rem 0;
  border-radius: .5rem;
  border: 1px solid #e5e7eb;          /* sade kenarlık */
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
}

/* Menü item aralıkları (flex-row ise) */
.navbar .navbar-nav.flex-row > .nav-item + .nav-item { margin-left: 1rem; }

/* Hover ile menü açma (mouse olan cihazlarda) */
@media (hover: hover){
  .navbar.fixed-top .dropdown:hover > .dropdown-menu{ display: block; }
}

/* --- Admin tablo/rozet yardımcıları --- */
.table-tight th,
.table-tight td { padding: .45rem .6rem; }

.badge-soft-success{ background:#dcfce7; color:#166534; border:1px solid #16a34a; }
.badge-soft-warning{ background:#fef9c3; color:#854d0e; border:1px solid #eab308; }
.badge-soft-muted  { background:#e5e7eb; color:#374151; border:1px solid #cbd5e1; }

.text-sm  { font-size: .875rem; }
.text-xs  { font-size: .75rem; }
.w-120    { width:120px; }
.w-160    { width:160px; }
.maxw-300 { max-width:300px; }
.truncate { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

.card-clean{ background:#fff; border:1px solid #e5e7eb; border-radius:12px; }
.card-clean .card-body{ padding:16px; }

/* --- Sayfa iskeleti / navbar boşlukları --- */
/* Varsayılan (mobil): navbar ~72px */
main { display:block; padding-top:72px; }
/* Admin sayfaları: .page-main içinde; 72 + 16 = 88px üst boşluk */
.page-main { padding:80px 0 24px; }

.container-narrow { max-width: 720px; }
.page-header { margin: 0 0 12px; }
.page-title  { margin: 0; font-size: 1.25rem; font-weight: 600; color:#111; line-height:1.25; display:block; }

/* Daha geniş ekranlar (≥576px): navbar ~64px */
@media (min-width:576px){
  main { padding-top:64px; }
  /* Admin: 64 + 16 = 80px */
  .page-main { padding:80px 0 24px; }
}

/* --- Anchor (#bölüm) tıklamalarında sabit navbar ofseti --- */
.page-section:target::before {
  content: "";
  display: block;
  height: 88px;          /* mobil/toplam ofset */
  margin-top: -88px;
}
@media (min-width:576px){
  .page-section:target::before {
    height: 80px;        /* daha dar navbar */
    margin-top: -80px;
  }
}

/* Uyarı kutuları ardışıksa biraz aralık */
.alert + .alert { margin-top: .5rem; }

/* ============================================================
   PUBLIC NAVBAR İLE HERO ARASINI AZALT
   (Sadece public navbar + ana sayfa main)
   ============================================================ */
.navbar_public + main#public-home { padding-top: 0 !important; }

/* ============================================================
   ANA SAYFA (index.php) STİLLERİ — Genel UX
   ============================================================ */
html { scroll-behavior: smooth; }

/* Scope değişkenleri ve yardımcılar */
#public-home{
  --hero-gap: 6px;
  --navH: 64px;
  --card-br: 12px;
  --muted: #6c757d;
}

/* Navbar (public home içinde) */
#public-home .navbar{
  margin-bottom:0 !important;
  padding-bottom:0 !important;
  border-bottom:0 !important;
  box-shadow:none !important;
}

/* Ana sayfa <main> üst boşluklarını kaldır */
main#public-home{ margin-top:0 !important; padding-top:0 !important; }

/* Hero */
#public-home .hero-public{
  position: relative; width: 100%;
  margin: var(--hero-gap) 0 0 0 !important;
  padding: 0 !important; background: #f5f6f8; overflow: hidden;
}
#public-home .hero-public img{
  display:block; width:100%; height:auto; /* oran korunur */
}

/* Smooth scroll & anchor hizalama */
#public-home .anchor-section{ scroll-margin-top: calc(var(--navH) + 12px); }

/* Ana sayfa başlık–lead aralığı */
#public-home #anasayfa{ padding:32px 0; }
#public-home .lead-wrap{ max-width:960px; }

/* USP grid */
#public-home .usp-grid{ display:grid; gap:16px; grid-template-columns: repeat(3,1fr); }
@media (max-width: 992px){ #public-home .usp-grid{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 576px){ #public-home .usp-grid{ grid-template-columns: 1fr; } }

/* USP kartları */
#public-home .usp-card{
  display:flex; align-items:flex-start; gap:12px;
  background:#fff; border:1px solid rgba(0,0,0,.075);
  border-radius: var(--card-br); padding:14px 16px;
  text-decoration:none; color:inherit;
  transition: transform .08s ease, box-shadow .12s ease, border-color .12s ease;
}
#public-home .usp-card:hover{
  transform: translateY(-1px);
  box-shadow:0 6px 16px rgba(0,0,0,.06);
  border-color:rgba(0,0,0,.12);
}
#public-home .usp-icon{ width:28px; height:28px; flex:0 0 28px; }
#public-home .usp-title{ margin:0; font-weight:600; font-size:.98rem; }
#public-home .usp-text{ margin:2px 0 0; color:var(--muted); font-size:.92rem; }

/* Genel section şablonu */
#public-home .section-wrap{ padding:40px 0; }
#public-home .sec-head{ display:flex; align-items:center; gap:10px; margin-bottom:12px; }
#public-home .sec-head svg{ width:26px; height:26px; flex:0 0 26px; }
#public-home .sec-lead{ color:var(--muted); margin-bottom:16px; }

#public-home .pill{
  display:inline-block; padding:4px 10px; border-radius:999px;
  background:#f1f3f5; font-size:.82rem; color:#495057; margin-right:6px; margin-bottom:6px;
  border:1px solid rgba(0,0,0,.06);
}

#public-home .feat-grid{ display:grid; gap:12px; grid-template-columns: repeat(3,1fr); }
@media (max-width: 992px){ #public-home .feat-grid{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 576px){ #public-home .feat-grid{ grid-template-columns: 1fr; } }
#public-home .feat-card{
  background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:var(--card-br);
  padding:14px 16px;
}
#public-home .feat-card h3{ font-size:1rem; margin:0 0 6px; }
#public-home .feat-card p{ margin:0; color:var(--muted); font-size:.92rem; }
#public-home .cta-bar{ display:flex; gap:10px; flex-wrap:wrap; margin-top:8px; }

/* ============================================================
   ADMINS / TOPICS — Görsel ince düzen (globali bozmadan)
   ============================================================ */

/* Başlık sticky KAPALI: hizalar düzgün */
main .table.align-middle.table-sm thead th{
  position: static;     /* eski: sticky */
  top: auto;
  background:#fff;
  z-index: 1;
  box-shadow: none;
}

/* Zebra ve hover */
main .table.align-middle.table-sm tbody tr:nth-child(odd){ background:#fbfcfe; }
main .table.align-middle.table-sm tbody tr:hover{ background:#f6f8fa; }

/* Hücre padding ve hizalama */
main .table.align-middle.table-sm th,
main .table.align-middle.table-sm td{
  vertical-align: middle;
  padding-top: .55rem;
  padding-bottom: .55rem;
}

/* Rozet okunurluğu */
main .table.align-middle.table-sm .badge{
  font-weight: 600;
  letter-spacing: .2px;
}

/* İşlem butonları aralık */
main .table.align-middle.table-sm .text-nowrap .btn{
  border-radius: 8px;
  margin-right: .25rem;
}
main .table.align-middle.table-sm .text-nowrap .btn:last-child{ margin-right: 0; }

/* Sayısal yazım */
main .table.align-middle.table-sm td .fw-semibold,
main .table.align-middle.table-sm td span{
  font-variant-numeric: tabular-nums;
}

/* “Global Tek Fiyat” kartı için hafif gölge */
.card.mb-3 > .card-body{
  border-radius: 12px;
  box-shadow: 0 6px 20px rgba(0,0,0,.05);
}

/* Küçük ekranlarda kolon aralığı sık */
@media (max-width: 768px){
  main .table.align-middle.table-sm th,
  main .table.align-middle.table-sm td{
    padding-left:.5rem; padding-right:.5rem;
  }
}

/* Uzun konu adlarında taşma olmasın */
main .table.align-middle.table-sm td:first-child .truncate,
main .table.align-middle.table-sm td:first-child{
  max-width: 420px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
