/* One quiet, persistent remote for the existing playlist and audio instance. */
html{scroll-padding-bottom:calc(92px + env(safe-area-inset-bottom))}
body.nocturne.has-music-dock{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
body.nocturne .music-dock[hidden]{display:none}
body.nocturne .music-dock{
 position:fixed;z-index:70;inset:auto max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));
 display:flex;align-items:center;justify-content:space-between;gap:8px;
 width:210px;max-width:calc(100% - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));min-height:54px;margin-inline:auto;padding:4px 7px;
 border:1px solid #aa88b34d;border-radius:16px;background:linear-gradient(110deg,#17111ced,#09080cf5);box-shadow:0 4px 24px #0009,0 0 12px #a87ba90c;
 backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:width .28s ease,border-color .2s ease;
}
body.nocturne .music-dock::before{inset:0 20px auto;height:1px;opacity:.38;border-radius:50%;filter:blur(.6px)}
body.nocturne .music-dock[data-expanded=true]{width:430px}
body.nocturne .music-dock .dock-track{flex:1;display:flex;align-items:center;gap:7px;min-width:0;min-height:44px;padding:0 2px;color:#e7ded9;text-decoration:none;border-radius:9px}
body.nocturne .music-dock .dock-track:focus-visible{outline:2px solid #d2b4d4;outline-offset:1px}
body.nocturne .music-dock .dock-track>span:last-child{min-width:0;overflow:hidden}
body.nocturne .music-dock .record-skin{display:grid;width:28px;height:28px;flex:0 0 28px}
body.nocturne .music-dock .record-disc{border-width:1px}
body.nocturne .music-dock .record-skin .logo-mark{width:20px;height:20px;padding:2px}
body.nocturne .music-dock .dock-track small{font:400 15px/1.3 var(--serif);letter-spacing:0;text-transform:none;color:#e7ded9;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
body.nocturne .music-dock .dock-track strong{font:400 12px/1.45 var(--body);letter-spacing:0;color:#e7ded9}
body.nocturne .music-dock[data-expanded=false] .dock-track strong,
body.nocturne .music-dock[data-expanded=false] [data-dock-previous],
body.nocturne .music-dock[data-expanded=false] [data-dock-next]{display:none}
body.nocturne .music-dock[data-expanded=true] .dock-track small{font:400 9px/1.5 var(--body);color:#bbadbf}
body.nocturne .music-dock .dock-controls{display:flex;align-items:center;gap:3px;flex:0 0 auto}
body.nocturne .music-dock .dock-controls button{
 display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:44px;width:44px;min-height:44px;height:44px;padding:0 5px;
 border:1px solid transparent;border-radius:11px;background:transparent;box-shadow:none;color:#d9ccdd;font:400 19px/1 var(--body);touch-action:manipulation;
}
body.nocturne .music-dock .dock-controls [data-dock-toggle]{width:65px;min-width:65px;max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#312235;border-color:#b38db83d;color:#f0e6ed;font:400 11px/1.2 var(--body)}
body.nocturne .music-dock .dock-controls [data-dock-toggle]::before{content:'';width:0;height:0;flex:0 0 auto;border-block:5px solid transparent;border-left:7px solid currentColor}
body.nocturne .music-dock[data-state=playing] .dock-controls [data-dock-toggle]::before{width:7px;height:10px;border:0;border-inline:2px solid currentColor}
body.nocturne .music-dock[data-state=loading] .dock-controls [data-dock-toggle]::before{width:10px;height:10px;border:1px solid #cfbdd33d;border-top-color:#f0e6ed;border-radius:50%;animation:mini-player-loading .9s linear infinite}
body.nocturne .music-dock .dock-controls button:hover{background:#35283b;border-color:#b38db84d}
body.nocturne .music-dock .dock-controls button:focus-visible{outline:2px solid #e4bbd7;outline-offset:1px}
body.nocturne .music-dock .dock-controls button:disabled{opacity:.6;cursor:wait}
body.nocturne.has-music-dock .background-controls,body.nocturne.has-music-dock .back-to-top{bottom:calc(76px + env(safe-area-inset-bottom))}
@keyframes mini-player-loading{to{rotate:360deg}}
@media(min-width:600px){
 body.nocturne.has-music-dock .background-controls{bottom:calc(10px + env(safe-area-inset-bottom))}
 body.nocturne.has-music-dock .back-to-top{bottom:calc(12px + env(safe-area-inset-bottom))}
}
@media(max-width:379px){body.nocturne .music-dock[data-expanded=true] .record-skin{display:none}body.nocturne .music-dock[data-expanded=true]{gap:5px}}
@media(max-height:400px){body.nocturne .music-dock{bottom:calc(5px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){body.nocturne .music-dock{transition:none}body.nocturne .music-dock[data-state=loading] .dock-controls [data-dock-toggle]::before{animation:none}}
@media(forced-colors:active){
 body.nocturne .music-dock{background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none;backdrop-filter:none}
 body.nocturne .music-dock::before{display:none}
 body.nocturne .music-dock .dock-track,body.nocturne .music-dock .dock-track small,body.nocturne .music-dock .dock-track strong{color:LinkText}
 body.nocturne .music-dock .dock-controls button,body.nocturne .music-dock .dock-controls [data-dock-toggle]{background:ButtonFace;color:ButtonText;border-color:ButtonText}
 body.nocturne .music-dock .dock-track:focus-visible,body.nocturne .music-dock .dock-controls button:focus-visible{outline-color:Highlight}
}
