/**
 * WooCommerce — shop, Side Cart (XootiX), košarica i naplata u PANACEO stilu.
 */

/* Sakrij default shop loop (custom archive-product.php). */
.woocommerce-products-header,
.woocommerce-result-count,
.woocommerce-ordering {
  display: none;
}

.post-type-archive-product .woocommerce-notices-wrapper:not(:empty) {
  display: none;
}

.woocommerce ul.products,
.woocommerce-page ul.products {
  display: none !important;
}

.woocommerce .woocommerce-breadcrumb {
  display: none;
}

.archive.post-type-post .blog-grid {
  display: grid;
}

.entry-content .area-tabs,
.entry-content .faq-wrap,
.entry-content .contact-grid {
  max-width: none;
}

.panaceo-wc-section {
  padding: 10px 0 100px;
}

/* Blok košarica/naplata (fallback) — puna širina kontejnera */
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-checkout .wp-block-woocommerce-checkout {
  max-width: none !important;
}

.woocommerce-cart .article-body,
.woocommerce-checkout .article-body {
  max-width: none !important;
}

/* ============================================================
   SIDE CART (woocommerce-side-cart-premium / XootiX)
   ============================================================ */
.xoo-wsc-markup,
.xoo-wsc-container,
.xoo-wsc-slider,
.xoo-wsc-drawer {
  font-family: var(--font-body);
  color: var(--ink);
}

.xoo-wsc-container,
.xoo-wsc-slider,
.xoo-wsc-drawer {
  background: var(--paper) !important;
  width: min(450px, 100vw) !important;
  box-shadow: -20px 0 60px rgba(11, 39, 33, .25);
  display: flex !important;
  flex-direction: column !important;
  top: 0 !important;
  bottom: auto !important;
  height: var(--panaceo-wsc-vvh, 100svh) !important;
  max-height: var(--panaceo-wsc-vvh, 100svh) !important;
  overflow: hidden !important;
}

.xoo-wsc-opac {
  background: rgba(11, 39, 33, .5) !important;
  backdrop-filter: blur(3px);
}

.xoo-wsc-header,
.xoo-wsc-footer {
  background: var(--surface) !important;
  border-color: var(--line) !important;
  flex: 0 0 auto !important;
}

.xoo-wsc-header {
  border-bottom: 1px solid var(--line) !important;
}

.xoo-wsc-body {
  background: var(--paper);
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  touch-action: pan-y;
}

.xoo-wsc-footer {
  padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px)) !important;
}

@media (max-width: 900px) {
  .xoo-wsc-container,
  .xoo-wsc-slider,
  .xoo-wsc-drawer {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  /* right:0 SAMO kad je košarica otvorena — inače prekriva cijelu stranicu */
  .xoo-wsc-cart-active .xoo-wsc-container,
  .xoo-wsc-slider-active .xoo-wsc-slider {
    right: 0 !important;
  }

  .xoo-wsc-footer {
    padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px) + 48px) !important;
  }

  .xoo-wsc-ft-buttons-cont {
    padding-bottom: 4px !important;
  }
}

.xoo-wsc-ft-buttons-cont .xoo-wsc-ft-btn,
.xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn {
  font-family: var(--font-body) !important;
  font-weight: 750 !important;
  border-radius: 999px !important;
  transition: all .3s var(--ease) !important;
}

.xoo-wsc-ft-btn-checkout,
a.xoo-wsc-ft-btn-checkout {
  background: var(--pine) !important;
  color: #fff !important;
  border: 2px solid var(--pine) !important;
}

.xoo-wsc-ft-btn-checkout:hover,
a.xoo-wsc-ft-btn-checkout:hover {
  background: var(--pine-deep) !important;
  border-color: var(--pine-deep) !important;
}

.xoo-wsc-ft-btn-cart,
.xoo-wsc-ft-btn-continue,
a.xoo-wsc-ft-btn-cart,
a.xoo-wsc-ft-btn-continue {
  background: transparent !important;
  color: var(--pine) !important;
  border: 2px solid var(--line) !important;
}

.xoo-wsc-product,
.xoo-wsc-pattern-card {
  border-color: var(--line) !important;
  border-radius: var(--r-sm) !important;
}

.xoo-wsc-img-col img,
.xoo-wsc-img-col a img {
  object-fit: contain !important;
  background: var(--mint);
  border-radius: var(--r-sm);
}

.xoo-wsc-pname a,
.xoo-wsc-pname {
  font-family: var(--font-body);
  font-weight: 700;
  color: var(--ink) !important;
}

.xoo-wsc-pprice,
.xoo-wsc-ptotal {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--ink) !important;
}

.xoo-wsc-chng,
.xoo-wsc-qtybox button {
  border-radius: 50% !important;
}

.xoo-wsc-sp-header,
.xoo-wsc-sp-slider h4,
.xoo-wsc-sp-title {
  font-family: var(--font-display);
  color: var(--ink);
}

/* Side cart — preporučeni proizvodi (+ DODAJ u istom redu kao cijena) */
.xoo-wsc-sp-container {
  padding: 8px 0 !important;
}

.xoo-wsc-sp-product {
  padding: 0 8px !important;
}

.xoo-wsc-sp-wide .xoo-wsc-sp-left-col,
.xoo-wsc-sp-narrow .xoo-wsc-sp-left-col {
  flex: 0 0 68px;
  max-width: 68px;
}

.xoo-wsc-sp-right-col {
  padding-left: 10px !important;
  min-width: 0;
}

.xoo-wsc-sp-title {
  font-size: .92rem !important;
  line-height: 1.25;
  margin: 0 0 4px;
}

.xoo-wsc-sp-wide .xoo-wsc-sp-rc-bottom,
.xoo-wsc-sp-narrow .xoo-wsc-sp-rc-bottom {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  width: 100%;
}

.xoo-wsc-sp-price {
  flex: 1 1 auto !important;
  min-width: 0;
  max-width: calc(100% - 96px);
  font-size: .88rem !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
  color: var(--ink) !important;
  white-space: nowrap !important;
  overflow: hidden;
  text-overflow: ellipsis;
}

.xoo-wsc-sp-price .panaceo-sp-from,
.xoo-wsc-sp-price .from,
.xoo-wsc-sp-price .woocommerce-Price-amount,
.xoo-wsc-sp-price .amount {
  display: inline !important;
  color: inherit !important;
  white-space: nowrap !important;
}

.xoo-wsc-sp-price .from {
  font-weight: 650;
  margin-right: 3px;
  opacity: .85;
  text-transform: none;
}

.xoo-wsc-sp-price .price,
.xoo-wsc-sp-price del,
.xoo-wsc-sp-price ins {
  display: inline !important;
}

