/* Floating record: intentionally independent of planning forms and Supabase. */
.vault-mini-player{position:fixed;right:18px;bottom:18px;z-index:110;display:flex;align-items:center;gap:10px;max-width:min(350px,calc(100vw - 24px));padding:8px 12px 8px 8px;background:#11100f;color:#f5efe3;border:1px solid #77664a;box-shadow:0 12px 38px #0009;border-radius:55px;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s,transform .2s,visibility .2s}
.vault-mini-player.is-visible{opacity:1;visibility:visible;transform:none}
.vault-mini-disc{width:54px;height:54px;flex:none;border-radius:50%;position:relative;border:1px solid #38332b;background:repeating-radial-gradient(circle,#141414 0 2px,#282828 2px 3px,#0e0e0e 3px 5px);box-shadow:0 2px 8px #0009}
.vault-mini-disc::before{content:"";position:absolute;inset:15px;border-radius:50%;background:#b4a07b var(--record-art,url('images/playlist-artwork/side-b.png')) center/cover;box-shadow:0 0 0 2px #27231e}
.vault-mini-disc::after{content:"";position:absolute;left:calc(50% - 3px);top:calc(50% - 3px);width:6px;height:6px;border-radius:50%;background:#171410}
.vault-mini-player.is-audible .vault-mini-disc{animation:vaultMiniSpin 3s linear infinite}
@keyframes vaultMiniSpin{to{transform:rotate(360deg)}}
.vault-mini-copy{min-width:0;flex:1}.vault-mini-copy small{display:block;font:600 9px/1.4 sans-serif;letter-spacing:.12em;color:#b7a27f}.vault-mini-copy strong,.vault-mini-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-mini-copy strong{font:500 15px/1.35 Georgia,serif}.vault-mini-copy span{font:12px/1.4 sans-serif;color:#d0c8b9}
.vault-mini-open{background:transparent!important;border:1px solid #746951!important;border-radius:50%!important;width:31px;height:31px;min-width:31px;padding:0!important;color:#f5efe3!important;cursor:pointer}
.vault-radio.is-mini .vault-radio-panel{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.vault-radio.is-mini .vault-radio-dial,.vault-radio.is-mini .vault-radio-polaroid{display:none!important}
.vault-radio.is-mini{pointer-events:none}
.vault-radio.is-playing:not(.is-mini) .vault-radio-panel{opacity:1;visibility:visible}
.vault-radio-panel-heading .vault-radio-minimize{margin-left:auto;width:auto!important;min-width:64px!important;padding:0 8px!important;font:10px sans-serif!important}
@media(max-width:650px){.vault-mini-player{right:10px;bottom:max(10px,env(safe-area-inset-bottom));padding:6px 9px 6px 6px;max-width:calc(100vw - 20px)}.vault-mini-disc{width:46px;height:46px}.vault-mini-disc::before{inset:13px}.vault-mini-copy strong{font-size:13px}}
@media(prefers-reduced-motion:reduce){.vault-mini-player.is-audible .vault-mini-disc{animation:none}}
@media print{.vault-mini-player{display:none!important}}
/* Dedicated controls and mobile safe-area sizing */
.vault-mini-player{z-index:10010;pointer-events:auto}
.vault-mini-exit{background:transparent!important;border:0!important;color:#f4e8d8!important;font-size:23px!important;line-height:1!important;cursor:pointer!important;padding:0 4px!important;min-width:24px!important}
.vault-mini-exit:hover,.vault-mini-exit:focus-visible{color:#fff!important;outline-color:#e2cda4}
.vault-mini-player .vault-mini-disc{animation-play-state:paused}
.vault-mini-player.is-audible .vault-mini-disc{animation-play-state:running}
.vault-radio.is-mini{pointer-events:none!important}
.vault-radio.is-mini .vault-radio-panel{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.vault-radio.is-mini .vault-radio-dial,.vault-radio.is-mini .vault-radio-polaroid{visibility:hidden!important;pointer-events:none!important}
.vault-radio-minimize{cursor:pointer!important}
@media(max-width:650px){.vault-mini-player{max-width:calc(100vw - 20px);gap:7px}.vault-mini-copy{max-width:calc(100vw - 170px)}}
