.wooecom_instant_order_form { display: flex; flex-wrap: wrap; align-items: stretch; gap: 20px 20px; border: 1px solid #d9d9d9; padding: 15px; margin-bottom: -1px; }
.wooecom_information_title { width: 100%; margin: 0; }

/* --- MODERN FIELD WRAPPERS WITH SOLID ICON BLOCKS --- */
.wooecom_field_wrapper {
    position: relative;
    width: calc(50% - 10px);
    display: flex;
    align-items: stretch;
    border-radius: 8px;
    background-color: #f3f4f6;
    border: 1px solid transparent;
    overflow: hidden;
    transition: all 0.3s ease;
}
.wooecom_field_wrapper.full_width {
    width: 100%;
}

.wooecom_field_icon_box {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #1f2937;
    color: #ffffff;
    width: 50px;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.wooecom_field_icon_box i {
    font-size: 16px;
}

.wooecom_field_wrapper > input, 
.wooecom_field_wrapper > select, 
.wooecom_field_wrapper > textarea { 
    width: 100% !important; 
    border: none !important; 
    outline: none !important; 
    border-radius: 0 !important; 
    padding: 14px 15px !important; 
    line-height: 1.5em !important; 
    height: auto !important; 
    box-sizing: border-box;
    background-color: transparent !important;
    color: #111827;
}

/* Fix RTL for the seamless block */
.rtl .wooecom_field_wrapper > input, 
.rtl .wooecom_field_wrapper > select, 
.rtl .wooecom_field_wrapper > textarea { 
    text-align: right;
}

#apply_coupon:hover { color: #0766e0 !important; background: #ffffff !important; border-color: #0766e0 !important; }
#apply_coupon { color: #ffffff !important; transition: all .3s ease; border: 1px solid transparent; width: calc(127% - 20px); display: flex; align-items: center; gap: 10px; justify-content: center; border-radius: 5px; padding: 18px; outline: none !important; position: relative; }
.wooecom_checkout { width: calc(80% - 20px); display: flex; align-items: center; gap: 10px; justify-content: center; border-radius: 5px; padding: 18px; outline: none !important; position: relative; }
.wooecom_checkout.loading { pointer-events: none !important; }

/* QUANTITY FIX FOR RTL - Forces Left-to-Right */
.wooecom_quantity { width: 20%; display: flex; align-items: center; direction: ltr !important; justify-content: center; }
.wooecom_quantity>input[type="number"] { width: 40px; padding: 5px; text-align: center; font-weight: 600; color: #000; }
#wooecom_fixed_shipping_fe { display: none; }

.wooecom_quantity input::-webkit-outer-spin-button, .wooecom_quantity input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.wooecom_quantity input[type="number"] { -moz-appearance: textfield; }

.wooecom_plus, .wooecom_minus { width: 30px; text-align: center; cursor: pointer; border: 1px solid #d9d9d9; background: #f5f5f5; border-radius: 3px; height: 30px; display: flex; align-items: center; justify-content: center; font-size: 14px; }
.wooecom_plus:hover, .wooecom_minus:hover { background: #fff; color: #000; }

.wooecom_order_summary { width: 100%; background: #ffffff; }
.wooecom_order_summary_head { display: flex; align-items: center; justify-content: space-between; background: #e9e9e9; padding: 15px; border: 1px solid #d9d9d9; margin-bottom: -1px; user-select: none; cursor: pointer; }
.wooecom_order_summary_head>i { transform: rotate(0); transition: all 0.4s ease; }
.wooecom_order_summary.active .wooecom_order_summary_head>i { transform: rotate(180deg); }

.wooecom_price_table { display: none; position: relative; }
.wooecom_price_table table { margin-bottom: 0px; }
.wooecom_order_summary.active .wooecom_price_table { display: block; }
.wooecom_quantity>input { border: none !important; background: transparent !important; outline: none !important; }
.wooecom_plus { border-left: 1px solid #d9d9d9; }
.wooecom_minus { border-right: 1px solid #d9d9d9; }

/* Perfect RTL/LTR alignment for table columns */
.wooecom_price_table>table td:first-child { text-align: start; }
.wooecom_price_table>table td:last-child { text-align: end; }

/* --- MOBILE SQUEEZE FIX --- */
.wooecom_price_table>table td:last-child:not([colspan]) {
    white-space: nowrap !important;
    width: 1% !important;
}

.wooecom_price_table>table td { border: none; padding: 15px; }
.wooecom_price_table>table { border-collapse: collapse; border: 1px solid #d9d9d9; width: 100%; background: #ffffff; }
.wooecom_price_table>table tr { border-bottom: 1px solid #d9d9d9; }

.wooecom_btn_loader { width: 20px; height: 20px; border-radius: 50%; display: none; box-sizing: border-box; animation: rotation 1s linear infinite; }
@keyframes rotation { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

.wooecom_attributes { width: 100%; }
.wooecom_single_attr label input { display: none !important; }
.wooecom_single_attr { margin: 10px 0 !important; display: flex; align-items: center; gap: 5px; }
.wooecom_single_attr label span { display: inline-block !important; border: 1px solid #d9d9d9 !important; padding: 3px 5px !important; border-radius: 3px !important; cursor: pointer !important; font-size: 13px !important; }
.wooecom_single_attr label input:checked+span { background: transparent !important; color: #000 !important; border-color: #000 !important; }
.wooecom_single_attr label { margin-bottom: 0px !important; }
span.wooecom_attr_label { font-size: 15px !important; min-width: 50px !important; display: inline-block !important; }

.wooecom_footer_icons { display: none; align-items: stretch; font-size: 18px; gap: 10px; }
.wooecom_footer_icons a { display: inline-block; text-decoration: none !important; }
.wooecom_footer_icons i { width: 46px; height: 46px; border: 1px solid #d9d9d9; border-radius: 5px; display: flex; align-items: center; justify-content: center; font-size: 24px; }
.wooecom_footer_icons i.fa-phone { font-size: 18px; }

.wooecom_sticky_footer { position: fixed; bottom: 0; left: 0; width: 100%; padding: 20px; background: #fff; z-index: 5000; border-top: 1px solid #d9d9d9; display: flex; align-items: stretch; justify-content: center; gap: 10px; display: none; margin-bottom: 0px !important; }
.wooecom_buy_now { display: block; padding: 10px 35px; border-radius: 5px; text-decoration: none !important; text-align: center; width: 250px; }
span.wooecom_order_qty { background: #d9d9d9; color: #000; display: inline-block; padding: 3px 5px; border-radius: 5px; line-height: 1em; font-size: 10px; position: relative; font-weight: 600; top: -1px; margin-inline-end: 4px; }

.wooecom_order_loader { width: 20px; height: 20px; border: 2.5px solid #fff; border-bottom-color: transparent; border-radius: 50%; display: inline-block; box-sizing: border-box; animation: rotation 1s linear infinite; }
.order_loader_container { width: 100%; height: 100%; background: rgba(0, 0, 0, 0.3); position: absolute; left: 0; top: 0; z-index: 1; display: none; align-items: center; justify-content: center; }

ul.wooecom_shipping_methods { list-style: none; margin: 0; padding: 0; }
.wooecom_row_total_price>td { font-weight: bold !important; color: #000 !important; }
.wooecom_order_summary_title { display: flex; align-items: center; gap: 10px; font-weight: bold !important; text-transform: capitalize; }
.wooecom_shipping_methods li label { display: flex; align-items: center; gap: 5px; justify-content: flex-start; }

span.wooecom_free_shipping { background: #d9d9d9 !important; color: #fff !important; padding: 2px 8px !important; border-radius: 5px !important; display: inline-block !important; }

.wooecom_single_attr label input:checked+span.wooecom_color_palette { position: relative; }
.wooecom_single_attr label input:checked+span.wooecom_color_palette::before { content: ""; position: absolute; width: calc(100% + 6px); height: calc(100% + 6px); border-radius: 5px; border: 1px solid #000; left: -3px; top: -3px; }

/* Clean Remove Cart Item Button Styles */
.wooecom_remove_cart_item { color: #ef4444; font-size: 12px; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: #fee2e2; transition: all 0.2s ease; flex-shrink: 0; }
.wooecom_remove_cart_item:hover { background: #ef4444; color: #ffffff; transform: scale(1.1); }

/* RTL Enhancements */
.rtl .wooecom_shipping_methods li label { display: flex; flex-direction: row; justify-content: flex-start; align-items: center; gap: 5px; }

#wooecom_state { appearance: none !important; -moz-appearance: none !important; -webkit-appearance: none !important; -ms-progress-appearance: none !important; background: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E") no-repeat right 15px top 55%; }
.rtl #wooecom_state { background: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E") no-repeat left 15px top 55%; }

.wooecom_coupon_discount_row { display: none; }
.toast-center-center { top: 50%; right: 0; transform: translateY(-50%); }
.form-hide-for-desktop { display: none !important; }
#coupon_code { height: 40px; width: 200px; }
.custom-coupon-btn button { height: 40px; line-height: 0; }
.disabled-btn { cursor: not-allowed !important; opacity: 0.7 !important; }
.coupon-field { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; flex-wrap: wrap; gap: 16px; }

.wooecom_disabled, .ip_block, .cookie_block { position: relative; }
.wooecom_disabled::before, .ip_block::before, .cookie_block::before { content: ""; left: 0; top: 0; position: absolute; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.4); cursor: not-allowed; z-index: 1000; }

.wooecom_notice { margin: 0; width: 100%; background: #d35c62; color: #fff; padding: 10px; position: relative; border-radius: 8px; }
.wooecom_notice::before { content: "\f05a"; font: var(--fa-font-solid); margin-right: 10px; }
.wooecom_notice.hidden { display: none; }

.wooecom_variations { margin: 0; padding: 0 !important; list-style: none; display: flex; flex-direction: column; gap: 20px; width: 100%; }
.wooecom_variations>li { display: flex; align-items: center; gap: 5px; flex-wrap: wrap !important; gap: 8px; }

.variation_title { position: relative; }
.variation_title input { display: none; }
.variation_title input+label { position: relative; padding-left: 40px; cursor: pointer; font-weight: 400; }
.variation_title input+label::before { content: ""; width: 27px; height: 27px; position: absolute; border-radius: 50%; border: 1px solid #d9d9d9; left: 0; top: 50%; transform: translateY(-50%); }
.variation_title input+label::after { content: ""; position: absolute; left: 7px; height: 13px; width: 13px; top: 50%; border-radius: 50%; transform: translateY(-50%); background: #d9d9d9; opacity: 0; }
.variation_title input+label:hover::after, .variation_title input:checked+label::after { opacity: 1; }

.wooecom_hidden { display: none !important; }

/* Modern UI Styles */
ul.wooecom_variations.modern_ui { display: flex; flex-direction: column; }
.attribute_modern_ui { display: flex; align-items: center; gap: 10px; }
.attribute_modern_ui>h4 { margin-right: 10px; font-size: 14px; color: #000; font-weight: 500; line-height: 1.4em; min-width: 60px; }
.attribute_inner>input { display: none; }
.attribute_inner>label { border: 1px solid #d9d9d9; font-size: 14px; color: #000; border-radius: 3px; padding: 3px 8px; line-height: 1.4em; background: #fff; box-shadow: 0 0 0 0; transition: all 0.4s ease; cursor: pointer; }
.attribute_inner>label:hover { background: #f9f9f9; }
.attribute_inner>input:checked+label { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.8); }
.attribute_inner.attr_color>label { border: 1px solid #d9d9d9; font-size: 0px; color: transparent; display: block; width: 24px; height: 24px; }
.wooecom_variations.modern_ui .variation_selection { display: none; }
li.attribute_modern_ui .attribute_inner > label{ line-height: 2.2em; }

/* RTL Styles */
.rtl .variation_title input+label { padding-left: 0px; padding-right: 40px; }
.rtl .variation_title input+label::before { content: ""; width: 27px; height: 27px; position: absolute; border-radius: 50%; border: 1px solid #d9d9d9; left: unset; right: 0; top: 50%; transform: translateY(-50%); }
.rtl .variation_title input+label::after { content: ""; position: absolute; left: unset; right: 7px; height: 13px; width: 13px; top: 50%; border-radius: 50%; transform: translateY(-50%); background: #d9d9d9; opacity: 0; }
.rtl .variation_title input+label:hover::after, .rtl .variation_title input:checked+label::after { opacity: 1; }
.rtl ul.wooecom_shipping_methods { display: flex; flex-direction: column; align-items: flex-start; }
.rtl .wooecom_notice::before { margin-right: 0; margin-left: 10px; }
.wooecom_placeholder { display: block; width: 100%; }

@media (max-width: 767px) {
  .wooecom_footer_icons { display: flex; align-items: stretch; gap: 10px; }
  .wooecom_buy_now { width: calc(100% - 112px) !important; }
  .wooecom_checkout { width: calc(65% - 20px) !important; }
  .wooecom_field_wrapper { width: 100% !important; }
  .wooecom_quantity { width: 35% !important; }
  
  .wooecom_instant_order_form.wooecom_mobile_horizontal > #wooecom_name_wrapper,
  .wooecom_instant_order_form.wooecom_mobile_horizontal > #wooecom_phone_wrapper,
  .wooecom_instant_order_form.wooecom_mobile_horizontal > #wooecom_state_wrapper,
  .wooecom_instant_order_form.wooecom_mobile_horizontal > #wooecom_city_wrapper { width: calc(50% - 10px) !important; }
}

/* --- SETTING: DESKTOP VERTICAL FIELDS --- */
@media (min-width: 768px) {
    .wooecom_instant_order_form.wooecom_desktop_vertical > .wooecom_field_wrapper {
        width: 100% !important;
    }
}

/* --- DYNAMIC BUTTON PRICE TAGS --- */
.wooecom_checkout.wooecom_btn_has_price,
.wooecom_add_to_cart_btn.wooecom_btn_has_price {
    display: flex !important;
    align-items: center;
    justify-content: space-between !important;
}

.wooecom_btn_price_tag {
    font-weight: 700;
    font-size: 15px;
    margin-inline-start: auto;
    pointer-events: none;
    white-space: nowrap;
    background: rgba(0, 0, 0, 0.15); 
    padding: 5px 12px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

/* Prevent nested WooCommerce tags from overflowing out of the tag */
.wooecom_btn_price_tag .woocommerce-Price-amount,
.wooecom_btn_price_tag bdi {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

.wooecom_btn_price_tag .woocommerce-Price-currencySymbol {
    margin-inline-start: 4px;
}