/* Keep one iframe alive as its panel moves between the hero and the corner. */
#heroVideo{overflow:visible}
.song-panel{position:absolute;inset:0;z-index:1}
.song-stage{position:relative;width:100%;height:100%;overflow:hidden;border-radius:var(--r);background:var(--blue)}
#heroVideo iframe{inset:auto;left:0;top:0;width:400px;height:225px;transform:scale(var(--song-scale,1));transform-origin:top left;max-width:none}
.song-sound{position:absolute;right:8px;bottom:8px;z-index:2;min-height:36px;padding:5px 10px;border:0;border-radius:9px;background:var(--yellow);color:var(--blue);font:900 .8rem var(--font-body);cursor:pointer;box-shadow:0 2px 8px rgba(0,0,40,.25)}
.song-controls{display:none}
.song-panel.is-floating{position:fixed;inset:auto 12px var(--song-bottom,88px) auto;width:160px;height:90px;z-index:8;border-radius:var(--r);box-shadow:0 5px 24px rgba(0,0,40,.35)}
.song-panel.is-floating .song-controls{display:flex;position:absolute;right:0;bottom:100%;gap:4px;padding-bottom:4px}
.song-controls button{height:40px;min-width:40px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--blue);font:700 .8rem var(--font-body);cursor:pointer;box-shadow:0 2px 8px rgba(0,0,40,.15)}
.song-panel.is-floating .song-sound{display:none}
.song-status{position:absolute;inset:0;display:grid;place-items:center;padding:14px;background:var(--blue);color:var(--on-blue);text-align:center;font-size:.85rem}