.xoo-wsc-sp-price .screen-reader-text,
.xoo-wsc-sp-atc .screen-reader-text,
.xoo-wsc-sp-product .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.xoo-wsc-sp-atc {
  flex: 0 0 auto !important;
  margin-left: 0 !important;
  max-width: 42%;
}

.xoo-wsc-sp-atc a.button,
span.xoo-wsc-sp-atc a.button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 4px;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 7px 12px !important;
  font-size: 12px !important;
  line-height: 1.2;
  border-radius: 999px !important;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.panaceo-wsc-pay-strip {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-top: 14px;
  padding: 0 16px;
}

.panaceo-wsc-pay-strip img {
  height: 20px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 2px 6px;
}

.panaceo-wsc-secure-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: .72rem;
  color: var(--ink-soft);
  margin: 10px 16px 0;
  text-align: center;
}

/* Plutajuća košarica plugina — skrivena (koristimo header gumb) */
.xoo-wsc-basket,
.xoo-wsc-sc-cont {
  display: none !important;
}

/* ============================================================
   ZAJEDNIČKO — gumbi, polja, linkovi (panaceo.css resetira button)
   ============================================================ */
.woocommerce-cart .button,
.woocommerce-checkout .button,
.woocommerce-account .button,
.woocommerce-page .button,
.woocommerce-cart button[type="submit"],
.woocommerce-checkout button[type="submit"],
.woocommerce-account button[type="submit"],
.woocommerce-cart input.button,
.woocommerce-checkout input.button,
.woocommerce-account input.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 22px;
  border-radius: 999px;
  border: 2px solid var(--pine);
  background: var(--pine);
  color: #fff !important;
  font-family: var(--font-body);
  font-weight: 750;
  font-size: .9rem;
  line-height: 1.2;
  text-decoration: none !important;
  cursor: pointer;
  transition: all .3s var(--ease);
}

.woocommerce-cart .button:hover,
.woocommerce-checkout .button:hover,
.woocommerce-cart button[type="submit"]:hover,
.woocommerce-checkout button[type="submit"]:hover {
  background: var(--pine-deep);
  border-color: var(--pine-deep);
  color: #fff !important;
}

.woocommerce-cart .button.alt,
.woocommerce-checkout .button.alt,
.woocommerce-cart .checkout-button {
  background: var(--pine);
  border-color: var(--pine);
}

.woocommerce-cart a.showcoupon,
.woocommerce-checkout a.showcoupon,
.woocommerce-cart .shipping-calculator-button,
.woocommerce-checkout .shipping-calculator-button,
.woocommerce-cart button.shipping-calculator-button {
  display: inline;
  color: var(--pine);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  font-family: var(--font-body);
  font-size: inherit;
}

.woocommerce-cart a.showcoupon:hover,
.woocommerce-checkout a.showcoupon:hover,
.woocommerce-cart .shipping-calculator-button:hover {
  color: var(--pine-deep);
}

.panaceo-wc-section .input-text,
.panaceo-account-wrap .input-text,
.panaceo-wc-section input[type="text"],
.panaceo-account-wrap input[type="text"],
.panaceo-wc-section input[type="email"],
.panaceo-account-wrap input[type="email"],
.panaceo-wc-section input[type="tel"],
.panaceo-account-wrap input[type="tel"],
.panaceo-wc-section input[type="number"],
.panaceo-account-wrap input[type="number"],
.panaceo-wc-section input[type="password"],
.panaceo-account-wrap input[type="password"],
.panaceo-wc-section textarea,
.panaceo-account-wrap textarea,
.panaceo-wc-section select,
.panaceo-account-wrap select,
.panaceo-wc-section .select2-container .select2-selection--single,
.panaceo-account-wrap .select2-container .select2-selection--single {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--line) !important;
  border-radius: var(--r-sm) !important;
  padding: 12px 14px !important;
  font-family: var(--font-body) !important;
  font-size: .95rem;
  background: var(--paper) !important;
  color: var(--ink);
  min-height: 46px;
}

/* Checkbox / radio — ne nasljeđuju stil tekstualnih polja */
.panaceo-wc-section input[type="checkbox"],
.panaceo-wc-section input[type="radio"],
.panaceo-account-wrap input[type="checkbox"],
.panaceo-account-wrap input[type="radio"] {
  width: 18px !important;
  height: 18px !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  flex-shrink: 0;
  accent-color: var(--pine);
  cursor: pointer;
  border-radius: 4px;
}

.panaceo-wc-section textarea {
  min-height: 110px;
  resize: vertical;
}

.panaceo-wc-section label,
.panaceo-account-wrap label {
  display: block;
  margin-bottom: 6px;
  font-weight: 650;
  font-size: .88rem;
  color: var(--ink);
}

.panaceo-wc-section #shipping_method label,
.panaceo-wc-section .woocommerce-shipping-methods label,
.panaceo-wc-section #payment .payment_methods label {
  display: inline;
  margin-bottom: 0;
  font-weight: 500;
}

.panaceo-wc-section .form-row,
.panaceo-account-wrap .form-row {
  margin-bottom: 16px;
}

/* Reset WC float layouta — label iznad polja (košarica + naplata + račun) */
.panaceo-wc-section .form-row,
.panaceo-account-wrap .form-row,
.woocommerce-cart .shipping-calculator-form .form-row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  float: none !important;
  width: 100% !important;
  clear: both !important;
}

.panaceo-wc-section .form-row label,
.panaceo-account-wrap .form-row label,
.panaceo-wc-section .woocommerce-input-wrapper,
.woocommerce-cart .shipping-calculator-form label,
.woocommerce-cart .shipping-calculator-form .woocommerce-input-wrapper {
  float: none !important;
  width: 100% !important;
}

.panaceo-wc-section .select2-container {
  width: 100% !important;
  max-width: 100%;
}

.panaceo-wc-section .select2-container .select2-selection--single {
  height: auto !important;
  min-height: 46px;
}

.panaceo-wc-section .select2-container .select2-selection__rendered {
  line-height: 1.4 !important;
  padding: 10px 14px !important;
}

.panaceo-wc-section .select2-container .select2-selection__arrow {
  height: 100% !important;
}

/* ============================================================
   STRANICA KOŠARICE (/kosarica/)
   ============================================================ */
.woocommerce-cart .woocommerce {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 36px;
  align-items: start;
  margin-top: 8px;
}

.woocommerce-cart .woocommerce-notices-wrapper {
  display: block;
  grid-column: 1 / -1;
  margin-bottom: 8px;
}

.woocommerce-cart form.woocommerce-cart-form {
  grid-column: 1;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: 20px 28px 32px;
}

.woocommerce-cart form.woocommerce-cart-form table.shop_table {
  border: 0;
  width: 100%;
  border-collapse: collapse;
}

