/* 12-01-2026 HDB style start */

/* Wishlist Feedback Messages - Position at top near cards */
.yith-wcwl-feedback-messages-container {
    position: fixed !important;
    top: 528px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: fit-content;
    max-width: 90%;
    z-index: 9999;
}

/* Hide WooCommerce notices wrapper from frontend */
.woocommerce-notices-wrapper {
    display: none !important;
}

/* Show Update Cart button - styled to match site design */
.woocommerce-cart-form .actions {
    text-align: center !important;
    padding: 20px 0 !important;
    margin: 20px 0 !important;
    border-top: 2px solid #e0e0e0 !important;
}

.woocommerce-cart-form button[name="update_cart"] {
    background: linear-gradient(90deg, #8B5FBF 0%, #6FA287 100%) !important;
    color: #ffffff !important;
    border: none !important;
    padding: 12px 40px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-indent: 0 !important;
    text-align: center !important;
    line-height: normal !important;
    display: inline-block !important;
    min-width: 150px !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

/* If button has aria-label, show it as content */
.woocommerce-cart-form button[name="update_cart"][aria-label]:empty::after {
    content: attr(aria-label) !important;
}

/* Force show "Update Cart" text if button is empty */
.woocommerce-cart-form button[name="update_cart"]:empty::after {
    content: "Update Cart" !important;
}

.woocommerce-cart-form button[name="update_cart"]:hover {
    background: linear-gradient(90deg, #9B6FCF 0%, #7FB297 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 15px rgba(139, 95, 191, 0.3) !important;
}

.woocommerce-cart-form button[name="update_cart"]:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}

/* Cart: hide original Update cart row (new button is below next to Confirm your booking) */
.woocommerce-cart .woocommerce-cart-form tr.lwc-update-cart-original-hidden,
.elementor-widget-woocommerce-cart .woocommerce-cart-form tr.lwc-update-cart-original-hidden {
    display: none !important;
}

/* Cart: new Update cart button (same design as original) */
.woocommerce-cart .lwc-cart-update-wrap .lwc-update-cart-below,
.elementor-widget-woocommerce-cart .lwc-cart-update-wrap .lwc-update-cart-below {
    background: linear-gradient(90deg, #8B5FBF 0%, #6FA287 100%) !important;
    color: #ffffff !important;
    border: none !important;
    padding: 12px 40px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-align: center !important;
    line-height: normal !important;
    display: inline-block !important;
    min-width: 150px !important;
    white-space: nowrap !important;
    margin: 0 !important;
}

.woocommerce-cart .lwc-cart-update-wrap .lwc-update-cart-below:hover,
.elementor-widget-woocommerce-cart .lwc-cart-update-wrap .lwc-update-cart-below:hover {
    background: linear-gradient(90deg, #9B6FCF 0%, #7FB297 100%) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(139, 95, 191, 0.3);
}

.woocommerce-cart .wc-proceed-to-checkout,
.elementor-widget-woocommerce-cart .wc-proceed-to-checkout {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    margin-top: 20px;
}

/* Disabled Confirm your booking until Update cart is clicked */
.woocommerce-cart a.checkout-button.lwc-checkout-disabled,
.elementor-widget-woocommerce-cart a.checkout-button.lwc-checkout-disabled {
    cursor: not-allowed !important;
    pointer-events: none !important;
    opacity: 0.5 !important;
}

/* Hide coupon code section on cart page (/cart/) */
.woocommerce-cart .coupon,
.woocommerce-cart td.actions .coupon,
.woocommerce-cart .e-cart-section.coupon,
.elementor-widget-woocommerce-cart .coupon,
.elementor-widget-woocommerce-cart .e-cart-section.coupon {
    display: none !important;
}

/* Proceed to Checkout Button - Match Site Design */
.elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce .wc-proceed-to-checkout .checkout-button,
a.checkout-button.button.alt.wc-forward {
    background: linear-gradient(90deg, #8B5FBF 0%, #6FA287 100%) !important;
    color: #ffffff !important;
    border: none !important;
    padding: 15px 50px !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-align: center !important;
    text-decoration: none !important;
    display: inline-block !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Hover effect for checkout button */
.elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce .wc-proceed-to-checkout .checkout-button:hover,
a.checkout-button.button.alt.wc-forward:hover {
    background: linear-gradient(90deg, #9B6FCF 0%, #7FB297 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 15px rgba(139, 95, 191, 0.3) !important;
}

/* Active/Focus state */
.elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button:active,
.elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button:focus {
    transform: translateY(0) !important;
    box-shadow: 0 2px 8px rgba(139, 95, 191, 0.2) !important;
}

/* Responsive - Mobile */
@media (max-width: 768px) {
    .elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button,
    .woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
    .woocommerce .wc-proceed-to-checkout .checkout-button,
    a.checkout-button.button.alt.wc-forward {
        padding: 12px 30px !important;
        font-size: 18px !important;
    }
}

/* Place Order Button Styling - Match Checkout Button */
.woocommerce-checkout #place_order,
.woocommerce #place_order,
button#place_order,
.woocommerce-checkout button[name="woocommerce_checkout_place_order"] {
    background: linear-gradient(90deg, #8B5FBF 0%, #6FA287 100%) !important;
    color: #ffffff !important;
    border: none !important;
    padding: 15px 50px !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-align: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 12px rgba(139, 95, 191, 0.2) !important;
}

/* Place Order Button Hover */
.woocommerce-checkout #place_order:hover,
.woocommerce #place_order:hover,
button#place_order:hover,
.woocommerce-checkout button[name="woocommerce_checkout_place_order"]:hover {
    background: linear-gradient(90deg, #9B6FCF 0%, #7FB297 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(139, 95, 191, 0.3) !important;
}

/* Place Order Button Active/Focus */
.woocommerce-checkout #place_order:active,
.woocommerce-checkout #place_order:focus,
.woocommerce #place_order:active,
.woocommerce #place_order:focus {
    transform: translateY(0) !important;
    box-shadow: 0 2px 8px rgba(139, 95, 191, 0.2) !important;
}

/* Responsive - Place Order Button Mobile */
@media (max-width: 768px) {
    .woocommerce-checkout #place_order,
    .woocommerce #place_order,
    button#place_order,
    .woocommerce-checkout button[name="woocommerce_checkout_place_order"] {
        padding: 12px 30px !important;
        font-size: 18px !important;
    }
}

/* Checkout Page Links - Login and Coupon Code */
.woocommerce-checkout .showlogin,
.woocommerce-checkout .showcoupon,
.woocommerce-info a.showlogin,
.woocommerce-info a.showcoupon {
    color: #8B5FBF !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

.woocommerce-checkout .showlogin:hover,
.woocommerce-checkout .showcoupon:hover,
.woocommerce-info a.showlogin:hover,
.woocommerce-info a.showcoupon:hover {
    color: #6FA287 !important;
    text-decoration: underline !important;
}

/* Hide billing address fields on checkout page (NOT name, company, email, phone) */
.woocommerce-checkout #billing_country_field,
.woocommerce-checkout #billing_address_1_field,
.woocommerce-checkout #billing_address_2_field,
.woocommerce-checkout #billing_city_field,
.woocommerce-checkout #billing_state_field,
.woocommerce-checkout #billing_postcode_field {
    display: none !important;
}

/* Hide shipping address fields if present */
.woocommerce-checkout #shipping_country_field,
.woocommerce-checkout #shipping_address_1_field,
.woocommerce-checkout #shipping_address_2_field,
.woocommerce-checkout #shipping_city_field,
.woocommerce-checkout #shipping_state_field,
.woocommerce-checkout #shipping_postcode_field {
    display: none !important;
}

/* Hide "Ship to a different address?" checkbox */
.woocommerce-checkout #ship-to-different-address {
    display: none !important;
}

/* Ensure essential fields are visible (including optional company field) */
.woocommerce-checkout #billing_first_name_field,
.woocommerce-checkout #billing_last_name_field,
.woocommerce-checkout #billing_company_field,
.woocommerce-checkout #billing_email_field,
.woocommerce-checkout #billing_phone_field {
    display: block !important;
}

/* Cart Table - Provider Display */
.woocommerce-cart-form .cart-provider-display {
    padding: 10px 0;
    text-align: left;
    min-width: 150px;
}

.woocommerce-cart-form .cart-provider-label {
    font-weight: 600;
    color: #666;
    font-size: 14px;
    display: inline;
    margin-right: 5px;
}

.woocommerce-cart-form .cart-store-name {
    font-weight: 600;
    color: #73ab89;
    font-size: 15px;
    display: inline;
}

.woocommerce-cart-form .cart_item .product-thumbnail {
    width: auto;
    min-width: 150px;
}

/* Remove link styling from product name in cart */
.woocommerce-cart-form .cart_item .product-name a {
    text-decoration: none;
    color: #333;
    pointer-events: auto;
}

/* New Register Form Design */

form.lwc-registration-form {
    font-family: "Lato", sans-serif;
}

form.lwc-registration-form input,
form.lwc-registration-form textarea,
form.lwc-registration-form select {
    border: 1px solid #dce1cf;
    padding: 15px 22px;
    border-radius: 12px;
    background-color: #ffffff;
}

.form-section h3 {
    border-bottom: 1px solid #000000;
    padding-bottom: 16px;
    margin: 30px 0;
    font-size: 24px;
    font-weight: 600;
}

.lwc-registration-form .form-group label {
    font-weight: 500 !important;
}

.warper_add_button {
    position: relative;
    bottom: 61px;
    right: 0;
    margin-top: 5px;
}


.pdc-add.add-tag-btn {
    background: #ffffff;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateX(-50%);
    padding: 10px;
}

.pdc-remove {
    background-color: #ffffff;
    display: flex !important;
    align-items: center;
    justify-content: center;
    color: #000000;
    position: absolute;
    right: 0;
    margin: 0;
    padding: 10px !important;
}

.pdc-remove:hover,
.pdc-remove:focus {
    background-color: #ff0000d9 !important;
    color: #ffffff !important;
    stroke: #ffffff !important;
}

svg.icon.icon-tabler.icons-tabler-outline.icon-tabler-x {
    stroke: red;
}

svg.icon.icon-tabler.icons-tabler-outline.icon-tabler-x:hover {
    stroke: rgb(255, 255, 255);
}

.pdc-add.add-tag-btn:hover,
.pdc-add.add-tag-btn:focus {
    background-color: #dce1cf !important;
    color: #000000 !important;
}

.pdc-repeater-container {
    position: relative;
}

.pdc-repeater-wrap .pdc-row {
    width: calc(100% - 50px);
}

.pdc-remove:hover svg,
.pdc-remove:focus svg {
    stroke: #ffffff;
}

.register-btn-wrapper {
    margin-top: 50px;
    text-align: center;
}

.register-btn-wrapper button {
    padding: 12px 40px !important;
}

/* Custom Vendor Registration Form Styles */
.lwc-vendor-registration-wrapper {
    max-width: 900px;
    margin: 0 auto;
    padding: 30px 20px;
}

.lwc-registration-form {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Reset conflicting repeater styles inside the custom form */
.lwc-vendor-registration-wrapper .pdc-repeater-wrap.add-remove-row-wrapper .pdc-row {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center;
}

.lwc-vendor-registration-wrapper .pdc-repeater-wrap.add-remove-row-wrapper .pdc-row input {
    justify-self: auto !important;
}

.lwc-vendor-registration-wrapper .pdc-add {
    position: static !important;
    top: auto !important;
    right: auto !important;
    margin: 0 !important;
    padding: 10px !important;
    width: 40px;
    height: 40px;
    border-radius: 8px;
}

.lwc-vendor-registration-wrapper .pdc-add.add-tag-btn {
    position: static !important;
}

.lwc-vendor-registration-wrapper .pdc-remove {
    position: static !important;
    margin: 0 !important;
}

/* Autocomplete dropdown (jQuery UI appends to body) – show above form */
/* Autocomplete dropdown: no scrollbars unless many items; no horizontal scroll */
.ui-autocomplete,
.ui-menu.ui-widget,
.ui-front.ui-autocomplete {
    z-index: 99999 !important;
    max-height: 280px;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    min-width: 0;
}
.ui-autocomplete .ui-menu-item,
.ui-menu .ui-menu-item {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.form-section {
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e9ecef;
}

.form-section:last-of-type {
    border-bottom: none;
    margin-bottom: 20px;
}

.form-section h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
    color: #333;
}

.form-row {
    display: flex;
    gap: 15px;
    margin-bottom: 18px;
    flex-wrap: wrap;
    align-items: flex-start;
}

.form-group {
    margin-bottom: 18px;
    width: 100%;
    clear: both;
}

.form-group-half {
    flex: 1;
    min-width: 250px;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
}

.form-group-third {
    flex: 1;
    min-width: 200px;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
}

.form-group-full {
    width: 100%;
    flex: 1 1 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
}

.form-row .form-group {
    margin-bottom: 0;
}

.form-group label {
    display: block;
    margin-bottom: 6px;
    font-weight: 500;
    font-size: 14px;
    color: #333;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="tel"],
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #dce1cf;
    border-radius: 8px;
    background-color: #ffffff;
    font-size: 14px;
    transition: border-color 0.3s;
    box-sizing: border-box;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: #73ab89;
}

.form-group textarea {
    resize: vertical;
    min-height: 100px;
    display: block;
    width: 100%;
}

/* About Me specific styling */
.form-group textarea#about_me {
    min-height: 150px;
}

.form-group .form-description {
    margin-top: 8px;
    color: #666;
    font-size: 13px;
    font-style: italic;
}

.pdc-location-repeater .pdc-row {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-bottom: 12px;
    flex-wrap: nowrap;
    width: 100%;
    position: relative;
}

.pdc-location-repeater .pdc-location-region {
    flex: 0 0 150px;
    min-width: 150px;
    border: 1px solid #dce1cf;
    padding: 12px 15px;
    border-radius: 8px;
    background-color: #ffffff;
    font-size: 14px;
    height: auto;
}

.pdc-location-repeater .pdc-location-detail {
    flex: 1;
    min-width: 0;
    border: 1px solid #dce1cf;
    padding: 12px 15px;
    border-radius: 8px;
    background-color: #ffffff;
    font-size: 14px;
}

.pdc-tax-repeater .pdc-row,
.pdc-location-repeater .pdc-row {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-bottom: 12px;
    flex-wrap: nowrap;
    width: 100%;
    position: relative;
}

.pdc-repeater-wrap {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.pdc-tax-repeater,
.pdc-location-repeater {
    width: 100%;
}

.add-more-text {
    font-size: 13px;
    color: #666;
    margin-left: 8px;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    flex-shrink: 0;
    height: 40px;
}

.pdc-row {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    flex-wrap: nowrap;
    margin-bottom: 10px;
}

.pdc-row:last-child {
    margin-bottom: 0;
}

.pdc-row .pdc-add {
    flex-shrink: 0;
    margin-top: 0;
    align-self: center;
    vertical-align: middle;
}

.pdc-tax-repeater .pdc-term-input {
    flex: 1;
    min-width: 0;
    height: 40px;
    box-sizing: border-box;
}

.pdc-tax-repeater .pdc-row {
    align-items: center;
}

.pdc-tax-repeater .pdc-row input,
.pdc-tax-repeater .pdc-row button,
.pdc-tax-repeater .pdc-row span {
    vertical-align: middle;
}

/* Repeater fields in form-group-third */
.form-group-third .pdc-tax-repeater,
.form-group-third .pdc-location-repeater {
    width: 100%;
    margin-top: 0;
}

.form-group-third .pdc-tax-repeater .pdc-row {
    flex-wrap: nowrap;
    width: 100%;
}

.form-group-third .pdc-tax-repeater .pdc-term-input {
    flex: 1;
    min-width: 0;
}

.form-group-third .pdc-location-repeater .pdc-row {
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.form-group-third .pdc-location-repeater .pdc-add {
    order: 1;
    flex-shrink: 0;
    align-self: center;
}

.form-group-third .pdc-location-repeater .pdc-location-region {
    order: 2;
    flex: 1;
    min-width: 120px;
    margin-bottom: 0;
}

.form-group-third .pdc-location-repeater .pdc-location-detail {
    order: 3;
    flex: 1;
    min-width: 150px;
    margin-bottom: 0;
}

.form-group-third .pdc-location-repeater .add-more-text {
    order: 4;
    width: 100%;
    margin-top: 5px;
    margin-left: 0;
    flex-basis: 100%;
}

.form-group-third .add-more-text {
    font-size: 11px;
    margin-left: 5px;
    white-space: normal;
}

.form-group-third .pdc-add {
    align-self: flex-start;
}

/* Responsive - stack on mobile */
@media (max-width: 768px) {
    .form-row {
        flex-direction: column;
    }
    
    .form-group-half,
    .form-group-third {
        min-width: 100%;
        width: 100%;
    }
    
    .form-group-third .pdc-row {
        flex-wrap: wrap;
    }
    
    .form-group-third .pdc-location-region {
        flex: 0 0 100%;
        margin-bottom: 10px;
    }
    
    .form-group-third .pdc-location-detail {
        flex: 1;
        min-width: 100%;
    }
}

.pdc-add {
    background: #ffffff;
    border: 1px solid #dce1cf;
    border-radius: 8px;
    padding: 10px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    vertical-align: middle;
}

.pdc-add:hover {
    background-color: #dce1cf;
}

.pdc-add svg {
    width: 18px;
    height: 24px;
    stroke: #000000;
}

.pdc-remove {
    background: #ffffff;
    border: 1px solid #dce1cf;
    border-radius: 12px;
    padding: 10px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    flex-shrink: 0;
}

.pdc-remove:hover {
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.pdc-remove svg {
    width: 18px;
    height: 18px;
    stroke: #dc3545;
}

.lwc-form-message {
    padding: 15px;
    margin: 20px 0;
    border-radius: 12px;
}

.lwc-form-message.success {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.lwc-form-message.error {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.form-group .required {
    color: #ff0000;
}

.form-description {
    font-size: 12px;
    color: #666;
    margin-top: 5px;
}

.register-btn-wrapper {
    text-align: center;
    margin-top: 30px;
    padding-top: 20px;
}

.register-btn-wrapper button {
    min-width: 150px;
}

.lwc-register-btn {
    background: linear-gradient(90deg, #8B5FBF 0%, #6FA287 100%) !important;
    color: #ffffff !important;
    border: none !important;
    padding: 15px 50px !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-transform: none !important;
    box-shadow: 0 4px 15px rgba(139, 95, 191, 0.3) !important;
}

.lwc-register-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(139, 95, 191, 0.4) !important;
    opacity: 0.9 !important;
}

.lwc-register-btn:disabled,
.lwc-register-btn.lwc-register-btn-loading {
    cursor: not-allowed !important;
    pointer-events: none !important;
}
.lwc-register-btn:hover:disabled,
.lwc-register-btn.lwc-register-btn-loading:hover {
    transform: none !important;
}
.lwc-register-btn .lwc-btn-loader {
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255,255,255,0.4);
    border-top-color: #fff;
    border-radius: 50%;
    animation: lwc-btn-spin 0.7s linear infinite;
    vertical-align: middle;
    margin-right: 8px;
}
@keyframes lwc-btn-spin {
    to { transform: rotate(360deg); }
}

/* 12-01-2026 HDB style End */

/* 19-12-2025 HDB style start */

.my-registrants-page {
    font-family: "Lato", sans-serif;
}

.order-actions a {
    font-size: 16px !important;
    line-height: 22px !important;
}

.order-header h3 {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.order-header.active {
    border-radius: 10px 10px 0 0;
    border-bottom: 0;
}

.product-registrants {
    background-color: #f0f5e1;
    border: 1px solid #73ab89;
    border-radius: 0 0 10px 10px;
}

table.registrants-details-table tr th {
    font-size: 18px;
    background-color: #f0f5e1;
}

table.registrants-details-table tbody tr td {
    font-family: Lato;
    font-weight: 400;
    font-style: Regular;
    font-size: 16px;
    line-height: 140%;
    letter-spacing: 0%;
}

table.registrants-details-table tbody tr:hover {
    background-color: transparent !important;
}

table.registrants-details-table tbody tr {
    border-bottom: 1px solid #d3d3d3 !important;
}

table.registrants-details-table tbody tr:last-child {
    border: unset !important;
}

/* My Account My Orders table – match attached design (gradient header, rounded corners, clean rows) */
table.woocommerce-orders-table.woocommerce-MyAccount-orders {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    background: #fff;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders thead tr {
    background: linear-gradient(90deg, #7DB99C 0%, #6B97A1 35%, #997EB9 100%) !important;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders thead th {
    color: #F8F8F8 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border: none !important;
    padding: 14px 16px !important;
    text-align: left !important;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders thead th:first-child {
    border-radius: 10px 0 0 0;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders thead th:last-child {
    border-radius: 0 10px 0 0;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders thead th .nobr {
    color: inherit !important;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody tr {
    background: #ffffff;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody tr:nth-child(even) {
    background: #fafafa;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody td,
table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody th {
    color: #333333 !important;
    padding: 14px 16px !important;
    border-top: 1px solid #eeeeee !important;
    border-right: 1px solid #eeeeee !important;
    font-size: 14px !important;
    vertical-align: middle !important;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody td:last-child,
table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody th:last-child {
    border-right: none !important;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody tr:last-child td:first-child,
table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody tr:last-child th:first-child {
    border-radius: 0 0 0 10px;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody tr:last-child td:last-child {
    border-radius: 0 0 10px 0;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody a[href*="view-order"] {
    color: #2E8B57 !important;
    text-decoration: underline !important;
    font-weight: 500 !important;
}

table.woocommerce-orders-table.woocommerce-MyAccount-orders tbody a[href*="view-order"]:hover {
    color: #237347 !important;
}

/* ========== My Orders page – theme table .lwc-orders-table (same design as above) ========== */
.lwc-orders-table-wrapper {
    margin: 0 0 24px;
}

.lwc-orders-table-wrapper .lwc-orders-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    background: #fff;
}

.lwc-orders-table-wrapper .lwc-orders-table thead tr {
    background: linear-gradient(90deg, #7DB99C 0%, #6B97A1 35%, #997EB9 100%) !important;
}

.lwc-orders-table-wrapper .lwc-orders-table thead th {
    color: #F8F8F8 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border: none !important;
    padding: 14px 16px !important;
    text-align: left !important;
}

.lwc-orders-table-wrapper .lwc-orders-table thead th:first-child {
    border-radius: 10px 0 0 0;
}

.lwc-orders-table-wrapper .lwc-orders-table thead th:last-child {
    border-radius: 0 10px 0 0;
}

.lwc-orders-table-wrapper .lwc-orders-table tbody tr {
    background: #ffffff;
}

.lwc-orders-table-wrapper .lwc-orders-table tbody tr:nth-child(even) {
    background: #fafafa;
}

.lwc-orders-table-wrapper .lwc-orders-table tbody td {
    color: #333333 !important;
    padding: 14px 16px !important;
    border-top: 1px solid #eeeeee !important;
    border-right: 1px solid #eeeeee !important;
    font-size: 14px !important;
    vertical-align: middle !important;
}

.lwc-orders-table-wrapper .lwc-orders-table tbody td:last-child {
    border-right: none !important;
}

.lwc-orders-table-wrapper .lwc-orders-table tbody tr:last-child td:first-child {
    border-radius: 0 0 0 10px;
}

.lwc-orders-table-wrapper .lwc-orders-table tbody tr:last-child td:last-child {
    border-radius: 0 0 10px 0;
}

.lwc-orders-table-wrapper .lwc-orders-table tbody td.order-number a {
    color: #2E8B57 !important;
    text-decoration: underline !important;
    font-weight: 500 !important;
}

.lwc-orders-table-wrapper .lwc-orders-table tbody td.order-number a:hover {
    color: #237347 !important;
}

/* View order: Leave a review link (eligible items only) */
.lwc-order-details .lwc-leave-review-wrap {
    display: block;
    margin-top: 6px;
}
.lwc-order-details .lwc-leave-review-link {
    font-size: 0.9rem;
    color: #2E8B57;
    text-decoration: underline;
}
.lwc-order-details .lwc-leave-review-link:hover {
    color: #237347;
}

/* Leave a review popup */
.lwc-review-popup {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.2s, opacity 0.2s;
}
.lwc-review-popup.lwc-review-popup-open {
    visibility: visible;
    opacity: 1;
}
.lwc-review-popup-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
}
.lwc-review-popup-box {
    position: relative;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
    max-width: 440px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    padding: 24px 28px;
    /* Gradient border like other popups (green to purple) */
    border: 3px solid transparent;
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(90deg, #73ab89 0%, #a877de 100%) border-box;
}
.lwc-review-popup-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    padding: 0;
    border: none;
    background: transparent;
    font-size: 28px;
    line-height: 1;
    color: #666;
    cursor: pointer;
}
.lwc-review-popup-close:hover {
    color: #333;
}
.lwc-review-popup-title {
    margin: 0 0 8px;
    font-size: 1.35rem;
}
.lwc-review-popup-product-name {
    margin: 0 0 20px;
    font-size: 0.95rem;
    color: #555;
}
#lwc-review-popup .lwc-review-form,
#lwc-review-popup .lwc-review-form * {
    box-sizing: border-box;
}
#lwc-review-popup .lwc-review-form .lwc-review-label {
    display: block !important;
    margin-bottom: 6px;
    font-weight: 600;
    font-size: 0.9rem;
}
#lwc-review-popup .lwc-review-rating-wrap {
    margin-bottom: 18px;
    display: block !important;
    visibility: visible !important;
}
#lwc-review-popup .lwc-review-stars {
    display: flex !important;
    flex-direction: row !important;
    gap: 6px !important;
    margin-top: 8px !important;
    visibility: visible !important;
}
#lwc-review-popup .lwc-review-star {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    min-width: 40px !important;
    min-height: 40px !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
    font-size: 32px !important;
    line-height: 1 !important;
    color: #ccc !important;
    cursor: pointer !important;
    transition: color 0.15s !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    font-family: Arial, "Helvetica Neue", sans-serif !important;
}
#lwc-review-popup .lwc-review-star {
    text-indent: -9999px !important;
    overflow: hidden !important;
}
/* Star via CSS so it always shows */
#lwc-review-popup .lwc-review-star::before {
    content: '\2605' !important;
    text-indent: 0 !important;
    display: block !important;
}
#lwc-review-popup .lwc-review-star:hover,
#lwc-review-popup .lwc-review-star.lwc-star-selected {
    color: #ffc107 !important;
}
.lwc-review-comment-wrap {
    margin-bottom: 20px;
}
.lwc-review-comment {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-family: inherit;
    font-size: 0.95rem;
    resize: vertical;
}
#lwc-review-popup .lwc-review-actions {
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    margin-top: 16px !important;
    visibility: visible !important;
}
#lwc-review-popup .lwc-review-cancel,
#lwc-review-popup .lwc-review-submit {
    display: inline-block !important;
    visibility: visible !important;
    padding: 12px 24px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    cursor: pointer !important;
}
#lwc-review-popup .lwc-review-cancel {
    border: 1px solid #ccc !important;
    background: #fff !important;
    color: #333 !important;
}
#lwc-review-popup .lwc-review-submit {
    border: none !important;
    background: #2E8B57 !important;
    color: #fff !important;
}
#lwc-review-popup .lwc-review-submit:hover:not(:disabled) {
    background: #237347 !important;
}
#lwc-review-popup .lwc-review-submit:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}
.lwc-review-message {
    margin-top: 12px;
    font-size: 0.9rem;
}
.lwc-review-error {
    color: #c00;
}
.lwc-review-success {
    color: #2E8B57;
}
.lwc-review-submitted {
    font-size: 0.9rem;
    color: #2E8B57;
    font-weight: 500;
}

.woocommerce form .show-password-input.display-password::before,
.woocommerce-page form .show-password-input.display-password::before {
    position: absolute;
    top: -10px;
}

.woocommerce form .show-password-input::before,
.woocommerce-page form .show-password-input::before {
    position: absolute;
    right: 0;
    top: -10px;
}

input:focus {
    outline: unset;
}

/* 19-12-2025 HDB style end */

/* 18-12-2025 HDB style start */

.offcanvas-package-detail {
    min-width: 100% !important;
}

.offcanvas-product-content ul {
    padding-left: 20px !important;
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
}

.offcanvas-product-content p {
    margin-bottom: 20px !important;
}

.simple-price .woocommerce-Price-amount.amount {
    font-size: 20px;
}

.add-to-cart-wrapper .add_to_cart_button.loop-register-btn.disabled {
    cursor: not-allowed;
    opacity: 0.5;
}

.woocommerce-order-details table tr td {
    padding: 16px 0 !important;
    vertical-align: middle;
}

.woocommerce-order-details table tfoot tr th {
    vertical-align: middle;
    font-size: 18px !important;
}

.woocommerce-order-details table ul.wc-item-meta {
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    margin-top: 10px;
}

strong.wc-item-meta-label {
    margin-bottom: 10px;
}

.woocommerce-MyAccount-content {
    font-family: "Lato", sans-serif;
}

/* 18-12-2025 HDB style end */

/* 17-12-2025 HDB style start */
.variation-item-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 14px;
    font-family: "Lato", sans-serif !important;
    color: #000000;
}

.lightworker-variation-label input {
    width: 18px;
    height: 18px;
    accent-color: #a877de;
}

.add-to-cart-wrapper .add_to_cart_button.loop-register-btn {
    background: linear-gradient(to right, #b2d4ab 0%, #c2a0e8 73%);
    padding: 8px 14px;
    border-radius: 6px;
    color: #ffffff;
    font-family: "Lato", sans-serif !important;
    font-size: 16px;
    font-weight: 700;
    display: inline-block;
}

.lightworker-variation-label {
    display: flex;
    align-items: center;
    gap: 6px;
}

.add-to-cart-wrapper {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 20px;
    padding-top: 20px;
    border-top: 2px dashed #999999;
    margin-top: 20px;
}

.lightworker-loop-variation .variation-group .variation-group-title {
    font-size: 22px;
    margin: 0 0 12px 0 !important;
    font-family: "Cormorant Garamond";
    line-height: 26px;
    font-weight: 700;
    color: #000000;
}

.lightworker-loop-variation {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.add-to-cart-wrapper .yith-add-to-wishlist-button-block {
    margin: unset !important;
}

.lightworker-cards-wrapper {
    height: 100% !important;
}

/* Remove underline from store name / card title (e.g. Saimstore) on healing-practices cards */
.lightworker-cards-wrapper .e-con-inner > .e-con:first-of-type .elementor-heading-title a,
.lightworker-cards-wrapper .e-con-inner > div:first-child .elementor-heading-title a {
    text-decoration: none !important;
}

.select2-container[class*="lgefep-taxonomy-filter-"] li.select2-results__option.select2-results__option--highlighted {
    background: #f0f5e1 !important;
}

.select2-container .select2-dropdown {
    border: 1px solid #73ab89 !important;
    border-radius: 0 !important;
    border-top: 0 !important;
}

.lgefep-filter-bar-wrapper span.select2.select2-container .select2-selection--single {
    border-radius: 10px !important;
}

.lightworker-profile-card-wrapper ul.lwc-healing-list li.lwc-healing-item {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* 17-12-2025 HDB style End */

.select2-dropdown {
    z-index: 1 !important;
}

p {
    margin: 0 !important;
}

p.woocommerce-form-row {
    margin-bottom: 16px !important;
}

/* 04-12-2025 style start HDB */
table.registrants-table th {
    font-family: auto;
    font-size: 14px !important;
}

.product-quantity .quantity:has(input[type="hidden"]) {
    display: none !important;
}

tr.woocommerce-cart-form__cart-item.cart_item .product-name a {
    color: #000 !important;
    font-size: 20px !important;
    font-family: "Cormorant Garamond";
    font-weight: 700;
    line-height: 30px;
}

tr.woocommerce-cart-form__cart-item.cart_item .event-meta {
    color: #000 !important;
    font-size: 14px !important;
    font-family: "lato";
    font-weight: 400;
    line-height: 24px;
}

.registrant-fields-wrapper {
    margin-bottom: 30px;
}

.registrant-block h4 {
    font-size: 18px;
    font-weight: 700;
    line-height: 28px;
    margin-bottom: 28px !important;
}

.registrant-fields-wrapper .registrant-block label {
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 400;
    color: #000000;
    margin-bottom: 10px !important;
}

.registrant-fields-wrapper .registrant-block .form-row.form-row-wide {
    padding: 0 !important;
    margin-bottom: 10px !important;
}

.registrant-fields-wrapper .registrant-block input {
    border: 1px solid #dce1d0;
    padding: 15px 22px !important;
    border-radius: 12px;
}

.coupon.e-cart-section .coupon-col-start input {
    border: 1px solid #dce1d0 !important;
    padding: 15px 22px !important;
    border-radius: 12px !important;
    color: #000000 !important;
    font-size: 16px !important;
    line-height: 22px !important;
}

button.button.e-apply-coupon {
    border: 0 !important;
    font-size: 16px !important;
    font-family: Lato, sans-serif !important;
    font-weight: 600 !important;
    padding: 14px !important;
    border-radius: 12px !important;
}

.e-shop-table.e-cart-section {
    padding: 0 !important;
}

.woocommerce-cart table.shop_table.cart.woocommerce-cart-form__contents {
    border: 1px solid transparent !important;
    margin-bottom: 60px !important;
    background:
        linear-gradient(#f8f3f9, #f8f3f9) padding-box,
        linear-gradient(90deg, #73a8b9, #a877de) border-box !important;
    background-clip: padding-box, border-box !important;
    overflow: hidden;
    padding: 0px;
}

.woocommerce-cart table.shop_table tr td {
    padding: 10px 12px !important;
}

.woocommerce-cart table.shop_table tr th {
    padding: 16px 12px !important;
    font-family: "Cormorant Garamond", Sans-serif !important;
    font-size: 18px !important;
    line-height: 22px !important;
    font-weight: 700 !important;
}

.quantity button.minus,
.quantity button.plus {
    padding: 12px !important;
    color: #000000;
    background: #0000 !important;
}

.quantity {
    border: 1px solid #e3dfe5;
    width: fit-content;
    padding: 1px 30px !important;
    border-radius: 50px;
    display: flex;
    align-items: center;
    gap: 2px;
}

.quantity input {
    padding: 12px !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    border: 0 !important;
    text-align: center !important;
}

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

.quantity button.minus:hover,
.quantity button.plus:hover {
    background-color: transparent !important;
}

.quantity input:focus {
    outline: 0;
}

.cart_totals.calculated_shipping h2 {
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 28px !important;
    margin-bottom: 28px !important;
}

.woocommerce-cart .cart_totals.calculated_shipping tr td {
    padding: 0 !important;
}

/* 04-12-2025 style end HDB */

/* wpml language flag hide by css -  */
.wpml-ls-legacy-list-vertical .wpml-ls-flag {
    display: none !important;
    vertical-align: middle;
}

/* ///////////////////////////////////////////// */

.woocommerce-product-rating {
    margin-bottom: 20px !important;
}

.lw-rating .star-rating {
    letter-spacing: 8px;
    width: 8.4em !important;
}

.lw-rating .star-rating::before {
    color: #c2a0e8 !important;
}

.lw-rating .star-rating span::before {
    color: #c2a0e8 !important;
}

.lw-rating .review-counts {
    text-align: right;
}

/* cart page table header color change by css */

table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents thead tr {
    background: linear-gradient(90deg, #73ab89 0%, #a877de 100%);
}

table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents thead tr th {
    color: #fff;
    padding: 19px 0px;
}

.registrant-field.error {
    border-color: #ff0000 !important;
    background-color: #fff8f8 !important;
}

.registrant-fields-cell {
    padding: 20px !important;
}

.registrant-fields-wrapper .form-row {
    margin-bottom: 15px;
}

.registrant-fields-wrapper label {
    display: block;
    margin-bottom: 5px;
    font-weight: 600;
}

.registrant-fields-wrapper input {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-sizing: border-box;
}

.registrant-fields-wrapper .required {
    color: #ff0000;
}

/* ----------------------------------------------------------css for front end style registrant  */
/* * Styles for the Registrant Details table. 
 * Ensure this CSS is loaded in the relevant WooCommerce admin and email contexts.
 */

.registrants-table {
    width: 100%;
    border-collapse: collapse;
    margin: 10px 0;
    /* Optional: Add a light shadow or subtle background for clarity */
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.registrants-table-header-row {
    background: #f1f1f1;
}

.registrants-table-cell {
    padding: 10px 8px;
    /* Slightly increased padding for better readability */
    text-align: left;
    border: 1px solid #ddd;
    /* Ensure border uses the primary table separator color */
}

/* Style for the first column (the 'Registrant 1, Registrant 2' labels) */
.registrants-table-title-cell {
    font-weight: 600;
    /* Slightly bolder than standard text */
    background-color: #fafafa;
    /* Subtle background for the title column */
}

/* Optional: Add hover effect for admin use */
/* .registrants-table tbody tr:hover {
    background-color: #f9f9f9;
}
 */
/* Remove margin from the wrapper if it causes layout issues in some contexts */
.registrants-table-wrapper {
    /* Container for layout if needed */
    overflow-x: auto;
    /* Ensures responsiveness if many columns exist */
}

/* share icons css for share button0 */

/* css make header sticky  */

.sticky-active .inner-section.e-flex.e-con.e-child {
    background: #000 !important;
    margin-top: 16px;
}

.sticky-active .inner-section2.e-flex.e-con.e-child {
    margin-top: 16px;
}

.sticky-active {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    animation: stickyFade 0.3s ease;
    z-index: 999;
}

@keyframes stickyFade {
    from {
        transform: translateY(-20px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* sticky header end here  */
.registrant-fields-wrapper .registrant-block {
    border: solid 1px #73ab89;
    padding: 30px 42px;
    border-radius: 16px;
    margin-bottom: 60px;
}

.registrant-fields-wrapper .registrant-block:last-child {
    margin-bottom: 0px;
}

#cart-page-tr .e-shop-table.e-cart-section {
    border: none;
    text-align: left !important;
}

/* css for custom add to cart button  17-12-2025 */
.status-canceled {
    background-color: #fff0f0 !important;
    color: #ff0000 !important;
}

.add-to-cart-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}

.variation-group .variation-item-wrap:not(:last-child) {
    margin-bottom: 10px;
}

span.woocommerce-Price-amount.amount {
    font-family: "Lato";
    font-weight: 700;
    font-size: 16px;
    line-height: 130%;
    color: #0c0d0e;
}

.variation-price del {
    color: #73ab89;
    margin-right: 5px;
}

.variation-price del .woocommerce-Price-amount {
    color: inherit;
}

.variation-price ins {
    font-family: "Lato";
    font-weight: 700;
    font-size: 16px;
    line-height: 130%;
    color: #0c0d0e;
    text-decoration: none;
}

/* registration form desing my account page - 18-12-2025 */
.order-registrants-section {
    background: #fff;
    border-radius: 8px;
    margin-bottom: 30px;
    overflow: hidden;
}

.order-header {
    cursor: pointer;
    background: #f0f5e1;
    border: 1px solid #73ab89;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    box-shadow: 2px 2px 2px 0px #0000001a;
    border-radius: 10px;
}

.order-registrants-section h3 {
    font-family: "Lato";
    font-size: 20px !important;
    margin-bottom: 0px !important;
}

.order-actions a {
    color: #ffffff !important;
    background: linear-gradient(90deg, #73ab89 0%, #a877de 100%) !important;
}

.order-date {
    color: #666;
    font-weight: normal;
}

.order-status {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 12px;
    line-height: 22px;
    font-weight: 600;
}

.status-completed {
    background: #d4edda;
    color: #155724;
}

.status-processing {
    background: #cce5ff;
    color: #004085;
}

.status-on-hold {
    background: #fff3cd;
    color: #856404;
}

.product-registrants {
    display: none;
    padding: 20px 20px 0 20px;
}

.product-registrants h4 {
    margin: 0 0 15px 0;
    color: #444;
    font-size: 16px;
    padding-bottom: 10px;
    border-bottom: 1px dashed #eee;
}

.product-registrants small {
    color: #666;
    font-weight: normal;
    margin-left: 8px;
}

.registrants-table-container {
    overflow-x: auto;
    margin-top: 15px;
}

.registrants-details-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 600px;
}

.registrants-details-table th {
    background: #ffffff;
    padding: 12px 15px;
    text-align: left;
    font-weight: 600;
    color: #000000;
    border-bottom: 1px solid #d3d3d3 !important;
}

.registrants-details-table td {
    padding: 12px 15px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
}

.registrant-number {
    font-weight: bold;
    color: #337ab7;
}

.registrant-field {
    word-break: break-word;
}

.registrant-email {
    color: #337ab7;
}

.order-actions .button {
    padding: 8px 16px;
    font-size: 14px;
}

.woocommerce-message {
    background: #f8f9fa;
    border: 1px solid #e0e0e0;
    padding: 20px;
    border-radius: 8px;
    text-align: center;
}

/* Menu icon */
.woocommerce-MyAccount-navigation-link--my-registrants a:before {
    content: "";
    margin-right: 8px;
}

button.show-password-input [type="button"]:focus {
    all: inherit !important;
}

/* -----------------------------------custom css vendor acf sync file edits -------------------------- */
div#acf_heading {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}

.additional_user_info {
    width: 100%;
}

div#acf_heading p {
    width: 39% !important;
    font-size: 15px !important;
}

div#acf_heading input,
#acf_heading select {
    width: 60% !important;
}

div#acf_heading label {
    width: 50% !important;
    text-align: left !important;
}

.wcfm-wp-fields-uploader.wcfm_ele.wcfm_img_uploader {
    display: flex;
    gap: 20px;
}

#profile_pic_button,
#profile_pic_remove_button {
    width: 100px !important;
    background-color: transparent;
    font-family: "Cormorant Garamond", Sans-serif;
    font-size: 16px;
    line-height: 100%;
    font-weight: 700;
    background-image: linear-gradient(90deg, var(--e-global-color-a7a522a) 0%, var(--e-global-color-307b427) 100%);
    margin-bottom: 20px;
}

/* order page - registrants table css  */
.woocommerce-orders-table__cell-order-actions a.woocommerce-button.button.view,
a.woocommerce-button.button.wc-cancel-order,
.wc-cancel-main .wc-cancel-buttons .wc-cancel-confirm {
    font-family: "Cormorant Garamond" !important;
    font-weight: 700;
    font-style: Bold;
    font-size: 18px !important;
    line-height: 100%;
    text-align: center;
    color: #fff !important;
    background: linear-gradient(90deg, #73ab89 0%, #a877de 100%) !important;

    margin-right: 10px !important;
    padding: 10px 20px !important;
}

.wc-cancel-main .wc-cancel-buttons .wc-cancel-confirm {
    background-color: red !important;
}

button.btn.btn-primary.wc-cancel-close {
    color: #02581c !important;
    background-color: #fff !important;
    border: 1px solid #02581c !important;
    padding: 10px 20px !important;
    font-size: 16px;
    line-height: 16px;
}

li.wc_payment_method.payment_method_qfpay label img {
    width: 64px;
    padding: 5px !important;
}

.event-meta {
    font-size: 16px;
    font-weight: 600;
}

/* cancellation popup design css  */
.wc-cancel-head {
    font-family: "Cormorant Garamond" !important;
    font-weight: 700 !important;
    font-style: Bold;
    font-size: 25px !important;
    line-height: 48px;
    letter-spacing: 0%;
    color: red;
    text-align: left;
}

.wc-cancel-main.fancybox-content {
    padding: 20px 30px;
}

p.refund-notice.notranslate {
    font-family: "Lato";
    font-weight: 400;
    font-size: 16px;
    line-height: 140%;
    letter-spacing: 0%;
}

/* 26-12-2025 vendor page css start */
#wcfm_membership_container .select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 50% !important;
    transform: translateY(-50%) !important;
}

#wcfm_membership_container .select2-container--default .select2-selection--single .select2-selection__rendered,
#wcfm_membership_container .select2-search input {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#wcfm_membership_container .select2-container {
    min-height: 52px !important;
    background-color: #ffffff !important;
    border: 1px solid #dce1cf !important;
    border-radius: 12px 12px 12px 12px !important;
    padding: 8px !important;
}

#wcfm_membership_container .select2-container .select2-selection {
    border: 0 !important;
    padding: 0 !important;
}

#wcfm_membership_container #wcfm_membership_registration_form_expander input,
#wcfm_membership_container #wcfm_membership_registration_form_expander textarea,
#wcfm_membership_container #wcfm_membership_registration_form_expander select {
    background-color: #ffffff !important;
    border: 1px solid #dce1cf !important;
    border-radius: 12px 12px 12px 12px !important;
    padding: 14px 16px !important;
    box-shadow: unset !important;
    font-size: 16px !important;
    line-height: 22px !important;
    color: #000000 !important;
}

#wcfm_membership_container button.pdc-remove {
    color: #ff3131 !important;
    padding: 0 !important;
    text-align: center;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 16px;
}

#wcfm_membership_container .pdc-row {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 10px;
}

#wcfm_membership_container .warper_add_button {
    display: flex;
    justify-content: end;
    position: relative;
}

#wcfm_membership_container .warper_add_button .pdc-add {
    padding: 0;
    position: absolute;
    right: 5px;
    padding-top: 5px;
}

#wcfm_membership_container .warper_add_button .pdc-add:hover,
#wcfm_membership_container .warper_add_button .pdc-add:focus {
    background-color: transparent !important;
}

.wcfm-membership-wrapper {
    font-family: Lato, sans-serif;
}

#wcfm_membership_container p.wcfm_title strong,
#wcfm_membership_container span.wcfm_title strong {
    font-style: normal !important;
}

