/**
 * AncStudio overrides — tema style.css dosyasına dokunulmaz.
 * Ana sayfa: veritabanından gelen kategori görselleri gradient çerçevesine sığsın.
 */

/* ── Marka renkleri: ANC Studio Design logo paleti (#b1a294 toprak kahvesi) ── */
body.theme-color-29 {
    --theme-color:  #8b7360;
    --theme-color2: #b1a294;
}
.ancs-home-categories .gradient-category .gradient-border,
.ancs-home-categories .gradient-category .gradient-border .img-sec {
    overflow: hidden;
}

/* ── İletişim sayfası: 3 kanal kartı ── */
.ancs-contact-card {
    display: block;
    text-align: center;
    padding: 2.5rem 1.5rem 2rem;
    border: 1px solid #ede8e3;
    border-radius: 12px;
    transition: box-shadow 0.2s, border-color 0.2s;
    color: inherit;
}
.ancs-contact-card:hover {
    border-color: var(--theme-color);
    box-shadow: 0 4px 20px rgba(139,115,96,0.12);
    color: inherit;
}
.ancs-contact-icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #f5f0ed;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}
.ancs-contact-icon i {
    font-size: 28px;
    color: var(--theme-color);
}
.ancs-contact-card h5 {
    color: #333;
    font-weight: 600;
}
.ancs-contact-card .btn-solid {
    pointer-events: none;
}

/* ── Ürün detay: varyant butonları — çok seçenek olunca alt satıra geç ── */
.variation-box.size-box .quantity-variant.rectangle {
    flex-wrap: wrap !important;
    gap: 8px !important;
}
.variation-box.size-box .quantity-variant.rectangle li {
    flex: 0 0 auto !important;
    margin: 0 !important;
}

/* ── Ürün detay: mevcut seçimle uyumsuz varyant seçenekleri ── */

/* Renk daireleri: soluk + daire içinde çapraz çizgi */
li.ancs-opt-unavailable {
    opacity: 0.55;
    cursor: pointer;
    position: relative;
}

li.ancs-opt-unavailable::after {
    content: "";
    position: absolute;
    inset: 2px;                  /* border'a dokunmaz */
    border-radius: 50%;          /* daire içinde kalır */
    background: linear-gradient(
        to bottom right,
        transparent calc(50% - 1.5px),
        rgba(0, 0, 0, 0.6)       calc(50% - 1.5px),
        rgba(0, 0, 0, 0.6)       calc(50% + 1.5px),
        transparent              calc(50% + 1.5px)
    );
    pointer-events: none;
}

/* Hacim/beden butonları: soluk + üstü çizili */
button.ancs-opt-unavailable {
    opacity: 0.45;
    cursor: pointer;
    text-decoration: line-through;
    text-decoration-thickness: 1.5px;
}

/* ── Ürün detay: metin renkleri ── */
#ancs-product-details .price-text h3,
#ancs-product-details .price-text span,
#ancs-product-details .shipping-info li,
#ancs-product-details .shipping-info span,
#ancs-product-details .product-form-box h4,
#ancs-product-details .product-right-box h4 {
    color: #111 !important;
}

/* ─────────────────────────────────────────────── */

.ancs-home-categories .gradient-category .gradient-border .img-sec img.img-fluid {
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
    object-position: center bottom;
}

/* Ürün detay: uzun SKU metninin taşmasını önle */
#ancs-product-details .shipping-info li {
    align-items: flex-start;
}

#ancs-product-details .shipping-info li > span:last-child,
#ancs-product-details .shipping-info li #product-sku {
    word-break: break-word;
    overflow-wrap: anywhere;
}

/* Tema toaster: .alert .btn-close { position:relative !important } — sağ üst */
[data-notify="container"].ancs-notify-toast.alert {
    position: relative;
}

[data-notify="container"].ancs-notify-toast.alert .btn-close[data-notify="dismiss"] {
    position: absolute !important;
    top: 0.5rem !important;
    right: 0.5rem !important;
    left: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    padding: 0.25rem !important;
    width: 1.5rem;
    height: 1.5rem;
    min-width: 1.5rem;
    min-height: 1.5rem;
    z-index: 5;
    opacity: 1;
}

