/* GENEL TAŞMA FIXİ */
html, body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
}


/* Uzun metin/link taşmasın */
a, p, span, li, div{
    /*overflow-wrap:anywhere;*/
    /*word-break:break-word;*/
}

/* =============================
   MOBİL/TABLET HEADER FORMALARI
   ============================= */
@media (max-width: 992px){

    /* select2/combobox bloklarını satıra sığdır */
    span[role="combobox"]{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }

    /* combobox içindeki uzun yazı sarılsın */
    span[role="textbox"]{
        display:block;
        width:100%;
        white-space:normal;
        overflow-wrap:anywhere;
    }

    /* Arama kutusu taşma yapmasın */
    input[name="search_query"]{
        width:100%;
        max-width:100%;
        min-width:0;
    }
}

/* =============================
   MENÜ / SEKME / SLIDER BUTONLARI
   ============================= */
/* Tab butonları tek satırda taşmasın */
@media (max-width: 992px){
    [data-toggle="tab"]{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        padding:10px 12px;
        margin:4px 4px;
        flex:1 1 calc(50% - 12px);
        min-width:0;
        max-width:100%;
    }
}

/* =============================
   TABLE FIX (varsa)
   ============================= */
@media (max-width: 768px){
    table{
        display:block;
        width:100%;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }
    thead, tbody, tr, th, td{
        white-space:nowrap;
    }
}

/* 100vw + padding taşmaları varsa */
[class*="w-100vw"], .fullwidth, .hero, .banner{
    width:100% !important;
    max-width:100% !important;
}

@media (max-width: 575.98px){
    /* select2 comboboxları satıra sığdır */
    span[role="combobox"]{
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    span[role="textbox"]{
        display: block;
        width: 100%;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    /* search input taşmasın */
    input[name="search_query"]{
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    /* mobilde checkbox/metin satırları daha düzgün */
    input[type="checkbox"] + label{
        display: inline-block;
        max-width: calc(100% - 24px);
        margin-left: 8px;
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

@media (min-width: 576px) and (max-width: 991.98px){
    /* Tablet: combobox alanları esneyip wrap yapsın */
    span[role="combobox"]{
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    span[role="textbox"]{
        display: block;
        width: 100%;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    /* Tablet search input */
    input[name="search_query"]{
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    /* tablet filtre label */
    input[type="checkbox"] + label{
        display: inline-block;
        max-width: calc(100% - 24px);
        margin-left: 8px;
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

/* --- 992px üzeri desktop: dar cambazlık istemiyorsa minimum override --- */
@media (min-width: 992px){
    /* select2 textboxları desktopta taşma yapmasın */
    span[role="textbox"]{
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        max-width: 320px; /* genişlik dengesi, isteğe göre artır/azalt */
    }
}

/* --- Filtre tarafındaki "Filtrele" inputları full width olsun --- */
input[type="text"][placeholder="Filtrele"]{
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

@media (min-width: 992px) and (max-width: 1200px){

    /* Ürün kartı ana kutu */
    .product-item,
    .product-card,
    .product-box {
        height: auto !important;
        min-height: calc( mevcutHeight + 50px ); /* fallback mantığı */
    }

    /* Eğer sistem fixed height kullanıyorsa */
    .product-item {
        min-height: 420px !important;  /* mevcut ~370 ise +50 */
    }

    /* İçerik taşma yapmasın */
    .product-item .product-content{
        height: auto !important;
    }
}


/*.home-slider .nav.nav-tabs .nav-link{*/
/*    background-color:#ffffff !important;*/
/*    color:#333333 !important;*/
/*    border:none !important;*/
/*}*/

/*.home-slider .nav.nav-tabs .nav-link.active{*/
/*    background-color:#333333 !important;*/
/*    color:#ffffff !important;*/
/*}*/

/*!* Tab satırı ortada dursun, tam genişliğe yayılmasın *!*/
/*.home-slider .nav.nav-tabs{*/
/*    left:50% !important;*/
/*    transform:translateX(-50%) !important;*/
/*    width:auto !important;*/
/*    padding:0 10px;*/
/*}*/

/*.home-slider .nav.nav-tabs li{*/
/*    margin:0 6px !important;*/
/*}*/

/* Geniş ekranda butonlar fazla uzamasın */
@media (min-width:1200px){
    .home-slider .nav.nav-tabs .nav-link{
        min-width:220px;
        text-align:center;
    }
}




/* =========================================================
   Desktop header: prevent wrapping without changing layout engine
   (safer than forcing container to flex)
   ========================================================= */
@media (min-width: 992px){
    /* Keep right-side header items from breaking lines */
    .user-menu,
    .basket,
    .notification-bell,
    .notification,
    .header-notification{
        white-space: nowrap !important;
    }

    /* Make basket/greeting content stay centered vertically */
    .basket a,
    .basket button,
    .basket .btn,
    .basket .basket-link,
    .user-menu a,
    .user-menu .btn{
        display: inline-flex !important;
        align-items: center;
        white-space: nowrap !important;
    }

    /* Let search behave normally (do NOT override fixed widths here) */
    .search{
        max-width: none !important;
    }
}


#mobileRslides{
    margin-top: 40px;
}
