/* ==========================================================================
   TheLazyFam — dark Halloween skin for FunnelKit checkout + thank-you pages.
   Styling only: no FunnelKit/WooCommerce behaviour is changed.
   Scoped to body.tlf-fk (added by the theme on FunnelKit checkout / thank-you pages).
   ========================================================================== */
body.tlf-fk {
  --fk-bg: #0A0A0A;
  --fk-card: #121212;
  --fk-field: #171717;
  --fk-line: #2A2A2A;
  --fk-line-2: #3A3A3A;
  --fk-text: #F4F1EA;
  --fk-muted: #A8A399;
  --fk-accent: var(--tlf-accent, #F4C042);
  --fk-ink: #0A0A0A;
  --fk-error: #FF6B5B;
  --fk-font: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
  background: var(--fk-bg) !important;
  color: var(--fk-text) !important;
}
html.wfacp_html_canvas, body.tlf-fk { background-color: var(--fk-bg) !important; }

/* ---- 1. Page sections: no white boxes; everything sits on black ---- */
body.tlf-fk :is(.elementor-section, .elementor-column, .elementor-column-wrap, .elementor-widget-wrap, .e-con, .e-con-inner, .elementor-widget-container, .wfacp-template-container, .wffn-page-template) {
  background-color: transparent !important;
  background-image: none !important;
}
body.tlf-fk :is(.elementor-section, .e-con, .elementor-widget-container, .elementor-widget-wrap, .wfty_box, table, th, td, hr, .elementor-divider-separator) {
  border-color: var(--fk-line) !important;
}
body.tlf-fk .elementor-divider-separator { border-top-color: var(--fk-line-2) !important; }

/* ---- 2. Text: white, Montserrat ---- */
body.tlf-fk :is(.wfacp-template-container, .wffn-page-template, .elementor) {
  font-family: var(--fk-font) !important;
  color: var(--fk-text) !important;
}
body.tlf-fk :is(.wfacp-template-container, .wffn-page-template, .elementor) :is(h1, h2, h3, h4, h5, h6, p, span, label, strong, b, em, small, td, th, li, dt, dd, address, bdi, .elementor-heading-title, .elementor-widget-text-editor, .elementor-icon-list-text, .wfacp_tcolor, .wfty_text, .wfty_title, .wfty_view):not(button *, .button *, #place_order *, .tlf-fk-keep *, .elementor-icon-list-icon, .elementor-icon, .ab-icon, [class^="fa"], [class*=" fa-"], [class*="eicon-"], [class*="dashicons"]) {
  color: var(--fk-text) !important;
  font-family: var(--fk-font) !important;
}
body.tlf-fk :is(.wfacp-template-container, .wffn-page-template, .elementor) a:not(.button):not(.elementor-button) {
  color: var(--fk-accent) !important;
}
/* Section titles: SHIPPING INFORMATION, ORDER SUMMARY, PAYMENT, Order Details… */
body.tlf-fk :is(.wfacp_section_heading, .wfacp_section_title, .wfacp-payment-title, .wfacp-payment-title *, .wfty_title, .wfty-customer-info-heading, .wfty-order-details-heading, .elementor-heading-title) {
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .02em !important;
  line-height: 1.1 !important;
}
body.tlf-fk #wfacp-e-form :is(.wfacp_section_title, .wfacp_section_heading, .wfacp-comm-title h2, .wfacp-comm-title h3, .wfacp-order2StepTitle) { color: var(--fk-text) !important; font-family: var(--fk-font) !important; }
body.tlf-fk .wfacp_section_heading.wfacp_section_title,
body.tlf-fk .wfacp-payment-title .wfacp_section_heading { font-size: 18px !important; }
/* Small helper lines ("ALL TRANSACTIONS ARE SECURE…", privacy text) */
body.tlf-fk :is(.wfacp-payment-dec, .woocommerce-privacy-policy-text, .woocommerce-privacy-policy-text *, .wfacp-subtitle, .wfacp_subtitle, .woocommerce-terms-and-conditions-checkbox-text, .wfty_order_details small, .wfty_info, .wfty_info *, dl.variation, dl.variation *) {
  color: var(--fk-muted) !important;
}
body.tlf-fk .woocommerce-privacy-policy-text a, body.tlf-fk .woocommerce-terms-and-conditions-checkbox-text a { color: var(--fk-accent) !important; }

/* ---- 3. Steps bar (Cart — Checkout — Order Confirmed) ---- */
body.tlf-fk .elementor-widget-icon-list :is(.elementor-icon-list-text) { color: var(--fk-muted) !important; text-transform: uppercase; font-weight: 800 !important; letter-spacing: .08em; font-size: 12px !important; }
body.tlf-fk .elementor-widget-icon-list :is(.elementor-icon-list-icon i, .elementor-icon-list-icon svg) { color: var(--fk-muted) !important; fill: var(--fk-muted) !important; }
body.tlf-fk.single-wfacp_checkout .elementor-widget-icon-list:has(.elementor-icon-list-text) .elementor-icon-list-item:only-child .elementor-icon-list-text { color: var(--fk-muted) !important; }
/* the current step: FunnelKit marks it bold — make it yellow */
body.tlf-fk .elementor-widget-icon-list .tlf-fk-current :is(.elementor-icon-list-text, i, svg) { color: var(--fk-accent) !important; fill: var(--fk-accent) !important; }

/* ---- 4. The main cards ---- */
body.tlf-fk .elementor-widget-wfacp_form,
body.tlf-fk .elementor-widget-wrap:has(> .elementor-widget-wfty-customer-detail),
body.tlf-fk .elementor-widget-wrap:has(> .elementor-widget-wfty-order-detail),
body.tlf-fk .tlf-fk-card {
  position: relative;
  background-color: var(--fk-card) !important;
  border: 1px solid var(--fk-line) !important;
  border-radius: 18px !important;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .55) !important;
}
body.tlf-fk .elementor-widget-wfacp_form { padding: clamp(18px, 3vw, 34px) !important; }
body.tlf-fk .elementor-widget-wfacp_form > .elementor-widget-container { padding: 0 !important; border: 0 !important; box-shadow: none !important; }
/* inner boxes on the thank-you page ("Your order is confirmed", customer details) */
body.tlf-fk.single-wffn_ty :is(.elementor-inner-section, .wfty_box, .elementor-widget-wfty-customer-detail > .elementor-widget-container) {
  background-color: #161616 !important;
  border-radius: 14px !important;
}

