/* All children's invitations fill the viewport; controls float over the artwork. */
.birthday-page,.poster-kids-page{--kid-safe-bottom:env(safe-area-inset-bottom,0px)}
.birthday-page .birthday-stage,.birthday-page.has-demo-bar .birthday-stage,.poster-kids-page .poster-kids-stage,.poster-kids-page.poster-demo .poster-kids-stage{inset:0}
.birthday-page .birthday-card,.birthday-page.is-landscape .birthday-card,.poster-kids-page .celebration-kids-frame{border-radius:0;box-shadow:none}
.birthday-page .birthday-demo-bar,.poster-kids-page .poster-demo-bar{background:transparent;border:0;min-height:38px;pointer-events:none}
.birthday-page .birthday-demo-bar>a,.birthday-page .birthday-demo-bar form,.poster-kids-page .poster-demo-bar>a,.poster-kids-page .poster-demo-bar form{pointer-events:auto;background:color-mix(in srgb,var(--kid-paper,var(--poster-paper)) 86%,transparent);border-radius:99px;padding:5px 10px;backdrop-filter:blur(8px);box-shadow:0 1px 8px #00000008}
.birthday-page .birthday-opening,.birthday-page.has-demo-bar .birthday-opening{inset:0}
.birthday-page .birthday-footer,.poster-kids-page .poster-kids-footer{position:fixed;inset:auto 8px max(5px,env(safe-area-inset-bottom,0px));z-index:8;min-height:30px;padding:0;gap:8px;pointer-events:none;background:none}
.birthday-page .birthday-footer .invitation-promo,.poster-kids-page .poster-kids-footer .invitation-promo{pointer-events:auto;display:inline-flex;flex:0 1 auto;gap:7px;min-height:30px;padding:3px 9px!important;border-radius:99px;background:color-mix(in srgb,var(--kid-paper,var(--poster-paper)) 78%,transparent);color:var(--kid-ink,var(--poster-ink));backdrop-filter:blur(8px);font-size:8px;box-shadow:0 1px 7px #00000009}
.birthday-page .birthday-footer .invitation-promo img,.poster-kids-page .poster-kids-footer .invitation-promo img{width:49px!important;height:auto;max-width:none}
.birthday-page .birthday-footer .invitation-promo span,.poster-kids-page .poster-kids-footer .invitation-promo span{font-size:8px!important;max-width:154px;line-height:1.4}
.birthday-page .birthday-footer>button,.poster-kids-page .poster-kids-footer>button{pointer-events:auto;flex:0 0 30px;min-width:30px;max-width:30px;width:30px;height:30px;min-height:30px;padding:0;border:0;border-radius:50%;background:color-mix(in srgb,var(--kid-paper,var(--poster-paper)) 82%,transparent);color:var(--kid-ink,var(--poster-ink));font-size:12px;line-height:1;opacity:1;backdrop-filter:blur(8px)}
.birthday-page .birthday-actions{bottom:calc(var(--kid-overlay-space,50px) + 4px)}
.birthday-page:not(.is-landscape) .birthday-mascot{bottom:calc(var(--kid-overlay-space,50px) + 65px)}
.birthday-page:not(.is-landscape) .birthday-photo{bottom:calc(var(--kid-overlay-space,50px) + 96px)}
.birthday-page:not(.is-landscape) .birthday-art-ground{bottom:calc(var(--kid-overlay-space,50px) + 74px)}
.poster-kids-page .poster-kids-stage{z-index:0}
.poster-kids-page .celebration-poster{outline:none}
.poster-kids-page .poster-background{object-fit:cover}
.poster-kids-page .poster-kids-actions{z-index:6;bottom:calc(43px + env(safe-area-inset-bottom,0px))}
.poster-kids-page .poster-kids-actions a{background:color-mix(in srgb,var(--poster-ink) 94%,transparent);backdrop-filter:blur(8px)}
.poster-kids-page .poster-kids-actions a:first-child{background:color-mix(in srgb,var(--poster-paper) 82%,transparent)}
.poster-kids-page .poster-lion-top{left:calc(50% - 257.5px)}
.poster-kids-page .poster-lavic:not(.poster-other-friend):not(.poster-has-photo) .poster-friend{left:calc(50% - 240px)}
.poster-kids-page .poster-lavic.poster-requires-rsvp:not(.poster-other-friend) .poster-friend{left:calc(50% - 196.5px)}
.poster-kids-page .poster-avion .poster-rsvp{top:auto;bottom:calc(var(--poster-overlay-space,100px) + 4px)}
.poster-kids-page .poster-avion.poster-requires-rsvp .poster-note{top:auto;bottom:calc(var(--poster-overlay-space,100px) + 40px)}
.poster-kids-page .poster-avion.poster-requires-rsvp .poster-kids-details{top:69%}
.poster-kids-short .poster-avion .poster-plane{top:5%;height:23%}
.poster-kids-short .poster-avion .poster-kids-invite{top:29%}
.poster-kids-short .poster-avion .poster-name{top:34%}
.poster-kids-short .poster-avion .poster-ribbon{top:48%}
.poster-kids-short .poster-avion .poster-age-caption{top:51%}
.poster-kids-short .poster-avion .poster-kids-details,.poster-kids-short .poster-avion.poster-requires-rsvp .poster-kids-details{top:59%}
.poster-kids-short .poster-avion .poster-note{top:auto;bottom:calc(var(--poster-overlay-space,100px) + 40px)}
.poster-kids-wide .poster-avion .poster-plane{left:3%;top:12%;width:40%;height:58%}
.poster-kids-wide .poster-avion .poster-name{left:47%;top:19%;width:46%}
.poster-kids-wide .poster-avion .poster-kids-invite{left:47%;top:12%;width:46%}
.poster-kids-wide .poster-avion .poster-ribbon{left:47%;top:39%;width:46%}
.poster-kids-wide .poster-avion .poster-age-caption{left:47%;top:43%;width:46%}
.poster-kids-wide .poster-avion .poster-kids-details,.poster-kids-wide .poster-avion.poster-requires-rsvp .poster-kids-details{left:47%;top:55%;width:46%}
.poster-kids-wide .poster-avion .poster-note,.poster-kids-wide .poster-avion .poster-rsvp{left:47%;width:46%}
.poster-kids-wide .poster-avion .poster-child-photo{left:18%;top:58%}
@media(prefers-reduced-motion:reduce){.birthday-page .birthday-demo-bar a,.poster-kids-page .poster-demo-bar a{transition:none}}
.birthday-page.has-demo-bar.is-landscape .birthday-text{top:55px}
.poster-kids-page *{box-sizing:border-box}
.poster-kids-page .poster-avion .poster-note{top:auto;bottom:calc(var(--poster-overlay-space,100px) + 40px)}
.poster-kids-page .poster-lavic .poster-note{top:58%}
.poster-kids-page .poster-lavic:not(.poster-other-friend):not(.poster-has-photo) .poster-friend{bottom:-45px}
.poster-kids-page .poster-lavic.poster-requires-rsvp:not(.poster-other-friend) .poster-friend{bottom:-20px}
.poster-kids-page .poster-lavic.poster-has-photo:not(.poster-other-friend) .poster-friend{bottom:-60px}
.poster-kids-page .poster-lavic .poster-child-photo{bottom:calc(var(--poster-overlay-space,100px) + 26px)}
