/* Music collection and persistent transport. */
#music-view{background:#101818;color:#edf3ed;min-height:80vh}
.music-page{width:min(1160px,calc(100% - 104px));max-width:none;padding:52px 0 90px}
.music-hero{display:flex;align-items:end;gap:34px;padding-bottom:42px;border-bottom:1px solid #ffffff1c}
.music-cover,.music-mini-cover{background:linear-gradient(145deg,#0d2629ad,#092d2fd9),url('/navigation/maps/dhomap-01.png') center/cover;color:#d8e9d4}
.music-cover{width:250px;aspect-ratio:1;flex:none;padding:20px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 16px 45px #0007}
.music-cover span,.music-cover small{font-size:9px;line-height:1.5;letter-spacing:.18em;font-weight:700}.music-cover b{font-size:70px;font-weight:400;align-self:center;color:#c0d7c5}.music-cover small{font-size:8px;color:#a5bbae}
.music-intro{padding:5px 0}.music-kicker{font-size:10px;letter-spacing:.17em;color:#9eb5a6;font-weight:700}.music-intro h1{font-size:clamp(34px,4.2vw,58px);letter-spacing:-.06em;line-height:1.12;margin:14px 0}.music-intro p{font-size:13px;color:#aebdb3;line-height:1.8;margin:0}.music-meta{display:flex;gap:15px;margin:16px 0 22px;font-size:11px;color:#91a59a}.music-meta span+span:before{content:'•';margin-right:15px;color:#678274}
.music-shuffle-start{border:0;border-radius:99px;background:#eff8ed;color:#142f29;padding:13px 24px;font-size:12px;font-weight:700}.music-shuffle-start span{font-size:18px;margin-right:6px;vertical-align:middle}.music-shuffle-start:hover{background:#c8e4cc}.music-shuffle-start:disabled{opacity:.5}
.music-short-option{display:inline-flex;align-items:center;gap:6px;margin-left:15px;font-size:11px;color:#aebfb4}.music-short-option input{accent-color:#9bc8a4}
.music-library-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin:40px 0 20px}.music-library-head h2{font-size:24px;letter-spacing:-.04em;margin:8px 0 0}.music-library-head h2 span{font-size:12px;font-weight:400;color:#8da399;margin-left:8px}.music-search{width:min(330px,45%);height:40px;display:flex;align-items:center;gap:10px;border:1px solid #ffffff2b;background:#1e2b28;border-radius:3px;padding:0 13px;color:#a4b9aa}.music-search>span{font-size:22px}.music-search input{width:100%;background:none;border:0;outline:0;color:white;font-size:12px}.music-search input::placeholder{color:#8da097}
.music-selection{display:flex;align-items:center;gap:18px;padding:12px 0 18px;font-size:12px;color:#b7c9bc;flex-wrap:wrap}.music-selection label{display:flex;align-items:center;gap:7px}.music-selection input,.music-track>input{accent-color:#9bc8a4}.music-selection>span{color:#82998b}.music-selection>div{display:flex;gap:7px;margin-left:auto;flex-wrap:wrap}.music-selection button{border:1px solid #ffffff2a;background:#1d2e29;color:#dcebe0;border-radius:3px;padding:8px 11px;font-size:11px}.music-selection button:hover:not(:disabled){background:#304a3d}.music-selection button:disabled{opacity:.4;cursor:default}
.music-page .music-selection-help{margin:0 0 15px;color:#899f91;font-size:11px;line-height:1.6}
.music-columns{display:grid;grid-template-columns:38px 48px 1fr 150px 90px;padding:10px 12px;border-bottom:1px solid #ffffff21;color:#84988b;font-size:10px;letter-spacing:.05em}.music-list{display:block}.music-track{display:grid;grid-template-columns:38px 1fr;align-items:center;min-height:58px;border:0;border-bottom:1px solid #ffffff0e;border-radius:0;background:transparent;color:#e7f1e8;padding:0 12px}.music-track:hover{background:#ffffff0b}.music-track.selected{background:#9acba819}.music-track>input{margin:0;width:15px;height:15px}.music-track-button{width:100%;display:grid;grid-template-columns:48px 1fr 150px 90px;align-items:center;gap:0;border:0;background:transparent;color:inherit;text-align:left;padding:13px 0;min-height:57px}.music-track-button strong{font-size:13px;overflow-wrap:anywhere}.music-track-number,.music-track-id{font-size:11px;color:#7f9689}.music-track-state{font-size:11px;color:#abd4b3}.music-track.selected strong{color:#b3e3bd}.music-page .status{color:#aebfb4}.music-page .music-note{font-size:11px;color:#8da399;line-height:1.8;margin:28px 0 0}.music-note a{color:#b5d3bd}
.music-dock-open{padding-bottom:104px}.music-dock{position:fixed;z-index:20;bottom:0;left:0;right:0;min-height:94px;background:#17211f;border-top:1px solid #ffffff20;color:#eef5ee;display:grid;grid-template-columns:minmax(170px,1fr) minmax(280px,520px) minmax(140px,1fr);align-items:center;gap:18px;padding:12px 28px;box-shadow:0 -10px 32px #0003}.music-dock-track{min-width:0;display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.music-dock-track>span:last-child{min-width:0}.music-dock-track strong,.music-dock-track small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.music-dock-track strong{font-size:13px}.music-dock-track small{margin-top:4px;font-size:10px;color:#a5b6a9}.music-mini-cover{width:52px;height:52px;flex:none;display:grid;place-items:center;font-size:25px}.music-transport{min-width:0}.music-buttons{display:flex;justify-content:center;align-items:center;gap:15px}.music-buttons button{position:relative;min-width:28px;height:28px;padding:0;border:0;background:none;color:#b4c2b8;font-size:18px}.music-buttons button:hover,.music-buttons button.active{color:#a8e0b3}.music-buttons button.active:after{content:'';position:absolute;bottom:-3px;left:50%;width:4px;height:4px;border-radius:50%;background:#a8e0b3}.music-buttons button small{position:absolute;font-size:9px;right:1px;top:0}.music-buttons .music-toggle{border-radius:50%;width:36px;height:36px;background:#eff7ed;color:#172b24;font-size:13px}.music-buttons .music-toggle:hover{background:#c8e9cd;color:#172b24}.music-timeline{display:flex;align-items:center;gap:9px;margin-top:4px;color:#91a397;font-size:10px;font-variant-numeric:tabular-nums}.music-timeline input{flex:1;min-width:0}.music-dock input[type=range]{accent-color:#c4e2c9;height:4px;cursor:pointer}.music-volume{display:flex;justify-content:flex-end;align-items:center;gap:10px;color:#a6b9ab;font-size:11px}.music-volume input{width:90px}
@media(max-width:700px){.music-page{width:calc(100% - 36px);padding:30px 0 55px}.music-hero{align-items:center;gap:18px;padding-bottom:28px}.music-cover{width:120px;padding:10px}.music-cover b{font-size:38px}.music-cover span,.music-cover small{font-size:6px}.music-intro h1{font-size:28px;margin:8px 0}.music-intro p{font-size:11px}.music-meta{margin:8px 0 12px;font-size:10px}.music-meta span+span{display:none}.music-shuffle-start{padding:9px 15px}.music-library-head{align-items:start;flex-direction:column;margin:30px 0 14px}.music-search{width:100%}.music-selection{gap:10px}.music-selection>div{margin-left:0;width:100%}.music-columns{grid-template-columns:30px 32px 1fr 65px}.music-columns span:last-child{display:none}.music-track{grid-template-columns:30px 1fr}.music-track-button{grid-template-columns:32px 1fr 65px}.music-track-state{display:none}.music-dock-open{padding-bottom:145px}.music-dock{grid-template-columns:1fr auto;padding:9px 15px;gap:5px 12px}.music-dock-track{grid-column:1;grid-row:1}.music-mini-cover{width:38px;height:38px}.music-dock-track small{margin-top:2px}.music-dock-track small:last-child{display:none}.music-transport{grid-column:1 / -1;grid-row:2}.music-buttons{gap:13px}.music-buttons button{height:24px}.music-buttons .music-toggle{height:30px;width:30px}.music-volume{grid-column:2;grid-row:1}.music-volume input{width:65px}.music-timeline{margin-top:1px}}
