:root{--paper:#f7f2ed;--ink:#382f32;--muted:#8f8183;--rose:#ae6b7a;--rose-deep:#854654;--rose-pale:#f4e4e7;--line:rgba(91,63,73,.12);--white:#fffdfb;--shadow:0 22px 75px rgba(81,54,63,.12)}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(174,107,122,.48);outline-offset:3px}a{color:inherit} .ambient{position:fixed;border-radius:50%;pointer-events:none;filter:blur(4px);opacity:.6;z-index:0}.ambient-one{top:-220px;left:-150px;width:540px;height:540px;background:radial-gradient(circle,#f4e0dc,transparent 72%)}.ambient-two{bottom:-250px;right:-120px;width:630px;height:630px;background:radial-gradient(circle,#eeddd9,transparent 70%)}.shell{position:relative;z-index:1;width:min(1120px,calc(100% - 64px));min-height:100vh;margin:0 auto;display:flex;flex-direction:column}.site-header{height:100px;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:11px;font-family:Georgia,"Times New Roman",serif;font-size:30px;letter-spacing:-1.7px;font-weight:700}.logo em{font-weight:400;color:var(--rose);font-style:italic}.logo-orbit{font-family:Georgia;font-weight:400;color:var(--rose);font-size:29px;animation:rotate 24s linear infinite}.topline{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#8e7d7d}.topline span{color:var(--rose)}.layout{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:55px;align-items:center;padding:12px 0 40px}.story-panel{padding:12px 0 0 10px;min-width:0}.story-chip,.overline{font-size:11px;letter-spacing:.24em;color:var(--rose-deep);text-transform:uppercase;font-weight:700}.chip-dot{display:inline-block;width:7px;height:7px;background:#b06d7a;border-radius:100%;margin-right:8px;box-shadow:0 0 0 4px #ead8da}.story-panel h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(49px,5vw,76px);font-weight:400;line-height:1.13;letter-spacing:-3.2px;margin:30px 0 24px}.story-panel h1 i{font-weight:400;color:var(--rose);font-style:italic}.story-description{max-width:390px;font-size:15px;line-height:1.9;color:#7f7474}.story-art{width:380px;height:230px;max-width:100%;position:relative;margin-top:19px}.art-circle{position:absolute;width:208px;height:208px;border:1px solid rgba(174,107,122,.25);border-radius:50%;left:56px;top:7px;transform:rotate(-12deg)}.art-circle:after{content:"";position:absolute;inset:19px;border:1px dashed rgba(174,107,122,.2);border-radius:50%}.art-flower{position:absolute;left:115px;top:27px;font-family:Georgia;font-size:155px;line-height:1;color:#d6b4b5;transform:rotate(-14deg);text-shadow:0 20px 24px rgba(146,97,108,.08);animation:float 7s ease-in-out infinite}.art-orbit{position:absolute;color:var(--rose);font-size:32px}.art-orbit-one{left:35px;top:50px}.art-orbit-two{left:298px;top:125px}.art-heart{position:absolute;left:270px;top:35px;color:#be8992;font:45px Georgia}.art-caption{position:absolute;left:50px;bottom:1px;font:italic 16px Georgia;color:#b99197}.story-footer{display:flex;align-items:center;gap:14px;color:#9e8d8c;font:italic 14px Georgia}.story-footer span{color:#b17c82}.wizard-wrapper{align-self:stretch;display:flex;flex-direction:column;min-height:650px;background:rgba(255,253,251,.92);border:1px solid rgba(129,99,106,.14);box-shadow:var(--shadow);border-radius:28px;overflow:hidden;backdrop-filter:blur(12px)}.wizard-top,.wizard-bottom{display:flex;align-items:center;justify-content:space-between;padding:23px 35px}.wizard-top{border-bottom:1px solid var(--line)}.wizard-top-label,.wizard-bottom{letter-spacing:.17em;font-size:10px;color:#aa9195}.small-heart{font:26px Georgia;color:var(--rose);line-height:1}.wizard-bottom{border-top:1px solid var(--line);margin-top:auto}.wizard-content{padding:26px 37px 30px;min-height:500px;display:flex;flex-direction:column}.view{animation:view-in .36s ease-out both;display:flex;flex-direction:column;flex:1}.step-counter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:5px 0 12px;color:var(--muted);font-size:12px}.progress-track{height:4px;background:#f1e8e6;border-radius:20px;overflow:hidden;margin-bottom:24px}.progress-fill{height:100%;background:linear-gradient(90deg,#bc8590,#9a5260);border-radius:20px;transition:width .3s ease}.step-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(29px,3vw,40px);font-weight:400;line-height:1.17;letter-spacing:-1.3px;margin:10px 0 10px}.step-subtitle{color:#8f8182;line-height:1.65;font-size:13px;margin:0 0 22px;max-width:400px}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.option{position:relative;text-align:left;background:#fffdfa;border:1px solid #eae1df;border-radius:18px;min-height:128px;padding:17px 14px 13px;display:flex;flex-direction:column;gap:7px;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s}.option:hover{transform:translateY(-2px);border-color:#c69ca4;box-shadow:0 9px 20px rgba(101,69,77,.06)}.option[aria-pressed="true"]{border-color:#b57b85;background:#fdf2f3;box-shadow:inset 0 0 0 1px #b57b85}.option[aria-pressed="true"]:after{content:"✓";position:absolute;top:12px;right:12px;display:grid;place-items:center;font-size:11px;color:#fff;background:#ac6877;border-radius:50%;width:20px;height:20px}.option-icon{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:#f7e7e9;font-size:22px;flex-shrink:0}.tone-sand .option-icon{background:#f5ede0}.tone-peach .option-icon{background:#f9e8df}.tone-lavender .option-icon{background:#eeebf6}.option-label{font-size:14px;font-weight:700;line-height:1.25;color:#443438}.option-desc{font-size:11px;line-height:1.45;color:#95888a}.options.compact .option{min-height:117px}.muted-note{font-size:11px;color:#ac9898;margin:14px 0 0;line-height:1.5}.actions{margin-top:auto;padding-top:22px;display:flex;gap:10px}.primary-button,.secondary-button{border:0;border-radius:13px;min-height:49px;padding:12px 17px;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled){transform:translateY(-1px)}.primary-button{background:#995968;color:#fff;flex:1;box-shadow:0 8px 20px rgba(153,89,104,.18)}.primary-button:hover:not(:disabled){background:#854756}.primary-button:disabled{opacity:.55;cursor:not-allowed}.secondary-button{background:#f5eeec;color:#806e70;min-width:80px}.secondary-button:hover:not(:disabled){background:#efe3e1}.button-arrow{padding-left:12px;font-size:16px}.message{border-radius:12px;padding:10px 12px;background:#fff0ee;color:#9b4050;font-size:12px;line-height:1.4;margin-top:12px}.date-input{width:100%;border:1px solid #e2d8d7;background:#fffefd;color:var(--ink);border-radius:13px;padding:15px 14px;min-height:51px;color-scheme:light}.form-label{display:block;font-size:12px;font-weight:700;color:#68585b;margin:12px 0 9px}.time-options{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.time-option{padding:13px 7px;border:1px solid #e6dadb;background:#fffdfa;border-radius:12px;text-align:center;font-size:12px;color:#716266}.time-option[aria-pressed="true"]{background:#f8e7eb;border-color:#b87887;color:#89505d;font-weight:700}.notes-input{width:100%;min-height:75px;max-height:120px;resize:vertical;padding:13px;border:1px solid #e4d9d8;background:#fffefd;border-radius:13px;line-height:1.5;font-size:12px}.note-length{display:block;text-align:right;color:#ad9da0;font-size:10px;margin-top:3px}.recap-list{display:grid;gap:10px;margin-top:2px}.recap-row{background:#fbf5f3;border:1px solid #f1e7e4;border-radius:13px;padding:13px 14px;display:grid;grid-template-columns:102px 1fr;gap:10px;align-items:center}.recap-label{font-size:11px;color:#9b898c}.recap-value{font-size:13px;color:#493a3f;font-weight:700}.recap-note{font-size:12px;color:#8a797b;line-height:1.6;margin-top:13px}.hero-eyebrow{font-size:11px;letter-spacing:.22em;font-weight:700;color:var(--rose);text-transform:uppercase}.hero-title{font:normal clamp(38px,4vw,52px)/1.14 Georgia,"Times New Roman",serif;letter-spacing:-1.5px;margin:13px 0}.hero-title i{font-weight:400;color:#a15f6e}.hero-description{font-size:14px;line-height:1.85;color:#84787b;margin:0}.envelope-wrap{height:190px;position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden}.envelope{position:relative;width:210px;height:132px;background:#eecdd1;border-radius:4px 4px 8px 8px;box-shadow:0 24px 35px rgba(134,78,90,.13);transform:rotate(-6deg);animation:float 5s ease-in-out infinite}.envelope:before{content:"";position:absolute;inset:0;clip-path:polygon(0 0,50% 62%,100% 0);background:#e2b9c0}.envelope:after{content:"";position:absolute;inset:0;clip-path:polygon(0 100%,50% 46%,100% 100%);background:#f6d9dc}.wax{position:absolute;left:calc(50% - 22px);top:51px;z-index:2;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#a96878;color:#fff;font:23px Georgia;box-shadow:0 3px 8px rgba(88,41,49,.15)}.envelope-sparkle{position:absolute;font-size:26px;color:#ba8a92}.sparkle-one{left:27px;top:22px}.sparkle-two{right:27px;top:22px}.sparkle-three{right:65px;bottom:20px}.intro-content{text-align:center;align-items:center;justify-content:center}.intro-content .hero-description{max-width:330px}.intro-content .actions{width:100%;padding-top:33px}.intro-content .hero-title{font-size:clamp(36px,4vw,48px)}.intro-content .hero-eyebrow{margin-top:7px}.intro-tiny{font:italic 14px Georgia;color:#b69b9e;margin-top:23px}.success-card{background:linear-gradient(145deg,#fff7f4,#f4e6e8);border:1px solid #efdbdf;border-radius:18px;padding:22px;text-align:center;margin:17px 0 6px}.success-ring{font:50px Georgia;color:#b07180;margin-bottom:10px;animation:pop .6s ease-out}.success-card h3{font:normal 27px Georgia;margin:0 0 8px;color:#56383f}.success-card p{font-size:12px;line-height:1.7;color:#806c72;margin:0}.success-content{text-align:center;align-items:center}.success-content .hero-title{font-size:38px}.success-content .actions{width:100%}.demo-banner{font-size:11px;color:#8d6872;background:#f8e9ec;border-radius:8px;padding:9px 11px;text-align:center;margin-bottom:14px}.loading{margin:auto;text-align:center;color:#ad959a;font:italic 14px Georgia}.loading-star{font:56px Georgia;color:#b47b87;display:block;animation:rotate 8s linear infinite}.page-footer{height:70px;display:flex;justify-content:space-between;align-items:center;color:#af9e9d;letter-spacing:.22em;font-size:10px}.page-footer>span:nth-child(2){font-size:17px;color:#c18f98}.reduced{font-size:12px;color:#8f8182}.admin-body .site-header{max-width:960px;margin:auto}.admin-shell{width:min(920px,100%);margin:40px auto;background:#fffdfa;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:26px;padding:35px;min-height:390px}.admin-shell .step-title{margin:12px 0}.admin-field{display:flex;gap:10px;margin-top:18px}.admin-field input{border:1px solid #e6d9d9;background:#fff;width:100%;border-radius:12px;padding:14px}.admin-field .primary-button{flex:none}.admin-bar{display:flex;align-items:center;justify-content:space-between;gap:15px}.admin-title{font:normal 39px Georgia;margin:9px 0 2px}.admin-meta{color:#96868b;font-size:12px}.admin-card{margin-top:24px;border:1px solid #eadedf;border-radius:15px;padding:21px;background:#fff}.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.admin-cell{display:flex;flex-direction:column;gap:6px}.admin-cell small{color:#ae969c;font-size:11px}.admin-cell strong{font-size:14px;line-height:1.5}.admin-notes{padding:14px 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;color:#6f6063}.status-line{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding:16px;background:#faf3f2;border-radius:12px;font-size:12px}.admin-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-actions .primary-button{flex:unset}.admin-actions .secondary-button{min-width:auto}.admin-empty{padding:60px 12px;text-align:center;color:#9c8588}.admin-empty .loading-star{font-size:50px}.date-input::-webkit-calendar-picker-indicator{cursor:pointer}.option.is-special{grid-column:span 2;min-height:80px;flex-direction:row;align-items:center;gap:13px}.option.is-special .option-desc{margin-top:4px}.option.is-special .option-label{display:block}.option.is-special .option-icon{width:44px;height:44px}.confetti{position:absolute;width:7px;height:10px;background:#d79aa3;border-radius:2px;pointer-events:none;animation:confetti-fall 1.9s ease-in forwards;top:0;left:var(--x);animation-delay:var(--delay);transform:rotate(var(--r))}.wizard-wrapper{position:relative}.invite-missing{margin:auto;text-align:center;color:#a66b78}
@keyframes view-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-8px) rotate(-4deg)}}@keyframes rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pop{0%{transform:scale(.65);opacity:0}75%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-10px) rotate(0)}100%{opacity:0;transform:translateY(550px) rotate(700deg)}}
@media(max-width:900px){.shell{width:min(690px,calc(100% - 34px))}.layout{grid-template-columns:1fr;gap:18px;padding-top:0}.story-panel{padding:0 6px 6px;text-align:center}.story-panel h1{font-size:43px;margin:9px 0 11px;letter-spacing:-1.6px}.story-panel h1 br{display:none}.story-description{max-width:480px;margin:auto;font-size:13px;line-height:1.65}.story-chip{display:none}.story-art,.story-footer{display:none}.wizard-wrapper{min-height:620px}.wizard-content{min-height:480px}.site-header{height:76px}.page-footer{height:55px}}@media(max-width:540px){.shell{width:calc(100% - 24px)}.site-header{height:68px;padding:0 4px}.logo{font-size:25px}.logo-orbit{font-size:22px}.topline{font-size:8px;letter-spacing:.12em}.story-panel h1{font-size:32px;line-height:1.15}.story-description{font-size:12px;line-height:1.55}.layout{gap:18px;padding-bottom:15px}.wizard-wrapper{border-radius:21px;min-height:620px}.wizard-top,.wizard-bottom{padding:18px 22px}.wizard-content{padding:21px 20px 25px;min-height:500px}.step-title{font-size:32px}.step-subtitle{margin-bottom:18px;font-size:12px}.options{gap:9px}.option{min-height:120px;padding:12px 10px 11px;border-radius:14px;gap:6px}.option-icon{width:36px;height:36px;font-size:20px}.option-label{font-size:12px}.option-desc{font-size:10px}.options.compact .option{min-height:113px}.page-footer{font-size:8px;letter-spacing:.08em}.story-panel{padding-top:5px}.envelope-wrap{height:166px}.envelope{transform:scale(.85) rotate(-6deg)}.admin-shell{padding:23px;margin:16px auto}.admin-grid{grid-template-columns:1fr}.admin-field{flex-direction:column}.admin-bar{align-items:flex-start;flex-direction:column}.hero-title{font-size:36px}.recap-row{grid-template-columns:78px 1fr;gap:8px}.recap-label{font-size:10px}.recap-value{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.progress-1{width:16.6667%}.progress-2{width:33.3333%}.progress-3{width:50%}.progress-4{width:66.6667%}.progress-5{width:83.3333%}.progress-6{width:100%}.confetti-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none}.confetti-0{left:9%;animation-delay:.05s}.confetti-1{left:17%;animation-delay:.25s;background:#a8b4a4}.confetti-2{left:26%;animation-delay:.1s}.confetti-3{left:33%;animation-delay:.4s;background:#d9c69d}.confetti-4{left:42%;animation-delay:.05s}.confetti-5{left:50%;animation-delay:.3s;background:#a8b4a4}.confetti-6{left:59%;animation-delay:.15s}.confetti-7{left:68%;animation-delay:.38s;background:#d9c69d}.confetti-8{left:75%;animation-delay:.22s}.confetti-9{left:83%;animation-delay:.12s;background:#a8b4a4}.confetti-10{left:91%;animation-delay:.4s}.confetti-11{left:96%;animation-delay:.07s;background:#d9c69d}

.admin-grid-mt{margin-top:20px}.admin-actions-mt{margin-top:18px}

.title-line,.option-label,.option-desc{display:block}.option-label{margin-bottom:3px}@media(max-width:900px){.title-line{display:inline}}
