:root{--bg:#151515;--bg-deep:#1b1b1a;--surface:#1f1f1e;--surface-2:#292927;--surface-3:#333331;--surface-4:#3f3f3c;--line:#2c2c2a;--line-strong:#4a4945;--text:#ecebe6;--text-2:#d6d4cc;--muted:#9a9890;--faint:#74726b;--hover:#fffcf00f;--bar:#262624d1;--glass:#3c3c3859;--action:#242422f7;--action-line:#353532;--contrast:#ecebe6;--on-contrast:#151515;--on-accent:#111;--shadow:#0006;--scrim:#00000080;--accent:#7fc4a3;--accent-deep:color-mix(in srgb, var(--accent) 26%, #151515);--accent-soft:color-mix(in srgb, var(--accent) 48%, #3e3d39);--accent-mid:color-mix(in srgb, var(--accent) 55%, #1a1a19);--accent-tint:color-mix(in srgb, var(--accent) 14%, #171716);--accent-line:color-mix(in srgb, var(--accent) 30%, #1a1a19);--danger:#e5675a;--body:#141413;--muscle:#262522;--outline:#57544c;--accent-text:var(--accent);--display:"Bricolage Grotesque", -apple-system, sans-serif;--display-weight:700;--display-stretch:normal;--display-tracking:-.03em;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--tabbar-h:58px;--radius:20px;--ease-out:cubic-bezier(.22, .8, .24, 1);--ease-in:cubic-bezier(.5, 0, .9, .4);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--t-fast:.16s;--t-med:.28s;--t-slow:.38s;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f8f8f6;--bg-deep:#efeee9;--surface:#fff;--surface-2:#f0efea;--surface-3:#e7e6e0;--surface-4:#dddbd3;--line:#e6e4dd;--line-strong:#c9c6bc;--text:#1f1e1d;--text-2:#33322f;--muted:#75736c;--faint:#9a978e;--hover:#281e000d;--bar:#fffffdd6;--glass:#fffffd99;--action:#fffffdfa;--action-line:#e8e6df;--contrast:#1f1e1d;--on-contrast:#fff;--shadow:#281e001a;--scrim:#1e190a38;--body:#f6f5f1;--muscle:#e2e0d9;--outline:#bdb9ae;--accent-text:color-mix(in srgb, var(--accent) 78%, #1d1d1d);--accent-deep:color-mix(in srgb, var(--accent) 45%, #fff);--accent-soft:color-mix(in srgb, var(--accent) 55%, #9a9a9a);--accent-mid:color-mix(in srgb, var(--accent) 65%, #6b6b6b);--accent-tint:color-mix(in srgb, var(--accent) 22%, #fff);--accent-line:color-mix(in srgb, var(--accent) 50%, #9a9a9a);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--sans);overscroll-behavior:none;margin:0;font-size:17px;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}button:disabled{opacity:.35;cursor:default}input{font:inherit;color:inherit}.display{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);letter-spacing:var(--display-tracking);margin:0;line-height:1}.accent{color:var(--accent-text)}.muted{color:var(--muted);margin:0}.small{font-size:14px}.app{background:var(--bg);max-width:480px;margin:0 auto;position:fixed;inset:0;overflow:hidden}.viewport{inset:var(--safe-top) 0 0;position:absolute}.screen{touch-action:pan-y;padding:0 16px calc(var(--tabbar-h) + var(--safe-bottom) + 40px);-webkit-overflow-scrolling:touch;position:absolute;inset:0;overflow-y:auto}.tabbar-spacer{height:24px}.navbar{z-index:5;background:var(--bg);border-bottom:.5px solid #0000;grid-template-columns:1fr auto 1fr;align-items:center;height:44px;margin:0 -16px;padding-inline:8px;transition:border-color .2s;display:grid;position:sticky;top:0}.navbar.scrolled{border-bottom-color:var(--line)}.navbar-side{align-items:center;min-width:0;display:flex}.navbar-side.right{justify-content:flex-end}.navbar-title{white-space:nowrap;text-overflow:ellipsis;max-width:220px;margin:0;font-size:17px;font-weight:600;transition:opacity .15s;overflow:hidden}.navbar-title.hidden{opacity:0}.nav-back{background:var(--surface-2);width:40px;height:40px;color:var(--text);border-radius:50%;place-items:center;margin-left:6px;display:grid}.nav-back span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.icon-btn{place-items:center;width:44px;height:44px;display:grid}.icon-btn.danger{color:var(--danger)}.large-title{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);margin:8px 0 10px;font-size:42px;line-height:1}.large-title.flush{margin-top:40px}.section-title{font-family:var(--display);font-stretch:var(--display-stretch);font-size:26px;font-weight:var(--display-weight);letter-spacing:var(--display-tracking);margin:30px 0 12px}.dock{left:16px;right:16px;bottom:max(calc(var(--safe-bottom) + 2px), 12px);z-index:20;height:var(--tabbar-h);pointer-events:none;align-items:center;gap:10px;display:flex;position:absolute}.dock>*{pointer-events:auto}.tabbar{background:var(--bar);-webkit-backdrop-filter:blur(24px)saturate(1.3);height:100%;box-shadow:0 10px 34px var(--shadow), inset 0 0 0 .5px var(--line);border-radius:999px;flex:1;grid-template-columns:repeat(3,1fr);align-items:center;padding:0 6px;display:grid;position:relative}.tab{z-index:1;width:52px;height:44px;color:var(--muted);border-radius:22px;justify-self:center;place-items:center;display:grid;position:relative}.tab.on{color:var(--accent-text)}.tab svg{transition:scale .32s var(--ease-spring)}.tab.on svg{scale:1.06}.tab-indicator{top:50%;left:calc(6px + (100% - 12px) / 6 * (2 * var(--tab,0) + 1));background:var(--accent-tint);border-radius:22px;width:52px;height:44px;margin:-22px 0 0 -26px;transition:left .36s cubic-bezier(.25,.9,.3,1);position:absolute}.start-btn{width:var(--tabbar-h);white-space:nowrap;background:var(--bar);height:100%;color:var(--text);-webkit-backdrop-filter:blur(24px)saturate(1.3);box-shadow:0 10px 34px var(--shadow), inset 0 0 0 .5px var(--line);transition:width var(--t-slow) var(--ease-out);border-radius:999px;flex:none;justify-content:center;align-items:center;gap:8px;font-size:17px;font-weight:500;display:flex;overflow:hidden}.start-btn svg{color:var(--accent-text)}.start-btn.running{width:128px}.dock .start-btn{transition:width var(--t-slow) var(--ease-out), scale .18s var(--ease-out)}.start-btn.running>*{animation:fade-in var(--t-med) ease-out both}.start-timer{font-variant-numeric:tabular-nums}.live-dot{background:var(--accent);border-radius:50%;width:9px;height:9px;animation:1.8s ease-in-out infinite live-pulse}@keyframes live-pulse{50%{opacity:.35}}.bodymap{flex-direction:column;align-items:center;margin:4px 0 0;display:flex;position:relative}.bodymap-figures{justify-content:center;gap:0;width:100%;display:flex}.bodymap-figure{width:42%;max-width:170px;height:auto}.bm-silhouette{fill:var(--body);stroke:var(--outline);stroke-width:1.3px}.bm-muscle{fill:var(--muscle);stroke:var(--body);stroke-width:1.7px;stroke-linejoin:round;transition:fill .3s}.bm-muscle.quiet:not(.primary):not(.secondary):not(.f1):not(.f2):not(.f3):not(.f4):not(.f5){fill:var(--body)}.bm-muscle.primary{fill:var(--accent)}.bm-muscle.secondary{fill:var(--accent-soft)}.bm-muscle.f1{fill:color-mix(in srgb, var(--accent) 22%, var(--muscle))}.bm-muscle.f2{fill:color-mix(in srgb, var(--accent) 40%, var(--muscle))}.bm-muscle.f3{fill:color-mix(in srgb, var(--accent) 58%, var(--muscle))}.bm-muscle.f4{fill:color-mix(in srgb, var(--accent) 78%, var(--muscle))}.bm-muscle.f5{fill:var(--accent)}.bodymap-label{color:var(--muted);align-items:center;gap:7px;margin-top:10px;font-size:13.5px;display:flex;position:relative}.bodymap-label:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px}.bodymap.mini{width:100%;margin:0}.bodymap.mini .bodymap-figure{width:46%}.carousel{scroll-snap-type:x mandatory;scrollbar-width:none;gap:8px;margin:0 -16px;padding:0 16px 8px;scroll-padding-inline:16px;display:flex;overflow-x:auto}.carousel::-webkit-scrollbar{display:none}.routine-card{scroll-snap-align:start;background:var(--surface);text-align:center;border-radius:26px;flex-direction:column;flex:0 0 244px;justify-content:flex-end;align-items:center;gap:2px;height:300px;padding:20px 16px;display:flex}.routine-card .bodymap{flex:1;justify-content:center;width:100%;min-height:0;padding:6px 0 10px}.routine-card .bodymap-figures{height:100%;min-height:0}.routine-card .bodymap-figure{width:auto;max-width:46%;height:100%}.routine-card strong{font-family:var(--display);font-stretch:var(--display-stretch);font-size:23px;font-weight:var(--display-weight);letter-spacing:var(--display-tracking);margin-top:6px}.routine-card small{color:var(--muted);font-size:13.5px}.routine-stats{gap:14px;font-size:14px;display:flex}.routine-stats b{font-weight:600}.routine-stats.muted{color:var(--muted)}.routine-card.new{justify-content:center;gap:6px}.plus-circle{background:var(--accent-deep);width:64px;height:64px;color:var(--accent-text);border-radius:50%;place-items:center;margin-bottom:14px;display:grid}.title-input{width:100%;font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);background:0 0;border:0;outline:none;margin-top:14px;padding:0;font-size:40px}.title-input::placeholder{color:var(--line-strong)}.big-stat{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);font-size:56px;line-height:.95}.pill-btn{border-radius:22px;justify-content:center;align-items:center;gap:10px;height:44px;padding:0 24px;font-size:18px;font-weight:600;display:inline-flex}.pill-btn.primary{background:var(--accent);color:var(--on-accent)}.pill-btn.dark{background:var(--surface-2);color:var(--text)}.pill-btn.light{background:var(--contrast);color:var(--on-contrast)}.pill-btn.center{margin:20px auto 0;display:flex}.pill-btn.floating{position:absolute;top:40%;box-shadow:0 6px 24px #00000080}.exercise-list{margin-top:24px}.drag-row{transition:transform var(--t-med) var(--ease-out);align-items:center;display:flex;position:relative}.drag-row>.exercise-row{flex:1;min-width:0}.drag-handle{width:40px;height:48px;color:var(--faint);touch-action:none;cursor:grab;flex:none;place-items:center;margin-right:-10px;display:grid}.drag-row.lifted{z-index:2;background:var(--surface);box-shadow:0 0 0 10px var(--surface), 0 14px 34px 10px var(--shadow);border-radius:6px;transition:none}.drag-row.lifted.settling{transition:transform .26s var(--ease-out), box-shadow .26s ease, background-color .26s ease;background:0 0;box-shadow:0 0 0 10px #0000,0 14px 34px 10px #0000}.exercise-list.drag-frozen .drag-row{transition:none}.drag-row.lifted .drag-handle{color:var(--text);cursor:grabbing}.exercise-list.drag-drag{-webkit-user-select:none;user-select:none}.exercise-row,.workout-row{text-align:left;align-items:center;gap:16px;width:100%;padding:14px 0;display:flex}.row-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row-main strong{font-size:18px;font-weight:500}.row-main small{color:var(--muted);font-size:14px}.row-main i,.reps-x-sets i,.plan i{opacity:.7;margin:0 3px;font-style:normal}.reps-x-sets{color:var(--muted);font-size:15px}.num-badge{background:var(--accent-deep);color:var(--accent-text);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.num-badge.muted{background:var(--surface-4);color:var(--text)}.order-row{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:10px;display:flex}.order-dot{background:var(--surface-2);border-radius:50%;width:38px;height:38px;font-weight:600}.order-dot.on{background:var(--accent);color:var(--on-accent)}.times{align-self:center;margin-top:-26px;font-size:30px;font-weight:300}.sheet-root{z-index:40;position:absolute;inset:0}.sheet-backdrop{background:var(--scrim);animation:.2s fade;position:absolute;inset:0}.sheet{bottom:0;left:0;right:0;top:calc(var(--safe-top) + 12px);background:var(--bg);border-radius:28px 28px 0 0;flex-direction:column;transition:top .3s cubic-bezier(.2,.8,.2,1),transform .25s;animation:.32s cubic-bezier(.2,.8,.2,1) rise;display:flex;position:absolute}.sheet.half{top:22%;left:8px;right:8px;bottom:calc(var(--safe-bottom) + 8px);background:var(--surface);border-radius:36px;overflow:hidden}.sheet-handle{touch-action:none;cursor:grab;flex:none;place-items:center;height:22px;display:grid}.grabber{background:var(--surface-4);border-radius:3px;width:36px;height:5px}.sheet-body{overscroll-behavior:contain;padding:0 16px calc(var(--safe-bottom) + 24px);flex:1;overflow-y:auto}@keyframes rise{0%{transform:translateY(100%)}}@keyframes fade{0%{opacity:0}}.action-root{z-index:60}.action-sheet{left:8px;right:8px;bottom:calc(var(--safe-bottom) + 8px);flex-direction:column;gap:8px;animation:.25s rise;display:flex;position:absolute}.action-group{background:var(--action);border-radius:14px;overflow:hidden}.action-group button,.action-cancel{width:100%;height:57px;color:var(--text);font-size:20px}.action-group button+button{border-top:.5px solid var(--action-line)}.action-group .destructive{color:var(--danger)}.action-cancel{background:var(--surface-2);border-radius:14px;font-weight:600}.nav-cards{border-radius:var(--radius);background:var(--surface);flex-direction:column;margin-top:24px;display:flex;overflow:hidden}.nav-card{text-align:left;align-items:center;gap:16px;padding:15px 18px;display:flex;position:relative}.nav-card+.nav-card:before{content:"";border-top:.5px solid var(--line);position:absolute;top:0;left:56px;right:0}.nav-card:active{background:var(--hover)}.nav-card-icon{width:22px;color:var(--text-2);flex:none;place-items:center;display:grid}.nav-card span{flex-direction:column;flex:1;gap:1px;display:flex}.nav-card strong{font-size:17px;font-weight:500}.nav-card small{color:var(--muted);font-size:14px}.nav-card>svg{color:var(--faint)}.navbar.in-sheet{height:56px;margin:0 -16px;padding-top:0;position:sticky;top:0}.search{background:var(--surface-2);height:50px;color:var(--muted);border-radius:14px;align-items:center;gap:10px;margin:16px 8px 8px;padding:0 16px;display:flex}.search input{color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:18px}.list-header{color:var(--muted);margin:24px 0 8px 16px;font-size:15px}.inset-list{border-radius:var(--radius);background:var(--surface);overflow:hidden}.inset-list>button,.inset-list>.list-button{text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:46px;padding:10px 16px;font-size:18px;display:flex;position:relative}.inset-list>button+button:before,.inset-list>button+.list-button:before{content:"";border-top:.5px solid var(--line);position:absolute;top:0;left:16px;right:0}.inset-list.exercises>button{min-height:63px;padding-left:14px}.inset-list.exercises>button+button:before{left:62px}.inset-list .value{color:var(--muted);align-items:center;gap:6px;display:flex}.inset-list .sub-option{color:var(--muted);padding-left:32px}.eq-icon{width:34px;color:var(--text-2);flex:none;place-items:center;display:grid}.select-circle{border:2px solid var(--line-strong);border-radius:50%;flex:none;place-items:center;width:25px;height:25px;display:grid}.select-circle.on{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.add-selected{margin:20px auto 0;display:flex;position:sticky;bottom:16px;box-shadow:0 6px 24px #0009}.empty-note{text-align:center;color:var(--muted);margin:32px 0}.workout-sheet{background:var(--bg)}.workout-body{flex-direction:column;align-items:stretch;display:flex}.workout-body>*{flex-shrink:0}.workout-name{text-align:center;margin-top:22px;font-size:40px}.ring-pct{text-align:center;margin:12px 0 6px;font-size:18px;font-weight:600}.ring{align-self:center;position:relative}.ring svg{width:100%;height:100%}.ring-track{fill:none;stroke:var(--accent-tint);stroke-width:5px}.ring-progress{fill:none;stroke:var(--accent-text);stroke-width:5px;stroke-linecap:round;transition:stroke-dashoffset .6s}.tick{stroke:var(--line-strong);stroke-width:.7px;stroke-linecap:round}.tick.minor{stroke:var(--line);stroke-width:.5px}.tick.on{stroke:var(--text);stroke-width:.9px}.ring-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-time,.ring-mass{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap;font-size:42px;line-height:1.05}.ring-mass{font-size:var(--mass-size,34px);color:var(--accent-text)}.workout-rows{margin-top:28px}.workout-row .plan{color:var(--muted);font-size:14px}.done-count{font-variant-numeric:tabular-nums;color:var(--accent-text);white-space:nowrap;font-size:20px}.delta-pill{background:var(--accent-tint);color:var(--accent-text);border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin-top:6px;padding:3px 12px;font-size:14px;display:inline-flex}.divider-label{color:var(--muted);justify-content:center;align-items:center;gap:8px;margin:22px 0 6px;font-size:15px;display:flex}.slide-spacer{height:120px}.slide-dock{left:16px;right:16px;bottom:calc(var(--safe-bottom) + 14px);position:absolute}.slide{background:var(--surface-2);border-radius:39px;height:78px;position:relative;overflow:hidden}.slide-text{flex-direction:column;justify-content:center;display:flex;position:absolute;top:0;bottom:0;left:92px}.slide-text strong{font-size:20px;font-weight:600}.slide-text span{color:var(--muted);font-size:13px}.slide-knob{background:var(--accent);width:70px;height:70px;color:var(--on-accent);touch-action:none;cursor:grab;border-radius:50%;place-items:center;display:grid;position:absolute;top:4px;left:4px}.mass-pill{background:var(--accent-tint);color:var(--accent-text);white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:13.5px;font-weight:500}.mono-pill{background:var(--surface-2);color:var(--text-2);font-variant-numeric:tabular-nums;border-radius:999px;padding:3px 10px;font-size:13.5px}.mono-pill.dark{background:var(--bg-deep);color:var(--text)}.finished{z-index:50;background:var(--bg);padding:calc(var(--safe-top) + 40px) 20px calc(var(--safe-bottom) + 12px);flex-direction:column;align-items:stretch;animation:.32s rise;display:flex;position:absolute;inset:0}.finished-head{align-items:center;gap:14px;display:flex}.finished-head .badge-seal{width:58px;height:58px;animation:finished-seal-in .7s var(--ease-out) both;flex:none}.finished h1{margin:0;font-size:30px;line-height:1.05}.finished-sub{color:var(--muted);margin:4px 0 0;font-size:15px}.finished-stats{border-radius:var(--radius);background:var(--surface);grid-template-columns:1.4fr 1.1fr .65fr;margin-top:22px;display:grid}.finished-stats>div{flex-direction:column;gap:3px;min-width:0;padding:14px 16px;display:flex}.finished-stats>div+div{border-left:.5px solid var(--line)}.finished-stats span{color:var(--muted);font-size:13px}.finished-stats b{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap;text-overflow:ellipsis;font-size:clamp(17px,5.2vw,21px);overflow:hidden}.finished-stats b.accent{color:var(--accent-text)}.finished-wins{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.win{background:var(--surface);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:6px 11px;font-size:13px;font-weight:500;display:inline-flex;overflow:hidden}.win.pr{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent-text)}.finished-card{-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:1 1 0;min-height:0;margin:18px 0 16px;padding:0;position:relative}.finished-card img,.finished-card-wait{aspect-ratio:9/16;border-radius:18px;height:100%;max-height:440px;margin:auto;position:absolute;inset:0}.finished-card img{transition:transform .35s cubic-bezier(.22,1,.36,1);animation:.75s cubic-bezier(.22,1,.36,1) both finished-card-in;display:block;box-shadow:0 0 0 .5px #ffffff14,0 24px 60px -18px #0009}.finished-card:active img{transform:scale(.97)}.finished-card-wait{background:var(--surface);animation:1.4s ease-in-out infinite finished-wait}@keyframes finished-card-in{0%{opacity:0;transform:translateY(26px)rotate(-3deg)scale(.94)}to{opacity:1;transform:none}}@keyframes finished-wait{50%{opacity:.55}}@keyframes finished-seal-in{0%{opacity:0;transform:scale(.5)rotate(-30deg)}}.badge-seal{width:92px;height:92px;color:var(--on-accent);align-self:center;place-items:center;display:grid;position:relative}.badge-seal svg{position:absolute;inset:0}.badge-seal .seal{fill:var(--accent);stroke:var(--accent-mid);stroke-width:4px;stroke-linejoin:round}.badge-seal svg+svg{position:relative}.stat-card{border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:4px;margin-bottom:8px;padding:24px;display:flex}.stat-card small{color:var(--muted);font-size:15px}.stat-card strong{font-size:26px;font-weight:600}.finished.leaving{pointer-events:none;animation:finished-out .42s var(--ease-in) forwards}.finished.leaving>*{animation:finished-item-out .22s var(--ease-in) forwards}.finished.leaving>.finished-head .badge-seal{animation:finished-seal-out .22s var(--ease-in) forwards}.finished.leaving>:nth-child(2){animation-delay:20ms}.finished.leaving>:nth-child(3){animation-delay:40ms}.finished.leaving>:nth-child(4){animation-delay:60ms}.finished.leaving>:nth-child(5){animation-delay:80ms}.finished.leaving>:nth-child(6){animation-delay:.1s}@keyframes finished-out{0%,25%{transform:translate(0,0)}to{transform:translateY(100%)}}@keyframes finished-item-out{to{opacity:0;transform:translateY(16px)}}@keyframes finished-seal-out{to{opacity:0;transform:scale(.6)rotate(-20deg)}}.close-btn{border-radius:28px;height:56px;margin:auto auto 0;padding:0 32px}.empty-state{text-align:center;color:var(--text);flex-direction:column;align-items:center;gap:10px;margin-top:30vh;display:flex}.empty-state svg{color:var(--text);margin-bottom:12px}.empty-state strong{font-size:21px}.empty-state p{max-width:230px;color:var(--muted);margin:0;font-size:15px}.week{margin-top:28px}.week-head{justify-content:space-between;align-items:flex-end;padding:0 14px;display:flex}.week-head small{color:var(--muted);font-size:15px}.week-head h2{margin-top:4px;font-size:44px}.week-totals{align-items:center;gap:10px;margin-bottom:18px;font-size:19px;display:flex}.week-dots{justify-content:space-around;padding:18px 8px 22px;display:flex}.week-dots>div{color:var(--muted);flex-direction:column;align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.week-dots i{border:1.5px solid var(--line-strong);width:16px;height:16px;color:var(--on-accent);border-radius:50%;place-items:center;display:grid}.week-dots i.on{border-color:var(--accent);background:var(--accent)}.history-card{border-bottom:.5px solid var(--line);text-align:left;width:100%;color:var(--faint);align-items:center;gap:16px;padding:14px 4px;display:flex}.history-card:last-child{border-bottom:0}.history-card .date{flex-direction:column;align-items:center;width:48px;display:flex}.history-card .date b{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);color:var(--text);font-size:28px;line-height:1}.history-card .date small{color:var(--muted);font-size:13px}.history-card .row-main strong{color:var(--text);font-size:18px;font-weight:500}.history-card .row-main small{color:var(--muted);font-size:15px}.pills{gap:8px;margin-top:8px;display:flex}.detail-sets{background:var(--surface);border-radius:14px;margin:-4px 0 10px 52px;padding:6px 14px}.detail-set{align-items:center;gap:12px;padding:8px 0;display:flex}.detail-set+.detail-set{border-top:.5px solid var(--line)}.set-n{width:18px;color:var(--muted);font-size:14px}.set-what{flex:1;font-size:16px}.set-what i{opacity:.7;margin:0 3px;font-style:normal}.detail-title{margin-top:16px;font-size:36px}.card{background:var(--surface);border-radius:26px;margin-top:12px;padding:24px}.card hr{border:0;border-top:1px solid var(--line);margin:22px 0}.footnote{color:var(--muted);margin:16px;font-size:13px}.sheet.logger-sheet{background:var(--bg)}.logger-body{padding-top:4px}.logger-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-top:6px;display:flex}.logger-title{font-family:var(--display);font-stretch:var(--display-stretch);font-size:30px;font-weight:var(--display-weight);letter-spacing:var(--display-tracking);margin:0;line-height:1.15}.logger-sub{color:var(--muted);margin:6px 0 0;font-size:15px}.round-btn{background:var(--surface-2);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid}.set-rows{flex-direction:column;gap:12px;margin-top:24px;display:flex}.set-line{grid-template-columns:34px 1fr 1fr;align-items:center;gap:10px;display:grid}.set-line:not(:has(.num-box+.num-box)){grid-template-columns:34px 1fr}.set-line:has(.effort-btn){grid-template-columns:34px 1fr 1fr 28px}.set-line:has(.effort-btn):not(:has(.num-box+.num-box)){grid-template-columns:34px 1fr 28px}.set-num{width:34px;height:34px;color:var(--muted);box-shadow:inset 0 0 0 1.5px var(--line-strong);border-radius:50%;place-items:center;font-size:17px;font-weight:600;display:grid}.set-line.done .set-num{background:var(--accent);color:var(--on-accent);box-shadow:none}.num-box{background:var(--surface);font-variant-numeric:tabular-nums;height:56px;color:var(--faint);white-space:nowrap;border:0;border-radius:16px;scroll-margin-top:90px;scroll-margin-bottom:400px;font-size:20px;font-weight:500;transition:background .15s,color .15s}.set-line.done .num-box{color:var(--text);border-color:var(--line)}.set-line.active .num-box{background:var(--surface-2);color:var(--text);border-color:#0000}.num-box.on,.set-line .num-box.on{background:var(--accent);color:var(--on-accent)}.coach-mark{fill:var(--accent-text);flex:none}.adjusted-note{color:var(--text-2);text-align:center;text-wrap:balance;margin:0 8px 12px;font-size:13.5px;line-height:1.4}.adjusted-note .coach-mark{vertical-align:-1px;margin-right:6px}.coach-target{background:var(--surface-2);color:var(--text);font-variant-numeric:tabular-nums;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin-top:6px;padding:3px 10px 3px 8px;font-size:13.5px;font-weight:600;display:inline-flex}.coach-target>svg:last-child{color:var(--accent-text)}.coach-target.hold>svg:last-child,.coach-target.down>svg:last-child{color:var(--muted)}.coach-fold{grid-template-rows:1fr;display:grid}.coach-fold>*{min-height:0}.coach-fold.leaving{pointer-events:none;animation:.46s cubic-bezier(.65,0,.35,1) forwards coach-fold}.coach-fold.leaving>.coach{animation:.26s ease-in forwards coach-fade;overflow:hidden}@keyframes coach-fold{to{grid-template-rows:0fr}}@keyframes coach-fade{to{opacity:0;filter:blur(2px);transform:scale(.97)translateY(-6px)}}.coach-offline{color:var(--muted);animation:fade-in var(--t-med) ease-out both;align-items:center;gap:8px;margin:14px 2px 0;font-size:13px;display:flex}.coach-offline .coach-mark{opacity:.6}.coach{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);animation:fade-in var(--t-med) ease-out both;border-radius:18px;margin-top:14px}.coach-head{text-align:left;flex-direction:column;align-items:stretch;gap:3px;width:100%;padding:13px 15px 15px;display:flex}.coach-top{align-items:center;gap:8px;margin-bottom:7px;display:flex}.coach-brand{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;margin-right:auto;font-size:12px;font-weight:650;display:inline-flex}.coach-change{background:var(--accent-tint);height:22px;color:var(--accent-text);font-variant-numeric:tabular-nums;border-radius:6px;align-items:center;gap:3px;padding:0 8px 0 6px;font-size:12.5px;font-weight:700;display:inline-flex}.coach.hold .coach-change,.coach.down .coach-change{background:var(--surface-2);color:var(--text-2)}.coach-verdict{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);font-size:21px;line-height:1.15}.coach-chip{background:var(--tone-bg);height:22px;color:var(--tone);letter-spacing:.01em;border-radius:11px;align-items:center;gap:4px;padding:0 9px 0 7px;font-size:12px;font-weight:650;display:inline-flex}.coach-chevron{color:var(--faint);transition:transform var(--t-med) var(--ease-out);flex:none}.coach.open .coach-chevron{transform:rotate(180deg)}.coach-reason{color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.4}.set-bars{align-items:flex-end;gap:3px;height:18px;display:inline-flex}.set-bar{flex-direction:column;justify-content:flex-end;align-items:center;height:100%;display:flex}.set-bar i{width:5px;height:calc(var(--h) * 100%);background:var(--accent-text);transform-origin:bottom;border-radius:2px;display:block}.set-bars.muted .set-bar i{background:var(--faint)}.set-bar.lighter i{opacity:.45}.set-bars.labelled{gap:6px;height:50px}.set-bars.labelled .set-bar{gap:4px;width:26px}.set-bars.labelled .set-bar i{width:100%;height:calc(var(--h) * 30px);background:color-mix(in srgb, var(--accent) 70%, transparent);border-radius:5px}.set-bars.labelled.muted .set-bar i{background:color-mix(in srgb, var(--text) 18%, transparent)}.set-bars.labelled .set-bar small{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:600}.set-bars.labelled.muted .set-bar small{color:var(--muted)}.coach.open .set-bars.labelled .set-bar i{animation:bar-grow .45s var(--ease-out) both;animation-delay:calc(var(--i) * 35ms + 80ms)}@keyframes bar-grow{0%{opacity:0;transform:scaleY(.2)}}.coach-collapse{transition:grid-template-rows var(--t-med) var(--ease-out);grid-template-rows:0fr;display:grid}.coach.open .coach-collapse{grid-template-rows:1fr}.coach-more{opacity:0;min-height:0;transition:opacity .2s ease, padding var(--t-med) var(--ease-out);flex-direction:column;gap:10px;padding:0 10px;display:flex;overflow:hidden}.coach.open .coach-more{opacity:1;padding:2px 10px 10px;transition-delay:60ms,0s}.coach-compare{background:var(--surface);border-radius:14px;flex-direction:column;gap:12px;padding:14px 12px;display:flex}.coach-row{grid-template-columns:84px 1fr auto;align-items:end;gap:10px;display:grid}.coach-row-label{flex-direction:column;gap:1px;padding-bottom:2px;font-size:13px;font-weight:600;display:flex}.coach-row-label small{color:var(--muted);font-size:12px;font-weight:500}.coach-row-label small.up{color:var(--accent-text)}.coach-row-kg{color:var(--text-2);font-variant-numeric:tabular-nums;padding-bottom:2px;font-size:13px;font-weight:600}.coach-tiles{grid-template-columns:1fr 1fr;gap:10px;display:grid}.coach-tiles.odd>:last-child{grid-column:1/-1}.coach-tile{background:var(--surface);border-radius:14px;flex-direction:column;gap:4px;min-width:0;padding:12px;display:flex}.coach-tile-label{color:var(--muted);font-size:12px;font-weight:550}.coach-tile strong{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);font-variant-numeric:tabular-nums lining-nums;font-size:22px;line-height:1.1}.coach-tile strong small{font-family:var(--sans);letter-spacing:0;color:var(--muted);font-size:12.5px;font-weight:550}.coach-tile-sub{color:var(--muted);font-size:12px;line-height:1.3}.coach-meter,.coach-range{background:var(--surface-2);border-radius:2px;height:4px;margin:4px 0 2px;display:block;position:relative}.coach-meter i{width:calc(var(--p) * 100%);border-radius:inherit;background:var(--text-2);position:absolute;inset:0 auto 0 0}.coach-range i{top:0;bottom:0;left:calc(var(--a) * 100%);right:calc((1 - var(--b)) * 100%);border-radius:inherit;background:color-mix(in srgb, var(--accent) 55%, transparent);position:absolute}.coach-range b{top:50%;left:calc(var(--x) * 100%);background:var(--text);width:10px;height:10px;box-shadow:0 0 0 2px var(--surface);border-radius:50%;margin:-5px 0 0 -5px;position:absolute}.coach-next{background:color-mix(in srgb, var(--accent) 12%, var(--surface));color:var(--text);border-radius:14px;align-items:flex-start;gap:10px;margin:0;padding:12px;font-size:14px;font-weight:600;line-height:1.3;display:flex}.coach-next>span:last-child{flex-direction:column;gap:2px;display:flex}.coach-next small{color:var(--accent-text);font-size:12px;font-weight:600}.coach-next-icon{background:var(--accent);width:22px;height:22px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;display:grid}.coach-tile,.coach-compare,.coach-next{opacity:0;transition:opacity .25s ease, transform .35s var(--ease-out);transform:translateY(4px)}.coach.open :is(.coach-tile,.coach-compare,.coach-next){opacity:1;transform:none}.coach.open .coach-tile{transition-delay:90ms}.coach.open .coach-next{transition-delay:.13s}.set-line:not(.active) .num-box.suggested:not(.on) .num-val{color:var(--accent-text)}.set-line .num-box{position:relative}.effort{opacity:0;transition:grid-template-rows var(--t-med) var(--ease-out), opacity var(--t-fast) ease;grid-template-rows:0fr;display:grid}.effort.open{opacity:1;transition:grid-template-rows var(--t-slow) var(--ease-out), opacity var(--t-med) ease 60ms;grid-template-rows:1fr}.effort-clip{min-height:0;overflow:hidden}.effort-seg{transition:translate var(--t-slow) var(--ease-out);grid-template-columns:repeat(4,1fr);margin:-2px 38px 6px 44px;display:grid;position:relative;translate:0 -3px}.effort.open .effort-seg{translate:0}.effort-thumb{background:var(--accent-tint);opacity:0;width:25%;scale:.9;translate:calc(var(--at) * 100%) 0;transition:translate var(--t-med) var(--ease-out), opacity var(--t-fast) ease, scale var(--t-med) var(--ease-spring);border-radius:13px;position:absolute;top:0;bottom:0;left:0}.effort-thumb.on{opacity:1;scale:1}.effort-seg button{height:26px;color:var(--faint);letter-spacing:-.005em;transition:color var(--t-med) ease, scale var(--t-fast) var(--ease-out);border-radius:13px;justify-content:center;align-items:center;gap:5px;font-size:12px;font-weight:600;display:flex;position:relative}.effort-seg button:active{color:var(--text-2);scale:.94}.effort-seg button.on{color:var(--accent-text)}.effort-seg .effort-bars{height:7px}.effort-seg .effort-bars i{width:2px}.effort-seg .effort-bars i:first-child{height:2px}.effort-seg .effort-bars i:nth-child(2){height:3.5px}.effort-seg .effort-bars i:nth-child(3){height:5px}.effort-seg .effort-bars i:nth-child(4){height:7px}.effort-bars{align-items:flex-end;gap:1.5px;height:9px;display:inline-flex}.effort-bars i{opacity:.28;width:2.5px;transition:opacity var(--t-med) ease;background:currentColor;border-radius:1px}.effort-bars i:first-child{height:3px}.effort-bars i:nth-child(2){height:5px}.effort-bars i:nth-child(3){height:7px}.effort-bars i:nth-child(4){height:9px}.effort-bars i.on{opacity:1}.effort-tag{background:var(--surface);height:16px;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);letter-spacing:.01em;white-space:nowrap;cursor:pointer;animation:effort-tag-in var(--t-med) var(--ease-out) both;border-radius:8px;align-items:center;gap:5px;padding:0 7px 0 6px;font-size:10px;font-weight:650;line-height:1;display:flex;position:absolute;bottom:-8px;left:50%;translate:-50%}.effort-tag .effort-bars{height:7px;color:var(--accent-text)}.effort-tag .effort-bars i:first-child{height:2px}.effort-tag .effort-bars i:nth-child(2){height:3.5px}.effort-tag .effort-bars i:nth-child(3){height:5px}.effort-tag .effort-bars i:nth-child(4){height:7px}.effort-tag .effort-bars i{opacity:.25;width:2px}.effort-tag .effort-bars i.on{opacity:1}@keyframes effort-tag-in{0%{opacity:0;scale:.85}}@media (prefers-reduced-motion:reduce){.effort,.effort.open,.effort-seg,.effort-thumb{transition:none}.effort-tag{animation:none}}.pr-badge{background:var(--accent);height:18px;color:var(--on-accent);animation:pr-pop .42s var(--ease-spring) both;border-radius:9px;align-items:center;gap:3px;padding:0 7px 0 6px;font-size:11px;font-weight:800;line-height:1;display:flex;position:absolute;top:-9px;right:10px}@keyframes pr-pop{0%{opacity:0;transform:scale(.4)}}.effort-btn{height:44px;color:var(--faint);transition:color var(--t-med) ease;place-items:center;display:grid;position:relative}.effort-btn svg{transition:rotate var(--t-slow) var(--ease-out)}.effort-btn.open{color:var(--text-2)}.effort-btn.open svg{rotate:180deg}.swipe{grid-template-rows:1fr;margin-bottom:0;display:grid}.swipe.gone{transition:grid-template-rows .34s var(--ease-out) .14s, margin-bottom .34s var(--ease-out) .14s;grid-template-rows:0fr;margin-bottom:-12px}.swipe-fold{min-height:0;margin:-10px 0;padding:10px 0;overflow:hidden}.swipe:not(.gone) .swipe-fold{overflow:visible}.swipe-clip{min-height:0;margin:-10px 0;padding:10px 0;position:relative;overflow:hidden}.swipe-row{background:var(--bg);touch-action:pan-y;transition:transform .42s var(--ease-spring);will-change:transform;position:relative}.swipe.gone .swipe-row{transition:transform .26s var(--ease-in)}.swipe.gone .swipe-delete{opacity:0;transition:opacity .2s}.swipe-delete{width:84px;color:var(--muted);opacity:var(--reveal,0);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex;position:absolute;top:0;bottom:0;right:0}.swipe-delete-dot{background:var(--danger);color:#fff;width:44px;height:44px;scale:calc(.55 + .45 * var(--reveal,0));transition:scale .32s var(--ease-spring);border-radius:50%;place-items:center;display:grid}.swipe-delete:active .swipe-delete-dot{scale:.9}.swipe.deep .swipe-delete{opacity:1}.swipe.deep .swipe-delete-dot{scale:1.12}.add-set{background:var(--surface-2);width:100%;height:56px;color:var(--accent-text);border-radius:28px;justify-content:center;align-items:center;gap:8px;margin-top:18px;font-size:17px;font-weight:600;display:flex}.rest-spacer{height:90px}.keypad-spacer{height:400px}.logger-dock{pointer-events:none;position:absolute;bottom:0;left:0;right:0}.logger-dock>*{pointer-events:auto}.rest-row{padding:0 16px calc(var(--safe-bottom) + 12px);pointer-events:none;align-items:center;gap:10px;display:flex}.rest-row>*{pointer-events:auto}.logger-dock:has(.keypad) .rest-row{padding-bottom:12px}.rest-pill{background:var(--accent);height:42px;color:var(--on-accent);font-variant-numeric:tabular-nums;border-radius:21px;align-items:center;gap:10px;padding:0 20px;font-size:18px;font-weight:600;display:inline-flex}.rest-pill.running{background:var(--accent-tint);color:var(--accent-text);box-shadow:inset 0 0 0 1.5px var(--accent)}.rest-edit{border:1.5px solid var(--line-strong);width:40px;height:40px;color:var(--accent-text);background:var(--bg);border-radius:50%;place-items:center;display:grid}.keypad{padding:14px 12px calc(var(--safe-bottom) + 12px);background:var(--surface);-webkit-user-select:none;user-select:none;border-radius:26px 26px 0 0;animation:.22s rise;position:relative;box-shadow:0 -8px 30px #00000080}.keypad-done{background:var(--contrast);height:42px;color:var(--on-contrast);box-shadow:0 6px 20px var(--shadow);border-radius:21px;padding:0 22px;font-size:16px;font-weight:600;position:absolute;top:-54px;right:14px}.keypad-body{grid-template-columns:72px 1fr;gap:12px;display:grid}.keypad-chips{flex-direction:column;justify-content:space-between;gap:8px;display:flex}.keypad-chips button{border:1.5px solid var(--accent-line);height:40px;color:var(--accent-text);border-radius:20px;font-size:16px;font-weight:600}.keypad-chips button:active{background:var(--accent-tint)}.keypad-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.keypad-grid button{background:var(--surface-2);height:52px;color:var(--text);border-radius:12px;place-items:center;font-size:26px;display:grid}.keypad-grid button:active{background:var(--surface-3)}.keypad-grid button.plain{background:0 0}.start-menu .sheet-body{padding-top:4px}.start-title{font-family:var(--display);font-stretch:var(--display-stretch);font-size:28px;font-weight:var(--display-weight);letter-spacing:var(--display-tracking);margin:8px 0 18px}.start-empty,.start-routine{border-radius:var(--radius);background:var(--surface-2);text-align:left;width:100%;color:var(--text-2);align-items:center;gap:14px;padding:14px 16px;display:flex}.start-empty .row-main strong,.start-routine .row-main strong{color:var(--text)}.plus-circle.small{flex:none;width:44px;height:44px;margin:0}.start-routines{flex-direction:column;gap:8px;display:flex}.start-routine{padding:10px 16px 10px 8px}.bodymap.start-map{flex:none;width:64px;margin:0}.bodymap.start-map .bodymap-figure{width:50%}.start-hint{color:var(--muted);margin:0 16px;font-size:15px}.sheet-body.with-keypad{padding-bottom:420px}.sheet.half.routine-exercise-sheet{top:max(calc(var(--safe-top) + 12px), calc(100% - 640px))}.routine-exercise-sheet .sheet-body{overflow:hidden}.plan-fields{grid-template-columns:1fr 1fr;gap:12px;margin-top:22px;display:grid}.plan-field{flex-direction:column;gap:8px;display:flex}.plan-field>span,.plan-order>span{color:var(--muted);font-size:13px;font-weight:600}.plan-field .num-box{color:var(--text);font-size:24px}.plan-field .num-box.on{color:var(--on-accent)}.plan-order{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.plan-order .order-row{justify-content:flex-end;margin:0}.head-actions{gap:8px;display:flex}.sheet.insights-sheet{background:var(--bg);z-index:2}.insights-h{color:var(--muted);margin:28px 0 10px;font-size:13px;font-weight:600}.insights-card{border-radius:var(--radius);background:var(--surface);padding:6px 16px}.insights-when{margin:10px 0 4px;font-weight:600}.insights-when span{color:var(--muted);font-weight:400}.insights-empty{color:var(--muted);margin:0;font-size:15px}.insights-empty.chart{place-items:center;height:200px;display:grid}.segmented{background:var(--surface-2);border-radius:12px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.segmented button{height:36px;color:var(--muted);border-radius:9px;font-size:15px;font-weight:600}.segmented button.on{background:var(--surface-4);color:var(--text)}.insights-range{text-align:center;color:var(--muted);margin:16px 0 6px;font-size:14px;font-weight:600}.pchart{touch-action:pan-y;-webkit-user-select:none;user-select:none;height:220px;position:relative}.pchart svg{width:100%;height:200px;position:absolute;inset:0;overflow:visible}.pchart-grid{stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke}.pchart-line{fill:none;stroke:var(--accent-text);stroke-width:3px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.pchart-dot{fill:var(--accent)}.pchart-guide{stroke:var(--faint);stroke-width:1px;stroke-dasharray:5 5;vector-effect:non-scaling-stroke}.pchart-cursor{stroke:var(--text);stroke-width:2px;vector-effect:non-scaling-stroke}.pchart-knob{fill:var(--text-2);stroke:var(--accent-text);stroke-width:3px;vector-effect:non-scaling-stroke}.pchart-yaxis span{color:var(--muted);white-space:nowrap;font-size:11px;position:absolute;right:0;transform:translateY(-50%)}.pchart-xaxis span{color:var(--faint);white-space:nowrap;font-size:11px;position:absolute;top:204px;transform:translate(-50%)}.pchart-tip{background:var(--surface-2);text-align:center;pointer-events:none;white-space:nowrap;border-radius:10px;padding:6px 12px;position:absolute;top:-44px;transform:translate(-50%)}.pchart-tip strong{font-size:16px;display:block}.pchart-tip small{color:var(--muted);font-size:12px}.range-chips{scrollbar-width:none;gap:4px;margin:14px -16px 0;padding:0 16px;display:flex;overflow-x:auto}.range-chips::-webkit-scrollbar{display:none}.range-chips button{height:34px;color:var(--faint);border-radius:9px;flex:none;padding:0 13px;font-size:15px;font-weight:600}.range-chips button.on{background:var(--surface-2);color:var(--text)}.records .record{justify-content:space-between;align-items:center;padding:12px 0;display:flex}.records .record+.record{border-top:.5px solid var(--line)}.record span{flex-direction:column;display:flex}.record small{color:var(--muted);font-size:13px}.record b{color:var(--accent-text);font-size:17px}.week-card{padding:20px 20px 4px}.week-card-head{justify-content:space-between;align-items:flex-end;display:flex}.week-card-head small{color:var(--accent-text);font-size:13px;font-weight:600;display:block}.week-card-head strong{font-size:22px}.week-card-stats{color:var(--muted);gap:16px;font-size:15px;display:flex}.week-card-stats b{color:var(--text);font-size:22px}.week-card .week-dots{padding:16px 0}.progress-empty{color:var(--muted);margin:0 4px;font-size:15px}.link-btn{color:var(--accent-text);margin:10px auto 0;font-size:15px;font-weight:600;display:block}.stat-grid{grid-template-columns:1fr 1fr;gap:18px 12px;display:grid}.stat-grid b{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);font-size:30px;display:block}.stat-grid b i{color:var(--faint);font-size:22px;font-style:normal}.stat-grid span{color:var(--muted);font-size:15px}.ex-card{padding:8px 20px 18px}.ex-select{text-align:left;width:100%;color:var(--muted);align-items:center;gap:12px;padding:12px 0 16px;display:flex}.ex-select .row-main strong{color:var(--text);font-size:22px;font-weight:600}.ex-card .link-btn{margin-top:16px}.ex-picker-sheet .inset-list>button svg{color:var(--accent-text)}.picker-root-head{justify-content:space-between;align-items:flex-end;display:flex}.picker-root-head .icon-btn{color:var(--accent-text);margin-bottom:4px}.no-results{flex-direction:column;align-items:center;display:flex}.no-results .empty-note{margin-bottom:14px}.sheet.new-exercise-sheet{background:var(--bg)}.form-head{grid-template-columns:40px 1fr 40px;align-items:center;margin:6px 0 18px;display:grid}.form-head h2{text-align:center;margin:0;font-size:18px;font-weight:600}.round-btn.confirm{background:var(--accent);color:var(--on-accent)}.round-btn.confirm:disabled{opacity:.35}.form-label{color:var(--muted);margin:18px 0 8px 4px;font-size:13px;font-weight:600}.form-input{background:var(--surface-2);width:100%;height:54px;color:var(--text);border:0;border-radius:27px;outline:none;padding:0 18px;font-size:18px}.form-hint{color:var(--muted);margin:8px 4px 0;font-size:13px}.form-list{margin-top:18px}.form-list>button{min-height:52px}.form-list .value{min-width:0;max-width:60%;color:var(--muted)}.form-list .value.set{color:var(--accent-text)}.form-list .value.missing{color:#ff8a7a}.value-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.form-hint.top{margin:14px 4px 10px}.check-list>button svg{color:var(--accent-text)}.bm-muscle.tappable{cursor:pointer}.muscle-page{flex-direction:column;display:flex}.bodymap.picker-map{margin-top:6px}.bodymap.picker-map .bodymap-figure{width:48%;max-width:200px}.muscle-picked{text-align:center;color:var(--text);margin:14px 0 0;font-size:20px;font-weight:600}.muscle-picked.empty{color:var(--muted);font-size:16px;font-weight:500}.confirm-btn{border-radius:26px;width:100%;height:52px;margin-top:18px;display:flex}.confirm-btn:disabled{opacity:.35}.form-list+.form-hint{margin-bottom:4px}.form-switch{justify-content:space-between;align-items:center;min-height:52px;padding:0 16px;font-size:18px;display:flex}.form-switch.off{color:var(--faint)}.toggle{background:var(--surface-3);border-radius:16px;width:52px;height:32px;transition:background .2s;position:relative}.toggle span{background:#fff;border-radius:50%;width:28px;height:28px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0000004d}.toggle.on{background:var(--accent)}.toggle.on span{transform:translate(20px)}.popmenu-root{z-index:80;position:absolute;inset:0}.popmenu{background:var(--glass);-webkit-backdrop-filter:blur(22px)saturate(1.9);transform-origin:100% 0;border-radius:22px;min-width:230px;max-height:70%;padding:6px 0;animation:.16s ease-out pop;position:absolute;overflow-y:auto;box-shadow:inset 0 0 0 .5px #ffffff24,0 18px 50px #00000073}.popmenu button{text-shadow:0 1px 2px #00000059;text-align:left;align-items:center;gap:8px;width:100%;height:46px;padding:0 22px 0 12px;font-size:17px;display:flex}.popmenu button:active{background:var(--hover)}.popmenu-check{width:22px;color:var(--text);place-items:center;display:grid}@keyframes pop{0%{opacity:0;transform:scale(.92)}}.week-swipe{touch-action:pan-y;-webkit-user-select:none;user-select:none}.roll{vertical-align:bottom;margin-block:-.12em;padding-block:.12em;display:inline-grid;position:relative;overflow:hidden}.roll>span{white-space:nowrap;grid-area:1/1}.week-totals .roll{justify-items:end}.roll-in{animation:.22s cubic-bezier(.22,.8,.24,1) roll-in-down}.roll-out{animation:.22s cubic-bezier(.22,.8,.24,1) forwards roll-out-down}.roll.up .roll-in{animation-name:roll-in-up}.roll.up .roll-out{animation-name:roll-out-up}@keyframes roll-in-down{0%{opacity:0;transform:translateY(-100%)}}@keyframes roll-out-down{to{opacity:0;transform:translateY(100%)}}@keyframes roll-in-up{0%{opacity:0;transform:translateY(100%)}}@keyframes roll-out-up{to{opacity:0;transform:translateY(-100%)}}.week-day{color:var(--muted);border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:6px 6px 8px;font-size:15px;font-weight:600;display:flex}.week-day i{border:1.5px solid var(--line-strong);width:16px;height:16px;color:var(--on-accent);border-radius:50%;place-items:center;display:grid}.week-day i.on{border-color:var(--accent);background:var(--accent)}.week-day.on{background:var(--surface-2);color:var(--text)}.week-day:disabled{opacity:.35}.sheet-root.leaving{pointer-events:none}.sheet-root.leaving .sheet-backdrop{opacity:0;transition:opacity .28s}.action-sheet{transition:transform .22s var(--ease-in), opacity .22s}.action-root.leaving .action-sheet{opacity:.6;transform:translateY(calc(100% + 16px))}.action-root.leaving .sheet-backdrop{transition-duration:.22s}.popmenu-root.leaving{pointer-events:none}.popmenu-root.leaving .popmenu{opacity:0;transition:opacity .14s ease-in,transform .14s ease-in;transform:scale(.92)}.page{background:var(--bg);touch-action:pan-y;position:absolute;inset:0}.page.motion-push{z-index:2;box-shadow:-10px 0 28px var(--shadow);animation:.4s cubic-bezier(.2,.9,.3,1) both page-push}.page.exit-push{z-index:1;pointer-events:none;animation:.4s cubic-bezier(.2,.9,.3,1) both page-under-out}.page.exit-pop{z-index:2;box-shadow:-10px 0 28px var(--shadow);pointer-events:none;animation:.36s cubic-bezier(.3,.7,.3,1) both page-push-out}.page.motion-pop{z-index:1;animation:.36s cubic-bezier(.3,.7,.3,1) both page-under-in}.page.motion-tab{z-index:2;animation:.22s ease-out both page-tab-in}.page.exit-tab{z-index:1;pointer-events:none;animation:.16s ease-in both page-tab-out}.page.is-hidden{visibility:hidden;pointer-events:none}.page.is-under{opacity:.6;pointer-events:none;transform:translate(-28%)}.is-under~.page.is-top{box-shadow:-10px 0 28px var(--shadow)}.page.is-top:has(~.is-under){box-shadow:-10px 0 28px var(--shadow)}@keyframes page-push{0%{transform:translate(100%)}}@keyframes page-push-out{to{transform:translate(100%)}}@keyframes page-under-out{to{opacity:.6;transform:translate(-28%)}}@keyframes page-under-in{0%{opacity:.6;transform:translate(-28%)}}@keyframes page-tab-in{0%{opacity:0;transform:translateY(6px)}}@keyframes page-tab-out{to{opacity:0}}@keyframes fade-in{0%{opacity:0}}.subview.push{animation:subview-push var(--t-med) var(--ease-out)}.subview.pop{animation:subview-pop var(--t-med) var(--ease-out)}@keyframes subview-push{0%{opacity:0;transform:translate(40%)}}@keyframes subview-pop{0%{opacity:0;transform:translate(-30%)}}.set-line,.exercise-row,.workout-row,.history-card,.start-routine,.nav-card,.record{animation:item-in var(--t-med) var(--ease-out) both}@keyframes item-in{0%{opacity:0}}.history-card:nth-of-type(2){animation-delay:30ms}.history-card:nth-of-type(3){animation-delay:60ms}.history-card:nth-of-type(4){animation-delay:90ms}.history-card:nth-of-type(n+5){animation-delay:.12s}.empty-state,.progress-empty,.empty-note,.no-results{animation:fade-in var(--t-med) ease-out both}.keypad{animation:keypad-in var(--t-med) var(--ease-out)}.keypad.leaving{animation:keypad-out .2s var(--ease-in) forwards}@keyframes keypad-in{0%{transform:translateY(100%)}}@keyframes keypad-out{to{transform:translateY(100%)}}.set-num.flash{animation:pop-check .36s var(--ease-spring)}@keyframes pop-check{0%{transform:scale(.6)}to{transform:scale(1)}}.set-num,.set-line .num-box{transition:background .2s,color .2s,border-color .2s,box-shadow .2s}.pill-btn,.add-set,.round-btn,.start-btn,.tab,.rest-pill,.order-dot,.keypad-grid button,.keypad-chips button{transition-property:scale,background,color,opacity,box-shadow;transition-duration:.18s;transition-timing-function:var(--ease-out)}.pill-btn:active:not(:disabled),.add-set:active,.round-btn:active:not(:disabled),.start-btn:active,.tab:active,.rest-pill:active,.order-dot:active,.keypad-grid button:active,.keypad-chips button:active{scale:.96}.inset-list>button,.inset-list>.list-button{transition:background .15s}.inset-list>.list-button{cursor:pointer}.inset-list>button:active,.inset-list>.list-button:active{background:var(--hover);transition-delay:90ms}.tab{transition:color .24s ease, scale .18s var(--ease-out)}.tab:active{scale:.92}.segmented button,.range-chips button{transition:background .2s,color .2s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}*{scrollbar-width:none}::-webkit-scrollbar{width:0;height:0;display:none}.swatches{grid-template-columns:repeat(5,1fr);justify-items:center;gap:14px 6px;display:grid}.swatch{background:var(--swatch);width:44px;height:44px;box-shadow:0 0 0 0 var(--surface), 0 0 0 0 var(--swatch);transition:box-shadow .2s var(--ease-out), scale .18s var(--ease-out);border-radius:50%;place-items:center;display:grid}.swatch.on{box-shadow:0 0 0 3px var(--surface), 0 0 0 5px var(--swatch)}.swatch:active{scale:.92}:root[data-theme=light] .popmenu button{text-shadow:none}:root[data-theme=light] .popmenu{box-shadow:inset 0 0 0 .5px #00000014,0 18px 50px #0000002e}:root[data-theme=light] .tabbar{box-shadow:0 8px 30px #0000001f}.theme-switch{grid-template-columns:repeat(3,1fr)}.swatch:after{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #0000001f}.swatch{position:relative}.detail-collapse{opacity:0;transition:grid-template-rows var(--t-med) var(--ease-out), opacity .2s ease;grid-template-rows:0fr;display:grid}.detail-collapse>.detail-sets{min-height:0;overflow:hidden}.detail-entry.open .detail-collapse{opacity:1;grid-template-rows:1fr}.detail-entry:not(.open) .detail-sets{margin-bottom:0;padding-top:0;padding-bottom:0}.detail-sets{transition:padding .28s var(--ease-out), margin .28s var(--ease-out)}.detail-set{transition:opacity .24s;transition-delay:calc(var(--i,0) * 30ms)}.detail-entry:not(.open) .detail-set{opacity:0;transition-delay:0s}.detail-chevron{color:var(--faint);transition:transform var(--t-med) var(--ease-out);flex:none}.detail-entry.open .detail-chevron{transform:rotate(90deg)}.theme-cards{grid-template-columns:repeat(3,1fr);gap:10px;padding:14px;display:grid}.theme-card{color:var(--muted);flex-direction:column;align-items:center;gap:8px;font-size:15px;display:flex}.theme-card.on{color:var(--accent-text)}.theme-preview{aspect-ratio:1.55;width:100%;box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow var(--t-fast) ease;border-radius:14px;flex-direction:column;gap:5px;padding:10px;display:flex;position:relative}.theme-card.on .theme-preview{box-shadow:0 0 0 2px var(--accent)}.theme-card.light .theme-preview{background:#fff}.theme-card.dark .theme-preview{background:#1f1f1e}.theme-card.system .theme-preview{background:linear-gradient(135deg,#fff 50%,#1f1f1e 50%)}.theme-preview i{background:#9a978e;border-radius:2px;width:55%;height:4px;display:block}.theme-preview i+i{width:38%}.theme-preview b{background:var(--accent);border-radius:50%;width:14px;height:14px;position:absolute;bottom:10px;right:10px}.sheet.half .num-box{background:var(--surface-2)}.stat-row{margin:14px 0 6px}.stat-row-caption{color:var(--muted);margin:0 0 6px;font-size:14px}.stat-row-items{gap:28px;display:flex}.stat-row-item{flex-direction:column;gap:2px;display:flex}.stat-row-item small{color:var(--muted);font-size:13px}.stat-row-item b{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);font-variant-numeric:tabular-nums lining-nums;font-size:24px}.stat-row-item b.accent{color:var(--accent-text)}.set-volume{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:14px}.sheet-root:has(.share-sheet){z-index:60}.share-body{flex-direction:column;align-items:center;padding-top:18px;display:flex;position:relative}.share-close{z-index:2;position:absolute;top:14px;right:16px}.share-preview{aspect-ratio:9/16;background:var(--surface);min-height:0;max-height:58vh;box-shadow:0 18px 44px var(--shadow);touch-action:none;border-radius:24px;flex:1;margin-top:26px;position:relative;overflow:hidden}.share-preview img{object-fit:cover;-webkit-touch-callout:default;width:100%;height:100%;display:block;position:absolute;inset:0}.share-preview.movable{cursor:grab}.share-preview.movable img{-webkit-touch-callout:none;pointer-events:none}.share-drag-hint{color:#fff;-webkit-backdrop-filter:blur(12px);pointer-events:none;animation:fade-in var(--t-med) ease-out both;background:#00000073;border-radius:999px;padding:5px 12px;font-size:12.5px;position:absolute;bottom:12px;left:50%;translate:-50%}.share-loading{background:var(--surface-2);width:100%;height:100%}.share-tray{place-items:center;width:100%;height:64px;display:grid}.share-options{animation:fade-in var(--t-fast) ease-out both;align-items:center;gap:12px;display:flex}.share-thumb{width:34px;height:52px;box-shadow:0 0 0 2px var(--bg), 0 0 0 2px transparent;transition:box-shadow var(--t-fast) ease;border-radius:9px}.share-thumb.on{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--text)}.share-thumb.solid{background:var(--swatch)}.share-thumb.contrast{background:linear-gradient(160deg, var(--swatch) 50%, #151515 50%);outline:1px solid var(--line-strong);outline-offset:-1px}.share-thumb.gradient,.share-tool-icon.bg.gradient{background:linear-gradient(150deg, var(--swatch), color-mix(in srgb, var(--swatch) 55%, #000));background:linear-gradient(150deg, oklch(from var(--swatch) calc(l + .04) c calc(h - 18)), var(--swatch), oklch(from var(--swatch) calc(l - .2) c calc(h + 42)))}.share-thumb.dark,.share-tool-icon.bg.dark{background:radial-gradient(120% 60% at 50% 105%, var(--swatch), #0f0f0e 70%);box-shadow:inset 0 0 0 1px var(--line-strong)}.share-thumb.dark.on{box-shadow:inset 0 0 0 1px var(--line-strong), 0 0 0 2px var(--bg), 0 0 0 4px var(--text)}.share-thumb.dots,.share-tool-icon.bg.dots{background:radial-gradient(circle, #ffffff73 1.2px, transparent 1.6px) 0 0 / 6px 6px, linear-gradient(var(--swatch), color-mix(in srgb, var(--swatch) 62%, #000))}.share-thumb.image{background:var(--surface-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239a9890' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='10' r='1.6'/%3E%3Cpath d='m21 16-5-5-8 8'/%3E%3C/svg%3E") center / 18px no-repeat}.share-dot{background:var(--swatch);color:#151515;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.share-font{width:52px;height:40px;color:var(--muted);transition:background var(--t-fast) ease, color var(--t-fast) ease;border-radius:12px;font-size:20px}.share-font.on{background:var(--surface-2);color:var(--text)}.share-font.serif,.share-tool-icon.aa.serif{font-family:var(--display);font-stretch:var(--display-stretch);font-weight:var(--display-weight)}.share-font.sans,.share-tool-icon.aa.sans{font-weight:700}.share-font.condensed,.share-tool-icon.aa.condensed{font-family:Archivo,Arial Narrow,sans-serif;font-weight:900;font-stretch:62%}.share-tools{grid-template-columns:repeat(5,1fr);width:100%;display:grid}.share-tool{color:var(--muted);transition:color var(--t-fast) ease;flex-direction:column;align-items:center;gap:6px;font-size:12px;display:flex}.share-tool.on{color:var(--text)}.share-tool-icon{background:var(--surface);width:40px;height:40px;color:var(--text);transition:box-shadow var(--t-fast) ease, opacity var(--t-fast) ease;border-radius:50%;place-items:center;display:grid}.share-tool.on .share-tool-icon{box-shadow:0 0 0 2px var(--text)}.share-tool-icon.bg.solid{background:var(--swatch)}.share-tool-icon.bg.contrast{background:linear-gradient(160deg, var(--swatch) 50%, #151515 50%);box-shadow:inset 0 0 0 1px var(--line-strong)}.share-tool-icon.bg.image{background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239a9890' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='10' r='1.6'/%3E%3Cpath d='m21 16-5-5-8 8'/%3E%3C/svg%3E") center / 18px no-repeat}.share-tool-icon.dot:after{content:"";background:var(--swatch);border-radius:50%;width:18px;height:18px}.share-tool-icon.aa{font-size:16px}.share-tool-icon.look{background:var(--swatch)}.share-tool-icon.look i{border-radius:4px;width:16px;height:20px;display:block}.share-look{background:var(--swatch);width:34px;height:52px;box-shadow:0 0 0 2px var(--bg), 0 0 0 2px transparent;transition:box-shadow var(--t-fast) ease;border-radius:9px;place-items:center;display:grid}.share-look.on{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--text)}.share-look span{border-radius:5px;width:22px;height:30px}.share-tool-icon.look.glass i,.share-look.glass span{background:#14141373;box-shadow:inset 0 0 0 1px #ffffff59}.share-tool-icon.look.solid i,.share-look.solid span{background:#161615}.share-tool-icon.look.light i,.share-look.light span{background:#f8f7f2}.share-tool-icon.stats{justify-content:center;align-items:flex-end;gap:3px;padding-bottom:12px;display:flex}.share-tool-icon.stats i{background:currentColor;border-radius:2px;width:4px}.share-tool-icon.stats i:first-child{height:8px}.share-tool-icon.stats i:nth-child(2){height:14px}.share-tool-icon.stats i:nth-child(3){height:11px}.share-tool.off .share-tool-icon{opacity:.4}.share-tool:disabled{opacity:.35}.share-actions{grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:18px;display:grid}.share-save,.share-go{border-radius:27px;height:54px;font-size:17px;font-weight:600}.share-save{background:var(--surface-2);color:var(--text)}.share-go{background:var(--contrast);color:var(--on-contrast)}.share-hint{text-align:center;min-height:1.3em;color:var(--muted);opacity:0;transition:opacity var(--t-med) ease;margin:10px 0 0;font-size:13px}.share-hint.show{opacity:1}.finished-actions{flex-direction:column;align-items:stretch;gap:6px;display:flex}.finished-actions .share-btn{border-radius:28px;height:56px;font-size:17px}.finished-row{color:var(--muted);justify-content:center;align-items:center;gap:4px;display:flex}.finished-link{color:var(--text);padding:10px 12px;font-size:16px;font-weight:500}.finished-tag{text-align:center;color:var(--muted);margin:0;font-size:13px}.segmented.share-fonts{grid-template-columns:repeat(3,1fr)}.share-layouts{scrollbar-width:none;max-width:100%;padding:0 4px;overflow-x:auto}.share-chip{background:var(--surface);height:36px;color:var(--muted);transition:background var(--t-fast) ease, color var(--t-fast) ease;border-radius:18px;flex:none;padding:0 14px;font-size:14px}.share-chip.on{background:var(--contrast);color:var(--on-contrast)}.share-tool-icon.layout{grid-template-columns:8px 8px;place-content:center;gap:3px;display:grid}.share-tool-icon.layout i{background:currentColor;border-radius:2px;width:8px;height:8px}.share-tool-icon.layout i:nth-child(4){opacity:.45}.share-pager{-webkit-backdrop-filter:blur(10px);pointer-events:none;background:#0000004d;border-radius:999px;gap:5px;padding:5px 8px;display:flex;position:absolute;top:10px;left:50%;translate:-50%}.share-pager i{width:5px;height:5px;transition:background var(--t-fast) ease, width var(--t-fast) ease;background:#ffffff73;border-radius:50%}.share-pager i.on{background:#fff;border-radius:3px;width:12px}.share-frame{transition:transform .24s var(--ease-out), opacity .24s ease}.share-frame.following{transition:none}.share-frame.enter-next{animation:share-in-next .38s var(--ease-out) both}.share-frame.enter-prev{animation:share-in-prev .38s var(--ease-out) both}.share-frame.exit-next{animation:share-out-next .38s var(--ease-out) both}.share-frame.exit-prev{animation:share-out-prev .38s var(--ease-out) both}.share-frame.enter-fade{animation:.26s both fade-in}.share-frame.exit-fade{animation:.26s both share-fade-out}@keyframes share-in-next{0%{opacity:0;transform:translate(55%)scale(.94)}}@keyframes share-in-prev{0%{opacity:0;transform:translate(-55%)scale(.94)}}@keyframes share-out-next{to{opacity:0;transform:translate(-55%)scale(.94)}}@keyframes share-out-prev{to{opacity:0;transform:translate(55%)scale(.94)}}@keyframes share-fade-out{to{opacity:0}}.share-layout-name{color:#fff;-webkit-backdrop-filter:blur(10px);pointer-events:none;background:#00000059;border-radius:999px;padding:4px 11px;font-size:12.5px;animation:1.6s both share-name;position:absolute;top:34px;left:50%;translate:-50%}@keyframes share-name{0%{opacity:0;transform:translateY(-4px)}15%,70%{opacity:1;transform:none}to{opacity:0}}.share-bg-layer{pointer-events:none}.share-track{will-change:transform;transition:transform .42s cubic-bezier(.2,.9,.25,1);display:flex;position:absolute;inset:0}.share-slide{flex:none;width:100%;height:100%;position:relative}.share-slide img{pointer-events:none}.share-final{animation:.2s both fade-in}.share-preview.movable .share-final{pointer-events:auto;-webkit-touch-callout:default}.share-viewer{z-index:80;padding:calc(var(--safe-top) + 24px) 24px calc(var(--safe-bottom) + 24px);background:#000;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:absolute;inset:0}.share-viewer img{-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto;touch-action:auto;border-radius:20px;max-width:100%;max-height:72vh}.share-viewer p{text-align:center;color:#ffffffb8;max-width:300px;margin:0;font-size:14px}.share-viewer-done{color:#fff;letter-spacing:.01em;-webkit-backdrop-filter:blur(20px)saturate(1.4);height:44px;transition:scale .16s var(--ease-out), background .16s ease;background:#ffffff21;border-radius:22px;padding:0 30px;font-size:16px;font-weight:600;box-shadow:inset 0 0 0 .5px #ffffff38}.share-viewer-done:active{background:#fff3;scale:.95}.share-viewer{animation:.24s ease-out both fade-in}.share-viewer img{animation:share-viewer-in .28s var(--ease-out) both}@keyframes share-viewer-in{0%{opacity:0;transform:scale(.96)}}.share-viewer-chrome{animation:.24s ease-out 80ms both fade-in}.pg-week{margin-top:18px}.pg-label{color:var(--muted);margin:0 0 4px;font-size:15px}.pg-hero{font-family:var(--display);font-stretch:var(--display-stretch);font-size:52px;font-weight:var(--display-weight);letter-spacing:var(--display-tracking);font-variant-numeric:tabular-nums lining-nums;margin:0;line-height:1.05}.pg-hero i{color:var(--muted);letter-spacing:0;font-size:.42em;font-style:normal}.pg-sub{color:var(--muted);margin:4px 0 0;font-size:14.5px}.pg-week .week-dots,.pg-week [class*=week-dots]{margin-top:18px}.pg-exercise{border-top:.5px solid var(--line);margin-top:40px;padding-top:26px}.pg-ex-select{text-align:left;align-items:center;gap:6px;max-width:100%;display:flex}.pg-ex-select strong{font-family:var(--display);font-stretch:var(--display-stretch);font-size:26px;font-weight:var(--display-weight);letter-spacing:var(--display-tracking);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pg-ex-select svg{color:var(--faint);flex:none}.pg-value{font-variant-numeric:tabular-nums;align-items:baseline;gap:10px;margin:18px 0 6px;font-size:22px;font-weight:500;display:flex}.pg-delta{font-size:15px;font-weight:600}.pg-delta.up{color:var(--accent-text)}.pg-delta.down{color:var(--muted)}.pchart.minimal .pchart-line{stroke-width:2.2px}.pchart-ends{color:var(--faint);justify-content:space-between;font-size:12px;display:flex;position:absolute;bottom:0;left:0;right:0}.pg-controls{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.pg-ranges,.pg-metric{gap:2px;display:flex}.pg-ranges button,.pg-metric button{height:32px;color:var(--faint);transition:color var(--t-fast) ease, background var(--t-fast) ease;border-radius:16px;padding:0 10px;font-size:13.5px;font-weight:500}.pg-ranges button.on,.pg-metric button.on{color:var(--text);background:var(--surface-2)}.pg-link{color:var(--muted);align-items:center;gap:2px;margin-top:14px;font-size:14.5px;display:inline-flex}.pg-alltime{border-top:.5px solid var(--line);margin-top:36px;padding-top:26px}.pg-list{margin:6px 0 0}.pg-list>div{justify-content:space-between;align-items:baseline;padding:13px 0;display:flex}.pg-list>div+div{border-top:.5px solid var(--line)}.pg-list dt{color:var(--text-2);font-size:16px}.pg-list dd{font-family:var(--display);font-stretch:var(--display-stretch);font-variant-numeric:tabular-nums lining-nums;margin:0;font-size:21px}.title-fonts{grid-template-columns:repeat(3,1fr);gap:8px;padding:12px;display:grid}.title-font{color:var(--muted);transition:background var(--t-fast) ease, color var(--t-fast) ease;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:12px 0 10px;font-size:13px;display:flex}.title-font.on{background:var(--surface-2);color:var(--text)}.title-font-sample{color:var(--text);font-size:30px;line-height:1}.title-font.on .title-font-sample{color:var(--accent-text)}.haptic{z-index:3;border-radius:inherit;position:absolute;inset:0;overflow:hidden}.haptic-switch{opacity:.011;cursor:pointer;border:0;width:500%;height:100%;margin:0;padding:0;position:absolute;top:0;left:-200%}.tab,.start-btn,.set-num,.add-set,.rest-pill,.keypad-grid button,.keypad-chips button,.toggle,.start-empty,.start-routine,.share-save,.share-go,.finished-actions .pill-btn{position:relative}.brand-foot{color:var(--muted);justify-content:center;align-items:center;gap:7px;margin:36px 0 8px;line-height:1;display:flex}.brand-foot svg{width:20px;height:20px;fill:var(--accent-text)}.brand-name{letter-spacing:-.02em;color:var(--text-2);font-family:"Source Serif 4",Georgia,serif;font-size:19px}.brand-lift{letter-spacing:.24em;text-transform:uppercase;font-size:9px;font-weight:600;transform:translateY(1px)}.pref-group{margin-top:28px}.pref-group:first-of-type{margin-top:12px}.pref-head{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px 16px;font-size:13px;font-weight:600}.pref-card{border-radius:var(--radius);background:var(--surface);overflow:hidden}.pref-note{color:var(--muted);margin:8px 16px 0;font-size:13px;line-height:1.4}.pref-row{text-align:left;width:100%;min-height:52px;transition:color var(--t-med) ease;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;display:flex;position:relative}.pref-card>*+:before{content:"";border-top:.5px solid var(--line);position:absolute;top:0;left:16px;right:0}.pref-card>*{position:relative}.pref-text{flex-direction:column;gap:3px;min-width:0;display:flex}.pref-title{color:var(--text);font-size:17px;line-height:1.25}.pref-sub{color:var(--muted);text-wrap:pretty;font-size:13px;line-height:1.35}.pref-row>:last-child:not(.pref-text){flex:none}.pref-action{cursor:pointer;color:var(--accent-text);text-decoration:none}.pref-action:active{background:var(--hover)}.pref-fold{opacity:0;transition:grid-template-rows var(--t-slow) var(--ease-out), opacity var(--t-med) ease;grid-template-rows:0fr;display:grid}.pref-fold.open{opacity:1;grid-template-rows:1fr}.pref-fold>div{min-height:0;overflow:hidden}.pref-card>.pref-fold:not(.open):before{opacity:0}.pref-fold .pref-row{padding-left:28px}.pref-choice{grid-template-columns:repeat(var(--n), 1fr);background:var(--surface-2);border-radius:10px;padding:2px;display:grid;position:relative}.pref-choice-thumb{width:calc((100% - 4px) / var(--n));background:var(--surface-4);box-shadow:0 1px 3px var(--shadow);translate:calc(var(--at) * 100%) 0;transition:translate var(--t-med) var(--ease-out);border-radius:8px;position:absolute;top:2px;bottom:2px;left:2px}.pref-choice button{min-width:44px;height:30px;color:var(--muted);transition:color var(--t-med) ease;border-radius:8px;padding:0 12px;font-size:14px;font-weight:600;position:relative}.pref-choice button.on{color:var(--text)}.pref-block{padding:14px 16px 16px}.pref-label{color:var(--text);justify-content:space-between;margin:0 0 12px;font-size:17px;display:flex}.pref-label span{color:var(--muted);font-size:15px}.prefs .theme-cards{padding:0}.prefs .swatches{grid-template-columns:repeat(9,1fr);gap:0}.prefs .swatch{width:30px;height:30px}.prefs .swatch.on{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--swatch)}.prefs .title-fonts{grid-template-columns:repeat(9,1fr);gap:2px;padding:0}.prefs .title-font{border-radius:10px;padding:8px 0}.prefs .title-font-sample{font-size:21px}@media (prefers-reduced-motion:reduce){.pref-fold,.pref-choice-thumb{transition:none}}.beta-entry{cursor:pointer}.beta-entry:active{background:var(--hover)}.beta-entry>svg{color:var(--faint);flex:none}.beta-entry .pref-text{flex:1}.beta-entry-icon{background:var(--accent-tint);width:34px;height:34px;color:var(--accent-text);border-radius:10px;flex:none;place-items:center;display:grid}.beta-entry-icon.ready{animation:2.8s ease-in-out infinite beta-nudge}@keyframes beta-nudge{0%,70%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 0%, transparent)}80%{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 22%, transparent)}}.beta-hero{animation:item-in var(--t-slow) var(--ease-out) both;margin:8px 4px 0}.beta-hero h1{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);text-wrap:balance;margin:0;font-size:32px;line-height:1.08}.beta-hero p{color:var(--muted);text-wrap:pretty;margin:12px 0 0;font-size:15px;line-height:1.45}.beta-step{align-items:center;gap:14px;min-height:60px;padding:12px 16px;display:flex;position:relative}.beta-step .pref-text{flex:1}.beta-mark{width:28px;height:28px;color:var(--on-accent);flex:none;place-items:center;font-size:13px;font-weight:700;display:grid;position:relative}.beta-mark .ring{position:absolute;inset:0;rotate:-90deg}.beta-mark circle{fill:none;stroke-width:2.5px}.beta-mark .track{stroke:var(--surface-3)}.beta-mark .fill{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:75.4;stroke-dashoffset:calc(75.4 * (1 - var(--p)));transition:stroke-dashoffset .6s var(--ease-out), fill .3s ease}.beta-step.done .fill{fill:var(--accent)}.beta-step.done .beta-mark>svg:last-child{animation:pop-check .36s var(--ease-spring) both;position:relative}.beta-step-survey .beta-mark{background:var(--accent);border-radius:50%}.beta-step-survey.locked .beta-mark{background:var(--surface-3);color:var(--muted)}.beta-step.locked .pref-title{color:var(--muted)}.beta-start{background:var(--accent);height:34px;color:var(--on-accent);transition:opacity var(--t-med) ease, scale var(--t-fast) var(--ease-out);border-radius:17px;flex:none;padding:0 16px;font-size:15px;font-weight:650}.beta-start:active{scale:.95}.beta-start:disabled{background:var(--surface-2);color:var(--faint)}.beta-spots{align-items:center;gap:10px;display:flex}.beta-spots-bar{background:var(--surface-3);border-radius:3px;flex:none;width:56px;height:5px;overflow:hidden}.beta-spots-bar i{height:100%;width:calc(var(--p) * 100%);background:var(--accent);min-width:5px;transition:width .8s var(--ease-out);border-radius:3px;display:block}.beta-founder{border-radius:var(--radius);background:radial-gradient(120% 90% at 50% 0%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%), var(--surface);box-shadow:inset 0 0 0 1px var(--accent-line);text-align:center;animation:beta-founder-in .6s var(--ease-spring) both;flex-direction:column;align-items:center;gap:4px;padding:28px 20px 22px;display:flex;position:relative;overflow:hidden}@keyframes beta-founder-in{0%{opacity:0;scale:.94}}.beta-founder-label{color:var(--accent-text);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.beta-founder-no{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);margin:6px 0 4px;font-size:64px;line-height:1}.beta-founder-years{font-size:18px;font-weight:600}.beta-founder-sub{max-width:280px;color:var(--muted);font-size:14px;line-height:1.4}.beta-founder-id{background:var(--surface-2);color:var(--muted);font-family:var(--mono);border-radius:8px;margin-top:14px;padding:4px 10px;font-size:12px}.beta-founder.waitlist{box-shadow:inset 0 0 0 1px var(--line);background:var(--surface)}.beta-invite{padding:16px}.pref-card.beta-invite>:before{display:none}.beta-invite-lead{margin:0;font-size:16px;line-height:1.4}.beta-friends{align-items:center;gap:12px;margin-top:14px;display:flex}.beta-dots{gap:6px;display:flex}.beta-dots i{width:22px;height:22px;box-shadow:inset 0 0 0 2px var(--surface-3);transition:background var(--t-med) ease, box-shadow var(--t-med) ease, scale var(--t-med) var(--ease-spring);border-radius:50%}.beta-dots i.on{background:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.beta-friends-text{color:var(--muted);font-size:14px}.beta-friends-next{color:var(--faint);white-space:nowrap;font-size:13px;display:block}.beta-invite-note{color:var(--faint);margin:12px 0 0;font-size:13px;line-height:1.4}.beta-invite-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.beta-btn{background:var(--surface-2);height:44px;color:var(--text);transition:scale var(--t-fast) var(--ease-out), background var(--t-med) ease;border-radius:22px;justify-content:center;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex;position:relative;overflow:hidden}.beta-btn:active{scale:.96}.beta-btn.primary{background:var(--accent);color:var(--on-accent)}.beta-btn:disabled{opacity:.4}.beta-btn-swap{display:grid}.beta-btn-swap>span{transition:translate var(--t-med) var(--ease-out), opacity var(--t-med) ease;grid-area:1/1;justify-content:center;align-items:center;gap:8px;display:flex}.beta-btn-swap>span:last-child{opacity:0;color:var(--accent-text);translate:0 120%}.beta-btn.copied .beta-btn-swap>span:first-child{opacity:0;translate:0 -120%}.beta-btn.copied .beta-btn-swap>span:last-child{opacity:1;translate:0}.screen.beta{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 96px)}.beta-fine{color:var(--faint);margin:24px 16px 8px;font-size:12.5px;line-height:1.45}.beta-fine p{margin:0 0 8px}.beta-fine strong{color:var(--muted);font-family:var(--mono);letter-spacing:.04em;font-weight:600}.survey{flex-direction:column;padding-top:14px;display:flex}.survey-head{align-items:center;gap:14px;margin-bottom:8px;display:flex}.survey-bar{background:var(--surface-2);border-radius:3px;flex:1;height:6px;overflow:hidden}.survey-bar i{height:100%;width:calc(var(--p) * 100%);background:var(--accent);transition:width .5s var(--ease-out);border-radius:3px;display:block}.survey-count{text-align:right;min-width:44px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:13px;font-weight:600}.survey-stage{flex:1;padding:18px 2px 8px}.survey-q.next{animation:survey-in-next .38s var(--ease-out) both}.survey-q.back{animation:survey-in-back .38s var(--ease-out) both}@keyframes survey-in-next{0%{opacity:0;translate:28px}}@keyframes survey-in-back{0%{opacity:0;translate:-28px}}.survey-title{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);text-wrap:balance;margin:0 0 20px;font-size:26px;line-height:1.15}.survey-options{flex-direction:column;gap:8px;display:flex}.survey-option{background:var(--surface);text-align:left;min-height:54px;transition:background var(--t-med) ease, box-shadow var(--t-med) ease, scale var(--t-fast) var(--ease-out), opacity var(--t-med) ease;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:17px;display:flex;position:relative;box-shadow:inset 0 0 0 1.5px #0000}.survey-option:active{scale:.98}.survey-option.on{background:var(--accent-tint);box-shadow:inset 0 0 0 1.5px var(--accent)}.survey-option.dim{opacity:.45}.survey-radio,.survey-rank-no{width:24px;height:24px;box-shadow:inset 0 0 0 1.5px var(--line-strong);color:#0000;transition:background var(--t-med) ease, box-shadow var(--t-med) ease, color var(--t-med) ease;border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.survey-option.on .survey-radio,.survey-option.on .survey-rank-no{background:var(--accent);box-shadow:none;color:var(--on-accent)}.survey-option.on .survey-radio svg,.survey-option.on .survey-rank-no{animation:pop-check .32s var(--ease-spring) both}.survey-follow{opacity:0;transition:grid-template-rows var(--t-slow) var(--ease-out), opacity var(--t-med) ease;grid-template-rows:0fr;display:grid}.survey-follow.open{opacity:1;grid-template-rows:1fr}.survey-follow>div{min-height:0;overflow:hidden}.survey-label{margin:18px 4px 8px;font-size:15px;font-weight:600;display:block}.survey-label span{color:var(--faint);font-weight:500}.survey textarea,.survey-email{background:var(--surface);width:100%;color:var(--text);font:inherit;resize:none;transition:box-shadow var(--t-med) ease;border:0;border-radius:16px;outline:none;padding:14px 16px;font-size:17px;line-height:1.4;box-shadow:inset 0 0 0 1.5px #0000}.survey textarea:focus,.survey-email:focus{box-shadow:inset 0 0 0 1.5px var(--accent)}.survey textarea::placeholder,.survey-email::placeholder{color:var(--faint)}.survey-hint{color:var(--muted);margin:10px 4px 0;font-size:14px;line-height:1.4}.survey-hint.bad{color:var(--danger)}.survey-hint.top{margin:-8px 0 16px}.survey-error{min-height:20px;color:var(--danger);opacity:0;transition:opacity var(--t-med) ease, translate var(--t-med) var(--ease-out);margin:4px 4px 8px;font-size:14px;line-height:1.4;translate:0 4px}.survey-error.show{opacity:1;translate:0}.survey-foot{background:linear-gradient(transparent, var(--bg) 12px);gap:10px;margin:0 -16px;padding:10px 16px 4px;display:flex;position:sticky;bottom:0}.survey-back{background:var(--surface-2);width:52px;height:52px;color:var(--text);transition:opacity var(--t-med) ease, scale var(--t-fast) var(--ease-out);border-radius:50%;flex:none;place-items:center;display:grid}.survey-back:disabled{opacity:0;pointer-events:none}.survey-back:active{scale:.94}.survey-next{background:var(--accent);height:52px;color:var(--on-accent);transition:opacity var(--t-med) ease, scale var(--t-fast) var(--ease-out), background var(--t-med) ease, color var(--t-med) ease;border-radius:26px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:17px;font-weight:650;display:flex;position:relative}.survey-next:active{scale:.97}.survey-next:disabled{background:var(--surface-2);color:var(--faint)}.survey-next.sending:disabled{background:var(--accent);color:#0000}.survey-spinner{border:2.5px solid var(--on-accent);opacity:0;width:20px;height:20px;transition:opacity var(--t-fast) ease;border-right-color:#0000;border-radius:50%;position:absolute}.survey-next.sending .survey-spinner{opacity:1;animation:.7s linear infinite survey-spin}@keyframes survey-spin{to{rotate:360deg}}.survey-done{text-align:center;animation:fade-in var(--t-med) ease both;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:48px 8px 8px;display:flex}.survey-done h2{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);margin:8px 0 0;font-size:30px}.survey-done p{max-width:300px;color:var(--muted);margin:0;font-size:16px;line-height:1.45}.survey-done-id{background:var(--surface-2);color:var(--muted);font-family:var(--mono);border-radius:8px;margin:6px 0 28px;padding:4px 10px;font-size:12px}.survey-done .survey-next{flex:none;width:100%}.survey-done-mark{fill:none;width:76px;height:76px;stroke:var(--accent);stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round}.survey-done-mark circle{stroke-dasharray:182.2;stroke-dashoffset:182.2px;transform-origin:50%;animation:survey-draw .6s var(--ease-out) 50ms forwards;rotate:-90deg}.survey-done-mark path{stroke-dasharray:40;stroke-dashoffset:40px;animation:survey-draw .35s var(--ease-out) .5s forwards}@keyframes survey-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.survey-q.next,.survey-q.back,.beta-founder,.beta-entry-icon.ready{animation:none}.survey-done-mark circle,.survey-done-mark path{stroke-dashoffset:0;animation:none}}.beta-code{margin:20px 16px 0}.beta-code-link{color:var(--accent-text);font-size:14px;font-weight:600}.beta-code-fold{opacity:0;transition:grid-template-rows var(--t-slow) var(--ease-out), opacity var(--t-med) ease;grid-template-rows:0fr;display:grid}.beta-code-fold.open{opacity:1;grid-template-rows:1fr}.beta-code-fold>div{min-height:0;overflow:hidden}.beta-code-row{gap:10px;padding:2px;display:flex}.beta-code-row input{background:var(--surface);min-width:0;height:44px;color:var(--text);font-family:var(--mono);letter-spacing:.06em;transition:box-shadow var(--t-med) ease;border:0;border-radius:22px;outline:none;flex:1;padding:0 16px;font-size:16px;box-shadow:inset 0 0 0 1.5px #0000}.beta-code-row input:focus{box-shadow:inset 0 0 0 1.5px var(--accent)}.beta-code-row .beta-btn{flex:none;padding:0 20px}.beta-code-row .beta-btn:disabled{background:var(--surface-2);color:var(--faint)}.beta-code-bad{color:var(--danger);margin:8px 16px 0;font-size:13px}.survey-pro{background:var(--accent-tint);box-shadow:inset 0 0 0 1px var(--accent-line);border-radius:16px;margin:-6px 0 18px;padding:14px 16px}.survey-pro-label{color:var(--accent-text);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700;display:block}.survey-pro ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.survey-pro li{align-items:flex-start;gap:8px;font-size:14.5px;line-height:1.35;display:flex}.survey-pro li svg{color:var(--accent-text);flex:none;margin-top:2px}.survey-pro-free{color:var(--muted);margin-top:10px;font-size:13px;line-height:1.35;display:block}.pref-coach .pref-text{flex:1}.pref-coach-mark{background:var(--accent-tint);border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.pro-badge{background:var(--accent);color:var(--on-accent);letter-spacing:.06em;text-transform:uppercase;vertical-align:2px;border-radius:6px;margin-left:4px;padding:1px 6px;font-size:10.5px;font-weight:800;display:inline-block}.coach .coach-compare,.coach .coach-tile{background:color-mix(in srgb, var(--surface-2) 70%, transparent)}.coach .coach-next{background:color-mix(in srgb, var(--accent) 12%, var(--surface-2))}.onb{z-index:300;padding-top:var(--safe-top);background:var(--bg);animation:onb-in .5s var(--ease-out) both;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes onb-in{0%{opacity:0}}.onb.leaving{opacity:0;pointer-events:none;transition:opacity .42s ease, scale .42s var(--ease-out);scale:1.04}.onb-top{justify-content:space-between;align-items:center;height:52px;padding:0 20px;display:flex}.onb-dots{gap:6px;display:flex}.onb-dots i{background:var(--surface-3);width:6px;height:6px;transition:width .45s var(--ease-out), background .3s ease;border-radius:3px}.onb-dots i.past{background:color-mix(in srgb, var(--accent) 45%, var(--surface-3))}.onb-dots i.on{background:var(--accent);width:22px}.onb-skip{color:var(--muted);padding:8px 4px;font-size:15px;font-weight:600;animation:.3s both onb-fade}@keyframes onb-fade{0%{opacity:0}}.onb-track{min-height:0;translate:calc(var(--at) * -100% + var(--dx)) 0;transition:translate .55s var(--ease-out);touch-action:pan-y;flex:1;display:flex}.onb-track.dragging{transition:none}.onb-page{flex-direction:column;flex:0 0 100%;min-height:0;display:flex}.onb-art{flex:1;place-items:center;min-height:0;padding:12px 28px 0;display:grid}.onb-copy{padding:0 28px 8px}.onb-eyebrow{color:var(--accent-text);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:700;display:inline-block}.onb-copy h1{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);text-wrap:balance;margin:0;font-size:30px;line-height:1.08}.onb-copy p{color:var(--muted);text-wrap:pretty;margin:12px 0 0;font-size:16px;line-height:1.45}.onb-page.on :is(.onb-eyebrow,h1,p,.onb-setup){animation:onb-copy-in .6s var(--ease-out) both}.onb-page.on h1{animation-delay:60ms}.onb-page.on p{animation-delay:.12s}.onb-page.on .onb-setup{animation-delay:.18s}@keyframes onb-copy-in{0%{opacity:0;translate:0 12px}}.onb-foot{padding:16px 20px calc(var(--safe-bottom) + 20px)}.onb-next{background:var(--accent);width:100%;height:54px;color:var(--on-accent);transition:scale var(--t-fast) var(--ease-out);border-radius:27px;font-size:17px;font-weight:650;position:relative}.onb-next:active{scale:.97}.onb-welcome{flex-direction:column;align-items:center;gap:18px;display:flex}.onb-welcome svg{width:132px;height:132px;overflow:visible}.onb-welcome rect{fill:var(--accent);transform-box:fill-box;transform-origin:50% 100%}.onb-welcome rect:first-child{opacity:.4}.onb-welcome rect:nth-child(2){opacity:.7}.onb-page.on .onb-welcome rect{animation:onb-rise .7s var(--ease-spring) both}.onb-page.on .onb-welcome rect:nth-child(2){animation-delay:.12s}.onb-page.on .onb-welcome rect:nth-child(3){animation-delay:.24s}@keyframes onb-rise{0%{opacity:0;translate:0 28px;scale:.6}}.onb-word{letter-spacing:-.01em;font-family:"Source Serif 4",Georgia,serif;font-size:34px}.onb-word small{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:600}.onb-page.on .onb-word{animation:onb-copy-in .7s var(--ease-out) .4s both}.onb-welcome.small svg{width:84px;height:84px}.onb-log,.onb-coach{flex-direction:column;gap:10px;width:min(100%,300px);display:flex;position:relative}.onb-set{grid-template-columns:34px 1fr 1fr;align-items:center;gap:10px;display:grid}.onb-page.on .onb-set{animation:onb-copy-in .55s var(--ease-out) both}.onb-page.on .onb-set.s1{animation-delay:80ms}.onb-page.on .onb-set.s2{animation-delay:.16s}.onb-circle{width:34px;height:34px;box-shadow:inset 0 0 0 2px var(--line-strong);color:var(--muted);border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid;position:relative}.onb-circle svg{opacity:0;position:absolute}.onb-set.s0 .onb-circle,.onb-set.s1 .onb-circle{background:var(--accent);box-shadow:none;color:var(--on-accent)}.onb-set.s0 .onb-circle b,.onb-set.s1 .onb-circle b{opacity:0}.onb-set.s0 .onb-circle svg,.onb-set.s1 .onb-circle svg{opacity:1}.onb-page.on .onb-set.s2 .onb-circle{animation:onb-tick .4s var(--ease-out) 1.1s both}.onb-page.on .onb-set.s2 .onb-circle b{animation:.2s 1.1s both onb-out}.onb-page.on .onb-set.s2 .onb-circle svg{animation:onb-check .45s var(--ease-spring) 1.2s both}@keyframes onb-tick{to{background:var(--accent);color:var(--on-accent);box-shadow:inset 0 0 #0000}}@keyframes onb-out{to{opacity:0}}@keyframes onb-check{0%{opacity:0;scale:.4}to{opacity:1;scale:1}}.onb-box{background:var(--surface);border-radius:14px;place-items:center;height:44px;font-size:16px;font-weight:600;display:grid}.onb-set.suggested .onb-box{color:var(--accent-text)}.onb-rest{background:var(--accent);color:var(--on-accent);font-variant-numeric:tabular-nums;opacity:0;border-radius:18px;align-self:flex-start;margin:8px 0 0 44px;padding:7px 16px;font-size:15px;font-weight:700}.onb-page.on .onb-rest{animation:onb-check .5s var(--ease-spring) 1.5s both}.onb-coach-card{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);border-radius:18px;flex-direction:column;gap:3px;padding:13px 15px 15px;display:flex}.onb-page.on .onb-coach-card{animation:onb-copy-in .6s var(--ease-out) both}.onb-page.on .onb-coach .onb-set{animation-delay:.25s}.onb-coach-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.onb-coach-top>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;font-size:11.5px;font-weight:650;display:inline-flex}.onb-coach-top i{background:var(--accent-tint);color:var(--accent-text);border-radius:6px;padding:2px 7px;font-size:12px;font-style:normal;font-weight:700}.onb-coach-card strong{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);font-size:20px}.onb-coach-card small{color:var(--muted);font-size:13.5px}.onb-founders{flex-direction:column;align-items:center;gap:26px;display:flex}.onb-days{gap:22px;display:flex}.onb-day{color:var(--on-accent);flex-direction:column;align-items:center;gap:8px;display:flex;position:relative}.onb-day svg{width:64px;height:64px;rotate:-90deg}.onb-day circle{fill:none;stroke-width:3px}.onb-day .track{stroke:var(--surface-3)}.onb-day .fill{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:94.3;stroke-dashoffset:94.3px}.onb-day>svg:nth-of-type(2){opacity:0;width:14px;height:14px;position:absolute;top:25px;rotate:0deg}.onb-day small{color:var(--muted);font-size:13px;font-weight:600}.onb-page.on .onb-day .fill{animation:onb-draw .7s var(--ease-out) both, onb-fill .3s ease both}.onb-page.on .onb-day>svg:nth-of-type(2){animation:onb-check .45s var(--ease-spring) both}.onb-page.on .onb-day.d1 .fill{animation-delay:.2s,.85s}.onb-page.on .onb-day.d2 .fill{animation-delay:.6s,1.25s}.onb-page.on .onb-day.d3 .fill{animation-delay:1s,1.65s}.onb-page.on .onb-day.d1>svg:nth-of-type(2){animation-delay:.9s}.onb-page.on .onb-day.d2>svg:nth-of-type(2){animation-delay:1.3s}.onb-page.on .onb-day.d3>svg:nth-of-type(2){animation-delay:1.7s}@keyframes onb-draw{to{stroke-dashoffset:0}}@keyframes onb-fill{to{fill:var(--accent)}}.onb-year{background:var(--accent-tint);color:var(--accent-text);opacity:0;border-radius:22px;align-items:center;gap:8px;padding:10px 18px;font-size:15px;font-weight:700;display:inline-flex}.onb-page.on .onb-year{animation:onb-check .55s var(--ease-spring) 2.05s both}.onb-page.setup .onb-copy{padding-top:28px;overflow-y:auto}.onb-setup-body{margin-top:22px}.onb-page.on .onb-setup-body{animation:onb-copy-in .6s var(--ease-out) .18s both}.onb-card{border-radius:var(--radius);background:var(--surface);overflow:hidden}.onb-choice{justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:10px 16px;font-size:17px;display:flex;position:relative}.onb-card .onb-choice+.onb-choice:before,.onb-fold .onb-choice:before{content:"";border-top:.5px solid var(--line);position:absolute;top:0;left:16px;right:0}.onb-choice-text{flex-direction:column;gap:3px;min-width:0;display:flex}.onb-choice-text small{color:var(--muted);font-size:13px;line-height:1.35}.onb-choice-coach{align-items:center;gap:8px;display:inline-flex}.onb-seg{grid-template-columns:repeat(var(--n), 1fr);background:var(--surface-2);border-radius:10px;flex:none;padding:2px;display:grid;position:relative}.onb-seg i{width:calc((100% - 4px) / var(--n));background:var(--surface-4);box-shadow:0 1px 3px var(--shadow);translate:calc(var(--at) * 100%) 0;transition:translate var(--t-med) var(--ease-out);border-radius:8px;position:absolute;top:2px;bottom:2px;left:2px}.onb-seg button{min-width:48px;height:32px;color:var(--muted);transition:color var(--t-med) ease;border-radius:8px;padding:0 12px;font-size:15px;font-weight:600;position:relative}.onb-seg button.on{color:var(--text)}.onb-look{padding:14px 16px 16px}.onb-look .theme-cards{padding:0}.onb-accents{margin-top:18px}.onb-accent-label{justify-content:space-between;margin-bottom:12px;font-size:16px;display:flex}.onb-accent-label b{color:var(--muted);font-weight:500}.onb-look .swatches{grid-template-columns:repeat(9,1fr);gap:0}.onb-look .swatch{width:30px;height:30px}.onb-look .swatch.on{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--swatch)}.onb,.onb-card,.onb-next,.onb-dots i{transition-property:background-color,color,opacity,scale;transition-duration:.35s}.onb-fold{opacity:0;transition:grid-template-rows var(--t-slow) var(--ease-out), opacity var(--t-med) ease;grid-template-rows:0fr;display:grid}.onb-fold.open{opacity:1;grid-template-rows:1fr}.onb-fold>div{min-height:0;overflow:hidden}.onb-fold .onb-choice{padding-left:28px}.onb.replayed,.onb.replayed .onb-page.on :is(.onb-eyebrow,h1,p,.onb-setup-body){animation:none}.guide{z-index:250;transition:opacity .24s;animation:.32s both onb-fade;position:fixed;inset:0}.guide.leaving{opacity:0}.guide-hole{pointer-events:none;position:absolute;box-shadow:0 0 0 200vmax #08080894}:root[data-theme=light] .guide-hole{box-shadow:0 0 0 200vmax #1818166b}.guide-hole:after{content:"";border-radius:inherit;box-shadow:0 0 0 2px var(--accent);animation:2.2s ease-out .4s infinite guide-ring;position:absolute;inset:-2px}@keyframes guide-ring{0%{opacity:.9;scale:1}70%,to{opacity:0;scale:1.18}}.guide-note{background:var(--surface);animation:guide-note-in .5s var(--ease-out) .12s both;border-radius:20px;padding:16px 16px 14px;position:absolute;left:16px;right:16px;box-shadow:0 18px 50px -12px #00000080}.guide-note.above{animation-name:guide-note-in-up}@keyframes guide-note-in{0%{opacity:0;translate:0 -8px;scale:.98}}@keyframes guide-note-in-up{0%{opacity:0;translate:0 8px;scale:.98}}.guide-note:before{content:"";left:var(--arrow);background:inherit;border-radius:3px;width:16px;height:16px;position:absolute;rotate:45deg}.guide-note.below:before{top:-6px}.guide-note.above:before{bottom:-6px}.guide-note strong{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);font-size:19px;display:block}.guide-note p{color:var(--text-2);text-wrap:pretty;margin:6px 0 12px;font-size:15px;line-height:1.45}.guide-ok{float:right;background:var(--accent);height:36px;color:var(--on-accent);transition:scale var(--t-fast) var(--ease-out);border-radius:18px;padding:0 18px;font-size:15px;font-weight:650}.guide-ok:active{scale:.95}.guide-note:after{content:"";clear:both;display:block}@media (prefers-reduced-motion:reduce){.onb,.onb-track,.onb-page.on *,.guide,.guide-note,.guide-hole:after{transition:none!important;animation:none!important}.onb-rest,.onb-year{opacity:1}.onb-day .fill{stroke-dashoffset:0}}.xp{padding-top:6px}.xp-title h2{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);text-wrap:balance;margin:0;font-size:30px;line-height:1.08}.xp-title p{color:var(--muted);margin:6px 0 0;font-size:15px}.xp-card{border-radius:var(--radius);background:var(--surface);margin-top:20px;padding:14px 14px 12px}.xp-metrics,.xp-ranges{grid-template-columns:repeat(var(--n), 1fr);background:var(--surface-2);border-radius:11px;padding:2px;display:grid;position:relative}.xp-metrics i,.xp-ranges i{width:calc((100% - 4px) / var(--n));background:var(--surface-4);box-shadow:0 1px 3px var(--shadow);translate:calc(var(--at) * 100%) 0;transition:translate var(--t-med) var(--ease-out);border-radius:9px;position:absolute;top:2px;bottom:2px;left:2px}.xp-metrics button,.xp-ranges button{height:32px;color:var(--muted);transition:color var(--t-med) ease;border-radius:9px;font-size:14px;font-weight:600;position:relative}.xp-metrics button.on,.xp-ranges button.on{color:var(--text)}.xp-ranges{margin-top:10px}.xp-ranges button{height:30px;font-size:13px}.xp-head{animation:xp-swap .4s var(--ease-out) both;align-items:baseline;gap:10px;margin:18px 4px 0;display:flex}@keyframes xp-swap{0%{opacity:0;translate:0 4px}}.xp-now{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);font-variant-numeric:tabular-nums lining-nums;font-size:34px;line-height:1}.xp-change{background:var(--surface-2);height:22px;color:var(--text-2);font-variant-numeric:tabular-nums;border-radius:6px;align-items:center;gap:3px;padding:0 8px 0 6px;font-size:13px;font-weight:700;display:inline-flex;translate:0 -5px}.xp-change.up{background:var(--accent-tint);color:var(--accent-text)}.xp-caption{color:var(--muted);margin:6px 4px;font-size:13px}.xp-card .pchart{margin-top:4px}.xp-section{margin-top:26px}.xp-section .pref-head{justify-content:space-between;align-items:baseline;margin-left:4px;display:flex}.xp-section .pref-head span{color:var(--faint);letter-spacing:0;text-transform:none;font-size:12px;font-weight:500}.xp-sets{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.xp-set{background:var(--surface);white-space:nowrap;font-variant-numeric:tabular-nums;height:44px;animation:xp-swap .45s var(--ease-out) both;animation-delay:calc(var(--i) * 40ms + 60ms);border-radius:12px;place-items:center;padding:0 6px;font-size:15px;font-weight:600;display:grid}.xp-set small{background:var(--surface-2);width:20px;height:20px;color:var(--muted);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid}.xp-records{grid-template-columns:repeat(var(--n), 1fr);gap:8px;display:grid}.xp-record{background:var(--surface);min-width:0;animation:xp-swap .45s var(--ease-out) .12s both;border-radius:16px;flex-direction:column;gap:4px;padding:12px 12px 11px;display:flex}.xp-record-label{color:var(--muted);font-size:12px;font-weight:600}.xp-record strong{font-family:var(--display);font-weight:var(--display-weight);font-stretch:var(--display-stretch);letter-spacing:var(--display-tracking);font-variant-numeric:tabular-nums lining-nums;overflow-wrap:anywhere;font-size:18px;line-height:1.15}.xp-record small{color:var(--faint);font-size:12px}@media (prefers-reduced-motion:reduce){.xp-head,.xp-set,.xp-record{animation:none}}