.wcfm-membership-wrapper h2,
.wcfm-membership-wrapper h3 {
    margin-bottom: 30px;
    font-weight: 600;
    font-size: 26px;
    border-bottom: 1px solid #000000;
    padding-bottom: 10px !important;
    width: fit-content;
}

#wcfm_membership_container .select2-container,
#wcfm_membership_container .select2-container .select2-selection {
    min-height: 52px !important;
}

/* 30-12-2025  */
#wcfmvm_aboutme_note {
    position: relative;
    text-align: right;
    width: 100%;
    top: -19px;
}

.pdc-repeater-wrap.add-remove-row-wrapper .pdc-row {
    display: grid !important;
    grid-template-columns: 1fr 30px;
}

.pdc-repeater-wrap.add-remove-row-wrapper .pdc-row input {
    justify-self: end;
}

/* .pdc-repeater-wrap .pdc-row:last-child {
    margin-right: 45px;
} */

.pdc-add {
    position: relative;
    top: -71px;
    right: -10px;
    margin-bottom: -50px;
}

/* --------------------------------------------------------- */
.wcfm-collapse .pdc-add {
    position: relative;
    top: -14px;
    right: 0px;
    margin-bottom: -50px;
    padding: 0px !important;
}

#wcfm_membership_container button.pdc-remove:hover {
    background-color: transparent !important;
}


