@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Serif+SC:wght@500;600;700&display=swap');
:root{color-scheme:dark;--bg:#111615;--panel:#1b2220;--line:#343d38;--cream:#e9eadc;--muted:#939f94;--accent:#d6ed91}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--cream);font:14px 'DM Sans','Microsoft Yahei',sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.shell{min-height:100vh;display:grid;grid-template-columns:210px 1fr}.sidebar{padding:30px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;background:#141a18}.brand{display:flex;align-items:center;gap:10px;color:var(--cream);text-decoration:none;font-family:'Noto Serif SC',serif;font-size:22px;letter-spacing:3px;font-weight:bold}.brand-icon{font-family:sans-serif;font-size:31px;color:var(--accent)}.brand small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:2.8px;margin-top:2px;color:#aab8a7}.nav-label,.overline{font-size:10px;letter-spacing:1.8px;color:#87968a;font-weight:700}.nav-label{margin:72px 12px 18px}.nav{background:none;border:0;color:#9ca99c;padding:14px 12px;text-align:left;display:flex;gap:12px;width:100%;border-radius:7px}.nav span:first-child{flex:1}.nav.active{color:var(--accent);background:#29342b}.side-foot{margin-top:auto;border-top:1px solid var(--line);padding:22px 12px;color:#798a7b;line-height:1.8}.side-foot span{font-size:26px;color:var(--accent)}main{min-width:0;padding:0 5.2%}header{height:83px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:18px}.search-wrap{display:flex;align-items:center;gap:12px;color:#92a493;font-size:24px;flex:1}.search-wrap input{width:min(400px,100%);border:0;background:none;color:#eff4e7;outline:none;font-size:13px}.search-wrap input::placeholder{color:#738177}.add-btn,.submit{background:var(--accent);border:0;color:#1b291b;border-radius:5px;font-weight:700;padding:12px 18px}.mobile-brand{display:none}.intro{min-height:210px;display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:10px;letter-spacing:2px;color:#aabb9d;font-weight:700}.eyebrow span{display:inline-block;width:22px;height:1px;background:var(--accent);vertical-align:middle;margin-right:9px}h1,h2,h3,p{margin:0}h1,h2{font-family:'Noto Serif SC',serif}h1{font-size:clamp(29px,3.3vw,46px);font-weight:600;letter-spacing:3px;margin:17px 0 10px}.intro p{color:#a1aea0}.intro-mark{font-size:12px;line-height:1.4;color:#758675;letter-spacing:3px;text-align:right;font-weight:700}.intro-mark i{font-family:serif;font-size:18px;font-weight:400;letter-spacing:0}.intro-mark span{font-size:34px;color:#a7be90;margin-left:12px}.content{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:5%;border-top:1px solid var(--line);padding-top:27px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:0 0 22px}.section-heading h2{font-size:23px;margin-top:10px}.section-heading h2 span{font:12px 'DM Sans',sans-serif;color:#819084;margin-left:8px}.sort-label{color:#849187;font-size:11px}.empty{text-align:center;padding:85px 10px;color:#859286}.empty-icon{font-size:30px;border:1px solid #425247;width:67px;height:67px;line-height:65px;border-radius:50%;margin:0 auto 24px;color:#c6dbaa}.empty h3{font-family:'Noto Serif SC',serif;font-size:16px;color:#d2dacd;margin-bottom:10px}.empty p{font-size:12px}.text-button{background:none;border:0;color:var(--accent);margin-top:20px;font-size:12px}.track{display:flex;align-items:center;gap:14px;padding:12px 8px;border-bottom:1px solid #2c3530;cursor:pointer}.track:hover,.track.selected{background:#1b2420}.track-cover{width:50px;height:50px;object-fit:cover;border-radius:3px;background:linear-gradient(145deg,#697a5b,#333d38);display:grid;place-items:center;font-size:20px}.track-data{flex:1;min-width:0}.track-data strong,.track-data span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-data strong{font-weight:600;margin-bottom:6px}.track-data span{font-size:12px;color:#89998c}.track button{background:none;color:#9bab9c;border:0;font-size:19px}.player{background:linear-gradient(160deg,#29362d,#1c2521 58%,#1b211f);border:1px solid #3a493e;padding:23px 25px 20px;border-radius:7px;min-width:0}.player-top,.lyrics-head{display:flex;justify-content:space-between;gap:8px;font-size:9px;letter-spacing:1.5px;color:#b2c0b0;font-weight:700}.live-dot{color:#cde69b;font-size:8px}.disc-area{height:278px;position:relative;display:grid;place-items:center;overflow:hidden}.orbit{position:absolute;border:1px solid #526151;border-radius:50%;width:244px;height:244px;opacity:.35}.orbit-two{width:275px;height:275px;opacity:.15}.record{width:214px;height:214px;border-radius:50%;background:repeating-radial-gradient(circle,#1a201d 0px,#242b26 2px,#151b18 4px,#171e1a 5px);box-shadow:0 12px 30px #0008,0 0 0 1px #536055;display:grid;place-items:center;animation:rotate 14s linear infinite;animation-play-state:paused}.record.playing{animation-play-state:running}.record-inner{height:102px;width:102px;border-radius:50%;padding:5px;background:#a7ba93}.art{border-radius:50%;height:100%;width:100%;background:linear-gradient(140deg,#95a883,#4c5c4f);background-size:cover;background-position:center;display:grid;place-items:center;color:#ecf1dc;font-size:28px}.needle{position:absolute;width:9px;height:96px;background:linear-gradient(90deg,#8c9b8d,#c5d2c1,#77877b);z-index:2;right:54px;top:4px;transform-origin:50% 8px;transform:rotate(-32deg);border-radius:5px;transition:transform .6s}.needle:after{content:'';position:absolute;bottom:-5px;left:-4px;width:17px;height:23px;background:#c2cdbd;border-radius:3px}.needle.active{transform:rotate(-18deg)}.disc-label{position:absolute;bottom:7px;left:8px;right:8px;font-size:8px;letter-spacing:1.5px;color:#809080}.disc-label span{float:right}.playing-info{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #435044;padding-top:20px}.playing-info h2{font-size:22px;margin:8px 0}.playing-info p{font-size:12px;color:#a3b1a2}.icon-button,.controls button{border:0;background:none;color:#dce8d7}.like{font-size:27px}.like.liked{color:#d5ed91}.progress{display:flex;align-items:center;gap:10px;margin:24px 0 15px;color:#9bac9b;font-size:10px}.progress input{flex:1;min-width:0;accent-color:var(--accent);height:3px}.controls{display:flex;align-items:center;justify-content:center;gap:31px}.controls button{font-size:16px}.controls .play{width:49px;height:49px;border-radius:50%;background:var(--accent);color:#263425;font-size:16px;padding-left:5px}.lyrics-head{border-top:1px solid #435044;padding-top:20px;margin-top:23px}.lyrics-head span+span{color:#829083;letter-spacing:0;font-weight:400}.lyrics{height:132px;overflow:auto;text-align:center;margin-top:14px;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#586c58 transparent}.lyrics p,.lyric{display:block;border:0;background:none;color:#8d9c8d;width:100%;padding:8px;font-size:12px;line-height:1.5}.lyric.current{color:#d8ecb0;font-weight:700;font-size:14px}.comments{margin-top:12px}.comments form{display:flex;margin-top:14px;border-bottom:1px solid #536052}.comments input{width:100%;background:none;border:0;padding:10px 0;color:white;outline:0}.comments button{white-space:nowrap;background:none;border:0;color:var(--accent);font-size:12px}.comment{font-size:12px;color:#c9d4c6;padding:8px 0;border-bottom:1px solid #354036;overflow-wrap:anywhere}.comment small{display:block;color:#849386;margin-top:4px}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:24px 0;margin-top:48px;color:#68776b;font-size:9px;letter-spacing:1.3px}dialog{background:#202a24;color:var(--cream);border:1px solid #4b5d4d;border-radius:8px;width:min(570px,calc(100% - 30px));max-height:90vh;padding:26px}dialog::backdrop{background:#000b}.modal-head{display:flex;justify-content:space-between;align-items:start}.modal-head h2{margin-top:9px}.close{background:none;border:0;color:#d3dece;font-size:27px}.form-note{font-size:12px;line-height:1.7;color:#a5b6a2;margin:14px 0}label{display:block;margin:14px 0;font-size:12px;color:#c9d6c6}label input:not([type=file]),textarea{display:block;margin-top:7px;width:100%;background:#151c18;border:1px solid #46564a;border-radius:4px;color:white;padding:11px}input[type=file]{display:block;width:100%;margin-top:9px;font-size:11px;color:#aab9a9}.file-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.optional{font-size:10px;color:#8fa08f}.submit{width:100%;margin-top:12px}#formError{color:#ffb7a6;font-size:12px}@keyframes rotate{to{transform:rotate(360deg)}}@media(max-width:1050px){.shell{grid-template-columns:170px 1fr}.content{grid-template-columns:minmax(0,1fr) 350px;gap:22px}.sidebar{padding:26px 14px}.player{padding:20px}.disc-area{height:255px}.record{width:190px;height:190px}.orbit{width:220px;height:220px}.orbit-two{width:245px;height:245px}}@media(max-width:760px){.shell{display:block}.sidebar{display:none}main{padding:0 20px}header{height:70px}.mobile-brand{display:block;white-space:nowrap;font-family:'Noto Serif SC',serif;color:var(--accent);font-size:18px}.search-wrap{font-size:18px}.add-btn{padding:10px;font-size:12px}.intro{min-height:175px}.intro-mark{display:none}.content{display:flex;flex-direction:column-reverse;gap:32px}.player{max-width:520px;width:100%;margin:auto}.empty{padding:50px 5px}.section-heading{margin-bottom:12px}footer span{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
