/* WordPress + WooCommerce bridge. WooCommerce core styles are intentionally disabled by the theme. */
.admin-bar .site-header{top:32px}
.admin-bar .filters{top:148px}

.sm-page-content,.sm-wc-native-content{padding:48px 0 80px}
.sm-page-content{max-width:1000px}
.sm-page-content>*:first-child,.sm-wc-native-content>*:first-child{margin-top:0}
.sm-wc-native-content,.sm-wc-native-content .woocommerce,.sm-wc-native-content .wc-block-cart,.sm-wc-native-content .wc-block-checkout{min-width:0;overflow-wrap:anywhere}
.sm-wc-native-content .woocommerce{font-size:14px;line-height:1.55;color:var(--ink)}
.sm-wc-native-content .woocommerce p,.sm-wc-native-content .woocommerce li{line-height:1.55}

/* Notices */
.woocommerce-error,.woocommerce-info,.woocommerce-message{position:relative;margin:24px 0;padding:15px 18px;border:1px solid #dce3eb;border-left:4px solid var(--blue);border-radius:9px;background:#fff;color:var(--ink);list-style:none;overflow-wrap:anywhere}
.woocommerce-error{border-left-color:var(--pink)}
.woocommerce-message a,.woocommerce-info a,.woocommerce-error a{font-weight:800;text-decoration:underline;text-underline-offset:2px}

/* Buttons and form controls */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:0;border-radius:8px;background:var(--ink);color:#fff;font-size:13px;font-weight:800;line-height:1.2;letter-spacing:.01em;text-align:center;cursor:pointer;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,opacity .18s ease}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce #place_order{background:var(--pink)}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:#071a2d;color:#fff;transform:translateY(-1px)}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover,.woocommerce #place_order:hover{background:#dc075f}
.woocommerce button.button:disabled,.woocommerce button.button.disabled,.woocommerce input.button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.woocommerce a.button:focus-visible,.woocommerce button.button:focus-visible,.woocommerce input.button:focus-visible{outline:3px solid rgba(7,139,241,.28);outline-offset:3px}

.woocommerce form .form-row{margin:0 0 17px;padding:0}
.woocommerce form .form-row label{display:block;margin-bottom:8px;font-size:13px;font-weight:800;line-height:1.4;color:var(--ink)}
.woocommerce form .form-row .required{color:var(--pink);text-decoration:none}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce .select2-container .select2-selection--single{width:100%;min-height:48px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px;color:var(--ink);font:inherit;font-size:14px;line-height:1.4;transition:border-color .18s ease,box-shadow .18s ease}
.woocommerce .select2-container .select2-selection--single{display:flex;align-items:center;padding:7px 11px}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{height:46px}
.woocommerce form .form-row textarea{min-height:120px;resize:vertical}
.woocommerce form .form-row input:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus,.woocommerce .select2-container--focus .select2-selection--single{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px rgba(7,139,241,.1)}
.woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:#c92b4c;box-shadow:0 0 0 3px rgba(201,43,76,.08)}
.woocommerce form .form-row.woocommerce-validated input.input-text{border-color:#62a987}

/* Tables */
.woocommerce table.shop_table{width:100%;margin:0 0 26px;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:15px;border:0;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;overflow-wrap:anywhere}
.woocommerce table.shop_table th{background:#f7f9fb;color:#425164;font-size:13px;font-weight:850}
.woocommerce table.shop_table td{font-size:14px}
.woocommerce table.shop_table tr:last-child td{border-bottom:0}
.woocommerce table.shop_table img{display:block;width:72px;height:72px;object-fit:contain;border-radius:8px;background:#f7f9fb}
.woocommerce table.shop_table .product-name a{font-weight:800;color:var(--ink);line-height:1.4}
.woocommerce table.shop_table .product-name a:hover{color:var(--pink)}
.woocommerce table.shop_table .product-price,.woocommerce table.shop_table .product-subtotal{font-weight:800;white-space:nowrap}

/* Classic cart */
.woocommerce-cart-form{min-width:0;margin-bottom:28px}
.woocommerce-cart-form table.shop_table_responsive{width:100%}
.woocommerce-cart-form table.shop_table_responsive thead{display:table-header-group}
.woocommerce-cart-form table.shop_table_responsive tr{display:table-row}
.woocommerce-cart-form table.shop_table_responsive td{display:table-cell}
.woocommerce-cart-form td.product-remove{width:48px;text-align:center}
.woocommerce-cart-form td.product-remove a.remove{width:40px;height:40px;display:grid;place-items:center;margin:auto;border-radius:50%;color:#8b96a3;font-size:22px;line-height:1;text-decoration:none;transition:background .18s ease,color .18s ease}
.woocommerce-cart-form td.product-remove a.remove:hover{background:#fff0f5;color:var(--pink)}
.woocommerce-cart-form td.product-thumbnail{width:96px}
.woocommerce-cart-form .actions{background:#fbfcfd}
.woocommerce .quantity{display:inline-flex;align-items:center}
.woocommerce .quantity .qty{width:78px;height:44px;border:1px solid var(--line);border-radius:7px;background:#fff;text-align:center;font:inherit;font-size:13px;font-weight:800}
.woocommerce .coupon{display:flex;align-items:center;gap:8px}
.woocommerce .coupon label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.woocommerce .coupon .input-text{height:48px;min-width:200px;border:1px solid var(--line);border-radius:8px;padding:0 12px;font:inherit;font-size:13px}
.woocommerce-cart .cart-collaterals{display:flex;justify-content:flex-end;min-width:0}
.woocommerce-cart .cart-collaterals .cart_totals{width:min(100%,540px)}
.cart_totals{margin-left:auto;max-width:540px;padding:22px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.cart_totals h2{margin:0 0 16px;font-size:22px}
.cart_totals table.shop_table{margin-bottom:18px;border-radius:9px}
.cart_totals table.shop_table th{width:45%;background:#fafbfc}
.cart_totals .wc-proceed-to-checkout{padding:0}
.cart_totals .checkout-button{width:100%;min-height:52px;font-size:13px}
.woocommerce-shipping-calculator .shipping-calculator-button{font-weight:800;text-decoration:underline;text-underline-offset:3px}

/* Classic checkout */
.woocommerce-checkout form.checkout{min-width:0}
.woocommerce-checkout .col2-set,.woocommerce-account .col2-set{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;width:100%}
.woocommerce-checkout #customer_details{min-width:0}
.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{min-width:0;width:auto;float:none}
.woocommerce-checkout #customer_details h3,.woocommerce-checkout #order_review_heading{margin:0 0 18px;font-size:23px;line-height:1.2}
.woocommerce-checkout #order_review_heading{margin-top:36px}
.woocommerce-checkout-review-order{min-width:0;padding:20px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.woocommerce-checkout-review-order table.shop_table{margin-bottom:18px}
.woocommerce-checkout-payment{margin-top:20px!important;border:1px solid var(--line)!important;border-radius:11px!important;background:#f7f9fb!important;overflow:hidden}
.woocommerce-checkout-payment ul.payment_methods{margin:0!important;padding:18px!important;border-bottom:1px solid var(--line)!important;list-style:none}
.woocommerce-checkout-payment ul.payment_methods li{margin:0 0 12px;overflow-wrap:anywhere}
.woocommerce-checkout-payment ul.payment_methods li:last-child{margin-bottom:0}
.woocommerce-checkout-payment .payment_box{margin:10px 0 0!important;padding:14px!important;border-radius:8px;background:#fff!important;color:#4f5d6d!important;font-size:13px!important;line-height:1.55!important}
.woocommerce-checkout-payment .place-order{margin:0!important;padding:18px!important}
.woocommerce-checkout-payment #place_order{width:100%;min-height:52px;font-size:13px}
.woocommerce-terms-and-conditions-wrapper{font-size:13px;line-height:1.55;color:#5e6a78}

/* Account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr);gap:28px;align-items:start}
.woocommerce-account .woocommerce>*:not(.woocommerce-MyAccount-navigation):not(.woocommerce-MyAccount-content){grid-column:1/-1}
.woocommerce-account .woocommerce-MyAccount-navigation{float:none;width:auto}
.woocommerce-account .woocommerce-MyAccount-content{float:none;width:auto;min-width:0}
.woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.woocommerce-MyAccount-navigation a{display:block;padding:13px 15px;border-bottom:1px solid var(--line);font-size:12px;font-weight:800}
.woocommerce-MyAccount-navigation li:last-child a{border-bottom:0}
.woocommerce-MyAccount-navigation .is-active a{background:var(--navy);color:#fff}

/* Drawer content supplied by Woo fragments. */
.drawer .cart-drawer__content{display:flex;flex-direction:column;min-height:0}
.drawer .cart-empty{min-height:220px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:35px;color:var(--muted)}
.drawer .cart-empty svg{width:36px;height:36px;margin-bottom:12px}
.drawer .cart-empty strong{color:var(--ink);font-size:16px}
.drawer .cart-empty span{max-width:260px;margin-top:5px;font-size:12px;line-height:1.45}
.drawer .cart-items{display:flex;flex-direction:column}
.drawer .cart-item{position:relative;display:grid;grid-template-columns:70px minmax(0,1fr) 36px;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.drawer .cart-item__image{display:block;border-radius:9px;background:#f8fafc;overflow:hidden}
.drawer .cart-item img{display:block;width:70px;height:70px;object-fit:contain;background:#f8fafc}
.drawer .cart-item__copy{min-width:0}
.drawer .cart-item__title{display:block;color:var(--ink);font-size:13px;font-weight:800;line-height:1.35;text-decoration:none;overflow-wrap:anywhere}
.drawer .cart-item__title:hover{color:var(--pink)}
.drawer .cart-item__meta{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.45}
.drawer .cart-item__line-total{display:block;margin-top:6px;color:var(--ink);font-size:14px;font-weight:900;line-height:1.2}
.drawer .cart-item__remove{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:#73808e;transition:background .18s ease,color .18s ease}
.drawer .cart-item__remove:hover{background:#fff0f5;color:var(--pink)}
.drawer .cart-drawer__total{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding:16px 0 12px;border-top:1px solid var(--line);color:var(--text);font-size:12px}
.drawer .cart-drawer__total span{color:var(--muted)}
.drawer .cart-drawer__total strong{color:var(--ink);font-size:20px;white-space:nowrap}
.drawer .cart-drawer__actions{display:grid;gap:9px;padding-bottom:8px}
.drawer .cart-drawer__actions .btn{min-height:48px}

/* Shop / category additions. */
.sm-shop-empty{grid-column:1/-1;padding:45px;border:1px dashed var(--line);border-radius:10px;text-align:center;color:var(--muted)}
.sm-pagination{margin-top:34px}
.sm-pagination ul{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.sm-pagination a,.sm-pagination span{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:12px;font-weight:750}
.sm-pagination .current{background:var(--navy);border-color:var(--navy);color:#fff}
.product-card .add-cart{display:grid;place-items:center;text-decoration:none}
.product-card .add-cart.loading{opacity:.55;pointer-events:none}
.product-card .add-cart.added::after{display:none}
.product-card[hidden]{display:none!important}

/* Single product dynamic panels. */
.product-color{display:flex;align-items:center;gap:9px;text-decoration:none}
.sm-spec-list{margin:0}
.sm-spec-list>div{display:grid;grid-template-columns:1fr 1.3fr;gap:25px;padding:12px 0;border-bottom:1px solid var(--line)}
.sm-spec-list dt{font-weight:800;color:var(--ink)}
.sm-spec-list dd{margin:0;color:var(--muted);overflow-wrap:anywhere}
.sm-compat-panel{margin:10px 0 25px}
.product-description [data-product-panel]{min-height:130px}
.price-table tr.is-active{background:#f7fbff}
.single_add_to_cart_button:disabled{opacity:.5;cursor:not-allowed}
.sm-product-cart{margin:0}
.sm-product-cart .product-icons{margin-top:24px}
.product-b2b-calculator .section-kicker{margin-bottom:4px}
.order-summary-sticky [data-sm-b2b-add]{margin-top:18px}

/* Search and feedback. */
.sm-search-spinner{display:inline-block;width:18px;height:18px;border:2px solid #dce4eb;border-top-color:var(--pink);border-radius:50%;animation:sm-spin .7s linear infinite}
@keyframes sm-spin{to{transform:rotate(360deg)}}
.form-success{margin-top:12px;padding:11px 13px;border-radius:7px;background:#edfdf3;color:#087a3b;font-size:12px}
.contact-form button[disabled]{opacity:.55;cursor:wait}

/* WooCommerce Cart / Checkout Blocks */
.sm-wc-native-content .wc-block-cart,.sm-wc-native-content .wc-block-checkout{font-family:inherit;color:var(--ink)}
.sm-wc-native-content .wc-block-components-sidebar-layout{gap:28px;align-items:start}
.sm-wc-native-content .wc-block-components-main{min-width:0}
.sm-wc-native-content .wc-block-components-sidebar{min-width:0;border:1px solid var(--line);border-radius:12px;background:#fff;padding:20px}
.sm-wc-native-content .wc-block-components-product-name{font-weight:800;line-height:1.4;overflow-wrap:anywhere}
.sm-wc-native-content .wc-block-components-product-metadata,.sm-wc-native-content .wc-block-components-product-price{font-size:13px;line-height:1.5}
.sm-wc-native-content .wc-block-components-text-input input,.sm-wc-native-content .wc-block-components-combobox .components-combobox-control__input{min-height:48px;border-radius:8px!important;font:inherit!important}
.sm-wc-native-content .wc-block-components-button{min-height:50px;border-radius:8px;font-size:13px;font-weight:800}
.sm-wc-native-content .wc-block-cart__submit-button,.sm-wc-native-content .wc-block-components-checkout-place-order-button{background:var(--pink);color:#fff;border:0}
.sm-wc-native-content .wc-block-components-order-summary-item{min-width:0}
.sm-wc-native-content .wc-block-components-order-summary-item__description{min-width:0;overflow-wrap:anywhere}
.sm-wc-native-content .wc-block-cart-items td{vertical-align:middle}
.sm-wc-native-content .wc-block-cart-item__image img{object-fit:contain;border-radius:8px;background:#f7f9fb}

@media(max-width:782px){
  .admin-bar .site-header{top:46px}
  .admin-bar .filters{top:0}
  .sm-wc-native-content{padding:28px 0 64px}
  .woocommerce-checkout .col2-set,.woocommerce-account .col2-set{grid-template-columns:1fr;gap:18px}
  .woocommerce-account .woocommerce{grid-template-columns:1fr;gap:20px}

  /* Classic cart becomes card-based on phones/tablets. */
  .woocommerce-cart-form{overflow:visible}
  .woocommerce-cart-form table.shop_table_responsive{display:block;border:0;background:transparent;overflow:visible}
  .woocommerce-cart-form table.shop_table_responsive thead{display:none}
  .woocommerce-cart-form table.shop_table_responsive tbody{display:grid;gap:12px}
  .woocommerce-cart-form table.shop_table_responsive tr{position:relative;display:block;width:100%;padding:15px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 6px 20px rgba(4,20,37,.035)}
  .woocommerce-cart-form table.shop_table_responsive td{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:14px;padding:9px 0!important;border:0!important;text-align:right!important;font-size:13px}
  .woocommerce-cart-form table.shop_table_responsive td::before{content:attr(data-title);max-width:44%;color:#65717f;font-size:12px;font-weight:750;line-height:1.4;text-align:left}
  .woocommerce-cart-form table.shop_table_responsive td.product-remove{position:absolute;z-index:2;right:10px;top:10px;width:44px;padding:0!important}
  .woocommerce-cart-form table.shop_table_responsive td.product-remove::before,.woocommerce-cart-form table.shop_table_responsive td.product-thumbnail::before,.woocommerce-cart-form table.shop_table_responsive td.product-name::before,.woocommerce-cart-form table.shop_table_responsive td.actions::before{display:none}
  .woocommerce-cart-form table.shop_table_responsive td.product-thumbnail{display:block;padding:0 48px 10px 0!important;text-align:left!important}
  .woocommerce-cart-form table.shop_table_responsive td.product-thumbnail img{width:76px;height:76px}
  .woocommerce-cart-form table.shop_table_responsive td.product-name{display:block;padding:4px 48px 10px 0!important;text-align:left!important}
  .woocommerce-cart-form table.shop_table_responsive td.product-name a{font-size:14px}
  .woocommerce-cart-form table.shop_table_responsive td.product-quantity .quantity{margin-left:auto}
  .woocommerce-cart-form table.shop_table_responsive td.actions{display:block;margin:6px -15px -15px;padding:14px 15px!important;border-top:1px solid var(--line)!important;border-radius:0 0 12px 12px;background:#fafbfc;text-align:left!important}
  .woocommerce-cart-form table.shop_table_responsive td.actions .button[name="update_cart"]{width:100%;margin-top:10px}
  .woocommerce .coupon{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .woocommerce .coupon .input-text{width:100%;min-width:0}
  .woocommerce-cart .cart-collaterals{display:block}
  .woocommerce-cart .cart-collaterals .cart_totals,.cart_totals{width:100%;max-width:none;margin:18px 0 0;padding:18px}
  .cart_totals table.shop_table th,.cart_totals table.shop_table td{padding:12px;font-size:13px}

  /* Checkout stacks cleanly without narrow columns or clipped labels. */
  .woocommerce-checkout #customer_details{display:grid;grid-template-columns:1fr;gap:12px}
  .woocommerce-checkout #order_review_heading{margin-top:30px}
  .woocommerce-checkout-review-order{padding:15px}
  .woocommerce-checkout-review-order table.shop_table th,.woocommerce-checkout-review-order table.shop_table td{padding:12px 10px;font-size:13px}
  .woocommerce-checkout-payment ul.payment_methods,.woocommerce-checkout-payment .place-order{padding:15px!important}
  .woocommerce-checkout-payment #place_order{min-height:54px}

  /* Blocks */
  .sm-wc-native-content .wc-block-cart,.sm-wc-native-content .wc-block-checkout{width:100%;max-width:100%}
  .sm-wc-native-content .wc-block-components-sidebar-layout{display:block!important}
  .sm-wc-native-content .wc-block-components-main,.sm-wc-native-content .wc-block-components-sidebar{width:100%!important;max-width:none!important}
  .sm-wc-native-content .wc-block-components-sidebar{margin-top:18px;padding:16px}
  .sm-wc-native-content .wc-block-cart-items{font-size:13px}
  .sm-wc-native-content .wc-block-cart-item__product{min-width:0}
}

@media(max-width:480px){
  .sm-wc-native-content{padding-top:22px}
  .woocommerce .coupon{grid-template-columns:1fr}
  .woocommerce .coupon .button{width:100%}
  .woocommerce-cart-form table.shop_table_responsive tr{padding:14px}
  .woocommerce-cart-form table.shop_table_responsive td.actions{margin:6px -14px -14px;padding:14px!important}
  .woocommerce-checkout-review-order{padding:12px}
  .woocommerce table.shop_table{font-size:12px}
  .sm-spec-list>div{grid-template-columns:1fr;gap:4px}
  .drawer .cart-item{grid-template-columns:62px minmax(0,1fr) 40px;gap:10px}
  .drawer .cart-item img{width:62px;height:62px}
  .drawer .cart-item__title{font-size:13px}
  .drawer .cart-drawer__total strong{font-size:18px}
  .sm-wc-native-content .wc-block-components-sidebar{padding:14px}
}