.lwc-cancel-reasons button.lwc-btn-cancel-popup {
    background: #aa3636;
}
    
a.lwc-leave-review-link {
    font-size: 13px !important;
    background: #928cbb;
    color: white !important;
    padding: 10px 5px;
    border-radius: 8px;
    text-decoration: none !important;
}
/* Responsive CSS */

@media (max-width: 900px) {
    #cart-page-tr .e-shop-table.e-cart-section {
        border: none;
        text-align: left !important;
    }

    .registrant-fields-wrapper .registrant-block {
        margin-left: -30px;
        margin-right: -30px;

        text-align: left !important;
    }

    td.registrant-fields-cell:before {
        content: "" !important;
    }

    .elementor-widget-woocommerce-cart .woocommerce table.cart tr {
        padding: 0px !important;
    }
}

@media (max-width: 768px) {
    .order-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .product-registrants {
        padding: 15px;
    }

    .registrants-details-table th,
    .registrants-details-table td {
        padding: 8px 10px;
        font-size: 14px;
    }
}

@media (max-width: 699px) {
    .lwc-registration-form .form-group {
        flex-direction: column;
    }

    .lwc-registration-form .form-group label {
        width: 100%;
        margin-bottom: 10px;
    }

    .lwc-registration-form .pdc-repeater-container {
        width: 100%;
    }

    .lwc-form-container {
        padding: 20px;
    }
}

