/* StoreSuite Negozio: pezzi comuni a tutti i temi (i colori vengono dal tema tramite --sl-*). */
.ssng-sped { background: #fff; border: 1px solid var(--sl-line, #e5e7eb); padding: 12px 16px; margin: 0 0 18px; }
.ssng-sped p { margin: 0 0 8px; font-size: 15px; }
.ssng-sped-barra { height: 8px; background: #eceae6; border-radius: 99px; overflow: hidden; }
.ssng-sped-barra i { display: block; height: 100%; background: var(--sl-accent, #b8860b); border-radius: 99px; transition: width .4s; }
.ssng-nota-sped { font-size: 14px; color: var(--sl-muted, #6b7280); margin: 10px 0; }
.ssng-cuore { position: absolute; top: 10px; right: 10px; z-index: 3; width: 36px; height: 36px; border-radius: 50%; border: 0; background: rgba(255,255,255,.92); display: grid; place-items: center; cursor: pointer; box-shadow: 0 2px 8px rgba(0,0,0,.12); padding: 0; }
.ssng-cuore svg { fill: none; stroke: #222; stroke-width: 1.8; }
.ssng-cuore.on svg { fill: #d1243b; stroke: #d1243b; }
.woocommerce ul.products li.product, .wc-block-grid__product { position: relative; }
.ssng-azioni-prod { display: flex; align-items: center; gap: 8px; margin: 12px 0; }
.ssng-azioni-prod .ssng-cuore { position: static; box-shadow: none; border: 1px solid var(--sl-line, #ddd); }
.ssng-wa { display: inline-flex; align-items: center; gap: 8px; background: #25d366; color: #fff !important; text-decoration: none !important; padding: 10px 16px; border-radius: 99px; font-weight: 700; font-size: 14.5px; margin: 6px 8px 6px 0; }
.ssng-taglie-btn { background: none; border: 1px solid currentColor; padding: 9px 14px; border-radius: 99px; cursor: pointer; font: inherit; font-size: 14px; }
.ssng-dialog { border: 0; padding: 24px; max-width: 560px; width: calc(100% - 32px); box-shadow: 0 20px 60px rgba(0,0,0,.3); }
.ssng-dialog::backdrop { background: rgba(0,0,0,.45); }
.ssng-dialog table { width: 100%; border-collapse: collapse; font-size: 14px; }
.ssng-dialog th, .ssng-dialog td { border-bottom: 1px solid #eee; padding: 7px 8px; text-align: left; }
.ssng-chiudi { float: right; background: none; border: 0; font-size: 26px; cursor: pointer; line-height: 1; }
.ssng-piccolo { font-size: 13px; color: var(--sl-muted, #6b7280); }
.ssng-et { position: absolute; left: 10px; top: 10px; z-index: 2; display: flex; flex-direction: column; gap: 4px; align-items: flex-start; }
.ssng-et i { font-style: normal; font-size: 11.5px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; padding: 4px 8px; background: #111; color: #fff; }
.ssng-et i.saldi { background: #c0262d; }
.ssng-et i.ultimi { background: #b45309; }
.ssng-cerca { position: relative; display: flex; flex: 1; max-width: 640px; }
.ssng-cerca input[type=search] { flex: 1; min-width: 0; padding: 11px 14px; border: 1px solid var(--sl-line, #d1d5db); border-right: 0; font: inherit; font-size: 15px; background: #fff; color: #111; border-radius: 0; }
.ssng-cerca > button { padding: 0 16px; border: 0; background: var(--sl-accent, #111); color: #fff; cursor: pointer; }
.ssng-cerca-ris { position: absolute; left: 0; min-width: min(420px, 92vw); right: 0; top: 100%; z-index: 60; background: #fff; border: 1px solid #ddd; box-shadow: 0 16px 40px rgba(0,0,0,.18); max-height: 70vh; overflow: auto; }
.ssng-cerca-ris a { display: grid; grid-template-columns: 46px 1fr auto; gap: 10px; align-items: center; padding: 8px 12px; text-decoration: none; color: #111; border-bottom: 1px solid #f1f1f1; }
.ssng-cerca-ris a:hover { background: #f7f7f7; }
.ssng-cerca-ris img, .ssng-cerca-ris span { width: 46px; height: 46px; object-fit: cover; background: #eee; }
.ssng-cerca-ris b { font-weight: 600; font-size: 14px; }
.ssng-cerca-ris em { font-style: normal; font-size: 14px; font-weight: 700; }
.ssng-cerca-ris button { width: 100%; padding: 10px; border: 0; background: #f6f6f6; cursor: pointer; font: inherit; font-weight: 600; }
.ssng-cerca-ris p { margin: 0; padding: 14px; }
.ssng-benv { background: #fff; border: 1px solid var(--sl-line, #e5e7eb); padding: 18px; }
.ssng-benv-tit { font-size: 18px; margin: 0 0 10px; }
.ssng-benv-riga { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.ssng-benv-riga input { flex: 1 1 160px; padding: 11px 12px; border: 1px solid #ccc; font: inherit; }
.ssng-benv-riga button { padding: 11px 18px; border: 0; background: var(--sl-accent, #111); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.ssng-benv--ok code { display: inline-block; font-size: 22px; font-weight: 800; letter-spacing: .06em; padding: 8px 14px; background: #fff8dc; border: 2px dashed var(--sl-accent, #b8860b); margin: 4px 0 8px; user-select: all; }
.ssng-err { color: #b91c1c; }
.ssng-vuoto { font-size: 17px; }