[data-notify="container"].ancs-notify-toast .alert-box {
    padding-right: 2rem;
    align-items: flex-start !important;
}

[data-notify="container"].ancs-notify-toast [data-notify="message"],
[data-notify="container"].ancs-notify-toast [data-notify="title"] {
    word-break: break-word;
}

@media (max-width: 575.98px) {
    [data-notify="container"].ancs-notify-toast.alert .btn-close[data-notify="dismiss"] {
        top: 0.35rem !important;
        right: 0.35rem !important;
        width: 2rem;
        height: 2rem;
        min-width: 2rem;
        min-height: 2rem;
    }

    [data-notify="container"].ancs-notify-toast .alert-box {
        padding-right: 2.5rem;
    }
}

/* ── Mobil bottom bar ── */
/* Desktop'ta mobile-fix-option'u tamamen gizle */
@media (min-width: 578px) {
    .mobile-fix-option {
        display: none !important;
    }
}

/* Tema mobile-* li öğelerini her koşulda gizle:
   position:fixed çocuklar parent display:none'u baypas edebiliyor */
@media (max-width: 577px) {
    li.mobile-cart,
    li.mobile-setting,
    li.mobile-search,
    li.mobile-wish,
    li.mobile-wishlist,
    .icon-nav li {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
    .main-menu .menu-right .icon-nav {
        display: none !important;
    }

    /* mobile-fix-option'u flex container yap */
    .mobile-fix-option {
        display: flex !important;
        align-items: center;
        justify-content: space-around;
    }

    /* Her ikon öğesi */
    .ancs-bar-item {
        display: flex;
        align-items: center;
        justify-content: center;
        flex: 1;
        height: 100%;
        color: #999;
        text-decoration: none;
        cursor: pointer;
        position: relative;
    }
    .ancs-bar-item i {
        font-size: 22px;
        color: #999;
    }
    .ancs-bar-item:hover i,
    .ancs-bar-item:active i {
        color: var(--theme-color);
    }

    /* Dil ayarları dropdown'ını mobilde gizle (onhover tetiklenmez) */
    .mobile-fix-option .show-div {
        display: none !important;
    }

    /* Dil ayarları paneli açıldığında: yukarı açılsın */
    .mobile-fix-option .onhover-div:hover .show-div,
    .mobile-fix-option .onhover-div.open .show-div {
        display: block !important;
        bottom: 60px !important;
        top: auto !important;
        right: 0 !important;
        left: auto !important;
        position: fixed !important;
    }
}

/* ── Offcanvas sepet: yükseklik + footer her zaman görünsün ── */
/* 100dvh: iOS Safari'de tarayıcı chrome'unu hesaba katar (100vh hesaplamaz) */
.cart-offcanvas {
    height: 100dvh !important;
}
/* Footer flex daraltılmasın; iOS safe-area boşluğuna (home indicator) yer bırak */
.cart-offcanvas .offcanvas-footer {
    flex-shrink: 0 !important;
    padding-bottom: max(12px, env(safe-area-inset-bottom)) !important;
}

/* ── Offcanvas sepet buton renkleri ── */
.cart-offcanvas .offcanvas-footer .btn.view-cart {
    border: 1px solid var(--theme-color) !important;
    color: var(--theme-color) !important;
    background: transparent !important;
}
.cart-offcanvas .offcanvas-footer .btn.checkout {
    background: var(--theme-color) !important;
    color: #fff !important;
    border-color: var(--theme-color) !important;
}

/* ── Logo boyutu: orijinal CSS'teki 25-34px çok küçük ── */
.main-menu .brand-logo img {
    height: clamp(52px, 5.5vw, 72px) !important;
    width: auto !important;
}

/* ── Desktop header: dil artık anamenüde, gear ikonu gizle ── */
@media (min-width: 578px) {
    .icon-nav .mobile-setting {
        display: none !important;
    }
}

/* ── Anamenü dil seçici flag item ── */
.ancs-flag {
    width: 28px !important;
    height: 20px !important;
    border-radius: 3px;
    display: inline-block;
    vertical-align: middle;
    flex-shrink: 0;
    object-fit: cover;
}
.ancs-lang-nav > a.ancs-lang-current {
    padding: 6px 10px !important;
    display: flex !important;
    align-items: center;
}
/* Smartmenus tarafından eklenen dropdown ok ikonunu gizle */
.ancs-lang-nav .sub-arrow,
.ancs-lang-nav > a .sub-arrow {
    display: none !important;
}
.ancs-lang-nav > ul {
    min-width: 140px;
}
.ancs-lang-nav > ul li a {
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 8px;
}
/* Mobil alt bar: dil bayrağı */
.ancs-bar-item .ancs-flag {
    width: 26px !important;
    height: 19px !important;
}
/* Dil panel: sadece bayraklar yan yana */
.ancs-lang-flags-panel {
    padding: 0 !important;
    min-width: auto !important;
    white-space: nowrap;
}
.ancs-lang-flag-btn {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    border-radius: 4px;
    padding: 2px;
    transition: opacity 0.15s;
}
.ancs-lang-flag-btn:hover,
.ancs-lang-flag-btn.active {
    opacity: 0.75;
}
.ancs-lang-flag-btn.fw-semibold {
    outline: 2px solid var(--theme-color);
    outline-offset: 1px;
    border-radius: 4px;
}
.ancs-flag-lg {
    width: 36px !important;
    height: 26px !important;
    border-radius: 3px;
    display: block;
    object-fit: cover;
}

/* ── Etsy SVG ikonu: footer ve iletişim sayfası ── */
.ancs-etsy-icon {
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    fill: currentColor;
    line-height: 1;
}
/* Footer sosyal ikonların boyutunu al */
.footer-social ul li a .ancs-etsy-icon {
    font-size: inherit;
}
.ancs-etsy-contact-icon {
    color: var(--theme-color);
}

/* ── Checkout: hint ve etiket metinleri biraz daha okunaklı ── */
#ancs-checkout-page #ancs-shipping-address-hint,
#ancs-checkout-page #ancs-billing-same-note,
#ancs-checkout-page #ancs-billing-address-hint {
    font-size: 0.9rem !important;
}
#ancs-checkout-page .form-check-label[for="acceptTerms"] {
    font-size: 0.9rem;
}
#ancs-checkout-page label[for="CustomerNotes"] {
    font-size: 0.9rem;
    font-weight: 500;
}

