@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{color-scheme:dark;--bg:#111310;--panel:#171a16;--line:#2a2e26;--muted:#92988b;--gold:#dfbf80;--text:#eef0e8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;font-size:14px}button,input,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;background:none;border:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}a{color:inherit;text-decoration:none}button:hover{filter:brightness(1.18)}.shell{display:grid;grid-template-columns:216px minmax(420px,1fr) 300px;min-height:100vh;padding-bottom:102px}.sidebar{padding:35px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:0;height:calc(100vh - 102px)}.brand{display:flex;align-items:center;gap:10px;font:750 24px Manrope,sans-serif;letter-spacing:-1px}.brand img{width:31px;height:31px}.brand small{font:500 8px 'DM Sans';color:var(--gold);letter-spacing:2px;display:block;margin-top:3px}.nav{display:grid;gap:7px;margin-top:45px}.nav button{display:flex;gap:13px;align-items:center;text-align:left;padding:13px 14px;border-radius:8px;color:#a7ad9e;font-weight:500}.nav button.active{background:#282d21;color:var(--gold)}svg.i{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.section-label{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:#808778}.library-label{margin:35px 14px 18px}.playlist-link{text-align:left;display:flex;align-items:center;gap:12px;color:#a7ad9e;padding:10px 14px}.mini{width:30px;height:30px;display:grid;place-items:center;border-radius:5px;background:#302b30;color:#c39cb7}.side-bottom{margin-top:auto}.discord-box{background:linear-gradient(135deg,#232722,#1b1e19);padding:18px 14px;border:1px solid #34392c;border-radius:9px;margin-top:25px}.discord-box p{font-size:12px;line-height:1.6;color:var(--muted);margin:8px 0 14px}.discord-box button{width:100%;padding:10px;background:var(--gold);color:#242519;border-radius:5px;font-size:12px;font-weight:700}.side-foot{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);margin:21px 5px 0}.green-dot{width:6px;height:6px;background:#b1c77f;border-radius:50%;display:inline-block}.main{padding:26px 34px 30px;min-width:0}.topbar{display:flex;align-items:center;gap:18px;height:40px;margin-bottom:36px}.search{display:flex;align-items:center;gap:12px;background:#1c1f19;border:1px solid #30352a;padding:10px 14px;border-radius:8px;max-width:430px;flex:1;color:#858c7d}.search input{background:none;border:0;outline:0!important;color:var(--text);width:100%;font-size:12px}.shortcut{font-size:10px;border:1px solid #3a4031;border-radius:4px;padding:2px 4px;white-space:nowrap}.top-actions{margin-left:auto;display:flex;align-items:center;gap:16px}.room-btn{font-size:12px;display:flex;gap:8px;align-items:center;white-space:nowrap}.avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#d6bd8e;color:#28291e;font-size:11px;font-weight:700}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--gold);display:flex;align-items:center;gap:8px}.welcome{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:23px}h1,h2,h3,p{margin:0}h1{font:650 27px Manrope;letter-spacing:-1px;margin:9px 0 6px}.subtitle{color:var(--muted);font-size:12px}.date{color:#7c8473;font-size:11px}.hero{position:relative;overflow:hidden;border-radius:12px;min-height:258px;padding:31px;background:linear-gradient(105deg,#373d29 0%,#303627 48%,#19251f 100%);border:1px solid #424b31}.hero:after{content:'';position:absolute;width:380px;height:380px;border:1px solid #6d795539;right:-25px;top:-52px;border-radius:50%;box-shadow:0 0 0 37px #63714d13,0 0 0 75px #63714d0c}.hero-art{position:absolute;right:23px;top:29px;width:215px;height:215px;transform:rotate(-13deg);border-radius:50%;background:repeating-radial-gradient(circle,#161b15 0px,#161b15 2px,#2d3427 3px,#141a14 4px);box-shadow:0 18px 35px #0006;z-index:1}.hero-art img{width:83px;height:83px;border-radius:50%;position:absolute;left:66px;top:66px}.hero-art:after{content:'';width:8px;height:8px;background:#d9c89d;position:absolute;left:103px;top:103px;border-radius:50%}.hero-copy{position:relative;z-index:2;width:66%}.hero .eyebrow{color:#d9c99a;font-size:9px}.hero h2{font:650 37px/1.15 Manrope;letter-spacing:-1.5px;margin:16px 0 12px}.hero p{max-width:290px;color:#b5bfaa;font-size:12px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:18px;margin-top:20px}.primary{background:var(--gold);color:#28291b;font-weight:700;border-radius:6px;padding:11px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px}.secondary{border:1px solid #555e44;border-radius:6px;padding:10px 14px;font-size:12px}.hero-note{color:#bbc6a5;font-size:10px;display:flex;gap:5px;align-items:center}.title-row{display:flex;justify-content:space-between;align-items:center;margin:30px 0 17px}.title-row h2{font:650 17px Manrope;letter-spacing:-.4px}.title-row button{color:var(--muted);font-size:11px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.mix{text-align:left;min-width:0;padding:0}.art{width:100%;aspect-ratio:1;display:block;object-fit:cover;border-radius:8px;background:#343b2a}.mix .art-wrap{position:relative}.mix .play-overlay{position:absolute;right:9px;bottom:9px;background:var(--gold);color:#222;width:33px;height:33px;display:grid;place-items:center;border-radius:50%;opacity:0;transform:translateY(5px);transition:.2s}.mix:hover .play-overlay{opacity:1;transform:none}.mix h3{font-size:12px;font-weight:600;margin:11px 0 4px}.mix p{font-size:10px;color:var(--muted);line-height:1.6}.filters{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}.chip{color:#9ca392;border:1px solid #30362a;border-radius:20px;padding:6px 13px;font-size:10px}.chip.active{color:var(--gold);background:#2e3022;border-color:#5a5336}.tracks{width:100%;border-collapse:collapse}.tracks th{font-weight:400;text-transform:uppercase;letter-spacing:1.3px;color:#747d6a;font-size:9px;text-align:left;padding:0 9px 12px;border-bottom:1px solid var(--line)}.tracks td{padding:9px;font-size:11px;border-bottom:1px solid #20251c}.tracks td:first-child{width:28px;color:#77816e}.track-info{display:flex;align-items:center;gap:12px}.track-info img{width:36px;height:36px;border-radius:5px}.track-info strong{display:block;font-size:12px;font-weight:500}.track-info span{font-size:10px;color:var(--muted);display:block;margin-top:4px}.tracks .track-play{padding:0;text-align:left}.tracks .playing{color:var(--gold)}.tracks .mood{color:var(--muted)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px;color:#98a08d}.icon-btn .i{width:16px;height:16px}.liked{color:var(--gold)!important}.right-panel{padding:32px 22px;border-left:1px solid var(--line);background:#141711}.panel-head{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600}.now-label{font-size:9px;letter-spacing:1.4px;color:#98a981;margin:29px 0 13px}.now-cover{width:100%;border-radius:9px;aspect-ratio:1;object-fit:cover}.now-details{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.now-details h3{font:600 18px Manrope;letter-spacing:-.5px}.now-details p{font-size:11px;color:var(--muted);margin-top:6px}.wave{display:flex;align-items:center;gap:3px;height:12px}.wave i{width:2px;height:10px;background:var(--gold);animation:wave 1s ease-in-out infinite alternate}.wave i:nth-child(2){animation-delay:.3s;height:5px}.wave i:nth-child(3){animation-delay:.6s;height:8px}@keyframes wave{to{height:3px}}.queue-label{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin:28px 0 14px}.queue-item{display:flex;align-items:center;gap:10px;margin:13px 0}.queue-item img{width:36px;height:36px;border-radius:5px}.queue-item strong{display:block;font-size:11px;font-weight:500}.queue-item small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.queue-item .remove{margin-left:auto;font-size:16px;color:var(--muted)}.empty{color:var(--muted);font-size:12px;line-height:1.8;padding:18px 0}.party{border-top:1px solid var(--line);margin-top:23px;padding-top:20px}.party p{font-size:11px;color:var(--muted);margin:10px 0 15px;line-height:1.7}.party-people{display:flex;align-items:center;gap:8px;font-size:10px;color:#aab699}.party-people .avatar{width:28px;height:28px}.invite{width:100%;border:1px dashed #47503a;border-radius:6px;padding:10px;font-size:11px;color:#b1bba5;margin-top:15px}.player{position:fixed;bottom:0;left:0;right:0;height:91px;background:#1b1f17f7;backdrop-filter:blur(15px);border-top:1px solid #353e2b;display:grid;grid-template-columns:270px 1fr 270px;align-items:center;padding:0 25px;gap:30px;z-index:5}.player-track{display:flex;align-items:center;gap:12px;min-width:0}.player-track img{width:48px;height:48px;border-radius:6px}.player-track strong{font-size:12px;display:block}.player-track span{font-size:10px;display:block;color:var(--muted);margin-top:5px}.transport{display:flex;justify-content:center;align-items:center;gap:22px}.transport .main-play{width:33px;height:33px;border-radius:50%;background:var(--gold);color:#242719;display:grid;place-items:center}.progress{display:flex;gap:10px;align-items:center;margin-top:9px;font-size:9px;color:#a1ab93}.progress input{flex:1;min-width:50px}.volume{display:flex;gap:12px;align-items:center;justify-content:flex-end;color:#9ca68d}.volume input{width:85px}input[type=range]{appearance:none;height:3px;background:#4b543e;border-radius:4px;accent-color:var(--gold);cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;width:8px;height:8px;background:var(--gold);border-radius:50%}.quality{font-size:8px;letter-spacing:1px;border:1px solid #4b533b;border-radius:3px;padding:3px 5px;color:#b2bf9e}.footer-note{margin:22px 0 0;font-size:10px;color:#76816b;display:flex;justify-content:space-between;gap:12px}.footer-note a{text-decoration:underline}.mobile-brand{display:none}#toast{position:fixed;left:50%;bottom:110px;transform:translateX(-50%);background:#dfbf80;color:#252719;padding:12px 20px;border-radius:8px;font-size:12px;z-index:30;box-shadow:0 8px 35px #0006;max-width:90vw;display:none}dialog{background:#1b2017;color:var(--text);border:1px solid #49513b;border-radius:14px;max-width:460px;width:calc(100% - 36px);padding:27px}dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}dialog h2{font:650 23px Manrope;margin-bottom:12px}dialog p{color:#a6b09a;font-size:13px;line-height:1.8;margin-bottom:18px}dialog input{display:block;width:100%;padding:12px;background:#11160e;border:1px solid #3c462f;color:white;border-radius:6px;margin:10px 0 16px}dialog .close{float:right;font-size:22px}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap}.room-banner{display:flex;align-items:center;gap:9px;border:1px solid #464f37;background:#242b1c;color:#c1d2aa;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:12px}.room-banner button{margin-left:auto;color:var(--gold)}.long-list .title-row{margin-top:0}.download-link{color:var(--gold)!important}.tag{font-size:9px;color:#a5b195;background:#2c3524;padding:4px 6px;border-radius:4px}.no-results{color:var(--muted);padding:35px 5px}.queue-controls{display:flex;gap:12px}.queue-controls button{font-size:11px;color:var(--gold)}
@media(min-width:1500px){.main{padding-left:50px;padding-right:50px}.hero{min-height:290px}.hero h2{font-size:43px}.hero-art{width:245px;height:245px;right:50px}.hero-art img{left:80px;top:80px}.hero-art:after{left:117px;top:117px}}
@media(max-width:1200px){.shell{grid-template-columns:180px minmax(380px,1fr)}.sidebar{padding:30px 15px}.right-panel{display:none}.main{padding:25px}.player{grid-template-columns:210px 1fr 170px;gap:20px}.hero-art{right:20px}.brand{font-size:22px}}
@media(max-width:760px){.shell{display:block;padding-bottom:145px}.sidebar{height:55px;position:fixed;top:auto;bottom:0;left:0;right:0;background:#151a11;z-index:10;padding:0;border-top:1px solid var(--line)}.sidebar .brand,.library-label,.playlist-link,.side-bottom{display:none}.nav{display:flex;justify-content:space-around;margin:0;gap:0;height:55px}.nav button{font-size:10px;padding:6px 16px;gap:3px;flex-direction:column;background:none!important}.main{padding:20px 18px}.topbar{gap:12px;margin-bottom:27px}.mobile-brand{display:block}.mobile-brand img{width:30px}.top-actions{gap:9px}.room-btn{font-size:0}.room-btn .i{width:20px}.shortcut,.date,.top-actions .avatar{display:none}.welcome h1{font-size:25px}.hero{padding:25px 22px;min-height:280px}.hero h2{font-size:31px}.hero-copy{width:78%}.hero-art{right:-58px;top:70px;opacity:.65;width:200px;height:200px}.hero-art img{left:58px;top:58px}.hero-art:after{left:96px;top:96px}.hero p{max-width:235px}.hero-actions{flex-wrap:wrap;gap:12px}.cards{grid-template-columns:repeat(2,1fr);gap:22px 15px}.mix h3{font-size:13px}.mix p{font-size:11px}.tracks .mood{display:none}.tracks td{padding:9px 5px}.player{bottom:55px;height:83px;grid-template-columns:1fr 130px;gap:12px;padding:0 16px}.player .volume,.progress{display:none}.transport{gap:16px}.transport>.shuffle,.transport>.repeat{display:none}.player-track img{width:43px;height:43px}.player-track strong{font-size:11px}.player-track .icon-btn{display:none}.footer-note{display:block;line-height:2}.title-row{margin-top:27px}.hero-note{font-size:9px}#toast{bottom:153px}.room-banner{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.node-search{padding:23px;background:linear-gradient(120deg,#303a24,#1b261e);border:1px solid #414c31;border-radius:11px;margin-bottom:25px}.node-search h2{font:650 22px Manrope;margin:10px 0}.node-search p{font-size:12px;color:#adb99e;line-height:1.7}.node-search form{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.node-search select{border:1px solid #566246;border-radius:5px;background:#1c2517;color:#dde7d0;padding:9px}.node-search .node-message{margin-top:14px;font-size:11px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}button:disabled{opacity:.45;cursor:default}.lyrics-toolbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;color:#b4bfa5;font-size:11px;margin-bottom:20px}.lyrics-toolbar input[type=number]{width:52px;background:#242d1b;color:#e1e6d9;border:1px solid #505d3f;padding:4px;border-radius:5px}.lyric-stage{height:min(510px,62vh);overflow:auto;background:linear-gradient(135deg,#4f5c35,#2d3e2c);border:1px solid #576547;border-radius:13px;padding:27px 25px;scroll-behavior:smooth}.lyric-line{display:flex;align-items:baseline;gap:20px;text-align:left;font:750 28px/1.55 Manrope;color:#b1bda08a;padding:10px 0;width:100%;transition:color .2s}.lyric-line.active{color:#fff0be}.lyric-line.past{color:#d9e3c4b0}.lyric-time{font:400 10px 'DM Sans';color:#b8c59e;min-width:27px}.lyric-word{transition:color .15s}.lyric-line.active .lyric-word{color:#c5cdb5}.lyric-line.active .lyric-word.sung{color:#ffe7a4}.lyric-empty{font:650 28px/1.6 Manrope;color:#d3ddc2;max-width:500px;margin:35px 0}.lyrics-attribution{color:#8b987d;font-size:10px;line-height:1.8;margin-top:16px}.lyrics-toolbar label{display:flex;align-items:center;gap:5px}.node-results{margin-top:25px}@media(max-width:760px){.node-search{padding:18px}.lyric-line{font-size:23px;gap:12px}.lyric-stage{padding:20px 16px}.lyric-empty{font-size:23px}.lyrics-section .welcome{align-items:flex-start;gap:15px}.lyrics-section .welcome .secondary{font-size:10px;padding:8px}.top-actions{gap:4px}.topbar{gap:6px}}

.song-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:16px;margin-top:15px}.song-card{background:#1b2117;border:1px solid #303a28;border-radius:10px;overflow:hidden;min-width:0;transition:background .15s}.song-card:hover{background:#262f20}.song-card.current{border-color:#9f915d}.song-art{position:relative;aspect-ratio:1;overflow:hidden}.song-art>img{width:100%;height:100%;object-fit:cover;display:block}.song-play{position:absolute;right:12px;bottom:12px;width:39px;height:39px;background:var(--gold);color:#202719;border-radius:50%;display:grid;place-items:center;box-shadow:0 4px 16px #0005}.song-duration{position:absolute;top:10px;right:10px;background:#10160dbb;padding:4px 7px;border-radius:5px;font-size:10px}.song-card-copy{padding:13px 12px}.song-card h3{font:600 13px Manrope;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-card p{font-size:11px;color:var(--muted);margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-card-actions{display:flex;align-items:center;gap:2px;margin-top:12px}.song-card-actions .tag{margin-right:auto;font-size:8px}.song-card-actions .icon-btn{padding:4px}.lyrics-toggle{font-size:21px;line-height:1;flex-shrink:0}.player-lyrics{position:fixed;right:25px;bottom:105px;width:min(620px,calc(100vw - 40px));max-height:calc(100dvh - 130px);overflow:auto;z-index:15;background:#1c2819;border:1px solid #566447;border-radius:15px;box-shadow:0 14px 65px #0009;padding:23px}.player-lyrics .welcome{margin:0 30px 18px 0;align-items:flex-start;gap:10px}.player-lyrics h1{font-size:22px;margin-top:7px}.player-lyrics .eyebrow{font-size:8px}.player-lyrics .subtitle{font-size:11px;max-width:320px;line-height:1.7}.player-lyrics .lyric-stage{height:290px;max-height:40dvh;background:linear-gradient(130deg,#52603c,#31472e)}.player-lyrics .lyric-line{font-size:24px}.player-lyrics .lyric-empty{font-size:23px}.player-lyrics .lyrics-attribution{font-size:9px}.player-lyrics .lyrics-toolbar{gap:12px;font-size:10px}.close-lyrics{position:absolute;top:14px;right:14px;font-size:24px;color:#c6d2b6}.player-lyrics .secondary{font-size:10px;white-space:nowrap}.player .transport{gap:18px}
@media(max-width:760px){.song-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.song-card-copy{padding:11px 9px}.song-card h3{font-size:12px}.song-card-actions .icon-btn{padding:4px 2px}.song-card-actions .tag{font-size:7px}.player-lyrics{right:10px;bottom:148px;width:calc(100vw - 20px);max-height:calc(100dvh - 170px);padding:18px 14px}.player-lyrics .lyric-stage{height:230px;max-height:30dvh}.player-lyrics .lyric-line{font-size:21px}.player-lyrics h1{font-size:20px}.player .transport{gap:12px}.player{grid-template-columns:minmax(0,1fr) 150px}.player-track strong{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* Each viewport, including Discord's iframe, owns its own scroll areas. */
:root{--player-height:96px;--nav-height:0px;--safe-bottom:env(safe-area-inset-bottom,0px)}
html,body{height:100%;width:100%;overflow:hidden}#app{height:100%;height:100dvh;overflow:hidden}
.shell{height:calc(100% - var(--player-height) - var(--nav-height) - var(--safe-bottom));min-height:0;padding-bottom:0;overflow:hidden;grid-template-columns:216px minmax(0,1fr) 300px}
.main,.sidebar,.right-panel{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#64724e #171d13;scroll-padding-block:20px}
.main{position:relative;touch-action:auto;overflow-anchor:none}.sidebar{position:relative;top:auto}.sidebar>*{flex-shrink:0}.right-panel .now-cover{max-height:32dvh;object-fit:cover}.topbar,.search,.search input,.top-actions,.player>div{min-width:0}.top-actions{flex-shrink:0}.main :is(p,h1,h2,h3){overflow-wrap:anywhere}
.player{height:calc(var(--player-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);grid-template-columns:minmax(160px,240px) minmax(220px,1fr) minmax(150px,240px);gap:15px}
.player-track>div{min-width:0}.player-track strong,.player-track span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player .transport{gap:12px}.icon-btn.active{color:var(--gold);background:#4d4c2e;border-radius:6px;box-shadow:inset 0 -2px var(--gold)}
.player-lyrics{bottom:calc(var(--player-height) + var(--nav-height) + var(--safe-bottom) + 10px);max-height:calc(100dvh - var(--player-height) - var(--nav-height) - var(--safe-bottom) - 30px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.lyric-stage{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;overflow-anchor:none}.player-lyrics .lyric-stage{max-height:35dvh}.lyric-line{flex-shrink:0}.lyric-line>span:last-child{min-width:0;overflow-wrap:anywhere}.queue-item>div{min-width:0}.queue-item strong{overflow-wrap:anywhere}.queue-controls{flex-wrap:wrap;gap:10px}.queue-controls button{min-height:40px}.tracks{table-layout:fixed}.tracks td:nth-child(2){overflow:hidden}.track-info{min-width:0}.track-info>span{min-width:0}.track-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tracks th:first-child{width:28px}.tracks th:nth-last-child(2){width:45px}.tracks th:last-child{width:100px}
dialog{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}#toast{bottom:calc(var(--player-height) + var(--nav-height) + var(--safe-bottom) + 12px)}
@media(max-width:1200px){.shell{grid-template-columns:180px minmax(0,1fr)}.player{grid-template-columns:minmax(140px,210px) minmax(210px,1fr) 150px}.volume{gap:5px}.volume input{width:65px}.quality{display:none}}
@media(max-width:900px) and (min-width:761px){.shell{grid-template-columns:155px minmax(0,1fr)}.sidebar{padding:25px 10px}.brand{font-size:19px}.main{padding:22px}.room-btn{font-size:0}.room-btn .i{width:20px}.top-actions{gap:10px}.hero-copy{width:80%}.hero-art{right:-65px;opacity:.6}.player{grid-template-columns:150px minmax(210px,1fr) 110px;padding-inline:14px}.player .transport{gap:7px}.volume input{width:55px}.volume>.icon-btn:last-child{display:none}.player-track img{width:40px;height:40px}}
@media(max-width:760px){
 :root{--player-height:108px;--nav-height:55px}
 .shell{display:block}.main{padding:18px 14px 24px;width:100%}.sidebar{position:fixed;inset:auto 0 0;height:calc(var(--nav-height) + var(--safe-bottom));padding:0 0 var(--safe-bottom);overflow:hidden}.nav{height:var(--nav-height);width:100%}.nav button{flex:1;min-width:0;padding:6px 3px}.right-panel{display:none}
 .topbar{height:auto;min-height:44px;margin-bottom:23px;gap:7px}.search{padding:10px;gap:7px;max-width:none}.search input{font-size:16px;width:100%}.top-actions{gap:1px}.top-actions .icon-btn,.room-btn{width:35px;min-height:44px;padding:7px}.mobile-brand img{width:27px}.top-actions .avatar{display:none}
 .welcome{gap:10px;flex-wrap:wrap}.welcome h1{font-size:24px}.eyebrow{font-size:8px;letter-spacing:1.5px}.hero{padding:22px 18px;min-height:265px}.hero h2{font-size:30px}.hero-copy{width:90%}.hero-art{right:-90px;opacity:.35}.hero-actions{gap:10px}.title-row{align-items:flex-start;gap:12px;flex-wrap:wrap}.title-row button .i{width:14px}.cards{gap:18px 12px}.song-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.song-card-actions .icon-btn{min-width:28px;min-height:36px}.song-card-actions .tag{max-width:50px;overflow:hidden;text-overflow:ellipsis}.song-play{width:42px;height:42px}.filters{flex-wrap:nowrap;overflow-x:auto;padding:2px 0 8px;overscroll-behavior-x:contain}.filters{touch-action:pan-x}.chip{flex-shrink:0;min-height:36px}.node-search{padding:17px 14px}.node-search form{gap:8px}.node-search .primary,.node-search .secondary{flex:1;min-height:42px}.node-search select{max-width:100%;min-height:42px}.primary,.secondary{min-height:42px}.dialog-actions{gap:8px}.dialog-actions>*{flex:1}.room-banner{line-height:1.7;flex-wrap:wrap}
 .player{bottom:calc(var(--nav-height) + var(--safe-bottom));height:var(--player-height);padding:9px 12px 7px;grid-template-columns:minmax(0,1fr) 156px;grid-template-rows:52px 28px;gap:4px 6px}.player>div:nth-child(2){display:contents}.player-track{grid-row:1;grid-column:1;gap:8px}.player-track img{width:34px;height:34px}.player-track strong{font-size:11px;max-width:100%}.player-track span{font-size:9px}.player-track .icon-btn{display:none}.player .transport{grid-row:1;grid-column:2;gap:0;justify-content:flex-end}.player .transport .icon-btn{width:30px;min-width:30px;height:42px;padding:4px}.player .transport>.shuffle{display:inline-flex}.player .transport>.repeat{display:none}.transport .main-play{width:36px;height:36px;flex-shrink:0}.player .progress{display:flex;grid-row:2;grid-column:1/-1;margin:0;width:100%;gap:9px}.progress input{height:5px;min-width:0;min-height:5px}.progress input::-webkit-slider-thumb{width:12px;height:12px}.progress span{min-width:27px;text-align:center}.player .volume{display:none}
 .player-lyrics{right:8px;width:calc(100% - 16px);padding:18px 13px}.player-lyrics .welcome{gap:8px;flex-wrap:wrap}.player-lyrics .lyrics-toolbar{gap:10px}.player-lyrics .lyric-stage{height:220px;max-height:32dvh}.player-lyrics .lyric-line{font-size:21px}.player-lyrics .lyric-empty{font-size:20px;margin:20px 0}.close-lyrics{width:34px;height:34px;top:8px;right:8px}.footer-note{line-height:2.1;padding-bottom:12px}.tracks th:last-child{width:91px}
}
@media(max-width:360px){.main{padding-inline:10px}.song-card-copy{padding:10px 7px}.song-card-actions{gap:0}.song-card-actions .tag{display:none}.song-card-actions .icon-btn{flex:1}.hero h2{font-size:27px}.player{padding-inline:8px}.player-track img{width:29px;height:29px}.player-track{gap:5px}.mobile-brand{display:none}}
@media(max-height:480px){.main{padding-top:12px}.hero{min-height:220px}.sidebar{padding-top:14px}.sidebar .nav{margin-top:16px}.side-bottom{display:none}.player-lyrics .lyric-stage{height:100px;max-height:28dvh}.player-lyrics .welcome{margin-bottom:9px}.player-lyrics .lyrics-toolbar{margin-bottom:10px}.player-lyrics .lyrics-attribution{display:none}}
@media(prefers-reduced-motion:reduce){.main,.lyric-stage{scroll-behavior:auto}}

.player-lyrics .lyric-line{font-weight:500}.player-lyrics .lyric-line.active{font-weight:800;color:#fff0be;text-shadow:0 0 1px currentColor}.player-lyrics .lyric-line.active .lyric-word.sung{font-weight:800;color:#ffe7a4}
.song-art{background:linear-gradient(135deg,hsl(var(--song-hue,60) 24% 28%),hsl(var(--song-hue,60) 20% 12%))}.song-monogram{position:absolute;inset:0;display:grid;place-items:center;font:750 clamp(30px,5vw,60px) Manrope;letter-spacing:-2px;color:#e9e4c9a6}.song-art>img{position:relative}.song-art>img[hidden]{display:none}
@media(max-width:760px){.footer-note>span{display:block}}
@media(max-width:760px) and (max-height:480px){.sidebar{padding-top:0}.sidebar .nav{margin-top:0}}
.seek-control{position:relative;display:flex;align-items:center;flex:1;min-width:0;height:28px;--seek-percent:0%}.progress .seek-control input{appearance:none;display:block;width:100%;height:28px;min-height:28px;margin:0;background:linear-gradient(to right,var(--gold) var(--seek-percent),#4b543e var(--seek-percent)) center/100% 5px no-repeat;cursor:pointer;touch-action:none}.progress .seek-control input::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border:0;border-radius:50%;background:var(--gold);box-shadow:0 0 0 2px #1c2417}.progress .seek-control input::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:var(--gold)}.progress .seek-control input:focus-visible{outline-offset:1px}.progress .seek-control input:disabled{opacity:.4;cursor:default}#seek-preview{position:absolute;bottom:29px;left:clamp(22px,var(--seek-percent),calc(100% - 22px));transform:translateX(-50%);background:#dfbf80;color:#222b19;padding:5px 7px;border-radius:5px;font-size:10px;white-space:nowrap;pointer-events:none;opacity:0;z-index:20}.seek-control.scrubbing #seek-preview,.seek-control:focus-within #seek-preview{opacity:1}
@media(max-width:760px){.progress .seek-control input{height:28px;min-height:28px}.progress .seek-control input::-webkit-slider-thumb{width:14px;height:14px}}
