/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


/* ============================================
 *    Cart Page
 * ============================================ */ 




/* ============================================
 *    All Site
 * ============================================ */ 

* {
	transition: all 0.3s;
}
* {
	outline: none !important;
}
.cp {
	padding-top: 58px;
	padding-bottom: 58px;
}
.my_btn .elementor-button-icon {
    transform: rotate(-45deg);
    font-weight: 900;
}

@media(max-width: 1280px) {
	.cp {
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media(max-width: 1024px) {
	.cp {
		padding-top: 40px;
		padding-bottom: 40px;
		padding-left: 20px;
		padding-right: 20px;
	}
}


/* ============================================
 *    Сетка товаров
 * ============================================ */ 

.loop_title .elementor-heading-title.elementor-size-default {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 80%;
}
.loop_iten_product .price {
    margin: 0;
	height: 38px;
}

/* ============================================
 *    For Account Page
 * ============================================ */ 

.user_info .elementor-icon-box-content {
    display: flex !important ;
    flex-direction: column-reverse;
    row-gap: 8px;
}

.order_table table {
    margin-bottom: 0;
    overflow: hidden;
}


/* ============================================
 *    Forms Regisration/Login
 * ============================================ */ 

.form_reg_login .reset_password_btn, .sign_up_btn {
    padding: 0 !important;
    color: var( --e-global-color-accent ) !important;
    font-weight: inherit !important;
    background-color: inherit !important;
}
.form_reg_login .row_remember_forgot {
    justify-content: space-between;
}
.form_reg_login .lets_start_sign_up_btn {
    width: 100% !important;
}
.form_reg_login .row_do_you_have {
    justify-content: center !important;
    gap: 4px
}
.form_reg_login .field-type-checkbox-field .jet-form-builder__field-label.for-checkbox>span::before {
    margin-right: 8px;
}

.jet-form-builder-row.field-type-submit-field {
    margin: 0 !important;
}


/* ============================================
 *    Настройка вида плавующей корзины
 * ============================================ */ 
/* Красивый вид опций в корзине */
.woocommerce-cart-form__cart-item .product-name + .variation {
    margin-top: 8px;
    font-size: 0.9em;
    color: #666;
}

.woocommerce-cart-form__cart-item .variation span {
    display: block;
    margin: 2px 0;
}

/* Для мини-корзины */
.elementor-menu-cart__product-name .variation {
    margin-top: 4px;
    font-size: 0.85em;
    color: #777;
}

/* Защищаем изображение от деформации */
.elementor-menu-cart__product-image img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}

/* ============================================
 *    Cart Icon Protection - IMPROVED
 * ============================================ */ 

/* Force cart icon to always display properly */
.elementor-menu-cart__toggle,
.elementor-menu-cart__toggle-button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Protect icon structure */
.elementor-menu-cart__toggle-button .elementor-button-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: inherit !important;
    line-height: 1 !important;
    position: relative !important;
}

/* Ensure SVG is visible */
.elementor-menu-cart__toggle-button .elementor-button-icon svg {
    display: block !important;
    width: 18px !important;
    height: 20px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Counter badge protection */
.elementor-button-icon-qty {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Hide any malformed HTML elements */
.elementor-menu-cart__products undefinedp,
.elementor-menu-cart__products undefinedsmall,
.elementor-menu-cart__products undefinedbr,
.elementor-menu-cart__products undefinedspan,
.woocommerce-mini-cart undefinedp,
.woocommerce-mini-cart undefinedsmall,
.woocommerce-mini-cart undefinedbr,
.woocommerce-mini-cart undefinedspan,
.price undefinedp,
.price undefinedsmall,
.price undefinedbr,
.price undefinedspan {
    display: none !important;
}

/* Clean up price elements */
.price::before,
.price::after {
    content: none !important;
}

/* ============================================
 *    Point Price Display Fixes
 * ============================================ */ 

/* Clean point price display without broken HTML */
.fp-srp-point-price-clean {
    font-weight: normal;
    margin-left: 2px;
    display: inline;
}

/* Prevent original broken spans from showing */
.fp-srp-point-price {
    display: inline !important;
}

/* Force button text to always show */
.elementor-menu-cart__toggle .elementor-button-text {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Override Elementor hide rules for point price */
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button-text {
    display: inline-block !important;
}

/* Ensure point price in cart items displays correctly */
.woocommerce-mini-cart-item .woocommerce-Price-amount,
.woocommerce-cart-form__cart-item .woocommerce-Price-amount {
    display: inline-block;
}

/* Clean IVPA price display */
.ivpa-content .woocommerce-Price-amount .fp-srp-point-price-clean {
    display: inline;
}

/* Hide cart total price in cart icon button (rewardspoint inserts it) */
#elementor-menu-cart__toggle_button > span.elementor-button-text{
    display: none !important;
}

/* ============================================
 *    Chat Buttons Styles
 * ============================================ */ 

/* Заблокированные кнопки чата */
.my_btn .chat-locked {
    background-color: #ccc !important;
    color: #666 !important;
    cursor: not-allowed !important;
    opacity: 0.6;
    position: relative;
}

.my_btn .chat-locked::before {
    content: "🔒";
    margin-right: 8px;
}

/* Разблокированные кнопки чата */
.my_btn .chat-unlocked {
    background-color: var(--e-global-color-accent) !important;
    color: white !important;
    cursor: pointer !important;
    opacity: 1;
}

.my_btn .chat-unlocked::before {
    content: "💬";
    margin-right: 8px;
}

/* Анимация при наведении */
.my_btn .chat-unlocked:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.my_btn .chat-locked:hover {
    transform: none;
    box-shadow: none;
}

/* Общие стили для кнопок чата */
.my_btn[data-bot] a {
    transition: all 0.3s ease;
    border-radius: 5px;
    padding: 12px 20px;
    text-decoration: none;
    display: inline-block;
    font-weight: 600;
    text-align: center;
}


/* Скрытие цены вариации */
#my_add_to_cart_block > div > form > div.single_variation_wrap > div.woocommerce-variation.single_variation > div.woocommerce-variation-price > span {
    display: none !important;
}

/* ============================================
 *    Hide Default View Cart Button
 * ============================================ */ 

/* Скрываем стандартную кнопку View Cart которая появляется после добавления в корзину */
#my_add_to_cart_block .added_to_cart,
.e-atc-qty-button-holder .added_to_cart,
form.cart .added_to_cart,
a.added_to_cart,
.wc-forward.added_to_cart {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    left: -9999px !important;
    pointer-events: none !important;
}

/* Убираем сдвиг кнопки Add to Cart влево когда появляется класс added */
.single_add_to_cart_button.added {
    margin-left: 0 !important;
}


/* ============================================
 *    Login to Buy Button Alignment
 * ============================================ */ 

/* Выравнивание только контейнера с login-to-buy-button вправо */
.elementor-widget-shortcode > div:has(.login-to-buy-button) {
    text-align: right;
}

/* Если кнопка внутри - выравниваем по правому краю */
.elementor-widget-shortcode .login-to-buy-button {
    margin-left: auto;
    display: inline-block !important;
}
