/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.07211

/* Theme CSS */

/* ---------- 0) ROOT (theo site) ---------- */
:root{
  --brand-primary: var(--fs-color-primary, var(--primary-color, #103953));
  --brand-secondary: var(--main-hnc-color, var(--secondary-color, #2f6f97));

  --jr-shadow: 0 1px 2px rgba(16,57,83,.05);
  --jr-shadow-focus: 0 0 0 3px rgba(47,111,151,.12), 0 2px 6px rgba(16,57,83,.10);

  --jr-primary:#103953;  /* Royal Blue */
  --jr-accent:#2f6f97;   /* Accent */
  --jr-ink:#103953;      /* Text color */
  --jr-border:#2F6F9742; /* Border subtle */
  --jr-price:#7B2B00;    /* Price color */
  --jr-bg:#ffffff;

  --jr-radius:5px;       /* Global radius */
  --jr-input-h:50px;     /* Global input height */
}

/* =========================================================
   A) BASE & A11Y
   ====================================================== */
:where(input, textarea, select, button, a){ outline:none; }
:where(input, textarea, select, button, a):focus-visible{
  border-color:var(--brand-secondary);
  box-shadow:var(--jr-shadow-focus);
}

/* Giảm chuyển động nếu người dùng chọn */
@media (prefers-reduced-motion: reduce){
  *{ animation:none !important; transition:none !important; }
}


body {
    font-size: 18px;
    /* line-height: 29px; */
    color: #333;
}

.bestcheaptshirt_fontds {
    font-weight: 600;
}

#commentform .form-submit #submit {
    border-radius: 5px !important;
}

.wcpr-input-file-wrap .wcpr_image_upload_button.button,
.wcpr-input-file-wrap .wcpr_image_upload_button.button {
    border-radius: 5px !important;
}

a {
    color: #000;
}

span.section-title-main {
    text-transform: capitalize;
}

.dark .section-title-normal span,
.dark .section-title-normal {
    border-color: rgba(255, 255, 255, .2);
    font-weight: normal;
}

.category.product-cat {
    font-weight: bold;
    color: #e36d6d;
    font-style: italic;
}

.box .box-image,
.widget ul.product_list_widget li img {
    /*     border-color: var(--main-hnc-color);
   border-radius: 5px; */
}

.bestcheaptshirt_text_didyounow {
    position: relative;
    margin: 0 auto 23px;
    padding-bottom: 10px;
}

.bestcheaptshirt_plain {
    margin-bottom: 10px;
}

.bestcheaptshirt_plain .accordion-title.active {
    background-color: #34a5e6;
    color: #fff;
}

.bestcheaptshirt_plain .accordion-title {
    background-color: #fff;
    cursor: pointer;
    border: none;
    padding-left: 15px;
    border-radius: 5px;
}

.bestcheaptshirt_plain .toggle {
    right: 0;
    left: unset;
}

.bestcheaptshirt_plain .accordion-inner {
    padding: 14px 18px;
    background: white;
}

.bestcheaptshirt_plain .accordion-title {
    background-color: #fff;
    cursor: pointer;
    border: none;
    padding-left: 15px;
    border-radius: 5px;
}

.bestcheaptshirt_row_banner .col {
    padding-bottom: 0px !important;
    height: 216px;
}

.bestcheaptshirt_text_didyounow h2 {
    font-size: 1.875rem;
}

.bestcheaptshirt_text_didyounow h2:after {
    content: "";
    width: 50px;
    height: 3px;
    background: #34a5e6;
    position: absolute;
    top: 100%;
    left: 0;
    right: auto;
    margin: 0 auto;
}

.header .html.custom.html_topbar_left {
    font-size: 16px;
}

.wp-block-media-text {
    direction: ltr;
    display: grid;
    grid-template-columns: 50% 1fr;
    grid-template-rows: auto;
}

.wp-block-media-text .wp-block-media-text__content {
    direction: ltr;
    grid-column: 2;
    grid-row: 1;
    padding: 0 8%;
    word-break: break-word;
}

.wp-block-button__link {
    color: #fff;
    background-color: #32373c;
    border-radius: 5px;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    font-size: 1.125em;
    padding: calc(0.667em + 2px) calc(1.333em + 2px);
    text-align: center;
    text-decoration: none;
    word-break: break-word;
    box-sizing: border-box;
}

.has-cool-to-warm-spectrum-gradient-background {
    background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;
}

.wp-block-button__link:active,
.wp-block-button__link:focus,
.wp-block-button__link:hover,
.wp-block-button__link:visited {
    color: #fff;
}

.wp-block-media-text.is-image-fill .wp-block-media-text__media img {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.wp-block-media-text.is-image-fill .wp-block-media-text__media {
    height: 100%;
    min-height: 250px;
    background-size: cover;
}

.wp-block-media-text .wp-block-media-text__media {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
}

.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__content,
.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__media,
.wp-block-media-text .wp-block-media-text__content,
.wp-block-media-text .wp-block-media-text__media {
    align-self: center;
}

.woocommerce-terms-and-conditions-checkbox-text {
    font-size: 13px;
    line-height: 20px;
    font-weight: 400;
    margin-bottom: 30px;
    display: block;
}

/* 100% chỉ cho nút checkout/đặt hàng, KHÔNG áp cho Add to cart */
.button#place_order,
.button.checkout,
.checkout-button {
    display: block;
    width: 100%;
    line-height: 50px;
    border-radius: 3px;
    font-size: 1.1em;
    letter-spacing: 2px;
}

.callout.badge.badge-circle {
    display: none;
}

.product-info span.amount {
    white-space: nowrap;
    color: #f44336;
    font-weight: 700;
    font-size: 1.2em;
}

.banner-font-size {
    text-align: center;
    font-weight: 300;
    letter-spacing: 0.5px;
    font-size: 29px;
    line-height: 28px;
    margin-bottom: 12px;
    padding: 0 15px !important;
}

.bestcheaptshirt_radius_image_banner .img-inner>img {
    border-radius: 50% !important;
}



.dgwt-wcas-no-submit .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input {
    font-size: 1.2em;
    border-radius: 5px;
}

.dgwt-wcas-search-wrapp {
    max-width: 90% !important;
}

.product-summary .wcpa_form_outer .wcpa_form_item select {
    margin-bottom: .5em;
    border-radius: 5px;
    box-shadow: none;
}

.sg_wrapper_add_to_cart_quantity {
    display: flex;
}

/* Cho nút tự giãn hết phần còn lại khi nằm trong form.cart */
.single-product .product-summary form.cart .single_add_to_cart_button {
    flex: 1 1 auto;
    /* quan trọng: fill phần còn lại của hàng */
    box-sizing: border-box;
}

.tagged_as {
    font-weight: 700;
    font-size: 1.25rem;
    margin-right: 15px;
    color: #2d3436;
    border-top: none !important;
}

.tagged_as a {
    letter-spacing: 0.05em;
    display: inline-block;
    height: 30px;
    line-height: 30px;
    border-radius: 99px;
    position: relative;
    margin: 10px 10px 10px 0;
    padding: 0 10px 0 10px;
    text-transform: uppercase;
    background: #ededed;
    color: #2d3436;
    font-size: 11px;
    font-weight: 700;
}

/* .tagged_as a:hover {
    color: #fff;
    background-color: var(--main-hnc-color);
    border-color: #ff1300;
} */

.single-product .product-info .product-title, .flipContainer .entry-title a {
    font-size: 24px;
	color: #103854;
/*     line-height: 24px; */
}

/* body .product-main {
    padding: 0px 0 40px;
} */
.product-footer .woocommerce-tabs {
    padding: 30px 0;
    border-top: 1px solid #ececec;
}

#reviews #comments h3.normal {
    font-size: 20px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.has-border {
    border: 1px solid #e0e0e0 !important;
}

#reviews {
    margin-top: 30px;
}

.product-container,
.social-icons {
    margin-top: 20px;
}

dl.variation dt {
    margin-bottom: 5px;
}

dd .wcpa_cart_type_color-group .wcpa_cart_color {
    background: none !important;
    color: #000;
    height: auto !important;
    padding: 0 !important;
    border: 0 !important;
    margin: 0 0 0 5px;
    min-width: unset !important;
    display: inline-flex;
    line-height: 1.5 !important;
    font-weight: bold;
}

dl.variation {
    display: block;
    width: 100%;
    color: #a5a5a5;
    font-size: 90%;
    line-height: 1.4;
    margin-bottom: 0;
}

dl.variation dt,
dl.variation dd {
    display: inline;
    float: left;
    margin-bottom: 0;
}

dl.variation dt {
    clear: both;
}

dl.variation dd {
    padding-left: 2px;
}

dl.variation p {
    margin-bottom: 0;
    text-transform: capitalize;
    line-height: inherit;
}

dl.variation:after {
    display: block;
    content: "";
    width: 100%;
    height: 1px;
    clear: both;
}

span.prowc_product_countdown {
    font-size: 18px !important;
    color: red;
}

.product-info .price {
    font-size: 1.2em;
}

.nasa-count {
    background: var(--main-hnc-color);
    color: #fff;
    padding: 3px 6px;
    border-radius: 5px;
    display: inline-block;
}

#nasa-counter-viewing {
    display: inline-block;
    width: 100%;
    margin-bottom: 10px;
    font-weight: 600;
}

.hurrytimer-campaign * {
    font-size: 20px !important;
    color: red !important;
}

.hurrytimer-campaign .hurrytimer-headline {
    margin-left: 10px;
}

.hurrytimer-campaign .hurrytimer-timer-block {
    margin-bottom: 0;
}

.hurrytimer-campaign i {
    vertical-align: middle;
    margin-right: 6px;
}

.wcpa_has_options .product-info .price-wrapper {
    display: none;
}

#wooot_order_tip_form {
    margin-bottom: 20px;
    display: inline-block;
    width: 100%;
}

#wooot_order_tip_form .order_tip_title {
    color: #333333;
    font-weight: normal;
    font-size: 20px;
    margin-bottom: 10px;
    text-transform: uppercase;
}

#wooot_order_tip_form .woo_order_tip {
    font-size: 14px;
    line-height: 1.5;
    background-color: #ffffff;
    border-radius: 4px;
    position: relative;
    color: #404040;
    display: inline-block;
    padding: 8px 12px;
    border: 1px solid #bfbfbf;
    cursor: pointer;
}

#wooot_order_tip_form .woo_order_tip.active {
    background-color: #333;
    color: #ffffff;
}

button.woo_order_tip_remove {
    background: none;
    color: #393939;
    text-decoration: underline;
    margin: 0;
    padding: 0;
}

.woo_order_tip_custom_text_field {
    margin: 5px 0;
    padding: 0;
}

body .wfacp_main_form .form-row .woo_order_tip_custom_text {
    padding: 20px 12px !important;
}

button.woo_order_tip_apply {
    margin-right: 20px;
    background: #0c95eb;
    font-weight: 700;
    padding: 8px 20px;
    border-radius: 5px;
    color: #fff;
}

.wfacp-form table.shop_table.woocommerce-checkout-review-order-table .product-name dl * {
    display: inline;
}

.section-title-center span {
    font-weight: 500;
}

.section-title b {
    background: transparent;
}

.section-title-center span:after {
    content: "";
    display: table;
    clear: both;
    width: 100%;
    height: 20px;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: bottom;
    padding-top: 0px;
}

.amount {
    /* color: #e51313; */
    /* font-size: 19px; */
    font-weight: 700;
}

.amount span.woocommerce-Price-currencySymbol {
    font-size: .9em;
    vertical-align: .2em;
    display: inline;
    line-height: 1;
    margin-right: .1em;
}

button.wishlist-button {
    border: 0;
    background: transparent;
    color: #333;
}
.image-tools button.wishlist-button:hover {
    color: var(--fs-color-alert);
    background-color: transparent;
    box-shadow: none;
}

/* button.wishlist-button.button.is-outline:hover {
    color: #103854;
    border: 1px solid;
} */

/* .product-small .product-title {
    font-weight: 700;
} */
/* ====== BASE: Input qty sạch, chữ giữa ====== */
.product-quick-view-container .input-text.qty,
.single-product .product-summary .input-text.qty {
    -webkit-appearance: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    width: auto !important;
    max-width: 100% !important;
    height: 100% !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 0;
    background: #fff !important;
    text-align: center !important;
    line-height: normal;
    font-size: 1em;
    color: #333;
}

.single-product .product-summary form.cart,
.single-product .product-summary .sg_wrapper_add_to_cart_quantity {
    display: flex;
    align-items: stretch;
    gap: 8px;
    width: 100%;
    margin-top: 1em;

}

