:root{font-family:Trebuchet MS,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--cursor-heart: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyOCIgaGVpZ2h0PSIyOCIgdmlld0JveD0iMCAwIDI4IDI4Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImJnIiB4MT0iMCUiIHkxPSIwJSIgeDI9IjEwMCUiIHkyPSIxMDAlIj48c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjOTNjNWZkIi8+PHN0b3Agb2Zmc2V0PSI1MCUiIHN0b3AtY29sb3I9IiMzYjgyZjYiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMxZDRlZDgiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyLCAyKSI+PHBhdGggZD0iTTEyIDIxLjM1bC0xLjQ1LTEuMzJDNS40IDE1LjM2IDIgMTIuMjggMiA4LjUgMiA1LjQyIDQuNDIgMyA3LjUgM2MxLjc0IDAgMy40MS44MSA0LjUgMi4wOUMxMy4wOSAzLjgxIDE0Ljc2IDMgMTYuNSAzIDE5LjU4IDMgMjIgNS40MiAyMiA4LjVjMCAzLjc4LTMuNCA2Ljg2LTguNTUgMTEuNTRMMTIgMjEuMzV6IiBmaWxsPSJyZ2JhKDE1LCAzOSwgNjgsIDAuNDUpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAxLjUpIi8+PHBhdGggZD0iTTEyIDIxLjM1bC0xLjQ1LTEuMzJDNS40IDE1LjM2IDIgMTIuMjggMiA4LjUgMiA1LjQyIDQuNDIgMyA3LjUgM2MxLjc0IDAgMy40MS44MSA0LjUgMi4wOUMxMy4wOSAzLjgxIDE0Ljc2IDMgMTYuNSAzIDE5LjU4IDMgMjIgNS40MiAyMiA4LjVjMCAzLjc4LTMuNCA2Ljg2LTguNTUgMTEuNTRMMTIgMjEuMzV6IiBmaWxsPSJ1cmwoI2JnKSIgc3Ryb2tlPSIjZmZmZmZmIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxlbGxpcHNlIGN4PSI3LjIiIGN5PSI3LjIiIHJ4PSIyLjQiIHJ5PSIxLjQiIHRyYW5zZm9ybT0icm90YXRlKC0zMCA3LjIgNy4yKSIgZmlsbD0iI2ZmZmZmZiIgb3BhY2l0eT0iMC44Ii8+PC9nPjwvc3ZnPg==) 9 5, auto;--cursor-heart-pointer: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImJncCIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzYwYTVmYSIvPjxzdG9wIG9mZnNldD0iNTAlIiBzdG9wLWNvbG9yPSIjMjU2M2ViIi8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjMWU0MGFmIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMiwgNCkiPjxwYXRoIGQ9Ik0xMiAyMS4zNWwtMS40NS0xLjMyQzUuNCAxNS4zNiAyIDEyLjI4IDIgOC41IDIgNS40MiA0LjQyIDMgNy41IDNjMS43NCAwIDMuNDEuODEgNC41IDIuMDlDMTMuMDkgMy44MSAxNC43NiAzIDE2LjUgMyAxOS41OCAzIDIyIDUuNDIgMjIgOC41YzAgMy43OC0zLjQgNi44Ni04LjU1IDExLjU0TDEyIDIxLjM1eiIgZmlsbD0icmdiYSgxNSwgMzksIDY4LCAwLjQ1KSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCwgMS41KSIvPjxwYXRoIGQ9Ik0xMiAyMS4zNWwtMS40NS0xLjMyQzUuNCAxNS4zNiAyIDEyLjI4IDIgOC41IDIgNS40MiA0LjQyIDMgNy41IDNjMS43NCAwIDMuNDEuODEgNC41IDIuMDlDMTMuMDkgMy44MSAxNC43NiAzIDE2LjUgMyAxOS41OCAzIDIyIDUuNDIgMjIgOC41YzAgMy43OC0zLjQgNi44Ni04LjU1IDExLjU0TDEyIDIxLjM1eiIgZmlsbD0idXJsKCNiZ3ApIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMS44IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PGVsbGlwc2UgY3g9IjcuMiIgY3k9IjcuMiIgcng9IjIuNSIgcnk9IjEuNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTMwIDcuMiA3LjIpIiBmaWxsPSIjZmZmZmZmIiBvcGFjaXR5PSIwLjg1Ii8+PHBhdGggZD0iTTIyIDIgTDIyLjggNC4yIEwyNSA1IEwyMi44IDUuOCBMMjIgOCBMMjEuMiA1LjggTDE5IDUgTDIxLjIgNC4yIFoiIGZpbGw9IiNmZmQxNjYiIHN0cm9rZT0iI2ZmZmZmZiIgc3Ryb2tlLXdpZHRoPSIwLjgiLz48L2c+PC9zdmc+) 9 7, pointer}*,*:before,*:after{cursor:var(--cursor-heart)}button,a,input[type=button],input[type=submit],input[type=file],[role=button],[role=tab],select,summary,.button,.icon-button,.scrapbook-card,.spotlight-btn,.mode-btn,.album-nav-arrow,.album-current-card-wrapper,.album-dot,.heart-react-btn,.candle-glow-button,.hero-scroll-cue,.candle-preview-switch,.modal-backdrop,.close-editor,.close-spotlight,.close-letter,.open-letter-button,.wax-letter-seal,.candle-blow-cta,.cake-wrap,.flame,.candle-19-item,.candle-19-flame,.test-preview-button,.test-celebration-btn,.subtle-skip-link,.step-inside-btn{cursor:var(--cursor-heart-pointer)!important}input[type=text],input[type=password],input[type=date],textarea{cursor:text!important}.glitter-cursor-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:999999}html{scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--rose-dark);outline-offset:3px}button:disabled{opacity:.65;cursor:wait}[hidden]{display:none!important}.app-theme{--ink: var(--heading);--rose: var(--accent);--rose-dark: var(--accent-strong);--paper: var(--card);--blush: var(--accent-soft);--line: var(--border);--sage: var(--secondary-accent);--yellow: var(--gold);color:var(--text);font-family:var(--font-body, "Trebuchet MS"),"Segoe UI",sans-serif}.blue-lock-page{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#071322;padding:0;margin:0;box-sizing:border-box}.blue-lock-page .lock-float-doodle{position:absolute;pointer-events:none;z-index:5;-webkit-user-select:none;user-select:none;animation:float-drift 4s ease-in-out infinite alternate}.blue-lock-page .heart-top-left{top:10%;left:clamp(4%,18%,20%);color:#60a5fa;font-size:24px}.blue-lock-page .heart-mid-left{top:38%;left:clamp(3%,14%,16%);color:#3b82f6;font-size:28px;animation-delay:1.2s}.blue-lock-page .heart-top-right{top:12%;right:clamp(4%,18%,20%);color:#60a5fa;font-size:22px;animation-delay:.7s}.blue-lock-page .heart-bottom-left{bottom:18%;left:clamp(4%,19%,21%);color:#2563eb;font-size:24px;animation-delay:2.1s}.blue-lock-page .star-left{top:44%;left:clamp(5%,22%,24%);color:#e5aa42;font-size:16px;animation-delay:.5s}.blue-lock-page .star-right{top:48%;right:clamp(5%,20%,22%);color:#e5aa42;font-size:19px;animation-delay:1.8s}.blue-lock-page .star-bottom{bottom:18%;right:clamp(6%,24%,26%);color:#e5aa42;font-size:15px;animation-delay:1.1s}@keyframes float-drift{0%{transform:translateY(0) rotate(-4deg);opacity:.85}to{transform:translateY(-8px) rotate(4deg);opacity:1;filter:drop-shadow(0 2px 8px rgba(147,197,253,.45))}}.lock-backdrop-scenery{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:url(../lock-ambient-bg.jpg) center center / cover no-repeat;z-index:1}.lock-backdrop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,#0611226b,#030a16c7);pointer-events:none}.real-css-lock-card-container{position:relative;z-index:10;display:flex;align-items:center;justify-content:center;padding:16px;width:100%;max-width:460px;box-sizing:border-box}.real-css-lock-card-container.frame-shake{animation:lock-shake-anim .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes lock-shake-anim{10%,90%{transform:translate3d(-3px,0,0)}20%,80%{transform:translate3d(5px,0,0)}30%,50%,70%{transform:translate3d(-6px,0,0)}40%,60%{transform:translate3d(6px,0,0)}}.real-css-lock-card{position:relative;width:100%;max-width:420px;box-sizing:border-box;background:linear-gradient(180deg,#fcfdff,#f1f6fc);border-radius:28px;padding:40px 28px 26px;border:2px solid rgba(191,219,254,.85);box-shadow:0 0 0 4px #e0f2fe73,0 0 28px #93c5fd73,0 25px 60px -10px #050f1e99,inset 0 1px 3px #fff,inset 0 0 14px #dbeafe59;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card-wax-seal{position:absolute;top:-27px;left:50%;transform:translate(-50%);z-index:12;display:flex;align-items:center;justify-content:center;pointer-events:none}.wax-seal-outer{width:54px;height:54px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3b82f6,#1d4ed8 55%,#172554);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px #0f172a73,0 0 14px #3b82f666,inset 0 2px 3px #ffffff8c,inset 0 -3px 5px #0a0f1e80;border:1px solid rgba(147,197,253,.7);position:relative}.wax-seal-inner{width:38px;height:38px;border-radius:50%;border:1.5px solid rgba(255,255,255,.45);background:radial-gradient(circle at 40% 35%,#2563eb,#1e40af);display:flex;align-items:center;justify-content:center;box-shadow:inset 0 2px 4px #00000059,0 1px 2px #ffffff40}.seal-floral-left,.seal-floral-right{position:absolute;top:14px;font-size:15px;color:#ffffffd9;text-shadow:0 0 6px rgba(147,197,253,.8);pointer-events:none}.seal-floral-left{left:-14px;transform:rotate(-20deg)}.seal-floral-right{right:-14px;transform:rotate(20deg)}.card-doodle{position:absolute;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1}.card-doodle-heart-tl{top:24px;left:22px;font-size:15px;transform:rotate(-12deg);opacity:.85;filter:drop-shadow(0 2px 4px rgba(59,130,246,.2))}.card-doodle-star-tr{top:20px;right:24px;font-size:16px;color:#3b82f6;opacity:.8}.card-doodle-star-ml{top:108px;left:18px;font-size:15px;color:#60a5fa;opacity:.75}.card-doodle-heart-mr{top:104px;right:20px;font-size:17px;color:#2563eb;opacity:.8}.card-doodle-star-mr{top:120px;right:8px;font-size:12px;color:#93c5fd;opacity:.65}.card-eyebrow{display:flex;align-items:center;justify-content:center;gap:6px;font-family:Outfit,-apple-system,sans-serif;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#2563eb;margin-bottom:8px}.eyebrow-sparkle{font-size:13px;color:#3b82f6}.card-title{font-family:Playfair Display,Georgia,Times New Roman,serif;font-size:clamp(34px,8.5vw,42px);line-height:1.12;text-align:center;margin:0;font-weight:800;display:flex;flex-direction:column;align-items:center;letter-spacing:-.01em}.title-line-1{color:#0f2744}.title-line-2{font-style:italic;color:#2563eb;font-weight:800;margin-top:-2px}.card-subtitle{font-family:Georgia,Times New Roman,serif;font-size:15px;color:#475569;text-align:center;margin:10px auto 0;max-width:320px;line-height:1.4;font-weight:500}.card-form{margin-top:22px;display:flex;flex-direction:column;width:100%}.lock-field-label{font-size:13px;font-weight:700;color:#1e293b;text-align:left;margin-bottom:7px;padding-left:6px;letter-spacing:.01em}.passcode-pill-wrap{display:flex;align-items:center;width:100%;height:48px;border-radius:9999px;background:#f4f8fef2;border:1.5px solid rgba(147,197,253,.85);box-shadow:inset 0 2px 4px #bfdbfe40,0 2px 8px #0f27440a;padding:0 16px;box-sizing:border-box;transition:all .2s ease}.passcode-pill-wrap:focus-within{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #3b82f638,inset 0 2px 4px #bfdbfe26}.passcode-pill-wrap .key-icon{color:#3b82f6;flex-shrink:0}.passcode-pill-wrap input{flex:1;border:none;outline:none;background:transparent;margin-left:10px;font-size:14.5px;font-weight:600;color:#0f2744;letter-spacing:1.5px;font-family:inherit}.passcode-pill-wrap input::placeholder{color:#94a3b8;font-weight:400;letter-spacing:normal}.lock-pill-submit{margin-top:14px;width:100%;height:48px;border-radius:9999px;border:1px solid rgba(255,255,255,.35);background:linear-gradient(180deg,#3b82f6,#2563eb 55%,#1d4ed8);color:#fff;font-size:14.5px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:inset 0 1px 2px #ffffff80,inset 0 -2px 4px #0f172a40,0 8px 20px #1d4ed859;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none}.lock-pill-submit:hover:not(:disabled){transform:translateY(-1.5px);box-shadow:inset 0 1px 2px #fff9,inset 0 -2px 4px #0f172a40,0 12px 26px #1d4ed873;filter:brightness(1.05)}.lock-pill-submit:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 4px #00000059,0 4px 12px #1d4ed84d}.lock-pill-submit:disabled{opacity:.7;cursor:not-allowed}.proper-error-toast{margin-top:12px;text-align:center;font-size:13px;font-weight:600;color:#1e40af;background:#e0eefff5;border:1px solid rgba(147,197,253,.9);padding:6px 16px;border-radius:999px;box-shadow:0 4px 14px #0f27441f;animation:rise-in .3s cubic-bezier(.16,1,.3,1) both}.card-heart-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:22px}.card-heart-divider .divider-line{height:1.5px;width:60px;background:linear-gradient(90deg,transparent,rgba(147,197,253,.8),transparent)}.card-heart-divider .divider-heart{font-size:14px;color:#60a5fa;line-height:1}.card-footnote{font-family:Georgia,Times New Roman,serif;font-style:italic;color:#2563eb;font-size:13.5px;text-align:center;margin:8px 0 0}.card-reset-cache-wrap{margin-top:10px;display:flex;justify-content:center}.lock-cache-reset-btn{background:transparent;border:none;font-size:11px;color:#94a3b8;letter-spacing:.04em;cursor:pointer;padding:3px 10px;border-radius:999px;transition:all .2s ease;opacity:.6}.lock-cache-reset-btn:hover{opacity:1;color:#2563eb;background:#dbeafe73}@media(max-width:480px){.real-css-lock-card{padding:36px 20px 22px;border-radius:24px}.card-title{font-size:34px}.card-subtitle{font-size:13.5px}.passcode-pill-wrap,.lock-pill-submit{height:45px}}.site-shell{width:min(100%,1440px);min-height:100vh;margin:auto;padding:0 4%;color:var(--text);background:var(--background);font-family:var(--font-body, "Trebuchet MS"),"Segoe UI",sans-serif}.topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.wordmark{display:inline-flex;align-items:center;gap:9px;color:var(--heading);font:17px var(--font-heading, Georgia),"Times New Roman",serif;text-decoration:none}.wordmark svg{color:var(--rose-dark)}.topbar-actions{display:flex;align-items:center;gap:12px}.icon-button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--border);color:var(--heading);background:transparent;cursor:pointer;transition:background .18s ease}.icon-button:hover{background:var(--card)}.edit-trigger{min-height:38px}.edit-icon{display:none}.hero{min-height:calc(100vh - 76px);position:relative;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;padding:40px 5% 72px;border-bottom:1px solid var(--border);overflow:hidden;box-sizing:border-box}.hero-copy{position:relative;z-index:1;padding:10px 0;animation:rise-in .55s ease-out both}.hero-eyebrow{display:flex;align-items:center;gap:9px}.hero-eyebrow span{color:var(--gold);font-size:17px}.hero h1{margin-top:19px;font-size:clamp(49px,5.2vw,72px);line-height:1.02}.hero h1 em{color:var(--rose-dark)}.birthday-date{display:flex;align-items:center;gap:8px;margin:18px 0 22px;color:var(--muted);font:16px var(--font-heading, Georgia),"Times New Roman",serif}.birthday-date svg{color:var(--rose-dark)}.countdown{display:flex;align-items:flex-start;gap:15px}.countdown-piece{min-width:54px;position:relative;display:flex;flex-direction:column;align-items:center;gap:4px}.countdown-piece strong{color:var(--heading);font:35px/.95 var(--font-heading, Georgia),"Times New Roman",serif;font-variant-numeric:tabular-nums}.countdown-piece span{color:var(--muted);font-size:10px}.countdown-piece i{position:absolute;right:-12px;top:4px;color:var(--gold);font:22px var(--font-heading, Georgia),serif;font-style:normal}.countdown-note{margin:15px 0 0;color:var(--muted);font-size:12px}.featured-quote{max-width:360px;margin:12px 0 0;color:var(--accent-strong);font:italic 14px/1.45 var(--font-heading, Georgia),"Times New Roman",serif}.hero-art{width:min(100%,405px);aspect-ratio:1;position:relative;justify-self:center;display:grid;place-items:center}.art-sun{width:75%;aspect-ratio:1;position:absolute;top:11%;left:13%;border-radius:50%;background:var(--accent-soft)}.art-checker{width:86%;height:56%;position:absolute;bottom:9%;left:7%;opacity:.6;background:repeating-conic-gradient(var(--decorative) 0 25%,var(--card) 0 50%) 50% / 26px 26px;-webkit-mask-image:linear-gradient(to bottom,transparent,black 50%,transparent);mask-image:linear-gradient(to bottom,transparent,black 50%,transparent)}.cake-wrap{width:53%;position:relative;z-index:2;margin-top:40px;animation:cake-pop .65s .15s cubic-bezier(.18,.89,.32,1.28) both}.cake-top{width:15px;height:58px;position:absolute;z-index:2;top:-50px;left:calc(50% - 7px);border-radius:8px 8px 3px 3px;background:repeating-linear-gradient(0deg,var(--secondary-accent) 0 8px,var(--illustration-light) 8px 16px)}.wick{width:3px;height:12px;position:absolute;top:-10px;left:6px;background:var(--heading)}.flame{width:11px;height:16px;position:absolute;top:-28px;left:2px;border-radius:60% 40% 60% 45%;transform:rotate(12deg);background:var(--gold);box-shadow:0 0 20px var(--gold);animation:flicker 1.6s ease-in-out infinite alternate}.cake-body{height:122px;position:relative;overflow:hidden;border:1px solid var(--accent-strong);border-radius:8px 8px 19px 19px;background:repeating-linear-gradient(0deg,var(--illustration) 0 31px,var(--accent-soft) 31px 39px);box-shadow:0 13px 24px color-mix(in srgb,var(--heading) 13%,transparent)}.icing-wave{height:21px;position:absolute;top:-1px;right:0;left:0;border-radius:40% 46% 45% 30%;background:var(--illustration-light)}.cake-decoration{position:absolute;right:0;bottom:13px;left:0;color:var(--card);font:23px var(--font-heading, Georgia),serif;text-align:center}.cake-plate{width:130%;height:15px;position:absolute;bottom:-13px;left:-15%;border:1px solid var(--muted);border-radius:50%;background:var(--card)}.art-star{position:absolute;z-index:2;color:var(--accent-strong)}.star-left{top:25%;left:9%;font-size:28px}.star-right{top:22%;right:12%;color:var(--gold);font-size:30px}.art-flower{position:absolute;right:11%;bottom:26%;color:var(--secondary-accent);font-size:37px;transform:rotate(13deg)}.art-caption{position:absolute;z-index:3;right:5%;bottom:14%;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text);font:italic 12px/1.15 var(--font-heading, Georgia),serif;text-align:center;transform:rotate(7deg)}.art-caption svg{color:var(--rose-dark)}.hero-seal{width:77px;height:77px;position:absolute;right:1.5%;bottom:16%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:1px solid var(--border);border-radius:50%;color:var(--accent-strong);text-align:center;transform:rotate(9deg)}.hero-seal span{font:italic 9px var(--font-heading, Georgia),serif}.hero-seal strong{font:16px/.92 var(--font-heading, Georgia),serif}.hero-seal svg{width:13px;height:13px;margin-top:3px}.hero-scroll-cue{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:inline-flex;flex-direction:column;align-items:center;gap:5px;color:var(--muted);text-decoration:none;font-size:10.5px;letter-spacing:1.2px;font-weight:700;text-transform:uppercase;z-index:4;cursor:pointer;transition:color .25s ease,transform .25s ease;animation:scroll-cue-float 2.5s ease-in-out infinite}.hero-scroll-cue:hover{color:var(--heading)}.hero-scroll-cue:hover .scroll-cue-pill{border-color:var(--accent);background:var(--card);transform:translateY(2px)}.scroll-cue-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 13px;border-radius:999px;background:var(--surface-tint);border:1px solid var(--border);box-shadow:0 4px 12px color-mix(in srgb,var(--heading) 8%,transparent);transition:all .25s ease}.scroll-cue-heart{color:var(--accent-strong);font-size:11px}.scroll-cue-chevron{color:var(--accent-strong)}@keyframes scroll-cue-float{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(5px)}}.scrapbook{padding:56px 0 75px;position:relative}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px;opacity:0;transform:translateY(35px);filter:blur(4px);transition:opacity 1.15s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1),filter .95s cubic-bezier(.16,1,.3,1);will-change:opacity,transform,filter}.section-head.in-view{opacity:1;transform:translateY(0);filter:blur(0)}.section-head h2{margin-top:8px;font-size:36px}.keepsake-count{display:inline-flex;align-items:center;gap:7px;padding-bottom:5px;color:var(--muted);font-size:11px;white-space:nowrap}.keepsake-count svg{color:var(--rose-dark)}.scrapbook-header{align-items:center}.section-title-wrap{position:relative}.scrapbook-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:1px;color:var(--muted)}.scrapbook-tag strong{color:var(--accent-strong);font-size:10.5px}.scrapbook-tag span{color:var(--gold)}.scrapbook-doodle-line{margin-top:4px;line-height:1}.scrapbook-doodle-line svg{display:block;max-width:100%}.scrapbook-controls-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.view-mode-toggle{display:inline-flex;padding:3px;border-radius:999px;background:var(--surface-tint);border:1px solid var(--border)}.mode-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;border:0;background:transparent;color:var(--muted);font-size:11.5px;font-weight:700;cursor:pointer;transition:all .2s ease}.mode-btn.active{background:var(--card);color:var(--heading);box-shadow:0 2px 8px color-mix(in srgb,var(--heading) 10%,transparent)}.sketch-page-decorations{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:1}.sketch-doodle{position:absolute;color:var(--decorative);opacity:.45;-webkit-user-select:none;user-select:none;font-family:serif}.sketch-star-1{top:12%;right:4%;font-size:28px;transform:rotate(15deg)}.sketch-flower-1{top:38%;left:2%;font-size:24px;color:var(--rose);opacity:.35}.sketch-star-2{top:62%;right:2.5%;font-size:22px}.sketch-spiral{top:78%;left:3%;font-size:30px;opacity:.3}.sketch-heart-1{top:92%;right:5%;font-size:26px;color:var(--rose);opacity:.4}.polaroid-collage-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 18px;align-items:start;margin-top:32px;width:100%}.scrapbook-card{position:relative;cursor:pointer;width:100%;min-width:0;left:0;right:0;opacity:0;transform:translateY(55px) scale(.93);filter:blur(5px);pointer-events:none;transition:opacity 1.25s cubic-bezier(.16,1,.3,1),transform 1.3s cubic-bezier(.16,1,.3,1),filter 1.05s cubic-bezier(.16,1,.3,1),box-shadow .25s ease;will-change:opacity,transform,filter}.scrapbook-card.in-view{opacity:1;transform:translateY(0) scale(1) rotate(var(--tilt));filter:blur(0);pointer-events:auto}.scrapbook-card:nth-child(4n+1){transition-delay:.04s}.scrapbook-card:nth-child(4n+2){transition-delay:.18s}.scrapbook-card:nth-child(4n+3){transition-delay:.32s}.scrapbook-card:nth-child(4n+4){transition-delay:.46s}.scrapbook-card.tilt-0{--tilt: -1.2deg}.scrapbook-card.tilt-1{--tilt: 1.4deg}.scrapbook-card.tilt-2{--tilt: -1deg}.scrapbook-card.tilt-3{--tilt: 1.2deg}.scrapbook-card:hover{transform:translateY(-8px) scale(1.02) rotate(0)!important;z-index:5;transition:transform .25s ease,box-shadow .25s ease!important;transition-delay:0s!important}.washi-tape{position:absolute;top:-12px;width:74px;height:20px;z-index:3;opacity:.9;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);clip-path:polygon(4% 0%,96% 0%,100% 100%,0% 100%);box-shadow:0 2px 5px #00000014}.washi-tape.washi-pos-center{left:50%;transform:translate(-50%) rotate(0)}.washi-tape.washi-pos-left{left:28%;transform:translate(-50%) rotate(-4deg)}.washi-tape.washi-pos-right{left:72%;transform:translate(-50%) rotate(4deg)}.washi-color-1{background:#93c5fdd9}.washi-color-2{background:#60a5fad9}.washi-color-3{background:#bfdbfee0}.washi-color-4{background:#a5b4fcd9}.washi-color-5{background:#7dd3fcd9}.washi-color-6{background:#fbd38dd9}.polaroid-inner{background:#fff;padding:13px 13px 18px;border-radius:2px;box-shadow:0 8px 24px #00000014,0 2px 4px #0000000a;border:1px solid rgba(0,0,0,.05);width:100%;box-sizing:border-box}.polaroid-frame{position:relative;overflow:hidden;background:var(--surface-tint);aspect-ratio:4 / 3;width:100%}.polaroid-frame img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .4s ease}.polaroid-inner:hover .polaroid-frame img{transform:scale(1.03)}.spotlight-btn{position:absolute;bottom:8px;right:8px;width:28px;height:28px;border-radius:50%;border:0;background:#00000073;color:#fff;display:grid;place-items:center;opacity:0;transition:opacity .2s,background .2s}.polaroid-inner:hover .spotlight-btn{opacity:1}.polaroid-caption-area{padding:12px 4px 4px}.polaroid-caption-text{margin:0 0 8px;font:14px/1.4 var(--font-heading, Georgia),serif;color:#382c28;overflow-wrap:break-word;word-break:normal;white-space:normal}.polaroid-footer,.memo-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed #eeded6;padding-top:8px}.polaroid-timestamp,.memo-timestamp{font-size:9.5px;letter-spacing:.8px;color:#9c8a82;font-family:monospace}.heart-react-btn{display:inline-flex;align-items:center;gap:4px;background:transparent;border:0;cursor:pointer;color:var(--muted);font-size:11px;padding:4px;border-radius:999px;transition:transform .15s,color .15s}.heart-react-btn:hover{transform:scale(1.18);color:var(--accent-strong)}.heart-filled{color:var(--accent-strong)}.polaroid-doodle{position:absolute;z-index:6;pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.12));transition:transform .25s ease}.scrapbook-card:hover .polaroid-doodle{transform:scale(1.1) rotate(3deg)}.doodle-pos-top-right{top:-14px;right:-10px}.doodle-pos-top-left{top:-14px;left:-10px}.doodle-pos-top-center{top:-16px;left:50%;transform:translate(-50%)}.doodle-pos-bottom-right{bottom:-10px;right:-8px}.doodle-pos-bottom-left{bottom:-10px;left:-8px}.doodle-svg{display:block;overflow:visible}.paperclip-svg{transform:rotate(-10deg)}.handcrafted-stamp{background:#fffcf7;border:1.8px dashed #d4a373;padding:4px 7px;border-radius:2px;display:flex;flex-direction:column;align-items:center;box-shadow:0 2px 6px #00000014;transform:rotate(5deg)}.stamp-flag{font-size:7px;font-weight:800;letter-spacing:.8px;color:#c96f66;font-family:monospace}.stamp-date{font-size:10.5px;font-weight:900;color:#3d2b26;font-family:var(--font-heading, Georgia),serif}.stamp-postmark{font-size:6.5px;letter-spacing:.6px;color:#8d99ae;font-family:monospace}.handwritten-sticker-tag{padding:3px 9px;border-radius:999px;font-family:var(--font-heading, Georgia),serif;font-size:11px;font-weight:700;box-shadow:0 2px 6px #00000014;white-space:nowrap}.tag-gold{background:#fef3c7;color:#78530b;border:1px solid rgba(200,150,40,.3);transform:rotate(3deg)}.tag-peach{background:#fce1d9;color:#7a3832;border:1px solid rgba(190,80,70,.25);transform:rotate(-3deg)}.polaroid-frame,.album-photo-frame{position:relative;-webkit-user-select:none;user-select:none}.heart-burst-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:25}.heart-burst-main{animation:heart-burst-pop .92s cubic-bezier(.175,.885,.32,1.275) both;filter:drop-shadow(0 6px 16px rgba(37,99,235,.6))}@keyframes heart-burst-pop{0%{transform:scale(0) rotate(-14deg);opacity:0}35%{transform:scale(1.35) rotate(5deg);opacity:1}65%{transform:scale(1.08) rotate(0);opacity:.95}to{transform:scale(1.65) translateY(-20px);opacity:0}}.heart-sparkle{position:absolute;font-size:18px;font-weight:800;animation:sparkle-drift .9s ease-out both}.s-one{top:22%;left:24%;color:#60a5fa;animation-delay:.05s}.s-two{top:20%;right:24%;color:#38bdf8;animation-delay:.1s}.s-three{bottom:25%;left:26%;color:#93c5fd;animation-delay:.08s}.s-four{bottom:22%;right:26%;color:#ffd166;animation-delay:.12s}@keyframes sparkle-drift{0%{transform:scale(0) translate(0);opacity:0}40%{transform:scale(1.3) translate(0);opacity:1}to{transform:scale(.6) translate(var(--dx, 8px),var(--dy, -16px));opacity:0}}.memo-note-inner{background:color-mix(in srgb,var(--gold) 18%,var(--card));padding:26px 20px 18px;border-radius:2px;box-shadow:0 8px 24px #00000014;border:1px solid rgba(0,0,0,.04);position:relative;min-height:180px;display:flex;flex-direction:column;justify-content:space-between}.memo-pin{position:absolute;top:8px;right:12px;color:var(--accent-strong);font-size:14px}.memo-text{margin:8px 0 16px;font:18px/1.45 var(--font-heading, Georgia),serif;color:var(--heading);overflow-wrap:anywhere}.empty-scrapbook{min-height:155px;display:flex;align-items:center;gap:19px;padding:25px 30px;border:1px dashed var(--decorative);background:color-mix(in srgb,var(--card) 58%,transparent)}.empty-flower{width:51px;height:51px;flex:none;display:grid;place-items:center;border-radius:50%;color:var(--accent-strong);background:var(--surface-tint);font-size:26px}.empty-scrapbook div:nth-child(2){flex:1}.empty-scrapbook p{margin:0 0 6px;font:20px var(--font-heading, Georgia),serif}.empty-scrapbook span{color:var(--muted);font-size:12px}.site-footer{min-height:61px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--border);color:var(--muted);font-size:9px;font-weight:700;letter-spacing:1px}.footer-doodle{color:var(--accent-strong);font-size:13px}.modal-backdrop{position:fixed;z-index:10;top:0;right:0;bottom:0;left:0;display:flex;justify-content:flex-end;background:color-mix(in srgb,var(--overlay) 55%,transparent);animation:fade-in .18s ease-out}.editor-panel{width:min(100%,435px);height:100%;overflow-y:auto;padding:31px 31px 26px;color:var(--text);background:var(--card);box-shadow:-12px 0 50px color-mix(in srgb,var(--heading) 18%,transparent);animation:slide-in .24s ease-out}.editor-heading{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid var(--line)}.editor-heading h2{margin-top:7px;font-size:33px}.close-editor{border:0;font-size:22px}.editor-section{display:grid;gap:11px;padding:22px 0;border-bottom:1px solid var(--line)}.editor-section label{display:flex;align-items:center;gap:8px}.editor-section label svg{color:var(--accent-strong)}.editor-inline{display:flex;gap:9px}.editor-section input[type=date],.editor-section input[type=text],.editor-section input[type=file],.editor-section textarea{width:100%;min-height:42px;padding:10px;border:1px solid var(--line);border-radius:0;color:var(--ink);background:var(--field);font-size:12px}.editor-section textarea{min-height:88px;resize:vertical;line-height:1.5}.editor-section input[type=file]{padding:8px}.editor-inline input{min-width:0;flex:1}.editor-inline .button{flex:none}.caption-input{margin-top:-3px}.editor-section>.button{justify-self:start}.editor-message{min-height:18px;margin:14px 0 0;color:var(--rose-dark);font-size:12px}.editor-local-note{display:flex;align-items:center;gap:7px;margin:3px 0;color:var(--muted);font-size:10px}.customize-panel{width:min(100%,610px)}.customize-trigger{min-height:38px}.theme-preview{display:grid;gap:9px;margin:21px 0 5px;padding:19px;border:1px solid var(--border);background:var(--background)}.theme-preview .eyebrow{color:var(--accent-strong)}.theme-preview strong{color:var(--heading);font:25px/1.15 var(--font-heading, Georgia),serif}.theme-preview strong em{color:var(--accent-strong);font-weight:400}.theme-preview p{margin:0;color:var(--text);font:italic 14px/1.45 var(--font-heading, Georgia),serif}.theme-preview .button{justify-self:start}.customize-section{display:grid;gap:10px;padding:19px 0;border-bottom:1px solid var(--border)}.customize-section h3{margin:0 0 2px;color:var(--heading);font:20px var(--font-heading, Georgia),serif}.customize-label,.copy-field>span{color:var(--text);font-size:12px;font-weight:700}.customize-section select,.copy-field textarea,.quote-config textarea,.color-field input[type=text]{width:100%;min-width:0;min-height:39px;padding:9px 10px;border:1px solid var(--border);border-radius:0;color:var(--text);background:var(--field);font-size:12px}.color-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}.color-field{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 43px;gap:5px 8px;align-items:center}.color-field span{min-width:0;overflow-wrap:anywhere;color:var(--text);font-size:11px}.color-field input[type=text]{grid-column:1;grid-row:2}.color-field input[type=color]{width:43px;height:39px;grid-column:2;grid-row:1 / span 2;padding:3px;border:1px solid var(--border);background:var(--field)}.copy-field{display:grid;gap:6px}.copy-field textarea,.quote-config textarea{resize:vertical;line-height:1.45}.customize-section input[type=range]{width:100%;accent-color:var(--accent-strong)}.random-quote-toggle{display:flex;align-items:center;gap:8px;color:var(--text);font-size:12px}.random-quote-toggle input{accent-color:var(--accent-strong)}.quote-config{display:grid;grid-template-columns:1fr auto;gap:8px}.quote-config>div{display:flex;gap:4px}.quote-config .icon-button{width:34px;height:34px}.customize-section>.button{justify-self:start}.customizer-message{min-height:17px;margin:14px 0 5px;color:var(--accent-strong);font-size:12px}.customize-actions{position:sticky;bottom:-26px;display:flex;flex-wrap:wrap;gap:8px;margin:0 -31px;padding:12px 31px 18px;border-top:1px solid var(--border);background:var(--card)}.customize-actions .button{flex:1 1 auto}.lock-panel h1{font-size:calc(43px * var(--font-scale, 1))}.hero h1{font-size:clamp(calc(49px * var(--font-scale, 1)),5.2vw,calc(72px * var(--font-scale, 1)))}.section-head h2{font-size:calc(36px * var(--font-scale, 1))}.editor-heading h2{font-size:calc(33px * var(--font-scale, 1))}.quote-copy{font-size:calc(20px * var(--font-scale, 1))}.featured-quote,.birthday-date,.lock-description{font-size:calc(1em * var(--font-scale, 1))}@keyframes rise-in{0%{opacity:0;transform:translateY(11px)}to{opacity:1;transform:translateY(0)}}@keyframes cake-pop{0%{opacity:0;transform:translateY(15px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{transform:translate(18px)}to{transform:translate(0)}}@keyframes flicker{0%{transform:rotate(8deg) scale(.95)}to{transform:rotate(-7deg) scale(1.06)}}@media(max-width:760px){.site-shell{padding:0 16px}.hero{min-height:calc(100vh - 68px);grid-template-columns:1fr;gap:20px;padding:36px 0 65px;text-align:center}.hero h1{font-size:clamp(38px,8vw,54px)}.hero-art{width:min(85vw,290px);margin:16px auto 0}.hero-seal{display:none}.scrapbook-card:nth-child(odd){transition-delay:.04s}.scrapbook-card:nth-child(2n){transition-delay:.2s}.polaroid-collage-wall{grid-template-columns:repeat(2,1fr);gap:20px 10px;width:100%;max-width:100%;margin:22px auto 0}.polaroid-inner{padding:9px 9px 13px}.polaroid-caption-text{font-size:12px;line-height:1.35;margin-bottom:6px}.polaroid-timestamp,.memo-timestamp{font-size:8.5px}.polaroid-doodle{transform:scale(.82)}.washi-tape{width:58px;height:16px;top:-9px}.scrapbook-header{flex-direction:column;align-items:flex-start;gap:14px}.scrapbook-controls-bar{width:100%;justify-content:space-between}.empty-scrapbook{flex-wrap:wrap}.empty-scrapbook .button{margin-left:70px}}@media(max-width:520px){.lock-panel{padding:36px 20px 28px;width:100%}.lock-panel h1{font-size:38px}.orbit-one{left:4%;top:6%}.orbit-two{right:4%;bottom:6%}.site-shell{padding:0 12px}.topbar{min-height:64px}.wordmark{font-size:15px}.topbar-actions{gap:6px}.customize-label{display:none}.customize-trigger{width:38px;min-height:38px;padding:0}.edit-label{display:none}.edit-icon{display:grid}.edit-trigger{width:38px;min-height:38px;padding:0}.hero{grid-template-columns:1fr;padding:36px 0 28px}.hero h1{font-size:44px}.hero-art{width:min(85vw,280px);margin:12px auto 0}.countdown{gap:8px;justify-content:center}.countdown-piece{min-width:44px;padding:6px 4px}.countdown-piece strong{font-size:26px}.countdown-piece span{font-size:9.5px}.scrapbook{padding:32px 0 40px}.section-head{align-items:flex-start;flex-direction:column;gap:8px}.section-head h2{font-size:29px}.polaroid-collage-wall{grid-template-columns:repeat(2,1fr);width:100%;max-width:100%;margin:18px auto 0;gap:16px 8px}.polaroid-inner{padding:8px 8px 11px}.polaroid-caption-text{font-size:11.5px;line-height:1.3;margin-bottom:4px}.polaroid-doodle{transform:scale(.75)}.washi-tape{width:50px;height:14px;top:-8px}.memo-note-inner{padding:14px 10px 10px;min-height:125px}.memo-text{font-size:12px;line-height:1.35}.album-book-stage{gap:6px;width:100%}.album-nav-arrow{width:36px;height:36px}.album-polaroid{padding:12px 12px 16px}.album-caption-text{font-size:13.5px}.birthday-letter-card{padding:28px 18px 22px;width:100%}.letter-heading{font-size:24px}.letter-body{font-size:13.5px;line-height:1.6}.spotlight-polaroid-modal{padding:12px 12px 16px;width:100%}.empty-scrapbook{gap:12px;padding:20px 16px}.empty-flower{width:43px;height:43px}.empty-scrapbook p{font-size:17px}.empty-scrapbook span{font-size:11px;line-height:1.5}.empty-scrapbook .button{margin-left:55px}.site-footer{justify-content:center;font-size:8px}.site-footer span:first-child,.site-footer span:last-child{display:none}.editor-panel{padding:25px 22px 24px}.customize-panel{padding-bottom:24px}.customize-actions{bottom:-24px;margin:0 -22px;padding:11px 22px 16px}.customize-actions .button{min-height:39px;padding:0 10px;font-size:11px}.color-grid{grid-template-columns:1fr}}@media(max-width:340px){.polaroid-collage-wall{grid-template-columns:1fr;max-width:280px;margin:16px auto 0;gap:22px 0}}.site-shell{position:relative;transition:background-color 1.2s cubic-bezier(.16,1,.3,1),color 1.2s cubic-bezier(.16,1,.3,1)}.room-lights-dimmed{--background: #091322 !important;--card: #102138 !important;--heading: #e0f2fe !important;--text: #bae6fd !important;--muted: #7dd3fc !important;--border: #1e3a5f !important;--field: #142844 !important;--surface-tint: #193558 !important;--button: #38bdf8 !important;--button-text: #091322 !important;--button-hover: #7dd3fc !important;background-color:#091322!important;color:#bae6fd!important}.dimmed-atmosphere-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(circle at 70% 30%,rgba(56,189,248,.12) 0%,transparent 60%),radial-gradient(circle at 20% 70%,rgba(37,99,235,.15) 0%,transparent 65%);animation:fade-in 1.2s ease-out both}.ambient-stars{position:absolute;top:0;right:0;bottom:0;left:0}.ambient-stars .star-dot{position:absolute;color:var(--gold);opacity:.7;animation:star-shimmer 2.5s ease-in-out infinite alternate}.star-dot.s1{top:12%;left:8%;font-size:16px;animation-delay:.1s}.star-dot.s2{top:22%;right:14%;font-size:14px;animation-delay:.7s}.star-dot.s3{top:38%;left:18%;font-size:18px;animation-delay:1.3s}.star-dot.s4{top:65%;right:8%;font-size:15px;animation-delay:.4s}.star-dot.s5{top:78%;left:12%;font-size:13px;animation-delay:1.8s}.star-dot.s6{top:85%;right:22%;font-size:17px;animation-delay:1.1s}.star-dot.s7{top:48%;right:28%;font-size:12px;animation-delay:.9s}.star-dot.s8{top:28%;left:32%;font-size:14px;animation-delay:1.5s}@keyframes star-shimmer{0%{opacity:.3;transform:scale(.85)}to{opacity:.9;transform:scale(1.15);filter:drop-shadow(0 0 6px var(--gold))}}.interactive-cake-container{display:flex;flex-direction:column;align-items:center;position:relative}.cake-wrap{cursor:pointer;-webkit-user-select:none;user-select:none;outline:none}.cake-wrap:focus-visible{outline:2px solid var(--accent-strong);outline-offset:8px;border-radius:8px}.flame{cursor:pointer;filter:drop-shadow(0 0 10px rgba(200,154,72,.75));transition:transform .12s ease-out,opacity .3s ease-out}.flame:hover{transform:scale(1.15)!important;filter:drop-shadow(0 0 16px rgba(243,156,18,.9))}.wick-extinguished{background:#2a2220!important;box-shadow:0 -2px 5px #e6643c80;transition:background-color .4s ease}.smoke-cluster{position:absolute;top:-42px;left:calc(50% - 10px);width:20px;height:45px;pointer-events:none;z-index:4}.smoke-puff{position:absolute;border-radius:50%;background:radial-gradient(circle,#e6dcd7d9,#b4aaaa00 70%);filter:blur(2px)}.smoke-1{width:14px;height:14px;left:3px;top:15px;animation:smoke-drift-1 2.2s ease-out forwards}.smoke-2{width:18px;height:18px;left:-2px;top:11px;animation:smoke-drift-2 2.6s .2s ease-out forwards}.smoke-3{width:22px;height:22px;left:5px;top:7px;animation:smoke-drift-3 2.9s .4s ease-out forwards}@keyframes smoke-drift-1{0%{opacity:.8;transform:translate(0) scale(.6)}50%{opacity:.5;transform:translate(6px,-18px) scale(1.1)}to{opacity:0;transform:translate(14px,-35px) scale(1.6)}}@keyframes smoke-drift-2{0%{opacity:.75;transform:translate(0) scale(.7)}50%{opacity:.45;transform:translate(-8px,-22px) scale(1.2)}to{opacity:0;transform:translate(-16px,-42px) scale(1.8)}}@keyframes smoke-drift-3{0%{opacity:.7;transform:translate(0) scale(.75)}50%{opacity:.4;transform:translate(4px,-26px) scale(1.3)}to{opacity:0;transform:translate(10px,-50px) scale(2)}}.candle-interaction-bar{margin-top:18px;position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;width:100%}.candle-locked-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;padding:8px 16px;border-radius:999px;background:color-mix(in srgb,var(--card) 90%,transparent);border:1px dashed var(--border);box-shadow:0 4px 12px color-mix(in srgb,var(--heading) 5%,transparent);max-width:min(92vw,360px)}.locked-pill{font-size:9px;font-weight:800;letter-spacing:1.2px;color:var(--accent-strong)}.locked-text{margin:0;font-size:11px;color:var(--muted);font-family:var(--font-heading, Georgia),serif;font-style:italic;line-height:1.35}.test-celebration-btn{display:inline-flex;align-items:center;gap:5px;background:transparent;border:0;color:var(--gold);font-size:10px;font-weight:700;cursor:pointer;padding:3px 8px;border-radius:999px;transition:all .2s ease;text-decoration:underline;text-underline-offset:3px}.test-celebration-btn:hover{color:var(--heading);transform:scale(1.05)}.blow-controls{display:flex;flex-direction:column;align-items:center;gap:6px}.blow-actions-row{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.blow-action-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:var(--card);color:var(--heading);font-size:11.5px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px color-mix(in srgb,var(--heading) 8%,transparent);transition:all .2s ease}.primary-blow-btn{background:var(--button);color:var(--button-text);border-color:var(--accent);box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 30%,transparent)}.primary-blow-btn:hover{background:var(--button-hover);transform:translateY(-2px)}.blow-action-button:hover{transform:translateY(-1px);background:var(--surface-tint);border-color:var(--accent)}.blow-listening-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:color-mix(in srgb,var(--gold) 22%,var(--card));border:1px solid var(--gold);color:var(--heading);font-size:11px;font-weight:700;animation:pulse-glow 1.5s infinite alternate}.audio-level-meter{width:36px;height:6px;border-radius:3px;background:color-mix(in srgb,var(--heading) 15%,transparent);overflow:hidden}.audio-level-fill{height:100%;background:var(--accent-strong);transition:width .08s ease}.icon-button-subtle{display:inline-grid;place-items:center;padding:2px;background:transparent;border:0;color:var(--muted);cursor:pointer;border-radius:50%}.icon-button-subtle:hover{color:var(--heading)}.tap-hint{font-size:10.5px;color:var(--muted);font-style:italic}.mic-error-note{margin:4px 0 0;font-size:10.5px;color:var(--accent-strong);text-align:center}.blow-actions-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.primary-blow-btn{background:var(--card);border:1px solid var(--accent);color:var(--heading)}.tap-blow-btn{background:color-mix(in srgb,var(--accent) 15%,var(--card));border:1px solid var(--border);color:var(--accent-strong)}.tap-blow-btn:hover{background:var(--accent);color:var(--button-text)}.flame-flicker-hard{animation:flicker .2s ease-in-out infinite alternate!important;filter:drop-shadow(0 0 22px #e67e22)!important}.cake-hold-blow .flame{transform:rotate(30deg) scale(.7)!important}.blown-card-reveal{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:14px 20px;border-radius:8px;background:var(--card);border:1px solid var(--border);box-shadow:0 10px 30px color-mix(in srgb,var(--heading) 12%,transparent);animation:rise-in .4s ease-out both}.blown-badge{display:inline-flex;align-items:center;gap:6px;color:var(--gold);font-size:13px}.blown-badge strong{color:var(--heading);font-size:14px;font-family:var(--font-heading, Georgia),serif}.blown-message{margin:0;font-size:12.5px;line-height:1.45;color:var(--text);font-family:var(--font-heading, Georgia),serif;font-style:italic}.blown-interactive-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}.open-letter-btn{border-radius:999px;min-height:38px;padding:0 16px;font-size:11.5px;box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 30%,transparent);animation:pulse-glow 2s infinite alternate}.button-small{min-height:32px;padding:0 12px;font-size:11px;border-radius:999px}.letter-backdrop{justify-content:center;align-items:center;padding:20px}.birthday-letter-card{position:relative;width:min(100%,480px);max-height:85vh;overflow-y:auto;background:var(--card);border:1px solid var(--border);border-radius:6px;padding:42px 38px 36px;box-shadow:0 25px 70px #00000040;animation:rise-in .4s ease-out both;background-image:radial-gradient(var(--border) .6px,transparent .6px);background-size:18px 18px}.close-letter{position:absolute;top:16px;right:16px;border:0;cursor:pointer}.letter-wax-stamp{width:44px;height:44px;border-radius:50%;background:var(--accent-strong);color:var(--card);display:grid;place-items:center;font-size:20px;margin:0 auto 16px;box-shadow:0 4px 12px color-mix(in srgb,var(--accent-strong) 40%,transparent)}.letter-date{font-size:11px;text-align:center;color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin:0 0 12px}.letter-heading{margin:0 0 16px;font:32px var(--font-heading, Georgia),serif;color:var(--heading);text-align:center}.letter-body{font:15px/1.7 var(--font-heading, Georgia),serif;color:var(--text);display:grid;gap:14px}.letter-special-quote{font-size:18px;text-align:center;color:var(--accent-strong);padding:12px 0;border-top:1px dashed var(--border);border-bottom:1px dashed var(--border);margin:8px 0}.letter-signature{text-align:right;margin-top:12px;font-style:italic}.letter-signature span{color:var(--accent-strong);font-size:18px}.album-swipe-view{display:flex;flex-direction:column;align-items:center;margin-top:28px;width:100%;opacity:0;transform:translateY(35px) scale(.96);filter:blur(4px);transition:opacity 1.15s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1),filter .95s cubic-bezier(.16,1,.3,1);will-change:opacity,transform,filter}.album-swipe-view.in-view{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}.album-book-stage{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;max-width:580px;position:relative;-webkit-user-select:none;user-select:none}.album-nav-arrow{width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--card);color:var(--heading);display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 14px #0000000f;transition:transform .2s,background .2s;flex-shrink:0}.album-nav-arrow:hover{transform:scale(1.1);background:var(--surface-tint)}.album-current-card-wrapper{flex:1;max-width:440px;position:relative;cursor:pointer;animation:rise-in .35s ease-out both}.album-spine-stitch{position:absolute;left:-6px;top:10px;bottom:10px;width:4px;border-left:2px dashed var(--accent);opacity:.5;z-index:2}.album-polaroid{background:#fff;padding:16px 16px 20px;border-radius:4px;box-shadow:0 18px 45px #0000001f,0 2px 6px #0000000f}.album-photo-frame{aspect-ratio:4 / 3.4;overflow:hidden;background:var(--surface-tint)}.album-photo-frame img{width:100%;height:100%;object-fit:cover;display:block}.album-caption-box{padding-top:14px}.album-caption-text{margin:0 0 10px;font:16px/1.4 var(--font-heading, Georgia),serif;color:#382c28}.album-card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed #eeded6;padding-top:8px}.vintage-date{font-size:10px;letter-spacing:1px;color:#9c8a82;font-family:monospace}.album-note-card{background:color-mix(in srgb,var(--gold) 18%,var(--card));padding:38px 28px 24px;border-radius:4px;box-shadow:0 18px 45px #0000001f;min-height:280px;display:flex;flex-direction:column;justify-content:space-between}.album-quote-text{font:22px/1.5 var(--font-heading, Georgia),serif;color:var(--heading);margin:12px 0 20px}.album-navigation-footer{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:20px}.album-page-indicator{font-size:12px;color:var(--muted)}.album-page-indicator strong{color:var(--heading)}.album-dots-bar{display:flex;gap:5px;flex-wrap:wrap;justify-content:center;max-width:260px}.album-dot{width:7px;height:7px;border-radius:50%;border:0;background:color-mix(in srgb,var(--heading) 20%,transparent);cursor:pointer;padding:0;transition:all .2s}.album-dot.active{background:var(--accent-strong);transform:scale(1.3)}.swipe-hint-note{font-size:11px;color:var(--muted);font-style:italic}.spotlight-backdrop{align-items:center;justify-content:center;padding:20px}.spotlight-polaroid-modal{position:relative;background:#fff;padding:18px 18px 22px;border-radius:4px;width:min(100%,540px);max-height:90vh;overflow-y:auto;box-shadow:0 30px 80px #00000059;animation:rise-in .3s ease-out both}.close-spotlight{position:absolute;top:12px;right:12px;z-index:5;background:#0009;color:#fff;border-radius:50%;border:0;cursor:pointer}.spotlight-frame{aspect-ratio:4 / 3.4;overflow:hidden;background:#000;border-radius:2px}.spotlight-frame img{width:100%;height:100%;object-fit:contain;display:block}.spotlight-quote-view{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px 20px;background:var(--surface-tint)}.spotlight-quote-view p{font:24px/1.45 var(--font-heading, Georgia),serif;color:var(--heading);margin-top:16px}.spotlight-info{padding-top:16px}.spotlight-caption{font:18px/1.4 var(--font-heading, Georgia),serif;color:#382c28;margin:0 0 12px}.spotlight-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed #eeded6;padding-top:10px}.spotlight-date{font-size:11px;letter-spacing:1px;color:#9c8a82;font-family:monospace}.large-heart{font-size:13px;gap:6px}@keyframes pulse-glow{0%{box-shadow:0 0 4px #c89a484d}to{box-shadow:0 0 14px #c89a48b3}}.wind-icon.pulse{animation:wind-sway .8s ease-in-out infinite alternate}@keyframes wind-sway{0%{transform:translate(-2px)}to{transform:translate(2px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.scrapbook-card,.section-head,.album-swipe-view{opacity:1!important;transform:none!important;filter:none!important;pointer-events:auto!important;transition:none!important}}.hero.ceremony-center-stage{min-height:calc(100vh - 76px);display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;grid-template-columns:1fr!important;padding:24px 20px 48px!important;text-align:center!important;position:relative!important;overflow:visible!important}.ceremony-center-cake{width:100%!important;max-width:640px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;margin:0 auto!important;position:relative!important;aspect-ratio:auto!important}.ceremony-center-cake .cake-wrap{width:220px!important;margin:28px auto 0!important}.ceremony-vigil-wrap{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:580px;margin-bottom:24px;animation:rise-in .7s cubic-bezier(.16,1,.3,1) both}.ceremony-vigil-header{display:flex;flex-direction:column;align-items:center;gap:6px}.ceremony-tag{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--gold);background:color-mix(in srgb,var(--gold) 15%,transparent);border:1px solid color-mix(in srgb,var(--gold) 35%,transparent);padding:4px 12px;border-radius:999px;text-transform:uppercase}.ceremony-vigil-title{margin:4px 0 0;font:400 clamp(24px,4.2vw,36px)/1.15 var(--font-heading, Georgia),serif;color:var(--heading)}.ceremony-vigil-title em{color:var(--accent-strong);font-style:italic}.ceremony-countdown-grid{display:flex;align-items:center;justify-content:center;gap:12px;margin:10px 0}.ceremony-count-box{display:flex;flex-direction:column;align-items:center;padding:10px 14px;border-radius:8px;background:color-mix(in srgb,var(--card) 85%,transparent);border:1px solid var(--border);box-shadow:0 4px 16px #0000000f;min-width:58px}.ceremony-count-box strong{font:700 clamp(26px,5vw,38px)/1 var(--font-heading, Georgia),monospace;color:var(--heading);font-variant-numeric:tabular-nums;letter-spacing:-.5px}.ceremony-count-box span{font-size:9px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-top:3px}.ceremony-colon{font-size:24px;font-weight:700;color:var(--gold)}.ceremony-vigil-subtext{margin:0;font-size:13px;color:var(--muted);font-family:var(--font-heading, Georgia),serif;font-style:italic}.vigil-stage-action-area{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:14px}.whats-next-btn{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;font-size:16px!important;font-weight:800!important;padding:13px 32px!important;border-radius:9999px!important;border:none!important;box-shadow:0 8px 28px #f59e0b73!important;cursor:pointer;display:inline-flex;align-items:center;gap:9px;letter-spacing:.5px;transition:all .25s ease}.whats-next-btn:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 12px 36px #f59e0b99!important}.vigil-subtext-box{display:flex;flex-direction:column;align-items:center;gap:6px}.vigil-touch-trigger{background:transparent;border:none;color:var(--muted);font-size:11.5px;cursor:pointer;opacity:.75;transition:opacity .2s ease;font-family:inherit}.vigil-touch-trigger:hover{opacity:1;color:var(--gold)}.animated-lighter-wand{position:absolute;top:-90px;z-index:15;width:22px;height:64px;pointer-events:none;transition:left .08s linear;transform:rotate(-14deg);filter:drop-shadow(0 4px 14px rgba(245,158,11,.65))}.lighter-flame{position:absolute;top:-24px;left:50%;transform:translate(-50%);width:14px;height:24px;background:radial-gradient(ellipse at bottom,#ffffff 15%,#fde047 50%,#f97316 85%,transparent 100%);border-radius:50% 50% 35% 35%/60% 60% 40% 40%;box-shadow:0 0 14px #ffd166,0 0 24px #f59e0bcc;animation:lighter-flicker .16s infinite alternate}@keyframes lighter-flicker{0%{transform:translate(-50%) scale(1) rotate(-3deg);opacity:.95}to{transform:translate(-50%) scale(1.15) rotate(4deg);opacity:1}}.lighter-tip{position:absolute;top:0;left:50%;transform:translate(-50%);width:5px;height:10px;background:#cbd5e1;border-radius:2px}.lighter-stem{position:absolute;top:8px;left:50%;transform:translate(-50%);width:3.5px;height:20px;background:#94a3b8}.lighter-handle{position:absolute;top:26px;left:50%;transform:translate(-50%);width:14px;height:36px;background:linear-gradient(135deg,#1e293b,#0f172a);border:1.5px solid #d4af37;border-radius:4px;box-shadow:0 4px 10px #00000059}.lighter-gold-band{position:absolute;top:6px;left:0;right:0;height:3px;background:#f59e0b}.ceremony-lighting-status{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;color:var(--gold);background:#0f172ab3;padding:8px 20px;border-radius:9999px;border:1px solid rgba(245,158,11,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);margin-top:14px}.single-blow-action-wrap{display:flex;justify-content:center;margin-top:18px;animation:fadeIn .4s ease-out}.blow-candle-btn{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;font-size:16px!important;font-weight:800!important;padding:14px 36px!important;border-radius:9999px!important;border:none!important;box-shadow:0 8px 30px #f59e0b80!important;cursor:pointer;display:inline-flex;align-items:center;gap:10px;letter-spacing:.5px;transition:all .25s ease}.blow-candle-btn:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 12px 38px #f59e0ba6!important}.blow-countdown-banner{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0d1b2eeb;border:1.5px solid rgba(245,158,11,.6);border-radius:20px;padding:20px 28px;margin-top:16px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 16px 45px #00000073,0 0 28px #f59e0b40;animation:scaleUp .35s cubic-bezier(.16,1,.3,1);max-width:420px;width:90%}.blow-countdown-prompt{display:flex;align-items:center;gap:8px;font-size:16.5px;color:#fef08a;font-weight:700;margin-bottom:12px;letter-spacing:.5px;text-align:center}.blow-big-timer-circle{width:72px;height:72px;border-radius:50%;background:radial-gradient(circle,#f59e0b47,#0f172af2);border:2.5px solid #f59e0b;display:flex;align-items:center;justify-content:center;box-shadow:0 0 24px #f59e0b80;margin-bottom:10px}.blow-timer-digit{font-size:38px;font-weight:800;color:#fff;line-height:1;text-shadow:0 2px 14px rgba(245,158,11,.85);animation:number-pop .95s cubic-bezier(.16,1,.3,1) infinite}@keyframes number-pop{0%{transform:scale(1.25);opacity:.7}35%{transform:scale(1);opacity:1}to{transform:scale(.96);opacity:.9}}.blow-countdown-subtext{font-size:13.5px;color:#93c5fd;margin:0 0 8px;font-weight:500;text-align:center}.blow-mic-indicator{display:flex;align-items:center;gap:8px;width:100%;max-width:220px;margin-bottom:8px;color:#60a5fa}.tap-blow-fallback{background:transparent;border:none;color:#93c5fd;font-size:12px;cursor:pointer;opacity:.8;transition:opacity .2s ease;padding:4px}.tap-blow-fallback:hover{opacity:1;text-decoration:underline}.candles-19-tier{position:absolute;top:0;left:0;width:100%;height:0;pointer-events:none;z-index:4}.candles-19-tier.candles-hidden{opacity:0;transform:translateY(-40px)}.candles-19-tier.candles-arrived{opacity:1;transform:translateY(0)}.candle-19-item{position:absolute;width:7.5px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;pointer-events:auto;cursor:pointer;transition:transform .2s ease}.candle-19-item.arrived{animation:candle-drop-bounce .65s cubic-bezier(.34,1.56,.64,1) both}@keyframes candle-drop-bounce{0%{transform:translate(-50%) translateY(-70px) scale(.6);opacity:0}60%{transform:translate(-50%) translateY(4px) scale(1.08);opacity:1}85%{transform:translate(-50%) translateY(-2px) scale(.98)}to{transform:translate(-50%) translateY(0) scale(1);opacity:1}}.candle-19-item.tier-back{height:34px}.candle-19-item.tier-front{height:28px}.candle-19-body{width:7.5px;border-radius:4px 4px 2px 2px;box-shadow:0 2px 5px #0000001f;flex:1;width:100%}.candle-19-item.tier-back .candle-19-body{height:28px}.candle-19-item.tier-front .candle-19-body{height:22px}.stripe-1{background:repeating-linear-gradient(45deg,#93c5fd 0,#93c5fd 4px,#fff 4px,#fff 8px)}.stripe-2{background:repeating-linear-gradient(45deg,#2563eb 0,#2563eb 4px,#e0f2fe 4px,#e0f2fe 8px)}.stripe-3{background:repeating-linear-gradient(45deg,#ffd166 0,#ffd166 4px,#fffbeb 4px,#fffbeb 8px)}.stripe-4{background:repeating-linear-gradient(45deg,#38bdf8 0,#38bdf8 4px,#fff 4px,#fff 8px)}.candle-19-wick{width:2px;height:6px;background:#1e293b;border-radius:1px}.candle-19-wick.extinguished{background:#0f172a!important;box-shadow:0 -1px 3px #ff783c66}.candle-19-flame{width:9px;height:14px;position:absolute;top:-12px;left:50%;transform:translate(-50%);border-radius:50% 50% 35% 35%;background:radial-gradient(ellipse at bottom,#fffbeb,#ffd166 45%,#f59e0b 80%,#ef4444);box-shadow:0 0 10px #ffd166,0 0 18px #f59e0bb3;animation:flicker-gentle 1.4s ease-in-out infinite alternate;animation-delay:calc(var(--candle-index, 0) * .08s);cursor:pointer;z-index:5}.candle-19-flame:hover{transform:translate(-50%) scale(1.25)!important;filter:drop-shadow(0 0 14px #ffd166)}@keyframes flicker-gentle{0%{transform:translate(-50%) rotate(-3deg) scale(.96);opacity:.92}50%{transform:translate(-50%) rotate(4deg) scale(1.05);opacity:1}to{transform:translate(-50%) rotate(-2deg) scale(1);opacity:.95}}.candle-19-smoke{position:absolute;top:-14px;left:50%;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle,#dcebfcd9,#b4cdeb00 70%);filter:blur(1.5px);pointer-events:none;animation:candle-smoke-rise 1.8s ease-out forwards}@keyframes candle-smoke-rise{0%{opacity:.8;transform:translate(-50%) translateY(0) scale(.5)}50%{opacity:.5;transform:translate(calc(-50% + 4px)) translateY(-18px) scale(1.2)}to{opacity:0;transform:translate(calc(-50% + 10px)) translateY(-36px) scale(1.8)}}.cake-age-badge{position:absolute;top:44px;left:50%;transform:translate(-50%);width:32px;height:32px;border-radius:50%;background:color-mix(in srgb,var(--gold) 25%,var(--card));border:1.5px dashed var(--gold);color:var(--heading);font:700 15px/30px var(--font-heading, Georgia),serif;text-align:center;box-shadow:0 2px 8px #00000014}.just-blow-it-banner{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 24px;border-radius:12px;background:var(--card);border:1.5px solid var(--gold);box-shadow:0 12px 35px color-mix(in srgb,var(--gold) 28%,transparent),0 0 20px #ffd16626;animation:pulse-glow-banner 2s infinite alternate;width:min(92vw,420px);margin-top:14px}@keyframes pulse-glow-banner{0%{box-shadow:0 8px 24px color-mix(in srgb,var(--gold) 20%,transparent)}to{box-shadow:0 12px 36px color-mix(in srgb,var(--gold) 45%,transparent),0 0 24px #ffd1664d}}.blow-it-header{display:flex;align-items:center;gap:8px;color:var(--heading);font-size:16px;font-family:var(--font-heading, Georgia),serif}.gold-sparkle{color:var(--gold);animation:star-shimmer 1.8s infinite alternate}.blow-it-timer-bar{display:flex;align-items:center;justify-content:center}.blow-it-pill{font-size:11px;font-weight:800;letter-spacing:1px;padding:4px 12px;border-radius:999px;background:color-mix(in srgb,var(--accent) 15%,var(--card));color:var(--accent-strong);border:1px solid var(--accent)}.blow-it-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.ceremony-celebration-card{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:24px 30px;border-radius:20px;background:#0d1b2ef0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(147,197,253,.35);box-shadow:0 24px 70px #050f23a6,inset 0 1px 1px #ffffff26;animation:rise-in .5s ease-out both;width:min(92vw,480px);margin-top:18px;box-sizing:border-box}.ceremony-celebration-badge{display:flex;align-items:center;gap:8px;color:#fbbf24}.ceremony-celebration-badge h3{margin:0;font:700 20px/1.2 var(--font-heading, Georgia),serif;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.3)}.ceremony-celebration-text{margin:0;font:italic 14px/1.55 var(--font-heading, Georgia),serif;color:#cbd5e1;max-width:420px}.ceremony-celebration-btns{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:10px;width:100%}.open-letter-btn{background:linear-gradient(180deg,#2563eb,#1d4ed8)!important;color:#fff!important;font-weight:600!important;font-size:13.5px!important;border:1px solid rgba(147,197,253,.4)!important;border-radius:999px!important;padding:10px 22px!important;min-height:42px!important;box-shadow:0 4px 16px #2563eb73!important;cursor:pointer;transition:all .25s ease;display:inline-flex;align-items:center;gap:8px}.open-letter-btn:hover{transform:translateY(-2px);box-shadow:0 6px 22px #2563eba6!important;background:linear-gradient(180deg,#3b82f6,#2563eb)!important}.step-inside-btn{background:linear-gradient(180deg,#fbbf24,#d97706)!important;color:#0f172a!important;font-weight:700!important;font-size:14px!important;border:1px solid #fef3c7!important;border-radius:999px!important;padding:11px 26px!important;min-height:44px!important;box-shadow:0 6px 22px #d9770673!important;cursor:pointer;transition:all .25s ease;display:inline-flex;align-items:center;gap:8px}.step-inside-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px #d97706a6!important;filter:brightness(1.05)}.relight-btn{background:#ffffff14!important;color:#bfdbfe!important;font-weight:500!important;font-size:12.5px!important;border:1px solid rgba(191,219,254,.25)!important;border-radius:999px!important;padding:8px 18px!important;min-height:38px!important;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:6px}.relight-btn:hover{background:#ffffff29!important;color:#fff!important;border-color:#bfdbfe80!important}.subtle-skip-link{background:transparent;border:0;color:var(--muted);font-size:11px;font-family:var(--font-heading, Georgia),serif;font-style:italic;cursor:pointer;margin-top:18px;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}.subtle-skip-link:hover{color:var(--heading)}.cake-dock-transition{animation:dock-to-hero .9s cubic-bezier(.16,1,.3,1) both}@keyframes dock-to-hero{0%{transform:scale(1.1) translateY(-20px);opacity:.8}to{transform:scale(1) translateY(0);opacity:1}}.test-mode-pill-badge{display:inline-flex;align-items:center;gap:6px;background:#f59e0b29;border:1px solid rgba(245,158,11,.5);color:#fef08a;font-size:11px;font-weight:800;letter-spacing:1px;padding:4px 12px;border-radius:999px;text-transform:uppercase;box-shadow:0 0 12px #f59e0b33;animation:pulse-badge 2s infinite alternate}@keyframes pulse-badge{0%{box-shadow:0 0 8px #f59e0b26}to{box-shadow:0 0 16px #f59e0b66}}.test-controls-row{display:flex;justify-content:center;margin:6px 0 10px}.test-preview-button{display:inline-flex;align-items:center;gap:7px;background:color-mix(in srgb,var(--gold) 18%,var(--card));border:1.5px solid var(--gold);color:var(--heading);font-size:12px;font-weight:700;cursor:pointer;padding:7px 16px;border-radius:999px;transition:all .25s ease;box-shadow:0 4px 14px color-mix(in srgb,var(--gold) 30%,transparent)}.test-preview-button:hover{transform:translateY(-2px);background:var(--gold);color:#091322;box-shadow:0 6px 20px color-mix(in srgb,var(--gold) 55%,transparent)}.test-countdown-box strong{color:var(--gold)!important;text-shadow:0 0 12px rgba(245,158,11,.6)}@media(max-width:768px){.hero.ceremony-center-stage{min-height:calc(100dvh - 68px);padding:16px 12px 36px!important}.ceremony-vigil-wrap{gap:12px;margin-bottom:14px;width:100%;padding:0 8px}.ceremony-vigil-title{font-size:clamp(20px,5.2vw,26px);line-height:1.2}.ceremony-countdown-grid{gap:clamp(4px,1.5vw,8px);margin:6px 0}.ceremony-count-box{padding:7px 6px;min-width:clamp(46px,15vw,58px);border-radius:8px}.ceremony-count-box strong{font-size:clamp(22px,6vw,30px)}.ceremony-count-box span{font-size:8.5px;letter-spacing:.5px}.ceremony-colon{font-size:18px}.ceremony-center-cake .cake-wrap{width:195px!important;margin:16px auto 0!important}.candles-19-tier{transform:scale(.88);transform-origin:top center}.candle-19-flame{width:8px;height:12px;top:-10px}.animated-lighter-wand{transform:scale(.85) rotate(-14deg);top:-82px}.whats-next-btn,.blow-candle-btn{width:90%!important;max-width:320px!important;font-size:15px!important;padding:13px 22px!important;justify-content:center!important}.blow-countdown-banner{width:94%!important;padding:16px 14px!important;border-radius:16px!important;margin-top:12px!important}.blow-countdown-prompt{font-size:15px!important;margin-bottom:8px!important}.blow-big-timer-circle{width:60px!important;height:60px!important;margin-bottom:8px!important}.blow-timer-digit{font-size:30px!important}.ceremony-celebration-card{width:94%!important;padding:18px 14px!important;border-radius:16px!important;gap:10px!important}.ceremony-celebration-card h3{font-size:16.5px!important}.ceremony-celebration-text{font-size:13px!important;line-height:1.5!important}.ceremony-celebration-btns{flex-direction:column!important;width:100%!important;gap:8px!important}.ceremony-celebration-btns button{width:100%!important;justify-content:center!important}.birthday-letter-card{width:92vw!important;max-height:82vh!important;padding:20px 16px!important;overflow-y:auto!important}.letter-heading{font-size:19px!important}.letter-body{font-size:13.5px!important;line-height:1.6!important}.album-swipe-view{padding:6px 0!important}.album-current-card-wrapper{width:92vw!important;max-width:360px!important}.polaroid-collage-wall{grid-template-columns:1fr!important;gap:18px!important;padding:10px 0!important}}.ceremony-center-cake .art-sun,.ceremony-center-cake .art-checker,.ceremony-center-cake .art-star,.ceremony-center-cake .art-flower{display:none!important}
