/* Subscribe + celeb-finder chat */
.bz-subscribe { display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 11px; border-radius: 999px; background: #FF0000; color: #fff; font-weight: 700; font-size: 12px; line-height: 1; text-decoration: none; white-space: nowrap; }
.bz-subscribe:hover { background: #CC0000; color: #fff; }
.bz-subscribe svg { flex-shrink: 0; }

.bze-side { position: fixed; right: 0; top: 42%; z-index: 40; background: #FF0000; color: #fff; text-decoration: none; font-weight: 700; font-size: 11px; padding: 9px 5px; border-radius: 8px 0 0 8px; writing-mode: vertical-rl; transform: rotate(180deg); letter-spacing: .02em; }
.bze-side:hover { background: #CC0000; color: #fff; }

.bze-fab { position: fixed; left: 16px; bottom: 16px; z-index: 45; width: 54px; height: 54px; border: 0; border-radius: 50%; background: var(--bz-brand); color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 26px; line-height: 1; animation: bze-glow 2.4s ease-in-out infinite; }
.bze-fab .bze-hand { display: inline-block; transform-origin: 70% 75%; }
.bze-fab.wave .bze-hand { animation: bze-wave 1.1s ease-in-out 2; }
.bze-hi { position: fixed; left: 78px; bottom: 28px; z-index: 45; background: var(--bz-card); color: var(--bz-ink); border: 1px solid var(--bz-line-2); border-radius: 14px 14px 14px 4px; padding: 7px 12px; font-size: 13px; font-weight: 700; opacity: 0; transform: translateY(6px); pointer-events: none; transition: opacity .25s, transform .25s; white-space: nowrap; }
.bze-hi.on { opacity: 1; transform: none; }
@keyframes bze-glow { 0%,100% { box-shadow: 0 0 0 0 rgba(255,0,102,.55), 0 0 12px 2px rgba(255,0,102,.35); } 50% { box-shadow: 0 0 0 10px rgba(255,0,102,0), 0 0 20px 6px rgba(255,0,102,.5); } }
@keyframes bze-wave { 0%,100% { transform: rotate(0); } 15% { transform: rotate(18deg); } 30% { transform: rotate(-12deg); } 45% { transform: rotate(18deg); } 60% { transform: rotate(-8deg); } 75% { transform: rotate(12deg); } }
@media (prefers-reduced-motion: reduce) { .bze-fab, .bze-fab.wave .bze-hand { animation: none; } }
.bze-panel { position: fixed; left: 16px; bottom: 80px; z-index: 46; width: 340px; max-width: calc(100vw - 32px); max-height: min(560px, calc(100vh - 110px)); display: flex; flex-direction: column; background: var(--bz-card); color: var(--bz-ink); border: 1px solid var(--bz-line-2); border-radius: 16px; overflow: hidden; }
.bze-panel[hidden] { display: none; }
.bze-head { display: flex; justify-content: space-between; align-items: center; padding: 12px 14px; border-bottom: 1px solid var(--bz-line); }
.bze-x { border: 0; background: none; font-size: 24px; line-height: 1; cursor: pointer; color: var(--bz-muted); }
.bze-log { padding: 12px 14px 4px; overflow-y: auto; display: flex; flex-direction: column; gap: 8px; flex: 1; min-height: 80px; }
.bze-b, .bze-m { font-size: 14px; line-height: 1.5; padding: 8px 12px; border-radius: 12px; max-width: 88%; }
.bze-b { background: var(--bz-chip); color: var(--bz-ink); }
.bze-m { background: var(--bz-accent); color: #fff; align-self: flex-end; }
.bze-res { padding: 0 14px 8px; display: flex; flex-direction: column; gap: 6px; }
.bze-hit { display: block; padding: 8px 12px; border: 1px solid var(--bz-line-2); border-radius: 10px; text-decoration: none; color: var(--bz-ink); font-size: 14px; }
.bze-hit:hover { border-color: var(--bz-accent); }
.bze-hit small { display: block; color: var(--bz-muted); font-size: 12px; }
.bze-btn { display: inline-block; border: 0; border-radius: 999px; padding: 8px 14px; background: var(--bz-solid); color: var(--bz-on-solid); font-weight: 700; font-size: 13px; cursor: pointer; text-decoration: none; }
.bze-btn.yt { background: #FF0000; color: #fff; }
.bze-form { display: flex; gap: 6px; padding: 10px 14px 14px; border-top: 1px solid var(--bz-line); }
.bze-form input[type="search"] { flex: 1; min-width: 0; height: 40px; border: 1px solid var(--bz-line-2); border-radius: 999px; padding: 0 14px; background: var(--bz-ground); color: var(--bz-ink); font-size: 14px; }
.bze-form button { width: 40px; height: 40px; border: 0; border-radius: 50%; background: var(--bz-accent); color: #fff; font-size: 18px; cursor: pointer; }
.bze-req { display: flex; flex-direction: column; gap: 8px; font-size: 13px; }
.bze-req input[type="email"] { height: 38px; border: 1px solid var(--bz-line-2); border-radius: 8px; padding: 0 10px; background: var(--bz-ground); color: var(--bz-ink); font-size: 14px; }
.bze-req label { display: flex; gap: 6px; align-items: flex-start; color: var(--bz-muted); font-size: 12px; }
.bze-err { color: #C1272D; font-size: 12px; }
.bze-hp { position: absolute; left: -9999px; }

.bze-vcard { display: flex; gap: 12px; align-items: center; justify-content: space-between; flex-wrap: wrap; max-width: 480px; margin: 0 auto 24px; padding: 12px 14px; border: 1px solid var(--bz-line-2); border-radius: 12px; background: var(--bz-card); }
.bze-vcard strong { display: block; font-size: 15px; }
.bze-vcard span { font-size: 13px; color: var(--bz-muted); }

@media (max-width: 860px) {
	.bz-subscribe { height: 24px; padding: 0 9px; font-size: 11px; }
	.bz-strip__end { gap: 10px; }
	.bz-sub-label-long { display: none; }
	.bze-side { font-size: 10px; padding: 8px 4px; top: 38%; }
	.bze-fab { width: 48px; height: 48px; left: 12px; bottom: 12px; font-size: 23px; }
	.bze-hi { left: 68px; bottom: 22px; }
	.bze-panel { left: 8px; right: 8px; width: auto; max-width: none; bottom: 70px; }
}
