/*
 * LAP-DNS ortak görsel standardı
 * - Kart, galeri ve panel önizlemelerinde görselin tamamını gösterir.
 * - Story/video ve dekoratif arka planlar kendi özel sunum kurallarını korur.
 * - Sabit oranlı kutularda taşma ve istemsiz kırpılmayı önler.
 */
:root {
  --lap-image-stage: #020617;
  --lap-image-stage-soft: #07101f;
}

body[class] :is(
  .lapdns-yatay-ilan,
  .lapdns-vip-image-link,
  .yatay-ilan,
  .dikey-card > a,
  .dikey-card .blog-card-image-link,
  .arama-card-image,
  .lap-blog-card-link,
  .lap-amp-vitrin-media,
  .lap-retention-card > a,
  .related-grid article > a,
  .firma-logo-box,
  .firma-card-head > a,
  .main-image,
  .lap-amp-gallery-slide,
  .lap-amp-gallery-thumb,
  .medya-card > a,
  .ilan-preview-box > div:first-child
) {
  background: linear-gradient(145deg, var(--lap-image-stage-soft), var(--lap-image-stage));
}

body[class] :is(
  .lapdns-yatay-ilan img,
  .lapdns-vip-image-link img,
  .yatay-ilan img,
  .dikey-card > a > img,
  .dikey-card > a amp-img img,
  .dikey-card .blog-card-image-link img,
  .dikey-card .blog-card-image-link amp-img img,
  .home-listing-img,
  amp-img.home-listing-img img,
  .home-blog-img,
  amp-img.home-blog-img img,
  .arama-card-image img,
  .arama-card-image amp-img img,
  .lap-blog-card-img,
  amp-img.lap-blog-card-img img,
  .lap-amp-vitrin-img img,
  amp-img.lap-amp-vitrin-img img,
  .blog-card-img,
  amp-img.blog-card-img img,
  .lap-retention-card > a img,
  .lap-retention-card > a amp-img img,
  .related-grid article > a img,
  .related-grid article > a amp-img img,
  .firma-logo-img,
  amp-img.firma-logo-img img,
  .firma-logo-box img,
  .firma-logo-box amp-img img,
  .main-image img.slide,
  .lap-amp-gallery-image img,
  .lap-gallery-thumb img,
  .lap-amp-gallery-thumb img,
  .blog-detail-page img.cover,
  .blog-detail-page amp-img.cover img,
  .blog-detail-page .content img,
  .admin-main .table-img,
  .admin-main .preview-img,
  .admin-main .image-preview-img,
  .admin-main .medya-card img,
  .admin-main .vitrin-item img,
  .admin-main .lap-image-preview,
  .firma-main .table-img,
  .firma-main .preview-img,
  .firma-main .ilan-preview-img,
  .firma-content .table-img,
  .firma-content .preview-img,
  .firma-content .ilan-preview-img
) {
  object-fit: contain !important;
  object-position: center center !important;
  background-color: var(--lap-image-stage) !important;
}

body[class] :is(
  .lapdns-yatay-ilan img,
  .lapdns-vip-image-link img,
  .yatay-ilan img,
  .dikey-card > a > img,
  .home-listing-img,
  .home-blog-img,
  .arama-card-image img,
  .lap-blog-card-img,
  .blog-card-img,
  .lap-retention-card > a img,
  .related-grid article > a img,
  .firma-logo-img,
  .firma-logo-box img,
  .main-image img.slide,
  .blog-detail-page img.cover,
  .admin-main img,
  .firma-main img,
  .firma-content img
) {
  max-width: 100%;
}

/* Panel body etiketlerinde her zaman class bulunmadığı için açık panel kapsamı. */
.admin-main :is(
  .table-img,
  .preview-img,
  .image-preview-img,
  .medya-card img,
  .vitrin-item img,
  .lap-image-preview
),
.firma-panel :is(
  .table-img,
  .preview-img,
  .ilan-preview-img,
  .firma-profile-logo
) {
  max-width: 100%;
  object-fit: contain !important;
  object-position: center center !important;
  background-color: var(--lap-image-stage) !important;
}

body[class] .lap-amp-vitrin-media > amp-img.lap-amp-vitrin-img > img {
  object-fit: contain !important;
  object-position: center center !important;
  background-color: var(--lap-image-stage) !important;
}

/* Bulanık galeri zemini dekoratiftir; sahneyi doldurmaya devam eder. */
.main-image img.gallery-backdrop,
.lap-amp-gallery-backdrop img {
  object-fit: cover !important;
}

/* Logo ve uygulama simgeleri görsel içerik kartı değildir. */
:where(.firma-auth-logo img, .lap-install-app-icon img) {
  object-fit: contain !important;
  background: transparent !important;
}
