:root{--cocoa:#2b160c;--cocoa-mid:#6b3a22;--ink:#3b1f0f;--caramel:#d9a441;--caramel-bright:#f4c464;--cream:#fbeeda;--blush:#e8a7a0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--cocoa);color:var(--ink);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;font-family:Archivo,sans-serif;overflow-x:hidden}#root{min-height:100vh}button{cursor:pointer;border:none;font-family:inherit}::selection{background:var(--caramel);color:var(--cocoa)}.page{min-height:100dvh;padding:calc(env(safe-area-inset-top,0px) + 1.5rem) 1rem calc(env(safe-area-inset-bottom,0px) + 1.5rem);background:radial-gradient(ellipse 90% 40% at 50% 0%, #d9a44129, transparent 60%), radial-gradient(ellipse 100% 60% at 50% 100%, #0006, transparent 70%), var(--cocoa);flex-direction:column;justify-content:safe center;align-items:center;gap:1.25rem;display:flex;position:relative}.lights{border-bottom:2px dashed #fbeeda38;justify-content:space-between;width:min(420px,100%);padding:0 4px 1.1rem;display:flex}.bulb{--i:0;background:radial-gradient(circle at 35% 30%, var(--caramel-bright), var(--caramel) 60%, #9c6423 100%);width:9px;height:12px;transform:translateY(calc(9px * sin(var(--i) * .9)));animation:2.4s ease-in-out infinite twinkle;animation-delay:calc(var(--i) * .15s);border-radius:50% 50% 46% 46%;box-shadow:0 0 10px 2px #d9a44199}.bulb:nth-child(4n){display:none}@keyframes twinkle{0%,to{opacity:1}50%{opacity:.55}}.ticket{background:var(--cream);text-align:center;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border-radius:20px;width:min(420px,100%);padding:2.1rem 1.35rem 1.6rem;position:relative;overflow:hidden;box-shadow:0 24px 48px -20px #0000008c,0 0 0 1px #2b160c0f}.ticket:before{content:"";opacity:.05;mix-blend-mode:multiply;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.checker{background-image:repeating-conic-gradient(var(--cocoa-mid) 0 25%, var(--caramel) 0 50%);background-size:14px 14px;height:10px;position:absolute;left:0;right:0}.checker-top{top:0}.checker-bottom{bottom:0}.eyebrow{letter-spacing:.28em;color:var(--cocoa-mid);opacity:.8;margin:.85rem 0 .3rem;font-size:.72rem;font-weight:700}.greeting{color:var(--cocoa-mid);margin:0 0 .25rem;font-family:Caveat,cursive;font-size:1.5rem;font-weight:700;transform:rotate(-1deg)}.headline{text-transform:uppercase;color:var(--ink);text-shadow:3px 3px 0 var(--caramel);letter-spacing:.01em;margin:0;font-family:"Baloo 2",sans-serif;font-size:2.35rem;font-weight:800;line-height:1}.hilite{color:var(--caramel);text-shadow:-2px -2px 0 var(--ink), 2px -2px 0 var(--ink), -2px 2px 0 var(--ink), 2px 2px 0 var(--ink), -2px 0 0 var(--ink), 2px 0 0 var(--ink), 0 -2px 0 var(--ink), 0 2px 0 var(--ink)}.note{max-width:20rem;color:var(--cocoa-mid);margin:1.1rem auto 0;font-family:Caveat,cursive;font-size:1.35rem;transform:rotate(-1.5deg)}.stub{letter-spacing:.08em;color:var(--cocoa-mid);opacity:.75;border-top:2px dashed #2b160c40;margin:1.4rem 0 .3rem;padding-top:.9rem;font-size:.6rem;font-weight:700}.stage{justify-content:center;align-items:center;gap:1.1rem;min-height:clamp(190px,34vh,260px);margin-top:1.25rem;display:flex;position:relative}.btn{letter-spacing:.02em;text-transform:uppercase;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-family:"Baloo 2",sans-serif;font-weight:700}.btn-yes{color:var(--ink);background:linear-gradient(180deg, var(--caramel-bright), var(--caramel));box-shadow:5px 5px 0 var(--ink);border-radius:999px;padding:1.05rem 2.2rem;font-size:1.25rem;transition:transform .15s,box-shadow .15s}.btn-yes:active{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.btn-no{min-height:44px;color:var(--cocoa-mid);background:var(--cream);border:2px solid var(--cocoa-mid);opacity:.75;border-radius:999px;padding:.85rem 1.3rem;font-size:.85rem;transition:left .2s,top .2s,transform .15s,opacity .15s}.no-retired{color:var(--cocoa-mid);opacity:.65;font-family:Caveat,cursive;font-size:1.2rem}.celebrate .headline{margin-top:.4rem}.coupon{border:2px dashed var(--cocoa-mid);appearance:none;text-align:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#fff9f0;border-radius:14px;width:100%;max-width:19rem;margin:1.5rem auto 0;padding:1rem 1.1rem;transition:transform .15s,box-shadow .15s;display:block;position:relative;transform:rotate(-2deg);box-shadow:0 10px 20px -12px #2b160c66}.coupon:hover{transform:rotate(-2deg)scale(1.02);box-shadow:0 14px 26px -12px #2b160c73}.coupon:active{transform:rotate(-2deg)scale(.98)}.coupon:focus-visible{outline:3px solid var(--caramel);outline-offset:3px}.coupon:before,.coupon:after{content:"";background:var(--cream);border-radius:50%;width:18px;height:18px;position:absolute;top:50%;transform:translateY(-50%)}.coupon:before{left:-10px}.coupon:after{right:-10px}.coupon-icon{margin-bottom:.15rem;font-size:1.4rem;display:block}.coupon-title{text-transform:uppercase;letter-spacing:.02em;color:var(--ink);margin:0;font-family:"Baloo 2",sans-serif;font-size:1.15rem;font-weight:800}.coupon-fine{letter-spacing:.02em;color:var(--cocoa-mid);opacity:.8;margin:.3rem 0 0;font-size:.68rem;font-weight:600}.coupon-hint{letter-spacing:.08em;text-transform:uppercase;color:var(--caramel);opacity:.9;margin:.6rem 0 0;font-family:"Baloo 2",sans-serif;font-size:.6rem;font-weight:700}.confetti-layer{pointer-events:none;z-index:20;position:fixed;inset:0;overflow:hidden}.confetti-piece{animation-name:confetti-fall;animation-timing-function:cubic-bezier(.4,.1,.6,1);animation-fill-mode:forwards;position:absolute;top:-5%}.confetti-piece.is-emoji{line-height:1}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-10vh)rotate(0)}to{transform:translate3d(var(--drift), 108vh, 0) rotate(var(--rot));opacity:.85}}@media (width>=640px){.page{gap:2.5rem;padding:3rem 1.5rem}.lights{width:min(640px,100%);padding-bottom:1.75rem}.bulb{width:10px;height:13px}.bulb:nth-child(4n){display:block}.ticket{width:min(600px,100%);padding:2.75rem 2rem 2rem}.eyebrow{letter-spacing:.32em;margin:1rem 0 .35rem;font-size:.8rem}.greeting{font-size:1.8rem}.headline{text-shadow:4px 4px 0 var(--caramel);font-size:clamp(2.6rem,5.5vw,3.4rem)}.note{max-width:22rem;margin-top:1.4rem;font-size:1.5rem}.stub{letter-spacing:.12em;margin:1.75rem 0 .5rem;padding-top:1.1rem;font-size:.66rem}.stage{flex-wrap:wrap;gap:1.5rem;min-height:150px;max-height:none;margin-top:2rem}.btn-yes{padding:1rem 2.4rem;font-size:1.3rem}.btn-yes:hover{box-shadow:7px 7px 0 var(--ink);transform:translate(-2px,-2px)}.btn-no{background:0 0;padding:.7rem 1.4rem;font-size:.9rem}.btn-no:hover{opacity:.9}.coupon{max-width:21rem;padding:1.25rem 1.4rem}.coupon-title{font-size:1.3rem}}
