/**
 * Theme Name:     Prologic
 * Author:         Byte to IT
 * Template:       blocksy
 * Text Domain:	   prologic
 * Description:    Prologic is a blazing fast and lightweight WordPress theme built with the latest web technologies. It was built with the Gutenberg editor in mind and has a lot of options that makes it extendable and customizable. You can easily create any type of website, such as business agency, shop, corporate, education, restaurant, blog, portfolio, landing page and so on. It works like a charm with popular WordPress page builders, including Elementor, Beaver Builder, Visual Composer and Brizy. Since it is responsive and adaptive, translation ready, SEO optimized and has WooCommerce built-in, you will experience an easy build and even an increase in conversions.
 */

.ct-sidebar .ct-widget:not(:last-child) {
    margin-bottom: var(--sidebar-widgets-spacing, 15px) !important;
}

#customer_login .u-column1.col-1,
#customer_login .u-column2.col-2 {
   max-width: 800px;
   margin: 0 auto;
   background-color: var(--theme-palette-color-7);
   border-radius: 20px;
   padding: 35px;
}

.woocommerce-mini-cart__buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px;
}

.woocommerce-mini-cart__buttons .button {
    width: 100% !important;
}

.price {
    display: flex;
    flex-direction: column;
    align-items: start;
}

.price small, .price-line small {
    opacity: .5;
}

.ct-product-add-to-cart .single-product .woocommerce-Price-amount.amount:not(del) bdi {
    font-size: 20px;
    font-weight: 700;
}

#total_price_display {
    margin-block: 20px;
}

#total_price_display span {
    font-size: 20px;
    font-weight: 700;
}

.custom-dimensions {
    display: flex;
    gap: 10px;
}

.custom-dimensions .half {
    width: 50%;
}

.ct-media-container img, .ct-media-container picture {
    aspect-ratio: 1 / 1 !important;
    max-width: 400px !important;
    margin: 0 auto !important;
}

.custom-product-content-wrapper {
    width: 100%;
}

[data-products] .product {
    justify-content: space-between;
}

[data-products] .product .price {
    margin-bottom: 8px;
}

[data-products] .product .woocommerce-loop-product__title {
    margin-bottom: 8px;
}

[data-products] .product .button {
    width: 100%;
}

@media (max-width: 999.98px) {
    div.woocommerce-product-gallery {
        margin-bottom: 1rem !important;
    }
}

@media (max-width: 689px) {

    [data-products] {
        grid-row-gap: 15px !important;
    }

    [data-products] .product {
        flex-direction: row !important;
        gap: 10px;
        background-color: var(--theme-palette-color-7);
        padding: 15px;
        border-radius: 6px !important;
    }

    [data-products] .product figure {
        margin-bottom: 0;
    }

    .custom-product-content-wrapper {
        align-items: start;
        text-align: start;
    }

    div.quantity input[type=number] {
        height: 36px !important;
    }

    div.quantity {
        height: var(--quantity-height, 36px) !important;
    }

}

@media only screen and (min-width: 999px) {

.ct-media-container img, .ct-media-container picture {
    aspect-ratio: 3 / 4 !important;
}

}

i.fa-shopping-cart {
    margin-right: 8px;
    font-size: 13px;
}


.button, .ct-button, .added_to_cart, .ct-button-ghost, [type=submit], .wp-element-button, .wp-block-button__link, button.regform-button, button[class*=ajax], .woocommerce button.button, .woocommerce-message .showlogin, .woocommerce-message .restore-item, .forminator-ui[data-design=none] .forminator-button, .fluentform .ff-el-group button.ff-btn, .ct-button-secondary-text {
    background-color: var(--theme-palette-color-1) !important;
    color: var(--theme-palette-color-7) !important;
}

.button:hover, 
.ct-button:hover, 
.added_to_cart:hover, 
.ct-button-ghost:hover, 
[type=submit]:hover, 
.wp-element-button:hover, 
.wp-block-button__link:hover, 
button.regform-button:hover, 
button[class*=ajax]:hover, 
.woocommerce button.button:hover, 
.woocommerce-message .showlogin:hover, 
.woocommerce-message .restore-item:hover, 
.forminator-ui[data-design=none] .forminator-button:hover, 
.fluentform .ff-el-group button.ff-btn:hover, 
.ct-button-secondary-text:hover {
    filter: brightness(1.1);
}

.button.checkout,
.woocommerce-checkout-payment .button.alt,
.wc-proceed-to-checkout .checkout-button.button,
.wc-block-mini-cart__footer-checkout {
    background-color: var(--theme-palette-color-9) !important;
    color: var(--theme-palette-color-7) !important;
}

