/* ==== WooCommerce skin: cart, checkout, My Account and notices in the Jasbasoft design ==== */
div.woocommerce{--wc-line:var(--line);font-size:var(--fs-body);color:var(--body)}
div.woocommerce *:not(.jb-store *),div.woocommerce *:not(.jb-store *)::before,div.woocommerce *:not(.jb-store *)::after{box-sizing:border-box}
div.woocommerce h2:not(.jb-store *),div.woocommerce h3:not(.jb-store *){font-size:var(--fs-h3);line-height:var(--lh-snug);letter-spacing:var(--tracking-snug);color:var(--ink);margin:0 0 20px}
div.woocommerce a:not(.button):not(.btn):not(.jb-store *){color:var(--blue);text-decoration:underline;text-underline-offset:3px}
div.woocommerce a:not(.button):not(.btn):hover:not(.jb-store *){color:var(--blue-dark)}
div.woocommerce .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px;padding:0;border:0}
div.woocommerce .clear:not(.jb-store *){clear:both}

/* Notices */
.woo-notices{padding-top:24px}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice{
  list-style:none;margin:0 0 24px;padding:16px 20px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-size:var(--fs-md);line-height:var(--lh-normal);color:var(--ink);
  background:var(--off);border:1px solid var(--line);border-left:3px solid var(--accent-info);border-radius:var(--radius);
}
.woocommerce-message{background:var(--success-bg);border-color:var(--success-line);border-left-color:var(--success)}
.woocommerce-error{display:block;background:var(--danger-bg);border-color:var(--danger-soft-line);border-left-color:var(--danger-line);color:var(--danger)}
.woocommerce-error li{margin:0 0 4px}
.woocommerce-error li:last-child{margin:0}
.woocommerce-message .button,.woocommerce-info .button{order:2}

/* Form fields */
div.woocommerce form .form-row:not(.jb-store *){display:flex;flex-direction:column;gap:8px;margin:0 0 20px;padding:0}
div.woocommerce form .form-row label:not(.jb-store *),div.woocommerce form label:not(.jb-store *){font-size:var(--fs-small);font-weight:600;letter-spacing:var(--tracking-snug);color:var(--ink)}
div.woocommerce form .form-row .required:not(.jb-store *),div.woocommerce form .form-row abbr.required:not(.jb-store *){color:var(--blue);text-decoration:none;border:0}
div.woocommerce form .form-row .optional:not(.jb-store *){font-weight:400;color:var(--muted)}
div.woocommerce .woocommerce-input-wrapper:not(.jb-store *){display:block;width:100%}
div.woocommerce input.input-text:not(.jb-store *),div.woocommerce select:not(.jb-store *),div.woocommerce textarea.input-text:not(.jb-store *),div.woocommerce .select2-selection:not(.jb-store *){
  width:100%;min-height:50px;padding:12px 16px;
  font:inherit;font-size:var(--fs-md);color:var(--ink);background:#fff;
  border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:none;
  transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);
}
div.woocommerce textarea.input-text:not(.jb-store *){min-height:120px;resize:vertical}
div.woocommerce input.input-text:focus:not(.jb-store *),div.woocommerce select:focus:not(.jb-store *),div.woocommerce textarea.input-text:focus:not(.jb-store *){border-color:var(--blue);box-shadow:var(--ring);outline:none}
div.woocommerce form .form-row.woocommerce-invalid input.input-text:not(.jb-store *),div.woocommerce form .form-row.woocommerce-invalid select:not(.jb-store *){border-color:var(--danger-line);box-shadow:var(--ring-danger)}
div.woocommerce select:not(.jb-store *){
  appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23617087' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;
}
div.woocommerce .password-input:not(.jb-store *){position:relative;display:block}
div.woocommerce .show-password-input:not(.jb-store *){position:absolute;right:6px;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;background:transparent;cursor:pointer;color:var(--muted)}
div.woocommerce .show-password-input:not(.jb-store *)::after{content:"";display:block;width:18px;height:18px;margin:auto;background:currentColor;-webkit-mask:url("../../img/icons.svg#i-eye") center/contain no-repeat;mask:url("../../img/icons.svg#i-eye") center/contain no-repeat}
div.woocommerce input[type=checkbox]:not(.jb-store *),div.woocommerce input[type=radio]:not(.jb-store *){accent-color:var(--blue);width:18px;height:18px;margin:0}
div.woocommerce .woocommerce-form__label-for-checkbox:not(.jb-store *){display:inline-flex;align-items:center;gap:10px;font-weight:500}
.woocommerce-form-login__rememberme:not(.jb-store *){margin-right:16px}

