:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f2f8;--surface:#fefeff;--surface-2:#f4f2f8;--surface-3:#e4e2e8;--segment-on:var(--surface);--sheet-bg:var(--bg);--bar-bg:#f9f8fcd1;--overlay:#00000059;--overlay-light:#0000001a;--logo-tile:#fefdfd;--fill:#73707933;--fill-2:#7370791f;--fill-pressed:#73707929;--separator:#3b394140;--skeleton:#73707924;--label:#17141d;--label-2:#5c5962;--label-3:#817e88;--label-inverse:#fff;--gray:#737079;--tint:#8d671d;--tint-fill:#8d671d;--on-tint:#fff;--tint-soft:#8d671d1f;--focus:#8d671d;--good:#1e7546;--good-soft:#1e75461f;--warn:#9f5618;--warn-soft:#9f561821;--bad:#b33736;--bad-soft:#b337361a;--info:#296898;--info-soft:#2968981a;--sport-corsa:#a85a00;--sport-trail:#007f55;--sport-scialpinismo:#005c9b;--sport-arrampicata:#845eb4;--sport-ciclismo:#0093a7;--sport-palestra:#941d40;--sport-escursionismo:#868603;--sport-altro:#737079;--sport-gara:#765412;--zone-low:#8dadd7;--zone-mid:#5682bb;--zone-high:#234877;--chart-grid:#2f2c341a;--chart-axis:#5c5962;--chart-ref:#817e88;--chart-plan:#7370794d;--font:-apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--text-scale:1;--fs-large-title:calc(2.125rem * var(--text-scale));--fs-title-1:calc(1.75rem * var(--text-scale));--fs-title-2:calc(1.375rem * var(--text-scale));--fs-title-3:calc(1.25rem * var(--text-scale));--fs-headline:calc(1.0625rem * var(--text-scale));--fs-body:calc(1.0625rem * var(--text-scale));--fs-callout:calc(1rem * var(--text-scale));--fs-subhead:calc(.9375rem * var(--text-scale));--fs-footnote:calc(.8125rem * var(--text-scale));--fs-caption:calc(.75rem * var(--text-scale));--fs-caption-2:calc(.6875rem * var(--text-scale));--fs-tab:.625rem;--fs-hero:calc(3rem * var(--text-scale));--lh-none:1;--lh-tight:1.2;--lh-body:1.35;--lh-text:1.5;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--ls-title:.01em;--ls-caps:.02em;--ls-hero:-.01em;--icon-nudge:.15em;--sp-0:.125rem;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--sp-12:3rem;--gutter:var(--sp-4);--tap:2.75rem;--row-h:2.75rem;--row-h-2:3.75rem;--swipe-action-w:4.625rem;--switch-w:3.1875rem;--switch-h:1.9375rem;--spinner:1.75rem;--icon-sm:1rem;--icon-md:1.25rem;--icon-lg:1.5rem;--badge:1.875rem;--badge-lg:2.75rem;--logo:3.5rem;--dot:.375rem;--hairline:.5px;--stroke:2px;--bar-h:.375rem;--tabbar-h:3.0625rem;--navbar-h:2.75rem;--grabber-w:2.25rem;--grabber-h:.3125rem;--sheet-gap:.625rem;--content-max:40rem;--chart-h:12.5rem;--chart-h-sm:7.5rem;--day:2.125rem;--stepper-w:9rem;--textarea-h:4.5rem;--skeleton-card-h:7.5rem;--swatch:.625rem;--swatch-line:.75rem;--swatch-r:.1875rem;--lap-n-w:1.5rem;--lap-dist-w:3.25rem;--lap-hr-w:2.5rem;--stroke-thin:1.5px;--px:1px;--navbar-title-w:44%;--input-num-w:5.5rem;--r-xs:.375rem;--r-sm:.5rem;--r-md:.625rem;--r-lg:.75rem;--r-xl:1rem;--r-full:62rem;--r-group:var(--r-xl);--r-button:var(--r-lg);--r-control:var(--r-md);--r-inner:var(--r-xs);--r-badge:var(--r-sm);--r-badge-lg:var(--r-lg);--r-capsule:var(--r-full);--r-sheet:var(--r-lg);--shadow-pop:0 .5rem 2rem #0000002e, 0 0 0 var(--hairline) #00000014;--shadow-edge:0 0 1.5rem #00000029;--shadow-logo:0 0 0 var(--hairline) #00000014, 0 .125rem .5rem #00000014;--shadow-thumb:0 .1875rem .5rem #0000001f, 0 .1875rem .0625rem #0000000a;--o-pressed:.5;--o-active:.7;--o-dim:.55;--o-pulse:.45;--on-color:#fff;--on-lap:#fff;--thumb:#fff;--badge-tone:24%;--badge-ink:80%;--ease:cubic-bezier(.25, .1, .25, 1);--spring-smooth:cubic-bezier(.2, .75, .25, 1);--spring-smooth-dur:.6s;--spring-snappy:cubic-bezier(.2, .8, .2, 1);--spring-snappy-dur:.44s;--dur-instant:0s;--dur-fast:.15s;--dur:.3s;--dur-slow:.5s;--dur-pulse:1.4s;--dur-flash:1.6s;--dur-spin:.9s;--press-scale:.97;--parallax:30%;--o-under:.9;--blur:saturate(180%) blur(20px);--z-header:10;--z-tabbar:20;--z-toast:30;--z-sheet:40;--z-under:0;--z-page:1}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c0a10;--surface:#1a181f;--surface-2:#26242b;--surface-3:#343139;--segment-on:#4e4b54;--sheet-bg:#1f1d24;--bar-bg:#151219d1;--overlay:#0009;--fill:#827d8f52;--fill-2:#827d8f33;--fill-pressed:#827d8f47;--separator:#73707973;--skeleton:#817e8833;--label:#f4f2f8;--label-2:#b2afb9;--label-3:#75737c;--label-inverse:#08060c;--gray:#87848e;--on-color:#0e0c12;--on-lap:#0c0a10;--tint:#dfc07f;--tint-fill:#dfc07f;--on-tint:#100e15;--tint-soft:#dfc07f29;--focus:#dfc07f;--good:#78c995;--good-soft:#78c99526;--warn:#f1a774;--warn-soft:#f1a77426;--bad:#f07f77;--bad-soft:#f07f7729;--info:#82b8df;--info-soft:#82b8df26;--sport-corsa:#cf8748;--sport-trail:#12a47c;--sport-scialpinismo:#3e7eba;--sport-arrampicata:#ac8bdb;--sport-ciclismo:#4fcadc;--sport-palestra:#b34a60;--sport-escursionismo:#bcbd61;--sport-altro:#87848e;--sport-gara:#dfc07f;--zone-low:#5676a0;--zone-mid:#78a1d6;--zone-high:#b5d4fc;--chart-grid:#dfdce617;--chart-axis:#b2afb9;--chart-ref:#87848e;--chart-plan:#817e8866;--shadow-pop:0 .5rem 2rem #00000080, 0 0 0 var(--hairline) #ffffff14;--shadow-logo:none}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c0a10;--surface:#1a181f;--surface-2:#26242b;--surface-3:#343139;--segment-on:#4e4b54;--sheet-bg:#1f1d24;--bar-bg:#151219d1;--overlay:#0009;--fill:#827d8f52;--fill-2:#827d8f33;--fill-pressed:#827d8f47;--separator:#73707973;--skeleton:#817e8833;--label:#f4f2f8;--label-2:#b2afb9;--label-3:#75737c;--label-inverse:#08060c;--gray:#87848e;--on-color:#0e0c12;--on-lap:#0c0a10;--tint:#dfc07f;--tint-fill:#dfc07f;--on-tint:#100e15;--tint-soft:#dfc07f29;--focus:#dfc07f;--good:#78c995;--good-soft:#78c99526;--warn:#f1a774;--warn-soft:#f1a77426;--bad:#f07f77;--bad-soft:#f07f7729;--info:#82b8df;--info-soft:#82b8df26;--sport-corsa:#cf8748;--sport-trail:#12a47c;--sport-scialpinismo:#3e7eba;--sport-arrampicata:#ac8bdb;--sport-ciclismo:#4fcadc;--sport-palestra:#b34a60;--sport-escursionismo:#bcbd61;--sport-altro:#87848e;--sport-gara:#dfc07f;--zone-low:#5676a0;--zone-mid:#78a1d6;--zone-high:#b5d4fc;--chart-grid:#dfdce617;--chart-axis:#b2afb9;--chart-ref:#87848e;--chart-plan:#817e8866;--shadow-pop:0 .5rem 2rem #00000080, 0 0 0 var(--hairline) #ffffff14;--shadow-logo:none}@media (width>=25.875rem){:root{--gutter:var(--sp-5)}}@supports (transition-timing-function:linear(0, 1)){:root{--spring-smooth:linear(0, .04, .131, .243, .358, .466, .562, .645, .715, .774, .821, .859, .89, .914, .934, .949, .96, .97, .977, .982, .986, .99, .992, .994, 1);--spring-snappy:linear(0, .035, .12, .229, .346, .46, .565, .658, .737, .803, .856, .898, .93, .955, .972, .985, .994, 1, 1.003, 1.005, 1.006, 1.006, 1.006, 1.005, 1)}}@media (prefers-reduced-motion:reduce){:root{--press-scale:1;--spring-smooth-dur:var(--dur);--spring-snappy-dur:var(--dur)}}*,:before,:after{box-sizing:border-box}html{overscroll-behavior:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);min-height:100dvh;color:var(--label);font-family:var(--font);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;overscroll-behavior-y:none;margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}p,h1,h2,h3{margin:0}svg{display:block}.num{font-variant-numeric:tabular-nums}.sr{width:var(--px);height:var(--px);margin:calc(-1 * var(--px));clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:var(--stroke) solid var(--focus);outline-offset:var(--sp-0);border-radius:var(--r-inner)}a,button,[role=button],label,summary{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}:where(a[href],button,[role=button],label.sportselect){transition:opacity var(--dur) var(--ease)}:where(a[href],button,[role=button],label.sportselect).is-pressed{opacity:var(--o-pressed);transition-duration:var(--dur-instant)}.pressable,.agenda-item,.ws-day{isolation:isolate;position:relative}.pressable:after,.agenda-item:after,.ws-day:after{content:"";z-index:-1;border-radius:inherit;background:var(--fill-pressed);opacity:0;pointer-events:none;transition:opacity var(--dur) var(--ease);position:absolute;inset:0}:is(.pressable,.agenda-item,.ws-day).is-pressed{opacity:1}:is(.pressable,.agenda-item,.ws-day).is-pressed:after{opacity:1;transition-duration:var(--dur-instant)}.press-card,a.tile,.session-result,.choice-item{transition:transform var(--spring-snappy-dur) var(--spring-snappy), opacity var(--dur) var(--ease)}:is(.press-card,a.tile,.session-result,.choice-item).is-pressed{transform:scale(var(--press-scale));opacity:1}@media (prefers-reduced-motion:reduce){:is(.press-card,a.tile,.session-result,.choice-item).is-pressed{opacity:var(--o-active);transition-duration:var(--dur-instant)}}#root{min-height:100dvh;overflow-x:clip}main{max-width:var(--content-max);padding:0 max(var(--gutter), env(safe-area-inset-right)) calc(var(--tabbar-h) + var(--sp-10) + env(safe-area-inset-bottom)) max(var(--gutter), env(safe-area-inset-left));margin:0 auto}.page{animation:page-in var(--spring-smooth-dur) var(--spring-smooth) both}@keyframes page-in{0%{opacity:0;transform:translateY(var(--sp-1))}to{opacity:1;transform:none}}html[data-vt] .page{animation:none}html[data-vt] .tabbar{view-transition-name:tabbar}::view-transition-group(root){animation-duration:var(--spring-smooth-dur)}::view-transition-old(root){animation-duration:var(--spring-smooth-dur);animation-timing-function:var(--spring-smooth);mix-blend-mode:normal}::view-transition-new(root){animation-duration:var(--spring-smooth-dur);animation-timing-function:var(--spring-smooth);mix-blend-mode:normal}html[data-nav=push]::view-transition-old(root){animation-name:nav-to-left}html[data-nav=push]::view-transition-new(root){box-shadow:var(--shadow-edge);animation-name:nav-from-right}html[data-nav=pop]::view-transition-old(root){z-index:1;box-shadow:var(--shadow-edge);animation-name:nav-to-right}html[data-nav=pop]::view-transition-new(root){animation-name:nav-from-left}html[data-nav=tab]::view-transition-group(root){animation-duration:var(--dur-fast)}html[data-nav=tab]::view-transition-old(root){animation:nav-fade-out var(--dur-fast) var(--ease) both}html[data-nav=tab]::view-transition-new(root){animation:nav-fade-in var(--dur-fast) var(--ease) both}::view-transition-group(tabbar){animation:none}::view-transition-old(tabbar){animation:none}::view-transition-new(tabbar){animation:none}@keyframes nav-from-right{0%{transform:translate(100%)}}@keyframes nav-to-left{to{transform:translateX(calc(-1 * var(--parallax)));opacity:var(--o-under)}}@keyframes nav-to-right{to{transform:translate(100%)}}@keyframes nav-from-left{0%{transform:translateX(calc(-1 * var(--parallax)));opacity:var(--o-under)}}@keyframes nav-fade-out{to{opacity:0}}@keyframes nav-fade-in{0%{opacity:0}}html[data-nav=push]:not([data-vt]) .page{animation:nav-from-right-soft var(--spring-smooth-dur) var(--spring-smooth) both}html[data-nav=pop]:not([data-vt]) .page{animation:nav-from-left var(--spring-smooth-dur) var(--spring-smooth) both}html[data-nav=tab]:not([data-vt]) .page{animation:nav-fade-in var(--dur-fast) var(--ease) both}@keyframes nav-from-right-soft{0%{transform:translateX(var(--parallax));opacity:0}}@media (prefers-reduced-motion:reduce){html[data-nav]::view-transition-old(root){animation:nav-fade-out var(--dur) var(--ease) both;box-shadow:none}html[data-nav]::view-transition-new(root){animation:nav-fade-in var(--dur) var(--ease) both;box-shadow:none}html[data-nav]:not([data-vt]) .page{animation:nav-fade-in var(--dur) var(--ease) both}}main.is-swiping{z-index:var(--z-page);background:var(--bg);min-height:100dvh;box-shadow:var(--shadow-edge);will-change:transform;position:relative}.swipe-under{z-index:var(--z-under);background:var(--bg);pointer-events:none;position:fixed;inset:0;overflow:hidden}.swipe-under-page{will-change:transform;position:absolute;inset:0}.swipe-under .page{animation:none}.swipe-dim{background:var(--overlay-light);will-change:opacity;position:absolute;inset:0}.swipe-anim{transition:transform var(--spring-snappy-dur) var(--spring-snappy), opacity var(--spring-snappy-dur) var(--spring-snappy)}@media (prefers-reduced-motion:reduce){.swipe-anim{transition-duration:var(--dur)}}.confirm-root{z-index:var(--z-sheet);position:fixed;inset:0}.confirm-dim{background:var(--overlay);animation:fade-in var(--dur) var(--ease) both;position:absolute;inset:0}.confirm{max-width:var(--content-max);gap:var(--sp-2);padding:0 max(var(--sp-2), env(safe-area-inset-right)) calc(var(--sp-2) + env(safe-area-inset-bottom)) max(var(--sp-2), env(safe-area-inset-left));animation:confirm-in var(--spring-snappy-dur) var(--spring-snappy) both;flex-direction:column;margin:0 auto;display:flex;position:absolute;bottom:0;left:0;right:0}.confirm-group{border-radius:var(--r-sheet);background:var(--sheet-bg);flex-direction:column;display:flex;overflow:hidden}.confirm-msg{padding:var(--sp-4);text-align:center;font-size:var(--fs-footnote);color:var(--label-2);line-height:var(--lh-text);border-bottom:var(--hairline) solid var(--separator)}.confirm-btn{min-height:var(--row-h-2);font-size:var(--fs-title-3);color:var(--tint);background:var(--sheet-bg)}.confirm-btn.bad{color:var(--bad)}.confirm-btn.cancel{border-radius:var(--r-sheet);font-weight:var(--fw-semibold)}.confirm-root.is-leaving .confirm-dim{animation:nav-fade-out var(--dur) var(--ease) both}.confirm-root.is-leaving .confirm{animation:confirm-out var(--dur) var(--ease) both}.confirm-root.is-leaving{animation:nav-fade-out var(--dur) step-end both}@keyframes confirm-in{0%{transform:translateY(100%)}}@keyframes confirm-out{to{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.confirm{animation-name:fade-in;animation-duration:var(--dur)}.confirm-root.is-leaving .confirm{animation-name:nav-fade-out}}.sheet-root{z-index:var(--z-sheet);position:fixed;inset:0}.sheet-dim{background:var(--overlay);opacity:0;position:absolute;inset:0}.sheet{max-width:var(--content-max);height:calc(100dvh - env(safe-area-inset-top) - var(--sheet-gap));background:var(--sheet-bg);border-radius:var(--r-sheet) var(--r-sheet) 0 0;box-shadow:var(--shadow-pop);will-change:transform;outline:none;flex-direction:column;margin:0 auto;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.sheet-anim{transition:transform var(--spring-snappy-dur) var(--spring-snappy), opacity var(--dur) var(--ease)}.sheet-grabber{width:var(--grabber-w);height:var(--grabber-h);margin:var(--sp-1) auto 0;border-radius:var(--r-capsule);background:var(--fill);flex-shrink:0}.sheet-bar{align-items:center;gap:var(--sp-2);min-height:var(--navbar-h);padding:0 var(--gutter);touch-action:none;flex-shrink:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.sheet-grabber{touch-action:none}.sheet-side{align-items:center;min-width:0;display:flex}.sheet-side.end{justify-content:flex-end}.sheet-side .linkbtn{font-size:var(--fs-body)}.linkbtn.strong,.sheet-side .linkbtn.strong{font-weight:var(--fw-semibold)}.sheet-title{font-size:var(--fs-headline);font-weight:var(--fw-semibold);text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sheet-body{overscroll-behavior:contain;min-height:0;padding:var(--sp-2) var(--gutter) calc(var(--sp-8) + env(safe-area-inset-bottom));gap:var(--sp-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.sheet.at-medium .sheet-body{touch-action:none;overflow:hidden}@media (prefers-reduced-motion:reduce){.sheet-anim{transition:opacity var(--dur) var(--ease)}}.navbar{z-index:var(--z-header);margin:0 calc(-1 * var(--gutter));padding:env(safe-area-inset-top) var(--gutter) 0;position:sticky;top:0}.navbar:before,.tabbar:before{content:"";z-index:-1;pointer-events:none;background:var(--bar-bg);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);opacity:0;transition:opacity var(--dur) var(--ease);position:absolute;inset:0}.navbar:before{border-bottom:var(--hairline) solid var(--separator)}.tabbar:before{border-top:var(--hairline) solid var(--separator);transition-duration:var(--dur-fast)}.navbar.is-compact:before,.tabbar.is-over:before{opacity:1}.navbar-row{grid-template-columns:minmax(0, 1fr) var(--navbar-title-w) minmax(0, 1fr);min-height:var(--navbar-h);align-items:center;gap:var(--sp-2);display:grid}.navbar-side{align-items:center;gap:var(--sp-1);min-width:0;display:flex}.navbar-side.end{justify-content:flex-end}.navbar-title{font-size:var(--fs-headline);font-weight:var(--fw-semibold);text-align:center;white-space:nowrap;text-overflow:ellipsis;opacity:0;min-width:0;transition:opacity var(--dur) var(--ease);overflow:hidden}.navbar.is-compact .navbar-title{opacity:1}.navbar-back{align-items:center;gap:var(--sp-0);min-height:var(--tap);margin-left:calc(-1 * var(--sp-2));padding-right:var(--sp-2);color:var(--tint);font-size:var(--fs-body);white-space:nowrap;min-width:0;display:inline-flex}.navbar-back span{text-overflow:ellipsis;overflow:hidden}.icon-btn{width:var(--tap);height:var(--tap);border-radius:var(--r-capsule);color:var(--tint);place-items:center;display:inline-grid}.largetitle{padding:var(--sp-1) 0 var(--sp-2);position:relative}.largetitle h1{font-size:var(--fs-large-title);line-height:var(--lh-tight);font-weight:var(--fw-bold);letter-spacing:var(--ls-title);overflow-wrap:anywhere}.largetitle-sentinel{height:var(--px);width:var(--px);position:absolute;bottom:0}.eyebrow{font-size:var(--fs-footnote);font-weight:var(--fw-semibold);color:var(--label-2);text-transform:uppercase;letter-spacing:var(--ls-caps);align-items:center;column-gap:var(--sp-2);row-gap:var(--sp-1);flex-wrap:wrap;display:flex}.eyebrow a{color:var(--tint);text-transform:none;letter-spacing:0;font-size:var(--fs-subhead);font-weight:var(--fw-regular)}.page-sub{margin:var(--sp-1) 0 var(--sp-2)}.page-body>*+*{margin-top:var(--sp-4)}.statusline{align-items:center;gap:var(--sp-1);font-size:var(--fs-footnote);color:var(--label-2);text-transform:none;letter-spacing:0;font-weight:var(--fw-regular);display:inline-flex}.statusline .dot{width:var(--dot);height:var(--dot);border-radius:var(--r-capsule);background:var(--good)}.statusline.off .dot{background:var(--warn)}.section{margin-top:var(--sp-6)}.page-body>.section:first-child{margin-top:var(--sp-2)}.section-head{justify-content:space-between;align-items:baseline;gap:var(--sp-3);margin:0 0 var(--sp-2);display:flex}.section-head h2{font-size:var(--fs-title-2);line-height:var(--lh-tight);font-weight:var(--fw-bold);letter-spacing:var(--ls-title)}.section-head a,.section-head button.link{color:var(--tint);font-size:var(--fs-body);min-height:var(--tap);align-items:center;display:inline-flex}.section-foot{font-size:var(--fs-footnote);color:var(--label-2);margin:var(--sp-2) var(--sp-4) 0;line-height:var(--lh-text)}.section>*+*{margin-top:var(--sp-3)}.section>.section-head+*{margin-top:0}.card{background:var(--surface);border-radius:var(--r-group);padding:var(--sp-4)}.card.flush{padding:0;overflow:hidden}.card h3{font-size:var(--fs-headline);font-weight:var(--fw-semibold)}.list{background:var(--surface);border-radius:var(--r-group);overflow:hidden}.list>[role=listitem]>button{width:100%}.row{align-items:center;gap:var(--sp-3);min-height:var(--row-h);padding:var(--sp-2) var(--sp-4);text-align:left;width:100%;display:flex;position:relative}.row.two{min-height:var(--row-h-2)}.list>*+*{position:relative}.list>*+:before{content:"";z-index:1;top:0;right:0;left:var(--sp-4);border-top:var(--hairline) solid var(--separator);position:absolute}.list>.has-icon+:before{left:calc(var(--sp-4) + var(--badge) + var(--sp-3))}.list>*+:has(.has-icon):before{left:calc(var(--sp-4) + var(--badge) + var(--sp-3))}.row-icon{flex-shrink:0;display:inline-flex}.row-text{gap:var(--sp-0);flex-direction:column;flex:1;min-width:0;display:flex}.row-title{font-size:var(--fs-body);overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.row-sub{font-size:var(--fs-subhead);color:var(--label-2);overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.row-value{text-align:right;color:var(--label-2);font-size:var(--fs-body);flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.row-value b{color:var(--label);font-weight:var(--fw-regular)}.row-value-sub{font-size:var(--fs-footnote);color:var(--label-2)}.row-chevron{color:var(--label-3)}.row.is-today{background:var(--tint-soft)}.flash{isolation:isolate;position:relative}.flash:after{content:"";z-index:-1;pointer-events:none;background:var(--tint-soft);animation:flash var(--dur-flash) var(--ease) both;position:absolute;inset:0}@keyframes flash{0%,40%{opacity:1}to{opacity:0}}.swipe-row{isolation:isolate;touch-action:pan-y;position:relative;overflow:hidden}.swipe-content{z-index:1;background:var(--surface);position:relative}.swipe-row-anim{transition:transform var(--spring-snappy-dur) var(--spring-snappy)}.swipe-actions{display:flex;position:absolute;top:0;bottom:0;right:0}.swipe-action{width:var(--swipe-action-w);justify-content:center;align-items:center;gap:var(--sp-1);color:var(--on-color);font-size:var(--fs-footnote);font-weight:var(--fw-medium);flex-direction:column;display:flex}.swipe-action.gray{background:var(--gray)}.swipe-action.bad{background:var(--bad)}.swipe-row:not(.is-open) .swipe-actions{opacity:0}.swipe-row:focus-within .swipe-actions{opacity:1}@media (prefers-reduced-motion:reduce){.swipe-row-anim{transition-duration:var(--dur-fast)}}.badge{--c:var(--gray);background:color-mix(in oklab, var(--c) var(--badge-tone), transparent);color:color-mix(in oklab, var(--c) var(--badge-ink), var(--label));width:var(--badge);height:var(--badge);border-radius:var(--r-badge);flex-shrink:0;place-items:center;display:inline-grid}.badge.lg{width:var(--badge-lg);height:var(--badge-lg);border-radius:var(--r-badge-lg)}.statgrid{gap:var(--sp-3);display:grid}.statgrid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.statgrid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.card .statgrid{gap:var(--sp-3) var(--sp-2)}.stat{min-width:0}.stat-label{font-size:var(--fs-footnote);color:var(--label-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stat-value{font-size:var(--fs-title-3);font-weight:var(--fw-semibold);margin-top:var(--sp-0);white-space:nowrap}.stat-value small{font-size:var(--fs-footnote);font-weight:var(--fw-medium);color:var(--label-2);margin-left:var(--sp-0)}.stat-sub{font-size:var(--fs-footnote);color:var(--label-2);margin-top:var(--sp-0)}.tiles{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tile{background:var(--surface);border-radius:var(--r-group);padding:var(--sp-3) var(--sp-4) var(--sp-4);gap:var(--sp-2);flex-direction:column;min-width:0;display:flex}.tile-head{align-items:center;gap:var(--sp-2);font-size:var(--fs-subhead);font-weight:var(--fw-semibold);min-width:0;display:flex}.tile-head span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tile-head svg{flex-shrink:0}.tile-value{font-size:var(--fs-title-1);font-weight:var(--fw-bold);line-height:var(--lh-tight);white-space:nowrap}.tile-value small{font-size:var(--fs-subhead);font-weight:var(--fw-semibold);color:var(--label-2);margin-left:var(--sp-1)}.tile-sub{font-size:var(--fs-footnote);color:var(--label-2)}.progress{height:var(--bar-h);border-radius:var(--r-capsule);background:var(--fill);overflow:hidden}.progress>span{border-radius:var(--r-capsule);background:var(--tint);height:100%;transform:translateX(calc(var(--p) - 100%));transition:transform var(--spring-smooth-dur) var(--spring-smooth);display:block}.hero{font-size:var(--fs-hero);font-weight:var(--fw-bold);line-height:var(--lh-none);letter-spacing:var(--ls-hero)}.metric>*+*{margin-top:var(--sp-3)}.metric-head{justify-content:space-between;align-items:center;gap:var(--sp-2);min-height:var(--sp-6);flex-wrap:wrap;display:flex}.metric-head :is(h2,h3){font-size:var(--fs-headline);font-weight:var(--fw-semibold)}.metric-head>.segmented{flex-shrink:0}.metric-value{font-size:var(--fs-title-1);font-weight:var(--fw-bold);line-height:var(--lh-tight);margin-top:var(--sp-1)}.metric-value small{font-size:var(--fs-subhead);font-weight:var(--fw-semibold);color:var(--label-2);margin-left:var(--sp-1)}.metric-caption{font-size:var(--fs-footnote);color:var(--label-2);margin-top:var(--sp-0)}.metric-read,.metric-limits{font-size:var(--fs-footnote);line-height:var(--lh-text);color:var(--label-2)}.metric-read b{color:var(--label);font-weight:var(--fw-semibold)}.metric-limits{gap:var(--sp-2);align-items:flex-start;display:flex}.metric-limits svg{margin-top:var(--sp-0)}.sportselect{align-items:center;gap:var(--sp-2);min-height:var(--tap);max-width:100%;padding:var(--sp-1) var(--sp-3) var(--sp-1) var(--sp-1);border-radius:var(--r-capsule);background:var(--surface);font-size:var(--fs-body);font-weight:var(--fw-semibold);display:inline-flex;position:relative}.sportselect-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sportselect.plain{padding-left:var(--sp-4)}.sportselect>svg{color:var(--label-2)}.sportselect select{opacity:0;width:100%;height:100%;font-size:var(--fs-callout);appearance:none;cursor:pointer;position:absolute;inset:0}.sportselect:has(select:focus-visible){outline:var(--stroke) solid var(--focus);outline-offset:var(--sp-0)}.sportselect .badge{width:calc(var(--tap) - var(--sp-3));height:calc(var(--tap) - var(--sp-3));border-radius:var(--r-capsule)}.segmented{gap:var(--sp-0);padding:var(--sp-0);border-radius:var(--r-control);background:var(--fill-2);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.segmented button{min-width:0;min-height:calc(var(--tap) - var(--sp-2));padding:0 var(--sp-2);border-radius:calc(var(--r-control) - var(--sp-0));font-size:var(--fs-subhead);font-weight:var(--fw-medium);position:relative}.segmented-row .segmented{width:100%;display:flex}.segmented-row .segmented button{flex:1}.segmented button>span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.segmented button:before,.icon-btn.small:before{content:"";position:absolute}.segmented button:before{inset:calc(-1 * var(--sp-1)) 0}.icon-btn.small:before{inset:calc((var(--sp-8) - var(--tap)) / 2)}.segmented{position:relative}.segmented-thumb{top:var(--sp-0);bottom:var(--sp-0);left:var(--sp-0);width:calc((100% - var(--sp-0) * (var(--n) + 1)) / var(--n));border-radius:calc(var(--r-control) - var(--sp-0));background:var(--segment-on);box-shadow:var(--shadow-thumb);transform:translateX(calc(var(--i) * (100% + var(--sp-0))));transition:transform var(--spring-snappy-dur) var(--spring-snappy);animation:fade-in var(--dur-fast) var(--ease);position:absolute}.segmented button.on{font-weight:var(--fw-semibold)}.segmented button.is-pressed:not(.on){opacity:var(--o-active)}.segmented button.on.is-pressed{opacity:1}@media (prefers-reduced-motion:reduce){.segmented-thumb{transition:none}}.switch{isolation:isolate;width:var(--switch-w);height:var(--switch-h);border-radius:var(--r-capsule);background:var(--fill);flex-shrink:0;position:relative}.switch:before{content:"";z-index:-1;border-radius:inherit;background:var(--good);opacity:0;transition:opacity var(--dur) var(--ease);position:absolute;inset:0}.switch:after{content:"";inset:calc((var(--switch-h) - var(--tap)) / 2) 0;position:absolute}.switch.on:before{opacity:1}.switch-thumb{top:var(--sp-0);left:var(--sp-0);width:calc(var(--switch-h) - var(--sp-0) * 2);height:calc(var(--switch-h) - var(--sp-0) * 2);border-radius:var(--r-capsule);background:var(--thumb);box-shadow:var(--shadow-thumb);transition:transform var(--spring-snappy-dur) var(--spring-snappy);position:absolute}.switch.on .switch-thumb{transform:translateX(calc(var(--switch-w) - var(--switch-h)))}.switch.is-pressed{opacity:1}@media (prefers-reduced-motion:reduce){.switch-thumb{transition:none}}.pill{align-items:center;gap:var(--sp-1);min-height:var(--sp-6);padding:0 var(--sp-2);border-radius:var(--r-capsule);font-size:var(--fs-footnote);font-weight:var(--fw-semibold);white-space:nowrap;background:var(--fill-2);color:var(--label-2);display:inline-flex}.pill.good{background:var(--good-soft);color:var(--good)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.tint{background:var(--tint-soft);color:var(--tint)}.pill.info{background:var(--info-soft);color:var(--info)}.pills{gap:var(--sp-2);flex-wrap:wrap;display:flex}.btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--tap);padding:0 var(--sp-4);border-radius:var(--r-button);font-size:var(--fs-body);font-weight:var(--fw-semibold);background:var(--fill-2);color:var(--tint);display:inline-flex}.btn.primary{background:var(--tint-fill);color:var(--on-tint)}.btn.block{width:100%}.btn.done{background:var(--good-soft);color:var(--good)}.done-btn{isolation:isolate;background:0 0;display:grid;position:relative}.done-btn:before,.done-btn:after{content:"";z-index:-1;border-radius:inherit;transition:opacity var(--dur) var(--ease);position:absolute;inset:0}.done-btn:before{background:var(--tint-fill)}.done-btn:after{background:var(--good-soft);opacity:0}.done-btn.is-done:before{opacity:0}.done-btn.is-done:after{opacity:1}.done-face{justify-content:center;align-items:center;gap:var(--sp-2);transition:opacity var(--dur-fast) var(--ease), transform var(--spring-snappy-dur) var(--spring-snappy);grid-area:1/1;display:inline-flex}.done-face.todo{color:var(--on-tint)}.done-face.fatto{color:var(--good);opacity:0;transform:translateY(var(--sp-2))}.done-btn.is-done .done-face.todo{opacity:0;transform:translateY(calc(-1 * var(--sp-2)))}.done-btn.is-done .done-face.fatto{opacity:1;transform:none}.done-check{width:var(--sp-6);height:var(--sp-6);border-radius:var(--r-capsule);background:var(--good);color:var(--on-color);opacity:0;transition:transform var(--spring-snappy-dur) var(--spring-snappy), opacity var(--dur-fast) var(--ease);place-items:center;display:grid;transform:scale(.3)}.done-btn.is-done .done-check{opacity:1;transition-delay:var(--dur-fast);transform:none}@media (prefers-reduced-motion:reduce){.done-face,.done-btn.is-done .done-face.todo,.done-face.fatto,.done-check{transform:none}}.linkbtn{color:var(--tint);font-size:var(--fs-subhead);min-height:var(--tap);align-items:center;display:inline-flex}.banner{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-group);font-size:var(--fs-subhead);line-height:var(--lh-text);align-items:flex-start;display:flex}.banner.tint{background:var(--tint-soft);color:var(--tint)}.banner.info{background:var(--info-soft);color:var(--info)}.banner.warn{background:var(--warn-soft);color:var(--warn)}.banner b{color:var(--label);font-weight:var(--fw-semibold);display:block}.banner-text{color:var(--label-2);display:block}.banner svg{margin-top:var(--sp-0)}.empty{text-align:center;align-items:center;gap:var(--sp-2);padding:var(--sp-6) var(--sp-4);flex-direction:column;display:flex}.empty-icon{width:var(--sp-12);height:var(--sp-12);border-radius:var(--r-capsule);background:var(--fill-2);color:var(--label-2);place-items:center;display:grid}.empty b{font-size:var(--fs-headline);font-weight:var(--fw-semibold)}.empty p{font-size:var(--fs-subhead);color:var(--label-2);line-height:var(--lh-text);max-width:32ch}.skeleton{border-radius:var(--r-control);background:var(--skeleton);animation:pulse var(--dur-pulse) ease-in-out infinite;display:block}.skeleton.line{height:var(--fs-footnote);width:40%;margin:var(--sp-1) 0}.skeleton.title{height:var(--fs-large-title);width:55%;margin:var(--sp-2) 0}.skeleton.card{height:var(--skeleton-card-h);border-radius:var(--r-group)}.skeleton.chart{height:var(--chart-h)}.skeleton.row{height:var(--sp-8);width:100%}@keyframes pulse{50%{opacity:var(--o-pulse)}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}.page{animation:fade-in var(--dur) var(--ease) both}}@keyframes fade-in{0%{opacity:0}}.field{gap:var(--sp-1);flex-direction:column;display:flex}.field-label{font-size:var(--fs-footnote);color:var(--label-2)}.input{width:100%;min-height:var(--tap);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-control);font-size:var(--fs-callout);background:var(--surface-2);border:var(--hairline) solid transparent;color:var(--label)}.input:focus{border-color:var(--focus);outline:none}textarea.input{resize:vertical;min-height:var(--textarea-h);line-height:var(--lh-text)}select.input{appearance:none}.grid2{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.finger-form{gap:var(--sp-4);margin-bottom:var(--sp-4);flex-direction:column;display:flex}.card:not(.session)>:is(.field,.grid2)+:is(.field,.grid2){margin-top:var(--sp-4)}.stepper{background:var(--surface-2);border-radius:var(--r-control);min-height:var(--tap);align-items:center;display:flex}.stepper button{width:var(--tap);height:var(--tap);color:var(--tint);border-radius:var(--r-control);place-items:center;display:grid}.stepper input{text-align:center;min-width:0;height:var(--tap);font-size:var(--fs-callout);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;-moz-appearance:textfield;background:0 0;border:0;flex:1}.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper input:focus{outline:none}.scale{gap:var(--sp-1);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.scale button{min-height:var(--tap);border-radius:var(--r-control);background:var(--surface-2);font-size:var(--fs-callout);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.scale button.on{background:var(--tint-fill);color:var(--on-tint)}.session>*+*{margin-top:var(--sp-3)}.session-head{gap:var(--sp-3);align-items:flex-start;display:flex}.session-titles{flex:1;min-width:0}.session-kicker{font-size:var(--fs-footnote);color:var(--label-2);font-weight:var(--fw-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.session-title{font-size:var(--fs-title-3);font-weight:var(--fw-semibold);line-height:var(--lh-tight);margin-top:var(--sp-0);overflow-wrap:anywhere}.claude-line{font-size:var(--fs-footnote);color:var(--label-2);line-height:var(--lh-text);overflow-wrap:anywhere}.claude-tag{align-items:center;gap:var(--sp-0);margin-right:var(--sp-1);padding:0 var(--sp-1);border-radius:var(--r-inner);background:var(--tint-soft);color:var(--tint);font-weight:var(--fw-semibold);vertical-align:baseline;display:inline-flex}.session-result{align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-button);background:var(--surface-2);display:flex}.session-result .statgrid{flex:1}.timeline{margin:0;padding:0;list-style:none}.tl-item{grid-template-columns:var(--sp-1) minmax(0, 1fr) auto;gap:0 var(--sp-3);padding:var(--sp-2) 0;align-items:center;display:grid}.tl-bar{border-radius:var(--r-capsule);background:var(--fill);min-height:var(--sp-5);align-self:stretch}.tl-item.hard .tl-bar{background:var(--sport-corsa)}.tl-type{font-size:var(--fs-subhead);font-weight:var(--fw-semibold)}.tl-item.soft .tl-type{color:var(--label-2);font-weight:var(--fw-regular)}.tl-note{font-size:var(--fs-footnote);color:var(--label-2)}.tl-right{text-align:right;font-variant-numeric:tabular-nums;font-size:var(--fs-subhead)}.tl-pace{font-size:var(--fs-footnote);color:var(--label-2)}.tl-repeat{margin:var(--sp-1) 0;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-button);background:var(--surface-2)}.tl-repeat-head{font-size:var(--fs-footnote);font-weight:var(--fw-semibold);color:var(--label-2)}.prose{font-size:var(--fs-subhead);line-height:var(--lh-text);color:var(--label-2)}.prose p+p{margin-top:var(--sp-2)}.prose strong{color:var(--label);font-weight:var(--fw-semibold)}.weekstrip{padding:var(--sp-2) var(--sp-1);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.ws-day{justify-items:center;gap:var(--sp-1);min-height:var(--tap);padding:var(--sp-1) 0;border-radius:var(--r-button);display:grid}.ws-wd{font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--label-2)}.ws-dn{width:var(--day);height:var(--day);border-radius:var(--r-capsule);font-size:var(--fs-body);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;place-items:center;display:grid}.ws-day.is-today .ws-dn{background:var(--label);color:var(--surface)}.ws-pager{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:100%;grid-auto-flow:column;display:grid;overflow-x:auto}.ws-pager::-webkit-scrollbar{display:none}.ws-pager>.weekstrip{scroll-snap-align:start;scroll-snap-stop:always}.weekstrip{position:relative}.ws-ring{z-index:1;width:var(--day);height:var(--day);pointer-events:none;border-radius:var(--r-capsule);box-shadow:inset 0 0 0 var(--stroke) var(--label);position:absolute;top:0;left:0}.ws-ring-anim{transition:transform var(--spring-snappy-dur) var(--spring-snappy)}@media (prefers-reduced-motion:reduce){.ws-ring-anim{transition:none}}.ws-dots{gap:var(--sp-0);height:var(--dot);display:flex}.ws-dots i{width:var(--dot);height:var(--dot);border-radius:var(--r-capsule)}.ws-dots i.todo{box-shadow:inset 0 0 0 var(--stroke-thin) var(--c);background:0 0!important}.agenda .row{align-items:flex-start}.agenda-date{width:var(--tap);text-align:center;padding-top:var(--sp-0);flex-shrink:0}.agenda-date b{font-size:var(--fs-title-3);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;display:block}.agenda-date span{font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--label-2);text-transform:uppercase}.agenda-day.is-today .agenda-date b{color:var(--tint);font-weight:var(--fw-bold)}.agenda-items{gap:var(--sp-1);flex-direction:column;flex:1;min-width:0;display:flex}.agenda-item{align-items:center;gap:var(--sp-2);min-height:var(--tap);border-radius:var(--r-control);padding:var(--sp-1) var(--sp-2);margin:0 calc(-1 * var(--sp-2));display:flex}.agenda-item .t{flex:1;min-width:0}.agenda-item .t b{font-weight:var(--fw-regular);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.agenda-item .t span{font-size:var(--fs-footnote);color:var(--label-2);display:block}.agenda-item.missed{opacity:var(--o-dim)}.agenda-rest{color:var(--label-2);font-size:var(--fs-subhead);min-height:var(--tap);align-items:center;gap:var(--sp-2);display:flex}.agenda-holiday{font-size:var(--fs-footnote);color:var(--tint);font-weight:var(--fw-semibold)}.check{width:var(--sp-6);height:var(--sp-6);border-radius:var(--r-capsule);background:var(--good);color:var(--surface);flex-shrink:0;place-items:center;display:grid}.chart{margin:0}.chart-readout{gap:var(--sp-0);min-height:var(--tap);flex-direction:column;display:flex}.chart-readout-title{font-size:var(--fs-footnote);color:var(--label-2)}.chart-readout-values{column-gap:var(--sp-4);row-gap:var(--sp-0);flex-wrap:wrap;display:flex}.chart-readout-item{align-items:center;gap:var(--sp-1);font-size:var(--fs-subhead);white-space:nowrap;display:inline-flex}.chart-readout-item b{font-weight:var(--fw-semibold)}.chart-readout-label{color:var(--label-2)}.swatch{width:var(--swatch);height:var(--swatch);border-radius:var(--swatch-r);flex-shrink:0;display:inline-block}.swatch.line,.swatch.ref{height:var(--stroke);width:var(--swatch-line);border-radius:var(--stroke)}.swatch.dot{border-radius:var(--r-capsule)}.chart-plot{margin-top:var(--sp-2);touch-action:pan-y;-webkit-user-select:none;user-select:none;position:relative}.chart-plot svg{cursor:crosshair;overflow:visible}.chart-focus{pointer-events:none;border-radius:var(--r-control);position:absolute;inset:0}.chart-focus:focus-visible{outline:var(--stroke) solid var(--focus)}.chart-grid{stroke:var(--chart-grid);stroke-width:1px;shape-rendering:crispedges}.chart-tick,.chart-unit{fill:var(--chart-axis);font-size:var(--fs-caption-2);font-family:var(--font);font-variant-numeric:tabular-nums}.chart-unit{font-weight:var(--fw-semibold)}.chart-guide{stroke:var(--label-3);stroke-width:1px;stroke-dasharray:2 3}.chart-line{fill:none;stroke-width:var(--stroke);stroke-linejoin:round;stroke-linecap:round}.chart-ref{stroke-width:var(--stroke-thin);stroke-dasharray:5 4}.chart-marker{stroke:var(--surface);stroke-width:var(--stroke)}.chart-bar{opacity:var(--o-dim);transition:opacity var(--dur-fast) var(--ease)}.chart-bar.is-active{opacity:1}.chart-bar,.chart-behind,.chart-wipe{transform-box:fill-box;transform-origin:bottom}.chart-wipe{transform-origin:0}.splitbar{transform-origin:0;gap:var(--stroke);height:var(--sp-3);border-radius:var(--r-capsule);background:var(--fill-2);display:flex;overflow:hidden}.splitbar span{min-width:var(--sp-1);display:block}.splitbar-legend{gap:var(--sp-1) var(--sp-4);margin-top:var(--sp-2);font-size:var(--fs-footnote);color:var(--label-2);flex-wrap:wrap;display:flex}.splitbar-legend span{align-items:center;gap:var(--sp-1);display:inline-flex}.splitbar-legend b{color:var(--label);font-weight:var(--fw-semibold)}.laps{gap:var(--sp-1);flex-direction:column;display:flex}.lap{grid-template-columns:var(--lap-n-w) minmax(0, 1fr) var(--lap-dist-w) var(--lap-hr-w);align-items:center;gap:var(--sp-2);font-size:var(--fs-footnote);font-variant-numeric:tabular-nums;min-height:var(--sp-6);display:grid}.lap-n{color:var(--label-2);text-align:right}.lap-track{height:var(--sp-6);border-radius:var(--r-inner);background:var(--fill-2);overflow:hidden}.lap-fill{border-radius:var(--r-inner);background:var(--fill);height:100%;padding-left:var(--sp-2);font-weight:var(--fw-semibold);white-space:nowrap;align-items:center;display:flex}.lap.hard .lap-fill{background:var(--sport-corsa);color:var(--on-lap)}.lap-end{text-align:right;color:var(--label-2)}.lap-head{min-height:0;color:var(--label-2);font-size:var(--fs-caption)}.lap-head>span:nth-child(2){padding-left:var(--sp-2)}.legend{gap:var(--sp-1) var(--sp-4);font-size:var(--fs-footnote);color:var(--label-2);flex-wrap:wrap;display:flex}.legend span{align-items:center;gap:var(--sp-1);display:inline-flex}table.data{border-collapse:collapse;width:100%;font-size:var(--fs-footnote);font-variant-numeric:tabular-nums}table.data th{text-align:right;font-weight:var(--fw-medium);color:var(--label-2);padding:0 0 var(--sp-2) var(--sp-2);white-space:nowrap}table.data td{text-align:right;padding:var(--sp-2) 0 var(--sp-2) var(--sp-2);border-top:var(--hairline) solid var(--separator);white-space:nowrap}table.data th:first-child,table.data td:first-child{text-align:left;padding-left:0}table.data .muted{color:var(--label-2)}.tabbar{z-index:var(--z-tabbar);isolation:isolate;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed;bottom:0;left:0;right:0}.tabbar-inner{max-width:var(--content-max);grid-template-columns:repeat(5,minmax(0,1fr));margin:0 auto;display:grid}.tabbar a{justify-content:center;align-items:center;gap:var(--sp-0);min-height:var(--tabbar-h);padding-top:var(--sp-1);font-size:var(--fs-tab);font-weight:var(--fw-medium);color:var(--label-2);flex-direction:column;display:flex}.tabbar a[aria-current=page]{color:var(--tint)}.tabbar span{white-space:nowrap}.offline .pill{background:var(--surface);box-shadow:var(--shadow-pop)}.update{z-index:var(--z-toast);left:max(var(--gutter), env(safe-area-inset-left));right:max(var(--gutter), env(safe-area-inset-right));bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--sp-2));align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);border-radius:var(--r-group);background:var(--surface);box-shadow:var(--shadow-pop);font-size:var(--fs-subhead);line-height:var(--lh-text);color:var(--tint);display:flex;position:fixed}.update b{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--label);font-weight:var(--fw-semibold);flex:1;overflow:hidden}.update .linkbtn{padding:0 var(--sp-2)}.update .btn{padding:0 var(--sp-4);font-size:var(--fs-subhead)}.toast{z-index:var(--z-toast);left:max(var(--gutter), env(safe-area-inset-left));right:max(var(--gutter), env(safe-area-inset-right));bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--sp-2));max-width:var(--content-max);align-items:center;gap:var(--sp-2);padding:0 var(--sp-2) 0 var(--sp-4);min-height:var(--row-h-2);border-radius:var(--r-group);background:var(--surface);box-shadow:var(--shadow-pop);font-size:var(--fs-subhead);line-height:var(--lh-text);animation:toast-in var(--spring-snappy-dur) var(--spring-snappy) both;margin:0 auto;display:flex;position:fixed}.toast>span{min-width:0;font-weight:var(--fw-semibold);flex:1}.toast .linkbtn{padding:0 var(--sp-3);font-size:var(--fs-body)}.toast.is-leaving{animation:toast-out var(--dur) var(--ease) both}@keyframes toast-in{0%{opacity:0;transform:translateY(100%)}}@keyframes toast-out{to{opacity:0;transform:translateY(var(--sp-2))}}@media (prefers-reduced-motion:reduce){.toast{animation-name:fade-in;animation-duration:var(--dur)}.toast.is-leaving{animation-name:nav-fade-out}}.offline{z-index:var(--z-toast);left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--sp-2));position:fixed;transform:translate(-50%)}.ptr-wrap{position:relative}.ptr{left:50%;top:env(safe-area-inset-top);z-index:0;width:var(--spinner);height:var(--spinner);margin-left:calc(var(--spinner) / -2);opacity:0;pointer-events:none;color:var(--label-2);position:absolute}.ptr-content{z-index:1;position:relative}.ptr-anim{transition:transform var(--spring-smooth-dur) var(--spring-smooth), opacity var(--dur) var(--ease)}.ptr-ticks{position:absolute;inset:0}.ptr-ticks i{border-radius:var(--r-capsule);opacity:0;transform-origin:50% 167%;width:10%;height:30%;transform:rotate(calc(var(--i) * 45deg));background:currentColor;position:absolute;top:0;left:45%}.ptr-ticks i.on{opacity:1}.ptr.is-spinning .ptr-ticks{animation:spin var(--dur-spin) steps(8) infinite}.ptr.is-spinning .ptr-ticks i{opacity:var(--o)}.spin{animation:spin var(--dur-spin) linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin,.ptr.is-spinning .ptr-ticks{animation:none}}.first-load{justify-content:center;align-items:center;gap:var(--sp-2);padding:calc(env(safe-area-inset-top) + var(--sp-3)) var(--sp-4) 0;font-size:var(--fs-footnote);color:var(--label-2);display:flex}.logo-tile{width:var(--logo);height:var(--logo);border-radius:calc(var(--logo) * .225);background:var(--logo-tile);box-shadow:var(--shadow-logo);flex-shrink:0;place-items:center;display:inline-grid}.logo-tile img{width:72%;height:auto;display:block}.brand{align-items:center;gap:var(--sp-4);margin:var(--sp-2) 0 var(--sp-5);display:flex}.brand-name{font-size:var(--fs-title-2);font-weight:var(--fw-bold);letter-spacing:var(--ls-title)}.brand-sub{font-size:var(--fs-subhead);color:var(--label-2);line-height:var(--lh-body);margin-top:var(--sp-0)}.welcome-brand{align-items:flex-start;gap:var(--sp-4);display:flex}.welcome-lead{font-size:var(--fs-headline);font-weight:var(--fw-semibold);line-height:var(--lh-text)}.welcome-text{font-size:var(--fs-subhead);color:var(--label-2);line-height:var(--lh-text);margin-top:var(--sp-2)}.welcome-form{gap:var(--sp-3);flex-direction:column;display:flex}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.steps{padding-left:var(--sp-5);gap:var(--sp-2);font-size:var(--fs-subhead);line-height:var(--lh-text);flex-direction:column;margin:0;display:flex}.steps a,.welcome-text a{color:var(--tint)}.btn:disabled{opacity:var(--o-active)}.changed-dot{width:var(--dot);height:var(--dot);border-radius:var(--r-capsule);background:var(--tint);flex-shrink:0;display:inline-block}.warn-text{color:var(--warn)}.prose-note{white-space:pre-line;font-size:var(--fs-subhead);line-height:var(--lh-text)}.guide{flex-direction:column;display:flex}.guide>*+*{margin-top:var(--sp-4)}.guide>.section{margin-top:var(--sp-6)}.guide>.section:first-child,.guide>.card:first-child{margin-top:var(--sp-2)}.guide-text{font-size:var(--fs-subhead);line-height:var(--lh-text)}.guide-text+.guide-text,.guide-text+.cmd,.steps+.guide-text{margin-top:var(--sp-3)}.guide-text a{color:var(--tint)}.guide-h{margin:var(--sp-5) 0 var(--sp-2)}.guide-h:first-of-type{margin-top:var(--sp-4)}.guide-list{list-style:outside}.guide-btn{margin-top:var(--sp-4)}.cmd{align-items:center;gap:var(--sp-2);margin:var(--sp-2) 0;background:var(--surface-2);border-radius:var(--r-control);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-3);display:flex}.cmd code{min-width:0;font-size:var(--fs-footnote);overflow-wrap:anywhere;flex:1}.cmd button{width:var(--tap);height:var(--tap);border-radius:var(--r-badge);color:var(--tint);flex-shrink:0;place-items:center;display:grid}.insight>*+*{margin-top:var(--sp-2)}.insight-head{align-items:center;gap:var(--sp-2);min-height:var(--sp-6);display:flex}.insight-head b{min-width:0;font-size:var(--fs-headline);font-weight:var(--fw-semibold);line-height:var(--lh-tight);flex:1}.insight-head>svg{color:var(--tint)}.suggestion.warn .insight-head>svg{color:var(--warn)}.icon-btn.small{width:var(--sp-8);height:var(--sp-8);color:var(--label-2);margin:calc(-1 * var(--sp-1)) calc(-1 * var(--sp-2)) calc(-1 * var(--sp-1)) 0;position:relative}.insight-lines{gap:var(--sp-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.insight-lines li{gap:var(--sp-2);font-size:var(--fs-subhead);line-height:var(--lh-text);align-items:flex-start;display:flex}.insight-lines li>svg{margin-top:var(--icon-nudge);color:var(--label-3)}.insight-lines li.good>svg{color:var(--good)}.insight-lines li.warn>svg{color:var(--warn)}.insight-text{font-size:var(--fs-subhead);line-height:var(--lh-text);margin:0}.insight-why{font-size:var(--fs-footnote);line-height:var(--lh-text);color:var(--label-2)}.insight-why p{margin:0 0 var(--sp-1)}.insight-why b{color:var(--label);font-weight:var(--fw-semibold)}.insight-why ul{margin:0 0 var(--sp-2);padding-left:var(--sp-5)}.insight-why .muted{color:var(--label-2)}.suggestion.warn{box-shadow:inset 0 0 0 var(--stroke-thin) var(--warn-soft)}.feelings-summary{align-items:center;gap:var(--sp-3);text-align:left;width:100%;color:var(--label);display:flex}.feelings-summary>svg:first-child{color:var(--tint)}.feelings-summary>span{gap:var(--sp-0);flex-direction:column;flex:1;min-width:0;display:flex}.feelings-summary b{font-weight:var(--fw-semibold)}.feelings-note{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.feel-seg button{font-size:var(--fs-footnote);padding:0 var(--sp-1)}.food-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.food-list li{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-top:var(--hairline) solid var(--separator);font-size:var(--fs-subhead);display:flex}.food-list li:first-child{border-top:0}.food-list li .num{align-items:center;gap:var(--sp-2);white-space:nowrap;color:var(--label-2);display:inline-flex}.food-list .icon-btn{margin:calc(-1 * var(--sp-2)) calc(-1 * var(--sp-2)) calc(-1 * var(--sp-2)) 0}.food-list.dim{opacity:var(--o-active)}.food-edit{gap:var(--sp-2);padding:var(--sp-2) 0;border-top:var(--hairline) solid var(--separator);flex-direction:column;display:flex}.food-edit-name{gap:var(--sp-0);flex-direction:column;display:flex}.food-edit-ctl{align-items:center;gap:var(--sp-2);display:flex}.food-edit-ctl .input{flex:1}.picker,.choice{gap:var(--sp-3);flex-direction:column;display:flex}.choice-item{gap:var(--sp-1);text-align:left;border:var(--stroke) solid transparent;flex-direction:column;display:flex}.choice-item span{color:var(--label-2);font-size:var(--fs-subhead);line-height:var(--lh-text)}.choice-item.on{border-color:var(--tint)}.sticky-save{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--sp-3));z-index:2;position:sticky}