.woocommerce-cart form.woocommerce-cart-form table.shop_table thead {
  display: none;
}

.woocommerce-cart form.woocommerce-cart-form tr.cart_item {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid var(--line);
}

.woocommerce-cart form.woocommerce-cart-form tr.cart_item td {
  border: 0;
  padding: 0;
}

.woocommerce-cart form.woocommerce-cart-form tr.actions {
  display: block;
  width: 100%;
}

.woocommerce-cart form.woocommerce-cart-form tr.actions td.actions {
  display: block !important;
  width: 100%;
  box-sizing: border-box;
  padding: 28px 0 16px !important;
  border-top: 1px solid var(--line);
  margin-top: 8px;
}

.woocommerce-cart .coupon {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  width: 100%;
  margin: 0 !important;
}

.woocommerce-cart .coupon .button,
.woocommerce-cart tr.actions .button {
  flex: 0 0 auto;
}

.woocommerce-cart form.woocommerce-cart-form td.actions button[name="update_cart"],
.woocommerce-cart form.woocommerce-cart-form td.actions .button[name="update_cart"],
.woocommerce-cart form.woocommerce-cart-form td.actions input.button[name="update_cart"] {
  display: inline-flex !important;
  margin-top: 36px !important;
}

.woocommerce-cart .coupon .input-text {
  flex: 1 1 200px;
  min-width: 0;
}

.woocommerce-cart .cart-collaterals {
  grid-column: 2;
  width: 100% !important;
}

.woocommerce-cart .cart_totals {
  background: var(--surface);
  border-radius: var(--r-lg);
  padding: 22px 20px;
  box-shadow: var(--shadow);
  position: sticky;
  top: calc(var(--chrome-h) + 24px);
}

.panaceo-free-shipping-notice {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 14px 16px;
  margin-bottom: 16px;
  background: var(--mint);
  border: 1px solid rgba(15, 43, 37, .08);
  border-radius: var(--r-md);
}

.panaceo-fsn-icon {
  flex: none;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--surface);
  color: var(--pine);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(15, 43, 37, .06);
}

.panaceo-fsn-body {
  flex: 1;
  min-width: 0;
}

.panaceo-fsn-body p {
  margin: 0 0 10px;
  font-size: .88rem;
  line-height: 1.5;
  color: var(--ink);
}

.panaceo-fsn-body strong {
  color: var(--pine);
  font-weight: 800;
}

.panaceo-fsn-link {
  display: inline-block;
  margin-top: 10px;
  font-size: .82rem;
  font-weight: 700;
  color: var(--pine);
  text-decoration: none;
}

.panaceo-fsn-link:hover {
  color: var(--pine-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.panaceo-free-shipping-notice--compact {
  margin: 0 0 14px;
  padding: 12px 14px;
}

.panaceo-free-shipping-notice--compact .panaceo-fsn-icon {
  width: 32px;
  height: 32px;
}

.panaceo-free-shipping-notice--compact .panaceo-fsn-body p {
  font-size: .82rem;
  margin-bottom: 8px;
}

.xoo-wsc-footer .panaceo-free-shipping-notice--compact {
  margin: 0 16px 14px;
}

.xoo-wsc-footer {
  padding-top: 14px !important;
}

.xoo-wsc-ft-totals {
  padding: 8px 16px 4px !important;
}

.xoo-wsc-ft-buttons-cont {
  padding-top: 12px !important;
}

.woocommerce-cart .cart_totals h2 {
  font-family: var(--font-display);
  font-size: 1.4rem;
  margin-bottom: 20px;
}

.woocommerce-cart .cart_totals table.shop_table {
  width: 100%;
  border-collapse: collapse;
}

.woocommerce-cart .cart_totals table.shop_table tr {
  display: table-row;
}

.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td {
  display: table-cell;
  vertical-align: top;
  border: 0;
  padding: 9px 0;
  font-size: .92rem;
  color: var(--ink-soft);
}

.woocommerce-cart .cart_totals table.shop_table th {
  font-weight: 650;
  color: var(--ink);
  padding-right: 10px;
  width: 34%;
}

.woocommerce-cart .cart_totals .woocommerce-shipping-totals td {
  text-align: left;
}

.woocommerce-cart #shipping_method,
.woocommerce-cart ul.woocommerce-shipping-methods {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-cart #shipping_method li,
.woocommerce-cart ul.woocommerce-shipping-methods li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 7px;
  padding: 0;
  line-height: 1.35;
}

.woocommerce-cart #shipping_method li:last-child,
.woocommerce-cart ul.woocommerce-shipping-methods li:last-child {
  margin-bottom: 0;
}

.woocommerce-cart #shipping_method li input[type="radio"],
.woocommerce-cart ul.woocommerce-shipping-methods li input[type="radio"] {
  flex: none;
  margin: 2px 6px 0 0;
  padding: 0;
}

.woocommerce-cart #shipping_method li label,
.woocommerce-cart ul.woocommerce-shipping-methods li label {
  display: inline;
  margin: 0;
  padding: 0;
  font-size: .84rem;
  line-height: 1.35;
  color: var(--ink-soft);
  cursor: pointer;
  white-space: nowrap;
}

.woocommerce-cart .woocommerce-shipping-destination {
  margin: 8px 0 0;
  font-size: .9rem;
  line-height: 1.5;
}

.woocommerce-cart .shipping-calculator-form {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.woocommerce-cart .shipping-calculator-form .form-row {
  margin-bottom: 12px;
}

.woocommerce-cart .shipping-calculator-form .button {
  margin-top: 4px;
}

.woocommerce-cart .product-thumbnail {
  flex: none;
  width: 74px;
}

.woocommerce-cart .product-thumbnail img {
  width: 74px;
  height: 74px;
  object-fit: contain;
  background: var(--mint);
  border-radius: var(--r-sm);
}

.woocommerce-cart .product-name {
  flex: 1;
  min-width: 0;
  font-weight: 700;
}

/* Varijacije: Oblik: Prah / Količina: 400 g — 2 reda, ne 4 */
.woocommerce-cart .product-name dl.variation,
.woocommerce-checkout .product-name dl.variation,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-name dl.variation {
  margin: 6px 0 0;
  font-size: .82rem;
  font-weight: 400;
  line-height: 1.45;
  color: var(--ink-soft);
}

.woocommerce-cart .product-name dl.variation dt,
.woocommerce-cart .product-name dl.variation dd,
.woocommerce-checkout .product-name dl.variation dt,
.woocommerce-checkout .product-name dl.variation dd,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-name dl.variation dt,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-name dl.variation dd {
  display: inline !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-weight: 500;
}

.woocommerce-cart .product-name dl.variation dt,
.woocommerce-checkout .product-name dl.variation dt,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-name dl.variation dt {
  color: var(--ink);
  font-weight: 650;
}

.woocommerce-cart .product-name dl.variation dd p,
.woocommerce-checkout .product-name dl.variation dd p,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-name dl.variation dd p {
  display: inline !important;
  margin: 0 !important;
}

.woocommerce-cart .product-name dl.variation dd::after,
.woocommerce-checkout .product-name dl.variation dd::after,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-name dl.variation dd::after {
  content: "";
  display: block;
}

.xoo-wsc-markup .xoo-wsc-product dl.variation dt,
.xoo-wsc-markup .xoo-wsc-product dl.variation dd {
  display: inline !important;
  margin: 0 !important;
}

.xoo-wsc-markup .xoo-wsc-product dl.variation dd p {
  display: inline;
  margin: 0;
}

.xoo-wsc-markup .xoo-wsc-product dl.variation dd::after {
  content: "";
  display: block;
}

.woocommerce-cart td.product-quantity {
  flex: 0 0 auto;
  width: auto !important;
}

.woocommerce-cart .product-quantity .qty,
.woocommerce-cart .product-quantity input.qty {
  width: 3.2em !important;
  min-width: 48px !important;
  max-width: 56px !important;
  min-height: 0 !important;
  padding: 6px 4px !important;
  text-align: center;
  box-sizing: border-box;
}

.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal {
  font-family: var(--font-display);
  font-weight: 700;
}

.woocommerce-cart .product-quantity .qty {
  border-radius: 999px;
  border: 1px solid var(--line);
  font-family: var(--font-body);
}

.woocommerce-cart .product-remove a {
  color: var(--ink-soft);
  font-size: 1.4rem;
}

.woocommerce-cart .product-remove a:hover {
  color: var(--red);
}

.woocommerce-cart .cart_totals table {
  width: 100%;
}

.woocommerce-cart .cart_totals tr.cart-subtotal td {
  text-align: right;
  white-space: nowrap;
}

.woocommerce-cart .order-total th,
.woocommerce-cart .order-total td {
  border-top: 1.5px solid var(--line);
  padding-top: 18px;
  color: var(--ink);
  font-weight: 800;
  font-size: 1rem;
}

.woocommerce-cart .order-total td {
  text-align: right;
  white-space: normal;
}

.woocommerce-cart .order-total td .includes_tax,
.woocommerce-cart .order-total td small {
  display: block;
  margin-top: 5px;
  font-size: .74rem;
  font-weight: 500;
  color: var(--ink-soft);
  line-height: 1.35;
}

.woocommerce-cart .order-total .woocommerce-Price-amount {
  font-family: var(--font-display);
  font-size: 1.6rem;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin-top: 20px;
  padding: 14px 24px;
  border-radius: 999px;
  background: var(--pine);
  color: #fff !important;
  font-weight: 750;
  border: 2px solid var(--pine);
  transition: all .3s var(--ease);
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background: var(--pine-deep);
  border-color: var(--pine-deep);
}

.woocommerce-cart .cross-sells {
  grid-column: 1 / -1;
  margin-top: 24px;
}

/* ============================================================
   CHECKOUT (/blagajna/)
   ============================================================ */
.panaceo-checkout-wrap .woocommerce > .woocommerce-form-coupon-toggle,
.panaceo-checkout-wrap .woocommerce > .checkout_coupon {
  margin-bottom: 20px;
}

.panaceo-checkout-wrap .woocommerce-form-coupon-toggle .woocommerce-info {
  margin: 0;
  padding: 18px 22px;
  line-height: 1.55;
}

.panaceo-checkout-wrap .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon {
  margin-left: 4px;
}

.panaceo-checkout-wrap .checkout_coupon {
  margin-top: 12px;
  padding: 20px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
}

.panaceo-checkout-wrap .checkout_coupon .form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 0;
}

.panaceo-checkout-wrap .checkout_coupon .input-text {
  flex: 1 1 200px;
}

.panaceo-checkout-wrap .woocommerce-checkout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr);
  gap: 36px;
  align-items: start;
}

