/* Besocial Rating System 2 – uses GeekMag tokens when available */
.besocial { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.besocial__btn { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 8px 14px; border: 1px solid var(--gm-border-strong, #d0d5dd); border-radius: 12px; background: var(--gm-surface, #fff); color: var(--gm-heading, #1d2433); font: 600 .9rem/1 var(--gm-font, system-ui, sans-serif); cursor: pointer; transition: border-color .15s, color .15s, background .15s, transform .15s; }
.besocial__btn svg { width: 18px; height: 18px; flex: none; }
.besocial__btn:hover { border-color: var(--gm-accent, #f37920); color: var(--gm-accent-text, #c45d10); }
.besocial__btn--like[aria-pressed="true"] { border-color: var(--gm-accent, #f37920); background: var(--gm-accent, #f37920); color: #fff; }
.besocial__btn--like[aria-pressed="true"] svg { fill: currentColor; }
.besocial__btn--dislike[aria-pressed="true"] { border-color: var(--gm-muted, #667085); background: var(--gm-muted, #667085); color: #fff; }
.besocial__btn.is-pop { transform: scale(1.08); }
.besocial.is-busy { opacity: .7; pointer-events: none; }
.besocial__count { font-variant-numeric: tabular-nums; }
.besocial__msg { color: var(--gm-muted, #667085); font-size: .82rem; }
.besocial--comment .besocial__btn { min-height: 30px; padding: 4px 10px; font-size: .8rem; border-radius: 9px; }
.besocial--comment .besocial__btn svg { width: 14px; height: 14px; }
@media (prefers-reduced-motion: reduce) { .besocial__btn { transition: none; } }
