:root{--bg-0:#06060f;--bg-1:#0b0a1e;--bg-2:#141232;--ink:#eae6ff;--ink-dim:#eae6ffb8;--ink-faint:#eae6ff99;--ink-interactive:#eeeaffc7;--ink-placeholder:#eae6ffa3;--accent-soft:#c9befc;--glow-violet:#8b7cf6;--glow-rose:#f0a6ca;--glow-gold:#ffd9a0;--glow-cyan:#7ee8fa;--glass:#ffffff0f;--glass-border:#ffffff1f;--radius-lg:28px;--radius-md:18px;--serif:"Songti SC", "Noto Serif SC", "STSong", serif;--sans:-apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg-0);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden}.stage{background:radial-gradient(1200px 800px at 70% -10%, #8b7cf629, transparent 60%), radial-gradient(900px 700px at 10% 110%, #f0a6ca1a, transparent 60%), linear-gradient(180deg, var(--bg-1), var(--bg-0) 70%);width:100%;height:100dvh;position:relative;overflow:hidden}.stage--black-hole-demo{background:#000}.stage--black-hole-demo:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0000001f,#0000 34%,#0003),radial-gradient(circle at 50% 47%,#0000 0 26%,#00000029 72%);position:absolute;inset:0}.black-hole-galaxy,.black-hole-galaxy-canvas,.black-hole-galaxy-fallback{width:100%;height:100%;position:absolute;inset:0}.black-hole-galaxy{z-index:0;pointer-events:none;background:#000;overflow:hidden}.black-hole-galaxy-canvas{opacity:0;transition:opacity .5s;display:block}.black-hole-galaxy-canvas.is-ready{opacity:1}.black-hole-galaxy-fallback{opacity:1;background:radial-gradient(circle at 24% 31%,#ffffffd1 0 1.2px,#0000 2.8px) 0 0/61px 67px,radial-gradient(circle at 72% 64%,#dce1ecb3 0 1px,#0000 2.4px) 0 0/91px 103px,radial-gradient(circle at 48% 18%,#c4cde87a 0 .8px,#0000 2px) 0 0/137px 149px,#000;transition:opacity .5s}.black-hole-galaxy-fallback.is-hidden{opacity:0}@media (prefers-reduced-motion:reduce){.black-hole-galaxy-canvas,.black-hole-galaxy-fallback{transition:none}}.aurora{pointer-events:none;opacity:.55;filter:blur(70px);animation:26s ease-in-out infinite alternate aurora-drift;position:absolute;inset:-20%}.aurora:before,.aurora:after{content:"";border-radius:50%;position:absolute}.aurora:before{background:linear-gradient(120deg,#8b7cf659,#7ee8fa24);width:55vw;height:42vh;animation:18s ease-in-out infinite alternate blob-float;top:12%;left:8%}.aurora:after{background:linear-gradient(300deg,#f0a6ca47,#ffd9a01a);width:46vw;height:38vh;animation:22s ease-in-out infinite alternate-reverse blob-float;bottom:8%;right:4%}@keyframes aurora-drift{0%{transform:translateY(-2%)rotate(-2deg)}to{transform:translateY(3%)rotate(2deg)}}@keyframes blob-float{0%{transform:translate(0)scale(1)}to{transform:translate(4%,-5%)scale(1.12)}}.starfield{pointer-events:none;position:absolute;inset:0}.screen{z-index:2;max-width:520px;height:100%;padding:max(24px, env(safe-area-inset-top)) 24px max(24px, env(safe-area-inset-bottom));flex-direction:column;margin:0 auto;animation:.9s cubic-bezier(.22,1,.36,1) screen-in;display:flex;position:relative}@keyframes screen-in{0%{transform:translateY(12px)}to{transform:none}}.screen-scroll{overscroll-behavior-x:none;scrollbar-width:none;overflow:hidden auto}.screen-scroll::-webkit-scrollbar{display:none}.eyebrow{letter-spacing:.42em;color:var(--ink-faint);text-transform:uppercase;font-size:12px}.title{font-family:var(--serif);letter-spacing:.04em;font-size:27px;font-weight:500;line-height:1.5}.subtitle{color:var(--ink-dim);letter-spacing:.02em;font-size:14.5px;line-height:1.9}.glass{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(18px)}.btn{appearance:none;color:var(--ink);font-family:var(--sans);letter-spacing:.08em;cursor:pointer;-webkit-backdrop-filter:blur(16px)saturate(150%);background:linear-gradient(#ffffff1f,#ffffff0a 45%,#ffffff05),#ffffff08;border:1px solid #ffffff24;border-radius:999px;padding:15px 22px;font-size:15px;transition:all .35s;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff38,inset 0 -1px #0000002e,0 8px 26px #00000047}.btn:before{content:"";border-radius:inherit;opacity:.7;pointer-events:none;background:linear-gradient(#ffffff2e,#0000 42%);position:absolute;inset:1px}.btn:hover{border-color:#ffffff4d;box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #0000002e,0 10px 32px #00000057,0 0 24px #8b7cf629}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.48;cursor:default}.btn-primary{color:#fff;text-shadow:0 1px 8px #00000040;background:linear-gradient(#ffffff3d,#ffffff05 50%),linear-gradient(135deg,#8b7cf6d9,#f0a6cab8);border:1px solid #ffffff47;box-shadow:inset 0 1px #ffffff73,inset 0 -2px 6px #50288c59,0 8px 32px #8b7cf666}.btn-primary:hover{box-shadow:inset 0 1px #ffffff8c,inset 0 -2px 6px #50288c59,0 10px 40px #8b7cf68c}.btn-ghost{box-shadow:none;color:var(--ink-dim);-webkit-backdrop-filter:none;background:0 0;border-color:#0000}.btn-ghost:before{display:none}.btn-ghost:hover{box-shadow:none;background:#ffffff0d;border-color:#0000}.corb{margin:26px auto;animation:6.5s ease-in-out infinite corb-breathe;position:relative}@keyframes corb-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.045)}}.corb-pulse{animation:.45s cubic-bezier(.34,1.56,.64,1) corb-pop}@keyframes corb-pop{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}.corb-halo{z-index:0;filter:blur(34px);pointer-events:none;border-radius:50%;transition:background .5s;position:absolute;inset:-48%}.corb-canvas,.corb-fallback{border-radius:50%;width:100%;height:100%;position:absolute;inset:0}.corb-canvas{z-index:2;opacity:0;pointer-events:none;transition:opacity .5s;display:block}.corb-canvas.is-ready{opacity:1}.corb-fallback{z-index:1;opacity:1;pointer-events:none;transition:opacity .5s}.corb-fallback.is-hidden{opacity:0}.corb-body{border-radius:50%;transition:background .5s,box-shadow .5s;position:absolute;inset:0;overflow:hidden}.corb-nebula-spin{transition:transform .12s linear;position:absolute;inset:0}.corb-nebula{filter:blur(14px);opacity:.85;border-radius:50%;animation:26s linear infinite nebula-idle;position:absolute;inset:-28%}@keyframes nebula-idle{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.corb-depth,.corb-refract{pointer-events:none;border-radius:50%;transition:background .5s;position:absolute;inset:0}.corb-spec{filter:blur(2px);pointer-events:none;background:radial-gradient(at 40% 35%,#fffffff2,#ffffff2e 55%,#0000 75%);border-radius:50%;width:34%;height:26%;position:absolute;top:12%;left:18%;transform:rotate(-18deg)}.corb-spec2{filter:blur(5px);opacity:.6;pointer-events:none;border-radius:50%;width:48%;height:16%;position:absolute;bottom:6%;left:26%}.corb-arc{filter:blur(.8px);pointer-events:none;border:1.5px solid #0000;border-color:#ffffff80 #0000 #0000 #ffffff29;border-radius:50%;position:absolute;inset:1.5%;transform:rotate(-24deg)}.corb-caustic{z-index:0;filter:blur(14px);opacity:.8;pointer-events:none;height:22%;position:absolute;bottom:-14%;left:8%;right:8%}.corb[data-orb-mood] .corb-canvas,.corb[data-orb-mood] .corb-fallback{filter:brightness(1.08)saturate(1.02)contrast(1.04)}.mood-expression{z-index:4;pointer-events:none;width:124%;height:124%;position:absolute;inset:-12%;overflow:visible}.mood-expression--enter{animation:.52s cubic-bezier(.22,1,.36,1) both mood-expression-arrive}.mood-expression--exit{z-index:3;animation:.52s ease-in both mood-expression-leave}.mood-stroke{color:#071a4a;stroke:currentColor;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 .7px .7px #f4f2ffb8)}.mood-stroke--hand{color:#071a4a;stroke-width:3.05px}.mood-stroke--accent{color:var(--mood-accent);stroke-width:2.45px;opacity:.96;filter:drop-shadow(0 0 2px)}.mood-stroke--tear{color:color-mix(in srgb, var(--mood-accent) 72%, white);stroke-width:2.15px;opacity:.98;filter:drop-shadow(0 0 2px)}.mood-stroke--blush{color:var(--mood-blush);stroke-width:2.65px;opacity:1;filter:drop-shadow(0 0 1.4px #ffd2e273)}.mood-expression__face,.mood-expression__hands,.mood-expression__accents{transform-box:fill-box;transform-origin:50%}.mood-expression__face{translate:0 5px;scale:1.2}.mood-expression__hands{translate:0 4px;scale:1.12}.mood-expression--sink .mood-expression__accents{animation:6.8s ease-in-out infinite mood-marks-fall}.mood-expression--settle .mood-expression__accents{animation:7.2s ease-in-out infinite mood-settle}.mood-expression--breathe .mood-expression__accents{animation:6.4s ease-in-out infinite mood-halo-breathe}.mood-expression--lift .mood-expression__hands{transform-origin:70% 70%;animation:5.6s ease-in-out infinite mood-wave}.mood-expression--glow .mood-expression__accents{animation:5.2s ease-in-out infinite mood-sparkle}.mood-expression--spark .mood-expression__hands{animation:4.8s ease-in-out infinite mood-hands-rise}.mood-expression--spark .mood-expression__accents{animation:4.8s ease-in-out infinite mood-sparkle}.mood-expression--withdraw .mood-expression__accents{animation:7.6s ease-in-out infinite mood-withdraw}.mood-expression--withdraw .mood-expression__hands{animation:7.6s ease-in-out infinite mood-hold}.mood-expression--rain .mood-expression__accents{animation:5.8s linear infinite mood-marks-fall}.mood-expression--bristle .mood-expression__hands{animation:4.4s ease-in-out infinite mood-bristle}.mood-expression--bristle .mood-expression__accents{animation:4.4s ease-in-out infinite mood-sparkle}.mood-expression--shiver .mood-expression__hands,.mood-expression--shiver .mood-expression__accents{animation:4.2s ease-in-out infinite mood-shiver}.mood-expression--fade .mood-expression__accents{animation:7.8s ease-in-out infinite mood-fade}.mood-expression--orbit .mood-expression__accents{animation:6.2s ease-in-out infinite mood-orbit}.mood-expression--hold .mood-expression__hands{animation:7.4s ease-in-out infinite mood-hold}.mood-expression--hold .mood-expression__accents{animation:7.4s ease-in-out infinite mood-tear-hold}.mood-expression--wobble .mood-expression__hands{animation:5.8s ease-in-out infinite mood-wobble}.mood-expression--wobble .mood-expression__accents{animation:5.8s ease-in-out infinite mood-orbit}@keyframes mood-expression-arrive{0%{opacity:0;filter:blur(2px);transform:scale(.96)}to{opacity:1;filter:none;transform:scale(1)}}@keyframes mood-expression-leave{0%{opacity:1;filter:none;transform:scale(1)}to{opacity:0;filter:blur(1px);transform:scale(1.018)}}@keyframes mood-marks-fall{0%,to{opacity:.72;transform:translateY(-1px)}50%{opacity:1;transform:translateY(3px)}}@keyframes mood-settle{0%,to{transform:translateY(0)}50%{transform:translateY(1.4px)}}@keyframes mood-breathe{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-.8px)scale(1.012)}}@keyframes mood-halo-breathe{0%,to{opacity:.62;transform:scale(.985)}50%{opacity:.94;transform:scale(1.018)}}@keyframes mood-wave{0%,72%,to{transform:rotate(0)}79%{transform:rotate(-5deg)}88%{transform:rotate(4deg)}}@keyframes mood-sparkle{0%,to{opacity:.58;transform:scale(.96)}48%{opacity:1;transform:scale(1.045)}}@keyframes mood-hands-rise{0%,to{transform:translateY(0)}45%{transform:translateY(-2.2px)}}@keyframes mood-withdraw{0%,to{transform:translateY(0)scale(1)}55%{transform:translateY(1.5px)scale(.985)}}@keyframes mood-hold{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}@keyframes mood-bristle{0%,86%,to{transform:translate(0)}89%{transform:translate(-1.2px)}93%{transform:translate(1.2px)}}@keyframes mood-shiver{0%,82%,to{transform:translate(0)}86%{transform:translate(-1px)}90%{transform:translate(1px)}94%{transform:translate(-.6px)}}@keyframes mood-fade{0%,to{opacity:.48;transform:translateY(0)}52%{opacity:.9;transform:translateY(2px)}}@keyframes mood-orbit{0%,to{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg)}}@keyframes mood-tear-hold{0%,to{transform:translateY(0)}55%{transform:translateY(.8px)}}@keyframes mood-wobble{0%,78%,to{transform:rotate(0)}84%{transform:rotate(-.8deg)}92%{transform:rotate(.8deg)}}@media (prefers-reduced-motion:reduce){.corb,.corb-nebula{animation:none}.corb-canvas,.corb-fallback{transition:none}.mood-expression--enter{animation:.16s linear both mood-expression-fade}.mood-expression--exit{animation:.16s linear both mood-expression-fade-out}.mood-expression__face,.mood-expression__hands,.mood-expression__accents{animation:none!important}}@keyframes mood-expression-fade{0%{opacity:0}to{opacity:1}}@keyframes mood-expression-fade-out{0%{opacity:1}to{opacity:0}}.dial{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;margin:0 auto;position:relative}.dial:active{cursor:grabbing}.dial-orb-center{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.dial-ring{pointer-events:none;opacity:.8;background:repeating-conic-gradient(#ffffff38 0deg .7deg,#0000 .7deg 6deg);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#0000 46.5%,#000 47% 49.5%,#0000 50%);mask:radial-gradient(circle,#0000 46.5%,#000 47% 49.5%,#0000 50%)}.dial-dot{pointer-events:none;background:#fff;border-radius:50%;width:10px;height:10px;margin:-5px;transition:background .3s;position:absolute;top:50%;left:50%;box-shadow:0 0 12px #ffffffe6,0 0 26px #8b7cf6cc}.dial-hint{color:var(--ink-faint);letter-spacing:.14em;justify-content:center;align-items:center;gap:10px;font-size:12px;display:flex}.dial-hint .arc{font-size:16px;animation:2.6s ease-in-out infinite hint-swing;display:inline-block}.screen--echo-void{--echo-silver:#e0e2e8e0;color:var(--echo-silver);padding-left:16px;padding-right:16px}.screen--echo-void .topbar{padding-left:8px;padding-right:8px}.screen--echo-void .eyebrow{letter-spacing:.38em;color:#cdd0daad;font-size:10px}.screen--echo-void .back-link{color:#cdd0dab8;font-size:11px}.echo-feel-dial{touch-action:none;cursor:grab;margin-top:108px!important}.echo-feel-dial:active{cursor:grabbing}.echo-feel-dial:focus-visible{outline:none}.echo-feel-dial:focus-visible .mood-orbit-steps:before{border-color:#e5e9f46b;box-shadow:inset 0 0 24px #cbd3ec12,0 0 24px #cbd3ec17}.screen--echo-void .dial-ring{opacity:0;background:0 0}.screen--echo-void .dial-dot{display:none}.mood-orbit-carousel{pointer-events:none;position:absolute;inset:0}.mood-orbit-lane{pointer-events:none;position:absolute;inset:-120px 0;overflow:visible}.mood-orbit-item{transform-origin:50%;will-change:transform, opacity;width:max-content;transition:transform .52s cubic-bezier(.22,.72,.18,1),opacity .42s cubic-bezier(.22,.72,.18,1);position:absolute;top:50%;left:50%}.mood-orbit-carousel.is-dragging .mood-orbit-item{transition:none}.mood-orbit-item>span,.mood-orbit-item img{pointer-events:none}.mood-orbit-item>span{transform-origin:50%;animation:.36s cubic-bezier(.2,.86,.2,1) both echo-mood-impact}@keyframes echo-mood-impact{0%{filter:brightness(1.38)saturate(1.08);transform:scale(.94)}48%{filter:brightness(1.2)saturate(1.04);transform:scale(1.075)}to{filter:none;transform:scale(1)}}.mood-orbit-toggle{z-index:42;cursor:pointer;pointer-events:auto;touch-action:none;background:0 0;border:0;border-radius:50%;outline:none;width:210px;height:210px;padding:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mood-orbit-toggle:after{content:"";border-radius:inherit;border:1px solid #0000;transition:border-color .26s,box-shadow .26s;position:absolute;inset:-6px}.mood-orbit-toggle:hover:after,.mood-orbit-toggle:focus-visible:after{border-color:#e2e6f133;box-shadow:0 0 24px #c6cde514}.mood-orbit-texts{z-index:46;pointer-events:none;position:absolute;inset:0}.mood-orbit-text{appearance:none;color:#dee1ead1;font-family:var(--serif);letter-spacing:.05em;white-space:nowrap;filter:blur(.15px);cursor:pointer;pointer-events:none;touch-action:manipulation;transform-origin:50%;will-change:transform, opacity;background:0 0;border:0;padding:8px 10px;font-size:14px;line-height:1;transition:opacity .32s,transform .42s cubic-bezier(.22,.72,.18,1),color .32s,filter .32s;position:absolute;top:50%;left:50%}.mood-orbit-text[data-visible]{pointer-events:auto}.mood-orbit-text[data-polarity=negative]{color:#c2cde5d1}.mood-orbit-text[data-polarity=positive]{color:#f1dcbedb}.mood-orbit-text[data-polarity=neutral]{color:#e7e6ece6}.mood-orbit-text[data-active]{color:#f0f1f6f0;filter:none;text-shadow:0 0 22px #cdd3e92e;font-size:28px}.mood-orbit-text[data-visible]:hover{color:#f8f9fcfa;filter:none;text-shadow:0 0 18px #d5dcf152}.mood-orbit-text:focus-visible{color:#fcfcff;filter:none;text-shadow:0 0 10px #eff2fcb8,0 0 24px #c6cfeb61;outline:none}.mood-orbit-steps{z-index:44;pointer-events:none;border-radius:50%;position:absolute;inset:0}.mood-orbit-steps:before{content:"";border:1px dotted #d5dae71f;border-radius:50%;transition:transform .22s,border-color .32s,box-shadow .32s;position:absolute;inset:4px;transform:scale(1);box-shadow:inset 0 0 18px #bcc4dd06,0 0 18px #bcc4dd06}.mood-orbit-carousel.is-expanded .mood-orbit-steps:before{border-color:#dde1eb38;box-shadow:inset 0 0 22px #c9d0e80b,0 0 22px #c9d0e80a}.mood-orbit-carousel.is-dragging .mood-orbit-steps:before{border-color:#e8ecf657;transform:scale(1.025);box-shadow:inset 0 0 28px #d2d9ef13,0 0 30px #cad3ef14}.mood-orbit-step{cursor:pointer;pointer-events:auto;transform-origin:50%;background:0 0;border:0;border-radius:999px;width:28px;height:28px;padding:0;transition:transform .42s cubic-bezier(.22,.72,.18,1),opacity .32s;position:absolute;top:50%;left:50%}.mood-orbit-step:before{content:"";background:#cdd2df94;border-radius:999px;width:1px;height:13px;transition:top .26s,height .26s,background .24s,box-shadow .24s;position:absolute;top:7px;left:50%;transform:translate(-50%);box-shadow:0 0 5px #bcc5e114}.mood-orbit-step[data-active]:before{background:#f6f7faf5;height:22px;top:3px;box-shadow:0 0 8px #e2e8f9bd,0 0 18px #c4cde952}.mood-orbit-step:focus-visible{outline:none}.mood-orbit-step:focus-visible:before{background:#fff;box-shadow:0 0 12px #e4e9f9e6}.mood-orbit-carousel.is-dragging .mood-orbit-step,.mood-orbit-carousel.is-dragging .mood-orbit-text{transition:none}.sr-only,.echo-mood-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.echo-swipe-hint{color:#c6cad699;letter-spacing:.12em;margin-top:58px;margin-bottom:0;font-size:12px}.echo-confirm{margin-top:42px}.screen--echo-void .btn-primary{color:#f0f1f5eb;text-shadow:0 1px 10px #00000073;background:linear-gradient(#ffffff1f,#0000 45%),linear-gradient(135deg,#5254605c,#25262e9e);border-color:#dadee861;box-shadow:inset 0 1px #ffffff2e,inset 0 -1px #00000061,0 12px 34px #0000006b,0 0 22px #807e9714}.screen--echo-void .btn-primary:hover{border-color:#e8ebf185;box-shadow:inset 0 1px #ffffff3d,0 14px 38px #00000075,0 0 24px #9290a91f}.screen--echo-void .echo-confirm{isolation:isolate;color:#f4f6faf0;text-shadow:0 1px 12px #000000b3;-webkit-backdrop-filter:blur(30px)saturate(165%)brightness(82%);backdrop-filter:blur(30px)saturate(165%)brightness(82%);touch-action:manipulation;background:#0c0f174d;border-color:#dee5f261;align-self:center;width:min(52vw,260px);min-height:50px;padding:13px 20px;transition:transform .18s cubic-bezier(.22,.72,.18,1),border-color .22s,background .22s,box-shadow .22s,-webkit-backdrop-filter .22s,backdrop-filter .22s;box-shadow:inset 0 1px #ffffff57,inset 0 -1px #02050b94,inset 10px 0 20px #eff4ff06,0 14px 34px #00000070,0 0 0 1px #73809d12,0 0 24px #808fb114}.screen--echo-void .echo-confirm:before{content:"";z-index:0;border-radius:inherit;pointer-events:none;opacity:.82;background:linear-gradient(120deg,#ffffff14,#0000 24% 72%,#7d8bac0a),linear-gradient(#ffffff1c,#0000 38%);transition:opacity .22s,box-shadow .22s;position:absolute;inset:1px;box-shadow:inset 1px 1px #ffffff24,inset -1px -1px #0103085c}.screen--echo-void .echo-confirm:after{content:"";z-index:0;pointer-events:none;opacity:.68;background:radial-gradient(at 26% 34%,#ffffff29,#ffffff09 24%,#0000 48%),linear-gradient(108deg,#0000 30%,#ffffff13 44%,#ffffff05 54%,#0000 68%);border-radius:50%;transition:opacity .22s;animation:7.5s ease-in-out infinite alternate echo-glass-sheen;position:absolute;inset:-35% -18%;transform:translate(-12%,-2%)rotate(-2deg)}.screen--echo-void .echo-confirm:hover{background:#0f121b57;border-color:#ebf0fa80;box-shadow:inset 0 1px #ffffff6b,inset 0 -1px #02050b99,inset 11px 0 22px #eff4ff09,0 16px 38px #0000007a,0 0 0 1px #8997b517,0 0 28px #8f9ec11c}.screen--echo-void .echo-confirm:hover:before{opacity:1;box-shadow:inset 1px 1px #fff3,inset -1px -1px #01030866}.screen--echo-void .echo-confirm:active{-webkit-backdrop-filter:blur(34px)saturate(175%)brightness(88%);backdrop-filter:blur(34px)saturate(175%)brightness(88%);background:#14172161;border-color:#f4f7fd8a;transform:translateY(1px)scale(.965);box-shadow:inset 0 2px 8px #ffffff2e,inset 0 -2px 10px #0002077a,0 6px 16px #0006,0 0 24px #9dabcc1f}.screen--echo-void .echo-confirm:active:before{opacity:1;box-shadow:inset 0 2px 7px #ffffff24,inset 0 -2px 7px #0002086b}.screen--echo-void .echo-confirm:active:after{opacity:.9}.screen--echo-void .echo-confirm:focus-visible{outline-offset:4px;outline:1px solid #f1f4fcd1}@keyframes echo-glass-sheen{0%{transform:translate(-12%,-2%)rotate(-2deg)}to{transform:translate(12%,2%)rotate(2deg)}}@media (height<=820px){.echo-feel-dial{margin-top:98px!important}.echo-swipe-hint{margin-top:52px}.echo-confirm{margin-top:34px}}@media (prefers-reduced-motion:reduce){.mood-orbit-item,.mood-orbit-step,.mood-orbit-step:before,.mood-orbit-text,.mood-orbit-toggle:after{transition:none}.mood-orbit-item>span{animation:none}.mood-orbit-steps:before,.mood-orbit-carousel.is-dragging .mood-orbit-steps:before{transform:none}.screen--echo-void .echo-confirm:before,.screen--echo-void .echo-confirm:after{transition:none;animation:none}}@keyframes hint-swing{0%,to{transform:rotate(-16deg)}50%{transform:rotate(16deg)}}.word-ring{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.word-item{appearance:none;color:var(--ink-faint);font-family:var(--sans);letter-spacing:.12em;white-space:nowrap;pointer-events:auto;cursor:pointer;background:0 0;border:0;padding:6px 10px;font-size:14px;line-height:1;transition:color .3s,text-shadow .3s,opacity .3s,font-size .3s,scale .18s;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.word-item.smooth{transition:transform .4s cubic-bezier(.22,1,.36,1),color .3s,text-shadow .3s,font-size .3s,scale .18s}.word-item.picked{color:var(--accent-soft);text-shadow:0 0 14px #8b7cf6b3}.word-item.focus{color:#fff;font-size:19px;font-family:var(--serif);text-shadow:0 0 18px #ffffffa6,0 0 40px #8b7cf6cc}.word-item:active{color:var(--accent-soft);text-shadow:0 0 20px #8b7cf6e0;scale:.94}.word-item.picked:after{content:"";background:#b9aefc;border-radius:50%;width:5px;height:5px;position:absolute;top:4px;right:-2px;box-shadow:0 0 8px #b9aefc}.chips{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.chip{border:1px solid var(--glass-border);color:var(--ink-dim);letter-spacing:.06em;cursor:pointer;-webkit-backdrop-filter:blur(10px)saturate(140%);background:linear-gradient(#ffffff1a,#ffffff05 60%),#ffffff08;border-radius:999px;padding:9px 18px;font-size:13.5px;transition:all .3s;box-shadow:inset 0 1px #ffffff24}.chip.on{color:var(--accent-soft);background:#8b7cf638;border-color:#8b7cf6cc;box-shadow:0 0 18px #8b7cf659}.chip:hover{color:var(--ink);border-color:#c9befc75}.chip.on:hover{color:var(--accent-soft)}.chip:active{color:var(--accent-soft);scale:.97}.fork-card{text-align:left;border-radius:var(--radius-lg);cursor:pointer;width:100%;color:var(--ink);padding:24px;transition:all .4s;display:block}.fork-card:hover{border-color:#ffffff47;transform:translateY(-3px);box-shadow:0 18px 44px #00000059}.fork-card h3{font-family:var(--serif);margin-bottom:8px;font-size:19px;font-weight:500}.fork-card p{color:var(--ink-dim);font-size:13px;line-height:1.8}.chat-list{scrollbar-width:none;flex-direction:column;flex:1;gap:14px;padding:8px 2px 16px;display:flex;overflow-y:auto}.chat-list::-webkit-scrollbar{display:none}.bubble{letter-spacing:.02em;white-space:pre-wrap;word-break:break-word;border-radius:20px;max-width:82%;padding:13px 17px;font-size:14.5px;line-height:1.85;animation:.5s cubic-bezier(.22,1,.36,1) bubble-in}@keyframes bubble-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.bubble.ai{color:var(--ink);background:#8b7cf624;border:1px solid #8b7cf640;border-bottom-left-radius:6px;align-self:flex-start}.bubble.user{background:#ffffff17;border:1px solid #ffffff21;border-bottom-right-radius:6px;align-self:flex-end}.typing-dots{gap:5px;padding:4px 2px;display:inline-flex}.typing-dots i{background:var(--ink-dim);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite dot-pulse}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}@keyframes dot-pulse{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.chat-input-bar{border-radius:24px;align-items:flex-end;gap:10px;padding:10px;display:flex}.chat-input{resize:none;color:var(--ink);font-family:var(--sans);background:0 0;border:none;outline:none;flex:1;max-height:120px;padding:10px 8px;font-size:15px;line-height:1.6}.icon-btn{border:1px solid var(--glass-border);width:44px;height:44px;color:var(--ink);cursor:pointer;background:#ffffff0f;border-radius:50%;flex-shrink:0;place-items:center;font-size:18px;transition:all .3s;display:grid}.icon-btn:hover{background:#ffffff1f}.icon-btn.rec{background:#f064824d;border-color:#f0648299;animation:1.4s ease-in-out infinite rec-pulse}@keyframes rec-pulse{0%,to{box-shadow:0 0 #f0648273}50%{box-shadow:0 0 0 12px #f0648200}}.diary-paper{font-family:var(--serif);letter-spacing:.05em;white-space:pre-wrap;color:#f0ecffeb;border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:linear-gradient(#ffffff12,#ffffff08);padding:26px 24px;font-size:15.5px;line-height:2.15}.diary-edit{resize:vertical;width:100%;min-height:260px;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;background:0 0;border:none;outline:none}.switch-row{justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.switch{border:1px solid var(--glass-border);cursor:pointer;background:#ffffff1f;border-radius:999px;flex-shrink:0;width:50px;height:30px;transition:background .3s;position:relative}.switch.on{background:linear-gradient(135deg,#8b7cf6,#f0a6ca)}.switch i{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .3s cubic-bezier(.22,1,.36,1);position:absolute;top:3px;left:3px}.switch.on i{transform:translate(20px)}.entry-card{border-radius:var(--radius-md);cursor:pointer;padding:20px 22px;transition:all .35s}.entry-card:hover{border-color:#ffffff40;transform:translateY(-2px)}.entry-meta{color:var(--ink-faint);letter-spacing:.08em;align-items:center;gap:8px;font-size:12px;display:flex}.tag{border:1px solid var(--glass-border);color:var(--ink-dim);letter-spacing:.1em;border-radius:999px;padding:3px 10px;font-size:11px}.tag.past{color:#b9aefc;border-color:#8b7cf680}.tag.now{color:#8fdcec;border-color:#7ee8fa66}.topbar{justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.back-link{color:var(--ink-interactive);cursor:pointer;letter-spacing:.1em;background:0 0;border:none;padding:6px 0;font-size:14px;transition:color .2s,text-shadow .2s,scale .18s}.back-link:hover{color:var(--ink)}.back-link:active{color:var(--accent-soft);text-shadow:0 0 16px #8b7cf6b8;scale:.97}.back-link:focus-visible,.btn:focus-visible,.chip:focus-visible,.word-item:focus-visible,.note-input:focus-visible{outline-offset:3px;outline:2px solid #cfc0fff2}.fade-in{animation:.9s cubic-bezier(.22,1,.36,1) screen-in}.hint{color:var(--ink-faint);letter-spacing:.06em;font-size:12px;line-height:1.8}.note-input{appearance:none;border-radius:var(--radius-lg);width:100%;color:var(--ink);font-family:var(--sans);caret-color:var(--accent-soft);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-backdrop-filter:blur(16px)saturate(135%);background:linear-gradient(105deg,#0000 30%,#ffffff13 47%,#0000 64%) 135% 0/260% 100% no-repeat,#08071794;border:1px solid #c9befc47;outline:none;padding:20px;font-size:15px;line-height:1.9;transition:border-color .25s,box-shadow .25s,background-color .25s;animation:7s ease-in-out infinite note-shimmer;box-shadow:inset 0 1px #ffffff1a,inset 0 -12px 30px #4a3c8414,0 12px 36px #03020c38}textarea.note-input{resize:none;min-height:140px}.past-time-input{min-height:54px;padding:16px 20px}.note-input::placeholder{color:var(--ink-placeholder);opacity:1}.note-input:focus{border-color:#c9befcad;box-shadow:inset 0 1px #ffffff29,inset 0 -12px 30px #4a3c841c,0 0 0 3px #8b7cf61a,0 0 28px #8b7cf633}.note-input:-webkit-autofill{-webkit-text-fill-color:var(--ink);caret-color:var(--accent-soft);-webkit-box-shadow:inset 0 0 0 1000px #080717f0}.note-input:-webkit-autofill:hover{-webkit-text-fill-color:var(--ink);caret-color:var(--accent-soft);-webkit-box-shadow:inset 0 0 0 1000px #080717f0}.note-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);caret-color:var(--accent-soft);-webkit-box-shadow:inset 0 0 0 1000px #080717f0}@keyframes note-shimmer{0%,24%{background-position:135% 0}72%,to{background-position:-75% 0}}@media (prefers-reduced-motion:reduce){.note-input{animation:none}.word-item,.chip,.back-link,.btn{transition-duration:.01ms}.word-item:active,.chip:active,.back-link:active{scale:1}.btn:active{transform:none}}.memory-sticker-screen{max-width:560px;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.sticker-intro{text-align:center;margin:2px 0 18px}.sticker-intro .eyebrow{letter-spacing:.34em;margin-bottom:7px}.sticker-intro .title{font-size:clamp(27px,7.2vw,34px);line-height:1.35}.sticker-intro .subtitle{margin-top:5px;font-size:13px}.sticker-preview-shell{overscroll-behavior-y:contain;scrollbar-color:#beb1f461 transparent;scrollbar-width:thin;justify-content:center;align-items:flex-start;min-height:375px;max-height:min(68dvh,760px);margin-bottom:20px;padding:12px 0;display:flex;overflow-y:auto}.sticker-preview-image{object-fit:cover;border:1px solid #ffffff1c;border-radius:23px;flex:none;width:min(76%,320px);height:auto;animation:.46s cubic-bezier(.22,1,.36,1) sticker-reveal;display:block;box-shadow:0 28px 76px #00000080,0 0 54px #8b7cf624}.sticker-preview-skeleton{aspect-ratio:4/5;border-radius:23px;flex:none;width:min(76%,320px)}@keyframes sticker-reveal{0%{opacity:0;transform:translateY(7px)scale(.985)}to{opacity:1;transform:none}}.sticker-preview-skeleton{color:var(--ink-faint);letter-spacing:.14em;background:#ffffff09;border:1px solid #ffffff17;place-items:center;font-size:12px;display:grid;position:relative;overflow:hidden}.sticker-preview-error{color:#e2deebb3;align-content:center;gap:12px}.sticker-preview-error button{appearance:none;color:#f1eff7e6;font:inherit;letter-spacing:.08em;cursor:pointer;background:#8b7cf61f;border:1px solid #cfc0ff42;border-radius:999px;padding:8px 15px}.sticker-preview-skeleton:before,.template-artwork-loading:before{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff14 47%,#0000 64%);animation:1.7s ease-in-out infinite sticker-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes sticker-shimmer{to{transform:translate(100%)}}.template-picker{margin-top:1px}.template-picker-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:11px;padding:0 2px;display:flex}.template-picker-heading h2{font-family:var(--serif);letter-spacing:.04em;font-size:16px;font-weight:500;line-height:1.4}.template-picker-heading>span,.template-kicker{color:var(--ink-faint);letter-spacing:.2em;font-size:9px}.template-kicker{margin-bottom:2px}.template-strip{scroll-snap-type:x proximity;scrollbar-width:none;gap:10px;margin:0 -2px;padding:2px 2px 8px;display:flex;overflow-x:auto}.template-strip::-webkit-scrollbar{display:none}.template-card{scroll-snap-align:start;appearance:none;text-align:left;min-width:0;color:var(--ink);cursor:pointer;background:linear-gradient(#ffffff13,#ffffff05),#0808158f;border:1px solid #ffffff1a;border-radius:15px;flex:1 0 112px;padding:7px;transition:border-color .24s,background .24s,transform .24s,box-shadow .24s;position:relative;box-shadow:inset 0 1px #ffffff17}.template-card:hover{border-color:#ffffff38;transform:translateY(-2px)}.template-card:active{transform:translateY(0)scale(.985)}.template-card:focus-visible,.back-link:focus-visible,.btn:focus-visible{outline-offset:3px;outline:2px solid #cfc0fff2}.template-card.is-selected{background:linear-gradient(#a693ff30,#a693ff0e),#0c0b1dc7;border-color:#baabffb8;box-shadow:inset 0 1px #ffffff2b,0 0 0 2px #8b7cf614,0 9px 28px #1d164047}.template-number{z-index:2;color:#ffffffc2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.08em;background:#06060f7a;border:1px solid #ffffff29;border-radius:999px;place-items:center;width:24px;height:17px;font-size:8px;display:grid;position:absolute;top:12px;left:12px}.template-artwork{aspect-ratio:8/5;background:#ffffff0b;border-radius:9px;width:100%;display:block;position:relative;overflow:hidden}.template-artwork img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.template-artwork-loading{position:absolute;inset:0;overflow:hidden}.template-name,.template-tone{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.template-name{font-family:var(--serif);letter-spacing:.03em;margin:8px 2px 1px;font-size:12px}.template-tone{color:var(--ink-faint);letter-spacing:.08em;margin:0 2px 2px;font-size:8px}.sticker-error{color:#f4c4d4;background:#7d344e24;border:1px solid #f0a6ca33;border-radius:12px;margin-top:10px;padding:11px 14px;font-size:12px;line-height:1.65}.sticker-actions{z-index:20;right:50%;bottom:max(14px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px)saturate(140%);background:#070712c2;border:1px solid #d5cdf424;border-radius:20px;grid-template-columns:1fr 1fr;gap:12px;width:min(100% - 40px,512px);margin:0;padding:10px;display:grid;position:fixed;transform:translate(50%);box-shadow:0 18px 54px #00000075}.sticker-actions .btn{min-width:0;padding-inline:14px}@media (width<=410px){.memory-sticker-screen{padding-inline:20px}.sticker-preview-shell{min-height:342px}.sticker-preview-image,.sticker-preview-skeleton{width:min(79%,288px)}.template-card{flex-basis:108px}}@media (prefers-reduced-motion:reduce){.sticker-preview-image,.sticker-preview-skeleton:before,.template-artwork-loading:before{animation:none}.template-card{transition:none}}.landing-page{--landing-max:1180px;height:100dvh;min-height:100dvh;color:var(--ink);scrollbar-width:thin;scrollbar-color:#cfc0ff4d transparent;background:radial-gradient(900px 600px at 79% 7%,#8b7cf629,#0000 65%),radial-gradient(760px 560px at 7% 63%,#f0a6ca17,#0000 68%),linear-gradient(#0a0919 0%,#06060f 52%,#09081a 100%);position:relative;overflow:hidden auto}.landing-page:before{z-index:0;pointer-events:none;content:"";opacity:.34;background-image:radial-gradient(circle at 18% 23%,#fffc 0 1px,#0000 1.6px),radial-gradient(circle at 77% 18%,#e4deffb3 0 1px,#0000 1.7px),radial-gradient(circle at 66% 73%,#f0a6cab3 0 1px,#0000 1.7px),radial-gradient(circle at 38% 87%,#7ee8fa80 0 1px,#0000 1.5px);background-size:191px 211px,247px 269px,223px 239px,307px 331px;position:absolute;inset:0}.landing-nav,.landing-hero,.landing-trust,.landing-section,.landing-final-cta,.landing-footer{z-index:1;width:min(var(--landing-max), calc(100% - 64px));margin-inline:auto;position:relative}.landing-nav{justify-content:space-between;align-items:center;min-height:92px;padding:8px 0;display:flex}.landing-brand{color:var(--ink);align-items:center;gap:11px;text-decoration:none;display:inline-flex}.landing-brand>span:last-child{align-items:baseline;gap:7px;display:flex}.landing-brand strong{font-family:var(--serif);letter-spacing:.08em;font-size:19px;font-weight:500}.landing-brand em{color:var(--ink-faint);letter-spacing:.18em;font-size:11px;font-style:normal}.landing-brand-logo{object-fit:contain;filter:drop-shadow(0 0 14px #8b7cf633);width:36px;height:36px;display:block}.landing-nav-links{align-items:center;gap:30px;display:flex}.landing-nav-links>a:not(.landing-nav-cta){color:var(--ink-faint);letter-spacing:.08em;font-size:12px;text-decoration:none;transition:color .25s}.landing-nav-links>a:not(.landing-nav-cta):hover{color:var(--ink)}.landing-nav-cta{color:var(--ink);letter-spacing:.08em;background:#ffffff0e;border:1px solid #d5cdf433;border-radius:999px;padding:10px 14px;font-size:11px;text-decoration:none;transition:border-color .25s,background .25s}.landing-nav-cta:hover{background:#ffffff1a;border-color:#d5cdf480}.landing-hero{grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);align-items:center;gap:clamp(38px,5.3vw,76px);min-height:min(710px,100dvh - 92px);padding:56px 0 92px;display:grid}.landing-kicker{color:var(--ink-faint);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:9px;font-size:10px;display:flex}.landing-kicker>span{background:linear-gradient(90deg, var(--glow-rose), var(--glow-violet));width:19px;height:1px;display:inline-block}.landing-hero h1{max-width:620px;font-family:var(--serif);letter-spacing:.04em;margin-top:25px;font-size:clamp(44px,6.4vw,78px);font-weight:500;line-height:1.17}.landing-hero h1 span,.landing-section h2 em,.landing-how h2 em,.landing-final-cta h2 em{color:#0000;background:linear-gradient(115deg,#eee8ff 0%,#beb4fa 48%,#f0a6ca 100%);-webkit-background-clip:text;background-clip:text;font-style:normal}.landing-lead{max-width:420px;color:var(--ink-dim);letter-spacing:.03em;margin-top:26px;font-size:15px;line-height:1.9}.landing-actions{align-items:center;gap:23px;margin-top:37px;display:flex}.landing-primary,.landing-secondary,.landing-inline-link{align-items:center;gap:18px;text-decoration:none;display:inline-flex}.landing-primary{color:#fff;letter-spacing:.1em;background:linear-gradient(125deg,#8b7cf6eb,#f0a6cac2);border:1px solid #ffffff42;border-radius:999px;padding:15px 21px 15px 24px;font-size:13px;transition:transform .25s,box-shadow .25s;box-shadow:0 12px 36px #7d5cbe47,inset 0 1px #ffffff70}.landing-primary span{font-size:18px;line-height:1;transition:transform .25s}.landing-primary:hover{transform:translateY(-2px);box-shadow:0 16px 42px #7d5cbe61,inset 0 1px #ffffff85}.landing-primary:hover span{transform:translate(3px)}.landing-secondary{color:var(--ink-faint);letter-spacing:.1em;font-size:12px;transition:color .25s}.landing-secondary span{color:var(--accent-soft);font-size:17px}.landing-secondary:hover{color:var(--ink)}.landing-note{color:#eae6ff6b;letter-spacing:.08em;margin-top:22px;font-size:10px}.landing-trust{color:#eae6ff6b;letter-spacing:.2em;text-transform:uppercase;border-top:1px solid #d5cdf41c;border-bottom:1px solid #d5cdf41c;justify-content:space-between;padding:22px 0 27px;font-size:9px;display:flex}.landing-moods-heading{align-items:flex-end}.landing-moods-intro{max-width:310px;color:var(--ink-faint);padding-bottom:3px;font-size:13px;line-height:1.85}.landing-mood-gallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:61px;display:grid}.landing-mood-card{min-width:0;color:inherit;text-align:left;appearance:none;cursor:pointer;background:linear-gradient(#ffffff0d,#ffffff05);border:1px solid #d5cdf41f;border-radius:17px;padding:12px 7px 15px;font-family:inherit;transition:transform .28s,border-color .28s,background .28s;overflow:hidden}.landing-mood-card:hover{background:linear-gradient(#8b7cf61f,#ffffff06);border-color:#d5cdf457;transform:translateY(-5px)}.landing-mood-card[data-polarity=negative]{background:linear-gradient(#67738f1a,#ffffff05)}.landing-mood-card[data-polarity=positive]{background:linear-gradient(#f0a6ca1a,#ffffff05)}.landing-mood-card[aria-pressed=true]{background:linear-gradient(#a68df32e,#ffffff07);border-color:#cbbbffb8;box-shadow:inset 0 0 30px #b49dfb0f,0 0 22px #8b7cf61c}.landing-mood-card:focus-visible,.landing-page a:focus-visible{outline-offset:5px;outline:2px solid #d5c9ff}.landing-mood-selection{color:var(--accent-soft);text-align:center;font-family:var(--serif);letter-spacing:.08em;margin-top:24px;font-size:14px}.landing-mood-planet{filter:saturate(.92);max-width:126px;margin:0 auto;transition:filter .28s,transform .28s;width:100%!important;display:block!important}.landing-mood-card:hover .landing-mood-planet{filter:saturate(1.1)brightness(1.07);transform:scale(1.045)}.landing-mood-meta{justify-content:space-between;align-items:baseline;gap:6px;padding:1px 5px 0;display:flex}.landing-mood-meta span{color:var(--accent-soft);letter-spacing:.13em;font-size:9px}.landing-mood-meta strong{color:var(--ink-dim);font-family:var(--serif);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.landing-section{padding:clamp(98px,13vw,165px) 0}.landing-section-heading{justify-content:space-between;align-items:flex-start;gap:40px;display:flex}.landing-section h2,.landing-how h2,.landing-final-cta h2{max-width:540px;font-family:var(--serif);letter-spacing:.04em;font-size:clamp(32px,4.1vw,52px);font-weight:500;line-height:1.35}.landing-feature-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:68px;display:grid}.landing-feature-card{background:#ffffff09;border:1px solid #d5cdf41f;border-radius:20px;min-height:236px;padding:27px 26px 24px}.landing-feature-card-highlight{background:linear-gradient(145deg,#8b7cf624,#ffffff06);border-color:#c1b2ff47}.landing-feature-index{color:var(--accent-soft);letter-spacing:.17em;font-size:10px}.landing-feature-card h3{font-family:var(--serif);letter-spacing:.04em;margin-top:48px;font-size:20px;font-weight:500}.landing-feature-card p{color:var(--ink-faint);margin-top:13px;font-size:13px;line-height:1.8}.landing-how{border-top:1px solid #d5cdf41c;grid-template-columns:.85fr 1.15fr;align-items:end;gap:clamp(50px,10vw,150px);display:grid}.landing-how-copy>p:not(.landing-kicker){max-width:360px;color:var(--ink-faint);margin-top:24px;font-size:13px;line-height:1.9}.landing-inline-link{color:var(--ink);letter-spacing:.13em;border-bottom:1px solid #cfc0ff8c;margin-top:28px;padding-bottom:6px;font-size:12px}.landing-inline-link span{color:var(--accent-soft);font-size:16px}.landing-steps{list-style:none}.landing-steps li{border-bottom:1px solid #d5cdf41c;grid-template-columns:48px 82px 1fr;align-items:baseline;gap:15px;padding:22px 0;display:grid}.landing-steps li:first-child{border-top:1px solid #d5cdf41c}.landing-steps span{color:var(--accent-soft);letter-spacing:.15em;font-size:10px}.landing-steps strong{font-family:var(--serif);letter-spacing:.06em;font-size:19px;font-weight:500}.landing-steps em{color:var(--ink-faint);letter-spacing:.05em;font-size:12px;font-style:normal}.landing-final-cta{border-top:1px solid #d5cdf41c;justify-content:space-between;align-items:flex-end;gap:32px;padding:67px 0 74px;display:flex}.landing-final-cta h2{margin-top:23px;font-size:clamp(28px,3.5vw,44px)}.landing-footer{color:#eae6ff5c;letter-spacing:.1em;border-top:1px solid #d5cdf41c;justify-content:space-between;padding:22px 0 35px;font-size:9px;display:flex}.landing-footer a{color:var(--ink-faint);text-decoration:none}.landing-footer a:hover{color:var(--ink)}.privacy-content{z-index:1;width:min(780px,100% - 64px);margin:62px auto 104px;position:relative}.privacy-heading{padding-bottom:50px}.privacy-heading h1{color:var(--ink);font-family:var(--serif);letter-spacing:.05em;margin:24px 0 20px;font-size:clamp(36px,5vw,56px);font-weight:500}.privacy-heading>p:not(.landing-kicker){max-width:550px;color:var(--ink-dim);font-size:14px;line-height:1.9}.privacy-updated{color:var(--ink-faint);letter-spacing:.05em;margin-top:20px;font-size:11px;display:block}.privacy-content>section{border-top:1px solid #d5cdf421;grid-template-columns:42px minmax(0,1fr);gap:18px;padding:34px 0;display:grid}.privacy-section-number{color:var(--accent-soft);letter-spacing:.18em;padding-top:6px;font-size:10px}.privacy-content h2{font-family:var(--serif);letter-spacing:.035em;margin-bottom:18px;font-size:22px;font-weight:500;line-height:1.5}.privacy-content section p{color:var(--ink-dim);margin-top:13px;font-size:14px;line-height:1.95}.privacy-home-link{margin-left:60px}@media (width<=780px){.landing-nav,.landing-hero,.landing-trust,.landing-section,.landing-final-cta,.landing-footer{width:min(100% - 40px, var(--landing-max))}.landing-nav{min-height:78px}.landing-nav-links{gap:15px}.landing-nav-links>a:not(.landing-nav-cta){display:none}.landing-hero{flex-direction:column;align-items:stretch;gap:18px;padding:72px 0 74px;display:flex}.landing-hero-copy{z-index:1;position:relative}.landing-hero h1{font-size:clamp(43px,12vw,66px)}.landing-section-heading{display:block}.landing-section-heading h2{margin-top:27px}.landing-moods-intro{max-width:340px;margin-top:25px}.landing-mood-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:42px}.landing-mood-card{border-radius:14px;padding-inline:4px}.landing-mood-meta{padding-inline:4px;display:block}.landing-mood-meta span{margin-bottom:3px;display:block}.landing-feature-grid{grid-template-columns:1fr;margin-top:46px}.landing-feature-card{min-height:auto;padding:23px}.landing-feature-card h3{margin-top:28px}.landing-how{display:block}.landing-steps{margin-top:56px}.landing-final-cta{display:block}.landing-final-cta .landing-primary{margin-top:30px}.privacy-content{width:calc(100% - 40px);margin-top:48px;margin-bottom:72px}.privacy-heading{padding-bottom:35px}.privacy-content>section{grid-template-columns:25px minmax(0,1fr);gap:10px;padding-block:27px}.privacy-content h2{font-size:20px}.privacy-home-link{margin-left:35px}}@media (width<=430px){.landing-trust{letter-spacing:.1em;gap:10px;font-size:8px}.landing-trust span:nth-child(2){display:none}.landing-actions{gap:17px}.landing-primary{padding-inline:18px}.landing-steps li{grid-template-columns:38px 67px 1fr;gap:8px}.landing-steps em,.landing-mood-meta strong{font-size:11px}}@media (prefers-reduced-motion:reduce){.landing-primary,.landing-primary span,.landing-mood-card,.landing-mood-planet{transition:none}}.cosmic-sky{pointer-events:none;z-index:0;width:100%;height:100dvh;position:fixed;inset:0}.landing-universe{background:radial-gradient(at 79% 16%,#141127 0%,#0000 55%),linear-gradient(165deg,#060812,#080714 65%,#100b1c)}.landing-universe:before{display:none}.landing-universe .landing-hero{grid-template-columns:1fr 1.05fr;gap:20px;padding-top:12px;padding-bottom:50px}.landing-universe .landing-hero-copy{z-index:2;position:relative}.landing-universe .landing-lead{max-width:410px}.landing-universe .landing-trust{background:linear-gradient(90deg,#0000,#0a091555,#0000)}.planet-hero-wrap{min-width:0;position:relative}.planet-sanctuary{text-align:center;color:#ece5fb;position:relative}.planet-surface{isolation:isolate;height:clamp(420px,39vw,535px);position:relative}.planet-canvas{cursor:grab;touch-action:pan-y;opacity:0;outline:none;width:100%;height:100%;transition:opacity .8s;display:block}.planet-canvas.is-ready{opacity:1}.planet-canvas:active{cursor:grabbing}.planet-canvas:focus-visible{outline-offset:-8px;border-radius:24px;outline:1px solid #d6c6e9aa}.planet-coordinate{pointer-events:none;letter-spacing:.36em;color:#bcb7d366;font-size:8px;position:absolute;top:26px;left:0;right:0}.planet-home-light{pointer-events:none;white-space:nowrap;color:#dbbfa5b3;letter-spacing:.13em;align-items:center;gap:9px;font-size:10px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.planet-home-light i{background:#f7d4a5;border-radius:50%;width:4px;height:4px;box-shadow:0 0 12px 4px #e8b98444}.planet-fallback-art{pointer-events:none;max-width:75%;top:50%;left:50%;transform:translate(-50%,-50%);position:absolute!important}.planet-story{margin:-4px 0 20px}.planet-eyebrow{letter-spacing:.22em;color:#c6bfd8a6;font-size:9px;display:block}.planet-story p{font-family:var(--serif);color:#e2d6eccc;letter-spacing:.06em;margin-top:12px;font-size:16px}.planet-controls{justify-content:center;align-items:center;gap:8px;display:flex}.planet-controls button,.observatory-close,.observatory-bottom button{appearance:none;color:#e6d9f1;letter-spacing:.04em;cursor:pointer;background:#17122499;border:1px solid #d9c7ec30;border-radius:24px;padding:11px 17px;font-family:inherit;font-size:11px;transition:background .2s,border-color .2s}.planet-controls button:hover,.observatory-close:hover{background:#322640bb;border-color:#d6beeb77}.planet-controls button:disabled{opacity:.4;cursor:default}.planet-controls button span{margin-left:8px}.planet-controls button[aria-pressed=true]{background:#55403255;border-color:#d9bd9077}.planet-controls .planet-icon-control{width:38px;height:38px;padding:0;font-size:18px}.planet-controls .planet-expand{color:#c7bdd9;background:0 0;border-color:#0000;padding-inline:10px}.planet-gesture-hint{letter-spacing:.1em;color:#b5aec177;margin:14px 0 0;font-size:9px}.planet-controls button:focus-visible,.observatory-close:focus-visible,.observatory-moods button:focus-visible,.observatory-bottom a:focus-visible,.observatory-bottom button:focus-visible{outline-offset:4px;outline:2px solid #e2c4f1}.landing-mood-selection button{color:#c7b8dc;letter-spacing:.06em;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #c7b8dc44;padding:12px 0 5px;font-family:inherit;font-size:11px}.landing-universe .landing-mood-card{background:linear-gradient(145deg,#b394e510,#080a18bb);box-shadow:inset 0 1px #ddd0ff0a}.landing-universe .landing-mood-card:hover{transform:perspective(700px)translateY(-6px)rotateX(4deg)}.landing-universe .landing-feature-card{background-color:#0c0b1dc9}.planet-observatory{color:#eee5f8;background:radial-gradient(at 60% 35%,#171529,#050811 80%);border:none;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:auto}.planet-observatory::backdrop{background:#060813}.planet-observatory[open]{grid-template-rows:auto minmax(360px,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid}.observatory-header{z-index:1;justify-content:space-between;align-items:start;gap:20px;min-width:0;padding:35px 44px 0;display:flex;position:relative}.observatory-header h2{text-wrap:balance;font-family:var(--serif);letter-spacing:.1em;margin-top:13px;font-size:clamp(20px,2vw,27px);font-weight:400}.observatory-close{flex-shrink:0;padding:10px 15px}.observatory-close span{padding-left:13px;font-size:16px}.planet-observatory .planet-sanctuary{z-index:1;flex-direction:column;min-height:0;display:flex}.planet-observatory .planet-surface{flex:1;height:auto;min-height:270px}.planet-observatory .planet-canvas{touch-action:none;position:absolute;inset:0}.planet-observatory .planet-coordinate{top:8px}.planet-observatory .planet-home-light{bottom:14px}.planet-observatory .planet-story{margin:0 0 18px}.planet-observatory .planet-story p{font-size:19px}.planet-observatory .planet-gesture-hint{margin-bottom:14px}.observatory-footer{z-index:1;width:min(1120px,100% - 80px);min-width:0;margin:14px auto 0;position:relative}.observatory-moods{border-top:1px solid #d9cefa20;justify-content:center;gap:7px;padding:15px 4px;display:flex}.observatory-moods button{appearance:none;color:#b3aec0;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;flex:1;min-width:48px;padding:7px 2px;font-family:inherit}.observatory-moods button i{background:radial-gradient(circle at 30% 22%, #e7daef, var(--planet-tint) 28%, #161124 83%);border-radius:50%;width:22px;height:22px;margin:0 auto 10px;display:block;box-shadow:0 0 15px #c7a3e210,inset -3px -2px 5px #05061677}.observatory-moods button span{white-space:nowrap;font-size:9px;display:block}.observatory-moods button[aria-pressed=true]{color:#f0e1ff;background:#b8a0d519;border-color:#ccb7e844}.observatory-moods button[aria-pressed=true] i{box-shadow:0 0 17px #cfb3ec66}.observatory-bottom{justify-content:space-between;align-items:center;gap:20px;padding:0 0 24px;display:flex}.observatory-bottom button{color:#b7adca;background:0 0;border:none;padding:8px 0;font-size:10px}.observatory-bottom a{color:#e5c8a6;letter-spacing:.07em;padding:10px 0;font-size:12px;text-decoration:none}.observatory-bottom a span{margin-left:12px}@media (width>=1600px){.landing-universe .landing-hero{min-height:780px}}@media (width<=780px){.landing-universe .landing-hero{gap:10px;padding-top:43px;padding-bottom:42px}.landing-universe .landing-hero-copy{text-align:center}.landing-universe .landing-hero-copy .landing-kicker,.landing-universe .landing-actions{justify-content:center}.landing-universe .landing-lead{max-width:330px;margin-inline:auto;font-size:13px}.landing-universe .landing-hero h1{margin-inline:auto}.planet-hero-wrap{margin-inline:-20px}.planet-surface{height:410px}.planet-coordinate{top:16px}.planet-story p{font-size:14px}.planet-story{margin-bottom:17px}.planet-home-light{bottom:22px}.observatory-header{padding:23px 20px 0}.observatory-header h2{max-width:240px;font-size:19px;line-height:1.6}.observatory-header .planet-eyebrow{font-size:8px}.planet-observatory[open]{grid-template-rows:auto minmax(390px,1fr) auto}.planet-observatory .planet-story p{font-size:15px}.planet-observatory .planet-coordinate{display:none}.observatory-footer{width:calc(100% - 32px)}.observatory-moods{scrollbar-width:thin;scrollbar-color:#c6a8de44 transparent;justify-content:flex-start;overflow-x:auto}.observatory-moods button{flex:0 0 54px}.observatory-bottom{padding-bottom:max(16px, env(safe-area-inset-bottom));gap:8px}.observatory-bottom a{font-size:11px}}@media (prefers-reduced-motion:reduce){.planet-canvas,.planet-controls button,.landing-universe .landing-mood-card{transition:none}.landing-universe .landing-mood-card:hover{transform:none}}