/* Buttons */
div.woocommerce a.button:not(.jb-store *),div.woocommerce button.button:not(.jb-store *),div.woocommerce input.button:not(.jb-store *),div.woocommerce #respond input#submit:not(.jb-store *),div.woocommerce .wc-forward:not(.jb-store *){
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:48px;padding:12px 24px;width:auto;
  font:inherit;font-size:var(--fs-md);font-weight:600;letter-spacing:var(--tracking-snug);line-height:var(--lh-snug);text-decoration:none;
  color:#fff;background:var(--blue);border:1px solid var(--blue);border-radius:var(--radius);cursor:pointer;
  transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur) var(--ease);
}
div.woocommerce a.button:hover:not(.jb-store *),div.woocommerce button.button:hover:not(.jb-store *),div.woocommerce input.button:hover:not(.jb-store *){background:var(--blue-dark);border-color:var(--blue-dark);color:#fff;transform:translateY(-1px)}
div.woocommerce button.button:disabled:not(.jb-store *),div.woocommerce button.button.disabled:not(.jb-store *){opacity:.5;cursor:not-allowed;transform:none}
div.woocommerce button[name=update_cart]:not(.jb-store *),div.woocommerce button[name=apply_coupon]:not(.jb-store *),div.woocommerce a.button.view:not(.jb-store *),div.woocommerce a.button.download:not(.jb-store *),div.woocommerce a.button.order-again:not(.jb-store *){
  color:var(--ink);background:transparent;border-color:var(--line-strong);min-height:44px;padding:10px 18px;font-size:var(--fs-md);
}
div.woocommerce button[name=update_cart]:hover:not(.jb-store *),div.woocommerce button[name=apply_coupon]:hover:not(.jb-store *),div.woocommerce a.button.view:hover:not(.jb-store *),div.woocommerce a.button.download:hover:not(.jb-store *){background:#fff;border-color:var(--ink);color:var(--ink)}
div.woocommerce .button:focus-visible:not(.jb-store *),div.woocommerce a:focus-visible:not(.jb-store *),div.woocommerce input:focus-visible:not(.jb-store *),div.woocommerce select:focus-visible:not(.jb-store *){outline:2px solid var(--focus);outline-offset:2px}

/* Tables */
div.woocommerce table.shop_table:not(.jb-store *){width:100%;border-collapse:collapse;margin:0;font-size:var(--fs-md)}
div.woocommerce table.shop_table th:not(.jb-store *),div.woocommerce table.shop_table td:not(.jb-store *){padding:16px 14px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--line)}
div.woocommerce table.shop_table thead th:not(.jb-store *){font-size:var(--fs-xs);font-weight:700;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted);background:var(--off);border-bottom:1px solid var(--line)}
div.woocommerce table.shop_table td.product-name a:not(.jb-store *){color:var(--ink);font-weight:600;text-decoration:none}
div.woocommerce table.shop_table td.product-name a:hover:not(.jb-store *){color:var(--blue)}
div.woocommerce table.shop_table .product-thumbnail img:not(.jb-store *){display:block;width:72px;height:auto;border-radius:var(--r-sm);border:1px solid var(--line)}
div.woocommerce table.shop_table .product-remove a.remove:not(.jb-store *){display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:var(--muted);font-size:var(--fs-xl);line-height:1;text-decoration:none}
div.woocommerce table.shop_table .product-remove a.remove:hover:not(.jb-store *){background:var(--danger-bg);color:var(--danger)}
div.woocommerce table.shop_table .amount:not(.jb-store *){font-variant-numeric:tabular-nums}
div.woocommerce table.shop_table .actions:not(.jb-store *){padding:20px 14px;background:var(--off)}
div.woocommerce table.shop_table .actions:not(.jb-store *)::after{content:"";display:table;clear:both}
div.woocommerce .coupon:not(.jb-store *){display:inline-flex;gap:10px;flex-wrap:wrap;float:left}
div.woocommerce .coupon input.input-text:not(.jb-store *){width:200px;min-height:44px}
div.woocommerce button[name=update_cart]:not(.jb-store *){float:right}
div.woocommerce .quantity input.qty:not(.jb-store *){width:84px;min-height:44px;padding:8px 12px;text-align:center}

