:root{--bg: #070A12;--night: #030408;--night2: #05070D;--surface: #0F1322;--raised: #1B2034;--partner: #2A3050;--t1: #ECE8DF;--t2: #A3A8BC;--t3: #7D8399;--n1: #CFCBC2;--n2: #8E93A8;--n3: #5E6378;--accent: #B4AEF7;--tint14: rgba(180, 174, 247, .14);--tint16: rgba(180, 174, 247, .16);--ring-sel: inset 0 0 0 1px rgba(180, 174, 247, .55);--line: rgba(236, 232, 223, .07);--outline: rgba(236, 232, 223, .1);--chip: rgba(236, 232, 223, .16);--seg: rgba(236, 232, 223, .18);--serif: "Instrument Serif", Georgia, serif;--sans: Geist, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "Geist Mono", ui-monospace, monospace;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--t1)}body{font-family:var(--sans);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;user-select:text;font:inherit;color:inherit}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.app{position:fixed;top:0;right:0;bottom:0;left:0;max-width:480px;margin:0 auto;overflow:hidden;background:var(--bg)}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:var(--bg);padding-top:var(--sat)}.screen.night{background:var(--night)}.screen.night2{background:var(--night2)}.scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;position:relative}.scroll::-webkit-scrollbar{display:none}.footer{flex:none;padding:12px 28px calc(28px + var(--sab));position:relative}.footer.tabbed{padding-bottom:20px}.px{padding-left:28px;padding-right:28px}.px20{padding-left:20px;padding-right:20px}.serif{font-family:var(--serif);font-weight:400}.mono{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}.mono11{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.accent{color:var(--accent)}.t2{color:var(--t2)}.t3{color:var(--t3)}.h-screen{margin:0;font-family:var(--serif);font-weight:400;font-size:46px;line-height:1.04;letter-spacing:-.015em}.h-tab{font-family:var(--serif);font-size:48px;line-height:1;letter-spacing:-.015em}.day-num{font-family:var(--serif);font-size:68px;line-height:.95;letter-spacing:-.02em}.sub{margin:18px 0 0;font-size:17px;line-height:1.5;color:var(--t2)}.press{transition:transform .1s ease}.press:active{transform:scale(.97)}.btn{height:56px;border-radius:28px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;font-weight:500;width:100%;transition:transform .1s ease,background .2s ease,opacity .2s}.btn:active{transform:scale(.97)}.btn.primary{background:var(--t1);color:var(--bg)}.btn.secondary{box-shadow:inset 0 0 0 1px var(--chip);color:var(--t1);font-weight:400}.btn.soft{background:var(--tint16);color:var(--n1);font-weight:400}.btn.nightcta{background:var(--n1);color:var(--night)}.btn.ghost{height:48px;font-weight:400;color:var(--n2);font-size:15px}.btn:disabled{opacity:.4}.btn-sm{height:52px;border-radius:26px;font-size:15px}.card{padding:22px;border-radius:24px;background:var(--surface)}.card.outline{background:transparent;box-shadow:inset 0 0 0 1px var(--outline)}.hero{padding:24px;border-radius:30px;background:radial-gradient(120% 100% at 90% 0%,rgba(180,174,247,.2),transparent 60%),var(--surface)}.row-line{border-bottom:1px solid var(--line)}.seg{display:flex;height:52px;padding:4px;border-radius:26px;background:var(--surface)}.seg>button{flex:1;border-radius:22px;font-size:15px;color:var(--t3);transition:all .2s ease}.seg>button.on{background:var(--raised);color:var(--t1);box-shadow:inset 0 0 0 1px var(--seg)}.chip{height:40px;padding:0 16px;border-radius:20px;display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--t2);box-shadow:inset 0 0 0 1px var(--chip);transition:all .2s ease;white-space:nowrap}.chip.on{background:var(--tint14);box-shadow:var(--ring-sel);color:var(--t1)}.circle-pick{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:24px;color:var(--t2);box-shadow:inset 0 0 0 1px var(--chip);transition:all .2s ease}.circle-pick.on{background:var(--t1);color:var(--bg);box-shadow:none}.pill-pick{height:52px;border-radius:26px;font-size:15px;color:var(--t2);box-shadow:inset 0 0 0 1px var(--chip);transition:all .2s ease}.pill-pick.on{background:var(--t1);color:var(--bg);box-shadow:none}.check{width:26px;height:26px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1.5px #ece8df47;transition:all .25s ease;position:relative}.check svg{opacity:0;transition:opacity .25s}.check.on{background:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.check.on svg{opacity:1}.toggle{position:relative;width:48px;height:28px;border-radius:14px;background:#ece8df2e;transition:background .2s;flex:none}.toggle.on{background:var(--accent)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:var(--bg);transition:left .2s}.toggle.on:after{left:22px}.text-input{background:transparent;border:0;outline:none;width:100%;caret-color:var(--accent)}.tabbar{flex:none;height:calc(68px + var(--sab));padding:0 16px var(--sab);display:flex;justify-content:space-around;align-items:center;background:#070a12f0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(236,232,223,.06)}.tab{width:72px;height:48px;display:flex;align-items:center;justify-content:center}.tab-pill{width:58px;height:32px;border-radius:16px;display:flex;align-items:center;justify-content:center;transition:background .2s}.tab.on .tab-pill{background:var(--tint16)}.ring-anim{transition:stroke-dashoffset .6s ease}.dim-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:#000;opacity:0;pointer-events:none;transition:opacity 1.2s ease;z-index:50}.dim-veil.on{opacity:1;pointer-events:auto}.toast{position:absolute;left:50%;bottom:calc(96px + var(--sab));transform:translate(-50%);padding:12px 18px;border-radius:20px;background:#161b2ef5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);font-size:14px;color:var(--t1);z-index:100;white-space:nowrap;animation:toastIn .25s ease}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,8px)}}@keyframes lpulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.9);opacity:0}}@keyframes lbreath{0%,to{transform:scale(.92);opacity:.65}50%{transform:scale(1.06);opacity:1}}@keyframes ltwinkle{0%,to{opacity:.15}50%{opacity:.9}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .35s ease}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}}.wheel{position:relative;height:380px;overflow-y:scroll;scroll-snap-type:y mandatory;-webkit-mask-image:linear-gradient(transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(transparent,#000 18%,#000 82%,transparent)}.wheel::-webkit-scrollbar{display:none}.wheel-item{height:76px;scroll-snap-align:center;display:flex;align-items:center;justify-content:center;font-family:var(--serif);letter-spacing:-.02em;line-height:1;transition:font-size .15s ease,opacity .15s ease}