.panaceo-checkout-wrap #customer_details {
  grid-column: 1;
  grid-row: 1;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r-lg);
  padding: 28px;
}

.panaceo-checkout-wrap .panaceo-checkout-sidebar {
  grid-column: 2;
  grid-row: 1;
  align-self: start;
  position: sticky;
  top: calc(var(--chrome-h) + 24px);
}

.panaceo-checkout-wrap #order_review_heading {
  font-family: var(--font-display);
  font-size: 1.4rem;
  margin: 0 0 16px;
}

.panaceo-checkout-wrap #order_review {
  background: var(--surface);
  border-radius: var(--r-lg);
  padding: 28px;
  box-shadow: var(--shadow);
}

.panaceo-checkout-wrap .col2-set {
  width: 100%;
  display: block;
}

.panaceo-checkout-wrap .col2-set::before,
.panaceo-checkout-wrap .col2-set::after {
  display: none;
}

.panaceo-checkout-wrap .col2-set .col-1,
.panaceo-checkout-wrap .col2-set .col-2 {
  float: none;
  width: 100%;
  margin: 0 0 24px;
  padding: 0;
}

.panaceo-checkout-wrap .col2-set .col-2:last-child {
  margin-bottom: 0;
}

.panaceo-checkout-wrap .woocommerce-billing-fields h3,
.panaceo-checkout-wrap .woocommerce-shipping-fields h3,
.panaceo-checkout-wrap .woocommerce-additional-fields h3 {
  font-family: var(--font-display);
  font-size: 1.15rem;
  margin: 0 0 18px;
}

.panaceo-checkout-wrap .woocommerce-billing-fields__field-wrapper,
.panaceo-checkout-wrap .woocommerce-shipping-fields__field-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 16px;
}

.panaceo-checkout-wrap .form-row-wide,
.panaceo-checkout-wrap .form-row.place-order {
  grid-column: 1 / -1;
}

.panaceo-checkout-wrap .form-row label {
  font-weight: 650;
  font-size: .88rem;
  color: var(--ink);
}

.panaceo-checkout-wrap input.input-text,
.panaceo-checkout-wrap textarea,
.panaceo-checkout-wrap select,
.panaceo-checkout-wrap .select2-container .select2-selection {
  border: 1px solid var(--line) !important;
  border-radius: var(--r-sm) !important;
  padding: 12px 14px !important;
  font-family: var(--font-body) !important;
  background: var(--paper) !important;
  width: 100%;
  box-sizing: border-box;
}

.panaceo-checkout-wrap textarea {
  min-height: 100px;
  resize: vertical;
}

