/* ThermoFlow Shop – WooCommerce: shop, product, cart, checkout, account (classic + blocks). */

/* ---------- Notices ---------- */
.tfs .woocommerce-notices-wrapper{margin:0}
.tfs .woocommerce-message,.tfs .woocommerce-info,.tfs .woocommerce-error,.tfs .woocommerce-noreviews,.tfs p.no-comments{position:relative;display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--ink2);color:var(--bone);border:1px solid var(--line);border-left:4px solid var(--ghost);border-radius:12px;padding:16px 20px;margin:0 0 22px;list-style:none}
.tfs .woocommerce-message{border-left-color:var(--good)}
.tfs .woocommerce-error{border-left-color:var(--bad);display:block}
.tfs .woocommerce-error li{margin:4px 0}
.tfs .woocommerce-message::before,.tfs .woocommerce-info::before,.tfs .woocommerce-error::before{display:none}
.tfs .woocommerce-message .button,.tfs .woocommerce-info .button{order:2;margin-left:auto;float:none}
.tfs .woocommerce-info a:not(.button),.tfs .woocommerce-message a:not(.button),.tfs .woocommerce-error a{color:var(--ghost);text-decoration:underline}

/* ---------- Breadcrumb, shop header, toolbar ---------- */
.tfs .woocommerce-breadcrumb{font-size:14px;color:var(--mut);margin:0 0 18px}
.tfs .woocommerce-products-header{margin:0 0 28px}
.tfs .woocommerce-products-header__title{font-size:clamp(38px,5vw,64px)}
.tfs .term-description,.tfs .page-description{color:var(--mut);max-width:760px}
.tfs .woocommerce-result-count{float:left;margin:0 0 24px;line-height:46px;color:var(--mut);font-size:14px}
.tfs .woocommerce-ordering{float:right;margin:0 0 24px}
.tfs .woocommerce-ordering select{min-width:220px}

