@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap";:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#0a1628;background:#fafaf7;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg: #fafaf7;--card: #ffffff;--ink: #0a1628;--ink-soft: #3d4a5c;--ink-muted: #6b7688;--ink-subtle: #99a2b2;--line: #ebe8e0;--line-strong: #d8d3c8;--navy: #0a1628;--navy-hover: #142340;--gold: #c9a961;--gold-soft: #e8c885;--gold-tint: #f7f0e0;--mint: #4cb896;--shadow-sm: 0 1px 2px rgba(10, 22, 40, .04), 0 4px 12px rgba(10, 22, 40, .04);--shadow-md: 0 4px 12px rgba(10, 22, 40, .06), 0 16px 40px rgba(10, 22, 40, .06);--shadow-lg: 0 12px 32px rgba(10, 22, 40, .08), 0 32px 80px rgba(10, 22, 40, .1);--radius-sm: 8px;--radius: 12px;--radius-lg: 20px;--radius-xl: 28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--bg)}button,input{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--navy);outline-offset:2px;border-radius:4px}h1,h2,h3,h4,p{margin-top:0}.site{min-height:100vh;display:flex;flex-direction:column}.header{position:sticky;top:0;z-index:50;background:#fafaf7e6;backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--line)}.header-inner{max-width:1320px;margin:0 auto;padding:12px 28px;display:flex;align-items:center;gap:32px}.brand{display:flex;align-items:center;gap:12px;background:none;border:0;padding:0;flex-shrink:0}.brand-logo{height:28px;width:auto;object-fit:contain;display:block}.brand-name{font:500 12px DM Mono,monospace;letter-spacing:.18em;color:var(--navy)}.nav{display:flex;gap:4px;margin-left:auto}.nav button{background:none;border:0;color:var(--ink-soft);font-size:13.5px;font-weight:500;padding:9px 14px;border-radius:8px;transition:color .15s,background .15s}.nav button:hover{color:var(--ink);background:#0a16280a}.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.menu-toggle{display:none;background:none;border:0;padding:8px;border-radius:8px}.menu-toggle:hover{background:#0a16280f}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:999px;font-weight:600;letter-spacing:-.005em;transition:transform .15s ease,background .2s,box-shadow .2s;white-space:nowrap;cursor:pointer}.btn-sm{padding:8px 15px;font-size:12.5px}.btn-lg{padding:16px 28px;font-size:15px}.btn-block{width:100%;padding:12px 18px;font-size:13px}.btn-primary{background:var(--navy);color:#fff;box-shadow:0 2px 8px #0a162826,0 8px 24px #0a16281f}.btn-primary:hover{background:var(--navy-hover);transform:translateY(-1px);box-shadow:0 4px 12px #0a16282e,0 12px 32px #0a162826}.btn-primary:active{transform:translateY(0)}.btn-light{background:#fff;color:var(--navy);box-shadow:0 8px 24px #00000026}.btn-light:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0003}.trust-bar{background:var(--navy);color:#d4dbe8;font-size:11px;font-weight:500;letter-spacing:.01em}.trust-bar-inner{max-width:1320px;margin:0 auto;padding:6px 28px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.trust-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.trust-item svg{color:var(--gold-soft)}.trust-divider{color:#4a5568}.hero-landing{text-align:center;padding:80px 24px 60px;max-width:900px;margin:0 auto}.hero-landing-inner{display:flex;flex-direction:column;align-items:center}.hero-landing-title{font:500 clamp(38px,5.5vw,68px)/1.05 "Playfair Display",Georgia,serif;letter-spacing:-.032em;color:var(--navy);margin:18px 0;max-width:800px}.hero-landing-title em{font-style:italic;color:var(--gold)}.hero-landing-sub{font-size:clamp(15px,1.2vw,17px);line-height:1.6;color:var(--ink-soft);margin:0 0 32px;max-width:540px}.hero-landing-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center}.hero-landing-trust{margin-top:32px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;font-size:12px;color:var(--ink-muted);font-weight:500}.hero-landing-trust span{display:inline-flex;align-items:center;gap:5px}.hero-landing-trust svg{color:var(--gold)}.builder-page{max-width:1500px;width:100%;margin:0 auto;padding:12px 24px}.builder-page .builder-grid{display:grid;grid-template-columns:minmax(0,1.45fr) 400px;gap:24px;align-items:start}.builder-page .poster-stage{display:flex;flex-direction:column;gap:8px;align-items:center;position:sticky;top:76px}.builder-page .pf-poster{display:block;width:520px;max-width:100%;aspect-ratio:7 / 10;overflow:hidden;border-radius:1px;line-height:0;box-shadow:0 1px 2px #0000001f,0 4px 8px #0000000f}.builder-page .pf-poster .star-map{display:block;width:100%;height:100%}.builder-page .poster-meta{display:flex;justify-content:center;align-items:center;gap:8px;font:500 10px DM Mono,monospace;letter-spacing:.14em;color:var(--ink-muted);text-transform:uppercase;padding-top:4px}.builder-page .panel{background:var(--card);border-radius:var(--radius-xl);padding:22px;box-shadow:var(--shadow-lg);position:sticky;top:76px;align-self:start;display:flex;flex-direction:column;gap:18px}.builder-page .panel-head{padding-bottom:14px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:3px}.builder-page .panel-title{font:500 20px/1.15 Playfair Display,Georgia,serif;letter-spacing:-.02em;color:var(--navy);margin:0}.panel-sub{font-size:11.5px;color:var(--ink-muted);margin:0;letter-spacing:.005em}.panel-section{display:flex;flex-direction:column;gap:10px}.panel-section-head{display:flex;align-items:center;gap:10px}.panel-section-label{font:500 10px DM Mono,monospace;letter-spacing:.16em;color:var(--ink-muted);text-transform:uppercase;white-space:nowrap}.panel-section-line{flex:1;height:1px;background:var(--line)}.field-block{display:flex;flex-direction:column;gap:8px}.field-block>.field-label{margin-bottom:0}.field{display:block}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field-label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--ink-soft);margin-bottom:6px;letter-spacing:-.005em}.field-label svg{color:var(--gold)}.field input{width:100%;padding:10px 13px;background:#f7f7f3;border:1.5px solid transparent;border-radius:9px;font-size:13px;font-weight:500;color:var(--ink);transition:all .15s ease}.field input:hover{background:#f2f2ed}.field input:focus{outline:none;background:#fff;border-color:var(--navy);box-shadow:0 0 0 4px #0a162814}.field input::placeholder{color:var(--ink-subtle);font-weight:400}.builder-page .color-grid{display:flex;flex-wrap:wrap;gap:8px}.builder-page .color-chip{width:34px;height:34px;border-radius:50%;cursor:pointer;position:relative;display:grid;place-items:center;transition:transform .15s ease,box-shadow .2s ease;box-shadow:0 1px 3px #0a162826}.builder-page .color-chip:hover{transform:scale(1.1)}.builder-page .color-chip.is-selected{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--navy),0 4px 12px #0a162833}.builder-page .frame-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.builder-page .frame-chip{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;padding:9px 3px 8px;background:#f7f7f3;border:1.5px solid transparent;border-radius:8px;cursor:pointer;transition:all .15s ease}.builder-page .frame-chip:hover{background:#f2f2ed}.builder-page .frame-chip.is-selected{border-color:var(--navy);background:#fff;box-shadow:0 0 0 3px #0a16280d}.builder-page .frame-chip.is-selected:after{content:"";position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:var(--navy)}.builder-page .frame-swatch{display:block;width:18px;height:18px;border-radius:3px;box-shadow:0 1px 2px #0000002e,inset 0 0 0 1px #ffffff14}.builder-page .frame-chip-label{font-size:8.5px;font-weight:600;color:var(--navy);letter-spacing:-.01em;line-height:1;text-align:center}.builder-page .toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.builder-page .toggle-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:8px;border:1.5px solid var(--line);background:#f7f7f3;font-size:11.5px;font-weight:500;color:var(--ink-soft);text-align:left;cursor:pointer;transition:all .15s ease}.builder-page .toggle-chip:hover{background:#f2f2ed;border-color:var(--line-strong)}.builder-page .toggle-chip.is-on{background:var(--navy);color:#fff;border-color:var(--navy)}.builder-page .toggle-dot{width:7px;height:7px;border-radius:50%;background:var(--line-strong);flex-shrink:0;transition:background .15s}.builder-page .toggle-chip.is-on .toggle-dot{background:var(--gold-soft);box-shadow:0 0 0 2px #e8c88540}.builder-page .panel-actions{padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.builder-page .btn-block{padding:13px 20px;font-size:13.5px}.builder-page .tip-divider{position:relative;text-align:center;margin:6px 0 2px;font-size:10px;color:var(--ink-muted);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.builder-page .tip-divider span{background:var(--card);padding:0 12px;position:relative;z-index:1}.builder-page .tip-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--line)}.builder-page .tip-buttons-compact{display:grid;grid-template-columns:1fr 1fr;gap:8px}.builder-page .tip-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 12px;border-radius:999px;border:1px solid transparent;font-size:12.5px;font-weight:600;white-space:nowrap;cursor:pointer;transition:all .2s ease}.builder-page .tip-btn:disabled{opacity:.6;cursor:wait}.builder-page .tip-espresso{background:var(--navy);color:#fff;box-shadow:0 3px 10px #0a162833}.builder-page .tip-espresso:hover:not(:disabled){transform:translateY(-2px)}.builder-page .tip-latte{background:linear-gradient(135deg,#d4a44a,#b8863a);color:#fff;box-shadow:0 3px 10px #b8863a40}.builder-page .tip-latte:hover:not(:disabled){transform:translateY(-2px)}.builder-page .tip-emoji{font-size:13px}.builder-page .tip-price{padding:1px 6px;background:#ffffff38;border-radius:999px;font-size:10px;font-weight:700}.builder-page .downloaded-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;color:var(--mint);font-weight:600}.pf-stage{display:flex;align-items:center;justify-content:center;width:100%;padding:8px;border-radius:var(--radius-xl);transition:background .4s ease}.pf-stage-wall{padding:24px 8px;box-shadow:inset 0 0 80px #0000001a}.pf-frame{display:flex;align-items:center;justify-content:center;border-radius:4px;line-height:0;box-shadow:0 1px #ffffff24 inset,0 -2px #00000047 inset,0 12px 28px #0a162833,0 32px 64px #0a16281f;transition:box-shadow .35s ease}.pf-mat{display:inline-flex;align-items:center;justify-content:center;line-height:0;box-shadow:0 1px #00000014 inset,0 0 0 1px #0000000a}.poster-tilt.is-tilting .pf-frame{box-shadow:0 1px #ffffff24 inset,0 -2px #00000047 inset,0 24px 48px #0a162842,0 48px 96px #0a162829}.poster-tilt{position:relative;display:block;transform-style:preserve-3d;will-change:transform;border-radius:var(--radius-xl)}.poster-glare{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:var(--radius-xl);mix-blend-mode:overlay;transition:opacity .4s ease;z-index:2}.star-map-animated{animation:mapMorph .55s cubic-bezier(.2,.7,.2,1)}@keyframes mapMorph{0%{opacity:.65;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.section{max-width:1200px;margin:0 auto;padding:96px 28px}.section-head{text-align:center;max-width:640px;margin:0 auto 56px}.eyebrow{display:block;font:500 11px DM Mono,monospace;letter-spacing:.18em;color:var(--gold);text-transform:uppercase;margin-bottom:14px}.section-head h2{font:500 clamp(28px,3.5vw,44px)/1.15 "Playfair Display",Georgia,serif;letter-spacing:-.025em;color:var(--navy);margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step{background:var(--card);border-radius:var(--radius-lg);padding:36px 30px;box-shadow:var(--shadow-sm);position:relative;transition:box-shadow .25s,transform .25s}.step:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.step-icon{width:48px;height:48px;border-radius:12px;background:var(--gold-tint);color:var(--gold);display:grid;place-items:center;margin-bottom:24px}.step-num{position:absolute;top:36px;right:30px;font:500 12px DM Mono,monospace;letter-spacing:.14em;color:var(--ink-subtle)}.step h3{font:500 20px/1.25 Playfair Display,Georgia,serif;letter-spacing:-.015em;color:var(--navy);margin:0 0 12px}.step p{font-size:14px;line-height:1.65;color:var(--ink-soft);margin:0}.occasions{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:60px 28px}.occasions-inner{max-width:1200px;margin:0 auto;text-align:center}.occasion-grid{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}.occasion{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:#f7f7f3;border-radius:999px;font-size:13px;font-weight:500;color:var(--ink-soft);transition:all .2s ease}.occasion:hover{background:var(--gold-tint);color:var(--navy)}.occasion svg{color:var(--gold)}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review{background:var(--card);border-radius:var(--radius-lg);padding:32px 28px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:16px;transition:box-shadow .25s,transform .25s}.review:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.review-stars{display:flex;gap:2px}.review-quote{font-size:15px;line-height:1.65;color:var(--ink);font-weight:400;margin:0;font-style:normal;flex:1}.review-author{padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:2px}.review-author strong{font-size:13px;font-weight:600;color:var(--navy)}.review-author span{font-size:11px;color:var(--ink-muted);letter-spacing:.02em}.faq-list{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:10px}.faq-item{background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius);padding:22px 26px;text-align:left;transition:all .2s ease}.faq-item:hover{border-color:var(--line-strong);background:#fdfdfb}.faq-item.open{border-color:var(--navy);background:#fff;box-shadow:var(--shadow-sm)}.faq-q{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:15px;font-weight:600;color:var(--navy);letter-spacing:-.005em}.faq-q svg{transition:transform .25s ease,color .2s;color:var(--ink-subtle);flex-shrink:0}.faq-item.open .faq-q svg{transform:rotate(180deg);color:var(--gold)}.faq-a{margin:16px 0 0;font-size:14px;line-height:1.7;color:var(--ink-soft)}.final-cta{background:linear-gradient(135deg,#0a1628,#142340);color:#fff;padding:100px 28px;text-align:center;position:relative;overflow:hidden}.final-cta:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 30%,rgba(201,169,97,.15),transparent 40%),radial-gradient(circle at 80% 70%,rgba(201,169,97,.1),transparent 40%);pointer-events:none}.final-cta-inner{max-width:720px;margin:0 auto;position:relative;z-index:1}.final-cta h2{font:500 clamp(32px,4.5vw,52px)/1.1 "Playfair Display",Georgia,serif;letter-spacing:-.028em;margin:0 0 20px;color:#fff}.final-cta p{font-size:16px;color:#b8c2d4;margin:0 0 36px;line-height:1.5}.footer{background:#060d1c;color:#8a94a8;border-top:1px solid rgba(255,255,255,.05)}.footer-inner{max-width:1320px;margin:0 auto;padding:40px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand .brand-logo{height:26px}.footer-brand .brand-name{color:#fff;font:500 11px DM Mono,monospace;letter-spacing:.18em}.footer-links{display:flex;gap:4px;flex-wrap:wrap}.footer-links button{background:none;border:0;color:#8a94a8;font-size:13px;padding:8px 14px;border-radius:6px;transition:color .15s,background .15s}.footer-links button:hover{color:#fff;background:#ffffff0f}.footer-note{font-size:12px;color:#5d6878;letter-spacing:.02em}@media(max-width:1100px){.builder-page .builder-grid{grid-template-columns:1fr;gap:24px}.builder-page .poster-stage,.builder-page .panel{position:static}.builder-page .pf-poster{height:auto;width:min(100%,520px)}}@media(max-width:900px){.header-inner{padding:12px 20px;gap:20px}.nav{gap:0}.nav button{padding:8px 12px;font-size:13px}.trust-bar-inner{padding:6px 20px;gap:12px;font-size:11px}.steps,.reviews{grid-template-columns:1fr;gap:16px}.section{padding:72px 20px}}@media(max-width:720px){.brand-name{display:none}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;padding:16px 24px;box-shadow:0 12px 32px #0a162814;gap:4px}.nav.nav-open{display:flex}.nav button{padding:14px 4px;text-align:left;border-bottom:1px solid var(--line);border-radius:0;font-size:15px}.nav button:last-child{border-bottom:0}.header-actions .btn-sm{display:none}.menu-toggle{display:grid;place-items:center}.trust-bar-inner{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:6px 20px;scrollbar-width:none}.trust-bar-inner::-webkit-scrollbar{display:none}.trust-divider{display:none}.trust-item{padding-right:16px}.hero-landing{padding:48px 20px 40px}.hero-landing-actions{flex-direction:column;width:100%}.hero-landing-actions .btn{width:100%;max-width:320px}.hero-landing-trust{gap:10px;font-size:11px}.builder-page{padding:12px 16px 24px}.builder-page .panel{padding:18px 16px}.builder-page .panel-title{font-size:18px}.builder-page .field-row{grid-template-columns:1fr}.builder-page .frame-grid{grid-template-columns:repeat(3,1fr);gap:6px}.builder-page .pf-poster{height:auto;width:min(100%,340px)}.builder-page .tip-buttons-compact{grid-template-columns:1fr}.step{padding:28px 24px}.review{padding:26px 22px}.faq-item{padding:18px 22px}.faq-q{font-size:14px}.final-cta{padding:72px 22px}.footer-inner{padding:32px 20px;flex-direction:column;text-align:center;gap:20px}.footer-links{justify-content:center}}@media(max-width:400px){.panel-title{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.001ms!important;animation-duration:.001ms!important;scroll-behavior:auto!important}.poster-tilt{transform:none!important}.poster-glare{display:none}.star-map-animated{animation:none}}@media(hover:none){.poster-tilt{transform:none!important}.poster-glare{display:none}}.footer-brand{display:flex;align-items:center;gap:10px}.footer-logo-wrap{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;background:#fafaf7f2;border-radius:8px;box-shadow:0 2px 8px #00000026}.footer-logo-wrap .brand-logo{height:22px;width:auto;display:block}.footer-brand .brand-name{display:none}.success-screen{min-height:100vh;display:grid;place-items:center;padding:32px 24px;background:var(--bg);position:relative;overflow:hidden}.success-layout{max-width:1100px;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center}.success-panel{text-align:center;display:flex;flex-direction:column;align-items:center}.success-eyebrow{display:inline-flex;align-items:center;gap:10px;font:500 10px DM Mono,monospace;letter-spacing:.2em;color:var(--gold);text-transform:uppercase;margin-bottom:28px}.success-eyebrow-line{display:inline-block;width:24px;height:1px;background:var(--gold)}.success-sparkle{font-size:56px;line-height:1;margin-bottom:20px;animation:floatSparkle 3s ease-in-out infinite}@keyframes floatSparkle{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(6deg)}}.success-title{font:500 clamp(28px,3.5vw,44px)/1.1 "Playfair Display",Georgia,serif;letter-spacing:-.028em;color:var(--navy);margin:0 0 14px;max-width:440px}.success-sub{font-size:14px;line-height:1.6;color:var(--ink-soft);margin:0 0 32px;max-width:380px}.success-actions{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:340px}.success-actions .btn{width:100%;justify-content:center}.btn-ghost-link{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:var(--ink-muted);font-size:12.5px;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:6px;transition:color .15s,background .15s}.btn-ghost-link:hover{color:var(--navy);background:#0a16280d}.success-secure{display:inline-flex;align-items:center;gap:6px;margin-top:28px;font-size:11px;color:var(--ink-muted);letter-spacing:.01em}.success-secure svg{color:var(--mint)}.success-map{display:grid;place-items:center}.success-map-frame{width:100%;max-width:480px;aspect-ratio:7 / 10;overflow:hidden;border-radius:4px;box-shadow:0 4px 12px #0a162814,0 24px 60px #0a162824}.success-map-frame .star-map{display:block;width:100%;height:100%}.celebration{position:relative;width:130px;height:130px;margin:0 auto 24px;display:grid;place-items:center}.celebration-glow{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle,rgba(255,180,0,.35),transparent 65%);animation:celebrationPulse 2.4s ease-in-out infinite;pointer-events:none}.celebration-espresso .celebration-glow{background:radial-gradient(circle,rgba(180,120,60,.4),transparent 65%)}@keyframes celebrationPulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.12);opacity:1}}.celebration-cup{position:relative;font-size:60px;line-height:1;animation:cupBounce 1.6s cubic-bezier(.4,0,.2,1) infinite;z-index:2}.cup-emoji{display:block;filter:drop-shadow(0 8px 20px rgba(0,0,0,.2))}@keyframes cupBounce{0%,to{transform:translateY(0) rotate(0)}40%{transform:translateY(-8px) rotate(-3deg)}70%{transform:translateY(-3px) rotate(2deg)}}.steam{position:absolute;left:50%;bottom:100%;width:6px;height:20px;background:linear-gradient(to top,rgba(120,100,70,.5),transparent);border-radius:50%;transform:translate(-50%);opacity:0;pointer-events:none}.steam-1{animation:steamRise 2.4s ease-out infinite;animation-delay:0s}.steam-2{margin-left:-6px;animation:steamRise 2.4s ease-out infinite;animation-delay:.6s}.steam-3{margin-left:6px;animation:steamRise 2.4s ease-out infinite;animation-delay:1.2s}@keyframes steamRise{0%{opacity:0;transform:translate(-50%) scaleY(.6)}20%{opacity:.75}to{opacity:0;transform:translate(-50%,-34px) scaleY(1.4)}}.sparks{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.spark{position:absolute;top:50%;left:50%;width:5px;height:5px;margin:-2.5px;border-radius:50%;background:#ffd96b;box-shadow:0 0 8px #ffd96bd9;opacity:0;animation:sparkle 2.6s ease-out infinite;animation-delay:calc(var(--i) * .15s)}.celebration-espresso .spark{background:#d9a56b;box-shadow:0 0 8px #d9a56bd9}@keyframes sparkle{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.4)}25%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translateY(-62px) scale(1)}}@media(max-width:900px){.success-layout{grid-template-columns:1fr;gap:32px;max-width:520px}.success-map{order:-1}.success-map-frame{max-width:300px}.success-title{font-size:clamp(24px,6vw,32px)}}@media(max-width:480px){.success-screen{padding:24px 16px}.success-map-frame{max-width:240px}}@media(prefers-reduced-motion:reduce){.celebration-cup,.celebration-glow,.steam,.spark,.success-sparkle{animation:none}}.autocomplete-wrap{position:relative}.autocomplete-list{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px #0a162824;list-style:none;margin:0;padding:5px;z-index:100;max-height:260px;overflow-y:auto}.autocomplete-list li{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:7px;cursor:pointer;transition:background .12s}.autocomplete-list li:hover{background:#f7f7f3}.auto-name{font-size:13px;font-weight:600;color:var(--navy);line-height:1.2}.auto-full{font-size:11px;color:var(--ink-muted);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
