:root{font-family:Manrope,system-ui,sans-serif;color:#252525;background:#faf9f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}header{max-width:1320px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8e5df}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:12px;font-size:25px;font-weight:800}.brand:first-letter{color:#eb7158}.dot{color:#e9745d}header>div{display:flex;align-items:center;gap:24px}.by{font-size:12px;color:#888}select{border:0;background:transparent;color:#555;font-size:13px}main{max-width:1220px;margin:auto;padding:65px 32px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:#7a786e;text-transform:uppercase}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:40px;margin-bottom:55px}h1{font-size:clamp(40px,5.4vw,69px);line-height:1.13;letter-spacing:-3px;font-weight:800;margin:20px 0}h1 em{font-style:normal;color:#e9765e}p{color:#77766e;line-height:1.8}.hero p{max-width:450px;font-size:16px}.hero-art{height:280px;position:relative;display:grid;place-items:center}.envelope{width:240px;height:165px;background:#e9bfa5;transform:rotate(-9deg);border-radius:10px;box-shadow:0 20px 50px #74583d1c;position:relative}.envelope:after{content:'';position:absolute;inset:0;clip-path:polygon(0 0,50% 60%,100% 0);background:#f4d4be}.letter{position:absolute;left:32px;top:-35px;width:180px;height:140px;background:#fffdf7;transform:rotate(4deg);padding:25px;color:#df725e;box-shadow:0 0 25px #3331;text-align:center;font-size:35px}.letter small{display:block;font-size:12px;color:#666}.spark{position:absolute;font-size:42px;color:#dd8464;top:20px;right:70px}.note{position:absolute;bottom:6px;right:15px;font-size:12px;transform:rotate(-5deg);color:#8b8a7d}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.sectionhead h2{font-size:20px;letter-spacing:-.6px}.sectionhead span{font-size:12px;color:#929086}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{padding:0;text-align:left;border:1px solid #e6e3dc;border-radius:20px;overflow:hidden;background:#fff;transition:.2s}.card:hover,.card.selected{transform:translateY(-5px);border-color:#dc826b;box-shadow:0 12px 25px #65442b0b}.art{height:190px;display:grid;place-items:center;position:relative;overflow:hidden}.peach{background:#f7e7df}.lavender{background:#ece9f5}.mint{background:#e3eee4}.yellow{background:#f8efd5}.card-body{padding:20px}.card h3{font-size:15px;margin:0 0 8px}.card p{font-size:12px;line-height:1.7;margin:0;min-height:40px}.tag{position:absolute;top:14px;left:14px;font-size:9px;letter-spacing:1.3px;color:#797568;font-weight:800}.toybtn{border-radius:12px;padding:13px 24px;background:#e87761;color:white;box-shadow:0 7px 0 #c65945;font-weight:800;transform:rotate(-9deg)}.tiny-no{position:absolute;background:white;border-radius:7px;padding:7px 13px;font-size:11px;right:22px;bottom:35px;transform:rotate(12deg)}.redbutton{width:86px;height:86px;border-radius:50%;background:#eb725f;box-shadow:0 9px 0 #b74540,0 14px 0 9px #d4ccd9;display:grid;place-items:center;font-size:30px;color:#fff;transform:rotate(-8deg)}.ticket{background:#fbf9ee;border:2px dashed #a8b8a4;border-radius:12px;padding:25px 30px;transform:rotate(-8deg);font-size:15px;font-weight:800;color:#6c8166}.gift{font-size:88px;filter:drop-shadow(0 10px 3px #9a722022);transform:rotate(9deg)}.steps{display:flex;justify-content:center;gap:50px;margin:50px 0 0;color:#8c8b81;font-size:12px}.steps b{display:inline-grid;place-items:center;border:1px solid #dedbd2;border-radius:50%;width:25px;height:25px;margin-right:8px;color:#555}footer{max-width:1156px;margin:0 auto;padding:26px 0;border-top:1px solid #e7e4dc;display:flex;justify-content:space-between;font-size:11px;color:#969387}footer span:last-child{font-size:9px;letter-spacing:1.5px}.editor{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:25px}.back{border:0;background:none;padding:0;color:#777;font-size:13px}.editor h1{font-size:38px;letter-spacing:-1.5px}.field{display:block;font-size:12px;font-weight:700;margin:24px 0 9px}input,textarea{width:100%;border:1px solid #dfddd5;background:#fff;border-radius:12px;padding:14px;color:#333;outline:none}input:focus,textarea:focus{border-color:#d77e65;box-shadow:0 0 0 3px #e9765e18}textarea{resize:vertical;min-height:115px}.tones{display:flex;gap:8px}.tones button,.secondary{border:1px solid #dedbd4;background:transparent;padding:11px 16px;border-radius:10px;font-size:12px}.tones button.active{background:#f6e4db;border-color:#db947d}.primary{border:0;background:#282c27;color:#fff;padding:16px 24px;border-radius:12px;font-weight:700;font-size:13px}.actions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}.fine{font-size:11px;line-height:1.7;color:#918d83}.previewpanel{background:#f0ede7;border:1px solid #e5e0d7;border-radius:25px;padding:25px;align-self:start;position:sticky;top:25px}.previewlabel{font-size:10px;letter-spacing:2px;text-align:center;color:#969082;margin-bottom:20px}.phone{background:#fffaf6;border:7px solid #fff;border-radius:30px;max-width:330px;margin:auto;min-height:440px;display:flex;align-items:center;justify-content:center;padding:25px;box-shadow:0 12px 35px #3930210c}.experience{text-align:center;width:100%;position:relative}.experience .icon{font-size:72px;margin:15px}.experience h2{font-size:24px;line-height:1.4;letter-spacing:-.6px}.experience p{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.experience button{margin:6px}.playarea{position:relative;min-height:120px;display:flex;justify-content:center;align-items:center;flex-wrap:wrap}.yes{background:#e77962;border:0;border-radius:12px;color:#fff;padding:13px 22px}.no{border:1px solid #d8d1c5;background:white;border-radius:12px;padding:11px 18px;transition:transform .2s}.bigred{width:95px;height:95px;border-radius:50%;background:#e6715f;color:white;border:0;box-shadow:0 8px #b64940;font-size:32px}.biggift{font-size:85px;background:none;border:0;transition:transform .2s}.scratchwrap{position:relative;width:250px;height:125px;margin:25px auto;border-radius:15px;overflow:hidden;background:#fff5cd;border:1px solid #d8c78f;display:grid;place-items:center;padding:10px}.scratchwrap canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.scratchwrap p{color:#6f663e;font-weight:700}.done{animation:pop .4s ease}.recipient{max-width:520px;margin:30px auto;background:white;border:1px solid #eee5d7;padding:45px 25px;border-radius:25px;min-height:460px;display:grid;place-items:center}.recipientbottom{text-align:center;margin-top:30px}.linkbox{background:#eaf0e6;border:1px solid #d3dfcd;border-radius:12px;padding:16px;margin-top:20px}.linkbox input{font-size:11px;margin:10px 0}.confetti{position:fixed;top:-20px;width:9px;height:15px;z-index:999;pointer-events:none;animation:fall 2.5s linear forwards}dialog{border:0;border-radius:25px;padding:45px 25px;max-width:440px;width:92%;box-shadow:0 20px 100px #0002}dialog::backdrop{background:#24241e77;backdrop-filter:blur(4px)}.close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:25px;color:#777}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#282c27;color:white;border-radius:12px;padding:14px 24px;font-size:13px;z-index:1000;display:none}@keyframes fall{to{transform:translateY(105vh) rotate(650deg);opacity:.3}}@keyframes pop{from{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:750px){header{padding:20px}.brand{font-size:19px}.by{display:none}main{padding:35px 20px}.hero{grid-template-columns:1fr;gap:10px;margin-bottom:30px}h1{letter-spacing:-2px}.hero-art{height:220px}.hero p{font-size:14px}.cards{grid-template-columns:repeat(2,1fr);gap:12px}.art{height:155px}.card-body{padding:15px}.card h3{font-size:13px}.card p{font-size:11px}.steps{gap:14px;font-size:10px;flex-wrap:wrap}.sectionhead span{display:none}.editor{grid-template-columns:1fr;gap:30px}.previewpanel{position:static;order:2}.editor h1{font-size:32px}footer{margin:0 20px;gap:20px}.spark{right:40px}.note{right:20px}.ticket{padding:18px}.tiny-no{right:10px}header>div{gap:5px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
#inline{width:100%;min-width:0}.scratchwrap{width:min(250px,100%)}.recipient .experience{max-width:100%}.experience h2{overflow-wrap:anywhere}.phone{padding:22px 16px}@media(max-width:380px){.previewpanel{padding:16px}.card-body{padding:12px}.card h3{font-size:12px}.toybtn{padding:12px 18px}}

button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #a65a42;outline-offset:5px}.done:focus{outline:none}.ticket{max-width:90%;text-align:center;font-size:13px}.playarea>div{max-width:100%;width:100%}button{min-height:40px}.card{min-height:44px}.brand{min-height:44px}.close{min-width:44px;min-height:44px}.no{max-width:85%}.done p{max-height:50vh;overflow:auto}.linkbox input{min-width:0}@media(max-width:750px){.hero-art{height:190px}.hero h1{font-size:42px}.editor{gap:25px}.tones{flex-wrap:wrap}.sectionhead h2{line-height:1.5}}

.hub-link{display:block;width:fit-content;margin:26px auto 0;padding:8px 12px;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:1px;color:#8a7f72;border-radius:20px;transition:background .2s}.hub-link:hover{background:#f1e7dc;color:#a85840}.candles,.balloons{display:flex;justify-content:center;flex-wrap:wrap;gap:4px}.candle,.balloon{background:transparent;border:1px solid #eadfd0;border-radius:15px;font-size:35px;min-width:48px;padding:10px;transition:transform .2s}.candle:hover,.balloon:hover{transform:translateY(-5px)}.extinguished,.popped{opacity:.4}.balloon{filter:hue-rotate(var(--balloon-hue));font-size:34px}.letter-open{background:#f6e4d7;border:1px solid #e6cbb5;border-radius:18px;padding:20px 30px;font-size:70px;box-shadow:0 8px 0 #e4cdbb;transform:rotate(-4deg)}.letter-open span{display:block;font-size:12px;color:#755d49;margin-top:10px}.letter-open:hover{transform:rotate(0)}.wiggle{animation:pop .3s ease}.balloon-count{font-size:12px!important;letter-spacing:2px}.cards{row-gap:22px}