/* ── Kategori listesi: ürün kartı resim oranı 3:4 (portrait) ── */
.collection-product-wrapper .img-wrapper {
    aspect-ratio: 3 / 4;
    overflow: hidden;
    position: relative;
}
.collection-product-wrapper .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    position: absolute;
    top: 0;
    left: 0;
}

/* ── Kategori listesi: sidebar sticky + scroll ── */
@media (min-width: 992px) {
    .collection-filter {
        position: sticky;
        top: 20px;
        align-self: flex-start;
        max-height: calc(100vh - 40px);
        overflow-y: auto;
        scrollbar-width: thin;
    }
}

/* ── Kategori listesi: filtre sidebar minimum genişlik ── */
@media (min-width: 992px) {
    .collection-filter {
        min-width: 260px;
    }
}

/* ── Kategori listesi: pagination stili ── */
.product-pagination .page-link {
    color: var(--theme-color);
    border-color: #e0d8d0;
}
.product-pagination .page-item.active .page-link {
    background-color: var(--theme-color);
    border-color: var(--theme-color);
    color: #fff;
}
.product-pagination .page-link:hover {
    background-color: #f5f0ed;
    border-color: var(--theme-color);
    color: var(--theme-color);
}
.product-pagination .page-item.active .page-link:hover {
    background-color: var(--theme-color);
    color: #fff;
}

/* Ana menü - 1200px ve üstünde flexbox ile yatay düzen */
@media (min-width: 1200px) {
    ul#main-menu {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
        position: static !important;
        width: auto !important;
        height: auto !important;
        background-color: transparent !important;
        border: none !important;
        right: auto !important;
        overflow: visible !important;
    }
    ul#main-menu > li {
        float: none !important;
    }
}