/* Cart */
.woocommerce-cart .woocommerce-cart-form:not(.jb-store *){border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.woocommerce-cart .cart-collaterals:not(.jb-store *){position:sticky;top:100px}
div.woocommerce .cart_totals:not(.jb-store *){padding:var(--card-pad);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);background:#fff}
div.woocommerce .cart_totals table.shop_table th:not(.jb-store *),div.woocommerce .cart_totals table.shop_table td:not(.jb-store *){padding:12px 0;background:transparent;text-transform:none;letter-spacing:0;font-size:var(--fs-md);color:var(--body);font-weight:400}
div.woocommerce .cart_totals table.shop_table th:not(.jb-store *){color:var(--muted)}
div.woocommerce .cart_totals table.shop_table td:not(.jb-store *){text-align:right}
div.woocommerce .cart_totals .order-total th:not(.jb-store *),div.woocommerce .cart_totals .order-total td:not(.jb-store *){font-weight:700;color:var(--ink);font-size:var(--fs-body);border-bottom:0;padding-top:20px}
div.woocommerce .wc-proceed-to-checkout:not(.jb-store *){margin-top:20px}
div.woocommerce .wc-proceed-to-checkout .checkout-button:not(.jb-store *){width:100%;min-height:52px}
div.woocommerce .cart-empty:not(.jb-store *){padding:48px 24px;text-align:center;font-size:var(--fs-lg);color:var(--ink);background:var(--off);border:1px dashed var(--line-strong);border-radius:var(--r-md);grid-column:1/-1}
div.woocommerce .return-to-shop:not(.jb-store *){grid-column:1/-1;text-align:center}

/* Checkout */
.woocommerce-checkout form.checkout:not(.jb-store *){display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:start;grid-template-areas:"details heading" "details review"}
.woocommerce-checkout form.checkout #customer_details:not(.jb-store *){grid-area:details;padding:var(--card-pad);border:1px solid var(--line);border-radius:var(--r-md);background:#fff}
.woocommerce-checkout form.checkout #order_review_heading:not(.jb-store *){grid-area:heading;margin:0 0 -12px;padding:0}
.woocommerce-checkout form.checkout #order_review:not(.jb-store *){grid-area:review;padding:var(--card-pad);border:1px solid var(--line);border-radius:var(--r-md);background:#fff;position:sticky;top:calc(var(--header-h) + 24px)}
.woocommerce-checkout #customer_details .col-1:not(.jb-store *),.woocommerce-checkout #customer_details .col-2:not(.jb-store *){width:100%;float:none}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper:not(.jb-store *){display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.woocommerce-checkout .form-row-wide:not(.jb-store *),.woocommerce-checkout .form-row.notes:not(.jb-store *),.woocommerce-checkout .form-row-first.full:not(.jb-store *){grid-column:1/-1}
.woocommerce-checkout #order_review table.shop_table thead th:not(.jb-store *){background:transparent;padding-inline:0}
.woocommerce-checkout #order_review table.shop_table td:not(.jb-store *),.woocommerce-checkout #order_review table.shop_table th:not(.jb-store *){padding-inline:0;border-bottom:1px solid var(--line)}
.woocommerce-checkout #order_review table.shop_table td:last-child:not(.jb-store *),.woocommerce-checkout #order_review table.shop_table th:last-child:not(.jb-store *){text-align:right}
.woocommerce-checkout #order_review tfoot th:not(.jb-store *){font-weight:400;color:var(--muted)}
.woocommerce-checkout #order_review .order-total th:not(.jb-store *),.woocommerce-checkout #order_review .order-total td:not(.jb-store *){font-weight:700;color:var(--ink);font-size:var(--fs-body);border-bottom:0;padding-top:20px}
.woocommerce-checkout #payment:not(.jb-store *){margin-top:24px}
.woocommerce-checkout #payment ul.payment_methods:not(.jb-store *){list-style:none;margin:0 0 20px;padding:0;display:grid;gap:12px}
.woocommerce-checkout #payment .wc_payment_method:not(.jb-store *){padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-sm);font-size:var(--fs-md)}
.woocommerce-checkout #payment .wc_payment_method:has(input:checked):not(.jb-store *){border-color:var(--blue);background:var(--off)}
.woocommerce-checkout #payment .wc_payment_method label:not(.jb-store *){display:inline;margin-left:8px;cursor:pointer}
.woocommerce-checkout #payment .payment_box:not(.jb-store *){margin:12px 0 0;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);font-size:var(--fs-small);color:var(--muted)}
.woocommerce-checkout #payment .payment_box p:not(.jb-store *){margin:0}
.woocommerce-checkout #payment .place-order:not(.jb-store *){margin:0}
.woocommerce-checkout #payment #place_order:not(.jb-store *){width:100%;min-height:56px;font-size:var(--fs-body)}
.woocommerce-checkout .woocommerce-privacy-policy-text:not(.jb-store *){margin-bottom:16px;font-size:var(--fs-sm);line-height:var(--lh-relaxed);color:var(--muted)}
.woocommerce-checkout .woocommerce-privacy-policy-text p:not(.jb-store *){margin:0}

/* Order received */
.woocommerce-order:not(.jb-store *){max-width:760px;margin-inline:auto}
.woocommerce-order .woocommerce-notice--success:not(.jb-store *){border-left-color:var(--success);background:var(--success-bg);font-weight:600}
.woocommerce-order ul.order_details:not(.jb-store *){list-style:none;margin:0 0 32px;padding:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;background:var(--off);border:1px solid var(--line);border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--muted)}
.woocommerce-order ul.order_details strong:not(.jb-store *){display:block;margin-top:4px;font-size:var(--fs-md);color:var(--ink)}