.button.checkout:hover,
.woocommerce-checkout-payment .button.alt:hover,
.wc-proceed-to-checkout .checkout-button.button:hover {
    filter: brightness(1.1);
}

.wc-block-mini-cart__footer {
    padding: 15px 20px;
}

.wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions, .wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions>.block-editor-inner-blocks>.block-editor-block-list__layout.wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions, .wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions>.block-editor-inner-blocks>.block-editor-block-list__layout {
    gap: 5px !important;
}

.product .button,
[data-products] .product .button {
    min-height: 36px;
    background-color: var(--theme-palette-color-1);
    color: var(--theme-palette-color-7);
    transition: 200ms all ease;
}

.product .button:hover,
[data-products] .product .button:hover {
    filter: brightness(1.1);
}

.single_add_to_cart_button {
    background-color: var(--theme-palette-color-1) !important;
    color: var(--theme-palette-color-7) !important;
    transition: 200ms all ease;
}

.single_add_to_cart_button:hover {
    filter: brightness(1.1);
}

.quantity[data-type=type-2] {
    width: 100% !important;
    margin-bottom: 8px;
}

/* esconder stock */

.stock, 
.in-stock {
    display: none;
}

.product_meta .posted_in {
    display: none !important;
}

/* tables carrinho */

[class*=ct-woocommerce] .shop_table [class*=product-thumbnail] img {
    aspect-ratio: 1 / 1 !important;
    width: 80px;
    height: 80px;
}

.woocommerce-cart-form__cart-item th,
.woocommerce-cart-form__cart-item td {
    padding: 8px;
}

.cart_totals {
    background-color: var(--theme-palette-color-6);
} 

.wc-proceed-to-checkout .checkout-button {
    background-color: var(--theme-palette-color-1);
    color: var(--theme-palette-color-7);
    transition: 200ms all ease;
}

.wc-proceed-to-checkout .checkout-button:hover {
    filter: brightness(1.1);
}

/* shop */

[data-products] {
    grid-column-gap: var(--grid-columns-gap, 20px) !important;
    grid-row-gap: var(--grid-rows-gap, 20px) !important;
}

#customer_login .u-column2.col-2 {
    display: none;
}

#show-register {
    text-decoration: underline;
}

/* sidebar produtos */

.wc-block-product-categories {
    margin-bottom: 1em;
    background: var(--theme-palette-color-6);
    padding: 5px 20px;
    border-radius: 6px;
}

/* Esconder as subcategorias inicialmente */
.wc-block-product-categories-list--depth-1 {
    display: none;
}

/* Estilo para a setinha (caret-down) que indica subcategorias */
.toggle-subcategories {
    position: absolute;
    cursor: pointer;
    top: 9px;
    right: 0px;
    font-size: 16px;
    color: #333;
    margin-left: 10px;
    transition: transform 0.3s ease;
}

/* Girar a seta ao expandir */
.toggle-subcategories.expanded {
    transform: rotate(180deg);
}

/* Estilo geral para melhorar a sidebar */
.wc-block-product-categories-list-item {
    padding: 8px 0;
    border-bottom: 1px solid #ddd;
    position: relative;
}

.wc-block-product-categories-list-item:last-child {
    border-bottom: none; /* Remover a linha do último item */
}

.wc-block-product-categories-list-item a {
    text-decoration: none;
    color: #333;
}

.wc-block-product-categories-list-item a:hover {
    color: #0071a1; /* Cor de hover para os links */
}

/* Identar as subcategorias */
.wc-block-product-categories-list--depth-1 {
    margin-left: 20px;
}

/* remover page title */

.page-title {
    display: none;
}

.archive .hero-section[data-type=type-2]>[class*=ct-container] {
    min-height: var(--min-height, 150px);
}

.wc-block-product-categories__dropdown {
    width: 100%;
}

.desktop-filter {
    display: block;
}

.mobile-filter {
    display: none !important;
}

@media only screen and (max-width: 999px) {

    .desktop-filter {
        display: none;
    }
    
    .mobile-filter {
        display: flex !important;
    }

    [data-sidebar] {
        grid-row-gap: 20px !important;
    }
    
    [data-vertical-spacing*=top] {
        padding-top: 20px !important;
    }

    .archive .hero-section[data-type=type-2]>[class*=ct-container] {
        min-height: var(--min-height, 100px);
    }

    .archive .wc-block-product-categories {
        margin-bottom: 0;
    }
}


@media only screen and (max-width: 689px) {
    .entry-header.ct-container-narrow {
        height: 65px !important;
        padding: 0px !important;
        min-height: unset !important;
    }
}


/* button width mobile fix */

@media only screen and (max-width: 768px) {

    .stk-block.stk-block-button {
        width: 100% !important;
    }
    
}

