/* Wedding Vault v5.0.2 · The Wedding Vault — After Hours */
.vault-radio-panel{
  position:relative;
  width:min(780px,calc(100vw - 164px));max-height:min(88svh,760px);overflow:auto;
  padding:18px;background:
    linear-gradient(135deg,rgba(255,255,255,.025),transparent 38%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,transparent 1px 4px),#0c0c0b;
  scrollbar-color:#7e6945 #171612
}
.vault-radio-panel::before{content:"";position:absolute;inset:7px;pointer-events:none;border:1px solid rgba(211,189,137,.18)}
.vault-radio-panel-heading{position:relative;padding:5px 5px 14px}
.vault-radio-panel-heading small{letter-spacing:.3em}
.vault-radio-panel-heading strong{font-size:1.65rem;font-style:italic;letter-spacing:.02em}
.vault-now-playing{display:grid;grid-template-columns:190px 1fr;gap:26px;align-items:center;padding:22px 10px 20px}
.vault-turntable{position:relative;width:180px;height:150px;border:1px solid rgba(211,189,137,.45);background:linear-gradient(145deg,#39281d,#1c1510 62%,#0c0b09);box-shadow:inset 0 0 0 5px rgba(0,0,0,.25),0 14px 32px rgba(0,0,0,.35)}
.vault-record{position:absolute;left:18px;top:10px;width:130px;height:130px;border-radius:50%;background:repeating-radial-gradient(circle,#111 0 2px,#292724 3px 4px,#10100f 5px 7px);box-shadow:0 10px 20px rgba(0,0,0,.5)}
.vault-record::after{content:"";position:absolute;inset:43px;border-radius:50%;background:radial-gradient(circle,#d9c394 0 6%,#5a1d1f 7% 58%,#341012 59% 100%);box-shadow:0 0 0 1px rgba(244,225,177,.38)}
.vault-record i{position:absolute;z-index:2;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:#dfcfaa;transform:translate(-50%,-50%)}
.vault-tonearm{position:absolute;right:15px;top:19px;width:8px;height:104px;border-radius:9px;background:linear-gradient(90deg,#725e3d,#d1bb87,#514125);transform:rotate(13deg);transform-origin:50% 10%;box-shadow:0 2px 6px #000}
.vault-radio.is-playing .vault-record{animation:vaultRecordSpin 3.5s linear infinite}
@keyframes vaultRecordSpin{to{transform:rotate(360deg)}}
.vault-now-copy small,.vault-now-copy strong{display:block}
.vault-now-copy small{color:#bda16d;font:600 9px/1 "DM Sans",sans-serif;letter-spacing:.28em}
.vault-now-copy strong{margin-top:8px;color:#f1eadf;font:italic 2.2rem/.95 "Cormorant Garamond",serif}
.vault-now-copy p{max-width:440px;margin:13px 0 0;color:#c9c1b5;font:400 .88rem/1.6 "DM Sans",sans-serif}
.vault-vinyl-shelf{display:grid;grid-template-columns:repeat(7,minmax(92px,1fr));gap:9px;padding:4px 4px 18px;overflow-x:auto;scroll-snap-type:x proximity}
.vault-record-choice{position:relative!important;min-width:92px!important;min-height:126px!important;padding:0 10px 0 0!important;border:0!important;background:transparent!important;box-shadow:none!important;text-align:left!important;scroll-snap-align:start;isolation:isolate}
.vault-record-sleeve{position:absolute;z-index:2;inset:0 10px 0 0;display:flex;flex-direction:column;justify-content:flex-end;padding:10px 8px;border:1px solid rgba(247,232,199,.25);overflow:hidden;box-shadow:0 9px 16px rgba(0,0,0,.3);transition:transform .24s ease,border-color .24s ease}
.vault-record-sleeve::before{content:"✦";position:absolute;left:8px;top:7px;color:rgba(244,226,184,.65);font-size:10px}
.vault-record-sleeve::after{content:"";position:absolute;inset:5px;border:1px solid rgba(250,235,198,.14);pointer-events:none}
.vault-record-choice:nth-child(1) .vault-record-sleeve{background:linear-gradient(145deg,#254038,#111b18 70%)}
.vault-record-choice:nth-child(2) .vault-record-sleeve{background:linear-gradient(145deg,#512b3e,#170e14 70%)}
.vault-record-choice:nth-child(3) .vault-record-sleeve{background:linear-gradient(145deg,#b9a889,#4b2020 72%)}
.vault-record-choice:nth-child(4) .vault-record-sleeve{background:linear-gradient(145deg,#1c2945,#0a0d16 70%)}
.vault-record-choice:nth-child(5) .vault-record-sleeve{background:linear-gradient(145deg,#6a4b31,#243426 72%)}
.vault-record-choice:nth-child(6) .vault-record-sleeve{background:linear-gradient(145deg,#2d2b27,#7a4b28 120%)}
.vault-record-choice:nth-child(7) .vault-record-sleeve{background:linear-gradient(145deg,#203f41,#382440 90%)}
.vault-record-sleeve small,.vault-record-sleeve strong,.vault-record-sleeve i{position:relative;z-index:1;display:block;color:#f1eadf!important}
.vault-record-sleeve small{margin-bottom:auto;font:600 7px/1 "DM Sans",sans-serif;letter-spacing:.18em}
.vault-record-sleeve strong{font:500 .9rem/.9 "Cormorant Garamond",serif}
.vault-record-sleeve i{margin-top:6px;font:500 5px/1 "DM Sans",sans-serif;letter-spacing:.18em;opacity:.65}
.vault-mini-disc{position:absolute;z-index:1;right:0;top:18px;width:82px;height:82px;border-radius:50%;background:repeating-radial-gradient(circle,#111 0 2px,#2e2c29 3px 4px,#0d0d0c 5px 7px);transition:transform .28s ease,right .28s ease}
.vault-mini-disc::after{content:"";position:absolute;inset:30px;border-radius:50%;background:#9e8251;box-shadow:0 0 0 6px #401d1e}
.vault-record-choice:hover .vault-record-sleeve,.vault-record-choice:focus-visible .vault-record-sleeve{transform:translateY(-4px);border-color:#d3bd89}
.vault-record-choice.is-active .vault-record-sleeve{border-color:#e4cc95;box-shadow:0 0 0 1px rgba(228,204,149,.38),0 12px 22px rgba(0,0,0,.5)}
.vault-record-choice.is-active .vault-mini-disc{right:-10px;transform:rotate(16deg)}
.vault-radio.is-playing .vault-record-choice.is-active .vault-mini-disc{animation:vaultMiniSpin 4s linear infinite}
@keyframes vaultMiniSpin{to{transform:rotate(376deg)}}
.vault-radio-player{padding-top:13px;border-top:1px solid rgba(211,189,137,.24)}
.vault-radio-player iframe{height:152px;border-radius:2px!important}

@media(max-width:800px){
  .vault-radio-panel{width:min(620px,calc(100vw - 135px))}
  .vault-now-playing{grid-template-columns:145px 1fr;gap:18px}
  .vault-turntable{width:140px;height:120px}.vault-record{width:100px;height:100px}.vault-record::after{inset:33px}.vault-tonearm{height:84px}
  .vault-now-copy strong{font-size:1.8rem}
  .vault-vinyl-shelf{grid-template-columns:repeat(7,104px)}
}
@media(max-width:650px){
  .vault-radio-panel{right:0;bottom:98px;width:calc(100vw - 20px);max-height:calc(100svh - 120px);padding:14px}
  .vault-now-playing{grid-template-columns:96px 1fr;gap:13px;padding:16px 5px}
  .vault-turntable{width:96px;height:86px}.vault-record{left:9px;top:8px;width:70px;height:70px}.vault-record::after{inset:23px}.vault-tonearm{right:8px;top:12px;width:5px;height:59px}
  .vault-now-copy strong{font-size:1.45rem}.vault-now-copy p{font-size:.75rem;line-height:1.45;margin-top:8px}
  .vault-vinyl-shelf{grid-template-columns:repeat(7,98px);gap:8px;padding-bottom:14px}
  .vault-record-choice{min-width:98px!important;min-height:120px!important}
  .vault-radio-player iframe{height:152px}
}
@media(prefers-reduced-motion:reduce){.vault-radio.is-playing .vault-record,.vault-radio.is-playing .vault-record-choice.is-active .vault-mini-disc{animation:none}}
@media print{.vault-radio{display:none!important}}
