:root{--sg-abyss: #06232a;--sg-deep: #0a2e33;--sg-tide: #103f47;--sg-sea: #1c5b63;--sg-glass: #2e7d83;--sg-foam: #7fd6cf;--sg-mist: #b9ece6;--sg-pearl: #eaf6f4;--sg-sand: #f4efe6;--dir-left: #f3b14e;--dir-right: #5fd0e6;--dir-up: #86c5e6;--dir-down: #6fe0b8;--act-like: #f2c879;--act-reject: #33454a;--act-info: #86c5e6;--act-plan: #5fc9a0;--act-rest: #8fd4d0;--side-up: #86c5e6;--side-down: #5fc9a0;--side-left: #f2c879;--side-right: #d85a30;--side-negative: #33454a;--side-rest: #8fd4d0;--bg: var(--sg-deep);--bg-grad: radial-gradient(140% 120% at 50% 0%, #12454d 0%, var(--sg-deep) 46%, var(--sg-abyss) 100%);--text: var(--sg-pearl);--text-soft: #a9c9c7;--text-dim: #6f8f8e;--line: rgba(127, 214, 207, .16);--glass-bg: rgba(127, 214, 207, .07);--glass-bg-strong: rgba(127, 214, 207, .12);--glass-border: rgba(180, 232, 226, .22);--glass-blur: 18px;--glass-shadow: 0 18px 50px -20px rgba(0, 0, 0, .55);--glass-inner: inset 0 1px 0 rgba(234, 246, 244, .16), inset 0 -10px 26px -20px rgba(127, 214, 207, .4);--glass-drop: linear-gradient( 172deg, rgba(234, 246, 244, .07) 0%, rgba(127, 214, 207, .04) 34%, rgba(8, 30, 36, .05) 100%);--focus-ring: 0 0 0 2px rgba(127, 214, 207, .45), 0 0 18px -4px rgba(127, 214, 207, .5);--error-ring: 0 0 0 2px rgba(216, 90, 48, .55);--free: #6fe0b8;--paid: #f3c969;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--fs-hero: clamp(1.6rem, 6vw, 2.4rem);--fs-title: clamp(1.1rem, 4.2vw, 1.5rem);--fs-lead: clamp(.88rem, 3vw, 1.02rem);--fs-body: clamp(.84rem, 3.3vw, .94rem);--fs-small: clamp(.73rem, 2.8vw, .8rem);--fs-micro: clamp(.64rem, 2.4vw, .7rem);--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--r-sm: 10px;--r-md: 16px;--r-lg: 24px;--r-xl: 32px;--r-pill: 999px;--ease: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.55, 0, .45, 1);--t-fast: .18s;--t-mid: .36s;--t-slow: .64s;--app-max: 480px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{overscroll-behavior:none}html,body{height:100%;touch-action:manipulation}body{font-family:var(--font-ui);font-size:var(--fs-body);line-height:1.5;color:var(--text);background:var(--sg-abyss);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden;overscroll-behavior:none}#app{position:relative;height:100dvh;width:100%;max-width:var(--app-max);margin:0 auto;background:var(--bg-grad);overflow:hidden;isolation:isolate}@media(min-width:481px){body{background:#04161a}#app{height:min(880px,100dvh);margin-top:max(0px,calc((100dvh - 880px)/2));border-radius:var(--r-xl);box-shadow:0 40px 120px -30px #000c;border:1px solid rgba(127,214,207,.08)}}h1,h2,h3{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;line-height:1.12}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--sg-foam);outline-offset:3px;border-radius:6px}[tabindex="-1"]:focus-visible{outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.screen{position:absolute;inset:0;display:flex;flex-direction:column;padding:calc(var(--safe-top) + var(--s-5)) var(--s-5) calc(var(--safe-bottom) + var(--s-5))}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}#app:before{content:"";position:absolute;inset:-10%;z-index:0;pointer-events:none;background:radial-gradient(38% 30% at 22% 18%,rgba(127,214,207,.2),transparent 70%),radial-gradient(42% 34% at 82% 30%,rgba(95,208,230,.14),transparent 72%),radial-gradient(46% 40% at 50% 92%,rgba(46,125,131,.22),transparent 70%);filter:blur(8px);animation:caustics 22s ease-in-out infinite alternate}@keyframes caustics{0%{transform:translateZ(0) scale(1);opacity:.9}50%{transform:translate3d(2%,-2%,0) scale(1.06);opacity:1}to{transform:translate3d(-2%,1%,0) scale(1.03);opacity:.85}}#app:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(circle,rgba(234,246,244,.5) .5px,transparent 1.5px);background-size:64px 64px;opacity:.06;animation:drift 38s linear infinite}@keyframes drift{0%{background-position:0 0}to{background-position:64px 220px}}.screen{z-index:1}.detail-overlay,.toast{z-index:60}.orb:after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg,rgba(234,246,244,.45) 40deg,transparent 110deg,transparent 250deg,rgba(127,214,207,.35) 300deg,transparent 360deg);mix-blend-mode:screen;opacity:.5;animation:sheen 7s linear infinite;pointer-events:none}.scene--reveal:before,.scene--saved:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(234,246,244,.16) 50%,transparent 65%);transform:translate(-120%);animation:reflection 1.1s var(--ease) 1}@keyframes reflection{to{transform:translate(120%)}}@media(prefers-reduced-motion:reduce){#app:before,#app:after,.orb:after,.scene--reveal:before,.scene--saved:before{animation:none}}[data-role=reflect-hint].hint-breathe{animation:hint-breathe .48s cubic-bezier(.22,.61,.36,1)}@keyframes hint-breathe{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){[data-role=reflect-hint].hint-breathe{animation:none}}@media(max-height:680px){.orb{width:96px;height:96px}.splash-orb{width:132px;height:132px}.scene-title{font-size:var(--fs-lead)}}@media(max-height:560px){.orb-edge{padding:var(--s-2) var(--s-3);font-size:var(--fs-micro)}}.splash{position:absolute;inset:0;justify-content:space-between;text-align:center;overflow:hidden;--orb-a: #b9ece6;--orb-b: #7fd6cf;--orb-c: #2e7d83;background:radial-gradient(58% 40% at 50% 50%,color-mix(in srgb,var(--orb-a, #b9ece6) 30%,transparent),transparent 72%),radial-gradient(135% 96% at 50% 10%,color-mix(in srgb,var(--orb-b, #7fd6cf) 32%,transparent),transparent 56%),radial-gradient(122% 86% at 50% 114%,color-mix(in srgb,var(--orb-c, #2e7d83) 42%,transparent),transparent 60%),radial-gradient(95% 62% at 84% 90%,color-mix(in srgb,var(--sg-sand) 14%,transparent),transparent 64%),var(--bg-grad, var(--bg));transition:background .7s var(--ease)}.splash-reveal{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0}.splash-reveal.is-placed{opacity:1;transition:opacity .32s ease}.splash-reveal__eye{position:absolute;inset:0;clip-path:circle(var(--r0, 56px) at var(--cx, 50%) var(--cy, 44%))}.splash-reveal__img{width:100%;height:100%;object-fit:cover}.splash-stage,.splash-foot,.splash .lang-toggle{position:relative;z-index:1}.splash .lang-toggle{width:max-content;align-self:flex-end;top:auto;right:auto}.splash.is-lifting{position:fixed;inset:0;z-index:60;background:var(--bg-grad, var(--bg))}.splash.is-growing .splash-reveal__eye{clip-path:circle(var(--r1, 150vmax) at var(--cx, 50%) var(--cy, 44%));transition:clip-path var(--grow-ms, 1.15s) cubic-bezier(.3,.55,.15,1)}.splash.is-growing .splash-reveal__eye--2{transition-delay:90ms}.splash.is-growing .splash-reveal__eye--3{transition-delay:.18s}.splash.is-growing .splash-orb{opacity:0;transition:opacity .95s ease .32s}.splash.is-growing .splash-orb__core,.splash.is-growing .splash-orb__halo{transform:scale(9);transition:transform var(--grow-ms, 1.15s) cubic-bezier(.3,.55,.15,1);animation:none}.splash.is-skipping.is-growing .splash-orb__core,.splash.is-skipping.is-growing .splash-orb__halo{transition-duration:.26s}.splash.is-growing .splash-brand,.splash.is-growing .splash-foot,.splash.is-growing .lang-toggle{opacity:0;transition:opacity .48s ease}.splash.is-skipping .splash-reveal__eye,.splash.is-skipping.is-growing .splash-reveal__eye{transition-duration:.26s;transition-delay:0ms}.splash.is-skipping .splash-orb{transition-duration:.22s}.splash.is-done{opacity:0;transition:opacity .65s ease}.splash-stage{position:absolute;inset:0;display:grid;place-items:center;z-index:1}.splash-brand{position:absolute;left:50%;top:calc(50% + 128px);transform:translate(-50%);width:max-content;max-width:84vw;text-align:center}@property --orb-a{syntax: "<color>"; inherits: true; initial-value: #b9ece6;}@property --orb-b{syntax: "<color>"; inherits: true; initial-value: #7fd6cf;}@property --orb-c{syntax: "<color>"; inherits: true; initial-value: #2e7d83;}.splash-orb{position:relative;width:176px;height:176px;display:grid;place-items:center;--grp-x: 32.05%;--grp-y: 30.88%;transform-origin:center center}.splash-orb__core,.splash-orb__halo{position:absolute;border-radius:50%}.splash-orb__core{left:calc(26px - var(--grp-x));top:calc(26px - var(--grp-y));width:124px;height:124px;background:radial-gradient(circle at 33% 26%,rgba(244,255,253,.62),rgba(234,246,244,.14) 24%,transparent 46%),radial-gradient(circle at 70% 80%,color-mix(in srgb,var(--orb-a) 34%,transparent),transparent 58%),radial-gradient(circle at 68% 78%,color-mix(in srgb,var(--orb-b) 38%,transparent),transparent 60%),radial-gradient(circle at 50% 55%,color-mix(in srgb,var(--orb-b) 11%,transparent),color-mix(in srgb,var(--orb-c) 22%,transparent) 74%,color-mix(in srgb,var(--orb-c) 36%,transparent));border:1px solid color-mix(in srgb,var(--orb-a) 70%,rgba(214,245,241,.5));box-shadow:0 20px 55px -14px color-mix(in srgb,var(--orb-b) 60%,transparent),0 0 92px -18px color-mix(in srgb,var(--orb-b) 55%,transparent),inset -12px -18px 34px color-mix(in srgb,var(--orb-c) 60%,rgba(6,35,42,.5)),inset 10px 14px 28px #f4fffd4d;backdrop-filter:blur(7px) saturate(1.35);transform-origin:center center;animation:breathe 5.5s var(--ease) infinite;transition:--orb-a .7s var(--ease),--orb-b .7s var(--ease),--orb-c .7s var(--ease),border-color .7s var(--ease),box-shadow .7s var(--ease)}.splash-orb__core:after{content:"";position:absolute;left:17%;top:11%;width:36%;height:24%;border-radius:50%;background:linear-gradient(185deg,#ffffffe0,#ffffff0a);filter:blur(2px);transform:rotate(-20deg)}.splash-orb__core:before{content:"";position:absolute;inset:-1px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 70%,color-mix(in srgb,var(--orb-a) 85%,white) 84%,color-mix(in srgb,var(--orb-b) 70%,white) 90%,transparent 97%);-webkit-mask-image:radial-gradient(closest-side,transparent 78%,#000 92%);mask-image:radial-gradient(closest-side,transparent 78%,#000 92%);animation:sheen 7s linear infinite}.splash-orb__halo{left:calc(0px - var(--grp-x));top:calc(0px - var(--grp-y));width:100%;height:100%;border:1px solid color-mix(in srgb,var(--orb-b) 45%,transparent);background:radial-gradient(circle,color-mix(in srgb,var(--orb-b) 14%,transparent),transparent 70%);animation:ripple 5.5s var(--ease) infinite;transition:border-color .7s var(--ease),background .7s var(--ease)}.splash-orb__halo:after{content:"";position:absolute;inset:-14px;border-radius:50%;border:1px solid rgba(185,236,230,.22);animation:ripple 5.5s var(--ease) 1.1s infinite}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes ripple{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.12);opacity:.3}}@keyframes sheen{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.splash-orb__core{animation:none}.splash-orb__core:before{animation:none;opacity:.9}.splash-orb__halo,.splash-orb__halo:after{animation:none}}.splash-wordmark{font-size:var(--fs-hero);font-weight:600;letter-spacing:.02em;background:linear-gradient(180deg,var(--sg-pearl),var(--sg-foam));-webkit-background-clip:text;background-clip:text;color:transparent}.splash-tagline{margin-top:var(--s-3);color:var(--text-soft);font-size:var(--fs-lead);max-width:22ch;margin-inline:auto}.splash-foot{min-height:96px;display:flex;align-items:center;justify-content:center}.btn-primary{background:linear-gradient(180deg,var(--sg-foam),var(--sg-glass));color:#03242a;font-weight:600;padding:var(--s-4) var(--s-7);border-radius:var(--r-pill);box-shadow:0 14px 30px -12px #7fd6cfb3;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.btn-primary:active{transform:translateY(1px) scale(.99)}.btn-enter{min-width:200px}.splash-status{display:inline-flex;align-items:center;gap:var(--s-3);color:var(--text-soft)}.dot-pulse{width:10px;height:10px;border-radius:50%;background:var(--sg-foam);animation:dotpulse 1.1s ease-in-out infinite}@keyframes dotpulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}.lang-toggle{position:absolute;top:calc(var(--safe-top) + var(--s-4));right:var(--s-5);display:flex;gap:var(--s-1);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--r-pill);padding:3px;backdrop-filter:blur(var(--glass-blur))}.lang-btn{font-size:var(--fs-micro);font-weight:600;letter-spacing:.04em;color:var(--text-dim);padding:6px 10px;border-radius:var(--r-pill);transition:all var(--t-fast) var(--ease)}.lang-btn.is-on{color:#03242a;background:var(--sg-foam)}.splash-sat{position:absolute;border-radius:50%;transform-origin:center center;pointer-events:none;border:1px solid color-mix(in srgb,var(--orb-a) 62%,rgba(214,245,241,.4));backdrop-filter:blur(5px) saturate(1.3);transition:--orb-a .7s var(--ease),--orb-b .7s var(--ease),--orb-c .7s var(--ease)}.splash-sat:after{content:"";position:absolute;left:18%;top:12%;width:38%;height:26%;border-radius:50%;background:linear-gradient(185deg,#ffffffd9,#ffffff0d);filter:blur(1.5px);transform:rotate(-20deg)}.splash-sat--1{width:45.6%;height:45.6%;left:calc(50% + 76.5% - 22.8% - var(--grp-x));top:calc(50% + 14.7% - 22.8% - var(--grp-y));background:radial-gradient(circle at 33% 26%,rgba(244,255,253,.5),transparent 40%),radial-gradient(circle at 55% 60%,color-mix(in srgb,var(--orb-b) 18%,transparent),color-mix(in srgb,var(--orb-b) 28%,transparent) 78%,color-mix(in srgb,var(--orb-c) 36%,transparent));box-shadow:0 10px 26px -10px color-mix(in srgb,var(--orb-b) 55%,transparent),inset -6px -9px 16px color-mix(in srgb,var(--orb-c) 55%,rgba(6,35,42,.4)),inset 5px 7px 14px #f4fffd47;animation:sat-float 5.5s var(--ease) infinite}.splash-sat--2{width:58.8%;height:58.8%;left:calc(50% + 55.9% - 29.4% - var(--grp-x));top:calc(50% + 67.6% - 29.4% - var(--grp-y));background:radial-gradient(circle at 33% 26%,rgba(244,255,253,.48),transparent 40%),radial-gradient(circle at 55% 60%,color-mix(in srgb,var(--orb-c) 16%,transparent),color-mix(in srgb,var(--orb-c) 27%,transparent) 78%,color-mix(in srgb,var(--orb-b) 25%,transparent));box-shadow:0 12px 30px -12px color-mix(in srgb,var(--orb-c) 55%,transparent),inset -7px -11px 18px color-mix(in srgb,var(--orb-c) 58%,rgba(6,35,42,.42)),inset 6px 8px 15px #f4fffd42;animation:sat-float 5.5s var(--ease) infinite .9s}@keyframes sat-float{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-3%,0) scale(1.04)}}.splash.is-growing .splash-sat--1{animation:sat-burst var(--grow-ms, 1.15s) cubic-bezier(.3,.55,.15,1) 90ms forwards}.splash.is-growing .splash-sat--2{animation:sat-burst var(--grow-ms, 1.15s) cubic-bezier(.3,.55,.15,1) .18s forwards}@keyframes sat-burst{0%{transform:scale(1);opacity:1}55%{transform:scale(5);opacity:.8}to{transform:scale(9);opacity:0}}.splash.is-skipping.is-growing .splash-sat--1,.splash.is-skipping.is-growing .splash-sat--2{animation-duration:.26s;animation-delay:0ms}@media(prefers-reduced-motion:reduce){.splash-sat--1,.splash-sat--2{animation:none}}.water-reveal{position:fixed;inset:0;z-index:50;pointer-events:none;overflow:hidden;opacity:1}.water-reveal__body{position:absolute;left:-2%;right:-2%;bottom:0;height:150%;transform:translateY(102%);will-change:transform;background:linear-gradient(180deg,#7fd6cf42,#2e7d8366 34%,#103f4780);backdrop-filter:blur(2px) saturate(1.12);-webkit-backdrop-filter:blur(2px) saturate(1.12)}.water-reveal__crest-wrap{position:absolute;left:0;right:0;top:-34px;height:60px}.water-reveal__crest{display:block;width:200%;height:100%}.water-reveal__crest path{fill:#7fd6cf42}.water-reveal.is-rising .water-reveal__body{transition:transform 1s cubic-bezier(.3,.7,.25,1);transform:translateY(0)}.water-reveal.is-rising .water-reveal__crest{animation:water-drift 2.4s ease-in-out infinite alternate}@keyframes water-drift{0%{transform:translate(0)}to{transform:translate(-12%)}}.water-reveal.is-settling{transition:opacity .65s ease-in;opacity:0}@media(prefers-reduced-motion:reduce){.water-reveal__body{transition:none}.water-reveal__crest{animation:none}}.date-panel__scroll,.scene-scroll,.info-scroll,.recap-doc,.detail-doc,.detail-sheet,.lst-list,.plans-list,.scene--profile,.bubble-grid,.bubble-card.vault-full,.bubble-card.pwa-full{overscroll-behavior:none;touch-action:none}.date-panel__scroll.is-scrollable,.scene-scroll.is-scrollable,.info-scroll.is-scrollable,.recap-doc.is-scrollable,.detail-doc.is-scrollable,.detail-sheet.is-scrollable,.lst-list.is-scrollable,.plans-list.is-scrollable,.scene--profile.is-scrollable,.bubble-grid.is-scrollable,.bubble-card.vault-full.is-scrollable,.bubble-card.pwa-full.is-scrollable{touch-action:pan-y}.scene-info,.reveal-scene,.reveal-scene__img,.reveal-scene__scrim,.mood-phrase,.bubble-card,.assist-slot,.assist-row,.assist-day,.plan-card{touch-action:none}.plans-list.is-scrollable .plan-card{touch-action:pan-y}
