/* ===== Zivas SPO – refined, no sticky ===== */

.variations_form select[name^="attribute_"],
.variations_form select[data-attribute_name],
.variations_form select[id^="attribute_"],
.wc-block-components-attributes select {
  position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important;
  overflow:hidden !important; clip:rect(1px,1px,1px,1px); white-space:nowrap !important; border:0 !important; padding:0 !important; margin:0 !important;
}

/* Brand tokens */
:root{
  --zv-primary:#f3b9c8; --zv-primary-strong:#e39ab1; --zv-primary-dark:#c57d96;
  --zv-dark:#222428; --zv-muted:#8b8e96; --zv-bg:#ffffff; --zv-soft:#f6f6f8; --zv-ring:#ffdfea;
  --zv-shadow:0 10px 30px rgba(0,0,0,.08); --zv-shadow-soft:0 6px 18px rgba(0,0,0,.06);
}
body.zv-spo-enabled{ background:var(--zv-soft); }

.zv-visually-hidden{ position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0 0 0 0) !important; white-space:nowrap !important; border:0 !important; }

/* Page breathing */
body.zv-spo-enabled .product-page-container{ padding-top:8px; padding-bottom:36px; }
@media (min-width:992px){ body.zv-spo-enabled .product-page-container{ padding-top:16px; padding-bottom:48px; } }

