/* NOVA Reviews — estilos base */
.nrv2{ --bg:#fff; --ink:#0b1220; --muted:#5b6b83; --line:#e6eaf1; --ring:rgba(10,20,40,.06); --ok:#059669; --brand:#0b1220; --radius:22px; --gap:18px }
.nrv2{ display:block; background:var(--bg); border:1px solid var(--line); border-radius:var(--radius); padding:clamp(16px,2vw,24px); box-shadow:0 4px 22px var(--ring) }
.nrv2__trust{ display:grid; grid-template-columns:1fr auto; gap:12px; align-items:center; margin-bottom:10px }
.nrv2__trust-main{ display:flex; gap:12px; align-items:center; flex-wrap:wrap }
.nrv2__score{ font-size:30px; font-weight:900; color:var(--ink) }
.nrv2__meta{ font-size:13px; color:var(--muted) }
.nrv2__badges{ display:flex; gap:8px; flex-wrap:wrap }
.nrv2__seal{ font-size:12px; padding:4px 10px; border:1px solid var(--line); border-radius:999px; background:#fff }
.nrv2__seal--green{ border-color:#10b98133; background:#ecfdf5; color:#065f46 }
.nrv2__linkall{ font-size:13px; color:var(--ink); text-decoration:underline }

.nrv2__ugc{ border:1px solid var(--line); border-radius:16px; padding:10px; margin:8px 0 }
.nrv2__ugc-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:8px }
.nrv2__pill{ border:1px solid var(--line); background:#fff; border-radius:999px; padding:6px 10px; font-size:12px; cursor:pointer }
.nrv2__pill.is-active{ box-shadow:0 0 0 3px rgba(10,20,40,.06) }
.nrv2__seeall{ border:1px solid var(--line); background:#fff; border-radius:10px; font-size:12px; padding:6px 10px; cursor:pointer }
.nrv2__strip{ display:flex; gap:8px; overflow:auto; scroll-snap-type:x mandatory; padding-bottom:4px }
.nrv2__tile{ flex:0 0 84px; height:84px; border:1px solid var(--line); border-radius:12px; overflow:hidden; display:grid; place-items:center; scroll-snap-align:start; background:#fff }
.nrv2__tile img{ width:100%; height:100%; object-fit:cover }
.nrv2__tile--vid{ font-weight:700 }

.nrv2__dist{ display:grid; gap:8px; margin:8px 0 }
.nrv2__bar{ display:grid; grid-template-columns:40px 1fr 44px; gap:8px; align-items:center; border:1px solid var(--line); background:#fff; border-radius:10px; padding:6px 8px; cursor:pointer }
.nrv2__bar.is-active{ box-shadow:0 0 0 3px rgba(10,20,40,.06) }
.nrv2__lab{ font-size:12px; color:var(--muted) }
.nrv2__track{ height:8px; background:#eef2f7; border-radius:999px; overflow:hidden }
.nrv2__track>span{ display:block; height:100%; background:var(--brand); opacity:.9; }
.nrv2__pct{ font-size:12px; color:var(--muted); text-align:right }

.nrv2__fit{ border:1px solid var(--line); border-radius:16px; padding:10px; margin:8px 0 }
.nrv2__fitline{ display:grid; grid-template-columns:64px 1fr 64px; gap:10px; align-items:center }
.nrv2__fittrack{ position:relative; height:8px; border-radius:999px; background:linear-gradient(90deg,#fee2e2,#eef2f7,#dcfce7) }
.nrv2__fittrack>span{ position:absolute; top:50%; transform:translate(-50%,-50%); width:18px; height:18px; border:2px solid #fff; background:#0ea5e9; box-shadow:0 3px 16px rgba(0,0,0,.2); border-radius:999px }
.nrv2__fitmeta{ font-size:12px; color:var(--muted); margin-top:6px }

.nrv2__summary{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:8px 0 }
.nrv2__chips{ display:flex; flex-wrap:wrap; gap:8px }
.nrv2__chip{ border:1px solid var(--line); border-radius:999px; padding:6px 10px; font-size:12px }
.nrv2__chip--pro{ background:#ecfdf5; color:#065f46; border-color:#10b98133 }
.nrv2__chip--con{ background:#fef2f2; color:#b91c1c; border-color:#ef444433 }

.nrv2__filters{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:6px 0; border:1px solid var(--line); border-radius:14px; padding:8px }
.nrv2__fctl{ font-size:13px; color:var(--muted); display:flex; align-items:center; gap:6px }
.nrv2__fctl select{ border:1px solid var(--line); border-radius:10px; padding:6px 10px; background:#fff; color:var(--ink); font-size:13px }

.nrv2__list{ display:grid; gap:14px; min-height:140px }
.nrv2__item{ border:1px solid var(--line); border-radius:16px; padding:14px; background:#fff; box-shadow:0 1px 12px var(--ring) }
.nrv2__ihead{ display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center; margin-bottom:6px }
.nrv2__avatar{ width:36px; height:36px; border-radius:999px; border:1px solid var(--line); display:grid; place-items:center; font-weight:800; color:var(--ink) }
.nrv2__author{ color:var(--ink) }
.nrv2__sub{ font-size:12px; color:var(--muted) }
.nrv2__right{ display:flex; gap:8px; align-items:center }
.nrv2__badge{ font-size:11px; padding:2px 8px; background:#0596691a; color:#047857; border:1px solid #10b9813d; border-radius:999px }
.nrv2__variant{ display:flex; gap:10px; font-size:12px; color:var(--muted); margin-bottom:4px }
.nrv2__title{ font-size:15px; margin:2px 0 4px; color:var(--ink) }
.nrv2__body{ color:#1f2937; font-size:15px; line-height:1.6 }
.nrv2__media{ display:grid; grid-template-columns:repeat(6,1fr); gap:6px; margin:8px 0 6px }
.nrv2__thumb{ display:block; border:1px solid var(--line); border-radius:12px; overflow:hidden }
.nrv2__thumb img{ width:100%; height:100%; object-fit:cover; aspect-ratio:1/1 }
.nrv2__thumb--vid{ display:grid; place-items:center; font-weight:700 }
.nrv2__reply{ background:#f8fafc; border:1px solid #e2e8f0; border-radius:12px; padding:10px; margin-top:6px; font-size:14px }
.nrv2__actions{ display:flex; gap:10px; margin-top:8px }
.nrv2__help, .nrv2__report{ border:1px solid var(--line); background:#fff; border-radius:10px; padding:6px 10px; font-size:13px; cursor:pointer }
.nrv2__help:hover, .nrv2__report:hover{ box-shadow:0 2px 8px var(--ring) }
.nrv2__pg{ display:flex; gap:10px; align-items:center; justify-content:center; margin-top:8px }
.nrv2__pg button{ border:1px solid var(--line); background:#fff; border-radius:12px; padding:8px 14px; cursor:pointer }
.nrv2__pg .nrv2__cur,.nrv2__pg .nrv2__of,.nrv2__pg .nrv2__tot{ font-size:14px; color:var(--muted) }
.nrv2__micros{ display:flex; gap:10px; flex-wrap:wrap; font-size:12px; color:var(--muted) }

/* Lightbox */
.nrv2-lightbox{ position:fixed; inset:0; display:none; background:rgba(2,6,23,.9); z-index:100000; align-items:center; justify-content:center }
.nrv2-lightbox.is-open{ display:flex }
.nrv2-lightbox__img{ max-width:94vw; max-height:88vh }
.nrv2-lightbox__close, .nrv2-lightbox__prev, .nrv2-lightbox__next{
  position:absolute; top:16px; width:42px; height:42px; border:0; border-radius:999px; background:#fff;
  box-shadow:0 6px 22px rgba(0,0,0,.25); cursor:pointer; display:flex; align-items:center; justify-content:center
}
.nrv2-lightbox__close{ right:16px }
.nrv2-lightbox__prev{ left:16px; top:50%; transform:translateY(-50%) }
.nrv2-lightbox__next{ right:16px; top:50%; transform:translateY(-50%) }

/* ===== Sitewide (nrva*) ===== */
.nrva{ --ink:#111; --turq:#0F766E; --blue:#1D4ED8; --line:#e6eaf1; --ring:rgba(10,20,40,.06) }
.nrva{ display:block; border:1px solid var(--line); border-radius:22px; padding:14px; box-shadow:0 4px 22px var(--ring); background:#fff }
.nrva__hero{ display:flex; align-items:center; justify-content:space-between; gap:12px; border:1px solid var(--line); border-radius:18px; padding:12px; background:linear-gradient(135deg,#f8fafc 0%, #eef6ff 100%); margin-bottom:12px }
.nrva__hero-score{ font-size:28px; font-weight:900; color:var(--ink) }
.nrva__hero-meta{ font-size:13px; color:#475569 }
.nrva__hero-badges{ display:flex; gap:8px; flex-wrap:wrap }
.nrva__hero-seal{ font-size:12px; padding:4px 8px; border-radius:999px; border:1px solid var(--line); background:#fff }
.nrva__hero-seal--ver{ border-color: rgba(15,118,110,.25); color:#0F766E; }
.nrva__hero-seal--auth{ border-color: rgba(29,78,216,.25); color:#1D4ED8; }
.nrva__hero-stars{ display:flex; gap:2px; }
.nrva__star{ color:#cbd5e1 } .nrva__star.is-on{ color:#0ea5e9 }

.nrva__ugc{ border:1px solid var(--line); border-radius:16px; padding:10px; margin:8px 0 }
.nrva__ugc-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:8px }
.nrva__pill{ border:1px solid var(--line); background:#fff; border-radius:999px; padding:6px 10px; font-size:12px; cursor:pointer }
.nrva__pill.is-active{ box-shadow:0 0 0 3px rgba(10,20,40,.06) }
.nrva__seeall{ border:1px solid var(--line); background:#fff; border-radius:10px; font-size:12px; padding:6px 10px; text-decoration:none; color:#111 }
.nrva__strip{ display:flex; gap:8px; overflow:auto; scroll-snap-type:x mandatory; padding-bottom:4px }
.nrva__tile{ flex:0 0 120px; height:120px; border:1px solid var(--line); border-radius:12px; overflow:hidden; display:grid; place-items:center; scroll-snap-align:start; background:#fff }
.nrva__tile img{ width:100%; height:100%; object-fit:cover }
.nrva__tile--vid{ font-weight:700 }
.nrva__tile:focus{ outline:2px solid #0ea5e9; outline-offset:2px }

.nrva__content{ display:grid; grid-template-columns:280px 1fr; gap:14px; align-items:start }
.nrva__filters{ border:1px solid var(--line); border-radius:16px; padding:10px; background:#fff; position:sticky; top:10px }
.nrva__form{ display:grid; gap:10px }
.nrva__search input{ width:100%; border:1px solid var(--line); border-radius:12px; padding:8px 10px }
.nrva__chips{ display:flex; gap:8px; flex-wrap:wrap; font-size:13px; color:#475569 }
.nrva__stars{ display:grid; gap:4px; font-size:13px; color:#475569 }
.nrva__selects{ display:grid; gap:8px; font-size:13px; color:#475569 }
.nrva__selects select, .nrva__selects input{ width:100%; border:1px solid var(--line); border-radius:10px; padding:6px 10px }
.nrva__order select{ border:1px solid var(--line); border-radius:10px; padding:6px 10px }
.nrva__submit button{ border:1px solid var(--line); background:#111; color:#fff; border-radius:999px; padding:8px 12px; cursor:pointer }

.nrva__main{ display:grid; gap:10px }
.nrva__list{ display:grid; gap:12px }
.nrva__item{ border:1px solid var(--line); border-radius:18px; padding:12px; background:#fff; box-shadow:0 1px 12px var(--ring) }
.nrva__ihead{ display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center }
.nrva__avatar{ width:36px; height:36px; border-radius:999px; border:1px solid var(--line); display:grid; place-items:center; font-weight:800; color:#111 }
.nrva__author{ color:#111 }
.nrva__sub{ font-size:12px; color:#64748b }
.nrva__right{ display:flex; gap:8px; align-items:center }
.nrva__badge{ font-size:11px; padding:2px 8px; border-radius:999px; background:#ecfdf5; color:#0F766E; border:1px solid rgba(15,118,110,.25) }
.nrva__pill{ display:flex; gap:8px; flex-wrap:wrap; margin:6px 0 }
.nrva__prod{ display:inline-flex; align-items:center; gap:6px; padding:4px 8px; border:1px solid var(--line); border-radius:999px; text-decoration:none; color:#111; background:#fff }
.nrva__tag{ display:inline-flex; align-items:center; gap:6px; padding:4px 8px; border:1px solid var(--line); border-radius:999px; font-size:12px; color:#475569 }
.nrva__title{ font-size:15px; margin:2px 0 4px; color:#111 }
.nrva__body{ color:#111; font-size:15px; line-height:1.6 }
.nrva__media{ display:grid; grid-template-columns:repeat(6,1fr); gap:6px; margin:8px 0 }
.nrva__thumb{ display:block; border:1px solid var(--line); border-radius:12px; overflow:hidden }
.nrva__thumb img{ width:100%; height:100%; object-fit:cover; aspect-ratio:1/1 }
.nrva__thumb--vid{ display:grid; place-items:center; font-weight:700 }

.nrva__reply{ background:#f8fafc; border:1px solid #e2e8f0; border-radius:12px; padding:10px; margin-top:6px; font-size:14px }
.nrva__actions{ display:flex; gap:10px; margin-top:8px }
.nrva__help, .nrva__report{ border:1px solid var(--line); background:#fff; border-radius:10px; padding:6px 10px; font-size:13px; cursor:pointer }
.nrva__help:hover, .nrva__report:hover{ box-shadow:0 2px 8px var(--ring) }
.nrva__empty{ border:1px dashed var(--line); border-radius:12px; padding:12px; text-align:center; color:#64748b }

.nrva__pg{ display:flex; gap:10px; align-items:center; justify-content:center; }
.nrva__nav{ border:1px solid var(--line); border-radius:10px; padding:6px 10px; background:#fff; color:#111; text-decoration:none }
.nrva__nav.is-disabled{ opacity:.5; pointer-events:none }
.nrva__nums{ display:flex; gap:6px; list-style:none; padding:0; margin:0 }
.nrva__num{ display:inline-block; border:1px solid var(--line); border-radius:8px; padding:6px 10px; background:#fff; color:#111; text-decoration:none }
.nrva__num.is-active{ background:#111; color:#fff; }
.nrva__gap{ color:#94a3b8; }

.nrva__foot{ display:flex; gap:12px; justify-content:center; margin-top:12px }
.nrva__foot-link{ color:#111; text-decoration:underline; font-size:13px }

@media (max-width: 920px){
  .nrva__content{ grid-template-columns:1fr }
  .nrva__filters{ position:relative }
  .nrva__media{ grid-template-columns:repeat(4,1fr) }
}
@media (max-width: 560px){
  .nrva__media{ grid-template-columns:repeat(3,1fr) }
}
@media (max-width: 380px){
  .nrva__media{ grid-template-columns:repeat(2,1fr) }
}