/* MODAMIX product reviews (README §5.29) — product page section + stars in product cards; dark shop theme */
.mmx-st{position:relative;display:inline-flex;vertical-align:-2px;line-height:0;direction:ltr}
.mmx-st svg{fill:currentColor;flex:none}
.mmx-st-bg{display:inline-flex;color:rgba(127,127,127,.45)}
.mmx-st-fg{position:absolute;inset:0 auto 0 0;display:inline-flex;overflow:hidden;width:var(--w);color:#f5b301;white-space:nowrap}
.mmx-rv-sum{display:inline-flex;align-items:center;gap:7px;margin:0 0 10px;color:inherit!important;text-decoration:none!important;font-size:14px}
.mmx-rv-sum b{font-weight:700}.mmx-rv-sum span{opacity:.75;text-decoration:underline;text-underline-offset:3px}
.mmx-rv{font-size:15px;line-height:1.6}
.mmx-rv-top{display:grid;grid-template-columns:minmax(150px,auto) 1fr;gap:18px 26px;align-items:center;margin:4px 0 18px}
.mmx-rv-avg{display:grid;justify-items:start;gap:4px}
.mmx-rv-avg strong{font-size:44px;line-height:1;font-weight:700}
.mmx-rv-avg span{font-size:13px;opacity:.72}
.mmx-rv-dist{display:grid;gap:4px;max-width:340px}
.mmx-rv-bar{display:grid;grid-template-columns:28px 1fr 26px;gap:8px;align-items:center;font-size:12.5px;opacity:.9}
.mmx-rv-bar i{display:block;height:7px;border-radius:99px;background:rgba(127,127,127,.25);overflow:hidden}
.mmx-rv-bar b{display:block;height:100%;background:#f5b301;border-radius:99px}
.mmx-rv-fit{grid-column:1/-1}
.mmx-rv-fit b{font-size:13.5px;display:block;margin:0 0 6px}
.mmx-rv-fitbar{display:flex;gap:3px;height:28px;border-radius:8px;overflow:hidden;font-size:12px}
.mmx-rv-fitbar span{display:flex;align-items:center;justify-content:center;min-width:0;white-space:nowrap;overflow:hidden}
.mmx-rv-fitbar .small{background:rgba(242,179,107,.35)}.mmx-rv-fitbar .ok{background:rgba(60,207,138,.35)}.mmx-rv-fitbar .large{background:rgba(158,197,255,.35)}
.mmx-rv-fitbar em{font-style:normal;padding:0 6px;overflow:hidden;text-overflow:ellipsis}
.mmx-rv-item{border-top:1px solid rgba(127,127,127,.25);padding:14px 0}
.mmx-rv-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.mmx-rv-head b{font-weight:600}
.mmx-rv-ver{font-size:12px;color:#3ccf8a}
.mmx-rv-head time{font-size:12.5px;opacity:.6;margin-inline-start:auto}
.mmx-rv-var{font-size:12.5px;opacity:.7;margin-top:2px}
.mmx-rv-item p{margin:6px 0 0;white-space:normal;word-break:break-word}
.mmx-rv-phs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.mmx-rv-ph{border:0;padding:0;background:none;cursor:zoom-in;border-radius:10px;overflow:hidden;line-height:0}
.mmx-rv-ph img{width:75px;height:75px;object-fit:cover}
.mmx-rv-reply{margin-top:10px;padding:10px 12px;border-radius:10px;background:rgba(127,127,127,.12);font-size:14px}
.mmx-rv-reply b{font-size:12.5px;opacity:.8}.mmx-rv-reply p{margin:4px 0 0}
.mmx-rv-more{display:block;margin:10px auto 0;border:1px solid rgba(127,127,127,.6);border-radius:999px;padding:10px 22px;background:transparent;color:inherit;font:inherit;font-size:14px;cursor:pointer}
.mmx-rv-none{opacity:.8}.mmx-rv-none small{opacity:.75}
.mmx-rv-about{margin-top:14px;font-size:13px;opacity:.8}
.mmx-rv-about summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.mmx-rv-about p{margin:6px 0 0}
.mmx-rv-zoom{position:fixed;inset:0;z-index:100001;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;padding:16px;cursor:zoom-out}
.mmx-rv-zoom img{max-width:100%;max-height:100%;border-radius:10px}
/* stars in product cards (Journal's empty .rating gets ours). Journal's settings hide .rating in the grid
   (.main-products-style.product-grid .product-thumb .rating{display:none!important}): only cards with reviews come back */
html body .product-thumb div.rating.mmx-has.mmx-has{display:flex!important;align-items:center;justify-content:center;gap:5px;font-size:12px;opacity:1;margin:4px 0 0}
.product-thumb .rating.mmx-has .rating-stars{display:none}
.product-thumb .rating.mmx-has span.mmx-n{opacity:.7}
@media (max-width:560px){.mmx-rv-top{grid-template-columns:1fr}.mmx-rv-avg{grid-template-columns:auto auto;align-items:center;column-gap:12px}.mmx-rv-avg span{grid-column:1/-1}}
.mmx-rv-google{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:14px;font-size:13.5px;color:inherit!important;text-decoration:none!important;opacity:.9}
.mmx-rv-google span{opacity:.7}
