.scene-flow{z-index:5;flex-direction:column;flex:auto;align-items:stretch;width:100%;min-height:100%;display:flex;position:relative}.cine-progress{opacity:.85;gap:4px;width:min(220px,70%);height:3px;margin:0 auto 4px;display:flex}.cine-progress .seg{background:color-mix(in srgb, var(--accent) 22%, transparent);border-radius:2px;flex:auto;height:100%;position:relative;overflow:hidden}.cine-progress .seg.done{background:color-mix(in srgb, var(--accent) 55%, transparent)}.cine-progress .seg.on:after{content:"";background:var(--accent);transform-origin:0;animation:.5s both cineSegFill;position:absolute;inset:0}@keyframes cineSegFill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.cine-stage{flex-direction:column;flex:auto;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative}.cine-cell{flex-direction:column;justify-content:center;align-items:center;gap:18px;width:100%;display:flex}.scene-flow:not([data-reduced="1"]) .cine-cell.enter-fwd{animation:cineInFwd var(--cine-dur,.46s) cubic-bezier(.22, .9, .28, 1) both}.scene-flow:not([data-reduced="1"]) .cine-cell.enter-back{animation:cineInBack var(--cine-dur,.46s) cubic-bezier(.22, .9, .28, 1) both}@keyframes cineInFwd{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:none}}@keyframes cineInBack{0%{opacity:0;transform:translateY(-14px)scale(.985)}to{opacity:1;transform:none}}.cine-back{width:30px;height:30px;color:var(--accent);opacity:.42;cursor:pointer;z-index:6;background:0 0;border:none;justify-content:center;align-items:center;transition:opacity .2s,transform .2s;display:inline-flex;position:absolute;top:-2px;left:0}.cine-back:hover{opacity:.9;transform:translate(-2px)}.cine-hint{letter-spacing:.4px;color:color-mix(in srgb, var(--accent) 70%, #6b6b6b);opacity:.6;align-items:center;gap:5px;margin-top:2px;font-size:12px;display:inline-flex}.scene-flow:not([data-reduced="1"]) .cine-hint{animation:2.2s ease-in-out infinite cineHintPulse}@keyframes cineHintPulse{0%,to{opacity:.35}50%{opacity:.7}}.counter-num,.count-num{font-variant-numeric:tabular-nums}.scene-flow[data-ambiance=love]{--cine-dur:.48s}.scene-flow[data-ambiance=fleuri]{--cine-dur:.62s}.scene-flow[data-ambiance=pixel]{--cine-dur:.24s}.scene-flow[data-ambiance=fleuri]:not([data-reduced="1"]) .cine-cell.enter-fwd{animation-timing-function:cubic-bezier(.2,.8,.2,1)}.scene-flow[data-ambiance=pixel]:not([data-reduced="1"]) .cine-cell.enter-fwd,.scene-flow[data-ambiance=pixel]:not([data-reduced="1"]) .cine-cell.enter-back{animation:cinePixelIn var(--cine-dur) steps(6, end) both}@keyframes cinePixelIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.scene-flow[data-ambiance=pixel] .cine-progress .seg{border-radius:0}.cine-fullscreen{flex-direction:column;display:flex;border-radius:0!important;min-height:100dvh!important}.cine-fullscreen .love-screen,.cine-fullscreen .pixel-screen,.cine-fullscreen .fl-screen{flex:auto}.cine-fullscreen .love-screen.center,.cine-fullscreen .pixel-screen.center,.cine-fullscreen .fl-screen.center{min-height:100dvh}.cine-fullscreen .love-screen.story,.cine-fullscreen .pixel-screen.story,.cine-fullscreen .fl-screen.story{min-height:100dvh;padding-top:max(26px, env(safe-area-inset-top));padding-bottom:max(22px, env(safe-area-inset-bottom));flex-direction:column;justify-content:center;display:flex}.cine-fullscreen .scene-flow{justify-content:center}.scene-gallery{touch-action:pan-y;position:relative}@media (prefers-reduced-motion:reduce){.scene-flow .cine-cell,.cine-progress .seg.on:after,.cine-hint{animation:none!important}}.cine-music{color:currentColor;opacity:.55;cursor:pointer;z-index:8;background:0 0;border:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:absolute;top:-4px;right:0}.cine-intro{z-index:9;cursor:pointer;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100%;display:flex;position:absolute;inset:0;overflow:hidden}.cine-intro-glow{z-index:0;pointer-events:none;background:radial-gradient(closest-side, color-mix(in srgb, var(--accent) 34%, transparent), transparent 72%);opacity:0;position:absolute;inset:0}.scene-flow:not([data-reduced="1"]) .cine-intro-glow{animation:.95s ease-out both introGlow}@keyframes introGlow{0%{opacity:0;transform:scale(.4)}30%{opacity:.9}to{opacity:.15;transform:scale(1.35)}}.cine-intro-inner{z-index:1;justify-content:center;align-items:center;min-height:120px;padding:0 18px;display:flex;position:relative}.cine-intro-big{color:var(--accent);text-shadow:0 0 34px color-mix(in srgb, var(--accent) 60%, transparent);font-size:clamp(96px,42vw,190px);font-weight:900;line-height:.9}.scene-flow:not([data-reduced="1"]) .cine-intro-big{animation:.62s cubic-bezier(.16,1.5,.3,1) both introBig}@keyframes introBig{0%{opacity:0;filter:blur(6px);transform:scale(1.9)}55%{opacity:1;filter:blur()}to{opacity:1;transform:scale(1)}}.cine-intro-title{letter-spacing:.5px;color:var(--accent);text-shadow:0 0 30px color-mix(in srgb, var(--accent) 55%, transparent);max-width:92vw;font-size:clamp(34px,11vw,64px);font-weight:800;line-height:1.05}.scene-flow:not([data-reduced="1"]) .cine-intro-title{animation:.9s cubic-bezier(.2,1,.3,1) both introTitle}@keyframes introTitle{0%{opacity:0;letter-spacing:6px;transform:scale(.8)translateY(10px)}to{opacity:1;letter-spacing:.5px;transform:none}}.cine-intro-line{color:var(--accent);max-width:320px;font-size:clamp(24px,7vw,34px);line-height:1.25}.scene-flow:not([data-reduced="1"]) .cine-intro-line{animation:.55s both introRise}@keyframes introRise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.cine-skip{bottom:max(16px, env(safe-area-inset-bottom));z-index:2;letter-spacing:.4px;opacity:.55;color:var(--accent);font-size:12px;position:absolute;right:18px}.scene-flow[data-ambiance=pixel] .cine-intro-big,.scene-flow[data-ambiance=pixel] .cine-intro-title{text-transform:uppercase;letter-spacing:2px}.scene-flow[data-ambiance=love] .cine-intro-title,.scene-flow[data-ambiance=fleuri] .cine-intro-title{font-family:Playfair Display,Cormorant Garamond,serif}.cine-flash{z-index:7;pointer-events:none;opacity:0;background:color-mix(in srgb, var(--bg) 80%, var(--accent));position:absolute;inset:0}.scene-flow:not([data-reduced="1"]) .cine-flash{animation:.42s both cineVeil}@keyframes cineVeil{0%{opacity:0}24%{opacity:.42}to{opacity:0}}.scene-flow:not([data-reduced="1"]) .reveal{animation:.5s cubic-bezier(.2,.9,.3,1) both revealUp}@keyframes revealUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.scene-flow:not([data-reduced="1"]) .cine-cell[data-scene=gallery].enter-fwd{animation:cineZoomIn var(--cine-dur) ease both}.scene-flow:not([data-reduced="1"]) .cine-cell[data-scene=final_reveal].enter-fwd{animation:cinePop var(--cine-dur) cubic-bezier(.2, 1.2, .4, 1) both}@keyframes cineZoomIn{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:none}}@keyframes cinePop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}.scene-letter .letter-sealed{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:16px;padding:8px;display:flex}.letter-env{width:152px;height:100px;display:block;position:relative}.scene-flow:not([data-reduced="1"]) .letter-env{animation:3s ease-in-out infinite envBob}@keyframes envBob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.env-body{background:color-mix(in srgb, var(--bg) 55%, #fff);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);border-radius:4px;position:absolute;inset:18px 0 0}.env-flap{border-left:76px solid #0000;border-right:76px solid #0000;border-top:46px solid color-mix(in srgb, var(--accent) 20%, #fff);width:0;height:0;position:absolute;top:0;left:0}.env-seal{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;top:28px;left:50%;transform:translate(-50%);box-shadow:0 2px 7px #00000047}.letter-open-cta{letter-spacing:.3px;color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:22px;padding:9px 20px;font-size:15px}.scene-flow:not([data-reduced="1"]) .letter-card.opened{animation:.5s cubic-bezier(.2,.9,.3,1) both paperIn}@keyframes paperIn{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:none}}.pixel-root .env-body,.pixel-root .env-flap,.pixel-root .env-seal{border-radius:0}.scene-voice .voice-intro{opacity:.85;max-width:300px;font-style:italic}.scene-voice .voice-prog{background:color-mix(in srgb, var(--accent) 16%, transparent);border-radius:3px;width:min(220px,70%);height:5px;overflow:hidden}.scene-voice .voice-prog span{background:var(--accent);transform-origin:0;height:100%;transition:transform .2s linear;display:block;transform:scaleX(0)}.scene-voice .voice-play.on{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 18%, transparent)}.scene-gallery .gal-heading{opacity:.8;font-style:italic}.scene-gallery .gal-nav{align-items:center;gap:14px;display:flex}.scene-gallery .gal-arrow{color:var(--accent);opacity:.6;cursor:pointer;background:0 0;border:none;padding:4px;display:inline-flex}.scene-gallery .gal-arrow.flip{transform:rotate(180deg)}.scene-gallery .gal-arrow:hover{opacity:1}.scene-reasons .reasons-ctl{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.scene-reasons .reasons-count{opacity:.6;color:var(--accent);font-size:13px}.scene-counter .counter-q{color:var(--accent);max-width:280px;font-size:clamp(19px,5.6vw,22px);font-style:italic}.scene-final{position:relative}.scene-final .final-banner{letter-spacing:2px;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:700}.scene-final .final-burst{z-index:0;pointer-events:none;position:absolute;inset:0}.scene-final .final-burst span{background:color-mix(in srgb, var(--secondary) 75%, var(--accent));opacity:0;border-radius:50%;width:7px;height:7px;position:absolute}.scene-final .final-burst span:first-child{top:6%;left:50%}.scene-final .final-burst span:nth-child(2){top:22%;left:84%}.scene-final .final-burst span:nth-child(3){top:60%;left:90%}.scene-final .final-burst span:nth-child(4){top:60%;left:8%}.scene-final .final-burst span:nth-child(5){top:22%;left:14%}.scene-final .final-burst span:nth-child(6){top:40%;left:50%}.scene-flow:not([data-reduced="1"]) .scene-final .final-burst span{animation:1.2s ease-out both sparkle}.scene-final .final-burst span:nth-child(2){animation-delay:80ms}.scene-final .final-burst span:nth-child(3){animation-delay:.16s}.scene-final .final-burst span:nth-child(4){animation-delay:.24s}.scene-final .final-burst span:nth-child(5){animation-delay:.32s}.scene-final .final-burst span:nth-child(6){animation-delay:.12s}@keyframes sparkle{0%{opacity:0;transform:scale(0)}40%{opacity:.95;transform:scale(1.25)}to{opacity:0;transform:scale(.6)}}.scene-final.has-climax{justify-content:center;min-height:58vh}.scene-final .final-inner{z-index:1;position:relative}.fx-sky{z-index:0;cursor:crosshair;touch-action:manipulation;background:radial-gradient(135% 92% at 50% -8%,#100c2485,#100c2429 44%,#0000 66%);position:absolute;inset:-6% -4%;overflow:hidden}.fx-hint{letter-spacing:1px;color:#fff;opacity:.6;pointer-events:none;margin:0;font-size:12px;position:absolute;bottom:6%;left:50%;transform:translate(-50%)}.scene-flow:not([data-reduced="1"]) .fx-hint{animation:2.4s ease-in-out infinite hintPulse}.fw{width:0;height:0;position:absolute}.fw-trail{transform-origin:bottom;background:linear-gradient(to top, transparent, hsl(var(--hue) 95% 76%));width:3px;height:56px;box-shadow:0 0 7px hsl(var(--hue) 95% 72%);mix-blend-mode:screen;border-radius:2px;animation:.34s ease-out both fwTrail;position:absolute;bottom:0;left:-1.5px}@keyframes fwTrail{0%{opacity:0;transform:translateY(72px)scaleY(.3)}35%{opacity:1}to{opacity:0;transform:translateY(0)scaleY(1)}}.fw-flash{background:radial-gradient(circle, #fff 0 26%, hsl(var(--hue) 95% 72%) 48%, transparent 70%);mix-blend-mode:screen;opacity:0;border-radius:50%;width:24px;height:24px;animation:.5s ease-out .3s both fwFlash;position:absolute;top:-12px;left:-12px}@keyframes fwFlash{0%{opacity:0;transform:scale(.2)}22%{opacity:1;transform:scale(2)}to{opacity:0;transform:scale(.7)}}.fw-ring{border:2px solid hsl(var(--hue) 95% 80%);mix-blend-mode:screen;opacity:0;border-radius:50%;width:8px;height:8px;animation:.62s cubic-bezier(.1,.6,.3,1) .3s both fwRing;position:absolute;top:-4px;left:-4px}@keyframes fwRing{0%{opacity:0;transform:scale(.3)}20%{opacity:.85}to{opacity:0;transform:scale(7)}}.fw-burst i{background:radial-gradient(circle, #fff 0 20%, hsl(var(--hue) 95% 62%) 46%, transparent 72%);width:6px;height:6px;box-shadow:0 0 9px 1px hsl(var(--hue) 90% 62% / .85);mix-blend-mode:screen;opacity:0;border-radius:50%;animation:1.2s cubic-bezier(.1,.62,.24,1) .3s both fwSpark;position:absolute;top:-3px;left:-3px;transform:translate(0)scale(.6)}.fw-burst.inner i{background:radial-gradient(circle, #fff 0 26%, hsl(var(--hue2) 95% 66%) 46%, transparent 72%);box-shadow:0 0 8px 1px hsl(var(--hue2) 90% 66% / .85);animation-duration:.92s}@keyframes fwSpark{0%{opacity:0;transform:translate(0)scale(.5)}10%{opacity:1}66%{opacity:1}to{opacity:0;transform:translate(var(--tx), var(--ty)) scale(.85)}}.fx-sky.reduced{cursor:default;background:radial-gradient(120% 90% at 50% 12%,#100c2466,#0000 60%)}.fx-sky.reduced .fw-burst i{opacity:.9;transform:translate(var(--tx), var(--ty));animation:none}.scene-flow[data-finale=fireworks]{background:radial-gradient(1.6px 1.6px at 12% 16%,#ffffffe6,#0000 60%),radial-gradient(1.4px 1.4px at 26% 30%,#fff9,#0000 60%),radial-gradient(1.8px 1.8px at 40% 11%,#ffffffd9,#0000 60%),radial-gradient(1.3px 1.3px at 57% 23%,#ffffff8c,#0000 60%),radial-gradient(1.7px 1.7px at 72% 13%,#ffffffe6,#0000 60%),radial-gradient(1.3px 1.3px at 84% 27%,#ffffff8c,#0000 60%),radial-gradient(1.5px 1.5px at 20% 43%,#ffffff80,#0000 60%),radial-gradient(1.4px 1.4px at 66% 39%,#ffffff80,#0000 60%),radial-gradient(1.6px 1.6px at 90% 46%,#fff9,#0000 60%),radial-gradient(1.3px 1.3px at 48% 51%,#fff6,#0000 60%),radial-gradient(140% 105% at 50% 4%,#271c58 0%,#16103a 38%,#0a0720 72%,#050310 100%);min-height:100%}.scene-flow[data-finale=fireworks] .cine-ambient{display:none}.scene-flow[data-finale=fireworks] .fx-sky{background:0 0}.scene-flow[data-finale=fireworks] .scene-final .final-inner{box-shadow:none;pointer-events:none;background:0 0;border:none}.scene-flow[data-finale=fireworks] .scene-final .final-title{color:#fff;text-shadow:0 2px 18px #0009,0 0 30px #785ac866}.scene-flow[data-finale=fireworks] .final-msg,.scene-flow[data-finale=fireworks] .final-sign,.scene-flow[data-finale=fireworks] .viral-cta-text,.scene-flow[data-finale=fireworks] .reaction-title,.scene-flow[data-finale=fireworks] .reaction-label{color:#ffffffdb}.scene-flow[data-finale=fireworks] .final-banner{color:#ffd97a}.scene-flow[data-finale=fireworks] .scene-btn.ghost{color:#fff;border-color:#ffffff73}.scene-flow[data-finale=fireworks] .reaction-btn{background:#ffffff1a;border-color:#ffffff47}.scene-flow[data-finale=fireworks] .cine-back,.scene-flow[data-finale=fireworks] .cine-music{color:#ffffffe6}.scene-flow[data-finale=fireworks] .cine-progress .seg{background:#ffffff4d}.bq-climax{flex-direction:column;align-items:center;gap:4px;display:flex}.bq{width:min(300px,82vw);height:262px;margin:0 auto;position:relative}.bq-heart{z-index:3;opacity:0;filter:drop-shadow(0 4px 9px #e23d6d80);width:56px;height:52px;margin-left:-28px;position:absolute;top:0;left:50%;transform:translateY(38px)scale(0)}.bq-heart-svg{width:100%;height:100%;display:block}.bq[data-bloomed="1"] .bq-heart{opacity:1;transition:transform .6s cubic-bezier(.3,1.5,.5,1) .5s,opacity .4s .5s;transform:translateY(0)scale(1)}.scene-flow:not([data-reduced="1"]) .bq[data-bloomed="1"] .bq-heart{animation:1.4s ease-in-out 1.1s infinite bqBeat}@keyframes bqBeat{0%,to{transform:scale(1)}22%{transform:scale(1.16)}40%{transform:scale(1)}62%{transform:scale(1.08)}}.bq-stage{opacity:0;width:0;height:0;transition:transform .6s cubic-bezier(.2,.85,.25,1),opacity .5s;position:absolute;bottom:26px;left:50%;transform:translate(-50%)translateY(42px)}.bq[data-bloomed="1"] .bq-stage{opacity:1;transform:translate(-50%)translateY(0)}.bq-flower{transform:rotate(var(--r));transform-origin:bottom;position:absolute;bottom:0;left:0}.bq-stem{transform-origin:bottom;background:linear-gradient(#72b25c,#47723b);border-radius:2px;width:3px;height:0;position:absolute;bottom:0;left:-1.5px}.bq[data-bloomed="1"] .bq-stem{height:var(--h);transition:height .5s cubic-bezier(.2,.8,.3,1);transition-delay:calc(var(--i) * 55ms)}.bq-stem:after{content:"";transform-origin:0;opacity:0;background:linear-gradient(120deg,#4c7a3f,#7cbf63);border-radius:0 80%;width:15px;height:9px;position:absolute;bottom:32%;left:2px;transform:rotate(26deg)scaleX(0)}.bq[data-bloomed="1"] .bq-stem:after{opacity:.95;transition:transform .34s cubic-bezier(.3,1.2,.5,1),opacity .3s;transition-delay:calc(var(--i) * 55ms + .22s);transform:rotate(26deg)scaleX(1)}.bq-head{left:50%;bottom:var(--h);width:52px;height:52px;transform:rotate(calc(var(--r) * -.5)) scale(0);transform-origin:bottom;margin-left:-26px;position:absolute}.bq[data-bloomed="1"] .bq-head{transform:rotate(calc(var(--r) * -.5)) scale(1);transition:transform .5s cubic-bezier(.3,1.45,.5,1);transition-delay:calc(var(--i) * 55ms + .25s)}.bq-svg{filter:drop-shadow(0 3px 5px #00000029);width:100%;height:100%;display:block}.bq-wrap{clip-path:polygon(50% 3%,95% 100%,5% 100%);opacity:0;background:linear-gradient(118deg,#fbeed8 0%,#f0dbb4 46%,#e2c896 100%);border-radius:6px;width:80px;height:64px;margin-left:-40px;position:absolute;bottom:-6px;left:50%;box-shadow:0 7px 15px #50321433}.bq[data-bloomed="1"] .bq-wrap{opacity:1;transition:opacity .4s .15s}.bq-shadow{opacity:0;z-index:0;background:radial-gradient(#46182238,#0000 70%);border-radius:50%;width:132px;height:18px;margin-left:-66px;position:absolute;bottom:12px;left:50%}.bq[data-bloomed="1"] .bq-shadow{opacity:1;transition:opacity .5s .1s}.bq-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:6px;padding:9px 18px;font-size:14px;display:inline-flex;box-shadow:0 6px 16px #0000002e}.bq-btn.again{color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:none;background:0 0}@media (prefers-reduced-motion:reduce){.cine-intro-big,.cine-intro-line,.cine-intro-title,.cine-intro-glow,.cine-flash,.reveal,.letter-env,.letter-card.opened,.scene-final .final-burst span,.cine-cell[data-scene],.album-card.top,.album-hint,.cine-ambient .amb-p,.cine-ambient .amb-glow,.fw-trail,.fw-flash,.fw-ring,.fw-burst i,.fx-hint,.bq-heart{animation:none!important}.album-card.top,.album-card.behind,.bq-stage,.bq-stem,.bq-stem:after,.bq-head,.bq-heart,.bq-wrap,.bq-shadow{transition:none!important}.cine-ambient{display:none}}.cine-ambient{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.cine-ambient .amb-glow{aspect-ratio:1;background:radial-gradient(closest-side, color-mix(in srgb, var(--accent) 15%, transparent), transparent 70%);border-radius:50%;width:130%;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.scene-flow:not([data-reduced="1"]) .cine-ambient .amb-glow{animation:7s ease-in-out infinite alternate ambBreath}@keyframes ambBreath{0%{opacity:.55;transform:translate(-50%,-50%)scale(.9)}to{opacity:1;transform:translate(-50%,-50%)scale(1.12)}}.cine-ambient .amb-p{background:color-mix(in srgb, var(--secondary) 70%, var(--accent));opacity:0;border-radius:50%;width:7px;height:7px;position:absolute;bottom:-8%}.scene-flow:not([data-reduced="1"]) .cine-ambient .amb-p{animation:linear infinite ambRise}@keyframes ambRise{0%{opacity:0;transform:translateY(0)translate(0)}12%{opacity:.5}88%{opacity:.5}to{opacity:0;transform:translateY(-118vh)translate(24px)}}.amb-p.p0{animation-duration:11s;animation-delay:0s;left:6%}.amb-p.p1{width:5px;height:5px;animation-duration:14s;animation-delay:2.2s;left:16%}.amb-p.p2{animation-duration:9s;animation-delay:4.5s;left:27%}.amb-p.p3{width:5px;height:5px;animation-duration:13s;animation-delay:1.1s;left:38%}.amb-p.p4{animation-duration:10s;animation-delay:3.3s;left:49%}.amb-p.p5{width:5px;height:5px;animation-duration:12s;animation-delay:5.6s;left:60%}.amb-p.p6{animation-duration:8.5s;animation-delay:.6s;left:70%}.amb-p.p7{animation-duration:15s;animation-delay:2.9s;left:80%}.amb-p.p8{width:5px;height:5px;animation-duration:11s;animation-delay:4.1s;left:90%}.amb-p.p9{animation-duration:13s;animation-delay:6.2s;left:44%}.scene-flow[data-ambiance=pixel] .cine-ambient .amb-p{border-radius:0}.scene-flow[data-ambiance=pixel]:not([data-reduced="1"]) .cine-ambient .amb-p{animation-name:ambFall}@keyframes ambFall{0%{opacity:0;transform:translateY(-115vh)}12%{opacity:.55}88%{opacity:.55}to{opacity:0;transform:translateY(6vh)}}.scene-flow[data-ambiance=pixel] .cine-ambient:after{content:"";mix-blend-mode:overlay;background:repeating-linear-gradient(#0000 0 2px,#0000001a 2px 3px);position:absolute;inset:0}.scene-gallery .gal-heading{opacity:.8;margin-bottom:2px;font-style:italic}.album-deck{width:min(280px,78vw);margin:2px auto;position:relative}.album-back{background:#fff;border-radius:3px;position:absolute;inset:0;box-shadow:0 8px 20px #00000038}.album-back.b1{transform:rotate(-4.5deg)translateY(5px)}.album-back.b2{opacity:.75;transform:rotate(5.5deg)translateY(9px)}.album-card{z-index:2;background:#fff;border-radius:3px;padding:10px 10px 14px;position:relative;box-shadow:0 14px 34px #00000057}.album-photo{aspect-ratio:4/3;background:#eee;border-radius:2px;overflow:hidden}.album-photo img{object-fit:cover;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.scene-flow:not([data-reduced="1"]) .album-photo img{animation:6s ease-in-out both kenburns}.album-cap{color:#5a5350;text-align:center;min-height:1.1em;margin-top:8px;font-size:15px;font-style:italic}.album-card.behind{z-index:1;opacity:.55;transition:transform .16s,opacity .16s;position:absolute;inset:0;transform:scale(.9)translateY(8px)}.album-card.top{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;transition:transform .3s cubic-bezier(.22,.9,.28,1),opacity .3s}.album-card.top.grabbing{cursor:grabbing;transition:none}.scene-flow:not([data-reduced="1"]) .album-card.top{animation:.42s cubic-bezier(.2,.9,.3,1) both albumRise}@keyframes albumRise{0%{opacity:0;transform:scale(.92)translateY(10px)}to{opacity:1;transform:none}}.album-hint{letter-spacing:.5px;opacity:.5;margin-top:4px;font-size:12px}.scene-flow:not([data-reduced="1"]) .album-hint{animation:2.4s ease-in-out infinite hintPulse}@keyframes hintPulse{0%,to{opacity:.32}50%{opacity:.62}}.album-nav{align-items:center;gap:14px;display:flex}.album-count{opacity:.7;color:var(--accent);font-variant-numeric:tabular-nums;font-size:13px}.love-root .album-card{padding:12px 12px 18px}.love-root .album-cap{color:#6b3d47;font-family:Cormorant Garamond,serif;font-size:17px}.love-root .album-card:before,.love-root .album-card:after{content:"";background:#ffffff8c;width:46px;height:18px;position:absolute;top:-7px;box-shadow:0 1px 3px #00000026}.love-root .album-card:before{left:18px;transform:rotate(-8deg)}.love-root .album-card:after{right:18px;transform:rotate(7deg)}.pixel-root .album-card,.pixel-root .album-back{border:2px solid var(--accent);background:#12101c;border-radius:0;padding:8px;box-shadow:0 0 0 2px #000,0 10px 26px #00000080}.pixel-root .album-photo{border-radius:0}.pixel-root .album-cap{color:var(--secondary);text-transform:uppercase;letter-spacing:1px;font-size:12px;font-style:normal}.fleuri-root .album-card{border:1px solid color-mix(in srgb, var(--accent) 30%, transparent)}.fleuri-root .album-cap{color:#6f5d54;font-family:Cormorant Garamond,serif;font-size:17px}
.pixel-root{color:#eee;border-radius:14px;width:100%;min-height:520px;font-family:VT323,monospace;position:relative;overflow:hidden}.pixel-root.framed{box-shadow:0 0 0 8px #0c0a14,0 0 0 10px #333}.stars,.stars2{z-index:0;pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 12px 18px, #ffffffe6, transparent), radial-gradient(1px 1px at 58px 42px, #ffffffb3, transparent), radial-gradient(1px 1px at 32px 74px, var(--secondary), transparent), radial-gradient(1.5px 1.5px at 82px 96px, #fff9, transparent);opacity:.55;background-size:96px 110px;animation:5.5s linear infinite starDrift;position:absolute;inset:0}.stars2{opacity:.3;background-size:140px 150px;animation-duration:9s}@keyframes starDrift{0%{background-position:0 0}to{background-position:0 110px}}.pix-particles{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.pix-p{background:var(--accent);width:8px;height:8px;image-rendering:pixelated;opacity:0;animation:7s linear infinite pixRise;position:absolute;bottom:-14px;box-shadow:0 0 0 2px #ffffff26}.pix-p:nth-child(2n){background:var(--secondary);width:6px;height:6px}.pp0{animation-delay:0s;left:8%}.pp1{animation-delay:1.6s;left:22%}.pp2{animation-delay:3.1s;left:37%}.pp3{animation-delay:.8s;left:52%}.pp4{animation-delay:2.3s;left:66%}.pp5{animation-delay:4s;left:80%}.pp6{animation-delay:1.1s;left:92%}@keyframes pixRise{0%{opacity:0;transform:translateY(0)rotate(0)}12%{opacity:.9}88%{opacity:.9}to{opacity:0;transform:translateY(-540px)rotate(180deg)}}.scanlines{pointer-events:none;z-index:4;background:repeating-linear-gradient(0deg,#0000002e 0 1px,#0000 1px 3px);position:absolute;inset:0}.crt-vignette{pointer-events:none;z-index:3;position:absolute;inset:0;box-shadow:inset 0 0 90px #000000a6}.pixel-screen{z-index:5;width:100%;padding:28px 22px;position:relative}.center{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:520px;display:flex}.pixel-title{color:#fff;text-shadow:2px 2px 0 var(--accent);max-width:320px;margin:10px 0;font-family:"Press Start 2P",monospace;font-size:15px;line-height:1.8}.pixel-title.glow{animation:2.2s ease-in-out infinite titleGlow}@keyframes titleGlow{0%,to{text-shadow:2px 2px 0 var(--accent)}50%{text-shadow:2px 2px 0 var(--accent), 0 0 14px var(--secondary)}}.pixel-sub{color:var(--secondary);max-width:300px;margin-bottom:4px;font-size:20px}.pix-hero{margin:18px 0}.pixel-btn{letter-spacing:1px;background:var(--accent);color:#fff;cursor:pointer;border:3px solid #fff;align-items:center;padding:14px 18px;font-family:"Press Start 2P",monospace;font-size:10px;text-decoration:none;transition:transform .1s;display:inline-flex;box-shadow:4px 4px #0006}.pixel-btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #0006}.pixel-btn:active{transform:translate(2px,2px);box-shadow:2px 2px #0006}.pixel-btn.small{padding:10px 12px;font-size:9px}.arcade-hint{color:var(--secondary);letter-spacing:1px;margin-top:16px;font-family:"Press Start 2P",monospace;font-size:7px;animation:1s step-start infinite blink}.dialog-box{border:3px solid var(--secondary);background:#0d0b18;border-radius:4px;max-width:340px;padding:18px;box-shadow:5px 5px #00000080}.dialog-box.wide{max-width:460px;margin:0 auto 20px}.dialog-text{color:#fff;margin-bottom:12px;font-size:19px}.lock-row{gap:8px;display:flex}.pixel-input{border:2px solid var(--accent);color:#fff;background:#1a1a2e;outline:none;flex:1;padding:8px 10px;font-family:VT323,monospace;font-size:18px}.error-text{color:var(--accent);margin-top:10px;font-size:16px}.lock-bob{animation:2s ease-in-out infinite floaty}.shake{animation:.4s shake}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.float{animation:2.4s ease-in-out infinite floaty}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.pulse{animation:1.3s ease-in-out infinite pulse}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.levelup{z-index:9;background:#06040eb8;flex-direction:column;justify-content:center;align-items:center;gap:16px;animation:.2s fadein;display:flex;position:absolute;inset:0}.levelup-text{color:#fff;text-shadow:3px 3px 0 var(--accent);font-family:"Press Start 2P",monospace;font-size:20px;animation:.5s cubic-bezier(.2,1.4,.4,1) luPop}.levelup-bar{background:#1a1a2e;border:2px solid #fff;width:180px;height:14px;padding:2px}.levelup-bar span{background:var(--secondary);width:0;height:100%;animation:.9s .15s forwards luFill;display:block}@keyframes luPop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes luFill{to{width:100%}}.story{padding-top:34px}.letter-p{color:#f2f2f2;margin-bottom:14px;font-size:20px;line-height:1.5}.fade-in{animation:.6s fadein}@keyframes fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cursor-blink{color:var(--secondary);font-size:20px;animation:.8s step-start infinite blink}@keyframes blink{50%{opacity:0}}.gallery{flex-wrap:wrap;justify-content:center;gap:14px;margin:10px 0 22px;display:flex}.photo-frame{background:#fff;width:110px;padding:6px 6px 18px;animation-name:cardIn,cardFloat;animation-duration:.5s,3.4s;animation-timing-function:ease,ease-in-out;animation-iteration-count:1,infinite;animation-delay:0s,.5s;position:relative;overflow:hidden;box-shadow:3px 3px #0006}.fc1{animation-delay:0s,.9s}.fc2{animation-delay:0s,1.3s}.photo-frame .kb{width:100%;height:90px;overflow:hidden}.photo-frame img{object-fit:cover;width:100%;height:90px;animation:10s ease-in-out infinite alternate kenburns;display:block}.photo-frame .shine{background:linear-gradient(100deg,#0000,#ffffff8c,#0000);width:45%;height:100%;animation:3.6s ease-in-out infinite shineSweep;position:absolute;top:0;left:-60%;transform:skew(-18deg)}@keyframes cardIn{0%{opacity:0;transform:translateY(14px)rotate(0)}to{opacity:1}}@keyframes cardFloat{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-7px)rotate(2deg)}}@keyframes kenburns{0%{transform:scale(1)translate(0)}to{transform:scale(1.18)translate(-4px,-3px)}}@keyframes shineSweep{0%,70%{left:-60%}to{left:130%}}.music-btn{margin:0 auto;display:inline-flex}.pixel-root .scene-flow{z-index:5;flex-direction:column;align-items:center;width:100%;display:flex;position:relative}.pixel-root .scene-dots{justify-content:center;gap:6px;margin-bottom:18px;display:flex}.pixel-root .sd{width:9px;height:9px;box-shadow:inset 0 0 0 2px var(--secondary);background:#2a2540}.pixel-root .sd.done{background:var(--secondary)}.pixel-root .sd.on{background:var(--accent);box-shadow:inset 0 0 0 2px #fff}.pixel-root .scene{text-align:center;flex-direction:column;align-items:center;gap:18px;width:100%;animation:.5s fadein;display:flex}.pixel-root .letter-card{border:3px solid var(--secondary);background:#0d0b18;max-width:340px;padding:18px;box-shadow:5px 5px #00000080}.pixel-root .letter-p{color:#f2f2f2;margin-bottom:12px;font-size:19px;line-height:1.5}.pixel-root .letter-p:last-child{margin-bottom:0}.pixel-root .type-cursor{color:var(--secondary);font-size:19px;animation:.8s step-start infinite blink}.pixel-root .scene-btn{letter-spacing:1px;background:var(--accent);color:#fff;cursor:pointer;border:3px solid #fff;align-items:center;gap:6px;padding:12px 16px;font-family:"Press Start 2P",monospace;font-size:9px;text-decoration:none;transition:transform .1s;display:inline-flex;box-shadow:4px 4px #0006}.pixel-root .scene-btn:hover{transform:translate(-2px,-2px)}.pixel-root .scene-btn.ghost{border-color:var(--secondary);color:var(--secondary);box-shadow:none;background:0 0}.pixel-root .scene-hint{color:var(--secondary);max-width:280px;font-size:18px}.pixel-root .count-label{color:var(--secondary);max-width:300px;font-family:"Press Start 2P",monospace;font-size:9px;line-height:1.6}.pixel-root .count-grid{gap:8px;display:flex}.pixel-root .count-cell{border:2px solid var(--accent);background:#0d0b18;flex-direction:column;gap:4px;min-width:52px;padding:8px 6px;display:flex}.pixel-root .count-num{color:#fff;font-family:"Press Start 2P",monospace;font-size:15px}.pixel-root .count-lbl{color:var(--secondary);font-size:14px}.pixel-root .quiz-q{color:#fff;max-width:320px;font-size:21px}.pixel-root .quiz-opts{flex-direction:column;gap:8px;width:100%;max-width:300px;display:flex}.pixel-root .quiz-opt{border:2px solid var(--secondary);color:#fff;cursor:pointer;background:#1a1a2e;padding:9px 12px;font-family:VT323,monospace;font-size:19px;transition:transform .1s}.pixel-root .quiz-opt:hover:not(:disabled){transform:translate(3px)}.pixel-root .quiz-opt.correct{background:var(--accent);border-color:#fff}.pixel-root .quiz-opt.wrong{opacity:.45}.pixel-root .quiz-fb{color:var(--secondary);font-size:18px}.pixel-root .scene-gallery .photo-card{background:#fff;width:92%;max-width:240px;padding:6px 6px 12px;animation:.5s fadein;position:relative;overflow:hidden;box-shadow:3px 3px #0006}.pixel-root .photo-card .kb{aspect-ratio:4/3;width:100%;overflow:hidden}.pixel-root .photo-card img{object-fit:cover;width:100%;height:100%;animation:5s ease-in-out kenburns;display:block}.pixel-root .photo-card .cap{color:#1a1a2e;margin-top:8px;font-family:VT323,monospace;font-size:17px}.pixel-root .gal-dots{justify-content:center;gap:6px;display:flex}.pixel-root .gd{width:8px;height:8px;box-shadow:inset 0 0 0 2px var(--secondary);cursor:pointer;background:#2a2540}.pixel-root .gd.on{background:var(--accent)}.pixel-root .voice-label{color:var(--secondary);max-width:300px;font-size:20px}.pixel-root .voice-play{background:var(--accent);color:#fff;cursor:pointer;border:3px solid #fff;justify-content:center;align-items:center;width:64px;height:64px;display:flex;box-shadow:4px 4px #0006}.pixel-root .voice-play .fill{fill:#fff}.pixel-root .voice-wave{align-items:flex-end;gap:4px;height:26px;display:flex}.pixel-root .voice-wave span{background:var(--secondary);width:5px;height:8px}.pixel-root .voice-wave.on span{animation:.9s ease-in-out infinite vw}.pixel-root .voice-wave.on span:nth-child(2n){animation-delay:.15s}.pixel-root .voice-wave.on span:nth-child(3n){animation-delay:.3s}@keyframes vw{0%,to{height:8px}50%{height:24px}}.pixel-root .end-title{color:#fff;text-shadow:2px 2px 0 var(--accent);font-family:"Press Start 2P",monospace;font-size:18px}.pixel-root .end-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.pixel-root .counter-label{color:var(--secondary);max-width:300px;font-family:"Press Start 2P",monospace;font-size:9px;line-height:1.6}.pixel-root .counter-face{border:3px solid var(--accent);background:#0d0b18;flex-direction:column;align-items:center;gap:4px;padding:14px 24px;display:inline-flex;box-shadow:5px 5px #00000080}.pixel-root .counter-num{color:#fff;text-shadow:2px 2px 0 var(--accent);font-family:"Press Start 2P",monospace;font-size:24px}.pixel-root .counter-days{letter-spacing:2px;color:var(--secondary);font-family:"Press Start 2P",monospace;font-size:8px}.pixel-root .counter-sub{color:var(--secondary);font-size:18px}.pixel-root .counter-note{color:#f2f2f2;max-width:300px;font-size:18px}.pixel-root .tl-heading{color:#fff;text-shadow:2px 2px 0 var(--accent);font-family:"Press Start 2P",monospace;font-size:11px}.pixel-root .tl-track{text-align:left;border-left:3px solid var(--secondary);flex-direction:column;gap:14px;width:100%;max-width:320px;padding-left:16px;display:flex}.pixel-root .tl-item{animation:.5s both pxReveal;position:relative}.pixel-root .tl-node{background:var(--accent);width:10px;height:10px;position:absolute;top:5px;left:-23px;box-shadow:0 0 0 2px #fff}.pixel-root .tl-date{letter-spacing:1px;color:var(--secondary);font-family:"Press Start 2P",monospace;font-size:7px}.pixel-root .tl-title{color:#fff;margin-top:3px;font-size:20px}.pixel-root .tl-text{color:#cfc7e6;margin-top:2px;font-size:17px;line-height:1.4}.pixel-root .tl-photo{border:3px solid #fff;max-width:180px;margin-top:7px;box-shadow:3px 3px #0006}.pixel-root .tl-photo img{width:100%;display:block}.pixel-root .reasons-heading{color:#fff;text-shadow:2px 2px 0 var(--accent);max-width:320px;font-family:"Press Start 2P",monospace;font-size:10px;line-height:1.7}.pixel-root .reasons-list{flex-direction:column;gap:9px;width:100%;max-width:300px;display:flex}.pixel-root .reason-card{border:2px solid var(--secondary);color:#fff;background:#1a1a2e;padding:10px 12px;font-family:VT323,monospace;font-size:20px;animation:.5s both pxReveal;box-shadow:3px 3px #0006}.pixel-root .scene-final .final-inner{border:3px solid var(--secondary);background:#06040e99;flex-direction:column;align-items:center;gap:12px;padding:22px;animation:.55s cubic-bezier(.2,1.4,.4,1) both pxFinalPop;display:flex;box-shadow:5px 5px #00000080}.pixel-root .final-badge:before{content:"★ACHIEVEMENT UNLOCKED ★";letter-spacing:1px;color:var(--secondary);font-family:"Press Start 2P",monospace;font-size:8px}.pixel-root .final-photo{border:3px solid #fff;max-width:200px;box-shadow:4px 4px #0006}.pixel-root .final-photo img{width:100%;display:block}.pixel-root .final-title{color:#fff;text-shadow:2px 2px 0 var(--accent);max-width:320px;font-family:"Press Start 2P",monospace;font-size:15px;line-height:1.6}.pixel-root .final-msg{color:#f2f2f2;max-width:300px;font-size:19px}.pixel-root .final-sign{color:var(--secondary);font-family:"Press Start 2P",monospace;font-size:8px}@keyframes pxReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pxFinalPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.pixel-root .tl-item,.pixel-root .reason-card,.pixel-root .scene-final .final-inner{animation:none!important}}.pixel-root .reaction-prompt,.pixel-root .reaction-box{flex-direction:column;align-items:center;gap:10px;width:100%;margin-top:10px;display:flex}.pixel-root .reaction-title{letter-spacing:1px;color:var(--secondary);font-family:"Press Start 2P",monospace;font-size:8px}.pixel-root .reaction-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.pixel-root .reaction-btn{border:2px solid var(--secondary);color:#fff;cursor:pointer;background:#1a1a2e;flex-direction:column;align-items:center;gap:4px;padding:8px 10px;display:flex;box-shadow:3px 3px #0006}.pixel-root .reaction-btn:hover:not(:disabled){transform:translate(-1px,-1px)}.pixel-root .reaction-emoji{font-size:20px}.pixel-root .reaction-label{font-family:VT323,monospace;font-size:14px}.pixel-root .reaction-input{border:2px solid var(--accent);color:#fff;background:#1a1a2e;outline:none;width:100%;max-width:300px;padding:8px;font-family:VT323,monospace;font-size:18px}.pixel-root .reaction-thanks{color:var(--secondary);margin-top:10px;font-family:"Press Start 2P",monospace;font-size:9px;line-height:1.6}.pixel-root .viral-cta{border-top:2px solid #ffffff1f;flex-direction:column;align-items:center;gap:9px;margin-top:18px;padding-top:14px;display:flex}.pixel-root .viral-cta-text{color:var(--secondary);max-width:280px;font-family:VT323,monospace;font-size:18px}
.love-root{color:#3a1620;border-radius:14px;width:100%;min-height:520px;font-family:Cormorant Garamond,serif;position:relative;overflow:hidden}.love-root.framed{box-shadow:0 0 0 8px #fff,0 0 0 9px #e3c9c9}.love-wash{z-index:0;pointer-events:none;background:radial-gradient(120% 80% at 20% 0%, #ffffff8c, transparent 60%), radial-gradient(90% 70% at 90% 100%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 65%);animation:9s ease-in-out infinite alternate washShift;position:absolute;inset:0}@keyframes washShift{0%{opacity:.7}to{opacity:1}}.bokeh{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.orb{background:radial-gradient(circle, #ffffffd9, color-mix(in srgb, var(--secondary) 55%, transparent) 60%, transparent 70%);filter:blur(1px);opacity:.5;border-radius:50%;animation:11s ease-in-out infinite orbFloat;position:absolute}.ob0{width:70px;height:70px;animation-delay:0s;top:60%;left:10%}.ob1{width:44px;height:44px;animation-delay:1.5s;top:22%;left:74%}.ob2{opacity:.35;width:90px;height:90px;animation-delay:3s;top:70%;left:52%}.ob3{width:30px;height:30px;animation-delay:2.2s;top:30%;left:30%}.ob4{width:56px;height:56px;animation-delay:4.1s;top:64%;left:85%}.ob5{width:38px;height:38px;animation-delay:.8s;top:14%;left:60%}@keyframes orbFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-26px)scale(1.12)}}.petals{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.petal{background:var(--secondary);opacity:.8;border-radius:150% 0;width:12px;height:12px;animation:8s linear infinite petalFall;position:absolute;top:-18px}.petal:nth-child(3n){background:var(--accent);opacity:.55}.petal:nth-child(2n){width:9px;height:9px}.pt0{animation-delay:0s;left:5%}.pt1{animation-delay:2.4s;left:15%}.pt2{animation-delay:4.6s;left:26%}.pt3{animation-delay:1.2s;left:38%}.pt4{animation-delay:3.3s;left:49%}.pt5{animation-delay:5.5s;left:60%}.pt6{animation-delay:.6s;left:70%}.pt7{animation-delay:2.9s;left:80%}.pt8{animation-delay:4.1s;left:90%}.pt9{animation-delay:6.2s;left:44%}@keyframes petalFall{0%{opacity:0;transform:translateY(0)translate(0)rotate(0)}10%{opacity:.8}90%{opacity:.8}to{opacity:0;transform:translateY(540px)translate(40px)rotate(320deg)}}.hearts-field{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.drift{opacity:.3;animation:10s linear infinite drift;position:absolute;bottom:-20px}.d0{animation-delay:0s;left:8%}.d1{animation-delay:2.4s;left:28%}.d2{animation-delay:1.1s;left:50%}.d3{animation-delay:3.6s;left:68%}.d4{animation-delay:.5s;left:86%}@keyframes drift{0%{transform:translateY(0)rotate(0)}to{transform:translateY(-560px)rotate(25deg)}}.love-screen{z-index:5;width:100%;padding:30px 24px;position:relative}.center{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:520px;display:flex}.love-question{color:var(--accent);margin-bottom:18px;font-size:19px;font-style:italic}.envelope{width:150px;height:100px;margin-bottom:20px;transition:transform .5s;animation:3s ease-in-out infinite envBob;position:relative}.envelope.crack{animation:.7s forwards crackAway}@keyframes envBob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes crackAway{to{opacity:0;transform:scale(.85)rotate(-4deg)}}.envelope .body{background:#f6e4d8;border:1px solid #d8b9a3;border-radius:3px;position:absolute;inset:20px 0 0}.envelope .flap{border-top:46px solid #ecd3c2;border-left:75px solid #0000;border-right:75px solid #0000;width:0;height:0;position:absolute;top:0;left:0}.envelope .seal{background:var(--accent);border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;top:30px;left:50%;transform:translate(-50%);box-shadow:0 2px 4px #0000004d}.love-row{gap:8px;display:flex}.love-input{border:1px solid var(--secondary);background:#fffaf7;border-radius:20px;outline:none;padding:9px 12px;font-family:Cormorant Garamond,serif;font-size:16px}.love-btn{letter-spacing:.5px;background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:24px;padding:12px 22px;font-family:Playfair Display,serif;font-size:13px;transition:transform .15s;box-shadow:0 3px 8px #8b1e3f59}.love-btn:hover{transform:translateY(-2px)}.love-btn.small{padding:9px 16px;font-size:12px}.shake{animation:.4s shake}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.love-error{color:var(--accent);margin-top:10px;font-size:14px;font-style:italic}.glow-heart{justify-content:center;align-items:center;width:60px;height:60px;margin-bottom:6px;display:flex;position:relative}.glow-heart .halo{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 45%, transparent), transparent 65%);border-radius:50%;width:60px;height:60px;animation:1.6s ease-in-out infinite halo;position:absolute}.beat{animation:1.4s ease-in-out infinite beat;position:relative}@keyframes beat{0%,to{transform:scale(1)}15%{transform:scale(1.22)}30%{transform:scale(1)}45%{transform:scale(1.14)}}@keyframes halo{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.15;transform:scale(1.5)}}.eyebrow{letter-spacing:3px;text-transform:uppercase;color:var(--secondary);margin-bottom:8px;font-size:11px}.love-title{color:var(--accent);max-width:320px;margin:4px 0 10px;font-family:Playfair Display,serif;font-size:26px}.love-sub{color:#6b3d47;max-width:300px;margin-bottom:20px;font-size:18px;font-style:italic}.story{padding-top:30px}.parchment{z-index:5;background:#fffaf3;border:1px solid #e8d5c4;border-radius:6px;max-width:460px;margin:0 auto 20px;padding:24px;position:relative;box-shadow:0 2px 10px #0000000f}.love-p{color:#4a2530;margin-bottom:14px;font-size:19px;line-height:1.6}.fade-in{animation:.7s fadein}@keyframes fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.polaroids{z-index:5;flex-wrap:wrap;justify-content:center;gap:16px;margin:6px 0 22px;display:flex;position:relative}.polaroid{transform-origin:top;background:#fff;width:112px;padding:6px 6px 20px;overflow:hidden;box-shadow:0 6px 16px #0003}.polaroid .kb{width:100%;height:92px;overflow:hidden}.polaroid img{object-fit:cover;width:100%;height:92px;animation:12s ease-in-out infinite alternate kenburns;display:block}.sway{animation:5s ease-in-out infinite sway}.sw0{animation-delay:0s}.sw1{animation-delay:1.1s}.sw2{animation-delay:2.2s}@keyframes sway{0%,to{transform:rotate(-3deg)translateY(0)}50%{transform:rotate(3deg)translateY(-5px)}}@keyframes kenburns{0%{transform:scale(1)translate(0)}to{transform:scale(1.16)translate(4px,-3px)}}.music-btn{margin:0 auto;display:inline-flex}.love-root .scene-flow{z-index:5;flex-direction:column;align-items:center;width:100%;display:flex;position:relative}.love-root .scene-dots{justify-content:center;gap:7px;margin-bottom:18px;display:flex}.love-root .sd{background:#e6d0d6;border-radius:50%;width:8px;height:8px;transition:transform .3s}.love-root .sd.done{background:var(--secondary)}.love-root .sd.on{background:var(--accent);transform:scale(1.3)}.love-root .scene{text-align:center;flex-direction:column;align-items:center;gap:18px;width:100%;animation:.6s fadein;display:flex}.love-root .letter-card{background:#fffaf3;border:1px solid #e8d5c4;border-radius:8px;max-width:420px;padding:24px;box-shadow:0 4px 16px #00000012}.love-root .letter-p{color:#4a2530;margin-bottom:14px;font-size:19px;line-height:1.6}.love-root .letter-p:last-child{margin-bottom:0}.love-root .type-cursor{color:var(--accent)}.love-root .scene-btn{letter-spacing:.5px;background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:24px;align-items:center;gap:6px;padding:11px 22px;font-family:Playfair Display,serif;font-size:13px;text-decoration:none;transition:transform .15s;display:inline-flex;box-shadow:0 3px 10px #8b1e3f4d}.love-root .scene-btn:hover{transform:translateY(-2px)}.love-root .scene-btn.ghost{color:var(--accent);box-shadow:none;border:1px solid var(--secondary);background:0 0}.love-root .scene-hint{color:#6b3d47;max-width:280px;font-size:18px;font-style:italic}.love-root .count-label{color:var(--accent);max-width:300px;font-family:Playfair Display,serif;font-size:16px}.love-root .count-grid{gap:10px;display:flex}.love-root .count-cell{background:#fff;border:1px solid #ecd8c8;border-radius:12px;flex-direction:column;gap:3px;min-width:58px;padding:10px 8px;display:flex;box-shadow:0 3px 10px #0000000f}.love-root .count-num{color:var(--accent);font-family:Playfair Display,serif;font-size:22px}.love-root .count-lbl{color:#927f79;font-size:15px}.love-root .quiz-q{color:var(--accent);max-width:320px;font-family:Playfair Display,serif;font-size:21px}.love-root .quiz-opts{flex-direction:column;gap:9px;width:100%;max-width:300px;display:flex}.love-root .quiz-opt{border:1px solid var(--secondary);color:#4a2530;cursor:pointer;background:#fffaf7;border-radius:14px;padding:11px 14px;font-family:Cormorant Garamond,serif;font-size:19px;transition:transform .15s}.love-root .quiz-opt:hover:not(:disabled){transform:translateY(-2px)}.love-root .quiz-opt.correct{background:var(--accent);color:#fff;border-color:var(--accent)}.love-root .quiz-opt.wrong{opacity:.5}.love-root .quiz-fb{color:var(--accent);font-size:18px;font-style:italic}.love-root .scene-gallery .photo-card{background:#fff;width:92%;max-width:240px;padding:8px 8px 12px;animation:.5s fadein;overflow:hidden;box-shadow:0 8px 22px #00000038}.love-root .photo-card .kb{aspect-ratio:4/3;border-radius:2px;width:100%;overflow:hidden}.love-root .photo-card img{object-fit:cover;width:100%;height:100%;animation:5s ease-in-out kenburns;display:block}.love-root .photo-card .cap{color:#6b3d47;margin-top:8px;font-family:Cormorant Garamond,serif;font-size:18px;font-style:italic}.love-root .gal-dots{justify-content:center;gap:7px;display:flex}.love-root .gd{cursor:pointer;background:#e6d0d6;border-radius:50%;width:8px;height:8px}.love-root .gd.on{background:var(--accent)}.love-root .voice-label{color:var(--accent);max-width:300px;font-family:Playfair Display,serif;font-size:19px}.love-root .voice-play{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:66px;height:66px;display:flex;box-shadow:0 6px 18px #8b1e3f66}.love-root .voice-play .fill{fill:#fff}.love-root .voice-wave{align-items:flex-end;gap:4px;height:26px;display:flex}.love-root .voice-wave span{background:var(--secondary);border-radius:3px;width:5px;height:8px}.love-root .voice-wave.on span{animation:.9s ease-in-out infinite vw}.love-root .voice-wave.on span:nth-child(2n){animation-delay:.15s}.love-root .voice-wave.on span:nth-child(3n){animation-delay:.3s}@keyframes vw{0%,to{height:8px}50%{height:24px}}.love-root .end-title{color:var(--accent);font-family:Playfair Display,serif;font-size:26px}.love-root .end-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.love-root .counter-label{color:var(--accent);max-width:300px;font-family:Playfair Display,serif;font-size:18px}.love-root .counter-face{background:#fffaf3;border:1px solid #e8d5c4;border-radius:16px;flex-direction:column;align-items:center;gap:2px;margin-top:8px;padding:20px 30px 16px;display:inline-flex;position:relative;box-shadow:0 8px 24px #8b1e3f1f}.love-root .counter-face:before{content:"♥";color:var(--accent);font-size:24px;animation:1.5s ease-in-out infinite lvBeat;position:absolute;top:-13px}.love-root .counter-num{color:var(--accent);font-family:Playfair Display,serif;font-size:42px;line-height:1}.love-root .counter-days{color:#927f79;letter-spacing:2px;font-family:Cormorant Garamond,serif;font-size:16px;font-style:italic}.love-root .counter-sub{color:#6b3d47;font-size:17px;font-style:italic}.love-root .counter-note{color:#4a2530;max-width:300px;font-size:18px}.love-root .tl-heading{color:var(--accent);font-family:Playfair Display,serif;font-size:22px}.love-root .tl-track{text-align:left;border-left:2px solid var(--secondary);flex-direction:column;gap:16px;width:100%;max-width:360px;padding-left:18px;display:flex}.love-root .tl-item{animation:.6s both lvReveal;position:relative}.love-root .tl-node{background:var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;top:4px;left:-25px;box-shadow:0 0 0 3px #fff,0 0 0 4px #e8d5c4}.love-root .tl-date{color:var(--secondary);font-family:Cormorant Garamond,serif;font-size:15px;font-style:italic}.love-root .tl-title{color:var(--accent);margin-top:1px;font-family:Playfair Display,serif;font-size:20px}.love-root .tl-text{color:#4a2530;margin-top:2px;font-size:18px;line-height:1.5}.love-root .tl-photo{background:#fff;max-width:190px;margin-top:8px;padding:6px 6px 12px;box-shadow:0 6px 16px #00000029}.love-root .tl-photo img{width:100%;display:block}.love-root .reasons-heading{color:var(--accent);max-width:320px;font-family:Playfair Display,serif;font-size:22px}.love-root .reasons-list{flex-direction:column;gap:10px;width:100%;max-width:320px;display:flex}.love-root .reason-card{color:#4a2530;background:#fffaf3;border:1px solid #e8d5c4;border-radius:14px;padding:12px 16px;font-family:Cormorant Garamond,serif;font-size:20px;animation:.55s both lvReveal;box-shadow:0 4px 14px #8b1e3f14}.love-root .scene-final .final-inner{background:#fffaf3;border:1px solid #e8d5c4;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:26px 24px;animation:.6s cubic-bezier(.2,1.2,.4,1) both lvFinalPop;display:flex;position:relative;box-shadow:0 12px 34px #8b1e3f29}.love-root .final-badge:before{content:"♥";color:var(--accent);font-size:26px;animation:1.5s ease-in-out infinite lvBeat;display:block}.love-root .final-photo{background:#fff;max-width:210px;padding:7px 7px 14px;box-shadow:0 8px 22px #0003}.love-root .final-photo img{width:100%;display:block}.love-root .final-title{color:var(--accent);max-width:320px;font-family:Playfair Display,serif;font-size:28px;line-height:1.2}.love-root .final-msg{color:#6b3d47;max-width:300px;font-size:19px;font-style:italic;line-height:1.5}.love-root .final-sign{color:var(--accent);font-family:Cormorant Garamond,serif;font-size:18px;font-style:italic}@keyframes lvReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes lvFinalPop{0%{opacity:0;transform:scale(.82)translateY(10px)}to{opacity:1;transform:none}}@keyframes lvBeat{0%,to{transform:scale(1)}15%{transform:scale(1.2)}30%{transform:scale(1)}45%{transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.love-root .tl-item,.love-root .reason-card,.love-root .scene-final .final-inner,.love-root .counter-face:before,.love-root .final-badge:before{animation:none!important}}.love-root .reaction-prompt,.love-root .reaction-box{flex-direction:column;align-items:center;gap:10px;width:100%;margin-top:12px;display:flex}.love-root .reaction-title{color:#6b3d47;font-family:Cormorant Garamond,serif;font-size:18px;font-style:italic}.love-root .reaction-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.love-root .reaction-btn{color:#4a2530;cursor:pointer;background:#fffaf3;border:1px solid #e8d5c4;border-radius:14px;flex-direction:column;align-items:center;gap:3px;padding:8px 12px;transition:transform .15s;display:flex;box-shadow:0 4px 12px #8b1e3f1a}.love-root .reaction-btn:hover:not(:disabled){transform:translateY(-2px)}.love-root .reaction-emoji{font-size:22px}.love-root .reaction-label{font-family:Cormorant Garamond,serif;font-size:15px}.love-root .reaction-input{border:1px solid var(--secondary);color:#4a2530;background:#fffaf7;border-radius:12px;outline:none;width:100%;max-width:320px;padding:10px;font-family:Cormorant Garamond,serif;font-size:18px}.love-root .reaction-thanks{color:var(--accent);margin-top:10px;font-family:Playfair Display,serif;font-size:19px}.love-root .viral-cta{border-top:1px solid #e8d5c4;flex-direction:column;align-items:center;gap:10px;margin-top:20px;padding-top:16px;display:flex}.love-root .viral-cta-text{color:#6b3d47;max-width:300px;font-family:Cormorant Garamond,serif;font-size:18px;font-style:italic}
.fleuri-root{color:#3f4632;border-radius:14px;width:100%;min-height:520px;font-family:Cormorant Garamond,serif;position:relative;overflow:hidden}.fleuri-root.framed{box-shadow:0 0 0 8px #fdfcf6,0 0 0 9px #d8cfa8}.fl-vignette{z-index:0;pointer-events:none;background:radial-gradient(120% 90% at 50% 0,#ffffff80,#0000 55%);position:absolute;inset:0;box-shadow:inset 0 0 70px #786e461a,inset 0 0 0 1px #a08c501f}.fl-corner{z-index:1;color:var(--accent);opacity:.13;pointer-events:none;position:absolute}.fl-corner.tl{top:10px;left:8px;transform:rotate(20deg)}.fl-corner.br{bottom:10px;right:8px;transform:rotate(200deg)}.fl-petals{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.fl-petal{background:var(--secondary);opacity:.7;border-radius:0 100%;width:11px;height:11px;animation:12s linear infinite flPetal;position:absolute;top:-16px}.fl-petal:nth-child(3n){background:var(--accent);opacity:.5}.fl-petal:nth-child(3n+1){opacity:.55;background:#c2a15a}.fl-petal:nth-child(2n){width:8px;height:8px}.fp0{animation-delay:0s;left:5%}.fp1{animation-delay:3s;left:14%}.fp2{animation-delay:6s;left:23%}.fp3{animation-delay:1.5s;left:33%}.fp4{animation-delay:4.5s;left:42%}.fp5{animation-delay:7.5s;left:51%}.fp6{animation-delay:2.2s;left:60%}.fp7{animation-delay:5.2s;left:69%}.fp8{animation-delay:8.4s;left:78%}.fp9{animation-delay:1s;left:87%}.fp10{animation-delay:4s;left:95%}.fp11{animation-delay:9.6s;left:47%}@keyframes flPetal{0%{opacity:0;transform:translateY(0)translate(0)rotate(0)}10%{opacity:.75}90%{opacity:.75}to{opacity:0;transform:translateY(540px)translate(34px)rotate(300deg)}}.fl-screen{z-index:5;width:100%;padding:30px 24px;position:relative}.center{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:520px;display:flex}.story{padding-top:30px}.fl-divider{color:var(--accent);align-items:center;gap:10px;margin-bottom:18px;display:flex}.fl-divider span{background:#cbb783;width:46px;height:1px;display:block}.fl-question{color:var(--accent);margin-bottom:16px;font-size:20px;font-style:italic}.fl-row{gap:8px;display:flex}.fl-input{color:#3f4632;background:#fdfcf6;border:1px solid #cbb783;border-radius:3px;outline:none;padding:9px 13px;font-family:Cormorant Garamond,serif;font-size:17px}.fl-btn{letter-spacing:1.5px;text-transform:uppercase;background:var(--accent);color:#fdfcf6;cursor:pointer;border:none;border-radius:3px;padding:12px 22px;font-family:Fraunces,serif;font-size:12px;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 14px #5a643c47}.fl-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #5a643c4d}.fl-btn.small{padding:9px 16px;font-size:11px}.fl-error{color:var(--secondary);margin-top:10px;font-size:15px;font-style:italic}.fl-bloom{color:var(--accent);margin-bottom:6px;animation:5s ease-in-out infinite flBloom}@keyframes flBloom{0%,to{transform:rotate(-6deg)scale(1)}50%{transform:rotate(6deg)scale(1.08)}}.fl-eyebrow{letter-spacing:5px;text-transform:uppercase;color:#c2a15a;margin-bottom:10px;font-family:Fraunces,serif;font-size:10px}.fl-title{color:var(--accent);max-width:320px;margin:2px 0 12px;font-family:Fraunces,serif;font-size:27px;font-weight:500;line-height:1.2}.fl-sub{color:#6b6a4e;max-width:300px;margin-bottom:22px;font-size:18px;font-style:italic}.shake{animation:.4s shake}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.fleuri-root .scene-flow{z-index:5;flex-direction:column;align-items:center;width:100%;display:flex;position:relative}.fleuri-root .scene-dots{justify-content:center;gap:8px;margin-bottom:18px;display:flex}.fleuri-root .sd{background:#e0dcc4;border-radius:50%;width:8px;height:8px;transition:transform .3s}.fleuri-root .sd.done{background:var(--secondary)}.fleuri-root .sd.on{background:var(--accent);transform:scale(1.35)}.fleuri-root .scene{text-align:center;flex-direction:column;align-items:center;gap:18px;width:100%;animation:.6s fadein;display:flex}.fleuri-root .letter-card{background:#fdfcf6;border:1px solid #d8cfa8;border-radius:4px;max-width:420px;padding:24px;box-shadow:0 6px 20px #786e461a}.fleuri-root .letter-p{color:#444a35;margin-bottom:14px;font-size:19px;line-height:1.65}.fleuri-root .letter-p:last-child{margin-bottom:0}.fleuri-root .type-cursor{color:var(--accent)}.fleuri-root .scene-btn{letter-spacing:1.5px;text-transform:uppercase;background:var(--accent);color:#fdfcf6;cursor:pointer;border:none;border-radius:3px;align-items:center;gap:6px;padding:11px 22px;font-family:Fraunces,serif;font-size:12px;text-decoration:none;transition:transform .15s;display:inline-flex;box-shadow:0 4px 14px #5a643c42}.fleuri-root .scene-btn:hover{transform:translateY(-2px)}.fleuri-root .scene-btn.ghost{color:var(--accent);box-shadow:none;background:0 0;border:1px solid #cbb783}.fleuri-root .scene-hint{color:#6b6a4e;max-width:280px;font-size:18px;font-style:italic}.fleuri-root .count-label{letter-spacing:.5px;color:var(--accent);max-width:300px;font-family:Fraunces,serif;font-size:15px}.fleuri-root .count-grid{gap:10px;display:flex}.fleuri-root .count-cell{background:#fdfcf6;border:1px solid #d8cfa8;border-radius:4px;flex-direction:column;gap:3px;min-width:58px;padding:10px 8px;display:flex;box-shadow:0 3px 12px #786e4614}.fleuri-root .count-num{color:var(--accent);font-family:Fraunces,serif;font-size:22px}.fleuri-root .count-lbl{color:#8a8a6e;font-size:15px}.fleuri-root .quiz-q{color:var(--accent);max-width:320px;font-family:Fraunces,serif;font-size:21px;font-weight:500}.fleuri-root .quiz-opts{flex-direction:column;gap:9px;width:100%;max-width:300px;display:flex}.fleuri-root .quiz-opt{color:#444a35;cursor:pointer;background:#fdfcf6;border:1px solid #cbb783;border-radius:4px;padding:11px 14px;font-family:Cormorant Garamond,serif;font-size:19px;transition:transform .15s}.fleuri-root .quiz-opt:hover:not(:disabled){transform:translateY(-2px)}.fleuri-root .quiz-opt.correct{background:var(--accent);color:#fdfcf6;border-color:var(--accent)}.fleuri-root .quiz-opt.wrong{opacity:.5}.fleuri-root .quiz-fb{color:var(--accent);font-size:18px;font-style:italic}.fleuri-root .scene-gallery .photo-card{background:#fdfcf6;border:1px solid #ece3c6;width:92%;max-width:240px;padding:8px 8px 12px;animation:.5s fadein;overflow:hidden;box-shadow:0 8px 22px #786e462e}.fleuri-root .photo-card .kb{aspect-ratio:4/3;width:100%;overflow:hidden}.fleuri-root .photo-card img{object-fit:cover;width:100%;height:100%;animation:5s ease-in-out kenburns;display:block}.fleuri-root .photo-card .cap{color:#6b6a4e;margin-top:8px;font-family:Cormorant Garamond,serif;font-size:18px;font-style:italic}.fleuri-root .gal-dots{justify-content:center;gap:7px;display:flex}.fleuri-root .gd{cursor:pointer;background:#e0dcc4;border-radius:50%;width:8px;height:8px}.fleuri-root .gd.on{background:var(--accent)}.fleuri-root .voice-label{color:var(--accent);max-width:300px;font-family:Fraunces,serif;font-size:18px}.fleuri-root .voice-play{background:var(--accent);color:#fdfcf6;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:66px;height:66px;display:flex;box-shadow:0 6px 18px #5a643c4d}.fleuri-root .voice-play .fill{fill:#fdfcf6}.fleuri-root .voice-wave{align-items:flex-end;gap:4px;height:26px;display:flex}.fleuri-root .voice-wave span{background:var(--secondary);border-radius:3px;width:5px;height:8px}.fleuri-root .voice-wave.on span{animation:.9s ease-in-out infinite vw}.fleuri-root .voice-wave.on span:nth-child(2n){animation-delay:.15s}.fleuri-root .voice-wave.on span:nth-child(3n){animation-delay:.3s}@keyframes vw{0%,to{height:8px}50%{height:24px}}.fleuri-root .end-title{color:var(--accent);font-family:Fraunces,serif;font-size:26px}.fleuri-root .end-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.fleuri-root .counter-label{letter-spacing:.5px;color:var(--accent);max-width:300px;font-family:Fraunces,serif;font-size:15px}.fleuri-root .counter-face{background:#fdfcf6;border:1px solid #d8cfa8;border-radius:5px;flex-direction:column;align-items:center;gap:3px;margin-top:6px;padding:20px 30px;display:inline-flex;position:relative;box-shadow:0 6px 20px #786e461a}.fleuri-root .counter-face:before{content:"";background:#cbb783;height:1px;position:absolute;top:-1px;left:12%;right:12%}.fleuri-root .counter-num{color:var(--accent);font-family:Fraunces,serif;font-size:40px;font-weight:500;line-height:1}.fleuri-root .counter-days{text-transform:uppercase;letter-spacing:3px;color:#c2a15a;font-family:Fraunces,serif;font-size:11px}.fleuri-root .counter-sub{color:#6b6a4e;font-size:17px;font-style:italic}.fleuri-root .counter-note{color:#444a35;max-width:300px;font-size:18px}.fleuri-root .tl-heading{color:var(--accent);font-family:Fraunces,serif;font-size:21px}.fleuri-root .tl-track{text-align:left;border-left:1px solid #cbb783;flex-direction:column;gap:16px;width:100%;max-width:360px;padding-left:18px;display:flex}.fleuri-root .tl-item{animation:.6s both flReveal;position:relative}.fleuri-root .tl-node{background:var(--accent);border-radius:50%;width:9px;height:9px;position:absolute;top:5px;left:-24px;box-shadow:0 0 0 3px #fdfcf6,0 0 0 4px #cbb783}.fleuri-root .tl-date{text-transform:uppercase;letter-spacing:1.5px;color:#c2a15a;font-family:Fraunces,serif;font-size:11px}.fleuri-root .tl-title{color:var(--accent);margin-top:2px;font-family:Fraunces,serif;font-size:19px}.fleuri-root .tl-text{color:#444a35;margin-top:2px;font-size:18px;line-height:1.55}.fleuri-root .tl-photo{background:#fdfcf6;border:1px solid #ece3c6;max-width:190px;margin-top:8px;padding:6px 6px 10px;box-shadow:0 6px 16px #786e4624}.fleuri-root .tl-photo img{width:100%;display:block}.fleuri-root .reasons-heading{color:var(--accent);max-width:320px;font-family:Fraunces,serif;font-size:21px}.fleuri-root .reasons-list{flex-direction:column;gap:10px;width:100%;max-width:320px;display:flex}.fleuri-root .reason-card{color:#444a35;background:#fdfcf6;border:1px solid #d8cfa8;border-radius:4px;padding:12px 16px;font-family:Cormorant Garamond,serif;font-size:20px;animation:.55s both flReveal;box-shadow:0 4px 14px #786e4614}.fleuri-root .scene-final .final-inner{background:#fdfcf6;border:1px solid #d8cfa8;border-radius:5px;flex-direction:column;align-items:center;gap:12px;padding:26px 24px;animation:.6s cubic-bezier(.2,1.2,.4,1) both flFinalPop;display:flex;position:relative;box-shadow:0 12px 30px #786e4629}.fleuri-root .final-badge:before{content:"✿";color:var(--accent);font-size:24px;animation:5s ease-in-out infinite flBloom;display:block}.fleuri-root .final-photo{background:#fdfcf6;border:1px solid #ece3c6;max-width:210px;padding:6px 6px 12px;box-shadow:0 8px 20px #786e462e}.fleuri-root .final-photo img{width:100%;display:block}.fleuri-root .final-title{color:var(--accent);max-width:320px;font-family:Fraunces,serif;font-size:27px;font-weight:500;line-height:1.2}.fleuri-root .final-msg{color:#6b6a4e;max-width:300px;font-size:19px;font-style:italic;line-height:1.5}.fleuri-root .final-sign{letter-spacing:1px;color:#c2a15a;font-family:Fraunces,serif;font-size:14px}@keyframes flReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes flFinalPop{0%{opacity:0;transform:scale(.84)translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.fleuri-root .tl-item,.fleuri-root .reason-card,.fleuri-root .scene-final .final-inner,.fleuri-root .final-badge:before{animation:none!important}}.fleuri-root .reaction-prompt,.fleuri-root .reaction-box{flex-direction:column;align-items:center;gap:10px;width:100%;margin-top:12px;display:flex}.fleuri-root .reaction-title{letter-spacing:.5px;color:var(--accent);font-family:Fraunces,serif;font-size:15px}.fleuri-root .reaction-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.fleuri-root .reaction-btn{color:#444a35;cursor:pointer;background:#fdfcf6;border:1px solid #d8cfa8;border-radius:4px;flex-direction:column;align-items:center;gap:3px;padding:8px 12px;transition:transform .15s;display:flex;box-shadow:0 4px 12px #786e461a}.fleuri-root .reaction-btn:hover:not(:disabled){transform:translateY(-2px)}.fleuri-root .reaction-emoji{font-size:22px}.fleuri-root .reaction-label{font-family:Cormorant Garamond,serif;font-size:15px}.fleuri-root .reaction-input{color:#444a35;background:#fdfcf6;border:1px solid #cbb783;border-radius:4px;outline:none;width:100%;max-width:320px;padding:10px;font-family:Cormorant Garamond,serif;font-size:18px}.fleuri-root .reaction-thanks{color:var(--accent);margin-top:10px;font-family:Fraunces,serif;font-size:18px}.fleuri-root .viral-cta{border-top:1px solid #d8cfa8;flex-direction:column;align-items:center;gap:10px;margin-top:20px;padding-top:16px;display:flex}.fleuri-root .viral-cta-text{color:#6b6a4e;max-width:300px;font-family:Cormorant Garamond,serif;font-size:18px;font-style:italic}@keyframes fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{50%{opacity:0}}@keyframes sway{0%,to{transform:rotate(-3deg)translateY(0)}50%{transform:rotate(3deg)translateY(-5px)}}@keyframes kenburns{0%{transform:scale(1)translate(0)}to{transform:scale(1.16)translate(4px,-3px)}}
