/* Rose Drift — blush watercolor florals with the supplied petal-motion clip. */
body.theme-rose-drift{
  --radius:20px;--on-primary:#fff;
  --shadow:0 14px 34px -20px rgba(111,62,69,.3);
  position:relative;isolation:isolate;background:#f7f1e9;color:#493b3c;
}

/* Static poster remains as a graceful fallback when motion is reduced. */
body.theme-rose-drift::before{
  content:"";position:fixed;inset:0;z-index:54;pointer-events:none;
  background:url('/themes/rose-drift/rose-drift-poster.jpg') center/cover no-repeat;
  opacity:0;mix-blend-mode:normal;filter:brightness(1.08) saturate(1.25);
}

/* Keep the actual loop from the user's clip visible throughout the invitation. */
body.theme-rose-drift .rose-drift-motion{
  position:fixed;z-index:55;inset:0;width:100vw;height:100vh;height:100dvh;
  object-fit:cover;object-position:center;opacity:.46;mix-blend-mode:normal;
  filter:brightness(1.08) saturate(1.25);pointer-events:none;
}

.theme-rose-drift .shell{position:relative;z-index:56}
.theme-rose-drift .main{background:transparent;background-image:none}
.theme-rose-drift .sec{background:transparent}
.theme-rose-drift .hero{background:linear-gradient(180deg,rgba(255,250,246,.48),rgba(247,241,233,.3))}

/* Airy cover: retain an invitation's own cover photo when one is supplied. */
.theme-rose-drift .cover{background-color:rgba(247,241,233,.12);color:#493b3c}
.theme-rose-drift.is-locked .shell{visibility:hidden}
.theme-rose-drift .cover__bg{background-color:rgba(247,241,233,.24)}
.theme-rose-drift .cover__title,.theme-rose-drift .hero__title,
.theme-rose-drift .person__nick,.theme-rose-drift .closing__title,
.theme-rose-drift .side__title{color:#9f455a}
.theme-rose-drift .cover__label,.theme-rose-drift .cover__guest,
.theme-rose-drift .cover__to,.theme-rose-drift .cover__date{color:#5e4b4b}
.theme-rose-drift .cover__title,.theme-rose-drift .cover__date{ text-shadow:0 1px 12px rgba(255,250,246,.72) }
.theme-rose-drift .cover__frame,.theme-rose-drift .person__photo{
  border-color:#fffaf6;outline-color:#c45b70;box-shadow:var(--shadow)
}
.theme-rose-drift .monogram{background:radial-gradient(circle at 32% 26%,#f8e2e3,#fffaf6 72%);color:#a84d61}
.theme-rose-drift .sec__title,.theme-rose-drift .event__name,
.theme-rose-drift .event__num,.theme-rose-drift .countdown b,
.theme-rose-drift .timeline__date{color:#a84d61}
.theme-rose-drift .event,.theme-rose-drift .quote__box,
.theme-rose-drift .card,.theme-rose-drift .countdown div,.theme-rose-drift .wish{
  background:rgba(255,250,246,.94);border:1px solid rgba(196,91,112,.2);
  box-shadow:var(--shadow);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)
}
.theme-rose-drift .btn--primary{background:#c45b70;border-color:#a84d61;color:#fff;box-shadow:0 8px 20px -8px rgba(168,77,97,.42)}
.theme-rose-drift .btn--primary:hover{background:#ad4c62}
.theme-rose-drift .btn--ghost{color:#a84d61;border-color:rgba(168,77,97,.45)}
.theme-rose-drift .form input:not([type=radio]),.theme-rose-drift .form textarea,
.theme-rose-drift .form select{background:rgba(255,250,246,.96);color:#493b3c;border-color:rgba(196,91,112,.28)}
.theme-rose-drift .bottom-nav{background:rgba(255,250,246,.96);border-top:1px solid rgba(196,91,112,.2);z-index:70}
.theme-rose-drift .side:not([style]){background-color:rgba(247,241,233,.76);background-image:none;color:#493b3c}
.theme-rose-drift .side__overlay{position:relative;z-index:1;padding:28px 32px;border:1px solid rgba(196,91,112,.18);border-radius:20px;background:rgba(255,250,246,.78);backdrop-filter:blur(5px)}
.theme-rose-drift .side__label{color:#a84d61}
.theme-rose-drift .gift__qr{background:#fff}
.theme-rose-drift .toast{background:#a84d61;color:#fff}

@media(min-width:900px){
  body.theme-rose-drift .rose-drift-motion{left:50vw;right:auto;width:50vw;object-fit:cover;object-position:center;opacity:.42}
  body.theme-rose-drift::before{left:50vw;right:0;background-size:cover;background-position:center}
}
@media(max-width:480px){
  .theme-rose-drift .sec{padding-left:22px;padding-right:22px}
  .theme-rose-drift .cover__corner,.theme-rose-drift .corner{opacity:.3}
  body.theme-rose-drift .rose-drift-motion{opacity:.48}
}
@media(prefers-reduced-motion:reduce){
  body.theme-rose-drift .rose-drift-motion{display:none!important}
  body.theme-rose-drift::before{opacity:.48;mix-blend-mode:normal}
  .theme-rose-drift *{scroll-behavior:auto!important}
}
