/*
Theme Name: Hello Elementor Child
Template: hello-elementor
*/

/* ============================================================
   PAGINAZIONE — Nasconde la paginazione WooCommerce nativa
   (sostituita dal widget JSF Smart Pagination)
   ============================================================ */
nav.woocommerce-pagination {
    display: none !important;
}

/* ============================================================
   CARRELLO ELEMENTOR — Nasconde il subtotale nel mini-carrello
   ============================================================ */
.elementor-menu-cart__subtotal {
    display: none;
}

/* ============================================================
   CARRELLO — Nasconde colonne Prezzo e Subtotale
   Il sito non mostra prezzi: è un catalogo per preventivi
   ============================================================ */
th.product-price,
td.product-price {
    display: none !important;
}

th.product-subtotal,
td.product-subtotal {
    display: none !important;
}

/* ============================================================
   CARRELLO ELEMENTOR — Nasconde tutta la sezione totali
   Nessun prezzo né totale visibile al cliente
   ============================================================ */
.e-cart-totals .cart-subtotal,
.e-cart-totals .order-total,
.e-cart-totals th,
.e-cart-totals td {
    display: none !important;
}

/* Mantiene visibile solo il pulsante Procedi all'ordine */
.e-cart-totals .wc-proceed-to-checkout {
    display: block;
}

/* Rimuove bordi, shadow e sfondo dalla sezione totali */
.e-cart-totals,
.e-cart-totals .cart-collaterals,
.e-cart-totals .cart_totals {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Azzera margini e padding della sezione totali */
.e-cart-totals {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.e-cart-totals table.shop_table {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-spacing: 0 !important;
}

/* Nasconde eventuale titolo vuoto generato da Elementor */
.e-cart-totals h2 {
    display: none;
}

/* ============================================================
   CHECKOUT — Nasconde colonna Totale e righe Subtotale/Totale
   ============================================================ */
.woocommerce-checkout-review-order-table th.product-total,
.woocommerce-checkout-review-order-table td.product-total {
    display: none !important;
}

.woocommerce-checkout-review-order-table tfoot .cart-subtotal,
.woocommerce-checkout-review-order-table tfoot .order-total {
    display: none !important;
}

/* ============================================================
   CHECKOUT — Layout immagine + nome prodotto nel riepilogo
   La classe b2b-product-row è generata da functions.php
   ============================================================ */
.b2b-product-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
}

/* Immagine piccola nel riepilogo checkout */
.woocommerce-checkout .b2b-product-image img {
    width: 50px !important;
    height: auto !important;
    object-fit: contain !important;
}

.b2b-product-name {
    line-height: 1.3;
    margin: 0;
}

.b2b-product-content {
    gap: 2px;
}

/* ============================================================
   THANK YOU PAGE — Nasconde totali e colonne non necessarie
   ============================================================ */

/* Nasconde il totale ordine nel riepilogo in cima */
.woocommerce-order-overview__total {
    display: none !important;
}

/* Nasconde colonna Totale nella tabella prodotti */
.woocommerce-order-details th.product-total,
.woocommerce-order-details td.product-total {
    display: none !important;
}

/* Nasconde tutto il footer della tabella (subtotale, totale, ecc.) */
.woocommerce-order-details tfoot tr {
    display: none !important;
}

/* Nasconde la quantità perché viene già mostrata nel nome prodotto custom */
.woocommerce-order-details .product-quantity {
    display: none;
}

/* Compatta le righe della tabella */
.woocommerce-order-details .shop_table td {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    vertical-align: middle;
}

.woocommerce-order-details .order_item {
    border-bottom: 1px solid #eee;
}

/* Immagine più grande nella thank you page */
.woocommerce-order-details .b2b-product-image img {
    width: 90px !important;
    height: auto !important;
    object-fit: contain !important;
}

/* ============================================================
   ARCHIVIO PRODOTTI — Pulsanti "Aggiungi al carrello" e "Dettagli"
   Disposti in colonna, larghezza 100% del prodotto
   Il selettore elementor-wc-products è necessario per la specificità
   Il margine degli swatches (.zlv-swatches) è gestito sotto
   ============================================================ */
.elementor-wc-products ul.products li.product .woocommerce-loop-product__buttons {
    display: flex;
    flex-direction: column;
    width: 100% !important;
    box-sizing: border-box !important;
}

.elementor-wc-products ul.products li.product a.add_to_cart_button,
.elementor-wc-products ul.products li.product a.b2b-dettagli-button {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Spazio tra gli swatches colore (plugin di Davide) e i pulsanti */
.zlv-swatches {
    margin-bottom: 5px !important;
}

/* Dimensione swatches colore nell'archivio prodotti */
.woocommerce ul.products li.product .zlv-swatches:not(.zlv-pietra-archive) .zlv-swatch {
    width: 52px !important;
    height: 52px !important;
    display: block !important;
}
.woocommerce ul.products li.product .zlv-swatches:not(.zlv-pietra-archive) .zlv-swatch img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    margin: 0 !important;
}

/* === PAGINA PRODOTTO SINGOLO — swatch === */

/* Container swatch prodotto singolo */
.single-product .zlv-swatch {
    width: 70px !important;
    height: 70px !important;
    display: block !important;
    overflow: hidden !important;
}

/* Zoom 2× sull'immagine: il gioiello riempie il riquadro */
.single-product .zlv-swatch:not(.zlv-pietra-swatch) {
    display: block !important;
}
.single-product .zlv-swatch:not(.zlv-pietra-swatch) img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    margin: 0 !important;
    transform: scale(2);
    transform-origin: center center;
}