/* Summary card */
.summary.entry-summary{ background:#fff; border:1px solid #eee; border-radius:20px; padding:18px 18px 16px; box-shadow:var(--zv-shadow); }
@media (min-width:992px){ .summary.entry-summary{ padding:22px 24px 18px; border-radius:22px; } }

/* Title + Price cluster */
.zv-spo__heading{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin:0 0 12px; }
.zv-spo__heading .product_title{ margin:0; font-size:clamp(22px,2.4vw,32px); line-height:1.15; color:var(--zv-dark); font-weight:800; letter-spacing:.2px; }
.zv-spo__heading .price{ margin:0; display:inline-flex; align-items:center; gap:8px; white-space:nowrap; padding:8px 14px; border-radius:999px; background:linear-gradient(180deg,#fff 0%, #fff 40%, #fff7fb 100%); border:1px solid #f1dce6; box-shadow:0 10px 18px rgba(227,154,177,.18); }
.zv-spo__heading .price .amount{ font-weight:800; font-size:16px; }
.summary.entry-summary > .price{ display:none !important; }
.single-product .summary.entry-summary .zv-spo__heading + h1.product_title.entry-title {
  display: none !important;
}

/* Bullets */
.zv-spo__bullets{ color:#3b3d42; font-size:15px; line-height:1.55; margin:6px 0 14px; }
.zv-spo__bullets p{ margin:6px 0; }
.zv-spo__bullets ul{ margin:8px 0 0 18px; }

/* ETA + Stock */
.zv-spo__meta{ display:grid; gap:10px; margin:8px 0 14px; }
.zv-spo__eta{ font-size:14px; color:#2d2f34; background:#fff; border:1px solid #eee; padding:9px 12px; border-radius:12px; display:inline-flex; align-items:center; gap:8px; }
.zv-spo__stock{ background:#fff; border:1px solid #eee; padding:10px; border-radius:12px; }
.zv-spo__stock-bar{ height:7px; background:#f1f2f4; border-radius:999px; overflow:hidden; margin-bottom:7px; }
.zv-spo__stock-bar span{ display:block; height:100%; background:linear-gradient(90deg,var(--zv-primary),var(--zv-primary-strong)); }
.zv-spo__stock-label{ font-size:12px; color:var(--zv-muted); }

/* Variations block */
.single-product div.product .variations_form{ background:#fff; border:1px solid #eee; border-radius:16px; padding:14px; box-shadow:var(--zv-shadow-soft); }
.single-product table.variations{ margin-bottom:10px; width:100%; }
.single-product table.variations td.label{ width:110px; color:#474a52; font-weight:600; }

/* Pills */
.zv-pills-wrap{ margin:8px 0 14px; }
.zv-pills{ display:flex; flex-wrap:wrap; gap:8px; }
.zv-pill{ appearance:none; border:1px solid #e7e7ec; background:#fcfcfe; padding:8px 12px; border-radius:999px; font-weight:700; font-size:13px; line-height:1; cursor:pointer; box-shadow:inset 0 1px 0 rgba(0,0,0,.02); transition:transform .06s, box-shadow .12s, border-color .12s, background .12s; }
.zv-pill:hover{ transform:translateY(-1px); box-shadow:0 6px 14px rgba(0,0,0,.06); }
.zv-pill.is-active{ border-color:#f1dce6; background:linear-gradient(180deg,#fff 0%, #fff 40%, #fff7fb 100%); }
.zv-pill[disabled], .zv-pill[aria-disabled="true"]{ opacity:.45; cursor:not-allowed; filter:grayscale(.15); }

/* Qty + ATC */
.quantity .product-qty{ width:36px; height:36px; display:inline-grid; place-items:center; border:1px solid #e7e7ec; border-radius:10px; background:#fff; }
.quantity .input-text.qty{ width:64px; text-align:center; }
.single_add_to_cart_button.button{ background:linear-gradient(180deg,var(--zv-primary) 0%, var(--zv-primary-strong) 100%) !important; border-radius:14px !important; padding:12px 18px !important; border:none; box-shadow:0 10px 22px rgba(227,154,177,.28); transition:transform .08s, filter .12s; }
.single_add_to_cart_button.button:hover{ filter:brightness(.98); transform:translateY(-1px); }
.single_add_to_cart_button.button:disabled{ opacity:.55; }

/* Assurances */
.zv-spo__assurances{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:14px 0 6px; }
@media (max-width:768px){ .zv-spo__assurances{ grid-template-columns:1fr; } }
.zv-spo__assurance{ display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:12px; background:#fff; border:1px solid #eee; box-shadow:var(--zv-shadow-soft); color:#2d2f34; font-size:13px; font-weight:600; }
.zv-ic{ width:18px; height:18px; display:inline-block; background:currentColor; color:var(--zv-primary-dark); mask-size:contain; mask-repeat:no-repeat; mask-position:center; }
.zv-ic-shield{ mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M12 2l7 3v6c0 5-3.1 9.4-7 11-3.9-1.6-7-6-7-11V5l7-3z"/></svg>'); }
.zv-ic-truck{  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M3 4h11v8h2l3 3v3h-2a3 3 0 11-6 0H9a3 3 0 11-6 0H1v-2h2V4zm3 14a1 1 0 100 2 1 1 0 000-2zm10 0a1 1 0 100 2 1 1 0 000-2z"/></svg>'); }
.zv-ic-undo{   mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M12 5V1L6 7l6 6V9c3.3 0 6 2.7 6 6a6 6 0 01-6 6h-1v-2h1a4 4 0 000-8h-2V9h2c4.4 0 8 3.6 8 8s-3.6 8-8 8-8-3.6-8-8h2c0 3.3 2.7 6 6 6s6-2.7 6-6-2.7-6-6-6z"/></svg>'); }

/* Tabs */
.woocommerce-tabs{ background:#fff; border:1px solid #eee; border-radius:16px; padding:14px; box-shadow:var(--zv-shadow-soft); }
.woocommerce-tabs .tabs{ border-bottom:1px solid #f0f0f2; gap:8px; display:flex; }
.woocommerce-tabs .tabs li{ margin:0; }
.woocommerce-tabs .tabs a{ padding:10px 12px; border-radius:10px 10px 0 0; display:inline-block; }
.woocommerce-tabs .tabs .active a{ background:#fff0f7; color:#1f1f1f; font-weight:700; }

/* Mobile paddings */
@media (max-width:767px){ body.zv-spo-enabled .summary.entry-summary{ padding:16px 14px 14px; } }

/* Stock pulse */
@keyframes zvPulse { 0%{opacity:.92} 50%{opacity:.55} 100%{opacity:.92} }
