/* =====================================================================
   Multicarrello Paydea — shortcode [tk_multicarrello_global_cart]
   Palette Paydea: viola #7c3aed → indaco #6366f1 → ciano #06b6d4
   ===================================================================== */
.tkmc {
    --tkmc-grad: linear-gradient(135deg, #7c3aed 0%, #6366f1 55%, #06b6d4 100%);
    --tkmc-glow: 0 12px 32px rgba(99, 102, 241, .28);
    --tkmc-ink: #0f172a;
    --tkmc-muted: #64748b;
    --tkmc-line: #e8ecf4;
    color: var(--tkmc-ink);
}
.tkmc * { box-sizing: border-box; }

/* Testata */
.tkmc-hero {
    position: relative; overflow: hidden; display: flex; align-items: center; justify-content: space-between; gap: 20px;
    margin: 0 0 22px; padding: 26px 30px; border-radius: 22px; color: #fff;
    background: radial-gradient(circle at 92% -20%, rgba(6, 182, 212, .6), transparent 55%), radial-gradient(circle at 0 120%, rgba(236, 72, 153, .3), transparent 45%), linear-gradient(135deg, #1e1b4b 0%, #4c1d95 55%, #4338ca 100%);
    box-shadow: var(--tkmc-glow);
}
.tkmc-kicker { display: block; font-size: 11.5px; font-weight: 800; letter-spacing: 1.6px; text-transform: uppercase; color: #a5f3fc; }
.tkmc h2.tkmc-title { margin: 4px 0 6px !important; padding: 0 !important; font-size: 30px !important; font-weight: 800 !important; line-height: 1.15 !important; color: #fff !important; }
.tkmc-hero-txt p { margin: 0 !important; color: #e0e7ff !important; font-size: 15px; }
.tkmc-hero-tot {
    flex-shrink: 0; min-width: 220px; padding: 18px 24px; border-radius: 18px; text-align: right;
    background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .24); backdrop-filter: blur(6px);
}
.tkmc-hero-tot small { display: block; font-size: 11px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; color: #c7d2fe; }
.tkmc-hero-tot strong, .tkmc-hero-tot strong .amount { display: block; margin-top: 4px; font-size: 34px; font-weight: 900; line-height: 1.1; letter-spacing: -.5px; color: #fff !important; }

/* Negozio */
.tkmc .tkmc-shop {
    margin: 0 0 20px; padding: 0; overflow: hidden; border-radius: 20px; background: #fff;
    border: 1px solid var(--tkmc-line); box-shadow: 0 10px 30px rgba(15, 23, 42, .06); transition: box-shadow .2s;
}
.tkmc .tkmc-shop:hover { box-shadow: 0 14px 36px rgba(99, 102, 241, .14); }
.tkmc-shop-head {
    display: flex; align-items: center; gap: 14px; padding: 16px 22px;
    background: linear-gradient(135deg, #faf5ff, #eef2ff 60%, #ecfeff); border-bottom: 1px solid var(--tkmc-line);
}
.tkmc-shop-ico { flex: 0 0 46px; height: 46px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 22px; background: var(--tkmc-grad); box-shadow: 0 6px 16px rgba(99, 102, 241, .35); }
.tkmc-shop-name { flex: 1; min-width: 0; }
.tkmc-shop-name small { display: block; font-size: 11px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; color: #6366f1; }
.tkmc .tkmc-shop-name h3 { margin: 0 !important; font-size: 20px !important; font-weight: 800 !important; line-height: 1.2 !important; color: var(--tkmc-ink) !important; }
.tkmc-shop-count { flex-shrink: 0; padding: 5px 14px; border-radius: 50px; background: #fff; border: 1px solid #c7d2fe; color: #4338ca; font-size: 12.5px; font-weight: 800; }

/* Righe prodotto */
.tkmc-items { padding: 6px 22px; }
.tkmc-item { display: grid; grid-template-columns: 72px minmax(0, 1fr) 70px 150px; align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px dashed var(--tkmc-line); }
.tkmc-item:last-child { border-bottom: 0; }
.tkmc a.tkmc-thumb { display: block; width: 72px; height: 72px; border-radius: 16px; overflow: hidden; box-shadow: 0 6px 16px rgba(15, 23, 42, .12); }
.tkmc a.tkmc-thumb img { width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; display: block; }
.tkmc-info { min-width: 0; }
.tkmc a.tkmc-name { font-size: 16px; font-weight: 800; color: var(--tkmc-ink) !important; text-decoration: none !important; }
.tkmc a.tkmc-name:hover { color: #6d28d9 !important; }
.tkmc-note { margin-top: 6px; font-size: 12.5px; color: var(--tkmc-muted); }
.tkmc-qty { text-align: center; }
.tkmc-qty small { display: block; font-size: 10.5px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: #94a3b8; }
.tkmc-qty b { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 32px; margin-top: 2px; padding: 0 10px; border-radius: 50px; background: #faf5ff; border: 1.5px solid #ddd6fe; color: var(--tkmc-ink); font-weight: 800; }
.tkmc-line { text-align: right; font-size: 17px; font-weight: 900; color: var(--tkmc-ink); }
.tkmc-line del, .tkmc-line del .amount { display: block; font-size: 13px; font-weight: 500; color: #94a3b8 !important; }
.tkmc-line ins { text-decoration: none; color: #6d28d9; }

/* Piede negozio */
.tkmc-shop-foot { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; padding: 14px 22px 18px; border-top: 1px solid var(--tkmc-line); background: #fcfcff; }
.tkmc-sub small { display: block; font-size: 11px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; color: var(--tkmc-muted); }
.tkmc-sub strong, .tkmc-sub strong .amount { font-size: 22px; font-weight: 900; color: var(--tkmc-ink); }
.tkmc a.tkmc-go {
    display: inline-flex; align-items: center; gap: 8px; padding: 13px 24px; border-radius: 14px; text-decoration: none !important;
    background: var(--tkmc-grad); color: #fff !important; font-size: 15px; font-weight: 800; box-shadow: var(--tkmc-glow); transition: all .2s;
}
.tkmc a.tkmc-go span { transition: transform .2s; }
.tkmc a.tkmc-go:hover { transform: translateY(-2px); box-shadow: 0 16px 36px rgba(99, 102, 241, .45); color: #fff !important; }
.tkmc a.tkmc-go:hover span { transform: translateX(4px); }

/* Totale generale */
.tkmc-grand {
    display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 6px; padding: 20px 26px; border-radius: 20px;
    background: linear-gradient(#fff, #fff) padding-box, var(--tkmc-grad) border-box; border: 2px solid transparent; box-shadow: var(--tkmc-glow);
}
.tkmc-grand small { display: block; font-size: 16px; font-weight: 800; color: var(--tkmc-ink); }
.tkmc-grand span { font-size: 13px; color: var(--tkmc-muted); }
.tkmc-grand strong, .tkmc-grand strong .amount {
    font-size: 34px; font-weight: 900; letter-spacing: -.5px;
    background: var(--tkmc-grad); -webkit-background-clip: text; background-clip: text; color: transparent !important; -webkit-text-fill-color: transparent;
}

/* Vuoto */
.tkmc-empty { padding: 44px 20px; text-align: center; border-radius: 20px; background: #fff; border: 2px dashed #c7d2fe; }
.tkmc-empty-ico { display: inline-flex; width: 76px; height: 76px; border-radius: 22px; align-items: center; justify-content: center; font-size: 36px; background: linear-gradient(135deg, #faf5ff, #ecfeff); }
.tkmc .tkmc-empty h3 { margin: 14px 0 6px !important; font-size: 20px !important; font-weight: 800 !important; color: var(--tkmc-ink) !important; }
.tkmc-empty p { margin: 0 0 18px !important; color: var(--tkmc-muted); }

/* Pill codice sconto (tk-paydea-coupon-hub) */
.tkmc .tk-pch-cart-pill { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 50px; background: linear-gradient(135deg, #f5f3ff, #ecfeff); border: 1px solid #c7d2fe; font-size: 12px; color: #4338ca; white-space: nowrap; }
.tkmc .tk-pch-cart-pill b { font-family: monospace; letter-spacing: 1px; }
.tkmc .tk-pch-cart-pill i { font-style: normal; font-weight: 800; color: #db2777; }

@media (max-width: 782px) {
    .tkmc-hero { flex-direction: column; align-items: stretch; padding: 22px 18px; }
    .tkmc-hero-tot { text-align: left; }
    .tkmc h2.tkmc-title { font-size: 24px !important; }
    .tkmc-shop-head, .tkmc-items, .tkmc-shop-foot { padding-left: 14px; padding-right: 14px; }
    .tkmc-item { grid-template-columns: 64px minmax(0, 1fr) auto; grid-template-areas: "img info info" "img qty line"; gap: 8px 12px; }
    .tkmc a.tkmc-thumb { grid-area: img; width: 64px; height: 64px; align-self: start; }
    .tkmc-info { grid-area: info; }
    .tkmc-qty { grid-area: qty; text-align: left; }
    .tkmc-line { grid-area: line; }
    .tkmc-shop-foot { flex-direction: column; align-items: stretch; }
    .tkmc a.tkmc-go { justify-content: center; }
    .tkmc-grand { flex-direction: column; align-items: flex-start; padding: 18px; }
}

/* Importi: il tema alleggerisce .amount — qui ereditano dal contenitore */
.tkmc .woocommerce-Price-amount, .tkmc .woocommerce-Price-amount bdi, .tkmc .woocommerce-Price-currencySymbol { font: inherit !important; letter-spacing: inherit; color: inherit; }
.tkmc-grand strong .woocommerce-Price-amount, .tkmc-grand strong bdi, .tkmc-grand strong .woocommerce-Price-currencySymbol { -webkit-text-fill-color: transparent; background: inherit; -webkit-background-clip: text; background-clip: text; }