/* Versioni prodotto: immagine che riempie il container */
.single-product .zlv-pietra-swatch img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

/* ============================================================
   PLUGIN CORRELATI/PARURE — Stile immagini (plugin di Davide)
   ============================================================ */
.zoyero-parure-related__item img,
.zoyero-tag-related__item img {
    border: 2px solid !important;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
}

/* ============================================================
   CARRELLO — Campo Note per articolo
   Aggiunge una colonna "Note" dopo Quantità.
   La colonna viene creata via JavaScript in functions.php.
   mp-note-wrap, mp-cart-note, mp-save-note sono classi custom.
   ============================================================ */

/* Allineamento verticale di tutte le celle del carrello */
.shop_table.cart thead th,
.shop_table.cart tbody td {
    vertical-align: middle !important;
    line-height: normal !important;
}

/* Intestazione colonna Note — padding copiato da Quantità via JS,
   padding-bottom aggiunto per allineamento con gli altri header */
th.product-note-header {
    vertical-align: bottom !important;
    padding-top: inherit !important;
    padding-bottom: 8px !important;
    line-height: inherit !important;
}

/* Larghezza colonna Prodotto ridotta per fare spazio alle Note */
th.product-name,
td.product-name {
    width: 35% !important;
}

/* Colonna Quantità stretta */
th.product-quantity,
td.product-quantity {
    width: 80px !important;
    text-align: center !important;
}

/* Colonna Note più larga */
th.product-note-header,
td.product-note-col {
    width: 40% !important;
}

/* Contenitore del campo nota */
.mp-note-wrap {
    width: 100%;
}

/* Textarea della nota */
.mp-cart-note {
    width: 100%;
    padding: 6px;
    font-size: 0.85em;
    border: 1px solid #ddd;
    border-radius: 4px;
    resize: vertical;
    min-height: 60px;
}

/* Pulsante "Clicca per salvare" — appare solo quando si scrive */
.mp-save-note {
    margin-top: 5px;
    font-size: 0.8em;
    cursor: pointer;
}

/* ============================================================
   THANK YOU PAGE — Colonna Note nella tabella ordine
   La colonna viene aggiunta via JavaScript in functions.php
   ============================================================ */
th.product-note-thankyou,
td.product-note-thankyou-col {
    width: 35%;
    vertical-align: middle;
    padding-bottom: 8px;
    font-size: 0.9em;
}

/* Allineo la scritta a comparsa Visualizza carrello */
.woocommerce a.added_to_cart {
    text-align: center;
}

/* Allineo la categoria della pagina Wishlist a sinistra */
.jet-cw .jet-cw-tags ul, .jet-cw .jet-cw-categories ul {
    padding-left: 0;
}

/* Cambio il radius del bottone di login del plugin User approved */
button.user-registration-Button.button.ur-submit-button {
    border-radius: 25px;
}

/* ============================================================
   LIGHTBOX — Rimuove il bordo dorato dai pulsanti PhotoSwipe
   Il kit globale Elementor (.elementor-kit-7 button) applica
   border: 2px solid #C3A941 a tutti i <button>, inclusi quelli
   del lightbox WooCommerce (frecce, chiudi, zoom, ecc.)
   ============================================================ */
.pswp__button {
    border: none !important;
    border-radius: 0 !important;
}

