/* One Little Wish (BirthdayBlowOutCandles): greeting and the unrolling wish scroll. */
@font-face{font-family:WishHand;src:url('../runtime/fonts/caveat-latin.woff2') format('woff2');font-weight:400 700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:WishHand;src:url('../runtime/fonts/caveat-latin-ext.woff2') format('woff2');font-weight:400 700;font-display:swap;unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

body[data-experience=object] .scene-heading h1.cupcake-greeting{opacity:.9;line-height:1.2;margin-inline:auto}
.cupcake-greeting span{display:block}
.cupcake-greeting span:first-child{font-size:clamp(28px,4vw,40px)}
.cupcake-greeting span:last-child{font-size:clamp(18px,2.2vw,24px);font-style:normal;opacity:.78;margin-top:2px}

.wish-scroll{border:0;padding:0;background:transparent;max-width:min(460px,calc(100vw - 32px));width:100%;max-height:calc(100svh - 32px);overflow:visible;color:#3b2d22}
.wish-scroll::backdrop{background:#070d14b8;backdrop-filter:blur(3px)}
.scroll-sheet{display:flex;flex-direction:column;align-items:center}
.scroll-rod{position:relative;z-index:1;display:block;width:calc(100% + 18px);height:24px;border-radius:12px;background:linear-gradient(#c7ae84,#fbf0d9 38%,#f3e3c3 55%,#b59866);box-shadow:0 6px 12px #0000004d}
.scroll-rod::before,.scroll-rod::after{content:'';position:absolute;top:3px;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,#d8c092 0 2px,#f4e6c8 2px 4px,#c9ae7f 4px 5px,#f4e6c8 5px 7px,#bf9f6e 7px 9px)}
.scroll-rod::before{left:-3px}.scroll-rod::after{right:-3px}
.scroll-paper{width:100%;margin:-12px 0;padding:34px 0;background:linear-gradient(90deg,#e3cfa9,#f8eed8 7%,#fcf5e5 50%,#f8eed8 93%,#e3cfa9);box-shadow:inset 0 14px 16px -12px #6d4f2a66,inset 0 -14px 16px -12px #6d4f2a66}
.scroll-writing{max-height:calc(100svh - 190px);overflow:auto;padding:4px 30px 6px;font-family:WishHand,'Segoe Print','Bradley Hand',cursive;text-align:center;overflow-wrap:anywhere}
.scroll-writing h2{margin:0 0 12px;font-size:clamp(32px,8vw,40px);font-weight:700;line-height:1.05;color:#7a3a2c}
.scroll-writing h2:focus{outline:none}
.scroll-message{margin:0;font-size:clamp(22px,5.6vw,26px);line-height:1.35;white-space:pre-line}
.scroll-signature{margin:18px 0 0;font-size:24px;line-height:1.15;text-align:right;color:#5b4331}
.scroll-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 22px;margin-top:14px}
.scroll-actions button{min-height:44px;padding:8px 4px;border:0;border-bottom:1px solid #f4eadb55;border-radius:0;color:#f4eadb;font-size:16px}
.scroll-actions button:hover,.scroll-actions button:focus-visible{border-bottom-color:#ddad59;color:#fff7e8}
.scroll-actions button:focus-visible{outline:2px solid #ddad59;outline-offset:3px}