/* Account: signed out */
.woocommerce-account div.woocommerce #customer_login:not(.jb-store *){display:grid;grid-template-columns:1fr 1fr;gap:0;max-width:1080px;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff;box-shadow:var(--shadow-sm)}
.woocommerce-account #customer_login .u-column1:not(.jb-store *),.woocommerce-account #customer_login .u-column2:not(.jb-store *){float:none;width:auto;padding:clamp(28px,4.5vw,56px)}
.woocommerce-account #customer_login .u-column2:not(.jb-store *){background:var(--off);border-left:1px solid var(--line)}
.woocommerce-account:not(.logged-in) div.woocommerce form.woocommerce-form-login:not(.jb-store *),.woocommerce-account:not(.logged-in) div.woocommerce form.woocommerce-form-register:not(.jb-store *),.woocommerce-account div.woocommerce form.lost_reset_password:not(.jb-store *){border:0;padding:0;margin:0}
div.woocommerce form.login .form-row:last-of-type:not(.jb-store *),div.woocommerce form.login .lost_password:not(.jb-store *){margin:0}
div.woocommerce form.login .woocommerce-form-login__submit:not(.jb-store *){margin-top:8px}
div.woocommerce .lost_password:not(.jb-store *){margin-top:20px;font-size:var(--fs-md)}
div.woocommerce form.lost_reset_password:not(.jb-store *){max-width:520px}
div.woocommerce form.lost_reset_password .form-row-first:not(.jb-store *),div.woocommerce form.lost_reset_password .form-row-last:not(.jb-store *){width:100%;float:none}

