/* NB BETS Mini App — dark theme, green accent */
:root{
  --bg:#0a0a10; --card:#14141d; --card2:#1c1c28; --chip:#23232f;
  --line:rgba(255,255,255,.07); --txt:#ffffff; --mut:#8f8f9a; --mut2:#6e6e78;
  --org:#00c853; --org-deep:#00963e; --org-soft:rgba(0,200,83,.14);
  --teal:#2dd4bf; --grn:#22c55e; --red:#f04452;
  --r-card:16.5px; --r-btn:13.5px;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display",Inter,"Segoe UI",Roboto,Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:#000}
body{
  font-family:var(--font); background:var(--bg); color:var(--txt);
  min-height:100vh; font-size:11.25px; line-height:1.45;
}
#app{max-width:480px;margin:0 auto;min-height:100vh;position:relative;background:var(--bg);
  padding-bottom:88.5px} /* room for sticky CTA + tabbar */

/* ---------- fake mini-app chrome header ---------- */
.mini-head{display:flex;align-items:center;justify-content:space-between;
  padding:10.5px 13.5px 7.5px}
.mini-head .close{font-size:12.75px;color:var(--txt);font-weight:400;cursor:pointer}
.mini-head .title{text-align:center}
.mini-head .title b{display:block;font-size:14.25px;font-weight:800;letter-spacing:-.01em}
.mini-head .title span{font-size:10.5px;color:var(--mut)}
.mini-head .dots{width:25.5px;height:25.5px;border:1.2px solid rgba(255,255,255,.55);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:11.25px;letter-spacing:1.5px;color:#fff;cursor:pointer}

/* ---------- brand row ---------- */
.brand-row{display:flex;align-items:center;gap:9px;padding:6px 15px 13.5px}
.brand-row img{width:34.5px;height:34.5px;border-radius:50%;background:#000;object-fit:contain}
.brand-word{font-size:22.5px;font-weight:800;letter-spacing:-.02em}
.brand-word .w{color:#fff}.brand-word .o{color:var(--org)}
.vbadge{width:19.5px;height:19.5px;flex:none}

/* ---------- generic cards ---------- */
.card{background:var(--card);border:0.75px solid var(--line);border-radius:var(--r-card);
  padding:13.5px;margin:0 12px 10.5px;position:relative;overflow:hidden}
.link-card{display:flex;align-items:center;gap:9px;cursor:pointer}
.link-card .ic{width:37.5px;height:37.5px;border-radius:12px;background:var(--card2);
  display:flex;align-items:center;justify-content:center;flex:none}
.link-card .ic svg{width:19.5px;height:19.5px}
.link-card .tx{flex:1;min-width:0}
.link-card .tx b{display:block;font-size:11.25px;font-weight:700}
.link-card .tx span{font-size:9.75px;color:var(--mut)}
.badge-pill{font-size:9px;font-weight:800;letter-spacing:.08em;padding:5.25px 9px;
  border-radius:6.75px;flex:none}
.badge-pill.accent{background:var(--org-soft);color:var(--org)}
.badge-pill.teal{background:rgba(45,212,191,.13);color:var(--teal)}
.chev{color:var(--mut2);font-size:15px;flex:none}
.card.teal-edge{border-color:rgba(45,212,191,.35);box-shadow:0 0 0 0.75px rgba(45,212,191,.12)}

/* ---------- VIP unlock card ---------- */
.vip-card{display:flex;align-items:center;gap:9px}
.vip-card .crown{color:var(--org);flex:none;display:flex}
.vip-card .crown svg{width:22.5px;height:22.5px}
.vip-card .tx{flex:1;min-width:0}
.vip-card .tx b{font-size:11.62px;font-weight:800;letter-spacing:.01em;display:flex;align-items:center;gap:6px;white-space:nowrap}
.vip-card .tx span{font-size:9.75px;color:var(--mut)}
.vip-card .tx span em{font-style:normal;color:var(--org);font-weight:800}
.vip-card .btn{flex:none;white-space:nowrap;padding:10.5px 13.5px;font-size:10.5px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;
  background:var(--org);color:#111;font-weight:800;border:none;cursor:pointer;
  border-radius:var(--r-btn);font-size:11.25px;letter-spacing:.02em;
  padding:11.25px 16.5px;box-shadow:0 4.5px 13.5px rgba(255,107,26,.28)}
.btn:active{transform:scale(.98)}
.btn.block{width:100%}
.btn.big{font-size:12.38px;padding:13.5px 16.5px}
.btn svg{width:15px;height:15px;flex:none}
.btn.white{background:#fff;color:#111;box-shadow:none}
.btn.dark{background:var(--chip);color:#fff;box-shadow:none}
.btn.ghost{background:transparent;border:1.12px solid var(--line);color:#fff;box-shadow:none}

/* ---------- home stats line ---------- */
.center-stats{text-align:center;padding:7.5px 0 12px}
.center-stats b{font-size:14.25px;font-weight:800;display:block}
.center-stats span{font-size:10.5px;color:var(--mut)}
.section-head{display:flex;align-items:center;justify-content:space-between;
  padding:3px 15px 9px}
.section-head b{font-size:12.75px;font-weight:800}
.section-head a{color:var(--org);font-size:10.12px;font-weight:800;letter-spacing:.06em;
  cursor:pointer;text-decoration:none}

/* ---------- tip cards ---------- */
.tip{padding:0}
.tip-inner{padding:13.5px}
.tip .league{font-size:9px;font-weight:800;letter-spacing:.09em;color:var(--org);
  text-transform:uppercase;margin-bottom:4.5px}
.tip .match{font-size:12.75px;font-weight:800;margin-bottom:7.5px}
.tip .meta{display:flex;align-items:center;justify-content:space-between;gap:7.5px}
.tip .pick{font-size:10.5px;color:#d7d7de}
.tip .odds{background:var(--org-soft);color:var(--org);font-weight:800;font-size:10.5px;
  padding:5.25px 9.75px;border-radius:7.5px}
.tip .res{font-size:9px;font-weight:800;padding:4.5px 8.25px;border-radius:6.75px;letter-spacing:.05em}
.tip .res.won{background:rgba(34,197,94,.14);color:var(--grn)}
.tip .res.lost{background:rgba(240,68,82,.13);color:var(--red)}
.tip .res.draw{background:rgba(255,255,255,.08);color:var(--mut)}
.tip.locked .tip-inner{filter:blur(9.75px);pointer-events:none;user-select:none}
.tip .lock-veil{position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:9px;background:rgba(10,10,16,.25)}
.lock-circle{width:57px;height:57px;border-radius:50%;background:rgba(8,8,12,.78);
  display:flex;align-items:center;justify-content:center}
.lock-circle svg{width:25.5px;height:25.5px;color:#fff}
.lock-veil b{font-size:11.25px;font-weight:800;letter-spacing:.14em}

/* ---------- sticky CTA ---------- */
.sticky-cta{position:fixed;left:0;right:0;bottom:64.5px;z-index:30;pointer-events:none}
.sticky-cta .inner{max-width:480px;margin:0 auto;padding:0 12px;pointer-events:auto}
.sticky-cta .btn{width:100%;font-size:12.38px;padding:12.75px}
.sticky-cta p{text-align:center;color:var(--mut);font-size:9.75px;margin-top:6px}

/* ---------- tab bar ---------- */
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;background:#121218;
  border-top:0.75px solid var(--line)}
.tabbar .inner{max-width:480px;margin:0 auto;display:flex;padding:7.5px 4.5px 12px}
.tab{flex:1;background:none;border:none;color:var(--mut2);display:flex;flex-direction:column;
  align-items:center;gap:3.75px;font-size:8.25px;font-weight:600;cursor:pointer;font-family:var(--font)}
.tab svg{width:19.5px;height:19.5px}
.tab.active{color:var(--org)}

/* ---------- page titles ---------- */
.page{padding:4.5px 0 0}
.page-title{font-size:20.25px;font-weight:800;letter-spacing:-.01em;padding:7.5px 15px 3px}
.page-sub{font-size:9.38px;font-weight:700;letter-spacing:.14em;color:var(--mut2);
  padding:0 15px 10.5px}
.page-title-row{display:flex;align-items:center;justify-content:space-between;padding:7.5px 12px 3px}
.page-title-row .page-title{padding:0}
.country-pill{display:flex;align-items:center;gap:5.25px;background:var(--card);
  border:0.75px solid var(--line);border-radius:9px;padding:6px 9px;font-size:9.75px;
  font-weight:700;cursor:pointer}

/* ---------- verify ---------- */
.verify{padding:0 15px}
.verify h2{font-size:19.5px;font-weight:800;margin:10.5px 0 7.5px}
.verify p.desc{color:var(--mut);font-size:10.88px;margin-bottom:13.5px}
.verify h3{font-size:15.75px;font-weight:800;margin:16.5px 0 6px}
.geo-banner{display:flex;align-items:center;gap:9px;border:1.12px solid var(--org);
  background:rgba(255,107,26,.07);border-radius:12px;padding:11.25px 12px;margin:12px 0;
  cursor:pointer;font-size:11.25px}
.geo-banner .flag{font-size:16.5px}
.geo-banner span{color:var(--mut)}
.geo-banner b{color:#fff}
.geo-banner .chev{margin-left:auto}
.search{display:flex;align-items:center;gap:7.5px;background:var(--card);
  border:0.75px solid var(--line);border-radius:12px;padding:10.5px 12px;margin-bottom:4.5px}
.search svg{width:15px;height:15px;color:var(--mut2);flex:none}
.search input{flex:1;background:none;border:none;outline:none;color:#fff;
  font-size:11.25px;font-family:var(--font)}
.search input::placeholder{color:var(--mut2)}
.pop-label{font-size:9px;font-weight:700;letter-spacing:.16em;color:var(--mut2);
  margin:15px 3px 7.5px}
.crow{display:flex;align-items:center;gap:10.5px;background:var(--card);
  border:0.75px solid var(--line);border-radius:13.5px;padding:12px;margin-bottom:7.5px;
  cursor:pointer;font-size:12px;font-weight:600}
.crow .flag{font-size:18px}
.crow .chev{margin-left:auto}
.prog{display:flex;gap:6px;margin:12px 15px 3px}
.prog i{flex:1;height:4.5px;border-radius:3px;background:var(--chip)}
.prog i.on{background:var(--org)}
.info-card{background:var(--card);border:0.75px solid var(--line);border-radius:var(--r-card);
  padding:15px;margin:10.5px 12px;color:var(--mut);font-size:11.25px;line-height:1.55}
.or-row{display:flex;align-items:center;gap:10.5px;margin:19.5px 15px 13.5px;color:var(--mut2);
  font-size:9.38px;font-weight:800;letter-spacing:.18em}
.or-row::before,.or-row::after{content:"";flex:1;height:0.75px;background:var(--line)}
.nodep{text-align:center;font-size:12.75px;font-weight:800;margin-bottom:10.5px}
.cap{text-align:center;color:var(--mut2);font-size:9.75px;margin:9px 15px 0}

/* ---------- stats ---------- */
.period-sel{background:var(--card);border:0.75px solid var(--line);color:#fff;
  border-radius:9px;padding:7.5px 10.5px;font-size:10.5px;font-weight:700;font-family:var(--font);
  outline:none;cursor:pointer}
.roi-card{background:linear-gradient(135deg,#00e065,#00a34a);border-radius:18px;
  margin:6px 12px 10.5px;padding:18px 16.5px;color:#16100a}
.roi-card .lbl{font-size:9.38px;font-weight:800;letter-spacing:.14em;color:rgba(0,0,0,.55)}
.roi-card .big{font-size:43.5px;font-weight:800;letter-spacing:-.03em;color:#0d0d0d;
  line-height:1.05;margin:1.5px 0 10.5px}
.roi-card .pills{display:flex;gap:4.5px;flex-wrap:nowrap}
.roi-card .pill{background:rgba(10,8,4,.82);color:#fff;font-size:8.25px;font-weight:800;
  padding:6px 7.5px;border-radius:8.25px;letter-spacing:.03em;display:flex;gap:3.75px;align-items:baseline;white-space:nowrap}
.roi-card .pill small{font-size:6.75px;color:rgba(255,255,255,.55);font-weight:700;letter-spacing:.06em}
.roi-card .pill .g{color:var(--grn);font-size:10.5px}
.roi-card .pill .r{color:var(--red);font-size:10.5px}
.roi-card .pill .n{font-size:10.5px}
.stat3{display:flex;gap:7.5px;margin:0 12px 13.5px}
.stat3 .cell{flex:1;background:var(--card);border:0.75px solid var(--line);
  border-radius:13.5px;padding:12px 10.5px}
.stat3 .cell b{font-size:18px;font-weight:800;display:block;letter-spacing:-.01em;white-space:nowrap}
.stat3 .cell span{font-size:6.75px;font-weight:700;letter-spacing:.05em;color:var(--mut2);white-space:nowrap}
.stat3 .cell b.grn{color:var(--grn)} .stat3 .cell b.org{color:var(--org)}
.chart-card{background:var(--card);border:0.75px solid var(--line);border-radius:18px;
  margin:0 12px 10.5px;padding:16.5px 13.5px 10.5px}
.chart{display:flex;align-items:flex-end;gap:4.5px;height:142.5px;position:relative;
  padding-left:33px}
.y-axis{position:absolute;left:0;top:0;bottom:19.5px;display:flex;flex-direction:column;
  justify-content:space-between;font-size:8.62px;color:var(--mut2);font-weight:600}
.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;
  height:100%;gap:5.25px}
.bar-val{font-size:9.38px;font-weight:800;color:var(--org);min-height:12.75px}
.bar{width:70%;max-width:48px;border-radius:6.75px 6.75px 3px 3px;background:var(--org);min-height:6px}
.bar.pending{background:rgba(255,255,255,.09);display:flex;align-items:flex-start;
  justify-content:center;padding-top:6px;font-size:12.75px}
.bar-x{font-size:8.62px;font-weight:800;letter-spacing:.1em;color:var(--mut2);height:19.5px}

/* ---------- bookies ---------- */
.top-card{padding:0}
.top-ribbon{display:flex;align-items:center;justify-content:space-between;
  padding:10.5px 15px 0}
.top-ribbon .tp{color:var(--org);font-size:9.38px;font-weight:800;letter-spacing:.12em}
.top-ribbon .stars{color:#3a3a44;font-size:10.5px;letter-spacing:2.25px}
.bookie-body{padding:10.5px 15px 15px}
.bookie-row{display:flex;align-items:center;gap:10.5px}
.bookie-logo{width:42px;height:42px;border-radius:12px;background:#0d0d12;flex:none;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  border:0.75px solid var(--line)}
.bookie-logo img{width:100%;height:100%;object-fit:cover}
.bookie-logo .fb{font-size:16.5px;font-weight:800;color:var(--org)}
.bookie-row .tx{flex:1;min-width:0}
.bookie-row .tx b{font-size:13.5px;font-weight:800;display:block}
.bookie-row .tx span{font-size:9.75px;color:var(--mut)}
.bookie-row .tx span.org{color:var(--org);font-weight:600}
.bonus-banner{background:linear-gradient(135deg,#00e065,#00a34a);border-radius:12px;
  text-align:center;padding:12px;margin:12px 0}
.bonus-banner small{display:block;font-size:8.62px;font-weight:800;letter-spacing:.2em;
  color:rgba(0,0,0,.55)}
.bonus-banner b{font-size:25.5px;font-weight:800;color:#0d0d0d;letter-spacing:-.02em}
.code-row{display:flex;gap:7.5px}
.code-chip{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;
  background:var(--card2);border:0.75px solid var(--line);border-radius:10.5px;
  padding:10.5px;font-size:10.5px;color:var(--mut);cursor:pointer}
.code-chip b{color:#fff;font-weight:800;letter-spacing:.06em}
.code-chip svg{width:12px;height:12px;color:var(--mut2)}
.bookie-line{display:flex;align-items:center;gap:7.5px;background:var(--card);
  border:0.75px solid var(--line);border-radius:var(--r-card);padding:10.5px;margin:0 12px 9px}
.bookie-line .bookie-logo{width:33px;height:33px;border-radius:10.5px}
.bookie-line .tx{flex:1;min-width:0;overflow:hidden}
.bookie-line .tx b{font-size:12px;font-weight:800;display:block;white-space:nowrap}
.bookie-line .tx span{font-size:7.88px;color:var(--org);font-weight:600;white-space:nowrap}
.mini-chip{display:flex;align-items:center;gap:5.25px;background:var(--card2);
  border:0.75px solid var(--line);border-radius:8.25px;padding:6.75px 7.5px;font-size:9px;
  color:var(--mut);cursor:pointer;flex:none}
.mini-chip b{color:#fff;letter-spacing:.05em}
.mini-chip svg{width:10.5px;height:10.5px}
.get-btn{background:var(--chip);color:#fff;border:none;border-radius:8.25px;flex:none;
  padding:7.5px 10.5px;font-weight:800;font-size:9px;letter-spacing:.08em;cursor:pointer}
.vip-steps{margin-top:4.5px}
.vstep{display:flex;align-items:center;gap:10.5px;background:var(--card2);
  border-radius:12px;padding:11.25px 12px;margin-bottom:7.5px;font-size:11.25px;font-weight:600}
.vstep .n{width:25.5px;height:25.5px;border-radius:50%;background:var(--org);color:#111;
  font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.vstep svg{width:16.5px;height:16.5px;color:var(--mut);flex:none}
#send-shot{font-size:11.25px;white-space:nowrap}

/* ---------- account ---------- */
.profile{display:flex;gap:10.5px;align-items:center;padding:6px 15px 12px}
.avatar{width:46.5px;height:46.5px;border-radius:50%;background:var(--card2);flex:none;
  display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;
  color:var(--org);overflow:hidden}
.avatar img{width:100%;height:100%;object-fit:cover}
.profile .tx b{font-size:15px;font-weight:800}
.getvip-pill{display:inline-flex;align-items:center;background:var(--chip);
  border-radius:7.5px;padding:4.5px 8.25px;font-size:8.62px;font-weight:800;letter-spacing:.08em;
  color:#fff;margin-left:6px;cursor:pointer;vertical-align:1.5px}
.profile .tx .sub{font-size:10.12px;color:var(--mut);margin-top:2.25px}
.profile .tx .since{font-size:8.25px;font-weight:700;letter-spacing:.14em;color:var(--mut2);margin-top:3.75px}
.member-card{background:linear-gradient(135deg,#00e065,#00a34a);border-radius:16.5px;
  margin:0 12px 10.5px;padding:15px;display:flex;align-items:center;justify-content:space-between}
.member-card small{display:block;font-size:8.62px;font-weight:800;letter-spacing:.2em;
  color:rgba(0,0,0,.55)}
.member-card b{font-size:21.75px;font-weight:800;color:#0d0d0d;letter-spacing:-.01em}
.member-card .st{background:rgba(10,8,4,.82);color:#fff;font-size:8.62px;font-weight:800;
  letter-spacing:.1em;padding:6.75px 10.5px;border-radius:8.25px}
.notif-card h4{font-size:12px;font-weight:800;display:flex;align-items:center;gap:6.75px;
  margin-bottom:4.5px}
.notif-card h4 svg{width:15px;height:15px;color:var(--org)}
.nrow{display:flex;align-items:center;justify-content:space-between;
  padding:11.25px 1.5px;border-bottom:0.75px solid var(--line);font-size:11.25px;font-weight:600}
.nrow:last-child{border-bottom:none}
.switch{width:39px;height:23.25px;border-radius:15px;background:#3a3a44;position:relative;
  cursor:pointer;transition:background .2s;flex:none;border:none}
.switch::after{content:"";position:absolute;top:2.25px;left:2.25px;width:18.75px;height:18.75px;
  border-radius:50%;background:#fff;transition:left .2s}
.switch.on{background:var(--org)}
.switch.on::after{left:18px}
.comp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.comp-head h4{font-size:12.38px;font-weight:800;display:flex;align-items:center;gap:6.75px}
.comp-head h4 svg{width:15.75px;height:15.75px;color:var(--org)}
.comp-head .pool{color:var(--org);font-size:16.5px;font-weight:800}
.comp-status{color:var(--mut);font-size:10.12px;margin-bottom:9px}
.prize-pills{display:flex;gap:7.5px;margin-bottom:9px}
.prize-pills .pp{flex:1;background:rgba(255,107,26,.07);border:1.12px solid rgba(255,107,26,.4);
  border-radius:10.5px;padding:8.25px 4.5px;text-align:center;font-weight:800;font-size:11.62px}
.announce{background:var(--card2);border:0.75px solid var(--line);border-radius:10.5px;
  padding:10.5px 11.25px;font-size:10.12px;line-height:1.55;margin-bottom:4.5px}
.lb-row{display:flex;align-items:center;gap:9px;background:var(--card2);
  border-radius:10.5px;padding:9.75px 11.25px;margin-top:6.75px}
.lb-row .medal{font-size:14.25px;width:22.5px;text-align:center;flex:none;font-weight:800;color:var(--mut)}
.lb-row .nm{flex:1;font-weight:700;font-size:11.25px}
.lb-row .paid{background:rgba(34,197,94,.14);color:var(--grn);font-size:8.25px;font-weight:800;
  letter-spacing:.06em;padding:4.5px 7.5px;border-radius:6px}
.lb-row .prz{color:var(--org);font-weight:800;font-size:10.88px}
.lb-row .cnt{color:var(--grn);font-weight:800;font-size:12px;min-width:22.5px;text-align:right}
.invite-link-box{display:flex;gap:7.5px;margin:10.5px 0 9px}
.invite-link-box .url{flex:1;background:var(--card2);border:0.75px solid var(--line);
  border-radius:9.75px;padding:9.75px 10.5px;font-size:9.75px;color:var(--mut);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.share-btn{display:flex;align-items:center;justify-content:center;gap:7.5px;width:100%;
  background:var(--card2);border:0.75px solid var(--line);color:#fff;font-weight:700;
  font-size:11.62px;border-radius:11.25px;padding:12px;cursor:pointer;font-family:var(--font)}
.share-btn svg{width:15px;height:15px}

/* ---------- misc ---------- */
.hidden{display:none!important}
.skel{border-radius:10.5px;background:linear-gradient(90deg,var(--card) 25%,var(--card2) 50%,var(--card) 75%);
  background-size:200% 100%;animation:sh 1.2s infinite}
@keyframes sh{to{background-position:-200% 0}}
.toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:#23232f;
  color:#fff;padding:9px 15px;border-radius:9px;font-size:10.5px;font-weight:600;
  z-index:99;opacity:0;transition:opacity .25s;pointer-events:none;border:0.75px solid var(--line)}
.toast.show{opacity:1}
.empty{text-align:center;color:var(--mut2);padding:25.5px 15px;font-size:10.5px}

/* ---------- VIP member wins (NB Elite VIP Member Reviews) ---------- */
.wins-jump{display:flex;align-items:center;justify-content:center;gap:6px;
  width:calc(100% - 24px);margin:1.5px 12px 9px;padding:9.75px;
  background:rgba(0,200,83,.08);border:1.12px solid rgba(0,200,83,.45);border-radius:12px;
  color:var(--org);font-weight:800;font-size:10.88px;letter-spacing:.02em;cursor:pointer;
  font-family:var(--font)}
.wins-jump:active{transform:scale(.98)}
.wins-zone{margin:13.5px 0 63px}
.wins-title{text-align:center;font-size:14.25px;font-weight:800;letter-spacing:-.01em;
  padding:0 15px 1.5px}
.wins-hint{text-align:center;font-size:8.62px;color:var(--mut);letter-spacing:.06em;
  margin:3px 0 7.5px}
.wins-badge{display:flex;justify-content:center;margin:1.5px 0 9px;padding:0 12px}
.wins-badge .vpill{background:#0b120e;color:var(--org);font-weight:800;font-size:9.38px;
  letter-spacing:.07em;padding:6.75px 16.5px;border-radius:15px;
  border:0.75px solid rgba(0,200,83,.4);white-space:nowrap}
.wins-carousel{display:flex;gap:9px;overflow-x:auto;padding:3px 12px 9px;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.wins-carousel::-webkit-scrollbar{display:none}
.shot-card{flex:0 0 202.5px;scroll-snap-align:start;border-radius:13.5px;overflow:hidden;
  border:0.75px solid var(--line);position:relative;background:#000;cursor:pointer}
.shot-card img{display:block;width:100%;height:360px;object-fit:cover;object-position:top;
  pointer-events:none}
.shot-card .zoom{position:absolute;right:6px;bottom:6px;background:rgba(0,0,0,.65);
  color:#fff;font-size:8.25px;font-weight:700;padding:3.75px 7.5px;border-radius:12px;
  pointer-events:none}
.wins-dots{display:flex;justify-content:center;gap:4.5px;margin:1.5px 0 3px}
.wins-dots i{width:4.5px;height:4.5px;border-radius:50%;background:#3a3a44}
.wins-dots i.on{background:var(--org);width:13.5px;border-radius:3px}
.wins-vlabel{text-align:center;font-size:7.88px;color:var(--mut);letter-spacing:.08em;
  font-weight:700;margin:4.5px 0 13.5px}
.rev-head{display:flex;align-items:baseline;justify-content:space-between;margin:0 15px 6px}
.rev-head b{font-size:12.75px;font-weight:800}
.rev-head span{font-size:8.62px;color:var(--mut);font-weight:600}
.rev-stage{margin:0 12px;position:relative;overflow:hidden;border-radius:13.5px;
  background:var(--card);border:0.75px solid var(--line)}
.rev-track{display:flex;transition:transform .6s ease}
.rev{flex:0 0 100%;padding:12px}
.rev .stars{color:#f5b301;font-size:10.5px;letter-spacing:1.5px;margin-bottom:4.5px}
.rev p{font-size:10.35px;color:#d7d7de;line-height:1.55}
.rev .who{font-size:8.62px;color:var(--mut);margin-top:6px}
.rev .who b{color:var(--org)}
/* lightbox */
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.92);
  display:flex;align-items:center;justify-content:center;padding:15px;cursor:zoom-out}
.lightbox img{max-width:100%;max-height:100%;border-radius:9px;object-fit:contain}
.lightbox .lb-close{position:absolute;top:10.5px;right:12px;color:#fff;font-size:11.25px;
  font-weight:700;background:rgba(255,255,255,.12);border:none;border-radius:50%;
  width:28.5px;height:28.5px;cursor:pointer}
