/* Pesta Ceria: balon, konfeti, kartu bergaris tebal untuk anak */
:root {
  --accent: #ff5d73; --b1: #4cc9f0; --b2: #ffd23f; --b3: #8ac926;
  --bg: #fff8ea; --bg-alt: #ffeccc; --ink: #2b2d42; --muted: #5e6077; --card: #ffffff;
  --line: color-mix(in srgb, var(--ink) 12%, transparent);
  --confetti: radial-gradient(circle, var(--accent) 2.5px, transparent 3px) 0 0 / 46px 46px,
              radial-gradient(circle, var(--b1) 2.5px, transparent 3px) 23px 15px / 46px 46px,
              radial-gradient(circle, var(--b2) 3px, transparent 3.5px) 12px 30px / 46px 46px,
              radial-gradient(circle, var(--b3) 2px, transparent 2.5px) 34px 38px / 46px 46px;
  --cover-bg: var(--confetti), var(--bg);
  --cover-ink: var(--ink);
  --f-display: "Fredoka", "Trebuchet MS", sans-serif;
  --f-script: "Fredoka", "Trebuchet MS", sans-serif;
  --f-body: "Nunito", system-ui, sans-serif;
  --title-size: clamp(3rem, 14vw, 4.4rem);
  --r: 24px;
}
.inv-title { font-weight: 700; color: var(--accent); text-shadow: 3px 3px 0 var(--b2); }
.inv-label { font-weight: 700; letter-spacing: .1em; color: var(--b1); }
.inv-cover-inner, .inv-aside-inner { background: var(--card); border-radius: 32px; padding: 30px 24px; border: 3px dashed var(--b2); }
.inv-orn-top { width: min(200px, 64%); }
.inv-name { font-weight: 700; color: var(--ink); }
.inv-sec-title { font-weight: 700; color: var(--accent); }
.inv-amp { font-weight: 700; }
.inv-card { border: 3px solid var(--ink); box-shadow: 6px 6px 0 var(--b2); }
.inv-countdown div { border: 2px solid var(--ink); box-shadow: 3px 3px 0 var(--b1); }
.inv-btn { border-color: var(--ink); box-shadow: 3px 3px 0 var(--ink); font-weight: 700; }
.inv-btn-ghost { background: var(--card); color: var(--ink); }
.inv-avatar { box-shadow: 0 0 0 5px var(--b1), 0 0 0 10px var(--b2); border-color: var(--card); }
.inv-sec:nth-of-type(even) { background: var(--bg-alt); }
.inv-sec:nth-of-type(even)::before { content: ""; position: absolute; inset: 0 0 auto; height: 14px; background: var(--confetti); opacity: .9; }
.inv-quote { color: var(--ink); font-style: normal; }
