/*
Theme Name: neve-child
Description: Theme enfant de Draisienne Electrique
Author: Draisienne
Author URI:
Template: neve
Version: 
*/

/* GMPBike Woo category redesign — inspired by Trott tabs style, adapted to GMP colors */
body.tax-product_cat .woocommerce-result-count {
    color: #263238 !important;
    font-family: inherit !important;
    font-size: 16px !important;
    margin: 0 0 14px !important;
}

body.tax-product_cat .woocommerce-ordering {
    float: none !important;
    margin: 0 0 22px !important;
}

body.tax-product_cat .woocommerce-ordering select,
body.tax-product_cat select.orderby {
    width: 100% !important;
    max-width: 360px !important;
    min-height: 46px !important;
    border: 1px solid #d7dde3 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #22313f !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    padding: 0 14px !important;
}

/* Filter bar */
.gmp-category-filter-bar {
    clear: both !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gmp-category-filter-bar__fields {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)) !important;
    gap: 12px !important;
    align-items: end !important;
}

.gmp-category-filter-bar__field {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    margin: 0 !important;
    min-width: 0 !important;
}

.gmp-category-filter-bar__field span {
    color: #596675 !important;
    display: block !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .04em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.gmp-category-filter-bar__field select {
    width: 100% !important;
    min-height: 42px !important;
    border: 1px solid #d7dde3 !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: #102033 !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    padding: 0 10px !important;
}

.gmp-category-filter-bar__submit,
.gmp-category-filter-bar__reset {
    align-items: center !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    justify-content: center !important;
    line-height: 1 !important;
    min-height: 42px !important;
    padding: 0 18px !important;
    text-decoration: none !important;
    width: auto !important;
}

.gmp-category-filter-bar__submit {
    border: 0 !important;
    background: #129447 !important;
    color: #fff !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(18,148,71,.20) !important;
}

.gmp-category-filter-bar__reset {
    border: 1px solid #d7dde3 !important;
    background: #fff !important;
    color: #22313f !important;
}

/* Product cards: keep products visible and readable */
body.tax-product_cat ul.products {
    gap: 22px !important;
    margin-top: 8px !important;
}

body.tax-product_cat ul.products li.product {
    border: 1px solid #edf0f3 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 8px 24px rgba(16, 32, 51, .06) !important;
    overflow: hidden !important;
    padding: 0 0 16px !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
}

body.tax-product_cat ul.products li.product:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 30px rgba(16, 32, 51, .10) !important;
}

body.tax-product_cat ul.products li.product a.woocommerce-LoopProduct-link {
    text-decoration: none !important;
}

body.tax-product_cat ul.products li.product img {
    background: #fff !important;
    display: block !important;
    height: 190px !important;
    margin: 0 auto 12px !important;
    object-fit: contain !important;
    padding: 16px !important;
    width: 100% !important;
}

body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product h2 {
    color: #102033 !important;
    font-family: inherit !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    padding: 0 16px 8px !important;
}

body.tax-product_cat ul.products li.product .price {
    color: #129447 !important;
    display: block !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    padding: 0 16px !important;
}

body.tax-product_cat ul.products li.product .button {
    margin: 12px 16px 0 !important;
    border-radius: 999px !important;
    background: #129447 !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    padding: 10px 16px !important;
}

/* SEO tabs below products */
.gmp-category-tabs {
    clear: both !important;
    margin: 54px auto 32px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    max-width: 960px !important;
    overflow: visible !important;
}

.gmp-category-tabs__nav {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    justify-content: center !important;
    margin: 0 0 34px !important;
    padding: 0 !important;
}

.gmp-category-tabs__tab {
    appearance: none !important;
    -webkit-appearance: none !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #f0f2f5 !important;
    box-shadow: none !important;
    color: #344054 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    min-height: 46px !important;
    padding: 12px 24px !important;
    text-align: center !important;
    text-decoration: none !important;
    text-shadow: none !important;
    transform: none !important;
    transition: background .2s ease, color .2s ease, box-shadow .2s ease !important;
    width: auto !important;
}

.gmp-category-tabs__tab:hover {
    background: #e5e9ee !important;
    color: #102033 !important;
}

.gmp-category-tabs__tab.is-active {
    background: #129447 !important;
    color: #fff !important;
    box-shadow: 0 4px 15px rgba(18,148,71,.24) !important;
}

.gmp-category-tabs__panels {
    background: #fff !important;
    padding: 0 10px !important;
}

.gmp-category-tabs__panel {
    display: none !important;
    margin: 0 auto !important;
    max-width: 900px !important;
}

