/* Shared native sidecart, independent of the current page's product styles. */
html body .mfn-cart-holder {
 position:fixed!important; inset-block:0!important; right:0!important; left:auto!important;
 width:420px!important; width:min(420px,100vw)!important; max-width:100vw; height:100vh!important; height:100dvh!important;
 display:flex!important; flex-direction:column; box-sizing:border-box; padding:0!important; margin:0!important;
 background:#fff; color:#262425; font:400 .875rem/1.5 Ubuntu,sans-serif;
 transform:translateX(100%)!important; visibility:hidden; pointer-events:none; transition:transform .2s ease,visibility .2s;
 z-index:100001!important; overflow:hidden;
}
html.mfn-cart-opened body .mfn-cart-holder { transform:translateX(0)!important; visibility:visible; pointer-events:auto; }
html body .mfn-cart-overlay { position:fixed!important; inset:0!important; background:rgba(0,0,0,.45); z-index:100000!important; }
html.mfn-cart-opened { overflow:hidden; }
html.mfn-cart-opened :is(.smartctl-wa,#zsiq_float) { visibility:hidden!important; }
html body .mfn-cart-holder .mfn-ch-header { display:flex!important; flex:0 0 auto; align-items:center; justify-content:space-between; gap:12px; padding:16px!important; min-height:72px; border-bottom:1px solid #e2e5e9; box-sizing:border-box; }
html body .mfn-cart-holder .mfn-ch-header h3 { order:0; margin:0; text-align:left; font-size:1.25rem; line-height:1.3; }
html body .mfn-cart-holder .mfn-ch-header .close-mfn-cart { order:1; transform:none!important; position:static!important; display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px!important; margin:0!important; color:#262425; }
html body .mfn-cart-holder .mfn-ch-content-wrapper { position:static!important; flex:1 1 auto; min-height:0; height:auto!important; overflow:auto; overscroll-behavior:contain; }
html body .mfn-cart-holder .mfn-ch-content { padding:0 16px!important; height:auto!important; min-height:0; box-sizing:border-box; }
html body .mfn-cart-holder .mfn-ch-product { display:grid!important; grid-template-columns:56px minmax(0,1fr) auto; gap:12px; padding:16px 0!important; margin:0; border-bottom:1px solid #e2e5e9; }
html body .mfn-cart-holder .mfn-chp-col { width:auto!important; min-width:0; padding:0!important; }
html body .mfn-cart-holder .mfn-ch-content .mfn-ch-product .mfn-chp-image img { display:block; width:56px; height:64px; object-fit:contain; }
html body .mfn-cart-holder .mfn-ch-content .mfn-ch-product .mfn-chp-name { font-size:.875rem; line-height:1.45; margin:0 0 6px; }
html body .mfn-cart-holder .mfn-ch-content .mfn-ch-product .mfn-chp-name a { color:#262425; }
html body .mfn-cart-holder .mfn-ch-content .mfn-ch-product .mfn-chp-info .price { font-size:.8125rem!important; color:#555!important; line-height:1.4; margin:0; }
html body .mfn-cart-holder .mfn-ch-content .mfn-ch-product .mfn-chp-price { font-size:.9375rem; line-height:1.4; white-space:nowrap; }
html body .mfn-cart-holder .mfn-chp-footer { grid-column:1/-1; width:auto!important; background:transparent!important; border:0!important; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; margin:0!important; padding:0!important; }
html body .mfn-cart-holder .mfn-chpf-col { width:auto!important; padding:0!important; margin:0!important; flex:0 0 auto!important; }
html body .mfn-cart-holder .mfn-ch-content .mfn-ch-product .mfn-chp-footer .mfn-chpf-col .mfn-chp-quantity .quantity { display:flex!important; flex-flow:row nowrap!important; height:44px!important; padding:0!important; border:1px solid #d5d8de; border-radius:5px; box-sizing:content-box; align-items:center; width:132px!important; margin:0!important; }
html body .mfn-cart-holder .mfn-ch-content .mfn-ch-product .mfn-chp-footer .mfn-chpf-col .mfn-chp-quantity .quantity .quantity-change { position:static!important; inset:auto!important; display:inline-flex!important; align-items:center; justify-content:center; flex:0 0 44px!important; box-sizing:border-box; width:44px; height:44px; margin:0; }
html body .mfn-cart-holder .mfn-ch-content .mfn-ch-product .mfn-chp-footer .mfn-chpf-col .mfn-chp-quantity .quantity input.qty { flex:0 0 44px!important; width:44px!important; box-sizing:border-box; max-width:44px!important; height:44px!important; min-width:0!important; min-height:44px; border:0!important; text-align:center!important; opacity:1!important; -webkit-text-fill-color:#262425; padding:4px!important; margin:0!important; font-size:1rem!important; }
html body .mfn-cart-holder .mfn-chp-remove { display:inline-flex!important; align-items:center; min-height:44px; font-size:.8125rem; }
html body .mfn-cart-holder .mfn-ch-footer { position:static!important; flex:0 0 auto; width:100%; padding:16px!important; box-sizing:border-box; border-top:1px solid #e2e5e9; background:#f7f8fa; }
html body .mfn-cart-holder .mfn-chft-row { display:flex; justify-content:space-between; gap:12px; font-size:.875rem; margin:0 0 6px; }
html body .mfn-cart-holder .mfn-chft-total { font-size:1.125rem; padding-top:8px; margin-top:8px; border-top:1px solid #e2e5e9; }
html body .mfn-cart-holder .mfn-ch-footer-buttons .button,
html body .mfn-cart-holder .smc-empty-shop { display:flex; align-items:center; justify-content:center; box-sizing:border-box; min-height:48px; margin:16px 0 0; padding:12px; width:100%; background:#3351ef!important; color:#fff!important; border-radius:5px; font-size:1rem!important; line-height:1.4; text-decoration:none; }
html body .mfn-cart-holder .mfn-ch-footer-links { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 16px; }
html body .mfn-cart-holder .mfn-ch-footer-links a { display:inline-flex; align-items:center; min-height:36px; font-size:.8125rem; }
html body .mfn-cart-holder :is(a,input,button):focus-visible { outline:3px solid #3351ef; outline-offset:2px; }
html body .mfn-cart-holder.smc-cart-empty .mfn-ch-footer,
html body .mfn-cart-holder:has(.cart-empty) .mfn-ch-footer { display:none!important; }
html body .mfn-cart-holder .cart-empty { padding:24px 16px; text-align:center; }
/* Catalog tables use the site's type, neutral separators and compact product rows. */
html body .wpt-wrap { --smc-table-ink:#262425; --smc-table-line:#e2e5e9; font-family:Ubuntu,sans-serif; }
html body .wpt_table_tag_wrapper { container-type:inline-size; max-width:100%; }
html body .wpt-wrap #wpt_table.wpt_product_table { width:100%!important; max-width:100%; border:0!important; border-collapse:collapse!important; border-spacing:0!important; margin:0!important; color:var(--smc-table-ink); }
html body .wpt-wrap #wpt_table.wpt_product_table tr.wpt_row { border:0!important; border-bottom:1px solid var(--smc-table-line)!important; border-radius:0!important; box-shadow:none!important; background:#fff!important; }
html body .wpt-wrap #wpt_table.wpt_product_table :is(td,th) { box-sizing:border-box; border:0!important; padding:16px 12px!important; vertical-align:middle!important; background:transparent!important; text-align:left; font:400 .875rem/1.5 Ubuntu,sans-serif!important; }
html body .wpt-wrap #wpt_table.wpt_product_table th { color:#555; font-weight:500!important; background:#f7f8fa!important; }
html body .wpt-wrap #wpt_table.wpt_product_table td.wpt_thumbnails { width:88px; padding-left:0!important; }
html body .wpt-wrap #wpt_table.wpt_product_table td.wpt_thumbnails img { display:block; width:64px!important; height:64px!important; max-width:100%; object-fit:contain; margin:0!important; }
html body .wpt-wrap #wpt_table.wpt_product_table .wpt_product_title_in_td { color:var(--smc-table-ink)!important; font:500 .875rem/1.45 Ubuntu,sans-serif!important; text-decoration:none; overflow-wrap:anywhere; }
html body .wpt-wrap #wpt_table.wpt_product_table .wpt_product_title_in_td:hover { color:#3351ef!important; text-decoration:underline; text-underline-offset:3px; }
html body .wpt-wrap #wpt_table.wpt_product_table .item_inside_cell { margin:0!important; padding:0!important; }
html body .wpt-wrap #wpt_table.wpt_product_table :is(.wpt_sku,.wpt_stock,.wpt_stock p.stock) { font:400 .75rem/1.5 Ubuntu,sans-serif!important; color:#555!important; margin:4px 0 0!important; overflow-wrap:anywhere; }
html body .wpt-wrap #wpt_table.wpt_product_table td.wpt_price { width:170px; }
html body .wpt-wrap #wpt_table.wpt_product_table .wpt_product_price,
html body .wpt-wrap #wpt_table.wpt_product_table .wpt_product_price span { color:var(--smc-table-ink)!important; font:500 1rem/1.4 Ubuntu,sans-serif!important; font-variant-numeric:tabular-nums; }
html body .wpt-wrap #wpt_table.wpt_product_table .woocommerce-price-suffix { display:block; font:400 .75rem/1.5 Ubuntu,sans-serif!important; color:#555!important; }
html body .wpt-wrap #wpt_table.wpt_product_table td.wpt_action { width:168px; padding-right:0!important; }
html body .wpt-wrap :is(.wpt-stats-report p,.wpt-pagination) { font:400 .75rem/1.5 Ubuntu,sans-serif!important; color:#555!important; }
html body .wpt-wrap .wpt_load_more { min-height:44px; border:1px solid #e2e5e9!important; border-radius:5px; background:#fff!important; color:#262425!important; box-shadow:none; padding:10px 20px!important; font:500 .875rem/1.5 Ubuntu,sans-serif!important; letter-spacing:normal; text-transform:none; }
html body .wpt-wrap :is(a,button,input):focus-visible { outline:3px solid #3351ef!important; outline-offset:2px; }
@container(max-width:700px) {
 html body .wpt-wrap #wpt_table.wpt_product_table { display:block; }
 html body .wpt-wrap #wpt_table.wpt_product_table > tbody { display:block; width:100%; }
 /* Apply only to the four-column product catalog; other configured tables keep native layouts. */
 html body .wpt-wrap #wpt_table.wpt_product_table tr.visible_row:has(>td.wpt_thumbnails):has(>td.wpt_product_title):has(>td.wpt_price):has(>td.wpt_action):not(:has(>td:nth-child(5))) {
  display:grid!important; grid-template-columns:64px minmax(0,1fr) 144px; grid-template-areas:"image info info" "price price action";
  gap:12px; padding:16px 0!important; margin:0!important; width:100%!important;
 }
 html body .wpt-wrap #wpt_table.wpt_product_table tr.visible_row > td { min-width:0; }
 html body .wpt-wrap #wpt_table.wpt_product_table tr.visible_row:has(>td.wpt_thumbnails):has(>td.wpt_product_title):has(>td.wpt_price):has(>td.wpt_action):not(:has(>td:nth-child(5))) > td {
  display:block!important; float:none!important; width:auto!important; margin:0!important; padding:0!important; text-align:left!important;
 }
 html body .wpt-wrap #wpt_table.wpt_product_table tr.visible_row > td.wpt_thumbnails { grid-area:image; }
 html body .wpt-wrap #wpt_table.wpt_product_table tr.visible_row > td.wpt_product_title { grid-area:info; }
 html body .wpt-wrap #wpt_table.wpt_product_table tr.visible_row > td.wpt_price { grid-area:price; align-self:center; }
 html body .wpt-wrap #wpt_table.wpt_product_table tr.visible_row > td.wpt_action { grid-area:action; align-self:center; }
 html body .wpt-wrap #wpt_table.wpt_product_table td::before,
 html body .wpt-wrap #wpt_table.wpt_product_table .autoresponsive-label-show::before { display:none!important; }
}
/* WPT actions keep their native behavior, with a common shape in both stock states. */
html body .wpt_table_tag_wrapper .wpt_action :is(a.wpt_woo_add_cart_button,a.smartctl-cta__ver,a.smartctl-add-loop,a.smartctl-cta-loop,button.single_add_to_cart_button) {
 display:inline-flex!important; align-items:center; justify-content:center; gap:6px; box-sizing:border-box;
 width:100%!important; max-width:180px; min-width:0!important; height:auto!important; min-height:44px!important;
 padding:10px 12px!important; border:0!important; border-radius:5px!important;
 font:500 .875rem/1.4 Ubuntu,sans-serif!important; letter-spacing:normal!important; text-transform:none!important;
 white-space:normal!important; text-align:center; text-decoration:none!important; box-shadow:none;
}
html body .wpt_table_tag_wrapper .wpt_action :is(a.wpt_woo_add_cart_button,a.smartctl-add-loop,button.single_add_to_cart_button) { background:#3351ef!important; color:#fff!important; }
html body .wpt_table_tag_wrapper .wpt_action :is(a.smartctl-cta__ver,a.smartctl-cta-loop) { background:#262425!important; color:#fff!important; }
html body .wpt_table_tag_wrapper .wpt_action .button svg { width:16px; height:16px; flex:0 0 16px; }
@media(prefers-reduced-motion:reduce) { html body .mfn-cart-holder { transition:none; } }
