/*
 * Proje-ozel CSS override'lari (tema dosyalarina dokunulmadan).
 * v33: Yakin Firsatlar logosu (1530x380px, genis en-boy orani ~4:1) tema
 * varsayilan logosundan cok daha buyuk oldugu icin .img-fluid (max-width:
 * 100%) tek basina yetersiz kaliyor - konteynerin tam genisligine kadar
 * buyuyup header/sidebar/login ekranlarinda asiri buyuk gorunuyordu.
 * Asagidaki kurallar sadece logo img'lerini sabit bir yukseklige oturtup
 * en-boy oranini koruyor (width:auto). bkz. README "Logo Boyutu Duzeltmesi".
 */
.logo-wrapper img,
.logo-icon-wrapper img,
.page-header .header-logo-wrapper .logo-wrapper img {
  /* v40: kullanicinin kendi belirledigi degerler - max-height buyutuldu
     (34px -> 50px) ve negatif dikey margin (-10px ust/alt) ile logonun
     kapladigi gorsel yukseklik konteynerin normal satir yuksekligini
     asmadan biraz daha "buyuk gorunmesi" saglandi (header/sidebar
     yukseklikleri sabit kaldigi icin margin olmadan 50px'lik logo
     komsu elemanlari asagi itebilirdi). */
  max-height: 50px;
  width: auto;
  margin-top: -10px;
  margin-bottom: -10px;
}

.login-card .logo img {
  max-height: 56px;
  width: auto;
}

/*
 * v54 (kullanici istegi: "listeleme sayfalarindaki duzenleme silme ve
 * gorunutuleme butonlarini bi toparlayalim, temada buradaki gibi
 * kullanalim" - ekteki ekran goruntusu bir e-ticaret admin temasinin
 * urun listesi sayfasindan: kucuk, acik gri, yuvarlak koseli, sadece
 * ikon iceren aksiyon butonlari). Bu proje o spesifik demoyu icermedigi
 * icin AYNI GORSEL DILI (renkler/boyut/radius zaten :root degiskenlerinden
 * gelen --theme-default, --light-bg) kullanarak KENDI butonumuz yazildi.
 * Silme butonu bu turda BILEREK EKLENMEDI (kullanici karari - hicbir
 * listede gercek silme backend'i yok, olmayan bir islevi gostermemek
 * icin sadece Goruntule + Duzenle var). bkz. table-actions.js.
 */
.table-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: var(--light-bg);
  color: var(--body-font-color);
  border: none;
  margin-right: 6px;
  text-decoration: none;
  transition: background .15s ease, color .15s ease;
}
.table-action-btn:last-child { margin-right: 0; }
.table-action-btn:hover,
.table-action-btn:focus {
  background: var(--theme-default);
  color: #fff;
  text-decoration: none;
}
.table-action-btn svg {
  width: 15px;
  height: 15px;
  stroke-width: 2;
  vertical-align: middle;
}
.table-actions-cell {
  white-space: nowrap;
  text-align: right;
}
/*
 * v(kullanici geri bildirimi): "listeleme sayfalarinda duzenle sil vs
 * butonlari alt alta geldiler ... display:flex + gap:5px verince duzgun
 * gozukuyor" - bkz. table-actions.js'deki AYNI yorum (kok neden: temanin
 * ".square-white" kurali kendisi "display:flex" oldugu icin, ortak bir
 * satir-ici kapsayici olmadan butonlar blok gibi alt alta diziliyordu).
 * Bu kapsayici table-actions.js tarafindan HER cagrida otomatik uretilir -
 * hicbir cagiran dosya (offers/index.script.php vs) degismedi.
 */
.table-actions-inline {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
}

/*
 * v(kullanici geri bildirimi, ekran goruntusuyle bildirildi): sifre
 * goster/gizle goz ikonu (.show-hide) sadece GIRIS sayfasinda dogru
 * hizalaniyordu. Kok neden - temanin kendi kurali (style.css):
 *   .show-hide { top: 52px }                          <- varsayilan, SABIT piksel
 *   .login-card .login-main .theme-form .show-hide { top: 50% }  <- SADECE giris sayfasinda
 * Bizim diger sifre alanlarimiz (kullanici olusturma/duzenleme, profil,
 * ayarlar, portal hesap ekranlari vs) bu ".login-card .login-main
 * .theme-form" ata zincirine sahip degil, bu yuzden sabit "top:52px"
 * kullaniliyordu - standart yukseklikteki (~38-40px) bir .form-control
 * icin bu deger ikonu inputun COK altina (kullanicinin ekran
 * goruntusunde gorulen, sonraki elemana/butona yakin bir konuma)
 * dusuruyordu. Asagidaki kural TUM ".form-input.position-relative"
 * kapsayicilarinda (bkz. app/Views/pages/*.php'deki pwd-toggle-input
 * deseni - login sayfalari DAHIL, ayni sonucu verir) ikonu HER ZAMAN
 * dikeyde ortalar; yukaridaki login'e ozel kural hala calisir ama artik
 * gereksiz (ayni degeri uretiyor), DOKUNULMADI/silinmedi.
 */