/* ---- 5. Fields ---- */
body.tlf-fk :is(.wfacp-form-control, .input-text, input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="password"], textarea, select, .select2-selection, .select2-selection--single, .iti input) {
  background-color: var(--fk-field) !important;
  border-color: var(--fk-line-2) !important;
  color: var(--fk-text) !important;
  -webkit-text-fill-color: var(--fk-text) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  font-family: var(--fk-font) !important;
}
body.tlf-fk :is(.select2-selection__rendered, .select2-selection__placeholder) { color: var(--fk-text) !important; background: transparent !important; }
body.tlf-fk .select2-selection__arrow b { border-top-color: var(--fk-muted) !important; }
body.tlf-fk select option { background: #171717; color: var(--fk-text); }
body.tlf-fk :is(.wfacp-form-control, input, textarea, select, .select2-selection)::placeholder { color: #77736C !important; -webkit-text-fill-color: #77736C !important; opacity: 1; }
body.tlf-fk :is(.wfacp-form-control, input, textarea, select):focus,
body.tlf-fk .select2-container--focus .select2-selection,
body.tlf-fk .select2-container--open .select2-selection {
  border-color: var(--fk-accent) !important;
  box-shadow: 0 0 0 3px rgba(244, 192, 66, .18) !important;
  outline: none !important;
}
/* Browser autofill keeps the dark field */
body.tlf-fk input:-webkit-autofill,
body.tlf-fk input:-webkit-autofill:hover,
body.tlf-fk input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 40px var(--fk-field) inset !important;
  -webkit-text-fill-color: var(--fk-text) !important;
  caret-color: var(--fk-text);
}
/* Floating labels (Email *, First name *…) */
body.tlf-fk :is(.wfacp-form-control-label, .wfacp_form label, .form-row label) {
  color: var(--fk-muted) !important;
  background: transparent !important;
  font-weight: 600 !important;
}
body.tlf-fk .wfacp-form-control-label abbr, body.tlf-fk .required { color: var(--fk-accent) !important; text-decoration: none !important; border: 0 !important; }
/* Country (when the store sells to one country it is shown as plain text) */
body.tlf-fk :is(#shipping_country_field, #billing_country_field) :is(strong, .woocommerce-input-wrapper > strong) {
  display: block; background: var(--fk-field) !important; color: var(--fk-text) !important;
  border: 1px solid var(--fk-line-2) !important; border-radius: 10px !important;
}
/* Phone country picker */
body.tlf-fk :is(.iti__selected-flag, .iti__selected-dial-code, .iti__selected-country) { background: transparent !important; color: var(--fk-text) !important; }
body.tlf-fk .iti__arrow { border-top-color: var(--fk-muted) !important; }
body.tlf-fk :is(.iti__country-list, .iti__dropdown-content) { background: #171717 !important; border-color: var(--fk-line-2) !important; color: var(--fk-text) !important; }
body.tlf-fk .iti__country.iti__highlight { background: #242424 !important; }
body.tlf-fk .iti__dial-code { color: var(--fk-muted) !important; }
/* Select2 dropdowns (opened lists are attached to <body>) */
body.tlf-fk .select2-dropdown { background: #171717 !important; border-color: var(--fk-line-2) !important; color: var(--fk-text) !important; }
body.tlf-fk .select2-search__field { background: #0F0F0F !important; color: var(--fk-text) !important; border-color: var(--fk-line-2) !important; }
body.tlf-fk :is(.select2-results, .select2-results__options) { background-color: #171717 !important; color: var(--fk-text) !important; }
body.tlf-fk .select2-results__option { color: var(--fk-text) !important; background-color: #171717 !important; }
body.tlf-fk .select2-results__message { color: var(--fk-muted) !important; }
body.tlf-fk :is(.select2-results__option--highlighted, .select2-results__option[aria-selected="true"], .select2-results__option--selected) { background: var(--fk-accent) !important; color: var(--fk-ink) !important; }
/* Checkboxes / radios */
body.tlf-fk :is(input[type="checkbox"], input[type="radio"]) { accent-color: var(--fk-accent); background-color: var(--fk-field) !important; border-color: var(--fk-line-2) !important; }

/* Errors (WooCommerce + TLF Checkout Validation plugin) */
body.tlf-fk :is(.woocommerce-invalid, .tlf-cv-invalid) :is(input, select, textarea, .select2-selection) { border-color: var(--fk-error) !important; }
body.tlf-fk :is(.tlf-cv-error, .wfacp_inline_field_error, .woocommerce-error, .woocommerce-error li, .wfacp-error-msg, .error) { color: var(--fk-error) !important; }
body.tlf-fk .woocommerce-error { background: rgba(255, 107, 91, .08) !important; border: 1px solid rgba(255, 107, 91, .35) !important; border-radius: 10px !important; }
/* Don't paint an empty field red before the customer has typed in it */
body.tlf-fk .form-row:not(.woocommerce-invalid):not(.tlf-cv-invalid) :is(input, textarea):placeholder-shown { border-color: var(--fk-line-2) !important; }

/* ---- 6. Coupon + notices ---- */
body.tlf-fk :is(.woocommerce-info, .woocommerce-message, .wfacp_main_showcoupon, .wfacp-coupon-section .woocommerce-info) {
  background: transparent !important;
  border: 1px dashed var(--fk-line-2) !important;
  border-radius: 10px !important;
  color: var(--fk-muted) !important;
  padding: 12px 14px !important;
  box-shadow: none !important;
}
body.tlf-fk :is(.woocommerce-info, .woocommerce-message)::before { color: var(--fk-accent) !important; }
body.tlf-fk :is(.woocommerce-info, .woocommerce-message) a { color: var(--fk-accent) !important; font-weight: 700 !important; }
body.tlf-fk :is(.checkout_coupon, .wfacp-coupon-page) { background: transparent !important; border-color: var(--fk-line) !important; }

/* ---- 7. Order summary ---- */
body.tlf-fk :is(.wfacp_order_summary, .wfacp_mini_cart_start_h, .wfacp-order-summary-label, table.shop_table, .wfacp_order_total_wrap, .wfacp_order_summary_container) {
  background: transparent !important;
  border-color: var(--fk-line) !important;
  color: var(--fk-text) !important;
}
body.tlf-fk table.shop_table :is(th, td) { border-color: var(--fk-line) !important; background: transparent !important; }
body.tlf-fk :is(.order-total, .wfacp_order_total) :is(th, td, span, strong, bdi) { font-weight: 900 !important; font-size: 18px !important; }
body.tlf-fk :is(.order-total, .wfacp_order_total) td :is(span, strong, bdi) { color: var(--fk-accent) !important; }
body.tlf-fk .woocommerce-Price-amount { color: inherit !important; }

/* ---- 8. Payment ---- */
body.tlf-fk :is(#payment, .woocommerce-checkout-payment, .wc_payment_methods, .wfacp_payment, .place-order) {
  background: transparent !important;
  border-color: var(--fk-line) !important;
  color: var(--fk-text) !important;
}
body.tlf-fk :is(#payment .wc_payment_methods > li, .wc_payment_method) { background: #161616 !important; border: 1px solid var(--fk-line) !important; border-radius: 12px !important; margin-bottom: 8px !important; }
body.tlf-fk #payment .payment_box { background: #1B1B1B !important; color: var(--fk-muted) !important; border-radius: 10px !important; }
body.tlf-fk #payment .payment_box::before { border-bottom-color: #1B1B1B !important; }
/* One clean payment box (FunnelKit nests 3 bordered boxes here) */
body.tlf-fk :is(.wfacp-payment-tab-wrapper, .wfacp_payment, .woocommerce-checkout-review-order, .wfacp-payment-title) { border: 0 !important; box-shadow: none !important; background: transparent !important; }
body.tlf-fk #payment.woocommerce-checkout-payment {
  border: 1px solid var(--fk-line) !important; border-radius: 14px !important;
  background: #151515 !important; padding: 16px !important; margin-top: 10px !important;
}
body.tlf-fk #payment :is(.place-order, .form-row.place-order, .woocommerce-terms-and-conditions-wrapper) { background: transparent !important; border: 0 !important; box-shadow: none !important; }
body.tlf-fk .wfacp-order2StepNumber { background: var(--fk-accent) !important; color: var(--fk-ink) !important; border-color: var(--fk-accent) !important; }
body.tlf-fk :is(.wfacp-comm-title, .wfacp-payment-title) :is(p, span, .wfacp_subtitle, .wfacp-payment-dec, .wfacp-order2StepSubTitle) { color: var(--fk-muted) !important; font-size: 11px !important; letter-spacing: .06em; text-transform: uppercase; }
/* Gift card box */
body.tlf-fk :is([class*="gift"] button, [class*="gift"] .button, button[name*="gift"], .pwgc-apply-button, .ywgc_apply_gift_card_button, #pwgc-redeem-button, input#pwgc-redeem-button) {
  background: transparent !important; color: var(--fk-text) !important;
  border: 1px solid var(--fk-line-2) !important; border-radius: 10px !important;
  font: 800 12px/1 var(--fk-font) !important; letter-spacing: .08em; text-transform: uppercase;
  padding: 14px 18px !important; box-shadow: none !important;
}
body.tlf-fk :is([class*="gift"] button, .pwgc-apply-button, .ywgc_apply_gift_card_button, #pwgc-redeem-button):hover { border-color: var(--fk-accent) !important; color: var(--fk-accent) !important; }

/* Place Order */
body.tlf-fk :is(#place_order, button[name="woocommerce_checkout_place_order"], .wfacp-order-place-btn, .wfacp_next_page_button, .wfacp-next-btn-wrap button) {
  background: var(--fk-accent) !important;
  color: var(--fk-ink) !important;
  border: 0 !important;
  border-radius: 12px !important;
  font-family: var(--fk-font) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  box-shadow: 0 10px 30px rgba(244, 192, 66, .25) !important;
  transition: transform .15s ease, filter .2s ease, box-shadow .2s ease !important;
}
body.tlf-fk :is(#place_order, .wfacp_next_page_button) * { color: var(--fk-ink) !important; fill: var(--fk-ink) !important; }
body.tlf-fk :is(#place_order, .wfacp_next_page_button):hover { filter: brightness(1.05); box-shadow: 0 14px 40px rgba(244, 192, 66, .35) !important; }
body.tlf-fk :is(#place_order, .wfacp_next_page_button):active { transform: scale(.985); }
/* "100% Secure Payments" + badges */
body.tlf-fk :is(.wfacp_custom_html_wrap, .wfacp-secure-text) { color: var(--fk-muted) !important; }

/* Order bump (if you add one) */
body.tlf-fk :is(.wfob_bump, .wfob_wrapper, .wfob_qv-main, .wfob_qv_content_inner_container) { background: #161616 !important; border-color: var(--fk-line-2) !important; color: var(--fk-text) !important; }

/* ---- 9. Thank-you page ---- */
body.tlf-fk.single-wffn_ty .elementor-widget-icon :is(i, svg) { color: var(--fk-accent) !important; fill: var(--fk-accent) !important; }
body.tlf-fk.single-wffn_ty .elementor-widget-icon .elementor-icon { border-color: var(--fk-accent) !important; color: var(--fk-accent) !important; }
body.tlf-fk .wfty_text_bold, body.tlf-fk .wfty_2_col_left .wfty_text_bold, body.tlf-fk .wfty_2_col_right .wfty_text_bold { color: var(--fk-muted) !important; text-transform: uppercase; font-size: 12px !important; letter-spacing: .08em; font-weight: 800 !important; }
body.tlf-fk .wfty_p_img img { border-color: var(--fk-line) !important; border-radius: 10px !important; background: #1A1A1A !important; }
body.tlf-fk .wfty_quantity_value_box, body.tlf-fk .wfty_p_img .wfty_t { background: var(--fk-accent) !important; color: var(--fk-ink) !important; }
body.tlf-fk .wffn_order_details_table :is(.wfty_pro_list_cont, table, tr, td, th) { border-color: var(--fk-line) !important; }
body.tlf-fk .wffn_order_details_table tr:last-child :is(td, th, span, bdi) { font-weight: 900 !important; }
body.tlf-fk .wffn_order_details_table tr:last-child td :is(span, bdi) { color: var(--fk-accent) !important; }
body.tlf-fk.single-wffn_ty .elementor-button { background: var(--fk-accent) !important; color: var(--fk-ink) !important; border-radius: 12px !important; font-weight: 900 !important; text-transform: uppercase; }
body.tlf-fk.single-wffn_ty .elementor-button * { color: var(--fk-ink) !important; }

/* Rating stars / header strip */
body.tlf-fk .elementor-star-rating i::before, body.tlf-fk .e-rating .e-icon-full svg { color: var(--fk-accent) !important; fill: var(--fk-accent) !important; }

/* ---- 10. Halloween decorations (controlled by the theme's "decorations" switch) ---- */
body.tlf-fk.tlf-has-decor .elementor-widget-wfacp_form::before,
body.tlf-fk.tlf-has-decor .elementor-widget-wrap:has(> .elementor-widget-wfty-customer-detail)::before {
  content: '';
  position: absolute; top: -1px; right: -1px; z-index: 0;
  width: 170px; height: 150px;
  pointer-events: none;
  border-top-right-radius: 18px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 170 150' fill='none' stroke='%23F4F1EA' stroke-opacity='.22' stroke-width='1.1' stroke-linecap='round'%3E%3Cpath d='M170 0 L0 0M170 0 L20 70M170 0 L70 140M170 0 L130 150M170 0 L170 150'/%3E%3Cpath d='M138 0 Q141 12 146 14 Q152 21 150 28 Q158 30 164 34 Q168 30 170 30'/%3E%3Cpath d='M102 0 Q108 22 117 27 Q126 41 125 54 Q143 59 152 70 Q163 66 170 66'/%3E%3Cpath d='M64 0 Q76 32 90 42 Q103 63 104 82 Q129 90 138 108 Q157 103 170 104'/%3E%3Cpath d='M28 0 Q44 42 62 57 Q80 86 82 112 Q114 124 124 146 Q150 140 170 142'/%3E%3C/svg%3E") no-repeat top right / 100% 100%;
}
/* the little spider hanging from the web */
body.tlf-fk.tlf-has-decor .elementor-widget-wfacp_form::after,
body.tlf-fk.tlf-has-decor .elementor-widget-wrap:has(> .elementor-widget-wfty-customer-detail)::after {
  content: '';
  position: absolute; top: 0; right: 46px; z-index: 0;
  width: 22px; height: 96px;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 96'%3E%3Cpath d='M11 0V78' stroke='%23F4F1EA' stroke-opacity='.5' stroke-width='1'/%3E%3Cg fill='none' stroke='%23d9d4c8' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M8 82 Q3 78 1 81M8 85 Q3 85 1 89M9 88 Q5 91 3 95M14 82 Q19 78 21 81M14 85 Q19 85 21 89M13 88 Q17 91 19 95'/%3E%3C/g%3E%3Cellipse cx='11' cy='87' rx='4.6' ry='5.4' fill='%231c1c1c' stroke='%23d9d4c8' stroke-width='.8'/%3E%3Ccircle cx='11' cy='80.5' r='3.2' fill='%231c1c1c' stroke='%23d9d4c8' stroke-width='.8'/%3E%3Ccircle cx='9.8' cy='80.2' r='.8' fill='%23F4C042'/%3E%3Ccircle cx='12.2' cy='80.2' r='.8' fill='%23F4C042'/%3E%3C/svg%3E") no-repeat top center / 100% 100%;
  transform-origin: 50% 0;
  animation: tlf-fk-swing 3.6s ease-in-out infinite;
}
@keyframes tlf-fk-swing { 0%, 100% { transform: rotate(-5deg); } 50% { transform: rotate(5deg); } }
/* Keep the form content above the decorations */
body.tlf-fk .elementor-widget-wfacp_form > .elementor-widget-container,
body.tlf-fk .elementor-widget-wrap:has(> .elementor-widget-wfty-customer-detail) > * { position: relative; z-index: 1; }
/* Web across the order-details card corner (left) */
body.tlf-fk.tlf-has-decor .elementor-widget-wrap:has(> .elementor-widget-wfty-order-detail)::before {
  content: '';
  position: absolute; top: -1px; left: -1px; z-index: 0;
  width: 120px; height: 105px; pointer-events: none;
  border-top-left-radius: 18px;
  transform: scaleX(-1);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 170 150' fill='none' stroke='%23F4F1EA' stroke-opacity='.18' stroke-width='1.2' stroke-linecap='round'%3E%3Cpath d='M170 0 L0 0M170 0 L20 70M170 0 L70 140M170 0 L130 150M170 0 L170 150'/%3E%3Cpath d='M102 0 Q108 22 117 27 Q126 41 125 54 Q143 59 152 70 Q163 66 170 66'/%3E%3Cpath d='M28 0 Q44 42 62 57 Q80 86 82 112 Q114 124 124 146 Q150 140 170 142'/%3E%3C/svg%3E") no-repeat top left / 100% 100%;
}
body.tlf-fk .elementor-widget-wrap:has(> .elementor-widget-wfty-order-detail) > * { position: relative; z-index: 1; }

@media (max-width: 767px) {
  body.tlf-fk .elementor-widget-wfacp_form { border-radius: 14px !important; }
  body.tlf-fk.tlf-has-decor .elementor-widget-wfacp_form::before { width: 120px; height: 105px; }
  body.tlf-fk.tlf-has-decor .elementor-widget-wfacp_form::after { right: 30px; height: 80px; width: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  body.tlf-fk.tlf-has-decor :is(.elementor-widget-wfacp_form, .elementor-widget-wrap)::after { animation: none !important; }
}

/* ---- 11. Mobile / tablet collapsible order summary ("Show / Hide Order Summary") ---- */
body.tlf-fk :is(.wfacp_collapsible_order_summary_wrap, .wfacp_mb_mini_cart_wrap, .wfacp_order_summary_container) { background: transparent !important; }
body.tlf-fk .wfacp_mb_cart_accordian {
  background: #161616 !important; border: 1px solid var(--fk-line) !important; border-radius: 12px !important; color: var(--fk-text) !important;
}
body.tlf-fk .wfacp_mb_cart_accordian :is(span, a, strong, bdi, .woocommerce-Price-amount, .wfacp_summary_link) { color: var(--fk-text) !important; font-weight: 700; }
body.tlf-fk .wfacp_mb_cart_accordian img { filter: invert(1) brightness(1.6); }
body.tlf-fk .wfacp_mb_mini_cart_sec_accordion_content {
  background: #141414 !important; border: 1px solid var(--fk-line) !important; border-top: 0 !important;
  border-radius: 0 0 12px 12px !important; color: var(--fk-text) !important;
}
body.tlf-fk .wfacp_mb_mini_cart_sec_accordion_content :is(tr, th, td, span, bdi, strong, p, label) { color: var(--fk-text) !important; border-color: var(--fk-line) !important; background: transparent !important; }
body.tlf-fk .wfacp_mb_mini_cart_sec_accordion_content .order-total td :is(span, bdi, strong) { color: var(--fk-accent) !important; }
body.tlf-fk tr:is(.cart-subtotal, .order-total, .shipping, .fee, .cart-discount, .woocommerce-shipping-totals) { color: var(--fk-text) !important; border-color: var(--fk-line) !important; }
body.tlf-fk .wfacp_cart_empty { background: rgba(255, 107, 91, .1) !important; color: var(--fk-error) !important; border: 1px solid rgba(255, 107, 91, .3) !important; border-radius: 10px !important; }
body.tlf-fk .wfacp_sucuss, body.tlf-fk .woocommerce-message.wfacp_sucuss { color: #5BD68A !important; border-color: rgba(91, 214, 138, .4) !important; }
/* Coupon "Apply" buttons (mobile summary + desktop coupon form) */
body.tlf-fk :is(.wfacp-coupon-btn, .checkout_coupon button, button[name="apply_coupon"]) {
  background: transparent !important; color: var(--fk-accent) !important;
  border: 1px solid var(--fk-accent) !important; border-radius: 10px !important;
  font: 800 12px/1 var(--fk-font) !important; letter-spacing: .08em; text-transform: uppercase; box-shadow: none !important;
}
body.tlf-fk :is(.wfacp-coupon-btn, .checkout_coupon button, button[name="apply_coupon"]):hover { background: var(--fk-accent) !important; color: var(--fk-ink) !important; }
