/* Rose Garland — karangan mawar watercolor dari klip yang dikirim, dengan cover foto satu layar penuh. */
body.theme-rose-garland{
  --radius:20px;--on-primary:#fff;
  --shadow:0 14px 34px -20px rgba(120,72,82,.28);
  position:relative;isolation:isolate;background:#fbf7f4;color:#4a3b3d;
}

/* Reduced motion menampilkan artwork statis ini; poster video menangani kegagalan pemutaran. */
body.theme-rose-garland::before{
  content:"";position:fixed;inset:0;z-index:54;pointer-events:none;
  background:url('/themes/rose-garland/rose-garland-poster.jpg?v=20261027-rose-garland') center/cover no-repeat;
  opacity:0;mix-blend-mode:normal;filter:brightness(1.05) saturate(1.12);
}

/* Klip 9:16 yang dikirim dipakai apa adanya sebagai ilustrasi bergerak di belakang undangan. */
body.theme-rose-garland .rose-garland-motion{
  position:fixed;z-index:55;inset:0;width:100vw;height:100vh;height:100dvh;
  object-fit:cover;object-position:center;opacity:.5;mix-blend-mode:normal;
  filter:brightness(1.05) saturate(1.12);pointer-events:none;
}

.theme-rose-garland .shell{position:relative;z-index:56}
.theme-rose-garland .main{background:transparent;background-image:none}
.theme-rose-garland .sec{background:transparent}
.theme-rose-garland .hero{background:linear-gradient(180deg,rgba(255,253,251,.5),rgba(251,247,244,.3))}

/* Cover foto penuh: foto undangan mengisi seluruh layar, karangan mawar tetap terlihat di tepinya. */
.theme-rose-garland .cover{color:#fff}
.theme-rose-garland.is-locked .shell{visibility:hidden}
.theme-rose-garland .cover__bg{
  background:linear-gradient(180deg,rgba(60,32,38,.18),rgba(60,32,38,.52)),var(--cover-img,none) center/cover no-repeat,#b85771;
  z-index:1
}
.theme-rose-garland .cover__inner{position:relative;z-index:3}
/* Karangan mawar bergerak tetap di atas foto cover, tetapi bagian tengah dibuat transparan
   dengan mask radial agar wajah pada foto depan tidak tertutup bunga. */
.theme-rose-garland .cover .rose-garland-cover-motion{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
  opacity:1;pointer-events:none;z-index:2;mix-blend-mode:multiply;
  -webkit-mask-image:radial-gradient(ellipse 48% 38% at 50% 46%,transparent 0%,transparent 46%,#000 88%);
  mask-image:radial-gradient(ellipse 48% 38% at 50% 46%,transparent 0%,transparent 46%,#000 88%)
}
.theme-rose-garland .cover__title,.theme-rose-garland .cover__date,
.theme-rose-garland .cover__label,.theme-rose-garland .cover__guest,
.theme-rose-garland .cover__to{color:#fff}
.theme-rose-garland .cover__title{text-shadow:0 2px 22px rgba(60,32,38,.55)}
.theme-rose-garland .cover__date{text-shadow:0 1px 14px rgba(60,32,38,.5)}
.theme-rose-garland .cover__guest small{color:rgba(255,255,255,.86)}

.theme-rose-garland .hero__title,.theme-rose-garland .person__nick,
.theme-rose-garland .closing__title,.theme-rose-garland .side__title{color:#a8495f}
.theme-rose-garland .person__photo{border-color:#fffdfb;outline-color:#b85771;box-shadow:var(--shadow)}
.theme-rose-garland .monogram{background:radial-gradient(circle at 32% 26%,#f7dfe3,#fffdfb 72%);color:#a8495f}
.theme-rose-garland .sec__title,.theme-rose-garland .event__name,
.theme-rose-garland .event__num,.theme-rose-garland .countdown b,
.theme-rose-garland .timeline__date{color:#a8495f}
.theme-rose-garland .event,.theme-rose-garland .quote__box,
.theme-rose-garland .card,.theme-rose-garland .countdown div,.theme-rose-garland .wish{
  background:rgba(255,253,251,.94);border:1px solid rgba(184,87,113,.2);
  box-shadow:var(--shadow);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)
}
.theme-rose-garland .btn--primary{background:#b85771;border-color:#a8495f;color:#fff;box-shadow:0 8px 20px -8px rgba(168,73,95,.4)}
.theme-rose-garland .btn--primary:hover{background:#a8495f}
.theme-rose-garland .btn--ghost{color:#a8495f;border-color:rgba(168,73,95,.45)}
.theme-rose-garland .cover .btn--primary{background:#b85771;border-color:#fff;color:#fff}
.theme-rose-garland .form input:not([type=radio]),.theme-rose-garland .form textarea,
.theme-rose-garland .form select{background:rgba(255,253,251,.96);color:#4a3b3d;border-color:rgba(184,87,113,.28)}
.theme-rose-garland .bottom-nav{background:rgba(255,253,251,.96);border-top:1px solid rgba(184,87,113,.2);z-index:70}
.theme-rose-garland .side:not([style]){background-color:rgba(251,247,244,.76);background-image:none;color:#4a3b3d}
.theme-rose-garland .side__overlay{position:relative;z-index:1;padding:28px 32px;border:1px solid rgba(184,87,113,.18);border-radius:20px;background:rgba(255,253,251,.8);backdrop-filter:blur(5px)}
.theme-rose-garland .side__label{color:#a8495f}
.theme-rose-garland .gift__qr{background:#fff}
.theme-rose-garland .toast{background:#a8495f;color:#fff}

@media(min-width:900px){
  body.theme-rose-garland .rose-garland-motion{left:50vw;right:auto;width:50vw;object-fit:cover;object-position:center;opacity:.46}
  body.theme-rose-garland::before{left:50vw;right:0;background-size:cover;background-position:center}
}
@media(max-width:480px){
  .theme-rose-garland .sec{padding-left:22px;padding-right:22px}
  .theme-rose-garland .cover__corner,.theme-rose-garland .corner{opacity:.3}
  body.theme-rose-garland .rose-garland-motion{opacity:.52}
}
@media(prefers-reduced-motion:reduce){
  body.theme-rose-garland .rose-garland-motion,
  .theme-rose-garland .cover .rose-garland-cover-motion{display:none!important}
  body.theme-rose-garland::before{opacity:.5;mix-blend-mode:normal}
  .theme-rose-garland .cover__bg{
    background:linear-gradient(180deg,rgba(60,32,38,.26),rgba(60,32,38,.62)),var(--cover-img,none) center/cover no-repeat,url('/themes/rose-garland/rose-garland-poster.jpg?v=20261027-rose-garland') center/cover no-repeat,#b85771
  }
  .theme-rose-garland *{scroll-behavior:auto!important}
}
