/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

/* ==========================================================================
   HEADER
   ========================================================================== */

#header [data-row="middle:boxed"] .ct-container {
	border: 1px solid var(--theme-palette-color-5);
}

#header [data-menu] > ul > li > a:before,
#header [data-menu] > ul > li > a:after {
	height: 1px;
}

#header > div {
	pointer-events: none;
}

#header [data-row="middle:boxed"] .ct-container {
	pointer-events: all;
}


/* ==========================================================================
   DIVERSOS
   ========================================================================== */

.sticky-map_k21 {
	position: sticky;
	top: calc(50px + var(--admin-bar, 0px) + var(--theme-frame-size, 0px) + var(--header-sticky-offset, 0px) + var(--header-sticky-height-animated, calc(var(--header-sticky-height, 0px) * var(--sticky-shrink, 100) / 100)));
}


/* ==========================================================================
   FORMULÁRIOS (WPForms)
   ========================================================================== */

.wpforms-container {
	margin-bottom: 0 !important;
}

.wpforms-field-container {
	margin-top: -15px;
}

.wpforms-submit-container {
	margin-top: 10px;
}

.wpforms-confirmation-container p {
	margin-block-end: 0;
}

.wpforms-field.telefone .wpforms-field-limit-text {
	display: none;
}

.wpforms-required-label {
	color: red !important;
}

.wpforms-container .wpforms-error-container {
	font-weight: normal !important;
	padding-top: 0 !important;
	padding-bottom: 20px !important;
}


/* ==========================================================================
   PAGINAÇÃO E CAMPOS DE INPUT (GERAL)
   ========================================================================== */

.ct-pagination .ct-hidden-sm > span,
.ct-pagination .ct-hidden-sm > a {
	border-radius: 50%;
	border-width: 1px;
}

.ct-pagination > a {
	border-radius: 999px !important;
	border-width: 1px !important;
}

input,
textarea {
	outline: max(1px, var(--theme-form-field-border-width, 1px)) solid rgba(0, 0, 0, 0) !important;
}

select {
	outline-width: 1px;
	background-color: var(--theme-palette-color-8);
}


/* ==========================================================================
   PRODUTOS / LOJA (WooCommerce + Elementor)
   ========================================================================== */

.elementor-widget-shortcode .products .product h2 {
	color: var(--theme-palette-color-8);
}

.ct-cart-actions .quantity > span {
	border-radius: 50% !important;
}

div.quantity input[type=number] {
	border-radius: 999px !important;
}

.woocommerce-tabs.wc-tabs-wrapper li.additional_information_tab::before {
	height: 1px !important;
}

#tab-additional_information > h2 {
	display: none;
}

.woocommerce-product-attributes {
	border-collapse: separate !important;
	border-radius: 10px !important;
	border: 1px solid var(--theme-palette-color-5) !important;
}

.woocommerce-product-attributes th,
.woocommerce-product-attributes td {
	border-width: 0px !important;
}

.woocommerce-product-attributes tr:nth-child(even) th,
.woocommerce-product-attributes tr:nth-child(even) td {
	background-color: var(--theme-palette-color-6);
}

.woocommerce-product-attributes td {
	border-left: 1px solid var(--theme-palette-color-5) !important;
}

.products .product .ct-media-container {
	border: 1px solid transparent;
}

.products .product .ct-media-container:hover {
	border-color: var(--theme-palette-color-1);
}

.woocommerce-product-gallery li span:after {
	border-width: 1px !important;
}

.woocommerce-product-gallery li.active span:after {
	border-color: var(--theme-palette-color-1) !important;
}

.reset_variations {
	text-decoration: underline;
}

.reset_variations:hover {
	text-decoration: none;
}

.wc-block-product-filter-checkbox-list__item span:before {
	border-radius: 50% !important;
	opacity: initial;
	background-color: var(--theme-palette-color-6);
	border: 1px solid var(--theme-palette-color-5);
}

.wc-block-product-filter-checkbox-list__item:has(input:checked) span::before {
	background-color: var(--theme-palette-color-1);
	border: none;
}

.wc-block-product-filter-removable-chips__item {
	border-radius: 8px !important;
	border-color: var(--theme-palette-color-5) !important;
}

.wc-block-product-filter-removable-chips__item > button svg {
	transition: var(--theme-transition);
	fill: #ef233c !important;
}

.wc-block-product-filter-removable-chips__item > button:hover svg {
	transform: rotatez(90deg);
}

.wp-block-woocommerce-product-filter-clear-button button {
	padding: 0 !important;
	line-height: initial !important;
	min-height: 0 !important;
	border-radius: 0;
	border: none !important;
	color: var(--theme-palette-color-3) !important;
	font-size: 14px;
	text-decoration: underline !important;
}

.wp-block-woocommerce-product-filter-clear-button button:hover {
	color: var(--theme-palette-color-2) !important;
	background-color: transparent !important;
	text-decoration: none !important;
}

/* Esconder a classe "uncategorized" dos itens de filtro */
.wc-block-product-filter-checkbox-list__item:has(input[value="uncategorized"]) {
	display: none !important;
}

