:root{--ink:#0b1f1a;--ink-soft:#1a332c;--muted:#5c726a;--line:#0b1f1a1f;--gold:#c9a56a;--gold-deep:#a9844a;--gold-soft:#c9a56a38;--surface:#fffcf7b8;--surface-strong:#fffcf7eb;--danger:#9b3b2e;--ok:#1f6b4f;--radius:2px;--header-h:4.75rem;--font-display:"Cormorant Garamond", Georgia, serif;--font-ui:"Manrope", sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);color:var(--ink);font-family:var(--font-ui);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#e8efe9}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{min-width:320px;margin:0;overflow-x:hidden}button,input{font:inherit}button{cursor:pointer}a{color:inherit}::selection{background:var(--gold-soft);color:var(--ink)}.app-shell{isolation:isolate;min-height:100dvh;position:relative;overflow-x:hidden}.landing-shell{overflow:hidden auto}.app-shell>.topbar,.app-shell>.stage,.app-shell>.landing-main,.app-shell>.landing-footer,.app-shell>.auth-card{z-index:2;position:relative}.atmosphere{z-index:-1;background:radial-gradient(80% 60% at 15% 10%,#c9a56a47,#0000 55%),radial-gradient(70% 50% at 90% 20%,#2f5c4e2e,#0000 50%),radial-gradient(60% 45% at 50% 100%,#0b1f1a1f,#0000 55%),linear-gradient(165deg,#f4f7f2 0%,#dce8e0 42%,#c5d5cb 100%);position:fixed;inset:0}.atmosphere:before{content:"";opacity:.7;background-image:linear-gradient(#0b1f1a08 1px,#0000 1px),linear-gradient(90deg,#0b1f1a08 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000,#0000);mask-image:radial-gradient(70% 60% at 50% 40%,#000,#0000)}.atmosphere:after{content:"";filter:blur(8px);width:55vmax;height:55vmax;animation:drift 18s var(--ease) infinite alternate;background:radial-gradient(circle,#c9a56a33,#0000 68%);border-radius:50%;position:absolute;top:-18%;right:-12%}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(-4%,6%)scale(1.08)}}.topbar{z-index:5;height:var(--header-h);pointer-events:auto;-webkit-backdrop-filter:blur(14px);background:#f4f7f2c7;border-bottom:1px solid #0b1f1a0f;justify-content:space-between;align-items:center;padding:0 1.5rem;display:flex;position:sticky;top:0}.brand-mark{font-family:var(--font-display);letter-spacing:.28em;text-indent:.28em;text-transform:uppercase;font-size:clamp(1.35rem,2.5vw,1.75rem);font-weight:600}.brand-logo{align-items:center;gap:.65rem;min-width:0;display:inline-flex}.brand-logo-mark{width:var(--logo-size,36px);height:var(--logo-size,36px);filter:drop-shadow(0 8px 18px #0b1f1a2e);flex-shrink:0}.brand-logo-text{font-family:var(--font-display);letter-spacing:.02em;white-space:nowrap;font-size:clamp(1.05rem,2vw,1.35rem);font-weight:600;line-height:1}.brand-logo-text span{color:var(--gold-deep)}.hero-logo-wrap{animation:brandIn 1s var(--ease) both;justify-content:center;margin-bottom:1rem;display:flex}.hero-from{letter-spacing:.04em;color:var(--muted);margin:0 auto .85rem;font-size:clamp(1rem,2.4vw,1.2rem)}.hero-from strong{color:var(--ink);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-size:1.15em;font-weight:600}.step-indicator{align-items:center;gap:.45rem;display:flex}.step-dot{width:1.65rem;height:2px;transition:background .45s var(--ease), width .45s var(--ease);background:#0b1f1a2e}.step-dot.active{background:var(--ink);width:2.4rem}.step-dot.done{background:var(--gold)}.stage{min-height:calc(100dvh - var(--header-h));place-items:center;padding:1.5rem 1.25rem 2.5rem;display:grid}.stage-fit{height:calc(100dvh - var(--header-h));min-height:calc(100dvh - var(--header-h));max-height:calc(100dvh - var(--header-h));align-content:center;padding:.85rem 1rem 1.15rem;overflow:hidden}.stage-fit.gift-reveal{height:auto;min-height:calc(100dvh - var(--header-h));align-content:start;justify-items:center;max-height:none;padding-top:.55rem;position:relative;overflow:visible}.gift-reveal .gift-reveal-inner,.gift-reveal .stage-inner{justify-content:flex-start;max-height:none}.stage-fit .stage-inner{flex-direction:column;justify-content:center;align-items:center;max-height:100%;display:flex}.stage-fit .hero-logo-wrap{margin-bottom:.45rem}.stage-fit .brand-hero{margin-bottom:.35rem;font-size:clamp(2rem,7vw,3.6rem)}.stage-fit .hero-from{margin-bottom:.85rem;font-size:clamp(.95rem,2vw,1.1rem)}.stage-fit .certificate,.stage-fit .cert-scene{width:min(100%,440px);margin-bottom:1rem}.stage-fit .certificate{padding:1.35rem 1.3rem 1.15rem}.stage-fit .certificate:before{inset:8px}.stage-fit .certificate:after{inset:11px}.stage-fit .cert-amount{font-size:clamp(2.8rem,9vw,4rem)}.stage-fit .cert-meta{margin-top:.85rem;padding-top:.7rem;font-size:.72rem}.stage-fit .cert-greeting{margin-top:.55rem;max-width:28ch;margin-inline:auto;font-size:clamp(.92rem,2.4vw,1.05rem)}.stage-fit .btn{padding:.85rem 1.35rem}.stage-inner{width:min(100%,720px)}.hero-stage .stage-inner{text-align:center;width:min(100%,980px)}.brand-hero{font-family:var(--font-display);letter-spacing:.02em;text-indent:0;text-transform:none;background:linear-gradient(#0b1f1a 8%,#1f463a 48%,#c9a56a 115%);color:#0000;animation:brandIn 1.1s var(--ease) both;-webkit-background-clip:text;background-clip:text;margin:0 0 .85rem;font-size:clamp(2.6rem,9vw,5.8rem);font-weight:500;line-height:.95}@keyframes brandIn{0%{opacity:0;transform:translateY(28px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.hero-kicker{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem;font-size:.72rem;font-weight:600;display:inline-block}.hero-title{max-width:18ch;font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin:0 auto .55rem;font-size:clamp(1.55rem,3.4vw,2.15rem);font-weight:500;line-height:1.1}.hero-copy{max-width:34ch;color:var(--muted);margin:0 auto 1.75rem;font-size:clamp(.95rem,2vw,1.05rem);line-height:1.55}.cert-scene{width:min(100%,560px);margin:0 auto 2.25rem;padding:.35rem .35rem 0;position:relative}.cert-flip{appearance:none;width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;z-index:1;perspective:1400px;perspective-origin:50%;background:0 0;border:0;margin:0;padding:0;display:block;position:relative}.cert-flip:focus-visible{outline-offset:6px;outline:2px solid #0b1f1a59}.cert-flip-stage{transform-style:preserve-3d}.cert-flip-inner{width:100%;transform-style:preserve-3d;transform-origin:50%;transition:transform .75s cubic-bezier(.22,1,.36,1);display:grid;position:relative}.cert-flip-inner.is-flipped{transform:rotateY(180deg)}.cert-flip-inner.is-instant{transition:none}@media (prefers-reduced-motion:reduce){.cert-flip-inner{transition:none}}.cert-face{backface-visibility:hidden;transform-origin:50%;grid-area:1/1;width:100%}.cert-face-front{z-index:2;position:relative;transform:rotateY(0)}.cert-face-back{z-index:1;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:1.75rem 1.5rem;display:flex;transform:rotateY(180deg)}.cert-flip-teaser{z-index:4;letter-spacing:.08em;text-transform:uppercase;color:#3a260a9e;text-align:center;margin:.85rem 0 0;font-size:.78rem;position:relative}.cert-back-label{z-index:4;letter-spacing:.22em;text-transform:uppercase;color:#3a260ab8;margin:0 0 .85rem;font-size:.7rem;font-weight:700;position:relative}.cert-back-greeting{z-index:4;max-width:28ch;font-family:var(--font-display);color:#2a1c08;overflow-wrap:anywhere;margin:0;font-size:clamp(1.15rem,3.2vw,1.5rem);font-style:italic;font-weight:500;line-height:1.4;position:relative}.cert-back-sign{z-index:4;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:#3a260acc;margin:1.25rem 0 0;font-size:1.15rem;font-weight:600;position:relative}.cert-flip-hint{text-align:center;letter-spacing:.04em;color:var(--ink-soft);margin:.75rem 0 0;font-size:.78rem}.cert-glow{z-index:0;pointer-events:none;filter:blur(2px);background:radial-gradient(55% 45% at 50% 42%,#c9a56a73,#0000 70%),radial-gradient(40% 30% at 50% 80%,#fff8dc59,#0000 70%);animation:4.5s ease-in-out infinite alternate certGlowPulse;position:absolute;inset:-12% -8% -8%}@keyframes certGlowPulse{0%{opacity:.7;transform:scale(.96)}to{opacity:1;transform:scale(1.04)}}.cert-ribbon{z-index:6;color:#f4f7f2;letter-spacing:.22em;text-transform:uppercase;clip-path:polygon(0 0,100% 0,94% 100%,6% 100%);animation:ribbonIn .7s var(--ease) .35s both;background:linear-gradient(#2f5c4e,#0b1f1a);padding:.35rem 1.35rem .4rem;font-size:.68rem;font-weight:700;position:absolute;top:-.15rem;left:50%;transform:translate(-50%);box-shadow:0 10px 22px #0b1f1a47}@keyframes ribbonIn{0%{opacity:0;transform:translate(-50%)translateY(-10px)scale(.92)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.cert-seal{z-index:5;color:#fff4e8;width:2.6rem;height:2.6rem;font-family:var(--font-display);letter-spacing:.06em;background:radial-gradient(circle at 35% 30%,#e8b4a0,#9b3b2e 55%,#6e2418);border-radius:50%;place-items:center;margin:1rem auto 0;font-size:.78rem;font-weight:700;display:grid;position:relative;box-shadow:0 6px 14px #5a1e1459,inset 0 1px #ffdcc866}.certificate{width:100%;transform-style:preserve-3d;color:#2a1c08;text-align:center;background:linear-gradient(160deg,#f6edd0 0%,#e4c678 35%,#d4af6a 55%,#e8d090 78%,#c9a56a 100%);border:1px solid #b8924a8c;border-radius:4px;padding:2rem 1.75rem 1.75rem;position:relative;overflow:hidden;box-shadow:0 22px 48px #5a3c0a38,0 8px 18px #0b1f1a1a,inset 0 1px #fff8dcb3,inset 0 -1px #78501440}.certificate-gold{animation:5.5s ease-in-out infinite certFloat}.cert-face.certificate-gold{animation:none}@keyframes certFloat{0%,to{translate:0}50%{translate:0 -6px}}.cert-glare{pointer-events:none;mix-blend-mode:soft-light;opacity:.9;z-index:2;position:absolute;inset:0}.cert-shine{animation:certShine 2.4s var(--ease) .6s both;pointer-events:none;z-index:3;background:linear-gradient(115deg,#0000 35%,#ffffff8c 48%,#0000 62%);position:absolute;inset:-40% -30%;transform:translate(-40%)}@keyframes certShine{to{transform:translate(45%)}}.cert-ornament{z-index:1;pointer-events:none;border:1px solid #5a3c0a59;width:42px;height:42px;position:absolute}.cert-ornament:before,.cert-ornament:after{content:"";background:#5a3c0a59;position:absolute}.cert-ornament-tl{border-bottom:0;border-right:0;top:18px;left:18px}.cert-ornament-tr{border-bottom:0;border-left:0;top:18px;right:18px}.cert-ornament-bl{border-top:0;border-right:0;bottom:18px;left:18px}.cert-ornament-br{border-top:0;border-left:0;bottom:18px;right:18px}.certificate:before,.certificate:after{content:"";pointer-events:none;z-index:1;border:1px solid #5a3c0a47;position:absolute;inset:10px}.certificate:after{border-color:#fff8dc59;inset:14px}.cert-label{z-index:4;letter-spacing:.22em;text-transform:uppercase;color:#3a260ab8;text-align:center;margin:0 0 .45rem;font-size:.7rem;font-weight:700;position:relative}.cert-amount{z-index:4;font-family:var(--font-display);letter-spacing:-.02em;color:#1f1406;text-shadow:0 1px #fff8dc8c;text-align:center;margin:0;font-size:clamp(3.4rem,10vw,5.5rem);font-weight:700;line-height:.95;position:relative}.cert-amount span{letter-spacing:.08em;vertical-align:.35em;color:#6b4a16;margin-left:.35rem;font-size:.38em;display:inline-block}.cert-network{z-index:4;letter-spacing:.14em;text-transform:uppercase;color:#3a260aa6;text-align:center;margin:.45rem 0 0;font-size:.78rem;position:relative}.cert-greeting{z-index:4;max-width:28ch;font-family:var(--font-display);color:#2a1c08e0;text-align:center;margin:.75rem auto 0;font-size:clamp(1rem,2.6vw,1.2rem);font-style:italic;line-height:1.35;position:relative}.balloon-field{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.balloon-field-festive .balloon{opacity:.95;filter:drop-shadow(0 12px 16px #0b1f1a29)}.balloon{opacity:.72;filter:drop-shadow(0 10px 14px #0b1f1a1f);border-radius:50% 50% 48% 48%;animation-name:balloonRise;animation-timing-function:linear;animation-iteration-count:infinite;display:block;position:absolute;bottom:-18%}.balloon:before{content:"";background:#ffffff73;border-radius:50%;width:28%;height:22%;position:absolute;top:14%;left:22%}.balloon:after{content:"";background:inherit;width:8px;height:8px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.balloon-string{background:linear-gradient(#5a3c0a59,#0000);width:1px;height:42px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.balloon-gold{background:linear-gradient(160deg,#f3df9e,#c9a56a 55%,#a9844a)}.balloon-cream{background:linear-gradient(160deg,#fff8e8,#e8d4a8 60%,#d2b57a)}.balloon-emerald{background:linear-gradient(160deg,#dce8e0,#2f5c4e 60%,#0b1f1a)}@keyframes balloonRise{0%{opacity:0;transform:translate(0,0)rotate(-4deg)}8%{opacity:.75}50%{transform:translate(18px,-55vh)rotate(5deg)}to{opacity:0;transform:translate(-12px,-115vh)rotate(-6deg)}}.admin-greeting-edit{width:100%;min-width:160px;font:inherit;resize:vertical;background:#fffcf7f2;border:1px solid #0b1f1a29;border-radius:2px;margin-top:.45rem;padding:.45rem .55rem;font-size:.82rem;display:block}.cert-meta{z-index:4;letter-spacing:.06em;text-transform:uppercase;color:#3a260ab3;text-align:left;border-top:1px solid #5a3c0a38;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.1rem;padding-top:.95rem;font-size:.78rem;display:flex;position:relative}@media (width<=640px){:root{--header-h:4.25rem}.stage-fit{padding:.65rem .85rem .95rem}.stage-fit .brand-hero{font-size:clamp(1.75rem,9vw,2.4rem)}.stage-fit .hero-from{margin-bottom:.7rem;font-size:.95rem}.stage-fit .cert-scene,.stage-fit .certificate{width:min(100%,360px)}.stage-fit .certificate{padding:1.15rem 1rem 1rem}.cert-ornament{width:28px;height:28px}.cert-ornament-tl{top:12px;left:12px}.cert-ornament-tr{top:12px;right:12px}.cert-ornament-bl{bottom:12px;left:12px}.cert-ornament-br{bottom:12px;right:12px}.stage-fit .cert-amount{font-size:clamp(2.4rem,14vw,3.2rem)}.stage-fit .btn{width:auto;min-width:220px}}.cta-row{flex-wrap:wrap;justify-content:center;gap:.85rem;display:flex}.btn{appearance:none;border-radius:var(--radius);letter-spacing:.14em;text-transform:uppercase;transition:transform .35s var(--ease), background .35s var(--ease), color .35s var(--ease), border-color .35s var(--ease), opacity .35s var(--ease);border:1px solid #0000;padding:.95rem 1.6rem;font-size:.84rem;font-weight:650}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--ink);color:#f7f3ea}.btn-primary:hover:not(:disabled){background:var(--ink-soft);transform:translateY(-2px)}.btn-ghost{color:var(--ink);background:0 0;border-color:#0b1f1a38}.btn-ghost:hover:not(:disabled){border-color:var(--ink);transform:translateY(-2px)}.panel{border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:clamp(1.5rem,4vw,2.4rem);box-shadow:0 24px 60px #0b1f1a14}.panel-title{font-family:var(--font-display);margin:0 0 .55rem;font-size:clamp(2rem,5vw,2.85rem);font-weight:500;line-height:1.05}.panel-copy{max-width:42ch;color:var(--muted);margin:0 0 1.75rem;line-height:1.55}.form-grid{gap:1rem;display:grid}.field{text-align:left;gap:.45rem;display:grid}.field label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:650}.field input{border-radius:var(--radius);background:var(--surface-strong);width:100%;color:var(--ink);transition:border-color .3s var(--ease), box-shadow .3s var(--ease);border:1px solid #0b1f1a29;outline:none;padding:.95rem 1rem}.field input:focus{border-color:var(--gold-deep);box-shadow:0 0 0 3px var(--gold-soft)}.field-error{color:var(--danger);font-size:.8rem}.form-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.35rem;display:flex}.moderation{text-align:center}.mod-visual{aspect-ratio:1;place-items:center;width:min(100%,220px);margin:0 auto 1.75rem;display:grid;position:relative}.mod-ring{border:1px solid #0b1f1a1f;border-radius:50%;position:absolute;inset:0}.mod-ring.spin{border-top-color:var(--gold);border-right-color:var(--gold);animation:1.1s linear infinite spin}.mod-ring.ok{border-color:var(--ok)}.mod-ring.scan-done{border-color:var(--gold);animation:1s ease-in-out infinite pulseRing}.mod-ring.alert{border-color:var(--danger);animation:none}.mod-core.alert{color:var(--danger);animation:alertPop .55s var(--ease) both;background:linear-gradient(160deg,#fffcf7f2,#9b3b2e24);border-color:#9b3b2e66}@keyframes pulseRing{50%{opacity:.75;transform:scale(1.04)}}@keyframes alertPop{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.mod-core{aspect-ratio:1;width:68%;font-family:var(--font-display);color:var(--ink);background:linear-gradient(160deg,#fffcf7f2,#c9a56a33);border:1px solid #c9a56a59;border-radius:50%;place-items:center;font-size:2.4rem;font-weight:600;display:grid}.mod-list{text-align:left;gap:.7rem;max-width:360px;margin:0 auto 1.75rem;padding:0;list-style:none;display:grid}.mod-list li{background:#fffcf78c;border:1px solid #0b1f1a14;align-items:center;gap:.75rem;padding:.7rem .85rem;font-size:.92rem;display:flex}.mod-list .status{background:#0b1f1a33;border-radius:50%;flex-shrink:0;width:.55rem;height:.55rem}.mod-list .status.pending{background:var(--gold);box-shadow:0 0 0 4px var(--gold-soft);animation:1.2s ease-in-out infinite pulse}.mod-list .status.done{background:var(--ok)}@keyframes pulse{50%{opacity:.7;transform:scale(.85)}}.wallet-hint{border-left:2px solid var(--gold);color:var(--ink-soft);background:#c9a56a1a;gap:.65rem;margin:0 0 1rem;padding:.95rem 1rem;font-size:.9rem;line-height:1.5;display:grid}.wallet-help-box{background:#fffcf7bf;border:1px solid #0b1f1a1a;margin:0 0 1.15rem;padding:.95rem 1rem}.wallet-help-box p{color:var(--ink-soft);margin:0 0 .55rem;font-size:.92rem;line-height:1.5}.wallet-help-link{color:var(--ink);text-underline-offset:3px;font-size:.9rem;font-weight:650}.help-shell{overflow:hidden auto}.help-main{z-index:2;width:min(820px,100%);margin:0 auto;padding:1.75rem 1.25rem 3rem;position:relative}.help-title{font-family:var(--font-display);margin:0 0 .75rem;font-size:clamp(2rem,5vw,3rem);font-weight:500;line-height:1.05}.help-lead{max-width:48ch;color:var(--muted);margin:0 0 1.75rem;font-size:1.05rem;line-height:1.55}.help-section{margin-bottom:2rem}.help-section h2,.help-card h2{font-family:var(--font-display);margin:0 0 .85rem;font-size:1.55rem;font-weight:600}.help-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.help-card{background:#fffcf7c7;border:1px solid #0b1f1a1a;margin-bottom:1rem;padding:1.15rem 1.1rem}.help-card h3{font-family:var(--font-display);margin:0 0 .25rem;font-size:1.25rem}.help-card p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.5}.help-meta{letter-spacing:.06em;text-transform:uppercase;color:var(--gold-deep)!important;margin-bottom:.45rem!important;font-size:.78rem!important}.help-alert{background:#c9a56a1a;border-color:#c9a56a73}.help-alert ul{color:var(--ink-soft);margin:0;padding-left:1.15rem;line-height:1.55}.help-alert li+li{margin-top:.4rem}.help-steps{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.help-steps li{counter-increment:helpstep;background:#fffcf7b3;border:1px solid #0b1f1a1a;gap:.2rem;padding:.95rem 1rem;display:grid}.help-steps{counter-reset:helpstep}.help-steps strong{font-family:var(--font-display);font-size:1.2rem}.help-steps span{color:var(--muted);line-height:1.45}.help-cta{justify-content:flex-start;margin-top:1.5rem}.help-cta .btn{text-decoration:none}.landing-footer{flex-wrap:wrap}.landing-footer-link{color:var(--ink-soft);text-underline-offset:3px;font-size:.85rem}@media (width<=860px){.help-grid{grid-template-columns:1fr}}@media (width<=640px){.help-main{padding:4.75rem 1rem 2.5rem}.help-cta .btn{width:100%}}.success-mark{width:72px;height:72px;font-family:var(--font-display);color:var(--ok);background:#1f6b4f14;border:1px solid #1f6b4f59;place-items:center;margin:0 auto 1.25rem;font-size:2rem;display:grid}.success-amount{font-family:var(--font-display);margin:.25rem 0 0;font-size:clamp(2.4rem,7vw,3.6rem);font-weight:600;line-height:1}.wallet-preview{word-break:break-all;color:var(--muted);border:1px dashed #0b1f1a33;margin-top:1.25rem;padding:.9rem 1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}.aml-notice{text-align:left;background:#9b3b2e0f;border:1px solid #9b3b2e38;margin-top:1.5rem;padding:1.1rem 1.15rem}.aml-notice-label{letter-spacing:.16em;text-transform:uppercase;color:var(--danger);margin:0 0 .65rem;font-size:.7rem;font-weight:700}.aml-notice p{color:var(--ink-soft);margin:0;font-size:.9rem;line-height:1.55}.aml-notice p+p{margin-top:.7rem}.aml-notice-enter{animation:amlSlide .7s var(--ease) .15s both}.aml-amount{color:var(--ink-soft)}@keyframes amlSlide{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.payout-notice{text-align:left;background:#1f6b4f0f;border:1px solid #1f6b4f38;margin-top:1.5rem;padding:1.1rem 1.15rem}.payout-notice-label{letter-spacing:.16em;text-transform:uppercase;color:var(--ok);margin:0 0 .65rem;font-size:.7rem;font-weight:700}.payout-notice p{color:var(--ink-soft);margin:0;font-size:.9rem;line-height:1.55}.payout-notice p+p{margin-top:.7rem}.field-ok{color:var(--ok);font-size:.88rem}.landing-topbar{z-index:6}.landing-glow{z-index:-1;pointer-events:none;background:radial-gradient(50% 35% at 50% 18%,#c9a56a38,#0000 70%);animation:10s ease-in-out infinite alternate landingGlow;position:fixed;inset:0}@keyframes landingGlow{0%{opacity:.7;transform:scale(1)}to{opacity:1;transform:scale(1.06)}}.landing-nav{pointer-events:auto;gap:.6rem;display:flex}.landing-nav .btn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.landing-main{z-index:2;width:min(1080px,100%);margin:0 auto;padding:1.15rem 1.25rem 3rem;position:relative}.landing-hero-v2{text-align:left;align-items:flex-start;min-height:0;margin-bottom:3.5rem;padding-top:.75rem;padding-bottom:1.5rem;display:flex}.landing-hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(1.5rem,4vw,3rem);width:100%;display:grid}.landing-brand{text-align:left;margin-bottom:.85rem;font-size:clamp(3rem,8vw,5.4rem)}.landing-lead-hero{max-width:34ch;color:var(--muted);margin:0 0 1.5rem;font-size:clamp(1rem,2.1vw,1.15rem);line-height:1.55}.landing-cta{justify-content:flex-start;margin-bottom:0}.landing-cta .btn{align-items:center;text-decoration:none;display:inline-flex}.landing-preview{perspective:1200px;justify-self:end;width:min(100%,460px);margin:0}.landing-cert{margin:0;animation:5.5s ease-in-out infinite certFloat}.landing-moments{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-bottom:3.25rem;display:grid}.landing-moment{background:#fffcf7b3;border:1px solid #0b1f1a1a;padding:1.15rem 1.1rem}.landing-moment h3{font-family:var(--font-display);margin:0 0 .35rem;font-size:1.35rem;font-weight:600}.landing-moment p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.45}.landing-section{margin-bottom:3rem}.landing-section h2{font-family:var(--font-display);margin:0 0 .55rem;font-size:clamp(1.8rem,4vw,2.4rem);font-weight:500}.landing-lead{color:var(--muted);max-width:48ch;margin:0 0 1.25rem;line-height:1.55}.landing-steps{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.landing-steps li{transition:border-color .35s var(--ease), background .35s var(--ease);background:#fffcf7a6;border:1px solid #0b1f1a1a;gap:.25rem;padding:1.1rem 1.15rem;display:grid}.landing-steps li:hover{background:#fffcf7e6;border-color:#c9a56a73}.landing-step-n{font-family:var(--font-display);letter-spacing:.14em;color:var(--gold-deep);font-size:.95rem}.landing-steps strong{font-family:var(--font-display);font-size:1.35rem;font-weight:600}.landing-steps span:last-child{color:var(--muted);line-height:1.45}.landing-purpose{background:linear-gradient(145deg,#fffcf7bf,#c9a56a1f);border:1px solid #0b1f1a1a;padding:1.5rem 1.35rem}.landing-purpose .landing-cta{margin-top:1.15rem}.landing-pay-note{max-width:42ch;color:var(--muted);margin:0 0 2.75rem;font-size:.95rem;line-height:1.5}.landing-footer{z-index:2;color:var(--muted);justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;font-size:.85rem;display:flex;position:relative}.gift-reveal{align-content:start;place-items:start center;padding:.65rem 1rem 1rem}.gift-reveal-inner{gap:0;width:min(100%,520px);margin-inline:auto}.gift-heading{text-align:center;flex-direction:column;align-items:center;margin-bottom:.85rem;display:flex}.gift-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 .45rem;font-size:.72rem;font-weight:700}.gift-from{letter-spacing:.03em;color:var(--muted);background:linear-gradient(#fffcf7eb,#f8efd5bf);border:1px solid #c9a56a73;align-items:baseline;gap:.4rem;margin:0 auto;padding:.45rem 1rem .5rem;font-size:clamp(1rem,2.4vw,1.15rem);display:inline-flex;box-shadow:0 10px 28px #5a3c0a1a}.gift-from strong{color:var(--ink);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;font-size:1.2em;font-weight:600}.gift-reveal .cert-scene{width:min(100%,520px);margin:.15rem auto .65rem;padding-top:1rem}.gift-reveal .certificate.cert-face-front{z-index:1;padding:1.65rem 1.65rem 1.25rem;position:relative}.gift-reveal .certificate.cert-face-back{padding:1.65rem 1.65rem 1.25rem}.gift-reveal .cert-flip-inner{min-height:0}.gift-reveal .cert-flip-hint{margin-top:.45rem;margin-bottom:.1rem;padding-inline:.5rem}.gift-cta{margin-top:.1rem}.gift-cta .btn-primary{min-width:15rem;box-shadow:0 14px 32px #0b1f1a2e}.gift-sparkles{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.gift-sparkles span{background:radial-gradient(circle,#f4e3b0,#c9a56a33);border-radius:50%;width:5px;height:5px;animation:2.8s ease-in-out infinite sparkleTwinkle;position:absolute;box-shadow:0 0 10px #c9a56a8c}.gift-sparkles span:first-child{animation-delay:0s;top:18%;left:12%}.gift-sparkles span:nth-child(2){width:4px;height:4px;animation-delay:.6s;top:28%;right:14%}.gift-sparkles span:nth-child(3){animation-delay:1.1s;top:62%;left:8%}.gift-sparkles span:nth-child(4){width:6px;height:6px;animation-delay:1.7s;top:72%;right:10%}.gift-sparkles span:nth-child(5){width:3px;height:3px;animation-delay:.35s;top:42%;left:18%}.gift-sparkles span:nth-child(6){animation-delay:1.4s;top:48%;right:20%}@keyframes sparkleTwinkle{0%,to{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}@media (width<=860px){.landing-hero-v2{text-align:center;min-height:auto;padding-top:.5rem}.landing-hero-grid{grid-template-columns:1fr;gap:1.75rem}.landing-brand{text-align:center}.landing-lead-hero{margin-inline:auto}.landing-cta{justify-content:center}.landing-preview{justify-self:center}.landing-moments{grid-template-columns:1fr}}@media (width<=640px){.landing-main,.help-main{padding:1.25rem 1rem 2.5rem}.stage-fit.gift-reveal,.gift-reveal{height:auto;min-height:calc(100dvh - var(--header-h));max-height:none;padding:.4rem .85rem 1.25rem;overflow:visible}.gift-heading{margin-bottom:.55rem}.gift-eyebrow{margin-bottom:.3rem;font-size:.68rem}.gift-from{padding:.35rem .8rem .4rem;font-size:.95rem}.gift-reveal .cert-scene{width:100%;margin:.1rem auto .45rem;padding-top:.85rem}.gift-reveal .certificate.cert-face-front,.gift-reveal .certificate.cert-face-back{width:100%;padding:1.25rem .95rem 1rem}.gift-reveal .cert-amount{font-size:clamp(2.4rem,12vw,3.2rem)}.gift-reveal .cert-meta{gap:.5rem;margin-top:.75rem;padding-top:.65rem;font-size:.68rem}.cert-flip-teaser{margin-top:.65rem;font-size:.7rem}.cert-back-greeting{max-width:24ch;font-size:clamp(1.05rem,4.5vw,1.3rem)}.cert-back-sign{margin-top:.9rem;font-size:1rem}.cert-ribbon{padding:.28rem .95rem .32rem;font-size:.58rem;top:0}.cert-seal{width:2.15rem;height:2.15rem;margin-top:.75rem;font-size:.65rem}.cert-glow{opacity:.75;inset:-6% -4% -4%}.gift-cta{width:100%;margin-top:.35rem}.gift-cta .btn{width:100%;max-width:none}.certificate-gold,.landing-cert{animation:none}.balloon-field-festive .balloon{opacity:.55}}@media (width<=640px) and (height<=740px){.gift-heading{margin-bottom:.35rem}.gift-reveal .cert-scene{margin-bottom:.25rem;padding-top:.7rem}.gift-reveal .certificate.cert-face-front,.gift-reveal .certificate.cert-face-back{padding:1.1rem .9rem .9rem}.gift-reveal .cert-amount{font-size:clamp(2.2rem,11vw,2.9rem)}.cert-flip-teaser{margin-top:.45rem}.gift-reveal .cert-meta{margin-top:.55rem;padding-top:.5rem}.gift-reveal .cert-flip-hint{margin-top:.3rem;font-size:.72rem}.gift-cta{margin-top:.25rem}.gift-cta .btn{padding:.8rem 1.1rem}}.auth-shell{place-items:center;padding:2rem 1rem;display:grid}.auth-card{border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:min(100%,440px);padding:2rem 1.5rem}.auth-brand{color:inherit;margin-bottom:1rem;text-decoration:none;display:inline-flex}.auth-card h1{font-family:var(--font-display);margin:0 0 .4rem;font-size:2.2rem;font-weight:500}.auth-copy{color:var(--muted);margin:0 0 1.25rem;line-height:1.5}.auth-switch{color:var(--muted);margin:1.1rem 0 0;font-size:.9rem}.auth-switch a{color:var(--ink)}@media (width<=640px){.topbar{padding:0 1.1rem}.stage{padding:1.15rem 1rem 2rem}.certificate{padding:1.5rem 1.15rem 1.25rem}.stage-fit .cert-meta{flex-direction:row}.cert-meta{flex-direction:column;gap:.45rem}.stage-fit .btn{width:auto}.btn{width:100%}.form-actions .btn{flex:1}}.admin-shell{min-height:100dvh;color:var(--ink);font-family:var(--font-ui);background:radial-gradient(70% 40% at 10% 0,#c9a56a29,#0000 50%),linear-gradient(#eef3ef 0%,#d8e4dc 100%);padding:1.5rem clamp(1rem,3vw,2.5rem) 3rem}.admin-login{place-items:center;display:grid}.admin-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffcf7e6;width:min(100%,420px);padding:2rem 1.6rem}.admin-card h1,.admin-header h1{font-family:var(--font-display);margin:.2rem 0 .6rem;font-size:clamp(2rem,4vw,2.8rem);font-weight:500;line-height:1}.admin-kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.7rem;font-weight:700}.admin-muted{color:var(--muted);font-size:.85rem;line-height:1.45}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-header-actions{align-items:center;gap:.65rem;display:flex}.admin-field{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);gap:.4rem;margin-top:1rem;font-size:.72rem;font-weight:650;display:grid}.admin-field input,.admin-field textarea,.admin-search,.admin-toolbar select,.admin-status{width:100%;color:var(--ink);font:inherit;letter-spacing:normal;text-transform:none;background:#fffcf7f2;border:1px solid #0b1f1a29;border-radius:2px;padding:.8rem .9rem;font-size:.92rem;font-weight:500}.admin-field.checkbox{grid-template-columns:1fr auto;align-items:center}.admin-field.checkbox input{width:auto}.admin-btn{appearance:none;background:var(--ink);color:#f7f3ea;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:2px;margin-top:1.1rem;padding:.85rem 1.2rem;font-size:.78rem;font-weight:700}.admin-btn.ghost{color:var(--ink);background:0 0;border-color:#0b1f1a33;margin-top:0}.admin-link-btn{appearance:none;color:var(--ink-soft);text-underline-offset:3px;font:inherit;cursor:pointer;background:0 0;border:0;font-size:.88rem;text-decoration:underline}.admin-error{color:var(--danger);margin:.75rem 0 0;font-size:.88rem}.admin-hint{color:var(--muted);margin:.85rem 0 0;font-size:.78rem}.admin-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.admin-stat{background:#fffcf7b8;border:1px solid #0b1f1a1a;padding:1rem}.admin-stat span{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem;font-size:.68rem;font-weight:700;display:block}.admin-stat strong{font-family:var(--font-display);font-size:1.8rem;font-weight:600}.admin-tabs{gap:.4rem;margin-bottom:1rem;display:flex}.admin-tabs button{font:inherit;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0b1f1a1f;padding:.7rem 1rem;font-size:.82rem;font-weight:650}.admin-tabs button.active{background:var(--ink);border-color:var(--ink);color:#f7f3ea}.admin-section{background:#fffcf7c7;border:1px solid #0b1f1a1a;padding:1rem}.admin-toolbar{grid-template-columns:1fr 200px auto;gap:.65rem;margin-bottom:1rem;display:grid}.admin-empty{text-align:center;color:var(--muted);padding:2.5rem 1rem}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-table th{text-align:left;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid #0b1f1a1a;padding:.65rem .55rem;font-size:.68rem}.admin-table td{vertical-align:top;border-bottom:1px solid #0b1f1a14;padding:.85rem .55rem}.admin-cell-title{font-weight:650}.admin-mono{word-break:break-all;max-width:220px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}.admin-amount-edit{align-items:center;gap:.35rem;display:inline-flex}.admin-amount-edit input{width:96px;font:inherit;background:#fffcf7f2;border:1px solid #0b1f1a29;border-radius:2px;padding:.45rem .55rem;font-size:.9rem}.admin-amount-edit span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}.admin-status{min-width:150px;padding:.45rem .55rem;font-size:.8rem}.admin-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.admin-field.full{grid-column:1/-1}.admin-settings-actions{align-items:center;gap:.85rem;margin-top:.5rem;display:flex}.admin-saved{color:var(--ok);font-size:.88rem;font-weight:600}@media (width<=960px){.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-toolbar,.admin-settings-grid{grid-template-columns:1fr}}
