@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#222d49;background:#f5f7fc;font-synthesis:none;--ink:#222d49;--muted:#5c6680;--blue:#364f9e;--line:#d8dfee}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;border:1px solid transparent;border-radius:7px;padding:9px 14px;background:var(--blue);color:white;font-weight:500}button:hover{filter:brightness(.94)}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #8c58ce;outline-offset:3px}a{color:var(--blue)}input{min-width:0}input[type=range]{accent-color:var(--blue);cursor:pointer}input[type=search],input:not([type]){border:1px solid #c1cce4;border-radius:7px;background:white;padding:10px 12px;color:var(--ink)}.library{width:225px;position:fixed;inset:0 auto 113px 0;padding:30px 20px;display:flex;flex-direction:column;background:#e9edf8;border-right:1px solid var(--line);overflow:auto}.wordmark{font-size:30px;font-weight:700;letter-spacing:-1.5px;text-decoration:none;display:flex;align-items:center;gap:10px;color:var(--ink);margin-bottom:38px}.wordmark svg{height:32px;width:32px;stroke:var(--blue);fill:none;stroke-width:2.8;stroke-linecap:round}nav button.nav{display:flex;justify-content:space-between;width:100%;text-align:left;color:var(--muted);background:transparent;margin:3px 0;padding:11px 12px}.nav.active{background:#d5def5;color:#243c80}.nav span{font-size:13px}.playlist-heading{display:flex;align-items:center;justify-content:space-between;margin:30px 0 8px}.playlist-heading h2{font-size:13px;font-weight:600;margin:0;color:var(--muted)}.icon{padding:7px 9px;background:transparent;color:var(--ink);font-size:20px;line-height:1.2;min-height:36px;min-width:36px}.library-foot{margin-top:auto;padding-top:50px;font-size:12px;line-height:1.6;color:var(--muted)}.library-foot details{margin-top:16px}.library-foot summary{cursor:pointer}.library-foot p{margin-top:9px}main{margin-left:225px;padding:38px 42px 155px;max-width:1650px}header{display:flex;gap:24px;justify-content:space-between;align-items:center;margin-bottom:32px}h1{font-size:34px;line-height:1.2;letter-spacing:-1.2px;margin:0 0 7px}header p{margin:0;color:var(--muted);font-size:14px}#search-form{display:flex;gap:6px}#search{width:230px}.genres{display:flex;gap:7px;flex-wrap:wrap}.genres button{background:transparent;border:1px solid #c8d2e8;color:#465574;padding:7px 12px;border-radius:20px;font-size:13px}.genres button[aria-pressed=true]{background:var(--blue);color:white;border-color:var(--blue)}.tuning{display:flex;justify-content:space-between;align-items:center;padding:22px 0 25px;gap:12px;border-bottom:1px solid var(--line)}.tuning label{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.tuning input{width:110px}.quiet{background:transparent;color:var(--blue);padding:7px 10px;font-size:13px}.list-heading{display:flex;align-items:center;gap:12px;margin:24px 0 14px}.list-heading h2{margin:0;font-size:17px;font-weight:600}.list-heading>span{margin-left:auto;color:var(--muted);font-size:12px}.track{display:grid;grid-template-columns:36px minmax(180px,1fr) 120px 50px 145px;align-items:center;gap:14px;min-height:79px;border-bottom:1px solid var(--line);padding:8px 4px}.track.current{background:#e8edfa}.track-play{border:0;background:transparent;color:var(--blue);padding:8px;font-size:16px}.track-name{display:flex;align-items:center;gap:13px;min-width:0}.track-info{min-width:0}.track-title{font-size:14px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.track-artist{font-size:12px;color:var(--muted);margin-top:5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.art{height:48px;width:48px;flex-shrink:0;object-fit:cover;border-radius:5px;background:#dbe2f3}.placeholder{display:grid;place-items:center;font-size:24px;color:#6076b4}.track-meta{font-size:12px;color:var(--muted)}.track-meta details{margin-top:5px;font-size:11px}.track-meta summary{cursor:pointer}.track-meta details p{line-height:1.5;margin-bottom:0}.track-duration{font-size:12px;color:var(--muted)}.track-actions{display:flex;justify-content:flex-end;gap:3px}.track-actions .icon{font-size:19px}.icon[aria-pressed=true]{background:#d7e0f8;color:#2b438c}.source-link{font-size:11px;display:inline-block;margin-top:7px}.player{position:fixed;inset:auto 0 0;height:113px;display:grid;grid-template-columns:minmax(180px,1fr) minmax(290px,1.4fr) minmax(190px,1fr);align-items:center;padding:16px 28px;background:#fff;border-top:1px solid #c8d2e8;z-index:10;gap:22px}.now{display:flex;align-items:center;gap:13px;min-width:0}.now>div:last-child{min-width:0}.now strong,.now span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.now strong{font-size:13px}.now span{font-size:12px;color:var(--muted);margin-top:6px}.transport{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px}.play-button{border-radius:50%;width:39px;height:39px;padding:0;font-size:17px}.seek{display:flex;align-items:center;gap:10px;flex-basis:100%;font-size:10px;color:var(--muted);margin-top:5px}.seek input{flex:1;width:100%;height:14px}.player-feedback{display:flex;justify-content:flex-end;align-items:center;gap:4px}.volume{font-size:10px;color:var(--muted);display:grid;margin-left:14px;gap:4px}.volume input{width:80px}#status{color:var(--muted);font-size:14px;display:flex;align-items:center;gap:9px;padding:8px 0}#status:empty{display:none}#notice{position:fixed;bottom:127px;right:25px;background:#263c73;color:white;border-radius:7px;padding:12px 16px;max-width:min(450px,90vw);z-index:20;font-size:13px;box-shadow:0 3px 18px #222d4925}#notice:empty{display:none}#notice button{margin-left:12px;padding:3px 8px;background:#e2e8ff;color:#263c73}.empty{padding:35px 0;color:var(--muted);line-height:1.6}.empty button{display:block;margin-top:12px}dialog{border:1px solid var(--line);border-radius:12px;padding:25px;width:min(420px,90vw);color:var(--ink);box-shadow:0 10px 60px #222d4933}dialog::backdrop{background:#17244460}dialog h2{font-size:21px;margin:0 0 20px}dialog label{display:block;font-size:13px;margin-bottom:8px}dialog input{width:100%;margin-bottom:22px}dialog form>div{display:flex;justify-content:flex-end;gap:8px}#add-options button{display:block;width:100%;text-align:left;margin-bottom:8px;background:#edf1fc;color:var(--blue)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.roadmap main{max-width:950px}.roadmap article{border-bottom:1px solid var(--line);padding:18px 0}.roadmap article p{font-size:14px;line-height:1.6;color:var(--muted)}
#notice{pointer-events:none}#notice button{pointer-events:auto}.mobile-genre{display:none}
@media(max-width:760px){#genres{display:none}.mobile-genre{display:flex;gap:12px;align-items:center;font-size:13px;color:var(--muted)}.mobile-genre select{flex:1;padding:9px 12px;border:1px solid #c1cce4;border-radius:7px;background:white;color:var(--ink);font:inherit}.library-foot{gap:10px}.library-foot details:not([open]){margin-left:auto}}
@media(min-width:1450px){main{padding-left:60px;padding-right:60px}.track{grid-template-columns:36px minmax(180px,1fr) 180px 60px 145px}}@media(max-width:1100px){main{padding:30px 24px 155px}.library{width:195px}main{margin-left:195px}.track{grid-template-columns:28px minmax(140px,1fr) 85px 125px;gap:8px}.track-duration{display:none}.track-actions{gap:0}.player{gap:12px;padding:16px;grid-template-columns:1fr 1.2fr 100px}.volume{display:none}#search{width:170px}}@media(max-width:760px){.library{position:relative;inset:auto;width:100%;padding:16px 18px;border-right:0;border-bottom:1px solid var(--line)}.wordmark{font-size:25px;margin-bottom:14px}.wordmark svg{height:26px}.library nav{display:flex;flex-wrap:wrap;align-items:center;gap:3px}.library nav button.nav{width:auto;font-size:13px;padding:8px;gap:8px}.playlist-heading{margin:0 0 0 8px}.playlist-heading h2{display:none}#playlists{display:contents}.library-foot{margin:10px 0 0;padding:0;display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;font-size:11px}.library-foot p{margin:0}.library-foot details{margin:0}.library-foot details[open]{flex-basis:100%}.library-foot details[open] p{margin:10px 0}main{margin-left:0;padding:24px 16px 170px}header{align-items:flex-start;gap:20px;flex-direction:column;margin-bottom:22px}h1{font-size:28px}#search-form{width:100%}#search{flex:1;width:auto}.genres{gap:6px}.genres button{padding:6px 10px;font-size:12px}.tuning{padding:18px 0;gap:0}.tuning input{width:80px}.tuning .quiet{padding-right:0}.track{grid-template-columns:26px minmax(100px,1fr) 110px;min-height:77px;gap:5px}.track-meta{display:none}.track-name{gap:9px}.art{height:40px;width:40px}.track-title{font-size:13px}.track-actions .icon{min-width:34px;padding:7px}.player{height:139px;padding:10px 16px;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px}.now{grid-row:1;grid-column:1}.player-feedback{grid-row:1;grid-column:2}.transport{grid-row:2;grid-column:1/-1;flex-wrap:nowrap;gap:10px}.transport .seek{flex-basis:auto;flex:1;margin:0}.play-button{height:34px;width:34px;flex-shrink:0}.transport>.icon{font-size:17px;min-width:27px;padding:5px}.seek{gap:5px}#notice{bottom:150px;right:16px}.list-heading h2{font-size:16px}}
