.rev-stars{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:inherit;line-height:1}
.rev-stars--sm{gap:4px;font-size:.85rem}
.rev-stars__set{position:relative;display:inline-block;white-space:nowrap;letter-spacing:2px}
.rev-stars__set::before{content:"★★★★★";color:var(--ebb-star-off,#d7d7d7)}
.rev-stars__on{position:absolute;top:0;left:0;width:var(--rev-fill,0%);overflow:hidden;color:var(--ebb-star-on,#f5a623);white-space:nowrap;letter-spacing:2px}
.rev-stars__n{color:var(--ebb-text-muted,#6b6b6b);font-size:.85em}
.rev-stars:hover .rev-stars__n{text-decoration:underline}
.rev-list{max-width:100%;padding:32px var(--pg-pad)}
.rev-family-hint{margin:2px 0 0;color:var(--ebb-text-muted,#6b6b6b);font-size:.85rem}
.rev-family-hint a{color:inherit;text-decoration:underline}
.rev-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.rev-tab{appearance:none;border:1px solid var(--ebb-border,rgba(15,18,25,.15));background:transparent;color:inherit;border-radius:999px;padding:6px 14px;font:inherit;font-size:.9rem;cursor:pointer}
.rev-tab.is-active{background:var(--ebb-text,#1a1a1a);color:#fff;border-color:transparent}
.rev-list__title{font-size:1.25rem;margin:0 0 16px}
.rev-list__items{display:grid;gap:16px}
.rev-item{border:1px solid var(--ebb-border,rgba(15,18,25,.1));border-radius:10px;padding:14px 16px}
.rev-item__head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.rev-item__author{font-weight:600}
.rev-item__date{color:var(--ebb-text-muted,#6b6b6b);font-size:.85rem}
.rev-item__title{font-weight:600;margin-bottom:4px}
.rev-item__body{margin:0;line-height:1.5;color:var(--ebb-text,#222);white-space:pre-line}
.rev-source{margin:16px 0 0;color:var(--ebb-text-muted,#6b6b6b);font-size:.8rem}