.gmp-category-tabs__panel.is-active {
    display: block !important;
}

.gmp-category-tabs .gmp-category-tabs__panel h2 {
    color: #102033 !important;
    font-family: inherit !important;
    font-size: clamp(25px, 3vw, 34px) !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
}

.gmp-category-tabs__content {
    color: #4f5f70 !important;
    font-family: inherit !important;
    font-size: 16px !important;
    line-height: 1.8 !important;
}

.gmp-category-tabs__content p,
.gmp-category-tabs__content ul,
.gmp-category-tabs__content ol {
    margin-bottom: 18px !important;
}

.gmp-category-tabs__content ul,
.gmp-category-tabs__content ol {
    padding-left: 24px !important;
    margin-left: 0 !important;
}

.gmp-category-tabs__content ul {
    list-style: disc outside !important;
}

.gmp-category-tabs__content ol {
    list-style: decimal outside !important;
}

.gmp-category-tabs__content li {
    display: list-item !important;
    margin-bottom: 9px !important;
    padding-left: 2px !important;
}

.gmp-category-tabs__content li::marker {
    color: #159447 !important;
}

.gmp-category-tabs__content strong {
    color: #102033 !important;
}



.gmp-category-filter-panel {
    clear: both !important;
    margin: 16px 0 28px !important;
    border: 1px solid #e4e8ee !important;
    border-radius: 18px !important;
    background: #f7f9fb !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

.gmp-category-filter-toggle {
    align-items: center !important;
    color: #102033 !important;
    cursor: pointer !important;
    display: flex !important;
    gap: 12px !important;
    justify-content: space-between !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 16px 18px !important;
}

.gmp-category-filter-toggle::-webkit-details-marker {
    display: none !important;
}

.gmp-category-filter-toggle span {
    font-size: 17px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}

.gmp-category-filter-toggle small {
    color: #6b7280 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: right !important;
}

.gmp-category-filter-toggle::after {
    align-items: center !important;
    background: #fff !important;
    border: 1px solid #d7dde3 !important;
    border-radius: 999px !important;
    color: #129447 !important;
    content: '+' !important;
    display: inline-flex !important;
    flex: 0 0 30px !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    height: 30px !important;
    justify-content: center !important;
    line-height: 1 !important;
    width: 30px !important;
}

.gmp-category-filter-panel[open] .gmp-category-filter-toggle::after {
    content: '−' !important;
}

.gmp-category-filter-panel .gmp-category-filter-bar {
    border: 0 !important;
    border-top: 1px solid #e4e8ee !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 16px 18px 18px !important;
}

@media (max-width: 768px) {

    .gmp-category-filter-panel {
        margin: 14px 0 22px !important;
        border-radius: 16px !important;
    }

    .gmp-category-filter-toggle {
        padding: 14px 15px !important;
    }

    .gmp-category-filter-toggle small {
        display: none !important;
    }

    .gmp-category-filter-panel .gmp-category-filter-bar {
        padding: 14px !important;
    }

    body.tax-product_cat .woocommerce-result-count {
        font-size: 15px !important;
        margin-bottom: 12px !important;
    }

    body.tax-product_cat .woocommerce-ordering select,
    body.tax-product_cat select.orderby {
        max-width: 100% !important;
        min-height: 44px !important;
        font-size: 14px !important;
    }

    .gmp-category-filter-bar {
        margin: 14px 0 24px !important;
        padding: 14px !important;
        border-radius: 16px !important;
    }

    .gmp-category-filter-bar__title {
        font-size: 17px !important;
    }

    .gmp-category-filter-bar__fields {
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
    }

    .gmp-category-filter-bar__submit,
    .gmp-category-filter-bar__reset {
        width: 100% !important;
        min-height: 42px !important;
    }

    body.tax-product_cat ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }

    body.tax-product_cat ul.products,
    body.tax-product_cat .woocommerce ul.products,
    body.tax-product_cat ul.products.columns-3 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 16px !important;
        row-gap: 18px !important;
        align-items: stretch !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }

    body.tax-product_cat ul.products::before,
    body.tax-product_cat ul.products::after {
        content: none !important;
        display: none !important;
    }

    body.tax-product_cat ul.products li.product,
    body.tax-product_cat ul.products.columns-3 li.product,
    body.tax-product_cat .woocommerce ul.products li.product,
    body.tax-product_cat .woocommerce-page ul.products li.product {
        clear: none !important;
        float: none !important;
        grid-column: auto !important;
        margin: 0 !important;
        max-width: none !important;
        min-width: 0 !important;
        width: 100% !important;
        border-radius: 16px !important;
    }

    body.tax-product_cat ul.products li.product img {
        height: 145px !important;
        padding: 12px !important;
        margin-bottom: 8px !important;
    }

    body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
    body.tax-product_cat ul.products li.product h2 {
        font-size: 15px !important;
        line-height: 1.35 !important;
        padding: 0 12px 8px !important;
    }

    body.tax-product_cat ul.products li.product .price {
        font-size: 14px !important;
        padding: 0 12px !important;
    }

    .gmp-category-tabs {
        margin: 44px auto 28px !important;
    }

    .gmp-category-tabs__nav {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        justify-content: stretch !important;
        margin-bottom: 26px !important;
        overflow: visible !important;
        padding: 0 !important;
        white-space: normal !important;
        width: 100% !important;
    }

    .gmp-category-tabs__tab {
        box-sizing: border-box !important;
        flex: none !important;
        font-size: 14px !important;
        justify-content: center !important;
        min-height: 42px !important;
        padding: 11px 16px !important;
        white-space: normal !important;
        width: 100% !important;
    }

    .gmp-category-tabs .gmp-category-tabs__panel h2 {
        font-size: 26px !important;
        line-height: 1.25 !important;
    }

    .gmp-category-tabs__content {
        font-size: 15.5px !important;
        line-height: 1.75 !important;
    }
}