/* ---------- Product grid ---------- */
.tfs ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;clear:both}
.tfs ul.products::before,.tfs ul.products::after{display:none!important}
.tfs ul.products.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tfs ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tfs ul.products.columns-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.tfs ul.products li.product{position:relative;display:flex;flex-direction:column;float:none!important;width:auto!important;margin:0!important;padding:14px;background:var(--ink2);border:1px solid var(--line);border-radius:var(--r);transition:border-color .25s,box-shadow .25s,transform .25s}
.tfs ul.products li.product:hover{border-color:var(--ghost);box-shadow:0 0 30px #46d6e622;transform:translateY(-3px)}
.tfs ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;color:inherit}
.tfs ul.products li.product img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#fff;border-radius:10px;padding:10px;margin:0 0 14px}
.tfs ul.products li.product .woocommerce-loop-product__title{font-size:16px;font-weight:700;line-height:1.35;margin:0 0 8px;padding:0;color:var(--bone)}
.tfs ul.products li.product .star-rating{margin:0 0 8px}
.tfs ul.products li.product .price{display:block;margin:0 0 14px;font-size:20px;font-weight:700;color:var(--bone)}
.tfs ul.products li.product .price del{color:var(--mut);font-weight:400;font-size:14px;margin-right:6px}
.tfs ul.products li.product .price ins{text-decoration:none;background:none;color:var(--pump)}
.tfs ul.products li.product .button{margin-top:auto;width:100%;background:var(--pump);color:#1a0b00;box-shadow:none}
.tfs ul.products li.product .button:hover{background:var(--pump);color:#1a0b00;box-shadow:0 0 24px #ff7a1a77;filter:brightness(1.06)}
.tfs ul.products li.product .added_to_cart{margin-top:8px;width:100%}
.tfs .onsale{position:absolute;top:22px;left:22px;z-index:3;min-height:0;min-width:0;line-height:1;background:var(--pump);color:#1a0b00;font:900 18px/1 var(--hfont);text-transform:uppercase;letter-spacing:.04em;border-radius:99px;padding:8px 12px;margin:0}
.tfs .star-rating{color:var(--pump);font-size:14px;margin:0}
.tfs .star-rating::before{color:#ffffff33}
.tfs .woocommerce-pagination{margin-top:34px;text-align:center}
.tfs .woocommerce-pagination ul{display:inline-flex;flex-wrap:wrap;gap:6px;border:0!important;margin:0;padding:0}
.tfs .woocommerce-pagination ul li{border:0!important;float:none;overflow:visible}
.tfs .woocommerce-pagination a,.tfs .woocommerce-pagination span{display:block;min-width:44px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;color:var(--bone);background:transparent}
.tfs .woocommerce-pagination a:hover{border-color:var(--ghost);color:var(--ghost);background:transparent}
.tfs .woocommerce-pagination .current{background:var(--pump);color:#1a0b00;border-color:var(--pump)}

/* ---------- Single product ---------- */
.tfs div.product{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px 52px;align-items:start}
.tfs div.product>*{min-width:0}
.tfs div.product>.onsale{top:16px;left:16px}
.tfs div.product div.images,.tfs div.product div.summary{float:none!important;width:auto!important;margin:0!important}
.tfs div.product .woocommerce-product-gallery{position:relative;background:#fff;border-radius:18px;padding:18px;margin:0}
.tfs div.product .woocommerce-product-gallery__image img{border-radius:10px}
.tfs div.product div.images .woocommerce-product-gallery__trigger{top:26px;right:26px;background:#fff;color:#0a0f1c}
.tfs .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;list-style:none;margin:14px 0 0;padding:0}
.tfs .flex-control-thumbs li{float:none!important;width:auto!important;margin:0}
.tfs .flex-control-thumbs img{border:2px solid transparent;border-radius:8px;opacity:.6;cursor:pointer;transition:.2s}
.tfs .flex-control-thumbs img.flex-active,.tfs .flex-control-thumbs img:hover{opacity:1;border-color:var(--pump)}
.tfs div.product .product_title{font-family:var(--hfont);font-weight:900;font-size:clamp(34px,4.2vw,58px);text-transform:uppercase;line-height:.98;margin:0 0 12px}
.tfs div.product .woocommerce-product-rating{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:var(--mut);font-size:14px}
.tfs div.product .woocommerce-review-link{color:var(--ghost)}
.tfs div.product p.price,.tfs div.product span.price{display:block;margin:0 0 16px;font:900 clamp(38px,4.4vw,52px)/1 var(--hfont);color:var(--pump)}
.tfs div.product p.price del,.tfs div.product span.price del{color:var(--mut);font:400 20px var(--bfont);margin-right:8px}
.tfs div.product p.price ins,.tfs div.product span.price ins{text-decoration:none;background:none}
.tfs .woocommerce-product-details__short-description{color:#c4d1dc;margin:0 0 20px}
.tfs .woocommerce-product-details__short-description ul{padding-left:20px}
.tfs .stock{margin:0 0 14px;font-weight:700;font-size:14px;color:var(--good)}
.tfs .stock.out-of-stock{color:var(--bad)}
.tfs form.cart{margin:0 0 18px}
.tfs form.cart:not(.variations_form):not(.grouped_form),.tfs .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.tfs .single_add_to_cart_button{flex:1 1 150px;min-height:56px;font-size:17px;padding:14px 28px}
.tfs table.variations{width:100%;border:0;margin:0 0 16px;border-collapse:collapse}
.tfs table.variations th,.tfs table.variations td{display:block;padding:0 0 12px;border:0;text-align:left;background:none}
.tfs table.variations label{color:#fff;font-weight:700;font-size:15px}
.tfs .reset_variations{display:inline-block;margin-top:8px;color:var(--ghost);font-size:14px}
.tfs .woocommerce-variation-price .price{font-size:30px}
.tfs .woocommerce-variation-description{color:var(--mut);margin-bottom:12px}
.tfs .product_meta{display:grid;gap:4px;border-top:1px solid var(--line);padding-top:16px;margin-top:18px;color:var(--mut);font-size:14px}
.tfs .product_meta a{color:var(--ghost)}
.tfs .product_meta>span{display:block}
.tfs-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;list-style:none;margin:20px 0 0;padding:0}
.tfs-trust li{display:flex;align-items:flex-start;gap:10px;background:var(--ink2);border:1px solid var(--line);border-radius:12px;padding:12px}
.tfs-trust svg{color:var(--pump);flex:none;margin-top:2px}
.tfs-trust b{display:block;font-size:13px;line-height:1.3;color:#fff}.tfs-trust small{display:block;font-size:12px;color:var(--mut);line-height:1.3;margin-top:2px}

/* Quantity stepper */
.tfs .quantity{display:inline-flex;align-items:stretch;border:1px solid #ffffff33;border-radius:10px;overflow:hidden;background:var(--ink)}
body.tfs-theme .tfs .quantity input.qty{width:56px;min-height:48px;border:0;border-radius:0;text-align:center;padding:0;background:transparent;box-shadow:none;-moz-appearance:textfield;appearance:textfield}
.tfs .quantity input.qty::-webkit-outer-spin-button,.tfs .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tfs .quantity .qbtn{width:44px;border:0;background:#ffffff0d;color:var(--bone);font-size:22px;line-height:1;cursor:pointer;transition:.2s;padding:0}
.tfs .quantity .qbtn:hover{background:var(--pump);color:#1a0b00}

/* Tabs */
.tfs div.product .woocommerce-tabs{grid-column:1/-1;margin-top:10px}
.tfs div.product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 18px;padding:0;overflow:visible}
.tfs div.product .woocommerce-tabs ul.tabs::before,.tfs div.product .woocommerce-tabs ul.tabs li::before,.tfs div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.tfs div.product .woocommerce-tabs ul.tabs li{margin:0;padding:0;border:1px solid var(--line);border-radius:99px;background:transparent}
.tfs div.product .woocommerce-tabs ul.tabs li a{display:block;padding:11px 22px;font-weight:700;color:var(--mut)}
.tfs div.product .woocommerce-tabs ul.tabs li.active{background:var(--pump);border-color:var(--pump)}
.tfs div.product .woocommerce-tabs ul.tabs li.active a{color:#1a0b00}
.tfs div.product .woocommerce-tabs .woocommerce-Tabs-panel{background:var(--ink2);border:1px solid var(--line);border-radius:var(--r);padding:28px;margin:0}
.tfs .woocommerce-Tabs-panel h2{font-size:30px;margin-bottom:12px}
.tfs .woocommerce-Tabs-panel p,.tfs .woocommerce-Tabs-panel li{color:#c4d1dc}
.tfs table.shop_attributes{width:100%;border:0;border-collapse:collapse}
.tfs table.shop_attributes th,.tfs table.shop_attributes td{padding:12px 0;border:0;border-top:1px solid var(--line);background:none;font-style:normal;text-align:left;vertical-align:top}
.tfs table.shop_attributes th{width:32%;color:var(--mut);font-weight:600}
.tfs table.shop_attributes p{margin:0}
.tfs #reviews #comments ol.commentlist{list-style:none;padding:0;margin:0}
.tfs #reviews #comments ol.commentlist li{margin:0 0 16px;padding:0}
.tfs #reviews #comments ol.commentlist li .comment_container{background:var(--ink);border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;gap:14px}
.tfs #reviews #comments ol.commentlist li img.avatar{position:static;width:44px;height:44px;border-radius:50%;padding:0;background:none;border:0;flex:none}
.tfs #reviews #comments ol.commentlist li .comment-text{margin:0;border:0;padding:0;flex:1}
.tfs #review_form #respond .comment-form-rating select{width:auto}
.tfs p.stars a{color:var(--pump)}
.tfs .related,.tfs .upsells,.tfs .up-sells{grid-column:1/-1;margin-top:26px}
.tfs .related>h2,.tfs .upsells>h2,.tfs .up-sells>h2{font-size:clamp(30px,3.6vw,44px);margin-bottom:18px}

/* ---------- Steps ---------- */
.tfs-steps{display:flex;justify-content:center;align-items:center;gap:8px;list-style:none;margin:26px 0 0;padding:0;flex-wrap:wrap}
.tfs-steps li{display:flex;align-items:center;gap:10px;color:var(--mut);font-weight:700;font-size:14px}
.tfs-steps li+li::before{content:"";width:36px;height:2px;background:var(--line);margin-right:6px}
.tfs-steps b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:2px solid var(--line);font-size:13px}
.tfs-steps li.done{color:var(--good)}.tfs-steps li.done b{border-color:var(--good);background:#3ddc9722}
.tfs-steps li.current{color:var(--bone)}.tfs-steps li.current b{background:var(--pump);border-color:var(--pump);color:#1a0b00}

/* ---------- Tables (cart, order review, account) ---------- */
.tfs table.shop_table{width:100%;border:1px solid var(--line);border-radius:var(--r);border-collapse:separate;border-spacing:0;background:var(--ink2);overflow:hidden;margin:0 0 24px}
.tfs table.shop_table th,.tfs table.shop_table td{padding:16px 18px;border:0;border-top:1px solid var(--line);text-align:left;vertical-align:middle;background:none;color:var(--bone)}
.tfs table.shop_table thead th{border-top:0;background:#ffffff0a;color:var(--mut);font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.tfs table.shop_table .amount{font-weight:700}
.tfs table.shop_table a:not(.button){color:var(--bone)}
.tfs table.shop_table a:not(.button):hover{color:var(--ghost)}

/* ---------- Cart (classic) ---------- */
.woocommerce-cart .tfs .woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:0 32px;align-items:start}
.woocommerce-cart .tfs .woocommerce>*{grid-column:1/-1}
.woocommerce-cart .tfs .woocommerce>.woocommerce-cart-form{grid-column:1;grid-row:2}
.woocommerce-cart .tfs .woocommerce>.cart-collaterals{grid-column:2;grid-row:2}
.tfs td.product-thumbnail{width:96px}
.tfs td.product-thumbnail img{width:80px;height:80px;object-fit:contain;background:#fff;border-radius:10px;padding:6px}
.tfs td.product-name a{font-weight:700}
.tfs td.product-remove{width:48px;padding-right:0}
.tfs a.remove{display:grid!important;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--mut)!important;background:transparent;font-size:22px;line-height:1;font-weight:400;transition:.2s}
.tfs a.remove:hover{background:var(--bad);color:#1a0b00!important}
.tfs td.actions{padding:18px}
.tfs td.actions .coupon{float:left;display:flex;gap:8px;flex-wrap:wrap}
.tfs td.actions .coupon .input-text{width:200px!important;float:none!important;margin:0!important;padding:10px 14px!important;background:var(--ink)!important;color:var(--bone)!important;border:1px solid #ffffff33!important;border-radius:10px!important;min-height:46px}
.tfs td.actions>.button{float:right}
.tfs .cart-collaterals{width:100%;float:none}
.tfs .cart_totals{float:none!important;width:100%!important;background:var(--ink2);border:1px solid var(--line);border-radius:var(--r);padding:24px;}
.tfs .cart_totals h2{font-size:30px;margin-bottom:12px}
.tfs .cart_totals table.shop_table{border:0;background:none;margin:0 0 16px;border-radius:0}
.tfs .cart_totals table.shop_table th,.tfs .cart_totals table.shop_table td{padding:12px 0}
.tfs .cart_totals .order-total .amount{font:900 32px/1 var(--hfont);color:var(--pump)}
.tfs .cart_totals .woocommerce-shipping-destination,.tfs .cart_totals .shipping-calculator-button{font-size:13px;color:var(--mut)}
.tfs .cart_totals .shipping-calculator-button{color:var(--ghost)}
.tfs .wc-proceed-to-checkout{padding:0}
.tfs .wc-proceed-to-checkout a.checkout-button{display:flex;width:100%;min-height:58px;font-size:18px;margin:0}
.tfs ul#shipping_method{list-style:none;margin:0;padding:0}
.tfs ul#shipping_method li{margin:0 0 6px}
.tfs .cart-empty{grid-column:1/-1;background:var(--ink2);border:1px dashed var(--line);border-radius:var(--r);padding:44px 24px;text-align:center;font-size:18px;color:var(--mut)}
.tfs .return-to-shop{text-align:center;margin-top:20px}
.tfs .return-to-shop .button{background:var(--pump);color:#1a0b00;box-shadow:none;min-height:54px;padding:14px 32px}
.tfs .cross-sells{margin-top:20px}

/* ---------- Forms (checkout, account) ---------- */
.tfs .woocommerce form .form-row,.tfs form .form-row{margin:0 0 16px;padding:0}
.tfs form .form-row label{margin-bottom:6px}
.tfs .woocommerce-billing-fields__field-wrapper,.tfs .woocommerce-shipping-fields__field-wrapper,.tfs .woocommerce-address-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.tfs .woocommerce-billing-fields__field-wrapper .form-row,.tfs .woocommerce-shipping-fields__field-wrapper .form-row,.tfs .woocommerce-address-fields__field-wrapper .form-row{float:none!important;width:100%!important}
.tfs .form-row-wide,.tfs .notes,.tfs #order_comments_field{grid-column:1/-1}
.tfs form .form-row .woocommerce-input-wrapper{display:block}
.tfs form .woocommerce-invalid input.input-text,.tfs form .woocommerce-invalid select{border-color:var(--bad)}
.tfs form .woocommerce-validated input.input-text{border-color:#3ddc9766}
.tfs .woocommerce-checkout h3,.tfs .woocommerce-billing-fields>h3,.tfs .woocommerce-shipping-fields>h3,.tfs .woocommerce-additional-fields>h3{font:900 clamp(26px,3vw,34px)/1 var(--hfont);text-transform:uppercase;margin:0 0 18px}
.tfs .woocommerce-form-coupon,.tfs form.checkout_coupon,.tfs form.woocommerce-form-login,.tfs form.woocommerce-form-register,.tfs form.login,.tfs form.register,.tfs .woocommerce-ResetPassword{background:var(--ink2);border:1px solid var(--line);border-radius:var(--r);padding:22px;margin:0 0 24px}
.tfs .woocommerce-form-coupon .form-row-first,.tfs .woocommerce-form-coupon .form-row-last{width:auto!important;float:none!important}
.tfs .woocommerce-form-coupon{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.tfs .woocommerce-form-coupon>p:first-child{flex:1 0 100%;margin:0;color:var(--mut)}
.tfs .woocommerce-form-coupon .form-row{margin:0}
.tfs .woocommerce-form-coupon .form-row-first{flex:1 1 220px}

/* ---------- Checkout (classic) ---------- */
.tfs form.checkout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:0 36px;align-items:start}
.tfs form.checkout>.woocommerce-NoticeGroup{grid-column:1/-1}
.tfs form.checkout #customer_details{grid-column:1;grid-row:1}
.tfs form.checkout #order_review_heading{display:none}
.tfs form.checkout #order_review{grid-column:2;grid-row:1;background:var(--ink2);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.tfs form.checkout #order_review::before{content:"Your order";display:block;font:900 30px/1 var(--hfont);text-transform:uppercase;margin-bottom:16px}
.tfs .col2-set{width:100%;float:none}
.tfs .col2-set .col-1,.tfs .col2-set .col-2{float:none!important;width:100%!important;max-width:none}
.tfs .woocommerce-checkout-review-order-table{border:0;background:none;margin:0 0 16px;border-radius:0}
.tfs .woocommerce-checkout-review-order-table th,.tfs .woocommerce-checkout-review-order-table td{padding:12px 0}
.tfs .woocommerce-checkout-review-order-table .product-name{color:var(--bone);font-weight:500}
.tfs .woocommerce-checkout-review-order-table .product-quantity{color:var(--pump);font-weight:700}
.tfs .woocommerce-checkout-review-order-table .order-total .amount{font:900 32px/1 var(--hfont);color:var(--pump)}
.tfs #payment{background:transparent;border-radius:0}
.tfs #payment ul.payment_methods{list-style:none;margin:0 0 16px;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.tfs #payment ul.payment_methods li{padding:16px;border-top:1px solid var(--line);margin:0}
.tfs #payment ul.payment_methods li:first-child{border-top:0}
.tfs #payment ul.payment_methods li label{display:inline;color:var(--bone);font-weight:700;margin:0 0 0 6px}
.tfs #payment ul.payment_methods li img{display:inline-block;max-height:24px;margin-left:8px;vertical-align:middle}
.tfs #payment div.payment_box{background:var(--ink);color:var(--mut);border-radius:10px;padding:14px;margin:12px 0 0;font-size:14px}
.tfs #payment div.payment_box::before{display:none}
.tfs #payment div.form-row{padding:0;margin:0}
.tfs #payment #place_order{float:none;width:100%;min-height:60px;font-size:18px;margin-top:14px}
.tfs .woocommerce-terms-and-conditions-wrapper,.tfs .woocommerce-privacy-policy-text{font-size:13px;color:var(--mut)}
.tfs .woocommerce-privacy-policy-text a,.tfs .woocommerce-terms-and-conditions-wrapper a{color:var(--ghost);text-decoration:underline}
.tfs .woocommerce-form__label-for-checkbox{display:flex;gap:10px;align-items:flex-start}
.tfs .tfs-secure{display:flex;gap:10px;align-items:flex-start;margin:14px 0 0;font-size:13px;color:var(--mut)}
.tfs .tfs-secure svg{flex:none;color:var(--good);margin-top:1px}

/* Order received */
.tfs .woocommerce-thankyou-order-received{background:#3ddc9718;border:1px solid #3ddc9755;border-radius:12px;padding:18px 22px;font-weight:700;margin:0 0 22px}
.tfs ul.woocommerce-order-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;list-style:none;margin:0 0 26px;padding:0}
.tfs ul.woocommerce-order-overview li{float:none;border:1px solid var(--line);border-radius:12px;background:var(--ink2);padding:14px 16px;margin:0;color:var(--mut);font-size:13px;text-transform:uppercase;letter-spacing:.05em}
.tfs ul.woocommerce-order-overview li strong{display:block;margin-top:4px;color:#fff;font-size:17px;text-transform:none;letter-spacing:0}
.tfs .woocommerce-order-details,.tfs .woocommerce-customer-details{margin-bottom:26px}
.tfs .woocommerce-order-details h2,.tfs .woocommerce-column__title,.tfs .woocommerce-customer-details h2{font-size:32px}
.tfs address{font-style:normal;background:var(--ink2);border:1px solid var(--line);border-radius:12px;padding:16px;color:#c4d1dc}

/* ---------- My account ---------- */
.woocommerce-account.logged-in .tfs .woocommerce{display:grid;grid-template-columns:250px minmax(0,1fr);gap:32px;align-items:start}
.tfs .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:8px;background:var(--ink2);border:1px solid var(--line);border-radius:var(--r)}
.tfs .woocommerce-MyAccount-navigation a{display:block;padding:12px 14px;border-radius:8px;font-weight:600}
.tfs .woocommerce-MyAccount-navigation li.is-active a,.tfs .woocommerce-MyAccount-navigation a:hover{background:#ffffff0f;color:var(--pump)}
.tfs .woocommerce-MyAccount-content{min-width:0}
.tfs .u-columns.col2-set{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tfs .woocommerce-account .woocommerce-form-login .button,.tfs .woocommerce-form-register .button{background:var(--pump);color:#1a0b00;box-shadow:none}

/* ---------- Sticky add-to-cart (phones) ---------- */
.tfs-sticky{display:none}

/* ---------- Select2 (country / state; dropdown lives outside .tfs) ---------- */
.select2-container--default .select2-selection--single{background:#0a0f1c;border:1px solid #ffffff33;border-radius:10px;height:46px;display:flex;align-items:center}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:#eaf1f5;line-height:44px;padding:0 14px;width:100%}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:44px;right:8px}
.select2-container--default.select2-container--focus .select2-selection--single,.select2-container--default.select2-container--open .select2-selection--single{border-color:#46d6e6}
.select2-dropdown{background:#121a2e;border:1px solid #ffffff2a;border-radius:10px;color:#eaf1f5;overflow:hidden;z-index:100000}
.select2-container--default .select2-search--dropdown .select2-search__field{background:#0a0f1c;color:#eaf1f5;border:1px solid #ffffff33;border-radius:8px;padding:8px 10px}
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#ff7a1a;color:#1a0b00}
.select2-container--default .select2-results__option[aria-selected=true],.select2-container--default .select2-results__option--selected{background:#1a2540;color:#fff}

/* ---------- Cart & Checkout BLOCKS ---------- */
.tfs .wp-block-woocommerce-cart,.tfs .wp-block-woocommerce-checkout,.tfs .wc-block-components-sidebar-layout{color:var(--bone)}
.tfs .wc-block-components-sidebar-layout{gap:32px}
.tfs .wc-block-cart__main,.tfs .wc-block-checkout__main{padding-right:0}
.tfs .wc-block-components-title,.tfs .wc-block-cart__totals-title,.tfs .wc-block-components-checkout-step__title{font-family:var(--hfont)!important;font-weight:900!important;text-transform:uppercase;font-size:28px!important;letter-spacing:.01em;color:var(--bone)}
.tfs .wc-block-cart-items,.tfs table.wc-block-cart-items{border:1px solid var(--line);border-radius:var(--r);background:var(--ink2);overflow:hidden;border-collapse:separate}
.tfs .wc-block-cart-items th{color:var(--mut);font-size:13px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line);padding:14px 18px}
.tfs .wc-block-cart-items td,.tfs .wc-block-cart-items__row{border-top:1px solid var(--line)}
.tfs .wc-block-cart-items__row td{padding:18px}
.tfs .wc-block-cart-item__image img{background:#fff;border-radius:10px;padding:6px}
.tfs .wc-block-components-product-name{color:var(--bone)!important;font-weight:700;text-decoration:none}
.tfs .wc-block-components-product-name:hover{color:var(--ghost)!important}
.tfs .wc-block-components-product-price,.tfs .wc-block-components-formatted-money-amount{color:var(--bone)}
.tfs .wc-block-components-sale-badge{background:var(--pump);color:#1a0b00;border:0;font-weight:800;border-radius:99px}
.tfs .wc-block-components-product-metadata,.tfs .wc-block-components-product-metadata__description{color:var(--mut)}
.tfs .wc-block-components-quantity-selector{background:var(--ink);border:1px solid #ffffff33;border-radius:10px;overflow:hidden}
.tfs .wc-block-components-quantity-selector::after{display:none}
.tfs .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{background:transparent;color:var(--bone);border:0;min-height:44px}
.tfs .wc-block-components-quantity-selector__button{color:var(--bone);background:#ffffff0d;opacity:1}
.tfs .wc-block-components-quantity-selector__button:hover{background:var(--pump);color:#1a0b00}
.tfs .wc-block-cart-item__remove-link,.tfs .wc-block-components-product-details{color:var(--mut)}
.tfs .wc-block-cart-item__remove-link:hover{color:var(--bad)}
.tfs .wc-block-cart__sidebar,.tfs .wc-block-checkout__sidebar{background:var(--ink2);border:1px solid var(--line);border-radius:var(--r);padding:24px!important;align-self:start}
.tfs .wc-block-components-totals-wrapper{border-color:var(--line)!important}
.tfs .wc-block-components-totals-item__label,.tfs .wc-block-components-totals-item__description{color:var(--mut)}
.tfs .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font:900 32px/1 var(--hfont);color:var(--pump)}
.tfs .wc-block-components-panel__button,.tfs .wc-block-components-totals-coupon__button,.tfs .wc-block-components-totals-shipping__change-address__link{color:var(--ghost)!important}
.tfs .wc-block-components-order-summary__button-text{color:var(--bone)}
.tfs .wc-block-components-order-summary-item__image img{background:#fff;border-radius:8px}
.tfs .wc-block-components-order-summary-item__quantity{background:var(--pump);color:#1a0b00;border:0;font-weight:800;box-shadow:none}
.tfs .wc-block-components-order-summary-item__total-price,.tfs .wc-block-components-order-summary-item__description{color:var(--bone)}
.tfs .wc-block-components-button:not(.is-link),.tfs .wc-block-cart__submit-button,.tfs .wc-block-components-checkout-place-order-button{min-height:56px;border-radius:10px;border:0;background:var(--pump)!important;color:#1a0b00!important;font-weight:800;font-size:17px;box-shadow:none;transition:box-shadow .2s,transform .2s}
.tfs .wc-block-components-button:not(.is-link):hover{box-shadow:0 0 28px #ff7a1a88;transform:translateY(-2px)}
.tfs .wc-block-components-button.outlined,.tfs .wc-block-components-totals-coupon__button{background:transparent!important;color:var(--bone)!important;box-shadow:inset 0 0 0 2px #ffffff40}
.tfs .wc-block-components-text-input input,.tfs .wc-block-components-text-input input[type=text],.tfs .wc-block-components-text-input input[type=email],.tfs .wc-block-components-text-input input[type=tel],.tfs .wc-block-components-text-input input[type=number],.tfs .wc-block-components-textarea,.tfs .wc-block-components-combobox .components-combobox-control__input,.tfs .wc-blocks-components-select__select,.tfs .wc-block-components-country-input select,.tfs .wc-block-components-state-input select,.tfs .wc-block-components-totals-coupon__input input{background:var(--ink)!important;color:var(--bone)!important;border:1px solid #ffffff33!important;border-radius:10px!important;box-shadow:none}
.tfs .wc-block-components-text-input label,.tfs .wc-block-components-combobox .components-form-field label,.tfs .wc-blocks-components-select__label,.tfs .wc-block-components-textarea+label{color:var(--mut)!important}
.tfs .wc-block-components-text-input input:focus,.tfs .wc-blocks-components-select__select:focus{border-color:var(--ghost)!important;box-shadow:0 0 0 3px #46d6e633!important}
.tfs .wc-block-components-text-input.has-error input{border-color:var(--bad)!important}
.tfs .wc-block-components-validation-error,.tfs .wc-block-components-text-input .wc-block-components-validation-error{color:var(--bad)}
.tfs .wc-block-components-radio-control__option,.tfs .wc-block-components-radio-control-accordion-option,.tfs .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option-checked{background:var(--ink2)!important;border:1px solid var(--line)!important;border-radius:12px;color:var(--bone)}
.tfs .wc-block-components-radio-control__option-checked{border-color:var(--pump)!important}
.tfs .wc-block-components-radio-control__input{background:var(--ink);border-color:#ffffff55}
.tfs .wc-block-components-radio-control__input:checked{border-color:var(--pump)}
.tfs .wc-block-components-radio-control__input:checked::before{background:var(--pump)}
.tfs .wc-block-components-radio-control__label,.tfs .wc-block-components-radio-control__description,.tfs .wc-block-components-radio-control__secondary-label{color:var(--bone)}
.tfs .wc-block-components-radio-control__description{color:var(--mut)}
.tfs .wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:#1a0b00}
.tfs .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{background:var(--ink);border-color:#ffffff55}
.tfs .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{background:var(--pump);border-color:var(--pump)}
.tfs .wc-block-components-checkbox__label,.tfs .wc-block-checkout__terms,.tfs .wc-block-components-checkout-step__description{color:var(--mut)}
.tfs .wc-block-checkout__terms a,.tfs .wc-block-components-checkbox__label a{color:var(--ghost)}
.tfs .wc-block-components-notice-banner{background:var(--ink2);color:var(--bone);border:1px solid var(--line);border-radius:12px}
.tfs .wc-block-components-notice-banner.is-error{border-left:4px solid var(--bad)}
.tfs .wc-block-components-notice-banner.is-success{border-left:4px solid var(--good)}
.tfs .wc-block-components-notice-banner>svg{fill:var(--bone);background:transparent}
.tfs .wc-block-components-address-card{background:var(--ink2);border:1px solid var(--line);border-radius:12px;color:var(--bone)}
.tfs .wc-block-components-express-payment--checkout{border-color:var(--line)}
.tfs .wc-block-components-express-payment-continue-rule::before,.tfs .wc-block-components-express-payment-continue-rule::after{border-color:var(--line)}
.tfs .wc-block-components-checkout-return-to-cart-button{color:var(--ghost)}
.tfs .wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option{padding-left:50px}
.tfs .wp-block-woocommerce-empty-cart-block,.tfs .wc-block-cart__empty-cart__title{text-align:center}

/* ---------- Responsive ---------- */
@media(max-width:1100px){
 .tfs ul.products,.tfs ul.products.columns-5{grid-template-columns:repeat(3,minmax(0,1fr))}
 .woocommerce-cart .tfs .woocommerce{grid-template-columns:minmax(0,1fr) 330px}
 .tfs-trust{grid-template-columns:1fr}
}
@media(max-width:900px){
 .tfs div.product{grid-template-columns:1fr;gap:22px}
 .tfs div.product .summary,.tfs .cart_totals,.tfs form.checkout #order_review,.tfs .wc-block-cart__sidebar,.tfs .wc-block-checkout__sidebar{position:static}
 .woocommerce-cart .tfs .woocommerce{display:block}
 .woocommerce-cart .tfs .woocommerce>.cart-collaterals{margin-top:8px}
 .tfs form.checkout{display:block}
 .tfs form.checkout #order_review{margin-top:26px}
 .woocommerce-account.logged-in .tfs .woocommerce{display:block}
 .tfs .woocommerce-MyAccount-navigation{margin-bottom:22px}
 .tfs .woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto;gap:4px}
 .tfs .woocommerce-MyAccount-navigation a{white-space:nowrap}
 .tfs-trust{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
 .tfs ul.products,.tfs ul.products.columns-2,.tfs ul.products.columns-3,.tfs ul.products.columns-5{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .tfs ul.products li.product{padding:10px}
 .tfs ul.products li.product .woocommerce-loop-product__title{font-size:14px}
 .tfs ul.products li.product .price{font-size:17px}
 .tfs ul.products li.product .button{padding:10px 8px;font-size:14px;min-height:44px}
 .tfs .woocommerce-result-count{float:none;display:block;margin:0 0 12px;line-height:1.4}
 .tfs .woocommerce-ordering{float:none;margin:0 0 20px}
 .tfs .woocommerce-ordering select{width:100%}
 .tfs-trust{grid-template-columns:1fr}
 .tfs div.product .woocommerce-tabs .woocommerce-Tabs-panel{padding:20px}
 .tfs div.product .woocommerce-tabs ul.tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
 .tfs div.product .woocommerce-tabs ul.tabs li{flex:none}
 .tfs .woocommerce-billing-fields__field-wrapper,.tfs .woocommerce-shipping-fields__field-wrapper,.tfs .woocommerce-address-fields__field-wrapper,.tfs .u-columns.col2-set{grid-template-columns:1fr}
 .tfs-steps li span{display:none}.tfs-steps li.current span{display:inline}
 .tfs-steps li+li::before{width:22px}

 /* Cart rows become cards */
 .tfs table.cart,.tfs table.cart tbody{display:block;border:0;background:none}
 .tfs table.cart thead{display:none}
 .tfs table.cart tr.cart_item{display:grid!important;grid-template-columns:84px 1fr auto;grid-template-areas:"thumb name remove" "thumb price price" "thumb qty sub";gap:6px 14px;align-items:center;background:var(--ink2);border:1px solid var(--line);border-radius:var(--r);padding:14px;margin:0 0 12px}
 .tfs table.cart tr.cart_item td{display:block!important;border:0!important;padding:0!important;text-align:left!important;width:auto!important}
 .tfs table.cart tr.cart_item td::before{display:none!important}
 .tfs table.cart td.product-thumbnail{grid-area:thumb;align-self:start}
 .tfs table.cart td.product-thumbnail img{width:84px;height:84px}
 .tfs table.cart td.product-name{grid-area:name}
 .tfs table.cart td.product-remove{grid-area:remove;justify-self:end;align-self:start}
 .tfs table.cart td.product-price{grid-area:price;color:var(--mut)}
 .tfs table.cart td.product-quantity{grid-area:qty}
 .tfs table.cart td.product-subtotal{grid-area:sub;text-align:right!important;font-weight:700;color:var(--pump)}
 .tfs table.cart tr:not(.cart_item){display:block;border:0}
 .tfs table.cart td.actions{display:block!important;background:var(--ink2);border:1px solid var(--line)!important;border-radius:var(--r);padding:16px!important}
 .tfs td.actions .coupon{float:none;display:flex;margin-bottom:12px}
 .tfs td.actions .coupon .input-text{flex:1;width:auto!important;min-width:0}
 .tfs td.actions>.button{float:none;width:100%}

 /* Order review + totals tables keep stacked rows readable */
 .tfs table.shop_table_responsive tr td::before,.tfs table.shop_table_responsive tr th::before{color:var(--mut)}
 .tfs .cart_totals,.tfs form.checkout #order_review{padding:18px}

 /* Sticky add-to-cart bar */
 .tfs-sticky{display:block;position:fixed;left:0;right:0;bottom:0;z-index:90;background:#000;border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));transform:translateY(110%);transition:transform .3s ease;box-shadow:0 -12px 30px #000a}
 .tfs-sticky.is-on{transform:none}
 .tfs-sticky-in{display:flex;align-items:center;gap:12px}
 .tfs-sticky .t{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
 .tfs-sticky .t b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .tfs-sticky .t span{font:900 22px/1.1 var(--hfont);color:var(--pump)}
 .tfs-sticky .t span del{font-size:14px;color:var(--mut);margin-right:4px}.tfs-sticky .t span ins{text-decoration:none}
 .tfs-sticky .button{flex:none;min-height:50px;padding:12px 22px;font-size:16px}
 .tfs-sticky .t .screen-reader-text{display:none}
 .tfs-sticky-pad .tfs-ftr{padding-bottom:96px}
}
@media(max-width:380px){.tfs ul.products{gap:8px}.tfs table.cart tr.cart_item{grid-template-columns:70px 1fr 32px}.tfs table.cart td.product-thumbnail img{width:70px;height:70px}}

/* Sticky side columns only where there is room (wide and tall screens) */
@media(min-width:901px) and (min-height:760px){
 .tfs div.product .summary,.tfs .cart_totals,.tfs form.checkout #order_review,.tfs .wc-block-cart__sidebar,.tfs .wc-block-checkout__sidebar{position:sticky;top:110px}
}