/* Página inicial - Coluna de produtos (responsividade) */
@media (max-width: 1024px) {
	.elementor-shortcode .products.columns-4 {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 767px) {
	.elementor-shortcode .products.columns-4 {
		grid-template-columns: repeat(1, 1fr) !important;
	}
}

@media (max-width: 767px) {
	aside#sidebar .ct-sidebar {
		padding: 20px !important;
	}

	aside#sidebar .ct-sidebar .ct-widget.widget_block {
		line-height: 0;
	}

	aside#sidebar .ct-sidebar .ct-widget.widget_block button.wc-block-product-filters__open-overlay {
		font-weight: 500;
		text-decoration: underline;
	}
}

.wc-block-product-filters__overlay-footer {
	display: none;
}

.wc-block-product-filters__overlay-content .wp-block-heading {
	font-size: 20px !important;
}

.wc-block-product-filters__close-overlay svg path {
	fill: #ef233c !important;
}


/* ==========================================================================
   CARRINHO (WooCommerce Cart)
   ========================================================================== */

.woocommerce-cart-form__cart-item.cart_item .product-subtotal {
	display: none;
}

.woocommerce-cart-form__cart-item.cart_item .ct-media-container {
	border-radius: 10px;
}

.woocommerce-cart-form__cart-item.cart_item .product-quantity .ct-increase,
.woocommerce-cart-form__cart-item.cart_item .product-quantity .ct-decrease {
	border-radius: 50%;
}

.woocommerce-cart-form__cart-item.cart_item .ct-media-container {
	border: 1px solid transparent;
}

.woocommerce-cart-form__cart-item.cart_item .ct-media-container:hover {
	border-color: var(--theme-palette-color-1);
}

.shop_table.cart.woocommerce-cart-form__contents .product-subtotal {
	display: none;
}

.ct-woocommerce-cart-form {
	display: initial;
}

.woocommerce-cart-form #rex-request-quote-btn {
	margin-left: 8px;
}

@media (max-width: 767px) {
	.woocommerce-cart-form #rex-request-quote-btn {
		margin-left: 0;
		margin-top: 10px;
	}
}

table.shop_table tr {
	--theme-table-border-style: solid;
}

table.shop_table thead th {
	--theme-table-border-width: 0 0 1px 0;
}

@media (min-width: 690px) {
	.ct-woo-unauthorized .col2-set > *:first-child {
		border-inline-end: 1px solid var(--theme-border-color)
	}
}


/* ==========================================================================
   MENSAGENS E NOTIFICAÇÕES (WooCommerce)
   ========================================================================== */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-radius: 10px;
}

.woocommerce-message {
	background-color: #588157;
	color: var(--theme-palette-color-8);
}

.woocommerce-message a.restore-item {
	display: none;
}

.woocommerce-message > a:not(.button) {
	text-decoration: underline;
	color: var(--theme-palette-color-1);
}

.woocommerce-message > a:not(.button):hover {
	text-decoration: none;
}

.cart-empty.woocommerce-info {
	margin-bottom: 20px;
}


/* ==========================================================================
   LOGIN / REGISTRO
   ========================================================================== */

.woocommerce-form.woocommerce-form-login.login .woocommerce-LostPassword.lost_password {
	margin-top: -4px;
}

.woocommerce-form__input.woocommerce-form__input-checkbox {
	border-radius: 50% !important;
	background-color: var(--theme-palette-color-5) !important;
	border: none;
}

.woocommerce-form__input.woocommerce-form__input-checkbox:checked {
	background-color: var(--theme-palette-color-1) !important;
}

.woocommerce-password-strength {
	border-radius: 5px;
}


/* ==========================================================================
   MINHA CONTA (WooCommerce Account)
   ========================================================================== */

.woocommerce.ct-woo-account .ct-acount-nav {
	border: 1px solid var(--theme-palette-color-5);
	border-radius: 10px;
	position: sticky;
	top: calc(50px + var(--admin-bar, 0px) + var(--theme-frame-size, 0px) + var(--header-sticky-offset, 0px) + var(--header-sticky-height-animated, calc(var(--header-sticky-height, 0px) * var(--sticky-shrink, 100) / 100)));
}

@media (max-width: 767px) {
	.woocommerce.ct-woo-account .ct-acount-nav {
		position: relative;
		top: 0;
	}
}

.woocommerce.ct-woo-account .ct-acount-nav a {
	text-decoration: none;
}

.ct-account-user-box {
	word-wrap: anywhere;
}

fieldset {
	background: white;
	border-radius: 10px;
	border-style: solid;
}


/* ==========================================================================
   PEDIDOS (Orders / Order Details)
   ========================================================================== */

.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-number {
	vertical-align: middle;
}

.woocommerce-MyAccount-content > p mark {
	font-weight: 600;
}

.woocommerce-table__product-name.product-name > a {
	font-weight: normal;
}

.woocommerce-table__product-table.product-total {
	display: none;
}

.woocommerce-table__product-total.product-total {
	display: none;
}

.woocommerce-table.woocommerce-table--order-details.shop_table.order_details tfoot {
	display: none;
}

.woocommerce-columns.woocommerce-columns--1.woocommerce-columns--billing-address.col-1 address {
	border-radius: 10px;
	border-style: solid;
}

.woocommerce-columns.woocommerce-columns--1.woocommerce-columns--billing-address.col-1 p.fix-margin:last-child {
	margin: 0 !important;
}

.woocommerce-MyAccount-content > .woocommerce-customer-details {
	display: none;
}

.woocommerce-customer-details address {
	background: var(--theme-palette-color-8);
}