.form-input.position-relative .show-hide {
  top: 50% !important;
}

/*
 * v(kullanici geri bildirimi, ekran goruntusuyle): TUM DataTable'larda
 * ust satirdaki "satir sayisi" (.dt-length) ve "Search" (.dt-search) alanlari
 * tablo basligina biniyor. Duzeltme (kullanicinin verdigi degerler):
 *  - .dt-search right:0;top:0 / .dt-length left:0;top:0 (tema'nin ortak selektor listesiyle AYNI
 *    liste, kullanici istegiyle; eski '.user-list-table ... right:20px' kurali degistirildi)
 *  - .table-responsive: padding-top 50px + position relative (40px .dt-empty-footer
 *    padding'i kullanici istegiyle kaldirildi)
 * Kapsam: '.user-list-wrapper' (bkz. View::render() - TUM admin sayfalari).
 */
.api-manage div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.candidate-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.common-cart div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.common-order-history div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.customer-order-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-09 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-10 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-11 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-12 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-13 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-2 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-3 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-4 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-5 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-6 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.dashboard-7 div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.datatable-init div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.default-dashboard div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.e-category div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.list-product-view div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.main-scope-project div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.main-tasks div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.manage-review-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.product-report-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.project-status div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.role-permission-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.sale-report-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.sale-return-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.seller-details-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.subscribed-user div.dt-container .dt-layout-row .dt-layout-cell .dt-search,
.user-list-wrapper div.dt-container .dt-layout-row .dt-layout-cell .dt-search {
  right: 0;
  top: 0;
}

.api-manage div.dt-container .dt-layout-row .dt-length,
.candidate-wrapper div.dt-container .dt-layout-row .dt-length,
.common-cart div.dt-container .dt-layout-row .dt-length,
.common-order-history div.dt-container .dt-layout-row .dt-length,
.customer-order-wrapper div.dt-container .dt-layout-row .dt-length,
.dashboard-09 div.dt-container .dt-layout-row .dt-length,
.dashboard-10 div.dt-container .dt-layout-row .dt-length,
.dashboard-11 div.dt-container .dt-layout-row .dt-length,
.dashboard-12 div.dt-container .dt-layout-row .dt-length,
.dashboard-13 div.dt-container .dt-layout-row .dt-length,
.dashboard-2 div.dt-container .dt-layout-row .dt-length,
.dashboard-3 div.dt-container .dt-layout-row .dt-length,
.dashboard-4 div.dt-container .dt-layout-row .dt-length,
.dashboard-5 div.dt-container .dt-layout-row .dt-length,
.dashboard-6 div.dt-container .dt-layout-row .dt-length,
.dashboard-7 div.dt-container .dt-layout-row .dt-length,
.datatable-init div.dt-container .dt-layout-row .dt-length,
.default-dashboard div.dt-container .dt-layout-row .dt-length,
.e-category div.dt-container .dt-layout-row .dt-length,
.list-product-view div.dt-container .dt-layout-row .dt-length,
.main-scope-project div.dt-container .dt-layout-row .dt-length,
.main-tasks div.dt-container .dt-layout-row .dt-length,
.manage-review-wrapper div.dt-container .dt-layout-row .dt-length,
.product-report-wrapper div.dt-container .dt-layout-row .dt-length,
.project-status div.dt-container .dt-layout-row .dt-length,
.role-permission-wrapper div.dt-container .dt-layout-row .dt-length,
.sale-report-wrapper div.dt-container .dt-layout-row .dt-length,
.sale-return-wrapper div.dt-container .dt-layout-row .dt-length,
.seller-details-wrapper div.dt-container .dt-layout-row .dt-length,
.subscribed-user div.dt-container .dt-layout-row .dt-length,
.user-list-wrapper div.dt-container .dt-layout-row .dt-length {
  left: 0;
  top: 0;
}

.user-list-wrapper .table-responsive {
  padding-top: 50px;
  position: relative;
}