@media (max-width: 640px) {
    .pdc-repeater-wrap.add-remove-row-wrapper .pdc-row input {
        justify-self: start;
        width: 100% !important;
    }

    #wcfm_membership_container .pdc-row {
        justify-content: start;
    }

    .pdc-repeater-wrap input {
        width: calc(100% - 20px) !important;
    }

    #wcfm_membership_container .select2-container {
        width: 100% !important;
    }

    .select2-container .select2-selection--single {
        min-width: 100% !important;
    }

    .wcfm-membership-wrapper h2,
    .wcfm-membership-wrapper h3 {
        font-size: 20px;
        line-height: 30px;
    }
}

/* Blog / cards: store name + eye + date in one row (structure: .e-con-inner > .blog-store-title + .e-con-full > icon-list + icon-list) */
.lightworker-cards-wrapper .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con) {
    display: grid !important;
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0.5rem 0.75rem;
    align-items: start;
}
.lightworker-cards-wrapper .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con) > *:nth-child(1),
.lightworker-cards-wrapper .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con) > *:nth-child(2),
.lightworker-cards-wrapper .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con) > *:nth-child(3) {
    grid-column: 1 / -1;
}
.lightworker-cards-wrapper .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con) > .blog-store-title {
    grid-column: 1;
    grid-row: 4;
    margin: 0;
    align-self: center;
}
.lightworker-cards-wrapper .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con) > .e-con-full.e-con {
    display: contents !important;
}
.lightworker-cards-wrapper .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con) > .e-con-full.e-con > .elementor-widget-icon-list:first-of-type {
    grid-column: 2;
    grid-row: 4;
    align-self: center;
    min-width: 0;
    margin-right: 0.25rem;
}
.lightworker-cards-wrapper .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con) > .e-con-full.e-con > .elementor-widget-icon-list:last-of-type {
    grid-column: 3;
    grid-row: 4;
    align-self: center;
    min-width: 0;
    margin-left: 0.25rem;
    margin-right: 0.5rem;
}