/* ============================================================
   CATALOGO — Rollover titolo prodotto
   Il titolo è dentro un <a>, quindi il hover va sul link padre
   !important necessario per sovrascrivere .elementor-kit-7 a:hover
   ============================================================ */
.woocommerce-LoopProduct-link:hover .woocommerce-loop-product__title {
    color: #C3A941 !important;
}

/* Colore dello SKU, tag e grammi nel catalogo */
.zoyero-card-sku {
    color: #666666;
    font-weight: 700;
    font-size: 14px;
}

span.zoyero-card-correlati {
    color: #666666;
    font-weight: 700;
    font-size: 14px;
}

span.zoyero-card-peso {
    color: #666666;
    font-weight: 700;
    font-size: 14px;
}

/* ============================================================
   CHECKOUT REDESIGN
   Nasconde il form billing e la sezione payment nativa;
   stila la tabella prodotti custom e la sezione inferiore.
   ============================================================ */

/* --- NASCONDE BILLING E ELEMENTI NON NECESSARI --- */

/* Tutto il blocco "Dettagli di fatturazione" */
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout #billing_company_field {
    display: none !important;
}

/* Heading "Il tuo ordine" (già mostrato implicitamente dalla tabella) */
.woocommerce-checkout #order_review_heading {
    display: none !important;
}

/* Area payment nativa WooCommerce (terms, privacy, vero submit) */
.woocommerce-checkout .woocommerce-checkout-payment,
.woocommerce-checkout #terms-field,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout .woocommerce-privacy-policy-text {
    display: none !important;
}

/* Vero pulsante submit WooCommerce (sostituito dal proxy) */
#place_order {
    display: none !important;
}

/* Nasconde la label originale della textarea note (la usiamo spostata) */
.mp-co-note-slot .form-row label .optional {
    display: none;
}

/* Rimuove il bordo dal contenitore Elementor che racchiude gli input di tracking WC
   (wc-order-attribution-inputs) — il div resta nel DOM per non perdere gli input nascosti */
.woocommerce-checkout #customer_details .col-1 {
    border: none !important;
    min-height: 0 !important;
    padding: 0 !important;
}

/* Nasconde il contenitore "Additional fields" dopo che JS ha spostato le note */
.woocommerce-checkout .woocommerce-additional-fields {
    display: none !important;
}

/* ---- WRAPPER GENERALE ---- */
.mp-co-wrapper {
    margin-top: 0;
    padding-top: 0;
}

/* ---- TABELLA PRODOTTI ---- */
.mp-co-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 36px;
    table-layout: auto;
}

/* Header dorato */
.mp-co-header {
    background-color: #C3A941;
}

.mp-co-th {
    color: #ffffff;
    padding: 14px 16px;
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.mp-co-th-prodotto {
    text-align: left !important;
    padding-left: 20px !important;
}

.mp-co-th-note {
    text-align: left !important;
}

/* Righe prodotto */
.mp-co-riga {
    border-bottom: 1px solid #eeeeee;
    transition: background-color 0.15s;
}

.mp-co-riga:hover {
    background-color: #fafaf8;
}

.mp-co-td {
    padding: 14px 16px;
    vertical-align: middle;
    text-align: center;
    font-size: 14px;
    color: #444444;
}

.mp-co-td-prodotto {
    text-align: left !important;
    padding-left: 20px !important;
}

.mp-co-td-note {
    text-align: left !important;
    color: #888888;
    font-size: 13px;
    font-style: italic;
}

/* Cella prodotto: immagine + info */
.mp-co-prod-wrap {
    display: flex;
    align-items: center;
    gap: 14px;
}

.mp-co-prod-img img {
    width: 60px;
    height: 60px;
    object-fit: contain;
    border: 1px solid #eeeeee;
    border-radius: 4px;
    display: block;
    flex-shrink: 0;
}

.mp-co-prod-info {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.mp-co-sku {
    font-weight: 700;
    font-size: 14px;
    display: block;
    color: #222222;
}

.mp-co-nome {
    font-size: 13px;
    color: #888888;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

/* Colonna peso */
.mp-co-td-peso {
    white-space: nowrap;
    color: #666666;
}

/* Swatch colore */
.mp-co-swatch-img {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    object-fit: cover;
    display: inline-block;
    border: 1px solid rgba(0, 0, 0, 0.08);
    vertical-align: middle;
}

.mp-co-swatch-circle {
    display: inline-block;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, 0.10);
    vertical-align: middle;
}

.mp-co-colore-testo {
    font-size: 13px;
    color: #888888;
}

.mp-co-no-swatch {
    color: #cccccc;
}

/* Colonna quantità */
.mp-co-td-qta {
    font-weight: 600;
    font-size: 16px;
    color: #333333;
}

/* ---- SEZIONE INFERIORE (3 colonne) ---- */
.mp-co-bottom {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 32px;
    align-items: start;
    margin-top: 8px;
}

/* SINISTRA — box totali */
.mp-co-totali {
    border: 1px solid #e8e8e8;
    border-radius: 6px;
    padding: 22px 24px;
    background: #ffffff;
}

.mp-co-totali-title {
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    margin: 0 0 16px 0 !important;
    color: #222222 !important;
}

.mp-co-totali-table {
    width: 100%;
    border-collapse: collapse;
}

.mp-co-totali-table td {
    padding: 7px 0 !important;
    font-size: 14px !important;
    color: #777777 !important;
    border: none !important;
    background: transparent !important;
}

.mp-co-tot-val {
    text-align: right !important;
    color: #333333 !important;
    font-weight: 500 !important;
}

/* CENTRO — note ordine (campo WC spostato via JS) */
.mp-co-note-slot .form-row {
    margin: 0 !important;
    padding: 0 !important;
}

.mp-co-note-slot label {
    font-size: 14px !important;
    color: #777777 !important;
    margin-bottom: 8px !important;
    display: block !important;
    font-weight: 400 !important;
}

.mp-co-note-slot textarea,
.mp-co-note-slot #order_comments {
    width: 100% !important;
    border: 1px solid #dddddd !important;
    border-radius: 4px !important;
    padding: 10px 12px !important;
    font-size: 14px !important;
    resize: vertical !important;
    min-height: 130px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    color: #444444 !important;
    font-family: inherit !important;
    transition: border-color 0.2s !important;
}

.mp-co-note-slot textarea:focus,
.mp-co-note-slot #order_comments:focus {
    border-color: #C3A941 !important;
    outline: none !important;
    box-shadow: none !important;
}

