:root{--bg: #0a0a0b;--bg-2: #0e0e10;--surface: #141416;--surface-2: #1b1b1e;--line: rgba(255, 255, 255, .08);--line-2: rgba(255, 255, 255, .14);--fg: #f5f5f2;--fg-2: #b4b4ad;--muted: #7a7a74;--acc: #d4ff3a;--acc-ink: #0b0d00;--acc-soft: rgba(212, 255, 58, .12);--warn: #ff8a3d;--r-sm: 10px;--r: 16px;--r-lg: 24px;--r-xl: 32px;--sans: "Inter Tight", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--serif: "Instrument Serif", ui-serif, Georgia, serif;--ease: cubic-bezier(.2, .7, .1, 1);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 var(--sans);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{margin:0;letter-spacing:-.03em;line-height:1.05;font-weight:700}p{margin:0}a{color:inherit}em.serif,.serif{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.01em}.muted{color:var(--muted)}.fg2{color:var(--fg-2)}.tnum{font-variant-numeric:tabular-nums}code,pre{font-family:ui-monospace,SF Mono,Menlo,monospace}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 24px;border-radius:999px;font-weight:600;font-size:1rem;letter-spacing:-.01em;transition:transform .15s var(--ease),background .2s,box-shadow .2s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--acc);color:var(--acc-ink);box-shadow:0 0 0 0 var(--acc-soft)}.btn-primary:hover{box-shadow:0 0 0 6px var(--acc-soft)}.btn-ghost{background:#ffffff0f;border:1px solid var(--line)}.btn-ghost:hover{background:#ffffff1a}.btn-block{width:100%;height:60px;font-size:1.08rem}.btn-sm{height:38px;padding:0 14px;font-size:.9rem}.icon-btn{width:44px;height:44px;border-radius:999px;display:grid;place-items:center;color:var(--fg-2);background:#ffffff0d;border:1px solid var(--line)}.icon-btn:hover{color:var(--fg)}input{font:inherit;color:var(--fg);background:var(--bg-2);width:100%;border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 16px;outline:none}input:focus{border-color:var(--line-2);box-shadow:0 0 0 4px #ffffff0a}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-2)}.eyebrow .dot{width:6px;height:6px;border-radius:99px;background:var(--acc);box-shadow:0 0 12px var(--acc)}.pill{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--fg-2);background:#ffffff0d;border:1px solid var(--line)}.pill.acc{color:var(--acc);background:var(--acc-soft);border-color:#d4ff3a40}.lp{overflow-x:clip}.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 20px}.lp-nav{position:sticky;top:0;z-index:20;backdrop-filter:saturate(140%) blur(16px);-webkit-backdrop-filter:saturate(140%) blur(16px);background:#0a0a0bb3;border-bottom:1px solid transparent;transition:border-color .3s}.lp-nav.scrolled{border-bottom-color:var(--line)}.lp-nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:1.15rem;letter-spacing:-.03em}.brand-mark{width:26px;height:26px;display:grid;gap:3px;align-content:center}.brand-mark i{display:block;height:4px;border-radius:4px;background:var(--acc)}.brand-mark i:nth-child(2){width:72%}.brand-mark i:nth-child(3){width:44%}.lp-nav-links{display:none;gap:28px;font-size:.92rem;color:var(--fg-2)}.lp-nav-links a{text-decoration:none}.lp-nav-links a:hover{color:var(--fg)}.hero{position:relative;padding:48px 0 64px}.hero:before{content:"";position:absolute;inset:-20% -10% auto;height:720px;z-index:-1;pointer-events:none;background:radial-gradient(40% 50% at 70% 30%,rgba(212,255,58,.14),transparent 70%),radial-gradient(35% 40% at 20% 10%,rgba(120,140,255,.08),transparent 70%)}.hero-grid{display:grid;gap:56px;align-items:center}.hero h1{font-size:clamp(2.9rem,9vw,5.6rem);line-height:.96;letter-spacing:-.045em;margin:20px 0 22px}.hero h1 .serif{color:var(--acc);font-size:1.08em;letter-spacing:-.02em}.hero .lede{font-size:clamp(1.05rem,2.4vw,1.25rem);color:var(--fg-2);max-width:34em;line-height:1.55}.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.hero-note{margin-top:18px;font-size:.86rem;color:var(--muted);display:flex;gap:16px;flex-wrap:wrap}.hero-note span{display:inline-flex;gap:6px;align-items:center}.hero-note svg{color:var(--acc)}.stage-wrap{position:relative;display:grid;place-items:center;padding:24px 0}.phone{position:relative;width:300px;height:612px;border-radius:52px;padding:12px;background:linear-gradient(160deg,#2a2a2e,#0f0f11 40%,#1d1d20);box-shadow:0 0 0 1px #ffffff14 inset,0 60px 120px -30px #000000e6,0 30px 60px -20px #d4ff3a1f}.phone-screen{position:relative;height:100%;border-radius:42px;overflow:hidden;background:var(--bg);display:flex;flex-direction:column}.phone-notch{position:absolute;top:10px;left:50%;translate:-50% 0;width:96px;height:28px;border-radius:99px;background:#000;z-index:3}.phone .rn{padding:52px 18px 18px;flex:1;display:flex;flex-direction:column}.phone .rn-title{font-size:1.7rem}.phone .rn-target{font-size:1.3rem}.phone .ring-wrap{width:190px;height:190px}.phone .ring-time{font-size:2.9rem}.phone .btn-block{height:50px;font-size:.98rem}.phone .num-field{padding:10px 6px}.phone .num-field b{font-size:1.5rem}.toast{position:absolute;z-index:4;left:50%;top:58px;width:min(330px,92vw);translate:-50% 0;display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:20px;background:#202024d1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--line-2);box-shadow:0 20px 40px -10px #000000b3;font-size:.85rem;line-height:1.35;opacity:0;transform:translateY(-14px) scale(.97);transition:opacity .5s var(--ease),transform .5s var(--ease)}.toast.show{opacity:1;transform:none}.toast-ic{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--acc);color:var(--acc-ink)}.toast small{color:var(--muted)}.float-card{position:absolute;display:none;padding:14px 16px;border-radius:18px;font-size:.84rem;background:#141416d9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:0 30px 60px -20px #000c}.logos{border-block:1px solid var(--line);padding:26px 0}.logos .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 36px}.logos .lbl{width:100%;text-align:center;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.logos b{font-size:1.15rem;font-weight:600;letter-spacing:-.02em;color:var(--fg-2)}.section{padding:96px 0}.section-head{max-width:900px;margin-bottom:48px}.section-head h2{text-wrap:balance}.section-head h2{font-size:clamp(2.2rem,6vw,3.8rem);letter-spacing:-.04em;margin-top:16px}.section-head h2 .serif{color:var(--acc)}.section-head p{margin-top:18px;font-size:1.12rem;color:var(--fg-2);max-width:36em}.ba{display:grid;gap:16px}.ba-card{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);padding:22px;overflow:hidden;position:relative}.ba-card h3{font-size:1.05rem;font-weight:600;letter-spacing:-.01em;display:flex;align-items:center;gap:10px;margin-bottom:16px}.ba-before .chat{display:grid;gap:8px;mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent);max-height:260px}.bubble{padding:10px 14px;border-radius:16px;font-size:.86rem;max-width:88%;line-height:1.45}.bubble.me{justify-self:end;background:#2a2a30;border-bottom-right-radius:4px}.bubble.ai{background:var(--surface-2);color:var(--fg-2);border-bottom-left-radius:4px}.bubble.ai b{color:var(--fg)}.ba-after{background:linear-gradient(180deg,rgba(212,255,58,.06),var(--surface) 50%);border-color:#d4ff3a33}.steps3{display:grid;gap:16px;counter-reset:s}.step{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);padding:26px;display:flex;flex-direction:column;gap:14px;min-height:360px}.step-n{font-family:var(--serif);font-style:italic;font-size:2.6rem;line-height:1;color:var(--acc)}.step h3{font-size:1.45rem}.step p{color:var(--fg-2)}.step-vis{margin-top:auto;border-radius:var(--r);background:var(--bg-2);border:1px solid var(--line);padding:14px;font-size:.8rem}.step-vis pre{margin:0;white-space:pre-wrap;word-break:break-all;color:var(--fg-2);line-height:1.6}.step-vis pre .k{color:var(--acc)}.step-vis .bubble{font-size:.8rem;padding:8px 12px}.step-vis .chat{display:grid;gap:6px}.features{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.feature{background:var(--bg);padding:28px;display:grid;gap:10px;align-content:start}.feature .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--acc-soft);color:var(--acc);margin-bottom:6px}.feature h3{font-size:1.15rem;letter-spacing:-.02em}.feature p{color:var(--fg-2);font-size:.95rem}.sports{display:flex;flex-wrap:wrap;gap:10px}.sport{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 20px 0 14px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-weight:600}.sport svg{color:var(--acc)}.quote{text-align:center;max-width:880px;margin:0 auto}.quote p{font-family:var(--serif);font-size:clamp(1.9rem,5vw,3.2rem);line-height:1.12;letter-spacing:-.015em}.quote p em{color:var(--acc)}.cta-box{position:relative;overflow:hidden;border-radius:var(--r-xl);padding:64px 24px;text-align:center;background:radial-gradient(60% 80% at 50% 0%,rgba(212,255,58,.18),transparent 70%),var(--surface);border:1px solid var(--line)}.cta-box h2{font-size:clamp(2.4rem,7vw,4.4rem);letter-spacing:-.045em}.cta-box p{color:var(--fg-2);margin:18px auto 32px;max-width:30em;font-size:1.1rem}.dev-login{margin:28px auto 0;max-width:360px;display:grid;gap:10px;text-align:left;padding:18px;border-radius:var(--r);border:1px dashed var(--line-2)}.dev-login .lbl{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}footer.lp-foot{padding:40px 0 56px;color:var(--muted);font-size:.86rem}footer.lp-foot .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.in{opacity:1;transform:none}@media (min-width: 720px){.wrap{padding:0 32px}.lp-nav-links{display:flex}.ba{grid-template-columns:1fr 1fr}.features{grid-template-columns:repeat(2,1fr)}.float-card{display:block}}@media (min-width: 980px){.hero{padding:72px 0 96px}.hero-grid{grid-template-columns:1.15fr 1fr}.steps3,.features{grid-template-columns:repeat(3,1fr)}.section{padding:128px 0}.cta-box{padding:96px 48px}}.app{max-width:600px;margin:0 auto;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 8px) 16px calc(env(safe-area-inset-bottom) + 32px)}.topbar{display:flex;align-items:center;justify-content:space-between;height:60px;gap:12px}.topbar .title{font-weight:600;font-size:.95rem;color:var(--fg-2)}.greet{padding:18px 2px 22px}.greet .date{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}.greet h1{font-size:2.3rem;margin-top:6px;letter-spacing:-.04em}.greet h1 .serif{color:var(--acc)}.week{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin-bottom:22px}.wd{display:grid;justify-items:center;gap:6px;padding:10px 0;border-radius:14px;border:1px solid transparent;color:var(--fg-2);transition:background .2s,border-color .2s}.wd small{font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.wd b{font-size:1.05rem;font-weight:600;font-variant-numeric:tabular-nums}.wd.today b{color:var(--acc)}.wd.sel{background:var(--surface);border-color:var(--line-2);color:var(--fg)}.wd .sports{display:flex;flex-wrap:nowrap;gap:2px;height:20px;align-items:center;justify-content:center}.wd .sports i{flex:none;width:17px;height:17px;border-radius:6px;display:grid;place-items:center;font-style:normal;background:var(--acc-soft);color:var(--acc)}.wd .sports i.done{background:#ffffff12;color:var(--fg-2)}.wd .sports i.skipped{background:none;color:var(--muted);opacity:.6}.wd .sports i.more{width:auto;min-width:17px;padding:0 2px;font-size:.6rem;font-weight:700;color:var(--fg-2);background:#ffffff12}.wcard{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);overflow:hidden;margin-bottom:14px}.wcard-head{padding:22px 22px 18px;display:grid;gap:12px}.wcard-head .meta{display:flex;gap:8px;flex-wrap:wrap}.wcard-head h2{font-size:1.9rem;letter-spacing:-.035em}.wcard-head p{color:var(--fg-2);font-size:.95rem}.blist{list-style:none;margin:0;padding:0 22px}.blist li{display:grid;grid-template-columns:28px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.blist .idx{font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}.blist .nm{font-weight:600;letter-spacing:-.01em}.blist .nm small{display:block;font-weight:400;color:var(--muted);font-size:.82rem;margin-top:2px}.blist .rx{font-variant-numeric:tabular-nums;color:var(--fg-2);font-size:.92rem;text-align:right;white-space:nowrap}.blist .rx b{color:var(--fg);font-weight:600}.blist li.note{grid-template-columns:28px 1fr;color:var(--fg-2);font-size:.92rem}.wcard-foot{padding:18px 22px 22px}.empty{text-align:center;padding:48px 24px;border-radius:var(--r-lg);border:1px dashed var(--line-2);display:grid;gap:14px;justify-items:center}.empty .ic{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--acc-soft);color:var(--acc)}.empty h3{font-size:1.3rem}.empty p{color:var(--fg-2);max-width:26em}.skeleton{height:280px;border-radius:var(--r-lg);background:linear-gradient(90deg,var(--surface) 30%,var(--surface-2),var(--surface) 70%) 0 0 / 300% 100%;animation:sk 1.4s linear infinite}@keyframes sk{to{background-position:-150% 0}}.rn-shell{max-width:600px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top) + 8px) 18px calc(env(safe-area-inset-bottom) + 18px)}.rn-top{display:flex;align-items:center;justify-content:space-between;gap:12px;height:56px}.rn-top .ttl{font-size:.88rem;color:var(--fg-2);text-align:center;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.segs{display:flex;gap:3px;margin:6px 0 4px}.segs i{flex:1;height:3px;border-radius:3px;background:#ffffff1a}.segs i.on{background:var(--acc)}.segs i.cur{background:#d4ff3a73}.rn{flex:1;display:flex;flex-direction:column;padding-top:28px}.rn-kicker{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--muted)}.rn-kicker b{color:var(--acc);font-weight:600}.rn-title{font-size:clamp(2.2rem,9vw,3.2rem);letter-spacing:-.045em;margin:10px 0 8px}.rn-target{font-size:1.6rem;color:var(--fg-2);font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.rn-target b{color:var(--fg);font-weight:700}.rn-notes{margin-top:14px;color:var(--fg-2);font-size:.95rem;display:flex;gap:8px;align-items:flex-start}.rn-notes svg{flex:none;color:var(--acc);margin-top:2px}.rn-center{flex:1;display:grid;place-items:center}.rn-bottom{display:grid;gap:12px;margin-top:24px}.nums{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.num-field{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);padding:14px 8px;display:grid;gap:6px;justify-items:center}.num-field small{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}.num-row{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;width:100%}.num-row button{width:40px;height:40px;border-radius:99px;display:grid;place-items:center;background:#ffffff0f;color:var(--fg)}.num-row button:active{background:#ffffff24}.num-field input{border:0;background:none;padding:0;text-align:center;font-size:2rem;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.num-field input:focus{box-shadow:none}.ring-wrap{position:relative;width:min(72vw,300px);aspect-ratio:1}.ring-wrap svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-bg{stroke:#ffffff12}.ring-fg{stroke:var(--acc);stroke-linecap:round;transition:stroke-dashoffset .25s linear;filter:drop-shadow(0 0 10px rgba(212,255,58,.35))}.ring-inner{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;gap:4px}.ring-time{font-size:clamp(3.4rem,16vw,4.6rem);font-weight:700;letter-spacing:-.05em;font-variant-numeric:tabular-nums;line-height:1}.ring-lbl{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}.next-card{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}.next-card small{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}.next-card b{font-weight:600}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.done-screen{flex:1;display:grid;align-content:center;gap:28px;text-align:center}.done-screen h1{font-size:clamp(2.8rem,12vw,4rem);letter-spacing:-.045em}.done-screen h1 .serif{color:var(--acc)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);padding:16px 8px}.stat b{display:block;font-size:1.6rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.stat small{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}.setup-head{padding:12px 2px 26px}.setup-head h1{font-size:2.3rem;letter-spacing:-.04em;margin-top:10px}.setup-head h1 .serif{color:var(--acc)}.setup-head p{color:var(--fg-2);margin-top:12px}.sstep{position:relative;padding:0 0 28px 46px}.sstep:before{content:"";position:absolute;left:15px;top:36px;bottom:4px;width:1px;background:var(--line-2)}.sstep:last-of-type:before{display:none}.sstep-n{position:absolute;left:0;top:0;width:31px;height:31px;border-radius:99px;display:grid;place-items:center;font-size:.85rem;font-weight:700;background:var(--surface-2);border:1px solid var(--line-2);color:var(--fg-2)}.sstep.active .sstep-n{background:var(--acc);color:var(--acc-ink);border-color:var(--acc)}.sstep.done .sstep-n{background:var(--acc-soft);color:var(--acc);border-color:transparent}.sstep h2{font-size:1.3rem;letter-spacing:-.025em;line-height:31px}.sstep>p{color:var(--fg-2);margin:6px 0 14px;font-size:.95rem}.ai-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px}.ai-opt{text-align:left;padding:14px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);display:grid;gap:2px;transition:border-color .2s,background .2s}.ai-opt b{font-weight:600}.ai-opt small{color:var(--muted);font-size:.78rem}.ai-opt.sel{border-color:var(--acc);background:linear-gradient(180deg,var(--acc-soft),var(--surface))}.ai-opt.sel small{color:var(--acc)}.codebox{position:relative;border-radius:var(--r);background:var(--bg-2);border:1px solid var(--line);overflow:hidden}.codebox pre{margin:0;padding:16px;font-size:.8rem;line-height:1.6;color:var(--fg-2);white-space:pre-wrap;word-break:break-word;max-height:240px;overflow:auto}.codebox.key pre{color:var(--acc);font-size:.9rem;word-break:break-all}.codebox-bar{display:flex;justify-content:space-between;align-items:center;padding:8px 8px 8px 16px;border-bottom:1px solid var(--line);font-size:.75rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.copy-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:99px;background:#ffffff0f;font-size:.8rem;font-weight:600;color:var(--fg);text-transform:none;letter-spacing:0}.copy-btn.ok{background:var(--acc);color:var(--acc-ink)}.keyrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.keyrow:first-child{border-top:0}.keyrow small{display:block;color:var(--muted);font-size:.8rem}.panel{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);padding:6px 18px}.warn-note{display:flex;gap:10px;align-items:flex-start;font-size:.86rem;color:var(--fg-2);margin-top:10px}.warn-note svg{flex:none;color:var(--warn);margin-top:2px}.loading{min-height:100dvh;display:grid;place-items:center}.phone-wrap{position:relative}.float-card{z-index:5}.num-field input{min-width:0}.phone .num-field input{font-size:1.45rem}.phone .num-row{grid-template-columns:30px 1fr 30px}.phone .num-row button{width:30px;height:30px}.phone .nums{margin-top:18px;gap:8px}.hist{margin-top:14px;display:grid;gap:2px;font-size:.82rem}.hist div{display:flex;justify-content:space-between;padding:8px 2px;border-bottom:1px solid var(--line);color:var(--fg-2)}.hist div span{display:inline-flex;gap:6px;align-items:center}.hist div span svg{color:var(--acc)}.hist b{font-weight:600;color:var(--fg);font-variant-numeric:tabular-nums}.hist .last{color:var(--muted);border-bottom:0}.hist .last b{color:var(--muted);font-weight:500}textarea{font:inherit;color:var(--fg);background:var(--bg-2);width:100%;resize:none;border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;outline:none;line-height:1.45}textarea:focus{border-color:var(--line-2)}.extras{display:grid;gap:10px;margin-top:14px}.rpe{display:grid;grid-template-columns:auto repeat(5,1fr);gap:6px;align-items:center}.rpe span{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600;padding-right:6px}.rpe button{height:40px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-weight:600;font-variant-numeric:tabular-nums;color:var(--fg-2)}.rpe button.sel{background:var(--acc);color:var(--acc-ink);border-color:var(--acc)}.note-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;justify-self:start;border-radius:99px;color:var(--fg-2);background:#ffffff0d;border:1px solid var(--line);font-size:.9rem;font-weight:500}.hist div span svg+svg{color:var(--muted)}.feedback{display:grid;gap:12px;text-align:left}.fb-lbl{font-weight:600;font-size:1.05rem;letter-spacing:-.01em}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{height:36px;padding:0 14px;border-radius:99px;background:var(--surface);border:1px solid var(--line);font-size:.88rem;font-weight:500;color:var(--fg-2)}.chip.sel{background:var(--acc-soft);color:var(--acc);border-color:#d4ff3a59}.flow-pick{display:grid;gap:10px;margin:0 0 30px}.flow-opt{text-align:left;display:grid;grid-template-columns:44px 1fr;column-gap:14px;row-gap:2px;align-items:start;padding:16px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);transition:border-color .2s,background .2s}.flow-opt .ic{grid-row:span 2;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#ffffff0d;color:var(--fg-2)}.flow-opt b{font-size:1.05rem;letter-spacing:-.01em}.flow-opt small{color:var(--fg-2);font-size:.88rem;line-height:1.4}.flow-opt.sel{border-color:var(--acc);background:linear-gradient(180deg,var(--acc-soft),var(--surface))}.flow-opt.sel .ic{background:var(--acc);color:var(--acc-ink)}@media (min-width: 560px){.flow-pick{grid-template-columns:1fr 1fr}.flow-opt{grid-template-columns:1fr}.flow-opt .ic{grid-row:auto;margin-bottom:8px}}.app{padding-bottom:calc(env(safe-area-inset-bottom) + 104px)}.tabbar{position:fixed;z-index:30;left:50%;translate:-50% 0;bottom:calc(env(safe-area-inset-bottom) + 12px);display:grid;grid-template-columns:repeat(4,1fr);width:min(420px,calc(100% - 24px));padding:6px;border-radius:26px;background:#161619d1;backdrop-filter:saturate(140%) blur(18px);-webkit-backdrop-filter:saturate(140%) blur(18px);border:1px solid var(--line-2);box-shadow:0 20px 40px -12px #000c}.tabbar button{display:grid;justify-items:center;gap:3px;padding:8px 0 6px;border-radius:20px;color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.02em}.tabbar button.on{color:var(--acc);background:#d4ff3a14}.sheet-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0009;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s}.sheet{width:min(600px,100%);max-height:88dvh;overflow:auto;background:var(--surface);border:1px solid var(--line-2);border-bottom:0;border-radius:28px 28px 0 0;padding:18px 18px calc(env(safe-area-inset-bottom) + 22px);display:grid;gap:14px;animation:up .28s var(--ease)}.sheet-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.sheet-head h2{font-size:1.35rem;letter-spacing:-.03em}@keyframes up{0%{transform:translateY(40px);opacity:0}}@keyframes fade{0%{opacity:0}}.menu{display:grid;gap:6px}.menu button{display:flex;align-items:center;gap:12px;height:54px;padding:0 16px;border-radius:var(--r);background:var(--bg-2);border:1px solid var(--line);font-weight:600;text-align:left}.menu button svg{color:var(--acc)}.btn:disabled{opacity:.4;pointer-events:none}input[type=date]{color-scheme:dark}.swap-list{display:grid;gap:10px}.swap-list label{display:grid;gap:6px}.chip{display:inline-flex;align-items:center;gap:6px}.icon-btn.sm{width:32px;height:28px;margin-left:auto;font-size:.9rem;letter-spacing:1px;color:var(--fg-2)}.wcard.skipped{opacity:.6}.why{display:flex;gap:8px;align-items:flex-start;color:var(--fg-2);font-size:.92rem}.why svg{flex:none;color:var(--acc);margin-top:3px}.fb{display:flex;gap:8px;align-items:flex-start;color:var(--fg-2);font-size:.9rem;font-style:italic}.fb svg{flex:none;margin-top:3px;color:var(--muted)}.blist li.grp{align-items:start}.blist .sub{display:grid;gap:2px;margin-top:6px}.blist .sub span{font-weight:400;color:var(--fg-2);font-size:.86rem;padding-left:10px;border-left:2px solid var(--acc-soft)}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.tags a{text-decoration:none}.alt{display:flex;gap:8px;align-items:center;margin-top:10px;color:var(--muted);font-size:.88rem}.items{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px}.items li{padding:12px 14px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);font-weight:600}.coach-msg{display:flex;gap:12px;text-align:left;width:100%;padding:14px 16px;margin:4px 0 6px;border-radius:var(--r);background:linear-gradient(180deg,var(--acc-soft),var(--surface));border:1px solid rgba(212,255,58,.22);font-size:.93rem;line-height:1.45}.coach-msg .ic{flex:none;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--acc);color:var(--acc-ink)}.coach-msg small{display:block;color:var(--acc);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin-bottom:3px}.talk{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:16px;margin-top:8px;border-radius:var(--r-lg);border:1px dashed var(--line-2);color:var(--fg-2)}.talk>svg:first-child{color:var(--acc);flex:none}.talk span{flex:1}.talk b{display:block;color:var(--fg)}.talk small{font-size:.84rem}.thread{display:grid;gap:8px;max-height:38dvh;overflow:auto}.thread .bubble small{display:block;font-size:.7rem;color:var(--muted);margin-top:4px}.sec-h{font-size:1.1rem;letter-spacing:-.02em;margin:6px 2px 12px}.pbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-bottom:26px}.pb{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);padding:14px;display:grid;gap:2px}.pb small{color:var(--fg-2);font-size:.82rem;font-weight:600}.pb b{font-size:1.25rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.pb span{font-size:.78rem}.spark{width:100%;height:30px;color:var(--acc);margin-top:6px}.hcard{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);padding:16px;margin-bottom:10px;display:grid;gap:10px}.hcard.skipped{opacity:.65}.hcard-top{display:flex;gap:12px;align-items:center}.hcard-top small{display:block;color:var(--muted);font-size:.82rem}.hic{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--acc-soft);color:var(--acc);flex:none}.hsets{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:.88rem}.hsets li{display:flex;justify-content:space-between;gap:12px;color:var(--fg-2)}.hsets b{font-weight:600;color:var(--fg);font-variant-numeric:tabular-nums;text-align:right}.hnote{font-size:.85rem;color:var(--fg-2)}.panel.profile{padding:18px 20px}.md h2{font-size:1.05rem;letter-spacing:-.02em;margin:18px 0 6px;color:var(--acc)}.md h2:first-child{margin-top:0}.md h3{font-size:.95rem;margin:12px 0 4px}.md ul{margin:0;padding-left:1.1rem;display:grid;gap:4px;color:var(--fg-2)}.md p{color:var(--fg-2);margin:4px 0}.md b{color:var(--fg)}.profile-edit{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88rem}.panel.settings{padding:6px 16px 14px;display:grid}.set-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.set-row:last-of-type{border-bottom:0}.set-row span{display:grid;gap:2px}.set-row small{color:var(--muted);font-size:.82rem;line-height:1.35}.set-row.sub{padding-top:4px}.set-row.danger b{color:#ff8a7a}.seg{display:inline-flex;padding:3px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line);flex:none}.seg button{height:34px;padding:0 12px;border-radius:9px;font-size:.85rem;font-weight:600;color:var(--fg-2)}.seg button.on{background:var(--surface-2);color:var(--fg);box-shadow:0 0 0 1px var(--line-2)}.switch{flex:none;width:52px;height:32px;border-radius:99px;background:var(--surface-2);border:1px solid var(--line-2);position:relative;transition:background .2s}.switch i{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:99px;background:var(--fg-2);transition:transform .2s var(--ease),background .2s}.switch.on{background:var(--acc);border-color:var(--acc)}.switch.on i{transform:translate(20px);background:var(--acc-ink)}select{font:inherit;color:var(--fg);background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px;color-scheme:dark}.set-msg{font-size:.86rem;margin-top:8px}.del{display:flex;gap:8px;padding-bottom:4px}.del input{padding:10px 12px}.danger-btn{background:#5a1f1a;color:#ffd6cf;border:1px solid #7a2a22}.auth-card{margin-top:10vh;border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--line);padding:28px 22px;display:grid;gap:14px}.auth-card h1{font-size:2rem;letter-spacing:-.04em}.auth-card h1 .serif{color:var(--acc)}.auth-ic{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--acc);color:var(--acc-ink)}.perm{list-style:none;margin:0;padding:0;display:grid;gap:10px}.perm li{display:flex;gap:10px;align-items:flex-start}.perm svg{color:var(--acc);flex:none;margin-top:3px}.how{margin:12px 0 0;padding-left:1.1rem;display:grid;gap:8px;color:var(--fg-2);font-size:.92rem}.views{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border-radius:14px;background:var(--surface);border:1px solid var(--line);margin-bottom:18px}.views button{height:40px;border-radius:10px;font-weight:600;font-size:.92rem;color:var(--fg-2)}.views button.on{background:var(--surface-2);color:var(--fg);box-shadow:0 0 0 1px var(--line-2)}.goal{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);padding:18px;margin-bottom:12px;display:grid;gap:12px}.goal.achieved{border-color:#d4ff3a4d}.goal.paused{opacity:.7}.goal-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.goal-top h3{font-size:1.05rem;letter-spacing:-.02em}.goal-left{font-size:.85rem}.goal h2{font-size:1.55rem;letter-spacing:-.035em}.goal-now{display:flex;gap:22px}.goal-now small{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}.goal-now b{font-size:1.35rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.goal-now span:first-child b{color:var(--fg);font-size:1.6rem}.goal-bar{position:relative;height:10px;border-radius:99px;background:var(--bg-2);border:1px solid var(--line)}.goal-bar i{position:absolute;inset:0 auto 0 0;border-radius:99px;background:var(--acc);display:block}.goal-bar span{position:absolute;right:0;top:-22px;font-size:.78rem;color:var(--fg-2);font-weight:600;font-variant-numeric:tabular-nums}.goal-src{font-size:.86rem}.goal .btn-sm{justify-self:start}.range{display:inline-flex;gap:4px;padding:3px;border-radius:12px;background:var(--surface);border:1px solid var(--line);margin-bottom:10px}.range button{height:34px;padding:0 14px;border-radius:9px;font-size:.85rem;font-weight:600;color:var(--fg-2)}.range button.on{background:var(--surface-2);color:var(--fg);box-shadow:0 0 0 1px var(--line-2)}.health-src{font-size:.84rem;margin-bottom:14px}.hv{display:grid;justify-items:end}.hv b{font-size:1.35rem;letter-spacing:-.03em}.hv small{color:var(--muted);font-size:.75rem}.trend-note{font-size:.86rem;color:var(--fg-2)}.trend-note span{color:var(--muted);font-size:.7rem;margin-right:4px}.chart{position:relative}.chart svg{display:block;overflow:visible;outline:none;touch-action:pan-y}.chart svg:focus-visible{box-shadow:0 0 0 2px var(--line-2);border-radius:8px}.chart .grid{stroke:#ffffff12;stroke-width:1}.chart .tick{fill:var(--muted);font-size:10.5px;font-variant-numeric:tabular-nums}.chart .line{fill:none;stroke:var(--acc);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart .target{stroke:var(--fg-2);stroke-width:1;stroke-dasharray:4 4;opacity:.7}.chart .target-lbl{fill:var(--fg-2)}.chart .cross{stroke:var(--fg-2);stroke-width:1;opacity:.5}.chart .dot{fill:var(--acc);stroke:var(--surface);stroke-width:2}.chart .tip{position:absolute;translate:-50% 0;pointer-events:none;padding:6px 10px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line-2);display:grid;justify-items:center;white-space:nowrap;box-shadow:0 8px 20px -6px #0009}.chart .tip b{font-size:.95rem;font-variant-numeric:tabular-nums}.chart .tip span{font-size:.72rem;color:var(--muted)}.chart-table{margin-top:6px;font-size:.82rem;color:var(--muted)}.chart-table summary{cursor:pointer;width:max-content}.chart-table table{width:100%;border-collapse:collapse;margin-top:6px;font-variant-numeric:tabular-nums}.chart-table th,.chart-table td{text-align:left;padding:4px 0;border-bottom:1px solid var(--line);color:var(--fg-2)}.chart-table th:last-child,.chart-table td:last-child{text-align:right}.chart-empty{font-size:.86rem;color:var(--muted)}.effort{display:grid;gap:8px}.effort-head{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:var(--fg-2);font-weight:600}.effort-q{width:26px;height:26px;border-radius:99px;border:1px solid var(--line-2);color:var(--fg-2);font-size:.8rem;font-weight:700}.effort-opts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.effort-opts button{min-height:54px;padding:6px 2px;border-radius:12px;background:var(--surface);border:1px solid var(--line);display:grid;align-content:center;gap:2px;text-align:center}.effort-opts b{font-size:.8rem;font-weight:600;color:var(--fg);line-height:1.1}.effort-opts small{font-size:.64rem;color:var(--muted);line-height:1.15}.effort-opts button.sel{background:var(--acc);border-color:var(--acc)}.effort-opts button.sel b,.effort-opts button.sel small{color:var(--acc-ink)}.effort-help{font-size:.82rem;color:var(--fg-2);line-height:1.45}.foot2{display:grid;grid-template-columns:1fr auto;gap:8px}.foot2 .btn-ghost{height:60px;padding:0 18px}.via{font-size:.84rem}.done-blocks{display:grid;gap:6px}.done-blocks .lbl{font-size:.82rem;color:var(--fg-2);font-weight:600}.done-block{display:grid;gap:6px}.done-block>button{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:46px;padding:0 14px;border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--line);text-align:left;font-weight:600;font-size:.92rem}.done-block>button small{color:var(--muted);font-weight:500;font-size:.8rem;white-space:nowrap}.done-block>button.has{border-color:#d4ff3a59}.done-block>button.has svg{color:var(--acc);flex:none}.err{color:#ff8a7a;font-size:.88rem}.wcard-head{position:relative}.wcard-head .meta{padding-right:40px}.wcard-head .icon-btn.sm{position:absolute;top:20px;right:18px;margin:0}.paste-fallback{margin-top:12px}.paste-fallback summary{cursor:pointer;color:var(--fg-2);font-size:.88rem;margin-bottom:10px;width:max-content}.cal-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:-6px 0 12px}.cal-head .seg{flex:none}.cal-head .seg button{height:30px;padding:0 10px;font-size:.8rem}.month-nav{display:flex;align-items:center;gap:4px;min-width:0}.month-nav b{font-size:.95rem;letter-spacing:-.02em;min-width:0;text-align:center;white-space:nowrap}.month-nav .icon-btn.sm{width:32px;height:32px;margin:0}.month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:22px}.month .mh{text-align:center;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-bottom:4px}.md{display:grid;justify-items:center;gap:4px;padding:8px 0 7px;border-radius:12px;border:1px solid transparent;color:var(--fg-2)}.md b{font-size:.95rem;font-weight:600;font-variant-numeric:tabular-nums}.md.out{opacity:.35}.md.today b{color:var(--acc)}.md.sel{background:var(--surface);border-color:var(--line-2);color:var(--fg)}.md .dots{display:flex;gap:3px;height:6px}.md .dots i{width:6px;height:6px;border-radius:99px;background:var(--acc)}.md .dots i.done{background:var(--fg-2);opacity:.7}.md .dots i.skipped{background:none;box-shadow:inset 0 0 0 1.5px var(--muted)}.conn{display:flex;align-items:center;gap:12px;padding:4px 2px}.conn-ic{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--acc);color:var(--acc-ink);flex:none}.conn span:nth-child(2){flex:1;display:grid}.conn small{color:var(--muted)}.sync-list{display:grid;gap:8px}.sync-list>div:not(.coach-line){display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--r);background:var(--bg-2);border:1px solid var(--line)}.sync-list>div>span:nth-child(2){flex:1;display:grid}.sync-list small{color:var(--muted);font-size:.82rem}.sync-list>div>svg{color:var(--fg-2);flex:none}.coach-line{display:flex;gap:8px;align-items:flex-start;font-size:.88rem;color:var(--fg-2);padding:4px 2px}.coach-line svg{color:var(--acc);flex:none;margin-top:3px}.pb-stack{display:grid;gap:12px}.pb-stack .pb{padding:18px;gap:4px}.pb-stack .pb b{font-size:1.5rem}.faq{display:grid;gap:8px;max-width:820px}.faq details{border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;font-weight:600;font-size:1.02rem}.faq summary::-webkit-details-marker{display:none}.faq summary svg{flex:none;color:var(--fg-2);transition:transform .2s var(--ease)}.faq details[open] summary svg{transform:rotate(45deg);color:var(--acc)}.faq details p{padding:0 20px 18px;color:var(--fg-2)}.rn-top .ttl{min-width:0}.next-line{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);text-align:left;font-size:.9rem}.next-line span{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600;flex:none}.next-line b{flex:1;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.next-line svg{color:var(--fg-2);flex:none}.ov{list-style:none;margin:0;padding:0;display:grid;gap:4px}.ov button{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:var(--r-sm);text-align:left;border:1px solid transparent}.ov-ic{flex:none;width:24px;height:24px;border-radius:99px;display:grid;place-items:center;border:1.5px solid var(--line-2)}.ov-txt{flex:1;display:grid;gap:2px;min-width:0}.ov-txt b{font-weight:600;font-size:.95rem}.ov-txt small{color:var(--muted);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ov-note{display:flex;gap:6px;align-items:center;color:var(--fg-2)!important}.ov-act{flex:none;font-size:.8rem;font-weight:600;color:var(--fg-2)}.ov li.done .ov-ic{background:var(--acc-soft);border-color:transparent;color:var(--acc)}.ov li.cur button{background:var(--bg-2);border-color:#d4ff3a59}.ov li.cur .ov-ic{background:var(--acc);border-color:var(--acc);color:var(--acc-ink)}.ov li.cur .ov-act{color:var(--acc)}.ov li.past .ov-txt b{color:var(--fg-2)}.edit-piece{display:grid;gap:14px}
