/* SR17 Offer — review build. Tokens inherited from the live theme (ui/DESIGN-CONTRACT.md §6). No new hue. */
.sr17o-sr { position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

/* ---------- price row: strike → live → chip (§8.3) ---------- */
.sr17o-price { display:block; }
.sr17o-row { display:flex; flex-wrap:wrap; align-items:center; column-gap:10px; row-gap:6px; }
.sr17o-from { font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:400; font-size:14px; color:#b3b3b5; }
.sr17o-del { font-family:var(--sr17-font-heading, 'Space Grotesk', sans-serif); font-weight:400; color:#a0a0b0; text-decoration:line-through; text-decoration-color:currentColor; opacity:1; }
.sr17o-live { color:#ffffff; font-family:var(--sr17-font-heading, 'Space Grotesk', sans-serif); font-weight:700; }
.sr17o-chip { display:inline-block; font-family:var(--sr17-font-heading, 'Space Grotesk', sans-serif); font-weight:700; font-size:11px; letter-spacing:.1em; line-height:1; text-transform:uppercase; color:#0a0a0f; background:#00d4ff; padding:4px 8px; border-radius:1px; }

/* PDP (a): del 18px, live 28px (E-4), per-tablet line 13px */
.sr17-product__price .sr17o-price--pdp .sr17o-del { font-size:18px; }
.sr17-product__price .sr17o-price--pdp .sr17o-live { font-size:28px; line-height:1.2; }
.sr17o-pertab { display:block; margin-top:6px; font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:400; font-size:13px; color:#a0a0b0; }
/* one price only when a pack is selected (§11 a) */
.sr17-product__form-wrap .woocommerce-variation-price { display:none !important; }

/* shop / home card (f): 14px, live in the theme card accent */
.sr17-product-card__price .sr17o-price--card .sr17o-row, .sr17o-homecard .sr17o-row { column-gap:8px; }
.sr17-product-card__price .sr17o-price--card .sr17o-del, .sr17o-homecard .sr17o-del { font-family:var(--sr17-font-body, Inter, sans-serif); font-size:14px; font-weight:400; color:#a0a0b0 !important; opacity:1 !important; }
.sr17-product-card__price .sr17o-price--card .sr17o-live, .sr17o-homecard .sr17o-live { font-family:var(--sr17-font-body, Inter, sans-serif); font-size:14px; font-weight:500; color:#00d4ff; }

/* ---------- pack buttons (b) ---------- */
.sr17-variant-btn.sr17o-btn { flex-direction:column; padding:9px 8px; gap:2px; line-height:1.25; }
.sr17o-btn__price { display:flex; align-items:baseline; justify-content:center; gap:5px; white-space:nowrap; text-transform:none; letter-spacing:0; }
.sr17o-btn__price del { font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:400; font-size:11px; color:#a0a0b0; text-decoration:line-through; }
.sr17o-btn__price b { font-family:var(--sr17-font-heading, 'Space Grotesk', sans-serif); font-weight:700; font-size:14px; color:#ffffff; }
.sr17o-btn__per { font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:500; font-size:11px; color:#a0a0b0; text-transform:none; letter-spacing:0; white-space:nowrap; }
.sr17-variant-btn--active .sr17o-btn__price b { color:#00d4ff; }

/* ---------- tablet scale (§10) ---------- */
.sr17o-scale { width:100%; }
.sr17o-scale__head { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin:0 0 10px; }
.sr17o-scale__title { margin:0; }
.sr17o-scale__state { font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:500; font-size:13px; color:#ffffff; text-align:right; }
.sr17o-track { position:relative; height:4px; border-radius:2px; background:rgba(255,255,255,.06); }
.sr17o-fill { position:absolute; left:0; top:0; bottom:0; width:0; border-radius:2px; background:#00d4ff; box-shadow:0 0 8px var(--sr17-accent-glow, rgba(0,212,255,.15)); transition:width .6s var(--sr17-ease, ease); }
.sr17o-tick { position:absolute; top:50%; width:2px; height:10px; margin:-5px 0 0 -1px; background:rgba(255,255,255,.25); }
.sr17o-tick.is-reached { background:#00d4ff; }
.sr17o-labels { position:relative; height:30px; margin-top:8px; }
.sr17o-lab { position:absolute; top:0; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; white-space:nowrap; }
.sr17o-lab--end { transform:translateX(-100%); align-items:flex-end; }
.sr17o-lab b { font-family:var(--sr17-font-heading, 'Space Grotesk', sans-serif); font-weight:600; font-size:11px; letter-spacing:.06em; line-height:15px; color:#a0a0b0; }
.sr17o-lab i { font-style:normal; font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:500; font-size:11px; line-height:15px; color:#a0a0b0; }
.sr17o-lab.is-reached b { color:#ffffff; }
.sr17o-lab.is-reached i { color:#4ade80; }
.sr17o-nudge { margin:10px 0 0; font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:400; font-size:13px; line-height:1.5; color:#b3b3b5; }
.sr17o-nudge strong { font-weight:500; color:#ffffff; }
.sr17o-nudge + .sr17o-buynow-note { margin-top:4px; }
.sr17o-buynow-note { margin:0; font-family:var(--sr17-font-body, Inter, sans-serif); font-size:13px; line-height:1.5; color:#b3b3b5; }
@media (prefers-reduced-motion: reduce) { .sr17o-fill { transition:none; } }

/* PDP module placement (c): full-width child of the variations form, after Buy Now */
.sr17o-pdp-module { width:100%; flex-basis:100%; margin-top:24px; padding-top:24px; border-top:1px solid rgba(255,255,255,.06); }
.sr17o-shipline { display:flex; gap:8px; align-items:flex-start; margin:16px 0 0; font-family:var(--sr17-font-body, Inter, sans-serif); font-size:13px; line-height:1.5; color:#b3b3b5; }
.sr17o-shipline svg { flex:0 0 auto; margin-top:2px; color:#00d4ff; }

/* ---------- cart (d)(e) ---------- */
.sr17o-cart-mod { margin:0 0 24px; }
.sr17o-callout { margin:0 0 16px; padding:12px 16px; border-left:3px solid #00d4ff; background:rgba(0,212,255,.08); }
.sr17o-callout__h { margin:0 0 4px; font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:500; font-size:16px; color:#ffffff; overflow-wrap:anywhere; }
.sr17o-callout__p { margin:0; font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:400; font-size:14px; line-height:1.5; color:#b3b3b5; }
.sr17o-cell-del { display:block; font-family:var(--sr17-font-body, Inter, sans-serif); font-size:12px; font-weight:400; color:#a0a0b0; text-decoration:line-through; }
.sr17o-cell-live { display:block; margin-top:2px; }
.sr17o-rowsub { display:block; margin-top:2px; font-family:var(--sr17-font-body, Inter, sans-serif); font-size:12px; font-weight:400; color:#a0a0b0; }
.sr17o-disc-label, .sr17o-disc-value { color:#4ade80 !important; }
.sr17o-disc-value { font-weight:500 !important; }
.sr17o-save td { text-align:right; padding:2px 4px 10px !important; border:0 !important; font-family:var(--sr17-font-body, Inter, sans-serif); font-weight:500; font-size:14px; color:#b3b3b5; }
.sr17o-save b { font-weight:500; color:#4ade80; }
.sr17o-empty { margin:8px 0 0; font-family:var(--sr17-font-body, Inter, sans-serif); font-size:14px; color:#b3b3b5; }
body.sr17o-cart-page .sr17o-label-fix { color:#a0a0b0 !important; }

/* ---------- home offer section (g) ---------- */
.sr17o-home__grid { display:grid; grid-template-columns:1.15fr 1fr; gap:48px; align-items:center; }
.sr17o-home__offer .sr17-caption { margin-bottom:12px; }
.sr17o-home__offer .sr17-h2 { margin:0 0 16px; }
.sr17o-home__offer .sr17-body { margin:0 0 24px; max-width:560px; }
.sr17o-home__offer .sr17o-scale { max-width:560px; margin:0 0 28px; }
.sr17o-home__fact { margin-top:14px; font-size:.9rem; }
.sr17o-homecard { display:flex; gap:24px; align-items:stretch; }
.sr17o-homecard .sr17-product-card__image-wrap { flex:0 0 200px; aspect-ratio:4/5; }
.sr17o-homecard .sr17-product-card__info { display:flex; flex-direction:column; justify-content:center; gap:10px; }
.sr17o-homecard__per { font-family:var(--sr17-font-body, Inter, sans-serif); font-size:13px; color:#a0a0b0; }
@media (max-width:900px) {
  .sr17o-home__grid { grid-template-columns:1fr; gap:32px; }
  .sr17o-homecard { flex-direction:column; }
  .sr17o-homecard .sr17-product-card__image-wrap { flex:none; width:100%; max-height:280px; }
}

/* home scale = static explainer: fill 0, all four tiers read as available (§11 g) */
.sr17o-scale--home .sr17o-lab b { color:#ffffff; }
.sr17o-scale--home .sr17o-lab i { color:#4ade80; }
.sr17o-scale--home .sr17o-nudge { color:#b3b3b5; }
/* automatic-savings strip: template green #2e7d32 fails on the dark ground */
.sr17o-strip-auto { color:#4ade80 !important; }

/* home card: the shop stylesheet does not load on the home page — same ground/border/radius as shop.css L153-162 */
.sr17o-homecard { background:var(--sr17-bg-card, #16161f); border:1px solid var(--sr17-border, rgba(255,255,255,.04)); border-radius:2px; overflow:hidden; padding:0 24px 0 0; }
.sr17o-homecard .sr17-product-card__image-wrap { display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.02); }
.sr17o-homecard .sr17-product-card__image-wrap img { width:100%; height:100%; object-fit:contain; }
.sr17o-homecard .sr17-product-card__title { margin:0; font-family:var(--sr17-font-heading, 'Space Grotesk', sans-serif); font-weight:700; font-size:20px; color:#ffffff; }
@media (max-width:900px) { .sr17o-homecard { padding:0 0 20px; } .sr17o-homecard .sr17-product-card__info { padding:0 20px; } }
/* coupon strips on the cart: the template's #2e7d32 text fails contrast on the dark ground (all strips, real codes too) */
body.sr17o-cart-page .maef-coupon-wrap ~ div span, body.sr17o-cart-page div > span[style*="2e7d32"] { color:#4ade80 !important; }
/* the template's coupon success / error lines (L1591-1609): #2e7d32 3.85:1 and #dc2626 4.09:1 on the ground → theme savings green and theme red (sr17-shop.css L1022) */
body.sr17o-cart-page p[style*="color:#2e7d32"] { color:#4ade80 !important; }
body.sr17o-cart-page p[style*="color:#dc2626"] { color:#ff6b6b !important; }
