/* CARRELLO */
/* Generali */
.pagina-carrello-vuota .disclaimer-cart {
	display: none !Important;
}
.carrello-custom-woocommerce {
	display: flex !Important;
	gap: 30px;
}
@media screen and (min-width: 769px) {
	.container-carrello {
		flex: 0 0 70%;
	}
	.totale-carrello {
		flex: 1 0 25%;
	}
}
@media screen and (max-width: 768px) {
	.carrello-custom-woocommerce {
		flex-direction: column;
		margin-bottom: 20px;
	}
}
.woocommerce-cart-form {
	padding-right: 0 !Important;
}
.woocommerce-cart-form__cart-item.cart_item {
	display: flex;
	border: 1px solid #ededed;
	border-radius: 16px;
	overflow: hidden;
	margin-bottom: 20px;
	align-items: center;
	padding: 30px;
	align-items: start;
	gap: 10px;
}
@media screen and (max-width: 768px) {
	.woocommerce-cart-form__cart-item.cart_item {
		padding: 15px;
	}
}
.woocommerce-cart-form__cart-item.cart_item .product-thumbnail {
	flex: 0 0 30%;
}
.woocommerce-cart-form__cart-item.cart_item .product {
	flex: 0 0 70%;
}
.woocommerce-cart-form__cart-item.cart_item {
	anchor-point
}

/* Nuovo carrello */
.woocommerce-js .quantity .minus, .woocommerce-js .quantity .plus {
	background: #ffffff;
}
.woocommerce-cart-form__cart-item {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: flex-start;
  padding: 20px 0;
	background: #f3f6fb;
	border-color: #f3f6fb !Important;
}
.product-wrapper {
  display: flex;
  flex-wrap: wrap;
  flex: 1 1 auto;
  gap: 20px;
}
.product .sku-prodotto {
	margin-top: 5px;
}
.woocommerce-cart-form__cart-item.cart_item .product-thumbnail {
  flex: 0 0 30% Important;
}
.woocommerce-cart-form__cart-item.cart_item .product {
  flex: 0 0 70% !Important;
}
.product-inner-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
}

.cart-actions-group {
	width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-start;
  align-items: center;
  margin-top: 10px;
}
.product-price {
	flex: 40%;
}
.quantita-carrello {
  flex: 30%;
}
.rimuovi-prodotto {
	flex: 10%;
	text-align: right !Important;
}
.quantita-carrello {
	margin-top: 0;
	margin-bottom: 0 !Important;
}
.cart_totals {
	top: 100px !Important; /* Sovrascrive regola del css */
	background: #f4f4f4; 
}
@media (min-width: 769px) {
  .woocommerce-cart-form__cart-item {
    flex-wrap: nowrap;
  }
  .product-wrapper {
    flex: 1 1 auto;
    flex-wrap: nowrap;
  }
	.woocommerce-cart-form__cart-item.cart_item .product-thumbnail {
    flex: 0 0 30% !Important;
  }
  .product {
    flex: 1 1 auto;
  }
  .cart-actions-group {
    flex: 0 0 30%;
    flex-direction: column;
    align-items: flex-start;
    margin-top: 0;
		text-align: right;
  }
  .product-price,
  .quantita-carrello,
  .rimuovi-prodotto {
    width: 100%;
  }
	.wc-proceed-to-checkout.mobile {
	display: none;
	}
}
@media screen and (max-width: 480px) {
	.woocommerce-cart-form__cart-item.cart_item .product-thumbnail {
		flex: 0 0 25%;
	}
	.woocommerce-cart-form__cart-item.cart_item .product {
		flex: 0 0 60%;
	}
	.rimuovi-prodotto {
		display: none; 
	}
}
@media screen and (max-width: 768px) {
		.wc-proceed-to-checkout.desktop {
	display: none;
}
		.woocommerce-cart-form__cart-item.cart_item .product {
		flex: 0 0 63% !Important; /* Sovrascrive il css */
	}
	.cart-actions-group {
	justify-content: space-between !Important;
		border-top: 1px solid #ededed;
		padding: 5px 20px;
		margin-top: 0 !Important;
	}
	.woocommerce-js .quantity .plus {
		margin-right: 0 !Important;
	}
	.woocommerce-cart-form__cart-item.cart_item {
		padding: 0 !Important; /* Sovrascrive il css */
	}
	.product-wrapper {
		padding: 20px !Important;
	}
}
/* Desktop: mostra testo, nascondi icona */
.remove-link-custom .remove-text {
  display: inline;
}
.remove-link-custom .remove-icon {
  display: none;
}

/* Mobile: mostra icona, nascondi testo */
@media (max-width: 768px) {
  .remove-link-custom .remove-text {
    display: none;
  }
  .remove-link-custom .remove-icon {
    display: inline-block;
    vertical-align: middle;
  }
}
.woocommerce-js div.product form.cart div.quantity {
	display: none;
}
.woocommerce-additional-fields {
	margin-top: 30px;
}