.ui-slider.ui-widget-content .ui-slider-handle {
    border-radius: 1.2em !important;
    background-color: var(--theme-palette-color-1) !important;
}

.wpfFilterWrapper {
    margin: 0 !important;
}

.wpfCount {
    color: var(--theme-palette-color-1);
}

/* category grid */

/* Fundo da grelha e ajustes */
.product-categories-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 20px;
    justify-items: center;
}

.product-categories-grid .category-item {
    text-align: center;
    background-color: #F8FAFC;
    padding: 40px 20px;
    border-radius: 8px;
    transition: transform 0.3s ease;
    width: 100%;
}

.product-categories-grid .category-item:hover {
    transform: scale(1.05);
}

.product-categories-grid .category-item img {
    width: 100px;
    height: auto;
    display: block;
    margin: 0 auto 10px;
}

.product-categories-grid .category-item h3 {
    font-size: 14px;
    color: var(--theme-palette-color-1);
    font-weight: 400;
    margin: 10px 0;
}

.separator {
    position: relative;
}

.separator hr {
    margin: 20px;
}

.separator .separator-dot {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.separator-dot {
    display: inline-block;
    width: 6px;
    height: 6px;
    background-color: var(--theme-palette-color-1);
    border-radius: 50%;
    border-color: 2px solid #F8FAFC;
}

/* Link para a loja */

.shop-link-container {
    text-align: center;
    margin-top: 20px;
}

.shop-link-button {
    display: inline-block;
    padding: 10px 20px;
    background-color: #fff;
    color: var(--theme-palette-color-1);
    text-decoration: none;
    border: 1px solid var(--theme-palette-color-1);
    border-radius: 5px;
    font-weight: bold;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.shop-link-button:hover {
    background-color: var(--theme-palette-color-1);
    color: #fff;
}

/* Responsividade para telas menores */
@media (max-width: 1200px) {
    .product-categories-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 768px) {
    .product-categories-grid .category-item {
        padding: 20px 10px
    }
    .product-categories-grid {
        gap: 12px;
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .product-categories-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.shop_table.cart.woocommerce-cart-form__contents .actions .button.wp-element-button {
    float: left;
    padding: 0 !important;
    color: var(--theme-palette-color-9) !important;
    background-color: transparent !important;
    text-decoration: underline !important;
}

.shop_table.cart.woocommerce-cart-form__contents .actions .button {
    float: right;
}

/* Footer */

.ct-footer [data-row*="top"] .widget_search {
    width: 100%;
}

.ct-footer [data-row*="top"] {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 999;
    background-color: var(--theme-palette-color-4) !important;
}

.ct-footer [data-row*="top"] .widget-area-5 .wp-block-woocommerce-mini-cart {
    display: flex;
    justify-content: center;
    align-items: center;
}

.ct-footer [data-row*="top"] .wp-block-search__input {
    height: 36px;
    color: var(--theme-palette-color-7);
    font-size: 14px;
}

.ct-footer [data-row*="top"] .wp-block-search .wp-element-button {
    min-height: unset !important;
    height: 36px;
    background-color: transparent !important;
}

.ct-footer [data-row*="top"] .wp-block-search__inside-wrapper {
    position: relative;
}

.ct-footer [data-row*="top"] .wp-block-search__button {
    position: absolute !important;
    right: 0;
    min-height: unset !important;
    height: 36px;
    color: transparent !important;
    font-size: 1px;
    line-height: 0;
    padding: 6px !important;
    position: relative;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.ct-footer [data-row*="top"] .wp-block-search__button::before {
    content: "\f002"; 
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 14px;
    color: var(--theme-palette-color-7);
}

.ct-footer [data-column*=widget-area-5] {
    justify-content: space-between !important;
    align-items: center;
    flex-wrap: nowrap !important;
    flex-direction: row-reverse !important;
}

.ct-footer [data-column*=widget-area-5] .wp-block-search__label {
    display: none;
}

.ct-footer [data-column*=widget-area-5] .wc-block-mini-cart__button {
    position: relative;
    padding-left: 20px;
    padding-bottom: 0;
    padding-top: 0;
    top: 6px;
}

.ct-footer .ct-widget:not(:first-child) {
    margin: 0 !important;
}

[data-footer*="type-1"] .ct-footer [data-row*="top"] > div {
    --container-spacing: 10px;
}

@media (max-width: 999px) {
    .ct-footer [data-row*="top"] {
        display: block;
    }
}

.ct-cart-content {
    width: 310px  !important;
    margin-top: var(--dropdownTopOffset) !important;
    padding: 22px 20px !important;
    border-radius: 2px !important;
    background-color: var(--theme-palette-color-6) !important;
    box-shadow: 0px 10px 20px 0px rgba(41,51,61,.1) !important;
    --theme-content-spacing: 0 !important;
    --mini-cart-items-spacing: 15px !important;
    --mini-cart-divider-color: #ccc !important;
}

.ct-cart-content .woocommerce-mini-cart {
    margin-inline: -16px !important;
    padding-inline: 12px !important;
    background-color: #fff !important;
}

.ct-cart-content .woocommerce-mini-cart li {
    padding-bottom: 0 !important;
    margin-bottom: 5px !important;
}

.wpfMainWrapper {   
    overflow-x: hidden;
    background-color: var(--theme-palette-color-7);
    padding:20px;
}

.wpfFilterButtons {
    display: flex;
    flex-direction: column;
}

.wpfFilterButton.wpfButton {
    background-color: var(--theme-palette-color-9);
    color: var(--theme-palette-color-6);
    padding: 9px 25px;
    border-radius: 4px;
}

.wpfClearButton.wpfButton {
    padding: 0;
    background-color: transparent;
    text-decoration: underline;
    color: var(--theme-palette-color-9);
}

.wpfFilterButton.wpfButton, 
.wpfClearButton.wpfButton {
    cursor: pointer;
    width: 100% !important;
}

.archive .hero-section figure {
    display: none;
}

.filter-products {
    position: fixed !important;
    bottom: 40px;
    left: 0;
    right: 0;
    width: 100%;
    padding: 10px 20px;
    background-color: var(--theme-palette-color-7);
    z-index: 5 !important;
}

.filter-products .stk-block-content > p {
    display: none;
}

.filter-products select {
    height: 36px;
}

.filter-products .wpfFilterButtons {
    display: none;
}

.filter-products .wpfFilterWrapper[data-filter-type] {
    padding: 2px 0px;
}

.single-product .ct-product-add-to-cart {
    margin-top: 20px;
    margin-bottom: 20px;
}

@media (max-width: 999px) {

    .wpfMainWrapper { 
        padding: 0;
        background-color: transparent;
    }

    .product-unit-price {
        display: none;
    }

    :where(.wc-block-mini-cart__badge) {
        background-color: var(--theme-palette-color-9) !important;
        color: var(--theme-palette-color-7) !important;
    }
    .wc-block-mini-cart__icon path,
    .wc-block-mini-cart__icon circle {
        fill: var(--theme-palette-color-7) !important;
    }
    h2.wc-block-mini-cart__title {
        font-size: 1.2rem !important;
    }
    .wc-block-components-quantity-selector {
        width: 100% !important;
    }
}

@media (min-width: 1000px) {
    .ct-default-gallery .product-entry-wrapper, .ct-stacked-gallery .product-entry-wrapper {
        display: flex;
        max-width: 950px;
    }
}

@media (min-width: 690px) {
    .ct-woo-unauthorized .col2-set {
        grid-template-columns: 1fr !important;
    }
}

#customer_login .u-column1.col-1, #customer_login .u-column2.col-2 {
    width: 100%;
}

.dynamic-pricing-active.product .price-line, .dynamic-pricing-active.product p.price {
    display: none !important;
}

form.variations_form table.variations {
    margin-bottom: 0 !important;
}

.is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity {
    align-self: start !important;
}

@media (max-width: 999px) {
    .woocommerce-cart .hero-section.ct-constrained-width {
        display: none;
    }
    .woocommerce-cart [data-vertical-spacing*=top] {
        padding-top: 0 !important;
    }
}

.logged-in .ct-header .ct-header-cta {
    display: none;
}

.wpfFilterVerScroll li label {
    display: flex !important;
    justify-content: flex-end;
    flex-direction: row-reverse !important;
    gap: 8px;
    align-items: center;
}

.wpfFilterWrapper input[type=checkbox], .wpfFilterWrapper input[type=radio] {
    position: relative;
    top: 2px;
}

/* | dados de shipping para se retirar do carrinho por enquanto */
.woocommerce-shipping-totals.shipping {
    display: none !important;
}

/* Fixes by michael douglas */

.wpfTitleToggle.fa-minus {
    display: none;
}

.shop_table.woocommerce-checkout-review-order-table {
    background-color: var(--theme-palette-color-8);
    border: 20px solid var(--theme-palette-color-8);
}

.ct-order-review {
    background-color: var(--theme-palette-color-6);
}

.ct-order-review th,
.ct-order-review td {
    padding: 10px !important;
}

/* price fix */

p.price {
    display: none;
}

.price-line.highlight-price {
    font-size: 16px;
    color: var(--theme-palette-color-4);
}

.price-line small {
    font-size: 14px;
}

.single-product .price-line.highlight-price {
    font-size: 30px;
    color: var(--theme-palette-color-4);
}
    