/* CB Members — Room Style (per-broadcaster looks on CB Live pages) */

/* Background + accent via CSS vars, scoped to CB Live wrap */
body.cbm-rs-bg-on .cbl-wrap { background: var(--cbm-rs-bg) !important; border-radius: 14px; padding: 14px; }
body.cbm-rs-accent-on .cbl-wrap a,
body.cbm-rs-accent-on .cbl-ln-badge,
body.cbm-rs-accent-on .cbl-roomname { color: var(--cbm-rs-accent) !important; }
body.cbm-rs-accent-on .cbl-ln-play,
body.cbm-rs-accent-on .cbl-fanbadge { background: var(--cbm-rs-accent) !important; }

/* Sexy fonts: ONLY names/titles/headings, never body text or chat.
   Always with a contrast shadow + minimum size so it stays readable. */
body.cbm-rs-font-on .cbl-roomname,
body.cbm-rs-font-on .cbl-ln-name,
body.cbm-rs-font-on .cbl-ln-title,
body.cbm-rs-font-on .cbl-wrap h1,
body.cbm-rs-font-on .cbl-wrap h2 {
	font-family: var(--cbm-rs-font) !important;
	font-size: max(1.15em, 18px);
	letter-spacing: .4px;
	text-shadow: 0 1px 3px rgba(0,0,0,.85), 0 0 12px rgba(0,0,0,.5);
}

/* Frames */
body.cbm-rs-frame-glow .cbl-roomcard,
body.cbm-rs-frame-glow .cbl-ln-card,
body.cbm-rs-frame-glow .cbl-wrap video { box-shadow: 0 0 18px rgba(224,68,124,.45) !important; }
body.cbm-rs-frame-neon .cbl-roomcard,
body.cbm-rs-frame-neon .cbl-ln-card,
body.cbm-rs-frame-neon .cbl-wrap video { border: 2px solid var(--cbm-rs-accent, #e0447c) !important; box-shadow: 0 0 10px var(--cbm-rs-accent, #e0447c), inset 0 0 6px rgba(255,255,255,.08) !important; }

/* Corners */
body.cbm-rs-corners-sharp .cbl-roomcard, body.cbm-rs-corners-sharp .cbl-ln-card, body.cbm-rs-corners-sharp .cbl-ln-thumb { border-radius: 0 !important; }
body.cbm-rs-corners-soft .cbl-roomcard, body.cbm-rs-corners-soft .cbl-ln-card, body.cbm-rs-corners-soft .cbl-ln-thumb { border-radius: 10px !important; }
body.cbm-rs-corners-round .cbl-roomcard, body.cbm-rs-corners-round .cbl-ln-card, body.cbm-rs-corners-round .cbl-ln-thumb { border-radius: 22px !important; }

/* Hide site logo on this room */
body.cbm-rs-hide-logo .logo, body.cbm-rs-hide-logo .logo-footer { display: none !important; }

/* Floating decoration layer (emoji fall) */
.cbm-rs-deco { position: fixed; inset: 0; pointer-events: none; z-index: 9990; overflow: hidden; }
.cbm-rs-deco span { position: absolute; top: -30px; animation: cbmRsFall linear forwards; opacity: .85; }
@keyframes cbmRsFall {
	0% { transform: translateY(-30px) rotate(0deg); }
	100% { transform: translateY(105vh) rotate(340deg); }
}

/* 🎨 owner button + panel */
#cbm-rs-fab { position: fixed; left: 18px; bottom: 84px; z-index: 9999; width: 46px; height: 46px; border-radius: 50%; border: 0; font-size: 20px; cursor: pointer; background: linear-gradient(135deg,#e0447c,#9b2ce0); box-shadow: 0 4px 14px rgba(0,0,0,.5); }
#cbm-rs-panel { position: fixed; left: 18px; bottom: 140px; z-index: 9999; width: 340px; max-width: calc(100vw - 36px); max-height: 70vh; overflow: auto; background: #16161d; color: #eee; border: 1px solid #2a2a36; border-radius: 14px; padding: 14px 16px; font-size: 13px; box-shadow: 0 10px 30px rgba(0,0,0,.6); }
.cbm-rs-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.cbm-rs-head b { font-size: 15px; }
#cbm-rs-close { background: none; border: 0; color: #999; font-size: 15px; cursor: pointer; }
#cbm-rs-panel label { display: block; margin: 10px 0 4px; color: #bbb; font-weight: 600; }
#cbm-rs-panel label small { color: #777; font-weight: 400; }
.cbm-rs-row { display: flex; flex-wrap: wrap; gap: 6px; }
.cbm-rs-opt { background: #22222c; border: 1px solid #2a2a36; color: #ddd; padding: 5px 10px; border-radius: 9px; cursor: pointer; font-size: 12px; }
.cbm-rs-opt.on { border-color: #e0447c; box-shadow: 0 0 8px rgba(224,68,124,.5); }
.cbm-rs-dot { width: 30px; height: 30px; border-radius: 50%; padding: 0; font-size: 9px; color: #fff; }
.cbm-rs-check { display: flex; align-items: center; gap: 8px; }
.cbm-rs-actions { display: flex; gap: 8px; margin-top: 14px; }
.cbm-rs-actions button { flex: 1; padding: 9px 0; border: 0; border-radius: 9px; cursor: pointer; font-weight: 700; color: #fff; background: #2a2a36; }
.cbm-rs-primary { background: linear-gradient(135deg,#e0447c,#9b2ce0) !important; }
.cbm-rs-note { color: #777; margin: 10px 0 0; font-size: 11px; }