/* Pulsante back to shop nel carrello */
.back-to-shop {
	margin-top: 50px !Important;
	border-top: 1px solid #dddddd;
	padding: 20px 0;
	text-align: center;
	font-size: 20px;
}

/* Dati prodotto */
.quantita-carrello {
	margin-top: 10px;
	margin-bottom: 5px;
}
.rimuovi-prodotto a {
	font-size: 13px;
	color: #777;
}
.dati-prodotto {
	font-weight: 700;
	flex: 1 1 100%;
}
.dati-prodotto a {
	color: #3a3a3a !Important;
}
.woocommerce-cart-form del {
	color: rgba(66, 65, 64, 0.5); 
}
.woocommerce-cart-form del sup {
	display: none;
}
.ast-stock-avail-mobile {
	display: none;
}
.stock-mobile.in-stock {
	font-weight: 700;
	font-size: 16px;
	color: #77a464 !Important;
}
.ast-stock-detail-mobile .stock-mobile.in-stock::before {
	content: url('https://www.doctorspy.it/wp-content/uploads/2022/09/check-full.png');
	vertical-align: middle;
	margin-right: 5px;
	line-height: 1;
}
p.stock-mobile.available-on-backorder {
	font-size: 16px;
	color: #f2cb05 !Important;
	font-weight: 700;
	text-align: left !Important;
}
p.stock-mobile.available-on-backorder::before {
	content: url('https://www.doctorspy.it/wp-content/uploads/2022/09/check-backorder.png');
	vertical-align: middle;
	margin-right: 5px;
	line-height: 1;
}
.product-price .subtotale-prodotto .woocommerce-Price-amount.amount {
	font-size: 25px !Important;
	color: #3675b6;
	font-weight: 700;
}
.woocommerce-cart-form__cart-item.cart_item .sku-prodotto {
	font-size: 13px !Important;
	font-weight: 400 !Important;
	color: #575757;
}
.product-unit-price,
.product-unit-price del {
	font-size: 13px;
}

/* Pulsanti */
.woocommerce button[name="update_cart"],
.woocommerce input[name="update_cart"] {
	display: none !Important;
}
.continua-shopping a {
	color: #DB3800 !Important;
	font-size: 20px;
	border-bottom: 1px solid #DB3800;
}

/* Carrello mobile */
@media screen and (max-width: 768px) {
	.woocommerce-page table.shop_table td {
		padding: 10px;
	}
} 

/* Coupon code */
.riga-coupon {
	border: 1px solid #ededed;
	padding: 30px;
	border-radius: 16px;
}
#coupon_code {
	border-left: 0;
	border-top: 0;
	border-right: 0;
}
.riga-coupon p {
	text-align: left;
}
.inserisci-coupon {
	text-align: left;
}
input#coupon_code.input-text {
	width: 350px;
	padding-right: 20px;
}
@media screen and (max-width: 768px) {
	.inserisci-coupon {
		display: block !Important;
	}
    input#coupon_code.input-text {
	    width: 100% !Important;
	    text-align: center;
	}
	.inserisci-coupon .pulsante {
		width: 100% !Important;
		float: none !Important;
		margin-left: 0 !Important;
		margin-top: 10px;
	}
}

/* Spedizione */
#shipping_method li {
	margin-bottom: 5px !Important;
}
#shipping_method li::after {
	margin-left: 27px !Important;
	margin-top: 5px;
}
.woocommerce-shipping-destination {
	margin-top: 10px;
}
.shipping-calculator-button {
	font-weight: 700;
}
.shipping-calculator-form {
	margin-top: 10px;
}
.shipping-calculator-form .button {
	border-radius: 50px !Important;
	text-transform: uppercase;
}
.calcolatore-spedizione {
	border: 1px solid #ededed;
	border-radius: 16px;
	padding: 30px !Important;
	margin-top: 20px !Important;
}
.calcolatore-spedizione p.titolo-spedizioni {
	font-size: 25px !Important;
	font-weight: 700;
}
section.shipping-calculator-form button.button {
	padding: 15px 30px !Important;
	margin-top: 10px;
}
.shipping-calculator-form p.form-row.form-row-wide {
	padding: 0 !Important;
}
.woocommerce-js ul#shipping_method li input {
	margin: 0 !Important;
}
.woocommerce-js ul#shipping_method li label {
	padding-left: 10px;
	font-weight: 700;
}
.custom-shipping-info small {
	padding-left: 25px;
}

/* Media query */
@media screen and (max-width: 768px) {
	.woocommerce-cart-form__cart-item.cart_item {
		padding: 20px;
	}
	.stock-mobile.in-stock,
	.woocommerce-cart-form__cart-item.cart_item .stock-mobile.in-stock {
		font-size: 14px;
	}
	section.shipping-calculator-form button.button {
		width: 100%;
	}
}