/* Ẩn spinner number */
.single-product .product-summary .input-text.qty::-webkit-outer-spin-button,
.single-product .product-summary .input-text.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.single-product .product-summary .input-text.qty {
    -moz-appearance: textfield;
}

/* ====== BASE: wrapper qty ====== */
.product-quick-view-container .quantity,
.single-product .product-summary .quantity {
    position: relative;
    margin: 0;
}

/* Hiệu ứng cho +/- áp dụng mọi kích thước */
.quantity .plus:hover,
.quantity .minus:hover,
.quantity .plus:focus-visible,
.quantity .minus:focus-visible {
    background: color-mix(in srgb, var(--main-hnc-color) 12%, #f8f8f8);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--main-hnc-color) 20%, transparent);
    outline: none;
}

.quantity .plus:active,
.quantity .minus:active {
    background: color-mix(in srgb, var(--main-hnc-color) 22%, #f8f8f8);
    transform: translateY(0.5px);
}

.sg_wrapper_add_to_cart_quantity input.ux-quantity__button {
    min-height: 1.5em;
    line-height: 1.5em;
    border: 0;
}

li.cart-item.has-icon.has-dropdown .nav-dropdown {
    min-width: 360px;
}

.wcpa_form_outer .wcpa_form_item {
    margin-bottom: 0;
}

form.cart .ouqw-promo-wrap {
    margin-top: 1em;
}

.wcpa_price_summary ul li>span:not(.wcpa_price_outer) {
    display: none;
}

@media(min-width: 800px) {
    .product-small .box-image .grid-tools.hover-slide-in .add-to-cart-grid {
        display: none;
    }
}

.product-small .box-image .image-tools.is-small.top.right.show-on-hover .product-actions-mobile {
    display: none;
}

@media(max-width: 568px) {
.product-main .wcpa_form_outer .wcpa_form_item>label {
    font-size: 1em;
}
    /* 		.hide-for-small{
			  display: unset !important;
		} */
    .product-small .box-image .image-tools.is-small.top.right.show-on-hover .product-actions-mobile {
        display: block;
    }

    .product-small .box-image .product-actions-mobile .product-actions-icon {
        border-radius: 79px !important;
        width: 45px !important;
        padding: unset !important;
        height: 45px;
        text-align: center !important;
    }

    .product-small .box-image .product-actions-mobile .quickview1.product-actions-icon a.quickview {
        padding-top: 8px !important;
    }

    .product-small .box-image .product-actions-mobile .add-to-cart-wrapper1.product-actions-icon {
        right: -7% !important;
        position: absolute;
    }
}

.tooltipster-content {
    color: white !important;
}

/* ====== PC (>=769px): qty + add-to-cart cùng hàng ====== */
@media (min-width:769px) {

    .single-product .product-summary .quantity {
        display: grid !important;
        grid-template-columns: 1fr 48px;
        /* trái: input | phải: cột +/- */
        grid-template-rows: 1fr 1fr;
        /* trên: + | dưới: - */
        flex: 0 0 120px;
        min-width: 120px;
        /* height: 66px; */
        background: #fff;
        border: 1px solid var(--btn-border-color);
        border-radius: var(--btn-radius);
        box-shadow: var(--btn-shadow);
        overflow: hidden;
        box-sizing: border-box;
        transition: border-color .2s, box-shadow .2s;
    }

    .single-product .product-summary .quantity:hover,
    .single-product .product-summary .quantity:focus-within {
        border-color: var(--main-hnc-color);
        box-shadow: var(--btn-shadow), 0 0 0 2px color-mix(in srgb, var(--main-hnc-color) 25%, transparent);
    }

    .single-product .product-summary .quantity .input-text.qty {
        grid-column: 1/2;
        grid-row: 1/3;
        width: 100% !important;
        height: 100%;
        line-height: 66px;
        padding: 0 12px !important;
        background: transparent;
    }

    /* Bao cả trường hợp Woo render a/span/button */
    .quantity .plus,
    .quantity .minus,
    .quantity button.plus,
    .quantity button.minus {
        grid-column: 2/3;
        position: static !important;
        display: flex;
        align-items: center;
        justify-content: center;
        /*        background: #f8f8f8;
         border: 0 !important;
        border-left: 1px solid #e6e6e6 !important; */
        transition: background-color .15s, box-shadow .15s, transform .06s;
        cursor: pointer;
    }

    .quantity .plus {
        grid-row: 1/2;
        border-bottom: 1px solid #e6e6e6 !important;
    }

    .quantity .minus {
        grid-row: 2/3;
    }

    .single-product .product-summary .single_add_to_cart_button {
        display: inline-flex;
        justify-content: center;
        align-items: center;
        /*         height: 52px; */
        margin-bottom: 0 !important;
        padding: 0 24px;
        flex: 1 1 auto;
        border-radius: var(--btn-radius);
        border: 1px solid var(--btn-border-color) !important;
        box-shadow: var(--btn-shadow);
        font-weight: 700;
        letter-spacing: .06em;
        transition: border-color .2s, box-shadow .2s, transform .06s;
        margin-right: 0;
    }

    .single-product .single_add_to_cart_button:hover,
    .single-product .single_add_to_cart_button:focus-visible {
        border-color: var(--main-hnc-color) !important;
        box-shadow: var(--btn-shadow-strong), 0 0 0 2px color-mix(in srgb, var(--main-hnc-color) 25%, transparent);
        transform: translateY(-1px);
        outline: none;
    }
}

/* ====== MOBILE (<=768px): qty hàng 1 – add-to-cart hàng 2 ====== */
@media (max-width:768px) {
    .accordion-inner {
        padding-left: .5em;
        padding-right: .5em;
    }

    .single-product .product-summary .quantity {
        order: 1;
        display: grid !important;
        grid-template-columns: 1fr 48px;
        grid-template-rows: 1fr 1fr;
        height: 56px;
        width: 30%;
        background: #fff;
        border: 1px solid var(--btn-border-color);
        border-radius: var(--btn-radius);
        box-shadow: var(--btn-shadow);
        overflow: hidden;
        box-sizing: border-box;
        transition: border-color .2s, box-shadow .2s;
    }

    .single-product .product-summary .quantity:hover,
    .single-product .product-summary .quantity:focus-within {
        border-color: var(--main-hnc-color);
        box-shadow: var(--btn-shadow), 0 0 0 2px color-mix(in srgb, var(--main-hnc-color) 25%, transparent);
    }

    .single-product .product-summary .quantity .input-text.qty {
        grid-column: 1/2;
        grid-row: 1/3;
        width: 100% !important;
        height: 100%;
        line-height: 56px;
        padding: 0 12px !important;
        background: transparent;
    }

    .quantity .plus,
    .quantity .minus,
    .quantity button.plus,
    .quantity button.minus {
        grid-column: 2/3;
        position: static !important;
        display: flex;
        align-items: center;
        justify-content: center;
        /*         background: #f8f8f8;
        border: 0 !important;
        border-left: 1px solid #e6e6e6 !important;
        transition: background-color .15s, box-shadow .15s, transform .06s; */
    }

    .quantity .plus {
        grid-row: 1/2;
        border-bottom: 1px solid #e6e6e6 !important;
    }

    .quantity .minus {
        grid-row: 2/3;
    }

    .single-product .product-summary .single_add_to_cart_button {
        order: 2;
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        /*         height: 52px; */
        /*         line-height: 52px; */
        padding: 0 16px;
        border-radius: var(--btn-radius);
        border: 1px solid var(--btn-border-color) !important;
        box-shadow: var(--btn-shadow);
        transition: border-color .2s, box-shadow .2s, transform .06s;
    }

    .single-product .single_add_to_cart_button:hover,
    .single-product .single_add_to_cart_button:focus-visible {
        border-color: var(--main-hnc-color) !important;
        box-shadow: var(--btn-shadow-strong), 0 0 0 2px color-mix(in srgb, var(--main-hnc-color) 25%, transparent);
        transform: translateY(-1px);
        outline: none;
    }
}

.wpcf7 form .wpcf7-submit {
    display: block !important;
    margin: 16px auto 0 !important;
}

/* Khung form căn giữa tổng thể (tuỳ chọn) */
.wpcf7 form {
    max-width: 820px;
    margin: 0 auto;
}

/* Đặt input và button lên cùng 1 hàng */
.wpcf7 form p {
    display: flex;
    gap: 12px;
    /* khoảng cách giữa ô và nút */
    align-items: stretch;
    /* 2 phần cao bằng nhau */
    margin: 0;
}

/* Ô email chiếm toàn bộ chiều ngang còn lại */
.wpcf7 .wpcf7-form-control-wrap {
    flex: 1;
    min-width: 0;
}

.wpcf7 input[type="email"] {
    width: 100%;
    height: 52px;
}

/* Nút submit – BỎ display:block cũ đi */
.wpcf7 input[type="submit"],
.wpcf7 .wpcf7-submit {
    display: inline-flex !important;
    /* thay cho block */
    align-items: center;
    justify-content: center;
    height: 52px;
    padding: 0 22px;
    margin: 0 !important;
    /* xoá margin auto trước đây */
    white-space: nowrap;
}

/* Mobile: tự động xuống hàng cho dễ bấm */
@media (max-width: 480px) {
    .wpcf7 form p {
        flex-direction: column;
    }

    .wpcf7 input[type="submit"] {
        width: 100%;
    }
}

/* Giảm bo góc cho NÚT */
.button,
.button.primary,
input[type="submit"],
.wpcf7-submit {
    border-radius: 10px !important;
    /* đổi 10px theo ý bạn */
}

/* Giảm bo góc cho Ô NHẬP trong layout form-flat */
.form-flat input[type="email"],
.form-flat input[type="text"],
.form-flat textarea,
.form-flat .wpcf7-form-control {
    border-radius: 10px !important;
}

/* WooCommerce common */
form.cart .quantity,
.woocommerce div.product form.cart .quantity {
    border-radius: 10px;
    overflow: hidden;
    /* tránh lộ góc bò */
}

.quantity .qty,
.quantity .plus,
.quantity .minus,
.ux-quantity .qty,
.ux-quantity .button.plus,
.ux-quantity .button.minus {
    border-radius: 0 !important;
    /* ép vuông các nút con */
}

/* xử lý giao diện Flatsome / phổ biến */
table .ux-quantity {
	border-radius: 10px;
    border: 1px solid #e6e6e6;
    overflow: hidden;
}
table .ux-quantity input[type=number] {
    box-shadow: none;border-top: 0;
    border-bottom: 0;
}

table .ux-quantity input.ux-quantity__button{
	border: 0!important;
		
}

/* ================== LOLUIS/GIFAMI – PRICE & SALE BADGE (GLOBAL) ================== */
/* ==== Edit brand values here ==== */
:root {
    /* Price colors */
    --price-color: #3A090C;
    /* regular */
    --price-sale: #3A090C;
    /* sale/new price */
    --price-old: #8a8a8a;
    /* crossed old */
    /* Sale badge (square) */
    --badge-bg: #75020F;
    /* red */
    --badge-text: #FFFFFF;
    --badge-size: 46px;
    /* square size */
    --badge-radius: 0px;
    /* 0 = hard square; 6–10 = soft corners */
    --badge-offset: -8px;
    /* shift out to not cover image */
}

/* ================== PRICE (loop, single, quick view, widgets) ================== */
/* Regular price */
html body .woocommerce .price,
html body .woocommerce ul.products li.product .price,
html body .product-small .price,
html body .single-product .summary .price,
html body .quick-view .price,
html body .widget .product_list_widget .amount,
html body .woocommerce-mini-cart__total .woocommerce-Price-amount {
    color: var(--price-color) !important;
}

/* Sale / new price */
html body .woocommerce .price ins,
html body .woocommerce ul.products li.product .price ins,
html body .product-small .price ins,
html body .single-product .summary .price ins,
html body .quick-view .price ins {
    color: var(--price-sale) !important;
    text-decoration: none;
}

/* Old price (smaller + strike) */
html body .woocommerce .price del,
html body .woocommerce ul.products li.product .price del,
html body .product-small .price del,
html body .single-product .summary .price del,
html body .quick-view .price del {
    color: var(--price-old) !important;
    opacity: .9;
    font-size: .90em;
    text-decoration: line-through;
    margin-left: .25em;
}

/* ================== SALE BADGE (square, minimal coverage) ================== */
/* Allow badge to sit slightly outside image to avoid covering product */
.product-small .box-image,
.ux-products .product .box-image {
    overflow: visible !important;
}

/* Position top-left just outside image (change to right if needed) */
.product-small .badge-container,
.ux-products .product .badge-container {
    top: var(--badge-offset) !important;
    left: var(--badge-offset) !important;
    /* use right: var(--badge-offset) to move to right */
}

/* Remove theme backgrounds around badge */
.badge,
.badge.badge-outline,
.badge-outline.badge,
.badge:before,
.badge:after {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Make badge a centered square */
.badge .badge-inner,
.badge.sale .badge-inner,
.badge.onsale .badge-inner,
.badge-onsale .badge-inner,
.onsale,
.onsale .badge-inner {
    width: var(--badge-size) !important;
    height: var(--badge-size) !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--badge-bg) !important;
    color: var(--badge-text) !important;
    border-radius: var(--badge-radius) !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

/* Keep other badge types (NEW/HOT) untouched */
.badge.new .badge-inner,
.badge.hot .badge-inner {
    background: inherit;
    color: inherit;
}

.wcpa-total-under-title {
    margin: 10px 0 18px;
}

.wcpa-total-under-title .wcpa_price_summary ul {
    margin: 0;
}

.wcpa-total-under-title .wcpa_price_summary ul li.wcpa_total>span {
    font-size: 20px;
    font-weight: 700;
}

.wcpa-total-under-title .wcpa_price_summary ul li span.wcpa_price_outer span.price_value {
    font-size: 25px;
    font-weight: 700;
    line-height: 1.2;
}

.wcpa_form_outer {
    margin-bottom: 0;
}

.wcpa_form_outer .wcpa_form_item>label {
    margin-bottom: 0 !important;
    font-weight: 500;
}

.wcpa_color>label>input:checked+span:before {
    background-image: url('/wp-content/themes/flatsome-child/icons/radio-cricle.svg');
}

.wcpa_form_outer .wcpa_form_item .color-group .wcpa_color label span.label_inside {
    font-size: 15px;
    padding: 8px 10px 4px 30px;
    margin: 0;
    height: auto !important;
    line-height: 1.5 !important;
}

.wcpa_form_outer .label_inside:before {
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    border-radius: 100%;
    position: absolute;
    left: 5px;
    top: calc(50% - (20px / 2));
    border: none;
    background-image: url('/wp-content/themes/flatsome-child/icons/circle-black.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

.wcpa_form_outer .label_inside[title="Black"]:before {
    background-image: url('/wp-content/themes/flatsome-child/icons/circle-white.svg');
}

.wcpa_form_outer .wcpa_form_item .color-group input:checked+label span.label_inside:after {
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    border-radius: 100%;
    position: absolute;
    left: 8px;
    top: 14px;
    border: none;
    background-image: url('/wp-content/themes/flatsome-child/icons/circle-check-black-fill.svg');
    background-repeat: no-repeat;
    background-size: contain;
    transform: unset;
}

.wcpa_form_outer .wcpa_form_item .color-group input:checked+label span.label_inside[title="Black"]:after {
    background-image: url('/wp-content/themes/flatsome-child/icons/circle-check-white-fill.svg');
}

.wcpa_form_outer .wcpa_form_item .color-group .wcpa_color input:checked+label span {
    border: 1px solid #2f7e5b;
    box-shadow: none;
}

.wcpa_form_outer .wcpa_form_item .color-group .wcpa_color {
    margin: 0.2em 0.2em 0.2em 0;
}

.wcpa_form_outer .wcpa_form_item span.wcpa_helptext {
    font-size: 14px;
    font-weight: 500;
    text-decoration: underline;
}

.woocommerce td.product-name dl.variation dd {
    display: inline-block;
    margin: 0;
}

.woocommerce td.product-name dl.variation .wcpa_cart_type_color-group p {
    margin: 0;
}

.woocommerce td.product-name dl.variation .wcpa_cart_type_color-group {
    margin: 0;
}

.wcpa_price_summary {
    background: none;
}

.product-main .wcpa_form_outer .wcpa_form_item>label {
    font-weight: 700;
}

.product-summary .wcpa_price_summary ul li.wcpa_total>span {
    font-size: 20px;
    font-weight: bold;
}

.wcpa_price_summary ul {
    padding: 0;
    border: 0;
    margin: 0 0 40px 0;
}

.entry-summary .wcpa_price_summary ul li {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 16px;
    vertical-align: middle;
}

.wcpa_price_summary ul li span {
    font-size: 18px;
}

.wcpa_price_summary ul li .wcpa_price_outer {
    float: none;
    text-align: left;
}

.wcpa_price_summary ul li span.wcpa_price_outer span.price_value {
    font-size: 25px;
    font-weight: bold;
    color: red;
    vertical-align: bottom;
}

.product-summary .wcpa_price_summary .woocommerce-Price-currencySymbol {
    font-size: .9em;
    color: red;
}

.wcpa-summary-original-hidden {
    display: none !important;
}

#content .article-inner .entry-content #related_posts {
    display: none;
}

.ux-loader {
    display: none !important;
}

.loading-spin {
    display: none;
}

li.cart-item.has-icon.has-dropdown i {
    font-size: 1.5em;
}

.image-tools.bottom {
    display: none;
}

.wcpa_form_outer .wcpa_form_item input[type=date],
.wcpa_form_outer .wcpa_form_item input[type=datetime-local],
.wcpa_form_outer .wcpa_form_item input[type=email],
.wcpa_form_outer .wcpa_form_item input[type=file],
.wcpa_form_outer .wcpa_form_item input[type=number],
.wcpa_form_outer .wcpa_form_item input[type=password],
.wcpa_form_outer .wcpa_form_item input[type=tel],
.wcpa_form_outer .wcpa_form_item input[type=text],
.wcpa_form_outer .wcpa_form_item input[type=url],
.wcpa_form_outer .wcpa_form_item textarea {
    border-radius: 10px;
    margin-bottom: .5em;
}

.form-flat input:not([type=submit]), input#coupon_code{
    border-radius: 10px;
	
}
.woocommerce-input-wrapper input, .woocommerce-input-wrapper select, .woocommerce-input-wrapper textarea, .form-row .select2-container, .select2-container .select2-selection {
    border-radius: 10px;
}
.wcpa_form_outer .wcpa_form_item input:hover,
.wcpa_form_outer .wcpa_form_item select:hover {
    border-color: var(--main-hnc-color);
    box-shadow: var(--btn-shadow), 0 0 0 2px color-mix(in srgb, var(--main-hnc-color) 25%, transparent);
}
.product-small .yith-wcwl-add-to-wishlist .yith-wcwl-add-button span, .product-small .yith-wcwl-wishlistaddedbrowse, .product-main .yith-wcwl-wishlistaddedbrowse, .product-main .yith-wcwl-add-to-wishlist .yith-wcwl-add-button span {
    display: none
}

button.wishlist-button.wishlist-added i{
	    color: var(--fs-color-alert);
}

.product-small .wishlist-popup, .product-main .wishlist-popup {
    padding: 0;
}
.woocommerce-form input {
    border-radius: 10px;
    box-shadow: none;
}

.woocommerce-form input:focus {
    border-color: var(--main-hnc-color);
    box-shadow: var(--btn-shadow), 0 0 0 2px color-mix(in srgb, var(--main-hnc-color) 25%, transparent);
}
body #yith-wcwl-popup-message {
    top: unset;
    bottom: 3rem;
    left: unset;
    right: 2rem;
    transform: none;
}

.product-small .button.loading {
    color: #333;
}

.product-small .button.loading:after {
    height: 8px;
    width: 8px;
    margin-left: -4px;
    margin-top: -4px;
}

.shop_table .actions .button-continue-shopping {
    width: 100%;
    margin: 0;
}

.shop_table .actions .continue-shopping {
    width: 55%;
    margin-right: 1em;
    display: inline-block;
}
.shop_table .actions button.button {
    margin-right: 0;
}


/* Review Style */

.wcpr-filter-container .wcpr-filter-button {
    background-color: rgba(0, 0, 0, .03);
    border-color: var(--fs-color-primary);
    color: var(--fs-color-primary);
    border-radius: 5px;
	padding: 10px !important;
}

.wcpr-filter-container .wcpr-filter-button.wcpr-active {
    background: #103854;
    color: #fff;
}
.review-form-inner.has-border {
    padding: 1em;
}
.wcpr-filter-container .wcpr-filter-button {
    margin: 10px 0!important;
    width: auto;
}

.wcpr-comment-form-title {
    margin-bottom: 1em;
}


.comment-form label {
    color: #103953;
}
.comment-form .form-submit {
    margin-top: .5rem;
}
/* ===== WCPR Filters: 3 nút cùng style, 1 hàng, responsive ===== */

/* Container: luôn hiện, 3 cột bằng nhau, canh giữa, giới hạn bề rộng */
.wcpr-filter-container{
/* 	display:grid !important;                             /* override inline display:none */ */
/*  grid-template-columns: repeat(3, minmax(0, 1fr));    /* 3 cột = 3 nút */ */
/*  gap:12px; */
	 width: 100%;
 max-width: 680px;                                    /* màn rộng => cụm nút gọn ở giữa */
/*  margin: 16px auto 18px;                     */

    border: 0!important;
    gap: 5px;
    justify-content: space-between;
    margin: 1em auto;
    flex-wrap: nowrap;
}

/* Mỗi nút chiếm full ô của grid */
.wcpr-filter-container > a.wcpr-filter-button,
.wcpr-filter-container > .wcpr-filter-button-wrap{
  width:100%;
  align-items:center;
}

/* Dropdown của "All stars": rộng đúng bằng nút & đồng bộ */
.wcpr-filter-button-wrap{ position:relative; width:100%;}
.wcpr-filter-button-ul{
  position:absolute;
  left:0;
  width:100%;
  background:#fff;
  border-radius:5px;
}

/* Chữ 1 dòng + co giãn theo viewport, vẫn đọc tốt */
.wcpr-filter-container a.wcpr-filter-button,
.wcpr-filter-rating-placeholder{
  white-space: nowrap;         /* không xuống hàng */
  text-wrap: nowrap;           /* spec mới – bổ sung */
  overflow: hidden;            /* nếu quá hẹp, ẩn phần thừa */
  text-overflow: ellipsis;     /* rất hẹp thì hiện … */
  font-size: clamp(12px, 2.2vw, 14px); /* co giãn chữ theo màn hình */
  padding-inline: clamp(10px, 1.8vw, 16px); /* co giãn padding để đủ chỗ */
}


/* Active: giữ đúng cùng style */
.wcpr-filter-container a.wcpr-filter-button.wcpr-active,
.wcpr-filter-button-wrap.wcpr-active .wcpr-filter-rating-placeholder {
  border-color:var(--brand-primary, #103854) !important;
  box-shadow:none !important;
}

.wcpr-filter-rating-placeholder {
	color:#fff}

/* Màn rất nhỏ: siết gap & font */
@media (max-width: 360px){
  .wcpr-filter-container{ gap:8px; }
  .wcpr-filter-container a.wcpr-filter-button,
  .wcpr-filter-rating-placeholder{
    font-size:12px;
    padding-inline:8px;
  }
}

/* === Rating filter: dropdown bằng đúng width nút 'All stars' === */

/* Bọc nút + dropdown */
.wcpr-filter-button-wrap.wcpr-filter-button {
  position: relative;
}

/* List dropdown luôn rộng = nút All stars */
.wcpr-filter-button-wrap.wcpr-filter-button .wcpr-filter-button-ul {
  width: 100% !important;
  min-width: 100% !important;
  box-sizing: border-box;
}

/* Mỗi option  (All stars, 5 stars, 4 stars, ...) full-width */
.wcpr-filter-button-wrap.wcpr-filter-button .wcpr-filter-button-ul li,
.wcpr-filter-button-wrap.wcpr-filter-button .wcpr-filter-button-ul li a,
.wcpr-filter-button-wrap.wcpr-filter-button .wcpr-filter-button-ul li button {
  display: block;
  width: 100% !important;
  box-sizing: border-box;
  text-align: center;
}


/* BMSM CSS */

/* =========================================================
   JR Upsale – Styles
   Sử dụng root của website (bạn đã khai báo):
   :root{
     --brand-primary: var(--fs-color-primary, var(--primary-color, #103953));
     --brand-secondary: var(--main-hnc-color, var(--secondary-color, #2f6f97));
     --jr-shadow: 0 1px 2px rgba(16,57,83,.05);
     --jr-shadow-focus: 0 0 0 3px rgba(47,111,151,.12), 0 2px 6px rgba(16,57,83,.10);
     --jr-primary:#103953;
     --jr-accent:#2f6f97;
     --jr-ink:#103953;
     --jr-border:#2F6F9742;
     --jr-price:#7B2B00;
     --jr-bg:#ffffff;
     --jr-radius:5px;
     --jr-input-h:50px;
   }
   ======================================================= */

/* ==== UPSALE: chữ giữa box nét đứt, không viền/halo khi tương tác ==== */

/* Box nét đứt – full width & center */
.jr-upsale{
  display:flex;
  justify-content:center;           /* giữa ngang */
  align-items:center;               /* giữa dọc */
  text-align:center;
  width:100%;
  min-height:calc(var(--jr-input-h, 50px) + 6px);
  padding:10px 12px;
  margin:12px 0 14px;
  border:1px dashed var(--brand-secondary, #2f6f97);
  background:color-mix(in srgb, var(--jr-bg, #fff) 97%, var(--brand-primary, #103953));
  border-radius:var(--jr-radius);
  color:var(--jr-accent, #2f6f97);
  box-shadow:var(--jr-shadow);
}

/* Reset rất mạnh cho <a> của theme (xoá “viên thuốc”/halo) */
.jr-upsale__link,
.jr-upsale__link:link,
.jr-upsale__link:visited,
.jr-upsale__link:hover,
.jr-upsale__link:focus,
.jr-upsale__link:active{
  all:unset;                        /* xoá hết style theme áp lên <a> */
  display:block;
  width:100%;
  box-sizing:border-box;
  cursor:pointer;
  text-align:center;
  font:inherit;
  font-weight:700;
  line-height:1.25;
  color:var(--jr-accent, #2f6f97);
  text-decoration:none;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  -webkit-appearance:none !important;
  appearance:none !important;
  -webkit-tap-highlight-color:transparent; /* iOS bỏ flash */
}

/* Xoá pseudo làm nền/viền mà theme có thể gắn */
.jr-upsale__link::before,
.jr-upsale__link::after{ content:none !important; display:none !important; }

/* Nhấn số & % OFF */
.jr-upsale__link strong{
  color:var(--jr-ink, var(--brand-primary, #103953));
}

/* Hiệu ứng tương tác: chỉ sáng nhẹ, KHÔNG viền/halo */
.jr-upsale__link:hover,
.jr-upsale__link:focus-visible,
.jr-upsale.is-pressing .jr-upsale__link{
  filter:brightness(1.06);
  transform:translateY(.5px) scale(.995);
  text-decoration:underline;       /* chỉ gạch dưới, không halo */
  box-shadow:none !important;
}

/* Vị trí nhất quán */
#jr-upsale-single   { margin-top:12px; }
#jr-upsale-mini     { margin:10px 0 12px; }
#jr-upsale-cart     { margin:12px 0 16px; }
#jr-upsale-checkout { margin:10px 0 12px; }

/* Nếu vì lý do template theme mà có 2 #jr-upsale-checkout liền nhau, ẩn bớt bản sau */
.woocommerce-checkout div#jr-upsale-checkout + div#jr-upsale-checkout,
.woocommerce-checkout div#jr-upsale-checkout ~ div#jr-upsale-checkout{
  display:none !important;
}

/* === JR Modal (đồng bộ với JS) === */
body.jr-modal-open { overflow: hidden; }

#jr-modal{
  position: fixed; inset: 0; z-index: 99999; display: none;
  background: rgba(0,0,0,.6);
}
#jr-modal.is-open{ display:block; }

#jr-modal .jr-modal__box{
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:min(920px,94vw); height:min(82vh,740px);
  background:#fff; border-radius:var(--jr-radius,5px); overflow:auto;
  box-shadow:0 10px 40px rgba(0,0,0,.25);
}
.jr-modal__close {
    position: absolute;
    top: -5px;
    right: -5px;
    border: 0;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    color: #222;
    padding: 6px;
    margin: 0;
    min-height: auto;
    background: rgba(16, 57, 83, 0.81);
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 999px;
    min-width: auto;
    display: inline-block;
    color: #fff;
}
/* nội dung Ajax sẽ chui vào đây */
#jr-modal .jr-modal__content{ padding:16px; }

/* ==== Price breakdown (cart, checkout, mini-cart) ==== */
.jr-pricewrap {
  display: inline-flex;
  flex-direction: column;
  gap: 2px;
  align-items: flex-end;
  text-align: right;
  line-height: 1.2;
}
.jr-pricewrap .jr-old {
  opacity: .7;
  text-decoration: line-through;
  font-weight: 500;
}
.jr-pricewrap .jr-new {
  text-decoration: none;
  font-weight: 800;
}
.jr-pricewrap .jr-badge {
  display: inline-block;
  border: 1px dashed var(--brand-secondary, rgba(0,0,0,.2));
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 11px;
  line-height: 1.3;
  margin-left: .5em;
}
.jr-pricewrap .jr-save {
  font-size: 12px;
  opacity: .85;
}

/* Mini-cart tighter */
.widget_shopping_cart .jr-pricewrap--mini {
  display: block;
  margin-top: 2px;
}
.widget_shopping_cart .jr-pricewrap--mini .jr-badge { margin-left: .4em; }

/* Desktop: xếp hàng ngang, căn baseline đẹp */
@media (min-width: 768px){
  .jr-pricewrap { flex-direction: row; align-items: baseline; gap: 8px; }
  .jr-pricewrap .jr-save { margin-left: 6px; }
}

/* ==== Price breakdown base ==== */
.jr-pricewrap{display:inline-flex;flex-direction:column;gap:2px;align-items:flex-end;text-align:right;line-height:1.2}
.jr-pricewrap .jr-old{opacity:.7;text-decoration:line-through;font-weight:500}
.jr-pricewrap .jr-new{text-decoration:none;font-weight:800}
.jr-pricewrap .jr-badge{display:inline-block;border:1px dashed var(--brand-secondary,rgba(0,0,0,.2));border-radius:999px;padding:2px 8px;font-size:11px;line-height:1.3;margin-left:.5em}
.jr-pricewrap .jr-save{font-size:12px;opacity:.85}

/* Desktop/table cell */
.jr-pricewrap--t{display:inline-flex}
@media (max-width:767.98px){.jr-pricewrap--t{display:none}} /* ẩn trên mobile */

/* Mobile block (gắn vào cột Price) */
.jr-pricewrap--m{display:none;margin-top:2px}
@media (max-width:767.98px){.jr-pricewrap--m{display:block}}

/* Mini-cart */
.widget_shopping_cart .jr-pricewrap--mini{display:block;margin-top:2px}
.widget_shopping_cart .jr-pricewrap--mini .jr-badge{margin-left:.4em}


/* Giá gốc = 50% giá sau giảm */
.jr-pricewrap .jr-new{
  order: 2;
  font-weight: 800;
  text-decoration: none;
  font-size: 1em;        /* mốc 100% */
}
.jr-pricewrap .jr-old{
  order: 1;
  font-size: .8em;       /* = 80% của .jr-new */
  opacity: .6;
  text-decoration: line-through;
  font-weight: 500;
  margin-right: 2px;
}

/* Cụm % + Save nằm cùng line và dồn về bên phải */
.jr-pricewrap .jr-badge{
  order: 3;
  margin-left: auto;     /* đẩy cụm sang sát phải */
  display: inline-block;
  border: 1px dashed var(--brand-secondary, rgba(0,0,0,.2));
  border-radius: 5px;
  padding: 2px 8px;
  font-size: 11px;
  line-height: 1.2;
}
.jr-pricewrap .jr-save{
  order: 4;
  display: inline-block;
  flex-basis: auto;      /* ghi đè rule cũ nếu có */
  margin-left: 6px;
  font-size: 12px;
  opacity: .85;
}

/* Tối ưu thu gọn cho màn nhỏ (mini-cart/mobile) */
@media (max-width: 420px){
  .jr-pricewrap{ gap: 4px; }
  .jr-pricewrap .jr-badge{ padding: 1px 6px; font-size: 10px; }
  .jr-pricewrap .jr-save{ font-size: 11px; margin-left: 4px; }
}

/* ==== JR Pricewrap – badge+save trái, old trên new ==== */
.jr-pricewrap{
  display: grid !important;
  grid-template-columns: auto 1fr;           /* trái: %-badge+Save | phải: cột giá */
  grid-template-areas:
    "badge old"                               /* hàng 1: badge | giá gốc (old) */
    "save  new";                              /* hàng 2: Save  | giá giảm (new) */
  column-gap: 8px;
  row-gap: 2px;
  align-items: end;
  justify-items: end;                         /* canh phải cột giá */
  text-align: right;
}

/* Gán vùng lưới cho từng phần tử */
.jr-pricewrap .jr-badge{ grid-area: badge; justify-self: start; margin: 0; }
.jr-pricewrap .jr-save { grid-area: save;  justify-self: start; margin: 0; white-space: nowrap; }
.jr-pricewrap .jr-old  { grid-area: old;   align-self: end;    opacity:.7; text-decoration: line-through; }
.jr-pricewrap .jr-new  { grid-area: new;   align-self: start;  font-weight: 800; }

/* Thu gọn font ở màn nhỏ/mini-cart nếu cần */
@media (max-width: 420px){
  .jr-pricewrap .jr-badge{ padding: 1px 6px; font-size: 10px; }
  .jr-pricewrap .jr-save { font-size: 11px; }
}

/* Cart desktop: đặt old trên new, %-badge + Save bên trái, canh phải */
@media (min-width: 900px){
  .woocommerce-cart .cart_item td.product-subtotal{
    vertical-align: middle;
  }
  .woocommerce-cart .cart_item td.product-subtotal .jr-pricewrap{
    display: grid !important;
    grid-template-columns: auto 1fr;              /* trái: %-badge + Save | phải: giá */
    grid-template-areas:
      "badge old"
      "save  new";
    column-gap: 8px;
    row-gap: 2px;
    justify-items: end;
    text-align: right;
  }
  .woocommerce-cart .cart_item td.product-subtotal .jr-badge{ grid-area: badge; justify-self: start; margin:0; }
  .woocommerce-cart .cart_item td.product-subtotal .jr-save { grid-area: save;  justify-self: start; margin:0; white-space:nowrap; }
  .woocommerce-cart .cart_item td.product-subtotal .jr-old  { grid-area: old;   align-self:end;  opacity:.7; text-decoration: line-through; }
  .woocommerce-cart .cart_item td.product-subtotal .jr-new  { grid-area: new;   align-self:start; font-weight:800; }
  /* Nếu lỡ bị render trùng badge/save thì ẩn bớt */
  .woocommerce-cart .cart_item td.product-subtotal .jr-badge ~ .jr-badge,
  .woocommerce-cart .cart_item td.product-subtotal .jr-save  ~ .jr-save { display:none !important; }
}

/* Cart mobile: bố cục badge+save trái | old trên new phải */
@media (max-width: 899px){
  .woocommerce-cart .cart_item td.product-name .jr-pricewrap{
    display:grid !important;
    grid-template-columns:auto 1fr;
    grid-template-areas:
      "badge old"
      "save  new";
    column-gap:8px; row-gap:2px;
    align-items:end; text-align:right;
    margin-top:6px;
  }
  .woocommerce-cart .cart_item td.product-name .jr-badge{ grid-area:badge; justify-self:start; margin:0; }
  .woocommerce-cart .cart_item td.product-name .jr-save { grid-area:save;  justify-self:start; margin:0; white-space:nowrap; }
  .woocommerce-cart .cart_item td.product-name .jr-old  { grid-area:old;   text-decoration:line-through; opacity:.6; }
  .woocommerce-cart .cart_item td.product-name .jr-new  { grid-area:new;   font-weight:800; }

  /* Ẩn khối ở Subtotal để tránh hiển thị 2 nơi */
  .woocommerce-cart .cart_item td.product-subtotal .jr-pricewrap{ display:none !important; }
}

/* Theme CSS */

/* =========================================================
   B) BUTTONS & BASICS
   ====================================================== */
button,
input[type="button"],
input[type="submit"],
a.button,
.button,
.btn,
.ux-btn,
.ux-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button.alt,
.woocommerce .add_to_cart_button,
.woocommerce .single_add_to_cart_button,
.woocommerce .checkout-button{
  border-radius:var(--jr-radius) !important;
  border-color:var(--jr-border) !important;
}

/* Xoá border cho nút show/hide password trong form WooCommerce */
.woocommerce .password-input .show-password-input,
.woocommerce-page .password-input .show-password-input {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    padding: 0;           /* nếu muốn icon sát mép hơn thì giữ */
}

/* My Account – nút "Đăng nhập bằng Google" full width */
.woocommerce-account .u-column1 iframe[src*="accounts.google.com/gsi/button"],
.woocommerce-account .u-column1 .g_id_signin,
.woocommerce-account .u-column1 .g_id_signin > div,
.woocommerce-account .u-column1 div[role="button"][aria-label*="Google"] {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

/* Canh lại khoảng cách dưới nút */
.woocommerce-account .u-column1 .g_id_signin,
.woocommerce-account .u-column1 iframe[src*="accounts.google.com/gsi/button"] {
    margin-bottom: 15px;
}


/* =========================================================
   C) FORM CONTROLS (Woo + CF7 + native)
   ====================================================== */

/* Khối chung */
:where(input[type="text"], input[type="email"], input[type="tel"], input[type="url"],
       input[type="number"], input[type="search"], input[type="password"], textarea, select,){
  background:#fff !important;
  color:var(--brand-primary) !important;
  border:1.5px solid var(--jr-border);
  width:100%;
  box-sizing:border-box;
  border-radius:var(--jr-radius) !important;
  padding:12px 14px;
  line-height:1.2;
  height:var(--jr-input-h) !important;
  box-shadow:var(--jr-shadow);
  transition:border-color .18s ease, box-shadow .18s ease, transform .06s ease, filter .18s ease;
}

input[type="search"] {max-height:40px}
textarea, .wpcf7 form textarea{ min-height:140px; resize:vertical; }

:where(input, textarea, select):hover{
  border-color:color-mix(in oklab, var(--brand-primary) 30%, #2F6F9742);
}
:where(input, textarea, select):focus,
:where(input, textarea, select):focus-visible{
  border-color:var(--brand-secondary) !important;
  box-shadow:var(--jr-shadow-focus) !important;
}
:where(input, textarea, select, search, email):active{
  border-color:var(--brand-secondary) !important;
  box-shadow:var(--jr-shadow-focus) !important;
  transform:translateY(1px); filter:brightness(.99);
}

/* Woo form rows */
.woocommerce .input-text,
.woocommerce form .form-row .input-text{
  border-radius:var(--jr-radius) !important;
}

/* Select fallback height */
select{ min-height:var(--jr-input-h) !important; }

/* Contact Form 7 */
.wpcf7 form ::placeholder{ color:#2F6F9742; }
.wpcf7 form .wpcf7-not-valid,
.wpcf7 form [aria-invalid="true"]{
  border-color:#D64545 !important;
  box-shadow:0 0 0 3px rgba(214,69,69,.15) !important;
}

/* Disable blue shadows added by some themes */
:where(input, textarea, select){
  box-shadow:none;
}

/* Toggle button reset */
button.toggle,
button.toggle:hover,
button.toggle:active,
button.toggle:focus{
  border:none !important; outline:none !important; box-shadow:none !important;
  background:transparent;
}

/* =========================================================
   D) SELECT2 (Flatsome/CF7/Woo dùng nhiều)
   ====================================================== */
.select2-container .select2-selection--single{
  height:var(--jr-input-h) !important;
  border-radius:var(--jr-radius) !important;
  border:1.5px solid var(--jr-border) !important;
  box-shadow:var(--jr-shadow);
}
.select2-container .select2-selection--single .select2-selection__rendered{
  line-height:calc(var(--jr-input-h) - 4px) !important;
  padding-left:12px; padding-right:34px;
  color:var(--brand-primary);
}
.select2-container .select2-selection--single .select2-selection__arrow{
  height:var(--jr-input-h) !important; right:8px; width:22px;
}
.select2-dropdown{
  border:1.5px solid var(--jr-border);
  height:var(--jr-input-h) !important;
  border-radius:calc(var(--jr-radius) + 2px);
  box-shadow:0 6px 18px rgba(16,57,83,.12);
}

/* List kết quả: nền trắng, không trong suốt */
.select2-results,
.select2-results__options,
.select2-results__option{
  background: #fff !important;
}

/* Trạng thái hover/đang chọn – đặt màu rõ ràng (tuỳ chỉnh nếu muốn) */
.select2-results__option--highlighted[aria-selected]{
  background: #0D5EA8 !important;  /* màu hover */
  color: #fff !important;
}
.select2-results__option[aria-selected="true"]{
  background: #F1F5F9 !important;  /* đang chọn */
 color: #103953 !important;
}

/* =========================================================
   E) QUANTITY (product/cart/mini-cart)
   ====================================================== */
.woocommerce .quantity.buttons_added,
.woocommerce .ux-quantity.quantity.buttons_added{
  display:inline-flex; align-items:center;
  height:30px; background:#fff;
  border:1.5px solid var(--jr-border);
  border-radius:var(--jr-radius);
  overflow:hidden; box-shadow:0 1px 2px rgba(16,57,83,.05);
  transition:border-color .18s ease, box-shadow .18s ease;
}
.woocommerce .quantity.buttons_added:hover,
.woocommerce .ux-quantity.quantity.buttons_added:hover{
  border-color:color-mix(in oklab, var(--brand-primary) 30%, #2F6F9742);
}
.woocommerce .quantity.buttons_added:focus-within,
.woocommerce .ux-quantity.quantity.buttons_added:focus-within{
  border-color:var(--brand-secondary) !important;
  box-shadow:0 0 0 3px rgba(47,111,151,.16);
}

/* buttons +/- */
.woocommerce .ux-quantity__button.button.is-form,
.woocommerce .quantity .plus,
.woocommerce .quantity .minus{
  background:transparent; border:0 !important; box-shadow:none !important;
  color:var(--brand-primary);
  width:10px; height:100%;
  display:grid; place-items:center; cursor:pointer;
  transition:transform .06s ease, background-color .12s ease;
}
.woocommerce .ux-quantity__button.button.is-form:active,
.woocommerce .quantity .plus:active,
.woocommerce .quantity .minus:active{
  transform:translateY(1px); background-color:rgba(47,111,151,.06);
}

/* input qty */
.woocommerce .quantity .qty,
.woocommerce .ux-quantity .qty{
  width:30px; min-width:20px; height:100%;
  margin:0; padding:0 10px; text-align:center;
  background:transparent; color:var(--brand-primary);
  border:0 !important; box-shadow:none !important;
  border-left:1px solid rgba(0,0,0,.06);
  border-right:1px solid rgba(0,0,0,.06);
}
.woocommerce .quantity .qty::-webkit-outer-spin-button,
.woocommerce .quantity .qty::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.woocommerce .quantity.buttons_added .input-text.qty.text{ height:100% !important; }

/* =========================================================
   F) PRICE COLORS
   ====================================================== */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce .woocommerce-Price-amount,
.woocommerce .amount{
  color:var(--jr-price) !important;
}
.woocommerce .price del,
.woocommerce del .woocommerce-Price-amount{ opacity:.55; color:inherit !important; }
.woocommerce .price ins,
.woocommerce ins .woocommerce-Price-amount{ color:var(--jr-price) !important; }

/* =========================================================
   G) BREADCRUMB như H1 (Flatsome)
   ====================================================== */
body.woocommerce nav.woocommerce-breadcrumb.breadcrumbs.uppercase{
  display:block;
  font-family:var(--heading-font, var(--font-heading, inherit));
  font-weight:700;
  font-size:clamp(28px, 2.4vw, 42px);
  line-height:1.2; letter-spacing:0;
  margin:0 0 12px;
}
body.woocommerce nav.woocommerce-breadcrumb a{
  color:var(--fs-color-heading, var(--heading-color, #103953));
  font-family:var(--heading-font, inherit);
  text-decoration:none;
}

/* =========================================================
   H) SHOP ORDERING (select.orderby)
   ====================================================== */
.woocommerce .woocommerce-ordering{ min-width:230px; }
.woocommerce .woocommerce-ordering select.orderby{
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
  font:inherit; color:var(--jr-ink); background-color:var(--jr-bg);
  border:1.5px solid var(--jr-border);
  border-radius:var(--jr-radius) !important;
  height:var(--jr-input-h) !important;
  line-height:1.2; padding:10px 40px 10px 14px; box-shadow:0 1px 2px rgba(43,47,54,.05);
  transition:border-color .15s ease, box-shadow .15s ease, transform .04s ease;
  background-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='20' height='20' fill='none' stroke='%232B2F36' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat; background-position:right 12px center; background-size:18px;
}
.woocommerce .woocommerce-ordering select.orderby:hover{
  border-color:var(--jr-primary) !important;
  box-shadow:0 2px 6px rgba(18,88,193,0.12);
}
.woocommerce .woocommerce-ordering select.orderby:focus{
  border-color:var(--jr-primary) !important;
  box-shadow:0 0 0 3px rgba(18,88,193,0.12), 0 2px 6px rgba(18,88,193,0.12);
}
.woocommerce .woocommerce-ordering select.orderby:active{
  transform:translateY(1px);
  border-color:var(--jr-accent) !important;
  box-shadow:0 0 0 3px rgba(18,88,193,0.12);
}
.woocommerce .woocommerce-ordering select.orderby option{ color:var(--jr-ink); }

/* Row Filter left + Sorting right */
.category-filtering.category-filter-row{
  display:flex; align-items:center; justify-content:space-between;
  gap:12px; flex-wrap:nowrap;
}
.category-filtering .filter-button{ margin:0; display:inline-flex; align-items:center; gap:6px; }
.category-filtering .inline-block{ margin-left:auto; display:inline-flex; align-items:center; }
.woocommerce-result-count{ display:none !important; }
@media (max-width:600px){
  .woocommerce .woocommerce-ordering{ min-width:160px; }
  .woocommerce .woocommerce-ordering select.orderby{ padding-right:34px; font-size:14px; }
}
@media (max-width:380px){
  .category-filtering.category-filter-row{ flex-wrap:wrap; row-gap:8px; }
  .category-filtering .inline-block{ margin-left:0; width:100%; justify-content:flex-start; }
}

/* =========================================================
   I) MINI-CART – border thay line.png
   ====================================================== */
.off-canvas .widget_shopping_cart .mini_cart_item,
.woocommerce-mini-cart li.mini_cart_item{
  background-image:none !important;
  border-bottom:1px solid rgba(16,57,83,.10);
}

/* =========================================================
   J) SHIPPING METHODS – radio đẹp
   ====================================================== */
ul.woocommerce-shipping-methods, #shipping_method{ list-style:none; margin:0; padding:0; }
.woocommerce-shipping-methods .shipping__list_item{ margin:8px 0; }
.woocommerce-shipping-methods .shipping_method{ position:absolute; opacity:0; pointer-events:none; }
.woocommerce-shipping-methods .shipping__list_label{
  position:relative; display:flex; align-items:center; gap:10px;
  padding:12px 14px 12px 42px;
  border:1.5px solid var(--jr-border); border-radius:var(--jr-radius);
  color:var(--jr-ink); background:#fff;
  transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
  cursor:pointer;
}
.woocommerce-shipping-methods .shipping__list_label::before{
  content:""; position:absolute; left:14px; top:50%; transform:translateY(-50%);
  width:18px; height:18px; border-radius:50%; border:2px solid var(--jr-border);
  background:#fff; transition:border-color .18s ease, box-shadow .18s ease;
}
.woocommerce-shipping-methods .shipping__list_label::after{
  content:""; position:absolute; left:14px; top:50%; transform:translateY(-50%) scale(.6);
  width:18px; height:18px; border-radius:50%;
  background:radial-gradient(circle at 50% 50%, var(--jr-accent) 55%, transparent 56%);
  opacity:0; transition:opacity .18s ease, transform .18s ease;
}
.woocommerce-shipping-methods .shipping__list_label:hover{
  border-color:color-mix(in oklab, var(--jr-accent) 25%, var(--jr-border));
}
.woocommerce-shipping-methods .shipping_method:focus-visible + .shipping__list_label{
  border-color:var(--jr-accent); box-shadow:0 0 0 3px rgba(47,111,151,.16);
}
.woocommerce-shipping-methods .shipping_method:checked + .shipping__list_label{
  border-color:var(--jr-accent);
  background:color-mix(in oklab, var(--jr-accent) 6%, #fff);
}
.woocommerce-shipping-methods .shipping_method:checked + .shipping__list_label::before{
  border-color:var(--jr-accent); box-shadow:0 0 0 2px rgba(47,111,151,.12);
}
.woocommerce-shipping-methods .shipping_method:checked + .shipping__list_label::after{
  opacity:1; transform:translateY(-50%) scale(1);
}
.woocommerce-shipping-methods .shipping__list_label .woocommerce-Price-amount{ font-weight:600; }

/* =========================================================
   K) TERMS CHECKBOX – custom phẳng, không “lớp xám”
   ====================================================== */
/*.woocommerce .woocommerce-form__label.woocommerce-form__label-for-checkbox.checkbox{
  display:inline-flex; align-items:center; gap:10px; margin:0; flex-wrap:wrap;
}
#terms.woocommerce-form__input-checkbox,
.woocommerce .woocommerce-form__input.woocommerce-form__input-checkbox.input-checkbox{
  -webkit-appearance: checkbox !important;
  appearance: checkbox !important;           /* bật checkbox native (có tick) */
/*  width:18px; height:18px; margin:0; vertical-align:middle;
  border:1px solid var(--jr-border); border-radius:var(--jr-radius) !important;
  background:#fff; outline:0; box-shadow:none; position:relative;
  transition:border-color .18s ease, background-color .18s ease;
}
#terms.woocommerce-form__input-checkbox:checked{
  background:var(--brand-primary); border-color:var(--brand-primary);
}
#terms.woocommerce-form__input-checkbox:checked::after{
  content:""; position:absolute; left:4px; top:1px; width:6px; height:10px;
  border:1px solid #fff; border-top:0; border-left:0; transform:rotates(45deg);
}*/

/* dấu * gọn hơn */
.woocommerce .woocommerce-form__label.checkbox > .required{ display:none !important; }
.woocommerce a.woocommerce-terms-and-conditions-link::after{
  content:"*"; font-size:.75em; position:relative; top:-.25em; margin-left:.05em;
}

/* CF7 inline newsletter (áp dụng đúng khối bạn gửi) */
.cf7-inline > p{
  display:flex; align-items:stretch; gap:10px;
  width:100%; margin:0 !important;
}

/* Email = 2/3 chiều ngang */
.cf7-inline > p > .wpcf7-form-control-wrap{
  flex:0 0 66.6667%; max-width:66.6667%;
}
.cf7-inline > p > .wpcf7-form-control-wrap > input.wpcf7-email{
  width:100%; height:48px; padding:0 14px; margin:0 !important; box-sizing:border-box; 
}

/* Nút = 1/3, màu theo cài đặt website */
.cf7-inline > p > input.wpcf7-submit{
  flex:1 0 33.3333%; max-width:33.3333%;
  height:48px; padding:0 16px; border-radius:6px; margin:0 !important; box-sizing:border-box;
  background:var(--brand-primary, var(--fs-color-primary, var(--primary-color, #103953))) !important;
  border:1px solid var(--brand-primary, var(--fs-color-primary, var(--primary-color, #103953))) !important;
  color:#fff !important;
  transition:filter .12s ease, transform .06s ease, box-shadow .18s ease;
}
.cf7-inline > p > input.wpcf7-submit:hover{ filter:brightness(.96); }
.cf7-inline > p > input.wpcf7-submit:active{ transform:translateY(1px); }

/* Xóa ô ngoài cùng bên phải (spinner) và xuống dòng <br> */
.cf7-inline > p > .wpcf7-spinner{ display:none !important; width:0 !important; height:0 !important; margin:0 !important; padding:0 !important; }
.cf7-inline > p > br{ display:none; }

/* Nút "See more" có viền dày 5px, giữ nguyên màu nền */
.home .button.primary.is-bevel.lowercase{
    border-radius: var(--jr-radius) !important;
    box-sizing: border-box;
}

/* Form "Your Email" + nút SUBSCRIBE – viền 5px */

/* Ô nhập email */
.home .wpcf7-form input.wpcf7-form-control[type="email"]{
    border-radius: var(--jr-radius) !important;
    box-sizing: border-box;     /* giữ chiều cao ~50px như cũ */
}

/* Nút SUBSCRIBE */
.home .wpcf7-form input.wpcf7-submit{
    border-radius: var(--jr-radius) !important;
    box-sizing: border-box;
}

/* Nút SUBMIT */
input.wpcf7-form-control.wpcf7-submit.has-spinner { 
	border-radius: var(--jr-radius) !important;
    box-sizing: border-box;
}

/* Mobile: xếp dọc 100% chiều ngang */
@media (max-width:480px){
  .cf7-inline > p{ flex-direction:column; }
  .cf7-inline > p > .wpcf7-form-control-wrap,
  .cf7-inline > p > input.wpcf7-submit{ flex:0 0 auto; max-width:100%; width:100%; }
}

/* Đổi màu chữ mặc định (body text) sang màu primary */
html,
body {
  color: var(--brand-primary) !important;
}


/* Block ATC CSS */


/* ===== JERSORA · CTA Row (scoped, optimized; ± theo font) ===== */

/* Layout & uniform height */
.jrs-cta-row{
  --jrs-cta-h: 80px;
  --jrs-cta-br: 5px;
  display:grid;
  grid-template-columns:minmax(96px,128px) 1fr;
  gap:12px;
  align-items:stretch;
}
.jrs-cta-row .quantity,
.jrs-cta-row .single_add_to_cart_button{
  height:var(--jrs-cta-h);
  border-radius:var(--jr-radius) !important;
  box-sizing:border-box;
}

/* Quantity box (Flatsome override) */
.jrs-cta-row .quantity,
.jrs-cta-row .quantity.buttons_added{
  /* tokens */
  --jrs-qty-border-w: 1.5px;
  --jrs-qty-border-color: #2F6F9742;
  --jrs-qty-sep: #2F6F9742;

  float:none !important;
  width:auto !important;
  min-width:96px;
  margin:0 !important;
  padding:0 !important;
  position:relative !important;

  display:grid !important;
  grid-template-columns:1fr 44px !important;
  grid-template-rows:1fr 1fr !important;
  overflow:hidden !important;

  background:#fff;
  border:var(--jrs-qty-border-w) solid var(--jrs-qty-border-color) !important; /* FIX border var */
  border-radius:var(--jr-radius) !important;
  box-shadow:0 1px 2px rgba(0,0,0,.05) !important;
  height:var(--jrs-cta-h) !important;
}

/* Input số (chiếm cả 2 hàng cột trái) */
.jrs-cta-row .quantity .qty,
.jrs-cta-row .quantity input.qty{
  grid-area:1 / 1 / 3 / 2 !important;
  width:100% !important; height:100% !important;
  display:flex; align-items:center; justify-content:center;
  border:1.2px solid #607D8B33;
  color:var(--brand-primary, #103953) !important;
  text-align:center !important;
  font-weight:600; font-size:16px;
  font-variant-numeric:tabular-nums;
  -moz-appearance:textfield;
}
.jrs-cta-row .quantity .qty::-webkit-outer-spin-button,
.jrs-cta-row .quantity .qty::-webkit-inner-spin-button{ -webkit-appearance:none; }

/* Nút +/−: dùng glyph theo font, căn giữa tuyệt đối */
.jrs-cta-row .quantity .plus,
.jrs-cta-row .quantity .minus,
.jrs-cta-row .quantity input.plus,
.jrs-cta-row .quantity input.minus,
.jrs-cta-row .quantity .button.is-form.plus,
.jrs-cta-row .quantity .button.is-form.minus{
  all:unset;
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important; height:100% !important;
  cursor:pointer !important; user-select:none !important;
  background:#f7f7f7 !important;
  box-shadow:none !important;
	  border:0.001px solid var(--jrs-qty-border-color) !important; /* FIX border var */
  border-radius:0 !important;
  transition:transform .06s ease, background .15s ease, box-shadow .15s ease, filter .15s ease !important;

  /* glyph theo font website */
  font-family:inherit !important;
  font-weight:500 !important;
  font-size:18px !important;
  line-height:1 !important;
  color:var(--brand-primary, #103953) !important;
  text-align:center !important;
}
/* Tắt icon pseudo (nếu theme thêm) */
.jrs-cta-row .quantity .plus::before,
.jrs-cta-row .quantity .minus::before{ content:none !important; }

/* Vị trí lưới cho + ở trên, − ở dưới */
.jrs-cta-row .quantity .plus,
.jrs-cta-row .quantity input.plus,
.jrs-cta-row .quantity .button.is-form.plus{ grid-area:1 / 2 / 2 / 3 !important; }
.jrs-cta-row .quantity .minus,
.jrs-cta-row .quantity input.minus,
.jrs-cta-row .quantity .button.is-form.minus{ grid-area:2 / 2 / 3 / 3 !important; }

/* Hover / Press & Hold / Focus */
.jrs-cta-row .quantity{ transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease, transform .06s ease; }
.jrs-cta-row .quantity:hover,
.jrs-cta-row .quantity:focus-within{
  border-color:var(--jrs-secondary, var(--brand-secondary)) !important;
  box-shadow:0 0 0 3px var(--jrs-secondary-12, rgba(47,111,151,.12)), 0 1px 2px rgba(0,0,0,.06) !important;
}
.jrs-cta-row .quantity .plus:hover,
.jrs-cta-row .quantity .minus:hover{
  background:#607D8B33 !important; /* giữ bản ở CUỐI */
  filter:brightness(1.01);
}
.jrs-cta-row .quantity:hover .plus,
.jrs-cta-row .quantity:hover .minus{
  background:#607D8B33 !important; /* sáng nhẹ cả 2 nút khi hover khối */
}
.jrs-cta-row .quantity.is-holding{
  border-color:var(--jrs-secondary, var(--brand-secondary)) !important;
  box-shadow:0 0 0 4px var(--jrs-secondary-12, rgba(47,111,151,.12)), 0 1px 2px rgba(0,0,0,.05) !important;
}
.jrs-cta-row .quantity .plus.is-pressed,
.jrs-cta-row .quantity .minus.is-pressed,
.jrs-cta-row .quantity .plus:active,
.jrs-cta-row .quantity .minus:active{
  transform:scale(.985) !important;
  box-shadow:inset 0 0 0 6px var(--jrs-secondary-18, rgba(47,111,151,.18)) !important;
  filter:brightness(.97) !important;
}
.jrs-cta-row .quantity .plus:focus-visible,
.jrs-cta-row .quantity .minus:focus-visible{
  outline:2px solid var(--jrs-secondary, var(--brand-secondary));
  outline-offset:-2px;
}

/* Add to cart button */
.jrs-cta-row .single_add_to_cart_button{
  width:100%; padding:0;
  display:grid; place-items:center;
  font-family:inherit !important;
  font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  box-shadow:0 6px 12px -3px rgba(35,67,92,.25);
  transition:transform .06s ease, box-shadow .2s ease, filter .2s ease;
}
.jrs-cta-row .single_add_to_cart_button:hover{
  transform:translateY(-1px);
  filter:brightness(1.02);
  box-shadow:0 10px 20px -5px rgba(35,67,92,.30);
}
.jrs-cta-row .single_add_to_cart_button:active{
  transform:translateY(1px);
  box-shadow:0 8px 18px -4px rgba(35,67,92,.28);
}
.jrs-cta-row .single_add_to_cart_button.disabled,
.jrs-cta-row .single_add_to_cart_button[disabled]{
  filter:grayscale(.25) opacity(.7);
  cursor:not-allowed;
}

/* Mobile */
@media (max-width:420px){
  .jrs-cta-row{
    --jrs-cta-h:56px;
    grid-template-columns:minmax(84px,96px) 1fr !important;
    gap:8px !important;
  }
}

/* Reduce motion */
@media (prefers-reduced-motion:reduce){
  .jrs-cta-row .quantity .plus,
  .jrs-cta-row .quantity .minus{ transition:none !important; }
  .jrs-cta-row .quantity:hover,
  .jrs-cta-row .single_add_to_cart_button:hover{ transform:none; }
}

/* 2) Hiệu ứng CLICK cho nút ±: ripple + nhún */
.jrs-cta-row .quantity .plus,
.jrs-cta-row .quantity .minus{
  /* đã có transform/transition ở block trước */
  position:relative !important;
  overflow:hidden; /* để ripple không tràn ra ngoài */
}

/* Hạt ripple (ẩn mặc định) */
.jrs-cta-row .quantity .plus::after,
.jrs-cta-row .quantity .minus::after{
  content:"";
  position:absolute;
  left:50%; top:50%;
  width:42px; height:42px;        /* vừa trong cột 44px */
  border-radius:50%;
  background:var(--jrs-secondary-18, rgba(47,111,151,.18));
  transform:translate(-50%,-50%) scale(0);
  opacity:0;
  pointer-events:none;
}

/* Kích hoạt ripple khi click: dùng class .is-tapped (JS) + fallback :active */
@keyframes jrsRipple {
  0%   { transform:translate(-50%,-50%) scale(.2); opacity:.45; }
  60%  { transform:translate(-50%,-50%) scale(1.0); opacity:.25; }
  100% { transform:translate(-50%,-50%) scale(1.8); opacity:0; }
}

@media (prefers-reduced-motion: no-preference){
  .jrs-cta-row .quantity .plus.is-tapped::after,
  .jrs-cta-row .quantity .minus.is-tapped::after{
    animation:jrsRipple .45s ease-out forwards;
  }
  /* fallback nếu không kịp gắn class */
  .jrs-cta-row .quantity .plus:active::after,
  .jrs-cta-row .quantity .minus:active::after{
    animation:jrsRipple .45s ease-out forwards;
  }
}

/* Nhấn nhẹ khi click (đồng bộ với is-pressed cũ) */
.jrs-cta-row .quantity .plus:active,
.jrs-cta-row .quantity .minus:active{
  transform:scale(.985);
  filter:brightness(.98);
}

/* Space giữa input và CTA row */
.single-product .summary .jrs-cta-row{
  margin-top: var(--jrs-cta-gap, 24px) !important;  /* đổi 24px tùy ý */
}

/* Mobile có thể ít hơn chút */
@media (max-width: 480px){
  .single-product .summary .jrs-cta-row{
    --jrs-cta-gap: 18px;
  }
}

/* === JERSORA · Add-to-cart press/hold + ripple + loading === */
.jrs-cta-row .single_add_to_cart_button{
  position: relative;
  overflow: hidden;                 /* để ripple không tràn ngoài */
  transition: transform .08s ease, box-shadow .22s ease, filter .22s ease;
}

/* Press/Hold states (JS sẽ thêm class) */
.jrs-cta-row .single_add_to_cart_button.is-pressed{
  transform: translateY(1px) scale(.996);
  box-shadow: 0 6px 12px -4px rgba(35,67,92,.28);
}
.jrs-cta-row .single_add_to_cart_button.is-holding{
  box-shadow: 0 0 0 6px var(--jrs-secondary-12), 0 8px 20px -6px rgba(35,67,92,.30);
  filter: brightness(1.02);
}

/* Ripple */
.jrs-cta-row .single_add_to_cart_button .jrs-ripple{
  position: absolute;
  border-radius: 50%;
  transform: scale(0);
  background: var(--jrs-secondary-26);  /* gợn theo màu secondary */
  opacity: .55;
  pointer-events: none;
  animation: jrs-ripple .55s ease-out forwards;
}
@keyframes jrs-ripple{
  to { transform: scale(4); opacity: 0; }
}

/* Loading spinner (khi AJAX add to cart) */
.jrs-cta-row .single_add_to_cart_button.is-loading{
  pointer-events: none;
}
.jrs-cta-row .single_add_to_cart_button.is-loading > *{
  opacity: .0;                       /* ẩn chữ khi đang loading */
}
.jrs-cta-row .single_add_to_cart_button.is-loading::after{
  content: "";
  position: absolute; inset: 0;      /* canh giữa */
  margin: auto;
  width: 22px; height: 22px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,.75);
  border-top-color: rgba(255,255,255,.25);
  animation: jrs-spin .8s linear infinite;
}
@keyframes jrs-spin{ to { transform: rotate(360deg); } }


/*  Custom name & number CSS */


/* ========== ROOT TOKENS ========== */
:root {
    /* Màu & font thương hiệu */
    --brand-primary: var(--fs-color-primary, var(--primary-color, #103953));
    --brand-secondary: var(--main-hnc-color, var(--secondary-color, #2f6f97));
    --heading-font: "Bebas Neue", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

    /* Radius & shadow dùng chung */
    --jr-radius: 5px;
    --jr-shadow: 0 4px 6px -2px rgba(35, 67, 92, .32);
    --jr-shadow-strong: 0 6px 12px -3px rgba(35, 67, 92, .38);

    /* Nhịp dọc/ khoảng cách */
    --jr-block-gap: 12px;
    /* khoảng cách giữa CÁC KHỐI */
    --jr-label-gap: 10px;
    /* khoảng cách giữa NHÃN và NÚT/INPUT */
    --jr-customize-gap: 0px;
    /* khoảng cách giữa NAME ↕ NUMBER */
}

/* ========== VARIATIONS: MATERIAL & SIZE ========== */
.single-product .summary table.variations tr {
    display: block !important;
    margin: 0 0 var(--jr-block-gap) !important;
    /* mỗi khối cách nhau đều */
}

.single-product .summary table.variations th.label {
    display: block !important;
    margin: 0 0 var(--jr-label-gap) !important;
    /* nhãn → hàng nút */
}

/* Kéo sát khoảng cách giữa SIZE và CUSTOMIZE NAME */
.single-product .summary #size+.jr-attr-row {
    margin-bottom: -15px !important;
}

/* ========== CUSTOMIZE: NAME & NUMBER ========== */
.single-product .summary .jr-customize-wrap {
    margin-top: 0 !important;
    /* ưu tiên quy tắc cuối */
}

/* Lưới 2 ô (desktop), 1 ô (mobile) với nhịp dọc mong muốn */
.single-product .summary .jr-field-group {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: var(--jr-customize-gap) !important;
    column-gap: 12px;
}

@media (min-width:560px) {
    .single-product .summary .jr-field-group {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Dọn margin lẻ tẻ có thể phá nhịp */
.single-product .summary .jr-customize-wrap .jr-field-row {
    margin: 0 !important;
}

/* ========== LABEL (heading) & OPTIONAL TAG ========== */
/* Label đứng cùng hàng với (Optional), cỡ chữ dùng clamp chuẩn, giữ uppercase */
.single-product .summary .jr-field-label {
    display: inline-block !important;
    margin: 0 0 var(--jr-label-gap) !important;
    /* khoảng cách dưới lấy từ token */
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .02em;
    line-height: 1.15;
    font-size: clamp(15px, 1.9vw, 18px);
    /* sửa lỗi cú pháp font-size */
    color: var(--fs-color-heading, var(--heading-color, #103953));
    font-family: var(--heading-font, inherit);
}

/* "(Optional)" riêng style, không uppercase, giống (Guide) */
.single-product .summary .jr-optional {
    display: inline-block;
    margin-left: 6px !important;
    /* sát với heading */
    font-size: 12px;
    font-weight: 400;
    color: var(--fs-color-primary, var(--primary-color, #103953));
    text-transform: none !important;
    /* KHÔNG CAPS */
    letter-spacing: .02em;
    text-decoration: none;
    vertical-align: baseline;
}

/* Label đầu tiên của Customize không cộng thêm margin trên */
.single-product .summary .jr-customize-wrap .jr-field-row:first-child .jr-field-label {
    margin-top: 0 !important;
}

/* ========== INPUT (đồng bộ với style button) ========== */
.single-product .summary .jr-input {
    display: block;
    width: 100%;
/*     height: var(--jr-input-h) !important; */
    background: #fff !important;
    color: var(--brand-primary) !important;
    border: 1.5px solid var(--jr-border);
    border-radius: var(--jr-radius);
    padding: 6px 8px;
/*     font-size: clamp(14px, 1.8vw, 16px);
    line-height: 1.2; */
    font-weight: 600;
    /* giống button thường */
    text-transform: uppercase;
    box-shadow: var(--jr-shadow);
/*     transition: border-color .18s ease, box-shadow .18s ease, color .18s ease, background .18s ease; */
    margin: 0 !important;
    /* không cộng thêm khoảng trống */
}

.single-product .summary .jr-input::placeholder {
    color: rgba(0, 0, 0, .38);
    font-weight: 400;
    text-transform: none;
}

/* Hover/Focus */
.single-product .summary .jr-input:focus-visible {
    outline-offset: 2px;
}

/* Active */
.jr-input:active {
    transform: translateY(0);
    box-shadow: 0 3px 10px rgba(16, 57, 83, .22);
}

/* Khi có giá trị – in đậm như trạng thái 'selected' của button */
.single-product .summary .jr-input.filled {
    background: #fff !important;
    color: var(--brand-primary) !important;
    border-color: var(--brand-secondary) !important;
    font-weight: 800 !important;
    /* in đậm khi chọn */
    transform: translateY(0);
    box-shadow: 0 3px 10px rgba(16, 57, 83, .22);
}

/* ========== TWEAK MOBILE ========== */
@media (max-width:480px) {
    :root {
        --jr-customize-gap: 30px;
    }

    /* dễ thở hơn một chút ở mobile */
}



/* Material & size popup CSS */

/* ===== LABEL & LINK CHÚ THÍCH: cùng 1 dòng, sát nhau ===== */
.single-product .summary table.variations th.label label{
  display:inline-block !important;
  margin:0 !important;
  font-weight:400 !important; /* nhãn không in đậm */
}

/* Link sát nhãn – chỉ gạch dưới chữ bên trong */
.single-product .summary table.variations th.label .jr-right-link{
  position:static !important;
  display:inline-block;
  margin-left:4px;
  text-decoration:none !important; /* bỏ gạch dưới toàn link */
  color:var(--fs-color-primary, var(--primary-color, #103953));
  font-size:12px;
  font-weight:400;
  letter-spacing:.02em;
  text-transform:none;
}
.single-product .summary table.variations th.label .jr-right-link .jr-u{
  text-decoration:underline; /* chỉ gạch dưới 'Detail'/'Guide' */
}
.single-product .summary table.variations th.label .jr-right-link .jr-star{
  text-decoration:none; /* không gạch dưới dấu * */
}

/* ===== KHOẢNG CÁCH LABEL ↔ HÀNG NÚT ===== */
.single-product .summary table.variations th.label{
  display:block !important;              /* chắc chắn tách dòng */
  margin:0 0 12px !important;            /* chỉnh xa/gần tại đây */
}

/* Fine-tune cho hàng nút (nằm trong .jr-attr-row) */
.single-product .summary .jr-attr-row{
  margin-top:2px !important;             /* có thể tăng 6–8px nếu muốn */
}

/* ===== LIGHTBOX (Magnific) – cao theo nội dung, chỉ cuộn khi dài ===== */
.mfp-content .jr-lightbox{
  display:block;
  max-width:900px;
  max-height:80vh;
  overflow:auto;
}

/* ===== FALLBACK MODAL (dùng khi không có Magnific Popup) ===== */
html.jr-no-scroll{ overflow:hidden; }

#jr-modal2{
  position:fixed;
  inset:0;
  display:none;
  z-index:99999;
}
#jr-modal2.is-open{ display:block; }

#jr-modal2 .jr-modal__overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.55);
}
#jr-modal2 .jr-modal__box{
  position:relative;
  margin:4vh auto 0;
  width:min(900px,94vw);
  /* ưu tiên cuối: cao theo nội dung, chỉ cuộn khi vượt 80vh */
  background:#fff;
  border-radius:12px;
  overflow:auto;
  box-shadow:0 24px 60px rgba(0,0,0,.35);
  height:auto !important;
  max-height:80vh;
}
#jr-modal2 .jr-modal__close{
  position:absolute;
  top:8px; right:10px;
  font-size:28px; line-height:1;
  border:0; background:transparent; cursor:pointer;
}
#jr-modal2 .jr-modal__body{ padding:0; }

/* Modal fallback */
.jr-modal{ position:fixed; inset:0; display:none; background:rgba(0,0,0,.55); z-index:2147483647; }
.jr-modal.is-open{ display:block; }
.jr-modal__dialog{ position:relative; width:min(92vw,860px); height:min(80vh,780px);
  margin:5vh auto 0; background:#fff; border-radius:12px; box-shadow:0 20px 60px rgba(0,0,0,.2); overflow:hidden; }
/* .jr-modal__close{ position:absolute; top:-5px; right:-5px; border:0; background:transparent;font-size:28px; line-height:1; cursor:pointer; color:#222; padding:6px; } */
.jr-modal__content{ width:100%; height:100%; overflow:auto; }
body.jr-modal-open{ overflow:hidden; }

/* Nội dung bên trong popup – canh lề đẹp, ẩn phần thừa nếu có */
.jr-popup-inner{ padding:10px 10px; }
.jr-popup-inner img{ max-width:100%; height:auto; display:block; }
.jr-popup-inner .section, .jr-popup-inner .banner, .jr-popup-inner .page-title, 
.jr-popup-inner .title-wrapper, .jr-popup-inner .breadcrumbs, 
.jr-popup-inner header, .jr-popup-inner footer { display:none !important; }

/* Lightbox hộp đẹp gọn (dùng sẵn MagnificPopup của Flatsome) */
.jr-lightbox{ max-width:900px; margin:0 auto; background:#fff; padding:0; border-radius:5px; }
.mfp-content .jr-lightbox{ box-shadow:0 24px 60px rgba(0,0,0,.35); overflow:auto; max-height:80vh; }

/* Đặt nhãn + link chú thích cùng 1 dòng, sát nhau */
.single-product .summary table.variations th.label{
  display:inline-flex;
  align-items:baseline;
  gap:6px;                  /* khoảng cách giữa nhãn và (Detail*)/(Guide*) */
  white-space:nowrap;
}

/* Chỉ gạch dưới chữ, không gạch dấu * */
.single-product .summary table.variations th.label .jr-right-link .jr-u{ text-decoration:underline; }
.single-product .summary table.variations th.label .jr-right-link .jr-star{ text-decoration:none; }

/* (Options) của CUSTOMIZE NAME/NUMBER đã ổn – giữ sát nhãn */
label.jr-field-label + .jr-optional, .uppercase + .jr-optional{
  margin-left:6px; font-size:12px; font-weight:400; text-transform:none;
}

/* === Place (Detail*) / (Guide*) right next to label === */
.single-product .summary table.variations th.label{
  display:flex !important;            /* label + link nằm cùng 1 dòng */
  align-items:baseline !important;
  gap:4px !important;                 /* khoảng cách nhỏ giữa nhãn và link */
  position:static !important;         /* chặn mọi tuyệt đối hóa trước đó */
}

/* Nhãn không in đậm, giữ trên 1 dòng */
.single-product .summary table.variations th.label label{
  display:inline-block !important;
  margin:0 !important;
  font-weight:400 !important;
  white-space:nowrap !important;
}

/* Link ngay sau nhãn, KHÔNG kéo về bên phải */
.single-product .summary table.variations th.label .jr-right-link{
  position:static !important;
  display:inline-flex !important;
  margin:0 0 0 6px !important;        /* “sát” nhưng vẫn thở nhẹ */
  float:none !important;
  right:auto !important; left:auto !important; top:auto !important;
  text-decoration:none !important;
  line-height:1.1 !important;
}

/* Chỉ gạch dưới chữ bên trong, không gạch dấu * */
.single-product .summary table.variations th.label .jr-right-link .jr-u{ text-decoration:underline; }
.single-product .summary table.variations th.label .jr-right-link .jr-star{ text-decoration:none; }

/* Nếu màn hình siêu hẹp → cho phép xuống dòng nhưng vẫn sát nhãn */
@media (max-width: 360px){
  .single-product .summary table.variations th.label{ flex-wrap:wrap; gap:4px 6px; }
}

/* Material (Detail*) đứng sát nhau, cùng 1 dòng */
.single-product .summary table.variations th.label label{
  display:inline-block; margin:0; /* bỏ mọi margin label */
}
.single-product .summary table.variations th.label .jr-right-link{
  position:static !important;     /* hủy mọi absolute/float cũ */
  display:inline-block;
  margin-left:4px;                /* cách nhẹ 4px sau chữ Material */
  text-transform:none;            /* không CAPS link */
  text-decoration:none;
  font-size:12px; font-weight:400; line-height:1.2;
  color: var(--brand-primary, var(--fs-color-primary, var(--primary-color, #103953)));
}
.single-product .summary table.variations th.label .jr-right-link .jr-u{ text-decoration:underline; }
.single-product .summary table.variations th.label .jr-right-link .jr-star{ text-decoration:none; }

/* Giữ chúng không tách dòng (khi đủ chỗ) */
.single-product .summary table.variations th.label{ white-space:nowrap; }
@media (max-width:420px){
  .single-product .summary table.variations th.label{ white-space:normal; } /* mobile cực hẹp cho phép xuống dòng */
}

/* Dọn rác trong content nếu block còn dính section/banner */
.jr-popup-inner .section,
.jr-popup-inner .ux-section,
.jr-popup-inner .ux-banner,
.jr-popup-inner .banner,
.jr-popup-inner .page-title,
.jr-popup-inner .title-wrapper,
.jr-popup-inner .breadcrumbs { display:none !important; }

/* JR — Close (×) only: desktop lớn hơn, top=right, không viền/nền */
:root{
  --jr-primary: var(--fs-color-primary, var(--primary-color, #103953));
  /* Mobile mặc định */
  --jr-exit-offset: 8px;    /* top = right */
  --jr-exit-font: 16px;
  --jr-exit-pad: 6px;       /* padding tăng hit-area nhưng không hiển thị */
}
@media (min-width:1024px){
  :root{
    /* PC to hơn */
    --jr-exit-offset: 14px;
    --jr-exit-font: 22px;
    --jr-exit-pad: 8px;
  }
}

.mfp-ready.mfp-wrap .mfp-close {
    opacity: 1;
    box-shadow: 1px 1px 15px rgba(0, 0, 0, .15);
    background: #fff;
    border-radius: 999px !important;
    color: #103953;
	z-index: 9999999;
    top: 1.5rem !important;
    right: 1rem;
	     mix-blend-mode: normal;
}
/* === JR Popup — show full layout when .jr-keep-layout is present === */
.jr-popup-inner.jr-keep-layout { padding:0 !important; }

.jr-popup-inner.jr-keep-layout .section,
.jr-popup-inner.jr-keep-layout .ux-section,
.jr-popup-inner.jr-keep-layout .ux-banner,
.jr-popup-inner.jr-keep-layout .banner,
.jr-popup-inner.jr-keep-layout .page-title,
.jr-popup-inner.jr-keep-layout .title-wrapper,
.jr-popup-inner.jr-keep-layout .breadcrumbs,
.jr-popup-inner.jr-keep-layout header,
.jr-popup-inner.jr-keep-layout footer { display:unset !important; }

/* Variation Button CSS */

/* ===== LABEL: lên trên, canh trái, KHÔNG in đậm ===== */
body.single-product div.product .summary table.variations tr{
  display:block; width:100%; margin:0 0 12px;
}
body.single-product div.product .summary table.variations th.label,
body.single-product div.product .summary table.variations td.value{
  display:block; width:100%; padding:0 !important; border:0;
}
body.single-product div.product .summary table.variations th.label label{
  display:block; margin:0 0 8px; text-align:left;
  font-weight:400 !important;           /* không in đậm */
  letter-spacing:.02em;
}

/* 2) XÓA mọi đường kẻ/đường nét đứt trong khu vực variation + ẩn CLEAR */
.single-product .summary .is-divider,
.single-product .summary .is-divider.small,
.single-product .summary .ux-divider,
.single-product .summary hr,
.single-product .summary table.variations th.label:before,
.single-product .summary table.variations th.label:after{
  display:none !important; height:0 !important; border:0 !important; margin:0 !important;
}
.single-product .summary .reset_variations{ display:none !important; }

/* Kill all dividers under MATERIAL / SIZE in variations */
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product form.cart table.variations td,
.woocommerce div.product form.cart table.variations tr{
  border: none !important;
}
.woocommerce div.product form.cart table.variations th.label,
.woocommerce div.product form.cart table.variations th.label label{
  border: 0 !important;
  box-shadow: none !important;
  background: none !important;
}
.single-product .summary .is-divider,
.single-product .summary .is-divider::before,
.single-product .summary .is-divider::after,
.single-product .summary .ux-divider,
.single-product .summary hr{
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

/* 3) Hàng nút co giãn full bề ngang */
/* Material: 2 cột = 2 nút bằng nhau, lấp đầy 100% */
.single-product .summary #material + .jr-attr-row{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px; width:100%;
}
.single-product .summary #material + .jr-attr-row .jr-attr{ width:100%; min-width:0; }

/* Size: 1 hàng duy nhất, tự co giãn theo chiều rộng màn hình */
.single-product .summary #size + .jr-attr-row{
  display:grid !important;
  grid-template-columns:repeat(8, minmax(0,1fr)); /* S,M,L,XL,2XL,3XL,4XL,5XL */
  gap:12px; width:100%;
}
.single-product .summary #size + .jr-attr-row .jr-attr{ width:100%; min-width:0; }

/* Lấy màu thương hiệu (fallback an toàn) */
:root{
  --brand-primary: var(--fs-color-primary, var(--primary-color, #103953));
  --brand-secondary: var(--main-hnc-color, var(--secondary-color, #2f6f97));
}

/* Base button */
.single-product .summary .jr-attr{
  background:#fff !important;
  color:var(--brand-primary) !important;
  border:1.5px solid var(--jr-border);
  font-weight:600;                     /* bình thường không quá mỏng */
  transition:all .18s ease;
}

/* Hover/Focus */
.single-product .summary .jr-attr:hover{
  border-color:var(--brand-primary);
}
.single-product .summary .jr-attr:focus-visible{
  outline:2px solid var(--brand-primary); outline-offset:2px;
}

/* ĐÃ CHỌN: chữ in đậm, viền secondary, nền vẫn trắng */
.single-product .summary .jr-attr.selected,
.single-product .summary .jr-attr.is-selected,
.single-product .summary .jr-attr.active,
.single-product .summary .jr-attr.is-active,
.single-product .summary .jr-attr[aria-pressed="true"],
.single-product .summary input[type="radio"]:checked + .jr-attr,
.single-product .summary input[type="checkbox"]:checked + .jr-attr,
.single-product .summary .ux-swatch.selected{

  transform:translateY(0);
  box-shadow:0 3px 10px rgba(16,57,83,.22);
  filter:brightness(1.02);
	
  background:#fff !important;
  color:var(--brand-primary) !important;
  border-color:var(--brand-secondary) !important;
  font-weight:900 !important;          /* in đậm khi chọn */
}

/* Trường hợp text nằm trong span */
.single-product .summary .jr-attr span{
  color:inherit; font-weight:inherit;
}

/* 1) SIZE: chia 2 line cố định (8 size => 4 cột x 2 hàng) */
#size + .jr-attr-row{
  grid-auto-flow: row;                   /* từ 1 dòng -> nhiều hàng */
  grid-template-columns: repeat(4, minmax(0,1fr));
  overflow: visible;                     /* bỏ kéo ngang */
}
	
/* (tuỳ chọn) cảm giác “đè/hold” nhẹ tay hơn */
.jr-attr:active{
  transform:translateY(0);
  box-shadow:0 3px 10px rgba(16,57,83,.22);
  filter:brightness(1.02);
}
.flipContainer.box-shadow-2 {
    box-shadow: none;
}
@media (max-width:480px) {
.flipContainer .flickity-prev-next-button.next, .flipContainer .flickity-prev-next-button.previous {
/*     right: -2%; */
	    display: none;
}
.flipContainer .product-info.inner-padding {
    padding-left: 0;
    padding-right: 0;
}
}
/* .flipContainer .flickity-prev-next-button.previous {
    left: -2%;
} */



.wcpa_wrap .wcpa_field_label {
    display: inline-block !important;
    margin: 0 0 var(--jr-label-gap) !important;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .02em;
    line-height: 1.15;
    font-size: clamp(15px, 1.9vw, 18px);
    color: var(--fs-color-heading, var(--heading-color, #103953));
    font-family: var(--heading-font, inherit);
}

.wcpa_wrap .wcpa_field_wrap input[type=text] {
    /* display: block; */
    /* width: 100%; */
    /* height: var(--jr-input-h) !important; */
    background: #fff !important;
    color: var(--brand-primary) !important;
    border: 1.5px solid var(--jr-border);
    border-radius: var(--jr-radius);
    /* padding: 6px 8px; */
    /* font-weight: 600; */
    text-transform: uppercase;
/*     box-shadow: var(--jr-shadow); */
    /* transition: border-color .18s ease, box-shadow .18s ease, color .18s ease, background .18s ease; */
    /* margin: 0 !important; */
}



.wcpa_wrap .wcpa_field_wrap input[type=text]:focus {
    box-shadow: var(--jr-shadow);
}



.not-found form.searchform {
    max-width: 50%;
}

.not-found input#s, .not-found button.ux-search-submit {
    max-height: 50px;
}

.not-found button.ux-search-submit.button {
    border-radius: 0 .5rem .5rem 0!important;
}

.not-found input#s {
    border-radius: .5rem 0 0 .5rem;
    border-right: 0;
}
