:root{
  --bg:#06120f;--panel:#0b201b;--panel2:#123229;--panel3:#194438;
  --line:#214d40;--text:#f4fbf8;--muted:#90aaa2;--gold:#f6bb39;
  --gold2:#ffd978;--green:#23b38b;--red:#ff707a;--shadow:0 20px 48px #0008;
  --safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:var(--bg);color-scheme:dark;scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:
 radial-gradient(circle at 100% -10%,#174d3f88,transparent 32%),
 linear-gradient(180deg,#06120f,#081915 70%);color:var(--text);
 font-family:Tahoma,Arial,sans-serif;overscroll-behavior-y:none}
button,input{font:inherit}button{cursor:pointer}
button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.offline-bar{position:fixed;top:0;left:0;right:0;z-index:100;background:#7b3d12;color:#fff;padding:7px 12px;text-align:center;font-size:11px}
.app-shell{max-width:900px;margin:auto;padding:calc(8px + var(--safe-top)) 14px calc(170px + var(--safe-bottom))}
.topbar{display:flex;align-items:center;gap:10px;padding:8px 2px 4px}
.brand{flex:1}.brand-logo{font-size:25px;font-weight:1000;letter-spacing:-1px}.brand-logo span{color:var(--gold)}
.brand-sub{font-size:10px;color:var(--muted)}
.avatar{width:42px;height:42px;border-radius:15px;border:1px solid var(--line);background:linear-gradient(135deg,var(--gold),#a97019);color:#10251f;font-weight:1000}
.install-btn{border:1px solid #5c481d;background:#2d2512;color:var(--gold2);padding:9px 11px;border-radius:12px;font-size:11px}
.search-sticky{position:sticky;top:0;z-index:30;padding:7px 0;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(18px)}
.searchbox{display:flex;gap:7px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:5px;box-shadow:0 10px 30px #0004}
.searchbox input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);padding:12px;font-size:14px}
.searchbox button{border:0;border-radius:13px;background:var(--gold);color:#14251f;padding:0 18px;font-weight:1000}
.suggestions{position:absolute;top:64px;left:0;right:0;background:#0a1d19;border:1px solid var(--line);border-radius:16px;padding:7px;box-shadow:var(--shadow);max-height:330px;overflow:auto}
.suggest-row{display:flex;align-items:center;gap:9px;width:100%;border:0;background:transparent;color:var(--text);padding:10px;border-radius:11px;text-align:right}
.suggest-row:hover{background:var(--panel2)}.suggest-row small{display:block;color:var(--muted);margin-top:3px}
.view{min-height:58vh}
.hero{position:relative;overflow:hidden;margin-top:10px;border-radius:25px;padding:21px;background:linear-gradient(135deg,#103d32,#0d2a24 62%,#3f3118);border:1px solid #2c5a4c;box-shadow:var(--shadow)}
.hero:before{content:"♫";position:absolute;left:16px;top:-42px;font-size:160px;color:#fff1;transform:rotate(-13deg)}
.eyebrow{font-size:11px;color:#bed5ce}.hero h1{margin:6px 0;font-size:25px;line-height:1.5;max-width:84%}.hero p{margin:0;color:#a7c1ba;font-size:12px;line-height:1.8;max-width:82%}
.hero-actions{display:flex;gap:8px;margin-top:14px}.pill{border:0;border-radius:12px;padding:10px 14px;background:var(--gold);color:#14251f;font-weight:900}.pill.alt{background:#ffffff12;color:var(--text);border:1px solid #ffffff19}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.stat{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:12px;text-align:center}.stat b{display:block;color:var(--gold);font-size:19px}.stat span{font-size:10px;color:var(--muted)}
.section-head{display:flex;justify-content:space-between;align-items:end;margin:22px 2px 10px}.section-head h2{font-size:18px;margin:0}.section-head button{border:0;background:none;color:var(--gold);font-size:11px}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(255px,78%);gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.rail::-webkit-scrollbar{display:none}
.list{display:grid;gap:9px}
.track{display:flex;gap:12px;align-items:center;background:linear-gradient(145deg,var(--panel),#0e2a23);border:1px solid var(--line);border-radius:19px;padding:12px;content-visibility:auto;scroll-snap-align:start}
.cover{width:64px;height:64px;flex:0 0 auto;border-radius:17px;background:#14372f;object-fit:cover;box-shadow:inset 0 0 0 1px #ffffff12}
.cover.fallback{display:grid;place-items:center;font-size:21px;font-weight:1000;background:linear-gradient(135deg,#1f5a49,#17281f)}
.track-main{min-width:0;flex:1}.track-title{font-size:13px;font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-artist{font-size:11px;color:var(--muted);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-meta{font-size:9px;color:#708f87;margin-top:5px}
.track-actions{display:flex;gap:6px;margin-top:9px}.iconbtn{border:0;border-radius:10px;background:var(--panel2);color:var(--text);height:34px;min-width:38px;padding:0 10px}.iconbtn.play{background:var(--green);font-weight:900}.iconbtn.fav{color:#ff8b97}.iconbtn.active{background:#44272b;color:#ff9ba4}
.entity{display:flex;align-items:center;gap:11px;background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:12px}.entity-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#245e4e,#152b25);font-size:20px}.entity-main{flex:1;min-width:0}.entity-title{font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entity-sub{font-size:10px;color:var(--muted);margin-top:4px}.entity button{border:0;border-radius:10px;background:var(--panel2);color:var(--text);padding:9px}
.chips{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:999px;padding:8px 12px;white-space:nowrap;font-size:11px}.chip.active{background:var(--gold);color:#14251f;border-color:var(--gold);font-weight:900}
.empty,.error{text-align:center;padding:38px 16px;color:var(--muted);line-height:1.9}.error b{display:block;color:var(--red);margin-bottom:8px}
.loadmore,.retry{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:13px;padding:12px;margin-top:12px}
.skeleton{height:88px;border-radius:18px;background:var(--panel);border:1px solid var(--line);overflow:hidden;position:relative}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#fff1,transparent);transform:translateX(100%);animation:sh 1.2s infinite}@keyframes sh{to{transform:translateX(-100%)}}
.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:45;background:color-mix(in srgb,var(--bg) 96%,transparent);border-top:1px solid var(--line);backdrop-filter:blur(18px);display:grid;grid-template-columns:repeat(5,1fr);padding:5px max(7px,calc((100vw - 900px)/2)) calc(5px + var(--safe-bottom))}
.bottom-nav button{border:0;background:none;color:var(--muted);font-size:9px;padding:7px 0}.bottom-nav button span{display:block;font-size:21px;line-height:20px;margin-bottom:3px}.bottom-nav button.active{color:var(--gold);font-weight:900}
.mini-player{position:fixed;z-index:44;left:50%;transform:translateX(-50%);bottom:calc(63px + var(--safe-bottom));width:min(875px,calc(100% - 14px));display:flex;align-items:center;gap:5px;background:#102f27;border:1px solid #2c5b4e;border-radius:18px;padding:8px;box-shadow:0 18px 42px #0009}
.mini-main{display:flex;align-items:center;gap:9px;min-width:0;flex:1;border:0;background:none;color:var(--text);text-align:right}.mini-art{width:46px;height:46px;border-radius:12px;object-fit:cover;background:#1c453a}.mini-text{min-width:0;flex:1}.mini-text b,.mini-text small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-text b{font-size:12px}.mini-text small{font-size:9px;color:var(--muted);margin-top:3px}.mini-control{width:38px;height:38px;border:0;border-radius:50%;background:#193e34;color:#fff}.mini-control.primary{background:var(--gold);color:#13251f}
.sheet{position:fixed;inset:0;z-index:70;background:#000a;backdrop-filter:blur(9px)}.sheet-card{position:absolute;bottom:0;left:0;right:0;max-width:900px;max-height:92vh;overflow:auto;margin:auto;background:linear-gradient(180deg,#12362d,#071512);border:1px solid #2b594d;border-radius:27px 27px 0 0;padding:18px 20px calc(24px + var(--safe-bottom));box-shadow:0 -20px 60px #000b}.grab{width:44px;height:4px;border-radius:99px;background:#58736c;margin:0 auto 12px}.sheet-close{position:absolute;left:18px;top:14px;border:0;border-radius:50%;width:36px;height:36px;background:#1a4237;color:#fff;font-size:20px}
.big-art{display:block;width:min(72vw,330px);aspect-ratio:1;margin:20px auto 0;border-radius:27px;object-fit:cover;background:#14372e;box-shadow:0 24px 56px #0009}.now-meta{text-align:center;margin-top:16px}.now-meta h2{margin:0;font-size:20px}.now-meta p{margin:6px 0;color:var(--muted);font-size:12px}.progress{width:100%;accent-color:var(--gold)}.times{display:flex;justify-content:space-between;color:var(--muted);font-size:9px}.player-controls{display:flex;align-items:center;justify-content:center;gap:13px;margin:12px 0}.player-controls button{width:43px;height:43px;border:0;border-radius:50%;background:#173e34;color:#fff;font-size:18px}.player-controls .main-play{width:61px;height:61px;background:var(--gold);color:#14251f;font-size:25px}.player-controls button.active{background:#584718;color:var(--gold2)}
.player-secondary{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.player-secondary button,.settings-grid button{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;padding:10px 13px}
.queue-card{min-height:45vh}.queue-row{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #ffffff0d}.queue-row.active{background:#173c32;border-radius:12px}.queue-row-main{flex:1;min-width:0}.queue-row b,.queue-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue-row small{color:var(--muted);margin-top:3px}.queue-row button{border:0;background:none;color:var(--muted)}
.settings-card{min-height:40vh}.muted{color:var(--muted)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.privacy-note{margin-top:18px;padding:12px;background:#ffffff08;border:1px solid #ffffff0d;border-radius:13px;color:var(--muted);font-size:11px;line-height:1.8}
.toast{position:fixed;left:50%;bottom:calc(140px + var(--safe-bottom));transform:translateX(-50%);z-index:100;background:#fff;color:#10251f;border-radius:12px;padding:9px 14px;font-size:11px;box-shadow:0 10px 30px #0007}
@media(min-width:700px){.rail{grid-auto-columns:48%}.app-shell{padding-inline:20px}.hero h1{font-size:29px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}