/* Account: signed in */
.woocommerce-MyAccount-navigation:not(.jb-store *){position:sticky;top:calc(var(--header-h) + 24px);border:1px solid var(--line);border-radius:var(--r-md);background:#fff;padding:8px}
.woocommerce-MyAccount-navigation ul:not(.jb-store *){list-style:none;margin:0;padding:0;display:grid;gap:2px}
.woocommerce-MyAccount-navigation a:not(.jb-store *){display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:var(--r-sm);color:var(--body)!important;font-weight:500;font-size:var(--fs-small);text-decoration:none!important}
.woocommerce-MyAccount-navigation a:hover:not(.jb-store *){background:var(--off);color:var(--ink)!important}
.woocommerce-MyAccount-navigation .is-active a:not(.jb-store *){background:var(--blue-tint);color:var(--blue)!important;font-weight:600}
.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--customer-logout:not(.jb-store *){margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}
.woocommerce-MyAccount-content:not(.jb-store *){min-width:0}
.woocommerce-MyAccount-content>p:first-child:not(.jb-store *){font-size:var(--fs-lg);color:var(--ink)}
.woocommerce-MyAccount-content h2:not(.jb-store *){margin-top:36px}
.woocommerce-MyAccount-content table.shop_table:not(.jb-store *){border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.woocommerce-MyAccount-content table.shop_table tbody tr:last-child td:not(.jb-store *),.woocommerce-MyAccount-content table.shop_table tbody tr:last-child th:not(.jb-store *){border-bottom:0}
.woocommerce-EditAccountForm .form-row-first:not(.jb-store *),.woocommerce-EditAccountForm .form-row-last:not(.jb-store *){width:calc(50% - 10px);display:inline-flex;vertical-align:top}
.woocommerce-EditAccountForm .form-row-first:not(.jb-store *){margin-right:16px}
.woocommerce-EditAccountForm fieldset:not(.jb-store *){margin:28px 0 0;padding:24px;border:1px solid var(--line);border-radius:var(--r-md)}
.woocommerce-EditAccountForm legend:not(.jb-store *){padding:0 8px;font-weight:700;color:var(--ink)}
.woocommerce-Addresses:not(.jb-store *){display:grid;grid-template-columns:1fr 1fr;gap:24px}
.woocommerce-Address:not(.jb-store *){padding:24px;border:1px solid var(--line);border-radius:var(--r-md)}
.woocommerce-pagination:not(.jb-store *){margin-top:24px;display:flex;gap:12px}

@media (max-width:1024px){
  .woocommerce-cart .cart-collaterals:not(.jb-store *){position:static}
  .woocommerce-checkout form.checkout:not(.jb-store *){grid-template-columns:minmax(0,1fr);grid-template-areas:"details" "heading" "review"}
  .woocommerce-checkout form.checkout #order_review:not(.jb-store *){position:static}
  .woocommerce-checkout form.checkout #order_review_heading:not(.jb-store *){margin:8px 0 0}
  .woocommerce-MyAccount-navigation:not(.jb-store *){position:static}
  .woocommerce-MyAccount-navigation ul:not(.jb-store *){display:flex;flex-wrap:wrap}
  .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--customer-logout:not(.jb-store *){margin:0;padding:0;border:0}
}
@media (max-width:768px){
  .woocommerce-account div.woocommerce #customer_login:not(.jb-store *){grid-template-columns:minmax(0,1fr)}
  .woocommerce-account #customer_login .u-column2:not(.jb-store *){border-left:0;border-top:1px solid var(--line)}
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper:not(.jb-store *){grid-template-columns:minmax(0,1fr)}
  .woocommerce-checkout form.checkout #customer_details:not(.jb-store *),.woocommerce-checkout form.checkout #order_review:not(.jb-store *),div.woocommerce .cart_totals:not(.jb-store *){padding:20px}
  .woocommerce-EditAccountForm .form-row-first:not(.jb-store *),.woocommerce-EditAccountForm .form-row-last:not(.jb-store *){width:100%;margin-right:0}
  .woocommerce-Addresses:not(.jb-store *){grid-template-columns:minmax(0,1fr)}
  /* Cart table becomes stacked cards */
  div.woocommerce table.shop_table_responsive thead:not(.jb-store *){display:none}
  div.woocommerce table.shop_table_responsive tr:not(.jb-store *){display:block;border-bottom:1px solid var(--line);padding:8px 0}
  div.woocommerce table.shop_table_responsive td:not(.jb-store *),div.woocommerce table.shop_table_responsive th:not(.jb-store *){display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:0;padding:8px 14px;text-align:right}
  div.woocommerce table.shop_table_responsive td:not(.jb-store *)::before{content:attr(data-title);font-size:var(--fs-sm);font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--muted);text-align:left}
  div.woocommerce table.shop_table_responsive td.product-remove:not(.jb-store *)::before,div.woocommerce table.shop_table_responsive td.product-thumbnail:not(.jb-store *)::before,div.woocommerce table.shop_table_responsive td.actions:not(.jb-store *)::before{content:none}
  div.woocommerce table.shop_table_responsive td.actions:not(.jb-store *){display:block}
  div.woocommerce .coupon:not(.jb-store *){float:none;display:flex;margin-bottom:12px}
  div.woocommerce .coupon input.input-text:not(.jb-store *){flex:1 1 140px;width:auto}
  div.woocommerce button[name=update_cart]:not(.jb-store *){float:none;width:100%}
}

/* Layout details */
div.woocommerce .woocommerce-notices-wrapper:empty:not(.jb-store *){display:none}
.section-sm:has(>.woo-page){padding-block:40px 64px}
div.woocommerce td.product-price:not(.jb-store *),div.woocommerce td.product-name:not(.jb-store *),div.woocommerce td.product-total:not(.jb-store *),div.woocommerce td.product-subtotal:not(.jb-store *){font-size:inherit;letter-spacing:0}
div.woocommerce td.product-price:not(.jb-store *),div.woocommerce td.product-total:not(.jb-store *),div.woocommerce td.product-subtotal:not(.jb-store *){font-weight:600;color:var(--ink)}
div.woocommerce td.product-price.is-muted:not(.jb-store *){color:var(--ink)}
div.woocommerce form p:not(.form-row):not(.jb-store *){margin:0 0 16px}
@media (max-width:768px){
  div.woocommerce .cart_totals table.shop_table_responsive td:not(.jb-store *)::before,div.woocommerce .woocommerce-checkout-review-order-table td:not(.jb-store *)::before{content:none}
  div.woocommerce .cart_totals table.shop_table_responsive tr:not(.jb-store *){display:flex;justify-content:space-between;align-items:center;padding:0}
  div.woocommerce .cart_totals table.shop_table_responsive td:not(.jb-store *),div.woocommerce .cart_totals table.shop_table_responsive th:not(.jb-store *){padding:12px 0}
}

/* Theme store templates (.jb-store): WooCommerce field markup inside the design's field styles. */
.jb-store .field .required{color:var(--blue);text-decoration:none;border:0}
.jb-store .field .optional{color:var(--muted);font-weight:400}
.jb-store .woocommerce-input-wrapper{display:block}
.jb-store .woocommerce-billing-fields .form-grid{margin-top:24px}
.jb-store .checkout-test-fields p{margin:0 0 12px;font-size:var(--fs-sm);color:var(--muted)}
.jb-store .woocommerce-terms-and-conditions-wrapper{margin:0 0 16px;font-size:var(--fs-sm);color:var(--muted)}
.jb-store .woocommerce-terms-and-conditions-wrapper a{color:var(--blue)}
.jb-store #place_order{gap:10px}
.jb-store .woocommerce-invalid input,.jb-store .woocommerce-invalid select{border-color:var(--danger)}
.jb-store .account-user-text{min-width:0}
.jb-store .account-user-email{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}

/* WooCommerce block notice banners, drawn like the design's .notice strip. WooCommerce marks its padding and link rules !important. */
body .wc-block-components-notice-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 16px!important;margin:0 0 24px;border:1px solid var(--blue-line);border-radius:var(--r-sm);background:var(--blue-tint);color:var(--body);font-size:var(--fs-sm);line-height:var(--lh-normal)}
body .wc-block-components-notice-banner[class]>svg{flex:0 0 auto;width:18px;height:18px;margin-top:2px;padding:0;border-radius:0;background:none;fill:var(--accent-info);transform:none}
body .wc-block-components-notice-banner>.wc-block-components-notice-banner__content{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;padding:0}
body .wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward{order:2;float:none;margin:0;color:var(--blue)!important;font-weight:500;opacity:1;text-underline-offset:3px;text-underline-position:auto}
body .wc-block-components-notice-banner.is-success{border-color:var(--success-line);background:var(--success-bg)}
body .wc-block-components-notice-banner.is-success[class]>svg{fill:var(--success)}
body .wc-block-components-notice-banner.is-warning{border-color:var(--warning-line);background:var(--warning-bg)}
body .wc-block-components-notice-banner.is-warning[class]>svg{fill:var(--warning)}
body .wc-block-components-notice-banner.is-error{border-color:var(--danger-soft-line);background:var(--danger-bg);color:var(--danger)}
body .wc-block-components-notice-banner.is-error[class]>svg{fill:var(--danger)}
.jb-store #place_order:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}
/* Gateway logos (Paystack ships one large composite image) sit at the right of the method card, like the design's small "Test mode" note; a single method uses the full row. */
.jb-store .checkout-methods:has(> label:only-of-type){grid-template-columns:1fr}
.jb-store .checkout-methods label > span{display:flex;align-items:center;gap:6px}
.jb-store .checkout-methods label img{display:block;width:auto;height:auto;max-height:48px;max-width:min(180px,45vw)}
/* Pay-for-order receipt: the gateway's own buttons (for example Paystack's "Pay Now" and "Cancel order") as the design's buttons. */
.jb-store .checkout-receipt-gateway{margin:24px 0 12px}
.jb-store .checkout-receipt-gateway p{margin:0 0 14px;font-size:var(--fs-sm);color:var(--muted)}
.jb-store .checkout-receipt-gateway #paystack_form,.jb-store .checkout-receipt-gateway form+.button{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.jb-store .checkout-receipt-gateway .button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;font:inherit;font-size:var(--fs-md);font-weight:600;line-height:var(--lh-snug);color:#fff;background:var(--blue);border:1px solid var(--blue);border-radius:var(--radius);text-decoration:none;cursor:pointer}
.jb-store .checkout-receipt-gateway .button:hover{background:var(--blue-dark);border-color:var(--blue-dark)}
.jb-store .checkout-receipt-gateway .button.cancel{color:var(--ink);background:transparent;border-color:var(--line)}
.jb-store .checkout-receipt-gateway .button.cancel:hover{background:var(--white);border-color:var(--ink)}
.jb-store .checkout-receipt-gateway .button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
