/* Figma typography is bundled locally, so the active theme cannot substitute it. */
@font-face { font-family: 'PETK Inter Tight'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/inter-tight-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02CF, U+02D8-02DD, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'PETK Inter Tight'; font-style: normal; font-weight: 400 700; font-display: swap; src: url('../fonts/inter-tight-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Follow the Elementor column. A child theme can override these sizing tokens. */
section.petk-purchase-card {
  --petk-card-padding: 11px;
  --petk-card-radius: 8px;
  --petk-card-gap: 8px;
  --petk-price-size: 18px;
  --petk-price-line-height: 1.4;
  --petk-button-height: 32px;
  --petk-button-radius: 6px;
  --petk-cart-background: #053677;
  --petk-buy-background: #1662c7;
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: var(--petk-card-padding);
  border: 1px solid #dadde3;
  border-radius: var(--petk-card-radius);
  background: #fff;
  box-sizing: border-box;
  color: #111;
  font-family: 'PETK Inter Tight', Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
}
.petk-purchase-card *, .petk-purchase-card *::before, .petk-purchase-card *::after { box-sizing: border-box; }
.petk-purchase-card > .petk-product-actions { margin-bottom: var(--petk-card-gap); }
section.petk-purchase-card .petk-purchase-condition { margin: 0; padding: 0; color: #080808; font-size: 18px; font-weight: 700; line-height: 1.4; }
section.petk-purchase-card .petk-purchase-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; margin: 0; padding: 0; color: #080808; font-size: var(--petk-price-size); font-weight: 700; line-height: var(--petk-price-line-height); overflow-wrap: anywhere; }
section.petk-purchase-card .petk-purchase-price :is(.price, .amount, bdi, .woocommerce-Price-currencySymbol, ins) { margin: 0; padding: 0; color: inherit; font: inherit; background: none; text-decoration: none; }
section.petk-purchase-card .petk-purchase-price .price { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; }
section.petk-purchase-card .petk-purchase-price :is(ins, del) { display: inline; }
section.petk-purchase-card .petk-purchase-price del { color: #707070; font-size: 14px; font-weight: 400; line-height: 20px; }
section.petk-purchase-card .petk-purchase-price .woocommerce-price-suffix { color: #666; font-size: 12px; font-weight: 400; line-height: 18px; }
section.petk-purchase-card .petk-purchase-shipping { margin: 2px 0 var(--petk-card-gap); padding: 0; color: #808080; font-size: 12px; line-height: 1.4; }
section.petk-purchase-card .petk-purchase-shipping :is(.amount, bdi, .woocommerce-Price-currencySymbol) { color: inherit; font: inherit; }
section.petk-purchase-card .petk-purchase-delivery { display: flex; align-items: flex-start; gap: 8px; margin: 10px 0 12px; padding: 0; color: #383838; font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
.petk-purchase-card .petk-purchase-delivery svg { display: block; flex: 0 0 16px; width: 16px; height: 18px; margin-top: 1px; }
section.petk-purchase-card .petk-purchase-delivery a { color: #0066d8; font: inherit; text-decoration: underline; text-underline-offset: 2px; }
section.petk-purchase-card .petk-purchase-fastest { margin: 12px 0 10px; padding: 0; color: #383838; font-size: 13px; line-height: 1.4; }
section.petk-purchase-card .petk-purchase-stock { margin: var(--petk-card-gap) 0 0; padding: 0; }
section.petk-purchase-card .petk-purchase-stock .stock { display: inline-block; width: auto; margin: 0; padding: 2px 6px; border: 0; border-radius: 2px; background: #eafff1; color: #09b743; font-family: inherit; font-size: 13px; font-weight: 500; line-height: 16px; }
/* WoodMart adds a stock icon and spacing; this badge owns its background. */
section.petk-purchase-card .petk-purchase-stock .stock::before { display: none; }
section.petk-purchase-card .petk-purchase-stock .out-of-stock { background: #fff0f0; color: #a21d25; }
section.petk-purchase-card .petk-purchase-stock .available-on-backorder { background: #fff7df; color: #795400; }
section.petk-purchase-card .petk-purchase-native-form { margin: var(--petk-card-gap) 0 0; padding: 0; }
section.petk-purchase-card .petk-purchase-native-form > .stock { display: none; }
section.petk-purchase-card form.cart { display: block; width: 100%; margin: 0; padding: 0; border: 0; }
section.petk-purchase-card .petk-purchase-quantity-control { display: inline-flex; align-items: center; gap: 5px; min-height: 26px; margin: 0 0 var(--petk-card-gap); padding: 0 9px; border: 1px solid #d9dde3; border-radius: 6px; background: #fff; color: #111; font-size: 13px; line-height: 18px; }
section.petk-purchase-card .quantity { display: inline-flex; float: none; width: auto; height: 24px; margin: 0; padding: 0; border: 0; background: transparent; }
section.petk-purchase-card .quantity .qty { width: 32px; min-width: 0; height: 24px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: #111; font: inherit; text-align: center; }
section.petk-purchase-card .quantity :is(.minus, .plus) { display: none; }
section.petk-purchase-card form.cart :is(.single_add_to_cart_button, .petk-purchase-buy-now) { display: flex; float: none; align-items: center; justify-content: center; width: 100%; min-width: 0; min-height: var(--petk-button-height); height: auto; margin: 0 0 var(--petk-card-gap); padding: 8px 12px; border: 1px solid #101820; border-radius: var(--petk-button-radius); box-shadow: none; color: #fff; font-family: inherit; font-size: 13px; font-weight: 600; line-height: 14px; letter-spacing: normal; text-align: center; text-transform: none; white-space: normal; cursor: pointer; }
/* The site's custom CSS applies important button backgrounds. Scope these
   overrides to this card so its two action colours stay distinct. */
section.petk-purchase-card form.cart .single_add_to_cart_button { background: var(--petk-cart-background) !important; }
section.petk-purchase-card form.cart .petk-purchase-buy-now { margin-bottom: 0; background: var(--petk-buy-background) !important; }
section.petk-purchase-card .woocommerce-variation-add-to-cart { display: block; margin: 0; padding: 0; }
section.petk-purchase-card form.cart :is(.single_add_to_cart_button, .petk-purchase-buy-now):hover { color: #fff; filter: brightness(.94); }
section.petk-purchase-card form.cart :is(.single_add_to_cart_button, .petk-purchase-buy-now):active { filter: brightness(.86); }
section.petk-purchase-card form.cart :is(.single_add_to_cart_button, .petk-purchase-buy-now):is(:disabled, .disabled, .loading) { opacity: .55; cursor: not-allowed; filter: none; }
section.petk-purchase-card form.cart :is(.single_add_to_cart_button, .petk-purchase-buy-now).loading { cursor: wait; }
/* This card supplies its own Buy Now; support has its own product section. */
section.petk-purchase-card form.cart .wd-buy-now-btn:not(.petk-purchase-buy-now), section.petk-purchase-card form.cart .dokan-store-support-btn-product { display: none; }
section.petk-purchase-card :is(.woocommerce-variation-price, .woocommerce-variation-availability) { display: none; }
section.petk-purchase-card table.variations { width: 100%; margin: 0 0 var(--petk-card-gap); font-size: 13px; }
section.petk-purchase-card table.variations :is(th, td) { padding: 4px 0; border: 0; }
section.petk-purchase-card table.variations select { width: 100%; min-width: 0; min-height: 44px; font: inherit; }
section.petk-purchase-card .petk-purchase-payments { margin: 20px 0 0; padding: 0; }
section.petk-purchase-card .petk-purchase-payments h3 { margin: 0 0 10px; padding: 0; color: #111; font-family: inherit; font-size: 14px; font-weight: 700; line-height: 1.4; }
section.petk-purchase-card .petk-purchase-payment-fallback { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.petk-purchase-card .petk-purchase-payment-fallback .petk-purchase-payment-image { display: block; width: 100%; height: auto; margin: 0; border: 0; border-radius: 6px; pointer-events: none; }
.petk-purchase-card .petk-purchase-payment-fallback .petk-payment-link { grid-column: 1 / -1; }
/* Preserve the HTML hidden state despite component display rules. */
.petk-purchase-card [hidden] { display: none !important; }
section.petk-purchase-card .petk-purchase-message { margin-top: 8px; color: #a21d25; font-size: 13px; line-height: 20px; }
.petk-purchase-card .petk-purchase-message:empty { display: none; }
.petk-purchase-card :is(a, button, input, select, summary):focus-visible { outline: 2px solid #0066d8; outline-offset: 3px; }
@media (pointer: coarse) {
  section.petk-purchase-card form.cart :is(.single_add_to_cart_button, .petk-purchase-buy-now) { min-height: 44px; }
  section.petk-purchase-card .petk-purchase-quantity-control { min-height: 44px; }
  section.petk-purchase-card .quantity, section.petk-purchase-card .quantity .qty { height: 42px; }
}

/* Quantity dropdown (2026-11-02): number select inside the purchase card. */
section.petk-purchase-card .quantity select.qty.petk-qty-select { width: auto; min-width: 52px; height: 24px; padding: 0 18px 0 4px; font-size: 14px; text-align: left; cursor: pointer; }
@media (pointer: coarse) {
	section.petk-purchase-card .quantity select.qty.petk-qty-select { height: 42px; }
}
}
/* Add-on Options showcase (Figma, 2026-11-02): PAO fields as row cards. */
section.petk-purchase-card .wc-pao-addons-container { background: #F3F5FA; border-radius: 12px; padding: 16px; margin: 0 0 var(--petk-card-gap); font-family: 'PETK Inter Tight', Arial, Helvetica, sans-serif; color: #000; }
section.petk-purchase-card .wc-pao-addons-container::before { content: 'Add-on Options'; display: block; font-size: 15px; font-weight: 600; line-height: 20px; color: #000; margin: 0 0 12px; }
section.petk-purchase-card .wc-pao-addon-container { margin: 0; }
section.petk-purchase-card .wc-pao-addon-container + .wc-pao-addon-container { margin-top: 14px; }
section.petk-purchase-card .wc-pao-fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
section.petk-purchase-card .wc-pao-addon-name { float: left; width: 100%; padding: 0; margin: 0 0 8px; font-size: 13px; font-weight: 600; line-height: 18px; color: #000; }
section.petk-purchase-card .wc-pao-addon-wrap { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; clear: both; }
section.petk-purchase-card .wc-pao-addon-wrap > div { display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid #E5E7EB; border-radius: 10px; padding: 8px; margin: 0; }
section.petk-purchase-card .wc-pao-addon-wrap > div::before { content: ''; flex: none; width: 38px; height: 38px; border-radius: 8px; background-color: #F3F5FA; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 7.6-7 9-4-1.4-7-4.5-7-9V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-4.5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: 20px 20px; order: 1; }
section.petk-purchase-card .wc-pao-addon-wrap label { display: flex; align-items: center; flex: 1 1 auto; min-width: 0; margin: 0; padding: 0; order: 2; font-size: 13px; font-weight: 500; line-height: 18px; color: #000; cursor: pointer; }
section.petk-purchase-card .wc-pao-addon-wrap .wc-pao-addon-price { margin-left: auto; padding-left: 10px; font-size: 14px; font-weight: 600; color: #000; white-space: nowrap; }
section.petk-purchase-card .wc-pao-addon-wrap input.wc-pao-addon-field { -webkit-appearance: none; appearance: none; flex: none; width: 16px; height: 16px; margin: 0; padding: 0; order: 3; border: 1.5px solid #000; border-radius: 50%; background-color: #fff; box-shadow: none; cursor: pointer; }
section.petk-purchase-card .wc-pao-addon-wrap input.wc-pao-addon-field:checked { background-color: #000; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12.5l5 5L19.5 7'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: 10px 10px; }
section.petk-purchase-card .wc-pao-addon-wrap input.wc-pao-addon-field:focus-visible { outline: 2px solid #3B7BF8; outline-offset: 2px; }
section.petk-purchase-card #wc-pao-addons-total { margin-top: 12px; font-size: 13px; color: #000; }

/* Add-on Options, relocated state (2026-11-02): the showcase rules under
   the .petk-addons-scope class, used when the [petk_addon_options] box is
   rendered in the summary column (Figma placement). In-card, the
   section-scoped rules above apply instead. */
.wc-pao-addons-container.petk-addons-scope { background: #F3F5FA; border-radius: 12px; padding: 16px; margin: 0 0 var(--petk-card-gap, 16px); font-family: 'PETK Inter Tight', Arial, Helvetica, sans-serif; color: #000; }
.wc-pao-addons-container.petk-addons-scope::before { content: 'Add-on Options'; display: block; font-size: 15px; font-weight: 600; line-height: 20px; color: #000; margin: 0 0 12px; }
.petk-addons-scope .wc-pao-addon-container { margin: 0; }
.petk-addons-scope .wc-pao-addon-container + .wc-pao-addon-container { margin-top: 14px; }
.petk-addons-scope .wc-pao-fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.petk-addons-scope .wc-pao-addon-name { float: left; width: 100%; padding: 0; margin: 0 0 8px; font-size: 13px; font-weight: 600; line-height: 18px; color: #000; }
.petk-addons-scope .wc-pao-addon-wrap { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; clear: both; }
.petk-addons-scope .wc-pao-addon-wrap > div { display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid #E5E7EB; border-radius: 10px; padding: 8px; margin: 0; }
.petk-addons-scope .wc-pao-addon-wrap > div::before { content: ''; flex: none; width: 38px; height: 38px; border-radius: 8px; background-color: #F3F5FA; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 7.6-7 9-4-1.4-7-4.5-7-9V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-4.5'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: 20px 20px; order: 1; }
.petk-addons-scope .wc-pao-addon-wrap label { display: flex; align-items: center; flex: 1 1 auto; min-width: 0; margin: 0; padding: 0; order: 2; font-size: 13px; font-weight: 500; line-height: 18px; color: #000; cursor: pointer; }
.petk-addons-scope .wc-pao-addon-wrap .wc-pao-addon-price { margin-left: auto; padding-left: 10px; font-size: 14px; font-weight: 600; color: #000; white-space: nowrap; }
.petk-addons-scope .wc-pao-addon-wrap input.wc-pao-addon-field { -webkit-appearance: none; appearance: none; flex: none; width: 16px; height: 16px; margin: 0; padding: 0; order: 3; border: 1.5px solid #000; border-radius: 50%; background-color: #fff; box-shadow: none; cursor: pointer; }
.petk-addons-scope .wc-pao-addon-wrap input.wc-pao-addon-field:checked { background-color: #000; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12.5l5 5L19.5 7'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: 10px 10px; }
.petk-addons-scope .wc-pao-addon-wrap input.wc-pao-addon-field:focus-visible { outline: 2px solid #3B7BF8; outline-offset: 2px; }