/* ==========================================================
   DInvite — Tema "Adat Bali"
   Krem, emas prada, dan merah: candi bentar, meru bertingkat, bunga kamboja, dan kain poleng.
   ========================================================== */
.t-bali {
    --bg: #fbf6ec; --bg-2: #f3e9d3; --card: #fffdf7; --ink: #3a2614; --muted: #7d6243;
    --accent: #a0761f; --accent-2: #c99a3b; --on-accent: #fffaf0; --line: rgba(160,118,31,.3);
    --hero-rgb: 251,246,236; --tint-a: .84; --hero-ink: #3a2614;
    --pattern: url(../../img/themes/bali/pola.svg) 0 0 / 60px 60px;
    color-scheme: light;
}

/* Huruf: nama bersambung yang luwes, judul klasik yang ringan */
.t-bali .names { font-family: 'Pinyon Script', 'Great Vibes', cursive; font-weight: 400; color: #6b2a1a; }
.t-bali .names i { font-family: 'Cormorant Garamond', serif; font-style: italic; color: #a3221c; }
.t-bali .names--md { color: #6b2a1a; }
.t-bali .kicker { font-family: 'Marcellus', serif; font-weight: 600; letter-spacing: .3em; color: var(--accent); }
.t-bali .sec__title { font-family: 'Marcellus', serif; font-weight: 600; font-size: 1.5rem; letter-spacing: .04em; color: #6b2a1a; }
.t-bali .sec__title::after { content: ''; display: block; width: 210px; height: 22px; margin: .6rem auto 0; background: url(../../img/themes/bali/pembatas.svg) center / contain no-repeat; }
.t-bali .cover__date, .t-bali .hero__date, .t-bali .aside__date, .t-bali .thanks { font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 600; }
.t-bali .cover__to strong { font-family: 'Cormorant Garamond', serif; font-weight: 600; }
.t-bali .quote { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.22rem; line-height: 1.7; }
.t-bali .event h3 { font-family: 'Cormorant Garamond', serif; font-weight: 600; font-size: 1.75rem; color: #6b2a1a; }
.t-bali .countdown b { font-family: 'Cormorant Garamond', serif; color: #6b2a1a; }
.t-bali .amp { font-family: 'Great Vibes', cursive; color: #a3221c; }

/* Bingkai, pita & ilustrasi */
.t-bali .tm-band { height: 22px; background-image: url(../../img/themes/bali/pita.svg); background-size: 24px 22px; }
.t-bali .cover::before { inset: 24px; border: 1.5px solid var(--line); border-radius: 14px; }
.t-bali .cover::after { inset: 32px; border-radius: 14px; }
.t-bali .cover .tm-house { width: min(250px, 64vw); }
.t-bali .tm-house { filter: drop-shadow(0 14px 22px rgba(0,0,0,.22)); }
.t-bali .cover, .t-bali .hero, .t-bali .aside {
    overflow: hidden;
    background:
        radial-gradient(ellipse at 50% 36%, rgba(255,252,240,calc(var(--tint-a) * .85)), transparent 66%),
        linear-gradient(var(--hero-tint), var(--hero-tint)),
        var(--cover, none) center / cover no-repeat,
        var(--bg);
}
.t-bali .tm-frame::before { content: ''; position: absolute; inset: 0; background: var(--pattern); opacity: calc(var(--tint-a) * 1.1); }

/* Kartu & tombol */
.t-bali .event, .t-bali .gift, .t-bali .rsvp, .t-bali .wish, .t-bali .qr-card { border: 1px solid var(--line); background: var(--card); border-radius: 16px; box-shadow: inset 0 0 0 5px var(--card), inset 0 0 0 6px rgba(201,154,59,.35), 0 14px 30px -20px rgba(90,60,20,.45); }
.t-bali .countdown div { border-radius: 14px; background: var(--card); }
.t-bali .ibtn { border-radius: 999px; }
.t-bali .ibtn--solid { background: linear-gradient(180deg, #a3221c, #7c1813); border-color: #7c1813; color: #fff8ea; box-shadow: 0 10px 22px -12px rgba(0,0,0,.55); }
.t-bali .ibtn--solid:hover { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.t-bali .sec--tint { background-color: var(--bg-2); background-image: var(--pattern); }
.t-bali .divider { background: var(--accent); }
.t-bali .ifoot { border-top: 0; background: url(../../img/themes/bali/pita.svg) top / 24px 22px repeat-x; padding-top: 2.8rem; }