/* Fallback when class "eye-of-blog" or "blog-card-meta-row" is on the card container */
.blog-card-meta-row .e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con),
.eye-of-blog.e-con-inner:has(> .blog-store-title):has(> .e-con-full.e-con),
.lightworker-cards-wrapper.eye-of-blog .e-con-inner {
    display: grid !important;
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0.5rem 0.75rem;
    align-items: start;
}
.blog-card-meta-row .e-con-inner > *:nth-child(1),
.blog-card-meta-row .e-con-inner > *:nth-child(2),
.blog-card-meta-row .e-con-inner > *:nth-child(3),
.eye-of-blog .e-con-inner > *:nth-child(1),
.eye-of-blog .e-con-inner > *:nth-child(2),
.eye-of-blog .e-con-inner > *:nth-child(3) {
    grid-column: 1 / -1;
}
.blog-card-meta-row .e-con-inner > .blog-store-title,
.eye-of-blog .e-con-inner > .blog-store-title {
    grid-column: 1;
    grid-row: 4;
    margin: 0;
    align-self: center;
}
.blog-card-meta-row .e-con-inner > .e-con-full.e-con,
.eye-of-blog .e-con-inner > .e-con-full.e-con {
    display: contents !important;
}
.blog-card-meta-row .e-con-inner > .e-con-full.e-con > .elementor-widget-icon-list:first-of-type,
.eye-of-blog .e-con-inner > .e-con-full.e-con > .elementor-widget-icon-list:first-of-type {
    grid-column: 2;
    grid-row: 4;
    align-self: center;
    min-width: 0;
    margin-right: 0.25rem;
}
.blog-card-meta-row .e-con-inner > .e-con-full.e-con > .elementor-widget-icon-list:last-of-type,
.eye-of-blog .e-con-inner > .e-con-full.e-con > .elementor-widget-icon-list:last-of-type {
    grid-column: 3;
    grid-row: 4;
    align-self: center;
    min-width: 0;
    margin-left: 0.25rem;
    margin-right: 0.5rem;
}

