/* Click Retail · Secciones PDP — Valoraciones
 * Transcripción 1:1 del prototipo de Claude Design (Valoraciones MB900S).
 * Todo va scoped bajo .crv para no chocar con Woodmart/Elementor.
 */

.crv,
.crv *,
.crv *::before,
.crv *::after { box-sizing: border-box; }

@keyframes crv-fade { from { opacity: 0 } to { opacity: 1 } }
@keyframes crv-pop  { from { opacity: 0; transform: scale(.96) translateY(10px) } to { opacity: 1; transform: none } }

/* ---------- Tokens ---------- */
.crv {
  --bg:#ffffff; --panel:#f5f5f7; --card:#ffffff; --fg:#1d1d1f;
  --sec:#6e6e73; --ter:#86868b; --sep:rgba(0,0,0,.10); --hair:rgba(0,0,0,.055);
  --star:#ff9500; --chip:#f5f5f7; --field:#f5f5f7; --shadow:rgba(0,0,0,.08);
  --overlay:rgba(0,0,0,.76); --fieldBorder:rgba(0,0,0,.12);
  /* accent (light/dark) inyectados inline; defaults por si faltan */
  --accent-l:#C62437; --accentPress-l:#A81D2E; --accent-d:#FF5A6E; --accentPress-d:#FF7183;
  --accent:var(--accent-l); --accentPress:var(--accentPress-l);

  background:var(--bg); color:var(--fg);
  font-family:inherit; /* usar la fuente por defecto del sitio */
  -webkit-font-smoothing:antialiased; line-height:1.47;
  transition:background .45s ease,color .45s ease;
}
.crv[data-theme="dark"] {
  --bg:#000000; --panel:#1c1c1e; --card:#1c1c1e; --fg:#f5f5f7;
  --sec:#a1a1a6; --ter:#8a8a8f; --sep:rgba(255,255,255,.14); --hair:rgba(255,255,255,.08);
  --star:#ff9f0a; --chip:#2a2a2c; --field:#1c1c1e; --shadow:rgba(0,0,0,.5);
  --overlay:rgba(0,0,0,.88); --fieldBorder:rgba(255,255,255,.16);
  --accent:var(--accent-d); --accentPress:var(--accentPress-d);
}
@media (prefers-color-scheme: dark) {
  .crv[data-theme="auto"] {
    --bg:#000000; --panel:#1c1c1e; --card:#1c1c1e; --fg:#f5f5f7;
    --sec:#a1a1a6; --ter:#8a8a8f; --sep:rgba(255,255,255,.14); --hair:rgba(255,255,255,.08);
    --star:#ff9f0a; --chip:#2a2a2c; --field:#1c1c1e; --shadow:rgba(0,0,0,.5);
    --overlay:rgba(0,0,0,.88); --fieldBorder:rgba(255,255,255,.16);
    --accent:var(--accent-d); --accentPress:var(--accentPress-d);
  }
}

/* elementos base dentro del scope */
.crv button, .crv input, .crv select, .crv textarea { font-family:inherit; }
.crv img, .crv video { max-width:100%; }
.crv .crv-strip::-webkit-scrollbar,
.crv .crv-lb-thumbs::-webkit-scrollbar { height:0; width:0; }

/* ---------- Layout ---------- */
.crv-wrap { max-width:1080px; margin:0 auto; padding:clamp(20px,3vw,32px) clamp(16px,4vw,24px) 88px; } /* top reducido (antes clamp(40,6vw,72)); la separación con el buy box la da el margen nativo */