/* GMP category mobile polish — compact tabs + balanced page gutters (2026-07-02) */
@media (max-width: 768px) {
    body.tax-product_cat .shop-container,
    body.tax-product_cat .container.shop-container,
    body.tax-product_cat main#content > .container {
        box-sizing: border-box !important;
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body.tax-product_cat .shop-container > .row,
    body.tax-product_cat .nv-shop.col {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.tax-product_cat ul.products,
    body.tax-product_cat .woocommerce ul.products,
    body.tax-product_cat ul.products.columns-3 {
        column-gap: 12px !important;
        row-gap: 16px !important;
    }

    .gmp-category-filter-panel {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .gmp-category-filter-toggle {
        gap: 10px !important;
    }

    .gmp-category-tabs {
        box-sizing: border-box !important;
        max-width: 100% !important;
        width: 100% !important;
        margin: 34px 0 26px !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    .gmp-category-tabs__nav {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 8px !important;
        margin: 0 0 22px !important;
        padding: 0 2px 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        scroll-snap-type: x proximity !important;
        white-space: nowrap !important;
    }

    .gmp-category-tabs__nav::-webkit-scrollbar {
        display: none !important;
    }

    .gmp-category-tabs__tab {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: 82vw !important;
        min-height: 38px !important;
        padding: 9px 14px !important;
        border-radius: 999px !important;
        font-size: 13px !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
        scroll-snap-align: start !important;
        box-shadow: none !important;
    }

    .gmp-category-tabs__tab.is-active {
        box-shadow: 0 3px 12px rgba(18,148,71,.18) !important;
    }

    .gmp-category-tabs__panels {
        padding: 0 2px !important;
    }
}

/* GMP category mobile tabs v2 — avoid oversized active pill (2026-06-29) */
@media (max-width: 768px) {
    .gmp-category-tabs__nav {
        gap: 7px !important;
        padding: 0 0 8px !important;
    }

    .gmp-category-tabs__tab {
        max-width: 225px !important;
        min-height: 36px !important;
        padding: 8px 13px !important;
        font-size: 12.5px !important;
        line-height: 1.18 !important;
        white-space: normal !important;
        text-align: center !important;
    }

    .gmp-category-tabs__tab.is-active {
        max-width: 245px !important;
    }
}


/* GMP category mobile tabs v3 — no horizontal scroll, full-width stacked buttons (2026-07-02) */
@media (max-width: 768px) {
    .gmp-category-tabs {
        box-sizing: border-box !important;
        max-width: 100% !important;
        width: 100% !important;
        margin: 34px 0 26px !important;
        overflow: visible !important;
    }

    .gmp-category-tabs__nav {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        justify-content: stretch !important;
        align-items: stretch !important;
        margin: 0 0 24px !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        white-space: normal !important;
        scroll-snap-type: none !important;
    }

    .gmp-category-tabs__tab,
    .gmp-category-tabs__tab.is-active {
        box-sizing: border-box !important;
        display: flex !important;
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 44px !important;
        padding: 11px 14px !important;
        justify-content: center !important;
        white-space: normal !important;
        text-align: center !important;
        font-size: 13.5px !important;
        line-height: 1.2 !important;
        scroll-snap-align: unset !important;
    }

    .gmp-category-tabs__panels {
        padding: 0 !important;
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
    }
}
