.intro-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;overflow-x:clip;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--page-background,radial-gradient(ellipse at center,#1a1028 0,#0d0814 100%));padding:calc(var(--space-lg) + var(--safe-top)) calc(var(--space-md) + var(--safe-right)) calc(var(--space-xl) + var(--safe-bottom)) calc(var(--space-md) + var(--safe-left))}.intro-overlay--phase-opening{animation:intro-overlay-exit .45s ease 1.05s forwards;pointer-events:none}.intro-overlay__content{text-align:center;width:100%;max-width:min(26rem,100%);display:flex;flex-direction:column;align-items:center;gap:0;--intro-text-gap:var(--space-xs);--intro-text-to-envelope:clamp(1.35rem,5.5vw,2.25rem);--intro-envelope-max:min(22rem,calc(100vw - 4 * var(--space-md) - var(--safe-left) - var(--safe-right)));--intro-envelope-height:calc(var(--intro-envelope-max) * 0.62)}.intro-overlay__header{width:100%;position:relative;z-index:5;flex-shrink:0}.intro-overlay__title{font-size:clamp(1.2rem,5vw,1.55rem);font-weight:700;color:#fff;margin:0;line-height:1.3;letter-spacing:.01em}.intro-overlay__hint,.intro-overlay__title{transition:opacity .28s ease,transform .28s ease,visibility .28s}.intro-overlay__hint{color:rgba(255,255,255,.82);margin:var(--intro-text-gap) 0 0;font-size:clamp(.95rem,3.8vw,1.05rem);font-weight:500;line-height:1.45;max-width:20rem;position:relative;z-index:5;flex-shrink:0}.intro-overlay--phase-opening .intro-overlay__header,.intro-overlay--phase-opening .intro-overlay__hint{opacity:0;visibility:hidden;transform:translateY(-.35rem);pointer-events:none}.intro-envelope-trigger{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:var(--intro-envelope-max);margin:var(--intro-text-to-envelope) auto 0;padding:0 0 var(--space-lg);transition:margin-top .45s cubic-bezier(.22,1,.36,1);border:none;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.intro-envelope-trigger:disabled{cursor:default}.intro-envelope-trigger:not(:disabled) .envelope[data-phase=closed]{animation:game-loot-bob 1.6s ease-in-out infinite}.intro-envelope-trigger:hover:not(:disabled) .envelope[data-phase=closed]{animation-duration:1.1s}.intro-envelope-trigger:hover:not(:disabled) .envelope__body{transform:translateY(-4px) scale(1.03)}.intro-envelope-trigger:active:not(:disabled) .envelope__body{transform:translateY(2px) scale(.97);transition-duration:.08s}.intro-envelope-trigger .envelope__body{transition:transform .2s ease}.envelope{--env-width:var(--intro-envelope-max);--env-height:var(--intro-envelope-height);--env-paper:#fff8f0;--env-body:color-mix(in srgb,var(--color-primary,#ff6b6b) 88%,#1a1028);--env-flap:color-mix(in srgb,var(--color-secondary,#ffd93d) 75%,var(--env-body));--env-flap-top:18%;--env-flap-height:52%;--env-seal-y:calc(var(--env-height) * 0.52);--env-seal-base:var(--color-primary,#d4567a);--env-clip:polygon(0 100%,100% 100%,100% 18%,50% 70%,0 18%);position:relative;width:var(--env-width);margin-inline:auto;filter:drop-shadow(0 10px 28px rgba(0,0,0,.5))}.envelope__body{position:relative;width:100%;height:calc(var(--env-height) * .82);overflow:visible}.envelope__border,.envelope__scene,.envelope__wax-seal{position:absolute;left:0;width:100%}.envelope__border,.envelope__scene{height:var(--env-height);top:calc(var(--env-height) * -.18)}.envelope__scene{perspective:900px;transform-style:preserve-3d;overflow:hidden}.envelope__border{z-index:8;pointer-events:none;overflow:visible}.envelope__border-path{fill:none;stroke:color-mix(in srgb,#ffd54f 75%,var(--color-secondary,#ffd93d));stroke-width:2.5;vector-effect:non-scaling-stroke;paint-order:stroke fill;filter:drop-shadow(0 0 10px color-mix(in srgb,#ffd54f 38%,transparent))}.envelope[data-phase=closed] .envelope__border-path{animation:envelope-border-pulse 2s ease-in-out infinite}.envelope__quest{top:-.65rem;right:.25rem;z-index:12;display:flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:50%;font-size:1.4rem;font-weight:900;line-height:1;color:#fff;text-shadow:0 2px 0 #b45309;background:linear-gradient(180deg,#ffe566,#ffb300 55%,#f59e0b);border:3px solid #d97706;box-shadow:0 4px 0 #b45309,0 6px 14px rgba(0,0,0,.45);animation:game-quest-bob 1.1s ease-in-out infinite}.envelope__quest,.envelope__spark{position:absolute;pointer-events:none}.envelope__spark{z-index:11;width:.65rem;height:.65rem;background:#fffde7;-webkit-clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);filter:drop-shadow(0 0 4px #fff9c4);animation:game-spark-twinkle 1.4s ease-in-out infinite}.envelope__spark--1{top:6%;left:2%;animation-delay:0s}.envelope__spark--2{top:12%;right:0;animation-delay:.35s}.envelope__spark--3{bottom:4%;left:0;animation-delay:.7s}.envelope__spark--4{bottom:8%;right:2%;animation-delay:1.05s}.envelope__shimmer{position:absolute;inset:0;z-index:10;pointer-events:none;-webkit-clip-path:var(--env-clip);clip-path:var(--env-clip);background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.55) 48%,rgba(255,248,220,.4) 52%,transparent 62%);background-size:200% 100%;animation:game-envelope-shimmer 2.4s ease-in-out infinite;mix-blend-mode:soft-light;opacity:.9}.envelope[data-phase=opening] .envelope__shimmer{animation:none;opacity:0}.envelope[data-phase=opening] .envelope__border{opacity:0}.envelope__shadow{position:absolute;left:8%;right:8%;top:calc(var(--env-height) * .76);height:calc(var(--env-height) * .14);border-radius:50%;background:rgba(0,0,0,.45);filter:blur(10px);pointer-events:none;z-index:0;animation:envelope-float-shadow 3s ease-in-out infinite}.envelope__back{position:absolute;inset:var(--env-flap-top) 0 0;border-radius:6px 6px 4px 4px;background:linear-gradient(165deg,var(--env-flap) 0,var(--env-body) 55%);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 12px 28px rgba(0,0,0,.35)}.envelope__front{position:absolute;left:0;right:0;bottom:0;height:58%;background:linear-gradient(180deg,var(--env-body) 0,color-mix(in srgb,var(--env-body) 80%,#000) 100%);-webkit-clip-path:polygon(0 0,50% 42%,100% 0,100% 100%,0 100%);clip-path:polygon(0 0,50% 42%,100% 0,100% 100%,0 100%);border-radius:0 0 6px 6px;z-index:2}.envelope__letter{position:absolute;left:10%;right:10%;bottom:22%;height:52%;background:var(--env-paper);border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.12);z-index:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.35rem;padding:.75rem 1rem;transform:translateY(0)}.envelope__letter-line{display:block;height:.35rem;width:72%;border-radius:2px;background:color-mix(in srgb,var(--color-primary,#ff6b6b) 35%,#ccc);opacity:.5}.envelope__letter-line--short{width:48%}.envelope__flap{position:absolute;left:0;right:0;top:var(--env-flap-top);height:var(--env-flap-height);background:linear-gradient(180deg,var(--env-flap) 0,var(--env-body) 100%);-webkit-clip-path:polygon(0 0,50% 100%,100% 0);clip-path:polygon(0 0,50% 100%,100% 0);transform-origin:top center;transform:rotateX(0deg);z-index:4;filter:drop-shadow(0 6px 12px rgba(0,0,0,.2));-webkit-backface-visibility:hidden;backface-visibility:hidden}.envelope__wax-seal{left:50%;top:var(--env-seal-y);z-index:20;width:3rem;height:3rem;isolation:isolate;transform:translate(-50%,-50%) translateZ(0);display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:var(--env-seal-base);opacity:1;mix-blend-mode:normal;color:#fff;border:2px solid color-mix(in srgb,var(--env-seal-base) 75%,#fff);box-shadow:0 4px 14px rgba(0,0,0,.35),inset 0 2px 4px rgba(255,255,255,.25);pointer-events:none;animation:envelope-seal-pulse 2s ease-in-out infinite}.envelope__wax-seal:before{content:"";position:absolute;inset:0;border-radius:inherit;background-color:var(--env-seal-base);background-image:radial-gradient(circle at 35% 28%,#ffb3d9 0,var(--env-seal-base) 62%,color-mix(in srgb,var(--env-seal-base) 82%,#000) 100%);z-index:-1}.envelope[data-phase=opening] .envelope__flap{animation:envelope-flap-open .55s ease-in-out forwards}.envelope[data-phase=opening] .envelope__letter{animation:envelope-letter-rise .7s ease-out .38s forwards}.envelope[data-phase=opening] .envelope__wax-seal{animation:envelope-seal-pop .35s ease forwards}.envelope[data-phase=opening] .envelope__shadow{animation:none;opacity:.2;transition:opacity .4s ease}.envelope[data-phase=opening]{animation:none}.intro-overlay--phase-opening .intro-envelope-trigger{margin-top:calc(var(--intro-text-to-envelope) + var(--intro-envelope-height) * .42)}.intro-overlay--lover .envelope{--env-seal-base:var(--color-primary,#d4567a)}.intro-overlay--lover .envelope__wax-seal:before{background-image:radial-gradient(circle at 35% 28%,#ffb3c6,var(--env-seal-base))}.intro-overlay--family .envelope{--env-seal-base:var(--color-primary,#e8a838)}.intro-overlay--family .envelope__wax-seal{color:#3d2e1a}.intro-overlay--family .envelope__wax-seal:before{background-image:radial-gradient(circle at 35% 28%,#f4d03f,var(--env-seal-base))}.intro-overlay--blossom .envelope{--env-seal-base:var(--color-primary,#e85d8a)}.intro-overlay--blossom .envelope__wax-seal:before{background-image:radial-gradient(circle at 35% 28%,#ffb3d9,var(--env-seal-base))}.intro-overlay--unicorn .envelope{--env-seal-base:var(--color-primary,#d4a5ff)}.intro-overlay--unicorn .envelope__wax-seal:before{background-image:radial-gradient(circle at 35% 28%,#c8f0ff,#ffc8f0 45%,var(--env-seal-base))}.intro-overlay--colleague .envelope{--env-seal-base:var(--color-primary,#2c6e8a)}.intro-overlay--colleague .envelope__wax-seal:before{background-image:radial-gradient(circle at 35% 28%,#85c1e9,var(--env-seal-base))}.envelope__seal-svg{display:block;flex-shrink:0;margin:0 auto;position:relative;z-index:1}.envelope__seal-emoji{line-height:1;font-size:1.35rem;position:relative;z-index:1}@keyframes game-loot-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes game-quest-bob{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.06)}}@keyframes game-spark-twinkle{0%,to{transform:scale(.6) rotate(0deg);opacity:.25}50%{transform:scale(1.15) rotate(18deg);opacity:1}}@keyframes envelope-border-pulse{0%,to{stroke:color-mix(in srgb,#ffd54f 55%,var(--color-secondary,#ffd93d));filter:drop-shadow(0 0 8px color-mix(in srgb,#ffd54f 24%,transparent))}50%{stroke:color-mix(in srgb,#ffe082 95%,#fff);filter:drop-shadow(0 0 18px color-mix(in srgb,#ffd54f 48%,transparent))}}@keyframes game-envelope-shimmer{0%{background-position:130% 0}to{background-position:-30% 0}}@keyframes envelope-float-shadow{0%,to{transform:scale(1);opacity:.55}50%{transform:scale(.92);opacity:.4}}@keyframes envelope-seal-pulse{0%,to{transform:translate(-50%,-50%) translateZ(0) scale(1)}50%{transform:translate(-50%,-50%) translateZ(0) scale(1.06)}}@keyframes envelope-flap-open{0%{transform:rotateX(0deg)}to{transform:rotateX(-175deg)}}@keyframes envelope-letter-rise{0%{transform:translateY(0);z-index:1}to{transform:translateY(-115%);z-index:6;box-shadow:0 16px 40px rgba(0,0,0,.25)}}@keyframes envelope-letter-rise-mobile{0%{transform:translateY(0);z-index:1}to{transform:translateY(-78%);z-index:6;box-shadow:0 12px 28px rgba(0,0,0,.22)}}@keyframes envelope-seal-pop{to{opacity:0;transform:translate(-50%,-50%) translateZ(0) scale(.6)}}@keyframes intro-overlay-exit{to{opacity:0;visibility:hidden}}@media (max-width:30rem){.intro-overlay{padding-top:calc(var(--space-md) + var(--safe-top));padding-bottom:calc(var(--space-lg) + var(--safe-bottom))}.intro-overlay__content{--intro-envelope-max:min(17.5rem,calc(100vw - 2 * var(--space-md) - var(--safe-left) - var(--safe-right)));--intro-text-gap:0.25rem}.intro-overlay__title{font-size:clamp(1.1rem,4.5vw,1.35rem);line-height:1.25}.intro-overlay__hint{font-size:clamp(.88rem,3.5vw,.98rem);line-height:1.4;max-width:18rem}.intro-envelope-trigger{--intro-text-to-envelope:clamp(1.35rem,6vw,2rem);padding-bottom:var(--space-md)}.envelope[data-phase=opening] .envelope__letter{animation-name:envelope-letter-rise-mobile}.intro-overlay--phase-opening .intro-envelope-trigger{margin-top:calc(var(--intro-text-to-envelope) + var(--intro-envelope-height) * .36)}.envelope__quest{width:2rem;height:2rem;font-size:1.15rem;top:-.4rem;right:-.15rem}.envelope__wax-seal{width:2.65rem;height:2.65rem}.envelope__seal-emoji{font-size:1.15rem}}@media (max-width:23.75rem){.intro-overlay__content{--intro-envelope-max:min(16rem,calc(100vw - 2 * var(--space-sm) - var(--safe-left) - var(--safe-right)));--intro-text-gap:0.2rem}.intro-envelope-trigger{--intro-text-to-envelope:clamp(1.2rem,5.5vw,1.75rem)}}@media (max-height:28rem){.intro-overlay{align-items:flex-start;padding-top:calc(var(--space-xl) + var(--safe-top))}.intro-overlay__content{--intro-envelope-max:min(15rem,calc(100vw - 2 * var(--space-md) - var(--safe-left) - var(--safe-right)))}.intro-envelope-trigger{--intro-text-to-envelope:clamp(1rem,4.5vw,1.35rem)}.intro-overlay--phase-opening .intro-envelope-trigger{margin-top:calc(var(--intro-text-to-envelope) + var(--intro-envelope-height) * .28)}}@media (prefers-reduced-motion:reduce){.envelope[data-phase=closed] .envelope__border-path,.envelope__quest,.envelope__shadow,.envelope__shimmer,.envelope__spark,.envelope__wax-seal,.intro-envelope-trigger:not(:disabled) .envelope[data-phase=closed]{animation:none}.envelope[data-phase=closed] .envelope__border-path{stroke:#ffd54f;filter:none}.intro-overlay--phase-opening{animation:none}.intro-overlay--phase-opening .intro-overlay__header,.intro-overlay--phase-opening .intro-overlay__hint{transition:none}.intro-overlay--phase-opening .intro-envelope-trigger{margin-top:var(--intro-text-to-envelope);transition:none}.envelope[data-phase=opening] .envelope__flap,.envelope[data-phase=opening] .envelope__letter,.envelope[data-phase=opening] .envelope__wax-seal{animation:none}}.celebration-overlay{position:fixed;inset:0;z-index:45;pointer-events:none;overflow:hidden}.celebration-particle{position:absolute;opacity:0;line-height:1;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:celebration-float var(--celebration-duration,3s) ease-out forwards;animation-delay:var(--celebration-delay,0s);will-change:transform,opacity}.celebration-particle--text{font-size:clamp(.85rem,2.8vw,1.05rem);font-weight:700;letter-spacing:.02em;color:var(--color-primary,#e85d8a);text-shadow:0 1px 2px rgb(255 255 255/.9),0 0 12px rgb(255 182 193/.55)}.celebration-particle--emoji{font-size:clamp(1.25rem,4.5vw,1.85rem);filter:drop-shadow(0 2px 4px rgb(0 0 0/.12))}@keyframes celebration-float{0%{opacity:0;transform:translate3d(0,12px,0) scale(.55) rotate(-8deg)}12%{opacity:1;transform:translateZ(0) scale(1) rotate(0deg)}to{opacity:0;transform:translate3d(0,-min(28vh,140px),0) scale(1.08) rotate(6deg)}}@media (prefers-reduced-motion:reduce){.celebration-overlay{display:none}}.edge-floaters{position:fixed;inset:0;pointer-events:none;z-index:40;overflow:hidden}.edge-floaters__sprite{--floater-size:clamp(4.25rem,15vw,6.75rem);position:fixed;width:var(--floater-size);height:auto;object-fit:contain;opacity:0;filter:drop-shadow(0 4px 14px rgb(0 0 0/.22));will-change:left,top,transform,opacity;animation-duration:var(--edge-float-duration,52s);animation-timing-function:ease-in-out;animation-iteration-count:infinite}.edge-floaters__sprite--0{--edge-float-duration:48s;animation-name:edge-float-path-a;animation-delay:-6s}.edge-floaters__sprite--1{--edge-float-duration:58s;animation-name:edge-float-path-b;animation-delay:-18s}.edge-floaters__sprite--2{--edge-float-duration:44s;animation-name:edge-float-path-c;animation-delay:-11s}@keyframes edge-float-path-a{0%,to{left:calc(3% + var(--safe-left));top:calc(6% + var(--safe-top));opacity:.72;transform:rotate(-6deg) scale(1)}25%{left:calc(88% + var(--safe-right));top:calc(5% + var(--safe-top));opacity:.88;transform:rotate(4deg) scale(1.04)}50%{left:calc(90% + var(--safe-right));top:calc(78% + var(--safe-bottom));opacity:.76;transform:rotate(8deg) scale(.98)}75%{left:calc(4% + var(--safe-left));top:calc(80% + var(--safe-bottom));opacity:.84;transform:rotate(-4deg) scale(1.02)}}@keyframes edge-float-path-b{0%,to{left:calc(86% + var(--safe-right));top:calc(12% + var(--safe-top));opacity:.7;transform:rotate(5deg) scale(1.02)}25%{left:calc(88% + var(--safe-right));top:calc(72% + var(--safe-top));opacity:.86;transform:rotate(-3deg) scale(.97)}50%{left:calc(84% + var(--safe-right));top:calc(42% + var(--safe-top));opacity:.8;transform:rotate(6deg) scale(1.05)}75%{left:calc(90% + var(--safe-right));top:calc(28% + var(--safe-top));opacity:.74;transform:rotate(-7deg) scale(1)}}@keyframes edge-float-path-c{0%,to{left:calc(5% + var(--safe-left));top:calc(72% + var(--safe-bottom));opacity:.78;transform:rotate(-5deg) scale(.96)}25%{left:calc(3% + var(--safe-left));top:calc(20% + var(--safe-top));opacity:.66;transform:rotate(3deg) scale(1.03)}50%{left:calc(7% + var(--safe-left));top:calc(46% + var(--safe-top));opacity:.9;transform:rotate(-2deg) scale(1.06)}75%{left:calc(4% + var(--safe-left));top:calc(58% + var(--safe-top));opacity:.72;transform:rotate(7deg) scale(.99)}}@media (max-width:30rem){.edge-floaters__sprite{--floater-size:clamp(3.25rem,22vw,5rem);opacity:.62}}@media (prefers-reduced-motion:reduce){.edge-floaters{display:none}}.card-error{flex:1 1;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-xl);background:linear-gradient(160deg,#1e1b2e,#2d2640);color:#f5f0ff}.card-error__icon{font-size:clamp(2.5rem,10vw,3rem);margin-bottom:var(--space-md)}.card-error h1{font-size:clamp(1.15rem,4.5vw,1.35rem);margin:0 0 var(--space-md);line-height:1.3}.card-error h1,.card-error p{max-width:var(--content-narrow)}.card-error p{margin:0;line-height:1.6;color:rgba(245,240,255,.8);overflow-wrap:anywhere}@media (max-width:23.75rem){.card-error h1{font-size:1.1rem}}.audio-toggle{position:fixed;right:calc(var(--space-md) + var(--safe-right));bottom:calc(var(--space-md) + var(--safe-bottom));z-index:110;width:var(--touch-min);height:var(--touch-min);padding:0;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-md);background:rgba(12,8,20,.88);color:#fff8f0;box-shadow:0 4px 18px rgba(0,0,0,.35);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform .15s ease,border-color .15s ease,background .15s ease,color .15s ease}.audio-toggle:not(.audio-toggle--muted){border-color:color-mix(in srgb,var(--color-primary,#e85d8a) 50%,rgba(255,255,255,.18));color:#fff}.audio-toggle--muted{color:rgba(255,248,240,.55)}.audio-toggle__icon{display:block;flex-shrink:0}.audio-toggle:hover{transform:scale(1.05);border-color:rgba(255,255,255,.28);background:rgba(18,12,28,.94)}.audio-toggle:active{transform:scale(.96)}.audio-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--color-primary,#e85d8a) 70%,#fff);outline-offset:2px}@media (max-width:39.9375rem){.app-view--card .audio-toggle{bottom:calc(var(--site-footer-height) + var(--space-sm) + var(--safe-bottom))}}@media (min-width:40rem){.audio-toggle{top:calc(var(--space-md) + var(--safe-top));bottom:auto}}@media (prefers-reduced-motion:reduce){.audio-toggle{transition:none}.audio-toggle:active,.audio-toggle:hover{transform:none}}.language-toggle{position:fixed;top:calc(var(--space-md) + var(--safe-top));left:calc(var(--space-md) + var(--safe-left));z-index:110;min-width:var(--touch-min);min-height:var(--touch-min);padding:0 .65rem;border:none;border-radius:var(--radius-pill);background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.06em;cursor:pointer}.qr-float{display:none;position:fixed;z-index:90;right:calc(var(--space-md) + var(--safe-right));bottom:calc(var(--space-md) + var(--safe-bottom));flex-direction:column;align-items:flex-end;gap:var(--space-sm);pointer-events:none}.qr-float__fab,.qr-float__panel{pointer-events:auto}.qr-float__panel{width:min(14.5rem,calc(100vw - 2 * var(--space-md) - var(--safe-left) - var(--safe-right)));padding:var(--space-md);border-radius:var(--radius-md);background:rgba(12,8,20,.92);border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:qr-panel-in .25s ease}.qr-float__title{margin:0 0 var(--space-xs);font-size:.9rem;font-weight:700;color:#fff8f0;line-height:1.3}.qr-float__hint{margin:0 0 var(--space-sm);font-size:.78rem;line-height:1.45;color:rgba(255,248,240,.75)}.qr-float__code-wrap{display:flex;justify-content:center;padding:var(--space-sm);background:#fff;border-radius:var(--radius-sm)}.qr-float__code{display:block;width:100%;height:auto;max-width:10.5rem}.qr-float__url{margin:var(--space-sm) 0 0;font-size:.65rem;line-height:1.35;word-break:break-all;color:rgba(255,248,240,.55);text-align:center}.qr-float__fab{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:var(--touch-min);min-height:var(--touch-min);padding:.5rem .85rem;border:none;border-radius:999px;background:rgba(0,0,0,.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:1.15rem;line-height:1;cursor:pointer;box-shadow:var(--shadow-soft);transition:transform .2s ease,background .2s ease}.qr-float__fab-label{font-family:var(--font-body,"Be Vietnam Pro",system-ui,sans-serif);font-size:.8rem;font-weight:600;line-height:1.2;letter-spacing:.02em;white-space:nowrap}.qr-float__fab-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;font-size:1rem}.qr-float__fab:hover{transform:scale(1.05);background:rgba(0,0,0,.55)}.qr-float__fab:active{transform:scale(.97)}.qr-float--open .qr-float__fab{background:rgba(255,107,107,.85)}@keyframes qr-panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (min-width:40rem){.qr-float{display:flex;z-index:110}}@media (hover:none){.qr-float__fab:hover{transform:none}}@media (prefers-reduced-motion:reduce){.qr-float__panel{animation:none}}.hero-portrait{--hero-size:clamp(6.5rem,26vw,9rem);position:relative;margin:0;padding-top:1.75rem;flex-shrink:0;display:flex;justify-content:center;align-items:flex-end;opacity:0;transform:translateY(12px) scale(.97)}.hero-portrait[data-opened=true]{animation:hero-portrait-enter .78s cubic-bezier(.22,1,.36,1) .52s forwards}@keyframes hero-portrait-enter{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.hero-portrait__frame{position:relative;width:var(--hero-size);height:var(--hero-size)}.hero-portrait__frame:before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--color-secondary) 42%,#3d2458) 0,color-mix(in srgb,var(--color-primary) 38%,#1a0f28) 100%);pointer-events:none}.hero-portrait__frame--circle{border-radius:50%}.hero-portrait__frame--rounded{border-radius:var(--radius-md)}.hero-portrait__frame--square{border-radius:var(--radius-sm)}.hero-portrait__frame--circle:before{border-radius:50%}.hero-portrait__frame--rounded:before{border-radius:var(--radius-md)}.hero-portrait__frame--square:before{border-radius:var(--radius-sm)}.hero-portrait__glow{position:absolute;left:50%;bottom:0;width:calc(var(--hero-size) * 1.35);height:calc(var(--hero-size) * 1.35);transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--color-primary) 45%,transparent) 0,transparent 70%);opacity:0;pointer-events:none;z-index:0}.hero-portrait[data-opened=true] .hero-portrait__glow{opacity:1;animation:hero-glow-pulse 2.8s ease-in-out infinite}.hero-portrait__sparkles{position:absolute;left:50%;top:.5rem;width:calc(var(--hero-size) + 2.5rem);height:calc(var(--hero-size) + 2rem);transform:translateX(-50%);pointer-events:none;z-index:3}.hero-portrait__sparkle{--angle:calc(var(--i, 0) * 60deg);position:absolute;left:50%;top:50%;width:.45rem;height:.45rem;margin:-.2rem;border-radius:50%;background:var(--color-secondary);box-shadow:0 0 6px color-mix(in srgb,var(--color-secondary) 80%,white);opacity:0;transform:rotate(var(--angle)) translateY(calc(var(--hero-size) * -.55)) scale(.6)}.hero-portrait[data-opened=true] .hero-portrait__sparkle{opacity:1;animation:hero-sparkle 2.4s ease-in-out infinite;animation-delay:calc(var(--i, 0) * .18s)}.hero-portrait__hat{position:absolute;left:50%;top:-1.35rem;z-index:4;transform:translateX(-50%);filter:drop-shadow(0 2px 4px rgb(0 0 0/.2))}.hero-portrait[data-opened=true] .hero-portrait__hat{animation:hero-hat-wiggle .9s ease-out .15s 1}.hero-portrait__hat-svg{display:block;width:clamp(3.5rem,14vw,4.75rem);height:auto}.hero-portrait__hat-cone{fill:var(--color-primary)}.hero-portrait__hat-brim{fill:color-mix(in srgb,var(--color-primary) 75%,#1a1a2e)}.hero-portrait__hat-pom{fill:var(--color-secondary)}.hero-portrait--lover .hero-portrait__hat-cone{fill:#e85d8a}.hero-portrait--lover .hero-portrait__hat-pom{fill:#ffd6e8}.hero-portrait--family .hero-portrait__hat-cone{fill:#5b8def}.hero-portrait--colleague .hero-portrait__hat-cone{fill:#4a9b7f}.hero-portrait--blossom .hero-portrait__hat-cone{fill:#e85d8a}.hero-portrait--unicorn .hero-portrait__hat-cone{fill:#d4a5ff}.hero-portrait--unicorn .hero-portrait__hat-pom{fill:#c8f0ff}.hero-portrait--blossom .hero-portrait__hat-pom{fill:#ffb3d9}.hero-portrait__img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover;border:3px solid var(--color-primary);box-shadow:var(--shadow-soft),0 0 0 4px color-mix(in srgb,var(--color-secondary) 25%,transparent);opacity:.92;transform:scale(.94);transition:opacity .5s ease,transform .55s cubic-bezier(.34,1.4,.64,1),box-shadow .5s ease}.hero-portrait[data-opened=true] .hero-portrait__img{opacity:1;transform:scale(1);box-shadow:var(--shadow-soft),0 0 20px color-mix(in srgb,var(--color-primary) 35%,transparent)}.hero-portrait__img--circle{border-radius:50%}.hero-portrait__img--rounded{border-radius:var(--radius-md)}.hero-portrait__img--square{border-radius:var(--radius-sm)}@keyframes hero-glow-pulse{0%,to{transform:translateX(-50%) scale(1);opacity:.65}50%{transform:translateX(-50%) scale(1.08);opacity:1}}@keyframes hero-sparkle{0%,to{opacity:.35;transform:rotate(var(--angle)) translateY(calc(var(--hero-size) * -.55)) scale(.7)}50%{opacity:1;transform:rotate(var(--angle)) translateY(calc(var(--hero-size) * -.62)) scale(1)}}@keyframes hero-hat-wiggle{0%{transform:translateX(-50%) rotate(0deg)}25%{transform:translateX(-50%) rotate(-8deg)}50%{transform:translateX(-50%) rotate(6deg)}75%{transform:translateX(-50%) rotate(-3deg)}to{transform:translateX(-50%) rotate(0deg)}}@media (max-height:32rem){.hero-portrait{--hero-size:clamp(4.75rem,22vw,6.5rem);padding-top:1rem}.hero-portrait__hat{top:-1rem}.hero-portrait__hat-svg{width:clamp(2.75rem,12vw,3.5rem)}}@media (prefers-reduced-motion:reduce){.hero-portrait[data-opened=true]{animation:none;opacity:1;transform:none}.hero-portrait[data-opened=true] .hero-portrait__glow,.hero-portrait[data-opened=true] .hero-portrait__hat,.hero-portrait[data-opened=true] .hero-portrait__sparkle{animation:none}.hero-portrait__img{transition:opacity .2s ease;transform:none;opacity:1}}.hero-portrait[data-reduced-motion=true] .hero-portrait__glow,.hero-portrait[data-reduced-motion=true] .hero-portrait__hat,.hero-portrait[data-reduced-motion=true] .hero-portrait__sparkle{animation:none!important}.hero-portrait[data-reduced-motion=true] .hero-portrait__img{transform:none;opacity:1}.message-body{font-size:clamp(.95rem,2.8vw,1.05rem);line-height:1.8;margin:0;overflow-wrap:break-word;word-break:normal;opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .6s ease}.message-body,.message-body__para{text-align:justify;text-justify:inter-word;word-spacing:normal;letter-spacing:normal;-webkit-hyphens:none;hyphens:none}.message-body__para{margin:0 0 .9em;font-size:inherit;font-weight:400;line-height:inherit;text-align-last:left;text-indent:1.5em}.message-body__para:last-child{margin-bottom:0}.message-body__break{display:block;margin-bottom:.35em}.message-body--active.message-body--fade,.message-body--active.message-body--slide,.message-body--active.message-body--stagger,.message-body--active.message-body--typewriter{opacity:1;transform:translateY(0)}.message-body--active.message-body--fade .message-body__para,.message-body--active.message-body--slide .message-body__para,.message-body--active.message-body--stagger .message-body__para{opacity:0;transform:translateY(18px);animation:message-para-enter .72s cubic-bezier(.22,1,.36,1) forwards}.message-body--active.message-body--fade .message-body__para{animation-delay:calc(.48s + var(--para-i, 0) * .22s)}.message-body--active.message-body--stagger .message-body__para{animation-delay:calc(.32s + var(--para-i, 0) * .3s)}.message-body--active.message-body--slide .message-body__para{animation-name:message-para-slide;animation-delay:calc(.42s + var(--para-i, 0) * .26s)}@keyframes message-para-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes message-para-slide{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.message-body{transition:opacity .2s ease;transform:none}.message-body--active .message-body__para{animation:none;opacity:1;transform:none}}.card-template{--card-surface:rgba(255,255,255,0.04);--card-border:rgba(255,255,255,0.08);position:relative;flex:1 1 auto;min-height:0;width:100%;padding:calc(var(--space-lg) + var(--safe-top)) calc(var(--space-md) + var(--safe-right)) calc(var(--space-lg) + var(--safe-bottom)) calc(var(--space-md) + var(--safe-left));background:transparent;color:#fff8f0;font-family:var(--font-display);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;opacity:0;transform:scale(.98);overflow-x:hidden}.card-template[data-opened=true]{opacity:1;transform:scale(1);animation:card-letter-reveal .75s cubic-bezier(.22,1,.36,1) forwards}@keyframes card-letter-reveal{0%{opacity:0;transform:translateY(1.5rem) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.card-template[data-opened=true]{animation:none}}.card-template__panel{isolation:isolate;max-width:var(--content-max);flex:0 1 auto;max-height:100%;flex-direction:column;border-radius:var(--radius-lg);background:var(--card-surface);border:1px solid var(--card-border);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);overflow:hidden}.card-template__inner,.card-template__panel{position:relative;width:100%;min-height:0;display:flex}.card-template__inner{flex:1 1 auto;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl) var(--space-lg);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--color-secondary,#ffc8f0) 55%,transparent) transparent}.card-template__inner::-webkit-scrollbar{width:6px}.card-template__inner::-webkit-scrollbar-track{background:transparent}.card-template__inner::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-secondary,#ffc8f0) 48%,rgba(255,255,255,.12));background-clip:padding-box}.card-template__inner::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-primary,#d4a5ff) 62%,rgba(255,255,255,.18));background-clip:padding-box}@media (hover:hover){.card-template__inner:not(:hover):not(:focus-within)::-webkit-scrollbar-thumb{background:transparent;background-clip:padding-box}.card-template__inner:focus-within::-webkit-scrollbar-thumb,.card-template__inner:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-secondary,#ffc8f0) 48%,rgba(255,255,255,.12));background-clip:padding-box}}.card-template__shimmer{position:absolute;inset:0;z-index:0;pointer-events:none;border-radius:inherit;opacity:0;background:linear-gradient(105deg,transparent 36%,rgba(255,255,255,.18) 46%,rgba(255,248,220,.14) 54%,transparent 64%);background-size:220% 100%}.card-template[data-opened=true] .card-template__shimmer{opacity:.55;animation:card-panel-shimmer 10s ease-in-out infinite}@keyframes card-panel-shimmer{0%{background-position:130% 0}to{background-position:-30% 0}}@keyframes card-content-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.card-template__header{position:relative;z-index:1;width:100%;flex-shrink:0}.card-template__decor,.card-template__headline,.card-template__name{opacity:0;transform:translateY(14px)}.card-template[data-opened=true] .card-template__decor{animation:card-content-enter .65s cubic-bezier(.22,1,.36,1) .12s forwards}.card-template[data-opened=true] .card-template__headline{animation:card-headline-enter .65s cubic-bezier(.22,1,.36,1) .28s forwards}.card-template[data-opened=true] .card-template__name{animation:card-content-enter .72s cubic-bezier(.22,1,.36,1) .44s forwards}.card-template__decor{height:4px;width:4rem;margin:0 auto var(--space-lg);border-radius:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary))}.card-template__headline{font-size:clamp(.8rem,2.5vw,.95rem);text-transform:uppercase;letter-spacing:.12em;margin:0 0 var(--space-sm);line-height:1.4}@keyframes card-headline-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:.85;transform:translateY(0)}}.card-template__name{font-size:clamp(1.75rem,7vw,2.75rem);font-weight:700;margin:0;line-height:1.15;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.card-template__body{position:relative;z-index:1;width:100%;flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;gap:var(--space-lg);text-align:left}.card-template__body .hero-portrait{align-self:center}.message-body{width:100%;max-width:100%;align-self:stretch}.card-template__footer{position:relative;z-index:1;width:100%;flex-shrink:0;padding-top:var(--space-md);border-top:1px solid var(--card-border)}.card-template__from,.card-template__signature{opacity:0;transform:translateY(12px)}.card-template[data-opened=true] .card-template__signature{animation:card-content-enter .6s cubic-bezier(.22,1,.36,1) 1.22s forwards}.card-template__from{margin:0;font-size:.9rem;line-height:1.5}@keyframes card-footer-from-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:.75;transform:translateY(0)}}.card-template[data-opened=true] .card-template__from{animation:card-footer-from-enter .6s cubic-bezier(.22,1,.36,1) 1.05s forwards}.card-template__signature{margin:var(--space-sm) 0 0;font-size:clamp(1rem,4vw,1.15rem);font-weight:600;color:var(--color-secondary);line-height:1.4}.card-template--friend{--card-surface:rgba(255,107,107,0.08);--card-border:rgba(78,205,196,0.25)}.card-template--friend .card-template__panel{border-radius:var(--radius-lg) var(--radius-lg) var(--radius-sm) var(--radius-lg)}.card-template--friend .card-template__name{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.card-template--friend:before{content:"🎉";position:fixed;top:calc(12% + var(--safe-top));right:calc(8% + var(--safe-right));font-size:clamp(2rem,8vw,2.5rem);opacity:.35;pointer-events:none}.card-template--family{--card-surface:rgba(232,168,56,0.1);--card-border:rgba(244,208,63,0.2)}.card-template--family .card-template__headline{text-transform:none;letter-spacing:.04em;font-style:italic}.card-template--family:before{content:"🌸";position:fixed;top:calc(14% + var(--safe-top));left:calc(6% + var(--safe-left));font-size:clamp(1.75rem,6vw,2rem);opacity:.3;pointer-events:none}.card-template--blossom{--card-surface:rgba(232,93,138,0.14);--card-border:rgba(255,179,217,0.28);color:#fff5f8}.card-template--blossom .card-template__headline{text-transform:none;letter-spacing:.06em;color:var(--color-secondary);font-weight:600}.card-template--blossom .card-template__decor--blossom{width:auto;height:auto;margin:0 auto var(--space-md);background:none}.card-template--blossom .card-template__blossom-garland{display:flex;align-items:flex-end;justify-content:center;gap:.65rem;color:var(--color-secondary);filter:drop-shadow(0 2px 10px color-mix(in srgb,var(--color-primary,#e85d8a) 35%,transparent))}.card-template--blossom .card-template__blossom-garland__bloom{display:block;opacity:.88}.card-template--blossom .card-template__blossom-garland__bloom:first-child{transform:rotate(-14deg)}.card-template--blossom .card-template__blossom-garland__bloom--main{opacity:1;color:#fff0f5;animation:blossom-garland-float 2.6s ease-in-out infinite}.card-template--blossom .card-template__blossom-garland__bloom:last-child{transform:rotate(14deg)}@keyframes blossom-garland-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.card-template--blossom .card-template__blossom-float{position:fixed;pointer-events:none;z-index:0;line-height:1}.card-template--blossom .card-template__blossom-float--peach{top:calc(12% + var(--safe-top));left:calc(8% + var(--safe-left));opacity:.42;color:#ffb3d9;filter:drop-shadow(0 0 14px rgba(255,179,217,.45))}.card-template--blossom .card-template__blossom-float--peach-alt{bottom:calc(18% + var(--safe-bottom));right:calc(8% + var(--safe-right));opacity:.32;color:#f8a4c4;transform:rotate(18deg);filter:drop-shadow(0 0 10px rgba(232,93,138,.35))}.card-template--blossom .card-template__name{font-weight:700;background:linear-gradient(120deg,#fff 0,var(--color-secondary) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.card-template--unicorn{--card-surface:rgba(212,165,255,0.16);--card-border:rgba(255,200,240,0.32);color:#fff8fd}.card-template--unicorn .card-template__headline{text-transform:none;letter-spacing:.05em;color:#e8d4ff;font-weight:600}.card-template--unicorn .card-template__decor--unicorn{width:auto;height:auto;margin:0 auto var(--space-md);background:none}.card-template--unicorn .card-template__unicorn-garland{display:flex;align-items:center;justify-content:center;gap:.75rem;color:var(--color-secondary);filter:drop-shadow(0 2px 12px color-mix(in srgb,var(--color-primary,#d4a5ff) 45%,transparent))}.card-template--unicorn .card-template__unicorn-garland__sparkle{display:block;opacity:.9;color:#c8f0ff;animation:unicorn-sparkle-twinkle 2.4s ease-in-out infinite}.card-template--unicorn .card-template__unicorn-garland__bloom{display:block;opacity:.92;color:#ffd6f5}.card-template--unicorn .card-template__unicorn-garland__bloom--main{animation:unicorn-garland-float 2.8s ease-in-out infinite}.card-template--unicorn .card-template__unicorn-garland__sparkle:last-child{animation-delay:.6s}@keyframes unicorn-sparkle-twinkle{0%,to{opacity:.65;transform:scale(.92)}50%{opacity:1;transform:scale(1.05)}}@keyframes unicorn-garland-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.card-template--unicorn .card-template__unicorn-float{position:fixed;pointer-events:none;z-index:0;line-height:1}.card-template--unicorn .card-template__unicorn-float--sparkle{top:calc(10% + var(--safe-top));left:calc(7% + var(--safe-left));color:#b8f0ff;opacity:.5;filter:drop-shadow(0 0 16px rgba(184,240,255,.5));animation:unicorn-sparkle-twinkle 3s ease-in-out infinite}.card-template--unicorn .card-template__unicorn-float--bloom{top:calc(14% + var(--safe-top));right:calc(6% + var(--safe-right));color:#ffc8f0;opacity:.38;transform:rotate(-12deg);filter:drop-shadow(0 0 12px rgba(255,200,240,.4))}.card-template--unicorn .card-template__unicorn-float--sparkle-alt{bottom:calc(16% + var(--safe-bottom));left:calc(10% + var(--safe-left));color:#e8c8ff;opacity:.42;transform:rotate(22deg);animation:unicorn-sparkle-twinkle 3.2s ease-in-out .4s infinite}.card-template--unicorn .card-template__name{font-weight:700;background:linear-gradient(115deg,#fff,#ffc8f0 25%,#c8f0ff 50%,#e8c8ff 75%,#fff);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:unicorn-name-shimmer 5s ease-in-out infinite}@keyframes unicorn-name-shimmer{0%,to{background-position:0}50%{background-position:100%}}.card-template--unicorn .card-template__panel .card-template__shimmer{background:linear-gradient(105deg,transparent,rgba(255,200,240,.08) 35%,rgba(200,240,255,.1) 65%,transparent)}.card-template--unicorn[data-opened=true] .card-template__panel .card-template__shimmer{opacity:.38}.card-template--lover{--card-surface:rgba(212,86,122,0.12);--card-border:rgba(255,143,171,0.22)}.card-template--lover .card-template__decor{width:5rem;height:5rem;border-radius:50%;background:radial-gradient(circle,var(--color-primary) 0,transparent 70%);opacity:.45}.card-template--lover .card-template__name{font-family:Pacifico,cursive;font-weight:400;font-size:clamp(2rem,9vw,3rem)}.card-template--lover:after{content:"♥";position:fixed;bottom:calc(16% + var(--safe-bottom));right:calc(10% + var(--safe-right));font-size:clamp(2.5rem,10vw,3rem);color:var(--color-primary);opacity:.22;pointer-events:none}.card-template--colleague{--card-surface:rgba(44,110,138,0.12);--card-border:rgba(93,173,226,0.2)}.card-template--colleague .card-template__panel{border-radius:var(--radius-sm);border-top:4px solid var(--color-primary);text-align:left;align-items:stretch}.card-template--colleague .card-template__inner{align-items:stretch}.card-template--colleague .card-template__body,.card-template--colleague .card-template__footer,.card-template--colleague .card-template__header{text-align:left}.card-template--colleague .card-template__body{align-items:flex-start}.card-template--colleague .card-template__decor{width:100%;max-width:12rem;height:2px;margin-left:0;margin-right:auto;border-radius:0}.card-template--colleague .card-template__headline{text-transform:none;letter-spacing:.06em;font-weight:600}.card-template--colleague .message-body{margin-left:0;margin-right:auto}@media (max-width:23.75rem){.card-template{padding-left:calc(var(--space-sm) + var(--safe-left));padding-right:calc(var(--space-sm) + var(--safe-right));justify-content:flex-start;padding-top:calc(var(--space-md) + var(--safe-top))}.card-template__inner{padding:var(--space-lg) var(--space-md)}.card-template__headline{letter-spacing:.06em}.card-template--blossom .card-template__blossom-float,.card-template--family:before,.card-template--friend:before,.card-template--lover:after,.card-template--unicorn .card-template__unicorn-float{display:none}}@media (max-height:32rem){.card-template{justify-content:flex-start;padding-top:calc(var(--space-sm) + var(--safe-top));padding-bottom:calc(var(--space-sm) + var(--safe-bottom))}.card-template__inner{padding:var(--space-md) var(--space-md);gap:var(--space-sm)}.card-template__body{gap:var(--space-md)}.card-template--blossom .card-template__blossom-float,.card-template--family:before,.card-template--friend:before,.card-template--lover:after,.card-template--unicorn .card-template__unicorn-float{display:none}}@media (min-width:48rem){.card-template__inner{padding:var(--space-2xl) var(--space-xl)}}@media (min-width:75rem){.card-template__inner{padding:var(--space-2xl) clamp(var(--space-xl),4vw,3rem)}}@media (prefers-reduced-motion:reduce){.card-template{transition:opacity .2s ease;transform:none}.card-template__decor,.card-template__from,.card-template__headline,.card-template__name,.card-template__signature{opacity:1;transform:none;animation:none!important}.card-template[data-opened=true] .card-template__shimmer{animation:none;opacity:.35}.card-template--blossom .card-template__blossom-garland__bloom--main,.card-template--unicorn .card-template__name,.card-template--unicorn .card-template__unicorn-garland__bloom--main,.card-template--unicorn .card-template__unicorn-garland__sparkle{animation:none}}.card-page-status__text{margin:0;font-size:1rem;opacity:.85;line-height:1.5}