/* ==========================================================================
   ÜRÜNLERİMİZ MEGA MENÜSÜ
   TÜM kategoriler TEK SATIRDA (bugün 6 kategori). Kartlar sabit genişlikte değil,
   paneli eşit bölüşür; kategori sayısı artınca satır bozulmaz, kartlar daralır.
   Renkler tema değişkenlerinden gelir (admin > Ayarlar > Tema Renkleri) —
   bu dosyada renk SABİT KODLANMAZ, `var(--color-primary)` vb. kullanılır.
   ========================================================================== */

/* Mega menüyü taşıyan <li>: konumlandırma referansı .nav-and-btn-wrapper olsun
   diye kendi `position: relative` değerini bırakıyoruz. Böylece panel dar
   dropdown gibi değil, container genişliğinde açılır. */
li.has-dropdown.dd-mega {
    position: static;
}

.dd-mega-panel {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 95;
    opacity: 0;
    visibility: hidden;
    transform: translateY(18px);
    transition: opacity .22s ease, transform .28s cubic-bezier(.22, .61, .36, 1), visibility .28s;
    /* Menü kapalıyken içindeki linkler klavyeyle gezilemesin */
    pointer-events: none;
}

li.has-dropdown.dd-mega:hover > .dd-mega-panel,
li.has-dropdown.dd-mega:focus-within > .dd-mega-panel,
li.has-dropdown.dd-mega.dd-acik > .dd-mega-panel {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

.dd-mega-ic {
    background: #fff;
    border: 1px solid #e4e7ec;
    border-radius: 16px;
    box-shadow: 0 28px 60px rgba(15, 23, 42, .16), 0 4px 12px rgba(15, 23, 42, .06);
    overflow: hidden;
    /* Alçak ekranlarda panel ekran dışına taşmasın, kendi içinde kaysın */
    max-height: calc(100vh - 170px);
    overflow-y: auto;
    overscroll-behavior: contain;
}

/* Üstte ince tema rengi şeridi — premium duruş */
.dd-mega-ic::before {
    content: "";
    display: block;
    height: 3px;
    background: linear-gradient(90deg, var(--color-primary), var(--color-primary-2));
}

/* --- Kart ızgarası: TEK SATIR GARANTİSİ ---------------------------------
   Kategori sayısı ne olursa olsun kartlar tek satırda kalsın diye `flex` +
   `flex-wrap: nowrap` kullanılıyor; her kart `flex: 1 1 0` ile paneli EŞİT
   bölüşür, `min-width: 0` sayesinde uzun kategori/ürün adları satırı taşıramaz.

   Neden `grid-template-columns: repeat(auto-fit, minmax(X, 1fr))` DEĞİL:
   auto-fit'te minmax'in alt sınırı (X) sığmadığı anda ızgara ikinci satıra
   taşar — yani "tek satır" garantisi vermez, yalnızca "X'ten dar olmaz"
   garantisi verir. Bizim istediğimiz tam tersi: kart daralsın ama satır bozulmasın.

   Dayanıklılık: 6 kategori bugünkü hâl. Panelden 7. veya 8. kategori eklenirse
   kartlar orantılı daralır, satır yine TEK kalır (1920px'te 8 kart ~197px,
   1366px'te 8 kart ~130px). 9 ve üzerinde kart genişliği okunmaz seviyeye
   ineceği için aşağıdaki `:has()` kuralı ile satırda 8 kart kalacak şekilde
   BİLİNÇLİ olarak sarmaya izin verilir. `:has()` desteklemeyen eski tarayıcıda
   kural düşer ve düzen tek satırda kalır — bozulma değil, yalnızca daha dar kart. */
.dd-mega-grid {
    /* Sütun boşluğu tek yerden yönetilir; aşağıdaki 9+ kategori hesabı da bunu okur. */
    --dd-mega-gap: 16px;
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 20px var(--dd-mega-gap);
    padding: 22px 24px 20px;
}

/* --- Kategori kartı --- */
.dd-mega-kart {
    display: flex;
    flex-direction: column;
    flex: 1 1 0;
    min-width: 0;
}

/* 9+ kategori: tek satırda kartlar okunmaz hale gelir → satırda 8 kart, alta sar. */
.dd-mega-grid:has(> .dd-mega-kart:nth-child(9)) {
    flex-wrap: wrap;
    row-gap: 24px;
}

.dd-mega-grid:has(> .dd-mega-kart:nth-child(9)) > .dd-mega-kart {
    flex: 1 1 calc((100% - 7 * var(--dd-mega-gap)) / 8);
    max-width: calc((100% - 7 * var(--dd-mega-gap)) / 8);
}

.dd-mega-gorsel {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    border-radius: 10px;
    overflow: hidden;
    background: #f3f4f6;
    border: 1px solid #eceef2;
    margin-bottom: 10px;
}

.dd-mega-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transform: scale(1.04);
    transition: opacity .25s ease, transform .45s ease;
}

