/* Seek, queue and transport remain stationary and accessible. */
.av-transport{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:24px}
.av-play-button{width:60px;height:60px;background:var(--av-accent);color:#f4fff7;border:1px solid var(--av-line);box-shadow:0 6px 24px rgba(31,103,104,.18)}
body.dark .av-play-button{color:#123c3d}
.av-play-button:is(:hover,:focus-visible){background:var(--av-accent);border-color:var(--av-highlight);box-shadow:0 0 0 5px color-mix(in srgb,var(--av-accent) 12%,transparent)}
.av-timeline{display:grid;gap:5px;margin-bottom:18px}
.av-progress{position:relative;display:flex;align-items:center;height:28px;touch-action:none;cursor:pointer;border-radius:8px}
.av-progress::before{content:"";position:absolute;left:0;right:0;height:3px;border-radius:4px;background:var(--av-line)}
.av-progress > span{position:relative;height:3px;width:0;background:var(--av-accent);border-radius:4px;transition:width .18s linear}
.is-seeking-local-audio .av-progress > span{transition:none}
.av-progress > span::after{content:"";position:absolute;right:-4px;top:-3px;width:9px;height:9px;background:var(--av-accent);border-radius:50%}
.av-progress[aria-disabled="true"]{opacity:.4;cursor:default}
.av-timeline small{font:11px ui-monospace,monospace;color:var(--av-muted);text-align:right}
.av-playback-footer{display:none;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:24px;width:min(430px,100%);margin:0 auto;padding:12px 0 0}
.is-local-audio-live .av-playback-footer{display:grid}
.av-session-control{position:relative;display:flex;align-items:center;border:1px solid var(--av-line);border-radius:28px;padding:3px;background:var(--av-button)}
.av-queue-toggle{gap:7px;border-radius:24px;padding-inline:13px;border-left-color:var(--av-line)}
.av-queue-toggle span[data-av-queue-count]{font:12px ui-monospace,monospace;color:var(--av-muted)}
.av-volume-control{display:flex;align-items:center;gap:10px;min-width:0;color:var(--av-muted)}
.av-volume-control{justify-self:end;width:min(210px,100%)}
.av-volume-control input{width:100%;min-width:24px;flex:1;accent-color:var(--av-accent);height:30px;padding:0;cursor:pointer}
.av-playlist-panel{position:fixed;inset:auto 0 calc(88px + env(safe-area-inset-bottom));width:min(390px,calc(100vw - 36px));max-height:calc(100dvh - 132px);box-sizing:border-box;margin:0 auto;padding:9px;border:1px solid var(--av-line);border-radius:20px;background:var(--av-glass);color:var(--av-ink);box-shadow:0 16px 50px rgba(0,0,0,.24);overflow:auto}
.av-playlist-panel[data-av-queue-fallback]{display:none;z-index:15}
.av-playlist-panel[data-av-queue-fallback].is-open{display:block}
.av-playlist-list{display:grid;gap:4px;max-height:min(320px,calc(100dvh - 152px));overflow:auto;overscroll-behavior:contain}
.av-playlist-item{display:flex;align-items:center;gap:8px;min-width:0;border-radius:12px;padding:4px 8px}
.av-playlist-item.is-active{background:var(--av-button)}
.av-playlist-main{display:grid;gap:4px;flex:1;min-width:0;text-align:left;background:none;border:0;color:var(--av-ink);padding:8px;cursor:pointer}
.av-playlist-main strong{font-size:13px;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.av-playlist-main span{font-size:11px;color:var(--av-muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.av-playlist-remove{min-width:44px;min-height:44px;padding:8px;border:0;background:none;color:var(--av-muted);border-radius:12px;cursor:pointer;font-size:12px}
.av-playlist-remove:hover{background:var(--av-button);color:var(--av-ink)}
.is-browser-audio-live :is(.av-transport,.av-timeline,.av-playback-footer){display:none}
.is-browser-audio-live .av-playlist-panel{display:none}
.is-display-mode :is(.av-playlist-panel,.av-playback-footer,.av-hint,.av-transport,.av-timeline){display:none}
.is-display-mode .av-topbar .av-controls{display:none}
.is-display-mode .av-track-edit{display:none}
.av-exit-display{position:absolute;right:16px;top:16px;z-index:4;background:var(--av-button)}
.is-display-mode .av-now{margin:40px auto}
.av-stage:fullscreen .av-return,.is-display-mode .av-return{visibility:hidden;pointer-events:none}
@media(max-width:360px){.av-volume-control{gap:6px}.av-volume-control .ui-icon{--ui-icon-size:18px}.av-playback-footer{gap:4px}.av-mini-button{padding-inline:8px}}
