.nx-reviews-widget{
          --nxrv-text:   var(--nx-text,   var(--nxp-text,  #1b1b1b));
          --nxrv-muted:  var(--nx-muted,  var(--nxp-muted, #6b7280));
          --nxrv-line:   var(--nx-line,   var(--nxp-line,  #e7e7e7));
          --nxrv-surface:var(--nx-surface,var(--nxp-surface,rgba(255,255,255,.7)));
          --brand1:      var(--nx-p1,     var(--nxp-1,     #d4a373));
          --brand2:      var(--nx-p2,     var(--nxp-2,     #b68452));
          --brand3:      var(--nx-p3,     var(--nxp-3,     #9ca3af));
          --brand4:      var(--nx-p4,     var(--nxp-4,     #111827));
          --brand5:      var(--nx-p5,     var(--nxp-5,     #f3f4f6));
          --nxrv-shadow: 0 6px 16px rgba(36,36,36,.10);
          --nxrv-radius: 18px; --nxrv-radius-sm: 12px;
          -webkit-text-size-adjust: 100%;
        }
        .nxrv-topbar{display:flex; align-items:center; justify-content:space-between; margin:0 0 12px;}
        .nxrv-title{margin:0; font-size:18px; font-weight:900; color:var(--nxrv-text);}
        .nxrv-avg{display:flex; align-items:center; gap:8px;}
        .nxrv-avg-num{order:1; font-weight:800; color:var(--nxrv-text);}
        .nxrv-stars-avg{order:2;}
        .nxrv-jan{ color: color-mix(in oklab, var(--brand1) 70%, var(--brand2)); font-weight:900; }
        .nxrv-list{ display:grid; gap:16px; }
        .nxrv-card{ border:1px solid var(--nxrv-line); border-radius:var(--nxrv-radius); background:var(--nxrv-surface); backdrop-filter:none; box-shadow:var(--nxrv-shadow); padding:16px; display:grid; gap:12px; }
        .nxrv-head{display:flex; align-items:flex-start; justify-content:space-between; gap:12px;}
        .nxrv-usercol{display:grid; gap:4px; min-width:0;}
        .nxrv-name{font-weight:800; font-size:14px; color:var(--nxrv-text); line-height:1.4; display:flex; align-items:center; gap:6px; flex-wrap:wrap; max-width: min(70vw, 420px);}
        .nxrv-name.long{ font-size:13px; }
        .nxrv-fn,.nxrv-ln{white-space:nowrap;}
        .nxrv-buyer-mini{width:16px;height:16px; filter:hue-rotate(10deg) saturate(1.2);}
        .nxrv-buyer-mini-wrap{ position:relative; display:inline-block; }
        .nxrv-buyer-mini-wrap::after{content:""; position:absolute; inset:-30%; background:linear-gradient(120deg, transparent 45%, rgba(255,255,255,.9) 50%, transparent 55%); transform:translateX(-120%); animation:nxrv-shine 2.8s linear infinite; pointer-events:none;}
        .nxrv-date{font-size:12px; color:var(--nxrv-muted); line-height:1.4;}
        @keyframes nxrv-shine { to { transform:translateX(120%);} }
        .nxrv-meta{display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; min-width:160px;}
        .nxrv-chip{font-size:11px; border-radius:999px; padding:4px 8px; line-height:1.2; font-weight:700; border:1px solid var(--nxrv-line); background:linear-gradient(180deg,#fff, var(--brand5)); color:#111; box-shadow:0 1px 3px rgba(0,0,0,.06); margin-inline:2px;}
        .nxrv-buyer{background:linear-gradient(180deg,var(--brand1),var(--brand2)); color:#fff; border-color:transparent; box-shadow:0 2px 6px rgba(0,0,0,.10); position:relative; overflow:hidden;}
        .nxrv-buyer::after{ content:""; position:absolute; inset:-50%; background:linear-gradient(110deg, transparent 45%, rgba(255,255,255,.65) 50%, transparent 55%); transform:translateX(-120%); animation:nxrv-shine 3.6s ease-in-out infinite; pointer-events:none; }
        .nxrv-prods{display:flex; gap:8px; min-height:32px; padding-inline:4px; max-width:min(60vw,380px); overflow:auto; scroll-padding-inline:8px;}
        .nxrv-prods::-webkit-scrollbar{height:4px;}
        .nxrv-prod{flex:0 0 auto; width:32px; height:32px; border-radius:8px; overflow:hidden; border:1px solid var(--nxrv-line); background:#fff; box-shadow:0 2px 6px rgba(0,0,0,.08);}
        .nxrv-prod img{width:100%; height:100%; object-fit:cover; display:block;}
        .nxrv-stars-holder{ position:relative; width:auto; height:22px; min-width:116px; }
        .nxrv-stars-holder .nxrv-stars-card,
        .nxrv-stars-holder .nxrv-honor-layer{ position:absolute; right:0; top:50%; transform:translateY(-50%); transition:opacity .6s ease, transform .6s ease; }
        .nxrv-stars{ display:flex; gap:4px; align-items:center; }
        .nxrv-stars .star{ width:18px; height:18px; display:inline-block; }
        .nxrv-stars .star::before{ content:""; display:block; width:100%; height:100%; -webkit-mask-image: var(--nxrv-icon-star-empty); mask-image: var(--nxrv-icon-star-empty); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; background: color-mix(in oklab, var(--brand2) 70%, white); filter: drop-shadow(0 1px 2px rgba(0,0,0,.12)); }
        .nxrv-stars .star.full::before{ -webkit-mask-image: var(--nxrv-icon-star-full); mask-image: var(--nxrv-icon-star-full); background: linear-gradient(180deg, color-mix(in oklab, var(--brand1) 85%, white), color-mix(in oklab, var(--brand2) 85%, white)); }
        .nxrv-stars .star.half::before{ -webkit-mask-image: var(--nxrv-icon-star-half); mask-image: var(--nxrv-icon-star-half); background: linear-gradient(180deg, color-mix(in oklab, var(--brand1) 85%, white), color-mix(in oklab, var(--brand2) 85%, white)); transform: scaleX(-1); }
        .nxrv-honor-layer{ display:flex; align-items:center; gap:6px; opacity:0; pointer-events:none; transform:translateY(-35%); }
        .nxrv-honor-layer .ico{ width:20px; height:20px; -webkit-mask: var(--nxrv-icon-honor) center/contain no-repeat; mask: var(--nxrv-icon-honor) center/contain no-repeat; background: linear-gradient(135deg, color-mix(in oklab, var(--brand1) 80%, white), color-mix(in oklab, var(--brand2) 80%, white)); background-size:200% 200%; animation: nxrvGrad 4s ease-in-out infinite, nxrvBlink 3.2s ease-in-out infinite; filter: drop-shadow(0 2px 6px rgba(0,0,0,.15)); }
        .nxrv-honor-layer .txt{ font-weight:800; font-size:11px; color:var(--nxrv-text); }
        @keyframes nxrvGrad { 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
        @keyframes nxrvBlink{ 0%,100%{opacity:1} 50%{opacity:.8} }
        .nxrv-stars-holder.swap-on .nxrv-stars-card{ opacity:0; transform:translateY(-110%); visibility:hidden; }
        .nxrv-stars-holder.swap-on .nxrv-honor-layer{ opacity:1; transform:translateY(-50%); }
        .nxrv-body{font-size:15px; color:var(--nxrv-text); line-height:1.7; word-wrap:break-word;}
        .nxrv-body p{margin:0 0 10px;} .nxrv-body p:last-child{margin-bottom:0;}
        .nxrv-medias-wrap{overflow-x:auto; -webkit-overflow-scrolling:touch; padding-inline:14px; scroll-padding-inline:14px;}
        .nxrv-medias{display:flex; gap:10px; min-height:84px;}
        .nxrv-media{position:relative; flex:0 0 auto; width:84px; height:84px; border-radius:14px; overflow:hidden; border:1px solid var(--nxrv-line); background:#000; box-shadow:0 2px 6px rgba(0,0,0,.10); cursor:pointer;}
        .nxrv-media img, .nxrv-media video{width:100%; height:100%; object-fit:cover; display:block; position:relative; z-index:1;}
        .nxrv-video .nxrv-play{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:46px; height:46px; z-index:3; pointer-events:none; display:block; backface-visibility:hidden; }
        .nxrv-video .nxrv-play::before{ content:""; display:block; width:100%; height:100%; -webkit-mask: var(--nxrv-icon-play) center/contain no-repeat; mask: var(--nxrv-icon-play) center/contain no-repeat; background: linear-gradient(135deg, color-mix(in oklab, var(--brand1) 85%, white), color-mix(in oklab, var(--brand2) 85%, white), color-mix(in oklab, var(--brand1) 85%, white)); background-size: 200% 200%; animation:nxrvGrad 4s ease-in-out infinite; filter: drop-shadow(0 2px 6px rgba(0,0,0,.55)); }
        .nxrv-fab{ position:fixed; right:16px; bottom:16px; z-index:999; height:58px; border-radius:16px; border:1px solid rgba(0,0,0,.08); background:linear-gradient(180deg,#ffffffee,#ffffff88); backdrop-filter:none; box-shadow:0 10px 25px rgba(0,0,0,.18); display:flex; align-items:center; gap:10px; padding:0 14px; cursor:pointer; -webkit-tap-highlight-color:transparent; width:58px; transition:width .35s ease;}
        .nxrv-fab-waves{ position:absolute; inset:0; border-radius:16px; background:radial-gradient(circle at 50% 50%, color-mix(in oklab, var(--brand1) 40%, transparent), transparent 60%); animation:nxrv-ripple 3.2s ease-out infinite; }
        .nxrv-fab-img{ width:28px; height:28px; position:relative; z-index:2; animation:nxrvHue 5.2s linear infinite; }
        .nxrv-fab-label{ overflow:hidden; white-space:nowrap; max-width:0; opacity:0; transition:max-width .3s ease, opacity .25s ease; font-weight:800; color:#000; }
        .nxrv-fab.expanding .nxrv-fab-label{ opacity:1; }
        @keyframes nxrv-ripple{0%{opacity:0; transform:scale(.6);} 15%{opacity:.5;} 60%{opacity:.25;} 100%{opacity:0; transform:scale(1.4);} }
        @keyframes nxrvHue{0%{filter:hue-rotate(0deg);} 100%{filter:hue-rotate(360deg);} }
        .nxrv-lightbox{ position:fixed; inset:0; display:none; z-index:2000; }
        .nxrv-lightbox.open{ display:block; }
        .nxrv-lb-overlay{ position:absolute; inset:0; background:rgba(0,0,0,.78); }
        .nxrv-lb-content{ position:absolute; inset:0; display:grid; place-items:center; width:100svw; height:100svh; padding:0; }
        .nxrv-lb-content img, .nxrv-lb-content video{ width:100svw; height:100svh; object-fit:contain; background:#000; }
        .nxrv-lb-close{ position:absolute; top:12px; left:12px; width:84px; height:84px; border:none; background:transparent; z-index:2100; cursor:pointer; }
        .nxrv-lb-close::before{ content:""; display:block; width:100%; height:100%; -webkit-mask: var(--nxrv-icon-close) center/contain no-repeat; mask: var(--nxrv-icon-close) center/contain no-repeat; background: color-mix(in oklab, var(--brand5) 10%, white); }
        .nxrv-modal{ position:fixed; inset:0; display:none; z-index:1000; }
        .nxrv-modal.open{display:block;}
        .nxrv-modal-overlay{ position:absolute; inset:0; background:rgba(0,0,0,.4); backdrop-filter:none; }
        .nxrv-modal-sheet{ position:absolute; inset:0; background:linear-gradient(180deg,#ffffffee,#ffffffcc); display:flex; flex-direction:column; max-height:100svh; box-shadow:0 -10px 30px rgba(0,0,0,.28); }
        .nxrv-modal-hdr{ flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; padding:12px 16px; font-weight:800; background:rgba(255,255,255,.6); backdrop-filter:none; border-bottom:1px solid rgba(0,0,0,.08);}
        .nxrv-close{ background:color-mix(in oklab, var(--brand4) 85%, white); color:#fff; border:none; border-radius:10px; padding:6px 10px; font-size:13px; cursor:pointer; }
        .nxrv-modal-body{ flex:1 1 auto; overflow:auto; -webkit-overflow-scrolling:touch; padding:16px; display:grid; gap:16px; }
        .nxrv-field{display:grid; gap:8px;} .nxrv-label{font-weight:800; font-size:14px; color:var(--nxrv-text);}
        .nxrv-input,.nxrv-textarea{ width:100%; border:none; outline:none; background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.7)); box-shadow:inset 0 0 0 1px rgba(0,0,0,.06); border-radius:14px; padding:12px 14px; font-family:inherit; font-size:17px; color:var(--nxrv-text);}
        .nxrv-textarea{min-height:120px; resize:vertical; line-height:1.6;}
        .nxrv-stars-picker{ display:flex; justify-content:center; gap:12px; user-select:none; -webkit-tap-highlight-color:transparent; }
        .nxrv-stars-picker .star.pick{ width:36px; height:36px; display:inline-block; cursor:pointer; position:relative; outline:none; }
        .nxrv-stars-picker .star.pick .ico{ display:block; width:100%; height:100%; -webkit-mask: var(--nxrv-icon-star-empty) center/contain no-repeat; mask: var(--nxrv-icon-star-empty) center/contain no-repeat; background:color-mix(in oklab, var(--brand5) 80%, var(--brand2)); transition:transform .12s ease; }
        .nxrv-stars-picker .star.pick.active .ico{ -webkit-mask: var(--nxrv-icon-star-full) center/contain no-repeat; mask: var(--nxrv-icon-star-full) center/contain no-repeat; background:linear-gradient(180deg, color-mix(in oklab, var(--brand5) 70%, white), color-mix(in oklab, var(--brand2) 60%, var(--brand5))); filter: drop-shadow(0 2px 6px rgba(0,0,0,.18)); }
        .nxrv-modal-ftr{ flex:0 0 auto; background:rgba(255,255,255,.6); backdrop-filter:none; border-top:1px solid rgba(0,0,0,.08); padding:12px 16px; display:flex; justify-content:center; }
        .nxrv-submit{ width:100%; max-width:400px; border:none; border-radius:14px; padding:14px 18px; font-size:16px; font-weight:800; cursor:pointer; background:linear-gradient(180deg,var(--brand1),var(--brand2)); color:#fff; box-shadow:0 10px 25px rgba(0,0,0,.25); }
        .nxrv-submit:active{ transform:scale(.98); box-shadow:0 6px 18px rgba(0,0,0,.3); }
        .nxrv-uploader{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
        .nxrv-btn{ border:none; border-radius:12px; padding:10px 14px; font-weight:800; cursor:pointer; }
        .nxrv-btn-img{ background:linear-gradient(180deg, var(--brand1), color-mix(in oklab, var(--brand1) 70%, var(--brand2))); color:#fff; }
        .nxrv-btn-vid{ background:linear-gradient(180deg, var(--brand4), color-mix(in oklab, var(--brand4) 70%, var(--brand2))); color:#fff; }
        .nxrv-hint-inline{ color:var(--nxrv-muted); font-size:13px; }
        .nxrv-file-hidden{ position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
        .nxrv-previews{ display:flex; flex-wrap:wrap; gap:10px; margin-top:10px; }
        .nxrv-preview{ position:relative; width:80px; height:80px; border-radius:12px; overflow:hidden; background:#000; border:1px solid var(--nxrv-line); box-shadow:0 2px 6px rgba(0,0,0,.1); }
        .nxrv-preview img, .nxrv-preview video{ width:100%; height:100%; object-fit:cover; display:block; }
        .nxrv-preview .rm{ position:absolute; right:6px; top:6px; width:22px; height:22px; border:none; border-radius:8px; background:rgba(0,0,0,.5); cursor:pointer;}
        .nxrv-preview .rm::before{ content:""; display:block; width:100%; height:100%; background: center/16px 16px no-repeat url('../img/ICON_REMOVE.png'); }
        .nxrv-hint{ font-size:11px; color:var(--nxrv-muted); }
        .nxrv-progress{ position:relative; height:10px; background:var(--brand5); border-radius:999px; overflow:hidden; }
        .nxrv-progress .bar{ position:absolute; left:0; top:0; height:100%; background:linear-gradient(90deg,var(--brand1),var(--brand2)); }
        .nxrv-progress span{ position:absolute; right:10px; top:-22px; font-size:12px; color:var(--nxrv-muted); }
        .nxrv-empty{text-align:center; color:var(--nxrv-muted); font-size:14px; border:1px dashed var(--nxrv-line); border-radius:16px; padding:24px; background:rgba(255,255,255,.35);}
        .nxrv-toast-wrap{ position:fixed; left:0; right:0; bottom:16px; display:grid; place-items:center; z-index:3000; pointer-events:none; }
        .nxrv-toast{ background:rgba(30,30,30,.9); color:#fff; padding:10px 14px; border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.4); font-size:14px; animation:nxrv-toast-anim .25s ease both; }
        @keyframes nxrv-toast-anim{from{transform:translateY(8px); opacity:0} to{transform:none; opacity:1}}
