.micros-lines{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-3);margin-top:var(--sp-1);color:var(--dim);font-size:var(--fs-xs);font-family:var(--font-num);font-variant-numeric:tabular-nums}.micros-lines .micro{white-space:nowrap}.micros-lines .micro .l{opacity:.75}.fast-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;margin-bottom:var(--sp-2);border-bottom:1px solid var(--line);font-size:var(--fs-sm)}.fast-row.fasting{color:var(--accent-ink)}.fast-time{background:none;border:none;padding:0;margin-inline-start:var(--sp-1);color:var(--dim);font:inherit;font-size:var(--fs-xs);font-family:var(--font-num);font-variant-numeric:tabular-nums;text-decoration:underline dotted;text-underline-offset:2px;cursor:pointer}.fast-time-input{inline-size:6.5em;padding:0 var(--sp-1);margin-inline-start:var(--sp-1);font-size:var(--fs-xs)}.fast-custom{inline-size:5em;text-align:center}.row.wrap{flex-wrap:wrap}.fast-trainer{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.yd-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-2)}.yd-head h3{margin:0;display:inline-flex;align-items:center;gap:var(--sp-2)}.yd-count{font-size:var(--fs-cap);color:var(--dim);font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap}.yd-bar{height:6px;margin-bottom:var(--sp-2)}.yd-bar>i{background:var(--accent)}.yd-card.all-done .yd-bar>i{background:var(--ok)}.yd-list{display:flex;flex-direction:column}.yd-row{border-top:1px solid var(--line)}.yd-row:first-child{border-top:0}.yd-task{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-height:var(--hit-min);padding:var(--sp-2) 0;border:0;background:none;color:var(--fg);font:inherit;text-align:start;cursor:pointer}.yd-task:disabled{cursor:default}.yd-check{flex:none;width:26px;height:26px;border-radius:var(--r-full);border:2px solid var(--line-strong);display:grid;place-items:center;font-size:var(--fs-cap);color:var(--on-solid);background:transparent}.yd-task.done .yd-check{background:var(--ok);border-color:var(--ok)}.yd-task.auto .yd-check,.yd-task.auto.done .yd-check{border-style:solid}.yd-ico{flex:none;display:inline-flex}.yd-main{flex:1;min-width:0}.yd-title{display:block;font-weight:600;font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.yd-task.done .yd-title{color:var(--dim);text-decoration:line-through;text-decoration-color:var(--line-strong)}.yd-sub{display:block;font-size:var(--fs-xs);color:var(--dim);margin-top:2px}.yd-chev{flex:none;color:var(--dim);font-size:var(--fs-h2);line-height:1;transition:transform .15s}[dir=rtl] .yd-chev{transform:scaleX(-1)}.yd-task[aria-expanded=true] .yd-chev{transform:rotate(90deg)}[dir=rtl] .yd-task[aria-expanded=true] .yd-chev{transform:scaleX(-1) rotate(90deg)}.yd-expand{padding-bottom:var(--sp-2)}.yd-expand>.card,.yd-expand .card.tc-menu,.yd-expand .card.tc-assigned,.yd-expand .card.tw-card{border:0;box-shadow:none;padding:0;margin:0 0 var(--sp-2);background:transparent}.yd-done-note{margin-top:var(--sp-2)}.ec-bubble{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:2px 8px;min-height:24px;border:1px solid var(--accent-mute);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font:inherit;font-size:var(--fs-xs);cursor:pointer}.ec-bubble.unseen{border-color:var(--accent);font-weight:600}.ec-bubble.unseen:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--bad)}.ec-text{margin-top:4px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--accent-soft);color:var(--fg);font-size:var(--fs-cap);line-height:1.45;white-space:pre-wrap;word-break:break-word}.ec-text+.ec-text{margin-top:4px}.ec-when{display:block;color:var(--dim);font-size:var(--fs-xs);margin-top:2px}.ec-row{display:flex;flex-direction:column}.ec-row-btn{display:flex;align-items:center;width:100%;gap:var(--sp-2);border:0;background:none;padding:0;margin:0;color:inherit;font:inherit;text-align:start;cursor:pointer}.ec-row-btn .td-entry{width:100%}.ec-add{flex:none;color:var(--accent-ink);font-size:var(--fs-xs);white-space:nowrap}.ec-compose{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2) 0 var(--sp-3)}.ec-compose textarea{min-height:64px}.ec-compose-acts{display:flex;gap:var(--sp-2);justify-content:flex-end}.ec-existing{padding-inline-start:40px;padding-bottom:var(--sp-2)}.bc-bar{display:flex;justify-content:flex-end;margin-bottom:var(--sp-2)}.bc-sheet{display:flex;flex-direction:column;gap:var(--sp-3)}.bc-sheet textarea{min-height:96px}.bc-mode{display:flex;gap:var(--sp-2);flex-wrap:wrap}.bc-picks{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.bc-acts{display:flex;gap:var(--sp-2);justify-content:flex-end;flex-wrap:wrap}.bc-result{color:var(--ok);font-weight:600}.hb-list{display:flex;flex-direction:column}.hb-item{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;border-top:1px solid var(--line)}.hb-item:first-child{border-top:0}.hb-item-main{flex:1;min-width:0}.hb-item-title{display:block;font-weight:600;font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hb-item-sub{display:block;font-size:var(--fs-xs);color:var(--dim);margin-top:2px}.hb-week{display:inline-flex;gap:3px;margin-inline-start:var(--sp-1);vertical-align:middle}.hb-dot{width:10px;height:10px;border-radius:50%;background:var(--track);display:inline-block}.hb-dot.on{background:var(--ok)}.hb-dot.off{background:var(--line-2)}.hb-dot.skip{background:transparent;border:1px solid var(--line-2);box-sizing:border-box}.hb-form{display:flex;flex-direction:column;gap:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--line);margin-top:var(--sp-2)}.hb-kinds,.hb-days{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.hb-days .chip{min-width:40px;justify-content:center}.hb-form-row{display:flex;gap:var(--sp-2);align-items:flex-end;flex-wrap:wrap}.hb-form-row .field{flex:1;min-width:120px;margin-bottom:0}.hb-form-acts{display:flex;gap:var(--sp-2);justify-content:flex-end}.yd-badge{display:inline-block;margin-inline-start:6px;padding:1px 7px;border-radius:var(--r-full);background:var(--accent);color:var(--accent-fg, var(--bg));font-size:var(--fs-xs);font-weight:700;vertical-align:middle}.ms-2{margin-inline-start:var(--sp-2)}.wr-min-input{width:64px;text-align:center;padding:6px 4px}.steps-bonus-hint{max-width:110px}.steps-add-input{direction:ltr;text-align:right}.cheat-overlay-emo{font-size:var(--fs-h1);line-height:1}.opt-static{cursor:default}.sheet-empty{padding:18px 4px;text-align:center}.source-row{font-size:var(--fs-cap);line-height:1.7}.source-link{display:block;margin-top:var(--sp-1);font-size:var(--fs-xs);color:var(--accent-ink);direction:ltr;text-align:left;overflow-wrap:anywhere}.coach-pop-why{background:none;border:0;padding:6px 0 0;font-size:var(--fs-xs);color:var(--dim);text-decoration:underline;cursor:pointer}.warn-card{background:var(--warn-soft);box-shadow:none}.opt-sub{padding-inline-start:68px}.wo-opt{display:flex;align-items:center;gap:var(--sp-2)}.inline-flex{display:inline-flex}.c-p,.v.c-p{color:var(--p)}.c-f,.v.c-f{color:var(--f)}.c-c,.v.c-c{color:var(--c)}.btn.fav-on{color:var(--warn)}.btn.fav-off{color:var(--dim)}.card.card-sub{background:var(--card2)}.opt-fav-end{border-bottom:2px solid var(--line)}.wo-opt-main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;font:inherit;color:inherit;text-align:start;cursor:pointer}.card-head.mb-0{margin-bottom:0}.run-card-title{font-size:var(--fs-sm);display:inline-flex;align-items:center;gap:6px;margin:0}.run-card-run,.run-item{display:flex;align-items:center;gap:10px;width:100%;margin-top:10px;padding:10px 12px;background:var(--card2);border:1px solid var(--line);border-radius:var(--r-md);color:var(--fg);font:inherit;text-align:start;cursor:pointer;transition:transform var(--dur-tap) var(--ease-out),background var(--dur-base)}.run-card-run:active,.run-item:active{transform:scale(.985)}.run-card-ico,.run-item-ico{flex:0 0 auto;width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft)}.run-card-main,.run-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.run-card-when,.run-item-date{font-size:var(--fs-xs);color:var(--dim)}.run-card-seen{color:var(--ok);white-space:nowrap}.run-card-seen .glyph{vertical-align:-1px}.run-card-nums,.run-item-nums{font-size:var(--fs-sm);display:flex;flex-wrap:wrap;align-items:baseline;gap:2px}.run-card-nums b,.run-item-nums b{font-size:var(--fs-h2);font-weight:700}.run-card-nums i,.run-item-nums i{display:inline-block;width:1px;height:12px;margin:0 7px;background:var(--line);vertical-align:middle}.run-card-chev{font-size:var(--fs-h2);color:var(--dim);transform:scaleX(-1)}[dir=ltr] .run-card-chev{transform:none}.run-card-empty{font-size:13px;line-height:1.6;margin-top:6px}.run-card-week{font-size:var(--fs-xs);margin-top:8px}.run-card-start{display:flex;align-items:center;gap:10px;width:100%;margin-top:10px;padding:10px 14px;text-align:start}.run-card-start>span{display:flex;flex-direction:column;flex:1}.run-card-start b{font-size:var(--fs-sm)}.run-card-start-sub{font-size:var(--fs-xs);font-weight:400;opacity:.85}.run-card-start:disabled{opacity:.55;cursor:default;box-shadow:none}.run-card-stores{font-size:var(--fs-xs);margin-top:6px;text-align:center}.run-card-stores a{font-weight:600}.run-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg);color:var(--fg);overflow-y:auto;-webkit-overflow-scrolling:touch;padding:calc(8px + env(safe-area-inset-top)) 12px calc(24px + env(safe-area-inset-bottom))}@media(min-width:600px){.run-screen{padding-left:calc((100vw - 560px)/2);padding-right:calc((100vw - 560px)/2)}}.run-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;position:sticky;top:0;z-index:2;background:var(--bg);padding:6px 0}.run-head-title{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.run-head-title b{font-size:17px}.run-head-title .dim{font-size:var(--fs-xs)}.run-head-spacer{width:56px}.run-pad{padding:16px 4px;line-height:1.6}.run-map-wrap{position:relative;height:46vh;min-height:240px;max-height:420px;border-radius:var(--r-panel);overflow:hidden;background:var(--card2);border:1px solid var(--line)}.run-map{position:absolute;top:0;right:0;bottom:0;left:0}.run-map-fallback{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:var(--card2)}.run-noroute{display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px 12px;text-align:center;font-size:13px;background:var(--card2);border:1px solid var(--line);border-radius:var(--r-panel)}.maplibregl-ctrl-attrib{font-size:var(--fs-xs)}.run-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.run-stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 6px;text-align:center}.run-stat-v{font-size:var(--fs-h2);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;direction:ltr}.run-stat.big .run-stat-v{font-size:26px}.run-stat-u{font-size:var(--fs-xs);font-weight:500;color:var(--dim);margin-inline-start:3px}.run-stat-l{font-size:var(--fs-xs);margin-top:2px}.run-equiv{text-align:center;font-size:var(--fs-sm);margin:-4px 0 12px;color:var(--accent-ink)}.run-note{line-height:1.6}.run-source{font-size:var(--fs-xs);text-align:center;margin:8px 0}.run-splits h4,.run-speed h4,.run-records h4,.run-trend h4{font-size:var(--fs-sm);margin:0 0 8px}.run-splits table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.run-splits th{font-weight:500;color:var(--dim);font-size:var(--fs-xs);text-align:start;padding:2px 4px}.run-splits td{padding:5px 4px;border-top:1px solid var(--line)}.run-splits tr.partial td{color:var(--dim);font-size:13px}.run-mono{font-family:var(--font-num);font-variant-numeric:tabular-nums;direction:ltr;text-align:start}.run-splits td.fast{color:var(--ok)}.run-splits td.slow{color:var(--warn)}.run-speed-svg,.run-trend-svg{width:100%;height:auto;display:block;direction:ltr}.run-actions{display:flex;gap:8px;margin-top:12px}.run-actions .btn{flex:1;padding:12px}.run-delete{color:var(--bad)}.run-records-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.run-record{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;background:var(--card2);border:1px solid var(--line);border-radius:var(--r-md);color:var(--fg);font:inherit;cursor:pointer}.run-record-v{font-size:var(--fs-h2);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;direction:ltr}.run-record-l{font-size:var(--fs-xs);color:var(--dim);text-align:center}.run-record-s{font-size:var(--fs-xs)}.run-week{margin-top:14px}.run-week-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;padding:0 4px;font-size:13px}.run-week-head b{font-size:var(--fs-sm)}.run-week-delta{font-size:var(--fs-xs);color:var(--dim)}.run-week-delta.up{color:var(--ok)}.run-week-delta.down{color:var(--warn)}.run-item{margin-top:8px}.ui-icon{display:inline-block;flex:none;object-fit:contain;vertical-align:middle}.img-contain{display:block;object-fit:contain}.img-block{display:block;flex:none}.avatar-img{display:block;border-radius:50%;object-fit:cover}.skel-title{width:45%;height:20px;margin-bottom:14px}.skel-ring{width:168px;height:168px;border-radius:50%;margin:0 auto 16px}.skel-line{margin-bottom:10px}.skel-sub{width:35%;height:16px;margin-bottom:12px}.skel-short{width:70%}.mtile-glyph{margin-inline-end:4px}.mtile-info{margin-inline-start:5px;transform:translateY(-1px)}.mtile-exp p{margin:0 0 var(--sp-3)}.mtile-exp p:last-child{margin-bottom:0}.ring-center .v{color:var(--fg)}.ring-center .v.over{color:var(--bad)}.inset-total{border-top:1px solid var(--line);padding-top:var(--sp-1)}.link-btn{padding:0;font-size:inherit;color:var(--accent-ink);text-decoration:underline}.chart-svg{display:block;direction:ltr}.chart-touch{touch-action:pan-y;cursor:crosshair}.tip-val{font-size:var(--fs-sm);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums}.sw-accent{background:var(--accent)}.sw-ink{background:var(--accent-ink)}.sw-bad{background:var(--bad)}.sw-dim{background:var(--dim)}.lang-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--r-full);background:var(--card);border:1px solid var(--line);color:var(--fg);line-height:1}.lang-flag{font-size:var(--fs-h3)}.lang-caret{font-size:var(--fs-xs);opacity:.6}.lang-menu{position:absolute;inset-inline-end:0;top:calc(100% + 6px);min-width:168px;margin:0;padding:6px;list-style:none;z-index:50;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop)}.lang-opt{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border-radius:var(--r-sm);border:0;background:transparent;color:var(--fg);text-align:start}.lang-opt.sel{background:var(--accent-soft)}.lang-opt-flag{font-size:var(--fs-h2)}.lang-opt-label{flex:1;font-weight:500}.lang-opt.sel .lang-opt-label{font-weight:700}.lang-check{color:var(--accent-ink);font-weight:700}.err-card{max-width:420px;margin:48px auto}.err-summary{cursor:pointer}.block{display:block}.d-none{display:none}.nowrap{white-space:nowrap}.grow2{flex:2;min-width:0}.pt-2{padding-top:var(--sp-2)}.pt-3{padding-top:var(--sp-3)}.py-1{padding-top:var(--sp-1);padding-bottom:var(--sp-1)}.ta-e{text-align:end}.lh-18{line-height:1.8}.hr-top{border-top:1px solid var(--line)}.resize-y{resize:vertical}.bg-card2{background:var(--card2)}.bg-accent-soft{background:var(--accent-soft)}.bg-p{background:var(--p)}.bg-c{background:var(--c)}.bg-f{background:var(--f)}.c-p{color:var(--p)}.c-c{color:var(--c)}.c-f{color:var(--f)}.btn.c-bad{color:var(--bad)}.btn.apple,.btn.apple:active{background:#000;color:#fff;border-color:#000}.ob-note.t-xs{font-size:var(--fs-xs)}.tabs.mb-1{margin-bottom:var(--sp-1)}.tabs.scroll-x{overflow-x:auto}.tag.ok{background:var(--ok);color:#fff}.load-failed{max-width:420px;margin:var(--sp-7) auto}.load-failed summary{cursor:pointer}.setup-pre{overflow-x:auto;text-align:left}.sources-link{background:none;border:none;padding:0;cursor:pointer;font-size:var(--fs-xs);color:var(--accent-ink);text-decoration:underline}.scan-video{width:100%;border-radius:var(--r-md);background:#000;object-fit:cover;display:block}.scan-video.r43{aspect-ratio:4 / 3}.scan-video.r34{aspect-ratio:3 / 4}.scan-status{min-height:22px}.scan-drop{height:60vh;max-height:640px;border-radius:var(--r-md);background:var(--card2);border:2px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;cursor:pointer;text-align:center}.scan-drop.busy{cursor:default}.scan-drop-hint{padding:0 20px}.scan-row{padding:10px 12px}.scan-row+.scan-row{border-top:1px solid var(--line)}.num-72{width:72px;text-align:center}.btn.sm.portion{background:var(--card);padding:6px 10px}.silhouette{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.45}.scan-head{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3)}.pose-ic{flex:none;width:72px;height:72px;display:grid;place-items:center}.pose-ic .ui-icon{width:72px;height:72px;object-fit:contain}.scan-head-txt{display:flex;flex-direction:column;gap:2px;min-width:0}.scan-head-txt .row{gap:var(--sp-2);flex-wrap:wrap}.scan-tips{margin:var(--sp-3) 0 0;padding-inline-start:18px;color:var(--dim);font-size:var(--fs-sm);line-height:1.5}.scan-tips li+li{margin-top:4px}.scan-drop-body{width:100%;height:auto;min-height:240px}.scan-checking{position:absolute;top:0;right:0;bottom:0;left:0;justify-content:center;align-items:center;color:#fff;font-size:var(--fs-body)}.scan-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px}.scan-msg{background:var(--card);border-radius:var(--r-panel);padding:18px 16px;text-align:center;max-width:320px;box-shadow:var(--shadow-pop)}.consent-row{gap:var(--sp-3);margin-top:var(--sp-4);align-items:center;cursor:pointer;padding:var(--sp-3);border-radius:var(--r-md);background:var(--card2);border:2px solid var(--line)}.consent-row.on{background:var(--accent-soft);border-color:var(--accent)}.consent-row input[type=checkbox]{width:24px;height:24px;flex:none;accent-color:var(--accent)}.ok-big{font-size:var(--fs-display);color:var(--ok);line-height:1}.pct-big{font-size:var(--fs-display);font-weight:700;line-height:1.1}.cues{padding-inline-start:18px}.plan-banner.fr-status{margin-top:0;margin-bottom:var(--sp-3)}.plan-banner.fr-status.ok{background:var(--accent-soft);color:var(--accent-ink)}.skel.skel-60{height:60px}.row-line{padding:var(--sp-2) 0;border-bottom:1px solid var(--line)}.list-btn{width:100%;background:none;border:0;padding:10px 0;text-align:start;color:inherit;gap:10px;cursor:pointer}.list-btn.tight{padding:var(--sp-2) 0}.medal{width:26px;text-align:center;font-size:var(--fs-h3);flex:none}.detail-pad{padding:0 0 10px 36px}.btn.sm.day-chip{padding:4px 8px;min-height:28px;font-size:var(--fs-xs)}.code-mono{font-family:var(--font-head);font-size:var(--fs-h2);letter-spacing:3px;direction:ltr}.code-input{direction:ltr;text-align:center;letter-spacing:4px;font-size:var(--fs-h2);font-family:var(--font-head)}.greet:has(.greet-me) .greet-slot{margin-inline-start:auto}.greet-me{position:relative;flex:none;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:var(--r-full);background:transparent;cursor:pointer}.greet-me .nav-av.me{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--r-full);overflow:hidden;background:var(--card);box-shadow:0 0 0 2px var(--line)}.greet-me .nav-av.me>*{width:100%;height:100%}.greet-me.sel .nav-av.me{box-shadow:0 0 0 2px var(--accent)}.greet-me-badge{position:absolute;top:-2px;inset-inline-end:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-full);background:var(--bad);color:var(--on-solid);font-size:var(--fs-xs);font-weight:700;line-height:18px;text-align:center;font-family:var(--font-num);font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--bg);pointer-events:none}.wk-plus{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2)}.wk-plus-act{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);text-align:center;min-height:120px;padding:var(--sp-3) var(--sp-2);border-radius:var(--r-panel);background:var(--card2);border:1px solid var(--line);color:var(--fg);font:inherit;cursor:pointer}.wk-plus-act:active{transform:scale(.98)}.wk-plus-act b{font-size:var(--fs-sm)}.wk-plus-act small{color:var(--dim);font-size:var(--fs-xs);line-height:1.35}.wk-plus-other{width:100%;justify-content:center}.wk-sheet{display:flex;flex-direction:column;gap:var(--sp-3)}.wk-dim{color:var(--dim);font-size:var(--fs-cap);line-height:1.45}.wk-row{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center}.wk-grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--sp-1)}.wk-grow .btn{align-self:flex-start;margin-top:var(--sp-1)}.wk-card-title{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2)}.wk-card-title b{font-size:var(--fs-sm)}.wk-skel{height:120px}.wk-icon-btn{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:var(--r-full);background:transparent;color:var(--dim);cursor:pointer}.wk-field{display:flex;flex-direction:column;gap:var(--sp-1);font-size:var(--fs-cap);color:var(--dim)}.wk-or{display:flex;align-items:center;gap:var(--sp-2);color:var(--dim);font-size:var(--fs-xs)}.wk-or:before,.wk-or:after{content:"";flex:1;height:1px;background:var(--line)}.wk-sheet .tc-invite{margin:0}.wk-welcome{display:flex;flex-direction:column;gap:var(--sp-2)}.wk-welcome-art{display:grid;place-items:center;width:64px;height:64px;border-radius:var(--r-full);background:var(--accent-soft);margin-bottom:var(--sp-1)}.wk-choices{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-2)}.wk-choice{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-height:56px;text-align:start;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--card2);border:1px solid var(--line);color:var(--fg);font:inherit;cursor:pointer}.wk-choice>span,.wk-choice:not(:has(>span)){display:flex;flex-direction:column;gap:2px;min-width:0}.wk-choice b{font-size:var(--fs-sm);display:inline-flex;align-items:center;gap:var(--sp-2)}.wk-choice small{color:var(--dim);font-size:var(--fs-xs);line-height:1.35}.wk-choice.primary{border-color:var(--accent);background:var(--accent-soft)}.wk-choice:disabled{opacity:.5;cursor:default}.wk-group,.wk-rest,.wk-want{display:flex;align-items:center;gap:var(--sp-3)}.wk-want{align-items:flex-start}.wk-want small,.wk-rest small{color:var(--dim);font-size:var(--fs-cap);line-height:1.4}.wk-rest>span{display:flex;flex-direction:column;gap:2px}.wk-regular{display:flex;flex-direction:column;gap:var(--sp-1);margin-bottom:var(--sp-3)}.wk-snapshot{display:flex;flex-direction:column;gap:var(--sp-2);border-color:var(--accent)}.wk-teaser{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}.wk-teaser img{width:100%;max-width:280px;border-radius:var(--r-panel);border:1px solid var(--line);display:block}.wk-teaser span{color:var(--dim);font-size:var(--fs-cap)}.wk-quick{display:flex;flex-direction:column;gap:var(--sp-3)}.wk-quick-head{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:0;min-height:32px;background:transparent;border:0;color:var(--fg);font:inherit;text-align:start;cursor:pointer}.wk-quick-head.static{cursor:default}.wk-quick-head b{font-size:var(--fs-sm);flex:1}.wk-chev{display:inline-flex;transition:transform var(--dur-fast, .16s) ease}.wk-chev.open{transform:rotate(180deg)}.wk-q-row{display:flex;flex-direction:column;gap:var(--sp-1)}.wk-q-label{font-size:var(--fs-cap);color:var(--dim);font-weight:700}.wk-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.wk-chips .chip{min-height:40px;padding-inline:var(--sp-4);font-size:var(--fs-sm)}.wk-q-preview{display:flex;flex-direction:column;gap:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--line)}.wk-q-meta{display:flex;flex-direction:column;gap:2px}.wk-ex-list{margin:0;padding-inline-start:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-1);font-size:var(--fs-sm)}.wk-ex-list li span{display:block}.wk-ex-list li small{color:var(--dim);font-size:var(--fs-xs)}.wk-week-row{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.wk-day{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;min-height:72px;padding:6px 2px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--card2);color:var(--fg);font:inherit;cursor:default}button.wk-day{cursor:pointer}.wk-day.planned{border-color:var(--accent)}.wk-day.done{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,var(--card2))}.wk-day.moved{border-style:dashed}.wk-day.today{box-shadow:0 0 0 2px var(--accent) inset}.wk-day-wd{font-size:var(--fs-xs);color:var(--dim);font-weight:700}.wk-day-st{font-size:10px;line-height:1.15;color:var(--dim);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.wk-day.done .wk-day-st{color:var(--ok);font-weight:700}.wk-plan{display:flex;flex-direction:column;gap:var(--sp-2)}.wk-plan-days{list-style:none;margin:var(--sp-1) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.wk-plan-day{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--card2);border:1px solid var(--line)}.wk-plan-wd{flex:none;width:56px;font-size:var(--fs-cap);color:var(--dim);font-weight:700}.wk-plan-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.wk-plan-main b{font-size:var(--fs-sm);line-height:1.3;overflow-wrap:anywhere}.wk-plan-main small{color:var(--dim);font-size:var(--fs-xs)}.wk-plan-acts{display:flex;align-items:center;gap:var(--sp-1);flex:none}.wk-warn ul{margin:var(--sp-1) 0 0;padding-inline-start:var(--sp-5)}.wk-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2)}.wk-stats span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--sp-3) var(--sp-2);border-radius:var(--r-md);background:var(--card2);border:1px solid var(--line);text-align:center}.wk-stats b{font-family:var(--font-num);font-size:var(--fs-h3);font-variant-numeric:tabular-nums}.wk-stats small{color:var(--dim);font-size:var(--fs-xs);line-height:1.3}.wk-today-empty{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);flex-wrap:wrap;font-size:var(--fs-cap)}.ik-wizard{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-sheet) + 1);overflow-y:auto;background:var(--bg);padding:calc(var(--sp-3) + env(safe-area-inset-top)) var(--sp-4) 0}.ik-ob{position:relative;padding-bottom:calc(var(--sp-8) + var(--sp-7))}.ik-footer{z-index:calc(var(--z-sheet) + 2)}.ik-head-ico{display:inline-flex;margin-bottom:var(--sp-2)}.ik-stage{display:inline-flex;align-items:center;gap:var(--sp-2);align-self:center;margin-bottom:var(--sp-3);padding:2px var(--sp-3);border-radius:var(--r-pill, 999px);background:var(--surface-2, var(--ob-line));color:var(--text-dim, var(--muted));font-size:var(--fs-cap);font-weight:600;letter-spacing:.01em}.ik-stage-step{color:var(--accent-strong);font-variant-numeric:tabular-nums}.ik-left{text-align:center;font-size:var(--fs-cap);margin-top:var(--sp-4)}.ik-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.ik-grid .ob-choice{min-height:64px}.ik-yesno{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.ik-yesno .ob-choice{justify-content:center;min-height:72px}.ik-doctor{margin-top:var(--sp-2)}.ik-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2)}.ik-chip.chip{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:48px;padding-inline:var(--sp-4);font-size:var(--fs-sm);border-radius:var(--r-full)}.ik-chip-none.chip{border-style:dashed}.ik-other-input,.ik-name-input,.ik-number-input{width:100%;font:inherit;font-size:var(--fs-body);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-panel);border:1px solid var(--line);background:var(--card2);color:var(--fg)}.ik-other-input:focus,.ik-name-input:focus,.ik-number-input:focus{outline:2px solid var(--accent);outline-offset:1px}.ik-textarea{width:100%;resize:vertical;font:inherit;font-size:var(--fs-sm);line-height:1.5;padding:var(--sp-3);border-radius:var(--r-panel);border:1px solid var(--line);background:var(--card2);color:var(--fg)}.ik-number{display:flex;align-items:center;gap:var(--sp-3);max-width:240px;margin:0 auto}.ik-scale{display:flex;justify-content:center;gap:var(--sp-3)}.ik-scale-dot{width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--fg);font:inherit;font-size:var(--fs-h3);font-weight:700;cursor:pointer}.ik-scale-dot.on{border-color:var(--accent);background:var(--accent);color:var(--ink)}.ik-scale-ends{display:flex;justify-content:space-between;font-size:var(--fs-cap);max-width:320px;margin:0 auto;width:100%}.ik-known{display:flex;flex-direction:column;gap:var(--sp-2)}.ik-known-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-panel);background:var(--card);border:1px solid var(--line)}.ik-known-q{color:var(--dim);font-size:var(--fs-cap);min-width:0}.ik-known-row b{font-size:var(--fs-sm)}.ik-confirm{display:flex;flex-direction:column;gap:var(--sp-4)}.ik-form-art{display:grid;place-items:center;width:112px;height:112px;margin:var(--sp-4) auto;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink)}.ik-form-art.ok{background:var(--ok-soft, var(--accent-soft))}.ik-scan,.ik-done{display:flex;flex-direction:column;gap:var(--sp-4)}.ik-sign{display:flex;flex-direction:column;gap:var(--sp-3)}.ik-label{font-size:var(--fs-cap);font-weight:700;color:var(--dim)}.ik-sig{display:flex;flex-direction:column;gap:var(--sp-2)}.ik-sig-canvas{width:100%;height:180px;touch-action:none;cursor:crosshair;border-radius:var(--r-panel);border:1px dashed var(--accent-mute);background:var(--card);color:var(--fg)}.ik-sig-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.ik-sig-hint{font-size:var(--fs-xs);color:var(--dim)}.ik-agree{display:flex;align-items:flex-start;gap:var(--sp-3);font-size:var(--fs-sm);line-height:1.5;cursor:pointer}.ik-agree input{width:22px;height:22px;flex:none;margin-top:2px;accent-color:var(--accent)}.ik-legal{font-size:var(--fs-xs);line-height:1.5}.ik-why{margin:0;font-size:var(--fs-cap);line-height:1.5;color:var(--dim)}.ob-top .ik-later{flex:none;order:1}.ik-card.ik-card-mini{flex-direction:row;align-items:center;gap:var(--sp-2);padding-block:var(--sp-2)}.ik-card-mini small{flex:1;min-width:0;color:var(--dim);font-size:var(--fs-cap)}.ik-card-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.ik-card{display:flex;flex-direction:column;gap:var(--sp-3);border-color:var(--accent)}.ik-card-head{display:flex;align-items:center;gap:var(--sp-3)}.ik-card-head img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}.ik-card-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.ik-card-main b{font-size:var(--fs-sm)}.ik-card-main small{color:var(--dim);font-size:var(--fs-cap);line-height:1.45}.ik-bar{height:6px;border-radius:var(--r-full);background:var(--line);overflow:hidden}.ik-bar>i{display:block;height:100%;background:var(--accent);border-radius:inherit}.ik-banner{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-panel);background:var(--warn-soft);color:var(--fg);border:1px solid var(--warn-soft);margin-bottom:var(--sp-3)}.ik-banner-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:160px}.ik-banner-main b{font-size:var(--fs-sm)}.ik-banner-main small{color:var(--dim);font-size:var(--fs-cap)}.ik-sum{display:flex;flex-direction:column;gap:var(--sp-3)}.ik-flags{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-panel);background:var(--bad-soft);color:var(--bad)}.ik-flags b{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm)}.ik-flags li{font-size:var(--fs-cap);line-height:1.45;color:var(--fg)}.ik-flags ul{margin:0;padding-inline-start:var(--sp-5)}.ik-sum-sec{display:flex;flex-direction:column;gap:var(--sp-1)}.ik-sum-sec h4{margin:0;font-size:var(--fs-cap);color:var(--dim);font-weight:700;display:inline-flex;align-items:center;gap:var(--sp-1)}.ik-sum-chips{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.ik-sum-chip{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--card2);border:1px solid var(--line);font-size:var(--fs-cap)}.ik-sum-chip small{color:var(--dim)}.ik-sum-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}.ik-ver{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;border-bottom:1px solid var(--line);font-size:var(--fs-cap)}.ik-ver:last-child{border-bottom:none}.ik-ver .spacer{flex:1}.ik-answers{display:flex;flex-direction:column;gap:var(--sp-2)}.ik-answer{display:flex;flex-direction:column;gap:2px;padding-bottom:var(--sp-2);border-bottom:1px solid var(--line)}.ik-answer .q{font-size:var(--fs-cap);color:var(--dim)}.ik-answer .a{font-size:var(--fs-sm)}.ik-answer.flag .a{color:var(--bad);font-weight:700}.ik-sig-img{max-width:260px;border:1px solid var(--line);border-radius:var(--r-panel);background:var(--card)}.ik-ed-sec{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--line)}.ik-ed-sec:last-child{border-bottom:none}.ik-ed-sec-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ik-ed-sec-main small{color:var(--dim);font-size:var(--fs-xs)}.ik-ed-q{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-panel);border:1px solid var(--line);background:var(--card2)}.ik-ed-q.locked{border-style:dashed}.ik-ed-q-tools{display:flex;align-items:center;gap:var(--sp-1);flex-wrap:wrap}.ik-ed-q-tools .spacer{flex:1}.ik-ed-tag{font-size:var(--fs-xs);color:var(--dim);display:inline-flex;align-items:center;gap:var(--sp-1)}.ik-flow-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-panel);background:var(--card2);border:1px solid var(--line)}.ik-flow-row b{flex:1;min-width:0;font-size:var(--fs-sm)}.ik-flow-num{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--ink);font-size:var(--fs-cap);font-weight:700;flex:none}.ik-hint{font-size:var(--fs-cap);color:var(--dim)}.ik-over .sheet{z-index:calc(var(--z-sheet) + 3)}.ik-skel{height:220px;margin-top:var(--sp-7);border-radius:var(--r-card)}.ik-over-busy{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-sheet) + 4);display:grid;place-items:center;background:var(--overlay)}.ik-welcome{display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);text-align:center}.ik-welcome-logo{width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid var(--accent)}.ik-welcome-body{margin:0;font-size:var(--fs-body);line-height:1.6;max-width:34ch}.ik-welcome-meta{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--dim);font-size:var(--fs-sm)}.ik-parq{display:flex;flex-direction:column;gap:var(--sp-2)}.ik-parq-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;text-align:start;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-panel);border:1px solid var(--line);background:var(--card);color:var(--fg);font:inherit;cursor:pointer}.ik-parq-row.on{border-color:var(--warn);background:var(--warn-soft)}.ik-parq-q{flex:1;min-width:0;font-size:var(--fs-sm);line-height:1.45}.ik-parq-yn{display:inline-flex;border-radius:var(--r-full);border:1px solid var(--line);overflow:hidden;flex:none}.ik-parq-row{cursor:default}.ik-parq-row.open{border-style:dashed}.ik-parq-yn>button{padding:var(--sp-2) var(--sp-4);min-height:40px;font:inherit;font-size:var(--fs-sm);color:var(--dim);background:transparent;border:none;cursor:pointer}.ik-parq-yn>button+button{border-inline-start:1px solid var(--line)}.ik-parq-yn>button.sel{background:var(--accent);color:var(--ink);font-weight:700}.ik-parq-yn>button.sel.yes{background:var(--warn)}.ik-builder-sheet>div{width:min(1500px,96vw)}.ik-b-head{display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap;margin-bottom:var(--sp-3)}.ik-b-title{display:flex;align-items:center;gap:var(--sp-2);flex:1;min-width:220px}.ik-b-name{font:inherit;font-size:var(--fs-h2);font-weight:700;border:none;border-bottom:1px dashed var(--line);background:transparent;color:var(--fg);padding:var(--sp-1) 0;width:100%}.ik-b-totals{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm)}.ik-b-actions{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.ik-b-rail{display:flex;gap:var(--sp-2);overflow-x:auto;padding-bottom:var(--sp-2);margin-bottom:var(--sp-3)}.ik-b-topic{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);min-width:92px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-panel);border:1px solid var(--line);background:var(--card);color:var(--fg);font:inherit;cursor:pointer}.ik-b-topic.sel{border-color:var(--accent);background:var(--accent-soft)}.ik-b-topic.empty{border-style:dashed}.ik-b-topic.empty .ik-b-topic-n{color:var(--warn)}.ik-b-topic-name{font-size:var(--fs-xs);font-weight:700;text-align:center;line-height:1.2}.ik-b-topic-n{font-size:var(--fs-xs);color:var(--dim)}.ik-b-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--sp-4);align-items:start}@media(max-width:899px){.ik-b-grid{grid-template-columns:minmax(0,1fr)}}.ik-b-bank,.ik-b-form{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.ik-b-bank h4,.ik-b-form h4{margin:0 0 var(--sp-1);display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm)}.ik-b-form{padding:var(--sp-3);border-radius:var(--r-card);border:1px solid var(--line);background:var(--card);min-height:240px}.ik-b-form.over{border-color:var(--accent);background:var(--accent-soft)}.ik-b-drop{padding:var(--sp-6) var(--sp-4);border:2px dashed var(--line);border-radius:var(--r-panel);color:var(--dim);text-align:center}.ik-b-row{border:1px solid var(--line);border-radius:var(--r-panel);background:var(--card)}.ik-b-row.added{opacity:.65}.ik-b-row[draggable=true]{cursor:grab}.ik-b-row-main{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3)}.ik-b-drag{color:var(--dim);flex:none}.ik-b-row-q{flex:1;min-width:0;display:inline-flex;align-items:center;gap:var(--sp-2);text-align:start;background:none;border:none;color:var(--fg);font:inherit;font-size:var(--fs-sm);cursor:pointer;padding:0}.ik-b-pop{display:inline-flex;align-items:center;gap:2px;font-size:var(--fs-xs);color:var(--accent-ink);background:var(--accent-soft);padding:2px var(--sp-2);border-radius:var(--r-full);flex:none}.ik-b-added{display:inline-flex;align-items:center;gap:2px;font-size:var(--fs-xs);color:var(--dim);flex:none}.ik-b-opts{display:flex;flex-wrap:wrap;gap:var(--sp-1);padding:0 var(--sp-3) var(--sp-3)}.ik-b-feeds{display:inline-flex;align-items:center;gap:2px;font-size:var(--fs-xs);color:var(--dim)}.ik-b-qtext{width:100%;font:inherit;font-size:var(--fs-sm);font-weight:700;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-ctl);border:1px solid var(--line);background:var(--card);color:var(--fg)}.ik-b-optlist{display:flex;flex-direction:column;gap:var(--sp-1)}.ik-b-opt{display:flex;align-items:center;gap:var(--sp-1)}.ik-b-opt input{flex:1;min-width:0;font:inherit;font-size:var(--fs-cap);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-ctl);border:1px solid var(--line);background:var(--card);color:var(--fg)}.ik-b-opt.hidden input{text-decoration:line-through;color:var(--dim)}.ik-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-sheet) + 5);background:var(--overlay);display:grid;place-items:center}.ik-preview-col{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3)}.ik-phone{position:relative;transform:translateZ(0);overflow:hidden;width:375px;height:min(760px,86vh);border-radius:var(--r-card);border:10px solid var(--fg);background:var(--bg);box-shadow:var(--shadow-soft)}.ik-phone .ik-wizard{position:absolute}.ik-preview-tools{display:flex;gap:var(--sp-2)}.ik-consent{max-width:520px;margin:0 auto;display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-6) var(--sp-4)}.ik-consent h1{margin:0;font-size:var(--fs-h1)}.ik-consent p{margin:0;line-height:1.65;font-size:var(--fs-body)}.ik-soft{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-panel);background:var(--warn-soft)}.ik-soft b{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm)}.ik-soft ul{margin:0;padding-inline-start:var(--sp-5);font-size:var(--fs-cap);line-height:1.45}.ik-b-actions select{width:auto;max-width:220px}.ik-getapp{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--line)}.ik-getapp .tc-landing-stores{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-2)}.ik-inbox{list-style:none;margin:var(--sp-3) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.ik-inbox-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-panel);background:var(--panel)}.ik-inbox-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.ik-inbox-main b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ik-inbox-row .btn{flex:none}.ik-inbox-open{flex:1;min-width:0;display:flex;text-align:start;background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;border-radius:var(--r-ctl)}.ik-inbox-open:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ik-inbox-row.clickable:hover{border-color:var(--accent)}.ik-inbox-row .tag{display:inline-flex;align-items:center;gap:4px;flex:none}.ik-b-default{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-cap);color:var(--dim);white-space:nowrap}:root{--bg: #f7f3ea;--bg-glow-1: rgba(212, 175, 55, .12);--bg-glow-2: rgba(176, 137, 60, .08);--card: #ffffff;--card2: #f4eede;--line: #e2d8bf;--line-2: #cfc3a4;--line-strong: #8c8065;--fg: #211b10;--dim: #6b6350;--accent: #c9a227;--accent-2: #e0b84a;--accent-strong: #a9821a;--accent-ink: #7a5809;--accent-mute: #b4a277;--ink: #221a08;--signal: #b02a2a;--signal-soft: rgba(176, 42, 42, .12);--ok: #2a6e22;--warn: #875e00;--bad: #b02a2a;--info: #1d5fa8;--info-soft: rgba(29, 95, 168, .12);--on-solid: #ffffff;--st-amber: #8f5f00;--st-amber-fill: #B8860B;--p: #B0432E;--p2: #0f766e;--f: #816111;--c: #3F6680;--w: #8C5A2B;--p-soft: rgba(176, 67, 46, .12);--p2-soft: rgba(15, 118, 110, .14);--f-soft: rgba(129, 97, 17, .12);--c-soft: rgba(63, 102, 128, .12);--w-soft: rgba(140, 90, 43, .14);--warn-soft: rgba(154, 102, 0, .14);--accent-soft: rgba(201, 162, 39, .16);--ok-soft: rgba(47, 122, 39, .14);--bad-soft: rgba(197, 48, 48, .12);--track: #ece3cf;--track-faint: #f3edde;--ring-track: #ece3cf;--ring-track-faint: #f3edde;--overlay: rgba(30, 24, 10, .4);--sheet-shadow: rgba(60, 50, 20, .22);--empty-art: #cbbf99;--shadow-pop: 0 8px 24px rgba(60, 50, 20, .14);--shadow-soft: 0 6px 24px rgba(60, 50, 20, .1);--shadow-nav: 0 -6px 24px rgba(60, 50, 20, .1);--r-card: 16px;--r-lg: var(--r-card);--ob-icon: var(--accent-ink);--duo-fill: color-mix(in srgb, var(--accent) 62%, transparent);--duo-blue: color-mix(in srgb, var(--c) 42%, transparent);--duo-red: color-mix(in srgb, var(--p) 34%, transparent);--duo-amber: color-mix(in srgb, var(--st-amber-fill) 60%, transparent);--duo-teal: color-mix(in srgb, var(--p2) 38%, transparent);--duo-on-accent: rgba(255, 255, 255, .55);--r-ctl: 8px;--r-panel: 12px;--r-full: 999px;--r-sm: var(--r-ctl);--r-md: var(--r-ctl);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--card-pad: 16px;--gutter: 16px;--hit-min: 44px;--row-h: 64px;--ctl-h: 48px;--gap-grid: 12px;--z-sticky: 10;--z-bar: 20;--z-drawer: 30;--z-sheet: 40;--z-toast: 50;--z-confetti: 60;--z-gym: 70;--z-dialog: 80;--rail-w: 72px;--side-w: 232px;--list-w: 300px;--topbar-h: 56px;--drawer-w: clamp(380px, 32vw, 520px);--workspace-max: 1280px;--icon-sm: 16px;--icon-md: 20px;--icon-lg: 24px;--icon-xl: 32px;--dur-tap: .12s;--dur-base: .2s;--dur-enter: .32s;--dur-bar: .44s;--dur-ring: .62s;--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-spring: cubic-bezier(.2, .9, .25, 1);--fs-display: 44px;--fs-h1: 26px;--fs-h2: 20px;--fs-h3: 17px;--fs-title: 20px;--fs-body: 17px;--fs-sm: 15px;--fs-cap: 13px;--fs-xs: 12px;--fs-table: 13px;--fs-num-xl: 72px;--fs-num-lg: 52px;--fs-num-md: 34px;--lh-tight: 1.2;--lh-snug: 1.3;--lh-body: 1.5;--font-body: "Heebo", "Segoe UI", system-ui, -apple-system, sans-serif;--font-head: var(--font-body);--font-serif: "Frank Ruhl Libre", "Heebo", Georgia, serif;--font-num: "JetBrains Mono Digits", "Heebo", ui-monospace, monospace;color-scheme:light}[data-surface=gym],body:has(.gw:not(.embedded)) .ui-dialog-scrim,body:has(.gw:not(.embedded)) .ui-toasts{color-scheme:dark;--bg: #0A0A0A;--card: #161616;--card2: #1F1F1F;--line: #2A2A2A;--line-2: #3A3A38;--line-strong: #6A6A66;--fg: #F3F3F1;--dim: #8E8E89;--accent: #E0B84A;--accent-strong: #E0B84A;--accent-ink: #E0B84A;--accent-soft: rgba(224, 184, 74, .16);--on-accent: #0A0A0A;--ink: #0A0A0A;--signal: #FF6B4A;--signal-soft: rgba(255, 107, 74, .16);--ok: #E0B84A;--duo-fill: color-mix(in srgb, var(--accent) 32%, transparent);--duo-on-accent: rgba(10, 10, 10, .28);--track: #2A2A2A;--ring-track: #2A2A2A;--overlay: rgba(0, 0, 0, .7);--shadow-pop: 0 8px 24px rgba(0, 0, 0, .6);background:var(--bg);color:var(--fg)}@media(prefers-reduced-motion:reduce){:root{--dur-tap: .01ms;--dur-base: .01ms;--dur-enter: .01ms;--dur-bar: .01ms;--dur-ring: .01ms}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;color:var(--fg);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased}html{background-color:var(--bg);min-height:100dvh}body{background:transparent}html:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background-image:radial-gradient(120% 55% at 100% 0%,var(--bg-glow-1),transparent 60%),radial-gradient(90% 50% at 0% 100%,var(--bg-glow-2),transparent 60%)}#root{max-width:560px;margin:0 auto;padding:calc(16px + env(safe-area-inset-top)) var(--gutter) calc(84px + env(safe-area-inset-bottom))}h1,h2,h3{margin:0;font-family:var(--font-head);font-weight:700;letter-spacing:0;line-height:var(--lh-snug)}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);font-weight:600;margin-bottom:var(--sp-2)}button{font:inherit;color:inherit;border:none;background:none;cursor:pointer}input,select,textarea{font:inherit;color:var(--fg);background:var(--card2);border:1px solid var(--line-2);border-radius:var(--r-md);padding:11px 13px;min-height:48px;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-ink);outline-offset:-1px}button:focus-visible,[role=button]:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-ink);outline-offset:-1px}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-soft);padding:var(--card-pad);margin:0 0 var(--sp-3)}@media(min-width:600px){:root{--card-pad: 24px;--gutter: 24px}}@media(min-width:1440px){:root{--list-w: 340px}}[data-density=compact]{--card-pad: 16px;--row-h: 56px;--ctl-h: 40px;--gap-grid: 16px;--fs-display: 32px;--fs-h1: 24px;--fs-h2: 18px;--fs-h3: 15px;--fs-body: 15px;--fs-sm: 14px}.row{display:flex;align-items:center;gap:8px}.between{display:flex;align-items:center;justify-content:space-between;gap:8px}.dim{color:var(--dim);font-size:var(--fs-sm)}.t-display{font-size:var(--fs-display);line-height:var(--lh-tight);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums}.t-h1{font-size:var(--fs-h1);line-height:var(--lh-snug);font-weight:700}.t-h2{font-family:var(--font-head);font-size:var(--fs-h2);line-height:var(--lh-snug);font-weight:700}.t-h3{font-family:var(--font-head);font-size:var(--fs-h3);line-height:var(--lh-snug);font-weight:600}.t-body{font-size:var(--fs-body);line-height:var(--lh-body)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap}.page-head-text{min-width:0;flex:1 1 320px}.page-head-text h2{font-size:var(--fs-h2);margin:0 0 var(--sp-1)}.page-head-text p{margin:0;color:var(--dim);font-size:var(--fs-sm);line-height:var(--lh-body);max-width:70ch}.page-head-action{flex:none;display:flex;gap:var(--sp-2);align-items:center}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--sp-2);padding:var(--sp-7) var(--sp-4)}.empty-state-art{margin-bottom:var(--sp-2);opacity:.9}.empty-state h3{font-size:var(--fs-h3);margin:0}.empty-state p{margin:0;color:var(--dim);font-size:var(--fs-sm);max-width:40ch}.empty-state .btn{margin-top:var(--sp-3)}.card-grid{display:block}.avatar-initials{display:inline-grid;place-items:center;flex:none;border-radius:50%;background:var(--card2);color:var(--fg);font-weight:500;line-height:1;letter-spacing:0;font-size:calc(var(--av-size, 40px) * .38)}.glyph{display:inline-block;flex:none;vertical-align:-.15em;width:var(--icon-md);height:var(--icon-md);background:currentColor;-webkit-mask:var(--glyph) center / contain no-repeat;mask:var(--glyph) center / contain no-repeat}.glyph.duo{position:relative;background:none;-webkit-mask:none;mask:none}.glyph.duo:before,.glyph.duo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask:var(--m) center / contain no-repeat;mask:var(--m) center / contain no-repeat}.glyph.duo:before{--m: var(--glyph-duo);background:var(--glyph-fill, var(--duo-fill))}.glyph.duo:after{--m: var(--glyph);background:currentColor}.glyph.tone-blue{--glyph-fill: var(--duo-blue)}.glyph.tone-red{--glyph-fill: var(--duo-red)}.glyph.tone-amber{--glyph-fill: var(--duo-amber)}.glyph.tone-teal{--glyph-fill: var(--duo-teal)}.btn.primary .glyph.duo,.btn.sel .glyph.duo,.navbtn.sel .glyph.duo,.nav-plus .glyph.duo,.fab .glyph.duo{--glyph-fill: var(--duo-on-accent)}:disabled .glyph.duo:before,[aria-disabled=true] .glyph.duo:before{opacity:.4}.btn.danger .glyph.duo,.danger .glyph.duo{--glyph-fill: var(--duo-red)}[dir=rtl] .glyph-flip,.glyph.glyph-back{transform:scaleX(-1)}[dir=rtl] .glyph.glyph-back{transform:none}.glyph.glyph-down,[dir=rtl] .glyph.glyph-down{transform:rotate(90deg)}.glyph.glyph-up,[dir=rtl] .glyph.glyph-up{transform:rotate(-90deg)}.glyph.fav-on{color:var(--fg)}.glyph.fav-off{color:var(--line-strong)}.tw-box{display:inline-grid;place-items:center;width:18px;height:18px;flex:none;vertical-align:-.2em;border:1.5px solid var(--line-strong);border-radius:var(--r-full);color:var(--ink)}.tw-box.on{background:var(--accent);border-color:var(--accent)}.glyph.tc-tick2{margin-inline-start:-6px}.skip-link{position:fixed;top:8px;inset-inline-start:8px;z-index:var(--z-toast);padding:10px 16px;border-radius:var(--r-md);background:var(--fg);color:var(--card);font-weight:600;transform:translateY(-200%);transition:transform var(--dur-tap) var(--ease-out)}.skip-link:focus-visible{transform:none}[tabindex="-1"]:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.t-sm{font-size:var(--fs-sm);line-height:1.45}.t-cap{font-size:var(--fs-cap);line-height:1.4}.t-xs{font-size:var(--fs-xs);line-height:1.35}.t-num{font-family:var(--font-num);font-variant-numeric:tabular-nums}.fw-4{font-weight:400}.fw-5{font-weight:500}.fw-6{font-weight:600}.fw-7{font-weight:700}.lh-relaxed{line-height:1.7}.c-dim{color:var(--dim)}.c-fg{color:var(--fg)}.c-accent{color:var(--accent-ink)}.cobrand{display:contents}.powered-by{display:block;text-align:center;font-size:var(--fs-xs);color:var(--dim);margin:14px 0 6px;letter-spacing:.02em;opacity:1;visibility:visible}.c-ok{color:var(--ok)}.c-warn{color:var(--warn)}.c-bad{color:var(--bad)}.mt-0{margin-top:0}.mt-1{margin-top:var(--sp-1)}.mt-2{margin-top:var(--sp-2)}.mt-3{margin-top:var(--sp-3)}.mt-4{margin-top:var(--sp-4)}.mt-5{margin-top:var(--sp-5)}.mt-6{margin-top:var(--sp-6)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--sp-1)}.mb-2{margin-bottom:var(--sp-2)}.mb-3{margin-bottom:var(--sp-3)}.mb-4{margin-bottom:var(--sp-4)}.mb-5{margin-bottom:var(--sp-5)}.mb-6{margin-bottom:var(--sp-6)}.m-0{margin:0}.p-0{padding:0}.p-2{padding:var(--sp-2)}.p-3{padding:var(--sp-3)}.p-4{padding:var(--sp-4)}.w-full{width:100%}.ta-c{text-align:center}.ta-s{text-align:start}.flex{display:flex}.col{display:flex;flex-direction:column}.ac{align-items:center}.jb{justify-content:space-between}.jc{justify-content:center}.wrap{flex-wrap:wrap}.g-1{gap:var(--sp-1)}.g-2{gap:var(--sp-2)}.g-3{gap:var(--sp-3)}.g-4{gap:var(--sp-4)}.grow{flex:1;min-width:0}.shrink0{flex:none}.minw0{min-width:0}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break{overflow-wrap:anywhere}.rel{position:relative}.ltr{direction:ltr}.inset{background:var(--card2);border-radius:var(--r-md);padding:10px 12px}.inset-bg{background:var(--bg);border-radius:var(--r-md);padding:10px 12px}.hr{border:0;border-top:1px solid var(--line);margin:var(--sp-3) 0}.card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-2)}.card-head h3{margin-bottom:0}.field{display:flex;flex-direction:column;gap:var(--sp-1);margin-bottom:var(--sp-3)}.field>label{font-size:var(--fs-cap);color:var(--dim);font-weight:500}.field-hint{font-size:var(--fs-cap);color:var(--dim)}.field-error{font-size:var(--fs-cap);color:var(--bad)}.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--bad)}textarea{min-height:96px}.chip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:4px 10px;border-radius:var(--r-full);background:var(--card2);color:var(--fg);border:1px solid transparent;font:inherit;font-size:var(--fs-xs);font-weight:600;cursor:pointer;transition:background var(--dur-tap),color var(--dur-tap)}.chip.sel,.chip[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--accent-mute)}.note{font-size:var(--fs-cap);color:var(--dim);line-height:1.5}.note.ok{color:var(--ok)}.note.warn{color:var(--warn)}.note.bad{color:var(--bad)}.ic-sm{width:var(--icon-sm);height:var(--icon-sm)}.ic-md{width:var(--icon-md);height:var(--icon-md)}.ic-lg{width:var(--icon-lg);height:var(--icon-lg)}.btn{background:var(--card2);border:1px solid var(--line-2);border-radius:var(--r-md);padding:10px 14px;min-height:var(--hit-min);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);font-weight:500;color:var(--fg);cursor:pointer;transition:background var(--dur-tap),transform var(--dur-tap),opacity var(--dur-base)}.btn:active{background:var(--track);transform:scale(.97)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none}.btn.lg{min-height:48px;padding:12px 18px;font-size:var(--fs-body)}.btn.full{width:100%}.btn.danger{background:var(--bad-soft);border-color:transparent;color:var(--bad);font-weight:600}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--ink);font-weight:600}.btn.primary:active{background:var(--accent)}.btn.sel{background:var(--accent);border-color:var(--accent);color:var(--ink);font-weight:600}.btn.ghost{background:transparent;border-color:transparent;color:var(--accent-ink)}.btn.ghost.dim{color:var(--dim)}.btn.sm{padding:6px 12px;min-height:36px;font-size:var(--fs-sm);border-radius:var(--r-sm);position:relative}.btn.sm:before{content:"";position:absolute;top:-4px;right:0;bottom:-4px;left:0}.scan-hero{display:flex;align-items:center;gap:12px;width:100%;text-align:start;background:var(--accent);border:1px solid var(--accent);border-radius:var(--r-md);color:var(--ink);padding:14px 16px;transition:filter var(--dur-tap)}.scan-hero:active{filter:brightness(.95)}.scan-hero .scan-hero-emoji{font-size:26px;line-height:1}.scan-hero .scan-hero-title{font-weight:700;font-size:var(--fs-body)}.scan-hero .scan-hero-sub{display:block;margin-top:2px;font-size:12.5px;line-height:1.4;opacity:.85}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:10px;justify-items:center}.avatar-opt{padding:0;border:0;background:none;cursor:pointer;border-radius:var(--r-full);overflow:hidden;opacity:.85;transition:transform var(--dur-tap),opacity var(--dur-tap),box-shadow var(--dur-tap);box-shadow:0 0 0 2px transparent}.avatar-opt img{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--r-full)}.avatar-opt:active{transform:scale(.94)}.avatar-opt.sel{opacity:1;transform:scale(1.06);box-shadow:0 0 0 3px var(--card),0 0 0 6px var(--accent)}.bar{height:12px;border-radius:var(--r-full);background:var(--track);overflow:hidden}.bar>i{display:block;height:100%;border-radius:var(--r-full);transition:width var(--dur-base) var(--ease-out)}.stat{text-align:center}.stat .v{font-size:var(--fs-h2);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums}.stat .l{font-size:var(--fs-xs);color:var(--dim)}.big{font-size:var(--fs-num-md);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums}.entry{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:8px;border-radius:var(--r-md);background:var(--bg);transition:background var(--dur-tap)}.entry:last-child{margin-bottom:0}.entry:active{background:var(--card2)}.tag{font-size:var(--fs-xs);padding:3px 9px;border-radius:var(--r-full);background:var(--card2);color:var(--dim);white-space:nowrap}.tag.review{background:var(--warn-soft);color:var(--warn)}.plan-banner{margin-top:10px;padding:9px 12px;border-radius:var(--r-md);background:var(--warn-soft);color:var(--warn);font-size:13px;line-height:1.5;text-align:center}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:flex;align-items:flex-end;justify-content:center;z-index:50}.sheet>div{background:var(--card);border:none;border-radius:var(--r-panel) var(--r-panel) 0 0;box-shadow:0 -8px 40px var(--sheet-shadow);width:100%;max-width:560px;max-height:88vh;overflow-y:auto;padding:20px 20px calc(20px + env(safe-area-inset-bottom))}.sheet-cta{position:sticky;bottom:calc(-20px - env(safe-area-inset-bottom));margin:0 -20px calc(-20px - env(safe-area-inset-bottom));padding:10px 20px calc(14px + env(safe-area-inset-bottom));background:var(--card);box-shadow:none}.opt{padding:12px 10px;border-radius:var(--r-md);border-bottom:1px solid var(--line);cursor:pointer}.opt:active{background:var(--card2)}.tabs{display:flex;gap:6px;margin-bottom:12px}.tabs button{flex:1;padding:10px;border-radius:var(--r-full);background:var(--card2);border:1px solid transparent;font-size:var(--fs-sm)}.tabs button.sel{background:var(--accent);border-color:var(--accent);color:var(--ink);font-weight:600}.spinner{width:14px;height:14px;border:2px solid var(--track);border-top-color:var(--accent-ink);border-radius:50%;animation:spin .7s linear infinite;flex:none}@keyframes spin{to{transform:rotate(360deg)}}.scan-line{position:absolute;left:0;right:0;height:2px;background:var(--accent);box-shadow:0 0 8px var(--accent);animation:scanline 1.6s ease-in-out infinite}@keyframes scanline{0%,to{top:0}50%{top:calc(100% - 2px)}}.ring-wrap{position:relative;width:250px;height:250px;margin:2px auto var(--sp-5)}.ring-wrap svg{display:block;width:100%;height:100%}.ring-wrap.hit{animation:ring-hit .7s var(--ease-out)}@keyframes ring-hit{0%{transform:scale(1)}35%{transform:scale(1.045)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.ring-wrap.hit{animation:none}}.ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;user-select:none;-webkit-user-select:none}.ring-wrap svg{position:relative;z-index:1}.ring-wrap .ring-center{z-index:2}.ring-center .v{font-size:var(--fs-num-md);font-weight:700;line-height:1.05;font-family:var(--font-num);font-variant-numeric:tabular-nums;direction:ltr}.ring-center .l{font-size:var(--fs-xs);color:var(--dim);margin-top:1px}.info-dot{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:0;color:var(--dim);background:transparent;line-height:1;vertical-align:middle;cursor:pointer;padding:0;position:relative}.info-dot:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.info-dot:hover{color:var(--fg)}.info-dot:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.info-dot{position:relative}.info-dot:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px}.steps-card .steps-value input{font-size:26px;font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;padding:6px 10px;width:150px;margin-top:4px;direction:ltr;text-align:right}.steps-bonus{text-align:center;padding:6px 14px;border-radius:var(--r-md);background:var(--accent-soft);align-self:center}.steps-bonus-n{font-size:var(--fs-h2);font-weight:700;color:var(--accent-ink);line-height:1.1;font-family:var(--font-num);font-variant-numeric:tabular-nums;direction:ltr}.steps-burn{margin-top:4px;font-size:13px;font-weight:700;color:var(--w);font-family:var(--font-num);font-variant-numeric:tabular-nums}.steps-burn .dim{font-weight:400;font-size:var(--fs-xs)}.steps-cheer{display:flex;align-items:center;gap:8px;margin-top:10px;padding:8px 12px;border-radius:var(--r-md);background:var(--accent-soft);color:var(--fg);font-size:13px;font-weight:600;line-height:1.4;animation:cheer-in calc(var(--dur-enter) * 1.6) var(--ease-out)}.steps-cheer.ring-nudge{background:var(--warn-soft);margin-top:0;margin-bottom:12px}.steps-cheer.ring-nudge .info-dot{flex:none}.steps-cheer.hot{background:var(--warn-soft)}.steps-cheer-ico{font-size:var(--fs-h3);line-height:1;animation:cheer-flame 1.1s ease-in-out 6 alternate}@keyframes cheer-in{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}@keyframes cheer-flame{0%{transform:scale(1) rotate(-4deg)}to{transform:scale(1.18) rotate(4deg)}}@media(prefers-reduced-motion:reduce){.steps-cheer,.steps-cheer-ico{animation:none}}.switch{flex:none;width:42px;height:24px;border-radius:var(--r-full);background:var(--track);position:relative;transition:background var(--dur-tap)}.switch i{position:absolute;top:3px;inset-inline-start:3px;width:18px;height:18px;border-radius:50%;background:var(--card);box-shadow:0 1px 3px var(--sheet-shadow);transition:transform var(--dur-tap)}.switch.on{background:var(--accent)}.switch.on i{transform:translate(-18px)}[dir=ltr] .switch.on i{transform:translate(18px)}.cheat-row{display:flex;justify-content:flex-start;margin-bottom:6px}.cheat-toggle{display:inline-flex;align-items:center;gap:9px;font:inherit;font-size:var(--fs-sm);font-weight:700;color:var(--dim);background:var(--card);border:1px solid var(--line);border-radius:var(--r-full);padding:9px 16px;min-height:42px;cursor:pointer;transition:background var(--dur-base),color var(--dur-base),border-color var(--dur-base),box-shadow var(--dur-base)}.cheat-toggle .cheat-knob{width:34px;height:20px;border-radius:var(--r-full);background:color-mix(in srgb,var(--dim) 45%,transparent);position:relative;flex:none;transition:background var(--dur-base)}.cheat-toggle .cheat-knob:after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:14px;height:14px;border-radius:50%;background:var(--card);box-shadow:0 1px 2px var(--sheet-shadow);transition:transform var(--dur-base)}.cheat-toggle.on{color:var(--warn);border-color:var(--warn);background:var(--warn-soft)}.cheat-toggle.on .cheat-knob{background:var(--warn)}.cheat-toggle.on .cheat-knob:after{transform:translate(-14px)}[dir=ltr] .cheat-toggle.on .cheat-knob:after{transform:translate(14px)}.cheat-banner{display:flex;align-items:center;gap:12px;margin-bottom:var(--sp-3, 10px);padding:12px 14px;border-radius:var(--r-md);background:var(--card2);border:1px solid var(--line);animation:cheat-pop var(--dur-enter) var(--ease-out) both}.cheat-banner .cheat-banner-ico{font-size:var(--fs-h1);line-height:1;flex:none;animation:cheat-wiggle 1.6s ease-in-out .4s 2}.cheat-banner b{display:block;font-size:var(--fs-sm);color:var(--warn)}.cheat-banner span.sub{display:block;font-size:12.5px;line-height:1.5;color:var(--dim);margin-top:2px}@keyframes cheat-pop{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:none}}@keyframes cheat-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-14deg) scale(1.1)}75%{transform:rotate(14deg) scale(1.1)}}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-24px;display:block;animation-name:confetti-fall;animation-timing-function:linear;animation-fill-mode:both}@keyframes confetti-fall{0%{opacity:1;transform:translateZ(0) rotate(0)}85%{opacity:1}to{opacity:0;transform:translate3d(var(--drift),100vh,0) rotate(var(--spin))}}@media(prefers-reduced-motion:reduce){.cheat-banner,.cheat-banner .cheat-banner-ico{animation:none}}.coach-fab{position:fixed;z-index:46;bottom:calc(78px + env(safe-area-inset-bottom));inset-inline-start:max(20px,calc(50vw - 260px));display:inline-flex;align-items:center;gap:8px;height:52px;padding:5px;padding-inline-end:15px;border:none;border-radius:var(--r-full);background:var(--accent);color:var(--ink);box-shadow:var(--shadow-pop);cursor:pointer;transition:transform var(--dur-base, .2s) var(--ease-out, ease)}.coach-fab:active{transform:scale(.95)}.coach-fab-av{width:42px;height:42px;flex:none;border-radius:50%;overflow:hidden;background:var(--card);border:2px solid rgba(255,255,255,.7)}.coach-fab-av img{width:100%;height:100%;object-fit:cover;display:block}.coach-fab-label{color:#fff;font-weight:700;font-size:var(--fs-sm);letter-spacing:.2px;white-space:nowrap;text-shadow:0 1px 2px var(--sheet-shadow)}.coach-fab.has-msg{box-shadow:var(--shadow-pop)}.coach-fab.has-msg:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:var(--r-full);border:2px solid var(--accent);animation:coach-pulse 1.8s ease-out infinite;pointer-events:none}.coach-fab-badge{position:absolute;top:-6px;inset-inline-end:-4px;font-size:var(--fs-sm);line-height:1;background:var(--card);border-radius:50%;padding:3px;box-shadow:0 2px 6px var(--sheet-shadow)}.coach-pop{position:fixed;z-index:47;bottom:calc(148px + env(safe-area-inset-bottom));inset-inline-start:max(14px,calc(50vw - 266px));width:min(330px,calc(100vw - 28px));max-height:min(62vh,470px);overflow-y:auto;padding:16px 16px 14px;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-pop);animation:coach-in var(--dur-enter) var(--ease-out) both}.coach-pop-tail{position:absolute;bottom:-7px;inset-inline-start:26px;width:14px;height:14px;background:var(--card);border-inline-end:1px solid var(--accent-mute);border-bottom:1px solid var(--accent-mute);transform:rotate(45deg)}.coach-pop-x{position:absolute;top:8px;inset-inline-end:10px;width:26px;height:26px;border:none;border-radius:50%;background:transparent;color:var(--dim);font-size:var(--fs-sm);cursor:pointer}.coach-pop-x:hover{background:var(--track)}.coach-body{min-width:0}.coach-headline{display:block;font-size:var(--fs-sm);color:var(--accent-ink)}.coach-text{margin:4px 0 10px;font-size:13px;line-height:1.6;color:var(--fg)}.coach-figures{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.coach-chip{font-size:13px;font-family:var(--font-num);font-variant-numeric:tabular-nums;background:var(--card);border:1px solid var(--line);border-radius:var(--r-full);padding:3px 10px}.coach-arrow{color:var(--dim)}.coach-delta{font-size:12.5px;font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;border-radius:var(--r-full);padding:3px 9px}.coach-delta.up{color:var(--accent-ink);background:var(--accent-soft)}.coach-delta.down{color:var(--warn);background:var(--warn-soft)}.coach-actions{display:flex;gap:8px}.coach-note{font-size:var(--fs-xs);margin-top:8px}.coach-err{color:var(--warn);font-size:12.5px;margin-bottom:8px}.coach-letter .coach-text{line-height:1.7}.coach-pop-chat{display:block;width:100%;margin-top:10px;padding:9px 12px;border:1px solid var(--accent-mute);border-radius:var(--r-md);background:var(--card);color:var(--accent-ink);font-size:13px;font-weight:700;cursor:pointer}.coach-pop-chat:hover{background:var(--accent-soft)}.coach-chat-sheet>div{display:flex;flex-direction:column;height:88vh;max-height:88vh;padding:0}.coach-chat-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px 12px;border-bottom:1px solid var(--line)}.coach-chat-head-acts{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);flex-basis:100%}@media(min-width:600px){.coach-chat-head-acts{flex-basis:auto;margin-inline-start:auto}}.coach-chat-head img{border-radius:50%;flex:none}.coach-chat-title{display:flex;flex-direction:column;line-height:1.3;margin-inline-end:auto;min-width:0}.coach-chat-title b{font-size:var(--fs-sm)}.coach-chat-title .dim{font-size:var(--fs-xs)}.coach-chat-thread{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch}.coach-chat-empty .coach-text{margin-bottom:12px}.coach-chat-starters{display:flex;flex-direction:column;gap:8px}.coach-chip-btn{text-align:start;padding:10px 12px;border:1px solid var(--accent-mute);border-radius:var(--r-md);background:var(--card2);color:var(--fg);font-size:13px;cursor:pointer}.coach-chip-btn:hover{background:var(--accent-soft)}.coach-chat-row{display:flex;align-items:flex-end;gap:8px;max-width:100%}.coach-chat-row.user{flex-direction:row-reverse}.coach-chat-row img{border-radius:50%;flex:none}.coach-chat-bubble{max-width:78%;padding:9px 12px;border-radius:var(--r-panel);font-size:13.5px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.coach-chat-bubble.coach{background:var(--card2);border:1px solid var(--line);border-end-start-radius:var(--r-full)}.coach-chat-bubble.user{background:var(--accent);color:#fff;border-end-end-radius:var(--r-full)}.coach-chat-error{color:var(--warn);font-size:12.5px;text-align:center}.coach-chat-typing{display:flex;gap:4px;align-items:center}.coach-chat-typing span{width:6px;height:6px;border-radius:50%;background:var(--dim);animation:coach-typing 1.2s infinite ease-in-out both}.coach-chat-typing span:nth-child(2){animation-delay:.15s}.coach-chat-typing span:nth-child(3){animation-delay:.3s}@keyframes coach-typing{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.coach-chat-input{padding:10px 16px 8px;border-top:1px solid var(--line);background:var(--card)}.coach-chat-field{display:flex;align-items:flex-end;gap:6px;padding-block:4px;padding-inline:14px 4px;border:1.5px solid var(--accent-mute);border-radius:var(--r-full);background:var(--card2);transition:border-color var(--dur-base),box-shadow var(--dur-base)}.coach-chat-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.coach-chat-field textarea{flex:1;resize:none;max-height:96px;min-height:24px;padding:9px 2px;border:none;background:none;color:var(--fg);font:inherit;font-size:max(16px,var(--fs-body));line-height:1.4}.coach-chat-field textarea:focus{outline:none}.coach-chat-send{flex:none;width:44px;height:44px;display:grid;place-items:center;border:none;border-radius:50%;background:var(--accent);color:var(--ink);cursor:pointer;transition:transform var(--dur-base),opacity var(--dur-base)}.coach-chat-send:active{transform:scale(.9)}.coach-chat-send:disabled{opacity:.4;cursor:default}.coach-chat-send svg{width:20px;height:20px;display:block}.coach-chat-head .coach-chat-sources{margin-inline-start:0}.coach-chat-disclaimer{margin:0;padding:0 16px calc(8px + env(safe-area-inset-bottom));background:var(--card);color:var(--dim);font-size:var(--fs-xs);line-height:1.35;text-align:center}@media(prefers-reduced-motion:reduce){.coach-chat-typing span{animation:none}}@keyframes coach-in{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}@keyframes coach-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes coach-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}@media(prefers-reduced-motion:reduce){.coach-fab,.coach-pop{animation:none}.coach-fab:after{animation:none;opacity:0}.coach-fab.has-msg:before{animation:none;opacity:.5}}.nudge{display:flex;align-items:center;gap:12px;text-align:start;margin-top:10px;padding:11px 13px;border-radius:var(--r-md);background:var(--card2);border:1px solid var(--line)}.nudge-ico{font-size:26px;line-height:1;flex:none}.nudge b{display:block;font-size:var(--fs-sm);color:var(--accent-ink);line-height:1.4}.nudge .sub{display:block;font-size:12.5px;line-height:1.55;color:var(--dim);margin-top:3px}.nudge .sub b{display:inline;font-size:inherit;color:var(--fg)}.cheat-food{position:relative;overflow:hidden}.cheat-blur{filter:blur(4px);opacity:.55;pointer-events:none;user-select:none;-webkit-user-select:none}.cheat-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;padding:16px;font-size:13px;line-height:1.6;color:var(--fg)}.cheat-overlay b{font-size:var(--fs-sm)}.wr-edit{position:relative;display:inline-flex}.wr-edit-hint{position:absolute;bottom:calc(100% + 5px);inset-inline-end:0;background:var(--accent-ink);color:var(--card);font-size:var(--fs-xs);font-weight:600;padding:3px 8px;border-radius:var(--r-md);white-space:nowrap;pointer-events:none;z-index:1}.wr-edit-hint:after{content:"";position:absolute;top:100%;inset-inline-end:14px;border:4px solid transparent;border-top-color:var(--accent-ink)}.workout-add{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:10px 12px;text-align:start;font-size:var(--fs-md, 15px)}.workout-add b{font-size:var(--fs-sm)}.ring-center .bonus{font-size:var(--fs-xs);color:var(--dim);margin-top:4px;direction:ltr;font-family:var(--font-num);font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:4px;max-width:106px;white-space:nowrap}.ring-center .bonus .info-dot{pointer-events:auto}.ring-center .bonus .info-dot{border-color:var(--accent-ink);color:var(--accent-ink)}.ring-center .s{font-size:var(--fs-xs);color:var(--accent-ink);background:var(--accent-soft);padding:2px 8px;border-radius:var(--r-full);margin-top:4px;font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;direction:ltr}.ring-center .s.over{color:var(--bad);background:var(--bad-soft)}.ring-arc{transition:stroke var(--dur-base) linear}.greet{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-4)}.greet>div:first-child{min-width:0}.greet-slot{transform:translateY(calc((var(--fs-h1) * var(--lh-snug) - 100%) / 2))}.greet h1{font-family:var(--font-serif);font-size:var(--fs-h1);line-height:var(--lh-snug)}.greet p{margin:4px 0 0;font-size:var(--fs-sm);color:var(--dim)}.greet .avatar{padding:0;border:0;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;flex:none;width:48px;height:48px;border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font-family:var(--font-head);font-size:var(--fs-h1);font-weight:700}.navbar{position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--card);border-top:none;border-radius:var(--r-panel) var(--r-panel) 0 0;box-shadow:var(--shadow-nav);padding-bottom:env(safe-area-inset-bottom);transform:translateZ(0);will-change:transform}.navbar>div{position:relative;max-width:560px;margin:0 auto;display:grid;align-items:center;padding:8px 10px;gap:4px}.nav-pill{--col: calc((100% - 20px - (var(--n) - 1) * 4px) / var(--n));position:absolute;top:8px;bottom:8px;width:var(--col);inset-inline-start:calc(10px + var(--i) * (var(--col) + 4px));border-radius:var(--r-full);background:var(--accent);transition:inset-inline-start var(--dur-base) var(--ease-out)}.navbtn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:60px;padding:8px 4px;border-radius:var(--r-full);font-size:var(--fs-cap);font-weight:500;color:var(--dim);transition:color var(--dur-base)}.navbtn.sel{color:var(--ink);font-weight:600}html.vt-live .screen{view-transition-name:screen}::view-transition-old(screen){animation:vt-out-fwd var(--dur-base) var(--ease-out) both}::view-transition-new(screen){animation:vt-in-fwd var(--dur-base) var(--ease-out) both}html[data-nav-dir=back] ::view-transition-old(screen){animation-name:vt-out-back}html[data-nav-dir=back] ::view-transition-new(screen){animation-name:vt-in-back}@keyframes vt-in-fwd{0%{opacity:0;transform:translate(-18px)}}@keyframes vt-out-fwd{to{opacity:0;transform:translate(18px)}}@keyframes vt-in-back{0%{opacity:0;transform:translate(18px)}}@keyframes vt-out-back{to{opacity:0;transform:translate(-18px)}}.fab{position:fixed;z-index:45;bottom:calc(78px + env(safe-area-inset-bottom));inset-inline-end:max(20px,calc(50vw - 260px));width:56px;height:56px;border-radius:var(--r-full);background:var(--accent);color:var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-soft);transition:transform var(--dur-tap)}.fab:active{transform:scale(.92)}.wstrip{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.wcell{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--dim)}.wcell .w-icon{color:var(--dim)}.wcell.today .wlabel{color:var(--accent-ink);font-weight:700}.wring{position:relative;width:38px;height:38px}.wring svg{display:block;width:100%;height:100%}.wring span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-family:var(--font-num);font-variant-numeric:tabular-nums}.wlabel{font-size:var(--fs-xs)}.wdot{width:5px;height:5px;margin:5px 0;border-radius:var(--r-full);background:var(--track)}.chart{position:relative;display:flex;align-items:flex-end;gap:3px;height:96px}.chart-bar{flex:1;min-width:0;border-radius:var(--r-ctl) var(--r-ctl) 0 0;background:var(--accent)}.chart-bar.over{background:var(--bad)}.chart-bar.none{background:var(--track)}.chart-goal{position:absolute;left:0;right:0;border-top:1px solid var(--dim);opacity:.6;pointer-events:none}.chart-goal span{position:absolute;top:-8px;inset-inline-start:0;font-size:var(--fs-xs);color:var(--dim);background:var(--card);padding:0 4px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.chart-band{position:absolute;left:0;right:0;background:var(--accent-soft);border-radius:var(--r-ctl);pointer-events:none}.chart-summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px;font-size:var(--fs-cap);color:var(--dim)}.chart-summary span{display:flex;align-items:center;gap:5px}.chart-summary b{color:var(--fg);font-family:var(--font-num);font-variant-numeric:tabular-nums}.chart-summary i{width:8px;height:8px;border-radius:var(--r-full);flex:none}.split{display:flex;height:12px;border-radius:var(--r-full);overflow:hidden;background:var(--track)}.split i{height:100%;transition:width var(--dur-base) var(--ease-out)}.wchart-ranges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.wchart-range{font:inherit;font-size:var(--fs-xs);padding:5px 11px;border-radius:var(--r-full);border:1px solid var(--line);background:var(--card2);color:var(--dim);cursor:pointer}.wchart-range.sel{background:var(--accent-soft);color:var(--accent-ink);border-color:transparent;font-weight:700}.wchart-range:focus-visible{outline:2px solid var(--accent-ink);outline-offset:1px}.wchart-wrap{position:relative;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.wchart-tip{position:absolute;top:6px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:6px 10px;box-shadow:0 6px 20px var(--sheet-shadow);pointer-events:none;white-space:nowrap;z-index:2}.spark-wrap{position:relative}.spark{display:block;width:100%;height:96px;overflow:visible}.spark-dot{position:absolute;width:11px;height:11px;border-radius:var(--r-full);background:var(--card);border:2px solid var(--accent-ink);transform:translate(-50%,-50%);pointer-events:none}.streak{display:flex;align-items:center;justify-content:center;gap:8px;padding:2px 0 4px}.streak b{font-size:var(--fs-display);font-weight:700;line-height:1;font-family:var(--font-num);font-variant-numeric:tabular-nums}.empty{text-align:center;padding:18px 12px 6px;color:var(--dim)}.empty svg{margin:0 auto 10px;color:var(--empty-art)}.empty b{display:block;color:var(--fg);font-size:var(--fs-sm);font-weight:600;margin-bottom:4px}.skel{position:relative;overflow:hidden;height:14px;border-radius:var(--r-sm);background:var(--card2)}.skel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--card);opacity:.8;animation:shimmer 1.3s linear infinite}@keyframes shimmer{0%{transform:translate(100%)}to{transform:translate(-100%)}}.fchip{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-md);flex:none}.w-icon{display:block;flex:none}.w-icon.flip{transform:scaleX(-1)}.w-live .leg-a,.w-live .leg-b,.w-live .arm-a,.w-live .arm-b,.w-live .arrow,.w-live .waves,.w-live .swimmer,.w-live .all{transform-box:view-box}.w-live.w-walk .leg-a,.w-live.w-walk .leg-b{transform-origin:12px 13.5px}.w-live.w-walk .arm-a,.w-live.w-walk .arm-b{transform-origin:12.4px 9.5px}.w-live.w-run .leg-a,.w-live.w-run .leg-b{transform-origin:11px 13.5px}.w-live.w-run .arm-a{transform-origin:13.8px 9.5px}.w-live.w-run .arm-b{transform-origin:13px 10.5px}.w-live.w-walk .leg-a,.w-live.w-run .leg-a{animation:limb-swing .6s ease-in-out infinite alternate}.w-live.w-walk .leg-b,.w-live.w-run .leg-b,.w-live.w-walk .arm-a,.w-live.w-run .arm-a{animation:limb-swing .6s ease-in-out infinite alternate-reverse}.w-live.w-walk .arm-b,.w-live.w-run .arm-b{animation:limb-swing .6s ease-in-out infinite alternate}.w-live.w-run .leg-a,.w-live.w-run .leg-b,.w-live.w-run .arm-a,.w-live.w-run .arm-b{animation-duration:.35s}@keyframes limb-swing{0%{transform:rotate(-12deg)}to{transform:rotate(12deg)}}.w-live.w-push .arrow{animation:arrow-push .8s ease-in-out infinite}.w-live.w-pull .arrow{animation:arrow-pull .8s ease-in-out infinite}@keyframes arrow-push{50%{transform:translateY(-1.6px)}}@keyframes arrow-pull{50%{transform:translateY(1.6px)}}.w-live.w-swim .waves{animation:wave-drift 1.1s linear infinite}.w-live.w-swim .swimmer{animation:swim-bob 1.1s ease-in-out infinite}@keyframes wave-drift{to{transform:translate(8px)}}@keyframes swim-bob{50%{transform:translateY(.7px) rotate(2deg)}}.w-live.w-yoga .all,.w-live.w-pilates .all,.w-live.w-stretch .all{transform-origin:12px 12px;animation:icon-breathe 2.4s ease-in-out infinite}@keyframes icon-breathe{50%{transform:scale(1.045)}}.w-live.w-gym .all{animation:arrow-push .9s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.w-live .leg-a,.w-live .leg-b,.w-live .arm-a,.w-live .arm-b,.w-live .arrow,.w-live .waves,.w-live .swimmer,.w-live .all{animation:none}}.opt.hop img{animation:chip-hop calc(var(--dur-enter) * 1.2) var(--ease-out) 2}@keyframes chip-hop{30%{transform:translateY(-3px) rotate(-4deg)}60%{transform:translateY(0) rotate(2deg)}to{transform:translateY(0) rotate(0)}}.wchip{display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:var(--r-full);background:var(--w-soft);color:var(--w)}.wbtn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:64px;padding:8px 4px;font-size:var(--fs-xs);line-height:1.25;text-align:center;background:var(--bg);border:1px solid transparent;border-radius:var(--r-md);color:var(--dim);transition:background var(--dur-tap),color var(--dur-tap),transform var(--dur-tap)}.wbtn.sel{background:var(--w-soft);border-color:var(--w);color:var(--fg);font-weight:600}.wbtn .w-icon{color:var(--w)}.wbtn:active{transform:scale(.96)}.tag.w{display:inline-flex;align-items:center;gap:4px;padding:3px 9px 3px 6px;color:var(--fg)}@media(prefers-reduced-motion:reduce){.wbtn{transition:none}.wbtn:active{transform:none}.fab{transition:none}.fab:active{transform:none}.skel:after{animation:none}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2s}.scan-line{animation:none;top:50%}.ring-arc{transition:none}}.btn.fav{padding:0 4px;min-width:24px;font-size:17px;line-height:1;border:none;background:none;flex:none}.btn.fav:active{transform:scale(.85)}.mtiles{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mtile.p{grid-column:1 / -1;padding:12px 14px 10px}.mtile.p .mtile-head{font-size:var(--fs-sm)}.mtile.p .mtile-head b{font-size:26px}.mtile.p .mtile-bar,.mtile.p.has-split .mtile-bar{height:8px}.mtile{--mc: var(--p);--ms: var(--p-soft);background:var(--ms);border-radius:var(--r-md);padding:10px 10px 8px;display:flex;flex-direction:column;gap:6px;min-width:0}.mtile.f{--mc: var(--f);--ms: var(--f-soft)}.mtile.c{--mc: var(--c);--ms: var(--c-soft)}.mtile.over{--mc: var(--bad);--ms: var(--bad-soft)}.mtile-head{display:flex;flex-direction:column;gap:1px;font-size:var(--fs-xs);color:var(--mc);font-weight:700;line-height:1.2}.mtile-head b{color:var(--fg);font-size:var(--fs-h2);font-family:var(--font-num);font-variant-numeric:tabular-nums;direction:ltr;text-align:start;white-space:nowrap}.mtile-head small{font-size:var(--fs-xs);color:var(--dim);font-weight:500}.mtile-bar{height:5px;border-radius:var(--r-full);background:var(--card);overflow:hidden}.mtile-bar i{display:block;height:100%;border-radius:var(--r-full);background:var(--mc);transition:width var(--dur-bar) var(--ease-out)}.mtile-foot{font-size:var(--fs-xs);color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtile.has-split .mtile-bar{display:flex;height:8px}.mtile.has-split .mtile-bar i{border-radius:0;flex:none}.mtile.has-split .mtile-bar i:first-child{border-start-start-radius:var(--r-full);border-end-start-radius:var(--r-full)}.mtile.has-split .mtile-bar i:last-child{border-start-end-radius:var(--r-full);border-end-end-radius:var(--r-full)}.mtile-bar i.plant,.mtile-split i.plant{background:var(--p2)}.mtile.has-split .mtile-bar i.plant{box-shadow:inset -2px 0 0 var(--card)}[dir=ltr] .mtile.has-split .mtile-bar i.plant{box-shadow:inset 2px 0 0 var(--card)}.mtile-split{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 6px;font-size:var(--fs-xs);color:var(--dim);white-space:nowrap;font-family:var(--font-num);font-variant-numeric:tabular-nums}.mtile-split span{display:inline-flex;align-items:center;gap:4px}.mtile-split i{display:inline-block;width:10px;height:6px;border-radius:var(--r-full);background:var(--mc);flex:none}.mdot{display:inline-block;width:7px;height:7px;border-radius:var(--r-full);margin-inline-end:3px;vertical-align:middle;background:var(--p)}.mdot.f{background:var(--f)}.mdot.c{background:var(--c)}.ring-dot{transform-box:view-box}.entry{animation:entry-in var(--dur-enter) var(--ease-out) both}.history-list .entry{animation:none}@keyframes entry-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.greet .avatar{background:var(--accent);color:var(--ink);box-shadow:var(--shadow-soft)}.greet .avatar.picked{background:var(--card);box-shadow:0 0 0 2px var(--accent),var(--shadow-soft)}@media(prefers-reduced-motion:reduce){.entry{animation:none}.ring-dot,.mtile-bar i{transition:none}}.empty{padding:22px 12px 10px}.empty>svg:first-child{margin:0 auto 12px;display:block}.empty b{font-size:var(--fs-body)}.card.hero{text-align:center;background:radial-gradient(90% 70% at 100% 0%,var(--bg-glow-1),transparent 60%),var(--card)}.card.hero>svg{display:block;margin:0 auto 10px}.card.hero h2{font-size:var(--fs-h2);margin-bottom:6px}.streak .flame{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--r-full);background:var(--warn-soft);color:var(--w)}.streak b{color:var(--w)}.opt{border-bottom:none;margin-bottom:4px;background:var(--card2);transition:background var(--dur-tap),transform var(--dur-tap)}.opt:active{background:var(--track);transform:scale(.99)}.ruler{margin-top:6px}.ruler-value{text-align:center;font-family:var(--font-num);font-variant-numeric:tabular-nums;line-height:1;margin-bottom:6px}.ruler-value b{font-size:34px;font-weight:700;color:var(--accent-ink)}.ruler-value .dim{font-size:13px;margin-inline-start:6px}.ruler-track-wrap{position:relative;border-radius:var(--r-md);background:var(--card2);overflow:hidden}.ruler-needle{position:absolute;top:0;left:50%;width:3px;height:34px;margin-left:-1.5px;border-radius:var(--r-full);background:var(--accent);z-index:1;pointer-events:none}.ruler-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 0 4px;cursor:grab;overscroll-behavior-x:contain}.ruler-track::-webkit-scrollbar{display:none}.ruler-tick{flex:none;scroll-snap-align:center;display:flex;flex-direction:column;align-items:center;height:44px}.ruler-tick i{display:block;width:2px;height:12px;border-radius:var(--r-full);background:var(--accent-mute)}.ruler-tick.mid i{height:18px}.ruler-tick.major i{height:24px;background:var(--accent-ink)}.ruler-tick span{font-size:var(--fs-xs);color:var(--dim);margin-top:3px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.boot{min-height:70dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.boot-logo{position:relative;width:132px;height:132px}.boot-logo svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.boot-logo img{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;border-radius:50%}.boot-arc{stroke-dasharray:90 240;transform-origin:60px 60px;animation:boot-spin 1.1s linear infinite}@keyframes boot-spin{to{transform:rotate(-360deg)}}.boot-name{font-family:var(--font-head);font-size:var(--fs-h2);font-weight:700;margin-top:6px}.boot-sub{font-size:13px}@media(prefers-reduced-motion:reduce){.boot-arc{animation:none;stroke-dasharray:330}}:root{--ob-icon: var(--fg);--ob-list: var(--card);--ob-line: var(--line);--ob-sel: var(--accent-soft);--ob-footer: rgba(242, 241, 237, .94)}.ob{max-width:460px;margin:0 auto;padding-bottom:110px;overflow-x:hidden}.ob:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:none}.ob-top{display:flex;align-items:center;gap:12px;margin:4px 0 26px}.ob-back{flex:none;width:40px;height:40px;display:grid;place-items:center;border:none;border-radius:50%;background:transparent;color:var(--fg);cursor:pointer;margin-inline-start:-8px;transition:background var(--dur-tap)}.ob-back:active{background:var(--ob-sel)}.ob-top{justify-content:space-between}.ob-top-spacer{width:40px;flex:none;order:2}.ob-top .ob-back{order:1}.ob-ring-wrap{position:relative;width:48px;height:48px;flex:none;order:3}.ob-ring{width:48px;height:48px;display:block}.ob-ring circle:last-child{transition:stroke-dashoffset var(--dur-enter) var(--ease-out)}.ob-ring-txt{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:var(--fs-xs);font-weight:700;color:var(--dim);font-family:var(--font-num);font-variant-numeric:tabular-nums;direction:ltr}.ob-screen{min-height:60vh}.ob-screen.fwd{animation:ob-slide-fwd var(--dur-enter) var(--ease-out)}.ob-screen.back{animation:ob-slide-back var(--dur-enter) var(--ease-out)}@keyframes ob-slide-fwd{0%{opacity:0;transform:translate(calc(var(--ob-flip, 1) * 36px))}}@keyframes ob-slide-back{0%{opacity:0;transform:translate(calc(var(--ob-flip, 1) * -36px))}}[dir=rtl] .ob-screen{--ob-flip: -1}.ob-screen-body{display:flex;flex-direction:column;gap:14px}.ob-head{text-align:center;margin-bottom:22px}.ob-head h1{font-family:var(--font-serif);font-size:var(--fs-h1);font-weight:700;margin:0 0 8px;letter-spacing:-.3px;line-height:1.2}.ob-head p{margin:0 auto;max-width:320px;color:var(--dim);font-size:var(--fs-sm);line-height:1.55}.ob-big{text-align:center;font-family:var(--font-num);font-variant-numeric:tabular-nums;line-height:1;margin:6px 0 4px}.ob-big b{font-size:var(--fs-num-lg);font-weight:700;color:var(--fg);letter-spacing:-1.5px}.ob-big .dim{font-size:var(--fs-sm);margin-inline-start:8px;font-weight:600}.ob-ruler-h .ruler-value{margin:6px 0 10px}.ob-ruler-h .ruler-value b{font-size:var(--fs-num-lg);color:var(--fg);letter-spacing:-1.5px}.ob-ruler-h .ruler-value .dim{font-size:var(--fs-sm);font-weight:600;margin-inline-start:8px}.ob-ruler-h .ruler-track-wrap{background:transparent}.ob-ruler-h .ruler-needle{height:46px;width:4px;margin-left:-2px;border-radius:var(--r-full)}.ob-ruler-h .ruler-track{padding:10px 0 6px}.ob-ruler-h .ruler-tick{height:50px}.ob-sub-label{font-size:var(--fs-sm);font-weight:700;color:var(--dim);margin:10px 2px 2px}.ob-note{font-size:13px;line-height:1.6;padding:0 2px}.wheel{position:relative;overflow:hidden}.wheel-sel{position:absolute;left:0;right:0;border-radius:var(--r-panel);background:var(--ob-sel);pointer-events:none}.wheel-list{height:100%;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;overscroll-behavior:contain;outline:none}.wheel-list::-webkit-scrollbar{display:none}.wheel-item{scroll-snap-align:center;display:flex;align-items:center;justify-content:center;font-size:var(--fs-h2);font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--fg);white-space:nowrap;cursor:pointer;transition:opacity var(--dur-tap),transform var(--dur-tap);-webkit-user-select:none;user-select:none}.wheel-item.on{font-weight:700;font-size:var(--fs-h2)}.ob-wheel-big{margin:10px auto 0;max-width:220px}.ob-wheel-big .wheel-item,.ob-wheel-big .wheel-item.on{font-size:var(--fs-h1)}.ob-wheels{display:flex;justify-content:center;gap:2px;margin:6px auto 0}.ob-wheels-col{width:110px}.ob-wheels-col.narrow{width:70px}.ob-wheels .wheel-item,.ob-wheels .wheel-item.on{font-size:var(--fs-h1)}.ob-forecast-note{display:block;font-size:var(--fs-xs);color:var(--dim);margin-top:2px}.ob-unit{display:inline-flex;align-self:center;padding:3px;border-radius:var(--r-full);background:var(--ob-list);border:1px solid var(--ob-line)}.ob-unit button{min-width:76px;padding:9px 14px;border:none;border-radius:var(--r-full);background:transparent;color:var(--dim);font:inherit;font-size:var(--fs-sm);font-weight:700;transition:background var(--dur-tap),color var(--dur-tap)}.ob-unit button.on{background:var(--accent);color:var(--ink);box-shadow:var(--shadow-soft)}.rulerv{display:flex;flex-direction:column;align-items:center;gap:6px}.rulerv-wrap{position:relative;width:120px;flex:1;min-height:0}.rulerv-fill{position:absolute;left:50%;top:50%;bottom:0;width:8px;margin-left:-4px;border-radius:var(--r-full);background:var(--accent);opacity:.85;pointer-events:none}.rulerv-needle{position:absolute;left:50%;top:50%;width:26px;height:36px;margin:-18px 0 0 -13px;border-radius:var(--r-full);background:var(--accent);box-shadow:var(--shadow-soft);z-index:2;pointer-events:none}.rulerv-track{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;overscroll-behavior:contain;outline:none;cursor:grab}.rulerv-track::-webkit-scrollbar{display:none}.rulerv-tick{flex:none;scroll-snap-align:center;display:flex;align-items:center;justify-content:flex-start;padding-inline-start:62px;gap:8px;position:relative}.rulerv-tick i{display:block;position:absolute;left:50%;margin-left:6px;height:2px;width:12px;border-radius:var(--r-full);background:var(--accent-mute)}.rulerv-tick.mid i{width:18px}.rulerv-tick.major i{width:24px;background:var(--accent-ink)}.rulerv-tick span{position:absolute;left:50%;margin-left:34px;font-size:var(--fs-xs);color:var(--dim);font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap}.ob-round-row{display:flex;justify-content:center;gap:28px;margin-top:10px}.ob-round{display:flex;flex-direction:column;align-items:center;gap:12px;background:none;border:none;color:var(--fg);font:inherit;cursor:pointer}.ob-round-img{position:relative;width:132px;height:132px;border-radius:50%;display:grid;place-items:center;background:var(--ob-list);border:3px solid var(--ob-line);transition:border-color var(--dur-tap),transform var(--dur-tap),box-shadow var(--dur-tap)}.ob-round-img>svg,.ob-round-img>img{border-radius:50%}.ob-round.on .ob-round-img{border-color:var(--accent);box-shadow:var(--shadow-soft);transform:scale(1.03)}.ob-round-check{position:absolute;inset-inline-start:2px;bottom:2px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--ink);border:3px solid var(--bg);opacity:0;transform:scale(.6);transition:opacity var(--dur-tap),transform var(--dur-tap)}.ob-round.on .ob-round-check{opacity:1;transform:scale(1)}.ob-round-label{font-size:17px;font-weight:700}.ob-choices{display:flex;flex-direction:column;gap:12px}.ob-choice{display:flex;align-items:center;gap:14px;width:100%;padding:16px 18px;border-radius:var(--r-panel);border:2px solid var(--ob-line);background:var(--ob-list);color:var(--fg);font:inherit;text-align:start;cursor:pointer;transition:border-color var(--dur-tap),background var(--dur-tap),transform var(--dur-tap)}.ob-choice:active{transform:scale(.99)}.ob-choice.on{border-color:var(--accent);background:var(--ob-sel)}.ob-choice-ic{flex:none;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--ob-line);color:var(--dim);transition:background var(--dur-tap),color var(--dur-tap)}.ob-choice.on .ob-choice-ic{background:var(--accent);color:var(--ink)}.ob-choice-body{display:flex;flex-direction:column;gap:3px;min-width:0}.ob-choice-title{font-size:17px;font-weight:700}.ob-choice-sub{font-size:13px;color:var(--dim);line-height:1.45}.ob-delta{text-align:center;font-size:var(--fs-sm);color:var(--dim);line-height:1.6;padding:0 8px}.ob-delta b{color:var(--accent-ink)}.ob-delta.warn{color:var(--warn)}.ob-delta.bad{color:var(--bad)}.ob-pace-tag{text-align:center;font-size:13px;font-weight:700;color:var(--dim);margin-top:-2px}.ob-pace-tag .on{color:var(--accent-ink)}.ob-forecast-row.warn{color:var(--warn);font-size:var(--fs-sm)}.ob-forecast-ic.warn{background:var(--warn-soft);color:var(--warn)}.ob-range-wrap{padding:8px 10px 0}.ob-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;border-radius:var(--r-full);background:var(--ob-line);outline:none;margin:10px 0 8px}.ob-range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:44px;height:30px;border-radius:var(--r-full);background:var(--accent);box-shadow:var(--shadow-soft);border:none;cursor:grab}.ob-range::-moz-range-thumb{width:44px;height:30px;border-radius:var(--r-full);background:var(--accent);box-shadow:var(--shadow-soft);border:none;cursor:grab}.ob-range-labels{display:flex;justify-content:space-between;font-size:13px;color:var(--dim);font-weight:600}.ob-range-labels .on{color:var(--accent-ink)}.ob-forecast{margin-top:10px;border-radius:var(--r-panel);background:var(--ob-list);border:1px solid var(--ob-line);box-shadow:var(--shadow-soft);overflow:hidden}.ob-forecast-row{display:flex;align-items:center;gap:12px;padding:14px 16px;font-size:var(--fs-sm);line-height:1.5}.ob-forecast-row+.ob-forecast-row{border-top:1px solid var(--ob-line)}.ob-forecast-row b{color:var(--accent-ink)}.ob-forecast-ic{flex:none;width:40px;height:40px;border-radius:var(--r-panel);display:grid;place-items:center;background:var(--ob-sel);color:var(--accent-ink)}.ob-reveal{position:relative;width:220px;height:220px;margin:0 auto 6px}.ob-reveal-ring{width:100%;height:100%;display:block}.ob-reveal-arc{stroke-dashoffset:0;animation:ob-reveal-arc 1.1s var(--ease-out) both}@keyframes ob-reveal-arc{0%{stroke-dashoffset:540.35}}.ob-reveal-num{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-num);font-variant-numeric:tabular-nums;line-height:1;animation:ob-pop .6s var(--ease-out) .3s both}.ob-reveal-num b{font-size:var(--fs-num-lg);font-weight:700;color:var(--accent-ink);letter-spacing:-2px}.ob-reveal-num span{margin-top:8px;font-size:var(--fs-sm);font-weight:600;color:var(--dim)}@keyframes ob-pop{0%{opacity:0;transform:scale(.7)}}.ob-plan-macros{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ob-plan-macro{position:relative;display:flex;flex-direction:column;gap:6px;padding:16px 10px 12px;border-radius:var(--r-panel);background:var(--card);border:1px solid var(--ob-line);box-shadow:var(--shadow-soft);text-align:center;overflow:hidden;animation:ob-rise .5s var(--ease-out) both}@keyframes ob-rise{0%{opacity:0;transform:translateY(14px)}}.ob-plan-macro-bar{position:absolute;top:0;left:0;right:0;height:5px;background:var(--mc)}.ob-plan-macro-label{font-size:13px;font-weight:700;color:var(--mc)}.ob-plan-macro b{font-size:var(--fs-num-md);font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:-1px}.ob-plan-macro b i{font-style:normal;font-size:var(--fs-sm);margin-inline-start:2px;color:var(--dim)}.ob-plan-macro-pct{font-size:var(--fs-xs);color:var(--dim);font-weight:600}.ob-plan-macro input{text-align:center;padding:8px 4px;font-weight:700;font-size:var(--fs-h3)}.ob-plan-kcal-edit{display:flex;align-items:center;gap:12px;font-size:var(--fs-sm);font-weight:600}.ob-plan-kcal-edit input{flex:1;text-align:center;font-weight:700}.ob-plan-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.ob-tailored{display:flex;flex-direction:column;gap:10px}.ob-tailored-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:var(--r-panel);background:var(--ob-list);border:1px solid var(--ob-line);font-size:var(--fs-sm);line-height:1.5}.ob-tailored-check{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--ok-soft);color:var(--ok)}.ob-connect{display:flex;flex-direction:column;gap:16px}.ob-connect-art{width:140px;height:140px;margin:10px auto 6px;border-radius:var(--r-panel);display:grid;place-items:center;background:var(--ob-list);border:1px solid var(--ob-line);box-shadow:var(--shadow-soft);color:var(--p)}.ob-connect .card{margin:0}.ob-account{display:flex;flex-direction:column;gap:10px;margin-top:30px}.ob-provider{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px;border-radius:var(--r-panel);border:1px solid var(--ob-line);background:var(--ob-list);color:var(--fg);font:inherit;font-size:var(--fs-body);font-weight:700;box-shadow:var(--shadow-soft);cursor:pointer;transition:transform var(--dur-tap),opacity var(--dur-tap)}.ob-provider:active{transform:scale(.98)}.ob-provider:disabled{opacity:.55}.ob-provider.apple{background:#000;color:#fff;border-color:#000}.ob-provider.google{background:#fff;color:#1f1f1f;border-color:#dadce0}.ob-email{display:flex;flex-direction:column;gap:10px;margin-top:6px}.ob-email input{padding:14px;font-size:max(16px,var(--fs-body));border-radius:var(--r-panel)}.ob-footer{position:fixed;left:0;right:0;bottom:0;z-index:5;display:flex;gap:10px;max-width:500px;margin:0 auto;padding:12px 20px calc(14px + env(safe-area-inset-bottom));background:var(--ob-footer)}.ob-btn{flex:1;padding:16px;border:none;border-radius:var(--r-panel);font:inherit;font-size:17px;font-weight:700;color:var(--fg);background:var(--ob-list);box-shadow:var(--shadow-soft);transition:transform var(--dur-tap),opacity var(--dur-tap)}.ob-btn.primary{background:var(--accent);color:var(--ink);box-shadow:var(--shadow-soft)}.ob-btn.ghost{background:transparent;box-shadow:none;color:var(--dim)}.ob-btn:active{transform:scale(.98)}.ob-btn:disabled{opacity:.55}.login{max-width:460px;margin:0 auto;padding:12px 0 24px}.login-hero{position:relative;margin:6px auto 18px;max-width:360px}.login-hero-art{width:220px;height:220px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:var(--card2)}.login-hero-art img{width:168px;height:168px;border-radius:50%;object-fit:cover}.login-demo{margin:-34px auto 0;width:min(100%,320px);padding:14px 18px;border-radius:var(--r-card);background:var(--card);border:1px solid var(--ob-line);box-shadow:var(--shadow-soft);position:relative}.login-demo-name{font-size:var(--fs-sm);font-weight:700;margin-bottom:4px}.login-demo-kcal{font-family:var(--font-head);line-height:1;display:flex;align-items:baseline;gap:6px}.login-demo-kcal b{font-size:34px;font-weight:700;color:var(--accent-ink);letter-spacing:-1px}.login-demo-kcal span{font-size:13px;color:var(--dim);font-weight:600}.login-demo-macros{display:flex;justify-content:space-between;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--ob-line);font-size:var(--fs-xs);color:var(--dim)}.login-demo-macros span{display:flex;flex-direction:column;gap:2px}.login-demo-macros i{width:8px;height:8px;border-radius:50%;display:inline-block;margin-inline-end:4px;vertical-align:middle}.login-demo-macros b{font-size:var(--fs-sm);color:var(--fg);font-family:var(--font-num);font-variant-numeric:tabular-nums}.login-title{font-family:var(--font-serif);font-size:34px;font-weight:700;text-align:center;line-height:1.2;margin:18px 0 22px;letter-spacing:-.5px;white-space:pre-line}.login-cta{width:100%;display:flex}.login-cta-have{margin-top:10px}.switch-banner{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:12px 14px;border-radius:var(--r-panel);background:var(--ok-soft);border:1px solid var(--line);font-size:13px;line-height:1.5}.switch-banner span{flex:1}.switch-banner button{background:none;border:none;font-size:var(--fs-h3);color:var(--dim);cursor:pointer;padding:0 4px}.login-have{display:block;width:100%;margin-top:16px;padding:10px;background:none;border:none;color:var(--dim);font:inherit;font-size:var(--fs-sm);cursor:pointer}.login-have b{color:var(--accent-ink)}.login-card{position:relative}.login-coach{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;margin-top:6px;padding:10px 14px;background:none;border:none;border-radius:var(--r-panel);color:var(--dim);font:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer}.login-coach:hover,.login-coach:focus-visible{color:var(--accent-ink)}.login-coach:active{background:var(--ob-sel)}.login-coach-badge{display:grid;place-items:center;width:56px;height:56px;margin:4px auto 12px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink)}.login-coach-values{list-style:none;margin:0 0 20px;padding:12px 14px;border-radius:var(--r-panel);background:var(--card2);display:grid;gap:10px}.login-coach-values li{display:flex;align-items:center;gap:10px;font-size:var(--fs-sm);font-weight:600}.login-coach-values .glyph{color:var(--accent-ink);flex:none}.login-legal{font-size:var(--fs-xs);line-height:1.7;margin-top:22px;text-align:center}a{color:var(--accent-ink)}h1,h2{letter-spacing:0}.fb-wrap{position:relative;display:flex;align-items:center}.fb-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:var(--r-full);background:var(--card);border:1px solid var(--line);color:var(--fg);cursor:pointer;font:inherit}.fb-btn:hover{background:var(--accent-soft)}.fb-bubble{position:absolute;top:calc(100% + 9px);inset-inline-end:-6px;white-space:nowrap;padding:7px 11px;border-radius:var(--r-full);background:var(--card);border:1px solid var(--line-2);color:var(--fg);font:inherit;font-size:var(--fs-xs);line-height:1;cursor:pointer;z-index:5;box-shadow:var(--shadow-pop);animation:coach-in var(--dur-enter) var(--ease-out) both}.fb-bubble-tail{position:absolute;top:-6px;inset-inline-end:18px;width:10px;height:10px;background:var(--card);border-inline-start:1px solid var(--accent-mute);border-top:1px solid var(--accent-mute);transform:rotate(45deg)}.fb-kinds{display:flex;gap:6px;flex-wrap:wrap}.fb-kind{padding:7px 12px;border-radius:var(--r-full);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:var(--card2);border:1px solid var(--line);color:var(--fg)}.fb-kind.on{background:var(--accent-soft);border-color:var(--accent);color:var(--fg);font-weight:600}.fb-done{padding:22px 8px;text-align:center;font-size:17px;font-weight:600}.fb-btn{position:relative}.fb-badge{position:absolute;top:-4px;inset-inline-end:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-full);background:var(--bad);color:#fff;font-size:var(--fs-xs);font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px var(--bg)}.fb-list{gap:6px}.fb-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:var(--r-md);text-align:start;background:var(--card2);border:1px solid var(--line);color:var(--fg);font:inherit;cursor:pointer}.fb-row.unread{border-color:var(--line-strong);background:var(--card)}.fb-row.closed{opacity:.6}.fb-row-kind{font-size:var(--fs-h2);flex:none}.fb-row-main{display:flex;flex-direction:column;min-width:0;flex:1;gap:2px}.fb-row-title{font-size:var(--fs-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fb-row.unread .fb-row-title{color:var(--fg)}.fb-row-preview{font-size:12.5px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fb-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:var(--fs-xs);flex:none}.fb-dot{width:9px;height:9px;border-radius:50%;background:var(--accent)}.fb-msg-time{display:block;font-size:var(--fs-xs);opacity:.65;margin-top:3px;text-align:end}.date-strip{position:sticky;top:calc(env(safe-area-inset-top) + 4px);z-index:30;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin:0 0 var(--sp-3);padding:6px;border-radius:var(--r-full);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-soft)}.date-strip .ds-nav{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:var(--r-full);border:none;background:var(--card2);color:var(--fg);font:inherit;font-size:var(--fs-h3);cursor:pointer;transition:background var(--dur-tap),opacity var(--dur-base)}.date-strip .ds-nav:disabled{opacity:.3;cursor:default}.date-strip .ds-mid{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2;text-align:center}.date-strip .ds-title{font-weight:600;font-size:var(--fs-sm);font-family:var(--font-head)}.date-strip .ds-sub{font-size:var(--fs-xs);color:var(--dim);display:flex;align-items:center;gap:4px}.date-strip .ds-today{flex:none;min-height:32px;padding:4px 12px;border-radius:var(--r-full);border:none;background:var(--accent-soft);color:var(--accent-ink);font:inherit;font-size:var(--fs-xs);font-weight:700;cursor:pointer}.ds-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block}.ds-dot.ok{background:var(--ok)}.ds-dot.over{background:var(--bad)}.hero-card{padding-top:var(--sp-3)}.hero-coach{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);padding:8px 10px;border-radius:var(--r-md);background:var(--card2);font-size:var(--fs-cap);line-height:1.4;color:var(--fg);text-align:start;width:100%;border:none;font-family:inherit;cursor:pointer}.hero-coach .hc-ic{flex:none}.hero-coach .hc-txt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.act-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);margin-bottom:var(--sp-3)}.act-tile{display:flex;flex-direction:column;gap:4px;padding:12px 14px;min-height:92px;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-soft);color:var(--fg);font:inherit;text-align:start;cursor:pointer;transition:transform var(--dur-tap),background var(--dur-tap);position:relative}.act-tile:active{transform:scale(.98);background:var(--card2)}.act-tile .at-head{display:flex;align-items:center;gap:6px;font-size:var(--fs-cap);color:var(--dim);font-weight:500}.act-tile .at-ic{width:26px;height:26px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--at-soft, var(--accent-soft))}.act-tile .at-val{font-size:var(--fs-h2);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;line-height:1.1;direction:ltr;text-align:start}.act-tile .at-val small{font-size:var(--fs-cap);font-weight:500;color:var(--dim);margin-inline-start:4px}.act-tile .at-sub{font-size:var(--fs-xs);color:var(--dim);line-height:1.3}.act-tile .at-delta{color:var(--ok);font-weight:700}.act-tile .at-bar{height:4px;border-radius:var(--r-full);background:var(--track);overflow:hidden;margin-top:2px}.act-tile .at-bar i{display:block;height:100%;background:var(--at-color, var(--accent));transition:width var(--dur-bar) var(--ease-out)}.act-tile.steps{--at-soft: var(--w-soft);--at-color: var(--w)}.act-tile.water{--at-soft: var(--c-soft);--at-color: var(--c)}.act-tile.workout{--at-soft: var(--p-soft);--at-color: var(--p)}.act-tile.weight{--at-soft: var(--f-soft);--at-color: var(--f)}.act-tile.runs{--at-soft: var(--ok-soft);--at-color: var(--ok)}.act-tile .at-empty{color:var(--accent-ink);font-weight:600;font-size:var(--fs-sm)}.meal-group{margin-bottom:var(--sp-2)}.meal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:6px 4px 4px;font-size:var(--fs-cap);color:var(--dim);font-weight:600}.meal-head b{font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--fg);font-weight:600}.meal-head:after{content:"";flex:1;height:1px;background:var(--line);order:1}.meal-head>:last-child{order:2}.entry .en-kcal{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;min-width:36px;text-align:end}.entry .en-del{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:var(--r-full);border:none;background:transparent;color:var(--dim);font:inherit;cursor:pointer;position:relative}.entry .en-del:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px}.entry .en-del:active{background:var(--bad-soft);color:var(--bad)}.log-actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-3)}.log-actions .btn{flex:1}.log-foot{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line)}.navbar>div{align-items:end}.nav-plus{position:relative;width:56px;height:56px;margin:-22px auto 0;border-radius:var(--r-full);border:4px solid var(--bg);background:var(--accent);color:var(--ink);display:grid;place-items:center;box-shadow:var(--shadow-soft);cursor:pointer;z-index:2;transition:transform var(--dur-tap)}.nav-plus:active{transform:scale(.94)}.nav-plus-col{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60px}.nav-plus{width:48px;height:48px;margin:0 auto;border:none}.ds-nav.prev:before{content:"‹"}.ds-nav.next:before{content:"›"}[dir=rtl] .ds-nav.prev:before{content:"›"}[dir=rtl] .ds-nav.next:before{content:"‹"}@media(prefers-reduced-motion:reduce){.nav-plus:active,.act-tile:active{transform:none}}.sec-title{font-size:var(--fs-cap);color:var(--dim);font-weight:600;letter-spacing:.02em;margin:var(--sp-4) var(--sp-2) var(--sp-2)}.sec-title:first-child{margin-top:0}.srows{display:flex;flex-direction:column;margin:calc(var(--card-pad) * -1)}.srow{display:flex;align-items:center;gap:var(--sp-3);min-height:52px;padding:8px var(--card-pad);border-bottom:1px solid var(--line);background:none;border-inline:none;border-top:none;color:var(--fg);font:inherit;text-align:start;cursor:pointer;width:100%;transition:background var(--dur-tap)}.srow:last-child{border-bottom:none}.srow.static{cursor:default}.srow .sr-ic{width:32px;height:32px;border-radius:var(--r-ctl);flex:none;display:grid;place-items:center;background:var(--card2)}.srow .sr-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.srow .sr-label{font-weight:500}.srow .sr-sub{font-size:var(--fs-cap);color:var(--dim)}.srow .sr-val{font-size:var(--fs-sm);color:var(--dim);flex:none;display:flex;align-items:center;gap:6px}.srow .sr-chev{color:var(--dim);opacity:.6}.srow.danger .sr-label{color:var(--bad)}.sum-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2);margin-bottom:var(--sp-3)}.sum-item{padding:10px 8px;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);text-align:center}.sum-item .si-v{font-size:var(--fs-h2);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;line-height:1.1}.sum-item .si-l{font-size:var(--fs-xs);color:var(--dim);margin-top:2px}@media(min-width:600px){#root{max-width:760px}.screen.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--sp-4);align-items:start}.screen.two-col>.col-full{grid-column:1 / -1;grid-row:1;min-width:0}.screen.two-col>.col-a{grid-column:1;grid-row:2;min-width:0}.screen.two-col>.col-b{grid-column:2;grid-row:2;min-width:0}.act-grid{gap:var(--sp-4)}.navbar>div{max-width:760px}}@media(min-width:1024px){:root{--rail: 96px}#root{max-width:960px;padding-inline-start:calc(var(--gutter) + var(--rail));padding-bottom:var(--sp-6)}.navbar{top:0;bottom:0;right:auto;left:auto;inset-inline-start:0;width:var(--rail);border-radius:0 var(--r-panel) var(--r-panel) 0;padding-bottom:0;display:flex;flex-direction:column;justify-content:center}[dir=rtl] .navbar{border-radius:var(--r-panel) 0 0 var(--r-panel)}.navbar>div{display:flex;flex-direction:column;gap:var(--sp-2);max-width:none;width:100%;padding:var(--sp-3) var(--sp-2);align-items:stretch}.nav-pill{display:none}.navbtn{min-height:60px;border-radius:var(--r-md)}.navbtn.sel{background:var(--accent);color:var(--ink)}.nav-plus{margin:var(--sp-2) auto}.nav-plus-col{order:-1}.screen.two-col{grid-template-columns:5fr 6fr;gap:0 var(--sp-5)}.fab{inset-inline-end:max(20px,calc(50vw - 460px))}}.navbtn .nav-av{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;overflow:hidden;background:var(--card);box-shadow:0 0 0 1px var(--line-2);margin:-4px 0}.navbtn.sel .nav-av{box-shadow:0 0 0 3px var(--fg)}.nav-pill.off{opacity:0}.greet .avatar{position:relative;overflow:visible}.greet .avatar .av-gear{position:absolute;bottom:-2px;inset-inline-start:-2px;width:20px;height:20px;border-radius:50%;background:var(--card);color:var(--accent-ink);border:1.5px solid var(--line-2);display:grid;place-items:center}.navbtn .nav-av img{width:100%;height:100%;object-fit:cover;display:block}.navbtn.sel .nav-av{box-shadow:0 0 0 2px var(--fg)}.navbar>div{align-items:center;padding:6px 10px}.navbtn{min-height:56px;padding:6px 4px;gap:2px}.nav-pill{top:6px;bottom:6px;background:var(--accent)}.navbtn .nav-art{transition:transform var(--dur-tap) var(--ease-out)}.navbtn:active .nav-art{transform:scale(.92)}.navbtn .nav-label{font-size:var(--fs-xs)}.nav-plus{width:54px;height:54px;margin:-18px auto 0;border:4px solid var(--card)}.navbtn .nav-av.me{width:34px;height:34px;margin:0;box-shadow:0 0 0 2px var(--line);opacity:.85}.navbtn.sel .nav-av.me{box-shadow:0 0 0 2px var(--ink);opacity:1}.navbtn .nav-av.me>*{width:100%;height:100%}@media(min-width:1024px){.nav-plus{margin:var(--sp-2) auto;border:none}}@media(prefers-reduced-motion:reduce){.navbtn.sel .nav-art{animation:none;transform:none}}.navbtn{min-height:60px;gap:2px;padding:6px 2px 4px}.navbtn .nav-art,.navbtn .nav-av.me{width:28px;height:28px}.navbtn.sel:after{display:none}.nav-label{font-size:var(--fs-xs);font-weight:500;line-height:1.2;color:var(--dim);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.navbtn.sel .nav-label{color:var(--ink)}.nav-plus-col{min-height:60px}.h-ic{display:flex;align-items:center;gap:var(--sp-2)}.h-ic .ui-icon{flex:none}.sum-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px 10px;box-shadow:var(--shadow-soft);border-color:transparent}.sum-item .si-ic{margin-bottom:2px}.istats{gap:var(--sp-2)}.istat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 8px;border-radius:var(--r-md);background:color-mix(in srgb,var(--tone, var(--accent)) 9%,var(--card))}.istat .v{font-size:var(--fs-h3);font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;line-height:1.15;margin-top:2px}.istat .l{font-size:var(--fs-xs);color:var(--dim);text-align:center;line-height:1.2}.chart-pick{min-height:22px;font-size:var(--fs-sm);margin-bottom:var(--sp-2);font-family:var(--font-num);font-variant-numeric:tabular-nums}.chart-pick b{font-family:var(--font-head);font-size:var(--fs-h3)}.chart.chart-v2{height:140px;gap:3px;padding-top:4px}.chart-v2 .chart-bar{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;cursor:pointer;border-radius:var(--r-ctl) var(--r-ctl) 0 0;background:var(--bar, var(--accent));transition:filter var(--dur-tap),transform var(--dur-tap);transform-origin:bottom}.chart-v2 .chart-bar.none{background:var(--track);cursor:default}.chart-v2 .chart-bar.today{box-shadow:0 0 0 2px var(--card),0 0 0 3.5px var(--accent-ink)}.chart-v2 .chart-bar.sel{background:var(--accent-ink);transform:scaleY(1.03)}.chart-v2 .chart-bar:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.chart-v2 .chart-goal{border-top:1px solid var(--line-strong)}.chart-summary.chips span{background:var(--card2);border-radius:var(--r-full);padding:4px 10px 4px 6px}.chart-summary .ui-icon{flex:none}.split{height:16px;gap:3px;background:none}.split i{border-radius:var(--r-full)}.split-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2);margin-top:var(--sp-3)}.sl-item{display:flex;flex-direction:column;align-items:center;gap:1px}.sl-item b{font-size:var(--fs-h3);color:var(--sl);font-family:var(--font-num);font-variant-numeric:tabular-nums}.sl-item span{font-size:var(--fs-xs);color:var(--dim)}.wcell .w-art{margin-top:1px}.tag.w .w-art{margin:-3px 0}.nav-badge{position:absolute;top:6px;inset-inline-end:calc(50% - 24px);min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-full);background:var(--bad);color:var(--on-solid);font-size:var(--fs-xs);font-weight:700;line-height:18px;text-align:center;font-family:var(--font-num);font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--card);pointer-events:none}.greet-slot{flex:none}.greet-slot:empty{display:none}.greet-slot .cheat-row{margin:0}.greet-slot .cheat-toggle{min-height:40px;padding:8px 12px;gap:7px;font-size:var(--fs-cap)}.greet-slot .cheat-toggle .cheat-knob{width:30px;height:18px}.greet-slot .cheat-toggle .cheat-knob:after{width:12px;height:12px}.greet-slot .cheat-toggle.on .cheat-knob:after{transform:translate(-12px)}[dir=ltr] .greet-slot .cheat-toggle.on .cheat-knob:after{transform:translate(12px)}.greet-coach{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;overflow:hidden;background:var(--card);box-shadow:var(--shadow-soft)}.greet-coach img{width:100%;height:100%;object-fit:cover;display:block}.greet-coach .ui-icon{width:44px;height:44px;object-fit:contain}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.trend-tabs{margin-bottom:var(--sp-3)}.trend-tabs button{font-size:var(--fs-cap);padding-inline:6px}.srow .sr-ic img,.srow .sr-ic .avatar-img{width:28px;height:28px;border-radius:50%}.srow .sr-ic .ui-icon{width:26px;height:26px;border-radius:0}.srow .sr-chev{font-size:var(--fs-h2);line-height:1}[dir=ltr] .srow .sr-chev{transform:scaleX(-1)}.srow .sr-badge{min-width:20px;height:20px;padding:0 6px;border-radius:var(--r-full);background:var(--bad);color:#fff;font-size:var(--fs-xs);font-weight:700;line-height:20px;text-align:center}.srow-stack{align-items:flex-start;padding-block:12px}.srow-stack .tabs{display:flex}.set-sheet .card{background:none;box-shadow:none;border:none;padding:0;margin-bottom:var(--sp-4)}.set-sheet .card+.card{padding-top:var(--sp-4);border-top:1px solid var(--line);border-radius:0}.srow-stack .tabs button{min-height:36px;padding:6px 8px;font-size:var(--fs-cap);line-height:1.2}.set-sheet .card-head+.card:last-child>h3:first-child{display:none}.meal-toggle{width:100%;border:none;font:inherit;cursor:pointer;text-align:start;background:var(--card2);border-radius:var(--r-md);padding:12px 14px;margin-bottom:var(--sp-2);min-height:48px;align-items:center;gap:var(--sp-2);color:var(--fg);font-size:var(--fs-sm)}.meal-toggle:after{display:none}.meal-toggle>span:first-child{flex:1;font-weight:600}.meal-head-name{display:inline-flex;align-items:center;gap:7px;min-width:0}.meal-head-ic{flex:none}.bodyfat-cta{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:var(--r-md);border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--card));cursor:pointer;text-align:start;transition:background var(--dur-base),border-color var(--dur-base),box-shadow var(--dur-base),transform var(--dur-base)}.bodyfat-cta:active{transform:scale(.99);background:color-mix(in srgb,var(--accent) 16%,var(--card))}.bodyfat-cta-ic{flex:none;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 22%,var(--card))}.bodyfat-cta-ic .ui-icon{width:30px;height:30px;object-fit:contain}.bodyfat-cta-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.bodyfat-cta-txt b{font-size:var(--fs-body);font-weight:700;color:var(--fg)}.bodyfat-cta-txt small{font-size:var(--fs-cap);color:var(--dim);line-height:1.35}.bodyfat-cta-go{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--accent);box-shadow:var(--shadow-soft)}.meal-toggle b{font-size:var(--fs-body)}.meal-toggle .meal-chev{color:var(--dim);font-size:var(--fs-h3);transition:transform var(--dur-base);transform:rotate(-90deg)}.meal-group.open .meal-toggle .meal-chev{transform:rotate(90deg)}.meal-group.open .meal-toggle{margin-bottom:var(--sp-1)}.meal-toggle:active{background:var(--track)}.coach-inline{position:relative}.coach-pinned{margin-bottom:var(--sp-2)}.coach-pinned .coach-chat-bubble{position:relative;padding-inline-end:36px;max-width:100%}.coach-pinned .coach-pop-x{top:6px;inset-inline-end:6px}.coach-inline-head{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2)}.coach-inline-head img{border-radius:50%}.coach-inline-head b{flex:1}.coach-inline .coach-pop-x{top:10px;inset-inline-end:10px}.coach-chat-inline{display:flex;flex-direction:column;padding:0;overflow:hidden;height:calc(100dvh - 300px);min-height:380px}.coach-chat-inline .coach-chat-head{padding-top:12px}.ui-dialog-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-dialog);display:grid;place-items:center;padding:var(--sp-4);background:var(--overlay);animation:ui-fade var(--dur-base) var(--ease-out) both}.ui-dialog{width:min(100%,400px);background:var(--card);color:var(--fg);border-radius:var(--r-panel);padding:var(--sp-5);box-shadow:var(--shadow-pop);animation:ui-rise var(--dur-enter) var(--ease-out) both}.ui-dialog-title{font-size:var(--fs-h3);font-weight:700;margin:0 0 var(--sp-2)}.ui-dialog-body{font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--dim);white-space:pre-line}.ui-dialog-input{width:100%;margin-top:var(--sp-3)}.ui-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-2);margin-top:var(--sp-5)}.ui-dialog-actions .btn{min-height:var(--ctl-h)}.ui-toasts{position:fixed;inset-inline:var(--sp-4);bottom:calc(96px + env(safe-area-inset-bottom));z-index:calc(var(--z-dialog) + 1);display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);pointer-events:none}.ui-toast{max-width:480px;padding:10px 16px;border-radius:var(--r-ctl);background:var(--fg);color:var(--card);font-size:var(--fs-sm);line-height:var(--lh-snug);box-shadow:var(--shadow-pop);animation:ui-rise var(--dur-enter) var(--ease-out) both}.ui-toast.bad{background:var(--bad);color:var(--on-solid)}.ui-toast.ok{background:var(--ok);color:var(--on-solid)}@keyframes ui-fade{0%{opacity:0}}@keyframes ui-rise{0%{opacity:0;transform:translateY(8px)}}:root{--r-sheet: 16px;--lg-protein: var(--p);--lg-carbs: var(--c);--lg-fat: var(--f);--sheet-handle: color-mix(in srgb, var(--fg) 22%, transparent);--ease-spring: cubic-bezier(.2, .9, .25, 1)}.sheet.lg-sheet{background:color-mix(in srgb,var(--overlay) calc(var(--lg-dim, 1) * 100%),transparent)}.sheet.lg-sheet>div{border-radius:var(--r-sheet) var(--r-sheet) 0 0;will-change:transform;overscroll-behavior:contain}.sheet.lg-sheet>div:before{content:"";display:block;flex:none;width:38px;height:5px;border-radius:var(--r-full);background:var(--sheet-handle);margin:-12px auto 12px}[data-lg-ghost]{z-index:49}.navbar{background:var(--card);border-top:1px solid var(--line);border-radius:0;box-shadow:none}@media(max-width:1023.98px){.nav-pill{transition:inset-inline-start .34s var(--ease-spring),opacity var(--dur-base)}.navbtn{min-height:56px}.nav-plus{width:50px;height:50px;margin:0 auto;border:none}.nav-plus-col{min-height:56px}}.navbtn:active{transform:scale(.96)}.navbtn{transition:color var(--dur-base),transform .1s var(--ease-out)}@media(prefers-contrast:more){.navbar{border-color:var(--fg)}}@media(prefers-reduced-motion:reduce){.nav-pill{transition:opacity var(--dur-base)}.navbtn:active{transform:none}}.day-swipe{touch-action:pan-y;will-change:transform}.day-swipe img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.meal-group{margin-bottom:0}.meal-group>.meal-toggle{position:relative;margin:0;border-radius:0}.meal-group:not(.open)+.meal-group:not(.open)>.meal-toggle:before{content:"";position:absolute;top:0;inset-inline:46px 0;border-top:1px solid var(--line)}.meal-group:not(.meal-group+.meal-group)>.meal-toggle,.meal-group.open>.meal-toggle,.meal-group.open+.meal-group>.meal-toggle{border-start-start-radius:var(--r-card);border-start-end-radius:var(--r-card)}.meal-group:not(:has(+.meal-group))>.meal-toggle,.meal-group.open>.meal-toggle,.meal-group:has(+.meal-group.open)>.meal-toggle{border-end-start-radius:var(--r-card);border-end-end-radius:var(--r-card);margin-bottom:var(--sp-2)}.meal-group.open>.meal-toggle{margin-bottom:var(--sp-1)}.meal-group.open{margin-bottom:var(--sp-2)}.hero-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--sp-4)}.hero-row .ring-wrap{width:150px;height:150px;margin:0}.hero-row .ring-center .v{font-size:28px;font-weight:600;letter-spacing:-.03em;line-height:1}.hero-row .ring-center .l{font-size:12px;margin-top:3px}.hero-row .ring-center .s,.hero-row .ring-center .bonus>span{display:none}.hero-row .ring-center .bonus{margin-top:2px}.mbars{display:grid;gap:14px;min-width:0}.mbar{--mc: var(--lg-protein);min-width:0}.mbar.c{--mc: var(--lg-carbs)}.mbar.f{--mc: var(--lg-fat)}.mbar.over{--mc: var(--bad)}.mbar-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2);white-space:nowrap}.mbar-head b{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-sm);font-weight:700;color:var(--fg)}.mbar-info{pointer-events:auto}.mbar-val{font-size:var(--fs-xs);color:var(--dim);font-family:var(--font-num);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}.mbar.over .mbar-val{color:var(--bad);font-weight:600}.mbar-track{display:flex;height:7px;margin-top:5px;border-radius:var(--r-full);background:var(--track);overflow:hidden}.mbar-track i{display:block;flex:none;height:100%;background:var(--mc);border-radius:var(--r-full);transition:width var(--dur-bar, .42s) var(--ease-spring)}.mbar-track i.animal:not(:last-child){border-start-end-radius:0;border-end-end-radius:0}.mbar-track i.plant{background:var(--p2);border-start-start-radius:0;border-end-start-radius:0;box-shadow:inset 2px 0 0 var(--card)}[dir=rtl] .mbar-track i.plant{box-shadow:inset -2px 0 0 var(--card)}.day-dots{display:flex;justify-content:center;gap:6px;margin-top:var(--sp-3)}.day-dots i{width:6px;height:6px;border-radius:var(--r-full);background:var(--line-2);transition:width var(--dur-base) var(--ease-spring)}.day-dots i.on{width:16px;background:var(--accent)}.day-dots i.off{opacity:.35}@media(max-width:340px){.hero-row{grid-template-columns:minmax(0,1fr);justify-items:center}.hero-row .mbars{width:100%}}@media(prefers-reduced-motion:reduce){.mbar-track i,.day-dots i{transition:none}}.act-grid{display:flex;flex-direction:column;gap:0;padding:0;background:transparent;border:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;overflow:hidden}.act-tile{display:grid;grid-template-columns:34px minmax(0,1fr) auto 16px;align-items:center;column-gap:var(--sp-3);min-height:64px;padding:10px 14px;border:none;border-radius:0;box-shadow:none;background:transparent;transition:background var(--dur-tap)}.act-tile+.act-tile:before{content:"";position:absolute;top:0;inset-inline:60px 0;border-top:1px solid var(--line)}.act-tile:active{transform:none;background:var(--card2)}.act-tile.open{background:color-mix(in srgb,var(--at-color) 6%,var(--card))}.act-tile .at-ic{width:34px;height:34px;border-radius:0;background:transparent;color:var(--dim)}.act-tile.open .at-ic{color:var(--fg)}.hero-card .steps-cheer{background:transparent;border:none;box-shadow:none;padding:var(--sp-2) 0 0}.act-tile .at-main{display:flex;flex-direction:column;gap:3px;min-width:0}.act-tile .at-head{font-size:var(--fs-body);color:var(--fg);font-weight:600}.act-tile .at-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.act-tile .at-bar{max-width:160px;margin-top:2px}.act-tile .at-val{font-size:var(--fs-h3);white-space:nowrap}.act-tile .at-chev{color:var(--dim);opacity:.6;display:grid;place-items:center;transform:rotate(-90deg);transition:transform var(--dur-base) var(--ease-spring)}.act-tile.open .at-chev{transform:rotate(90deg)}@media(min-width:600px){.act-grid{gap:0}}.greet h1{font-family:var(--font-serif);font-size:30px;font-weight:700;letter-spacing:0;line-height:1.15;text-wrap:balance}.greet-slot{transform:translateY(calc((33.6px - 100%)/2))}.lg-topbar{position:fixed;top:0;left:0;right:0;z-index:var(--z-bar);height:calc(44px + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--gutter) 0;display:flex;align-items:center;justify-content:center;pointer-events:none}.lg-topbar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--card);border-bottom:1px solid var(--line);opacity:var(--st-mat, 0)}.lg-topbar span{position:relative;font-weight:700;font-size:var(--fs-body);letter-spacing:.01em;opacity:var(--st-title, 0);transform:translateY(calc((1 - var(--st-title, 0)) * 6px))}@media(min-width:1024px){.lg-topbar{display:none}}.screen[data-tab=history] .card,.screen[data-tab=settings] .card,.screen[data-tab=trainer] .card{box-shadow:none;border-color:transparent;border-radius:var(--r-card)}.screen[data-tab] .card.lg-hero{box-shadow:var(--shadow-soft);border-color:var(--line);border-radius:var(--r-card)}.screen[data-tab=trainer] .tc-home{box-shadow:var(--shadow-soft)}.sum-strip{gap:0;background:var(--card);border-radius:var(--r-card);overflow:hidden}.sum-strip .sum-item{background:transparent;border:none;border-radius:0;box-shadow:none;position:relative}.sum-strip .sum-item+.sum-item:before{content:"";position:absolute;inset-block:14px;inset-inline-start:0;border-inline-start:1px solid var(--line)}.sum-strip .si-v{font-weight:800;letter-spacing:-.02em}.history-list .entry{margin:0;border-radius:0;background:transparent;padding-inline:2px;border-bottom:1px solid var(--line)}.history-list .entry:last-of-type{border-bottom:none}.history-list .entry:active{background:var(--card2)}.sec-title{text-transform:none;letter-spacing:.01em;margin-inline:var(--sp-4)}.srow{border-bottom:none;position:relative}.srow+.srow:before{content:"";position:absolute;top:0;inset-inline:calc(var(--card-pad) + 32px + var(--sp-3)) 0;border-top:1px solid var(--line)}.srow:active{background:var(--card2)}.srow .sr-ic{border-radius:var(--r-ctl)}.opt{margin-bottom:0;border-radius:0;position:relative}.opt+.opt:before{content:"";position:absolute;top:0;inset-inline:48px 0;border-top:1px solid var(--line);pointer-events:none}.opt:not(.opt+.opt){border-start-start-radius:var(--r-card);border-start-end-radius:var(--r-card)}.opt:not(:has(+.opt)),.opt.opt-fav-end{border-end-start-radius:var(--r-card);border-end-end-radius:var(--r-card);margin-bottom:var(--sp-2)}.opt.opt-fav-end{border-bottom:none}.opt.opt-fav-end+.opt{border-start-start-radius:var(--r-card);border-start-end-radius:var(--r-card)}.opt.opt-fav-end+.opt:before{display:none}.opt:active{transform:none}
