.ruang-root{--paper:#f6f0ff;--soft:#e5def6;--ink:#201a36;--muted:#635375;--accent:#7c2468;--on-accent:#f6f0ff;--line:#9987ad;--pop:#ff95ce;--cool:#a5e5f4;--mint:#c6f2d6;--stage:#15142c;--stage-ink:#f6f0ff;--deep:#252140}.ruang-root .r90-scene{background:radial-gradient(ellipse at 50% 30%, var(--deep), var(--stage) 70%)}.ruang-root .r90-opening-names{letter-spacing:-.07em}.ruang-root .r90-opening-art{max-width:285px}.ruang-root .r90-guest-pass{border:2px solid var(--pop);box-shadow:6px 6px 0 var(--accent);border-radius:18px 18px 4px 4px}.ruang-root .r90-guest-pass .r90-button{background:var(--stage);color:var(--paper);border-radius:999px}.ruang-root .r90-hero-names{text-shadow:3px 3px 0 var(--accent);letter-spacing:-.07em}.ruang-root .r90-hero-photo{background:conic-gradient(from 40deg, var(--paper), var(--cool), var(--pop), var(--mint), var(--paper));border-color:var(--paper);border-radius:999px;width:88%;padding:10px}.ruang-root .r90-hero-photo-inner{border-radius:999px}.ruang-root .r90-hero-photo figcaption{background:var(--stage);color:var(--paper);border-radius:999px;padding:7px;position:absolute;bottom:23px;left:8%;right:8%}.ruang-root .r90-hero-object{width:130px;top:-26px;bottom:auto;right:-10px}.ruang-root .r90-hero-visual{padding-bottom:16px}.ruang-root .r90-countdown-cell{border-color:var(--pop);background:var(--deep);color:var(--paper);border-radius:999px;min-height:83px}.ruang-root .r90-section{background:var(--paper)}.ruang-root .r90-section:before{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 12%, transparent) 1px, transparent 1.2px) 0 0/12px 12px;opacity:.7;-webkit-mask-image:linear-gradient(#0000,#000 100px calc(100% - 100px),#0000);mask-image:linear-gradient(#0000,#000 100px calc(100% - 100px),#0000)}.ruang-root .r90-section-heading h2{letter-spacing:-.065em}.ruang-root .r90-section-story,.ruang-root .r90-section-rsvp{background:var(--soft)}.ruang-root .r90-section-story:before{background:repeating-radial-gradient(ellipse at -30% 10%, transparent 0 35px, color-mix(in srgb, var(--accent) 10%, transparent) 36px 37px, transparent 38px 58px)}.ruang-root .r90-person-frame{border:2px solid var(--ink);box-shadow:5px 5px 0 var(--accent);border-radius:120px 120px 8px 8px;padding-top:25px}.ruang-root .r90-person-photo{aspect-ratio:.86;border-radius:100px 100px 4px 4px}.ruang-root .r90-pass-head{justify-content:center;gap:14px}.ruang-root .r90-person:nth-child(2n) .r90-person-frame{background:var(--cool)}.ruang-root .r90-story-number{background:var(--paper);border:1px solid var(--accent);border-radius:50%;place-items:center;width:36px;height:36px;font-size:20px;line-height:1;display:grid}.ruang-root .r90-ticket{border:2px solid var(--ink);box-shadow:5px 5px 0 var(--accent)}.ruang-root .r90-ticket-top{background:var(--pop)}.ruang-root .r90-ticket:nth-child(2n) .r90-ticket-top{background:var(--cool)}.ruang-root .r90-ticket-mark{background:radial-gradient(circle, var(--accent) 0 4px, transparent 4.5px) 0 0/18px 18px;height:18px}.ruang-root .r90-gallery{background:var(--stage);border-radius:8px;gap:14px 10px;padding:14px}.ruang-root .r90-gallery-item{border-color:var(--paper)}.ruang-root .r90-response{box-shadow:5px 5px 0 var(--accent)}.ruang-root .r90-closing-content>:is(p,blockquote){position:relative}.ruang-root .r90-verse{background:color-mix(in srgb, var(--stage) 85%, transparent);border-radius:10px;padding-inline:15px}@keyframes ruang-float{0%{transform:translateY(-5px)}to{transform:translateY(5px)}}@keyframes ruang-rock{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}@keyframes ruang-glint{0%,to{opacity:.35}50%{opacity:1}}.ruang-ball-float{animation:7s ease-in-out infinite alternate ruang-float}.ruang-ball-rock{transform-origin:50% 10%;animation:9s ease-in-out infinite alternate ruang-rock}.ruang-glint{animation:5s ease-in-out infinite ruang-glint}