/* Header */
.crv-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; flex-wrap:wrap; margin-bottom:clamp(26px,4vw,40px); }
.crv-eyebrow { font-size:13px; font-weight:600; letter-spacing:.03em; text-transform:uppercase; color:var(--accent); margin-bottom:10px; }
.crv-title { margin:0; font-size:clamp(30px,5vw,44px); line-height:1.06; font-weight:700; letter-spacing:-.022em; }
.crv-subtitle { margin-top:10px; color:var(--sec); font-size:clamp(15px,2vw,17px); }
.crv-writebtn { height:46px; padding:0 22px; border-radius:980px; border:none; background:var(--accent); color:#fff; font-size:15px; font-weight:600; cursor:pointer; white-space:nowrap; transition:background .2s; }
.crv-writebtn:hover { background:var(--accentPress); }

/* Summary cards */
.crv-cards { display:flex; flex-wrap:wrap; gap:16px; align-items:stretch; margin-bottom:16px; }
.crv-avgcard { flex:1 1 240px; min-width:230px; background:var(--panel); border-radius:24px; padding:32px 24px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:5px; }
.crv-avg { font-size:clamp(52px,8vw,66px); font-weight:700; letter-spacing:-.035em; line-height:.95; }
.crv-avgstars { position:relative; display:inline-block; font-size:22px; letter-spacing:4px; line-height:1; margin:6px 0 3px; }
.crv-avgstars-bg { color:var(--sep); }
.crv-avgstars-fill { position:absolute; top:0; left:0; overflow:hidden; white-space:nowrap; color:var(--star); }
.crv-total { font-size:14.5px; color:var(--sec); }
.crv-recommend { margin-top:9px; font-size:13px; color:var(--accent); font-weight:600; }

.crv-histocard { flex:2.2 1 340px; min-width:280px; background:var(--panel); border-radius:24px; padding:24px 24px; display:flex; flex-direction:column; justify-content:center; gap:1px; }
.crv-histo-row { display:flex; align-items:center; gap:12px; width:100%; padding:6px 8px; border-radius:9px; color:var(--fg); }
.crv-histo-label { width:40px; text-align:right; font-size:13px; color:var(--sec); font-variant-numeric:tabular-nums; display:flex; align-items:center; justify-content:flex-end; gap:3px; }
.crv-histo-label i { color:var(--star); font-size:11px; font-style:normal; }
.crv-histo-bar { flex:1; height:9px; border-radius:5px; background:var(--hair); overflow:hidden; position:relative; }
.crv-histo-fill { position:absolute; left:0; top:0; bottom:0; border-radius:5px; background:var(--star); transition:width .4s ease; }
.crv-histo-count { width:26px; text-align:right; font-size:13px; color:var(--sec); font-variant-numeric:tabular-nums; }

/* AI summary */
.crv-ai { margin-bottom:16px; padding:26px clamp(20px,3vw,28px); background:var(--panel); border-radius:24px; }
.crv-ai-head { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.crv-ai-icon { width:26px; height:26px; border-radius:50%; background:var(--accent); display:grid; place-items:center; flex:none; }
.crv-ai-title { margin:0; font-size:16px; font-weight:600; letter-spacing:.005em; }
.crv-ai-text { margin:0 0 18px; font-size:clamp(15.5px,2vw,17px); line-height:1.5; color:var(--fg); max-width:none; }
.crv-ai-text strong { font-weight:600; }
.crv-topics { display:flex; flex-wrap:wrap; gap:8px; }
.crv-ai-foot { margin-top:15px; font-size:12px; color:var(--ter); }

/* Chip (compartido: topics + filtros) */
.crv-chip { height:36px; padding:0 15px; border-radius:980px; font-size:13px; font-weight:500; cursor:pointer; white-space:nowrap; border:1px solid var(--sep); background:var(--card); color:var(--fg); transition:background .2s,color .2s,border-color .2s; }
.crv-chip.is-active { background:var(--accent); border-color:var(--accent); color:#fff; }

/* Photo/video strip */
.crv-stripwrap { margin-bottom:6px; }
.crv-strip-head { display:flex; align-items:baseline; justify-content:space-between; margin:8px 2px 14px; }
.crv-strip-head h3 { margin:0; font-size:19px; font-weight:600; letter-spacing:-.01em; }
.crv-strip-count { font-size:14px; color:var(--sec); }
.crv-strip-rel { position:relative; }
.crv-strip-arrow { position:absolute; top:50%; transform:translateY(-50%); z-index:2; width:40px; height:40px; border-radius:50%; border:1px solid var(--sep); background:var(--card); color:var(--fg); cursor:pointer; box-shadow:0 4px 16px var(--shadow); font-size:18px; display:grid; place-items:center; }
.crv-strip-arrow.prev { left:-6px; }
.crv-strip-arrow.next { right:-6px; }
.crv-strip { display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x proximity; padding:2px 2px 6px; scrollbar-width:none; }
.crv-strip-item { position:relative; flex:none; width:128px; height:170px; border-radius:16px; overflow:hidden; border:1px solid var(--sep); background:var(--panel); cursor:pointer; padding:0; scroll-snap-align:start; transition:transform .2s; }
.crv-strip-item:hover { transform:translateY(-3px); }
.crv-strip-item img, .crv-strip-item video { width:100%; height:100%; object-fit:cover; display:block; }
.crv-strip-item video { position:absolute; inset:0; background:#0d0d0f; pointer-events:none; }
.crv-vplay { position:absolute; inset:0; display:grid; place-items:center; background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.42)); pointer-events:none; }
.crv-vplay > span { width:46px; height:46px; border-radius:50%; background:rgba(0,0,0,.42); display:grid; place-items:center; }
.crv-vplay i { width:0; height:0; border-style:solid; border-width:8px 0 8px 13px; border-color:transparent transparent transparent #fff; margin-left:3px; display:block; }

/* Toolbar */
.crv-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px 16px; margin-top:clamp(30px,4vw,44px); padding-bottom:18px; border-bottom:1px solid var(--sep); }
.crv-tb-left { display:flex; align-items:baseline; gap:12px; flex:0 1 auto; }
.crv-result { font-size:clamp(18px,2.4vw,22px); font-weight:600; letter-spacing:-.01em; }
.crv-clear { background:none; border:none; color:var(--accent); cursor:pointer; font-size:14px; font-weight:500; padding:0; }
.crv-tb-right { display:flex; align-items:center; gap:10px; flex:0 0 auto; }
.crv-search { position:relative; display:flex; align-items:center; }
.crv-search svg { position:absolute; left:12px; color:var(--ter); pointer-events:none; }
.crv-search input { height:36px; padding:0 12px 0 32px; border-radius:980px; border:1px solid var(--sep); background:var(--field); color:var(--fg); font-size:13px; outline:none; width:140px; }
.crv-sortwrap { position:relative; display:flex; align-items:center; }
.crv-sort { height:36px; padding:0 32px 0 14px; border-radius:980px; border:1px solid var(--sep); background:var(--field); color:var(--fg); font-size:13px; cursor:pointer; -webkit-appearance:none; appearance:none; outline:none; }
.crv-sortwrap span { position:absolute; right:13px; pointer-events:none; font-size:10px; color:var(--sec); }
.crv-filterchips { flex:1 1 100%; display:flex; flex-wrap:wrap; gap:8px; padding:2px 0; }

/* Review list */
.crv-list { display:flex; flex-direction:column; }
.crv-review { padding:26px 4px; border-bottom:1px solid var(--sep); }
.crv-rv-top { display:flex; align-items:center; gap:14px; margin-bottom:13px; }
.crv-avatar { width:46px; height:46px; border-radius:50%; flex:none; display:grid; place-items:center; color:#fff; font-size:15px; font-weight:600; }
.crv-rv-idbox { min-width:0; }
.crv-rv-nameline { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.crv-rv-name { font-size:16px; font-weight:600; }
.crv-verified { display:inline-flex; align-items:center; gap:4px; font-size:12px; color:var(--accent); font-weight:500; }
.crv-verified > span { width:15px; height:15px; border-radius:50%; background:var(--accent); display:grid; place-items:center; flex:none; }
.crv-rv-meta { display:flex; align-items:center; gap:10px; margin-top:4px; }
.crv-rv-stars { font-size:13.5px; letter-spacing:1.5px; line-height:1; }
.crv-rv-stars .full { color:var(--star); }
.crv-rv-stars .empty { color:var(--sep); }
.crv-rv-date { font-size:13px; color:var(--ter); }
.crv-rv-body { margin:0; font-size:clamp(15.5px,2vw,16.5px); line-height:1.55; color:var(--fg); max-width:76ch; text-wrap:pretty; }
.crv-rv-media { display:flex; gap:10px; margin-top:15px; flex-wrap:wrap; }
.crv-rv-mediaitem { position:relative; width:80px; height:80px; border-radius:13px; overflow:hidden; border:1px solid var(--sep); background:var(--panel); cursor:pointer; padding:0; flex:none; transition:transform .2s; }
.crv-rv-mediaitem:hover { transform:translateY(-2px); }
.crv-rv-mediaitem img, .crv-rv-mediaitem video { width:100%; height:100%; object-fit:cover; display:block; }
.crv-rv-mediaitem video { position:absolute; inset:0; background:#0d0d0f; pointer-events:none; }
.crv-rv-mediaitem .crv-vplay > span { width:26px; height:26px; }
.crv-rv-mediaitem .crv-vplay i { border-width:6px 0 6px 10px; margin-left:2px; }
.crv-rv-actions { display:flex; align-items:center; gap:14px; margin-top:17px; }
.crv-helpful { display:inline-flex; align-items:center; gap:7px; height:36px; padding:0 15px; border-radius:980px; font-size:13px; font-weight:600; cursor:pointer; border:1px solid var(--sep); background:var(--card); color:var(--fg); transition:background .2s,color .2s; }
.crv-helpful.is-active { background:var(--accent); border-color:var(--accent); color:#fff; }
.crv-helpful-q { font-size:13px; color:var(--ter); }

/* Sent banner (reseña enviada) */
.crv-banner { margin:18px 0 0; padding:14px 18px; border-radius:15px; background:var(--panel); color:var(--fg); font-size:14.5px; display:flex; align-items:center; gap:10px; }
.crv-banner b { font-weight:600; }
.crv-banner .crv-banner-x { margin-left:auto; background:none; border:none; color:var(--ter); cursor:pointer; font-size:15px; }

/* Empty */
.crv-empty { text-align:center; padding:64px 20px; color:var(--sec); }
.crv-empty-title { font-size:17px; font-weight:600; color:var(--fg); margin-bottom:6px; }
.crv-empty-sub { font-size:15px; margin-bottom:20px; }
.crv-empty button { height:42px; padding:0 22px; border-radius:980px; border:none; background:var(--accent); color:#fff; font-weight:600; cursor:pointer; }

/* Ver más */
.crv-morewrap { display:flex; justify-content:center; margin-top:32px; }
.crv-more { height:48px; padding:0 30px; border-radius:980px; border:1px solid var(--sep); background:var(--card); color:var(--accent); font-size:15px; font-weight:600; cursor:pointer; transition:background .2s; }
.crv-more:hover { background:var(--hair); }

/* Lightbox */
.crv-lb { position:fixed; inset:0; z-index:100060; background:var(--overlay); -webkit-backdrop-filter:blur(22px); backdrop-filter:blur(22px); display:flex; flex-direction:column; animation:crv-fade .25s ease; }
.crv-lb-top { flex:none; display:flex; align-items:center; justify-content:space-between; padding:18px 22px; color:#fff; }
.crv-lb-counter { font-size:14px; opacity:.85; font-variant-numeric:tabular-nums; }
.crv-lb-close { width:40px; height:40px; border-radius:50%; border:none; background:rgba(255,255,255,.16); color:#fff; cursor:pointer; font-size:16px; display:grid; place-items:center; }
.crv-lb-stage { flex:1; min-height:0; display:flex; align-items:center; justify-content:center; gap:12px; padding:0 12px; }
.crv-lb-nav { flex:none; width:46px; height:46px; border-radius:50%; border:none; background:rgba(255,255,255,.16); color:#fff; cursor:pointer; font-size:22px; display:grid; place-items:center; }
.crv-lb-media { flex:1; height:100%; display:flex; align-items:center; justify-content:center; min-width:0; }
.crv-lb-media img { max-width:100%; max-height:72vh; border-radius:14px; object-fit:contain; box-shadow:0 24px 70px rgba(0,0,0,.55); }
.crv-lb-media video { max-width:100%; max-height:72vh; border-radius:14px; background:#000; box-shadow:0 24px 70px rgba(0,0,0,.55); }
.crv-lb-foot { flex:none; padding:14px 22px 22px; color:#fff; }
.crv-lb-cap { text-align:center; margin-bottom:12px; }
.crv-lb-cap .name { font-size:15px; font-weight:600; }
.crv-lb-cap .date { font-size:12.5px; opacity:.7; }
.crv-lb-thumbs { display:flex; gap:8px; justify-content:flex-start; overflow-x:auto; padding-bottom:2px; max-width:520px; margin:0 auto; }
.crv-lb-thumb { position:relative; flex:none; width:52px; height:52px; border-radius:9px; overflow:hidden; cursor:pointer; padding:0; background:#333; border:2px solid transparent; opacity:.5; transition:opacity .2s; }
.crv-lb-thumb.is-active { border-color:#fff; opacity:1; }
.crv-lb-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.crv-lb-thumb .vid { position:absolute; inset:0; display:grid; place-items:center; background:linear-gradient(160deg,#2c2c30,#0d0d0f); }
.crv-lb-thumb .vid i { width:0; height:0; border-style:solid; border-width:5px 0 5px 8px; border-color:transparent transparent transparent #fff; margin-left:1px; display:block; }

/* Composer modal */
.crv-modal { position:fixed; inset:0; z-index:100060; background:rgba(0,0,0,.42); -webkit-backdrop-filter:blur(7px); backdrop-filter:blur(7px); display:flex; align-items:center; justify-content:center; padding:20px; animation:crv-fade .2s ease; }
.crv-modal-card { width:min(520px,100%); max-height:92vh; overflow-y:auto; background:var(--card); color:var(--fg); border-radius:26px; padding:clamp(22px,4vw,32px); box-shadow:0 30px 90px rgba(0,0,0,.4); animation:crv-pop .3s cubic-bezier(.2,.8,.2,1); }
.crv-modal-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }
.crv-modal-title { margin:0; font-size:22px; font-weight:700; letter-spacing:-.015em; }
.crv-modal-close { width:34px; height:34px; border-radius:50%; border:none; background:var(--chip); color:var(--fg); cursor:pointer; font-size:14px; display:grid; place-items:center; }
.crv-rate-lab { font-size:13px; color:var(--sec); margin-bottom:9px; }
.crv-rate-row { display:flex; align-items:center; gap:12px; margin-bottom:18px; }
.crv-rate-stars { display:flex; gap:3px; flex:none; }
.crv-rate-star { background:none; border:none; cursor:pointer; font-size:32px; line-height:1; padding:0 2px; color:var(--sep); transition:color .15s; }
.crv-rate-star.on { color:var(--star); }
.crv-rate-txt { font-size:15px; color:var(--sec); }
.crv-ta { width:100%; min-height:170px; resize:vertical; padding:16px; border-radius:15px; border:1px solid var(--fieldBorder); background:var(--field); color:var(--fg); font-size:15px; outline:none; line-height:1.5; }
.crv-nameinput, .crv-emailinput { width:100%; height:48px; margin-top:12px; padding:0 15px; border-radius:15px; border:1px solid var(--fieldBorder); background:var(--field); color:var(--fg); font-size:15px; outline:none; }

/* Subida de fotos en el composer */
.crv-photos { margin-top:14px; }
.crv-add-photos { display:inline-flex; align-items:center; gap:8px; height:44px; padding:0 18px; border-radius:12px; border:1px dashed var(--fieldBorder); background:var(--field); color:var(--sec); font-size:14px; font-weight:500; cursor:pointer; }
.crv-add-photos:hover { color:var(--fg); border-color:var(--sec); }
.crv-photos-hint { margin-top:8px; font-size:12px; color:var(--ter); line-height:1.4; }
.crv-photo-previews { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.crv-photo-thumb { position:relative; width:66px; height:66px; border-radius:12px; overflow:hidden; border:1px solid var(--sep); }
.crv-photo-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.crv-photo-rm { position:absolute; top:3px; right:3px; width:20px; height:20px; border-radius:50%; border:none; background:rgba(0,0,0,.6); color:#fff; cursor:pointer; font-size:11px; line-height:1; display:grid; place-items:center; }
.crv-modal-actions { display:flex; gap:12px; margin-top:22px; }
.crv-cancel { flex:1; height:50px; border-radius:15px; border:1px solid var(--sep); background:var(--card); color:var(--fg); font-size:15px; font-weight:600; cursor:pointer; }
.crv-submit { flex:2; height:50px; border-radius:15px; border:none; font-size:15px; font-weight:600; background:var(--sep); color:var(--ter); cursor:not-allowed; transition:background .2s,color .2s; }
.crv-submit.enabled { background:var(--accent); color:#fff; cursor:pointer; }
.crv-modal-ok { text-align:center; padding:14px 4px 4px; }
.crv-modal-ok .tick { width:56px; height:56px; border-radius:50%; background:var(--accent); display:grid; place-items:center; margin:0 auto 16px; }
.crv-modal-ok h4 { margin:0 0 8px; font-size:19px; font-weight:700; }
.crv-modal-ok p { margin:0; font-size:15px; color:var(--sec); line-height:1.5; }

.crv-hidden { display:none !important; }

/* Móvil */
@media (max-width:600px) {
  .crv-tb-right { flex:1 1 100%; }
  .crv-search input { width:100%; }
  .crv-search { flex:1; }
}

/* ---------- Endurecimiento contra el tema (Woodmart) ----------
 * Woodmart fuerza en botones/inputs: MAYÚSCULAS, radio 0 y fuente DM Sans.
 * Restauramos con alta especificidad (.crv.crv[data-theme]) y !important,
 * cubriendo también el lightbox/composer portados a <body> (llevan .crv[data-theme]).
 */
.crv.crv[data-theme] * {
  font-family:inherit !important; /* usar la fuente por defecto del sitio (cascada desde la raíz .crv) */
}
/* El TÍTULO de la sección usa la fuente de títulos del tema (DM Sans), no la del cuerpo (Poppins) — como era
   nativo. Mayor especificidad que el comodín de arriba para vencer su !important. */
.crv.crv[data-theme] .crv-title { font-family:var(--wd-title-font,"DM Sans",Arial,Helvetica,sans-serif) !important; }
.crv.crv[data-theme] button,
.crv.crv[data-theme] input,
.crv.crv[data-theme] select,
.crv.crv[data-theme] textarea {
  text-transform:none !important;
  letter-spacing:normal !important;
  min-height:0;
}
.crv.crv[data-theme] .crv-writebtn,
.crv.crv[data-theme] .crv-chip,
.crv.crv[data-theme] .crv-more,
.crv.crv[data-theme] .crv-helpful,
.crv.crv[data-theme] .crv-search input,
.crv.crv[data-theme] .crv-sort,
.crv.crv[data-theme] .crv-empty button { border-radius:980px !important; }
.crv.crv[data-theme] .crv-strip-arrow,
.crv.crv[data-theme] .crv-lb-close,
.crv.crv[data-theme] .crv-lb-nav,
.crv.crv[data-theme] .crv-modal-close { border-radius:50% !important; }
.crv.crv[data-theme] .crv-ta,
.crv.crv[data-theme] .crv-nameinput,
.crv.crv[data-theme] .crv-emailinput,
.crv.crv[data-theme] .crv-cancel,
.crv.crv[data-theme] .crv-submit { border-radius:15px !important; }
.crv.crv[data-theme] .crv-nameinput,
.crv.crv[data-theme] .crv-emailinput { height:48px !important; }
.crv.crv[data-theme] .crv-strip-item { border-radius:16px !important; }
.crv.crv[data-theme] .crv-rv-mediaitem { border-radius:13px !important; }
.crv.crv[data-theme] .crv-lb-thumb { border-radius:9px !important; }
.crv.crv[data-theme] .crv-avatar,
.crv.crv[data-theme] .crv-ai-icon,
.crv.crv[data-theme] .crv-verified > span { border-radius:50% !important; }

/* Woodmart también fuerza en botones: fondo gris, texto gris, borde 0 y
 * position:relative. Restauramos fondo/color/borde/posición por elemento. */
.crv.crv[data-theme] .crv-writebtn { background:var(--accent) !important; color:#fff !important; border:none !important; }
.crv.crv[data-theme] .crv-writebtn:hover { background:var(--accentPress) !important; }
.crv.crv[data-theme] .crv-chip { background:var(--card) !important; color:var(--fg) !important; border:1px solid var(--sep) !important; }
.crv.crv[data-theme] .crv-chip.is-active { background:var(--accent) !important; border-color:var(--accent) !important; color:#fff !important; }
.crv.crv[data-theme] .crv-more { background:var(--card) !important; color:var(--accent) !important; border:1px solid var(--sep) !important; }
.crv.crv[data-theme] .crv-more:hover { background:var(--hair) !important; }
.crv.crv[data-theme] .crv-empty button { background:var(--accent) !important; color:#fff !important; border:none !important; }
.crv.crv[data-theme] .crv-clear { background:none !important; color:var(--accent) !important; border:none !important; }
/* Flechas de la tira: Woodmart pone position:relative → las sacamos a absolute */
.crv.crv[data-theme] .crv-strip-arrow {
  position:absolute !important; top:50% !important; transform:translateY(-50%) !important;
  background:var(--card) !important; color:var(--fg) !important;
  border:1px solid var(--sep) !important; box-shadow:0 4px 16px var(--shadow) !important;
}
.crv.crv[data-theme] .crv-strip-arrow.prev { left:-6px !important; right:auto !important; }
.crv.crv[data-theme] .crv-strip-arrow.next { right:-6px !important; left:auto !important; }
/* Campo de búsqueda: recuperar padding para la lupa y el fondo */
.crv.crv[data-theme] .crv-search input { padding:0 12px 0 32px !important; background:var(--field) !important; color:var(--fg) !important; border:1px solid var(--sep) !important; }
.crv.crv[data-theme] .crv-sort { background:var(--field) !important; color:var(--fg) !important; border:1px solid var(--sep) !important; padding:0 32px 0 14px !important; }
/* Composer */
.crv.crv[data-theme] .crv-ta,
.crv.crv[data-theme] .crv-nameinput,
.crv.crv[data-theme] .crv-emailinput { background:var(--field) !important; color:var(--fg) !important; border:1px solid var(--fieldBorder) !important; }
.crv.crv[data-theme] .crv-add-photos { background:var(--field) !important; color:var(--sec) !important; border:1px dashed var(--fieldBorder) !important; border-radius:12px !important; }
.crv.crv[data-theme] .crv-photo-rm { position:absolute !important; top:4px !important; right:4px !important; left:auto !important; bottom:auto !important; width:22px !important; height:22px !important; min-width:0 !important; padding:0 !important; margin:0 !important; border-radius:50% !important; background:rgba(0,0,0,.62) !important; color:#fff !important; border:none !important; box-shadow:0 1px 4px rgba(0,0,0,.35) !important; display:grid !important; place-items:center !important; line-height:1 !important; font-size:12px !important; }
.crv.crv[data-theme] .crv-cancel { background:var(--card) !important; color:var(--fg) !important; border:1px solid var(--sep) !important; }
.crv.crv[data-theme] .crv-submit { background:var(--sep) !important; color:var(--ter) !important; border:none !important; }
.crv.crv[data-theme] .crv-submit.enabled { background:var(--accent) !important; color:#fff !important; }
.crv.crv[data-theme] .crv-modal-close { background:var(--chip) !important; color:var(--fg) !important; border:none !important; }
.crv.crv[data-theme] .crv-rate-star { background:none !important; border:none !important; color:var(--sep) !important; font-size:32px !important; line-height:1 !important; padding:0 2px !important; margin:0 !important; height:auto !important; min-height:0 !important; }
.crv.crv[data-theme] .crv-rate-star.on { color:var(--star) !important; }
.crv.crv[data-theme] .crv-ta { min-height:170px !important; padding:16px !important; }
/* Lightbox (portado a body) */
.crv.crv[data-theme] .crv-lb-close,
.crv.crv[data-theme] .crv-lb-nav { background:rgba(255,255,255,.16) !important; color:#fff !important; border:none !important; }
.crv.crv[data-theme] .crv-lb-thumb { border:2px solid transparent !important; }
.crv.crv[data-theme] .crv-lb-thumb.is-active { border-color:#fff !important; }

/* ---------- Historias (estilo Instagram) ---------- */
.crv-st { position:fixed; inset:0; z-index:100070; background:#000; overflow:hidden; animation:crv-fade .2s ease; }
.crv-st-media { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
.crv-st-media img, .crv-st-media video { max-width:100%; max-height:100%; object-fit:contain; display:block; }
.crv-st-zone { position:absolute; top:0; height:100%; border:none; background:transparent; cursor:pointer; z-index:2; padding:0; -webkit-tap-highlight-color:transparent; }
.crv-st-zone.prev { left:0; width:32%; }
.crv-st-zone.next { right:0; width:68%; }
.crv-st-top { position:absolute; top:0; left:0; right:0; z-index:3; padding:14px 16px 40px; background:linear-gradient(180deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.42) 55%,rgba(0,0,0,0) 100%); pointer-events:none; }
.crv-st-top button { pointer-events:auto; }
.crv-st-bars { display:flex; gap:4px; margin-bottom:14px; }
.crv-st-bar { flex:1; height:3px; border-radius:3px; background:rgba(255,255,255,.35); overflow:hidden; }
.crv-st-bar-fill { display:block; height:100%; width:0; background:#fff; border-radius:3px; }
.crv-st-head { display:flex; align-items:flex-start; gap:10px; padding-right:44px; }
.crv-st-avatar { width:40px; height:40px; border-radius:50%; flex:none; display:grid; place-items:center; color:#fff; font-size:15px; font-weight:600; }
.crv-st-idcol { flex:1; min-width:0; color:#fff; }
.crv-st-name { font-size:15px; font-weight:600; }
.crv-st-metaline { display:flex; align-items:center; gap:9px; margin-top:3px; flex-wrap:wrap; }
.crv-st-stars { font-size:12.5px; letter-spacing:1px; line-height:1; }
.crv-st-stars .full { color:var(--star); }
.crv-st-stars .empty { color:rgba(255,255,255,.35); }
.crv-st-verified { font-size:12px; color:rgba(255,255,255,.9); font-weight:500; display:inline-flex; align-items:center; gap:4px; }
.crv-st-close { position:absolute; top:20px; right:14px; width:40px; height:40px; border-radius:50%; border:none; background:rgba(0,0,0,.5); color:#fff; cursor:pointer; display:grid; place-items:center; flex:none; }
.crv-st-body { margin-top:12px; color:#fff; font-size:14px; line-height:1.5; max-width:680px; }
.crv-st-body .crv-st-text { text-shadow:0 1px 4px rgba(0,0,0,.55); }
.crv-st-more { background:none; border:none; color:#fff; font-weight:600; cursor:pointer; padding:0; font-size:14px; text-decoration:underline; text-shadow:0 1px 4px rgba(0,0,0,.55); }

/* Endurecimiento historias vs Woodmart */
.crv.crv[data-theme] .crv-st-zone { background:transparent !important; border:none !important; }
.crv.crv[data-theme] .crv-st-close { position:absolute !important; top:20px !important; right:14px !important; left:auto !important; bottom:auto !important; width:40px !important; height:40px !important; min-width:0 !important; padding:0 !important; border-radius:50% !important; background:rgba(0,0,0,.5) !important; box-shadow:none !important; color:#fff !important; border:none !important; display:grid !important; place-items:center !important; line-height:1 !important; }
.crv.crv[data-theme] .crv-st-more { background:none !important; color:#fff !important; border:none !important; text-transform:none !important; }

/* ===== v1.1.4 · Tamaños compactos (fuente del sitio; reducir títulos/promedio hacia lo nativo) ===== */
.crv.crv[data-theme] .crv-eyebrow{ font-size:12px !important; }
.crv.crv[data-theme] .crv-title{ font-size:clamp(22px,2.8vw,26px) !important; line-height:1.15 !important; }
.crv.crv[data-theme] .crv-subtitle{ font-size:14px !important; }
.crv.crv[data-theme] .crv-avg{ font-size:40px !important; }
.crv.crv[data-theme] .crv-total,.crv.crv[data-theme] .crv-recommend{ font-size:13px !important; }
.crv.crv[data-theme] .crv-ai-title{ font-size:15px !important; }
.crv.crv[data-theme] .crv-ai-text{ font-size:14px !important; line-height:1.5 !important; }
.crv.crv[data-theme] .crv-rv-name{ font-size:14px !important; }
.crv.crv[data-theme] .crv-rv-body{ font-size:14px !important; line-height:1.5 !important; }
.crv.crv[data-theme] .crv-writebtn{ font-size:13px !important; }
.crv.crv[data-theme] .crv-strip-head h3{ font-size:15px !important; }
.crv.crv[data-theme] .crv-result{ font-size:13px !important; }