.dd-mega-img--aktif {
    opacity: 1;
    transform: scale(1);
}

.dd-mega-kart:hover .dd-mega-img--aktif {
    transform: scale(1.06);
}

/* Görselin üstünde okunabilirliği artıran çok hafif bir örtü */
.dd-mega-gorsel::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(15, 23, 42, 0) 55%, rgba(15, 23, 42, .12));
    pointer-events: none;
}

/* Kategori adları uzun ("PENCERE KORKULUĞU VE FERFORJE KAFES"). Kartlar tek satıra
   sığmak için dar olduğundan başlık KIRPILMAZ, sarar: rozet üstte sabit kalsın diye
   `align-items: flex-start`, ad ise ayrı bir span içinde serbestçe akar.
   `min-height` iki satırlık yer ayırır ki tek satırlık başlıkla iki satırlık başlık
   aynı hizada başlasın; üç satır gerekirse kart doğal olarak uzar (kırpma yok). */
.dd-mega-kat-ad {
    display: flex !important;
    align-items: flex-start;
    gap: 6px;
    padding: 0 0 8px !important;
    margin-bottom: 8px;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.25;
    color: #16181d !important;
    text-transform: uppercase;
    letter-spacing: .1px;
    border-bottom: 1px solid #eceef2;
    transition: color .2s;
}

.dd-mega-kat-ad-yazi {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 2.5em;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.dd-mega-kart:hover .dd-mega-kat-ad {
    color: var(--color-primary) !important;
}

.dd-mega-adet {
    margin-left: auto;
    flex-shrink: 0;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    padding: 3px 6px;
    border-radius: 20px;
    color: var(--color-primary);
    background: rgba(var(--color-primary-rgb), .09);
}

/* --- Ürün listesi --- */
.dd-mega-urunler {
    display: flex !important;
    flex-direction: column;
    align-items: stretch !important;
    flex: 1 1 auto;
    gap: 1px;
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
}

.dd-mega-urunler li {
    padding: 0 !important;
    margin: 0 !important;
}

/* Ürün adları uzun ("Ahşap Küpeşteli Ferforje Merdiven Korkuluğu") ve kartlar dar.
   Tek satır + ellipsis adı anlamsız hale getiriyordu; en fazla 2 satır sarıp
   gerekirse orada kısaltıyoruz. Böylece kart yüksekliği de öngörülebilir kalır. */
.dd-mega-urunler li > a {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    position: relative;
    padding: 4px 0 4px 12px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.35;
    color: #55555f !important;
    overflow: hidden;
    overflow-wrap: anywhere;
    transition: color .2s, transform .2s;
}

/* Madde işareti — hover'da tema rengine döner.
   İki satıra saran adlarda ortalanmasın diye İLK satırın hizasına sabitlendi. */
.dd-mega-urunler li > a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 5px;
    height: 5px;
    margin-top: -2.5px;
    border-radius: 50%;
    background: #d3d7de;
    transition: background .2s, transform .2s;
}

.dd-mega-urunler li > a:hover {
    color: var(--color-primary) !important;
    transform: translateX(3px);
}

.dd-mega-urunler li > a:hover::before {
    background: var(--color-primary);
    transform: scale(1.35);
}

/* "Tüm Ürünleri Gör" — listenin 5. maddesi, kartın en altına sabitlenir */
.dd-mega-tumu {
    margin-top: auto !important;
    padding-top: 8px !important;
}

.dd-mega-tumu > a {
    padding-left: 0 !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: var(--color-primary) !important;
    white-space: nowrap;
}

.dd-mega-tumu > a::before {
    display: none;
}

.dd-mega-tumu > a i {
    font-size: 10px;
    margin-left: 4px;
    transition: transform .2s;
}

.dd-mega-tumu > a:hover i {
    transform: translateX(3px);
}