/* Blog card: date (DD-MM-YYYY) on one line */
.lightworker-cards-wrapper .e-con-full.e-con > .elementor-widget-icon-list:last-of-type .elementor-icon-list-text,
.blog-card-meta-row .e-con-full.e-con > .elementor-widget-icon-list:last-of-type .elementor-icon-list-text,
.eye-of-blog .e-con-full.e-con > .elementor-widget-icon-list:last-of-type .elementor-icon-list-text,
.elementor-posts-container .elementor-post-date {
    font-size: 0.9rem;
    white-space: nowrap;
}

/* Blog detail (single post): hide short description below title */
body.single-post .elementor-widget-theme-post-excerpt,
body.single-post .elementor-widget-post-excerpt {
    display: none !important;
}

/* Healing Events listing: hide on-site/online status on cards */
body.product_cat-healing-events .lwd-session-status,
body.term-healing-events .lwd-session-status,
body.lwc-healing-events-listing .lwd-session-status {
    display: none !important;
}

/* Healing Events listing: Register button – same style as practices (popup button) */
body.product_cat-healing-events .add_to_cart_button,
body.product_cat-healing-events a.add_to_cart_button,
body.product_cat-healing-events .lwdp-open-modal-btn,
body.term-healing-events .add_to_cart_button,
body.term-healing-events a.add_to_cart_button,
body.term-healing-events .lwdp-open-modal-btn,
body.lwc-healing-events-listing .add_to_cart_button,
body.lwc-healing-events-listing a.add_to_cart_button,
body.lwc-healing-events-listing .lwdp-open-modal-btn {
    display: inline-block !important;
    background: #FFCD12 !important;
    color: #18181B !important;
    padding: 8px 15px !important;
    border-radius: 11px !important;
    text-decoration: none !important;
    border: none !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: background 0.2s ease !important;
}
body.product_cat-healing-events .add_to_cart_button:hover,
body.product_cat-healing-events a.add_to_cart_button:hover,
body.product_cat-healing-events .lwdp-open-modal-btn:hover,
body.term-healing-events .add_to_cart_button:hover,
body.term-healing-events a.add_to_cart_button:hover,
body.term-healing-events .lwdp-open-modal-btn:hover,
body.lwc-healing-events-listing .add_to_cart_button:hover,
body.lwc-healing-events-listing a.add_to_cart_button:hover,
body.lwc-healing-events-listing .lwdp-open-modal-btn:hover {
    background: var(--e-global-color-307b427, #73AB89) !important;
    color: #fff !important;
    text-decoration: none !important;
}

/* Modal: ensure Register button and actions are visible (healing-events popup) */
#lwdp-practice-modal .lwdp-modal-actions,
#lwdp-practice-modal .lwdp-modal-actions .lwdp-btn-register:not(.lwdp-register-disabled) {
    display: flex !important;
    visibility: visible !important;
}
#lwdp-practice-modal .lwdp-modal-actions .lwdp-btn-register {
    display: inline-block !important;
}

