/* THE WEDDING VAULT / BLACK ROMANCE
   Additive presentation only. No changes to Supabase, forms, IDs or saving logic. */
:root{--romance-ink:#0a0a0a;--romance-brass:#c4aa7c;--romance-cream:#f4eee3}
/* Film texture is only applied to existing dark sections, not forms or light paper. */
.cinema-intro,.gate,.timeline.dark,.film-story.dark,.chapter-opener{
  position:relative;
  background-color:#0b0b0c;
  background-image:linear-gradient(110deg,rgba(0,0,0,.70),rgba(0,0,0,.52)),url("https://static.showit.com/1600/tmtgNEyDIUShdSF8mX1KVQ/shared/vertical_grain.png");
  background-repeat:no-repeat,repeat;
  background-position:center,center;
  background-size:cover,760px auto;
}
/* Darkroom styling on light paper photography only; retain existing image crop and layout. */
.paper figure.polaroid,.cream figure.polaroid,figure.polaroid.p1,figure.polaroid.p2{
  background:#111112!important;
  color:#f5eee5!important;
  border:1px solid #292929!important;
  box-shadow:0 12px 34px rgba(0,0,0,.28),0 2px 5px rgba(0,0,0,.18)!important;
}
figure.polaroid img{display:block;max-width:100%;object-fit:cover}
figure.polaroid figcaption,figure.polaroid .caption{color:#e6dacc!important}
/* Compact, optional vintage radio. Never a permanent full-page section. */
.vault-radio{position:fixed!important;right:clamp(10px,2vw,22px)!important;bottom:clamp(10px,2vw,22px)!important;left:auto!important;top:auto!important;width:auto!important;height:auto!important;display:flex!important;align-items:flex-end!important;gap:10px!important;z-index:80!important;pointer-events:none!important}
.vault-radio-dial{pointer-events:auto!important;position:relative!important;width:clamp(112px,14vw,174px)!important;max-width:36vw!important;min-height:0!important;aspect-ratio:1.5!important;transform:none!important;overflow:hidden!important}
.vault-radio-image{width:100%!important;height:100%!important;object-fit:contain!important}
.vault-radio-polaroid{display:none!important}
.vault-radio-panel{pointer-events:auto!important;position:fixed!important;right:clamp(10px,2vw,22px)!important;bottom:clamp(100px,13vw,150px)!important;left:auto!important;top:auto!important;width:min(550px,calc(100vw - 24px))!important;max-height:min(75dvh,690px)!important;overflow:auto!important;box-sizing:border-box!important;z-index:81!important}
.vault-radio:not(.is-playing) .vault-radio-panel{display:none!important}
.vault-radio-label{font-size:10px!important}
.vault-radio-label strong{font-size:11px!important}
@media(max-width:700px){
 .vault-radio{right:8px!important;bottom:8px!important}
 .vault-radio-dial{width:105px!important;max-width:105px!important}
 .vault-radio-panel{right:8px!important;bottom:94px!important;width:calc(100vw - 16px)!important;max-height:70dvh!important;padding:14px!important}
 .vault-radio-player iframe{max-width:100%!important}
}
@media(prefers-reduced-motion:reduce){.vault-radio *,figure.polaroid{animation:none!important;transition:none!important}}

/* Full-viewport cinematic entrance: restore fixed positioning overridden above. */
#cinemaIntro.cinema-intro {
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  display: grid;
  place-items: center;
  isolation: isolate;
  z-index: 1200;
}
#cinemaIntro .intro-broll {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
#cinemaIntro .intro-copy {
  position: relative;
  z-index: 5;
  max-width: calc(100vw - 36px);
}
@media (max-width: 700px) {
  #cinemaIntro.cinema-intro { min-height: 100svh !important; height: 100svh !important; height: 100dvh !important; }
  #cinemaIntro .intro-copy h1 { font-size: clamp(3.6rem, 15vw, 6.5rem); }
}