/* --- Panel alt şeridi --- */
.dd-mega-alt {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 13px 28px;
    border-top: 1px solid #eceef2;
    background: #fafbfc;
}

.dd-mega-alt-bilgi {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 600;
    color: #74747f;
}

.dd-mega-alt-bilgi i {
    color: var(--color-primary);
}

.dd-mega-alt-linkler {
    display: inline-flex;
    align-items: center;
    gap: 22px;
}

.dd-mega-alt-linkler a {
    display: inline-flex !important;
    align-items: center;
    gap: 7px;
    padding: 0 !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #55555f !important;
    transition: color .2s;
}

.dd-mega-alt-linkler a:hover {
    color: var(--color-primary) !important;
}

.dd-mega-alt-birincil {
    color: var(--color-primary) !important;
    font-weight: 700 !important;
}

.dd-mega-alt-birincil i {
    font-size: 10px;
    transition: transform .2s;
}

.dd-mega-alt-birincil:hover i {
    transform: translateX(3px);
}

/* --- Duyarlılık ---
   Sütun SAYISI hiçbir kırılımda değişmez (tek satır korunur); dar ekranda yalnızca
   boşluklar ve yazı boyutları küçülür ki kartlar okunaklı kalsın. */

/* 1200–1399px: container daralır, kart başına düşen genişlik azalır. */
@media (max-width: 1399px) {
    .dd-mega-grid {
        --dd-mega-gap: 12px;
        gap: 18px var(--dd-mega-gap);
        padding: 18px 18px 16px;
    }
    .dd-mega-kat-ad {
        font-size: 11px !important;
    }
    .dd-mega-urunler li > a {
        font-size: 11.5px !important;
        padding-left: 11px !important;
    }
    .dd-mega-tumu > a {
        font-size: 11.5px !important;
    }
    .dd-mega-alt {
        padding: 12px 18px;
    }
}

/* 992–1199px: masaüstü menünün en dar hâli. Yazılar bir tık daha küçülür,
   kart görseli biraz basıklaşır ki panel yüksekliği kontrolde kalsın. */
@media (max-width: 1199px) {
    .dd-mega-grid {
        --dd-mega-gap: 10px;
        gap: 14px var(--dd-mega-gap);
        padding: 14px 14px 12px;
    }
    .dd-mega-gorsel {
        aspect-ratio: 16 / 9;
        margin-bottom: 8px;
    }
    .dd-mega-kat-ad {
        font-size: 10.5px !important;
        letter-spacing: 0;
        gap: 4px;
    }
    .dd-mega-adet {
        font-size: 9.5px;
        padding: 3px 5px;
    }
    .dd-mega-urunler li > a {
        font-size: 11px !important;
        padding-left: 10px !important;
    }
    .dd-mega-tumu > a {
        font-size: 11px !important;
    }
    .dd-mega-alt {
        padding: 11px 14px;
        gap: 10px;
    }
    .dd-mega-alt-bilgi,
    .dd-mega-alt-linkler a {
        font-size: 11.5px !important;
    }
    .dd-mega-alt-linkler {
        gap: 16px;
    }
}

/* 992px altında masaüstü navigasyonu (.nav-and-btn-wrapper) zaten display:none.
   Mega menü paneli MOBİLDE HİÇ DEVREYE GİRMEZ — mobilde "Ürünlerimiz" yan menüdeki
   açılır liste olarak çalışır (aşağıdaki .dd-mobil-kat blokları). */
@media (max-width: 991px) {
    .dd-mega-panel {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dd-mega-panel,
    .dd-mega-img,
    .dd-mega-urunler li > a {
        transition: none;
    }
    .dd-mega-kart:hover .dd-mega-img--aktif {
        transform: none;
    }
}

/* ==========================================================================
   MOBİL MENÜ — Ürünlerimiz altındaki kategori listesi
   ========================================================================== */
.dd-mobil-kat > a {
    display: flex !important;
    align-items: center;
    gap: 10px;
}

.dd-mobil-kat-gorsel {
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    border-radius: 6px;
    object-fit: cover;
    background: #f3f4f6;
    border: 1px solid #eceef2;
}

.dd-mobil-kat-adet {
    margin-left: auto;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1;
    padding: 4px 7px;
    border-radius: 20px;
    color: var(--color-primary);
    background: rgba(var(--color-primary-rgb), .09);
}