/* DESTRA — azioni */
.mp-co-azioni {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 14px;
}

.mp-co-bottoni {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

/* Pulsante "Torna al carrello" — gold */
.mp-co-btn-ritorna {
    background-color: #C3A941 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 11px 24px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    cursor: pointer !important;
    transition: background-color 0.2s !important;
    line-height: 1.4 !important;
}

.mp-co-btn-ritorna:hover {
    background-color: #a8922f !important;
    color: #ffffff !important;
}

/* Pulsante "Invia proposta d'ordine" — dark */
.mp-co-btn-submit {
    background-color: #1a1a1a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 11px 24px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    display: inline-flex !important;
    align-items: center !important;
    cursor: pointer !important;
    transition: background-color 0.2s !important;
    line-height: 1.4 !important;
}

.mp-co-btn-submit:hover {
    background-color: #3a3a3a !important;
    color: #ffffff !important;
}

/* Disclaimer italic */
.mp-co-disclaimer {
    font-size: 13px !important;
    color: #aaaaaa !important;
    line-height: 1.6 !important;
    text-align: right !important;
    max-width: 300px !important;
    margin: 0 !important;
}


/* ============================================================
   THANK YOU PAGE — Stile tabella ordine + nasconde billing
   ============================================================ */

/* Nasconde indirizzo di fatturazione/spedizione (thank-you page e view-order) */
.woocommerce-order .woocommerce-customer-details,
.woocommerce-MyAccount-content .woocommerce-customer-details {
    display: none !important;
}

/* Nasconde il titolo "Dettagli ordine" originale di WooCommerce
   (lo ricreiamo noi sopra la tabella custom) */
.woocommerce-order .woocommerce-order-details__title {
    display: none !important;
}

/* Il nostro titolo sezione */
.mp-ty-section-title {
    display: block !important;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
}

/* Wrapper thank-you: stesso del checkout ma senza margine negativo eventuale */
.mp-ty-wrapper {
    margin-top: 0;
}

/* Sezione inferiore thank-you: stesse 3 colonne del checkout */
.mp-ty-bottom {
    margin-top: 32px;
}

/* Box nota ordine */
.mp-ty-nota-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.mp-ty-nota-testo {
    font-size: 14px;
    line-height: 1.7;
    color: #444;
    background: #f9f9f9;
    border-left: 3px solid #C3A941;
    padding: 12px 16px;
    border-radius: 4px;
    margin: 0;
}

/* Colonna destra vuota — solo spazio visivo simmetrico */
.mp-ty-spazio {
    min-height: 1px;
}