/* Cart action placement, definition alignment and account/order presentation. */
.woocommerce-cart table.shop_table.cart tbody td.product-name,
.woocommerce-cart table.shop_table.cart tbody td.product-thumbnail {
  vertical-align: top !important;
}
.woocommerce-cart .fd-cart-item-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  margin-top: 12px;
  max-width: 210px;
}
.woocommerce-cart .fd-cart-item-actions a.w2pshop_update_design,
.woocommerce-cart .fd-cart-item-actions a.w2pshop_pm_options.w2pshop_update_design {
  display: flex !important;
  margin: 0 !important;
  min-height: 42px !important;
  padding: 9px 12px !important;
  white-space: normal !important;
  text-align: center;
  line-height: 1.3 !important;
  background: #fff !important;
  border: 1px solid #c8d9de !important;
  color: #326273 !important;
}
.woocommerce-cart .fd-cart-item-actions a.w2pshop_update_design:hover,
.woocommerce-cart .fd-cart-item-actions a.w2pshop_update_design:focus-visible,
.woocommerce-cart .fd-cart-item-actions a.w2pshop_pm_options.w2pshop_update_design:hover,
.woocommerce-cart .fd-cart-item-actions a.w2pshop_pm_options.w2pshop_update_design:focus-visible {
  background: #eaf3f5 !important;
  color: #326273 !important;
}
.woocommerce-cart .fd-print-your-own a.w2pshop_duplicate_design {
  display: none !important;
}
.woocommerce-cart .product-name dl.variation {
  grid-template-columns: minmax(95px, 38%) minmax(0, 1fr) !important;
  text-align: left;
  align-items: start;
}
.woocommerce-cart .product-name dl.variation dt,
.woocommerce-cart .product-name dl.variation dd {
  float: none !important;
  padding: 0 !important;
  width: auto !important;
  min-width: 0;
  overflow-wrap: anywhere;
  line-height: 1.45;
}
.woocommerce .woocommerce-message a.button.fd-continue-shopping,
.woocommerce .woocommerce-message a.button.fd-continue-shopping:hover,
.woocommerce .woocommerce-message a.button.fd-continue-shopping:focus {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  color: #326273 !important;
  box-shadow: none !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.woocommerce .woocommerce-message a.button.fd-continue-shopping::before,
.woocommerce .woocommerce-message a.button.fd-continue-shopping::after {
  content: none !important;
}
/* WooCommerce's legacy rounded-tab pseudo-elements draw the stray white boxes. */
/* Keep selected product tabs readable in normal, hover and keyboard states. */
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  background: #326273 !important;
  border-color: #326273 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a:hover,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a:focus {
  background: #326273 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a:focus-visible {
  /* Inset the ring so the theme's clipped tab bar cannot cut it off. */
  outline: 2px solid #326273 !important;
  outline-offset: -5px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a:focus-visible {
  outline-color: #ffffff !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce-account .woocommerce-MyAccount-navigation li::before,
.woocommerce-account .woocommerce-MyAccount-navigation li::after,
.woocommerce-account .woocommerce-MyAccount-navigation a::before,
.woocommerce-account .woocommerce-MyAccount-navigation a::after {
  content: none !important;
  display: none !important;
  box-shadow: none !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  background: transparent !important;
  box-shadow: none !important;
}
.woocommerce .woocommerce-table--order-details td.product-name {
  vertical-align: top !important;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.woocommerce .woocommerce-table--order-details .w2pshop_cart_thumbnail {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: min(180px, 100%) !important;
  max-height: 180px !important;
  margin: 10px 0;
  object-fit: contain;
}
.woocommerce .woocommerce-table--order-details .wc-item-meta {
  margin: 12px 0;
  padding: 0;
  list-style: none;
}
.woocommerce .woocommerce-table--order-details .wc-item-meta li {
  margin: 0 0 6px;
  overflow-wrap: anywhere;
}
.woocommerce .woocommerce-table--order-details .wc-item-meta p {
  display: inline;
  margin: 0;
}
.woocommerce .fd-reorder-action { margin: 14px 0 0; }
.woocommerce .fd-reorder-action a { white-space: normal !important; line-height: 1.3 !important; }
@media (max-width: 768px) {
  .woocommerce-cart table.shop_table.cart tr.cart_item td.product-thumbnail {
    display: block !important;
    width: auto !important;
    text-align: left !important;
  }
  .woocommerce-cart table.shop_table.cart td.product-thumbnail::before { display: none !important; }
  .woocommerce-cart .fd-cart-item-actions { max-width: none; flex-direction: row; flex-wrap: wrap; }
  .woocommerce-cart .fd-cart-item-actions a { flex: 1 1 135px; }
}
@media (max-width: 480px) {
  .woocommerce-cart .product-name dl.variation { grid-template-columns: minmax(85px, 40%) minmax(0, 1fr) !important; }
}
/* Do not inherit the older UI stylesheet's light "primary-dark" variable. */
.woocommerce .fd-reorder-action a.fd-reorder-submission {
  background: #ffffff !important;
  color: #326273 !important;
  border-color: #c8d9de !important;
}
.woocommerce .fd-reorder-action a.fd-reorder-submission:hover,
.woocommerce .fd-reorder-action a.fd-reorder-submission:focus-visible {
  background: #eaf3f5 !important;
  color: #326273 !important;
  border-color: #326273 !important;
}
/* Readable text in the cart and order details, independent of older theme tokens. */
.woocommerce-cart table.shop_table.cart thead th,
.woocommerce-cart table.shop_table.cart td.product-name,
.woocommerce-cart table.shop_table.cart td.product-name a,
.woocommerce-cart table.shop_table.cart td.product-name dl.variation dt,
.woocommerce-cart table.shop_table.cart td.product-price,
.woocommerce-cart table.shop_table.cart td.product-subtotal,
.woocommerce-cart .cart_totals h2,
.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td strong,
.woocommerce-cart .cart_totals table.shop_table td .amount,
.woocommerce .woocommerce-table--order-details th,
.woocommerce .woocommerce-table--order-details td.product-name,
.woocommerce .woocommerce-table--order-details td.product-name a,
.woocommerce .woocommerce-table--order-details .wc-item-meta-label,
.woocommerce .woocommerce-table--order-details .amount {
  color: #326273 !important;
}
.woocommerce-cart a.button.wc-backward,
.woocommerce-cart a.button.wc-backward:hover,
.woocommerce-cart a.button.wc-backward:focus-visible {
  background: #ffffff !important;
  color: #326273 !important;
  border-color: #c8d9de !important;
}
/* Keep primary actions distinct, with sufficient contrast for white labels. */
.woocommerce-cart table.shop_table.cart td.actions .button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background: #326273 !important;
  border-color: #326273 !important;
  color: #ffffff !important;
}
.woocommerce-cart table.shop_table.cart td.actions .button *,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button * {
  color: #ffffff !important;
}
.woocommerce-cart table.shop_table.cart td.actions .button:hover,
.woocommerce-cart table.shop_table.cart td.actions .button:focus-visible,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible {
  background: #254956 !important;
  border-color: #254956 !important;
  color: #ffffff !important;
}
/* Remove the vendor float so narrow order-detail cells wrap label/value naturally. */
.woocommerce .woocommerce-table--order-details .wc-item-meta .wc-item-meta-label {
  float: none !important;
  display: inline;
  margin-right: .3em;
}
.woocommerce .woocommerce-table--order-details .wc-item-meta p {
  overflow-wrap: break-word;
  word-break: normal;
}
