/* 0.8.3: one scoped layout; core WooCommerce controls form behaviour. */
#hsb-kf-shop{--kf-border:#e1e6e2;--kf-muted:#64736a;box-sizing:border-box;min-width:0;width:100%;margin:0;clear:both;background:var(--kf-wc-background,#f5f7f4);color:var(--kf-wc-text,#25312a);padding-top:var(--kf-header-clearance,0px)}
#hsb-kf-shop *,#hsb-kf-shop *::before,#hsb-kf-shop *::after{box-sizing:border-box}
#hsb-kf-shop .hsb-kf-shell-inner{width:calc(100% - 40px);max-width:1260px;min-width:0;margin-inline:auto}
#hsb-kf-shop.hsb-kf-shell--cart,#hsb-kf-shop.hsb-kf-shell--checkout{padding-bottom:56px}
#hsb-kf-shop>.hsb-kf-shell-inner{padding-top:32px}
#hsb-kf-shop .hsb-kf-shell-title{font-size:clamp(26px,3vw,38px);line-height:1.2;text-transform:none;margin:0 0 26px}
#hsb-kf-shop .woocommerce{width:100%;max-width:none;min-width:0;margin:0}
#hsb-kf-shop :is(.woocommerce-cart-form,.cart_totals,#customer_details,.hsb-kf-review-panel){background:var(--kf-wc-card,#fff);border:1px solid var(--kf-border);border-radius:var(--kf-wc-radius,12px);padding:clamp(14px,2vw,26px);min-width:0;box-shadow:none}
/* Cart remains a full-width table with totals below. No grid row reordering of notices. */
#hsb-kf-shop .woocommerce-cart-form{float:none!important;width:100%!important;margin:0 0 24px!important;display:block}
#hsb-kf-shop .woocommerce-cart-form table.shop_table{width:100%!important;table-layout:auto;border:0;border-collapse:collapse;margin:0}
#hsb-kf-shop .woocommerce-cart-form table.shop_table :is(th,td){padding:14px 8px;border:0;border-bottom:1px solid var(--kf-border);vertical-align:middle;background:transparent;text-align:left}
#hsb-kf-shop .woocommerce-cart-form .product-remove{width:36px;text-align:center}
#hsb-kf-shop .woocommerce-cart-form .product-thumbnail{width:90px}
#hsb-kf-shop .woocommerce-cart-form .product-thumbnail img{width:72px;height:78px;object-fit:contain;max-width:100%}
#hsb-kf-shop .woocommerce-cart-form .product-name{overflow-wrap:anywhere;white-space:normal;min-width:0}
#hsb-kf-shop .woocommerce-cart-form .product-name a{color:inherit;font-weight:600}
#hsb-kf-shop .woocommerce-cart-form .product-subtotal{text-align:right}
#hsb-kf-shop .woocommerce-cart-form .quantity{display:inline-flex;align-items:center;max-width:100%}
#hsb-kf-shop .woocommerce-cart-form .qty{width:72px;max-width:100%}
#hsb-kf-shop .woocommerce-cart-form td.actions{text-align:right;padding-top:20px}
#hsb-kf-shop .woocommerce-cart-form .coupon{display:flex;gap:8px;flex-wrap:wrap;align-items:center;float:left}
#hsb-kf-shop .woocommerce-cart-form #coupon_code{width:165px;float:none;margin:0}
#hsb-kf-shop .woocommerce-cart-form button[name="update_cart"]{float:none;margin:0 0 0 10px}
#hsb-kf-shop .cart-collaterals{width:100%!important;float:none!important;display:flow-root;clear:both}
#hsb-kf-shop .cart-collaterals .cart_totals{width:100%!important;max-width:520px;float:right!important;margin:0 0 24px}
#hsb-kf-shop .cart-collaterals .cross-sells{width:100%;float:none;clear:both}
#hsb-kf-shop .cart_totals table{width:100%;border-collapse:collapse}
#hsb-kf-shop .cart_totals :is(th,td){padding:12px 8px;border:0;border-bottom:1px solid var(--kf-border);vertical-align:top;background:transparent;overflow-wrap:anywhere}
#hsb-kf-shop :is(.cart_totals h2,.hsb-kf-review-panel h3){font-size:21px;line-height:1.3;margin:0 0 18px;text-transform:none;color:inherit}
/* Only classic checkout gets columns. Blocks retain their own supported layout. */
#hsb-kf-shop form.checkout.woocommerce-checkout{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px;align-items:start;width:100%;max-width:none;margin:0}
#hsb-kf-shop form.checkout.woocommerce-checkout::before,#hsb-kf-shop form.checkout.woocommerce-checkout::after{display:none}
#hsb-kf-shop form.checkout.woocommerce-checkout> *{grid-column:1/-1;min-width:0}
#hsb-kf-shop form.checkout.woocommerce-checkout>#customer_details{grid-column:1;float:none!important;width:100%!important;margin:0}
#hsb-kf-shop form.checkout.woocommerce-checkout>.hsb-kf-review-panel{grid-column:2;float:none!important;width:100%!important;margin:0}
#hsb-kf-shop #customer_details :is(.col-1,.col-2){float:none!important;width:100%!important;max-width:none!important;padding:0;margin:0 0 20px}
#hsb-kf-shop .hsb-kf-review-panel :is(#order_review,#order_review_heading){width:100%!important;float:none!important;clear:none;margin:0 0 18px;padding:0;background:transparent;border:0;box-shadow:none}
#hsb-kf-shop .hsb-kf-review-panel .shop_table{width:100%;border:0;border-collapse:collapse;margin:0 0 20px}
#hsb-kf-shop .hsb-kf-review-panel .shop_table :is(th,td){border:0;border-bottom:1px solid var(--kf-border);padding:12px 8px;vertical-align:top;background:transparent;overflow-wrap:anywhere}
#hsb-kf-shop .woocommerce .form-row{padding:0;margin-bottom:15px;display:block}
#hsb-kf-shop .woocommerce :is(input.input-text,input.qty,textarea,select){min-height:42px;border:1px solid #d4dcd5;border-radius:7px;background:#fff;padding:9px 11px;box-shadow:none;max-width:100%}
#hsb-kf-shop .woocommerce :is(.button,button#place_order){background:var(--kf-wc-accent,#203b29);color:var(--kf-wc-button-text,#fff);border:0;border-radius:7px;text-transform:none;min-height:43px;padding:11px 17px;font-weight:600;box-shadow:none;line-height:1.4;white-space:normal}
#hsb-kf-shop .woocommerce :is(.button,button#place_order):hover,
#hsb-kf-shop .woocommerce :is(.button,button#place_order):focus-visible{background:var(--kf-wc-button-hover-bg,#161616)!important;color:var(--kf-wc-button-hover-text,#fff)!important;filter:none}
#hsb-kf-shop .woocommerce :is(button:disabled,.button.disabled){opacity:.5;cursor:not-allowed}
#hsb-kf-shop a:focus-visible,#hsb-kf-shop button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
#hsb-kf-shop #payment{background:transparent}
#hsb-kf-shop #payment ul.payment_methods{padding:8px 0}
#hsb-kf-shop #payment #place_order{width:100%}
#hsb-kf-shop .woocommerce-error,#hsb-kf-shop .woocommerce-message,#hsb-kf-shop .woocommerce-info{clear:both;width:100%}
@media(max-width:959px){#hsb-kf-shop form.checkout.woocommerce-checkout{display:block!important}#hsb-kf-shop form.checkout.woocommerce-checkout>.hsb-kf-review-panel{margin-top:24px}}
@media(max-width:767px){
 #hsb-kf-shop .hsb-kf-shell-inner{width:calc(100% - 24px)}
 #hsb-kf-shop .woocommerce-cart-form table.shop_table_responsive thead{display:none}
 #hsb-kf-shop .woocommerce-cart-form table.shop_table_responsive tr{display:block;margin-bottom:16px}
 #hsb-kf-shop .woocommerce-cart-form table.shop_table_responsive td{display:block;width:100%!important;text-align:right!important;min-height:42px}
 #hsb-kf-shop .woocommerce-cart-form table.shop_table_responsive td[data-title]::before{content:attr(data-title) ': ';float:left;font-weight:600;margin-right:10px}
 #hsb-kf-shop .woocommerce-cart-form table.shop_table_responsive td.product-thumbnail{display:none}
 #hsb-kf-shop .woocommerce-cart-form .coupon{float:none;width:100%;margin-bottom:12px}
 #hsb-kf-shop .woocommerce-cart-form #coupon_code{flex:1;min-width:100px}
 #hsb-kf-shop .woocommerce-cart-form button[name="update_cart"]{width:100%;margin:0}
 #hsb-kf-shop .cart-collaterals .cart_totals{max-width:none;float:none!important}
}
#hsb-kf-shop form.checkout.woocommerce-checkout:not(:has(>#customer_details))>.hsb-kf-review-panel{grid-column:1/-1}

/* 0.9.11: modern classic WooCommerce cart in two columns, responsive cards. */
@media(min-width:960px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce:has(> .woocommerce-cart-form){display:grid;grid-template-columns:minmax(0,1.6fr) minmax(305px,.92fr);gap:24px;align-items:start}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce:has(> .woocommerce-cart-form)>*{grid-column:1/-1;min-width:0}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce:has(> .woocommerce-cart-form)>.woocommerce-cart-form{grid-column:1;margin:0!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce:has(> .woocommerce-cart-form)>.cart-collaterals{grid-column:2;grid-row:auto;min-width:0;clear:none!important;display:block;width:100%!important}
 #hsb-kf-shop.hsb-kf-shell--cart .cart-collaterals .cart_totals{position:sticky;top:30px;float:none!important;max-width:none;width:100%!important;margin:0}
 #hsb-kf-shop.hsb-kf-shell--cart .cart-collaterals .cross-sells{margin-top:20px}
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-remove{width:42px}
#hsb-kf-shop .hsb-kf-cart-choice{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;margin:0!important;cursor:pointer;vertical-align:middle;position:relative}
#hsb-kf-shop .hsb-kf-cart-toggle{position:absolute;inset:0;width:100%!important;height:100%!important;margin:0!important;opacity:0;cursor:pointer;z-index:1}
#hsb-kf-shop .hsb-kf-cart-check{display:block;width:19px;height:19px;border:1.5px solid #adc5b2;border-radius:5px;background:#fff;position:relative;transition:background .15s,border-color .15s}
#hsb-kf-shop .hsb-kf-cart-toggle:checked+.hsb-kf-cart-check{background:#4e9a57;border-color:#4e9a57}
#hsb-kf-shop .hsb-kf-cart-toggle:checked+.hsb-kf-cart-check:after{content:'';position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}
#hsb-kf-shop .hsb-kf-cart-toggle:focus-visible+.hsb-kf-cart-check{outline:2px solid #24733b;outline-offset:3px}
#hsb-kf-shop .hsb-kf-cart-busy{opacity:.55;pointer-events:none}
#hsb-kf-shop .hsb-kf-paused-item{opacity:.53}
#hsb-kf-shop .hsb-kf-paused-item .product-name small{display:block;color:#718078;font-size:11px;margin-top:3px}
#hsb-kf-shop .hsb-kf-paused-empty{border:1px solid var(--kf-border);background:#fff;border-radius:12px;padding:22px}
#hsb-kf-shop .hsb-kf-paused-empty h2{font-size:20px;margin:0 0 8px}
#hsb-kf-shop .hsb-kf-paused-empty-item{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #e8ede8}
#hsb-kf-shop .hsb-kf-paused-empty-item>span:last-child{color:#7c8a7f;font-size:12px}
#hsb-kf-shop .hsb-kf-cart-error{color:#a52828;border:1px solid #ecb9b9;background:#fff6f6;padding:12px;border-radius:8px;grid-column:1/-1}
#hsb-kf-shop .woocommerce-cart-form .product-name a{font-family:var(--kf-wc-cart-product-font,inherit);font-size:var(--kf-wc-cart-product-size,16px);text-transform:none!important}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form,#hsb-kf-shop.hsb-kf-shell--cart .cart_totals{font-family:var(--kf-wc-cart-body-font,inherit);font-size:var(--kf-wc-cart-body-size,14px)}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel{font-family:var(--kf-wc-checkout-body-font,inherit);font-size:var(--kf-wc-checkout-body-size,14px)}
#hsb-kf-shop .hsb-kf-review-product-link{font-family:var(--kf-wc-checkout-product-font,inherit);font-size:var(--kf-wc-checkout-product-size,14px);color:inherit!important;text-transform:none!important;text-decoration:none!important;transition:color .15s}
#hsb-kf-shop .hsb-kf-review-product-link:hover,#hsb-kf-shop .hsb-kf-review-product-link:focus-visible{color:#4d965a!important}
#hsb-kf-shop :is(.hsb-kf-shell-title,.cart_totals h2,.hsb-kf-review-panel h3){font-family:var(--kf-wc-heading-font,inherit);font-size:var(--kf-wc-heading-size,26px);text-transform:none!important}
@media(max-width:767px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item{display:grid;grid-template-columns:34px 1fr;gap:8px;background:#fff;border:1px solid var(--kf-border);border-radius:10px;padding:13px;margin-bottom:12px}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td{border:0;padding:3px 0!important;width:auto!important;text-align:left!important;min-height:0!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-remove{grid-column:1;grid-row:1;display:flex!important;align-items:center}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-name{grid-column:2;grid-row:1}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-thumbnail{display:none!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td:not(.product-name):not(.product-remove):not(.product-thumbnail){grid-column:2;display:flex!important;justify-content:space-between;text-align:left!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td[data-title]::before{float:none;display:inline-block;margin-right:12px}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .cart_item .product-subtotal{text-align:right!important}
}

/* Checkbox for every product in the classic checkout review, including paused rows. */
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .product-name .hsb-kf-cart-choice{margin-right:9px!important;vertical-align:middle}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .hsb-kf-paused-item .product-name small{display:block;padding-left:34px;margin-top:5px;color:#8b988d;font-size:11px}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .hsb-kf-paused-item{opacity:.58}


/* 0.9.15 — kompaktowy koszyk: deterministyczne kolumny bez wpływu motywu na szerokości. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .hsb-kf-cart-choice,
#hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-paused-empty .hsb-kf-cart-choice{
 min-width:18px;min-height:18px;width:18px;height:18px;flex:0 0 18px;
}
#hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-cart-check{
 width:15px;height:15px;border-width:1px;border-radius:4px;
}
#hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-cart-toggle:checked+.hsb-kf-cart-check:after{
 left:4px;top:1px;width:4px;height:8px;border-width:0 1.5px 1.5px 0;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name{min-width:0!important;overflow:hidden;overflow-wrap:normal!important;white-space:nowrap!important}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name a{
 display:block!important;max-width:100%;width:max-content;min-width:0;
 white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;
 color:inherit!important;text-decoration:none!important;
 transition:color .16s ease;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name a:hover,
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name a:focus-visible,
#hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-paused-empty-item a:hover,
#hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-paused-empty-item a:focus-visible{color:#4d965a!important}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-thumbnail img{
 display:block;width:43px!important;height:48px!important;max-width:43px!important;
 object-fit:contain;margin:0!important;padding:0!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .quantity .qty{
 width:56px!important;min-width:0;max-width:56px!important;min-height:34px!important;
 padding:5px 4px!important;text-align:center;
}
/* 0.9.17 — Restore the actual WooCommerce table layout on desktop/tablet.
   Kallyas styles table cells; display:grid on TR (0.9.15) produced a detached
   amount column and squeezed product names on the production theme.
   Keep native table semantics and override conflicting theme floats/displays. */
@media (min-width:768px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart{
  display:table!important;width:100%!important;min-width:0!important;
  max-width:100%!important;table-layout:fixed!important;border-spacing:0!important;
  border-collapse:collapse!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead{display:table-header-group!important;width:auto!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody{display:table-row-group!important;width:auto!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead>tr,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr{
  display:table-row!important;width:auto!important;max-width:none!important;
  float:none!important;position:static!important;transform:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead>tr>th,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td{
  display:table-cell!important;float:none!important;position:static!important;
  vertical-align:middle!important;min-width:0!important;max-width:none!important;
  height:auto!important;box-sizing:border-box!important;
  padding:9px 5px!important;margin:0!important;
  border:0!important;border-bottom:1px solid var(--kf-border)!important;
  background:transparent!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead>tr>th{
  font-size:10px!important;font-weight:600!important;text-transform:uppercase!important;
  padding-top:4px!important;padding-bottom:10px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-remove,td.product-remove){
  width:clamp(36px,calc(var(--kf-choice-size,15px) + 21px),50px)!important;text-align:center!important;
  padding-left:0!important;padding-right:2px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-thumbnail,td.product-thumbnail){
  width:55px!important;text-align:left!important;padding-left:0!important;padding-right:5px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-price,td.product-price){
  width:84px!important;text-align:right!important;white-space:nowrap!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-quantity,td.product-quantity){
  width:80px!important;text-align:center!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-subtotal,td.product-subtotal){
  width:94px!important;text-align:right!important;white-space:nowrap!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-name,td.product-name){
  width:auto!important;min-width:0!important;text-align:left!important;
  overflow:hidden!important;white-space:nowrap!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart td.product-name>a{
  display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
  overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart td.product-name small{
  display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.actions{
  text-align:left!important;white-space:normal!important;padding:14px 0 0!important;
  border-bottom:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.actions .coupon{
  display:inline-flex;max-width:100%;gap:7px;float:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.actions button[name=update_cart]{
  margin-left:8px!important;
 }
}
@media(max-width:767px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item{
   grid-template-columns:18px 44px minmax(0,1fr) minmax(67px,82px)!important;
   gap:5px 8px!important;padding:9px 10px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-remove{grid-column:1!important;grid-row:1!important;align-self:center}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-thumbnail{
   display:flex!important;grid-column:2!important;grid-row:1!important;align-items:center;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-name{grid-column:3/5!important;grid-row:1!important;align-self:center}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-price{grid-column:2!important;grid-row:2!important;font-size:11px}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-quantity{grid-column:3!important;grid-row:2!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-subtotal{grid-column:4!important;grid-row:2!important;text-align:right!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td::before{display:none!important;content:none!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name a{font-size:var(--kf-wc-cart-product-size,14px)}
}

/* 0.9.16: one palette + size for selection controls on both transactional pages. */
#hsb-kf-shop:is(.hsb-kf-shell--cart,.hsb-kf-shell--checkout) .hsb-kf-cart-choice{
  width:calc(var(--kf-choice-size,15px) + 4px);height:calc(var(--kf-choice-size,15px) + 4px);
  min-width:calc(var(--kf-choice-size,15px) + 4px);min-height:calc(var(--kf-choice-size,15px) + 4px);
  flex:0 0 calc(var(--kf-choice-size,15px) + 4px);
}
#hsb-kf-shop:is(.hsb-kf-shell--cart,.hsb-kf-shell--checkout) .hsb-kf-cart-check{
 width:var(--kf-choice-size,15px)!important;height:var(--kf-choice-size,15px)!important;
 background:var(--kf-choice-unchecked-bg,#fff)!important;
 border-color:var(--kf-choice-unchecked-border,#a4a9a5)!important;
 border-radius:4px;
}
#hsb-kf-shop:is(.hsb-kf-shell--cart,.hsb-kf-shell--checkout) .hsb-kf-cart-toggle:checked + .hsb-kf-cart-check{
 background:var(--kf-choice-checked-bg,#161616)!important;
 border-color:var(--kf-choice-checked-border,#161616)!important;
}
#hsb-kf-shop:is(.hsb-kf-shell--cart,.hsb-kf-shell--checkout) .hsb-kf-cart-toggle:checked + .hsb-kf-cart-check::after{
 content:"";position:absolute;left:50%!important;top:45%!important;
 width:28%!important;height:53%!important;border:solid var(--kf-choice-tick,#fff)!important;
 border-width:0 1.7px 1.7px 0!important;transform:translate(-50%,-50%) rotate(45deg)!important;
}
#hsb-kf-shop:is(.hsb-kf-shell--cart,.hsb-kf-shell--checkout) .hsb-kf-cart-toggle:focus-visible + .hsb-kf-cart-check{
 outline:2px solid var(--kf-choice-checked-border,#161616)!important;outline-offset:3px;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .hsb-kf-cart-choice,
#hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-paused-empty .hsb-kf-cart-choice{
 width:calc(var(--kf-choice-size,15px) + 4px);height:calc(var(--kf-choice-size,15px) + 4px);
 min-width:calc(var(--kf-choice-size,15px) + 4px);min-height:calc(var(--kf-choice-size,15px) + 4px);
 flex:0 0 calc(var(--kf-choice-size,15px) + 4px);
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name a,
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-product-link{cursor:pointer;}

/* Kallyas may inject extra hover pictures into a single WooCommerce thumbnail. */
@media(min-width:768px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail>a{
  display:inline-flex!important;position:relative!important;align-items:center!important;
  width:43px!important;height:48px!important;overflow:hidden!important;vertical-align:middle!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail>a>img:not(:first-of-type){display:none!important}
}


/* 0.9.18 — only the first product image in cart + content packed tighter to the checkbox. */
@media (min-width:768px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-remove,td.product-remove){
  width:clamp(28px,calc(var(--kf-choice-size,15px) + 11px),38px)!important;
  padding-left:0!important;padding-right:1px!important;text-align:left!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-thumbnail,td.product-thumbnail){
  width:46px!important;padding-left:0!important;padding-right:2px!important;text-align:left!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-name,td.product-name){
  padding-left:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-remove .hsb-kf-cart-choice{
  justify-content:flex-start!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-name{
  vertical-align:middle!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail a,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail .attachment-woocommerce_thumbnail,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail .woocommerce-placeholder{
  display:block!important;max-width:43px!important;margin:0!important;padding:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail img{
  display:block!important;width:43px!important;height:48px!important;max-width:43px!important;object-fit:contain;margin:0!important;padding:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail img:not(:first-of-type),
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail picture ~ picture,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail a ~ a,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail .second-image,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail .image-two,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail .secondary-image,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail [class*="second"],
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-thumbnail [class*="secondary"]{
  display:none!important;
 }
}
@media (max-width:767px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item{
   grid-template-columns:18px 40px minmax(0,1fr) minmax(67px,82px)!important;
   gap:5px 6px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-thumbnail img:not(:first-of-type),
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-thumbnail a ~ a,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-thumbnail [class*="second"],
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-thumbnail [class*="secondary"]{
   display:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-thumbnail img{
   width:38px!important;height:42px!important;max-width:38px!important;object-fit:contain;margin:0!important;
 }
}


/* 0.9.19 — remove duplicated unit-price column in cart and add amount typography shared with totals/review. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-price,td.product-price){display:none!important}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-quantity,td.product-quantity){width:92px!important}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-subtotal,td.product-subtotal){width:106px!important}
@media(max-width:767px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item{
   grid-template-columns:18px 40px minmax(0,1fr) minmax(84px,98px)!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-price{display:none!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-quantity{grid-column:3!important;grid-row:2!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-subtotal{grid-column:4!important;grid-row:2!important;text-align:right!important}
}
#hsb-kf-shop:is(.hsb-kf-shell--cart,.hsb-kf-shell--checkout) :is(
 .woocommerce-cart-form .product-subtotal,
 .woocommerce-cart-form .product-subtotal .amount,
 .woocommerce-cart-form .product-price,
 .woocommerce-cart-form .product-price .amount,
 .cart_totals .amount,
 .cart_totals .woocommerce-Price-amount,
 .cart_totals td,
 .cart_totals th,
 .hsb-kf-review-panel .product-total,
 .hsb-kf-review-panel .product-total .amount,
 .hsb-kf-review-panel .cart-subtotal td,
 .hsb-kf-review-panel .shipping td,
 .hsb-kf-review-panel .order-total td,
 .hsb-kf-review-panel .amount,
 .hsb-kf-review-panel .woocommerce-Price-amount
){
 font-family:var(--kf-wc-amount-font,inherit)!important;
 font-size:var(--kf-wc-amount-size,14px)!important;
}


/* 0.9.20 — wider product text, quantity+total grouped tighter on the right, coupon row right-aligned. */
@media (min-width:768px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-thumbnail,td.product-thumbnail){
  width:43px!important;padding-right:4px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-name,td.product-name){
  width:auto!important;padding-left:3px!important;padding-right:4px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart td.product-name>a{
  width:100%!important;max-width:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-quantity,td.product-quantity){
  width:58px!important;text-align:right!important;padding-left:2px!important;padding-right:4px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-subtotal,td.product-subtotal){
  width:78px!important;text-align:right!important;padding-left:2px!important;padding-right:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .quantity .qty{
  width:52px!important;max-width:52px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.actions{
  text-align:right!important;padding-top:14px!important;padding-right:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.actions .coupon{
  display:inline-flex!important;justify-content:flex-end!important;align-items:center!important;float:none!important;width:auto!important;margin-left:auto!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.actions button[name=update_cart]{
  margin-left:8px!important;margin-right:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form #coupon_code{
  width:220px!important;min-width:220px!important;
 }
}
@media (max-width:767px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item{
   grid-template-columns:18px 40px minmax(0,1fr) minmax(74px,90px)!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-quantity{padding-right:2px!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item>td.product-subtotal{padding-left:2px!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .actions .coupon{
   width:100%!important;justify-content:flex-end!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form #coupon_code{
   flex:0 1 180px!important;min-width:140px!important;
 }
}


/* 0.9.21 — Kallyas-safe cart: use the whole white card for the WooCommerce table.
   The earlier :has() grid put the cart form into a 60% column while totals
   remained underneath, causing names to be truncated despite vacant space. */
@media (min-width:960px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce:has(> .woocommerce-cart-form){
   display:block!important;grid-template-columns:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce:has(> .woocommerce-cart-form)>.woocommerce-cart-form,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce:has(> .woocommerce-cart-form)>.cart-collaterals{
   display:block!important;float:none!important;clear:both!important;
   width:100%!important;max-width:100%!important;margin:0 0 18px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .cart-collaterals .cart_totals{
   width:100%!important;max-width:100%!important;position:static!important;
   float:none!important;margin:0!important;
 }
}
@media (min-width:768px){
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form{width:100%!important;max-width:none!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart{width:100%!important;table-layout:fixed!important}
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-name,td.product-name){
   width:auto!important;padding-right:8px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-quantity,td.product-quantity){
   width:64px!important;text-align:center!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart :is(th.product-subtotal,td.product-subtotal){
   width:90px!important;text-align:right!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-name>a{
   display:block!important;width:100%!important;max-width:none!important;
   white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.actions{
   text-align:right!important;
 }
}
/* Independent typography weights in Design: product titles, labels, totals and headings. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name a{
  font-weight:var(--kf-wc-cart-product-weight,600)!important;
}
#hsb-kf-shop.hsb-kf-shell--cart :is(.woocommerce-cart-form,.cart_totals){
  font-weight:var(--kf-wc-cart-body-weight,400);
}
#hsb-kf-shop.hsb-kf-shell--checkout :is(#customer_details,.hsb-kf-review-panel){
  font-weight:var(--kf-wc-checkout-body-weight,400);
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-product-link{
  font-weight:var(--kf-wc-checkout-product-weight,600)!important;
}
#hsb-kf-shop :is(.hsb-kf-shell-title,.cart_totals h2,.hsb-kf-review-panel h3){
  font-weight:var(--kf-wc-heading-weight,600)!important;
}
#hsb-kf-shop:is(.hsb-kf-shell--cart,.hsb-kf-shell--checkout) :is(
 .woocommerce-cart-form .product-subtotal,
 .woocommerce-cart-form .product-subtotal .amount,
 .cart_totals .amount,
 .cart_totals .woocommerce-Price-amount,
 .cart_totals td,
 .cart_totals th,
 .hsb-kf-review-panel .product-total,
 .hsb-kf-review-panel .product-total .amount,
 .hsb-kf-review-panel .cart-subtotal td,
 .hsb-kf-review-panel .shipping td,
 .hsb-kf-review-panel .order-total td,
 .hsb-kf-review-panel .amount,
 .hsb-kf-review-panel .woocommerce-Price-amount
){
 font-weight:var(--kf-wc-amount-weight,500)!important;
}


/* 0.9.21 — selectable 70/30 cart layout; safe with native WooCommerce table semantics. */
@media(min-width:1060px){
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .woocommerce:has(> .woocommerce-cart-form){
   display:grid!important;grid-template-columns:minmax(0,7fr) minmax(0,3fr)!important;
   gap:18px!important;align-items:start!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .woocommerce:has(> .woocommerce-cart-form)>.woocommerce-cart-form{
   grid-column:1!important;grid-row:auto!important;min-width:0!important;width:100%!important;
   margin:0!important;float:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .woocommerce:has(> .woocommerce-cart-form)>.cart-collaterals{
   grid-column:2!important;grid-row:auto!important;min-width:0!important;width:100%!important;
   margin:0!important;float:none!important;clear:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .cart-collaterals .cart_totals{
   display:block!important;position:sticky!important;top:30px!important;width:100%!important;
   max-width:none!important;float:none!important;margin:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--stacked .woocommerce:has(> .woocommerce-cart-form){
   display:block!important;grid-template-columns:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--stacked .woocommerce:has(> .woocommerce-cart-form)>:is(.woocommerce-cart-form,.cart-collaterals){
   width:100%!important;max-width:100%!important;float:none!important;clear:both!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--stacked .cart-collaterals .cart_totals{
   width:100%!important;max-width:100%!important;position:static!important;float:none!important;
 }
}
@media (min-width:768px){
 /* Suppress the redundant per-unit price column and redistribute space to the product name. */
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead>tr>th.product-price,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.product-price{
   display:none!important;width:0!important;padding:0!important;border:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead>tr>th.product-remove,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.product-remove{
   width:calc(var(--kf-choice-size,15px) + 10px)!important;padding:8px 0!important;text-align:left!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead>tr>th.product-thumbnail,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.product-thumbnail{
   width:46px!important;padding:8px 2px 8px 0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead>tr>th.product-quantity,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.product-quantity{
   width:60px!important;padding:8px 3px!important;text-align:right!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>thead>tr>th.product-subtotal,
 #hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr>td.product-subtotal{
   width:86px!important;padding:8px 0 8px 3px!important;text-align:right!important;
 }
}
/* Two-line names: no forced nowrap and no wasted width between checkbox and name. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name,
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart td.product-name{
  white-space:normal!important;overflow:hidden!important;overflow-wrap:normal!important;
  text-align:left!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-name>a,
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form .product-name>a{
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
  white-space:normal!important;max-height:calc(1.35em * 2)!important;line-height:1.35!important;
  width:100%!important;max-width:100%!important;overflow:hidden!important;
  overflow-wrap:anywhere!important;text-overflow:clip!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form td.product-name{padding-left:2px!important}
/* Checkout: checkbox begins flush left, every product name aligns on a consistent left edge. */
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .shop_table td.product-name{
 text-align:left!important;overflow-wrap:normal!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel tr:is(.cart_item,.hsb-kf-paused-item) td.product-name{
 display:table-cell!important;padding-left:0!important;vertical-align:top!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .hsb-kf-review-entry{
 display:flex!important;align-items:flex-start!important;gap:9px!important;width:100%;min-width:0;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .hsb-kf-review-entry>.hsb-kf-cart-choice{
 flex:0 0 calc(var(--kf-choice-size,15px) + 4px)!important;margin:1px 0 0!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .hsb-kf-review-entry>.hsb-kf-review-line{
 flex:1 1 auto!important;min-width:0!important;display:block!important;line-height:1.45!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel tr:is(.cart_item,.hsb-kf-paused-item) .hsb-kf-review-line>a.hsb-kf-review-product-link{
 display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
 line-height:1.4!important;white-space:normal!important;overflow:hidden!important;
 overflow-wrap:anywhere!important;text-align:left!important;
}
/* Five separate heading groups exposed in Design. */
#hsb-kf-shop.hsb-kf-shell--cart>.hsb-kf-shell-inner>.hsb-kf-shell-title{
 font-family:var(--kf-wc-cart-title-font,inherit)!important;
 font-size:var(--kf-wc-cart-title-size,30px)!important;font-weight:var(--kf-wc-cart-title-weight,600)!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .cart_totals h2{
 font-family:var(--kf-wc-totals-title-font,inherit)!important;
 font-size:var(--kf-wc-totals-title-size,22px)!important;font-weight:var(--kf-wc-totals-title-weight,600)!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout>.hsb-kf-shell-inner>.hsb-kf-shell-title{
 font-family:var(--kf-wc-checkout-title-font,inherit)!important;
 font-size:var(--kf-wc-checkout-title-size,30px)!important;font-weight:var(--kf-wc-checkout-title-weight,600)!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout #customer_details :is(h2,h3):first-child{
 font-family:var(--kf-wc-billing-title-font,inherit)!important;
 font-size:var(--kf-wc-billing-title-size,22px)!important;font-weight:var(--kf-wc-billing-title-weight,600)!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel #order_review_heading,
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel > h3{
 font-family:var(--kf-wc-review-title-font,inherit)!important;
 font-size:var(--kf-wc-review-title-size,22px)!important;font-weight:var(--kf-wc-review-title-weight,600)!important;
}

/* Stronger than old Kallyas table-selector rules: let long names use up to two lines. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr.cart_item>td.product-name>a{
 display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
 white-space:normal!important;overflow:hidden!important;overflow-wrap:anywhere!important;
 width:100%!important;max-width:none!important;max-height:2.7em!important;
 line-height:1.35!important;text-overflow:clip!important;
}


/* 0.9.23 — stable two-column cart, using verified sibling container instead of :has(). */
@media(min-width:960px){
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .hsb-kf-cart-grid-layout{
  display:grid!important;grid-template-columns:minmax(0,7fr) minmax(0,3fr)!important;
  gap:20px!important;align-items:start!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .hsb-kf-cart-grid-layout>.woocommerce-cart-form{
  grid-column:1!important;grid-row:auto!important;min-width:0!important;width:100%!important;
  max-width:100%!important;float:none!important;margin:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .hsb-kf-cart-grid-layout>.cart-collaterals{
  grid-column:2!important;grid-row:auto!important;min-width:0!important;width:100%!important;
  max-width:100%!important;float:none!important;clear:none!important;margin:0!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .hsb-kf-cart-grid-layout>.cart-collaterals .cart_totals{
  width:100%!important;max-width:none!important;float:none!important;margin:0!important;
  position:sticky!important;top:30px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--columns .hsb-kf-cart-grid-layout>:not(.woocommerce-cart-form):not(.cart-collaterals){
  grid-column:1/-1!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--stacked .hsb-kf-cart-grid-layout{
  display:block!important;grid-template-columns:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--stacked .hsb-kf-cart-grid-layout>.woocommerce-cart-form,
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--stacked .hsb-kf-cart-grid-layout>.cart-collaterals{
  display:block!important;width:100%!important;max-width:100%!important;margin:0 0 20px!important;
  float:none!important;clear:both!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart.hsb-kf-cart-layout--stacked .hsb-kf-cart-grid-layout>.cart-collaterals .cart_totals{
  position:static!important;width:100%!important;max-width:100%!important;float:none!important;
 }
}
/* Tablet and mobile: the selected cart mode never forces two columns. */
@media(max-width:959px){
 #hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-cart-grid-layout{
  display:block!important;grid-template-columns:none!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-cart-grid-layout>.woocommerce-cart-form,
 #hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-cart-grid-layout>.cart-collaterals{
  display:block!important;width:100%!important;max-width:100%!important;float:none!important;
  clear:both!important;margin:0 0 20px!important;
 }
 #hsb-kf-shop.hsb-kf-shell--cart .hsb-kf-cart-grid-layout>.cart-collaterals .cart_totals{
  position:static!important;max-width:none!important;width:100%!important;float:none!important;
 }
}
/* Cart choices align at the content edge, before the photo, independent of card width. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr.cart_item>td.product-remove{
 text-align:left!important;padding-left:0!important;padding-right:0!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart>tbody>tr.cart_item>td.product-remove .hsb-kf-cart-choice{
 margin-left:0!important;justify-content:flex-start!important;
}
/* Adjustable amount column header: top table headers ONLY. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.cart>thead>tr>th.product-subtotal,
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel table.woocommerce-checkout-review-order-table>thead>tr>th.product-total{
 font-family:var(--kf-wc-table-amount-heading-font,inherit)!important;
 font-size:var(--kf-wc-table-amount-heading-size,11px)!important;
 font-weight:var(--kf-wc-table-amount-heading-weight,600)!important;
 white-space:nowrap!important;
}
/* Never split the grand total or its PLN currency on narrow checkout screens. */
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .shop_table{
 table-layout:auto!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .shop_table tfoot tr.order-total>th{
 white-space:nowrap!important;overflow-wrap:normal!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .shop_table tfoot tr.order-total>td,
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .shop_table tfoot tr.order-total>td :is(.amount,.woocommerce-Price-amount,.woocommerce-Price-currencySymbol,bdi){
 white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important;
}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .shop_table tfoot tr.order-total>td{
 text-align:right!important;min-width:max-content!important;
}
@media(max-width:480px){
 #hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .shop_table tfoot tr.order-total>th,
 #hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .shop_table tfoot tr.order-total>td{
  padding-inline:2px!important;
 }
}

/* 0.9.44 — Keep actual native WC table columns. Shipping and InPost picker
   span both columns via the idempotent cart.js DOM adjustment (colSpan=2).
   Unlike previous versions, never widen the price column or change TR/TD displays. */
#hsb-kf-shop .hsb-kf-review-panel :is(#order_review,#order_review_heading)::before,
#hsb-kf-shop .hsb-kf-review-panel :is(#order_review,#order_review_heading)::after,
#hsb-kf-shop .hsb-kf-review-panel #payment::before,
#hsb-kf-shop .hsb-kf-review-panel #payment::after {content:none!important;display:none!important}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel,
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel :is(#order_review,.woocommerce-checkout-review-order-table){min-width:0!important;max-width:100%!important;width:100%!important}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .woocommerce-checkout-review-order-table {table-layout:fixed!important;border-collapse:collapse!important}
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .woocommerce-checkout-review-order-table thead th.product-total,
#hsb-kf-shop.hsb-kf-shell--checkout .hsb-kf-review-panel .woocommerce-checkout-review-order-table tbody td.product-total{width:96px!important;text-align:right!important}
/* Full-width shipping inside existing table — headings are moved to their own block. */
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) table.shop_table tr.hsb-kf-shipping-full>th,
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) table.shop_table tr.hsb-kf-parcel-full>th{display:none!important}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) table.shop_table tr.hsb-kf-shipping-full>td,
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) table.shop_table tr.hsb-kf-parcel-full>td{
 display:table-cell!important;width:100%!important;max-width:none!important;min-width:0!important;
 text-align:left!important;vertical-align:top!important;white-space:normal!important;word-break:normal!important;
 padding:13px 6px!important;float:none!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) .hsb-kf-shipping-title{
 font-size:12px!important;font-weight:700!important;line-height:1.4!important;text-align:left!important;
 text-transform:uppercase!important;margin:0 0 12px!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-shipping-full ul#shipping_method{
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;
 list-style:none!important;margin:0!important;padding:0!important;width:100%!important;
 max-width:100%!important;min-width:0!important;float:none!important;text-align:left!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-shipping-full ul#shipping_method>li{
 display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;column-gap:8px!important;
 align-items:start!important;text-align:left!important;margin:0!important;padding:0!important;
 width:100%!important;min-width:0!important;float:none!important;white-space:normal!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-shipping-full ul#shipping_method>li>input[type=radio]{
 grid-column:1!important;grid-row:1!important;width:14px!important;height:14px!important;
 margin:2px 0 0!important;float:none!important;position:static!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-shipping-full ul#shipping_method>li>label{
 grid-column:2!important;grid-row:1!important;display:flex!important;justify-content:space-between!important;
 gap:8px!important;align-items:baseline!important;flex-wrap:wrap!important;
 min-width:0!important;width:100%!important;max-width:none!important;
 margin:0!important;padding:0!important;float:none!important;text-align:left!important;
 white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;
 line-height:1.45!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-shipping-full ul#shipping_method>li>label :is(.amount,.woocommerce-Price-amount,bdi){
 white-space:nowrap!important;word-break:normal!important;flex-shrink:0!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-shipping-full .easypack-shipping-method-logo{
 grid-column:2!important;grid-row:2!important;display:block!important;margin:5px 0 0!important;
 padding:0!important;justify-self:start!important;text-align:left!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-shipping-full .easypack-shipping-method-logo img{
 display:block!important;max-width:72px!important;max-height:38px!important;width:auto!important;height:auto!important;
 margin:0!important;float:none!important;object-fit:contain!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-parcel-full>td{
 padding-top:4px!important;padding-bottom:14px!important;
}
#hsb-kf-shop :is(.hsb-kf-review-panel,.cart_totals) tr.hsb-kf-parcel-full>td :is(button,a.button,input[type=button]){
 display:inline-block!important;width:auto!important;min-width:160px!important;max-width:100%!important;
 white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;
 line-height:1.3!important;text-align:center!important;
}
/* Notice: green/neutral warning with icon at the left of its message. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-notices-wrapper .woocommerce-error{
 position:relative!important;display:block!important;clear:both!important;float:none!important;
 width:100%!important;max-width:100%!important;padding:13px 16px 13px 42px!important;
 margin:0 0 16px!important;background:#f1f5ef!important;color:#344a39!important;
 border:1px solid #c9d9c8!important;border-left:3px solid #7b977c!important;
 border-radius:8px!important;box-shadow:none!important;list-style:none!important;line-height:1.5!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-notices-wrapper .woocommerce-error::before{
 position:absolute!important;top:13px!important;left:15px!important;float:none!important;margin:0!important;color:#496f51!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-notices-wrapper .woocommerce-error>li{
 margin:0!important;padding:0!important;list-style:none!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-notices-wrapper .woocommerce-error::after{display:none!important}
@media(max-width:959px){
 #hsb-kf-shop.hsb-kf-shell--checkout form.checkout.woocommerce-checkout{display:block!important}
 #hsb-kf-shop.hsb-kf-shell--checkout form.checkout.woocommerce-checkout>.hsb-kf-review-panel{margin-top:20px!important}
}


/* 0.9.45 — cart-only header cleanup and shipping destination spacing.
   Kallyas/Bootstrap clearfix pseudo-elements can become anonymous table
   cells when the WooCommerce cart row is forced back to display:table-row.
   Suppress decoration only in THEAD; leave all real table columns intact. */
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart > thead::before,
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart > thead::after,
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart > thead > tr::before,
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart > thead > tr::after,
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart > thead > tr > th::before,
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart > thead > tr > th::after {
  content:none!important;
  display:none!important;
}
#hsb-kf-shop.hsb-kf-shell--cart .woocommerce-cart-form table.shop_table.cart > thead > tr > th {
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
/* A single line of breathing room between shipping options and destination. */
#hsb-kf-shop.hsb-kf-shell--cart .cart_totals p.woocommerce-shipping-destination {
  display:block!important;
  margin-top:18px!important;
}

/* 0.9.46 — checkout billing column: align to the left edge of the content
   without changing the order-review column, carrier UI, or the cart layout. */
@media (min-width:960px) {
  #hsb-kf-shop.hsb-kf-shell--checkout form.checkout.woocommerce-checkout > #customer_details {
    padding:clamp(14px,2vw,26px) 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    min-width:0!important;
    float:none!important;
    margin:0!important;
  }
  #hsb-kf-shop.hsb-kf-shell--checkout #customer_details > :is(.col-1,.col-2) {
    padding-inline:0!important;
    margin-inline:0!important;
    width:100%!important;
    max-width:100%!important;
  }
}


/* 0.9.47 — feedback shown only while the native WC shipping update runs. */
#hsb-kf-shop.hsb-kf-shell--cart .cart_totals .hsb-kf-shipping-feedback{
 font-size:12px;line-height:1.45;color:#48674c;margin:10px 0 0!important;
 padding:0;background:transparent;border:0;
}
#hsb-kf-shop.hsb-kf-shell--cart .cart_totals .hsb-kf-shipping-feedback.is-error{color:#a33232}
