.auth-popover{background:var(--bg-secondary);border:1px solid var(--border-hover);border-radius:var(--radius-lg);width:240px;padding:var(--space-4);z-index:var(--z-popover);animation:.15s ease-out popover-enter;position:absolute;bottom:0;left:calc(100% + 12px);box-shadow:0 8px 32px #00000080}@keyframes popover-enter{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.auth-popover{animation:none}}.auth-popover__arrow{background:var(--bg-secondary);border-left:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);width:12px;height:12px;position:absolute;bottom:14px;left:-6px;transform:rotate(45deg)}.auth-popover__content{gap:var(--space-3);flex-direction:column;display:flex}.auth-popover__label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;text-align:center;margin:0}.auth-popover__google-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-4);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--transition-normal), border-color var(--transition-normal);display:flex}.auth-popover__google-btn:hover{background:var(--bg-tertiary);border-color:var(--text-muted)}.auth-popover__google-btn:focus-visible{outline:2px solid var(--signal-cyan);outline-offset:2px}.auth-popover__hint{font-size:var(--text-xs);color:var(--text-muted);text-align:center;opacity:.7;margin:0}.auth-popover__error{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:color-mix(in srgb, var(--signal-magenta) 10%, transparent);border:1px solid color-mix(in srgb, var(--signal-magenta) 20%, transparent);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--signal-magenta);display:flex}.auth-popover__error-dismiss{color:var(--signal-magenta);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.auth-popover__profile{align-items:center;gap:var(--space-3);display:flex}.auth-popover__avatar{object-fit:cover;border:1.5px solid var(--border-subtle);border-radius:50%;flex-shrink:0;width:40px;height:40px}.auth-popover__avatar--fallback{background:var(--bg-tertiary);color:var(--signal-magenta);font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-bold);justify-content:center;align-items:center;display:flex}.auth-popover__info{flex-direction:column;gap:2px;display:flex;overflow:hidden}.auth-popover__name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.auth-popover__email{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.auth-popover__divider{background:var(--border-subtle);height:1px}.auth-popover__action{width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;text-align:left;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:1px solid #0000}.auth-popover__action:hover{background:var(--bg-tertiary);color:var(--text-primary)}.auth-popover__action--signout:hover{color:var(--signal-magenta)}@media (width<=767px){.auth-popover{bottom:calc(100% + 12px);left:auto;right:var(--space-2);width:min(240px, calc(100vw - var(--space-8)));animation-name:popover-enter-mobile}@keyframes popover-enter-mobile{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.auth-popover__arrow{border-left:none;border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);bottom:-6px;left:auto;right:16px;transform:rotate(45deg)}}.user-avatar{justify-content:center;align-items:center;display:flex;position:relative}.user-avatar__btn{border:1.5px solid var(--border-subtle);background:var(--bg-tertiary);width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:border-color var(--transition-normal), box-shadow var(--transition-normal), color var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden}@media (hover:hover){.user-avatar__btn:hover{border-color:var(--signal-magenta);color:var(--text-primary)}}.user-avatar__btn:focus-visible{outline:2px solid var(--signal-cyan);outline-offset:2px}.user-avatar__btn--loading{pointer-events:none}.user-avatar__img{object-fit:cover;border-radius:50%;width:100%;height:100%}.user-avatar__initials{font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--signal-magenta);text-transform:uppercase}.user-avatar__spinner{border:2px solid var(--border-subtle);border-top-color:var(--signal-magenta);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite avatar-spin}@keyframes avatar-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.user-avatar__spinner{opacity:.5;animation:none}}@media (hover:hover){html[data-atmosphere=void] .user-avatar__btn:hover{box-shadow:none}}@media (width<=767px){.user-avatar{justify-content:center;align-items:center;width:100%;height:100%}.user-avatar__btn{width:40px;height:40px}}.command-rail{width:var(--rail-width);border-right:1px solid var(--border-subtle);z-index:var(--z-rail);padding:var(--space-4) 0;transition:width .25s var(--ease-snappy), bottom .25s var(--ease-snappy);background:#0a0a12eb;flex-direction:column;align-items:flex-start;display:flex;position:fixed;top:0;bottom:0;left:0}.command-rail--collapsed{width:var(--rail-width-collapsed);align-items:center}@media (width>=768px){body.has-player .command-rail{bottom:var(--player-bar-height)}}.command-rail__brand{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-4) var(--space-4);cursor:pointer;filter:drop-shadow(0 0 8px var(--glow-magenta));animation:logo-breathe 3s var(--ease-organic) infinite;transition:opacity .15s var(--ease-snappy);background:0 0;border:none;display:flex}.command-rail--collapsed .command-rail__brand{padding:var(--space-2) 0 var(--space-4);justify-content:center}@media (hover:hover){.command-rail__brand:hover{opacity:.8}.command-rail__brand:hover .command-rail__logo{transform:scale(1.08)}}.command-rail__logo{transition:transform .2s var(--ease-spring);flex-shrink:0}.command-rail__brand-text{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-bold);white-space:nowrap;letter-spacing:.5px;color:var(--text-primary)}@keyframes logo-breathe{0%,to{filter:drop-shadow(0 0 6px var(--glow-magenta))}50%{filter:drop-shadow(0 0 14px var(--glow-magenta))}}.command-rail__nav{align-items:flex-start;gap:var(--space-2);flex-direction:column;flex:1;width:100%;display:flex}.command-rail--collapsed .command-rail__nav{align-items:center}.command-rail__section{align-items:flex-start;gap:var(--space-1);flex-direction:column;width:100%;display:flex}.command-rail--collapsed .command-rail__section{align-items:center}.command-rail__link{align-items:center;gap:var(--space-3);width:calc(100% - var(--space-3) * 2);height:42px;padding-left:var(--space-4);margin-left:var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);transition:color .15s var(--ease-snappy), background-color .15s var(--ease-snappy);text-decoration:none;display:flex;position:relative}.command-rail--collapsed .command-rail__link{border-radius:var(--radius-lg);justify-content:center;width:42px;height:42px;margin-left:0;padding-left:0}@media (hover:hover){.command-rail__link:hover{color:var(--text-primary);background:var(--bg-tertiary)}}.command-rail__link--active{color:var(--signal-magenta);background:var(--glow-magenta-soft)}.command-rail__link--active:after{content:"";background:var(--signal-magenta);width:3px;height:20px;box-shadow:0 0 8px var(--glow-magenta);border-radius:0 2px 2px 0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.command-rail--collapsed .command-rail__link--active:after{border-radius:2px;width:16px;height:3px;top:auto;bottom:2px;left:50%;transform:translate(-50%)}.command-rail__label{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;color:inherit;line-height:1}.command-rail--collapsed .command-rail__link[data-tooltip]:hover:before{content:attr(data-tooltip);padding:var(--space-1) var(--space-3);background:var(--bg-elevated);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-sm);white-space:nowrap;z-index:100;pointer-events:none;box-shadow:var(--shadow-md);border:1px solid var(--border-subtle);animation:tooltip-enter .15s var(--ease-smooth);position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%)}@keyframes tooltip-enter{0%{opacity:0;transform:translateY(-50%)translate(-4px)}to{opacity:1;transform:translateY(-50%)translate(0)}}.command-rail__link--active .command-rail__label{font-weight:var(--weight-semibold);letter-spacing:.02em}.command-rail__user{padding:var(--space-3) var(--space-4);align-items:center;gap:var(--space-3);width:100%;margin-top:auto;display:flex}.command-rail--collapsed .command-rail__user{padding:var(--space-3) 0;justify-content:center}.command-rail__label--user{color:var(--text-secondary)}@media (width<=767px){.command-rail{width:100%;height:var(--mobile-nav-height);border-right:none;border-top:1px solid var(--border-subtle);z-index:var(--z-mobile-nav);flex-direction:row;align-items:stretch;padding:0;transition:none;position:fixed;inset:auto 0 0}body.has-player .command-rail{bottom:0}.command-rail__brand,.command-rail__label{display:none}.command-rail__nav{flex-direction:row;flex:3;align-items:stretch;gap:0}.command-rail__section:first-child{flex-direction:row;align-items:stretch;width:100%;padding:0;display:flex}.command-rail__link{border-radius:0;flex:1;justify-content:center;width:auto;max-width:none;height:auto;margin-left:0;padding-left:0}.command-rail__link--active{background:0 0}.command-rail__link--active:after{border-radius:0 0 2px 2px;width:20px;height:2px;top:0;bottom:auto;left:50%;transform:translate(-50%)}.command-rail__link[data-tooltip]:hover:before{display:none}.command-rail__user{flex:1;justify-content:center;align-items:center;width:auto;height:auto;margin-top:0;padding:0;display:flex}}@media (prefers-reduced-motion:reduce){.command-rail{transition:none}.command-rail__brand,.command-rail--collapsed .command-rail__link[data-tooltip]:hover:before{animation:none}}.station-avatar{border-radius:var(--radius-md);object-fit:cover;flex-shrink:0}.station-avatar--fallback{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-sm);color:var(--text-primary);letter-spacing:.05em;justify-content:center;align-items:center;display:flex}.signal-card--active .station-avatar,.signal-card--active .station-avatar--fallback{box-shadow:0 0 0 2px var(--genre-color,var(--signal-magenta));animation:avatar-breathe 2.5s var(--ease-organic) infinite}@keyframes avatar-breathe{0%,to{box-shadow:0 0 0 2px color-mix(in srgb, var(--genre-color,var(--signal-magenta)) 60%, transparent)}50%{box-shadow:0 0 0 3px var(--genre-color,var(--signal-magenta)), 0 0 12px color-mix(in srgb, var(--genre-color,var(--signal-magenta)) 30%, transparent)}}.fav-btn{padding:var(--space-1);border-radius:var(--radius-full);transition:transform .15s var(--ease-spring), filter .2s ease;justify-content:center;align-items:center;display:flex}.fav-btn:hover{transform:scale(1.15)rotate(3deg)}.fav-btn:active{transform:scale(.95)}.fav-btn--active{filter:drop-shadow(0 0 8px var(--glow-magenta))}.fav-btn--active:hover{filter:drop-shadow(0 0 14px var(--glow-magenta))}.fav-btn--burst{animation:fav-burst .4s var(--ease-spring)}@keyframes fav-burst{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}.visualizer-canvas{display:block}.visualizer-canvas--mini{opacity:.9}.visualizer-canvas--full{width:100%}.visualizer-css{align-items:flex-end;gap:2px;display:flex;overflow:hidden}.visualizer-css--mini{opacity:.7}.visualizer-css--full{justify-content:center;width:100%}.visualizer-css__bar{background:linear-gradient(to top, var(--signal-cyan), var(--signal-magenta));transform-origin:bottom;border-radius:1px;flex:1;max-width:4px;min-height:2px;transform:scaleY(.15)}.visualizer-css--playing .visualizer-css__bar{animation:signal-bounce var(--ease-organic) infinite alternate}@keyframes signal-bounce{0%{opacity:.4;transform:scaleY(.15)}to{transform:scaleY(var(--bar-max,1));opacity:1}}.player-cockpit{height:var(--player-bar-height);-webkit-backdrop-filter:blur(24px)saturate(1.8);border-top:1px solid #0000;border-image:linear-gradient(to right, transparent, var(--signal-cyan) 20%, var(--signal-magenta) 80%, transparent) 1;align-items:center;gap:var(--space-4);padding:0 var(--space-6);z-index:var(--z-player);will-change:backdrop-filter;background:#0a0a12d9;display:flex;position:fixed;bottom:0;left:0;right:0}.player-cockpit--error{border-image:linear-gradient(to right, transparent, var(--status-error) 20%, var(--status-error) 80%, transparent) 1}.player-cockpit__zone-left{align-items:center;gap:var(--space-3);flex:1;min-width:0;max-width:300px;display:flex}.player-cockpit__text{flex-direction:column;gap:2px;min-width:0;display:flex}.player-cockpit__name{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--text-primary)}.player-cockpit__meta{font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.02em}.player-cockpit__error-text{color:var(--status-error);font-weight:var(--weight-medium)}.player-cockpit__reconnecting-text{color:var(--status-warning);animation:pulse-text 1.5s var(--ease-organic) infinite}@keyframes pulse-text{0%,to{opacity:1}50%{opacity:.5}}.player-cockpit__zone-center{flex:1;justify-content:center;max-width:40%;display:flex}.player-cockpit__zone-right{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.player-cockpit__hex-play{width:52px;height:52px;color:var(--text-primary);transition:transform .15s var(--ease-spring);filter:drop-shadow(0 2px 6px #00000080);background:0 0;justify-content:center;align-items:center;display:flex;position:relative}.player-cockpit__hex-play:before{content:"";clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);background:var(--bg-tertiary);transition:background-color .2s,box-shadow .3s;position:absolute;inset:4px}.player-cockpit__hex-play:hover:before{background:var(--signal-magenta);box-shadow:0 0 20px var(--glow-magenta)}.player-cockpit__hex-play--active:before{background:var(--signal-magenta);box-shadow:0 0 16px var(--glow-magenta);animation:hex-glow-pulse 2.5s var(--ease-organic) infinite;will-change:box-shadow}.player-cockpit__hex-play:active{transform:scale(.92)}.player-cockpit__hex-play>*{z-index:1;position:relative}@keyframes hex-glow-pulse{0%,to{box-shadow:0 0 12px var(--glow-magenta)}50%{box-shadow:0 0 24px var(--glow-magenta)}}.player-cockpit__retry{border-radius:var(--radius-full);width:48px;height:48px;color:var(--status-error);background:#ef444426;justify-content:center;align-items:center;display:flex}.player-cockpit__retry:hover{background:var(--status-error);color:var(--text-primary);box-shadow:0 0 16px #ef444466}.player-cockpit__spinner{border-radius:var(--radius-full);z-index:1;border:2px solid #ffffff4d;border-top-color:#fff;width:20px;height:20px;animation:.8s linear infinite spin;position:relative}.player-cockpit__stop{border-radius:var(--radius-full);width:32px;height:32px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.player-cockpit__stop:hover{color:var(--text-primary);background:var(--bg-tertiary)}.player-cockpit__volume{align-items:center;gap:var(--space-2);display:flex}.player-cockpit__mute{width:28px;height:28px;color:var(--text-muted);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:flex}.player-cockpit__mute:hover{color:var(--text-primary)}.player-cockpit__volume-slider{appearance:none;background:linear-gradient(to right, var(--signal-cyan) var(--volume-pct,50%), var(--bg-elevated) var(--volume-pct,50%));border:none;border-radius:2px;outline:none;width:80px;height:4px;padding:0}.player-cockpit__volume-slider::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-full);background:var(--signal-cyan);cursor:pointer;width:14px;height:14px;box-shadow:0 0 8px var(--glow-cyan);transition:transform var(--transition-fast)}.player-cockpit__volume-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.player-cockpit__volume-slider::-moz-range-thumb{border-radius:var(--radius-full);background:var(--signal-cyan);cursor:pointer;width:14px;height:14px;box-shadow:0 0 8px var(--glow-cyan);border:none}.player-cockpit__volume-slider::-moz-range-track{background:linear-gradient(to right, var(--signal-cyan) var(--volume-pct,50%), var(--bg-elevated) var(--volume-pct,50%));border:none;border-radius:2px;height:4px}@media (width<=767px){.player-cockpit{padding:0 var(--space-3);gap:var(--space-2);height:72px;bottom:var(--mobile-nav-height);border-top:1px solid var(--border-subtle);border-image:}.player-cockpit__zone-left{flex:1;max-width:none}.player-cockpit__zone-center,.player-cockpit__volume{display:none}.player-cockpit__hex-play{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.player-cockpit__reconnecting-text{animation:none}}.error-boundary{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-16) var(--space-8);text-align:center;flex-direction:column;display:flex}.error-boundary__icon{font-size:3rem}.error-boundary h3{color:var(--text-primary)}.error-boundary p{color:var(--text-secondary);max-width:300px}.error-boundary__btn{padding:var(--space-3) var(--space-6);background:var(--accent-primary);color:#fff;border-radius:var(--radius-pill);font-weight:var(--weight-semibold)}.error-boundary__btn:hover{box-shadow:var(--shadow-glow)}.page-transition{animation:page-enter .3s var(--ease-smooth)}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.page-transition{animation:none}}.pwa-prompt{bottom:calc(var(--player-bar-height) + var(--space-4));right:var(--space-4);z-index:var(--z-pwa);animation:.4s cubic-bezier(.16,1,.3,1) pwa-slide-in;position:fixed}@keyframes pwa-slide-in{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.pwa-prompt__content{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 32px #00000080, 0 0 24px var(--accent-primary-glow);display:flex}.pwa-prompt__icon{font-size:var(--text-xl);flex-shrink:0}.pwa-prompt__text{font-size:var(--text-sm);flex-direction:column;gap:2px;display:flex}.pwa-prompt__text strong{color:var(--text-primary);font-weight:var(--weight-semibold)}.pwa-prompt__text span{color:var(--text-muted);font-size:var(--text-xs)}.pwa-prompt__actions{align-items:center;gap:var(--space-2);margin-left:var(--space-2);display:flex}.pwa-prompt__update{padding:var(--space-2) var(--space-4);background:var(--accent-primary);color:var(--text-primary);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:box-shadow var(--transition-normal), transform var(--transition-normal), opacity var(--transition-normal);border:none}.pwa-prompt__update:hover{box-shadow:var(--shadow-glow);transform:translateY(-1px)}.pwa-prompt__dismiss{border-radius:var(--radius-full);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:color .15s var(--ease-snappy), background-color .15s var(--ease-snappy);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.pwa-prompt__dismiss:hover{color:var(--text-primary);background:var(--bg-tertiary)}@media (width<=767px){.pwa-prompt{bottom:calc(var(--mobile-nav-height) + 80px);left:var(--space-4);right:var(--space-4)}}@media (prefers-reduced-motion:reduce){.pwa-prompt{animation:none}}.app-layout{min-height:100vh}.app-layout__main{margin-left:var(--rail-width);padding:var(--space-6) var(--space-8);padding-bottom:calc(var(--player-bar-height) + var(--space-6));min-height:100vh;transition:margin-left .25s var(--ease-snappy);overflow-x:hidden}.app-layout--collapsed .app-layout__main{margin-left:var(--rail-width-collapsed)}@media (width<=767px){.app-layout__main{padding:var(--space-4);padding-bottom:calc(var(--mobile-nav-height) + 80px + var(--space-4));margin-left:0;transition:none}.app-layout--collapsed .app-layout__main{margin-left:0}}@media (prefers-reduced-motion:reduce){.app-layout__main{transition:none}}.frequency-bands{position:relative}.frequency-bands__scroll{gap:var(--space-2);padding:var(--space-1) 0;scrollbar-width:none;-ms-overflow-style:none;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 16px),#0000);mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 16px),#0000)}.frequency-bands__scroll::-webkit-scrollbar{display:none}.frequency-band{padding:var(--space-2) var(--space-4);border:1px solid color-mix(in srgb, var(--chip-color) 30%, transparent);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;background:0 0;background-image:linear-gradient(to right, color-mix(in srgb, var(--chip-color) 15%, transparent), color-mix(in srgb, var(--chip-color) 15%, transparent));background-position:0;background-repeat:no-repeat;background-size:0% 100%;flex-shrink:0;align-items:center;text-decoration:none;transition:background-size .3s,border-color .2s,color .2s,box-shadow .3s;display:flex;transform:skew(-2deg)}.frequency-band:hover{color:var(--text-primary);border-color:var(--chip-color);background-size:100% 100%}.frequency-band--active{border-color:var(--chip-color);color:var(--chip-color);box-shadow:0 0 16px color-mix(in srgb, var(--chip-color) 25%, transparent), inset 0 0 16px color-mix(in srgb, var(--chip-color) 8%, transparent);text-shadow:0 0 8px color-mix(in srgb, var(--chip-color) 40%, transparent);background-size:100% 100%}.frequency-band__inner{align-items:center;gap:var(--space-2);display:flex;transform:skew(2deg)}.frequency-band__icon{flex-shrink:0;align-items:center;line-height:1;display:flex}.frequency-band__label{font-family:var(--font-display)}.add-to-mix{position:relative}.add-to-mix__trigger{width:32px;height:32px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full);transition:color .15s var(--ease-snappy), background-color .15s var(--ease-snappy);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.add-to-mix__trigger:hover{color:var(--signal-cyan);background:var(--bg-tertiary)}.add-to-mix__popover{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);z-index:500;width:220px;animation:pop-in .2s var(--ease-spring);position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 8px 30px #00000080,0 0 15px #00f0ff0d}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.add-to-mix__header{padding:var(--space-3) var(--space-4);font-size:10px;font-weight:var(--weight-bold);letter-spacing:1.5px;color:var(--text-muted);border-bottom:1px solid var(--border-subtle)}.add-to-mix__list{max-height:200px;padding:var(--space-1) 0;overflow-y:auto}.add-to-mix__item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;text-align:left;transition:background-color .1s var(--ease-snappy), color .1s var(--ease-snappy);background:0 0;border:none;display:flex}.add-to-mix__item:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.add-to-mix__item:disabled{cursor:default}.add-to-mix__item--added{color:var(--signal-cyan)}.add-to-mix__item-icon{flex-shrink:0;font-size:1rem}.add-to-mix__item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.add-to-mix__item-status{color:var(--text-muted);flex-shrink:0;align-items:center;display:flex}.add-to-mix__item--added .add-to-mix__item-status{color:var(--signal-cyan)}.add-to-mix__check{animation:check-pop .2s var(--ease-spring)}@keyframes check-pop{0%{transform:scale(0)}to{transform:scale(1)}}.add-to-mix__mini-spinner{border:2px solid var(--border-subtle);border-top-color:var(--signal-cyan);border-radius:var(--radius-full);width:14px;height:14px;animation:.6s linear infinite mini-spin}@keyframes mini-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.add-to-mix__popover,.add-to-mix__check,.add-to-mix__mini-spinner{animation:none}}.signal-card{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);padding-left:calc(var(--space-4) + 6px);background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);text-align:left;cursor:pointer;contain:layout style;width:100%;min-width:0;transition:transform .2s var(--ease-snappy), box-shadow .3s ease, border-color .2s ease, background-color .2s ease;animation:card-enter .4s var(--ease-smooth) both;display:flex;position:relative;overflow:visible}.signal-card:has(.add-to-mix__popover){z-index:10}@keyframes card-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.signal-card__frequency-strip{background:var(--genre-color,var(--signal-magenta));opacity:.5;width:3px;transition:opacity .3s,box-shadow .3s;position:absolute;top:0;bottom:0;left:0}.signal-card:hover{background:var(--bg-elevated);border-color:var(--border-hover);box-shadow:0 4px 20px #0000004d, 0 0 16px color-mix(in srgb, var(--genre-color,var(--signal-magenta)) 15%, transparent);transform:translateY(-2px)}.signal-card:hover .signal-card__frequency-strip{opacity:1}.signal-card--active{border-color:var(--genre-color,var(--signal-magenta));background:color-mix(in srgb, var(--genre-color,var(--signal-magenta)) 8%, var(--bg-tertiary));box-shadow:0 0 20px color-mix(in srgb, var(--genre-color,var(--signal-magenta)) 20%, transparent)}.signal-card--active .signal-card__frequency-strip{opacity:1;box-shadow:0 0 8px var(--genre-color,var(--signal-magenta));animation:strip-pulse 2s var(--ease-organic) infinite}.signal-card--active .signal-card__name{background:linear-gradient(135deg, var(--text-primary), var(--genre-color,var(--signal-magenta)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.signal-card--active:hover{background:color-mix(in srgb, var(--genre-color,var(--signal-magenta)) 10%, var(--bg-tertiary))}@keyframes strip-pulse{0%,to{box-shadow:0 0 4px var(--genre-color)}50%{box-shadow:0 0 12px var(--genre-color)}}.signal-card--error{border-color:var(--status-error);background:color-mix(in srgb, var(--status-error) 5%, transparent);animation:.6s steps(4,end) infinite glitch-border}.signal-card--error .signal-card__frequency-strip{background:var(--status-error);opacity:1}.signal-card--error:hover{background:color-mix(in srgb, var(--status-error) 10%, transparent)}@keyframes glitch-border{0%,40%,60%,to{border-color:var(--status-error)}45%,55%{border-color:#0000}}.signal-card__left{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.signal-card__avatar-wrap{flex-shrink:0;position:relative}.signal-card__play-overlay{border-radius:var(--radius-md);opacity:0;transition:opacity var(--transition-fast);color:var(--text-primary);background:#0009;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.signal-card:hover .signal-card__play-overlay,.signal-card__play-overlay--visible{opacity:1}.signal-card__spinner{border:2px solid var(--text-muted);border-top-color:var(--signal-magenta);border-radius:var(--radius-full);width:18px;height:18px;animation:.8s linear infinite spin}.signal-card__info{flex-direction:column;gap:2px;min-width:0;display:flex;overflow:hidden}.signal-card__name{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--text-primary)}.signal-card__meta{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.02em;display:flex}.signal-card__meta span{align-items:center;display:flex}.signal-card__tags{gap:var(--space-1);margin-top:2px;display:flex;overflow:hidden}.signal-card__tag{font-size:var(--text-xs);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);color:var(--text-secondary);text-transform:lowercase;letter-spacing:.05em;padding:2px 8px}.signal-card--active .signal-card__tag{background:color-mix(in srgb, var(--genre-color,var(--signal-magenta)) 20%, transparent);color:var(--genre-color,var(--signal-magenta))}.signal-card__right{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.signal-card__remove{border-radius:var(--radius-full);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:color .15s var(--ease-snappy), background-color .15s var(--ease-snappy), border-color .15s var(--ease-snappy);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex}.signal-card__remove:hover{color:#ef4444;background:#ef44441a;border-color:#ef44444d}.signal-card__remove:disabled{opacity:.5;cursor:not-allowed}.signal-card__remove-spinner{border:2px solid var(--border-subtle);border-top-color:var(--text-muted);border-radius:var(--radius-full);width:12px;height:12px;animation:.6s linear infinite spin}@media (prefers-reduced-motion:reduce){.signal-card__remove-spinner{animation:none}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.shimmer{background:linear-gradient(90deg, var(--bg-tertiary) 25%, color-mix(in srgb, var(--bg-elevated) 80%, #ffffff0a) 50%, var(--bg-tertiary) 75%);background-size:400px 100%;animation:1.5s ease-in-out infinite shimmer}.station-skeleton{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);padding-left:calc(var(--space-4) + 6px);background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);display:flex;position:relative;overflow:hidden}.station-skeleton:before{content:"";background:var(--bg-elevated);width:3px;position:absolute;top:0;bottom:0;left:0}.station-skeleton__avatar{border-radius:var(--radius-md);flex-shrink:0;width:48px;height:48px}.station-skeleton__info{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.station-skeleton__name{border-radius:4px;width:65%;height:14px}.station-skeleton__meta{border-radius:4px;width:40%;height:10px}.station-grid{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=768px){.station-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1280px){.station-grid{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}}.station-grid__loadmore{padding:var(--space-4);grid-column:1/-1;justify-content:center;display:flex}.station-grid__loadmore-btn{padding:var(--space-3) var(--space-8);background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:.03em;text-transform:uppercase;transition:background-color var(--transition-normal), color var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal)}.station-grid__loadmore-btn:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--signal-magenta);box-shadow:0 0 12px var(--glow-magenta-soft)}.station-grid__empty{align-items:center;gap:var(--space-3);padding:var(--space-16) var(--space-4);color:var(--text-muted);flex-direction:column;display:flex}.station-grid__empty-icon{opacity:.4;font-size:2rem}.frequency-scanner{align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.frequency-scanner__icon{left:var(--space-4);color:var(--text-muted);pointer-events:none;transition:filter .2s,color .2s;position:absolute}.frequency-scanner:focus-within .frequency-scanner__icon{color:var(--signal-cyan);filter:drop-shadow(0 0 4px var(--glow-cyan))}.frequency-scanner__input{width:100%;padding:var(--space-3) var(--space-4) var(--space-3) calc(var(--space-4) + 28px);background:var(--bg-void);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);color:var(--text-primary);font-size:var(--text-sm);transition:border-color .2s,box-shadow .3s}.frequency-scanner__input:focus-visible{border-color:var(--signal-cyan);box-shadow:0 0 16px var(--glow-cyan-soft);outline:none}.frequency-scanner__input::placeholder{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.03em}.frequency-scanner__input::-webkit-search-cancel-button{display:none}.frequency-scanner__clear{right:var(--space-3);border-radius:var(--radius-full);width:24px;height:24px;color:var(--text-muted);justify-content:center;align-items:center;display:flex;position:absolute}.frequency-scanner__clear:hover{color:var(--text-primary);background:var(--bg-tertiary)}.frequency-scanner__scan-line{opacity:0;height:2px;transition:opacity .2s;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.frequency-scanner:focus-within .frequency-scanner__scan-line{opacity:1}.frequency-scanner__scan-line:after{content:"";background:linear-gradient(to right, transparent, var(--signal-cyan), transparent);width:60%;height:100%;animation:2s ease-in-out infinite scan-sweep;position:absolute;top:0;left:0}@keyframes scan-sweep{0%{transform:translate(-100%)}to{transform:translate(260%)}}.home-page{max-width:1200px;margin:0 auto;position:relative;overflow:hidden}.home-page:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(at 50% 0,#00f0ff0a 0%,#0000 60%);height:500px;position:absolute;top:-100px;left:0;right:0}.home-page__header{text-align:center;align-items:center;gap:var(--space-6);margin-bottom:var(--space-10);padding-top:var(--space-12);flex-direction:column;display:flex}.home-page__hero{max-width:640px}.home-page__title{font-size:var(--text-5xl);margin-bottom:var(--space-3);line-height:1}.home-page__title-gradient{background:linear-gradient(135deg, var(--signal-magenta), var(--signal-cyan));-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 24px var(--glow-magenta));-webkit-background-clip:text;background-clip:text}.home-page__subtitle{color:var(--text-secondary);font-size:var(--text-sm);letter-spacing:.03em}.home-page__search{width:100%;max-width:480px}.home-page__section{margin-bottom:var(--space-10)}.home-page__section-title{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-xl);margin-bottom:var(--space-4);color:var(--text-primary);align-items:center;gap:var(--space-4);display:flex}.home-page__section-title:after{content:"";background:linear-gradient(to right, var(--border-hover), transparent);flex:1;height:1px}.home-page__error{padding:var(--space-4);color:var(--status-error);text-align:center;font-family:var(--font-mono);font-size:var(--text-sm)}@media (width<=767px){.home-page__header{padding-top:var(--space-4)}.home-page__title{font-size:var(--text-3xl)}.home-page__search{max-width:100%}}.genre-page{max-width:1200px;margin:0 auto;position:relative}.genre-page__atmosphere{background:radial-gradient(ellipse at 50% 0%, color-mix(in srgb, var(--genre-color) 5%, transparent), transparent 60%);pointer-events:none;z-index:0;position:fixed;inset:0}.genre-page__header{margin-bottom:var(--space-6);padding:var(--space-6);background:linear-gradient(135deg, color-mix(in srgb, var(--genre-color) 18%, var(--bg-secondary)), var(--bg-secondary));border:1px solid color-mix(in srgb, var(--genre-color) 20%, transparent);border-radius:var(--radius-xl);position:relative;overflow:hidden}.genre-page__hero{align-items:center;gap:var(--space-4);z-index:2;display:flex;position:relative}.genre-page__icon{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--genre-color) 15%, transparent);width:56px;height:56px;color:var(--genre-color);filter:drop-shadow(0 0 12px color-mix(in srgb, var(--genre-color) 40%, transparent));justify-content:center;align-items:center;display:flex}.genre-page__icon svg{width:28px;height:28px}.genre-page__title{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-3xl);color:var(--genre-color);line-height:1.1}.genre-page__count{font-size:var(--text-xs);color:var(--text-secondary);letter-spacing:.03em;margin-top:var(--space-1)}.genre-page__ghost{font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--text-ghost);opacity:.3;white-space:nowrap;z-index:1;font-size:clamp(120px,20vw,200px);line-height:1;position:absolute;top:50%;right:-20px;overflow:hidden;transform:translateY(-50%)}.genre-page__stations{margin-top:var(--space-6)}.genre-page__error{padding:var(--space-4);color:var(--status-error);text-align:center;font-size:var(--text-sm)}.genre-page__empty{align-items:center;gap:var(--space-3);padding:var(--space-16) var(--space-4);text-align:center;flex-direction:column;display:flex}.genre-page__empty-signal{color:var(--text-muted);opacity:.5;margin-bottom:var(--space-2)}.genre-page__empty-title{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-xl);color:var(--text-primary);letter-spacing:.05em}.genre-page__empty-sub{color:var(--text-muted);font-size:var(--text-sm)}@media (width<=767px){.genre-page__header{padding:var(--space-4)}.genre-page__title{font-size:var(--text-2xl)}.genre-page__ghost{display:none}.genre-page__icon{width:44px;height:44px}}.search-filters{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.search-filters__icon{color:var(--text-muted);flex-shrink:0;align-items:center;display:flex}.search-filters__pill{position:relative}.search-filters__select{appearance:none;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);padding:var(--space-1) var(--space-5) var(--space-1) var(--space-3);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:10px 6px;transition:border-color .2s,color .2s,background .2s}@media (hover:hover){.search-filters__select:hover{border-color:var(--border-hover);color:var(--text-primary)}}.search-filters__select:focus-visible{outline:1px solid var(--signal-cyan);outline-offset:1px;border-color:var(--signal-cyan)}.search-filters__pill--active .search-filters__select{border-color:color-mix(in srgb, var(--signal-cyan) 40%, transparent);color:var(--signal-cyan);background-color:color-mix(in srgb, var(--signal-cyan) 6%, var(--bg-tertiary))}.search-filters__clear{appearance:none;border:1px solid color-mix(in srgb, var(--signal-magenta) 30%, transparent);border-radius:var(--radius-pill);color:var(--signal-magenta);font-family:var(--font-mono);font-size:var(--text-xs);padding:var(--space-1) var(--space-3);cursor:pointer;background:0 0;transition:background .2s,border-color .2s}@media (hover:hover){.search-filters__clear:hover{background:color-mix(in srgb, var(--signal-magenta) 10%, transparent);border-color:var(--signal-magenta)}}.search-filters__clear:focus-visible{outline:1px solid var(--signal-magenta);outline-offset:1px}@media (width<=767px){.search-filters__icon{display:none}.search-filters__select{font-size:var(--text-xs);padding:var(--space-1) var(--space-5) var(--space-1) var(--space-2)}}.search-page{max-width:1200px;margin:0 auto}.search-page__header{align-items:center;gap:var(--space-6);margin-bottom:var(--space-8);display:flex}.search-page__title{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--text-primary);flex-shrink:0}.search-page__bar{flex:1;max-width:500px}.search-page__results{margin-top:var(--space-2)}.search-page__filters{margin-bottom:var(--space-4)}.search-page__result-count{font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:var(--space-4);letter-spacing:.03em}.search-page__error{padding:var(--space-4);color:var(--status-error);text-align:center;font-size:var(--text-sm)}.search-page__empty{align-items:center;gap:var(--space-3);padding:var(--space-16) var(--space-4);text-align:center;flex-direction:column;display:flex}.search-page__empty-signal{opacity:.5;margin-bottom:var(--space-2)}.search-page__empty-title{font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--text-2xl);color:var(--text-primary);letter-spacing:.08em}.search-page__empty-sub{color:var(--text-muted);font-size:var(--text-sm)}@media (width<=767px){.search-page__header{align-items:stretch;gap:var(--space-3);flex-direction:column}.search-page__title{font-size:var(--text-2xl)}.search-page__bar{max-width:none}}.mix-card{gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:transform .2s var(--ease-spring), border-color .2s var(--ease-snappy), box-shadow .2s var(--ease-snappy);animation:mix-card-in .4s var(--ease-spring) both;flex-direction:column;display:flex;position:relative;overflow:hidden}@keyframes mix-card-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (hover:hover){.mix-card:hover{border-color:var(--mix-color);box-shadow:0 4px 20px #0000004d, 0 0 15px color-mix(in srgb, var(--mix-color) 20%, transparent);transform:translateY(-2px)}}.mix-card:focus-visible{outline:2px solid var(--signal-cyan);outline-offset:2px}.mix-card__strip{background:var(--mix-color);opacity:.8;height:3px;transition:opacity .2s var(--ease-snappy);position:absolute;top:0;left:0;right:0}.mix-card:hover .mix-card__strip{opacity:1;box-shadow:0 0 8px var(--mix-color)}.mix-card__content{align-items:flex-start;gap:var(--space-4);display:flex}.mix-card__icon{filter:drop-shadow(0 0 4px #ffffff1a);flex-shrink:0;font-size:2rem;line-height:1}.mix-card__info{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.mix-card__name{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.mix-card__meta{font-size:var(--text-xs);color:var(--text-muted)}.mix-card__desc{font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.mix-card__footer{justify-content:flex-end;align-items:center;display:flex}.mix-card__time{font-size:var(--text-xs);color:var(--text-muted);opacity:.7}@media (prefers-reduced-motion:reduce){.mix-card{animation:none}}.mix-modal__overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;padding:var(--space-4);background:#000000b3;justify-content:center;align-items:center;animation:.2s overlay-fade;display:flex;position:fixed;inset:0}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}.mix-modal{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:480px;animation:modal-slide .3s var(--ease-spring);overflow:hidden;box-shadow:0 20px 60px #0009,inset 0 1px #ffffff08}@keyframes modal-slide{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.mix-modal__header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.mix-modal__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:2px}.mix-modal__close{border-radius:var(--radius-full);background:var(--bg-tertiary);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:color .15s var(--ease-snappy), background-color .15s var(--ease-snappy);border:none;justify-content:center;align-items:center;display:flex}.mix-modal__close:hover{color:var(--text-primary);background:var(--bg-secondary)}.mix-modal__form{padding:var(--space-5) var(--space-6);gap:var(--space-5);flex-direction:column;display:flex}.mix-modal__preview{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);border-top:3px solid var(--mix-color);display:flex}.mix-modal__preview-icon{font-size:1.75rem}.mix-modal__preview-name{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);opacity:.8}.mix-modal__field{gap:var(--space-2);flex-direction:column;display:flex}.mix-modal__label{font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:1.5px;color:var(--text-secondary);text-transform:uppercase}.mix-modal__optional{font-weight:var(--weight-regular);color:var(--text-muted);letter-spacing:.5px;text-transform:none}.mix-modal__input{padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-primary);transition:border-color .2s var(--ease-snappy);outline:none}.mix-modal__input:focus{border-color:var(--signal-cyan)}.mix-modal__input::placeholder{color:var(--text-muted);opacity:.6}.mix-modal__textarea{resize:none;min-height:56px}.mix-modal__counter{color:var(--text-muted);text-align:right;opacity:.6;font-size:10px}.mix-modal__colors{gap:var(--space-2);flex-wrap:wrap;display:flex}.mix-modal__color-btn{border-radius:var(--radius-full);cursor:pointer;width:32px;height:32px;transition:transform .15s var(--ease-spring), border-color .15s var(--ease-snappy), box-shadow .15s var(--ease-snappy);border:2px solid #0000}.mix-modal__color-btn:hover{transform:scale(1.15)}.mix-modal__color-btn--active{border-color:#fff;transform:scale(1.1);box-shadow:0 0 10px}.mix-modal__icons{gap:var(--space-1);flex-wrap:wrap;display:flex}.mix-modal__icon-btn{border-radius:var(--radius-md);cursor:pointer;width:36px;height:36px;transition:transform .15s var(--ease-spring), border-color .15s var(--ease-snappy), background-color .15s var(--ease-snappy);background:0 0;border:2px solid #0000;justify-content:center;align-items:center;font-size:1.125rem;display:flex}.mix-modal__icon-btn:hover{background:var(--bg-tertiary);transform:scale(1.1)}.mix-modal__icon-btn--active{border-color:var(--signal-cyan);background:var(--glow-cyan-soft,#00f0ff1a);transform:scale(1.1)}.mix-modal__actions{gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--border-subtle);justify-content:flex-end;display:flex}.mix-modal__btn{padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.5px;cursor:pointer;transition:transform .15s var(--ease-spring), background-color .15s var(--ease-snappy), opacity .15s var(--ease-snappy);border:none}.mix-modal__btn:active{transform:scale(.97)}.mix-modal__btn--cancel{background:var(--bg-tertiary);color:var(--text-secondary)}.mix-modal__btn--cancel:hover{background:var(--bg-secondary);color:var(--text-primary)}.mix-modal__btn--create{background:linear-gradient(135deg, var(--signal-magenta), #d91a63);color:#fff}.mix-modal__btn--create:hover{background:linear-gradient(135deg, #ff4589, var(--signal-magenta))}.mix-modal__btn--create:disabled{opacity:.4;cursor:not-allowed;transform:none}@media (width<=767px){.mix-modal__overlay{align-items:flex-end;padding:0}.mix-modal{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-width:none;max-height:90vh;overflow-y:auto}@keyframes modal-slide{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion:reduce){.mix-modal__overlay,.mix-modal{animation:none}}.library-page{max-width:1400px;margin:0 auto}.library-page__header{margin-bottom:var(--space-6)}.library-page__title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-extrabold);letter-spacing:2px;text-transform:uppercase}.library-page__tabs{gap:var(--space-1);margin-bottom:var(--space-6);border-bottom:1px solid var(--border-subtle);padding-bottom:0;display:flex}.library-page__tab{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);cursor:pointer;font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);transition:color .2s var(--ease-snappy), background-color .2s var(--ease-snappy);border-radius:var(--radius-md) var(--radius-md) 0 0;background:0 0;border:none;display:flex;position:relative}@media (hover:hover){.library-page__tab:hover{color:var(--text-secondary);background:var(--bg-tertiary)}}.library-page__tab--active{color:var(--text-primary)}.library-page__tab:after{content:"";background:var(--border-hover);opacity:0;border-radius:2px 2px 0 0;height:2px;transition:opacity .2s;position:absolute;bottom:-1px;left:0;right:0}@media (hover:hover){.library-page__tab:hover:after{opacity:1}}.library-page__tab--active:after{opacity:1;background:linear-gradient(90deg, var(--signal-magenta), var(--signal-cyan))}.library-page__tab-badge{min-width:20px;height:20px;font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-bold);text-align:center;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:var(--radius-full);padding:0 6px;line-height:20px}.library-page__tab--active .library-page__tab-badge{background:var(--glow-magenta-soft);color:var(--signal-magenta)}.library-page__empty{padding:var(--space-16) var(--space-4);text-align:center;justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.library-page__empty-icon{opacity:.6;animation:empty-float 3s var(--ease-organic) infinite}@keyframes empty-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.library-page__heart-path{stroke-dasharray:100;stroke-dashoffset:100px;animation:draw-heart 2s var(--ease-organic) forwards}@keyframes draw-heart{to{stroke-dashoffset:0}}.library-page__empty-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:2px;color:var(--text-secondary)}.library-page__empty-sub{font-size:var(--text-sm);color:var(--text-muted);max-width:320px}.library-page__create-btn{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background:linear-gradient(135deg, var(--signal-magenta), #d91a63);color:#fff;border-radius:var(--radius-md);font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.5px;cursor:pointer;transition:transform .15s var(--ease-spring), box-shadow .15s var(--ease-snappy);border:none;display:flex}.library-page__create-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #ff2d784d}.library-page__create-btn:active{transform:scale(.97)}.library-page__mixes-header{margin-bottom:var(--space-5);justify-content:flex-end;display:flex}.library-page__mixes-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.library-page__spinner{border:3px solid var(--border-subtle);border-top-color:var(--signal-cyan);border-radius:var(--radius-full);width:32px;height:32px;animation:.8s linear infinite lib-spin}@keyframes lib-spin{to{transform:rotate(360deg)}}@media (width<=767px){.library-page__title{font-size:var(--text-2xl)}.library-page__tabs{gap:0}.library-page__tab{padding:var(--space-3) var(--space-2);font-size:var(--text-xs);flex:1;justify-content:center}.library-page__empty{padding:var(--space-12) var(--space-4)}.library-page__mixes-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.library-page__empty-icon{animation:none}.library-page__heart-path{stroke-dashoffset:0;animation:none}.library-page__spinner{animation:none}}.confirm-modal__overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal,2000);padding:var(--space-4);animation:confirm-fade-in .2s var(--ease-smooth);background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes confirm-fade-in{0%{opacity:0}to{opacity:1}}.confirm-modal{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:380px;padding:var(--space-6);animation:confirm-slide-up .25s var(--ease-smooth);position:relative}@keyframes confirm-slide-up{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.confirm-modal__close{top:var(--space-4);right:var(--space-4);color:var(--text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-md);transition:color .15s var(--ease-snappy);background:0 0;border:none;position:absolute}.confirm-modal__close:hover{color:var(--text-primary)}.confirm-modal__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:.5px;margin-bottom:var(--space-3);padding-right:var(--space-6)}.confirm-modal__message{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-6);line-height:1.6}.confirm-modal__actions{gap:var(--space-3);justify-content:flex-end;display:flex}.confirm-modal__btn{padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:background-color .15s var(--ease-snappy), border-color .15s var(--ease-snappy), color .15s var(--ease-snappy), opacity .15s var(--ease-snappy)}.confirm-modal__btn:disabled{opacity:.5;cursor:not-allowed}.confirm-modal__btn--cancel{border:1px solid var(--border-subtle);color:var(--text-secondary);background:0 0}.confirm-modal__btn--cancel:hover:not(:disabled){border-color:var(--text-muted);color:var(--text-primary)}.confirm-modal__btn--confirm{border:1px solid #0000}.confirm-modal__btn--danger{color:#ef4444;background:#ef444426;border-color:#ef44444d}.confirm-modal__btn--danger:hover:not(:disabled){background:#ef444440;border-color:#ef4444}.confirm-modal__btn--default{background:color-mix(in srgb, var(--signal-cyan) 15%, transparent);border-color:color-mix(in srgb, var(--signal-cyan) 30%, transparent);color:var(--signal-cyan)}.confirm-modal__btn--default:hover:not(:disabled){background:color-mix(in srgb, var(--signal-cyan) 25%, transparent);border-color:var(--signal-cyan)}@media (width<=767px){.confirm-modal{max-width:none;margin:var(--space-4)}.confirm-modal__actions{flex-direction:column-reverse}.confirm-modal__btn{text-align:center;width:100%;padding:var(--space-3) var(--space-5)}}@media (prefers-reduced-motion:reduce){.confirm-modal__overlay,.confirm-modal{animation:none}}.mix-detail{max-width:1400px;margin:0 auto}.mix-detail__header{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;display:flex}.mix-detail__back{align-items:center;gap:var(--space-2);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:color .15s var(--ease-snappy), background-color .15s var(--ease-snappy);background:0 0;border:none;display:flex}.mix-detail__back:hover{color:var(--text-primary);background:var(--bg-tertiary)}.mix-detail__actions{gap:var(--space-2);display:flex}.mix-detail__delete-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-muted);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;transition:color .15s var(--ease-snappy), border-color .15s var(--ease-snappy), background-color .15s var(--ease-snappy);background:0 0;display:flex}.mix-detail__delete-btn:hover{color:#ef4444;background:#ef444414;border-color:#ef4444}.mix-detail__delete-btn:disabled{opacity:.5;cursor:not-allowed}.mix-detail__edit-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-muted);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;transition:color .15s var(--ease-snappy), border-color .15s var(--ease-snappy), background-color .15s var(--ease-snappy);background:0 0;display:flex}.mix-detail__edit-btn:hover{color:var(--signal-cyan);border-color:var(--signal-cyan);background:color-mix(in srgb, var(--signal-cyan) 8%, transparent)}.mix-detail__info{align-items:center;gap:var(--space-5);padding:var(--space-6);background:var(--bg-secondary);border:1px solid color-mix(in srgb, var(--mix-color) 20%, var(--border-subtle));border-radius:var(--radius-xl);margin-bottom:var(--space-6);display:flex;position:relative;overflow:hidden}.mix-detail__strip{background:var(--mix-color);height:3px;position:absolute;top:0;left:0;right:0}.mix-detail__icon{flex-shrink:0;font-size:3rem;line-height:1}.mix-detail__text{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.mix-detail__name{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--text-primary);letter-spacing:1px}.mix-detail__desc{font-size:var(--text-sm);color:var(--text-muted)}.mix-detail__count{font-size:var(--text-xs);color:var(--text-muted)}.mix-detail__loading{align-items:center;gap:var(--space-4);padding:var(--space-16) var(--space-4);color:var(--text-muted);flex-direction:column;display:flex}.mix-detail__spinner{border:3px solid var(--border-subtle);border-top-color:var(--signal-cyan);border-radius:var(--radius-full);width:32px;height:32px;animation:.8s linear infinite mix-spin}@keyframes mix-spin{to{transform:rotate(360deg)}}.mix-detail__empty{align-items:center;gap:var(--space-4);padding:var(--space-16) var(--space-4);text-align:center;flex-direction:column;display:flex}.mix-detail__empty-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:2px;color:var(--text-secondary)}.mix-detail__empty-sub{font-size:var(--text-sm);color:var(--text-muted);max-width:320px}@media (width<=767px){.mix-detail__info{padding:var(--space-5);flex-direction:column;align-items:flex-start}.mix-detail__name{font-size:var(--text-xl)}.mix-detail__icon{font-size:2.5rem}}@media (prefers-reduced-motion:reduce){.mix-detail__spinner{animation:none}}:root{--bg-void:#06060b;--bg-primary:#0a0a12;--bg-secondary:#0f0f1a;--bg-tertiary:#161625;--bg-elevated:#1c1c30;--signal-magenta:#ff2d78;--signal-cyan:#00f0ff;--signal-amber:#fa2;--signal-violet:#a855f7;--accent-primary:var(--signal-magenta);--accent-secondary:var(--signal-cyan);--glow-magenta:#ff2d7859;--glow-magenta-soft:#ff2d781f;--glow-cyan:#00f0ff4d;--glow-cyan-soft:#00f0ff1a;--glow-amber:#ffaa224d;--glow-violet:#a855f74d;--accent-primary-dim:var(--glow-magenta-soft);--accent-primary-glow:var(--glow-magenta);--accent-secondary-dim:var(--glow-cyan-soft);--accent-secondary-glow:var(--glow-cyan);--text-primary:#e8e8f0;--text-secondary:#7878a0;--text-muted:#707090;--text-ghost:#2a2a45;--border-subtle:#ffffff0a;--border-hover:#ffffff14;--border-glow:#00f0ff26;--status-success:#22c55e;--status-warning:#f59e0b;--status-error:#ef4444;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:24px;--radius-full:50%;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 20px var(--glow-magenta);--shadow-glow-cyan:0 0 20px var(--glow-cyan);--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-smooth:cubic-bezier(.16, 1, .3, 1);--ease-snappy:cubic-bezier(.5, 0, 0, 1);--ease-organic:cubic-bezier(.4, 0, .6, 1);--font-display:"Space Grotesk", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--text-xs:clamp(.6875rem, .65rem + .15vw, .75rem);--text-sm:clamp(.8125rem, .78rem + .15vw, .875rem);--text-base:clamp(.875rem, .85rem + .15vw, 1rem);--text-lg:clamp(1rem, .95rem + .25vw, 1.125rem);--text-xl:clamp(1.125rem, 1rem + .5vw, 1.375rem);--text-2xl:clamp(1.375rem, 1.2rem + .75vw, 1.75rem);--text-3xl:clamp(1.75rem, 1.5rem + 1vw, 2.5rem);--text-4xl:clamp(2.25rem, 1.8rem + 2vw, 3.5rem);--text-5xl:clamp(3rem, 2.5rem + 2.5vw, 5rem);--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--rail-width:200px;--rail-width-collapsed:64px;--player-bar-height:80px;--mobile-nav-height:64px;--header-height:64px;--z-player:120;--z-rail:110;--z-mobile-nav:130;--z-pwa:200;--z-popover:1000;--sidebar-width:var(--rail-width)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent;font-size:16px}body{font-family:var(--font-body);font-weight:var(--weight-regular);color:var(--text-primary);background-color:var(--bg-void);min-height:100vh;line-height:1.6;position:relative;overflow-x:hidden}#root{z-index:2;min-height:100vh;position:relative}body:before{content:"";animation:aurora-drift 20s var(--ease-organic) infinite alternate;pointer-events:none;z-index:0;background-color:#0000;background-image:radial-gradient(at 20% 0,#00f0ff08 0%,#0000 50%),radial-gradient(at 80% 100%,#ff2d7808 0%,#0000 50%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:200% 200%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;transition:opacity .6s;position:fixed;inset:0}body.genre-active:before{opacity:0}body.audio-playing:before{opacity:1;background:radial-gradient(at 20% 0,#00f0ff0d 0%,#0000 50%),radial-gradient(at 80% 100%,#ff2d780d 0%,#0000 50%)}body.audio-error:before{animation:.5s steps(3,end) aurora-flicker}body.audio-reconnecting:before{animation:aurora-pulse 1.5s var(--ease-organic) infinite}@keyframes aurora-drift{0%{background-position:0 0}to{background-position:100% 100%}}@keyframes aurora-flicker{0%,to{opacity:.03}33%{opacity:0}66%{opacity:.05}}@keyframes aurora-pulse{0%,to{opacity:.02}50%{opacity:.05}}body:after{content:"";opacity:.015;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}html[data-atmosphere=void]{--border-subtle:#ffffff14;--border-hover:#ffffff24}html[data-atmosphere=void] body:before,html[data-atmosphere=void] body:after,html[data-atmosphere=void] body.audio-playing:before,html[data-atmosphere=void] body.audio-error:before,html[data-atmosphere=void] body.audio-reconnecting:before,html[data-atmosphere=void] .home-page:before,html[data-atmosphere=void] .genre-page__atmosphere{display:none!important}html[data-atmosphere=void] .command-rail{background:var(--bg-primary)!important}html[data-atmosphere=void] .command-rail__brand{filter:none!important;animation:none!important}html[data-atmosphere=void] .player-cockpit{background:var(--bg-primary)!important;-webkit-backdrop-filter:none!important;border-top:1px solid var(--border-subtle)!important;border-image:!important}html[data-atmosphere=void] .player-cockpit--error{border-top:1px solid var(--status-error)!important;border-image:!important}html[data-atmosphere=void] .pwa-prompt__content{-webkit-backdrop-filter:none!important;box-shadow:var(--shadow-lg)!important}html[data-atmosphere=void] .genre-page__header{background:linear-gradient(135deg, color-mix(in srgb, var(--genre-color) 12%, var(--bg-secondary)), var(--bg-secondary))!important}html[data-atmosphere=void] .home-page__title-gradient{filter:none!important}html[data-atmosphere=void] .frequency-scanner__scan-line{display:none!important}html[data-atmosphere=void] .frequency-scanner:focus-within .frequency-scanner__icon{filter:none!important}html[data-atmosphere=void] .frequency-scanner__input:focus-visible{box-shadow:none!important;border-color:var(--signal-cyan)!important}html[data-atmosphere=void] .signal-card:hover{box-shadow:var(--shadow-sm)!important}html[data-atmosphere=void] .signal-card--active{box-shadow:none!important}html[data-atmosphere=void] .signal-card--active .signal-card__frequency-strip{box-shadow:none!important;animation:none!important}html[data-atmosphere=void] .frequency-band--active{box-shadow:none!important;text-shadow:none!important}html[data-atmosphere=void] .command-rail__dot--active .command-rail__dot-inner{box-shadow:0 0 4px var(--dot-color)!important;animation:none!important}html[data-atmosphere=void] .command-rail__icon--active:after{box-shadow:none!important}html[data-atmosphere=void] .fav-btn--active svg path{filter:none!important}html[data-atmosphere=void] .station-grid__loadmore-btn:hover{box-shadow:none!important}html[data-atmosphere=void] .mix-card:hover{box-shadow:var(--shadow-sm)!important}html[data-atmosphere=void] .mix-card:hover .mix-card__strip{box-shadow:none!important}html[data-atmosphere=void] .mix-modal__overlay{-webkit-backdrop-filter:none!important}html[data-atmosphere=void] .mix-modal{box-shadow:var(--shadow-lg)!important}html[data-atmosphere=void] .mix-modal__color-btn--active{box-shadow:none!important;border-color:#fff!important}html[data-atmosphere=void] .confirm-modal__overlay{-webkit-backdrop-filter:none!important}html[data-atmosphere=void] .library-page__create-btn:hover{box-shadow:var(--shadow-sm)!important}html[data-atmosphere=void] .add-to-mix__popover{box-shadow:var(--shadow-lg)!important}html[data-atmosphere=void] .genre-page__icon{filter:none!important}html[data-atmosphere=void] .error-boundary__btn:hover{box-shadow:var(--shadow-sm)!important}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.2}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{color:var(--text-secondary);line-height:1.6}a{color:var(--signal-magenta);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--signal-cyan)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}::selection{background:var(--glow-magenta-soft);color:var(--text-primary)}:focus-visible{outline:2px solid var(--signal-cyan);outline-offset:2px;border-radius:var(--radius-sm)}button{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;transition:color var(--transition-normal), background-color var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), transform var(--transition-normal), opacity var(--transition-normal);background:0 0;border:none}button:disabled{cursor:not-allowed;opacity:.5}input{font-family:var(--font-body);font-size:var(--text-base);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);padding:var(--space-3) var(--space-4);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}input::placeholder{color:var(--text-muted)}input:focus-visible{border-color:var(--signal-magenta);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}body:before{animation:none!important}.signal-card{opacity:1!important;animation:none!important}.signal-avatar--active{animation:none!important}}@keyframes spin{to{transform:rotate(360deg)}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.neon-glow{box-shadow:var(--shadow-glow)}.neon-glow-cyan{box-shadow:var(--shadow-glow-cyan)}.font-mono{font-family:var(--font-mono)}.gradient-text{background:linear-gradient(135deg, var(--signal-magenta), var(--signal-cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}
