/* Quick view modal styles split from root style.css. */
.sc-qv-actions .added_to_cart.wc-forward { display:none !important; }
.sc-qv-wrap[hidden] { display:none !important; }
.sc-qv-overlay { position:fixed; inset:0; background:rgba(7, 20, 47, .58); z-index:1000; backdrop-filter:blur(4px); }
.sc-qv-sheet { position:fixed; top:50%; left:50%; transform:translate(-50%, -50%); width:min(1120px, calc(100vw - 48px)); max-height:calc(100vh - 48px); display:flex; flex-direction:column; border-radius:30px; background:#fff; border:1px solid #E6ECF5; box-shadow:0 32px 90px rgba(7, 20, 47, .24); z-index:1001; overflow:hidden; outline:0; }
.sc-qv-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:20px 22px 16px; border-bottom:1px solid #edf2f7; }
.sc-qv-eyebrow { margin:0 0 5px; color:#c9251c; font-size:.76rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.sc-qv-title { margin:0; color:#333e48; font-size:clamp(1.1rem, .9rem + .65vw, 1.42rem); line-height:1.18; letter-spacing:-.025em; }
.sc-qv-close { flex:0 0 auto; width:42px; height:42px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; border:1px solid #dce5f0; background:#fff; color:#333e48; box-shadow:0 10px 24px rgba(7, 20, 47, .08); cursor:pointer; transition:background-color .2s ease, color .2s ease, transform .2s ease; }
.sc-qv-close:hover { background:#333e48; color:#fff; transform:translateY(-1px); }
.sc-qv-status { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.sc-qv-status.is-error { position:static; width:auto; height:auto; clip:auto; white-space:normal; padding:0 22px; color:#b91c1c; font-weight:700; }
.sc-qv-content { min-height:0; overflow:auto; padding:22px; }
.sc-qv-main { display:grid; grid-template-columns:minmax(0, 1.04fr) minmax(330px, .86fr); gap:24px; align-items:stretch; }
.sc-qv-media { position:relative; min-width:0; min-height:100%; background:transparent; overflow:visible; }
.sc-qv-media-stage { display:grid; grid-template-columns:minmax(0, 1fr); gap:14px; align-items:start; min-height:100%; }
.sc-qv-media-stage.has-qv-rail { grid-template-columns:14% minmax(0, 1fr); }
.sc-qv-rail { grid-column:1; grid-row:1; display:flex; flex-direction:column; align-items:stretch; gap:10px; max-height:clamp(350px, 38vw, 520px); overflow:auto; padding:1px 3px 1px 1px; scrollbar-width:thin; }
.sc-qv-badges { position:absolute; top:16px; right:16px; z-index:3; display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:wrap; }
.sc-qv-badge { min-height:30px; display:inline-flex; align-items:center; justify-content:center; padding:0 12px; border-radius:999px; color:#fff; font-size:.76rem; font-weight:800; box-shadow:0 12px 24px rgba(7, 20, 47, .12); }
.sc-qv-badge--capacity { background:#333e48; }
.sc-qv-badge--sale { background:#c9251c; }
.sc-qv-gallery { grid-column:1; position:relative; min-height:clamp(350px, 38vw, 520px); background:#fff; border:1px solid #E6ECF5; border-radius:24px; box-shadow:0 18px 42px rgba(15, 23, 42, .05); overflow:hidden; }
.sc-qv-media-stage.has-qv-rail .sc-qv-gallery { grid-column:2; }
.sc-qv-gallery-image { position:absolute; inset:0; box-sizing:border-box; width:100%; height:100%; object-fit:contain; object-position:center center; padding:clamp(22px, 4vw, 42px); opacity:0; visibility:hidden; transform:translateX(8px); transition:opacity .24s ease, transform .24s ease, visibility .24s ease; }
.sc-qv-gallery-image.is-active { opacity:1; visibility:visible; transform:translateX(0); }
.sc-qv-gallery-empty { min-height:330px; background:linear-gradient(135deg, #f8fafc, #eef3f8); }
.sc-qv-media-footer { display:none; }
.sc-qv-thumbs { display:flex; flex-direction:column; align-items:stretch; gap:10px; min-width:0; }
.sc-qv-thumb { flex:0 0 74px; width:74px; height:74px; display:flex; align-items:center; justify-content:center; padding:4px; border-radius:16px; border:1px solid #dbe4ef; background:#fff; cursor:pointer; box-shadow:0 10px 24px rgba(15, 23, 42, .04); transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.sc-qv-thumb:hover,
.sc-qv-thumb.is-active { border-color:#333e48; box-shadow:0 0 0 2px rgba(51, 62, 72, .14), 0 10px 24px rgba(15, 23, 42, .05); transform:translateY(-1px); }
.sc-qv-thumb:focus-visible { outline:2px solid #c9251c; outline-offset:2px; }
.sc-qv-thumb img { width:100%; height:100%; object-fit:contain; display:block; }
.woocommerce img.sc-qv-gallery-image,
.woocommerce-page img.sc-qv-gallery-image,
.woocommerce .sc-qv-thumb img,
.woocommerce-page .sc-qv-thumb img,
.woocommerce .sc-qv-video-image img,
.woocommerce-page .sc-qv-video-image img { height:100%; }
.sc-qv-video { flex:0 0 auto; width:74px; display:grid; gap:6px; align-content:start; justify-items:center; color:#333e48; text-decoration:none; font-size:.68rem; font-weight:800; line-height:1.16; text-align:center; }
.sc-qv-video-image { position:relative; display:flex; align-items:center; justify-content:center; width:74px; aspect-ratio:1 / 1; overflow:hidden; border-radius:16px; border:1px solid #dbe4ef; background:linear-gradient(135deg, #f8fbff 0%, #eef4ff 100%); box-shadow:0 10px 24px rgba(15, 23, 42, .04); transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.sc-qv-video-image img { width:100%; height:100%; object-fit:cover; display:block; }
.sc-qv-video-preview,
.sc-qv-video-preview-video { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; object-fit:cover; opacity:0; pointer-events:none; background:#333e48; transition:opacity .22s ease; }
.sc-qv-video-preview--poster { opacity:1; filter:brightness(.82) saturate(.98); transform:scale(1.01); }
.sc-qv-video.has-video-preview-video .sc-qv-video-preview-video { opacity:1; }
.sc-qv-video.has-video-preview .sc-qv-video-preview-video { opacity:0; }
.sc-qv-video.has-video-preview .sc-qv-video-preview { opacity:1; }
.sc-qv-video:hover .sc-qv-video-image { border-color:#c9251c; box-shadow:0 0 0 2px rgba(235, 61, 50, .14), 0 10px 24px rgba(15, 23, 42, .05); transform:translateY(-1px); }
.sc-qv-video:focus-visible { outline:2px solid #c9251c; outline-offset:3px; border-radius:18px; }
.sc-qv-video-icon { position:absolute; inset:50% auto auto 50%; z-index:2; transform:translate(-50%, -50%); width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; border:1px solid rgba(255,255,255,.18); background:rgba(8, 10, 14, .86); color:#fff; line-height:1; box-shadow:0 10px 20px rgba(0, 0, 0, .2); }
.sc-qv-video-icon svg { width:18px; height:18px; display:block; }
.sc-qv-video-label { display:block; color:#333e48; }
.sc-qv-info { display:flex; flex-direction:column; min-width:0; gap:13px; padding:4px 0; }
.sc-qv-brand { margin:0; color:#c9251c; font-size:.8rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.sc-qv-product-title { margin:0; color:#333e48; font-size:clamp(1.55rem, 1.1rem + 1.25vw, 2.35rem); line-height:1.12; letter-spacing:-.04em; }
.sc-qv-categories { display:flex; align-items:center; flex-wrap:wrap; gap:7px; color:#50617a; font-size:.9rem; font-weight:600; }
.sc-qv-categories a { color:#c9251c; text-decoration:none; }
.sc-qv-categories a:hover { color:#333e48; }
.sc-qv-category-sep { color:#94a3b8; }
.sc-qv-price-wrap { display:grid; gap:6px; padding-top:6px; }
.sc-qv-price-line { display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; }
.sc-qv-price-current { color:#333e48; font-size:clamp(1.5rem, 1.1rem + 1vw, 2rem); line-height:1; font-weight:800; letter-spacing:-.035em; }
.sc-qv-price-compare { color:#6B7280; text-decoration:line-through; font-size:.95rem; font-weight:600; }
.sc-qv-save { color:#c9251c; font-size:.9rem; font-weight:700; }
.sc-qv-summary { display:grid; gap:8px; margin:4px 0 0; padding:0; list-style:none; color:#3f4f66; font-size:.94rem; line-height:1.45; }
.sc-qv-summary li { position:relative; padding-left:18px; }
.sc-qv-summary li::before { content:""; position:absolute; left:0; top:.62em; width:7px; height:7px; border-radius:50%; background:#333e48; }
.sc-qv-stock { width:max-content; min-height:30px; display:inline-flex; align-items:center; padding:0 11px; border-radius:999px; font-size:.82rem; font-weight:800; }
.sc-qv-stock.is-in-stock { color:#15803d; background:#f0fdf4; border:1px solid #bbf7d0; }
.sc-qv-stock.is-out-stock { color:#b91c1c; background:#fef2f2; border:1px solid #fecaca; }
.sc-qv-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:auto; padding-top:8px; }
.sc-qv-button { min-height:46px; display:inline-flex !important; align-items:center; justify-content:center; gap:8px; padding:11px 14px; border-radius:13px !important; text-decoration:none !important; font-size:.9rem; font-weight:800; line-height:1.1; border:1px solid transparent; box-shadow:none !important; text-align:center; }
.sc-qv-button--primary { grid-column:1 / -1; background:#333e48 !important; color:#fff !important; border-color:#333e48 !important; }
.sc-qv-button--primary:hover { background:#27323c !important; border-color:#27323c !important; }
.sc-qv-button--whatsapp { grid-column:1 / -1; background:#f8fff9 !important; color:#15803d !important; border-color:#bfe8cc !important; }
.sc-qv-button--outline,
.sc-qv-button--ghost { background:#fff !important; color:#333e48 !important; border-color:#dce5f0 !important; }
.sc-qv-button.is-disabled { background:#eef2f7 !important; color:#64748b !important; border-color:#d8e1ec !important; pointer-events:none; }
.sc-qv-button-icon { display:inline-flex; align-items:center; justify-content:center; color:inherit; }
.sc-qv-content.is-loading { display:grid; grid-template-columns:minmax(0, 1.04fr) minmax(330px, .86fr); gap:24px; }
.sc-qv-skeleton { position:relative; overflow:hidden; border-radius:24px; background:#eef3f8; }
.sc-qv-skeleton::after { content:""; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(90deg, transparent, rgba(255,255,255,.72), transparent); animation:sc-qv-shimmer 1.1s infinite; }
.sc-qv-skeleton--media { min-height:420px; }
.sc-qv-skeleton--body { display:grid; align-content:center; gap:14px; padding:24px; }
.sc-qv-skeleton--body span { height:18px; border-radius:999px; background:#dce5ef; }
.sc-qv-skeleton--body span:nth-child(1) { width:38%; }
.sc-qv-skeleton--body span:nth-child(2) { width:86%; height:34px; }
.sc-qv-skeleton--body span:nth-child(3) { width:58%; }
.sc-qv-skeleton--body span:nth-child(4) { width:100%; height:48px; margin-top:18px; }
.sc-qv-error-card { padding:28px; border-radius:22px; border:1px solid #fecaca; background:#fef2f2; color:#7f1d1d; }
.sc-qv-error-card strong { display:block; margin-bottom:8px; font-size:1.05rem; }
.sc-qv-error-card p { margin:0; }
@keyframes sc-qv-shimmer { 100% { transform:translateX(100%); } }
@media (max-width: 1100px) {
  .sc-qv-sheet { width:min(94vw, 780px); max-height:calc(100vh - 40px); border-radius:26px; }
  .sc-qv-main,
  .sc-qv-content.is-loading { grid-template-columns:1fr; }
  .sc-qv-gallery { min-height:clamp(300px, 58vw, 460px); }
  .sc-qv-product-title { font-size:clamp(1.35rem, 3.3vw, 1.9rem); }
}
@media (max-width: 767px) {
  .sc-qv-overlay { background:rgba(7, 20, 47, .62); }
  .sc-qv-sheet { top:auto; left:0; right:0; bottom:0; transform:none; width:100%; max-height:92vh; border-radius:24px 24px 0 0; border-inline:0; border-bottom:0; }
  .sc-qv-head { padding:16px 16px 13px; }
  .sc-qv-eyebrow { font-size:.68rem; }
  .sc-qv-title { font-size:1.06rem; }
  .sc-qv-close { width:38px; height:38px; }
  .sc-qv-content { padding:14px; }
  .sc-qv-main,
  .sc-qv-content.is-loading { grid-template-columns:1fr; gap:14px; }
  .sc-qv-media { border-radius:0; }
  .sc-qv-media-stage.has-qv-rail { grid-template-columns:1fr; gap:10px; }
  .sc-qv-media-stage.has-qv-rail .sc-qv-gallery { grid-column:1; grid-row:1; }
  .sc-qv-gallery { min-height:clamp(330px, 92vw, 460px); }
  .sc-qv-rail { grid-column:1; grid-row:2; flex-direction:row; align-items:flex-start; gap:8px; max-height:none; overflow-x:auto; overflow-y:hidden; padding:1px 1px 5px; }
  .sc-qv-gallery-image { padding:16px; }
  .sc-qv-badges { top:12px; right:12px; left:auto; gap:6px; }
  .sc-qv-badge { min-height:28px; padding-inline:10px; font-size:.7rem; }
  .sc-qv-media-footer { display:none; }
  .sc-qv-thumbs { flex-direction:row; gap:8px; }
  .sc-qv-thumb { flex:0 0 58px; width:58px; height:58px; border-radius:13px; }
  .sc-qv-video { flex:0 0 64px; width:64px; font-size:.62rem; }
  .sc-qv-video-image { width:58px; border-radius:13px; }
  .sc-qv-video-icon { width:28px; height:28px; }
  .sc-qv-video-icon svg { width:16px; height:16px; }
  .sc-qv-info { gap:11px; padding:0; }
  .sc-qv-brand { font-size:.74rem; }
  .sc-qv-product-title { font-size:clamp(1.18rem, 5.2vw, 1.55rem); line-height:1.16; }
  .sc-qv-categories { font-size:.82rem; gap:5px; }
  .sc-qv-price-current { font-size:clamp(1.32rem, 5.8vw, 1.68rem); }
  .sc-qv-price-compare,
  .sc-qv-save { font-size:.82rem; }
  .sc-qv-summary { font-size:.84rem; line-height:1.42; gap:6px; }
  .sc-qv-actions { grid-template-columns:1fr; gap:8px; padding-top:4px; }
  .sc-qv-button,
  .sc-qv-button--primary,
  .sc-qv-button--whatsapp { grid-column:auto; min-height:44px; font-size:.84rem; }
  .sc-qv-skeleton--media { min-height:280px; }
  .sc-qv-skeleton--body { padding:18px; }
}

