/* ==========================================================================
   [Z] Stran izdelka, zaloga, košarica (pregled 2: U-02, U-03, U-05, U-07, U-09 DV-04, U-16 del), 2026-09-28.
   Naloži se za kovinar.css (odvisnost), samo na straneh WooCommerce, košarici in domači (izbor izdelkov).
   Kontrast: success #1E7A46 na #fff 5,4:1; warning #8A5300 na #fff 6,6:1; n-600 na #fff 7,0:1; danger #B42318 na #fff 6,6:1.
   ========================================================================== */

/* ---------- Značka zaloge (kartica in izdelek) ---------- */
.kv-stock { display: inline-flex; align-items: center; gap: 6px; margin: 4px 0 0; font-size: var(--wp--preset--font-size--xs); font-weight: 600; line-height: 1.3; }
.kv-stock__dot { width: 8px; height: 8px; border-radius: 50%; background: currentColor; flex: none; }
.kv-stock--na-zalogi { color: var(--wp--preset--color--success); }
.kv-stock--po-narocilu { color: var(--wp--preset--color--warning); }
.kv-stock--ni-zaloge { color: var(--wp--preset--color--n-600); }
.kv-stock--ni-zaloge .kv-stock__dot { background: transparent; box-shadow: inset 0 0 0 2px currentColor; }
.woocommerce div.product .summary .kv-stock { margin: 0 0 12px; font-size: var(--wp--preset--font-size--sm); padding: 4px 10px; background: var(--wp--preset--color--n-50); }
.woocommerce div.product .summary .kv-stock--na-zalogi { background: var(--wp--preset--color--success-bg); }
.woocommerce div.product .summary .kv-stock--po-narocilu { background: var(--wp--preset--color--warning-bg); }
.woocommerce div.product .woocommerce-variation-availability .kv-stock { margin-top: 8px; }

/* ---------- Kartica: akcija (U-16 del, mockup 06-kartica) ---------- */
.woocommerce ul.products li.product .price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 8px; }
.woocommerce ul.products li.product .price ins { order: -1; color: var(--wp--preset--color--danger); font-weight: 700; }
.woocommerce ul.products li.product .price del { order: 1; font-size: var(--wp--preset--font-size--sm); }
.woocommerce ul.products li.product .price .kv-ddv { order: 2; flex-basis: 100%; }
.woocommerce span.onsale.kv-onsale {
  font: 700 var(--wp--preset--font-size--sm)/1.4 var(--kv-font-h); letter-spacing: .02em; padding: 2px 12px 2px 8px;
  clip-path: polygon(0 0, 100% 0, calc(100% - 6px) 100%, 0 100%);
}
.kv-ddv { display: block; font-size: var(--wp--preset--font-size--xs) !important; font-weight: 400; color: var(--kv-text-2); line-height: 1.3; }
/* Galerija [L] že izpiše »vključno z DDV« — brez podvajanja. */
.kv-gal__price .kv-ddv { display: none; }

