@import "https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800;900&display=swap";:root{--font-apple:"Poppins", -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", sans-serif;--apple-music-red:#ff2d55;--accent-color:var(--apple-music-red);--artwork-color-primary:#ff2d5540;--artwork-color-secondary:#af52de40;--artwork-color-tertiary:#007aff33;--bg-app:#f5f5f7;--bg-app-rgb:245, 245, 247;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-tertiary:#aeaeb2;--glass-bg:#ffffff59;--glass-border:#ffffff73;--glass-shadow:0 8px 32px 0 #1f268714;--card-bg:#ffffff73;--control-bg:#fff9;--sheet-bg:#ffffffa6;--status-bar-bg:#f5f5f7cc;--tab-bar-bg:#fff6}body.dark-mode{--bg-app:#0d0d0f;--bg-app-rgb:13, 13, 15;--text-primary:#f5f5f7;--text-secondary:#8e8e93;--text-tertiary:#636366;--glass-bg:#19191c66;--glass-border:#ffffff14;--glass-shadow:0 8px 32px 0 #0006;--card-bg:#1e1e2373;--control-bg:#ffffff14;--sheet-bg:#141419b3;--status-bar-bg:#0d0d0fcc;--tab-bar-bg:#14141980;--artwork-color-primary:#ff2d552e;--artwork-color-secondary:#af52de2e;--artwork-color-tertiary:#007aff26}body.oled-mode{--bg-app:#000;--bg-app-rgb:0, 0, 0;--text-primary:#fff;--text-secondary:#7d7d82;--text-tertiary:#48484a;--glass-bg:#0a0a0a99;--glass-border:#ffffff0d;--glass-shadow:0 8px 32px 0 #0009;--card-bg:#12121299;--control-bg:#ffffff0f;--sheet-bg:#0c0c0cd9;--status-bar-bg:#000000e6;--tab-bar-bg:#0a0a0abf;--artwork-color-primary:#ff2d551f;--artwork-color-secondary:#af52de1f;--artwork-color-tertiary:#007aff1a}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;margin:0;padding:0}body{font-family:var(--font-apple);background-color:var(--bg-app);color:var(--text-primary);width:100vw;height:100vh;transition:background-color .8s cubic-bezier(.25,1,.5,1);position:fixed;overflow-x:hidden}#root{width:100%;height:100%;position:relative;overflow:hidden}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:10px}.bg-liquid-container{z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 50%, rgba(var(--bg-app-rgb), .3) 0%, var(--bg-app) 100%);width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.liquid-blob{filter:blur(80px);opacity:.75;mix-blend-mode:normal;border-radius:50%;transition:background 1.5s ease-in-out,transform 2s ease-in-out;position:absolute}.blob-1{background:var(--artwork-color-primary);width:70vw;height:70vw;animation:25s ease-in-out infinite alternate floatBlob1;top:-10%;left:-10%}.blob-2{background:var(--artwork-color-secondary);width:80vw;height:80vw;animation:30s ease-in-out infinite alternate floatBlob2;bottom:10%;right:-20%}.blob-3{background:var(--artwork-color-tertiary);width:50vw;height:50vw;animation:22s ease-in-out infinite alternate floatBlob3;top:35%;left:20%}@keyframes floatBlob1{0%{transform:translate(0)scale(1)rotate(0)}50%{transform:translate(15%,10%)scale(1.15)rotate(90deg)}to{transform:translate(-5%,20%)scale(.9)rotate(180deg)}}@keyframes floatBlob2{0%{transform:translate(0)scale(1.1)rotate(0)}50%{transform:translate(-20%,-15%)scale(.85)rotate(-120deg)}to{transform:translate(10%,-5%)scale(1.05)rotate(-240deg)}}@keyframes floatBlob3{0%{transform:translate(0)scale(.95)}50%{transform:translate(10%,-10%)scale(1.2)}to{transform:translate(-10%,15%)scale(1)}}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(35px)saturate(210%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);color:var(--text-primary);border-radius:24px;transition:all .5s cubic-bezier(.25,1,.5,1)}.glass-button{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--glass-border);color:var(--text-primary);cursor:pointer;border-radius:16px;justify-content:center;align-items:center;font-weight:600;transition:transform .2s cubic-bezier(.25,1,.5,1),background .3s,opacity .2s;display:inline-flex;box-shadow:0 4px 12px #0000000a}.glass-button:active{background:#ffffff26;transform:scale(.95)}.glass-button.primary{background:var(--accent-color);color:#fff;border-color:#fff3;box-shadow:0 8px 24px #ff2d554d}.glass-button.primary:active{opacity:.9;transform:scale(.96)}.glass-input{border:1px solid var(--glass-border);color:var(--text-primary);font-family:var(--font-apple);background:#ffffff14;border-radius:14px;outline:none;width:100%;padding:14px 16px;font-size:16px;transition:all .3s cubic-bezier(.25,1,.5,1)}.glass-input:focus{border-color:var(--accent-color);background:#ffffff24;box-shadow:0 0 0 3px #ff2d5526}.glass-input::placeholder{color:var(--text-tertiary)}.app-container{z-index:1;flex-direction:column;width:100%;height:100%;display:flex;position:relative}.status-bar-spacer{flex-shrink:0;width:100%;height:47px}.content-area{-webkit-overflow-scrolling:touch;flex-grow:1;padding:0 20px 140px;overflow-y:auto}.tab-bar-container{z-index:100;background:var(--tab-bar-bg);-webkit-backdrop-filter:blur(30px)saturate(210%);border:1px solid var(--glass-border);border-radius:28px;justify-content:space-around;align-items:center;height:72px;padding:0 10px;transition:transform .4s cubic-bezier(.25,1,.5,1);display:flex;position:absolute;bottom:24px;left:20px;right:20px;box-shadow:0 12px 40px #00000026}.tab-item{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:60px;height:100%;font-size:10px;font-weight:500;text-decoration:none;transition:color .3s,transform .2s;display:flex}.tab-item:active{transform:scale(.9)}.tab-item.active{color:var(--accent-color)}.tab-icon{width:24px;height:24px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.tab-item.active .tab-icon{transform:scale(1.1)translateY(-2px)}.screen-fade-enter{opacity:0;transform:scale(.98)translateY(10px)}.screen-fade-enter-active{opacity:1;transition:opacity .4s ease-out,transform .4s cubic-bezier(.25,1,.5,1);transform:scale(1)translateY(0)}.bottom-sheet-overlay{-webkit-backdrop-filter:blur(10px);z-index:1000;opacity:0;pointer-events:none;background:#0006;width:100%;height:100%;transition:opacity .4s;position:absolute;top:0;left:0}.bottom-sheet-overlay.active{opacity:1;pointer-events:auto}.bottom-sheet{background:var(--sheet-bg);-webkit-backdrop-filter:blur(40px)saturate(220%);border-top:1px solid var(--glass-border);z-index:1001;border-radius:36px 36px 0 0;flex-direction:column;max-height:90%;transition:transform .5s cubic-bezier(.15,.85,.35,1);display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -15px 40px #0003}.bottom-sheet.active{transform:translateY(0)}.bottom-sheet-handle{background:#ffffff4d;border-radius:3px;flex-shrink:0;width:40px;height:5px;margin:12px auto 8px}.bottom-sheet-content{flex-grow:1;padding:24px;overflow-y:auto}.mini-player-container{z-index:99;background:var(--glass-bg);-webkit-backdrop-filter:blur(35px)saturate(200%);border:1px solid var(--glass-border);cursor:pointer;border-radius:20px;justify-content:space-between;align-items:center;height:64px;padding:0 16px 0 8px;transition:transform .4s cubic-bezier(.25,1,.5,1),background .3s;display:flex;position:absolute;bottom:108px;left:20px;right:20px;box-shadow:0 8px 30px #0000001f}.mini-player-container:active{transform:scale(.98)}.mini-player-info{flex-grow:1;align-items:center;gap:12px;min-width:0;display:flex}.mini-player-artwork{object-fit:cover;background-color:#222;border-radius:12px;width:48px;height:48px;box-shadow:0 4px 12px #00000026}.mini-player-text{flex-direction:column;min-width:0;display:flex}.mini-player-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.mini-player-artist{color:var(--text-secondary);margin-top:1px;font-size:11px;font-weight:500}.mini-player-controls{align-items:center;gap:16px;display:flex}.mini-player-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:transform .2s;display:flex}.mini-player-btn:active{transform:scale(.85)}.apple-slider{-webkit-appearance:none;background:#ffffff26;border-radius:3px;outline:none;width:100%;height:6px;position:relative}body.dark-mode .apple-slider{background:#ffffff14}.apple-slider::-webkit-slider-runnable-track{cursor:pointer;border-radius:3px;width:100%;height:6px}.apple-slider::-webkit-slider-thumb{background:var(--text-primary);cursor:pointer;-webkit-appearance:none;border-radius:50%;width:6px;height:6px;transition:transform .15s;box-shadow:0 1px 4px #0003}.apple-slider:hover::-webkit-slider-thumb{background:var(--accent-color);transform:scale(2.5)}.apple-slider:active::-webkit-slider-thumb{background:var(--accent-color);transform:scale(2.5)}.song-row{cursor:pointer;border-radius:16px;align-items:center;gap:14px;padding:10px 12px;transition:background .3s,transform .2s;display:flex}.song-row:hover{background:#ffffff0f}.song-row:active{transform:scale(.98)}.song-row.active{background:#ffffff14}.song-row-artwork{object-fit:cover;background-color:#222;border-radius:12px;width:52px;height:52px;box-shadow:0 4px 10px #00000014}.song-row-info{flex-grow:1;min-width:0}.song-row-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.song-row-duration{color:var(--text-secondary);margin-top:3px;font-size:12px}.song-row-delete{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:color .2s,background .2s;display:flex}.song-row-delete:hover{color:#ff3b30;background:#ff3b3014}.tap-effect{transition:transform .15s cubic-bezier(.25,1,.5,1)}.tap-effect:active{transform:scale(.96)}.app-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 20px 10px;display:flex}.app-title{letter-spacing:-.5px;font-size:28px;font-weight:800}.liquid-spinner{border:3px solid #ff2d5526;border-top-color:var(--accent-color);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.detail-top-bar{z-index:200;padding-top:env(safe-area-inset-top,44px);-webkit-backdrop-filter:none;background:0 0;border-bottom:1px solid #0000;align-items:center;gap:12px;padding-bottom:12px;padding-left:16px;padding-right:16px;transition:background .35s cubic-bezier(.25,1,.5,1),border-color .35s,-webkit-backdrop-filter .35s,backdrop-filter .35s;display:flex;position:absolute;top:0;left:0;right:0}.detail-top-bar.scrolled{background:var(--status-bar-bg);-webkit-backdrop-filter:blur(28px)saturate(200%);border-bottom:1px solid var(--glass-border)}.detail-back-button{-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);width:36px;min-width:36px;height:36px;color:var(--text-primary);cursor:pointer;background:#ffffff24;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,transform .15s;display:flex;box-shadow:0 2px 8px #0000001a}.detail-back-button:active{background:#ffffff38;transform:scale(.88)}.detail-top-title{color:var(--text-primary);letter-spacing:-.3px;white-space:nowrap;text-overflow:ellipsis;opacity:0;pointer-events:none;font-size:17px;font-weight:700;transition:opacity .3s,transform .3s;overflow:hidden;transform:translateY(4px)}.detail-top-bar.scrolled .detail-top-title{opacity:1;transform:translateY(0)}.mini-player-progress-track{background:#ffffff1f;border-radius:2px;height:3px;position:absolute;bottom:0;left:8px;right:8px;overflow:hidden}.mini-player-progress-fill{background:var(--accent-color);border-radius:2px;height:100%;transition:width .5s linear}.mini-player-artwork-wrap{flex-shrink:0;position:relative}.mini-player-eq{background:#00000073;border-radius:12px;justify-content:center;align-items:flex-end;gap:3px;padding-bottom:7px;display:flex;position:absolute;inset:0}.eq-bar{background:#fff;border-radius:2px;width:4px;animation:.8s ease-in-out infinite alternate eqPulse;display:block}.eq-bar:first-child{height:10px;animation-delay:0s}.eq-bar:nth-child(2){height:16px;animation-delay:.2s}.eq-bar:nth-child(3){height:8px;animation-delay:.4s}@keyframes eqPulse{0%{transform:scaleY(.4)}to{transform:scaleY(1)}}.song-row-eq{align-items:flex-end;gap:2px;width:18px;height:18px;display:flex}.song-row-eq .eq-bar{background:var(--accent-color);border-radius:1px;width:3px}.song-row-eq .eq-bar:first-child{height:8px;animation-delay:0s}.song-row-eq .eq-bar:nth-child(2){height:13px;animation-delay:.15s}.song-row-eq .eq-bar:nth-child(3){height:6px;animation-delay:.3s}.status-bar-spacer{height:env(safe-area-inset-top,47px);flex-shrink:0;width:100%;min-height:20px}
