:root{font-family:Inter,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#f2f2ef;background:#111315;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--accent:#b8f16c;--muted:#83888c;--border:#ffffff0d;--panel:#191c1f;--player-height:100px;--sidebar-width:228px;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,summary,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button{border:0;color:inherit;background:none}a{color:inherit;text-decoration:none}button:disabled{opacity:.35;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button,select,a{transition:color .18s,background .18s,opacity .18s,transform .18s}button:hover{color:#fff}input{min-width:0}input::placeholder{color:#686e72}input[type=range]{appearance:none;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--progress,0%),#34383b var(--progress,0%),#34383b 100%);height:3px;border:0;border-radius:10px;cursor:pointer;padding:0;margin:0}input[type=range]::-webkit-slider-thumb{appearance:none;width:10px;height:10px;background:#f4f6ef;border-radius:50%;opacity:0}input[type=range]:hover::-webkit-slider-thumb,input[type=range]:focus-visible::-webkit-slider-thumb{opacity:1}input[type=range]::-moz-range-thumb{height:10px;width:10px;border:0;border-radius:50%;background:#f4f6ef}button svg{flex-shrink:0}.muted{color:var(--muted)}.spin{animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.icon-button{display:inline-flex;align-items:center;justify-content:center;height:32px;min-width:32px;padding:6px;border-radius:7px;color:#949a9e}.icon-button:hover{color:#f6f6f3;background:#ffffff0a}.button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:40px;padding:10px 17px;border-radius:7px;font-size:12px;font-weight:600;white-space:nowrap}.primary{background:var(--accent);color:#19220f;box-shadow:0 3px 12px #b8f16c05}.primary:hover{color:#131b0b;background:#c7fc84;transform:translateY(-1px)}.secondary{background:#ffffff08;border:1px solid #ffffff12;color:#d6dad7}.secondary:hover{background:#ffffff10}.compact{min-height:34px;padding:7px 12px;font-size:11px}.text-button{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:12px}.danger{background:#de6868;color:#1f1111}.danger:hover{background:#f08282}.danger-ghost,.danger-text{color:#e58c8c!important}.danger-ghost{background:#e58c8c08;border:1px solid #e58c8c20}.enabled,.is-liked,.is-cached{color:var(--accent)!important}.error-text{color:#ee9c94!important}.sidebar{position:fixed;left:0;top:0;bottom:var(--player-height);width:var(--sidebar-width);z-index:20;background:#141719;border-right:1px solid var(--border);display:flex;flex-direction:column;padding:30px 18px 0}.brand{display:flex;align-items:center;gap:10px;margin:0 13px 46px;width:max-content}.brand-mark{width:38px;height:40px;display:grid;place-items:center;color:var(--accent)}.brand>span:last-child{font-weight:700;font-size:23px;letter-spacing:4px;line-height:1.15}.brand small{display:block;font-size:8px;color:#929a94;letter-spacing:2.1px;font-weight:400;margin-top:7px}.nav-label{color:#60696d;font-size:10px;letter-spacing:1.5px;font-weight:600;margin:0 16px 12px}.main-nav{display:flex;flex-direction:column;gap:6px}.main-nav button{display:flex;align-items:center;gap:13px;height:44px;border-radius:7px;padding:0 16px;color:#929b9e;text-align:left;font-size:12px;position:relative}.main-nav button:hover{background:#ffffff04;color:#d4d9d6}.main-nav button.active{background:#b8f16c0c;color:var(--accent)}.main-nav button.active:before{content:"";position:absolute;left:-18px;top:14px;height:17px;width:3px;background:var(--accent);border-radius:0 3px 3px 0}.main-nav small{margin-left:auto;color:#6f7976;font-size:10px}.mini-dot{background:var(--accent);height:6px;width:6px;border-radius:50%;margin-left:auto}.playlist-label{display:flex;align-items:center;justify-content:space-between;margin-top:35px;padding-right:9px;margin-bottom:8px}.playlist-label .nav-label{margin-bottom:0}.playlist-label .icon-button{height:24px;min-width:24px}.playlist-nav{overflow-y:auto;max-height:28vh}.playlist-nav>button{display:flex;align-items:center;gap:11px;padding:9px 12px;width:100%;border-radius:7px;text-align:left;font-size:11px;color:#c2c8c7;margin:3px 0}.playlist-nav>button:hover,.playlist-nav>button.active{background:#ffffff05}.playlist-nav>button.active{color:var(--accent)}.playlist-nav small{display:block;color:#596368;font-size:9px;margin-top:5px}.playlist-symbol{width:31px;height:32px;display:grid;place-items:center;flex-shrink:0;background:linear-gradient(135deg,#394936,#202e27);color:#9fbba1;border-radius:5px}.playlist-symbol.dashed{border:1px dashed #49504c;background:none;color:#7b8b7d}.playlist-nav .create-playlist{font-size:10px;color:#919b98}.sidebar-bottom{margin-top:auto;padding-top:22px}.offline-card{padding:16px 14px 13px;border-radius:9px;background:linear-gradient(130deg,#202822,#1b211e);border:1px solid #b8f16c08;margin:0 3px 16px;position:relative;overflow:hidden}.offline-card:after{content:"";position:absolute;width:130px;height:130px;right:-60px;top:-30px;border:1px solid #b8f16c10;border-radius:50%}.offline-card-icon{display:block;color:#b5cd9e;margin-bottom:9px}.offline-card strong{font-size:11px;letter-spacing:.5px;font-weight:500}.offline-card p{font-size:10px;color:#7f9082;line-height:1.9;margin:7px 0 12px}.offline-card button{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:10px;color:#b4c4ae}.settings-link{padding:9px 16px;display:flex;align-items:center;gap:12px;font-size:11px;color:#879193;width:100%;border-radius:7px}.settings-link.active{color:var(--accent)}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid var(--border);margin-top:13px;padding:17px 9px}.avatar{display:grid;place-items:center;width:31px;height:31px;background:#343b32;color:#c7d4bc;border-radius:50%;font-size:13px}.profile>div{flex:1}.profile strong{font-size:10px;font-weight:500;display:block}.profile small{font-size:8px;color:#78817c;display:flex;gap:5px;align-items:center;margin-top:5px}.profile>svg{color:#657366}.status-dot{width:4px;height:4px;background:#9abf77;border-radius:50%;display:inline-block}.status-dot.is-offline{background:#c6a168}.main{margin-left:var(--sidebar-width);padding-bottom:calc(var(--player-height) + 20px);min-height:100vh;background:radial-gradient(ellipse at 60% 0%,#1e24251f,transparent 55%),#111315}.topbar{height:87px;display:flex;align-items:center;gap:25px;border-bottom:1px solid var(--border);padding:0 38px}.history-buttons{display:flex;align-items:center;gap:9px;white-space:nowrap}.history-buttons>span{font-size:10px;color:#667075;letter-spacing:1px}.history-buttons>.icon-button{height:25px;min-width:25px;background:#1c2022;color:#8a9596}.search-box{display:flex;align-items:center;gap:10px;background:#1c2022;border:1px solid #ffffff04;border-radius:7px;height:35px;max-width:330px;min-width:160px;flex:1;padding:0 13px;margin-left:auto;color:#697377}.search-box input{width:100%;background:none;border:0;outline:none;color:#dae0dd;font-size:10px}.search-box input:focus-visible{outline:none}.search-box:focus-within{border-color:#b8f16c44}.search-box kbd{font-size:10px;border:1px solid #343b3e;width:17px;height:18px;text-align:center;border-radius:3px;color:#606b70}.search-box>button{display:flex;padding:2px;color:#848f92}.topbar-actions{display:flex;align-items:center;gap:22px}.sync-status{display:flex;align-items:center;gap:6px;color:#818e83;font-size:10px;white-space:nowrap;padding:0}.sync-status svg{color:#83927b}.upload-top{min-height:34px;font-size:10px;padding:8px 13px}.mobile-brand{display:none}.content{padding:32px 38px 0;max-width:1500px;margin:auto}.hero{min-height:286px;position:relative;border:1px solid #ffffff07;border-radius:12px;overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse at 100% 50%,#3a514142,transparent 60%),linear-gradient(120deg,#202725,#1e2826 60%,#25352f);margin-bottom:38px}.hero-grain{position:absolute;inset:0;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none}.hero-copy{padding:33px 36px 35px;z-index:2;position:relative}.eyebrow{font-size:8px;letter-spacing:2px;font-weight:500;color:#b2c5ad;display:flex;align-items:center;gap:7px;margin-bottom:18px}.eyebrow>span{height:4px;width:4px;background:#c0de9c;border-radius:50%}.hero h1{font-size:32px;letter-spacing:1.7px;font-weight:600;line-height:1.48;margin:0 0 12px;color:#edf3e8}.hero h1>span{color:#b8d9a1}.hero-copy>p{font-size:10px;color:#8d9c92;letter-spacing:.6px;margin:0 0 26px}.hero-actions{display:flex;align-items:center;gap:17px}.hero-actions>.button{font-size:10px;min-height:35px;padding:9px 14px}.hero-note{display:flex;align-items:center;gap:6px;color:#83958a;font-size:9px;letter-spacing:.5px}.record-scene{position:absolute;right:30px;top:20px;width:370px;height:265px;pointer-events:none}.record-shadow{position:absolute;background:#0008;filter:blur(22px);height:35px;width:285px;left:50px;bottom:16px;border-radius:50%;transform:rotate(-9deg)}.record-sleeve{position:absolute;z-index:2;width:202px;height:221px;left:24px;top:6px;transform:rotate(-10deg);background:#d4d8b4;border-radius:2px;box-shadow:10px 13px 25px #0005;border:1px solid #eef0d040;overflow:hidden}.sleeve-top{display:flex;justify-content:space-between;font-size:7px;font-weight:600;letter-spacing:1.3px;color:#374638;padding:16px 16px 11px}.sleeve-top span{font-size:5px;letter-spacing:.5px}.sleeve-art{height:134px;position:relative;background:#8da180;margin:0 15px;overflow:hidden}.art-sun{position:absolute;width:55px;height:55px;border-radius:50%;background:#d5d8aa;top:16px;left:55px}.art-wave{position:absolute;width:280px;height:110px;border-radius:45% 50% 0 0;transform:rotate(-19deg);left:-40px;top:72px;background:#657e67}.art-wave.two{top:93px;background:#3a5c50;left:-16px;transform:rotate(15deg)}.art-wave.three{top:115px;background:#294a41;left:-50px;transform:rotate(-8deg)}.sleeve-bottom{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;color:#364e40}.sleeve-bottom>span{font-size:22px;font-weight:500;letter-spacing:5px}.sleeve-bottom small{font-size:5px;line-height:1.8;letter-spacing:.8px}.vinyl{position:absolute;z-index:1;left:151px;top:5px;width:222px;height:222px;border-radius:50%;background:repeating-radial-gradient(circle,#171d1b 0px 2px,#29312d 3px,#151a18 4px);box-shadow:9px 10px 18px #0004;border:2px solid #4b5b4960;display:grid;place-items:center}.vinyl:after{content:"";inset:0;position:absolute;border-radius:50%;background:conic-gradient(from 10deg,transparent,#ffffff12 8%,transparent 20%,transparent 45%,#ffffff0c 55%,transparent 66%)}.vinyl-label{width:81px;height:81px;border-radius:50%;background:#a7bc86;color:#354631;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;box-shadow:0 0 0 4px #0006}.vinyl-label small{font-size:5px;letter-spacing:2px}.vinyl-label i{width:7px;height:7px;background:#1e2721;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.vinyl-label svg{margin-top:0;opacity:.5}.record-caption{position:absolute;left:96px;bottom:7px;font-size:6px;letter-spacing:1.7px;color:#819888;transform:rotate(-3deg)}.tiny-star{font-size:15px;vertical-align:middle;margin-right:9px;color:#b2c391}.hero:after{content:"✦";position:absolute;right:40px;top:23px;font-size:20px;color:#b3cda380}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px;gap:10px}.section-kicker{font-size:8px;letter-spacing:1.6px;color:#626d70;margin-bottom:8px;font-weight:500}.section-heading h2{margin:0;font-size:21px;font-weight:600;letter-spacing:.7px;display:flex;align-items:baseline;gap:14px}.section-heading h2>span{font-size:9px;color:#727d80;font-weight:400;letter-spacing:0}.section-controls{display:flex;align-items:center;gap:10px}.sort-control{display:flex;align-items:center;position:relative;gap:6px;color:#717c80;font-size:10px;margin-left:5px}.sort-control select{appearance:none;border:0;background:transparent;color:#909b9e;padding:6px 19px 6px 0;font-size:10px;cursor:pointer}.sort-control>svg:last-child{position:absolute;right:0;pointer-events:none}.sort-control option{background:#202529}.track-table-wrap{overflow:visible}.track-table{width:100%;border-collapse:collapse;table-layout:fixed}.track-table thead{height:35px;border-bottom:1px solid #ffffff08}.track-table th{text-align:left;font-size:9px;color:#606d72;font-weight:400;padding-bottom:12px}.track-table th.actions-cell>svg{margin-left:auto;display:block;margin-right:8px}.track-table td{height:72px;font-size:10px;color:#7b868b;padding:8px 0;border-bottom:1px solid #ffffff04}.track-table tbody tr:hover{background:#ffffff025}.track-table .number-cell{width:39px}.track-table .album-cell{width:23%;padding-right:15px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.track-table .duration-cell{width:60px;font-variant-numeric:tabular-nums;font-size:9px}.track-table .actions-cell{width:106px;text-align:right}.row-play{display:flex;align-items:center;justify-content:flex-start;color:#566267;width:26px;height:35px;font-size:10px}.row-play>svg{display:none}.track-table tr:hover .row-play>span:not(.equalizer){display:none}.track-table tr:hover .row-play>svg{display:block;color:#d5e2ca}.track-table .is-current .track-title strong,.is-current .row-play{color:var(--accent)}.track-info{display:flex;gap:13px;align-items:center;min-width:0;padding-right:12px}.cover-button{padding:0;border-radius:5px;flex-shrink:0}.cover{height:43px;width:43px;border-radius:5px;overflow:hidden;background:linear-gradient(135deg,#3b554a,#1f3337);position:relative;display:grid;place-items:center;color:#becab991;isolation:isolate;flex-shrink:0}.cover>img{height:100%;width:100%;object-fit:cover;position:relative;z-index:2}.cover>svg{z-index:1}.cover-orbit{position:absolute;width:80%;height:80%;border:1px solid #d1dec21c;border-radius:50%;top:-15%;right:-17%}.cover-spark{position:absolute;bottom:0;left:0;width:100%;height:40%;background:#b1d29308;transform:skewY(-22deg)}.cover-1{background:linear-gradient(145deg,#a37d5b,#4d3b39);color:#ecd4bda0}.cover-2{background:linear-gradient(135deg,#474469,#283b4f);color:#b8c0e39e}.cover-3{background:linear-gradient(135deg,#70765c,#384237);color:#d4dac4a8}.cover-4{background:linear-gradient(135deg,#6e4b5b,#363442);color:#e2b6c5a3}.track-title{text-align:left;min-width:0;padding:0;flex:1}.track-title strong{font-size:11px;font-weight:500;color:#d7dddc;display:flex;align-items:center;gap:8px;line-height:1.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-title small{display:block;font-size:9px;margin-top:3px;color:#748084;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cached-mark{color:#96bd79;flex-shrink:0}.track-actions{display:flex;align-items:center;justify-content:flex-end;gap:2px}.track-actions .icon-button{height:28px;min-width:28px;padding:6px;color:#58696c}.track-actions .favorite-button{opacity:0}.track-table tr:hover .favorite-button,.favorite-button.is-liked{opacity:1}.track-menu{position:relative;display:block}.track-menu summary{list-style:none}.track-menu summary::-webkit-details-marker{display:none}.menu-panel{position:absolute;right:0;top:30px;z-index:35;background:#24292c;border:1px solid #ffffff10;border-radius:8px;box-shadow:0 12px 40px #0007;padding:5px;width:175px}.menu-panel button{display:flex;align-items:center;gap:8px;font-size:10px;color:#aab4b6;padding:10px;border-radius:5px;width:100%;text-align:left}.menu-panel button:hover{background:#ffffff07;color:#fff}.equalizer{display:flex;align-items:center;gap:2px;height:17px}.equalizer i{height:10px;width:2px;background:var(--accent);animation:equalizer .9s ease-in-out infinite alternate}.equalizer i:nth-child(2){animation-delay:.3s;height:15px}.equalizer i:nth-child(3){animation-delay:.6s;height:7px}@keyframes equalizer{to{height:4px}}.empty-state{min-height:235px;border:1px dashed #ffffff09;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 16px;background:linear-gradient(180deg,#ffffff015,transparent)}.empty-icon{height:58px;width:58px;border-radius:15px;background:#b8f16c05;color:#8fa47e;display:grid;place-items:center;margin-bottom:12px;border:1px solid #b8f16c0a}.empty-state h3{font-size:14px;letter-spacing:.7px;font-weight:500;margin:8px 0;color:#bec8c4}.empty-state>p{color:#637276;font-size:10px;line-height:1.8;margin:2px 0 18px}.empty-state>.button{font-size:10px;min-height:33px;padding:8px 12px}.library-footer{display:flex;justify-content:space-between;align-items:center;color:#4f5d61;font-size:8px;margin-top:25px;letter-spacing:.5px}.library-footer>span{display:flex;align-items:center;gap:6px}.footer-star{font-size:13px;color:#71806a;margin-left:3px}.player-bar{position:fixed;bottom:0;left:0;right:0;height:var(--player-height);background:#191d1ff5;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:45;border-top:1px solid #ffffff09;display:flex;align-items:center;justify-content:space-between;padding:0 27px;gap:22px;box-shadow:0 -8px 30px #0001}.now-playing{display:flex;align-items:center;gap:12px;width:28%;min-width:170px;max-width:310px}.now-cover{padding:0;position:relative;flex-shrink:0}.now-cover>.cover{width:47px;height:47px;background:#242b2b}.now-cover>svg{position:absolute;bottom:4px;right:4px;color:#fff;opacity:0;z-index:3}.now-cover:hover>svg{opacity:1}.now-playing>div{min-width:0;flex:1}.now-playing strong{font-size:10px;color:#c4cdca;font-weight:500;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.now-playing small{font-size:9px;color:#647176;display:block;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-center{width:43%;max-width:550px;min-width:200px}.player-buttons{display:flex;align-items:center;justify-content:center;gap:19px;margin-bottom:12px}.player-buttons .icon-button{height:25px;min-width:25px;padding:2px;color:#b2bcbb}.player-buttons .secondary-control{color:#627276}.main-play{height:34px;width:34px;display:grid;place-items:center;border-radius:50%;background:#dce8d2;color:#202a20;padding:0;flex-shrink:0}.main-play>svg{margin-left:1px}.main-play:hover{transform:scale(1.06);color:#19240e;background:var(--accent)}.player-progress{display:flex;align-items:center;gap:10px;color:#616f73;font-size:8px;font-variant-numeric:tabular-nums}.player-progress input{width:100%}.player-progress>span{min-width:23px}.player-extra{display:flex;align-items:center;justify-content:flex-end;gap:12px;color:#6d7a7e;width:25%;max-width:270px}.player-extra>input{width:68px;background:linear-gradient(to right,#9caaa3 0%,#9caaa3 var(--progress),#343e40 var(--progress),#343e40 100%);height:2px}.player-extra>.icon-button{margin-right:9px}.quality-badge{font-size:6px;letter-spacing:1px;color:#8e9b8b;border:1px solid #89978040;padding:3px 5px;border-radius:3px;margin-left:9px}.mobile-nav{display:none}.toast{position:fixed;z-index:110;bottom:calc(var(--player-height) + 20px);left:calc(50% + var(--sidebar-width)/2);transform:translate(-50%);max-width:min(600px,80vw);display:flex;align-items:center;gap:11px;background:#2b342d;color:#d2e1c6;border:1px solid #b8f16c28;border-radius:9px;padding:12px 14px;box-shadow:0 10px 30px #0006;font-size:11px;line-height:1.7}.toast>svg{color:var(--accent);flex-shrink:0}.toast>.icon-button{height:24px;min-width:24px;color:#c1cebc}.banner{display:flex;align-items:center;gap:10px;margin:18px 38px -12px;font-size:10px;color:#9eaf91;background:#b8f16c06;border:1px solid #b8f16c12;border-radius:6px;padding:10px 13px;line-height:1.7}.banner>svg{flex-shrink:0}.banner>span{flex:1}.banner a,.banner>button:not(.icon-button){display:flex;gap:5px;align-items:center;color:var(--accent);font-size:10px}.offline-banner{color:#c0ac8a;background:#bba06b07;border-color:#bba06b15}.modal-backdrop{position:fixed;inset:0;z-index:90;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:22px}.modal{width:430px;max-width:100%;max-height:85dvh;background:#1b2022;border:1px solid #ffffff0e;box-shadow:0 25px 90px #0008;border-radius:14px;padding:24px;overflow-y:auto}.modal-wide{width:620px}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:10px}.modal-heading h2{font-size:17px;font-weight:500;margin:0;letter-spacing:.6px}.modal-description{font-size:11px;line-height:1.9;color:#89999b;margin:6px 0 22px}.dropzone{width:100%;border:1px dashed #a1b48b40;border-radius:9px;background:#b8f16c03;padding:33px 16px;display:flex;flex-direction:column;align-items:center;gap:11px;margin:17px 0}.dropzone:hover,.dropzone.dragover{background:#b8f16c08;border-color:#b8f16c90}.dropzone>span{height:54px;width:54px;display:grid;place-items:center;background:#b8f16c0a;color:#aac793;border-radius:13px;margin-bottom:5px}.dropzone>strong{font-size:13px;font-weight:500;color:#c1cfbc}.dropzone>small{font-size:9px;color:#677c75;line-height:1.8}.upload-note{display:flex;align-items:center;justify-content:center;gap:6px;color:#62776d;font-size:9px;margin-top:18px;line-height:1.8}.upload-jobs{max-height:270px;overflow-y:auto}.upload-job,.download-task{display:flex;gap:13px;padding:16px 0;align-items:center;border-bottom:1px solid var(--border)}.upload-job>div,.download-task>div{flex:1;min-width:0}.upload-job strong,.download-task strong{font-size:11px;font-weight:500;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.upload-job small,.download-task small{font-size:10px;color:#748986;display:block;margin-top:6px;line-height:1.7;overflow-wrap:anywhere}.job-icon{color:#6c837c;width:26px;text-align:center;flex-shrink:0}.job-icon.complete{color:var(--accent)}.meter{height:3px;background:#2b3734;border-radius:9px;overflow:hidden}.meter>i{display:block;height:100%;background:#a8cb80;border-radius:9px;transition:width .2s}.upload-job .meter,.download-task .meter{margin-top:10px}.form-field{font-size:11px;color:#9fadaa;display:block;margin:20px 0}.form-field input{display:block;width:100%;height:42px;border:1px solid #ffffff12;border-radius:7px;background:#13191b;color:#e0e7df;font-size:12px;padding:0 12px;margin-top:9px}.form-error{font-size:11px;color:#edada4;line-height:1.9;background:#e58c8c07;border-radius:6px;padding:10px 12px;border:1px solid #e58c8c1c}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:25px}.playlist-picker{margin-bottom:20px;max-height:330px;overflow-y:auto}.playlist-picker>button{display:flex;align-items:center;width:100%;gap:12px;border-radius:6px;padding:12px 8px;color:#bbc8c2;text-align:left;font-size:12px}.playlist-picker>button:hover{background:#ffffff05}.playlist-picker>button>span:nth-child(2){flex:1}.playlist-picker small{display:block;color:#697e78;font-size:10px;margin-top:4px}.download-overview{background:linear-gradient(110deg,#202b25,#1b2322);border:1px solid #b8f16c0b;border-radius:9px;padding:20px 23px;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px}.download-overview>div{display:flex;gap:15px;align-items:center}.download-icon{height:48px;width:48px;border-radius:10px;background:#b8f16c0a;display:grid;place-items:center;color:#b0d18d}.download-overview strong{font-size:20px;font-weight:500}.download-overview strong>small{font-size:11px;color:#708675;font-weight:400}.download-overview p{font-size:10px;color:#7d9283;margin:7px 0 0}.download-tasks{margin:0 0 25px;background:#171e1d;padding:0 20px;border-radius:9px}.download-task>span{color:#a2c78a}.settings-page{max-width:850px;padding-top:7px}.settings-page>h1{font-size:27px;font-weight:500;letter-spacing:1px;margin:12px 0}.settings-page>.muted{font-size:11px;margin:0 0 29px}.settings-panel{border:1px solid var(--border);border-radius:10px;padding:23px 25px;margin-bottom:20px;background:#181d1e}.settings-panel h3{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:500;color:#c4d2c4;margin:0 0 7px}.settings-panel h3>svg{color:#8ca881}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--border)}.setting-row:last-child{border-bottom:0;padding-bottom:3px}.setting-row strong{font-size:11px;font-weight:500;color:#c3ceca}.setting-row p{font-size:10px;line-height:1.9;color:#71847f;margin:6px 0 0}.switch{width:36px;height:20px;background:#3b4541;border-radius:99px;padding:3px;flex-shrink:0}.switch span{display:block;width:14px;height:14px;border-radius:50%;background:#8e9c92;transition:transform .2s}.switch.on{background:#6d8d47}.switch.on span{background:#c6ed9c;transform:translate(16px)}.setting-row>select{background:#242f28;border:1px solid #ffffff10;color:#c2d3b6;border-radius:5px;padding:7px 12px;font-size:11px}.setting-row .button{font-size:10px;padding:8px 11px;min-height:33px;flex-shrink:0}.storage-meter{padding:20px 0 0}.storage-meter>div:first-child{display:flex;justify-content:space-between;color:#8ca482;font-size:10px;margin-bottom:10px}.storage-meter>.meter{height:5px}.storage-meter>small{font-size:9px;color:#61776c;display:block;margin-top:9px}.settings-buttons{display:flex;gap:12px;margin-top:21px}.settings-buttons>.button{font-size:10px}.full-player{position:fixed;inset:0;z-index:85;background:radial-gradient(ellipse at 50% 30%,#34483c,#192320,#111a19);display:flex;flex-direction:column;align-items:center;padding:30px 30px max(30px,var(--safe-area-bottom));overflow-y:auto}.full-player-top{display:flex;align-items:center;justify-content:space-between;width:min(430px,100%);font-size:11px;color:#9cae9f;margin-bottom:35px}.cover-large{height:min(40vh,330px);width:min(40vh,330px);max-width:85vw;border-radius:13px;box-shadow:0 20px 65px #0006}.full-player-title{display:flex;align-items:center;justify-content:space-between;width:min(380px,100%);margin:37px 0 27px;gap:12px}.full-player-title h2{font-size:24px;font-weight:500;margin:0;line-height:1.5}.full-player-title p{font-size:13px;color:#90a497;margin:9px 0 0}.full-progress{width:min(380px,100%)}.full-progress>input{width:100%;height:4px}.full-progress>div{display:flex;justify-content:space-between;color:#8ba193;font-size:10px;margin-top:10px}.full-controls{display:flex;align-items:center;justify-content:space-between;width:min(380px,100%);margin-top:25px}.full-controls .main-play{height:64px;width:64px;background:var(--accent)}.full-controls .icon-button{height:40px;min-width:40px;color:#a7b9ab}.full-player-foot{display:flex;align-items:center;gap:7px;margin:33px 0 0;color:#627e6c;font-size:10px;letter-spacing:1px}@media(min-width:1500px){.content{padding-top:42px}.hero{min-height:330px}.hero-copy{padding-left:45px}.hero h1{font-size:38px}.record-scene{right:90px;top:40px;transform:scale(1.12)}.topbar{padding:0 48px}.content{padding-left:48px;padding-right:48px}.hero{margin-bottom:46px}.track-table td{height:76px}}@media(max-width:1180px){:root{--sidebar-width:205px}.sidebar{padding-left:14px;padding-right:14px}.main-nav button.active:before{left:-14px}.topbar{gap:14px;padding:0 26px}.topbar-actions{gap:15px}.history-buttons>span{display:none}.content{padding:28px 26px 0}.hero-copy{padding-left:28px}.hero h1{font-size:29px}.record-scene{transform:scale(.87);transform-origin:right center;right:12px}.hero-note{display:none}.banner{margin-left:26px;margin-right:26px}.hero{min-height:270px}.hero-actions .button{font-size:10px}.track-table .album-cell{width:20%}.quality-badge{display:none}.player-extra{gap:8px}.player-buttons{gap:14px}}@media(max-width:960px){:root{--sidebar-width:186px}.sidebar{padding-top:25px;padding-left:10px;padding-right:10px}.brand{margin-left:10px;margin-bottom:36px}.brand>span:last-child{font-size:21px}.nav-label{font-size:9px;margin-left:12px}.main-nav button{font-size:11px;gap:10px;padding-left:12px}.main-nav button.active:before{left:-10px}.offline-card{padding:14px 11px}.playlist-nav>button{padding-left:10px;gap:8px}.playlist-nav small{font-size:8px}.playlist-nav .create-playlist{font-size:9px}.topbar{padding:0 22px;height:76px;gap:10px}.search-box{max-width:270px}.topbar-actions{gap:12px}.sync-status span{display:none}.content{padding:25px 22px 0}.hero-copy{padding-left:24px}.hero h1{font-size:26px}.hero-copy>p{font-size:9px}.hero .eyebrow{font-size:7px;letter-spacing:1.3px}.record-scene{transform:scale(.72);right:-8px}.hero{min-height:256px}.section-heading h2{font-size:19px}.section-controls{gap:5px}.section-controls>.compact{font-size:10px}.sort-control{font-size:9px}.sort-control>svg:first-child{display:none}.track-table .album-cell{display:none}.track-table .duration-cell{width:47px}.track-info{gap:10px}.track-actions .favorite-button{opacity:1}.player-bar{padding:0 18px;gap:15px}.now-playing{min-width:155px;width:27%}.now-playing .icon-button{display:none}.player-extra{width:20%}.player-extra>.icon-button{margin-right:0}.player-extra input{width:45px}.now-playing strong{font-size:9px}.now-playing small{font-size:8px}.now-cover>.cover{height:40px;width:40px}.banner{margin-left:22px;margin-right:22px}.download-overview{padding:18px}.section-kicker,.library-footer{font-size:7px}}@media(max-width:760px){:root{--sidebar-width:0px;--player-height:76px}.sidebar{display:none}.main{margin:0;padding-bottom:calc(165px + var(--safe-area-bottom))}.topbar{height:auto;min-height:72px;padding:18px 20px 13px;flex-wrap:wrap;border-bottom:0;gap:14px}.mobile-brand{display:flex;align-items:center;gap:7px;font-size:19px;font-weight:600;letter-spacing:3px;flex:1}.mobile-brand svg{color:var(--accent)}.history-buttons{display:none}.topbar-actions{order:1;gap:13px;margin-left:auto}.sync-status svg{height:15px;width:15px}.upload-top{font-size:10px;min-height:31px;padding:7px 10px}.search-box{order:2;max-width:100%;min-width:100%;height:38px;margin-top:1px;padding:0 12px;background:#1b2022}.search-box input{font-size:11px}.search-box kbd{display:none}.content{padding:9px 20px 0}.hero{min-height:256px;margin-bottom:30px;border-radius:10px;align-items:flex-start}.hero-copy{padding:26px 23px;z-index:3}.hero h1{font-size:25px;letter-spacing:.7px;line-height:1.6;margin-bottom:11px}.hero-copy>p{font-size:9px;letter-spacing:0;max-width:195px;line-height:1.8;margin-bottom:21px}.eyebrow{font-size:6px!important;letter-spacing:1px!important;margin-bottom:14px;gap:5px}.hero .eyebrow>span{height:3px;width:3px}.hero-actions>.button{font-size:9px;min-height:32px;padding:8px 11px}.record-scene{transform:scale(.52) rotate(5deg);transform-origin:100% 100%;top:auto;bottom:12px;right:-9px;opacity:.85}.record-caption{display:none}.hero:after{right:16px;top:19px;font-size:13px}.record-sleeve{left:36px}.vinyl{left:155px}.hero-grain{z-index:2}.section-heading{margin-bottom:18px;align-items:center;gap:8px}.section-heading h2{font-size:18px;gap:9px}.section-heading h2>span{font-size:8px;white-space:nowrap}.section-kicker{font-size:6px;letter-spacing:1.2px;margin-bottom:7px}.section-controls .compact{padding:6px 9px;font-size:9px;min-height:30px;gap:5px}.sort-control{display:none}.section-controls>.icon-button{min-width:27px;height:29px;padding:5px}.track-table thead{height:30px}.track-table th{font-size:8px;padding-bottom:9px}.track-table .number-cell{width:22px}.row-play{font-size:8px;width:19px}.row-play>span{display:block!important}.row-play>svg{display:none!important}.row-play .equalizer{gap:1px}.equalizer i{width:2px}.track-table td{height:72px}.track-info{gap:9px;padding-right:5px}.track-title strong{font-size:11px;gap:5px}.track-title small{font-size:9px;margin-top:4px}.cover{height:42px;width:42px}.track-table .duration-cell{display:none}.track-table .actions-cell{width:83px}.track-actions{gap:0}.track-actions .icon-button{height:27px;min-width:27px;padding:5px}.track-actions svg{width:15px;height:15px}.cached-mark{height:10px;width:10px}.menu-panel{width:175px}.menu-panel button{font-size:11px;padding:11px 8px}.track-title strong{max-width:100%;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cached-mark{display:inline;margin-left:5px}.track-table tr:hover{background:none}.empty-state{min-height:235px;padding:28px 15px}.empty-state h3{font-size:12px;letter-spacing:.2px}.empty-state p{font-size:10px;max-width:260px}.empty-icon{height:50px;width:50px;border-radius:13px}.empty-icon>svg{height:25px;width:25px}.empty-state>.button{font-size:10px}.library-footer{margin-top:21px;font-size:7px;gap:8px}.library-footer>span:first-child{font-size:7px}.library-footer>span:last-child{font-size:7px;letter-spacing:0}.library-footer>span svg{width:11px;height:11px}.footer-star{display:none}.player-bar{bottom:calc(60px + var(--safe-area-bottom));height:65px;left:10px;right:10px;border:1px solid #ffffff0a;background:#222c28f5;box-shadow:0 4px 20px #0004;border-radius:9px;padding:0 12px;gap:9px;z-index:50}.now-playing{max-width:none;width:auto;min-width:0;flex:1;gap:10px}.now-cover>.cover{height:39px;width:39px}.now-cover>svg{display:none}.now-playing strong{font-size:11px}.now-playing small{font-size:9px;color:#829387;margin-top:5px}.player-extra{display:none}.player-center{width:auto;min-width:0;display:flex;align-items:center}.player-buttons{margin-bottom:0;gap:11px}.player-buttons>.icon-button{display:none}.player-buttons>.icon-button[aria-label=下一首]{display:flex;color:#b6c6b7}.player-buttons .main-play{height:30px;width:30px;background:none;color:#d7e3cc}.player-buttons .main-play>svg{height:24px;width:24px}.player-progress{position:absolute;bottom:0;left:0;right:0;gap:0;height:3px;overflow:hidden;border-radius:0 0 9px 9px}.player-progress>span{display:none}.player-progress>input{height:2px;background:linear-gradient(to right,#b8f16c 0%,#b8f16c var(--progress),#ffffff05 var(--progress),#ffffff05 100%)}.player-progress input::-webkit-slider-thumb{display:none}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:49;height:calc(59px + var(--safe-area-bottom));padding-bottom:var(--safe-area-bottom);align-items:center;justify-content:space-around;background:#121817fa;border-top:1px solid #ffffff06;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:25%;color:#758780;font-size:8px;height:100%}.mobile-nav button svg{width:19px;height:19px}.mobile-nav button.active{color:var(--accent)}.toast{left:50%;bottom:calc(140px + var(--safe-area-bottom));max-width:calc(100vw - 30px);width:max-content;font-size:11px;padding:11px 12px}.banner{margin:0 20px 14px;padding:10px;font-size:9px;gap:7px}.banner a{font-size:9px;white-space:nowrap}.banner>svg{height:14px;width:14px}.modal-backdrop{padding:14px}.modal{padding:21px;max-height:85dvh;border-radius:13px}.modal-heading h2{font-size:16px}.modal-description{font-size:11px}.dropzone{padding:28px 10px}.dropzone>strong{font-size:12px}.dropzone>small{font-size:8px;text-align:center}.upload-note{font-size:8px;align-items:flex-start}.upload-job strong{font-size:10px}.upload-job small{font-size:9px}.upload-job{gap:8px}.settings-page{padding-top:16px}.settings-page>h1{font-size:25px}.settings-panel{padding:20px 17px}.setting-row{gap:12px;padding:19px 0}.setting-row p{font-size:10px}.setting-row .button{font-size:9px;padding:7px 9px;min-height:30px}.setting-row select{font-size:10px;padding:6px;max-width:90px}.settings-panel h3{font-size:12px}.settings-buttons{gap:8px}.settings-buttons .button{font-size:9px;padding:8px 10px}.download-overview{padding:17px 13px;gap:8px}.download-overview>div{gap:11px}.download-icon{height:39px;width:39px}.download-overview strong{font-size:18px}.download-overview p{font-size:8px;line-height:1.6;max-width:170px}.download-overview>.text-button{font-size:9px;white-space:nowrap}.download-overview strong>small{font-size:9px}.download-tasks{padding:0 12px}.download-task{gap:9px}.download-task strong{font-size:10px}.download-task small{font-size:9px}.full-player{padding-top:20px}.full-player-top{margin-bottom:32px}.full-player-title{margin-top:34px}.full-player-title h2{font-size:22px}.full-player-title p{font-size:12px}.full-controls{margin-top:24px}.full-player-foot{margin-top:28px;font-size:9px}}@media(max-width:380px){.topbar,.content{padding-left:16px;padding-right:16px}.hero-copy{padding-left:18px}.hero h1{font-size:23px}.hero-copy>p{max-width:168px}.record-scene{transform:scale(.46) rotate(5deg);right:-24px;bottom:9px}.hero-actions>.button{font-size:8px;padding:7px 9px}.track-table .actions-cell{width:74px}.track-actions .icon-button{height:25px;min-width:24px;padding:4px}.track-info{gap:8px}.cover{width:36px;height:36px}.track-title strong{font-size:10px}.track-title small{font-size:8px}.library-footer>span:last-child{display:none}.section-heading h2{font-size:17px}.section-heading h2>span{font-size:7px}.section-controls .compact{padding:6px 8px}.banner{margin-left:16px;margin-right:16px}}.show-playlists .library-section,.show-playlists .library-footer{display:none}.mobile-playlists-page{padding-top:10px}.playlist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px}.playlist-grid>button{text-align:left;padding:0;min-width:0}.playlist-grid .cover-large{width:100%;height:auto;aspect-ratio:1;box-shadow:none;border-radius:9px;max-width:none}.playlist-grid>button>strong{display:block;font-size:13px;font-weight:500;margin-top:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-grid>button>small{display:block;font-size:10px;color:#788b80;margin-top:6px}.playlist-grid>.empty-state{grid-column:1/-1}.mobile-nav>button{flex:1;min-width:0}.full-player .cover-large{flex-shrink:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.track-table .virtual-spacer td{padding:0;border:0;font-size:0;line-height:0}.track-table .virtual-spacer:hover{background:none}.track-menu-portal{position:fixed;right:auto;z-index:80;width:190px;max-height:calc(100dvh - 16px);overflow-y:auto}.cache-checking{font-size:11px;color:#9baa9a;padding:8px 0}:root{--app-background: #111315;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--status-bar-space: var(--safe-area-top);--toolbar-padding-x: 38px;--toolbar-height: 87px;--sidebar-padding-top: 30px;--sidebar-padding-x: 18px;--player-padding-x: 27px;--modal-margin: 22px;--full-player-padding-top: 30px}body{background:var(--app-background)}.pwa-status-bar{display:none}@media(display-mode:standalone){:root{--status-bar-space: max(6px, var(--safe-area-top))}.pwa-status-bar{display:block;position:fixed;inset:0 0 auto;height:var(--status-bar-space);background:var(--app-background);pointer-events:none;z-index:100}}.topbar{position:sticky;top:0;z-index:60;height:calc(var(--toolbar-height) + var(--status-bar-space));padding-top:var(--status-bar-space);padding-right:max(var(--toolbar-padding-x),var(--safe-area-right));padding-left:max(var(--toolbar-padding-x),calc(var(--safe-area-left) - var(--sidebar-width)));background:var(--app-background)}.sidebar{width:calc(var(--sidebar-width) + var(--safe-area-left));padding-top:calc(var(--sidebar-padding-top) + var(--status-bar-space));padding-left:calc(var(--sidebar-padding-x) + var(--safe-area-left))}.content{padding-left:max(var(--toolbar-padding-x),calc(var(--safe-area-left) - var(--sidebar-width)));padding-right:max(var(--toolbar-padding-x),var(--safe-area-right))}.player-bar{padding-left:max(var(--player-padding-x),var(--safe-area-left));padding-right:max(var(--player-padding-x),var(--safe-area-right))}.mobile-nav{padding-left:var(--safe-area-left);padding-right:var(--safe-area-right)}.full-player{padding-top:calc(var(--full-player-padding-top) + var(--status-bar-space));padding-right:max(30px,var(--safe-area-right));padding-bottom:max(30px,var(--safe-area-bottom));padding-left:max(30px,var(--safe-area-left))}.full-player-top,.full-player-title,.full-progress,.full-controls,.full-player-foot{flex-shrink:0}.modal-backdrop{padding-top:calc(var(--modal-margin) + var(--status-bar-space));padding-right:max(var(--modal-margin),var(--safe-area-right));padding-bottom:calc(var(--modal-margin) + var(--safe-area-bottom));padding-left:max(var(--modal-margin),var(--safe-area-left))}.modal{max-height:min(85dvh,calc(100dvh - var(--status-bar-space) - var(--safe-area-bottom) - 2 * var(--modal-margin)))}.track-menu-portal{--menu-width: min(190px, calc(100vw - var(--safe-area-left) - var(--safe-area-right) - 16px));width:var(--menu-width);max-height:calc(100dvh - var(--status-bar-space) - var(--safe-area-bottom) - 16px);top:clamp(calc(var(--status-bar-space) + 8px),var(--menu-top, 8px),calc(100dvh - var(--safe-area-bottom) - var(--menu-height, 300px) - 8px));left:clamp(calc(var(--safe-area-left) + 8px),var(--menu-left, 8px),calc(100vw - var(--safe-area-right) - var(--menu-width) - 8px))}@media(min-width:1500px){:root{--toolbar-padding-x: 48px}}@media(min-width:761px){.main{margin-left:calc(var(--sidebar-width) + var(--safe-area-left))}}@media(max-width:1180px){:root{--toolbar-padding-x: 26px;--sidebar-padding-x: 14px}}@media(max-width:960px){:root{--toolbar-padding-x: 22px;--toolbar-height: 76px;--sidebar-padding-top: 25px;--sidebar-padding-x: 10px}}@media(max-width:760px){:root{--toolbar-padding-x: 20px;--modal-margin: 14px;--full-player-padding-top: 20px;--player-padding-x: 12px}.topbar{height:auto;min-height:calc(72px + var(--status-bar-space));padding-top:calc(18px + var(--status-bar-space))}}@media(max-width:380px){:root{--toolbar-padding-x: 16px}}
