/* ==========================================================================
   PRODOTTO SINGOLO
   ========================================================================== */

.woocommerce div.product {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: var(--space-6) var(--container-padding);
}

/* Stacca il breadcrumb dall'header */
.single-product .fc-product-single .fc-breadcrumb {
    padding-top: var(--space-4);
}

/* ── Gallery + Summary layout ────────────────────────────────────────── */
.woocommerce div.product div.images {
    width: 48%;
    float: left;
}

.woocommerce div.product div.summary {
    width: 48%;
    float: right;
}

.woocommerce div.product div.images img {
    border-radius: var(--border-radius);
    background: var(--color-bg);
    cursor: zoom-in;
}

/* Nascondi la lentina di zoom WooCommerce */
.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
    display: none;
}

/* ── Titolo prodotto ─────────────────────────────────────────────────── */
.woocommerce div.product .product_title {
    font-family: var(--font-heading);
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-bold);
    color: var(--color-text);
    margin-bottom: var(--space-4);
    line-height: var(--line-height-tight);
}

/* ── Prezzo ───────────────────────────────────────────────────────────── */
.woocommerce div.product p.price {
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    margin-bottom: var(--space-4);
}

.woocommerce div.product p.price del {
    color: var(--color-text-muted);
    font-size: var(--font-size-lg);
}

.woocommerce div.product p.price ins {
    text-decoration: none;
}

/* ── Add to cart ─────────────────────────────────────────────────────── */
.woocommerce div.product form.cart,
.woocommerce.single-product div.product form.cart {
    margin-bottom: var(--space-6);
    display: flex !important;
    align-items: center;
    gap: var(--space-3);
    flex-wrap: wrap;
}

.woocommerce div.product form.cart .quantity {
    margin: 0 !important;
}

.woocommerce div.product form.cart .quantity input.qty {
    width: 48px !important;
    height: 48px !important;
    text-align: center;
    font-size: var(--font-size-base);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-sm);
    padding: 0;
    -moz-appearance: textfield;
}

.woocommerce div.product form.cart .quantity input::-webkit-inner-spin-button,
.woocommerce div.product form.cart .quantity input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.woocommerce div.product form.cart button.single_add_to_cart_button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 48px !important;
    height: 48px !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0;
    border-radius: var(--border-radius-sm);
    background: var(--color-primary) !important;
    color: var(--color-white) !important;
    border: none !important;
    cursor: pointer;
    transition: background var(--transition-fast);
    overflow: hidden;
}

.woocommerce div.product form.cart button.single_add_to_cart_button:hover {
    background: #e55a00 !important;
}

/* Icona SVG nel pulsante carrello */
.woocommerce div.product form.cart button.single_add_to_cart_button::before {
    content: '';
    display: block;
    width: 22px;
    height: 22px;
    background: #fff;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E");
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E");
    mask-size: contain;
    mask-repeat: no-repeat;
}

/* ── SKU + Categorie ─────────────────────────────────────────────────── */
.woocommerce div.product .product_meta {
    font-size: var(--font-size-sm);
    color: var(--color-text-light);
    padding-top: var(--space-4);
    border-top: 1px solid var(--color-border-light);
}

.woocommerce div.product .product_meta > span {
    display: block;
    margin-bottom: var(--space-2);
}

/* ── Tabs ────────────────────────────────────────────────────────────── */
.woocommerce div.product .woocommerce-tabs {
    clear: both;
    padding-top: var(--space-8);
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    list-style: none;
    display: flex;
    gap: 0;
    padding: 0;
    margin: 0 0 var(--space-6) 0;
    border-bottom: 2px solid var(--color-border);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    margin-bottom: -2px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    display: block;
    padding: var(--space-3) var(--space-6);
    color: var(--color-text-light);
    font-weight: var(--font-weight-medium);
    border-bottom: 2px solid transparent;
    text-decoration: none;
    transition: all var(--transition-fast);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
    color: var(--color-text);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--color-primary);
    border-bottom-color: var(--color-primary);
}

/* ── Tab Informazioni aggiuntive — tabella attributi ─────────────────── */
.woocommerce div.product .woocommerce-tabs .woocommerce-product-attributes {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--font-size-sm);
}

.woocommerce div.product .woocommerce-tabs .woocommerce-product-attributes th {
    font-weight: var(--font-weight-semibold);
    color: var(--color-text);
    text-align: left;
    padding: var(--space-2) var(--space-6) var(--space-2) 0;
    border-bottom: 1px solid var(--color-border-light);
    vertical-align: baseline;
    font-size: var(--font-size-xs);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
}

.woocommerce div.product .woocommerce-tabs .woocommerce-product-attributes td {
    padding: var(--space-2) 0;
    border-bottom: 1px solid var(--color-border-light);
    color: var(--color-text-light);
    line-height: var(--line-height-relaxed);
    vertical-align: baseline;
}

.woocommerce div.product .woocommerce-tabs .woocommerce-product-attributes p {
    margin: 0;
}

/* Titolo tab "Informazioni aggiuntive" più piccolo */
.woocommerce div.product .woocommerce-tabs .woocommerce-product-attributes-item__label,
.woocommerce div.product .woocommerce-tabs h2 {
    font-size: var(--font-size-lg);
    margin-bottom: var(--space-4);
}

/* ── Related products ────────────────────────────────────────────────── */
.woocommerce div.product .related.products {
    clear: both;
    padding-top: var(--space-8);
}

.woocommerce div.product .related.products h2 {
    font-size: var(--font-size-xl);
    margin-bottom: var(--space-6);
}

/* Titoli prodotti correlati: stesse dimensioni delle card shop */
.woocommerce div.product .related.products ul.products li.product .woocommerce-loop-product__title {
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-normal);
    color: var(--color-text-light);
    line-height: var(--line-height-tight);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Link prodotti correlati senza sottolineatura arancione */
.woocommerce div.product .related.products a.woocommerce-LoopProduct-link {
    color: inherit;
    text-decoration: none;
}
