/* Canva-inspired native, editable layouts. Pixel artwork never contains customer text. */
.celebration-frame{position:relative;width:100%;overflow:hidden;isolation:isolate;background:var(--paper,#111)}.celebration-poster{position:absolute;top:0;left:0;width:420px;transform:scale(var(--poster-scale,1));transform-origin:top left;overflow:hidden;color:var(--poster-ink,#f3dc9a);font-family:'Pozivnice Cormorant Garamond',Georgia,serif;text-align:center;background:#0e0e0e;isolation:isolate}.celebration-poster *{box-sizing:border-box}.celebration-poster p,.celebration-poster h1{margin:0}.poster-background,.poster-particles{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:-2}.poster-particles{z-index:1}.celebration-poster>p,.celebration-poster>h1,.celebration-poster>div:not(.poster-particles){z-index:2}.celebration-poster .poster-name{position:absolute;left:8%;width:84%;max-height:105px;padding:5px 8px;font-family:var(--poster-name-font);font-weight:400;line-height:1.2;overflow-wrap:anywhere;letter-spacing:0}.celebration-poster .poster-name span{font:inherit;line-height:inherit;display:block;padding:0!important}.poster-metal{background:linear-gradient(135deg,#a27b2b 2%,#f9e8ab 29%,#caa24f 47%,#fff6c9 53%,#bd9137 72%,#f9e8b1);color:transparent;background-clip:text;-webkit-background-clip:text}.poster-date,.poster-place,.poster-age-caption,.poster-note{position:absolute;left:9%;width:82%;line-height:1.4}.poster-date{font:500 27px/1.35 'Pozivnice Cormorant Garamond',serif}.poster-date small,.poster-place small{display:block;font-family:'Pozivnice Manrope',sans-serif;font-size:11px;letter-spacing:.04em;line-height:1.6;margin-top:8px}.poster-place{font-size:17px;overflow-wrap:anywhere}.poster-note{font-size:13px}.poster-age-caption{font:500 11px/1.6 'Pozivnice Manrope',sans-serif;letter-spacing:.12em}.poster-personal-photo{position:absolute;z-index:4;right:20px;bottom:22px;width:58px;height:69px;padding:4px;border:0;background:#fff;transform:rotate(6deg);cursor:pointer;box-shadow:0 5px 15px #0003}.poster-personal-photo img,.poster-child-photo img{width:100%;height:100%;object-fit:cover;object-position:var(--photo-x) var(--photo-y)}
.poster-gold{color:#dcc485;background:radial-gradient(ellipse at 70% 80%,#ffffff0b,transparent 60%),linear-gradient(135deg,#10100f,#161614 65%,#0b0b0b)}.poster-gold-number{position:absolute;top:4%;left:13%;width:74%;height:39%;display:flex;flex-direction:column;align-items:center;justify-content:center}.poster-gold-number b{font:400 125px/.95 'Pozivnice Great Vibes',cursive;font-variant-numeric:lining-nums;width:100%;padding:0 10px 8px}.poster-gold-number em{font:400 50px/.9 'Pozivnice Great Vibes',cursive;margin-top:-3px}.poster-gold-title{position:absolute;top:44%;width:100%;font:500 29px/1.4 'Pozivnice Cormorant Garamond',serif;letter-spacing:.2em}.poster-gold-title small{display:block;font:400 11px/1.8 'Pozivnice Manrope',sans-serif;letter-spacing:.15em;margin-top:3px}.poster-gold .poster-name{top:65%;color:#f4eddb}.poster-gold .poster-date{top:76%;color:#f4eddb}.poster-gold .poster-place{top:89%;font-size:14px}.poster-gold-shimmer .poster-gold-number b{background-size:190% 100%;animation:poster-gold-shine 7s ease-in-out infinite}
.poster-portrait{color:#242424;background:#fff}.poster-portrait-kicker{position:absolute;top:6%;width:100%;font:400 11px 'Pozivnice Manrope',sans-serif;letter-spacing:.14em}.poster-photo-age{position:absolute;top:12%;left:7%;width:86%;height:48%;display:flex;align-items:center;justify-content:center;font:800 280px/1 'Pozivnice Manrope',sans-serif;letter-spacing:-.065em;padding-right:.065em;background-color:#222;background-size:cover;background-position:var(--photo-x) var(--photo-y);-webkit-background-clip:text;background-clip:text;color:transparent;filter:grayscale(1)}.poster-welcome{position:absolute;top:62%;width:100%;font:400 11px 'Pozivnice Manrope',sans-serif;letter-spacing:.12em}.poster-portrait .poster-name{top:66%;color:#161616}.poster-portrait .poster-age-caption{top:80%;font-size:10px}.poster-portrait .poster-date{top:86%;font:400 12px 'Pozivnice Manrope',sans-serif;letter-spacing:.12em}.poster-portrait .poster-place{top:91%;font-size:12px}.poster-portrait .poster-place small{font-size:9px;margin-top:3px}
.poster-pink{background:#fff9f5;color:#9b4666}.poster-pink-kicker{position:absolute;top:14%;width:100%;font-size:14px}.poster-pink .poster-name{top:22%}.poster-pink-title{position:absolute;left:8%;width:84%;top:34%;font:400 36px/1.15 'Pozivnice Great Vibes',cursive}.poster-pink-age{position:absolute;top:41%;width:100%;font-size:13px}.poster-pink-age b{font-size:35px;line-height:1}.poster-pink-age span{margin-left:6px}.poster-bow{position:absolute;top:49%;left:35%;width:30%;height:auto}.poster-pink .poster-date{top:60%;font-size:17px}.poster-pink .poster-place{top:65%;font-size:16px}.poster-pink .poster-note{top:76%;font-size:13px;left:20%;width:60%}.poster-butterfly{position:absolute;z-index:3;width:57px;height:auto;animation:poster-butterfly 5s ease-in-out infinite;transform-origin:50% 60%}.butterfly-one{left:7%;top:17%;rotate:-15deg}.butterfly-two{right:7%;top:5%;animation-delay:-2s;rotate:15deg}
.poster-glam{background:#111;color:#f2df9b}.poster-glam-kicker{position:absolute;top:5%;left:42%;width:52%;font:400 10px/1.6 'Pozivnice Manrope',sans-serif;letter-spacing:.07em;rotate:-8deg}.poster-glam-age{position:absolute;top:12%;left:5%;width:90%;height:27%;font:800 167px/1.3 'Pozivnice Manrope',sans-serif;letter-spacing:-.06em;padding-right:.06em}.poster-glam-photo{position:absolute;top:8%;left:27%;width:46%;height:35%;object-fit:contain;object-position:center;z-index:3;mask-image:linear-gradient(#000 80%,transparent);-webkit-mask-image:linear-gradient(#000 80%,transparent)}.poster-glam.poster-has-photo .poster-glam-photo{object-fit:cover;object-position:var(--photo-x) var(--photo-y);border-radius:46% 46% 2% 2%;box-shadow:0 4px 18px #0003}.poster-glam-title{position:absolute;top:47%;width:100%;font-size:17px;letter-spacing:.13em}.poster-glam .poster-name{top:53%;text-transform:uppercase}.poster-glam .poster-age-caption{top:66%;font-size:11px}.poster-glam .poster-date{top:73%;color:#302919;font-size:24px}.poster-glam .poster-date small{color:#f5df9b;margin-top:4px}.poster-glam .poster-place{top:89%;color:#fff6d2}
.poster-silver{background:#000;color:#eee}.poster-silver-number{position:absolute;top:2%;left:10%;width:80%;height:31%}.poster-silver-number b{font:400 164px/1.3 'Pozivnice Cormorant Garamond',serif;color:#626262;display:block;letter-spacing:-.04em}.poster-silver-number em{position:absolute;top:53%;left:0;width:100%;font:400 69px/1 'Pozivnice Great Vibes',cursive;color:#fff}.poster-silver-kicker{position:absolute;top:34%;width:100%;font:400 15px 'Pozivnice Manrope',sans-serif;letter-spacing:.14em}.poster-silver .poster-age-caption{top:41%;font-size:10px}.poster-silver .poster-name{top:50%;font-size:78px}.poster-silver .poster-date{top:71%;padding:18px 0;border-block:1px solid #ffffff55;font-size:26px;left:19%;width:62%}.poster-silver .poster-date small{margin-top:3px}.poster-silver .poster-place{top:88%;font-size:13px}
.celebration-hero.invitation-hero{padding:0!important;min-height:0!important}.birthday-signature .invitation-paper:before{display:none}.birthday-signature .celebration-frame{border-radius:0}.birthday-signature .poster-motion-toggle{display:block;position:relative;margin:10px auto 0;background:none;color:var(--birthday-ink);border:0;padding:8px;font:11px var(--sans);cursor:pointer}.poster-motion-paused .celebration-poster *,.poster-motion-paused .celebration-poster *:before,.poster-motion-paused .celebration-poster *:after,.poster-still .celebration-poster *,.birthday-still .celebration-poster *{animation:none!important;transition:none!important}.poster-offscreen *{animation-play-state:paused!important}.celebration-poster .poster-name,.celebration-poster .poster-date,.poster-kids-details{animation:poster-arrive .8s ease-out both}.is-closed .celebration-poster *,body:not(.poster-open).poster-kids-page .celebration-poster *{animation-play-state:paused!important}.poster-photo-dialog{border:0;border-radius:14px;padding:10px;max-width:min(92vw,700px);max-height:90dvh;background:#fff;box-shadow:0 20px 80px #0005}.poster-photo-dialog::backdrop{background:#000b}.poster-photo-dialog img{display:block;max-width:100%;max-height:82dvh;object-fit:contain}.poster-photo-dialog button{position:absolute;right:15px;top:15px;border:0;border-radius:50%;width:36px;height:36px;font-size:24px;background:white;color:#222;cursor:pointer}
/* Children's posters use the whole available viewport without document scrolling. */
html:has(.poster-kids-page),body.poster-kids-page{margin:0;width:100%;height:100%;overflow:hidden}.poster-kids-page{background:var(--poster-paper);color:var(--poster-ink);font:400 12px/1.5 'Pozivnice Manrope',sans-serif;-webkit-font-smoothing:antialiased}.poster-kids-page [hidden]{display:none!important}.poster-kids-page a{color:inherit;text-decoration:none}.poster-kids-page button{font:inherit;cursor:pointer;color:inherit}.poster-kids-stage{position:fixed;inset:5px 0 93px;display:flex;align-items:center;justify-content:center;overflow:hidden;opacity:0;transition:opacity .5s}.poster-open .poster-kids-stage{opacity:1}.poster-demo .poster-kids-stage{top:46px}.celebration-kids-frame{flex:none;background:var(--poster-paper);box-shadow:0 12px 70px #00000010;border-radius:18px}.poster-demo-bar{position:fixed;inset:0 0 auto;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px;padding:8px 18px;background:var(--poster-paper);font-size:11px;border-bottom:1px solid color-mix(in srgb,var(--poster-ink) 15%,transparent)}.poster-demo-bar form{margin:0}.poster-demo-bar button{border:0;background:none;padding:3px;font-size:11px}.poster-kids-actions{position:fixed;bottom:max(35px,calc(env(safe-area-inset-bottom) + 30px));left:14px;right:14px;display:flex;justify-content:center;gap:8px}.poster-kids-actions a{display:flex;justify-content:center;align-items:center;min-height:42px;max-width:240px;flex:1;padding:9px 12px;border:1px solid color-mix(in srgb,var(--poster-ink) 25%,transparent);border-radius:99px;background:var(--poster-ink);color:var(--poster-paper);font-size:11px;text-align:center}.poster-kids-actions a:first-child{background:transparent;color:var(--poster-ink)}.poster-kids-footer{position:fixed;bottom:max(3px,env(safe-area-inset-bottom));left:10px;right:10px;display:flex;align-items:center;justify-content:center;gap:14px;min-height:23px}.poster-kids-footer .invitation-promo{padding:0!important}.poster-kids-footer .invitation-promo img{width:48px!important;height:auto}.poster-kids-footer .invitation-promo span{font-size:8px!important}.poster-kids-footer>button{border:1px solid color-mix(in srgb,var(--poster-ink) 20%,transparent);background:none;border-radius:50%;width:25px;height:25px;padding:0}.poster-opening{position:fixed;inset:0;z-index:12;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--poster-paper);text-align:center;padding:25px;transition:opacity .55s,scale .55s}.poster-opening>img{width:180px;height:170px;object-fit:contain;animation:poster-float 5s ease-in-out infinite}.poster-opening>span{font-size:9px;letter-spacing:.12em;margin-top:15px}.poster-opening h2{font:600 50px/1.2 'Pozivnice Cormorant Garamond',serif;max-width:100%;overflow-wrap:anywhere;margin:18px 0 8px}.poster-opening p{margin:0 0 25px}.poster-opening>button{padding:15px 26px;min-height:48px;border:0;border-radius:99px;background:var(--poster-ink);color:var(--poster-paper)}.poster-open .poster-opening{opacity:0;scale:1.03;pointer-events:none}.poster-kids-page button:focus-visible,.poster-kids-page a:focus-visible{outline:3px solid var(--poster-accent);outline-offset:3px}.poster-kids-details{position:absolute;left:12%;width:76%;text-align:center;z-index:3}.poster-kids-details time{display:block;font-size:20px;line-height:1.5}.poster-kids-details time strong{display:block;font-size:21px}.poster-kids-details p{font-size:17px;line-height:1.5;margin-top:13px;overflow-wrap:anywhere}.poster-kids-details small{display:block;font-size:12px;line-height:1.6;margin-top:4px}.poster-friend{position:absolute;z-index:4;display:block;background:none;padding:0;border:0;transform-origin:50% 80%;animation:poster-float 6s ease-in-out infinite}.poster-friend img{width:100%;height:100%;object-fit:contain;display:block}.poster-friend.is-cheering{animation:poster-cheer .7s ease-in-out}.poster-child-photo{position:absolute;z-index:5;width:83px;height:98px;padding:5px;background:#fff;border:0;box-shadow:0 5px 15px #0003;rotate:-6deg;cursor:pointer}.poster-rsvp{position:absolute;left:13%;width:74%;font-size:11px;line-height:1.5;z-index:4}.poster-rsvp a{white-space:nowrap;font-weight:700;display:block}.poster-lavic{background:#ffdc87;color:#813b18}.poster-lion-top{position:absolute;width:515px;left:-48px;top:-355px;rotate:180deg}.poster-lavic .poster-name{top:13%;font-family:var(--poster-name-font);font-weight:700;letter-spacing:.02em;text-transform:uppercase}.poster-lavic .poster-age-caption{top:26%;left:10%;width:80%;font-size:15px;font-weight:700}.poster-lavic .poster-age-caption b{font-size:24px}.poster-lavic .poster-kids-invite{position:absolute;top:33%;width:100%;font-size:15px;font-weight:600}.poster-lavic .poster-kids-details{top:40%;font-family:'Pozivnice Balsamiq Sans',sans-serif}.poster-lavic .poster-note{top:65%;font-size:12px;left:15%;width:70%}.poster-lavic .poster-rsvp{top:72%;font-size:10px}.poster-lavic .poster-friend{width:480px;height:405px;left:-30px;bottom:-255px;animation:poster-lion-peek 7s ease-in-out infinite}.poster-lavic .poster-child-photo{left:27px;bottom:29px}.poster-lavic.poster-other-friend .poster-friend{width:210px;height:190px;left:105px;bottom:-30px;animation:poster-float 6s ease-in-out infinite}.poster-lavic.poster-has-photo .poster-friend{left:130px;width:335px;bottom:-245px}.poster-lavic.poster-has-photo.poster-other-friend .poster-friend{bottom:-15px;height:170px;width:180px;left:200px}
.poster-avion{background:white;color:#8e441b}.poster-plane{position:absolute;top:11%;left:10%;width:80%;height:24%;object-fit:contain;animation:poster-plane-flight 8s ease-in-out infinite}.poster-cloud{position:absolute;top:26%;right:-16%;width:38%;animation:poster-cloud-drift 12s ease-in-out infinite}.poster-avion .poster-name{top:43%;color:#a5480d;font-family:var(--poster-name-font);font-weight:700;max-height:105px;line-height:1.15}.poster-avion .poster-kids-invite{position:absolute;top:38%;width:100%;font:12px 'Pozivnice Manrope',sans-serif;letter-spacing:.08em;color:#262626}.poster-ribbon{position:absolute;top:58%;left:9%;width:82%;height:12%;object-fit:fill}.poster-avion .poster-age-caption{top:61%;color:#3f4a49;font-size:14px;letter-spacing:.03em;font-weight:800}.poster-avion .poster-kids-details{top:72%;color:#36453d}.poster-avion .poster-kids-details time{font-size:16px}.poster-avion .poster-kids-details time strong{display:inline;font-size:16px;margin-left:8px}.poster-avion .poster-kids-details p{font-size:15px;margin-top:9px}.poster-avion .poster-kids-details small{font-size:11px;margin-top:2px}.poster-avion .poster-note{top:87%;font-size:10px}.poster-avion .poster-rsvp{top:92%;font-size:9px}.poster-avion .poster-friend{width:55px;height:55px;left:19px;bottom:14px}.poster-avion .poster-child-photo{right:23px;top:14%;width:76px;height:84px;rotate:7deg}.poster-avion.poster-has-photo .poster-plane{left:1%;width:70%}
.poster-kosmos{background:#080815;color:#fff5dc}.poster-kosmos .poster-name{top:20%;left:21%;width:58%;font-family:var(--poster-name-font);font-weight:800;line-height:1.12;color:#ffe79b;text-shadow:0 0 10px #efb946a0;text-transform:uppercase}.poster-kosmos .poster-age-caption{top:36%;left:19%;width:62%;font:400 16px 'Pozivnice Amatic SC',sans-serif;letter-spacing:.07em}.poster-kosmos .poster-age-caption b{font:700 40px 'Pozivnice Manrope',sans-serif;color:#ffe79b}.poster-kosmos .poster-kids-invite{position:absolute;top:7%;left:5%;width:70%;font:400 10px 'Pozivnice Manrope',sans-serif;letter-spacing:.09em}.poster-kosmos .poster-kids-details{top:45%;left:27%;width:46%}.poster-kosmos .poster-kids-details time{font:400 25px/1.35 'Pozivnice Amatic SC',sans-serif}.poster-kosmos .poster-kids-details time strong{font-size:26px}.poster-kosmos .poster-kids-details p{font:400 23px/1.3 'Pozivnice Amatic SC',sans-serif;margin-top:18px}.poster-kosmos .poster-kids-details small{font:400 15px/1.4 'Pozivnice Amatic SC',sans-serif}.poster-kosmos .poster-note{top:72%;left:29%;width:44%;font-size:10px;color:#fff}.poster-kosmos .poster-rsvp{top:82%;left:18%;width:64%;font-size:10px;color:#fff}.poster-kosmos .poster-friend{width:186px;height:189px;right:8px;bottom:4%;rotate:4deg}.poster-kosmos .poster-child-photo{left:28px;bottom:17%;width:80px;height:90px;rotate:-9deg}.poster-kosmos.poster-has-photo .poster-friend{width:160px;right:12px}
@keyframes poster-arrive{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes poster-float{0%,100%{translate:0 0;rotate:-.7deg}50%{translate:0 -6px;rotate:.7deg}}@keyframes poster-plane-flight{0%,100%{translate:-6px 3px;rotate:-2deg}50%{translate:9px -6px;rotate:2deg}}@keyframes poster-cloud-drift{0%,100%{translate:0 0}50%{translate:-12px 2px}}@keyframes poster-butterfly{0%,100%{translate:0 0;scale:1 1;rotate:-4deg}45%{translate:3px -8px;scale:.84 1;rotate:4deg}}@keyframes poster-gold-shine{0%,100%{background-position:0 0}50%{background-position:100% 0}}@keyframes poster-lion-peek{0%,100%{translate:0 0;rotate:-1deg}50%{translate:0 -12px;rotate:1deg}}@keyframes poster-cheer{0%,100%{scale:1;translate:0 0}35%{scale:1.05;translate:0 -13px}70%{scale:.98;translate:0 -3px}}@media(max-height:480px){.poster-opening>img{height:90px}.poster-opening h2{font-size:32px;margin-block:10px}.poster-opening>span{margin-top:5px}.poster-opening p{margin-bottom:14px}}@media(prefers-reduced-motion:reduce){.celebration-poster *,.celebration-poster *:before,.celebration-poster *:after,.poster-opening,.poster-opening *,.poster-kids-stage{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.celebration-poster .poster-name span{color:inherit}
.poster-lavic .poster-friend{bottom:-135px;z-index:1}
.poster-lavic.poster-has-photo .poster-friend{bottom:-145px;z-index:1}
.poster-lavic .poster-rsvp{padding:3px 6px;border-radius:8px;background:#ffdc87e8}
.poster-kids-details{transform-origin:top center}
.poster-note{max-height:48px;overflow-wrap:anywhere}
.poster-kosmos .poster-note{max-height:43px}
.poster-lavic .poster-child-photo{z-index:6}
.poster-lavic .poster-note{top:61%;max-height:37px}
.poster-lavic.poster-requires-rsvp .poster-rsvp{top:67%;font-size:10px}
.poster-lavic.poster-requires-rsvp:not(.poster-other-friend) .poster-friend{width:393px;height:330px;left:13px;bottom:-125px}
.celebration-poster[data-poster-finish="outline"] [data-birthday-age]{background:none;color:transparent;-webkit-text-stroke:1.3px var(--accent,#c3a45f);filter:none}
.celebration-poster[data-poster-finish="metal"] [data-birthday-age]{background:linear-gradient(135deg,#8f733a,#fff5cf 28%,var(--accent,#c3a45f) 48%,#fff7df 53%,#93783d 75%,#fff1be);background-clip:text;-webkit-background-clip:text;color:transparent}
.celebration-poster[data-poster-finish="balloon"] [data-birthday-age]{background:linear-gradient(140deg,#fff 8%,var(--accent,#c3a45f) 40%,#fff3cc 49%,var(--accent,#c3a45f) 65%,#fff 96%);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(2px 4px 3px #0005)}
.celebration-poster[data-poster-finish="neon"] [data-birthday-age]{background:none;color:var(--paper,#111);-webkit-text-stroke:1.3px var(--accent,#c3a45f);text-shadow:0 0 12px var(--accent,#c3a45f),0 0 30px var(--accent,#c3a45f)}
.butterfly-three{left:11%;top:57%;width:26px;animation-delay:-3s;rotate:-8deg}.butterfly-four{right:11%;top:72%;width:28px;animation-delay:-1s;rotate:12deg}
.poster-space-moon{position:absolute;top:3%;right:6%;width:24%;height:17%;object-fit:contain;animation:poster-float 8s ease-in-out infinite}
.poster-space-explorer{position:absolute;top:36%;left:-10%;width:38%;height:30%;object-fit:contain;animation:poster-float 7s ease-in-out -2s infinite;z-index:2}
.birthday-signature .invitation-promo{color:var(--birthday-ink)}.poster-kids-footer .invitation-promo{color:var(--poster-ink)}
