:root{--cream: #f8f0e9;--paper: #fffaf6;--ink: #2b2326;--ink-2: #6f6266;--line: #ecdcd3;--rose: #b9607a;--rose-2: #d98ea2;--rose-bg: #f6e1e6;--sage: #5f8a68;--sage-bg: #e3eee3;--blue: #5a7fae;--violet: #7a6bb2;--violet-bg: #ece8f7;--amber: #c98a2b;--amber-bg: #fbf0dc;--stage-bg: #f3e8df;--stage-ink: #2b2326;--stage-muted: #7d6f73;--stage-card: #fffaf6;--stage-line: #e6d6cc;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--stage-bg: #1d1a1b;--stage-ink: #f3ebe7;--stage-muted: #b3a6a9;--stage-card: #27222400;--stage-line: #3a3234;color-scheme:dark}}:root[data-theme=dark]{--stage-bg: #1d1a1b;--stage-ink: #f3ebe7;--stage-muted: #b3a6a9;--stage-card: #27222400;--stage-line: #3a3234;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{font-family:Assistant,Rubik,system-ui,sans-serif;background:var(--stage-bg);color:var(--stage-ink);-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer;color:inherit}button:disabled{cursor:default}input,textarea{font:inherit}.stage{min-height:100vh;display:grid;grid-template-columns:300px 1fr;gap:32px;padding:28px 32px;max-width:1100px;margin:0 auto}.presenter{position:sticky;top:28px;align-self:start;max-height:calc(100vh - 56px);overflow:auto}.presenter .muted,.p-foot{color:var(--stage-muted)}.p-brand h2{margin:4px 0 2px;font-size:28px}.p-brand p{margin:0 0 18px;font-size:14px}.flow{display:flex;flex-direction:column;gap:14px}.phase{border-inline-start:3px solid var(--pc);padding-inline-start:12px}.phase-title{font-weight:700;font-size:14px;display:flex;gap:8px;align-items:center;margin-bottom:4px}.phase-title span{width:20px;height:20px;border-radius:50%;background:var(--pc);color:#fff;display:inline-grid;place-items:center;font-size:12px}.flow-item{display:block;width:100%;text-align:start;background:none;border:0;padding:4px 8px;border-radius:8px;font-size:14px;color:var(--stage-muted)}.flow-item:hover{color:var(--stage-ink)}.flow-item.on{background:var(--pc);color:#fff;font-weight:600}.p-foot{font-size:12px;margin-top:18px}.device-wrap{display:flex;flex-direction:column;align-items:center;gap:14px}.now{display:flex;gap:10px;align-items:baseline}.now-phase{color:var(--pc);font-weight:700;font-size:13px;letter-spacing:.02em}.now-title{font-size:20px;font-weight:700}.device{position:relative;width:390px;height:min(800px,calc(100vh - 130px));min-height:640px;background:var(--cream);color:var(--ink);border:12px solid #1f1a1c;border-radius:48px;box-shadow:0 30px 60px -20px #3c1e2859;overflow:hidden;display:flex;flex-direction:column}.notch{position:absolute;top:0;left:50%;transform:translate(-50%);width:120px;height:26px;background:#1f1a1c;border-radius:0 0 16px 16px;z-index:3}.statusbar{display:flex;justify-content:space-between;padding:8px 26px 4px;font-size:12px;font-weight:700;direction:ltr}.viewport{flex:1;overflow-y:auto;scrollbar-width:none;animation:fade .25s ease}.viewport::-webkit-scrollbar{display:none}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.tabbar{display:flex;border-top:1px solid var(--line);background:var(--paper);padding:6px 4px 14px}.tabbar button{flex:1;background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--ink-2)}.tabbar button span{font-size:18px;line-height:1}.tabbar button.on{color:var(--rose);font-weight:700}.pager{display:flex;gap:16px;align-items:center;color:var(--stage-muted);font-size:14px}.pager button{background:var(--stage-card);border:1px solid var(--stage-line);border-radius:999px;padding:6px 16px;color:var(--stage-ink)}.pager button:disabled{opacity:.4}.scr{padding:14px 20px 24px;display:flex;flex-direction:column;gap:14px;min-height:100%}.scr-head{position:relative}.scr-head h1{font-size:24px;line-height:1.2;margin:6px 0 2px}.scr-head p{margin:0}.back{position:absolute;inset-inline-start:-6px;top:-4px;background:none;border:0;font-size:20px;color:var(--ink-2);padding:4px}.scr-head .back+.brand-sm{padding-inline-start:24px}.brand-sm{font-size:11px;letter-spacing:.3em;font-weight:700;color:var(--ink-2)}.center{text-align:center}.muted{color:var(--ink-2)}.small{font-size:13px}.fine{font-size:12px;color:var(--ink-2);margin:0}.sec{display:block;font-size:13px;font-weight:700;color:var(--rose);margin:0}h3.sec{margin-top:4px}.btn{border:0;border-radius:14px;padding:14px 18px;font-weight:700;font-size:16px;width:100%}.btn.primary{background:var(--rose);color:#fff;margin-top:auto;box-shadow:0 6px 16px -8px var(--rose)}.btn.primary:disabled{background:#d9c3c9;box-shadow:none}.btn.ghost{background:transparent;border:1.5px solid var(--rose);color:var(--rose)}.btn.small{width:auto;padding:8px 14px;font-size:14px;background:var(--rose-bg);color:var(--rose);border-radius:10px}.link{background:none;border:0;color:var(--rose);font-size:14px;padding:4px}.link.danger,.danger{color:#a4473e}.link.center{align-self:center}.pill{font-size:12px;padding:3px 10px;border-radius:999px;background:var(--line);white-space:nowrap}.pill.sage{background:var(--sage-bg);color:var(--sage);font-weight:700}.pill.rose{background:var(--rose);color:#fff;font-weight:700}.dots{display:flex;gap:6px}.dots span{flex:1;height:4px;border-radius:4px;background:var(--line)}.dots span.on{background:var(--rose)}.bar{height:8px;background:var(--line);border-radius:8px;overflow:hidden;flex:1}.scr>.bar{flex:none}.bar span{display:block;height:100%;border-radius:8px;background:var(--rose-2);transition:width .6s ease}.bar span.sage{background:var(--sage)}.bar span.violet{background:var(--violet)}.av{width:40px;height:40px;border-radius:50%;background:var(--paper);display:inline-grid;place-items:center;font-size:22px;border:1px solid var(--line);flex:none}.av.big{width:64px;height:64px;font-size:36px}.splash{justify-content:space-between;padding-top:60px;background:linear-gradient(180deg,var(--rose-bg),var(--cream) 60%)}.splash-mark{text-align:center;margin-top:80px}.logo-ring{width:110px;height:110px;margin:0 auto 20px;border-radius:50%;border:6px solid var(--rose-2);display:grid;place-items:center;box-shadow:inset 0 0 0 10px var(--paper);background:var(--paper)}.logo-ring span{font-weight:800;font-size:34px;color:var(--rose);letter-spacing:-.02em}.brand-lg{font-size:26px;letter-spacing:.35em;font-weight:800}.tagline{font-size:20px;color:var(--ink-2);margin-top:6px}.stack,.form{display:flex;flex-direction:column;gap:10px}.form label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:var(--ink-2)}.form input,.form textarea,.form select,.note-text{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--paper);color:var(--ink);font-size:15px;resize:none}.otp{display:flex;justify-content:space-between;align-items:center;font-size:13px}.otp-boxes{display:flex;gap:6px;direction:ltr}.otp-boxes span{width:34px;height:40px;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;background:var(--paper);font-weight:700}.privacy-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.privacy-grid div{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:4px;font-size:12px}.privacy-grid b{font-size:13px}.privacy-grid span{color:var(--ink-2)}.checks{display:flex;flex-direction:column;gap:8px}.check{display:flex;gap:8px;font-size:13px;align-items:flex-start}.check input{accent-color:var(--rose);width:18px;height:18px;margin-top:1px;flex:none}.sigpad{position:relative;border:1.5px dashed var(--rose-2);border-radius:12px;background:var(--paper)}.sigpad canvas{width:100%;height:100px;display:block;touch-action:none}.sig-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--ink-2);font-size:13px;pointer-events:none}.sigpad .link{position:absolute;bottom:4px;inset-inline-end:8px}.members{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.member{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:14px}.member small{color:var(--ink-2);font-size:12px}.member.add{border-style:dashed;color:var(--rose);font-size:22px;justify-content:center}.child-top{display:flex;gap:12px;align-items:center}.voice-list{display:flex;flex-direction:column;gap:8px}.voice-row{display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px}.voice-row .grow{flex:1;display:flex;flex-direction:column}.voice-rec{text-align:center;background:var(--paper);border-radius:18px;padding:22px 16px;border:1px solid var(--line)}.phrase{font-size:20px;font-weight:700;margin:16px 0 6px}.wave{display:flex;gap:3px;align-items:center;justify-content:center;height:60px}.wave span{width:4px;height:20%;background:var(--rose-2);border-radius:3px;animation:wave .9s ease-in-out infinite}.wave.slim{height:40px}@keyframes wave{0%,to{height:18%}50%{height:95%}}.choose-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choose{background:var(--paper);border:2px solid var(--line);border-radius:18px;padding:18px 8px;display:flex;flex-direction:column;align-items:center;gap:4px}.choose small{color:var(--ink-2)}.choose.sel{border-color:var(--rose);background:var(--rose-bg)}.seg{display:flex;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:3px}.seg button{flex:1;border:0;background:none;padding:8px;border-radius:9px;font-weight:600;color:var(--ink-2)}.seg button.on{background:var(--rose);color:#fff}.seg.small button{padding:6px;font-size:14px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:5px 12px;font-size:14px}.chip.on{background:var(--sage);color:#fff;border-color:var(--sage)}.topics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.topic{display:flex;gap:8px;align-items:center;border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:10px;font-size:14px;text-align:start}.topic span{font-size:18px}.topic.on{border:2px solid var(--rose);background:var(--rose-bg);font-weight:700}.question{font-size:22px;margin:10px 0 0}.answers{display:flex;flex-direction:column;gap:8px}.answer{text-align:start;border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:12px 14px;font-size:15px}.answer.on{border:2px solid var(--rose);background:var(--rose-bg);font-weight:700}.answer.other{border-style:dashed;color:var(--ink-2)}.goal-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:20px;text-align:center}.goal-flag{font-size:36px}.goal-card h2{font-size:22px;margin:6px 0 12px}.ticks{list-style:none;padding:0;margin:0;text-align:start;display:flex;flex-direction:column;gap:6px;font-size:14px}.ticks li:before{content:"✓";color:var(--sage);font-weight:800;margin-inline-end:8px}.home{gap:12px}.greet{font-size:24px;text-align:center;margin:0}.goal-strip{display:flex;justify-content:space-between;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px 12px;cursor:pointer}.goal-strip>div:first-child{display:flex;flex-direction:column}.goal-strip .week{font-size:12px;font-weight:700;color:var(--sage);background:var(--sage-bg);padding:4px 10px;border-radius:999px}.gauge{position:relative;width:200px;margin:0 auto;text-align:center}.gauge svg{width:100%}.g-track{fill:none;stroke:var(--line);stroke-width:14;stroke-linecap:round}.g-fill{fill:none;stroke:var(--rose-2);stroke-width:14;stroke-linecap:round;transition:stroke-dashoffset 1s ease}.g-val{position:absolute;top:46px;left:0;right:0;font-size:40px;font-weight:800;color:var(--rose)}.g-lbl{margin-top:-8px;font-size:13px;color:var(--ink-2)}.kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px}.kpi{border:0;border-radius:12px;padding:10px;font-size:14px}.kpi b{font-size:18px;margin-inline-end:4px}.kpi.sage{background:var(--sage-bg);color:var(--sage)}.kpi.rose{background:var(--rose-bg);color:var(--rose)}.today{background:#f2e6de;border-radius:14px;padding:12px 14px;cursor:pointer}.today p{margin:4px 0 0;font-size:15px;line-height:1.5}.listening{align-items:center;justify-content:center;gap:18px;background:linear-gradient(180deg,var(--cream),var(--rose-bg))}.live{display:flex;gap:8px;align-items:center;font-weight:700;color:var(--rose);background:var(--paper);padding:6px 14px;border-radius:999px}.live .dot{width:10px;height:10px;border-radius:50%;background:#d1453b;animation:blink 1s infinite}@keyframes blink{50%{opacity:.2}}.pulse{position:relative;width:170px;height:170px;display:grid;place-items:center}.pulse:before,.pulse:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--rose-2);opacity:.35;animation:ring 2s ease-out infinite}.pulse:after{animation-delay:1s}@keyframes ring{0%{transform:scale(.6);opacity:.5}to{transform:scale(1.15);opacity:0}}.core{position:relative;z-index:1;width:110px;height:110px;border-radius:50%;background:var(--rose);display:grid;place-items:center;font-size:44px;box-shadow:0 10px 30px -10px var(--rose)}.timer{font-size:44px;font-weight:800;font-variant-numeric:tabular-nums;direction:ltr}.listening .wave{width:100%}.stop{width:100%;border:0;border-radius:14px;padding:16px;background:var(--ink);color:#fff;font-weight:700;font-size:17px}.note-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.opt{border:2px solid var(--line);background:var(--paper);border-radius:16px;padding:22px 8px;font-size:30px;display:flex;flex-direction:column;align-items:center;gap:6px}.opt span{font-size:15px;font-weight:700}.opt.on{border-color:var(--rose);background:var(--rose-bg)}.seq{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;position:relative}.seq li{background:var(--paper);border:1px solid var(--line);border-inline-start:4px solid var(--violet);border-radius:12px;padding:8px 12px;display:flex;flex-direction:column;font-size:13px;opacity:0;transform:translate(-10px);transition:all .4s ease}.seq li.in{opacity:1;transform:none}.seq li b{font-size:12px;color:var(--violet)}.seq li.warn{border-inline-start-color:var(--amber)}.seq li.warn b{color:var(--amber)}.seq li.calm b{color:var(--blue)}.seq li.calm{border-inline-start-color:var(--blue)}.seq li.good{border-inline-start-color:var(--sage)}.seq li.good b{color:var(--sage)}.match{background:var(--violet-bg);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:6px;opacity:0;transition:opacity .5s}.match.in{opacity:1}.match-head{font-size:12px;font-weight:700;color:var(--violet)}.conf{display:flex;align-items:center;gap:8px;font-size:12px}.patterns{display:flex;flex-direction:column;gap:6px}.pattern{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.45}.insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.insight{border-radius:14px;padding:10px 12px;font-size:13px}.insight small{font-weight:800;font-size:12px}.insight p{margin:4px 0 0;line-height:1.4}.insight.works{background:var(--sage-bg)}.insight.works small{color:var(--sage)}.insight.pattern{background:var(--amber-bg)}.insight.pattern small{color:var(--amber)}.insight.sentence{background:var(--rose-bg)}.insight.sentence small{color:var(--rose)}.insight.human{background:var(--violet-bg)}.insight.human small{color:var(--violet)}.reco{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:4px}.reco b{font-size:20px}.reco p{margin:0 0 8px;font-size:14px}.tool-sec{border-radius:14px;padding:10px 14px;background:var(--paper);border:1px solid var(--line)}.tool-sec h3{margin:0 0 4px;font-size:15px}.tool-sec ul{margin:0;padding-inline-start:18px;font-size:14px;display:flex;flex-direction:column;gap:3px}.tool-sec p{margin:0;font-size:14px;line-height:1.5}.tool-sec.say{background:var(--rose-bg);border:0}.tool-sec.say .btn{margin-top:8px;background:var(--paper)}.tool-sec.avoid{background:#f7ebe7;border:0}.tool-sec.do{background:var(--sage-bg);border:0}.feel{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.feel button{border:2px solid var(--line);background:var(--paper);border-radius:16px;padding:16px 6px;display:flex;flex-direction:column;align-items:center;gap:6px;font-weight:700}.feel button span{font-size:32px}.feel button.on{border-color:var(--rose);background:var(--rose-bg)}.ack{margin:0;background:var(--sage-bg);color:var(--sage);border-radius:12px;padding:10px 12px;font-weight:700;font-size:14px}.stats{display:flex;flex-direction:column;gap:8px}.stat{display:flex;align-items:center;gap:14px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:12px 14px}.stat b{font-size:30px;color:var(--rose);min-width:64px;text-align:center}.stat div{display:flex;flex-direction:column}.stat span{font-weight:700}.stat small{color:var(--ink-2)}.stat.sage{background:var(--sage-bg);border-color:transparent}.stat.sage b{color:var(--sage)}.focus{background:var(--rose-bg);border-radius:16px;padding:14px}.focus b{font-size:20px;display:block;margin-top:4px}.focus p{margin:4px 0 0;font-size:16px}.wk-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wk-grid div{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;flex-direction:column;align-items:center}.wk-grid b{font-size:26px;color:var(--rose)}.wk-grid small{font-size:12px;color:var(--ink-2)}.wk-grid .up{background:var(--sage-bg);border-color:transparent}.wk-grid .up b{color:var(--sage)}.wk-sec{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px 14px}.wk-sec p{margin:4px 0 0;font-size:14px}.wk-sec .ticks{margin-top:6px}.chart-box{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:8px}.trend{width:100%;display:block}.trend .area{fill:var(--rose-bg)}.trend .line{fill:none;stroke:var(--rose);stroke-width:2.5;stroke-linejoin:round}.trend circle{fill:var(--paper);stroke:var(--rose);stroke-width:2}.trend circle.last{fill:var(--rose)}.trend text{font-size:9px;fill:var(--ink-2);font-family:inherit}.trend text.lbl{font-size:12px;font-weight:800;fill:var(--rose)}.trend-note{font-size:14px;color:var(--ink-2)}.trend-note b{color:var(--sage);font-size:18px;margin-inline-end:4px}.dims{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dim{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:8px 10px;display:flex;flex-direction:column;gap:6px}.dim div{display:flex;flex-direction:column}.dim small{font-size:12px;color:var(--ink-2)}.dim .bar{flex:none;height:6px}.journey{display:flex;flex-direction:column;gap:8px}.jrow{display:grid;grid-template-columns:110px 1fr 36px;gap:8px;align-items:center;font-size:14px}.jrow b{font-size:13px;color:var(--rose)}.loop{display:flex;justify-content:space-between;font-size:13px;font-weight:700;color:var(--rose);background:var(--rose-bg);border-radius:12px;padding:8px 12px}.loop i{font-style:normal;margin-inline-start:6px;color:var(--rose-2)}.next-list{display:flex;flex-direction:column;gap:8px}.next{text-align:start;border:2px solid var(--line);background:var(--paper);border-radius:14px;padding:10px 12px}.next.on{border-color:var(--rose)}.next-top{display:flex;justify-content:space-between;align-items:center}.next p{margin:4px 0 0;font-size:13px;color:var(--ink-2)}.human{background:var(--violet-bg);border-radius:14px;padding:12px}.human p{margin:4px 0 8px;font-size:13px}.human .btn{background:var(--paper);color:var(--violet)}.history,.settings{display:flex;flex-direction:column;gap:6px}.history div,.settings div{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;font-size:14px}.history small{color:var(--ink-2)}@media (max-width: 820px),(display-mode: standalone){.stage{display:block;padding:0}.presenter{display:none}.device-wrap{gap:0}.now{display:none}.device{width:100%;height:100dvh;border:0;border-radius:0;box-shadow:none}.notch,.statusbar{display:none}.pager{position:fixed;top:calc(8px + env(safe-area-inset-top,0px));left:16px;z-index:5;gap:6px}.pager span{display:none}.pager button{padding:4px 10px;font-size:12px;background:#2b2326bf;color:#fff;border:0}}.wk-grid b,.trend-note b,.stat b{direction:ltr;unicode-bidi:isolate}.form-error{color:var(--rose);font-size:13px;font-weight:600;margin:0}button.member.add{font-family:inherit;cursor:pointer}.members .add-form{grid-column:1 / -1;background:var(--paper);border:1px dashed var(--line);border-radius:14px;padding:12px}.row-actions{display:flex;gap:8px}.row-actions .btn{flex:1}.wave.meter span{animation:none;height:100%;transform-origin:center;transition:transform 80ms linear}.playback{width:100%;margin:4px 0 8px}
