@font-face{font-family:DM Sans;src:url(/fonts/DM-Sans-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DM-Sans-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DM-Sans-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--bg:#fff;--surface:#f5f6f8;--surface-pink:#fff3f6;--surface-blue:#f1f4ff;--text:#171719;--muted:#777874;--border:#e4e5e8;--pink:#e98ca3;--pink-soft:#ffdae4;--pink-strong:#fd90ac;--blue:#6174d3;--blue-soft:#eaf0ff;--focus:#6984fe;--error:#c23b4b;--success:#36825a;--sans:"DM Sans",Arial,sans-serif;--display:"DM Sans",Arial,sans-serif;--shadow:0 16px 38px #1d1f2714}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font:16px/1.55 var(--sans);margin:0;overflow-x:visible}button,input,textarea{font:inherit}button{cursor:pointer;border:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{background:var(--pink-soft);color:var(--text)}.wrap{width:min(1160px,100% - 64px);margin-inline:auto}.eyebrow{color:var(--muted);font:700 11px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}.display,.section-title{font-family:var(--display);letter-spacing:-.07em;font-weight:700}.display{font-size:clamp(3.8rem,9vw,8.5rem);line-height:.91}.text-action{color:var(--muted);background:0 0;border-bottom:1px solid;padding:0}.text-action:hover{color:var(--text)}.site-header{z-index:4;align-items:center;height:76px;display:flex;position:absolute;inset:0 0 auto}.site-header .wrap{justify-content:space-between;align-items:center;display:flex}.heart-mark{color:var(--pink-strong);font-size:25px;line-height:1;transition:transform .2s,color .2s}.heart-mark:hover{color:var(--blue);transform:scale(1.08)}.header-actions{align-items:center;gap:25px;font-size:13px;display:flex}.header-actions a:hover,.header-actions button:hover{color:var(--blue)}.header-actions button{color:inherit;background:0 0}.header-create{border:1px solid var(--text)!important;color:var(--text)!important;padding:11px 17px!important}.header-create:hover{background:var(--text);color:#fff!important}.brand-cluster{align-items:center;gap:8px;display:flex}.app-version{color:var(--muted);letter-spacing:.06em;font-size:10px;font-weight:600}.hero{background:var(--bg);min-height:700px;padding-top:76px}.hero-layout{grid-template-columns:1.12fr .88fr;align-items:center;gap:clamp(48px,7vw,96px);min-height:624px;display:grid}.hero-copy{max-width:650px}.brand-title{color:var(--text);margin:0;font-size:clamp(5rem,11vw,11rem);line-height:.82}.brand-title span{color:var(--pink-strong)}.hero-tagline{letter-spacing:-.02em;color:var(--muted);margin:20px 0 25px;font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:500}.hero-lede{max-width:390px;color:var(--muted);margin:0 0 26px;font-size:16px;line-height:1.5}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.action{border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:13px 19px;font-weight:500;transition:transform .2s,background .2s,color .2s,border-color .2s;display:inline-flex}.action:active{transform:scale(.98)}.action-primary{background:var(--text);color:#fff}.action-primary:hover{background:var(--blue);transform:translateY(-2px)}.action-secondary{border:1px solid var(--border);color:var(--text);background:#fff}.action-secondary:hover{border-color:var(--text)}.hero-note{color:var(--muted);gap:20px;margin-top:17px;font-size:12px;display:flex}.hero-preview{background:var(--surface-blue);justify-content:center;align-items:center;min-height:390px;display:flex;position:relative;overflow:hidden}.hero-preview:before{content:"";background:var(--pink-soft);border-radius:50%;width:220px;height:220px;position:absolute;top:-65px;right:-70px}.preview-paper{border:1px solid var(--border);width:min(350px,82%);box-shadow:var(--shadow);background:#fff;padding:34px;position:relative}.preview-paper small{color:var(--blue);font-weight:500}.preview-kicker{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.preview-paper h2{font:700 clamp(2rem,4vw,3.6rem)/.98 var(--display);letter-spacing:-.06em;margin:52px 0 44px}.preview-paper h2 span{color:var(--blue)}.preview-paper p{color:var(--muted);margin:0}.preview-line{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;margin-top:26px;padding-top:13px;font-size:12px;display:flex}.section{padding:104px 0}.section-head{justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px;display:flex}.section-head h2{font:700 clamp(3rem,6vw,6.5rem)/.94 var(--display);letter-spacing:-.07em;margin:14px 0}.section-lede{max-width:330px;color:var(--muted);margin:0}.scenario-banner{text-align:left;border:1px solid var(--border);border-radius:14px;grid-template-columns:1.12fr .88fr;width:100%;min-height:310px;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden}.scenario-banner:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.scenario-banner-copy{background:var(--surface-pink);flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,56px);display:flex}.scenario-banner-preview{background:var(--surface-blue);flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,56px);display:flex}.scenario-banner--birthday .scenario-banner-copy{background:#fff7ea}.scenario-banner--our_story .scenario-banner-copy{background:#eef9f5}.scenario-banner--important_question .scenario-banner-copy{background:#f3f0ff}.scenario-banner--apology .scenario-banner-copy{background:#f4f4f3}.scenario-banner h3{font:700 clamp(2.7rem,5vw,5.8rem)/.92 var(--display);letter-spacing:-.07em;max-width:560px;margin:14px 0}.scenario-banner p{color:var(--muted);max-width:34ch;margin:0}.scenario-cta{margin-top:28px;font-weight:500}.scenario-banner-preview small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:500}.scenario-banner-preview strong{font:700 clamp(2rem,4vw,4.4rem)/.98 var(--display);letter-spacing:-.07em;max-width:13ch}.scenario-banner-preview span{color:var(--blue);font-size:13px;font-weight:500}.scenario-dots{gap:7px;margin:16px 0 0;display:flex}.scenario-dots button{background:var(--border);border-radius:50%;width:7px;height:7px;padding:0}.scenario-dots button.active{background:var(--blue);border-radius:8px;width:24px}.scenario-feature{text-align:left;background:var(--surface-pink);width:100%;color:var(--text);border:1px solid var(--border);border-radius:14px;grid-template-columns:1fr 1fr;min-height:320px;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden}.scenario-feature:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.scenario-feature-copy{flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,56px);display:flex}.scenario-feature-copy:last-child{background:var(--pink-soft)}.scenario-feature h3{font:800 clamp(2.7rem,5vw,5.8rem)/.92 var(--display);letter-spacing:-.07em;max-width:560px;margin:14px 0}.scenario-feature p{color:var(--muted);max-width:34ch;margin:0}.scenario-feature-quote{align-self:flex-end;max-width:20ch;font-size:18px;font-weight:600}.scenario-list{border-top:1px solid var(--border);grid-template-columns:repeat(2,1fr);margin-top:40px;display:grid}.scenario-entry{text-align:left;border-bottom:1px solid var(--border);background:#fff;grid-template-columns:38px 1fr;gap:18px;padding:24px 0;display:grid}.scenario-entry:nth-child(odd){margin-right:28px}.scenario-entry:nth-child(2n){margin-left:28px}.scenario-entry:hover h3{color:var(--blue)}.scenario-mark{color:var(--blue);font-size:24px}.scenario-entry h3{font:700 21px/1.1 var(--display);letter-spacing:-.04em;margin:0 0 5px}.scenario-entry p{color:var(--muted);margin:0;font-size:14px}.process{background:var(--surface)}.process-rail{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.process-step{border-bottom:1px solid var(--border);min-height:220px;padding:20px 28px 0 0}.process-step+.process-step{border-left:1px solid var(--border);padding-left:28px}.process-step strong{font:800 clamp(2.6rem,5vw,5rem)/.95 var(--display);letter-spacing:-.07em;margin:45px 0 12px;display:block}.process-step p{color:var(--muted);max-width:25ch;margin:0}.showcase{grid-template-columns:.7fr 1.3fr;align-items:end;gap:28px;display:grid}.showcase-note{color:var(--muted);font-size:14px}.showcase h2{font:800 clamp(3.7rem,7vw,8rem)/.94 var(--display);letter-spacing:-.07em;margin:0}.showcase-quote{border-top:1px solid var(--border);max-width:18ch;margin-top:38px;padding-top:16px;font-size:clamp(1.4rem,3vw,2.5rem);font-weight:600}.manifesto{background:var(--surface-blue);padding:115px 0}.manifesto-grid{grid-template-columns:1fr 1fr;gap:90px;display:grid}.manifesto h2{font:800 clamp(3.7rem,7vw,8rem)/.91 var(--display);letter-spacing:-.07em;margin:0}.manifesto-copy{max-width:390px}.manifesto-copy p{margin:0 0 35px;font-size:19px}.manifesto-list{border-top:1px solid #cfd6f2}.manifesto-list div{border-bottom:1px solid #cfd6f2;grid-template-columns:36px 1fr;gap:14px;padding:13px 0;display:grid}.manifesto-list b{color:var(--blue);font-size:12px}.closing{text-align:center;padding:140px 20px}.closing h2{font:800 clamp(3.7rem,8vw,8rem)/.92 var(--display);letter-spacing:-.07em;max-width:820px;margin:14px auto 22px}.closing p{color:var(--muted);margin:0 auto 28px}.site-footer{border-top:1px solid var(--border);grid-template-columns:1.4fr 1fr 1fr;gap:30px;padding:36px 0 46px;font-size:13px;display:grid}.site-footer strong{font:800 22px var(--display);letter-spacing:-.06em;margin-bottom:9px;display:block}.site-footer small{color:var(--muted);max-width:25ch;display:block}.footer-links{color:var(--muted);gap:7px;display:grid}.workspace-backdrop{z-index:20;background:#1717199e;padding:28px;position:fixed;inset:0;overflow:auto}.workspace{width:min(1080px,100%);min-height:min(740px,100vh - 56px);color:var(--text);box-shadow:var(--shadow);background:#fff;border-radius:14px;grid-template-columns:210px 1fr 300px;margin:auto;display:grid}.workspace-rail{border-right:1px solid var(--border);background:var(--surface);padding:28px 20px}.workspace-brand{font:800 21px/1 var(--display);letter-spacing:-.07em;margin-bottom:58px}.workspace-brand em{color:var(--pink-strong);font-style:normal}.workspace-step{color:var(--muted);border-bottom:1px solid var(--border);gap:9px;padding:11px 0;font-size:11px;display:flex}.workspace-step.active{color:var(--blue);font-weight:700}.workspace-main{padding:clamp(28px,5vw,58px)}.workspace-main h2{font:800 clamp(2.8rem,5vw,5.3rem)/.93 var(--display);letter-spacing:-.07em;margin:14px 0}.workspace-main h2 em{color:var(--pink-strong);font-style:normal}.hint{color:var(--muted);max-width:42ch}.workspace-context{border-left:1px solid var(--border);background:var(--surface-blue);padding:30px 22px}.workspace-context h3{font:700 23px var(--display);letter-spacing:-.04em;margin:12px 0 20px}.context-fragment{border:1px solid var(--border);background:#fff;min-height:240px;padding:24px}.context-fragment strong{color:var(--blue);margin-bottom:40px;font-size:13px;display:block}.context-fragment b{font:800 38px/.94 var(--display);letter-spacing:-.07em}.progress-line{background:var(--border);height:3px;margin:25px 0 32px}.progress-line i{background:var(--pink-strong);transform-origin:0;width:100%;height:100%;transition:transform .25s;display:block;transform:scaleX(1)}.writing-field{margin:23px 0;display:block}.writing-field span{color:var(--muted);margin-bottom:8px;font-size:12px;display:block}.writing-field input,.writing-field textarea,.milestone-editor input,.milestone-editor textarea{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);resize:vertical;background:0 0;border-radius:0;outline:0;padding:12px 0}.writing-field input:focus,.writing-field textarea:focus,.milestone-editor input:focus,.milestone-editor textarea:focus{border-color:var(--focus)}.workspace-actions{justify-content:space-between;align-items:center;gap:18px;margin-top:32px;display:flex}.workspace-close{color:#fff;background:0 0;font-size:28px;position:fixed;top:16px;right:22px}.scenario-picker{gap:0;display:grid}.scenario-picker button{border-bottom:1px solid var(--border);text-align:left;background:0 0;padding:16px 0}.scenario-picker button strong{font:700 22px var(--display);letter-spacing:-.04em;display:block}.scenario-picker button small{color:var(--muted);margin-top:4px;display:block}.scenario-picker button.selected strong{color:var(--blue)}.ready-reveal h3{font:800 60px/.9 var(--display);letter-spacing:-.07em;margin:18px 0}.ready-reveal h3 em{color:var(--pink-strong);font-style:normal}.result-url{background:var(--surface);border:1px solid var(--border);overflow-wrap:anywhere;margin:22px 0;padding:16px;font:12px monospace}.story-page{background:var(--surface);min-height:100svh;color:var(--text);place-items:center;padding:24px 16px;display:grid}.story-sheet{border:1px solid var(--border);background:#fff;flex-direction:column;justify-content:center;width:min(690px,100%);min-height:calc(100svh - 48px);padding:clamp(34px,8vw,82px) clamp(25px,8vw,76px);display:flex}.story-sheet--birthday{background:var(--surface-pink)}.story-sheet--question{background:var(--surface-blue)}.story-sheet--apology{background:#f4f4f3}.story-label{color:var(--blue);text-transform:uppercase;letter-spacing:.08em;margin-bottom:28px;font-size:12px;font-weight:700}.story-sheet h1{font:800 clamp(3.4rem,10vw,8rem)/.91 var(--display);letter-spacing:-.08em;margin:0 0 24px}.story-sheet h2{font:700 30px/1.05 var(--display);letter-spacing:-.05em;margin:28px 0 16px}.story-sheet p{max-width:60ch;color:var(--muted);font-size:18px;line-height:1.65}.story-large{color:var(--text)!important;font-size:25px!important}.story-details{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:16px;margin:32px 0;padding:20px 0;display:grid}.story-details b{font:700 30px var(--display);letter-spacing:-.06em}.story-details span,.story-details small{color:var(--muted)}.story-memory{border-top:2px solid var(--pink);border-bottom:2px solid var(--pink);margin:30px 0;padding:18px 0;font-size:24px;font-weight:600}.story-question{max-width:8ch;font-size:clamp(4rem,14vw,10rem)!important}.story-actions{gap:9px;margin-top:30px;display:grid}.response-choice{border:1px solid var(--text);text-align:left;min-height:54px;color:var(--text);background:#fff;border-radius:8px;padding:14px 17px;transition:background .2s,color .2s,transform .2s}.response-choice:hover{background:var(--text);color:#fff;transform:translateY(-1px)}.response-choice:disabled{opacity:.55;cursor:wait}.story-confirmation{border-top:1px solid var(--success);padding:15px 0;color:var(--success)!important}.story-error{color:var(--error)!important;font-size:14px!important}.story-timeline{margin:36px 0}.story-timeline article{border-bottom:1px solid var(--border);grid-template-columns:72px 1fr;gap:18px;margin-bottom:26px;padding:0 0 30px;display:grid}.story-timeline article i{color:var(--blue);font-size:12px;font-style:normal}.story-timeline h2{margin:0 0 8px}.story-timeline p{margin:0;font-size:16px}.manage-page{background:var(--surface);min-height:100svh;padding:58px 20px}.manage-layout{width:min(920px,100%);margin:auto}.manage-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:28px;padding-bottom:26px;display:flex}.manage-header h1{font:800 clamp(3rem,7vw,6.5rem)/.9 var(--display);letter-spacing:-.08em;margin:14px 0}.manage-header p{color:var(--muted);margin:0}.manage-actions{flex-wrap:wrap;gap:10px;display:flex}.manage-section{border-bottom:1px solid var(--border);padding:34px 0}.manage-section h2{font:700 28px var(--display);letter-spacing:-.05em;margin:0 0 17px}.manage-link code{border:1px solid var(--border);overflow-wrap:anywhere;background:#fff;padding:14px;display:block}.response-note{border-top:1px solid var(--border);justify-content:space-between;gap:18px;padding:14px 0;display:flex}.response-note small{color:var(--muted);font-size:11px}.content-list{gap:12px;display:grid}.content-row{border-top:1px solid var(--border);grid-template-columns:150px 1fr;gap:20px;padding:10px 0;display:grid}.content-row dt{color:var(--muted);font-size:12px}.content-row dd{white-space:pre-wrap;margin:0}.toast{z-index:40;background:var(--text);color:#fff;opacity:0;pointer-events:none;border-radius:8px;padding:12px 15px;transition:opacity .2s,transform .2s;position:fixed;bottom:22px;right:22px;transform:translateY(10px)}.toast.show{opacity:1;transform:translateY(0)}@media (max-width:900px){.wrap{width:calc(100% - 36px)}.header-actions a{display:none}.hero{min-height:auto}.hero-layout{grid-template-columns:1fr;min-height:auto;padding:130px 0 62px}.hero-preview{min-height:350px}.section{padding:82px 0}.section-head{margin-bottom:35px;display:block}.scenario-banner{text-align:left;border:1px solid var(--border);border-radius:14px;grid-template-columns:1.1fr .9fr;width:100%;min-height:310px;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden}.scenario-banner:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.scenario-banner-copy{background:var(--surface-pink);flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,56px);display:flex}.scenario-banner-preview{background:var(--surface-blue);flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,56px);display:flex}.scenario-banner--birthday .scenario-banner-copy{background:#fff7ea}.scenario-banner--our_story .scenario-banner-copy{background:#eef9f5}.scenario-banner--important_question .scenario-banner-copy{background:#f3f0ff}.scenario-banner--apology .scenario-banner-copy{background:#f4f4f3}.scenario-banner h3{font:700 clamp(2.7rem,5vw,5.8rem)/.92 var(--display);letter-spacing:-.07em;max-width:560px;margin:14px 0}.scenario-banner p{color:var(--muted);max-width:34ch;margin:0}.scenario-cta{margin-top:28px;font-weight:500}.scenario-banner-preview small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:500}.scenario-banner-preview strong{font:700 clamp(2rem,4vw,4.4rem)/.98 var(--display);letter-spacing:-.07em;max-width:13ch}.scenario-banner-preview span{color:var(--blue);font-size:13px;font-weight:500}.scenario-dots{gap:7px;margin:16px 0 0;display:flex}.scenario-dots button{background:var(--border);border-radius:50%;width:7px;height:7px;padding:0}.scenario-dots button.active{background:var(--blue);border-radius:8px;width:24px}.scenario-feature,.scenario-list{grid-template-columns:1fr}.scenario-entry:nth-child(odd),.scenario-entry:nth-child(2n){margin-inline:0}.process-rail{grid-template-columns:1fr}.process-step,.process-step+.process-step{border-left:0;min-height:0;padding:23px 0}.process-step strong{margin:28px 0 9px}.showcase,.manifesto-grid{grid-template-columns:1fr;gap:35px}.manifesto{padding:82px 0}.site-footer{grid-template-columns:1fr;gap:24px}.workspace-backdrop{padding:0}.workspace{border-radius:0;min-height:100svh;display:block}.workspace-rail{display:none}.workspace-context{border:0;border-top:1px solid var(--border);padding:24px}.workspace-main{padding:34px 22px}.workspace-close{top:10px;right:14px}.workspace-actions{background:#fff;padding:14px 0;position:sticky;bottom:0}.manage-header{display:block}.manage-actions{margin-top:22px}.content-row{grid-template-columns:1fr;gap:4px}.story-sheet{min-height:calc(100svh - 32px);padding:35px 24px}.story-sheet h1{font-size:clamp(3.4rem,14vw,6.4rem)}.story-details{grid-template-columns:1fr}.story-timeline article{grid-template-columns:54px 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}:root{--ease-out:cubic-bezier(.22,1,.36,1);--ease-standard:cubic-bezier(.2,.8,.2,1);--motion-fast:.16s;--motion-standard:.26s;--content-wide:1280px}.wrap{width:min(var(--content-wide),calc(100% - 64px))}button,.action,a{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}.action,.header-create,.response-choice,.scenario-cta,.heart-mark{transition:transform var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.action:active,.header-create:active,.response-choice:active,.scenario-cta:active{transform:translateY(1px)}.action:focus-visible,.header-create:focus-visible,.scenario-cta:focus-visible,.response-choice:focus-visible,.scenario-dots button:focus-visible,.heart-mark:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.heart-mark{border:1px solid #0000;border-radius:8px;place-items:center;width:48px;height:48px;font-size:38px;line-height:.82;display:grid}.heart-mark span{display:block;transform:translateY(-1px)}.heart-mark:hover{background:var(--pink-soft)}.hero-preview{border:1px solid #dfe4f2;border-radius:18px;min-height:420px;box-shadow:0 22px 60px #3d498214}.hero-preview:after{content:"";pointer-events:none;border:1px solid #ffffffb3;border-radius:12px;position:absolute;inset:14px}.preview-paper{z-index:1;width:min(390px,82%);min-height:330px;transition:transform var(--motion-standard) var(--ease-out),box-shadow var(--motion-standard) var(--ease-out);border-radius:10px;flex-direction:column;justify-content:space-between;padding:25px 27px;display:flex;box-shadow:0 20px 45px #1d1f271a}.hero-preview:hover .preview-paper{transform:translateY(-5px);box-shadow:0 28px 56px #1d1f2721}.preview-topline,.preview-footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.preview-topline small{color:var(--blue);font-weight:700}.preview-topline span{color:var(--muted);font-size:12px}.preview-state{padding:28px 0}.preview-state h2{font:700 clamp(2.5rem,5vw,4.4rem)/.92 var(--display);letter-spacing:-.07em;margin:12px 0 15px}.preview-state p{color:var(--muted);max-width:28ch;margin:0}.preview-footer{border-top:1px solid var(--border);color:var(--muted);padding-top:15px;font-size:11px}.preview-footer button{color:var(--text);background:0 0;padding:0;font-size:12px;font-weight:500}.preview-footer button:hover,.hero-preview.is-revealed .preview-state h2{color:var(--blue)}.scenario-banner{isolation:isolate;cursor:default;grid-template-columns:1.08fr .92fr;min-height:360px;position:relative}.scenario-banner-copy,.scenario-banner-preview{min-height:358px}.scenario-swap{animation:scenario-in var(--motion-standard) var(--ease-out) both}.scenario-banner h3{min-height:1.84em}.scenario-banner p{min-height:3em}.scenario-banner-preview strong{min-height:2.94em;display:block}.scenario-cta{color:var(--text);background:0 0;align-self:flex-start;padding:12px 0;font-size:14px}.scenario-cta:hover{color:var(--blue);transform:translate(3px)}.scenario-dots button{min-width:12px;min-height:12px}.scenario-list{margin-top:36px}@keyframes scenario-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.process-step strong{font-weight:700}.process-step p{max-width:28ch}.site-footer{max-width:var(--content-wide);padding-top:42px}.footer-note{color:var(--muted)}.legal-placeholder{color:var(--muted);cursor:not-allowed}.legal-placeholder small{color:var(--blue);margin-left:4px;font-size:10px;display:inline}.footer-links a:hover{color:var(--blue)}.workspace{min-height:min(780px,100vh - 56px)}.workspace-main,.workspace-context{overflow:auto}.workspace-actions{min-height:72px}.workspace-actions .action{min-width:140px}.workspace-close{border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.story-confirmation{min-height:54px;margin:30px 0 0}.response-choice{min-height:56px}.story-error{min-height:22px}@media (min-width:1400px){.hero{min-height:760px}.hero-layout{min-height:684px}.section{padding:130px 0}.hero-preview{min-height:470px}.scenario-banner,.scenario-banner-copy,.scenario-banner-preview{min-height:390px}}@media (max-width:900px){.wrap{width:calc(100% - 36px)}.site-header{height:68px}.heart-mark{width:44px;height:44px;font-size:34px}.header-actions{gap:12px}.header-create{font-size:12px;padding:10px 13px!important}.hero-layout{padding-top:112px}.hero-preview{min-height:390px}.scenario-banner{grid-template-columns:1fr;min-height:620px}.scenario-banner-copy,.scenario-banner-preview{min-height:300px}.scenario-banner-preview{border-top:1px solid #17171914}.scenario-banner h3,.scenario-banner p,.scenario-banner-preview strong{min-height:0}.workspace-main{min-height:560px}.workspace-context{min-height:250px}.workspace-actions{z-index:2;position:sticky;bottom:0}}@media (max-width:520px){.wrap{width:calc(100% - 32px)}.header-actions a,.header-actions button:not(.header-create){display:none}.header-create{min-height:42px}.hero-layout{padding:108px 0 48px}.brand-title{font-size:clamp(4.6rem,21vw,7rem)}.hero-actions .action{width:100%}.hero-note{flex-wrap:wrap;gap:8px 16px}.hero-preview{min-height:360px}.preview-paper{min-height:300px;padding:22px}.preview-state h2{font-size:clamp(2.35rem,13vw,3.8rem)}.scenario-banner{min-height:570px}.scenario-banner-copy,.scenario-banner-preview{min-height:275px;padding:28px}.scenario-banner h3{font-size:clamp(2.6rem,13vw,4.4rem)}.section-head h2{font-size:clamp(3rem,14vw,5rem)}.workspace-main{min-height:620px;padding:28px 20px}.workspace-actions{gap:12px}.workspace-actions .action{flex:1;min-width:0}.story-sheet{width:100%;padding:34px 22px}}@media (prefers-reduced-motion:reduce){.hero-preview:hover .preview-paper,.scenario-cta:hover{transform:none}.scenario-swap{animation:none}}.legal-page{background:var(--surface);min-height:100svh;padding:clamp(34px,7vw,88px) 20px}.legal-document{border:1px solid var(--border);width:min(820px,100%);min-width:0;box-shadow:var(--shadow);background:#fff;margin:auto;padding:clamp(28px,6vw,72px);overflow:hidden}.legal-back{color:var(--muted);margin-bottom:clamp(50px,8vw,92px);font-size:14px;display:inline-block}.legal-back:hover{color:var(--blue)}.legal-document h1{max-width:100%;font:700 clamp(2.8rem,6vw,5.8rem)/.94 var(--display);letter-spacing:-.07em;overflow-wrap:anywhere;word-break:normal;margin:18px 0 24px}.legal-intro{max-width:62ch;color:var(--muted);overflow-wrap:anywhere;margin:0 0 14px;font-size:18px;line-height:1.6}.legal-updated{color:var(--muted);overflow-wrap:anywhere;margin:0 0 34px;font-size:12px}.legal-callout{background:var(--surface-blue);border-left:3px solid var(--blue);overflow-wrap:anywhere;min-width:0;margin:0 0 52px;padding:20px 22px}.legal-callout strong{font-weight:700}.legal-callout p{margin:8px 0 0}.legal-warning{color:#8b5b00;font-size:13px}.legal-content{min-width:0;max-width:68ch}.legal-content h2{font:700 clamp(1.35rem,2.2vw,1.75rem)/1.15 var(--display);letter-spacing:-.04em;overflow-wrap:anywhere;margin:38px 0 12px}.legal-content h2:first-child{margin-top:0}.legal-content p{overflow-wrap:anywhere;margin:0 0 14px;line-height:1.7}.legal-content a,.legal-document-footer a{color:var(--blue);text-underline-offset:3px;overflow-wrap:anywhere;text-decoration:underline}.legal-content strong{overflow-wrap:anywhere;font-weight:700}.legal-document-footer{border-top:1px solid var(--border);flex-wrap:wrap;gap:12px 24px;margin-top:58px;padding-top:22px;font-size:13px;display:flex}.legal-document-footer a:hover{color:var(--text)}.reveal-ready{opacity:0;transition:opacity .62s var(--ease-enter),transform .62s var(--ease-enter);transform:translateY(22px)}.reveal-ready.is-visible{opacity:1;transform:none}.reveal-ready[data-reveal=panel]{clip-path:inset(0 0 8%);transform:translateY(18px)}.reveal-ready[data-reveal=panel].is-visible{clip-path:inset(0);transform:none}.reveal-ready[data-reveal=stagger] .process-step{opacity:0;transition:opacity .5s var(--ease-enter),transform .5s var(--ease-enter);transform:translateY(16px)}.reveal-ready[data-reveal=stagger].is-visible .process-step{opacity:1;transform:none}.reveal-ready[data-reveal=stagger].is-visible .process-step:nth-child(2){transition-delay:90ms}.reveal-ready[data-reveal=stagger].is-visible .process-step:nth-child(3){transition-delay:.18s}.scenario-stage{border:1px solid var(--border);background:var(--surface-blue);touch-action:pan-y;cursor:grab;border-radius:14px;position:relative;overflow:hidden}.scenario-stage:active{cursor:grabbing}.scenario-rail{width:calc(var(--scenario-count) * 100%);transform:translateX(calc(var(--scenario-index) * -100% / var(--scenario-count)));transition:transform .52s var(--ease-enter);will-change:transform;display:flex}.scenario-panel{width:calc(100% / var(--scenario-count));min-width:calc(100% / var(--scenario-count));text-align:left;grid-template-columns:1.08fr .92fr;min-height:360px;display:grid}.scenario-panel .scenario-banner-copy,.scenario-panel .scenario-banner-preview{min-height:358px}.scenario-panel .scenario-banner-copy{background:var(--surface-pink);flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,56px);display:flex}.scenario-panel .scenario-banner-preview{background:var(--surface-blue);flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,56px);display:flex}.scenario-panel--birthday .scenario-banner-copy{background:#fff7ea}.scenario-panel--our_story .scenario-banner-copy{background:#eef9f5}.scenario-panel--important_question .scenario-banner-copy{background:#f3f0ff}.scenario-panel--apology .scenario-banner-copy{background:#f4f4f3}.scenario-panel h3{font:700 clamp(2.7rem,5vw,5.8rem)/.92 var(--display);letter-spacing:-.07em;max-width:560px;min-height:1.84em;margin:14px 0}.scenario-panel p{color:var(--muted);max-width:34ch;min-height:3em;margin:0}.scenario-panel-preview strong{font:700 clamp(2rem,4vw,4.4rem)/.98 var(--display);letter-spacing:-.07em;max-width:13ch}.scenario-panel .scenario-banner-preview small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:500}.scenario-panel .scenario-banner-preview span{color:var(--blue);font-size:13px;font-weight:500}.scenario-panel .scenario-swap{animation:scenario-panel-in .52s var(--ease-enter) both}.scenario-stage.is-swiping .scenario-rail{transition-duration:.18s}.scenario-dots button{min-width:12px;min-height:12px;position:relative}.scenario-dots button.active:after{content:"";border:1px solid var(--blue);opacity:.35;border-radius:50%;position:absolute;inset:-5px}.scenario-list .scenario-entry{transition:color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-out)}.scenario-list .scenario-entry:hover{transform:translate(4px)}@keyframes scenario-panel-in{0%{opacity:.4;transform:translateX(calc(var(--scenario-direction) * 12px))}to{opacity:1;transform:none}}@media (pointer:fine){body.has-custom-cursor,body.has-custom-cursor a,body.has-custom-cursor button,body.has-custom-cursor [role=button],body.has-custom-cursor summary{cursor:none}body.has-custom-cursor input,body.has-custom-cursor textarea,body.has-custom-cursor select{cursor:text}.custom-cursor{display:block}}@media (pointer:coarse){.custom-cursor{display:none}}@media (max-width:900px){.scenario-stage{border-radius:12px}.scenario-panel{grid-template-columns:1fr;min-height:620px}.scenario-panel .scenario-banner-copy,.scenario-panel .scenario-banner-preview{min-height:300px;padding:clamp(28px,5vw,56px)}.scenario-panel .scenario-banner-preview{border-top:1px solid #17171914}.scenario-panel h3,.scenario-panel p{min-height:0}}@media (max-width:520px){.scenario-panel{min-height:570px}.scenario-panel .scenario-banner-copy,.scenario-panel .scenario-banner-preview{min-height:275px;padding:28px}.scenario-panel h3{font-size:clamp(2.6rem,13vw,4.4rem)}}@media (prefers-reduced-motion:reduce){.custom-cursor{transition:none}.reveal-ready,.reveal-ready[data-reveal=panel],.reveal-ready[data-reveal=stagger] .process-step{opacity:1;clip-path:none;transition:none;transform:none}.scenario-rail{transition:none}.scenario-panel .scenario-swap{animation:none}.scenario-stage{cursor:auto}}.builder-backdrop{z-index:20;background:#1717195c;place-items:center;padding:clamp(10px,2vw,28px);display:grid;position:fixed;inset:0}.builder-shell{background:#fff;border:1px solid #1717191a;flex-direction:column;width:min(1480px,100%);height:min(920px,100%);min-height:620px;display:flex;overflow:hidden;box-shadow:0 28px 90px #1717192e}.builder-header{border-bottom:1px solid var(--border);flex:0 0 72px;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(20px,4vw,56px);display:flex}.builder-brand{color:var(--text);font:700 15px/1 var(--display);letter-spacing:-.04em;background:0 0}.builder-brand em{color:var(--pink-strong);font-style:normal}.builder-header-meta{color:var(--muted);align-items:center;gap:28px;font-size:13px;display:flex}.builder-close{color:var(--text);background:0 0;font-size:25px;line-height:1}.builder-progress{border-bottom:1px solid var(--border);background:#fcfcfd;padding:26px clamp(20px,8vw,130px) 22px}.builder-progress>div:first-child{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.builder-progress span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.builder-progress strong{font:700 clamp(1.3rem,2.4vw,2rem)/1 var(--display);letter-spacing:-.05em}.progress-track{background:#e8e9ed;height:3px;margin-top:18px;overflow:hidden}.progress-track i{background:var(--pink-strong);height:100%;transition:width .45s var(--ease-enter);display:block}.builder-body{flex:1;grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);min-height:0;display:grid}.builder-form{flex-direction:column;min-width:0;display:flex;overflow:auto}.builder-step{width:min(620px,100%);animation:builder-step-in .38s var(--ease-enter) both;margin:auto;padding:clamp(30px,6vw,82px) clamp(20px,6vw,86px)}.builder-field{margin:0 0 27px;display:block}.builder-field>span,.builder-block-heading{justify-content:space-between;gap:16px;font-size:14px;font-weight:500;display:flex}.builder-field small,.builder-block-heading small{color:var(--muted);font-size:11px;font-weight:400}.builder-field input,.builder-field textarea,.choice-row input{width:100%;color:var(--text);resize:vertical;background:0 0;border:0;border-bottom:1px solid #cfd1d7;border-radius:0;outline:0;padding:12px 0 13px;transition:border-color .2s,box-shadow .2s}.builder-field input:focus,.builder-field textarea:focus,.choice-row input:focus{border-color:var(--blue);box-shadow:0 2px 0 var(--blue)}.builder-field input::placeholder,.builder-field textarea::placeholder,.choice-row input::placeholder{color:#afb1b8}.builder-prompt{color:var(--muted);margin:0 0 18px;font-size:15px}.builder-footer{border-top:1px solid var(--border);z-index:2;background:#fffffff0;justify-content:space-between;align-items:center;gap:14px;min-height:80px;margin-top:auto;padding:16px clamp(20px,4vw,56px);display:flex;position:sticky;bottom:0}.builder-footer>div{align-items:center;gap:10px;display:flex}.builder-back,.builder-preview-toggle,.builder-skip,.builder-add,.remove-moment{color:var(--muted);background:0 0;padding:10px 0}.builder-back:hover,.builder-preview-toggle:hover,.builder-skip:hover,.builder-add:hover,.remove-moment:hover{color:var(--text)}.builder-next{background:var(--text);color:#fff;border-radius:5px;min-height:46px;padding:0 20px;font-weight:500;transition:background .2s,transform .2s}.builder-next:hover:not(:disabled){background:var(--blue);transform:translateY(-1px)}.builder-next:disabled{opacity:.38;cursor:not-allowed}.builder-skip{font-size:13px}.builder-preview{background:var(--surface-blue);flex-direction:column;justify-content:center;min-width:0;padding:clamp(26px,4vw,60px);display:flex}.preview-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:18px;font-size:11px}.preview-label span{text-transform:none;letter-spacing:0;margin-top:5px;display:block}.preview-story{background:#fff;flex-direction:column;justify-content:center;min-height:390px;padding:clamp(24px,4vw,48px);display:flex;box-shadow:0 16px 38px #1d1f2714}.preview-story small{color:var(--blue)}.preview-story h2{font:700 clamp(2rem,4vw,4rem)/.94 var(--display);letter-spacing:-.07em;margin:40px 0 24px}.preview-story p{color:var(--muted);white-space:pre-wrap}.preview-story img{object-fit:cover;width:100%;max-height:160px;margin:15px 0}.preview-detail{color:var(--blue);margin-top:8px;font-size:13px}.preview-line{border-top:1px solid var(--border);margin-top:30px;padding-top:12px}.preview-story>span{color:var(--muted);font-size:12px}.choice-block,.quiz-block,.media-block{margin-top:8px}.choice-block{padding-top:5px}.choice-row{border-bottom:1px solid #cfd1d7;align-items:center;margin-top:12px;display:flex}.choice-row input{border-bottom:0}.remove-choice{color:var(--muted);background:0 0;font-size:21px}.builder-add{border-bottom:1px solid;margin-top:14px;display:block}.media-dropzone{border:1px solid var(--border);min-height:170px;color:var(--muted);cursor:pointer;background:#fafbfc;flex-direction:column;justify-content:center;align-items:center;gap:6px;margin-top:20px;transition:border-color .2s,background .2s;display:flex}.media-dropzone:hover,.media-dropzone:focus{border-color:var(--blue);background:var(--surface-blue)}.media-dropzone strong{color:var(--text);font-size:14px}.media-dropzone span{font-size:12px}.media-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px;display:grid}.media-card{background:#f2f3f5;min-height:120px;position:relative}.media-card img{object-fit:cover;width:100%;height:120px}.media-card button{background:#fff;border-radius:50%;width:28px;height:28px;position:absolute;top:8px;right:8px}.media-card small{color:var(--muted);padding:7px;font-size:10px;display:block}.builder-note,.builder-error{color:var(--muted);margin:14px 0 0;font-size:11px}.builder-error{color:var(--error)}.date-picker{border:1px solid var(--border);background:#fafbfc;padding:20px}.date-picker-head{text-transform:capitalize;justify-content:space-between;align-items:center;display:flex}.date-picker-head button{color:var(--blue);background:0 0;padding:5px 10px;font-size:20px}.date-weekdays,.date-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.date-weekdays{color:var(--muted);margin:22px 0 8px;font-size:11px}.date-grid button,.date-empty{aspect-ratio:1;background:0 0;border-radius:50%;place-items:center;display:grid}.date-grid button:hover{background:var(--pink-soft)}.date-grid button.selected{background:var(--pink-strong);color:#fff}.time-picker{flex-wrap:wrap;gap:12px;display:flex}.time-options{flex-wrap:wrap;gap:8px;display:flex}.time-options button,.time-picker input{border:1px solid var(--border);background:#fff;border-radius:20px;padding:10px 15px}.segmented{flex-wrap:wrap;gap:8px;margin-bottom:25px;display:flex}.segmented button{border:1px solid var(--border);background:#fff;border-radius:20px;padding:10px 13px;font-size:13px}.segmented button.selected{background:var(--surface-blue);border-color:var(--blue);color:var(--blue)}.moment-card{border-top:1px solid var(--border);margin-top:22px;padding:24px 0 10px;position:relative}.moment-card>span{color:var(--pink-strong);font-size:12px}.remove-moment{font-size:12px}.builder-success{text-align:center;max-width:520px;margin:auto;padding:50px 24px}.success-mark{background:var(--pink-soft);width:64px;height:64px;color:var(--pink-strong);border-radius:50%;place-items:center;margin:0 auto 25px;font-size:42px;display:grid}.builder-success h1{font:700 clamp(3rem,7vw,6rem)/.9 var(--display);letter-spacing:-.07em;margin:12px 0 34px}.builder-success>a:not(.management-link),.builder-success>button{background:var(--text);color:#fff;width:100%;margin-top:10px;padding:14px;display:block}.builder-success>button{border:1px solid var(--border);color:var(--text);background:#fff}.builder-success small{color:var(--muted);margin:22px 0 8px;display:block}.management-link{color:var(--blue);font-size:13px}@keyframes builder-step-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}@media (max-width:800px){.builder-backdrop{padding:0}.builder-shell{border:0;height:100%;min-height:100%}.builder-header{flex-basis:62px;height:62px;padding:0 18px}.builder-header-meta{gap:12px}.builder-body{display:block;overflow:auto}.builder-form{min-height:calc(100vh - 145px);overflow:visible}.builder-step{padding:34px 22px 115px}.builder-preview,.builder-body.preview-open .builder-form{display:none}.builder-body.preview-open .builder-preview{min-height:calc(100vh - 145px);padding:30px 22px;display:flex}.builder-footer{min-height:76px;padding:12px 18px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 22px #1717190f}.builder-footer>div{gap:8px}.builder-preview-toggle{display:inline-block}.builder-progress{padding:18px 22px}.builder-progress strong{font-size:1.25rem}.builder-next{padding:0 15px}.builder-skip{display:none}}@media (max-width:440px){.builder-back{font-size:0}.builder-back:first-letter{font-size:16px}.builder-preview-toggle{font-size:0}.builder-preview-toggle:after{content:"Preview";font-size:12px}.builder-footer>div{gap:6px}.builder-next{padding:0 13px}.time-picker{display:block}.time-options{margin-bottom:12px}.builder-header-meta>span{white-space:nowrap;text-overflow:ellipsis;max-width:120px;overflow:hidden}}@media (prefers-reduced-motion:reduce){.builder-step,.progress-track i,.builder-next{transition:none;animation:none}}.builder-error-slot{min-height:24px;margin-top:14px}.builder-error-slot:not(.has-error):not(.media-error){visibility:hidden}.builder-error{color:#a33145;margin:0;font-size:13px;line-height:1.45}.date-picker{min-height:310px}.date-picker-head button,.date-grid button,.time-options button{min-width:44px;min-height:44px}.time-picker{min-height:180px}.time-options{flex-wrap:wrap;gap:10px;margin:18px 0;display:flex}.time-options button{border:1px solid var(--border);color:var(--text);font-variant-numeric:tabular-nums;background:#fff;border-radius:8px;padding:0 17px;transition:background .2s,border-color .2s,color .2s,transform .2s}.time-options button:hover,.time-options button:focus-visible{border-color:var(--blue);transform:translateY(-1px)}.time-options button.selected{background:var(--text);border-color:var(--text);color:#fff}.time-custom{max-width:320px;color:var(--muted);justify-content:space-between;align-items:center;gap:18px;font-size:13px;display:flex}.time-custom input{border:1px solid var(--border);min-height:44px;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:0 12px}.media-error{margin-top:12px}.media-dropzone{text-align:center;place-content:center;gap:8px;min-height:148px;display:grid}.media-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;min-height:0;margin-top:14px;display:grid}.media-card{border:1px solid var(--border);background:#f7f8fb;border-radius:10px;min-width:0;padding:8px;position:relative;overflow:hidden}.media-frame{aspect-ratio:4/3;background:#e8eaf0;border-radius:6px;overflow:hidden}.media-frame img{object-fit:cover;width:100%;height:100%;display:block}.media-card>button{color:#fff;background:#171719d1;border-radius:50%;width:30px;height:30px;position:absolute;top:14px;right:14px}.media-card small{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);margin:8px 2px 1px;font-size:10px;display:block;overflow:hidden}.builder-note{min-height:34px}.builder-error-slot.has-error{visibility:visible}.builder-error-slot.media-error:empty{visibility:hidden}@media (max-width:440px){.time-custom{flex-direction:column;align-items:stretch;gap:8px}.time-custom input{width:100%}.media-grid{grid-template-columns:1fr 1fr}.media-card{padding:6px}.media-card>button{top:11px;right:11px}}.app-version{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.app-version-inline{color:var(--muted);letter-spacing:.06em;font-size:10px;font-weight:600}.builder-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#17171999;position:fixed;inset:0;overflow-y:auto}.builder-shell{background:var(--bg);border-radius:14px;flex-direction:column;width:min(1120px,100% - 32px);max-width:1120px;height:min(900px,100svh - 48px);min-height:min(70vh,900px);margin:24px auto;display:flex;overflow:hidden;box-shadow:0 28px 70px #1d1f2729}.builder-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:76px;padding:0 28px;display:flex}.builder-header-meta{align-items:center;gap:12px;display:flex}.builder-header-end{align-items:center;gap:14px;display:flex}.builder-close{width:36px;height:36px;color:var(--muted);background:0 0;border-radius:50%;font-size:24px;line-height:1}.builder-close:hover{background:var(--surface);color:var(--text)}.builder-select{margin:0 0 18px;display:block}.builder-select>span{justify-content:space-between;gap:12px;margin-bottom:7px;font-size:13px;font-weight:500;display:flex}.builder-select small{color:var(--muted);font-weight:400}.builder-select select{border:1px solid var(--border);width:100%;min-height:44px;color:var(--text);background:#fff;border-radius:8px;padding:0 12px}.builder-back{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:20px}.builder-back:hover{color:var(--text)}.builder-title{font-size:15px;font-weight:600}.builder-progress{color:var(--muted);font-size:13px}.builder-body{flex:1;min-height:0;padding:28px;overflow-y:auto}.builder-stages-nav{border-top:1px solid var(--border);z-index:2;background:#fffffff5;gap:12px;padding:16px 28px 28px;display:flex;position:sticky;bottom:0}.builder-stages-nav button{min-height:44px}.stage-scenario .builder-prompt{margin-bottom:24px}.scenario-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.scenario-card{border:1px solid var(--border);text-align:center;cursor:pointer;background:#fff;border-radius:12px;padding:22px;transition:border-color .2s,transform .1s}.scenario-card:hover{border-color:var(--pink-strong);transform:translateY(-2px)}.scenario-symbol{margin-bottom:8px;font-size:28px;display:block}.stage-presets .builder-prompt,.stage-presets .preset-hint{margin-bottom:8px}.preset-hint{color:var(--muted);font-size:13px}.preset-group{margin-bottom:28px}.preset-group h3{margin:0 0 12px;font-size:15px;font-weight:600}.preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.preset-card{border:1px solid var(--border);cursor:pointer;text-align:left;background:#fff;border-radius:10px;flex-direction:column;gap:4px;padding:14px;transition:border-color .2s,background .2s;display:flex}.preset-card:hover{border-color:var(--blue)}.preset-card.is-selected{border-color:var(--pink-strong);background:var(--surface-pink)}.preset-swatch{background:var(--pink-soft);border-radius:4px;width:32px;height:20px;margin-bottom:4px}.preset-bg .preset-swatch{border-radius:6px;width:100%;height:36px}.preset-card strong{font-size:13px}.preset-card small{color:var(--muted);font-size:11px}.preset-card .preset-swatch{justify-content:center;align-items:center;font-size:16px;display:flex}.builder-style-layout{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:28px;display:grid}.builder-style-editor{min-width:0}.builder-live-preview{border:1px solid var(--border);background:var(--surface-blue);border-radius:14px;min-width:0;position:sticky;top:0;overflow:hidden}.builder-live-preview-label{color:var(--muted);border-bottom:1px solid var(--border);background:#ffffffc7;padding:12px 16px;font-size:12px;font-weight:600}.builder-live-preview .story-page{min-height:520px;padding:20px}.builder-live-preview .story-sheet{max-width:100%;padding:28px 20px}.builder-save-state{min-height:20px;color:var(--muted);padding:0 28px 12px;font-size:12px}.builder-save-state.is-error{color:var(--error)}.stage-core .builder-prompt{margin-bottom:24px}.form-row{flex-wrap:wrap;gap:16px;display:flex}.form-col{flex:1;min-width:160px}.form-col label{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.magic-empty{text-align:center;color:var(--muted);padding:28px;font-size:14px}.magic-list{flex-direction:column;gap:20px;margin-bottom:28px;display:flex}.magic-card{border:1px solid var(--border);background:#fff;border-radius:10px;padding:16px}.magic-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.magic-block-icon{font-size:20px}.builder-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:12px}.builder-remove:hover{color:var(--error)}.magic-add-section{margin-top:28px}.magic-add-section .builder-sublabel{color:var(--muted);margin-bottom:10px;font-size:13px}.magic-grid{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.magic-add-btn{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:12px;font-size:14px;display:flex}.magic-add-btn:hover{background:var(--surface)}.reveal-inner{margin:12px 0}.gif-picker .builder-block-heading{margin-bottom:12px}.gif-categories{gap:8px;margin-bottom:12px;display:flex;overflow-x:auto}.gif-cat{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:6px;padding:6px 14px;font-size:12px}.gif-cat.is-active{background:var(--pink-strong);color:#fff;border-color:var(--pink-strong)}.gif-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.gif-option{border:1px solid var(--border);cursor:pointer;text-align:center;background:#fff;border-radius:8px;width:100%;padding:4px}.gif-option.is-selected{border-color:var(--pink-strong)}.gif-option img{width:40px;height:40px;margin:4px auto}.gif-option small{color:var(--muted);margin-top:2px;font-size:9px;display:block}.builder-preview-pane{justify-content:center;padding:0 16px;display:flex}.story-page{justify-content:center;min-height:100vh;padding:48px 16px;display:flex}.story-sheet{background:var(--story-bg,#fff);border-radius:16px;width:100%;max-width:420px;margin:0 auto;padding:48px 28px;box-shadow:0 16px 38px #1d1f2714}.story-sheet.story-scenario--date,.story-sheet.story-scenario--birthday{background:var(--story-bg,#fff3f6)}.story-sheet.story-scenario--apology{background:var(--story-bg,#fff8f6)}.story-sheet.story-scenario--quiz{background:var(--story-bg,#f1f4ff)}.story-sheet.story-scenario--our_story{background:var(--story-bg,#fdf8f5)}.story-block{margin-bottom:24px}.story-block-wrapper{scroll-margin-top:24px}.story-text{word-break:break-word;font-size:17px;line-height:1.65}.story-text--center{text-align:center}.story-text--right{text-align:right}.story-photo-frame{aspect-ratio:4/3;background:#e8eaf0;border-radius:12px;max-width:100%;margin:0 auto;overflow:hidden}.story-photo-frame img{object-fit:cover;width:100%;height:100%;display:block}.story-gif img{max-width:200px;margin:0 auto;display:block}.story-gif-placeholder{color:var(--muted);text-align:center;border:1px dashed var(--border);border-radius:8px;padding:24px;font-size:14px}.story-caption{color:var(--muted);text-align:center;margin-top:8px;font-size:12px;display:block}.story-datetime{border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px 16px}.story-datetime-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px}.story-datetime-value{font-size:16px;font-weight:600}.story-datetime-time{color:var(--muted);font-weight:400}.story-location{border:1px solid var(--border);background:#fff;border-radius:10px;padding:14px 16px}.story-location strong{margin-bottom:4px;font-size:16px;display:block}.story-location-link{color:var(--blue);font-size:13px}.story-location-reveal{border:1px dashed var(--border);width:100%;color:var(--text);background:#fff;border-radius:8px;padding:12px;font-size:14px}.story-memory{border:1px solid var(--border);background:#fff;border-radius:10px;padding:16px}.story-memory-date{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:12px;display:block}.story-reveal-button{border:1px solid var(--border);text-align:center;cursor:pointer;background:#fff;border-radius:10px;width:100%;padding:16px;font-size:15px}.story-reveal-button:hover{background:var(--surface)}.story-reveal-content{border:1px dashed var(--border);border-radius:10px;padding:16px}.story-reveal-action{border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;margin-top:12px;padding:10px;font-size:14px}.story-choice-label{text-align:center;margin-bottom:12px;font-size:15px;font-weight:500}.story-choice-options{flex-direction:column;gap:10px;display:flex}.story-choice-option,.response-choice{border:1px solid var(--border);text-align:center;cursor:pointer;background:#fff;border-radius:10px;padding:14px;font-size:15px;transition:border-color .2s,background .2s}.story-choice-option:hover,.response-choice:hover{border-color:var(--pink-strong);background:var(--surface-pink)}.response-choice{background:var(--story-accent,var(--pink-strong));color:#fff}.response-choice:hover{background:var(--blue)}.response-choice.is-answered,.story-choice-option.is-answered{opacity:.6;cursor:default}.story-final-question{text-align:center;letter-spacing:-.02em;font-size:clamp(1.4rem,4vw,2rem);font-weight:400;line-height:1.15}.story-quiz-question{text-align:center;margin-bottom:16px;font-size:18px;font-weight:500}.story-quiz-choices{flex-direction:column;gap:10px;display:flex}.story-quiz-choices.is-true-false{flex-direction:row}.story-quiz-choices.is-picture{flex-wrap:wrap}.quiz-choice{border:1px solid var(--border);text-align:center;cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;gap:8px;padding:14px;display:flex}.quiz-choice-img{object-fit:cover;border-radius:6px;width:60px;height:60px;margin:0 auto}.story-quiz-reveal{border:1px dashed var(--border);background:var(--surface);text-align:center;border-radius:10px;padding:16px}.story-answered{text-align:center;margin-top:16px}.story-response-label{color:var(--muted);text-align:center;margin-bottom:12px;font-size:14px}.story-effect{pointer-events:none;z-index:200;position:fixed;inset:0;overflow:hidden}.effect-heart,.effect-sparkle,.effect-confetti{opacity:0;font-size:16px;animation:linear forwards fall;position:absolute}.effect-heart{animation-name:fall-heart}.effect-sparkle{font-size:18px;animation-name:fall-sparkle}.effect-confetti{width:8px;height:12px;font-size:0;animation-name:fall-confetti}@keyframes fall-heart{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(360deg)}}@keyframes fall-sparkle{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(100vh)scale(.5)}}@keyframes fall-confetti{0%{transform:translateY(0)rotate(0)}to{transform:translateY(100vh)rotate(720deg)}}.effect-kiss{z-index:200;font-size:48px;animation:2s ease-out forwards kiss-pop;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}@keyframes kiss-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}30%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}to{opacity:0;transform:translate(-50%,-50%)scale(0)}}.effect-glow{z-index:200;background:radial-gradient(circle,#fd90ac26 0%,#fd90ac00 70%);animation:2.5s ease-in-out forwards glow-fade;position:fixed;inset:0}@keyframes glow-fade{0%{opacity:0}20%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.effect-heart,.effect-sparkle,.effect-confetti,.effect-kiss,.effect-glow{opacity:0;animation:none}}.builder-success{text-align:center;padding:48px 28px}.success-mark{color:var(--pink-strong);margin-bottom:12px;font-size:42px;display:block}.builder-success h1{margin:0 0 20px;font-size:28px}.builder-success h1 em{color:var(--pink-strong)}.builder-success a,.management-link{color:var(--blue);margin:12px 0;font-size:14px;display:block}.builder-success button{margin:8px 0}.builder-success small{color:var(--muted);margin-top:16px;font-size:12px;display:block}@media (max-width:720px){.story-sheet{border-radius:0;margin:0;padding:32px 20px}.scenario-grid,.preset-grid,.magic-grid{grid-template-columns:1fr}.gif-grid{grid-template-columns:repeat(2,1fr)}.story-quiz-choices.is-true-false{flex-direction:column}.builder-shell{border-radius:0;width:100%;height:100svh;min-height:100svh;margin:0}.builder-backdrop{padding:0}.builder-style-layout{grid-template-columns:1fr;gap:20px}.builder-live-preview{order:-1;position:static}.builder-live-preview .story-page{min-height:360px;padding:14px}.builder-live-preview .story-sheet{padding:22px 16px}}@media (max-width:480px){.builder-header{height:64px;padding:0 18px}.builder-body{padding:22px 18px}.builder-stages-nav{flex-wrap:wrap;gap:8px}.builder-stages-nav button{flex:1;min-height:44px;font-size:14px}.story-sheet{padding:28px 18px}.story-block{margin-bottom:20px}.story-text{font-size:16px;line-height:1.6}.story-final-question{font-size:1.2rem}.preset-card strong{font-size:13px}.preset-card small{font-size:10px}.gif-grid{grid-template-columns:repeat(2,1fr)}.scenario-card{padding:18px}.scenario-symbol{font-size:24px}}@media (max-width:360px){.builder-body{padding:18px 14px}.story-sheet{padding:24px 14px}.builder-header-meta{gap:8px}.builder-title{font-size:13px}.builder-progress{font-size:12px}.app-version-inline{font-size:9px}.preset-hint{font-size:12px}}@media (max-width:420px){.form-row{display:block}.form-col{min-width:0;margin-bottom:20px}.builder-stages-nav{padding-inline:14px}.builder-stages-nav button{min-width:0}}.builder-backdrop{padding:16px;overflow:hidden}.builder-shell{width:min(1280px,100%);height:min(920px,100%);margin:auto}.builder-body:has(.builder-style-layout){flex-direction:column;min-height:0;padding:24px 28px 0;display:flex;overflow:hidden}.builder-body:has(.builder-style-layout) .builder-style-layout{flex:1;grid-template-columns:minmax(380px,.82fr) minmax(0,1.18fr);align-items:stretch;gap:clamp(28px,4vw,56px);width:100%;min-height:0;display:grid}.builder-body:has(.builder-style-layout) .builder-style-editor{scrollbar-gutter:stable;min-width:0;min-height:0;padding:4px 10px 28px 0;overflow-y:auto}.builder-body:has(.builder-style-layout) .builder-live-preview{background:var(--surface-blue);border:1px solid #6174d329;border-radius:18px;flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 42px #1d1f2714}.builder-body:has(.builder-style-layout) .builder-live-preview-label{color:var(--text);letter-spacing:.01em;background:#ffffffbd;border-bottom:1px solid #6174d324;flex:none;padding:14px 18px;font-size:12px;font-weight:700}.builder-body:has(.builder-style-layout) .builder-live-preview>.story-page{scrollbar-gutter:stable;flex:1;align-items:flex-start;width:100%;min-height:0;padding:clamp(22px,3vw,42px);overflow:hidden auto}.builder-body:has(.builder-style-layout) .builder-live-preview>.story-page>.story-sheet{flex:none;width:min(100%,500px);max-width:500px;min-height:0;margin:0 auto;padding:clamp(30px,4vw,52px) clamp(22px,4vw,44px)}.builder-body:has(.builder-style-layout) .builder-stages-nav{flex:none;margin-inline:-28px;padding:16px 28px 20px}.builder-body:has(.builder-style-layout) .builder-save-state{flex:none;padding-inline:0}.builder-body:has(.builder-style-layout) .preset-group{margin-bottom:30px}.builder-body:has(.builder-style-layout) .preset-card{background:#ffffffe0;border-radius:14px;min-height:116px;padding:16px}.builder-body:has(.builder-style-layout) .preset-card.is-selected{border-width:2px;padding:15px;box-shadow:0 8px 18px #fd90ac1f}.builder-body:has(.builder-style-layout) .preset-card strong{font-size:14px}.builder-body:has(.builder-style-layout) .preset-card small{font-size:12px;line-height:1.45}@media (max-width:1100px) and (min-width:721px){.builder-body:has(.builder-style-layout) .builder-style-layout{grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);gap:24px}.builder-body:has(.builder-style-layout) .builder-live-preview>.story-page{padding:20px}}@media (max-width:720px){.builder-backdrop{padding:0;overflow-y:auto}.builder-shell{height:100%;min-height:100%}.builder-body:has(.builder-style-layout){padding:18px 18px 0;display:block;overflow-y:auto}.builder-body:has(.builder-style-layout) .builder-style-layout{flex-direction:column;gap:18px;min-height:auto;display:flex}.builder-body:has(.builder-style-layout) .builder-live-preview{order:-1;height:min(62svh,500px);min-height:380px}.builder-body:has(.builder-style-layout) .builder-live-preview>.story-page{padding:18px}.builder-body:has(.builder-style-layout) .builder-live-preview>.story-page>.story-sheet{min-height:0;padding:28px 20px}.builder-body:has(.builder-style-layout) .builder-style-editor{padding:0 0 24px;overflow:visible}.builder-body:has(.builder-style-layout) .builder-stages-nav{margin-inline:-18px;padding-inline:18px}}
:root{--ink:#171719;--text-secondary:#62636a;--canvas:#fff;--field-surface:#f5f6f8;--action-fill:#fd90ac;--action-hover:#f1b7c3;--focus-ring:#6174d3;--space-xs:8px;--space-sm:16px;--space-md:24px;--space-lg:40px;--space-xl:64px;--radius-control:12px;--radius-scene:16px;--scene-shadow:0 24px 70px #231e2b14;--muted:#62636a}input,textarea,select{caret-color:var(--focus-ring)}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}input::placeholder,textarea::placeholder{color:#6e6f76;opacity:1}select{font:inherit;color:inherit;max-width:100%}.action{border-radius:var(--radius-control);letter-spacing:0;justify-content:center;align-items:center;min-height:50px;padding:12px 22px;font-size:15px;font-weight:500;display:inline-flex}.action-primary{background:var(--action-fill);color:var(--ink);border:0}.action-primary:hover{background:var(--action-hover);color:var(--ink);transform:none}.action-primary:disabled{color:#62636a;background:#e4e5e8}.action-secondary{background:var(--field-surface);color:var(--ink);border:0}.quiet-button{color:var(--text-secondary);background:0 0;min-width:44px;min-height:44px;padding:10px;font-size:14px}.quiet-button:hover{color:var(--ink);background:var(--field-surface);border-radius:8px}.quiet-button:disabled{opacity:.45}.text-action{min-height:44px;color:var(--focus-ring);font-size:14px;line-height:1.5}.guided-backdrop{z-index:30;background:var(--canvas);position:fixed;inset:0}.guided-shell{outline:0;flex-direction:column;height:100dvh;display:flex}.guided-header{border-bottom:1px solid var(--border);background:#fff;flex:0 0 76px;align-items:center;gap:14px;min-height:76px;padding:0 28px;display:flex}.guided-brand{letter-spacing:-.04em;font-size:21px;font-weight:700}.guided-brand span{color:#b44364}.guided-progress{color:var(--text-secondary);flex:1;justify-content:center;align-items:center;gap:30px;font-size:13px;display:flex}.guided-progress span[aria-current]{color:var(--ink);font-weight:700;position:relative}.guided-progress span[aria-current]:after{content:"";background:var(--action-fill);height:3px;position:absolute;bottom:-27px;left:0;right:0}.guided-stage-name{display:none}.guided-body{flex:1;min-height:0;overflow:auto}.guided-workspace{grid-template-columns:minmax(350px,5fr) minmax(0,7fr);max-width:1600px;min-height:100%;margin:auto;display:grid}.guided-editor{background:#fff;flex-direction:column;min-width:0;display:flex}.guided-editor-content{flex:1;padding:48px clamp(28px,4vw,64px) 24px}.guided-core h1,.theme-editor h1,.moment-editor h1,.review-copy h1,.guided-loading h1{letter-spacing:-.035em;text-wrap:balance;margin:0 0 20px;font-size:clamp(30px,3vw,44px);font-weight:500;line-height:1.12}.step-count{color:var(--text-secondary);margin:0 0 24px;font-size:12px}.step-description,.review-copy>p{color:var(--text-secondary);max-width:44ch;margin:0 0 32px;font-size:15px;line-height:1.6}.guided-footer{z-index:2;background:#fff;padding:16px clamp(28px,4vw,64px) 20px;position:sticky;bottom:0}.guided-footer-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.save-feedback{color:var(--text-secondary);text-align:right;min-height:17px;margin-top:10px;font-size:11px}.guided-footer .builder-error{margin-bottom:16px}.guided-preview{background:var(--field-surface);flex-direction:column;min-width:0;height:calc(100dvh - 76px);padding:28px clamp(24px,5vw,76px) 32px;display:flex;position:sticky;top:0}.preview-heading{color:var(--text-secondary);justify-content:space-between;margin-bottom:20px;font-size:12px;display:flex}.guided-preview .story-reader{border-radius:var(--radius-scene);min-height:0;box-shadow:var(--scene-shadow);flex:1;overflow:auto}.mobile-view-switch,.mobile-return{display:none}.guided-loading{text-align:center;padding:80px 32px}.guided-editor .builder-field{margin:24px 0;display:block}.guided-editor .builder-field>span{justify-content:space-between;gap:10px;margin-bottom:10px;font-size:13px;display:flex}.guided-editor .builder-field small{color:var(--text-secondary);font-size:11px}.guided-editor input:not([type=checkbox]),.guided-editor textarea,.guided-editor select{border-radius:var(--radius-control);background:var(--field-surface);width:100%;min-height:50px;color:var(--ink);border:1px solid #0000;max-width:100%;padding:15px 16px;font-size:16px;display:block}.guided-editor textarea{resize:vertical;min-height:170px;line-height:1.6}.guided-editor .builder-field:focus-within>span{color:var(--focus-ring)}.guided-editor .builder-select{gap:10px;margin:24px 0;font-size:13px;display:grid}.guided-editor .choice-row{border:0;gap:8px;margin-top:8px}.guided-editor .builder-block-heading{justify-content:space-between;gap:12px;font-size:13px;display:flex}.guided-editor .builder-block-heading small{color:var(--text-secondary);font-size:11px}.guided-editor .builder-add{min-height:44px;color:var(--focus-ring);background:0 0;border:0;margin-top:8px;padding:8px 0;font-size:13px}.guided-editor .remove-choice{min-width:44px;min-height:44px}.more-details{margin-top:24px;font-size:14px}.more-details summary{cursor:pointer;min-height:44px;color:var(--text-secondary);padding:10px 0}.mood-options{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.mood-options button{background:var(--field-surface);min-height:46px;color:var(--ink);border-radius:10px;padding:10px 12px;font-size:13px}.mood-options button[aria-pressed=true]{background:var(--surface-blue);box-shadow:inset 0 0 0 2px var(--focus-ring)}.invitation-when{gap:24px;display:grid}.guided-editor .date-picker{background:var(--field-surface);border:0;border-radius:12px;min-height:0;padding:18px}.guided-editor .date-grid{gap:2px}.guided-editor .date-grid button,.guided-editor .date-empty{aspect-ratio:1;min-width:0;min-height:38px}.guided-editor .date-grid button.selected{background:var(--action-fill);color:var(--ink)}.guided-editor .date-picker-head button{color:var(--ink)}.guided-editor .date-weekdays{margin-top:14px}.guided-editor .time-picker{min-height:0;display:block}.guided-editor .time-custom{flex-direction:row;align-items:center;max-width:none;display:flex}.guided-editor .time-custom input{width:auto;min-width:135px}.guided-editor .time-options{margin:12px 0}.guided-editor .time-options button{background:var(--field-surface);color:var(--ink);border:0;flex:1}.guided-editor .time-options button.selected{background:var(--surface-blue);box-shadow:inset 0 0 0 2px var(--focus-ring)}.occasion{max-width:1040px;margin:auto;padding:60px 48px 40px}.occasion h1{letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(44px,5vw,72px);font-weight:500;line-height:1.04}.occasion h1 span{color:#b44364}.occasion>p{color:var(--text-secondary);margin:0 0 36px}.occasion-list{grid-template-columns:1fr 1fr;gap:0 40px;display:grid}.occasion-option{text-align:left;border-top:1px solid var(--border);color:var(--ink);background:0 0;align-items:center;gap:20px;min-width:0;padding:26px 0;display:flex}.occasion-option strong{letter-spacing:-.025em;font-size:22px;font-weight:500;line-height:1.25;display:block}.occasion-option small{color:var(--text-secondary);margin-top:7px;font-size:13px;line-height:1.5;display:block}.occasion-number{color:#b44364;font-size:12px}.occasion-arrow{color:var(--text-secondary);margin-left:auto;font-size:24px}.occasion-option:hover strong,.occasion-option:hover .occasion-arrow{color:#b44364}.occasion-note{color:var(--text-secondary);margin-top:36px;font-size:12px;display:block}.theme-grid{grid-template-columns:1fr 1fr;gap:18px 14px;display:grid}.theme-option{text-align:left;color:var(--ink);background:0 0;border-radius:12px;padding:0}.theme-sample{text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:162px;padding:20px 14px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #e4e5e8}.theme-sample strong{letter-spacing:-.025em;z-index:1;max-width:12ch;font-size:19px;line-height:1.12}.theme-sample-cta{background:var(--story-accent);z-index:1;border-radius:6px;padding:6px 16px;font-size:10px}.theme-caption{justify-content:space-between;align-items:center;padding:10px 2px;font-size:12px;display:flex}.theme-option[aria-pressed=true] .theme-sample{box-shadow:inset 0 0 0 2px var(--focus-ring)}.theme-romantic .theme-sample strong{font-size:23px;font-weight:500}.theme-minimal .theme-sample{text-align:left;align-items:flex-start}.theme-minimal .theme-sample-cta{color:#fff;background:#171719;border-radius:0}.theme-playful .theme-sample strong{font-size:22px;font-weight:700;transform:rotate(-5deg)}.theme-surprise .theme-sample{background:#e9e8f4!important}.theme-surprise .theme-sample strong{max-width:8ch}.theme-celebration .theme-ornament{border:12px dotted #fd90ac;border-radius:50%;width:85px;height:85px;position:absolute;top:-24px;right:-28px}.check-option{align-items:center;gap:10px;min-height:44px;display:flex}.check-option input{width:20px;height:20px;accent-color:var(--focus-ring)}.moment-picker{grid-template-columns:1fr 1fr;gap:0 24px;display:grid}.moment-picker button{text-align:left;border-top:1px solid var(--border);min-height:116px;color:var(--ink);background:0 0;padding:20px 24px 20px 0;position:relative}.moment-picker strong{font-size:18px;font-weight:500}.moment-picker small{color:var(--text-secondary);margin-top:6px;font-size:12px;line-height:1.4;display:block}.moment-picker button>span{color:#b44364;font-size:22px;position:absolute;top:18px;right:0}.moment-picker button:hover strong{color:#b44364}.moment-actions,.chapter-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.added-moments{margin-bottom:32px}.added-moments button{background:var(--field-surface);text-align:left;border-radius:8px;justify-content:space-between;gap:16px;width:100%;min-height:48px;margin-bottom:8px;padding:12px 16px;font-size:13px;display:flex}.added-moments button span:last-child{color:var(--focus-ring)}.chapter{border-top:1px solid var(--border);padding:20px 0}.chapter h2{font-size:18px;font-weight:500}.guided-editor .media-dropzone{background:var(--field-surface);border:1px dashed #b6b7be;border-radius:12px;min-height:140px}.guided-editor .media-grid{grid-template-columns:1fr}.guided-editor .media-frame{aspect-ratio:4/3}.guided-editor .media-frame img{height:100%}.guided-editor .media-card{background:0 0;border:0;padding:0}.guided-editor .media-card small{font-size:12px}.guided-editor .builder-note{font-size:12px;line-height:1.5}.gif-categories{gap:8px;padding:4px;display:flex;overflow:auto}.gif-categories button{white-space:nowrap;background:var(--field-surface);border-radius:8px;min-height:44px;padding:10px;font-size:12px}.gif-categories .is-active{background:var(--surface-blue);color:var(--focus-ring)}.gif-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.gif-option{background:var(--field-surface);color:var(--ink);border-radius:12px;padding:10px}.gif-option img{object-fit:contain;width:100%;height:100px}.gif-option small{font-size:11px}.gif-option.is-selected{box-shadow:inset 0 0 0 2px var(--focus-ring)}.quiz-picture-editor{grid-template-columns:1fr 1fr;gap:12px;display:grid}.quiz-picture-editor img{object-fit:contain;width:100%;height:100px;margin-top:12px}.surprise-content{border-top:1px solid var(--border);margin:24px 0;padding-top:16px}.media-warning{background:var(--field-surface);border-radius:12px;padding:16px;font-size:13px}.review-copy{padding-top:50px}.review-note{margin-top:36px!important}.sent-story{text-align:center;max-width:580px;margin:0 auto;padding:70px 28px}.sent-mark{background:var(--surface-pink);color:#b44364;border-radius:50%;place-items:center;width:64px;height:64px;margin-bottom:28px;font-size:26px;display:inline-grid}.sent-story h1{letter-spacing:-.035em;margin:0 0 24px;font-size:clamp(36px,4vw,58px);font-weight:500;line-height:1.08}.sent-story>p{color:var(--text-secondary);margin-bottom:28px}.sent-story>.action{width:100%;max-width:330px}.sent-open{color:var(--focus-ring);min-height:44px;margin-top:20px;display:block}.sent-return{border-top:1px solid var(--border);color:var(--text-secondary);margin-top:36px;padding-top:28px;font-size:14px}.sent-return h2{color:var(--ink);font-size:18px;font-weight:500}.sent-return a{color:var(--focus-ring);text-underline-offset:4px;text-decoration:underline}.story-page.story-reader{width:100%;max-width:none;min-height:100svh;color:var(--ink);overflow-wrap:anywhere;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:32px clamp(24px,5vw,72px);display:flex;position:relative}.reader-top{color:#62636a;justify-content:space-between;gap:16px;width:100%;max-width:680px;margin:0 auto;font-size:12px;display:flex}.reader-progress{gap:5px;width:100%;max-width:680px;margin:20px auto 0;display:flex}.reader-progress span{background:#1717191a;border-radius:3px;flex:1;height:3px}.reader-progress .is-read{background:var(--story-accent)}.reader-scene{outline:0;flex-direction:column;flex:1;justify-content:center;width:100%;max-width:620px;margin:auto;padding:50px 0;animation:.35s ease-out scene-arrive;display:flex}.reader-scene h2{letter-spacing:-.035em;text-wrap:balance;margin:0 0 32px;font-size:clamp(28px,3.2vw,46px);font-weight:500;line-height:1.16}.reader-block{text-align:center}.reader-text{white-space:pre-wrap;letter-spacing:-.025em;margin:20px 0;font-size:clamp(24px,2.8vw,40px);font-weight:500;line-height:1.45}.reader-block-text:first-child:not(:only-child) .reader-text{letter-spacing:0;color:#62636a;margin-bottom:24px;font-size:14px;font-weight:400}.reader-text.align-left{text-align:left}.reader-navigation{justify-content:center;align-items:center;gap:18px;width:100%;max-width:620px;margin:0 auto;display:flex}.reader-next{background:var(--story-accent);color:var(--ink);border-radius:12px;justify-content:center;align-items:center;gap:28px;min-height:52px;padding:16px 24px;font-size:15px;line-height:1.4;display:inline-flex}.reader-next:hover{filter:brightness(.97)}.reader-back{color:#62636a;background:0 0;min-width:44px;min-height:44px;padding:12px}.reader-preview-note{text-align:center;color:#62636a;margin-top:20px;font-size:10px}.reader-date p{color:#62636a;margin:0 0 18px;font-size:15px}.reader-date strong{letter-spacing:-.04em;font-size:clamp(38px,4.5vw,68px);font-weight:500;line-height:1.1;display:block}.reader-date>span{margin-top:16px;font-size:28px;display:block}.reader-location{margin-top:32px;font-size:15px}.reader-location strong{font-size:20px;font-weight:500}.reader-location p{color:#62636a;margin:8px 0}.reader-location a{color:#4255ae;text-underline-offset:4px;padding:12px;text-decoration:underline;display:inline-block}.reader-choices{gap:12px;display:grid}.reader-choices button{text-align:left;min-height:58px;color:var(--ink);background:#ffffffd9;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;font-size:16px;line-height:1.4;display:flex;box-shadow:inset 0 0 0 1px #17171921}.reader-choices button:hover:not(:disabled){background:var(--story-accent-soft)}.reader-choices button.is-selected{background:var(--story-accent-soft);box-shadow:inset 0 0 0 2px var(--story-accent)}.reader-choices button:disabled{opacity:.68}.reader-choices button.is-selected:disabled{opacity:1}.reader-feedback,.reader-reaction{text-align:center;margin-top:24px;font-size:15px;line-height:1.6}.reader-feedback p{margin:10px 0}.reader-error{color:#a33145;text-align:center;font-size:14px}.reader-memory>span{color:#62636a;font-size:13px}.reader-memory p{white-space:pre-wrap;letter-spacing:-.025em;font-size:clamp(24px,2.8vw,38px);line-height:1.45}.reader-photo,.reader-gif{margin:0}.reader-photo img{object-fit:cover;aspect-ratio:4/3;border-radius:12px;width:100%}.reader-photo.crop-square img{aspect-ratio:1}.reader-photo.crop-portrait img{aspect-ratio:3/4;max-height:540px}.reader-photo.crop-original img{aspect-ratio:auto;object-fit:contain;max-height:540px}.reader-photo figcaption,.reader-gif figcaption{margin-top:18px;font-size:14px;line-height:1.5}.reader-gif img{object-fit:contain;width:100%;max-height:300px;margin:auto}.reader-placeholder{color:#62636a;font-size:18px}.picture-choices{grid-template-columns:1fr 1fr}.picture-choices button{text-align:center;flex-direction:column;padding:12px}.picture-choices img{object-fit:contain;border-radius:8px;width:100%;height:130px}.reveal-seal{background:var(--story-accent-soft);border-radius:50%;place-items:center;width:68px;height:68px;margin-bottom:30px;font-size:32px;display:inline-grid}.reader-revealed{animation:.4s ease-out scene-arrive}.reader-ending{text-align:center}.reader-ending>p{color:#62636a;font-size:15px}.reader-ending .reader-next{margin-top:24px}.story-style--minimal .reader-next{background:var(--ink);color:#fff;border-radius:4px}.story-style--minimal .reader-block{text-align:left}.story-style--minimal .reader-text{font-weight:400}.story-style--playful .reader-scene h2{font-weight:700}.story-style--celebration .reader-date strong{color:#b44364}.story-motion--minimal .reader-scene{animation:none}@keyframes scene-arrive{0%{filter:blur(2px);transform:translateY(10px)}to{filter:none;transform:none}}@media (min-width:1500px){.guided-workspace{border-inline:1px solid var(--border)}}@media (max-width:1100px){.guided-workspace{grid-template-columns:minmax(330px,1fr) minmax(0,1.15fr)}.guided-editor-content{padding:36px 28px 20px}.guided-footer{padding:16px 28px}.guided-preview{padding:24px}.guided-progress{gap:18px}.guided-header{gap:10px;padding:0 18px}.guided-core h1,.theme-editor h1,.moment-editor h1{font-size:34px}.theme-sample{height:145px}.story-page.story-reader{padding:24px}.reader-scene{padding:32px 0}}@media (max-width:820px){.guided-header{flex-basis:64px;gap:8px;min-height:64px;padding:0 14px}.guided-progress{display:none}.guided-stage-name{text-align:right;color:var(--text-secondary);flex:1;font-size:12px;display:block}.guided-header .app-version-inline{display:none}.guided-brand{font-size:19px}.mobile-view-switch{border-bottom:1px solid var(--border);z-index:4;background:#fff;justify-content:center;gap:24px;padding:8px 20px;display:flex;position:sticky;top:0}.mobile-view-switch button{color:var(--text-secondary);background:0 0;border-bottom:2px solid #0000;min-height:40px;font-size:13px}.mobile-view-switch button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--action-fill)}.guided-workspace{min-height:calc(100% - 57px);display:block}.guided-editor{max-width:580px;min-height:calc(100dvh - 121px);margin:auto}.guided-editor-content{padding:36px 24px 20px}.guided-core h1,.theme-editor h1,.moment-editor h1{font-size:34px}.guided-preview{background:var(--field-surface);height:auto;min-height:calc(100dvh - 121px);padding:20px;display:none;position:static}.show-preview .guided-editor{display:none}.show-preview .guided-preview{display:flex}.guided-preview .story-reader{min-height:calc(100dvh - 255px);box-shadow:none;overflow:visible}.preview-heading{margin-bottom:12px}.mobile-return{margin-top:20px;display:flex}.guided-footer{padding:14px 24px 18px}.occasion{max-width:650px;padding:40px 28px}.occasion-list{grid-template-columns:1fr}.occasion h1{font-size:52px}.occasion h1 br{display:none}.occasion-option{padding:22px 0}.occasion-option strong{font-size:21px}.occasion>p{margin-bottom:28px}.occasion-note{margin-top:24px}.review-copy{padding-top:16px}.review-workspace .guided-editor-content{flex:0}.review-workspace .guided-footer{margin-top:auto}.reader-scene h2{font-size:34px}.reader-text{font-size:28px}.reader-date strong{font-size:48px}.reader-memory p{font-size:28px}.sent-story{padding-top:48px}.guided-editor .date-grid button{min-height:40px}}@media (max-width:390px){.guided-core h1,.theme-editor h1,.moment-editor h1{font-size:30px}.guided-editor-content{padding:28px 20px 16px}.guided-footer{padding-inline:20px}.guided-editor .date-picker{padding:12px}.guided-editor .date-grid button{min-height:36px}.guided-preview{padding:16px}.theme-sample{height:140px}.theme-sample strong{font-size:18px}.guided-footer-actions{gap:8px}.guided-footer .action{padding-inline:16px}.occasion-option strong{font-size:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reader-scene,.reader-revealed{animation:none}.story-reader *{transition:none!important;animation:none!important}.story-effect{display:none}}.love-hero{grid-template-columns:1fr 1fr;align-items:center;gap:72px;padding-top:144px;padding-bottom:80px;display:grid}.love-hero-copy h1.love-brand{letter-spacing:-.065em;margin:0 0 12px;font-size:clamp(56px,7.4vw,108px);font-weight:700;line-height:.95}.love-brand span{color:var(--pink-strong)}.love-hero-tagline{letter-spacing:-.02em;color:var(--text-secondary);margin:0 0 26px;font-size:clamp(16px,1.55vw,20px);font-weight:500}.love-hero-lede{max-width:40ch;color:var(--text-secondary);margin-bottom:30px;font-size:17px;line-height:1.65}.love-hero-note{color:var(--text-secondary);margin-top:18px;font-size:12px}.example-heading{color:var(--text-secondary);justify-content:space-between;gap:12px;margin-bottom:16px;font-size:12px;display:flex}.love-hero-example .story-reader{min-height:550px;box-shadow:var(--scene-shadow);border-radius:16px;padding:28px 32px}.love-hero-example .reader-text{text-align:center;font-size:34px}.love-hero-example .reader-scene{padding:40px 0}.love-hero-example .reader-scene h2{font-size:32px}.love-hero-example .reader-date strong{font-size:42px}.love-hero-example .reader-next{min-width:200px}.love-occasions{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:72px;padding-top:80px;padding-bottom:100px;display:grid}.love-occasions h2,.love-how h2{letter-spacing:-.035em;margin:0 0 20px;font-size:clamp(32px,3.4vw,48px);font-weight:500;line-height:1.16}.love-occasions p{color:var(--text-secondary);font-size:15px}.love-occasions-list button{text-align:left;border-bottom:1px solid var(--border);width:100%;color:var(--ink);background:0 0;justify-content:space-between;align-items:center;padding:24px 0;display:flex}.love-occasions-list button:first-child{padding-top:0}.love-occasions-list strong{letter-spacing:-.02em;font-size:22px;font-weight:500;display:block}.love-occasions-list small{color:var(--text-secondary);margin-top:8px;font-size:13px;display:block}.love-occasions-list button>span:last-child{color:#b44364;font-size:26px}.love-occasions-list button:hover strong{color:#b44364}.love-how{padding-block:50px 100px}.love-how ol{counter-reset:steps;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:48px;padding:0;list-style:none;display:grid}.love-how li{counter-increment:steps}.love-how li:before{content:"0" counter(steps);color:#b44364;margin-bottom:24px;font-size:13px;display:block}.love-how strong{font-size:20px;font-weight:500}.love-how p{color:var(--text-secondary);font-size:14px;line-height:1.7}.love-hero .action-primary,.love-closing .action-primary{background:var(--ink);color:#fff}.love-hero .action-primary:hover,.love-closing .action-primary:hover{background:var(--focus-ring);color:#fff}.love-closing{text-align:center;background:var(--field-surface);padding:90px 24px}.love-closing h2{letter-spacing:-.035em;margin:0 0 36px;font-size:clamp(36px,5vw,64px);font-weight:500;line-height:1.1}.site-header .header-create{background:var(--field-surface);border-radius:10px;min-height:44px;border:0!important}.site-header .header-create:hover{background:var(--surface-pink);color:var(--ink)!important}.heart-mark{color:#b44364}.return-story{z-index:25;background:#fff;padding:40px max(24px,50vw - 360px);position:fixed;inset:0;overflow:auto}.return-story h2{letter-spacing:-.03em;margin-top:70px;font-size:clamp(32px,5vw,56px);font-weight:500;line-height:1.15}.return-story p{color:var(--text-secondary);margin-bottom:32px;line-height:1.7}.toast{z-index:60}.story-home{background:#fff;min-height:100svh;padding:32px max(24px,50vw - 560px) 80px}.story-home-top{justify-content:space-between;align-items:center;gap:24px;display:flex}.story-home-top>span{color:var(--text-secondary);font-size:12px}.story-home-layout{grid-template-columns:1fr 1.1fr;gap:100px;margin-top:100px;display:grid}.story-home-intro h1{letter-spacing:-.035em;overflow-wrap:anywhere;margin:0 0 18px;font-size:clamp(42px,5vw,70px);font-weight:500;line-height:1.06}.story-home-intro>p{color:var(--text-secondary);font-size:15px;line-height:1.6}.story-home-intro>.btn{background:var(--action-fill);min-height:52px;color:var(--ink);border-radius:12px;justify-content:center;align-items:center;width:100%;margin:36px 0 12px;font-size:15px;display:flex}.story-home-open{min-height:44px;color:var(--focus-ring);margin-bottom:24px;padding:10px 0;display:block}.story-home-privacy{max-width:35ch;margin-top:40px;font-size:12px!important}.story-home-responses h2{letter-spacing:-.025em;margin:0 0 28px;font-size:25px;font-weight:500}.story-home .response-note{background:var(--field-surface);border:0;border-radius:12px;margin:12px 0;padding:24px;display:block}.response-note b{overflow-wrap:anywhere;font-size:18px;font-weight:500;display:block}.response-note time{color:var(--text-secondary);margin-top:16px;font-size:12px;display:block}.response-empty{padding:28px 0}.response-empty>span{color:#b44364;margin-bottom:28px;font-size:40px;display:block}.response-empty h3{font-size:22px;font-weight:500;line-height:1.3}.response-empty p{color:var(--text-secondary);max-width:40ch;font-size:14px;line-height:1.7}@media (max-width:1100px){.love-hero,.love-occasions{gap:40px}.love-hero-example .story-reader{min-height:510px;padding:24px}.love-hero-example .reader-text{font-size:28px}.story-home-layout{gap:50px}}@media (max-width:820px){.love-hero{grid-template-columns:1fr;gap:44px;max-width:580px;padding-top:120px}.love-hero-copy h1.love-brand{font-size:52px}.love-hero-tagline{font-size:17px}.love-hero-example .story-reader{min-height:500px}.love-occasions{grid-template-columns:1fr;gap:32px;max-width:580px;padding-block:56px}.love-how{padding-block:56px}.love-how ol{grid-template-columns:1fr;gap:24px;margin-top:32px}.love-how li:before{margin-bottom:12px}.story-home-layout{grid-template-columns:1fr;gap:50px;margin-top:56px}.story-home-intro>.btn{max-width:360px}.story-home-top{gap:12px}}@media (max-width:430px){.love-hero{padding-top:110px;padding-bottom:48px}.love-hero-copy h1.love-brand{font-size:44px}.love-hero-lede{font-size:16px}.love-hero .action{width:100%}.love-hero-note{max-width:30ch}.love-hero-tagline{font-size:15px}.love-hero-example .reader-text{font-size:28px}.love-hero-example .story-reader{min-height:500px;padding:24px}.example-heading{font-size:11px}.love-occasions h2{font-size:34px}.love-occasions-list strong{font-size:20px}.love-occasions-list small{max-width:30ch}.story-home-top>span{font-size:11px}}.guided-editor .date-grid button,.guided-editor .date-empty{aspect-ratio:auto;height:40px;min-height:40px}.guided-editor .date-picker-head strong{font-size:15px}.guided-editor .date-weekdays{font-size:12px}.guided-editor .date-grid button{font-size:14px}.guided-core .builder-field textarea{min-height:150px}.guided-preview .reader-text{max-width:20ch;margin-inline:auto}.story-style--surprise .reader-next{color:#fff;background:#d72967}.theme-surprise .theme-sample-cta,.theme-minimal .theme-sample-cta{color:#fff}.guided-editor .time-custom{gap:12px}.guided-preview .story-page.story-reader{flex:1;height:auto;min-height:0;overflow:auto}.guided-preview .reader-text.align-left{text-align:left}.reader-text{max-width:20ch;margin-inline:auto}.occasion h1{text-wrap:balance}.guided-editor input:focus,.guided-editor textarea:focus,.guided-editor .builder-field textarea{box-shadow:none}.reader-choices button:disabled{opacity:1;color:#62636a}.reader-choices button.is-selected:disabled{color:var(--ink)}@media (max-width:820px){.guided-preview .story-page.story-reader{min-height:calc(100dvh - 255px);overflow:visible}.occasion h1{font-size:46px}.occasion h1 br{display:block}}@media (min-width:821px) and (max-height:920px){.love-hero{gap:56px;padding-top:116px;padding-bottom:64px}.love-hero-example .story-reader{min-height:500px}.love-hero-example .reader-scene{padding:32px 0}}@media (min-width:821px) and (max-height:840px){.love-hero{gap:48px;padding-top:100px;padding-bottom:56px}.love-hero-example .story-reader{min-height:456px;padding:24px 28px}.love-hero-copy h1.love-brand{font-size:clamp(52px,6.2vw,88px)}}.example-heading{flex-wrap:wrap;row-gap:4px}.example-heading span{white-space:nowrap}
:root{--motion-feedback:.18s;--motion-reveal:.36s;--polish-shadow:0 16px 40px #231e2b13}.action,.quiet-button,.text-action,.reader-next,.reader-back,.reader-choices button{transition:background-color var(--motion-feedback) var(--ease-standard), color var(--motion-feedback) var(--ease-standard), box-shadow var(--motion-feedback) var(--ease-standard), border-color var(--motion-feedback) var(--ease-standard), transform var(--motion-feedback) var(--ease-out), opacity var(--motion-feedback) var(--ease-standard)}.action-primary:hover:not(:disabled),.reader-next:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px #231e2b1f}.action-primary:active:not(:disabled),.reader-next:active:not(:disabled){transform:translateY(0)scale(.98)}.love-occasions-list button,.occasion-option,.moment-picker button,.added-moments button{transition:background-color var(--motion-feedback) var(--ease-standard), box-shadow var(--motion-feedback) var(--ease-standard), transform var(--motion-feedback) var(--ease-out), color var(--motion-feedback) var(--ease-standard)}.love-occasions-list button:focus-visible,.occasion-option:focus-visible,.moment-picker button:focus-visible,.added-moments button:focus-visible,.theme-option:focus-visible,.response-style-option:focus-visible,.more-details-trigger:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.love-occasions-list button:active,.occasion-option:active,.moment-picker button:active,.added-moments button:active{transform:scale(.992)}.theme-option .theme-sample{transition:box-shadow var(--motion-feedback) var(--ease-standard), transform var(--motion-feedback) var(--ease-out), border-color var(--motion-feedback) var(--ease-standard)}.theme-option[aria-pressed=true] .theme-sample{box-shadow:inset 0 0 0 2px var(--focus-ring), var(--polish-shadow)}.response-style-section{margin-top:46px}.response-style-section h2{letter-spacing:-.035em;margin:0 0 8px;font-size:clamp(22px,2.2vw,28px);font-weight:500;line-height:1.2}.response-style-section>p{color:var(--text-secondary);max-width:40ch;margin:0 0 22px;font-size:14px;line-height:1.55}.response-style-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.response-style-option{text-align:left;min-width:0;min-height:132px;color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-control);transition:border-color var(--motion-feedback) var(--ease-standard), background-color var(--motion-feedback) var(--ease-standard), box-shadow var(--motion-feedback) var(--ease-standard), transform var(--motion-feedback) var(--ease-out);background:#fff;flex-direction:column;align-items:flex-start;padding:14px 16px;display:flex}.response-style-option[aria-pressed=true]{border-color:var(--focus-ring);box-shadow:inset 0 0 0 1px var(--focus-ring);background:#f9faff}.response-style-option strong{margin-top:12px;font-size:14px;font-weight:600;display:block}.response-style-option small{color:var(--text-secondary);margin-top:2px;font-size:12px;line-height:1.35;display:block}.response-style-example{background:var(--surface-pink);min-width:78px;color:var(--ink);transition:transform var(--motion-reveal) var(--ease-out), background-color var(--motion-feedback) var(--ease-standard);border-radius:7px;justify-content:space-between;align-items:center;gap:18px;padding:4px 10px;font-size:12px;display:inline-flex}.response-style-option[aria-pressed=true] .response-style-example{background:var(--pink-soft)}.response-style-option--romantic .response-style-example{background:#fbeaf1}.response-style-option--playful .response-style-example{background:var(--surface-blue)}.response-style-option--minimal .response-style-example{background:var(--field-surface)}.more-details{border-top:1px solid var(--border);padding-top:10px}.more-details-trigger{width:100%;min-height:44px;color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:16px;padding:7px 0;font-weight:500;display:flex}.more-details-trigger span{transition:transform var(--motion-reveal) var(--ease-out);font-size:20px;line-height:1}.more-details-trigger[aria-expanded=true] span{transform:rotate(180deg)}.more-details-panel{opacity:0;transition:grid-template-rows var(--motion-reveal) var(--ease-out), opacity var(--motion-feedback) var(--ease-standard);grid-template-rows:0fr;display:grid}.more-details-panel[data-open=true]{opacity:1;grid-template-rows:1fr}.more-details-content{min-height:0;overflow:hidden}.more-details-content .builder-select{margin-top:10px}.more-details-content select:disabled{opacity:.55;cursor:not-allowed}.details-hint{color:var(--text-secondary);font-size:12px;line-height:1.45}.guided-body{scroll-padding-bottom:132px}.guided-editor-content{padding-bottom:144px}.custom-cursor{z-index:100;opacity:0;pointer-events:none;will-change:transform;mix-blend-mode:multiply;width:24px;height:24px;transition:width var(--motion-feedback) var(--ease-out), height var(--motion-feedback) var(--ease-out), background-color var(--motion-feedback) var(--ease-standard), border-color var(--motion-feedback) var(--ease-standard), opacity var(--motion-feedback) var(--ease-standard);background:#6174d32e;border:1px solid #6174d38c;border-radius:50%;margin:0;position:fixed;top:0;left:0}.custom-cursor.is-visible{opacity:1}.custom-cursor.is-interactive{background:#ffdae457;width:36px;height:36px;margin:0}.custom-cursor.is-clicking{opacity:1;background:#fd90ac59;border:1px solid #b4436466;border-radius:50%;width:22px;height:22px;margin:0}.custom-cursor.is-text{opacity:0}.reader-scene{animation:scene-arrive-polish var(--motion-reveal) var(--ease-out) both}.reader-scene>.reader-block{animation:story-block-in var(--motion-reveal) var(--ease-out) both}.reader-scene>.reader-block:nth-child(2){animation-delay:75ms}.reader-scene>.reader-block:nth-child(3){animation-delay:.13s}.story-motion--minimal .reader-scene,.story-motion--minimal .reader-scene>.reader-block{animation:none}.reader-choices button:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--story-accent), 0 9px 24px #231e2b14;transform:translateY(-2px)}.reader-choices button:active:not(:disabled){transform:scale(.985)}.reader-scene.is-answered .reader-choices button:not(.is-selected){opacity:.64}.reader-scene.is-answered .reader-choices button.is-selected{animation:answer-selected var(--motion-reveal) var(--ease-out) both}.reader-answer-feedback{border-radius:var(--radius-control);width:min(100%,420px);color:var(--ink);animation:response-soft var(--motion-reveal) var(--ease-out) both;background:#ffffffc7;border:1px solid #17171914;margin:20px auto 0;padding:16px 20px;box-shadow:0 14px 34px #231e2b12}.story-response--minimal .reader-answer-feedback{animation:response-minimal var(--motion-feedback) ease-out both;box-shadow:none}.story-response--romantic .reader-answer-feedback{animation:response-romantic .43s var(--ease-out) both;background:#fff6f9e0;border-color:#b443642e;box-shadow:0 16px 38px #b4436417}.story-response--playful .reader-answer-feedback{background:#f5f7ffe6;animation:.42s cubic-bezier(.2,1.14,.35,1) both response-playful}.reader-reaction{animation:response-soft var(--motion-reveal) var(--ease-out) both}.reader-navigation .reader-next{animation:response-minimal var(--motion-feedback) ease-out both}.story-effect{z-index:2;pointer-events:none;display:block;position:absolute;inset:0;overflow:hidden}.story-response--minimal .story-effect{display:none}.effect-particle{color:var(--story-accent,#e98ca3);opacity:0;animation:effect-rise 1.5s var(--ease-out) both;font-size:22px;line-height:1;position:absolute;top:57%;left:50%}.effect-particle:first-child{--travel-x:-105px;--travel-y:-105px;animation-delay:0s}.effect-particle:nth-child(2){--travel-x:-55px;--travel-y:-145px;animation-delay:75ms}.effect-particle:nth-child(3){--travel-x:15px;--travel-y:-155px;animation-delay:35ms}.effect-particle:nth-child(4){--travel-x:95px;--travel-y:-115px;animation-delay:.12s}.effect-particle:nth-child(5){--travel-x:-135px;--travel-y:-30px;animation-delay:.11s}.effect-particle:nth-child(6){--travel-x:125px;--travel-y:-45px;animation-delay:40ms}.effect-particle:nth-child(7){--travel-x:-15px;--travel-y:-80px;animation-delay:.15s}.effect-particle:nth-child(8){--travel-x:62px;--travel-y:-80px;animation-delay:.175s}.story-effect--kiss .effect-particle{color:#b44364;--travel-x:0px;--travel-y:-40px;font-size:50px}.story-effect--sparkles .effect-particle{color:#b44364;font-size:16px}.story-effect--confetti .effect-particle{background:var(--story-accent,#e98ca3);border-radius:2px;width:5px;height:14px}.story-effect--confetti .effect-particle:nth-child(2n){background:#6174d3}.effect-halo{background:radial-gradient(circle,#fd90ac38,#0000 68%);border-radius:50%;width:min(48vw,320px);height:min(48vw,320px);animation:1.5s ease-out both effect-halo;position:absolute;top:56%;left:50%;transform:translate(-50%,-50%)}@keyframes scene-arrive-polish{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes story-block-in{0%{opacity:0;filter:blur(2px);transform:translateY(9px)}to{opacity:1;filter:blur();transform:none}}@keyframes response-minimal{0%{opacity:0}to{opacity:1}}@keyframes response-soft{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}@keyframes response-romantic{0%{opacity:0;filter:blur(3px);transform:translateY(10px)scale(.97)}to{opacity:1;filter:blur();transform:none}}@keyframes response-playful{0%{opacity:0;transform:translateY(11px)scale(.96)}to{opacity:1;transform:none}}@keyframes answer-selected{0%{transform:scale(.985)}to{transform:none}}@keyframes effect-rise{0%{opacity:0;transform:translate(-50%,-20%)scale(.7)}25%{opacity:.75}to{opacity:0;transform:translate(calc(-50% + var(--travel-x)), var(--travel-y)) scale(1)}}@keyframes effect-halo{0%{opacity:0;transform:translate(-50%,-50%)scale(.7)}35%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.25)}}@media (hover:hover) and (pointer:fine){.love-occasions-list button:hover,.occasion-option:hover,.moment-picker button:hover,.added-moments button:hover{background:#f1f4ff80;transform:translateY(-2px)}.love-occasions-list button:hover strong,.occasion-option:hover strong,.moment-picker button:hover strong{color:#b44364}.theme-option:hover .theme-sample{box-shadow:inset 0 0 0 1px var(--pink), var(--polish-shadow);transform:translateY(-3px)}.theme-option[aria-pressed=true]:hover .theme-sample{box-shadow:inset 0 0 0 2px var(--focus-ring), var(--polish-shadow)}.response-style-option:hover{border-color:var(--pink);box-shadow:var(--polish-shadow);transform:translateY(-2px)}.response-style-option--soft:hover .response-style-example{transform:translateY(-3px)scale(1.03)}.response-style-option--romantic:hover .response-style-example{transform:translateY(-2px)scale(1.04)}.response-style-option--playful:hover .response-style-example{transform:translateY(-3px)rotate(-2deg)}.response-style-option--minimal:hover .response-style-example{opacity:.8}}@media (prefers-reduced-motion:no-preference){.guided-backdrop{animation:response-minimal var(--motion-feedback) ease-out both}.guided-editor-content{animation:scene-arrive-polish var(--motion-reveal) var(--ease-out) both}.show-preview .guided-preview,.sent-story,.return-story,.toast.show{animation:response-soft var(--motion-reveal) var(--ease-out) both}}@media (max-width:820px){.response-style-section{margin-top:34px}.response-style-grid{gap:10px}.response-style-option{min-height:124px}.reader-answer-feedback{width:100%}}@media (max-width:390px){.response-style-option{padding:12px}.response-style-option small{font-size:11px}}@media (max-width:820px) and (max-height:650px){.guided-editor-content{padding-top:16px}.step-count,.guided-core h1,.theme-editor h1,.moment-editor h1{margin-bottom:12px}.guided-core .builder-field{margin-top:16px}.guided-footer{padding-top:10px;padding-bottom:10px}}@media (prefers-reduced-motion:reduce){.guided-backdrop,.guided-editor-content,.show-preview .guided-preview,.sent-story,.return-story,.toast.show,.reader-scene,.reader-scene>.reader-block,.reader-answer-feedback,.reader-reaction,.reader-navigation .reader-next,.reader-scene.is-answered .reader-choices button.is-selected{animation:none!important}.story-effect{display:none}.custom-cursor,.more-details-panel,.more-details-trigger span{transition:none}}.draft-access-link{text-align:right;min-height:38px;color:var(--focus-ring);text-underline-offset:4px;padding-top:13px;font-size:11px;line-height:1.5;text-decoration:underline;display:block}.story-shelf{border-top:1px solid var(--border);margin:32px 0;padding:0;list-style:none}.story-shelf li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;padding:20px 0;display:flex}.story-shelf h3{letter-spacing:-.02em;margin:0 0 6px;font-size:18px;font-weight:500}.story-shelf small{color:var(--text-secondary);font-size:12px;line-height:1.5}.story-shelf-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.story-shelf-actions button,.story-shelf-actions a{min-height:44px;color:var(--focus-ring);align-items:center;padding:8px 0;font-size:13px;display:inline-flex}.return-import-title{margin:48px 0 16px;font-size:18px;font-weight:500}.return-import{gap:10px;max-width:620px;display:flex}.return-import input{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--field-surface);min-width:0;min-height:50px;color:var(--ink);font:inherit;flex:1;padding:13px 15px}@media (max-width:620px){.story-shelf li{flex-direction:column;align-items:flex-start;gap:10px}.story-shelf-actions{justify-content:space-between;width:100%}.return-import{flex-direction:column}.return-import .action{width:100%}}