.panaceo-checkout-wrap #place_order {
  width: 100% !important;
  max-width: 100%;
  padding: 13px 22px !important;
  font-size: .95rem !important;
  line-height: 1.25 !important;
  min-height: 0 !important;
  height: auto !important;
  border-radius: 999px;
  background: var(--pine) !important;
  color: #fff !important;
  font-weight: 750;
  border: 2px solid var(--pine) !important;
  transition: all .3s var(--ease);
  float: none !important;
}

.panaceo-checkout-wrap #place_order:disabled,
.panaceo-checkout-wrap #place_order[disabled] {
  background: #b8c2bf !important;
  border-color: #b8c2bf !important;
  color: #f4f6f5 !important;
  opacity: 1;
  cursor: not-allowed;
}

.panaceo-checkout-wrap #place_order:hover {
  background: var(--pine-deep) !important;
  border-color: var(--pine-deep) !important;
}

.panaceo-checkout-wrap #place_order:disabled:hover,
.panaceo-checkout-wrap #place_order[disabled]:hover {
  background: #b8c2bf !important;
  border-color: #b8c2bf !important;
}

/* Sažetak narudžbe — tablica */
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  margin-bottom: 8px;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table thead th {
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--ink-soft);
  padding: 0 0 12px;
  border-bottom: 1.5px solid var(--line);
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table thead th:first-child {
  text-align: left;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table thead th:last-child {
  text-align: right;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table tr {
  display: table-row !important;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table th,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table td {
  display: table-cell !important;
  vertical-align: top;
  border-color: var(--line);
  padding: 12px 0;
  font-size: .92rem;
  line-height: 1.45;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-name {
  width: 68%;
  padding-right: 14px;
  font-weight: 650;
  color: var(--ink);
  word-break: normal;
  text-align: left;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-total {
  width: 32%;
  text-align: right;
  white-space: nowrap;
  font-family: var(--font-display);
  font-weight: 700;
  vertical-align: top;
  padding-top: 14px;
}

.panaceo-checkout-wrap .panaceo-checkout-line {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.panaceo-checkout-wrap .panaceo-checkout-thumb,
.panaceo-checkout-wrap .product-name img.panaceo-checkout-thumb {
  width: 52px !important;
  height: 52px !important;
  max-width: 52px !important;
  object-fit: contain;
  border-radius: 8px;
  background: #fff;
  border: 1px solid var(--line);
  flex: 0 0 52px;
  display: block;
}

.panaceo-checkout-wrap .panaceo-checkout-line-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.panaceo-checkout-wrap .panaceo-checkout-line-title {
  display: block;
  font-weight: 650;
  line-height: 1.35;
  color: var(--ink);
}

.panaceo-checkout-wrap .panaceo-checkout-qty {
  display: block;
  font-size: .82rem;
  font-weight: 500;
  color: var(--ink-soft);
}

/* Oblik/količina su u naslovu — sakrij WC dl.variation u sažetku */
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .product-name dl.variation {
  display: none !important;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .cart-subtotal td,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td {
  width: 68%;
  text-align: right;
  font-family: var(--font-display);
  font-weight: 700;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .cart-subtotal th,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals th,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total th {
  width: 32%;
  padding-right: 12px;
  text-align: left;
  font-weight: 650;
  color: var(--ink);
  white-space: nowrap;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .cart-subtotal td,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total td {
  width: 68%;
  text-align: right;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals th,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td {
  color: var(--ink-soft);
}

/* Dostava: label iznad, metode pune širine — svaka u jednom redu */
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals th,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td {
  display: block !important;
  width: 100% !important;
  text-align: left !important;
  padding-right: 0;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals th {
  padding-bottom: 8px;
  white-space: nowrap;
  font-weight: 650;
  color: var(--ink);
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td {
  vertical-align: top;
  font-family: var(--font-body);
  font-weight: 500;
}

.panaceo-checkout-wrap #shipping_method,
.panaceo-checkout-wrap ul.woocommerce-shipping-methods {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.panaceo-checkout-wrap #shipping_method li,
.panaceo-checkout-wrap ul.woocommerce-shipping-methods li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  margin: 0 0 10px;
  padding: 0;
  line-height: 1.35;
  width: 100%;
}

.panaceo-checkout-wrap #shipping_method li:last-child,
.panaceo-checkout-wrap ul.woocommerce-shipping-methods li:last-child {
  margin-bottom: 0;
}

.panaceo-checkout-wrap #shipping_method li input[type="radio"],
.panaceo-checkout-wrap ul.woocommerce-shipping-methods li input[type="radio"] {
  flex: 0 0 auto;
  width: auto;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.panaceo-checkout-wrap #shipping_method li label,
.panaceo-checkout-wrap ul.woocommerce-shipping-methods li label {
  flex: 1 1 auto;
  text-align: left;
  font-size: .88rem;
  line-height: 1.35;
  color: var(--ink-soft);
  cursor: pointer;
  white-space: nowrap;
}

@media (max-width: 480px) {
  .panaceo-checkout-wrap #shipping_method li label,
  .panaceo-checkout-wrap ul.woocommerce-shipping-methods li label {
    white-space: normal;
  }
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table.shop_table_responsive thead {
  display: table-header-group !important;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table.shop_table_responsive tr {
  display: table-row !important;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table.shop_table_responsive th,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table.shop_table_responsive td {
  display: table-cell !important;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table.shop_table_responsive td::before {
  display: none !important;
  content: none !important;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total th,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total td {
  border-top: 1.5px solid var(--line);
  padding-top: 16px;
  font-size: 1rem;
  font-weight: 800;
  color: var(--ink);
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total th {
  text-align: left;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total td {
  text-align: right;
  white-space: normal;
  font-family: var(--font-body);
  font-weight: 800;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total td .includes_tax,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total td small {
  display: block;
  margin-top: 5px;
  font-size: .74rem;
  font-weight: 500;
  font-family: var(--font-body);
  color: var(--ink-soft);
  line-height: 1.35;
}

.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total .woocommerce-Price-amount {
  font-family: var(--font-display);
  font-size: 1.35rem;
}

/* Plaćanje — bez float layouta, gumb ispod teksta */
.panaceo-checkout-wrap #payment {
  background: transparent;
  margin-top: 20px;
}

.panaceo-checkout-wrap #payment .payment_methods {
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
}

.panaceo-checkout-wrap #payment .payment_methods li {
  list-style: none;
}

.panaceo-checkout-wrap #payment .payment_methods .woocommerce-info {
  margin: 0;
}

.panaceo-checkout-wrap #payment .form-row.place-order {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 14px;
  margin: 0;
  padding: 0;
  float: none !important;
  clear: both;
}

.panaceo-checkout-wrap #payment .woocommerce-terms-and-conditions-wrapper,
.panaceo-checkout-wrap #payment .woocommerce-privacy-policy-text,
.panaceo-checkout-wrap #payment .wc-terms-and-conditions,
.panaceo-checkout-wrap #payment .terms {
  float: none !important;
  width: 100% !important;
  max-width: 100%;
  padding: 0 !important;
  margin: 0;
  text-align: left;
}

/* Checkbox odredbi — veći hit target; link otvara stranicu, ne panel. */
.panaceo-checkout-wrap #payment .woocommerce-terms-and-conditions {
  display: none !important;
}

.panaceo-checkout-wrap #payment .woocommerce-form__label-for-checkbox {
  display: flex !important;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  padding: 10px 0;
  cursor: pointer;
  line-height: 1.45;
}

.panaceo-checkout-wrap #payment .woocommerce-form__label-for-checkbox input#terms,
.panaceo-checkout-wrap #payment .woocommerce-form__label-for-checkbox input[name="terms"] {
  width: 22px !important;
  height: 22px !important;
  min-width: 22px;
  margin: 2px 0 0 !important;
  flex-shrink: 0;
  accent-color: var(--pine);
}

.panaceo-checkout-wrap #payment .woocommerce-terms-and-conditions-checkbox-text {
  flex: 1;
  font-size: .9rem;
  color: var(--ink);
}

.panaceo-checkout-wrap #payment a.woocommerce-terms-and-conditions-link {
  color: var(--pine);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.panaceo-checkout-wrap #payment .woocommerce-privacy-policy-text {
  font-size: .82rem;
  line-height: 1.55;
  color: var(--ink-soft);
}

/* Checkout mapa — ne smije prelaziti topbar/header (Leaflet default z-index 400–700). */
.panaceo-checkout-wrap #oe-map-wrap,
.panaceo-checkout-wrap #overseas-express-map,
.woocommerce-checkout #oe-map-wrap {
  position: relative;
  z-index: 1;
  isolation: isolate;
}

.panaceo-checkout-wrap .leaflet-container {
  z-index: 1;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  border-color: var(--line);
  padding: 10px 0;
}

/* ============================================================
   MOJ RAČUN (My Account)
   ============================================================ */
main:has(.panaceo-account-section) .page-hero {
  padding-bottom: clamp(16px, 2.5vw, 28px) !important;
}

.panaceo-account-section {
  padding-top: clamp(20px, 3vw, 36px);
  padding-bottom: 100px;
}

.panaceo-account-wrap {
  padding-top: 4px;
}

.panaceo-account-wrap .woocommerce {
  max-width: none;
}

.panaceo-account-wrap .woocommerce:has(.woocommerce-MyAccount-navigation) {
  display: grid;
  grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
  gap: clamp(24px, 3.5vw, 40px);
  align-items: start;
}

.panaceo-account-wrap .woocommerce-MyAccount-navigation {
  background: var(--surface);
  border-radius: var(--r-lg);
  padding: 16px;
  box-shadow: var(--shadow);
  position: sticky;
  top: calc(var(--chrome-h) + 24px);
}

.panaceo-account-wrap .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.panaceo-account-wrap .woocommerce-MyAccount-navigation li {
  margin: 0 0 6px;
}

.panaceo-account-wrap .woocommerce-MyAccount-navigation li:last-child {
  margin-bottom: 0;
}

.panaceo-account-wrap .woocommerce-MyAccount-navigation a {
  display: block;
  padding: 11px 14px;
  border-radius: var(--r-sm);
  color: var(--ink-soft);
  font-weight: 650;
  font-size: .9rem;
  text-decoration: none;
  transition: background .2s var(--ease), color .2s var(--ease);
}

.panaceo-account-wrap .woocommerce-MyAccount-navigation a:hover {
  background: var(--mint);
  color: var(--pine);
}

.panaceo-account-wrap .woocommerce-MyAccount-navigation-link.is-active a {
  background: var(--pine);
  color: #fff;
}

.panaceo-account-wrap .woocommerce-MyAccount-content {
  background: var(--surface);
  border-radius: var(--r-lg);
  padding: clamp(24px, 3vw, 36px) clamp(22px, 2.5vw, 32px);
  box-shadow: var(--shadow);
  min-width: 0;
}

.panaceo-account-wrap .woocommerce-MyAccount-content > p:first-child {
  margin-top: 0;
}

.panaceo-account-wrap .woocommerce-MyAccount-content h2,
.panaceo-account-wrap .woocommerce-MyAccount-content h3 {
  font-family: var(--font-display);
  font-size: 1.25rem;
  color: var(--ink);
  margin: 28px 0 16px;
}

.panaceo-account-wrap .woocommerce-MyAccount-content h2:first-child,
.panaceo-account-wrap .woocommerce-MyAccount-content h3:first-child {
  margin-top: 0;
}

.panaceo-account-wrap .woocommerce-MyAccount-content p,
.panaceo-account-wrap .woocommerce-MyAccount-content address {
  line-height: 1.6;
  color: var(--ink-soft);
}

.panaceo-account-wrap .woocommerce-MyAccount-content a {
  color: var(--pine);
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.panaceo-account-wrap .woocommerce-MyAccount-content a:hover {
  color: var(--pine-deep);
}

.panaceo-account-wrap mark.order-number,
.panaceo-account-wrap mark.order-date,
.panaceo-account-wrap mark.order-status {
  background: var(--mint);
  color: var(--pine);
  padding: 2px 10px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .92em;
}

.panaceo-account-wrap table.shop_table,
.panaceo-account-wrap .woocommerce-table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 20px;
  font-size: .9rem;
}

.panaceo-account-wrap table.shop_table thead th,
.panaceo-account-wrap .woocommerce-table thead th {
  padding: 12px 14px;
  text-align: left;
  font-weight: 750;
  font-size: .78rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--ink-soft);
  border-bottom: 1.5px solid var(--line);
  white-space: nowrap;
}

.panaceo-account-wrap table.shop_table tbody th,
.panaceo-account-wrap table.shop_table tbody td,
.panaceo-account-wrap .woocommerce-table tbody th,
.panaceo-account-wrap .woocommerce-table tbody td {
  padding: 14px;
  vertical-align: middle;
  border-bottom: 1px solid var(--line);
  color: var(--ink);
}

.panaceo-account-wrap table.shop_table tbody tr:last-child th,
.panaceo-account-wrap table.shop_table tbody tr:last-child td,
.panaceo-account-wrap .woocommerce-table tbody tr:last-child th,
.panaceo-account-wrap .woocommerce-table tbody tr:last-child td {
  border-bottom: 0;
}

.panaceo-account-wrap .woocommerce-orders-table__cell-order-number a {
  font-weight: 800;
  color: var(--pine);
  text-decoration: none;
}

.panaceo-account-wrap .woocommerce-orders-table__cell-order-number a:hover {
  text-decoration: underline;
}

.panaceo-account-wrap .woocommerce-orders-table__cell-order-total {
  white-space: nowrap;
}

.panaceo-account-wrap .woocommerce-orders-table__cell-order-status {
  font-weight: 650;
}

.panaceo-account-wrap .woocommerce-orders-table__row--status-completed .woocommerce-orders-table__cell-order-status {
  color: var(--pine);
}

.panaceo-account-wrap .woocommerce-orders-table__row--status-processing .woocommerce-orders-table__cell-order-status,
.panaceo-account-wrap .woocommerce-orders-table__row--status-on-hold .woocommerce-orders-table__cell-order-status {
  color: #b8860b;
}

.panaceo-account-wrap .woocommerce-orders-table__row--status-cancelled .woocommerce-orders-table__cell-order-status,
.panaceo-account-wrap .woocommerce-orders-table__row--status-failed .woocommerce-orders-table__cell-order-status,
.panaceo-account-wrap .woocommerce-orders-table__row--status-refunded .woocommerce-orders-table__cell-order-status {
  color: var(--red, #c0392b);
}

.panaceo-account-wrap .woocommerce-orders-table__cell-order-actions {
  text-align: right;
  white-space: nowrap;
}

.panaceo-account-wrap .woocommerce-orders-table__cell-order-actions .button {
  padding: 8px 18px;
  font-size: .82rem;
  background: transparent;
  color: var(--pine) !important;
  border: 2px solid var(--pine);
}

.panaceo-account-wrap .woocommerce-orders-table__cell-order-actions .button:hover {
  background: var(--pine);
  color: #fff !important;
}

.panaceo-account-wrap .order_details tfoot th {
  text-align: right;
  font-weight: 650;
  color: var(--ink-soft);
  border-bottom: 0;
  padding-right: 16px;
}

.panaceo-account-wrap .order_details tfoot td {
  font-weight: 700;
  border-bottom: 0;
}

.panaceo-account-wrap .order_details tfoot tr:last-child th,
.panaceo-account-wrap .order_details tfoot tr:last-child td {
  padding-top: 16px;
  border-top: 1.5px solid var(--line);
  font-size: 1rem;
  color: var(--ink);
}

.panaceo-account-wrap .order_details .product-total,
.panaceo-account-wrap .woocommerce-table .product-total {
  text-align: right;
  white-space: nowrap;
}

.panaceo-account-wrap .woocommerce-Addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 28px);
  margin-top: 8px;
}

.panaceo-account-wrap .woocommerce-Address {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  padding: 20px;
}

.panaceo-account-wrap .woocommerce-Address-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.panaceo-account-wrap .woocommerce-Address-title h2 {
  margin: 0;
  font-size: 1.05rem;
}

.panaceo-account-wrap .woocommerce-Address-title .edit {
  font-size: .82rem;
  font-weight: 700;
  white-space: nowrap;
}

.panaceo-account-wrap .woocommerce-Address address {
  font-style: normal;
  margin: 0;
  line-height: 1.65;
}

.panaceo-account-wrap .woocommerce .form-row {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  grid-template-columns: unset !important;
  gap: 6px;
  width: 100% !important;
  float: none !important;
  clear: both !important;
  margin-bottom: 16px;
}

.panaceo-account-wrap .woocommerce .form-row label {
  display: block !important;
  width: 100% !important;
  float: none !important;
  margin-bottom: 6px;
  font-weight: 650;
  font-size: .88rem;
  color: var(--ink);
}

.panaceo-account-wrap .woocommerce .form-row .woocommerce-input-wrapper,
.panaceo-account-wrap .woocommerce .form-row input:not([type="checkbox"]):not([type="radio"]),
.panaceo-account-wrap .woocommerce .form-row select,
.panaceo-account-wrap .woocommerce .form-row textarea {
  width: 100% !important;
  float: none !important;
}

.panaceo-account-wrap .woocommerce .form-row input[type="checkbox"],
.panaceo-account-wrap .woocommerce .form-row input[type="radio"] {
  width: 18px !important;
  height: 18px !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  flex-shrink: 0;
  accent-color: var(--pine);
  cursor: pointer;
  border-radius: 4px;
}

.panaceo-account-wrap .woocommerce-EditAccountForm,
.panaceo-account-wrap .woocommerce-address-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 20px;
}

.panaceo-account-wrap .woocommerce-EditAccountForm .form-row-wide,
.panaceo-account-wrap .woocommerce-EditAccountForm fieldset,
.panaceo-account-wrap .woocommerce-EditAccountForm > p,
.panaceo-account-wrap .woocommerce-EditAccountForm > .clear,
.panaceo-account-wrap .woocommerce-address-fields__field-wrapper .form-row-wide,
.panaceo-account-wrap .woocommerce-address-fields__field-wrapper > p {
  grid-column: 1 / -1;
}

.panaceo-account-wrap .woocommerce-form-login .form-row:not(.form-row-wide),
.panaceo-account-wrap .woocommerce-form-register .form-row:not(.form-row-wide) {
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px;
  margin-top: 4px;
  margin-bottom: 18px;
}

.panaceo-account-wrap .woocommerce-form-login .form-row label.woocommerce-form__label-for-checkbox,
.panaceo-account-wrap .woocommerce-form-register .form-row label.woocommerce-form__label-for-checkbox {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  width: auto !important;
  flex: 0 1 auto;
  margin: 0;
  font-weight: 500;
  font-size: .88rem;
  color: var(--ink-soft);
  white-space: nowrap;
  line-height: 1.3;
  cursor: pointer;
}

.panaceo-account-wrap .woocommerce-form-login .form-row label.woocommerce-form__label-for-checkbox span,
.panaceo-account-wrap .woocommerce-form-register .form-row label.woocommerce-form__label-for-checkbox span {
  white-space: nowrap;
}

.panaceo-account-wrap .woocommerce-form-login .woocommerce-form-login__submit,
.panaceo-account-wrap .woocommerce-form-register button[type="submit"] {
  flex: 0 0 auto;
  margin: 0 !important;
  white-space: nowrap;
}

@media (max-width: 520px) {
  .panaceo-account-wrap .woocommerce-form-login .form-row:not(.form-row-wide),
  .panaceo-account-wrap .woocommerce-form-register .form-row:not(.form-row-wide) {
    flex-direction: column !important;
    align-items: stretch;
    gap: 14px;
  }

  .panaceo-account-wrap .woocommerce-form-login .woocommerce-form-login__submit,
  .panaceo-account-wrap .woocommerce-form-register button[type="submit"] {
    width: 100%;
    justify-content: center;
  }
}

.panaceo-account-wrap .woocommerce-EditAccountForm fieldset {
  margin: 24px 0 8px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  background: var(--paper);
}

.panaceo-account-wrap .woocommerce-EditAccountForm fieldset legend {
  padding: 0 8px;
  font-weight: 750;
  color: var(--ink);
}

.panaceo-account-wrap .woocommerce-EditAccountForm em,
.panaceo-account-wrap .woocommerce-EditAccountForm #account_display_name_description {
  display: block;
  margin-top: 6px;
  font-size: .82rem;
  color: var(--ink-soft);
  font-style: normal;
}

.panaceo-account-wrap .woocommerce-form-login,
.panaceo-account-wrap .woocommerce-form-register {
  max-width: 480px;
  margin: 0 auto;
  background: var(--surface);
  border-radius: var(--r-lg);
  padding: 28px 26px;
  box-shadow: var(--shadow);
}

.panaceo-account-wrap .woocommerce-form-login h2,
.panaceo-account-wrap .woocommerce-form-register h2 {
  font-family: var(--font-display);
  margin: 0 0 20px;
}

.panaceo-account-wrap #customer_login.col2-set {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  max-width: 920px;
  margin: 0 auto;
}

.panaceo-account-wrap #customer_login .u-column1,
.panaceo-account-wrap #customer_login .u-column2 {
  background: var(--surface);
  border-radius: var(--r-lg);
  padding: 28px 26px;
  box-shadow: var(--shadow);
}

.panaceo-account-wrap .woocommerce-pagination {
  display: flex;
  gap: 12px;
  margin-top: 8px;
}

.panaceo-account-wrap .woocommerce-OrderUpdates {
  list-style: none;
  margin: 0;
  padding: 0;
}

.panaceo-account-wrap .woocommerce-OrderUpdates .woocommerce-OrderUpdate {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  padding: 16px;
  margin-bottom: 12px;
}

.panaceo-account-wrap .woocommerce-customer-details {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
}

.panaceo-account-wrap .woocommerce-columns--addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.panaceo-account-wrap .woocommerce-column__title {
  font-family: var(--font-display);
  font-size: 1.05rem;
  margin: 0 0 10px;
}

@media (max-width: 900px) {
  .panaceo-account-wrap .woocommerce:has(.woocommerce-MyAccount-navigation) {
    grid-template-columns: 1fr;
  }

  .panaceo-account-wrap .woocommerce-MyAccount-navigation {
    position: static;
  }

  .panaceo-account-wrap .woocommerce-MyAccount-navigation ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .panaceo-account-wrap .woocommerce-MyAccount-navigation li {
    margin: 0;
  }

  .panaceo-account-wrap .woocommerce-Addresses,
  .panaceo-account-wrap .woocommerce-columns--addresses,
  .panaceo-account-wrap #customer_login.col2-set {
    grid-template-columns: 1fr;
  }

  .panaceo-account-wrap .woocommerce-EditAccountForm,
  .panaceo-account-wrap .woocommerce-address-fields__field-wrapper {
    grid-template-columns: 1fr;
  }

  .panaceo-account-wrap .woocommerce-EditAccountForm .form-row-first,
  .panaceo-account-wrap .woocommerce-EditAccountForm .form-row-last,
  .panaceo-account-wrap .woocommerce-address-fields .form-row-first,
  .panaceo-account-wrap .woocommerce-address-fields .form-row-last {
    width: 100%;
    display: block;
    margin-right: 0;
  }

  .panaceo-account-wrap table.shop_table.shop_table_responsive thead {
    display: none;
  }

  .panaceo-account-wrap table.shop_table.shop_table_responsive tr {
    display: block;
    padding: 14px 0;
    border-bottom: 1px solid var(--line);
  }

  .panaceo-account-wrap table.shop_table.shop_table_responsive tr:last-child {
    border-bottom: 0;
  }

  .panaceo-account-wrap table.shop_table.shop_table_responsive th,
  .panaceo-account-wrap table.shop_table.shop_table_responsive td {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 6px 0;
    border: 0;
    text-align: right;
  }

  .panaceo-account-wrap table.shop_table.shop_table_responsive th::before,
  .panaceo-account-wrap table.shop_table.shop_table_responsive td::before {
    content: attr(data-title);
    font-weight: 700;
    color: var(--ink-soft);
    text-align: left;
    flex: 1;
  }

  .panaceo-account-wrap .woocommerce-orders-table__cell-order-actions {
    text-align: right;
    justify-content: flex-end;
  }
}

.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
  border-radius: var(--r-sm);
  border-top: 3px solid var(--pine);
  background: var(--mint);
  color: var(--ink);
  padding: 16px 20px;
  margin: 0 0 16px;
  line-height: 1.55;
}

.panaceo-wc-section .woocommerce-notices-wrapper {
  margin-bottom: 12px;
}

@media (max-width: 900px) {
  .woocommerce-cart .woocommerce,
  .panaceo-checkout-wrap .woocommerce-checkout {
    grid-template-columns: 1fr;
  }

  .panaceo-checkout-wrap #customer_details,
  .panaceo-checkout-wrap .panaceo-checkout-sidebar {
    grid-column: 1;
    grid-row: auto;
  }

  .panaceo-checkout-wrap .panaceo-checkout-sidebar {
    position: static;
  }

  .panaceo-checkout-wrap .woocommerce-billing-fields__field-wrapper,
  .panaceo-checkout-wrap .woocommerce-shipping-fields__field-wrapper {
    grid-template-columns: 1fr;
  }

  .woocommerce-cart .cart_totals,
  .panaceo-checkout-wrap .panaceo-checkout-sidebar {
    position: static;
  }
}

/* Tipografija — čitljiviji WC / Side Cart natpisi */
.xoo-wsc-sp-title {
  font-size: 1rem !important;
}
.xoo-wsc-sp-price {
  font-size: 15px !important;
}
.xoo-wsc-sp-atc a.button,
span.xoo-wsc-sp-atc a.button {
  font-size: 13px !important;
  padding: 8px 14px !important;
}
.panaceo-wsc-secure-note,
.woocommerce-cart .order-total td .includes_tax,
.woocommerce-cart .order-total td small,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total td .includes_tax,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table .order-total td small {
  font-size: 14px;
}
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table thead th,
.panaceo-account-wrap table.shop_table thead th,
.panaceo-account-wrap .woocommerce-table thead th {
  font-size: 13px;
}
.panaceo-account-wrap table.shop_table,
.panaceo-account-wrap .woocommerce-table {
  font-size: 1rem;
}
.woocommerce-cart .cart_totals th,
.woocommerce-cart .cart_totals td,
.woocommerce-cart .shop_table th,
.woocommerce-cart .shop_table td,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table td,
.panaceo-checkout-wrap .woocommerce-checkout-review-order-table th {
  font-size: 1rem;
}
.woocommerce form .form-row label,
.woocommerce-account .woocommerce-MyAccount-navigation a,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
  font-size: 1rem;
}