/* Cart totals */
.woocommerce table.shop_table,
.woocommerce-page table.shop_table {
	border-top: 0;
	border-left: 0;
	border-right: 0;
}
.woocommerce table.shop_table thead,
.woocommerce-page table.shop_table thead {
	background-color: transparent;
}
.cart_totals {
	border: 1px solid #ededed;
	border-radius: 16px;
	padding: 30px;
	background: #ededed;
	position: -webkit-sticky;
	position: sticky;
	top: 160px;
	z-index: 9;
}
.totale-carrello thead tr th {
	text-align: left !Important;
	font-size: 20px;
	text-transform: none;
}
.totale-carrello .shop_table.shop_table_responsive {
	margin-bottom: 0 !Important;
	border-bottom: 0;
}
.totale-carrello .wc-proceed-to-checkout {
	padding-top: 0;
}
.order-total {
	font-size: 20px;
}
.spedizione td {
	font-weight: 700;
}
.fee td {
	color: #B63675;
}
.woocommerce-cart table.shop_table td.product-name,
.woocommerce-cart table.shop_table .woocommerce-Price-amount,
.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table .woocommerce-Price-amount,
.woocommerce-page table.shop_table .woocommerce-Price-amount {
	font-weight: 700;
}
.woocommerce-cart-form .product-subtotal, .totale-carrello thead tr th, .totale-carrello p.titolo-cart-totals, .totale-carrello td {
	text-align: right !Important;
}
.woocommerce-js table.shop_table td, .woocommerce-js table.shop_table th, .woocommerce-page table.shop_table td, .woocommerce-page table.shop_table th {
	padding-left: 0 !Important;
	padding-right: 0 !Important;
}

/* Banner */
.banner-carrello {
	padding-bottom: 30px;
}

/* Messaggi */
.woocommerce-message {
	padding: 1em 2em 1em 3.5em;
	margin: 0 0 2em;
	position: relative;
	background-color: #f7f6f7;
	color: #515151;
	border-top: 3px solid #3675b6;
	list-style: none outside;
	width: auto;
	word-wrap: break-word;
}

/* Carrello vuoto */
.container-empty {
	text-align: center !Important;
	padding: 20px;
}
.cart-empty.woocommerce-info {
	display: none;
}
.container-empty {
	text-align: center !Important;
	padding: 20px;
}
div.container-empty p {
	text-align: center !Important;
	padding-top: 30px;
	font-weight: 700;
	font-size: 20px !Important;
}
p.return-to-shop {
	text-align: center !Important;
}
a.button.wc-backward {
	text-align: center;
	text-transform: uppercase;
	padding: 15px 40px;
	margin-top: 10px;
	border-radius: 50px;
}
.cart-empty.woocommerce-info {
	display: none !Important;
}
.pagina-carrello-vuota .notifica-spedizione, .pagina-carrello-vuota .continua-shopping, .pagina-carrello-vuota .notifica-tempo-consegna, .pagina-carrello-vuota .wc-empty-cart-message {
	display: none;
}

/* Notifiche */
.wc-block-components-notice-banner.is-success {
	border-top: 3px solid #3675b6;
	border-left: 1px solid #ededed;
	border-bottom: 1px solid #ededed;
	border-right: 1px solid #ededed;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	background: transparent;
	padding: 1em;
	margin: 0 0 2em;
	position: relative;
	display: flex;
}
.wc-block-components-notice-banner.is-success svg path {
	fill: #3675b6;
}

/* Nascondi le opzioni di spedizione quando ci sono solo prodotti della categoria 348 */
.only-category-348 .calcolatore-spedizione {
	display: none;
}
.only-category-348 .software-message {
	display: block !Important;
	border: 1px solid #ededed;
	border-radius: 11px;
	padding: 30px;
	margin-top: 20px;
}
.only-category-348 .software-message p {
	margin-bottom: 0 !Important;
}

/* Punti di forza */
.cart-strengths-wrapper {
    margin: 50px 0 0 0;
}
.cart-strengths-title {
    text-align: center;
    font-size: 20px !Important;
    margin-bottom: 30px !Important;
}
.cart-strengths {
    display: grid;
    grid-template-columns: 1fr 1fr; /* due colonne */
    gap: 20px 24px; /* righe x colonne */
}
.strength {
    display: flex;
    align-items: flex-start;
    gap: 12px;
	border: 1px solid #ddd;
	padding: 20px;
	border-radius: 11px;
}
.strength-icon {
    width: 60px;
    height: 60px;
    flex: 0 0 60px;
    object-fit: contain;
}
.strength-text {
    line-height: 1.3;
}
.strength-title {
    font-size: 20px !Important;
    font-weight: 700;
    margin: 0 0 4px 0;
}
.strength-desc {
    font-size: 14px;
    margin: 0;
    color: #333;
}
@media (max-width: 600px) {
    .cart-strengths {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}
@media screen and (max-width: 768px) {
  .cart-strengths-wrapper.ds { 
		display: none; 
	}
}
@media screen and (min-width: 769px) {
	.cart-strengths-wrapper.mb {
		display: none;
	} 
}