/* ---------- Stran izdelka: postavitev (U-05, DV-01/20) ---------- */
@media (min-width: 768px) {
  .woocommerce div.product { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .woocommerce div.product div.images, .woocommerce div.product div.summary { grid-column: auto; width: auto !important; float: none !important; margin: 0 !important; }
}
.kv-product .product_title { font-size: clamp(1.25rem, 1rem + 1.2vw, 2.25rem) !important; line-height: 1.2; margin-bottom: 8px; }
.woocommerce div.product .summary p.price, .woocommerce div.product .summary span.price { margin: 0 0 8px; }
.woocommerce div.product .summary .price .kv-ddv { display: inline; margin-left: 6px; }
.woocommerce div.product form.cart .single_add_to_cart_button { min-height: 52px; padding-inline: 2rem; font-size: var(--wp--preset--font-size--lg); }

/* Drobtinice: namizje celotna pot; mobilno ena vrstica »‹ nadrejena kategorija« (mockup 06-izdelek-mobilno) —
   ime izdelka je v H1, višje ravni so v meniju Oddelki. Predolgo ime kategorije se konča s tremi pikami. */
.woocommerce-breadcrumb .kv-bc-sep { margin-inline: 6px; color: var(--kv-text-2); }
@media (max-width: 767px) {
  .kv-product .woocommerce-breadcrumb { display: flex; flex-wrap: nowrap; align-items: center; white-space: nowrap; overflow: hidden; margin-bottom: 4px; font-size: var(--wp--preset--font-size--sm); }
  .kv-product .woocommerce-breadcrumb > * { display: none; }
  .kv-product .woocommerce-breadcrumb .kv-bc:nth-last-child(3) { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
  .kv-product .woocommerce-breadcrumb .kv-bc:nth-last-child(3)::before { content: "‹"; content: "‹" / ""; margin-right: 6px; font-size: 1.25em; line-height: 1; color: var(--kv-blue); }
  .kv-product .woocommerce-breadcrumb a { display: inline-block; padding-block: 10px; }
}

/* »Cena na povpraševanje« (mu-plugin) na strani izdelka: oznaka namesto velike podčrtane povezave; pot naprej je blok »Vprašajte nas« */
.woocommerce div.product .summary .price .kovinar-cena-povprasevanje a { font-size: var(--wp--preset--font-size--xl); color: var(--wp--preset--color--blue-800); text-decoration-thickness: 1px; text-underline-offset: 4px; }

/* Galerija na mobilnem: 4:3, največ 46svh (DV-01); sličice manjše (6 v vrsti). Dialog galerije [L] ostane nespremenjen. */
@media (max-width: 767px) {
  .woocommerce div.product { row-gap: 12px; }
  .woocommerce div.product .summary .kv-stock { margin-bottom: 8px; }
  .woocommerce div.product form.cart { margin-bottom: 16px; }
  .woocommerce div.product form.cart .variations { margin-bottom: 8px; }
  .woocommerce div.product div.images .woocommerce-product-gallery__wrapper { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; }
  .woocommerce div.product div.images .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child { aspect-ratio: 4 / 3; max-height: 46svh; }
  .woocommerce div.product div.images .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child a { display: block; height: 100%; }
  .woocommerce div.product div.images .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: contain; }
}

/* Izbirnik različice: besedilo ni odrezano (DV-04) */
.woocommerce div.product form.cart .variations select {
  height: var(--kv-tap); min-height: var(--kv-tap); min-width: 14rem; max-width: 100%; padding: 0 2.5em 0 12px; line-height: 1.2; font-size: 1rem;
  background-position: right 12px center;
}
.woocommerce div.product form.cart .variations th.label { padding-bottom: 0; }
.woocommerce div.product form.cart .reset_variations { display: inline-block; margin-top: 6px; }

/* ---------- »Vprašajte nas« (U-03) ---------- */
.kv-ask { margin: 0 0 20px; padding: 16px; background: var(--wp--preset--color--blue-50); border-left: 4px solid var(--kv-blue); }
.kv-ask__h { margin: 0 0 4px; font-size: var(--wp--preset--font-size--xl) !important; color: var(--wp--preset--color--blue-800); }
.kv-ask__txt { margin: 0 0 12px; }
.kv-ask__btns { display: flex; flex-wrap: wrap; gap: 8px; }
.kv-ask__btns .button { flex: 1 1 13rem; }
.woocommerce .kv-ask a.button.kv-ask__mail { background: #fff; color: var(--kv-blue); box-shadow: inset 0 0 0 2px currentColor; clip-path: none; }
.woocommerce .kv-ask a.button.kv-ask__mail:hover { background: var(--wp--preset--color--blue-100); color: var(--wp--preset--color--blue-800); }
.kv-ask__ure { margin: 10px 0 0; font-size: var(--wp--preset--font-size--sm); color: var(--kv-text-2); }
.kv-ask .kv-ico { width: 20px; height: 20px; }

/* ---------- »Dostava in prevzem« (U-07) ---------- */
.kv-ship { margin: 0 0 20px; padding: 12px 0; border-block: 1px solid var(--kv-border); }
.kv-ship__h { margin: 0 0 6px; font-size: var(--wp--preset--font-size--md) !important; }
.kv-ship ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; font-size: var(--wp--preset--font-size--sm); }
.kv-ship li { display: flex; gap: 8px; align-items: flex-start; }
.kv-ship .kv-ico { width: 20px; height: 20px; color: var(--kv-blue); margin-top: 1px; }

/* ---------- Košarica: do brezplačne dostave (U-07) ---------- */
.kv-free { margin: 0 0 16px; padding: 12px 14px; background: var(--wp--preset--color--blue-50); }
.kv-free p { display: flex; gap: 8px; align-items: flex-start; margin: 0; }
.kv-free .kv-ico { color: var(--kv-blue); }
.kv-free--ok { background: var(--wp--preset--color--success-bg); }
.kv-free--ok .kv-ico { color: var(--wp--preset--color--success); }
.kv-free__bar { display: block; width: 100%; height: 8px; margin-top: 10px; border: 0; background: var(--wp--preset--color--blue-100); appearance: none; -webkit-appearance: none; }
.kv-free__bar::-webkit-progress-bar { background: var(--wp--preset--color--blue-100); }
.kv-free__bar::-webkit-progress-value { background: var(--kv-blue); }
.kv-free__bar::-moz-progress-bar { background: var(--kv-blue); }

/* ---------- Lepljiva spodnja vrstica (mobilno, U-05) ---------- */
.kv-sticky { display: none; }
@media (max-width: 767px) {
  .kv-sticky:not([hidden]) {
    position: fixed; left: 0; right: 0; bottom: var(--kv-sticky-bottom, 0px); z-index: 99980;
    display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px;
    padding: 8px var(--wp--custom--gutter) calc(8px + env(safe-area-inset-bottom)); background: #fff;
    border-top: 1px solid var(--kv-border); box-shadow: 0 -4px 16px rgb(15 42 82 / .12);
  }
  .kv-sticky__info { min-width: 0; display: grid; }
  .kv-sticky__name { font-size: var(--wp--preset--font-size--xs); color: var(--kv-text-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .kv-sticky__price { font-weight: 700; font-size: var(--wp--preset--font-size--lg); line-height: 1.25; }
  .kv-sticky__price small { font-size: var(--wp--preset--font-size--xs); font-weight: 400; color: var(--kv-text-2); }
  .woocommerce .kv-sticky .button, .kv-sticky .button { white-space: nowrap; min-height: 44px; padding-inline: 1rem; }
  html.kv-sticky-on body { padding-bottom: 72px; }
  html.kv-sticky-on { scroll-padding-bottom: 88px; }
}
@media (prefers-reduced-motion: no-preference) and (max-width: 767px) {
  .kv-sticky:not([hidden]) { animation: kv-sticky-in .18s ease-out; }
}
@keyframes kv-sticky-in { from { transform: translateY(100%); } to { transform: none; } }
@media print { .kv-sticky { display: none !important; } }

/* Košarica: »(z DDV)« pri načinu dostave — kontrast AA na mobilni postavitvi (ST-12; axe color-contrast) */
.woocommerce ul#shipping_method .tax_label, .woocommerce-shipping-methods .tax_label { color: var(--wp--preset--color--n-700); opacity: 1; }
