*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}html,body{width:100vw;height:100vh;height:100dvh;overflow:hidden;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#0a0a0c;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bg-viewport{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/assets/background-CdREQPkK.webp);background-size:cover;background-position:center center;background-repeat:no-repeat;image-rendering:-webkit-optimize-contrast;image-rendering:high-quality;z-index:1}.vignette-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,#0000000d 30%,#00000073),linear-gradient(to bottom,#00000040,#0000 25%,#0000 70%,#00000073);pointer-events:none;z-index:2}.top-bar{position:absolute;top:24px;left:0;width:100%;padding:0 32px;display:flex;justify-content:flex-start;align-items:center;z-index:10}.analytics-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#12121673;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);border-radius:9999px;color:#fff;text-decoration:none;font-size:.82rem;font-weight:500;transition:all .2s ease;box-shadow:0 8px 24px #00000040}.analytics-btn:hover{background:#ff57222e;border-color:#ff572266;color:#ff8a65;transform:translateY(-1px)}.ist-clock-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#12121673;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);border-radius:9999px;box-shadow:0 8px 24px #00000040}.live-dot{width:7px;height:7px;background-color:#ff5722;border-radius:50%;box-shadow:0 0 10px #ff5722;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 #ff5722b3}70%{transform:scale(1.1);box-shadow:0 0 0 8px #ff572200}to{transform:scale(.95);box-shadow:0 0 #ff572200}}.time-text{font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:500;letter-spacing:.03em;color:#fffffff2}.zone-tag{font-size:.7rem;font-weight:600;letter-spacing:.08em;color:#ffffff80;padding-left:4px;border-left:1px solid rgba(255,255,255,.15)}.spotify-btn{position:fixed;bottom:28px;right:32px;display:flex;align-items:center;gap:8px;padding:8px 16px;background:#1212168c;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);border-radius:9999px;color:#fff;text-decoration:none;font-size:.82rem;font-weight:500;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 24px #0000004d;z-index:30}.spotify-icon{color:#1db954;transition:transform .3s ease}.spotify-btn:hover{background:#1db9542e;border-color:#1db95473;box-shadow:0 8px 30px #1db95440;transform:translateY(-2px)}.spotify-btn:hover .spotify-icon{transform:scale(1.1)}.player-container{position:absolute;bottom:20vh;left:50%;transform:translate(-50%);width:min(720px,calc(100vw - 32px));z-index:20}.music-player-pill{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;background:#0f0f12ad;backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border:1px solid rgba(255,255,255,.13);border-radius:28px;box-shadow:0 20px 50px #0000008c,0 0 1px #fff3,inset 0 1px #ffffff1a;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.music-player-pill:hover{border-color:#fff3;box-shadow:0 24px 60px #000000a6,0 0 30px #ff57221f,inset 0 1px #ffffff26}.player-left{display:flex;align-items:center;gap:14px;min-width:220px;max-width:280px}.artwork-wrapper{position:relative;width:48px;height:48px;flex-shrink:0;border-radius:10px;overflow:hidden;box-shadow:0 4px 14px #0006}.track-artwork{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.music-player-pill:hover .track-artwork{transform:scale(1.05)}.equalizer-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-end;justify-content:center;gap:3px;padding-bottom:12px;opacity:0;transition:opacity .3s ease}.equalizer-overlay.active{opacity:1}.eq-bar{width:3px;height:16px;background-color:#ff5722;border-radius:2px;transform-origin:bottom}.equalizer-overlay.active .eq-bar:nth-child(1){animation:eqBounce .8s infinite ease-in-out alternate}.equalizer-overlay.active .eq-bar:nth-child(2){animation:eqBounce 1.1s infinite ease-in-out alternate .2s}.equalizer-overlay.active .eq-bar:nth-child(3){animation:eqBounce .9s infinite ease-in-out alternate .4s}@keyframes eqBounce{0%{transform:scaleY(.2)}to{transform:scaleY(1)}}.track-meta{display:flex;flex-direction:column;gap:2px;overflow:hidden}.track-title-container{overflow:hidden;white-space:nowrap}.track-title{font-size:.88rem;font-weight:600;color:#fff;text-overflow:ellipsis;overflow:hidden;letter-spacing:-.01em;line-height:1.25}.artist-name{font-size:.74rem;font-weight:400;color:#ffffff8c;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.player-center{flex:1;display:flex;flex-direction:column;gap:6px;padding:0 10px;min-width:160px}.progress-container{width:100%;padding:6px 0;cursor:pointer}.progress-bar-bg{position:relative;width:100%;height:4px;background:#ffffff26;border-radius:9999px;overflow:visible;transition:height .2s ease}.progress-container:hover .progress-bar-bg{height:6px}.progress-fill{position:absolute;top:0;left:0;height:100%;width:0%;background:linear-gradient(90deg,#ff5722,#ff8a65);border-radius:9999px;pointer-events:none}.progress-thumb{position:absolute;top:50%;left:0%;transform:translate(-50%,-50%) scale(1);width:10px;height:10px;background-color:#fff;border-radius:50%;box-shadow:0 0 10px #ff5722cc;pointer-events:none}.progress-slider{position:absolute;top:-8px;left:0;width:100%;height:24px;opacity:0;cursor:pointer;z-index:10;margin:0;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.progress-slider::-webkit-slider-runnable-track{width:100%;height:24px;cursor:pointer;background:transparent}.progress-slider::-webkit-slider-thumb{height:24px;width:24px;cursor:pointer;-webkit-appearance:none;background:transparent}.progress-slider::-moz-range-track{width:100%;height:24px;cursor:pointer;background:transparent}.progress-slider::-moz-range-thumb{height:24px;width:24px;cursor:pointer;background:transparent}.time-display{display:flex;justify-content:center;align-items:center;gap:4px;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:.68rem;font-weight:500;color:#fff9;letter-spacing:.02em}.time-separator{opacity:.4}.player-right{display:flex;align-items:center;gap:8px}.control-btn{background:transparent;border:none;color:#ffffffbf;cursor:pointer;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.control-btn:hover{color:#fff;background:#ffffff1a;transform:scale(1.08)}.control-btn:active{transform:scale(.95)}.play-pause-btn{width:42px;height:42px;background:#fffffff2;color:#0d0d0f;box-shadow:0 4px 16px #0000004d}.play-pause-btn:hover{background:#fff;color:#000;box-shadow:0 6px 20px #ff572259;transform:scale(1.08)}.play-pause-btn .play-icon{margin-left:2px}.toggle-embed-btn{color:#1db954;border:1px solid rgba(29,185,84,.3);background:#1db9541a;margin-left:4px}.toggle-embed-btn:hover{background:#1db95440;border-color:#1db95499;color:#1db954}.spotify-embed-container{position:absolute;bottom:calc(100% + 16px);left:50%;transform:translate(-50%);width:min(540px,calc(100vw - 32px));background:#121216d9;backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:12px;box-shadow:0 20px 50px #0009;z-index:25;transition:all .3s cubic-bezier(.16,1,.3,1)}.spotify-embed-container.hidden{opacity:0;pointer-events:none;transform:translate(-50%,10px) scale(.96)}.spotify-embed-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 4px}.spotify-embed-title{font-size:.76rem;font-weight:600;color:#fff9;letter-spacing:.05em;text-transform:uppercase}.close-embed-btn{background:transparent;border:none;color:#fff9;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:50%}.close-embed-btn:hover{color:#fff;background:#ffffff1a}.playlist-drawer{position:absolute;bottom:calc(100% + 14px);left:50%;transform:translate(-50%);width:min(500px,calc(100vw - 32px));background:#121216c7;backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:12px;box-shadow:0 20px 50px #000000a6,0 0 1px #fff3;z-index:25;display:flex;flex-direction:column;transition:opacity .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1)}.playlist-drawer.hidden{opacity:0;pointer-events:none;transform:translate(-50%,10px) scale(.96)}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 10px;border-bottom:1px solid rgba(255,255,255,.08)}.drawer-title{font-size:.74rem;font-weight:600;color:#fff9;letter-spacing:.06em;text-transform:uppercase}.close-drawer-btn{background:transparent;border:none;color:#ffffff80;cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-drawer-btn:hover{color:#fff;background:#ffffff1a}.drawer-track-list{overflow-y:auto;margin-top:6px;display:flex;flex-direction:column;gap:2px;max-height:240px;padding-right:4px}.drawer-track-list::-webkit-scrollbar{width:4px}.drawer-track-list::-webkit-scrollbar-track{background:transparent}.drawer-track-list::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.drawer-track-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:10px;cursor:pointer;transition:background .2s ease,border-color .2s ease}.drawer-track-item:hover{background:#ffffff14}.drawer-track-item.active{background:#ff572229;border:1px solid rgba(255,87,34,.35)}.track-item-left{display:flex;align-items:center;gap:10px;overflow:hidden}.track-num{font-family:JetBrains Mono,monospace;font-size:.74rem;color:#fff6;width:18px;text-align:right;flex-shrink:0}.drawer-track-item.active .track-num{color:#ff5722;font-weight:700}.track-item-info{display:flex;flex-direction:column;overflow:hidden}.track-item-title{font-size:.81rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-track-item.active .track-item-title{color:#ff8a65;font-weight:600}.track-item-artist{font-size:.69rem;color:#ffffff80}.track-item-duration{font-family:JetBrains Mono,monospace;font-size:.72rem;color:#ffffff73;flex-shrink:0;margin-left:8px}.hidden{display:none!important}@media(max-width:1280px){.player-container{bottom:18vh;width:min(680px,calc(100vw - 32px))}}@media(max-width:1023px){.top-bar{top:20px;padding:0 24px}.analytics-btn{padding:7px 14px;font-size:.78rem}.spotify-btn{bottom:24px;right:24px;padding:7px 14px;font-size:.78rem}.player-container{bottom:16vh;width:min(640px,calc(100vw - 28px))}.music-player-pill{padding:12px 16px;gap:12px;border-radius:24px}.player-left{min-width:170px;max-width:220px;gap:12px}.artwork-wrapper{width:44px;height:44px}.track-title{font-size:.84rem}.artist-name{font-size:.72rem}.playlist-drawer{width:min(440px,calc(100vw - 28px))}}@media(max-width:767px){.top-bar{top:16px;padding:0 16px}.analytics-btn{padding:6px 12px;font-size:.75rem}.spotify-btn{bottom:16px;right:16px;padding:6px 12px;font-size:.75rem}.spotify-btn-text{display:inline}.player-container{bottom:16vh;width:calc(100vw - 20px)}.music-player-pill{padding:10px 12px;gap:8px;border-radius:20px}.player-left{min-width:120px;max-width:160px;gap:8px}.artwork-wrapper{width:40px;height:40px;border-radius:8px}.track-title{font-size:.78rem}.artist-name{font-size:.68rem}.player-center{min-width:80px;padding:0 4px}.control-btn{width:32px;height:32px}.play-pause-btn{width:38px;height:38px}.playlist-drawer{width:calc(100vw - 20px);max-height:220px}}@media(max-width:479px){.top-bar{top:12px;padding:0 12px}.analytics-btn{padding:5px 10px;font-size:.72rem}.spotify-btn{bottom:12px;right:12px;padding:5px 10px;font-size:.72rem}.spotify-btn-text{display:none}.player-container{bottom:14vh;width:calc(100vw - 16px)}.music-player-pill{padding:8px 10px;gap:6px;border-radius:18px}.player-left{min-width:100px;max-width:130px;gap:6px}.artwork-wrapper{width:36px;height:36px;border-radius:6px}.track-title{font-size:.74rem}.artist-name{font-size:.64rem}.control-btn{width:28px;height:28px}.play-pause-btn{width:34px;height:34px}.playlist-drawer{width:calc(100vw - 16px);border-radius:16px;padding:8px}}
