:root{--ivory:#f4f3ec;--bone:#ede6da;--ink:#3e4d41;--deep:#5e7060;--paper:#f7f5ef;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--ease:cubic-bezier(.22, 1, .36, 1);--top:0px;--bottom:0px;--kb:0px;--b:0}html{background:var(--ivory)}html,body{overscroll-behavior:none;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;height:100%;margin:0;overflow:hidden}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.stage{touch-action:none;position:fixed;inset:0;overflow:hidden}html.ios-tab{--top:120px;--bottom:136px;scrollbar-width:none;height:auto;transition:background-color 3s;overflow:hidden scroll}html.ios-tab[data-tone=field]{background:#c8d4c0}html.ios-tab[data-tone=dusk]{background:var(--deep)}html.ios-tab::-webkit-scrollbar{display:none}html.ios-tab body{height:auto;overflow:visible}html.ios-tab .stage{height:calc(100lvh + var(--top) + var(--bottom));position:relative;inset:auto}.breath{position:absolute;inset:0;overflow:hidden}.ground{opacity:var(--i,.5);filter:blur(48px);background:radial-gradient(52% 26% at 62% 34%,#c8d4c0 0%,#c8d4c000 100%),radial-gradient(46% 24% at 22% 26%,#a7bfb8 0%,#a7bfb800 100%),radial-gradient(56% 28% at 76% 66%,#abbba5 0%,#abbba500 100%),radial-gradient(50% 24% at 28% 80%,#c8d4c0 0%,#c8d4c000 100%);animation:10.9s infinite ground-breath;position:absolute;inset:-12%}.breath{transition:background-color 3s}.breath[data-phase=response]{background-color:#5e7060}.breath[data-phase=response] .ground{opacity:1;background:#5e7060;transition:background 3s}@keyframes ground-breath{0%{filter:blur(48px)brightness(.96);animation-timing-function:cubic-bezier(.3,0,.55,1);transform:scale(1)}40.4%{filter:blur(48px)brightness();animation-timing-function:cubic-bezier(.3,0,.49,1);transform:scale(1.06)}to{filter:blur(48px)brightness(.96);transform:scale(1)}}@keyframes ground-breath-still{0%{filter:blur(48px)brightness(.94);animation-timing-function:cubic-bezier(.3,0,.55,1)}40.4%{filter:blur(48px)brightness();animation-timing-function:cubic-bezier(.3,0,.49,1)}to{filter:blur(48px)brightness(.94)}}@media (prefers-reduced-motion:reduce){.ground{animation-name:ground-breath-still}}.field{opacity:0;width:100%;height:100%;transition:opacity .9s;position:absolute;inset:0}.field.live{opacity:1}.box{top:var(--top);height:100svh;position:absolute;left:0;right:0}.invite{text-align:center;letter-spacing:-.03em;color:var(--ink);opacity:0;pointer-events:none;transition:opacity .9s var(--ease), transform .9s var(--ease);margin:0;font-size:clamp(34px,9.6vw,56px);font-weight:300;line-height:1.1;position:absolute;top:38%;left:0;right:0;transform:translateY(6px)}.invite.on{opacity:.86;transform:none}.reply{inset:0 0 var(--kb) 0;padding:calc(max(32px, env(safe-area-inset-top)) + 8px) max(30px, env(safe-area-inset-right)) 148px max(30px, env(safe-area-inset-left));box-sizing:border-box;pointer-events:none;transition:opacity .7s var(--ease);flex-direction:column;justify-content:safe center;align-items:center;display:flex;position:absolute;overflow:hidden}.reply.back{opacity:.32}.reply-words{width:100%;max-width:620px}.reply p{font-family:var(--sans);letter-spacing:-.022em;color:var(--paper);text-wrap:pretty;transition:opacity 1.4s var(--ease), transform 1.4s var(--ease);margin:0 0 .62em;font-size:clamp(25px,6.9vw,40px);font-weight:300;line-height:1.2}.reply p:last-child{margin-bottom:0}.reply p.yet{opacity:0;transform:translateY(8px)}.reply p.now{opacity:1;transform:none}.reply p.past{opacity:.6;transform:none}.reply.done p{opacity:1;transition-duration:2.4s}.lift{left:max(30px, env(safe-area-inset-left));right:max(30px, env(safe-area-inset-right));pointer-events:none;max-height:46svh;animation:lift 3.2s var(--ease) forwards;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;bottom:112px;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0,#000 28%);mask-image:linear-gradient(#0000 0,#000 28%)}.lift p{letter-spacing:-.012em;width:100%;max-width:620px;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0 auto;font-size:21px;font-weight:300;line-height:1.32}@keyframes lift{0%{opacity:0;filter:blur();transform:translateY(18px)}14%{opacity:.9;filter:blur();transform:translateY(0)}to{opacity:0;filter:blur(9px);transform:translateY(-92px)}}.dock{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));bottom:calc(max(var(--kb), env(safe-area-inset-bottom), 4px) + 10px);opacity:0;pointer-events:none;transition:opacity .5s var(--ease), transform .5s var(--ease);flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;transform:translateY(10px)}.dock.on{opacity:1;pointer-events:auto;transition:opacity 1.6s var(--ease), transform 1.6s var(--ease);transform:none}.bar{box-sizing:border-box;width:100%;max-width:640px;color:var(--ink);-webkit-backdrop-filter:blur(30px)saturate(1.6);backdrop-filter:blur(30px)saturate(1.6);background:#ffffff75;border-radius:29px;align-items:flex-end;margin:0;padding:6px 6px 6px 22px;transition:background-color 1.2s,box-shadow 1.2s,color 1.2s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 .5px #ffffffbf,inset 0 1px #ffffffe6,inset 0 -8px 16px -12px #3e4d411f,0 1px 1px #3e4d410d,0 14px 34px -14px #3e4d4142}.bar:before{content:"";border-radius:inherit;opacity:.22;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0.9 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:180px 180px;position:absolute;inset:0}.bar:focus-within{background:#ffffff94}.stage[data-tone=dusk] .bar{color:var(--paper);background:#f7f5ef21;box-shadow:inset 0 0 0 .5px #f7f5ef4d,inset 0 1px #f7f5ef42,inset 0 -8px 16px -12px #141e164d,0 14px 34px -14px #141e166b}.stage[data-tone=dusk] .bar:focus-within{background:#f7f5ef2e}.writer{appearance:none;box-sizing:border-box;resize:none;min-width:0;max-height:min(42svh,320px);color:inherit;caret-color:currentColor;font-family:var(--sans);letter-spacing:-.01em;touch-action:pan-y;overscroll-behavior:contain;scrollbar-width:none;-webkit-user-select:text;user-select:text;background:0 0;border:0;border-radius:0;outline:0;flex:1;margin:0;padding:11px 6px 11px 0;font-size:17px;font-weight:400;line-height:22px;position:relative;overflow-y:auto}.writer::-webkit-scrollbar{display:none}.writer::placeholder{color:currentColor;opacity:.58}.voice,.send{appearance:none;width:44px;height:44px;color:inherit;cursor:pointer;touch-action:manipulation;transition:width .42s var(--ease), opacity .42s var(--ease), transform .16s var(--ease);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;margin:0;padding:0;display:grid;position:relative}.voice svg,.send svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;position:relative}.voice:active,.send:active{transform:scale(.92)}.voice{opacity:.72}.voice path{transform-box:fill-box;transform-origin:50%}.voice.on{opacity:1}.voice.on path{animation:1.1s ease-in-out infinite speak}.voice.on path:first-child{animation-delay:-200ms}.voice.on path:nth-child(2){animation-delay:-640ms}.voice.on path:nth-child(3){animation-delay:-80ms}.voice.on path:nth-child(4){animation-delay:-820ms}.voice.on path:nth-child(5){animation-delay:-420ms}@keyframes speak{0%,to{transform:scaleY(.45)}50%{transform:scaleY(1.15)}}.voice.aside{opacity:0;pointer-events:none;width:0}.send{opacity:0;pointer-events:none;width:0;color:var(--paper)}.send:before{content:"";background:var(--ink);border-radius:50%;width:36px;height:36px;transition:background-color 1.2s;position:absolute}.send.on{opacity:1;pointer-events:auto;width:44px}.stage[data-tone=dusk] .send{color:var(--deep)}.stage[data-tone=dusk] .send:before{background:var(--paper)}.writer:focus-visible{outline:0}.voice:focus-visible,.send:focus-visible,.care a:focus-visible{outline-offset:-4px;outline:1.5px solid}.note{height:0;font-family:var(--mono);letter-spacing:.02em;color:var(--ink);opacity:0;transition:opacity .6s var(--ease);margin:0;font-size:13px;line-height:1}.note.on{opacity:.7;height:auto}.stage[data-tone=dusk] .note{color:var(--paper)}.care{gap:10px;display:none}.care.on{display:flex}.care a{min-height:44px;color:var(--paper);font-family:var(--mono);letter-spacing:.02em;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f7f5ef24;border-radius:999px;align-items:center;padding:0 20px;font-size:14px;text-decoration:none;display:inline-flex;box-shadow:inset 0 0 0 .5px #f7f5ef57}@media (min-width:900px){.dock{bottom:36px}.lift{bottom:140px}}@media (prefers-reduced-motion:reduce){.invite,.reply p,.dock{transform:none!important}.lift{animation-name:lift-still}.voice.on path{animation:none}}@keyframes lift-still{0%{opacity:0}14%{opacity:.9}to{opacity:0}}.lost{justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lost a{color:var(--ink);letter-spacing:-.024em;font-size:clamp(29px,8.3vw,46px);font-weight:300;text-decoration:none}.lab-line{color:#f7f5ef;letter-spacing:-.024em;margin:0;font-size:clamp(29px,8.3vw,46px);font-weight:300;line-height:1.17;position:absolute;top:40%;left:30px;right:30px}.lab-readout{font:11px/1.4 var(--mono);color:#283228b3;background:#ffffff8c;border-radius:6px;margin:0;padding:6px 8px;position:absolute;bottom:12px;left:12px}
