:root{--bg:#09090b;--ink:#faf6ef;--ink-2:#d2ccc1;--faint:#a39d92;--bloom:244,186,212;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"DM Sans",-apple-system,system-ui,sans-serif;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{height:100%;margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans)}button{font:inherit}.phone{position:relative;width:100%;max-width:430px;height:100dvh;margin:0 auto;background:var(--bg);overflow:hidden;isolation:isolate}@media (min-width:600px){.phone{border-inline:1px solid #141416}}.screen{position:absolute;inset:0;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0)}.screen>*{transition:opacity 1.1s ease,transform 1.3s cubic-bezier(.2,.7,.2,1),filter 1.3s ease}.s1{z-index:2;transition:opacity 1.8s ease}.phone[data-stage=witness] .s1{opacity:0;pointer-events:none;visibility:hidden;transition:opacity 1.8s ease,visibility 0s 1.8s}.phone:is([data-stage=releasing],[data-stage=witness]) .s1>header{opacity:0;transition:opacity 1.6s ease .6s}header{flex:none;text-align:center;padding:26px 0 6px;font:500 14px var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-2)}header .lock{letter-spacing:0;margin-left:.3em}.canvas{flex:1 1;min-height:0;display:flex;flex-direction:column;padding:158px 32px 0;position:relative}textarea{flex:1 1;width:100%;background:transparent;border:0;outline:0;resize:none;padding:0;color:var(--ink);font:500 26px/1.6 var(--serif);caret-color:rgb(var(--bloom))}textarea::placeholder{color:#928c81;font-style:italic;font-weight:400}.phone:is([data-stage=releasing],[data-stage=witness]) textarea{opacity:0;transform:translateY(-6px);filter:blur(3px);transition:opacity 3.2s ease .4s,transform 3.2s ease .4s,filter 3.2s ease .4s}textarea.nudge{animation:nudge .6s ease}@keyframes nudge{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}.note{flex:none;padding:10px 0 16px;font:400 13.5px var(--sans);letter-spacing:.06em;color:var(--faint);transition:color .4s,opacity 1s ease}.note.warn{color:var(--ink-2)}.phone:is([data-stage=releasing],[data-stage=witness]) .note{opacity:0}.zone{position:relative;flex:none;height:calc(150px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,rgba(9,9,11,0),#06080c 85%)}.controls{inset:0;z-index:1}.controls,.mic{position:absolute}.mic{right:calc(25% - 64px);bottom:calc(57px + env(safe-area-inset-bottom,0px));width:54px;height:54px;border-radius:50%;padding:0;cursor:pointer;border:1px solid rgba(255,255,255,.32);background:rgba(8,12,18,.5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#cfd6e2;display:grid;place-items:center;touch-action:manipulation;-moz-user-select:none;user-select:none;-webkit-user-select:none;transition:background .4s,color .4s,opacity 1s}.mic.on{background:rgba(8,12,18,.58);color:#fff}.mic svg{transition:opacity .4s}.mic.on svg{animation:iconpulse 1.8s ease-in-out infinite}@keyframes iconpulse{50%{opacity:.4}}.phone:is([data-stage=releasing],[data-stage=witness]) .mic{opacity:0;pointer-events:none}.lotus{position:absolute;left:calc(25% - 75px);bottom:calc(36px + env(safe-area-inset-bottom,0px));width:150px;height:92px;border:0;background:none;padding:0;cursor:pointer;display:grid;justify-items:center;align-content:start;-webkit-tap-highlight-color:transparent;animation:float 7s ease-in-out infinite}.lotus .aura{position:absolute;left:50%;top:-34px;width:250px;height:210px;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(var(--bloom),.6) 0,rgba(var(--bloom),.22) 36%,transparent 68%);opacity:.28;transition:opacity .9s ease;pointer-events:none;mix-blend-mode:screen}.lotus.ready .aura{opacity:.4}@keyframes aurabreath{50%{opacity:.66}}.lotus .bloom{position:relative;z-index:2;display:block;width:128px;height:auto;margin-top:6px;pointer-events:none;filter:drop-shadow(0 0 6px rgba(255,170,205,.3));transition:filter .9s ease,opacity .9s ease,transform .9s ease}.lotus:not(.ready) .bloom{opacity:.95;transform:scale(.95)}.lotus.ready .bloom{filter:drop-shadow(0 0 7px rgba(255,170,205,.38))}.phone:is([data-stage=releasing],[data-stage=witness]) .lotus .bloom{opacity:1;transform:scale(1.12);filter:drop-shadow(0 0 18px rgba(255,190,220,.95)) drop-shadow(0 0 46px rgba(255,214,232,.65))}@keyframes float{0%,to{transform:translateY(0) rotate(-.8deg)}50%{transform:translateY(-3px) rotate(.8deg)}}.phone:is([data-stage=releasing],[data-stage=witness]) .lotus{animation:rise 4s linear forwards,risefade 4s linear forwards;pointer-events:none;--w:min(100vw,430px);--h:min(44dvh,380px)}@keyframes rise{0%{transform:translate(0) scale(1) rotate(0deg);animation-timing-function:ease-out}10%{transform:translate(0) scale(1.1) rotate(0deg);animation-timing-function:cubic-bezier(.45,0,.3,1)}to{transform:translate(calc(var(--w)*.95),calc(var(--h)*-1)) scale(.5) rotate(10deg)}}@keyframes risefade{0%,76%{opacity:1}to{opacity:0}}.s2{z-index:1;align-items:center;text-align:center;visibility:hidden}.phone[data-stage=witness] .s2{visibility:visible;z-index:3}.glow{position:absolute;left:50%;bottom:-170px;width:780px;height:560px;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 100%,rgba(var(--bloom),.55) 0,rgba(var(--bloom),.2) 38%,rgba(var(--bloom),0) 68%);filter:blur(14px);opacity:0;z-index:4;mix-blend-mode:screen;pointer-events:none}.phone[data-stage=releasing] .glow{opacity:.7;transition:opacity 1.8s ease .3s}.phone[data-stage=witness] .glow{opacity:1;transition:opacity 2s ease;animation:breatheglow 8s ease-in-out 2.2s infinite}@keyframes breatheglow{50%{opacity:.7;transform:translateX(-50%) scale(1.07)}}.s2 header{opacity:0}.phone[data-stage=witness] .s2 header{opacity:1;transition-delay:1.8s}.witness{flex:1 1;min-height:0;width:100%;overflow-y:auto;display:flex;flex-direction:column;padding:0 38px 30px;scrollbar-width:none}.witness::-webkit-scrollbar{display:none}.witness .inner{margin:auto 0;padding:24px 0}.witness p{margin:0}.witness p+p{margin-top:22px}.witness .first{font:500 29px/1.45 var(--serif);color:var(--ink)}.witness .rest{font:italic 500 23px/1.6 var(--serif);color:var(--ink-2)}.sent{opacity:0;filter:blur(5px);animation:sentin 1.8s ease forwards}@keyframes sentin{to{opacity:1;filter:blur(0)}}.witness .rule{width:28px;height:1px;background:rgba(var(--bloom),.5);margin:30px auto 0;animation:rulein 2s ease 1s both}@keyframes rulein{0%{opacity:0}to{opacity:1}}.waiting{position:absolute;left:0;right:0;top:46%;margin:0;text-align:center;pointer-events:none;font:italic 400 22px var(--serif);color:var(--faint);opacity:0;transition:opacity 1.6s ease}.waiting.on{opacity:1;transition-delay:1.4s;animation:fadepulse 3.2s ease-in-out 2s infinite}@keyframes fadepulse{50%{opacity:.45}}.voice{position:absolute;top:calc(env(safe-area-inset-top, 0px) + 14px);left:16px;width:auto;height:44px;padding:0 4px;border:0;background:none;color:#8a867d;border-radius:10px;display:grid;place-items:center;cursor:pointer;font:300 13px var(--sans);letter-spacing:.06em;white-space:nowrap;opacity:0;transition:opacity 2s ease,color .3s;z-index:6}.phone[data-stage=witness] .voice{opacity:1;transition-delay:1.8s}.voice:hover{color:var(--ink-2)}.voice.always{opacity:1;transition:opacity 1.6s ease .6s,color .3s}.voice.muted{color:#a39d92}.phone:is([data-stage=releasing],[data-stage=witness]) .voice.always{opacity:0;pointer-events:none}.foot{flex:none;display:flex;flex-direction:column;align-items:center;gap:18px;padding:0 24px calc(30px + env(safe-area-inset-bottom, 0px));opacity:0;transition:opacity 2s ease}.phone[data-revealed=true] .foot{opacity:1;transition-delay:2s}.breath{justify-items:center;grid-gap:10px;gap:10px}.breath,.breath .orb{position:relative;display:grid}.breath .orb{width:58px;height:58px;place-items:center}.breath .orb:after,.breath .orb:before{content:"";position:absolute;inset:0;border-radius:50%}.breath .orb:before{background:radial-gradient(circle,rgba(var(--bloom),.55) 0,rgba(var(--bloom),.16) 55%,transparent 72%);animation:breathOrb 10s ease-in-out infinite}.breath .orb:after{border:1px solid rgba(var(--bloom),.42);animation:breathRing 10s ease-in-out infinite}.breath .orb i{width:8px;height:8px;border-radius:50%;background:rgba(var(--bloom),.95);box-shadow:0 0 12px rgba(var(--bloom),.9);animation:breathCore 10s ease-in-out infinite}.breath .bt{position:relative;display:block;height:22px;width:160px;text-align:center;font:italic 400 17px/22px var(--serif);letter-spacing:.04em;color:var(--ink-2)}.breath .bt em{position:absolute;inset:0;font-style:italic;opacity:0}.breath .bt .in{animation:breathIn 10s ease-in-out infinite}.breath .bt .out{animation:breathOut 10s ease-in-out infinite}@keyframes breathOrb{0%,to{transform:scale(.55);opacity:.55}40%{transform:scale(1.15);opacity:1}46%{transform:scale(1.15);opacity:1}}@keyframes breathRing{0%,to{transform:scale(.55);opacity:.2}40%{transform:scale(1.25);opacity:.75}46%{transform:scale(1.25);opacity:.75}}@keyframes breathCore{0%,to{transform:scale(.7)}40%,46%{transform:scale(1.3)}}@keyframes breathIn{0%{opacity:0}32%,6%{opacity:1}40%,to{opacity:0}}@keyframes breathOut{0%,42%{opacity:0}50%,88%{opacity:1}96%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.breath .bt em,.breath .orb i,.breath .orb:after,.breath .orb:before{animation:none}.breath .bt .in{opacity:1}}.back{border:1px solid #26262a;background:none;color:var(--ink-2);font:400 14px var(--sans);letter-spacing:.06em;padding:13px 26px;border-radius:999px;cursor:pointer;transition:color .3s,border-color .3s}.vanish{margin:0;font:400 12.5px/1.4 var(--sans);letter-spacing:.04em;color:var(--faint)}.back:hover{color:var(--ink);border-color:#3a3a40}button:focus-visible,textarea:focus-visible{outline:1px solid rgba(var(--bloom),.8);outline-offset:4px}@media (prefers-reduced-motion:reduce){*,:before{animation:none!important;transition-duration:.01s!important;transition-delay:0s!important}.sent{opacity:1;filter:none}}.acct{position:absolute;top:calc(env(safe-area-inset-top, 0px) + 14px);right:14px;display:flex;flex-direction:column-reverse;align-items:flex-end;z-index:3;pointer-events:none;transition:opacity 1s ease}.acct button,.acct span{pointer-events:auto;font:400 13px var(--sans);letter-spacing:.06em;color:var(--faint);background:none;border:0;padding:5px 6px;line-height:1.2;cursor:pointer}.acct span{cursor:default}.acct button:hover{color:var(--ink-2)}.phone:is([data-stage=releasing],[data-stage=witness]) .acct{opacity:0;pointer-events:none}.paywall{position:absolute;inset:0;z-index:20;display:grid;place-items:center;padding:24px;background:rgba(5,7,10,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:pwin .6s ease both}@keyframes pwin{0%{opacity:0}}.pw-card{width:100%;max-width:340px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;padding:28px 24px 22px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:linear-gradient(180deg,rgba(20,22,28,.9),rgba(10,12,16,.95));box-shadow:0 0 60px rgba(var(--bloom),.12)}.pw-card img{filter:drop-shadow(0 0 10px rgba(var(--bloom),.45))}.pw-card h2{margin:4px 0 0;font:300 27px/1.2 var(--serif)}.pw-card p{margin:0;font:300 14.5px/1.6 var(--sans);color:var(--ink-2)}.pw-price{font:300 15px var(--sans);color:var(--ink-2)}.pw-price b{font:400 34px var(--serif);color:var(--ink);margin-right:4px}.pw-go{width:100%;border:0;border-radius:999px;padding:15px 20px;background:var(--ink);color:#09090b;font:500 15px var(--sans);cursor:pointer}.pw-go:disabled{opacity:.6;cursor:default}.pw-opt{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.03);color:var(--ink);cursor:pointer}.pw-opt.main{border-color:rgba(var(--bloom),.55);background:rgba(var(--bloom),.08)}.pw-opt:disabled{opacity:.6;cursor:default}.pw-opt span{display:grid;grid-gap:3px;gap:3px}.pw-opt b{font:400 17px var(--serif)}.pw-opt small{font:300 12px/1.4 var(--sans);color:var(--ink-2)}.pw-opt i{font:400 15px var(--sans);font-style:normal;white-space:nowrap}.pw-later{background:none;border:0;color:var(--faint);font:300 13.5px var(--sans);cursor:pointer;padding:6px}.pw-card small{font:300 11.5px var(--sans);color:var(--faint)}.free-note{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.free-note p{margin:0;font:300 14px/1.4 var(--sans);color:var(--ink-2)}.free-note button{background:none;border:0;padding:6px 8px;color:rgb(var(--bloom));font:400 13.5px var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.picker{position:absolute;top:calc(env(safe-area-inset-top,0px) + 62px);left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:4;transition:opacity 1s ease}.picker button{width:44px;height:44px;border-radius:50%;padding:0;border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.06);display:grid;place-items:center;cursor:pointer;opacity:.82;transition:opacity .3s,border-color .3s,background .3s}.picker button:hover{opacity:.85}.picker button.on{opacity:1;border-color:rgba(var(--bloom),.6);background:rgba(var(--bloom),.1)}.picker img{max-width:28px;max-height:27px;width:auto;height:auto;pointer-events:none}.phone:is([data-stage=releasing],[data-stage=witness]) .picker{opacity:0;pointer-events:none}.lotus .bloom[data-k=lantern]{width:auto;height:84px;margin-top:0}.lotus .bloom[data-k=feather]{width:auto;height:88px;margin-top:0}.phone[data-icon=lantern]{--bloom:255,172,104}.phone[data-icon=feather]{--bloom:196,214,240}.lotus .bloom[data-k=lantern]{filter:drop-shadow(0 0 10px rgba(255,160,80,.55))}.lotus .bloom[data-k=feather]{filter:brightness(1.3) drop-shadow(0 0 9px rgba(200,220,250,.45))}.emblem-note{position:absolute;top:calc(env(safe-area-inset-top,0px) + 112px);left:0;right:0;margin:0;padding:0 28px;text-align:center;display:flex;flex-direction:column;gap:2px;z-index:3;transition:opacity 1s ease}.emblem-note b{font:italic 500 16.5px/1.3 var(--serif);color:var(--ink);font-weight:500}.emblem-note span{font:400 13px/1.4 var(--sans);letter-spacing:.03em;color:var(--faint)}.phone:is([data-stage=releasing],[data-stage=witness]) .emblem-note{opacity:0}.phone[data-icon=lantern]:is([data-stage=releasing],[data-stage=witness]) .lotus{animation:lanternUp 4s cubic-bezier(.4,0,.3,1) forwards,risefade 4s linear forwards}@keyframes lanternUp{0%{transform:translate(0) scale(1)}14%{transform:translateY(-6px) scale(1.1)}to{transform:translate(calc(var(--w)*.05),calc(-100dvh + 170px)) scale(.4)}}.phone[data-icon=lantern]:is([data-stage=releasing],[data-stage=witness]) .lotus .bloom{transform:scale(1.08);filter:drop-shadow(0 0 16px rgba(255,170,90,.95)) drop-shadow(0 0 48px rgba(255,190,120,.6))}.phone[data-icon=feather]:is([data-stage=releasing],[data-stage=witness]) .lotus{animation:featherDrift 4.4s linear forwards,risefade 4.4s linear forwards}@keyframes featherDrift{0%{transform:translate(0) rotate(0deg) scale(1)}10%{transform:translate(calc(var(--w)*.012),calc((-100dvh + 190px)*.028)) rotate(7deg) scale(1.08)}20%{transform:translate(calc(var(--w)*.036),calc((-100dvh + 190px)*.104)) rotate(13deg) scale(1.05)}30%{transform:translate(calc(var(--w)*.069),calc((-100dvh + 190px)*.216)) rotate(17deg) scale(.98)}40%{transform:translate(calc(var(--w)*.105),calc((-100dvh + 190px)*.352)) rotate(18deg) scale(.92)}50%{transform:translate(calc(var(--w)*.139),calc((-100dvh + 190px)*.5)) rotate(16deg) scale(.86)}60%{transform:translate(calc(var(--w)*.163),calc((-100dvh + 190px)*.648)) rotate(12deg) scale(.8)}70%{transform:translate(calc(var(--w)*.173),calc((-100dvh + 190px)*.784)) rotate(6deg) scale(.74)}80%{transform:translate(calc(var(--w)*.164),calc((-100dvh + 190px)*.896)) rotate(-1deg) scale(.68)}90%{transform:translate(calc(var(--w)*.145),calc((-100dvh + 190px)*.972)) rotate(-8deg) scale(.62)}to{transform:translate(calc(var(--w)*.087),calc(-100dvh + 190px)) rotate(-14deg) scale(.56)}}.lotus .dust{position:absolute;left:50%;top:40%;width:0;height:0;pointer-events:none;z-index:1}.lotus .dust i{position:absolute;left:0;top:0;width:var(--s);height:var(--s);border-radius:50%;background:#e8f1ff;box-shadow:0 0 8px 2px rgba(200,220,255,.85);opacity:0}.phone[data-icon=feather]:is([data-stage=releasing],[data-stage=witness]) .lotus .dust i{animation:dustFloat 2.4s ease-out forwards}@keyframes dustFloat{0%{opacity:0;transform:translate(0) scale(.6)}18%{opacity:.95}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.2)}}.phone[data-icon=feather]:is([data-stage=releasing],[data-stage=witness]) .lotus .bloom{transform:scale(1.1);filter:brightness(1.4) drop-shadow(0 0 14px rgba(210,225,250,.9)) drop-shadow(0 0 40px rgba(200,220,250,.5))}.phone[data-icon=feather]:is([data-stage=releasing],[data-stage=witness]) textarea{opacity:0;transition:none;filter:none;transform:none}.drift{position:absolute;top:158px;left:32px;right:32px;bottom:60px;overflow:hidden;font:400 25px/1.6 var(--serif);color:var(--ink);white-space:pre-wrap;overflow-wrap:break-word;pointer-events:none;z-index:1}.drift .dw{display:inline-block;white-space:nowrap}.drift .dw>span{display:inline-block;animation:charLift 3s cubic-bezier(.35,0,.5,1) forwards}@keyframes charLift{0%{opacity:1;transform:none;filter:blur(0);text-shadow:0 0 0 rgba(200,220,255,0)}10%{opacity:1;text-shadow:0 0 6px rgba(200,220,255,.5)}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--r));filter:blur(3px);text-shadow:0 0 14px rgba(200,225,255,.95)}}.phone[data-icon=lotus]:is([data-stage=releasing],[data-stage=witness]) .lotus{animation:featherDrift 4.4s linear forwards,risefade 4.4s linear forwards}.lotus .aura{transition:opacity .9s ease,transform 3s ease}.phone[data-icon=lotus]:is([data-stage=releasing],[data-stage=witness]) .lotus .aura{opacity:.7;transform:translateX(-50%) scale(1.7)}.phone[data-icon=lotus]:is([data-stage=releasing],[data-stage=witness]) .lotus .bloom{transform:scale(1.1);filter:brightness(1.15) drop-shadow(0 0 16px rgba(255,190,220,.95)) drop-shadow(0 0 44px rgba(255,214,232,.6))}.phone[data-icon=lotus]:is([data-stage=releasing],[data-stage=witness]) textarea{opacity:0;transition:none;filter:none;transform:none}.lotus .petals i{width:var(--s);height:calc(var(--s)*1.6);border-radius:100% 0 100% 0;background:linear-gradient(135deg,#ffe6f0,#f4a3c6);box-shadow:0 0 10px 2px rgba(255,170,205,.65)}.phone[data-icon=lotus]:is([data-stage=releasing],[data-stage=witness]) .lotus .petals i{animation:petalFloat 3.4s ease-out forwards}@keyframes petalFloat{0%{opacity:0;transform:translate(0) rotate(0deg) scale(.5)}15%{opacity:.95}45%{transform:translate(calc(var(--dx)*.5 + var(--sw)),calc(var(--dy)*.45)) rotate(calc(var(--r)*.5)) scale(1)}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--r)) scale(.9)}}.phone[data-icon=lotus] .drift .dw>span{animation-name:charLiftPink}@keyframes charLiftPink{0%{opacity:1;transform:none;filter:blur(0);text-shadow:0 0 0 rgba(255,190,220,0)}10%{opacity:1;text-shadow:0 0 6px rgba(255,190,220,.55)}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--r));filter:blur(3px);text-shadow:0 0 14px rgba(255,200,225,.95)}}