/* Healing Events cards: Cancelled / Full / Finished labels (from [lwd_event_status] shortcode) */
body.product_cat-healing-events .lwdp-label-cancelled,
body.product_cat-healing-events .lwdp-label-full,
body.product_cat-healing-events .lwdp-label-finished,
body.term-healing-events .lwdp-label-cancelled,
body.term-healing-events .lwdp-label-full,
body.term-healing-events .lwdp-label-finished,
body.lwc-healing-events-listing .lwdp-label-cancelled,
body.lwc-healing-events-listing .lwdp-label-full,
body.lwc-healing-events-listing .lwdp-label-finished {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}
body.product_cat-healing-events .lwdp-label-cancelled,
body.term-healing-events .lwdp-label-cancelled,
body.lwc-healing-events-listing .lwdp-label-cancelled {
    background: #fef2f2;
    color: #b91c1c;
}
body.product_cat-healing-events .lwdp-label-full,
body.term-healing-events .lwdp-label-full,
body.lwc-healing-events-listing .lwdp-label-full {
    background: #fef3c7;
    color: #b45309;
}
body.product_cat-healing-events .lwdp-label-finished,
body.term-healing-events .lwdp-label-finished,
body.lwc-healing-events-listing .lwdp-label-finished {
    background: #e5e7eb;
    color: #4b5563;
}