@import url("https://fonts.googleapis.com/css2?family=Exo+2:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700&family=JetBrains+Mono:wght@400;500;600;700&family=Orbitron:wght@400;500;600;700;800;900&display=swap");:root{--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--safe-area-right:env(safe-area-inset-right,0px);--bubbles-visual-vh:100dvh;--bubbles-visual-offset-bottom:0px;--shell-max-width:720px;--shell-padding-x:16px;--header-height:56px;--app-top-bar-height:52px;--app-top-bar-total-height:calc(max(8px, var(--safe-area-top)) + var(--app-top-bar-height) + 8px);--app-bottom-nav-height:60px;--app-chrome-top:var(--app-top-bar-total-height);--app-chrome-bottom:calc(var(--app-bottom-nav-height) + var(--safe-area-bottom));--app-chrome-bottom-desktop:var(--safe-area-bottom);--modal-overlay-gap:12px;--modal-header-clearance:0px;--modal-footer-clearance:12px;--modal-min-height:280px;--font-body:"Exo 2",system-ui,sans-serif;--font-display:"Orbitron","Exo 2",sans-serif;--font-button:"Orbitron","Exo 2",sans-serif;--font-mono:"JetBrains Mono","Courier New",monospace;--border-radius-sm:8px;--border-radius-md:14px;--border-radius-lg:22px;--transition-fast:150ms ease;--transition-normal:250ms ease}*{box-sizing:border-box}*,:after,:before{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none;width:0;height:0}body,html{margin:0;padding:0;min-height:100%}html{overflow-x:hidden;-webkit-text-size-adjust:100%}html.pwa-standalone{--bubbles-visual-vh:100lvh;--bubbles-visual-offset-bottom:0px;--app-safe-bottom:max(var(--safe-area-bottom),34px);--app-chrome-bottom:calc(var(--app-bottom-nav-height) + var(--app-safe-bottom));min-height:calc(100% + env(safe-area-inset-top));overscroll-behavior:none}html.pwa-standalone body{position:fixed;inset:0;width:100%;min-height:0;max-height:none;overflow:hidden;overscroll-behavior:none}body{min-height:100vh;min-height:100dvh;min-height:var(--bubbles-visual-vh);font-family:var(--font-body);font-weight:300;color:var(--color-text-primary,#e2e8f0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none;padding:0}button:disabled{cursor:not-allowed;opacity:.6}img{max-width:100%;display:block}.app-shell{position:relative;width:100%;max-width:var(--shell-max-width);margin:0 auto;min-height:100vh;min-height:100dvh;min-height:var(--bubbles-visual-vh);padding-left:max(var(--shell-padding-x),env(safe-area-inset-left));padding-right:max(var(--shell-padding-x),env(safe-area-inset-right));padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px}.app-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:8px 4px}.app-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:clamp(1.4rem,2.4vw + 1rem,2rem);letter-spacing:.02em;color:var(--color-text-primary)}.app-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.nav-pill{padding:8px 14px;border-radius:999px;border:1px solid var(--card-border-color,color-mix(in srgb,var(--color-primary) 30%,transparent));background:var(--card-inner-bg,color-mix(in srgb,var(--color-primary) 10%,transparent));color:var(--color-text-primary);font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.04em;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.nav-pill:hover{background:color-mix(in srgb,var(--color-primary) 18%,transparent);border-color:color-mix(in srgb,var(--color-primary) 55%,transparent)}.nav-pill:active{transform:translateY(1px)}@media (max-width:767px){body.app-chrome-locked{overflow:hidden}}.app-layout{width:100%;margin:0;min-height:100vh;min-height:100dvh;min-height:var(--bubbles-visual-vh);display:flex;flex-direction:column;background:transparent}.app-layout__body{flex:1 1;min-height:0;display:flex;flex-direction:column;width:100%;max-width:var(--shell-max-width);margin:0 auto}.app-layout--fixed-chrome{padding-left:0;padding-right:0}.app-top-bar{flex-shrink:0;width:100%;position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:8px;gap:8px;min-height:var(--app-top-bar-height);padding:8px max(12px,var(--safe-area-right)) 8px max(12px,var(--safe-area-left));padding-top:max(8px,var(--safe-area-top));z-index:40;background:var(--chrome-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--chrome-border)}.app-header-nav{display:none;align-items:center;gap:6px}.app-header-nav__item{display:inline-flex;align-items:center;padding:8px 14px;border-radius:999px;border:1px solid transparent;color:var(--color-text-muted);font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast)}.app-header-nav__item:hover{color:var(--color-text-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent);border-color:color-mix(in srgb,var(--color-primary) 25%,transparent)}.app-header-nav__item--active{color:var(--color-text-primary);background:color-mix(in srgb,var(--color-primary) 18%,transparent);border-color:color-mix(in srgb,var(--color-primary) 40%,transparent)}.app-header-nav__label{line-height:1}.app-top-bar__side{display:flex;align-items:center;min-width:44px}.app-top-bar__side--left{justify-content:flex-start}.app-top-bar__side--right{justify-content:flex-end}.app-top-bar__spacer{display:block;width:44px;height:44px}.app-top-bar__title{margin:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;font-family:var(--font-display);font-weight:700;font-size:clamp(1.1rem,2vw + .85rem,1.5rem);letter-spacing:.04em;color:var(--color-text-primary);white-space:nowrap}.app-top-bar__logo{flex-shrink:0;width:34px;height:34px;display:block}.app-top-bar__icon-btn{width:44px;height:44px;border-radius:50%;border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),border-color var(--transition-fast)}.app-top-bar__icon-btn:hover{background:color-mix(in srgb,var(--color-primary) 22%,transparent);border-color:color-mix(in srgb,var(--color-primary) 55%,transparent)}.app-top-bar__sign-in{padding:8px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-text-primary);font-size:12px;font-weight:500}.app-layout__main{flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:12px;padding:8px max(var(--shell-padding-x),var(--safe-area-right)) 12px max(var(--shell-padding-x),var(--safe-area-left))}.app-layout__hint{margin:4px 4px 8px;color:var(--color-text-secondary);font-size:14px}.live-feed__header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.live-feed__hint{flex:1 1;margin:4px 4px 8px}.live-feed__refresh{flex-shrink:0;margin-top:2px;width:36px;height:36px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-text-primary);font-size:18px;line-height:1;cursor:pointer}.live-feed__refresh:disabled{opacity:.5;cursor:wait}.live-feed__pull-indicator{display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:12px;overflow:hidden;transition:height .15s ease}.events-feed__header{justify-content:space-between;gap:8px;margin-bottom:4px}.events-feed__header,.login-prompt{display:flex;align-items:flex-start}.login-prompt{flex-direction:column;gap:10px;margin:4px 4px 8px;padding:14px 16px;border-radius:var(--border-radius-md);border:1px solid color-mix(in srgb,var(--color-primary) 30%,transparent);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.login-prompt__text{margin:0;font-size:14px;color:var(--color-text-secondary);line-height:1.4}.login-prompt__btn{padding:8px 18px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 50%,transparent);background:color-mix(in srgb,var(--color-primary) 18%,transparent);color:var(--color-text-primary);font-family:var(--font-button);font-size:13px;font-weight:600;letter-spacing:.03em;transition:background var(--transition-fast),border-color var(--transition-fast)}.login-prompt__btn:hover{background:color-mix(in srgb,var(--color-primary) 28%,transparent);border-color:color-mix(in srgb,var(--color-primary) 70%,transparent)}.events-feed__title{margin:4px 4px 0;font-size:18px;font-weight:700;color:var(--color-text-primary)}.events-feed__hint{margin-top:2px}.events-feed__refresh{flex-shrink:0;margin-top:2px;width:36px;height:36px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-text-primary);font-size:18px;line-height:1;cursor:pointer}.events-feed__refresh:disabled{opacity:.5;cursor:wait}.events-feed__views{display:flex;gap:4px;margin:10px 4px 4px;padding:4px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 25%,transparent);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.events-feed__view{flex:1 1;padding:8px 12px;border:none;border-radius:999px;background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.events-feed__view--active{background:color-mix(in srgb,var(--color-primary) 85%,transparent);color:#fff}.seg-toggle{display:flex;gap:4px;padding:4px;border-radius:999px;border:1px solid var(--accent-border);background:var(--accent-tint)}.seg-toggle__option{flex:1 1;padding:8px 12px;border:none;border-radius:999px;background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.seg-toggle__option--active{background:color-mix(in srgb,var(--color-primary) 85%,transparent);color:#fff}.accent-swatches{display:flex;gap:8px;width:100%}.accent-swatch{flex:1 1;aspect-ratio:1;min-width:0;padding:0;border:2px solid transparent;border-radius:8px;background:var(--swatch,var(--color-primary));cursor:pointer;opacity:.42;transition:opacity .15s ease,box-shadow .15s ease,border-color .15s ease,transform .15s ease}.accent-swatch--white{border-color:var(--border-subtle)}.accent-swatch--active{opacity:1;border-color:var(--color-text-primary);box-shadow:0 0 0 2px var(--color-bg-main),0 0 0 4px var(--color-primary);transform:scale(1.04)}.accent-swatch:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.events-feed__day{margin-top:16px}.events-feed__day-label{margin:0 4px 8px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary)}.events-feed__list{display:flex;flex-direction:column;gap:10px}.event-card{border-radius:12px;border:2px solid var(--card-border-color);background:var(--card-bg-solid);box-shadow:var(--card-shadow);overflow:hidden}.event-card--live{border-color:rgba(34,197,94,.45);box-shadow:0 0 0 1px rgba(34,197,94,.15),var(--card-shadow)}.event-card__main{display:flex;gap:12px;width:100%;padding:12px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.event-card__thumb{flex-shrink:0;width:52px;height:52px;border-radius:10px;overflow:hidden;background:color-mix(in srgb,var(--color-primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-primary) 20%,transparent);display:flex;align-items:center;justify-content:center}.event-card__thumb-img{width:100%;height:100%;object-fit:cover}.event-card__thumb-fallback{font-size:22px;color:color-mix(in srgb,var(--color-primary) 55%,transparent)}.event-card__body{min-width:0;flex:1 1}.event-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;color:var(--color-text-secondary)}.event-card__chip{padding:1px 6px;border-radius:999px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);border:1px solid color-mix(in srgb,var(--color-primary) 25%,transparent);color:var(--color-text-primary);font-size:10px;font-weight:600;text-transform:capitalize}.event-card__live{display:inline-flex;align-items:center;gap:4px;color:var(--color-success);font-weight:700}.event-card__live-dot{width:7px;height:7px;border-radius:999px;background:var(--color-success)}.event-card__title{margin:6px 0 0;font-size:15px;font-weight:700;line-height:1.3}.event-card__subtitle,.event-card__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-card__subtitle{margin:4px 0 0;font-size:12px;color:var(--color-text-secondary)}.event-card__expanded{padding:0 12px 12px;border-top:1px solid color-mix(in srgb,var(--color-primary) 15%,transparent)}.event-card__description{margin:12px 0 0;font-size:13px;line-height:1.5;color:var(--color-text-primary);white-space:pre-wrap}.event-card__description--empty{color:var(--color-text-secondary);font-style:italic}.event-card__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.event-card__action{padding:8px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);background:transparent;color:var(--color-text-primary);font-size:12px;font-weight:600;cursor:pointer}.event-card__action--primary{background:color-mix(in srgb,var(--color-primary) 18%,transparent);border-color:color-mix(in srgb,var(--color-primary) 45%,transparent)}.event-card__action:disabled{opacity:.55;cursor:default}.event-card__rsvp{margin-top:12px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--color-primary) 12%,transparent);display:flex;flex-direction:column;gap:10px}.event-card__rsvp-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.event-card__rsvp-count,.event-card__rsvp-hint{font-size:12px;color:var(--color-text-secondary)}.event-card__rsvp-hint{margin:0}.event-card__rsvp-hint--ok{color:#34d399;font-weight:600}.event-card__codeword{display:flex;flex-direction:column;gap:8px}.event-card__codeword-input{flex:1 1 140px;min-width:0;padding:8px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);background:var(--surface-raised);color:var(--color-text-primary);font-size:13px}.event-card__codeword-input:focus{outline:none;border-color:color-mix(in srgb,var(--color-primary) 60%,transparent)}.event-card__reminder{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--color-primary) 10%,transparent)}.event-card__reminder-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.event-card__reminder-label{font-size:13px;font-weight:600;color:var(--color-text-primary)}.event-card__reminder-status{font-size:12px;color:#34d399;font-weight:600}.event-card__reminder-options{display:flex;flex-wrap:wrap;gap:6px}.event-card__reminder-chip{padding:6px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 25%,transparent);background:rgba(15,10,30,.35);color:var(--color-text-secondary);font-size:12px;cursor:pointer}.event-card__reminder-chip--active{border-color:color-mix(in srgb,var(--color-primary) 65%,transparent);background:color-mix(in srgb,var(--color-primary) 18%,transparent);color:var(--color-text-primary);font-weight:600}.event-card__reminder-chip:disabled{opacity:.55;cursor:default}.event-card__reminder-cancel{align-self:flex-start;padding:0;border:none;background:none;color:var(--color-text-secondary);font-size:12px;text-decoration:underline;cursor:pointer}.event-card__reminder-cancel:disabled{opacity:.55;cursor:default}.app-layout__stations{display:flex;flex-direction:column;gap:12px}.app-bottom-nav{flex-shrink:0;width:100%;display:flex;align-items:stretch;justify-content:space-around;gap:4px;min-height:var(--app-bottom-nav-height);padding:6px max(8px,var(--safe-area-right)) max(6px,var(--safe-area-bottom)) max(8px,var(--safe-area-left));border-top:1px solid var(--chrome-border);background:var(--chrome-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:40}.app-bottom-nav__item{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 4px;border-radius:var(--border-radius-sm);color:var(--color-text-muted);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;transition:color var(--transition-fast),background var(--transition-fast)}.app-bottom-nav__item:hover:not(:disabled){color:var(--color-text-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent)}.app-bottom-nav__item--active{color:var(--color-text-primary);background:color-mix(in srgb,var(--color-primary) 18%,transparent)}.app-bottom-nav__item:disabled{opacity:.45}.app-bottom-nav__label{line-height:1}@media (max-width:767px){.app-layout,.app-layout--fixed-chrome{position:fixed;inset:0;max-width:none;width:100%;margin:0;padding:0;overflow:hidden}html.pwa-standalone .app-layout,html.pwa-standalone .app-layout--fixed-chrome,html:not(.pwa-standalone) .app-layout,html:not(.pwa-standalone) .app-layout--fixed-chrome{height:var(--bubbles-visual-vh);min-height:var(--bubbles-visual-vh);max-height:var(--bubbles-visual-vh)}.app-layout__body{max-width:none}.app-bottom-nav{width:100%;z-index:40}.app-layout__main{padding-bottom:12px}html.pwa-standalone .app-bottom-nav{padding-bottom:var(--app-safe-bottom)}html.pwa-standalone .bubble-fab,html.pwa-standalone .chat-fab{bottom:calc(var(--app-bottom-nav-height) + var(--app-safe-bottom) + 18px)}html.pwa-standalone body:has(.bubbles-fm-indicator) .bubble-fab,html.pwa-standalone body:has(.bubbles-fm-indicator) .chat-fab{bottom:calc(var(--app-bottom-nav-height) + var(--app-safe-bottom) + 70px)}html.pwa-standalone .bubbles-fm-indicator,html.pwa-standalone .voice-onair{bottom:calc(var(--app-bottom-nav-height) + var(--app-safe-bottom) + 14px)}}@media (min-width:768px){.modal-portal-overlay{padding-bottom:calc(max(var(--modal-overlay-gap), var(--app-chrome-bottom-desktop)) + var(--modal-footer-clearance))}body.app-chrome-locked{overflow-y:auto}.app-layout--fixed-chrome{min-height:var(--bubbles-visual-vh)}.app-top-bar{position:-webkit-sticky;position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:12px max(24px,var(--safe-area-right)) 12px max(24px,var(--safe-area-left));padding-top:max(12px,var(--safe-area-top))}.app-top-bar__title{position:absolute;left:50%;transform:translateX(-50%);pointer-events:none}.app-top-bar__side--right{flex:1 1;justify-content:flex-end}.app-header-nav{display:flex}.app-bottom-nav{display:none}.app-layout__body{flex:1 1;min-height:0}.bubble-fab,.bubbles-fm-indicator,.chat-fab,.voice-onair{bottom:max(24px,var(--app-chrome-bottom-desktop))}}.modal-portal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:calc(var(--app-chrome-top) + var(--modal-overlay-gap)) max(var(--modal-overlay-gap),env(safe-area-inset-right)) calc(var(--app-chrome-bottom) + var(--modal-footer-clearance)) max(var(--modal-overlay-gap),env(safe-area-inset-left));background:var(--overlay-scrim);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:fadeIn var(--transition-fast);overflow:hidden}.modal-portal-overlay--passive{pointer-events:none}.modal-portal-overlay--passive .modal-portal-content{pointer-events:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.modal-title{margin:0;font-size:1.125rem;font-weight:700}.modal-close,.modal-title{color:var(--color-text-primary)}.modal-close{width:36px;height:36px;border:1px solid var(--accent-border-soft);border-radius:50%;background:var(--accent-tint-strong);font-size:22px;line-height:1;cursor:pointer;flex-shrink:0}.station-player-modal{padding:16px 20px 20px;display:flex;flex-direction:column;max-height:100%;min-height:0}.station-player-modal__toolbar{justify-content:space-between;margin-bottom:12px}.station-player-modal__toolbar,.station-player-modal__toolbar-actions{display:flex;align-items:center;gap:8px}.station-player-modal__share-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--accent-border-soft);border-radius:999px;background:var(--accent-tint-strong);color:var(--color-text-primary);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.station-player-modal__share-btn:hover{background:var(--accent-tint-strong);border-color:var(--accent-border);filter:brightness(1.08)}.station-player-modal__chrome-btn{width:36px;height:36px;border:1px solid var(--accent-border-soft);border-radius:50%;background:var(--accent-tint-strong);color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast)}.station-player-modal__chrome-btn:hover{background:var(--accent-tint-strong);border-color:var(--accent-border);filter:brightness(1.08)}.station-player-modal__chrome-btn--close{font-size:22px;line-height:1}.station-player-modal__hero{display:flex;flex-direction:row;align-items:center;gap:16px;width:100%;margin:0 0 20px;padding:16px;border:2px solid color-mix(in srgb,var(--color-primary) 25%,transparent);border-radius:var(--border-radius-md);background:color-mix(in srgb,var(--color-primary) 8%,transparent);cursor:default;text-align:left}.station-player-modal__hero:not(:disabled){cursor:pointer}.station-player-modal__hero:not(:disabled):hover{border-color:color-mix(in srgb,var(--color-primary) 45%,transparent);background:color-mix(in srgb,var(--color-primary) 14%,transparent)}.station-player-modal__avatar{width:72px;height:72px;flex-shrink:0;border-radius:50%;object-fit:cover;border:2px solid color-mix(in srgb,var(--color-primary) 40%,transparent);box-shadow:0 4px 20px rgba(0,0,0,.35)}.station-player-modal__avatar--fallback{display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:2rem;font-weight:700;color:#fff}.station-player-modal__hero-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1}.station-player-modal__bubble-name{margin:0;font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:.03em;color:var(--color-text-primary)}.station-player-modal__host-name{margin:0;font-size:.9rem;color:var(--color-text-secondary)}.station-player-modal__volume{display:block;font-size:12px;color:var(--color-text-muted);margin-bottom:16px}.station-player-modal__volume input{width:100%;margin-top:8px}.station-player-modal__enter-bubble{width:100%;margin-bottom:16px;padding:12px 16px;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-primary) 45%,transparent);background:color-mix(in srgb,var(--color-primary) 18%,transparent);color:var(--color-text-primary);font-weight:600;cursor:pointer}.station-player-modal__enter-bubble:hover{background:color-mix(in srgb,var(--color-primary) 28%,transparent)}.station-player-modal__actions{display:flex;gap:8px;margin-bottom:16px}.station-player-modal__actions .station-player-modal__enter-bubble{flex:1 1;margin-bottom:0}.station-player-modal__chat-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;padding:12px 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-primary) 45%,transparent);background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-text-primary);font-weight:600;cursor:pointer}.station-player-modal__chat-btn.is-active,.station-player-modal__chat-btn:hover{background:color-mix(in srgb,var(--color-primary) 28%,transparent)}.station-player-modal__split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);grid-gap:20px;gap:20px;align-items:start;min-height:0}.station-player-modal__body-col,.station-player-modal__video-col{min-width:0}.station-player-modal__body-col{display:flex;flex-direction:column}.station-video{margin:0 0 16px}.station-video__frame{position:relative;width:100%}.station-video__canvas{width:100%;display:block;border-radius:10px;background:#000;image-rendering:pixelated}.station-video__expand{position:absolute;top:8px;right:8px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:rgba(0,0,0,.55);color:#fff;cursor:pointer;opacity:.85;transition:opacity .15s ease}.station-video__expand:hover{opacity:1}.station-video__hint{margin:6px 0 0;text-align:center;font-size:12px;color:var(--color-text-secondary)}.station-video__sync{display:flex;flex-direction:column;gap:4px;margin-top:10px;font-size:12px}.station-video__sync-label{display:flex;align-items:center;justify-content:space-between;opacity:.75}.station-video__sync-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.9}.station-video__sync input[type=range]{width:100%;accent-color:var(--color-primary)}.station-video__styles{display:flex;gap:6px;margin-top:8px}.station-video__style-btn{flex:1 1;padding:6px 8px;border-radius:8px;border:1px solid var(--border-subtle);background:transparent;color:inherit;cursor:pointer;font-size:12px;transition:background .15s ease,border-color .15s ease}.station-video__style-btn:hover{background:var(--surface-raised)}.station-video__style-btn.is-active{background:rgba(124,92,255,.28);border-color:rgba(124,92,255,.7)}.station-video__controls{display:flex;gap:8px;margin-top:8px}.station-video__btn{flex:1 1;padding:8px 10px;border-radius:8px;border:1px solid var(--border-subtle);background:transparent;color:inherit;cursor:pointer;font-size:13px}.station-video__btn:hover{background:var(--surface-raised)}.station-video-overlay{position:fixed;z-index:10070;background:#050409}.station-video-overlay,.station-video-overlay__stage{inset:0;display:flex;align-items:center;justify-content:center}.station-video-overlay__stage{position:absolute}.station-video-overlay__canvas{image-rendering:pixelated;background:#000}.station-video-overlay__status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:hsla(0,0%,100%,.8);font-size:14px}.station-video-overlay__rotate{position:absolute;left:50%;bottom:calc(84px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);padding:6px 12px;border-radius:999px;background:rgba(0,0,0,.6);color:#fff;font-size:12px;pointer-events:none;transition:opacity .25s ease}.station-video-overlay__chrome{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px calc(16px + env(safe-area-inset-bottom, 0px));background:linear-gradient(0deg,rgba(0,0,0,.72) 0,rgba(0,0,0,.3) 70%,transparent);transition:opacity .25s ease}.station-video-overlay__chrome.is-hidden,.station-video-overlay__rotate.is-hidden{opacity:0}.station-video-overlay__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.station-video-overlay__host{color:#fff;font-weight:700;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-video-overlay__listeners{color:hsla(0,0%,100%,.75);font-size:12px}.station-video-overlay__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.station-video-overlay__btn{padding:8px 12px;border-radius:8px;border:1px solid var(--border-subtle);background:rgba(0,0,0,.4);color:#fff;cursor:pointer;font-size:13px}.station-video-overlay__btn--close{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;padding:0}.bubble-viewport{position:fixed;inset:0;z-index:10060;background:#0a0812}.bubble-viewport__canvas-host,.bubble-viewport__canvas-host canvas{width:100%;height:100%;display:block}.bubble-viewport__canvas-host{touch-action:none}.bubble-viewport__labels{position:absolute;inset:0;pointer-events:none}.bubble-viewport__label{padding:4px 10px;border-radius:8px;background:rgba(0,0,0,.55);color:#fff;font-size:12px;font-weight:600;white-space:nowrap;transform:translate(-50%,-100%)}.bubble-viewport__label--host{background:linear-gradient(135deg,#ffd86b,#f5a623);color:#3a2400;font-weight:800;box-shadow:0 0 12px rgba(255,196,87,.55)}.bubble-viewport__label--speaker{background:linear-gradient(135deg,#7cb8ff,#3d7bd9);color:#06182e;font-weight:700}.bubble-viewport__label.is-speaking{box-shadow:0 0 0 2px rgba(74,222,128,.9),0 0 16px rgba(74,222,128,.6)}.bubble-viewport__label-mic{margin-left:5px;font-size:10px}.bubble-viewport__label-mic:before{content:"🎙"}.bubble-viewport__label.is-muted .bubble-viewport__label-mic:before{content:"🔇"}.bubble-viewport__label.is-muted{opacity:.75}.voice-dock{position:absolute;left:50%;bottom:calc(64px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;width:min(92vw,420px)}.voice-dock__row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.voice-dock__btn{padding:9px 16px;border-radius:999px;border:1px solid hsla(0,0%,100%,.25);background:rgba(0,0,0,.6);color:#fff;font-size:13px;font-weight:700;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.voice-dock__btn:disabled{opacity:.55;cursor:default}.voice-dock__btn.is-active{border-color:rgba(96,165,250,.9);background:rgba(37,99,235,.45)}.voice-dock__btn.is-muted{border-color:hsla(0,91%,71%,.8);color:#fca5a5}.voice-dock__btn--danger{border-color:hsla(0,91%,71%,.6);color:#fca5a5}.voice-dock__btn--small{padding:4px 10px;font-size:11px}.voice-dock__hint{padding:6px 12px;border-radius:999px;background:rgba(0,0,0,.55);color:#fbbf24;font-size:12px;font-weight:600}.voice-dock__queue{width:100%;max-height:40vh;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:14px;border:1px solid hsla(0,0%,100%,.18);background:rgba(0,0,0,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.voice-dock__queue-row{display:flex;align-items:center;gap:8px}.voice-dock__queue-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff}.voice-dock__queue-avatar img{width:100%;height:100%;object-fit:cover}.voice-dock__queue-name{flex:1 1;color:#fff;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bubble-viewport__close{top:calc(16px + env(safe-area-inset-top, 0px));right:calc(16px + env(safe-area-inset-right, 0px));justify-content:center;width:44px;height:44px;padding:0;border-radius:50%;border:none;background:rgba(0,0,0,.5);color:#fff;cursor:pointer}.bubble-viewport__close,.bubble-viewport__footer{position:absolute;z-index:2;display:flex;align-items:center}.bubble-viewport__footer{left:0;right:0;bottom:0;flex-direction:column;gap:4px;padding:14px 20px calc(14px + env(safe-area-inset-bottom, 0px));pointer-events:none;text-align:center;background:linear-gradient(0deg,rgba(0,0,0,.72) 0,rgba(0,0,0,.35) 70%,transparent)}.bubble-viewport__footer-brand{color:#fff;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:lowercase}.bubble-viewport__footer-meta{color:hsla(0,0%,100%,.82);font-size:12px;font-weight:500;max-width:min(92vw,480px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bubble-viewport__status{position:absolute;left:50%;bottom:calc(72px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);padding:8px 14px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:13px}.bubble-viewport__status--error{background:rgba(180,40,40,.75)}.avatar3d-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:12px;gap:12px;max-height:360px;overflow-y:auto}.avatar3d-picker__item{display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-primary) 25%,transparent);background:var(--surface-raised);color:var(--color-text-primary);cursor:pointer;text-align:left}.avatar3d-picker__item:hover{border-color:color-mix(in srgb,var(--color-primary) 50%,transparent)}.avatar3d-picker__thumb{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.avatar3d-picker__thumb--fallback{background:linear-gradient(135deg,#4c1d95,#1e3a5f)}.avatar3d-picker__name{font-size:12px;font-weight:600}.avatar3d-picker__collection{font-size:11px;color:var(--color-text-muted)}.station-audio-meter{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.station-audio-meter__label{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;color:var(--color-text-muted)}.station-audio-meter__hint{font-size:11px;color:var(--color-text-muted);opacity:.85;text-align:right;flex:1 1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.station-audio-meter__bar{position:relative;width:100%;height:8px;border-radius:999px;background:var(--surface-raised-strong);overflow:hidden}.station-audio-meter__fill{height:100%;width:0;background:transparent;border-radius:999px;transition:width 60ms linear,background .12s linear}.station-audio-meter__bar--pulse .station-audio-meter__fill{transition:width .12s ease-out,background .2s linear}.listeners-panel{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-hairline);min-height:0}.listeners-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-shrink:0}.listeners-panel__title{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.listeners-panel__count{font-size:12px;color:var(--color-text-muted)}.listeners-panel__scroll{max-height:calc(4 * 54px + 3 * 8px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.listeners-panel__grid{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:flex-start;align-content:flex-start}.listeners-panel__tile{width:48px;text-align:center;flex-shrink:0}.listeners-panel__tile--btn{margin:0;padding:0;border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;border-radius:8px;transition:background .15s ease}.listeners-panel__tile--btn:hover{background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.listeners-panel__tile--btn:focus-visible{outline:2px solid color-mix(in srgb,var(--color-primary) 50%,transparent);outline-offset:2px}.listeners-panel__avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;margin:0 auto;display:block}.listeners-panel__avatar--anon{background:var(--surface-raised-strong);display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--color-text-muted)}.listeners-panel__label{font-size:9px;margin-top:4px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:48px}.listeners-panel__label--self{color:var(--color-success,#22d3ee);font-weight:700}.listeners-panel__label--friend{color:var(--color-accent,#d946ef);font-weight:600}.listeners-panel__anon-footer{margin:10px 0 0;padding:0;text-align:center;flex-shrink:0}.listeners-panel__anon-pill{display:inline-block;padding:6px 12px;border-radius:20px;background:var(--surface-raised);font-size:11px;color:var(--color-text-muted)}.listeners-panel__empty{font-size:12px;color:var(--color-text-muted)}.broadcast-ended-modal{padding:20px 22px 22px;text-align:center}.broadcast-ended-modal__eyebrow{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.broadcast-ended-modal__title{margin:0;font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:var(--color-text-primary)}.broadcast-ended-modal__host{margin:6px 0 0;font-size:13px;color:var(--color-text-secondary)}.broadcast-ended-modal__message{margin:14px 0 18px;font-size:14px;line-height:1.45;color:var(--color-text-secondary)}.broadcast-ended-modal__stats{list-style:none;margin:0 0 20px;padding:14px 16px;border-radius:var(--border-radius-md);background:var(--surface-raised);border:1px solid var(--border-hairline);text-align:left}.broadcast-ended-modal__stats li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;font-size:13px}.broadcast-ended-modal__stats li+li{border-top:1px solid var(--border-faint)}.broadcast-ended-modal__stat-label{color:var(--color-text-muted)}.broadcast-ended-modal__close,.broadcast-ended-modal__stat-value{font-weight:600;color:var(--color-text-primary)}.broadcast-ended-modal__close{width:100%;padding:12px 16px;border:none;border-radius:var(--border-radius-md);background:color-mix(in srgb,var(--color-primary) 35%,transparent);font-size:15px;cursor:pointer;transition:background var(--transition-fast)}.broadcast-ended-modal__close:hover{background:color-mix(in srgb,var(--color-primary) 50%,transparent)}.modal-portal-content--stacked{display:flex;flex-direction:column;overflow:hidden}.modal-portal-content--stacked>:last-child{flex:1 1;min-height:0;overflow-y:auto}.modal-portal-content{background:var(--card-bg);border:2px solid var(--card-border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg),0 0 60px color-mix(in srgb,var(--color-primary) 15%,transparent);width:100%;max-width:400px;min-height:min(var(--modal-min-height),100%);max-height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;animation:slideUp var(--transition-normal)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}html[data-theme=other]{--color-bg-dark:#0a0a12;--color-bg-main:#12121a;--color-bg-light:#1a1a2e;--color-bg-card:#16161f;--color-primary:#8b5cf6;--color-primary-light:#a78bfa;--color-primary-dark:#7c3aed;--color-accent:#d946ef;--color-accent-light:#f0abfc;--color-gold:#a855f7;--color-gold-light:#c084fc;--color-success:#22d3ee;--color-success-bg:rgba(34,211,238,.15);--color-success-border:rgba(34,211,238,.3);--color-warning:#f59e0b;--color-warning-bg:rgba(245,158,11,.1);--color-warning-border:rgba(245,158,11,.3);--color-danger:#ef4444;--color-danger-bg:rgba(239,68,68,.15);--color-danger-border:rgba(239,68,68,.3);--color-info:#38bdf8;--color-info-bg:rgba(56,189,248,.1);--color-info-border:rgba(56,189,248,.45);--color-text-primary:#e2e8f0;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--shadow-sm:0 2px 4px color-mix(in srgb,var(--color-primary) 15%,transparent);--shadow-md:0 4px 8px color-mix(in srgb,var(--color-primary) 20%,transparent);--shadow-lg:0 8px 16px color-mix(in srgb,var(--color-primary) 25%,transparent);--bg-gradient-start:#1a1a2e;--bg-gradient-end:#0a0a12;--card-bg:linear-gradient(180deg,#1e1e2d,#16161f);--card-bg-solid:#1a1a28;--card-border:2px solid color-mix(in srgb,var(--color-primary) 30%,transparent);--card-border-color:color-mix(in srgb,var(--color-primary) 30%,transparent);--card-shadow:0 0 20px color-mix(in srgb,var(--color-primary) 15%,transparent);--card-shadow-hover:0 4px 20px color-mix(in srgb,var(--color-primary) 30%,transparent);--card-text:#e2e8f0;--card-text-secondary:#94a3b8;--card-text-muted:#64748b;--card-text-accent:var(--color-primary-light);--card-icon-color:var(--color-primary-light);--card-divider:color-mix(in srgb,var(--color-primary) 30%,transparent);--card-inner-bg:color-mix(in srgb,var(--color-primary) 10%,transparent);--card-inner-border:color-mix(in srgb,var(--color-primary) 20%,transparent);--input-bg:hsla(0,0%,100%,.05);--input-border:hsla(0,0%,100%,.15);--input-text:var(--color-text-primary);--input-placeholder:var(--color-text-muted);--subtab-bg:color-mix(in srgb,var(--color-primary) 10%,transparent);--subtab-active-bg:var(--color-primary);--subtab-border:color-mix(in srgb,var(--color-primary) 20%,transparent);--subtab-active-border:transparent;--subtab-text:var(--color-text-secondary);--subtab-active-text:#fff;--subtab-accent:color-mix(in srgb,var(--color-primary) 20%,transparent);--subtab-accent-border:color-mix(in srgb,var(--color-primary) 40%,transparent);--nav-gradient:linear-gradient(180deg,#12121a,#0a0a12);--nav-gradient-reverse:linear-gradient(180deg,#0a0a12,#12121a);--nav-border:color-mix(in srgb,var(--color-primary) 15%,transparent);--chrome-bg:#0a0a12;--chrome-border:color-mix(in srgb,var(--color-primary) 18%,transparent);--btn-purple-gradient:linear-gradient(145deg,var(--color-primary-light) 0%,var(--color-primary) 50%,var(--color-primary-dark) 100%);--btn-purple-hover:linear-gradient(145deg,color-mix(in srgb,var(--color-primary-light) 70%,#fff) 0%,var(--color-primary-light) 50%,var(--color-primary) 100%);--btn-purple-highlight:color-mix(in srgb,var(--color-primary-light) 70%,#fff);--btn-gold-gradient:linear-gradient(145deg,#fbbf24,#f59e0b 50%,#d97706);--btn-gold-hover:linear-gradient(145deg,#fcd34d,#fbbf24 50%,#f59e0b);--btn-gold-highlight:#fde68a;--btn-green-gradient:linear-gradient(145deg,#67e8f9,#22d3ee 50%,#06b6d4);--btn-green-hover:linear-gradient(145deg,#a5f3fc,#67e8f9 50%,#22d3ee);--btn-green-highlight:#a5f3fc;--btn-red-gradient:linear-gradient(145deg,#f472b6,#ec4899 50%,#db2777);--btn-red-hover:linear-gradient(145deg,#f9a8d4,#f472b6 50%,#ec4899);--btn-red-highlight:#fbcfe8;--btn-dark-gradient:linear-gradient(145deg,#1e1e2d,#16161f 50%,#0a0a12);--btn-dark-hover:linear-gradient(145deg,#2a2a3d,#1e1e2d 50%,#16161f);--btn-dark-highlight:#3a3a4d;--btn-amber-gradient:linear-gradient(145deg,#fb923c,#f97316 50%,#ea580c);--btn-amber-hover:linear-gradient(145deg,#fdba74,#fb923c 50%,#f97316);--btn-amber-highlight:#fed7aa;--btn-disabled-gradient:linear-gradient(145deg,#1e1e2d,#16161f 50%,#0a0a12);--btn-border-dark:#0a0a12;--btn-border-shadow:#050508;--btn-text:#e2e8f0;--bubbles-accent:var(--color-primary);--surface-raised:hsla(0,0%,100%,.05);--surface-raised-strong:hsla(0,0%,100%,.08);--surface-inset:rgba(0,0,0,.25);--border-hairline:hsla(0,0%,100%,.08);--border-subtle:hsla(0,0%,100%,.12);--border-faint:hsla(0,0%,100%,.06);--overlay-scrim:rgba(0,0,0,.5);--accent-tint:color-mix(in srgb,var(--color-primary) 10%,transparent);--accent-tint-strong:color-mix(in srgb,var(--color-primary) 20%,transparent);--accent-border:color-mix(in srgb,var(--color-primary) 30%,transparent);--accent-border-soft:color-mix(in srgb,var(--color-primary) 15%,transparent);--color-surface-elevated:var(--surface-raised);--color-border:var(--border-hairline)}html[data-theme=other][data-mode=light]{--color-bg-dark:#e4ddf4;--color-bg-main:#ebe6f8;--color-bg-light:#f7f4fc;--color-bg-card:#f7f4fc;--color-success:#0891b2;--color-success-bg:rgba(8,145,178,.12);--color-success-border:rgba(8,145,178,.3);--color-warning:#b45309;--color-warning-bg:rgba(180,83,9,.1);--color-warning-border:rgba(180,83,9,.3);--color-danger:#dc2626;--color-danger-bg:rgba(220,38,38,.12);--color-danger-border:rgba(220,38,38,.3);--color-info:#0284c7;--color-info-bg:rgba(2,132,199,.1);--color-info-border:rgba(2,132,199,.4);--color-text-primary:#1e1b2e;--color-text-secondary:#4b4563;--color-text-muted:#6b6580;--shadow-sm:0 2px 4px color-mix(in srgb,var(--color-primary-dark) 10%,transparent);--shadow-md:0 4px 10px color-mix(in srgb,var(--color-primary-dark) 12%,transparent);--shadow-lg:0 8px 20px color-mix(in srgb,var(--color-primary-dark) 16%,transparent);--bg-gradient-start:#f7f4fc;--bg-gradient-end:#e4ddf4;--card-bg:linear-gradient(180deg,#faf8ff,#f1ecfa);--card-bg-solid:#f7f4fc;--card-border:2px solid color-mix(in srgb,var(--color-primary) 25%,transparent);--card-border-color:color-mix(in srgb,var(--color-primary) 25%,transparent);--card-shadow:0 1px 12px color-mix(in srgb,var(--color-primary-dark) 10%,transparent);--card-shadow-hover:0 4px 18px color-mix(in srgb,var(--color-primary-dark) 18%,transparent);--card-text:#1e1b2e;--card-text-secondary:#4b4563;--card-text-muted:#6b6580;--card-text-accent:var(--color-primary-dark);--card-icon-color:var(--color-primary-dark);--card-divider:color-mix(in srgb,var(--color-primary) 18%,transparent);--card-inner-bg:color-mix(in srgb,var(--color-primary) 6%,transparent);--card-inner-border:color-mix(in srgb,var(--color-primary) 16%,transparent);--input-bg:#faf8ff;--input-border:rgba(30,27,46,.15);--input-text:var(--color-text-primary);--input-placeholder:var(--color-text-muted);--subtab-bg:color-mix(in srgb,var(--color-primary) 8%,transparent);--subtab-active-bg:var(--color-primary);--subtab-border:color-mix(in srgb,var(--color-primary) 18%,transparent);--subtab-active-border:transparent;--subtab-text:var(--color-text-secondary);--subtab-active-text:#fff;--subtab-accent:color-mix(in srgb,var(--color-primary) 15%,transparent);--subtab-accent-border:color-mix(in srgb,var(--color-primary) 35%,transparent);--nav-gradient:linear-gradient(180deg,var(--chrome-bg) 0%,color-mix(in srgb,var(--chrome-bg) 85%,#000) 100%);--nav-gradient-reverse:linear-gradient(180deg,color-mix(in srgb,var(--chrome-bg) 85%,#000) 0%,var(--chrome-bg) 100%);--nav-border:color-mix(in srgb,var(--color-primary-dark) 28%,transparent);--chrome-bg:#c9b8f0;--chrome-border:color-mix(in srgb,var(--color-primary-dark) 28%,transparent);--btn-dark-gradient:linear-gradient(145deg,#fff,#f1eefb 50%,#e6e2f7);--btn-dark-hover:linear-gradient(145deg,#fff,#f7f5fd 50%,#efecfa);--btn-dark-highlight:#fff;--btn-disabled-gradient:linear-gradient(145deg,#eceaf6,#e4e1f2 50%,#dcd8ee);--btn-border-dark:color-mix(in srgb,var(--color-primary-dark) 30%,transparent);--btn-border-shadow:color-mix(in srgb,var(--color-primary-dark) 20%,transparent);--btn-text:#1e1b2e;--bubbles-accent:var(--color-primary);--surface-raised:rgba(30,27,46,.04);--surface-raised-strong:rgba(30,27,46,.07);--surface-inset:rgba(30,27,46,.05);--border-hairline:rgba(30,27,46,.1);--border-subtle:rgba(30,27,46,.14);--border-faint:rgba(30,27,46,.07);--overlay-scrim:rgba(30,27,46,.35);--accent-tint:color-mix(in srgb,var(--color-primary) 8%,transparent);--accent-tint-strong:color-mix(in srgb,var(--color-primary) 16%,transparent);--accent-border:color-mix(in srgb,var(--color-primary) 30%,transparent);--accent-border-soft:color-mix(in srgb,var(--color-primary) 20%,transparent)}html[data-theme=other][data-accent=blue]{--color-primary:#3b82f6;--color-primary-light:#60a5fa;--color-primary-dark:#2563eb;--color-accent:#38bdf8;--color-accent-light:#7dd3fc;--color-gold:#3b82f6;--color-gold-light:#60a5fa}html[data-theme=other][data-accent=blue][data-mode=light]{--chrome-bg:#a8c4f5;--color-bg-dark:#d9e6f8;--color-bg-main:#e8f0fb;--color-bg-light:#f4f8fd;--color-bg-card:#f4f8fd;--bg-gradient-start:#f4f8fd;--bg-gradient-end:#d9e6f8;--card-bg:linear-gradient(180deg,#fafcfe,#eaf1fb);--card-bg-solid:#f4f8fd}html[data-theme=other][data-accent=green]{--color-primary:#22c55e;--color-primary-light:#4ade80;--color-primary-dark:#16a34a;--color-accent:#34d399;--color-accent-light:#6ee7b7;--color-gold:#22c55e;--color-gold-light:#4ade80}html[data-theme=other][data-accent=green][data-mode=light]{--chrome-bg:#a8e0bc;--color-bg-dark:#d8f0e0;--color-bg-main:#e8f7ee;--color-bg-light:#f3fbf6;--color-bg-card:#f3fbf6;--bg-gradient-start:#f3fbf6;--bg-gradient-end:#d8f0e0;--card-bg:linear-gradient(180deg,#fafefb,#eaf7ef);--card-bg-solid:#f3fbf6}html[data-theme=other][data-accent=aqua]{--color-primary:#06b6d4;--color-primary-light:#22d3ee;--color-primary-dark:#0891b2;--color-accent:#22d3ee;--color-accent-light:#67e8f9;--color-gold:#06b6d4;--color-gold-light:#22d3ee}html[data-theme=other][data-accent=aqua][data-mode=light]{--chrome-bg:#9ad8e4;--color-bg-dark:#d4eef3;--color-bg-main:#e6f6f9;--color-bg-light:#f2fbfd;--color-bg-card:#f2fbfd;--bg-gradient-start:#f2fbfd;--bg-gradient-end:#d4eef3;--card-bg:linear-gradient(180deg,#fafefe,#e8f6f9);--card-bg-solid:#f2fbfd}html[data-theme=other][data-accent=orange]{--color-primary:#f97316;--color-primary-light:#fb923c;--color-primary-dark:#ea580c;--color-accent:#fb923c;--color-accent-light:#fdba74;--color-gold:#f97316;--color-gold-light:#fb923c}html[data-theme=other][data-accent=orange][data-mode=light]{--chrome-bg:#f0c4a0;--color-bg-dark:#f5e4d4;--color-bg-main:linen;--color-bg-light:#fdf7f1;--color-bg-card:#fdf7f1;--bg-gradient-start:#fdf7f1;--bg-gradient-end:#f5e4d4;--card-bg:linear-gradient(180deg,#fffaf6,#f8ece0);--card-bg-solid:#fdf7f1}html[data-theme=other][data-accent=red]{--color-primary:#ef4444;--color-primary-light:#f87171;--color-primary-dark:#dc2626;--color-accent:#f43f5e;--color-accent-light:#fb7185;--color-gold:#ef4444;--color-gold-light:#f87171}html[data-theme=other][data-accent=red][data-mode=light]{--chrome-bg:#e8b0b0;--color-bg-dark:#f3d9d9;--color-bg-main:#f9ecec;--color-bg-light:#fcf5f5;--color-bg-card:#fcf5f5;--bg-gradient-start:#fcf5f5;--bg-gradient-end:#f3d9d9;--card-bg:linear-gradient(180deg,snow,#f7e8e8);--card-bg-solid:#fcf5f5}html[data-theme=other][data-accent=white]{--color-primary:#e2e8f0;--color-primary-light:#f1f5f9;--color-primary-dark:#cbd5e1;--color-accent:#f8fafc;--color-accent-light:#fff;--color-gold:#e2e8f0;--color-gold-light:#f1f5f9}html[data-theme=other][data-accent=white][data-mode=light]{--color-primary:#64748b;--color-primary-light:#94a3b8;--color-primary-dark:#475569;--color-accent:#64748b;--color-accent-light:#94a3b8;--color-gold:#64748b;--color-gold-light:#94a3b8;--chrome-bg:#c8c5d4;--color-bg-dark:#dddce6;--color-bg-main:#ebeaf1;--color-bg-light:#f5f4f8;--color-bg-card:#f5f4f8;--bg-gradient-start:#f5f4f8;--bg-gradient-end:#dddce6;--card-bg:linear-gradient(180deg,#fafafc,#eceaf2);--card-bg-solid:#f5f4f8}html[data-theme=other]{background-color:#0a0a12;background-image:radial-gradient(circle at center top,#1a1a2e 0,#0a0a12 70%);min-height:100%}html[data-theme=other][data-mode=light]{background-color:#ebe6f8;background-image:radial-gradient(circle at center top,#f7f4fc 0,#ebe6f8 55%,#e4ddf4 100%)}html[data-theme=other][data-mode=light]:after{opacity:.5}html[data-theme=other][data-mode=light]:before{background:radial-gradient(ellipse at 50% 45%,color-mix(in srgb,var(--color-primary) 6%,transparent) 0,transparent 60%),radial-gradient(ellipse at 20% 80%,rgba(217,70,239,.04) 0,transparent 60%)}html[data-theme=other] body{background:transparent;position:relative;z-index:1}html[data-theme=other]:after,html[data-theme=other]:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none}html[data-theme=other]:after{background:radial-gradient(circle at 78% 14%,rgba(217,70,239,.55) 0,rgba(217,70,239,.35) 2px,transparent 3px),radial-gradient(circle at 92% 55%,color-mix(in srgb,var(--color-primary) 50%,transparent) 0,color-mix(in srgb,var(--color-primary) 30%,transparent) 2px,transparent 3px),radial-gradient(circle at 22% 78%,rgba(34,211,238,.5) 0,rgba(34,211,238,.3) 2px,transparent 3px),radial-gradient(circle at 6% 36%,rgba(168,85,247,.4) 0,rgba(168,85,247,.2) 1.5px,transparent 2.5px),radial-gradient(circle at 65% 90%,color-mix(in srgb,var(--color-primary) 40%,transparent) 0,color-mix(in srgb,var(--color-primary) 20%,transparent) 1.5px,transparent 2.5px),repeating-radial-gradient(circle at 50% 38%,transparent 0,transparent 260px,color-mix(in srgb,var(--color-primary) 5%,transparent) 261px,color-mix(in srgb,var(--color-primary) 8.5%,transparent) 262px,transparent 263px),repeating-radial-gradient(circle at 65% 48%,transparent 0,transparent 170px,rgba(168,85,247,.04) 171px,rgba(168,85,247,.07) 172px,transparent 173px),repeating-radial-gradient(circle at 32% 68%,transparent 0,transparent 110px,rgba(217,70,239,.03) 111px,rgba(217,70,239,.055) 112px,transparent 113px);animation:subtle-pulse 14s ease-in-out infinite}html[data-theme=other]:before{background:radial-gradient(ellipse at 50% 45%,color-mix(in srgb,var(--color-primary) 8%,transparent) 0,transparent 60%),radial-gradient(ellipse at 20% 80%,rgba(217,70,239,.05) 0,transparent 60%);animation:glow-pulse 18s ease-in-out infinite}@keyframes subtle-pulse{0%,to{opacity:.78}50%{opacity:1}}@keyframes glow-pulse{0%,to{opacity:.4}50%{opacity:.7}}html[data-fonts=other]{--font-body:"Exo 2",system-ui,sans-serif;--font-display:"Orbitron","Exo 2",sans-serif;--font-button:"Orbitron","Exo 2",sans-serif}html[data-fonts=other],html[data-fonts=other] body{font-family:Exo\ 2,system-ui,sans-serif;font-weight:300}html[data-fonts=other] h1,html[data-fonts=other] h2,html[data-fonts=other] h3,html[data-fonts=other] h4,html[data-fonts=other] h5,html[data-fonts=other] h6{font-family:Orbitron,Exo\ 2,sans-serif;font-weight:600;letter-spacing:.02em}html[data-fonts=other] .app-title,html[data-fonts=other] .modal-title{font-family:Orbitron,Exo\ 2,sans-serif;font-weight:700}html[data-fonts=other] .btn,html[data-fonts=other] [role=button],html[data-fonts=other] button{font-family:Exo\ 2,system-ui,sans-serif;font-weight:500}html[data-fonts=other] .font-mono,html[data-fonts=other] [style*=JetBrains]{font-family:var(--font-mono)}html[data-fonts=other] label{font-family:Exo\ 2,system-ui,sans-serif;font-weight:500}html[data-fonts=other] b,html[data-fonts=other] strong{font-weight:600}@keyframes radio-glow{0%,to{box-shadow:inset 0 0 20px color-mix(in srgb,var(--color-primary) 10%,transparent)}50%{box-shadow:inset 0 0 30px color-mix(in srgb,var(--color-primary) 25%,transparent)}}@keyframes on-air-pulse{0%,to{opacity:1;box-shadow:0 0 6px rgba(239,68,68,.7)}50%{opacity:.7;box-shadow:0 0 14px rgba(239,68,68,.5)}}input,select,textarea{color:var(--input-text,#e2e8f0)}input::placeholder,textarea::placeholder{color:var(--input-placeholder,#64748b);opacity:1}input[type=checkbox],input[type=range]{accent-color:var(--color-primary)}.toggle-switch{position:relative;flex-shrink:0;width:44px;height:26px;border:none;border-radius:13px;background:var(--surface-raised-strong);cursor:pointer;padding:0;transition:background var(--transition-fast)}.toggle-switch:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.35);transition:transform var(--transition-fast)}.toggle-switch--on{background:linear-gradient(135deg,var(--color-primary),var(--color-accent,#d946ef))}.toggle-switch--on:after{transform:translateX(18px)}.toggle-switch--disabled{opacity:.45;cursor:not-allowed}.toggle-switch:focus-visible{outline:2px solid var(--color-primary-light);outline-offset:2px}.font-mono{font-family:var(--font-mono)}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.game-stage{position:relative;width:100%;max-width:var(--shell-max-width);margin:0 auto;min-height:100vh;min-height:100dvh;min-height:var(--bubbles-visual-vh);padding-left:max(var(--shell-padding-x),env(safe-area-inset-left));padding-right:max(var(--shell-padding-x),env(safe-area-inset-right));padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));display:flex;flex-direction:column}.app-shell--live-chat{padding-bottom:var(--app-chrome-bottom)}.otherside-chat-panel{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-hairline)}.otherside-chat-panel--docked{margin-top:0;padding-top:0;border-top:none;flex:1 1;min-height:0;display:flex;flex-direction:column}.otherside-chat-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.otherside-chat-panel__title{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.otherside-chat-panel__meta{font-size:10px;color:var(--color-text-muted)}.otherside-chat-panel__tabs{display:flex;gap:6px;margin-bottom:8px;flex-shrink:0}.otherside-chat-panel__error{font-size:11px;color:var(--color-warning,#fbbf24);margin:0 0 8px}.friends-following__hint{font-size:13px;color:var(--color-text-muted);margin:0 0 16px}.friends-following__heading{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin:0 0 10px}.friends-following__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.friends-following__row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid var(--border-hairline);background:var(--surface-raised)}.friends-following__status{width:10px;height:10px;border-radius:50%;background:var(--surface-raised-strong);flex-shrink:0}.friends-following__status--online{background:#4ade80}.friends-following__avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.friends-following__avatar--fallback{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-primary) 25%,transparent);font-size:14px;font-weight:700;color:var(--color-text-primary)}.friends-following__profile{flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:0;border:none;background:transparent;color:var(--color-text-primary);cursor:pointer;text-align:left}.friends-following__name{font-size:14px;font-weight:600}.friends-following__name,.friends-following__presence{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.friends-following__presence{font-size:11px;color:var(--color-text-muted)}.friends-following__unfollow{flex-shrink:0;font-size:11px;padding:6px 10px}.profile-screen__title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-screen__subname{margin:4px 0 0;font-size:12px;color:var(--color-text-muted)}.profile-screen__actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.profile-avatar3d-card{margin-bottom:20px}.profile-avatar3d-card__heading{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.profile-avatar3d-card__body{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;background:var(--surface-raised);border:1px solid var(--border-hairline)}.profile-avatar3d-card__body--compact{padding:10px 12px;gap:12px}.profile-avatar3d-card__thumb{width:56px;height:56px;border-radius:10px;object-fit:cover;flex-shrink:0;background:var(--surface-raised)}.profile-avatar3d-card__thumb--fallback{background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 35%,transparent),rgba(59,130,246,.25))}.profile-avatar3d-card__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-avatar3d-card__collection{font-size:14px;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-avatar3d-card__token{font-size:12px;color:var(--color-text-secondary)}.profile-avatar3d-card__hint{font-size:11px;color:var(--color-text-muted);margin-top:2px}.profile-username-section{margin-bottom:16px;padding:14px;border-radius:var(--border-radius-md);border:1px solid color-mix(in srgb,var(--color-primary) 20%,transparent);background:color-mix(in srgb,var(--color-primary) 6%,transparent)}.profile-username-section__head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.profile-username-section__label{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.profile-username-section__info{width:22px;height:22px;padding:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--color-primary) 45%,transparent);background:color-mix(in srgb,var(--color-primary) 15%,transparent);color:var(--color-primary-light);font-size:12px;font-weight:700;font-style:italic;font-family:var(--font-body);cursor:pointer;line-height:1;flex-shrink:0}.profile-username-section__info:hover{background:color-mix(in srgb,var(--color-primary) 28%,transparent);border-color:color-mix(in srgb,var(--color-primary) 65%,transparent)}.profile-username-section__ons{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.profile-username-section__name{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary)}.profile-username-section__badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:rgba(34,211,238,.15);color:#22d3ee;border:1px solid rgba(34,211,238,.35)}.profile-username-section__hint{margin:0 0 10px;font-size:12px;color:var(--color-text-muted);line-height:1.45;width:100%}.profile-username-section__field{display:block;margin-bottom:10px}.profile-username-section__field-label{display:block;font-size:11px;color:var(--color-text-secondary);margin-bottom:6px}.profile-username-section__field input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--surface-inset);color:var(--color-text-primary);font-size:14}.profile-username-section__error{margin:0 0 8px;font-size:12px;color:#f87171}.ons-info-modal{padding:20px}.broadcaster-terms-modal{padding:22px}.broadcaster-terms-modal__version{margin:4px 0 8px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.broadcaster-terms-modal__intro{margin:0 0 18px;font-size:14px;line-height:1.6;color:var(--color-text-secondary)}.broadcaster-terms-modal__scroll{max-height:46vh;overflow-y:auto;padding:16px 14px 16px 2px;border-top:1px solid var(--border-hairline);border-bottom:1px solid var(--border-hairline);-webkit-overflow-scrolling:touch}.broadcaster-terms-modal__section{margin-bottom:22px}.broadcaster-terms-modal__section:last-child{margin-bottom:0}.broadcaster-terms-modal__section-title{margin:0 0 8px;font-size:14px;font-weight:600;color:var(--color-text-primary)}.broadcaster-terms-modal__section p{margin:0 0 8px;font-size:13px;line-height:1.6;color:var(--color-text-muted)}.broadcaster-terms-modal__bullets{margin:8px 0 0;padding-left:20px}.broadcaster-terms-modal__bullets li{margin-bottom:6px;font-size:13px;line-height:1.55;color:var(--color-text-muted)}.broadcaster-terms-modal__ack{display:flex;gap:12px;align-items:flex-start;margin-top:14px;padding:12px 14px;border-radius:10px;background:rgba(162,155,254,.08);border:1px solid rgba(162,155,254,.25)}.broadcaster-terms-modal__ack span{font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.broadcaster-terms-modal__links{display:flex;flex-wrap:wrap;gap:8px 20px;margin:16px 0}.broadcaster-terms-modal__full-link{display:inline-block;font-size:13px;color:var(--color-accent,#a29bfe)}.broadcaster-terms-modal__confirm{margin:0 0 14px;padding:12px 14px;border-radius:10px;background:var(--surface-raised);border:1px solid var(--border-hairline);font-size:12.5px;line-height:1.55;color:var(--color-text-secondary)}.broadcaster-terms-modal__submit{width:100%}.broadcaster-terms-modal__error{margin:12px 0 0;font-size:13px;line-height:1.45;color:#ff6b6b}.ons-info-modal__lead{margin:0 0 14px;font-size:14px;color:var(--color-text-secondary);line-height:1.5}.ons-info-modal__steps{margin:0 0 14px;padding-left:20px;font-size:14px;color:var(--color-text-primary);line-height:1.6}.ons-info-modal__steps li{margin-bottom:8px}.ons-info-modal__note{margin:0 0 16px;font-size:12px;color:var(--color-text-muted);line-height:1.45}.ons-info-modal__done{width:100%}.otherside-chat-panel__messages{overflow-y:auto;border-radius:10px;border:1px solid var(--border-hairline);background:var(--surface-inset);padding:8px 6px;font-size:12px;line-height:1.45;height:200px}.otherside-chat-panel--docked .otherside-chat-panel__messages{flex:1 1;min-height:0;height:auto}.otherside-chat-panel__empty{text-align:center;color:var(--color-text-muted);margin:40px 0}.otherside-chat-panel__row{padding:3px 4px;border-radius:4px}.otherside-chat-panel__time{color:var(--color-text-muted);font-size:10px;margin-right:6px}.otherside-chat-panel__zone{font-size:9px;font-weight:700;margin-right:5px}.otherside-chat-panel__user{font-weight:600;color:var(--color-text-secondary);margin-right:6px}.otherside-chat-panel__user--link{color:var(--color-accent);cursor:pointer}.bubbles-fm-indicator,.otherside-chat-panel__text{color:var(--color-text-primary)}.bubbles-fm-indicator{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--bubbles-visual-offset-bottom, 0px) + var(--app-chrome-bottom) + 8px);padding:10px 20px;border-radius:24px;border:2px solid var(--bubbles-accent,#6c5ce7);background:var(--card-bg-solid);box-shadow:var(--shadow-lg);cursor:pointer;z-index:50;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;max-width:calc(100vw - 88px)}.bubbles-fm-indicator span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bubble-fab,.chat-fab{position:fixed;right:max(12px,var(--safe-area-right));bottom:calc(var(--bubbles-visual-offset-bottom, 0px) + var(--app-chrome-bottom) + 12px);z-index:55;width:52px;height:52px;border-radius:50%;border:2px solid color-mix(in srgb,var(--color-primary) 50%,transparent);background:var(--card-bg-solid,#1e1e2d);color:var(--color-text-primary);box-shadow:var(--shadow-lg,0 8px 24px rgba(0,0,0,.45));cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast),border-color var(--transition-fast)}.chat-fab:hover{border-color:color-mix(in srgb,var(--color-primary) 85%,transparent)}.chat-fab--active{background:color-mix(in srgb,var(--color-primary) 25%,transparent);border-color:color-mix(in srgb,var(--color-primary) 90%,transparent)}.bubble-fab{right:auto;left:max(12px,var(--safe-area-left,env(safe-area-inset-left,0px)))}.bubble-fab:hover{border-color:color-mix(in srgb,var(--color-primary) 85%,transparent)}.voice-onair{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--bubbles-visual-offset-bottom, 0px) + var(--app-chrome-bottom) + 8px);z-index:52;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:24px;border:2px solid rgba(96,165,250,.75);background:var(--card-bg-solid,#1e1e2d);color:var(--color-text-primary);box-shadow:var(--shadow-lg,0 8px 24px rgba(0,0,0,.45));font-size:13px;font-weight:600;max-width:calc(100vw - 88px)}.voice-onair__dot{width:8px;height:8px;border-radius:50%;background:#4ade80;flex-shrink:0;animation:voice-onair-pulse 1.6s ease-in-out infinite}.voice-onair.is-warning .voice-onair__dot{background:#fbbf24}@keyframes voice-onair-pulse{0%,to{opacity:1}50%{opacity:.35}}.voice-onair__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:0}.voice-onair__mute{flex-shrink:0;padding:3px 10px;border-radius:999px;border:1px solid var(--card-border-color);background:transparent;color:var(--color-text-secondary);font-size:11px;font-weight:700;cursor:pointer}.voice-onair__mute.is-muted{border-color:hsla(0,91%,71%,.8);color:#fca5a5}.chat-sheet-root{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none}.chat-sheet-backdrop{position:absolute;inset:0;border:none;background:var(--overlay-scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:auto;cursor:pointer}.chat-sheet{position:relative;z-index:1;display:flex;flex-direction:column;max-height:min(90dvh,var(--bubbles-visual-vh,90dvh));height:min(90dvh,var(--bubbles-visual-vh,90dvh));background:var(--card-bg);border:2px solid var(--card-border-color);border-bottom:none;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;box-shadow:var(--shadow-lg);pointer-events:auto;padding-bottom:env(safe-area-inset-bottom);animation:chatSheetUp var(--transition-normal)}@keyframes chatSheetUp{0%{transform:translateY(100%);opacity:.6}to{transform:translateY(0);opacity:1}}.chat-sheet__handle{width:40px;height:4px;border-radius:2px;background:var(--surface-raised-strong);margin:10px auto 4px;flex-shrink:0}.chat-sheet__header{display:flex;align-items:center;justify-content:space-between;padding:0 16px 8px;flex-shrink:0}.chat-sheet__title{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.chat-sheet__close{width:36px;height:36px;border:1px solid var(--accent-border-soft);border-radius:50%;background:var(--accent-tint-strong);color:var(--color-text-primary);font-size:22px;line-height:1;cursor:pointer}.chat-sheet .otherside-chat-panel{padding:0 12px 12px}.chat-drawer-root{position:fixed;inset:0;z-index:35;pointer-events:none}.chat-drawer{position:fixed;top:0;right:0;bottom:0;width:min(360px,92vw);z-index:1;display:flex;flex-direction:column;background:var(--card-bg);border-left:2px solid var(--card-border-color);box-shadow:var(--shadow-lg);pointer-events:auto;transform:translateX(100%);transition:transform var(--transition-normal);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.chat-drawer--open{transform:translateX(0)}.chat-drawer__toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 8px;flex-shrink:0}.chat-drawer__title{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.chat-drawer__close{width:36px;height:36px;border:1px solid var(--accent-border-soft);border-radius:50%;background:var(--accent-tint-strong);color:var(--color-text-primary);font-size:22px;line-height:1;cursor:pointer}.chat-drawer .otherside-chat-panel{padding:0 12px 12px;flex:1 1;min-height:0}@media (min-width:768px){.app-top-bar{z-index:10001}.bubble-fab,.bubbles-fm-indicator,.chat-fab{bottom:max(24px,var(--safe-area-bottom))}.chat-drawer{top:var(--app-top-bar-height);padding-top:16px;z-index:35}.chat-drawer__toolbar{padding-top:8px;padding-bottom:12px}.chat-drawer-root{z-index:35}}@media (max-width:767px){body:has(.bubbles-fm-indicator) .bubble-fab,body:has(.bubbles-fm-indicator) .chat-fab,body:has(.voice-onair) .bubble-fab,body:has(.voice-onair) .chat-fab{bottom:calc(var(--bubbles-visual-offset-bottom, 0px) + var(--app-chrome-bottom) + 64px)}}.station-chat-sheet-root{position:fixed;inset:0;z-index:10020;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none}.station-chat-sheet-backdrop{position:absolute;inset:0;border:none;background:var(--overlay-scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:auto;cursor:pointer}.station-chat-sheet{position:relative;z-index:1;display:flex;flex-direction:column;max-height:min(90dvh,var(--bubbles-visual-vh,90dvh));height:min(78dvh,calc(var(--bubbles-visual-vh, 100dvh) - 12px));margin-bottom:var(--bubbles-visual-offset-bottom,0);background:var(--card-bg);border:2px solid var(--card-border-color);border-bottom:none;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;box-shadow:var(--shadow-lg);pointer-events:auto;padding-bottom:max(8px,env(safe-area-inset-bottom));animation:chatSheetUp var(--transition-normal);min-height:0}.station-chat-sheet__handle{width:40px;height:4px;border-radius:2px;background:var(--surface-raised-strong);margin:10px auto 4px;flex-shrink:0}.station-chat-sheet__header{display:flex;align-items:center;justify-content:space-between;padding:0 16px 8px;flex-shrink:0}.station-chat-sheet__title{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.station-chat-sheet__close{width:36px;height:36px;border:1px solid var(--accent-border-soft);border-radius:50%;background:var(--accent-tint-strong);color:var(--color-text-primary);font-size:22px;line-height:1;cursor:pointer}.station-chat-drawer-root{position:fixed;inset:0;z-index:10015;pointer-events:none}.station-chat-drawer{position:fixed;top:0;right:0;bottom:0;width:min(380px,92vw);z-index:1;display:flex;flex-direction:column;background:var(--card-bg);border-left:2px solid var(--card-border-color);box-shadow:var(--shadow-lg);pointer-events:auto;transform:translateX(100%);transition:transform var(--transition-normal);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);min-height:0}.station-chat-drawer--open{transform:translateX(0)}.station-chat-drawer__toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 8px;flex-shrink:0}.station-chat-drawer__title{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.station-chat-drawer__close{width:36px;height:36px;border:1px solid var(--accent-border-soft);border-radius:50%;background:var(--accent-tint-strong);color:var(--color-text-primary);font-size:22px;line-height:1;cursor:pointer}@media (min-width:768px){.station-chat-drawer{top:var(--app-top-bar-height);padding-top:16px}}.station-chat-panel{display:flex;flex-direction:column;flex:1 1;min-height:0;padding:0 12px 12px}.station-chat-panel__subtitle{margin:0 4px 8px;font-size:12px;color:var(--color-text-muted);flex-shrink:0}.station-chat-panel__scroll{position:relative}.station-chat-panel__list,.station-chat-panel__scroll{flex:1 1;min-height:0;display:flex;flex-direction:column}.station-chat-panel__list{overflow-y:auto;-webkit-overflow-scrolling:touch;gap:10px;padding:4px 2px 12px}.station-chat-panel__jump{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);border:1px solid color-mix(in srgb,var(--color-primary) 50%,transparent);border-radius:999px;padding:6px 14px;background:rgba(30,30,45,.95);color:var(--color-text-primary);font-size:12px;font-weight:600;cursor:pointer;box-shadow:var(--shadow-lg,0 8px 24px rgba(0,0,0,.45))}.station-chat-panel__jump:hover{background:color-mix(in srgb,var(--color-primary) 35%,transparent)}.station-chat-panel__empty{margin:24px 8px;text-align:center;font-size:13px;color:var(--color-text-muted)}.station-chat-panel__error{margin:0 0 8px;padding:8px 10px;border-radius:8px;background:rgba(220,38,38,.15);color:#fca5a5;font-size:12px;flex-shrink:0}.station-chat-msg{display:flex;gap:10px;align-items:flex-start}.station-chat-msg--host .station-chat-msg__name{color:#c4b5fd}.station-chat-msg__avatar{width:32px;height:32px;border-radius:50%;border:none;padding:0;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface-raised-strong);color:var(--color-text-primary);font-size:12px;font-weight:700;cursor:default}.station-chat-msg__avatar:not(:disabled){cursor:pointer}.station-chat-msg__avatar img{width:100%;height:100%;object-fit:cover}.station-chat-msg__body{min-width:0;flex:1 1}.station-chat-msg__meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:2px}.station-chat-msg__name{font-size:12px;font-weight:600;color:var(--color-text-primary)}.station-chat-msg__host-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:999px;background:color-mix(in srgb,var(--color-primary) 25%,transparent);color:#ddd6fe}.station-chat-msg__translate{margin-left:auto;border:none;background:transparent;color:var(--color-text-muted);font-size:11px;cursor:pointer;padding:0}.station-chat-msg__text,.station-chat-msg__translate:hover{color:var(--color-text-primary)}.station-chat-msg__text{margin:0;font-size:14px;line-height:1.4;white-space:pre-wrap;word-break:break-word}.station-chat-compose{flex-shrink:0;display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--color-primary) 15%,transparent)}.station-chat-compose--gated{align-items:center;text-align:center;padding:12px 8px 4px}.station-chat-compose__hint{margin:0;font-size:13px;color:var(--color-text-muted)}.station-chat-compose__input{width:100%;resize:none;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);background:rgba(0,0,0,.25);color:var(--color-text-primary);padding:10px 12px;font:inherit;font-size:14px;line-height:1.35}.station-chat-compose__input:focus{outline:none;border-color:color-mix(in srgb,var(--color-primary) 70%,transparent)}.station-chat-compose__row{display:flex;align-items:center;justify-content:space-between;gap:8px}.station-chat-compose__count{font-size:11px;color:var(--color-text-muted)}.station-chat-compose__send{border:none;border-radius:10px;padding:8px 16px;background:color-mix(in srgb,var(--color-primary) 35%,transparent);color:var(--color-text-primary);font-weight:600;cursor:pointer}.station-chat-compose__send:disabled{opacity:.45;cursor:not-allowed}.station-chat-compose__send:not(:disabled):hover{background:color-mix(in srgb,var(--color-primary) 50%,transparent)}.integrity-page{max-width:720px;margin:0 auto;padding:24px var(--shell-padding-x) calc(48px + var(--safe-area-bottom));color:var(--color-text);font-family:var(--font-body);max-height:100dvh;max-height:var(--bubbles-visual-vh,100dvh);overflow-y:auto;-webkit-overflow-scrolling:touch}.integrity-page h1{font-family:var(--font-display);font-size:1.5rem;margin:0 0 12px}.integrity-lead{color:var(--color-text-muted);line-height:1.5;margin-bottom:20px}.integrity-grid{display:grid;grid-gap:16px;gap:16px}.integrity-card{background:var(--color-surface-elevated,hsla(0,0%,100%,.04));border:1px solid var(--color-border,hsla(0,0%,100%,.08));border-radius:var(--border-radius-md);padding:16px}.integrity-card__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.integrity-card__head h2{margin:0;font-size:1.1rem}.integrity-card__version{font-family:var(--font-mono);font-size:.85rem;opacity:.8}.integrity-dl{margin:0;display:grid;grid-gap:10px;gap:10px}.integrity-dl dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:2px}.integrity-dl dd{margin:0;word-break:break-all}.integrity-mono{font-family:var(--font-mono);font-size:.8rem}.integrity-mono--wrap{word-break:break-all}.integrity-verify code{display:block;margin-top:6px;padding:8px 10px;border-radius:var(--border-radius-sm);background:var(--surface-inset);font-family:var(--font-mono);font-size:.78rem;word-break:break-all}.integrity-error{color:#ff6b6b}.integrity-foot{margin-top:24px;font-size:.9rem;color:var(--color-text-muted)}.integrity-foot a{color:var(--color-accent,#a29bfe)}.integrity-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.integrity-platform-tabs{display:flex;gap:8px;margin-bottom:16px}.integrity-platform-tabs button{flex:1 1;padding:10px 12px;border-radius:var(--border-radius-sm);border:1px solid var(--color-border,hsla(0,0%,100%,.12));background:transparent;color:var(--color-text);cursor:pointer;font-family:var(--font-button)}.integrity-platform-tabs button.active{border-color:var(--color-accent,#a29bfe);background:rgba(162,155,254,.12)}.build-footer{position:fixed;right:10px;bottom:max(6px,var(--safe-area-bottom));z-index:5;font-family:var(--font-mono);font-size:10px;opacity:.45;pointer-events:auto}@media (display-mode:fullscreen),(display-mode:standalone),(max-width:767px){.build-footer{display:none}}.build-footer a{color:inherit;text-decoration:none}.build-footer a:hover{opacity:1;text-decoration:underline}