.locale-switch{border-radius:var(--radius-pill);background:#ffffff05;border:1px solid #ffffff14;gap:.2rem;padding:.3rem;transition:opacity .2s;display:inline-flex}.locale-switch.pending{opacity:.6}.locale-switch-option{border-radius:var(--radius-pill);color:var(--text-dim);letter-spacing:.14em;cursor:pointer;background:0 0;border:0;padding:.6rem 1rem;font-weight:700;transition:color .2s,background-color .2s}.locale-switch-option:hover{color:var(--text-light)}.locale-switch-option.active{background:var(--accent-muted);color:var(--accent)}
.live-banner{--tone:#ff4d6a;--tone-rgb:255, 77, 106;border-bottom:1px solid rgba(var(--tone-rgb), .2);background:radial-gradient(ellipse 40rem 100% at 0% 50%, rgba(var(--tone-rgb), .16), transparent 70%), linear-gradient(180deg, #0a100ff5, #060a09f5);-webkit-backdrop-filter:blur(14px);animation:.35s cubic-bezier(.22,1,.36,1) live-banner-in;position:relative}.live-banner.open{--tone:var(--accent);--tone-rgb:45, 224, 192}.live-banner.landing{border-bottom-color:rgba(var(--tone-rgb), .28)}.live-banner-inner{min-height:5.2rem;color:var(--text-secondary);align-items:center;gap:1.6rem;padding:.8rem 2.6rem;text-decoration:none;display:flex}.live-banner.landing .live-banner-inner{padding:.8rem 2rem}@media (min-width:768px){.live-banner.landing .live-banner-inner{padding-inline:4.8rem}}.live-banner-badge{border:1px solid rgba(var(--tone-rgb), .45);border-radius:var(--radius-pill);background:rgba(var(--tone-rgb), .12);height:2.6rem;color:var(--tone);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;flex-shrink:0;align-items:center;gap:.7rem;padding:0 1rem;font-size:1.05rem;font-weight:700;display:inline-flex}.live-banner-dot{background:currentColor;border-radius:50%;width:.7rem;height:.7rem;position:relative}.live-banner-dot:after{content:"";border:1px solid;border-radius:50%;animation:1.8s ease-out infinite live-banner-ring;position:absolute;inset:-.4rem}.live-banner-session{flex:1;align-items:center;gap:1.2rem;min-width:0;display:flex}.live-banner-avatar{width:3.2rem;height:3.2rem;color:var(--caution);letter-spacing:.04em;background:linear-gradient(160deg,#e8c76633,#e8c7660d);border:1px solid #e8c76666;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;display:inline-flex}.live-banner-copy{flex-direction:column;gap:.1rem;min-width:0;display:flex}.live-banner-title{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-small);color:var(--text-light);font-weight:700;overflow:hidden}.live-banner-meta{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-xs);color:var(--text-dim);overflow:hidden}.live-banner-sep{color:var(--text-faint);margin:0 .6rem}.live-banner-count{font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;color:var(--text-secondary);flex-shrink:0;align-items:center;gap:.6rem;display:inline-flex}.live-banner-cta{border-radius:var(--radius-md);background:var(--tone);color:#fff;height:3.4rem;font-size:var(--font-size-small);box-shadow:0 0 2.4rem rgba(var(--tone-rgb), .25);flex-shrink:0;align-items:center;gap:.6rem;padding:0 1.4rem;font-weight:700;transition:filter .15s,gap .15s;display:inline-flex}.live-banner.open .live-banner-cta{color:var(--text-on-accent)}.live-banner-inner:hover .live-banner-cta{filter:brightness(1.08);gap:.9rem}.live-banner-inner:focus-visible{outline:2px solid rgba(var(--tone-rgb), .6);outline-offset:-2px}.live-banner-progress{background:linear-gradient(90deg, rgba(var(--tone-rgb), .3), var(--tone));transform-origin:0;height:2px;transition:transform 1s linear;position:absolute;bottom:-1px;left:0;right:0}@keyframes live-banner-ring{0%{opacity:.8;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}@keyframes live-banner-in{0%{opacity:0;transform:translateY(-.6rem)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.live-banner,.live-banner-dot:after{animation:none}}@media (max-width:900px){.live-banner-count{display:none}}@media (max-width:575px){.live-banner-inner{gap:1rem;min-height:4.8rem;padding:.6rem 1.6rem}.live-banner-avatar{display:none}.live-banner-badge{padding:0 .8rem}.live-banner-cta{height:3.2rem;padding:0 1rem}}
