@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{font-family:'Manrope','DM Sans',sans-serif;color:#232925;background:#faf8f4;font-size:16px;--orange:#ed5134;--line:#deded5;--muted:#70756d}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible{outline:3px solid #167a62;outline-offset:5px}input:focus,textarea:focus{outline:2px solid #167a62;outline-offset:1px}[hidden]{display:none!important}.header{height:94px;margin:0 auto;max-width:1320px;padding:0 48px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:40px}.brand{font-size:36px;font-weight:800;letter-spacing:-2px;display:inline-flex;align-items:center;gap:5px}.brand-star{color:var(--orange);font-size:40px}.header-note{font-size:14px;color:var(--muted);flex:1}.languages{display:flex;border:1px solid var(--line);border-radius:30px;padding:4px;gap:3px}.languages button{border-radius:22px;background:none;padding:7px 12px;font-size:13px;font-weight:700}.languages .active{background:#283e31;color:white}main{max-width:1224px;margin:auto;padding:46px 0 75px}.intro{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:44px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;margin:0 0 18px;color:var(--orange)}h1{font-size:clamp(40px,4.6vw,62px);line-height:1.1;letter-spacing:-2.4px;margin:0;font-weight:600}h1 em{font-family:'Playfair Display',Georgia,serif;color:var(--orange);font-weight:500}.intro-note{font-size:15px;line-height:1.9;margin:0 12px 6px;color:var(--muted)}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:76px}.editor{min-width:0}.step-head{display:flex;align-items:center;gap:12px;margin-bottom:20px}.step{font-size:12px;font-weight:700;color:#7c8379;border:1px solid #d5d9cf;border-radius:50%;width:28px;height:28px;display:grid;place-items:center}.step-head h2{font-size:17px;margin:0;font-weight:700}.second{margin-top:29px}.occasions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.occasion{background:transparent;border:1px solid var(--line);border-radius:12px;padding:13px 6px;font-size:13px;color:#4f584d;display:flex;gap:6px;align-items:center;justify-content:center;min-height:47px}.occasion.selected{border-color:#365641;background:#e9efdf;color:#263c2a;box-shadow:0 0 0 1px #365641}.occasion span:first-child{font-size:17px}.text-button{background:none;color:#526750;font-size:13px;padding:4px 0}.step-head .text-button{margin-left:auto}label{display:block;font-size:13px;font-weight:600;margin-bottom:16px}label>span{display:block;margin-bottom:8px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}input:not([type=checkbox]),textarea{display:block;width:100%;border:1px solid #d9ddd2;background:#fffefa;border-radius:10px;padding:13px 15px;font-size:15px;line-height:1.5;color:#263829}input::placeholder,textarea::placeholder{color:#92988c}textarea{resize:vertical;min-height:124px}.label-row{display:flex;align-items:center;justify-content:space-between}.label-row>span:last-child{font-size:12px;color:#8c9286;font-weight:400}.themes{display:flex;gap:11px;flex-wrap:wrap}.theme-choice{background:transparent;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:30px;padding:7px 10px;font-size:12px}.theme-choice.selected{border-color:#314b35;box-shadow:0 0 0 1px #314b35}.swatch{width:18px;height:18px;border-radius:50%;display:block}.options{display:flex;flex-wrap:wrap;gap:22px;margin-top:22px}.check{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500}.check span{margin:0}.check input{accent-color:#355b3e;width:16px;height:16px}.primary{border-radius:12px;background:var(--orange);color:white;padding:16px 25px;font-weight:700;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;transition:background .2s,transform .2s}.primary:hover{background:#d74228;transform:translateY(-1px)}.create{width:100%;justify-content:space-between;margin-top:4px}.create>span:last-child{font-size:24px}.hint{font-size:12px;color:#777f70;text-align:center;line-height:1.65;margin:12px 0 0}.error{color:#ab2323;font-size:14px}.preview-area{background:#eeeee6;border-radius:24px;padding:24px 38px 27px;align-self:start;position:sticky;top:24px}.preview-caption{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.8px;font-weight:700;color:#6c7363;margin-bottom:22px}.live{display:flex;gap:6px;align-items:center;letter-spacing:0;font-size:11px;font-weight:500}.live i{width:6px;height:6px;border-radius:50%;background:#6a835c}.greeting{position:relative;overflow:hidden;isolation:isolate;text-align:center;border-radius:9px;box-shadow:0 18px 38px #24352219;min-height:485px;--card-ink:#822b40;--card-accent:#be5063;color:var(--card-ink);background:#f5c9c9}.greeting:before,.greeting:after{content:'';position:absolute;border:1px solid currentColor;opacity:.24;inset:13px;z-index:-1;pointer-events:none}.greeting:after{inset:18px}.greeting-inner{padding:35px 35px 26px;position:relative;display:flex;flex-direction:column;min-height:485px;align-items:center}.card-kicker{font-size:10px;font-weight:600;letter-spacing:2.5px;margin:0 0 10px;text-transform:uppercase}.card-ornament{font-family:Georgia,serif;font-size:80px;line-height:1.15;color:var(--card-accent);margin:0 0 5px;animation:float 6s ease-in-out infinite}.card-to{font-size:13px;margin:7px 0 13px}.card-title{font-family:'Playfair Display',Georgia,serif;font-size:clamp(30px,3vw,43px);line-height:1.1;font-weight:500;letter-spacing:-.8px;overflow-wrap:anywhere;white-space:pre-wrap;margin:0 0 22px;max-width:100%}.card-message{font-size:14px;line-height:1.8;margin:0 0 24px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}.card-from{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:18px;margin:0 0 27px;overflow-wrap:anywhere;max-width:100%}.card-footer{font-size:8px;letter-spacing:2px;margin-top:auto;opacity:.6}.theme-citrus{background:#e3edb2;--card-ink:#304b31;--card-accent:#63883b}.theme-night{background:radial-gradient(ellipse at 0 0,#50578966,transparent 65%),#1f2944;--card-ink:#f4e6c4;--card-accent:#e2be78}.theme-lilac{background:#ded4f1;--card-ink:#513970;--card-accent:#8d63ba}.preview-button{display:flex;justify-content:center;align-items:center;gap:9px;background:#fffef8;border:1px solid #dfe1d7;border-radius:30px;width:100%;padding:12px;font-size:13px;margin-top:23px;color:#344631}.preview-button>span:first-child{font-size:19px}.preview-foot{text-align:center;font-family:'Playfair Display',Georgia,serif;font-style:italic;color:#818670;font-size:14px;margin:16px 0 0}footer{border-top:1px solid var(--line);max-width:1224px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:26px 0;gap:16px;font-size:12px;color:#7c8377}.small{font-size:24px;color:#43503e}.small span{font-size:24px;color:var(--orange)}.secondary{background:transparent;border:1px solid #d7dccf;border-radius:12px;padding:13px 20px;font-size:14px;color:#31432d;display:inline-flex;align-items:center;justify-content:center}dialog{border:none;border-radius:24px;padding:38px;width:min(460px,calc(100% - 28px));color:#293c2e;background:#fffdf7;box-shadow:0 30px 100px #0003;text-align:center}dialog::backdrop{background:#17251b88;backdrop-filter:blur(8px)}dialog h2{font-family:'Playfair Display',Georgia,serif;font-size:32px;font-weight:500;margin:12px 0}dialog>p{font-size:14px;line-height:1.6;color:#707867}dialog label{text-align:left;margin-top:24px}dialog .primary,dialog .secondary{width:100%;margin-bottom:10px}dialog .text-button{display:block;margin:8px auto}.close{position:absolute;right:16px;top:12px;font-size:28px;background:none;color:#63715d}.success-symbol{font-size:72px;color:var(--orange);margin-bottom:10px}#share-url{font-size:13px}#recipient-view{max-width:650px;min-height:72vh;padding:35px 24px 40px;margin:auto}.recipient-top{display:flex;justify-content:center;align-items:center;gap:20px;font-size:13px;color:#727c6b;margin-bottom:28px}.reveal-cover{text-align:center;min-height:520px;border-radius:20px;background:#f4d1cf;padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#853744;box-shadow:0 24px 65px #733a4312}.cover-star{font-size:100px;line-height:1.1;color:#bb576b;animation:float 5s ease-in-out infinite}.reveal-cover h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:62px}.reveal-cover p{font-size:14px}.reveal-cover .primary{margin-top:24px}.recipient-actions{display:flex;gap:18px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:30px}#revealed-card .greeting{min-height:600px;animation:reveal .8s cubic-bezier(.2,.7,.3,1) both}#revealed-card .greeting-inner{min-height:600px;padding:45px}#revealed-card .card-message{font-size:17px;line-height:1.85}#revealed-card .card-title{font-size:50px}#revealed-card .card-ornament{font-size:105px}#revealed-card .card-to{font-size:16px}#revealed-card .card-from{font-size:22px}#not-found{text-align:center;margin:100px auto;padding:20px}#not-found h1{font-size:38px}#not-found p{line-height:1.7}#confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:100}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#273d2d;color:white;border-radius:12px;padding:14px 22px;font-size:14px;z-index:110;opacity:0;pointer-events:none;transition:opacity .2s}#toast.visible{opacity:1}@keyframes float{50%{transform:rotate(18deg) scale(1.04)}}@keyframes reveal{from{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:none}}@media(min-width:1500px){main{padding-top:60px}.intro{margin-bottom:50px}}@media(max-width:1300px){main,footer{margin-left:48px;margin-right:48px}.workspace{gap:45px}}@media(max-width:1000px){.workspace{gap:25px}.preview-area{padding:22px}.occasion{font-size:12px}.step-head .text-button{font-size:12px}.greeting-inner{padding-left:26px;padding-right:26px}.intro-note{max-width:240px}.themes{gap:7px}.theme-choice{font-size:11px;padding:7px 8px}}@media(max-width:760px){.header{height:74px;padding:0 22px;gap:16px}.brand{font-size:31px}.brand-star{font-size:34px}.header-note{font-size:12px}main{margin:0;padding:30px 22px 40px}.intro{margin-bottom:30px}.intro-note{display:none}h1{font-size:43px;letter-spacing:-1.5px}.eyebrow{font-size:10px;margin-bottom:15px}.workspace{grid-template-columns:1fr;gap:28px}.preview-area{position:static;grid-row:1;padding:18px 24px 20px}.preview-caption{margin-bottom:16px}.greeting{min-height:390px}.greeting-inner{min-height:390px;padding:25px 32px}.card-ornament{font-size:55px}.card-title{font-size:36px;margin-bottom:16px}.card-message{font-size:14px;margin-bottom:18px}.card-from{font-size:17px;margin-bottom:18px}.card-kicker{font-size:9px}.preview-foot{display:none}.preview-button{margin-top:16px}.step-head h2{font-size:16px}.occasion{font-size:13px}.theme-choice{font-size:12px;padding:8px 11px}.themes{gap:9px}input:not([type=checkbox]),textarea{font-size:16px}.two-cols{gap:12px}.text-button{min-height:30px}.options{gap:12px;justify-content:space-between}.check{font-size:12px}footer{margin:0 22px;padding:20px 0}footer>span{font-size:10px}footer>span:last-child{display:none}.intro br{display:none}.intro em:before{content:' '}.reveal-cover{min-height:480px}.reveal-cover h1{font-size:52px}#revealed-card .greeting-inner{padding:35px 30px}#revealed-card .card-title{font-size:39px}#revealed-card .card-message{font-size:16px}#recipient-view{padding:24px 18px}.card-to{overflow-wrap:anywhere;max-width:100%}.header-note{display:none}.languages{margin-left:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Readable controls and a compact mobile editor. */
label,.occasion,.theme-choice,.check,.preview-button,.text-button{font-size:14px}
.card-message{font-size:16px}.card-footer{font-size:10px}.card-kicker{font-size:12px}
.preview-caption,.live,.hint{font-size:12px}
.reveal-cover.theme-rose{background:#f5c9c9;color:#822b40}
.reveal-cover.theme-citrus{background:#e3edb2;color:#304b31}
.reveal-cover.theme-night{background:#1f2944;color:#f4e6c4}
.reveal-cover.theme-lilac{background:#ded4f1;color:#513970}
.reveal-cover .cover-star{color:inherit}
@media(max-width:1000px){.occasions{grid-template-columns:repeat(2,1fr)}.step-head{flex-wrap:wrap}.step-head .text-button{font-size:14px}.theme-choice{font-size:14px}}
@media(max-width:760px){.preview-area{grid-row:auto}.intro{margin-bottom:28px}.occasions{grid-template-columns:repeat(2,1fr)}.theme-choice{font-size:14px}.check{font-size:14px}.card-message{font-size:16px}.card-kicker{font-size:12px}}
