/* Yerleşim: içerik sarmalayıcı, grid'ler, responsive kırılımlar (900px / 560px) */

/* Tek container: header, gövde ve footer 1440px hattında hizalanır. */
.dk-wrap { max-width: 1440px; margin: 0 auto; padding-left: 32px; padding-right: 32px; }

.dk-grid-auto { display: grid; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); gap: 20px; }
.dk-2col { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.dk-3col { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.dk-4col { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.dk-feat2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }

.dk-split {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 52px;
  align-items: center;
  padding-top: 72px;
  padding-bottom: 44px;
}

.dk-detailhead {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 48px;
  align-items: center;
  padding-top: 44px;
  padding-bottom: 48px;
}

.dk-oldnew {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 28px;
  align-items: center;
  max-width: 900px;
  margin: 0 auto;
}

.dk-cfg {
  display: grid;
  grid-template-columns: 1.5fr .85fr;
  gap: 32px;
  margin-top: 40px;
  align-items: start;
}

.dk-footer-grid {
  display: grid;
  /* 6 sütun: marka · Modüller · Hizmetler · Şirket · Hesabım · İletişim.
     Modüller sütunu en uzun etiketleri taşıdığı için biraz daha geniş. */
  grid-template-columns: 1.35fr 1.2fr .95fr .85fr .85fr 1.05fr;
  gap: 26px;
  padding-top: 56px;
  padding-bottom: 40px;
}

/* Mobil varsayılanları */
.dk-burger { display: none; }
.dk-foot-caret { display: none; }
.dk-tabs { scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.dk-tabs::-webkit-scrollbar { display: none; }

@keyframes dkSlideIn { from { transform: translateX(100%); } to { transform: translateX(0); } }

@media (min-width: 901px) {
  .dk-mobile-menu { display: none !important; }
}

@media (max-width: 900px) {
  .dk-topbar-inner { padding: 0 16px !important; }
  .dk-topbar-center { display: none !important; }
  .dk-hdr-bar { height: 64px !important; }
  .dk-hdr { padding: 0 16px !important; height: 64px !important; gap: 12px !important; }
  .dk-nav, .dk-login { display: none !important; }
  .dk-hdr-actions .dk-btn-meeting,
  .dk-hdr-actions .dk-hdr-quote-link { display: none !important; }
  .dk-burger { display: inline-flex !important; }
  .dk-wrap { padding-left: 20px !important; padding-right: 20px !important; }
  .dk-split, .dk-detailhead, .dk-oldnew, .dk-cfg { grid-template-columns: 1fr !important; gap: 30px !important; }
  .dk-cfg-summary { position: static !important; }
  .dk-split { padding-top: 44px !important; }
  .dk-oldnew-arrow { display: none !important; }
  .dk-3col, .dk-4col { grid-template-columns: 1fr 1fr !important; }
  .dk-footer-grid { grid-template-columns: 1fr !important; gap: 4px !important; }
  .dk-foot-collapsed { display: none !important; }
  .dk-foot-head { cursor: pointer !important; padding: 15px 0 !important; margin-bottom: 0 !important; border-top: 1px solid rgba(255,255,255,.12) !important; }
  .dk-foot-caret { display: inline-block !important; }
  .dk-foot-body { padding-bottom: 8px !important; }
  .dk-h1 { font-size: 34px !important; letter-spacing: -.8px !important; }
  .dk-cta { padding: 36px 22px !important; }
  .dk-stickybar { top: 56px !important; }
}

/* Dokunma hedefleri: mobilde etkileşimli kontroller ≥44px (CLAUDE.md kuralı).
   Metin içi satır içi linkler kapsam dışı (WCAG 2.5.8 muafiyeti) — akışı bozmamak için. */
@media (max-width: 900px) {
  .dk-tab { min-height: 44px !important; display: inline-flex !important; align-items: center !important; }
  .dk-bill-btn { min-height: 44px !important; }
  .dk-step-btn,
  .dk-ent-users .dk-step-btn { width: 44px !important; height: 44px !important; }
  .dk-tier-btn, .dk-seg { min-height: 44px !important; }
  .dk-logo { min-height: 44px !important; }
  /* Switch: görünümü küçük kalsın, dokunma alanı görünmez katmanla 44px'e çıksın */
  .dk-switch { position: relative !important; }
  .dk-switch::before { content: "" !important; position: absolute !important; inset: -9px !important; }
  /* Burger 42px'ti — 44px eşiğinin hemen altında kalıyordu. */
  .dk-burger { width: 44px !important; height: 44px !important; }

  /* Footer yasal linkleri (12.5px metin): görünüm korunur, dokunma alanı 44px'e çıkar. */
  .dk-foot-legal a { display: inline-flex !important; align-items: center !important; min-height: 44px !important; }

  /* Sticky bar geri linki (← Hizmetler / ← Ana sayfa). */
  .dk-back-link { display: inline-flex !important; align-items: center !important; min-height: 44px !important; }

  /* Yalın yüzeyler (sepet / ödeme / hesabım): geri linkleri ve WC form butonları 44px'e tamamlanır. */
  .dk-checkout-page a[class*="text-[13.5px]"],
  .woocommerce a.button.wc-backward,
  .dk-auth-scope .lost_password a {
    display: inline-flex !important; align-items: center !important; min-height: 44px !important;
  }
  .woocommerce .button,
  .dk-auth-scope button[type="submit"],
  .dk-auth-scope .button { min-height: 44px !important; }

  /* NOT: WC şifre göster/gizle butonu (~22px) dokunma hedefi kuralının altında kalıyor.
     Denendi ve VAZGEÇİLDİ: buton WC tarafından `position: absolute` ile konumlanıyor ve
     görünürlüğü kendi JS'ine bağlı; position/inset ezmek kutuyu çökertip alan dışına taşırdı.
     WooCommerce'in kendi bileşeni — çekirdek güncellemesine bırakıldı. */
  .dk-mega-link, .dk-svc-item { min-height: 44px !important; display: flex !important; align-items: center !important; }
}

/* Mobilde kart listeleri: alt alta uzayıp sayfayı şişirmek yerine YATAY kaydırılır.
   Sonraki kartın ucu görünür kalır (kaydırılabilirlik ipucu) ve scrollbar bilerek GÖRÜNÜR bırakılır.
   Yalnız `dk-scroll-row` işaretli listelerde geçerli — fiyat/karşılaştırma ızgaraları alt alta kalır. */
@media (max-width: 560px) {
  .dk-scroll-row {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 14px !important;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    /* kenardan kenara kaydırma (dk-wrap'in 20px padding'ini aşar) */
    margin-left: -20px; margin-right: -20px;
    padding: 2px 20px 14px;
    scrollbar-width: thin;
    scrollbar-color: var(--accent2) var(--border);
  }
  .dk-scroll-row > * { flex: 0 0 80%; min-width: 0; scroll-snap-align: start; }
  .dk-scroll-row::-webkit-scrollbar { height: 6px; }
  .dk-scroll-row::-webkit-scrollbar-track { background: var(--border); border-radius: 999px; }
  .dk-scroll-row::-webkit-scrollbar-thumb { background: var(--accent2); border-radius: 999px; }
}

@media (max-width: 560px) {
  .dk-2col, .dk-3col, .dk-4col, .dk-feat2 { grid-template-columns: 1fr !important; }
  .dk-footer-grid { grid-template-columns: 1fr !important; }
  .dk-h1 { font-size: 27px !important; }
  .dk-cta { padding: 26px 18px !important; }
  .dk-detailname, .dk-tabspacer { display: none !important; }
  .dk-tabs { flex: 1 !important; gap: 2px !important; }
}

/* Hareket azaltma — GENEL kapsam.
   Önceden yalnızca kart hover'ı kapsanıyordu; drawer animasyonu (dkSlideIn) ve
   diğer geçişler vestibüler duyarlılığı olan kullanıcıda çalışmaya devam ediyordu.
   Geçişler tamamen silinmez, algılanamaz süreye indirilir: JS'in transitionend
   beklediği yerlerde akış kırılmasın. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
