@charset "UTF-8";.landing{min-height:100dvh;background:radial-gradient(48rem 32rem at 100% -8%,var(--color-accent-soft),transparent 70%),radial-gradient(36rem 28rem at -10% 40%,var(--color-sage),transparent 70%),var(--color-bg);color:var(--color-text);overflow-x:clip}.landing main{max-width:var(--content-width);margin:0 auto;padding:0 var(--space-4) var(--space-8)}.landing main:focus{outline:none}.landing-bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:max(var(--space-3),env(safe-area-inset-top)) max(var(--space-4),calc((100% - var(--content-width)) / 2 + var(--space-4))) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.landing-brand{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-rounded);font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight)}.landing-logo{width:36px;height:36px}.landing-bar-signin{min-height:var(--touch)}.landing-hero{display:grid;gap:var(--space-8);align-items:center;padding:var(--space-7) 0 var(--space-8)}.landing-hero-copy{display:grid;gap:var(--space-5);justify-items:start}.landing-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-on-accent-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.landing-hero h1{font-size:clamp(2.5rem,6vw + 1rem,4.25rem);line-height:1.02;letter-spacing:-.035em;text-wrap:balance}.landing-lead{max-width:34rem;font-size:var(--text-lg);line-height:var(--leading-normal);color:var(--color-text-muted)}.landing-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);width:100%}.landing-actions .button{flex:1 1 11rem}.landing-note{display:flex;gap:var(--space-2);align-items:flex-start;font-size:var(--text-sm);color:var(--color-text-muted)}.landing-note>svg{margin-top:2px}.landing-preview{position:relative;display:grid;justify-items:center;padding:var(--space-6) 0}.landing-phone{display:grid;gap:var(--space-3);width:min(100%,19rem);padding:var(--space-5) var(--space-4);border:1px solid var(--color-border);border-radius:2.25rem;background:var(--color-bg);box-shadow:var(--shadow-raised)}.lp-head{display:flex;justify-content:space-between;align-items:baseline;padding:0 var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.lp-head strong{font-family:var(--font-rounded);font-size:var(--text-xl);color:var(--color-text);letter-spacing:var(--tracking-tight)}.lp-card{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.lp-session{grid-template-columns:auto 1fr;align-items:center}.lp-session img,.lp-float img{border-radius:var(--radius-md);background:var(--color-illustration-bg)}.lp-session span,.lp-float>span{display:grid;gap:2px;min-width:0}.lp-session small,.lp-float small{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted)}.lp-exercise{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-2)}.lp-chip{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-on-accent-soft);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.lp-sets{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.lp-sets li{display:grid;grid-template-columns:1.5rem 1fr 1fr 1rem;align-items:center;gap:var(--space-2);min-height:2.25rem;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.lp-sets li>span:first-child{font-weight:var(--weight-bold);color:var(--color-text-muted)}.lp-sets .is-done{background:var(--success-bg);border-color:var(--success-border);color:var(--success-fg)}.lp-sets .is-current{border-color:var(--color-focus);box-shadow:0 0 0 1px var(--color-focus)}.lp-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--color-brand-dot)}.lp-timer{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-timer-bg);color:var(--color-timer-fg);font-size:var(--text-sm)}.lp-timer strong{margin-left:auto;font-size:var(--text-xl);font-variant-numeric:tabular-nums}.lp-timer-plus{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--color-timer-track);font-size:var(--text-xs)}.lp-float{position:absolute;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-raised);font-size:var(--text-sm);animation:landing-float 6s ease-in-out infinite}.lp-float>svg{margin-left:var(--space-2);color:var(--color-primary)}.lp-meal small{color:var(--success-fg)}.lp-meal{top:0;left:0}.lp-lunch{top:46%;right:0;animation-delay:-2s}.lp-week{bottom:2%;left:4%;animation-delay:-4s}@keyframes landing-float{50%{transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){.lp-float{animation:none}}@media(max-width:34rem){.landing-preview{padding:3.75rem 0}.lp-lunch{display:none}.lp-float{padding-right:var(--space-3)}.lp-meal{top:0;left:0}.lp-week{bottom:0;left:auto;right:0}}.landing-section{display:grid;gap:var(--space-3);padding:var(--space-8) 0 0;scroll-margin-top:4.5rem}.landing-section:focus{outline:none}.landing-section h2,.landing-cta h2{font-size:clamp(var(--text-2xl),2vw + 1rem,2.25rem);text-wrap:balance}.landing-features,.landing-steps{display:grid;gap:var(--space-4);margin:var(--space-4) 0 0;padding:0;list-style:none}.landing-features{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}.landing-feature{display:grid;gap:var(--space-2);align-content:start;padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card)}.landing-feature-icon{display:grid;place-items:center;width:var(--control-md);height:var(--control-md);margin-bottom:var(--space-2);border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-on-accent-soft)}.landing-feature h3,.landing-steps h3{font-size:var(--text-lg)}.landing-feature p,.landing-steps p{font-size:var(--text-md);color:var(--color-text-muted)}.landing-steps{counter-reset:landing-step;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}.landing-steps li{counter-increment:landing-step;display:grid;gap:var(--space-2);align-content:start;padding:var(--space-5) 0 0;border-top:2px solid var(--color-border)}.landing-steps li:before{content:counter(landing-step);display:grid;place-items:center;width:2rem;height:2rem;margin-bottom:var(--space-2);border-radius:50%;background:var(--color-primary);color:var(--color-on-primary);font-weight:var(--weight-bold);font-size:var(--text-md)}.landing-trust{gap:var(--space-5);margin-top:var(--space-8);padding:var(--space-7) var(--space-6);border-radius:var(--radius-xl);background:var(--color-sage)}.landing-trust-list{display:grid;gap:var(--space-4);margin:0;padding:0;list-style:none}.landing-trust-list li{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--text-base)}.landing-trust-list svg{margin-top:2px;color:var(--color-primary)}.landing-cta{display:grid;gap:var(--space-3);justify-items:center;margin-top:var(--space-8);padding:var(--space-8) var(--space-5);text-align:center;border-radius:var(--radius-xl);background:var(--color-accent-soft)}.landing-cta p{color:var(--color-text-muted);margin-bottom:var(--space-2)}.landing-footer{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4) max(var(--space-6),env(safe-area-inset-bottom));font-size:var(--text-sm);color:var(--color-text-muted);text-align:center}.landing-footer-logo{width:24px;height:24px}@media(min-width:60rem){.landing-hero{grid-template-columns:1.05fr .95fr;padding:var(--space-8) 0;min-height:min(44rem,calc(100dvh - 4rem))}.landing-preview{padding:var(--space-8) var(--space-7)}.landing-features{grid-template-columns:repeat(3,1fr)}.landing-trust{grid-template-columns:.8fr 1.2fr;align-items:center;padding:var(--space-8)}}.auth-back{display:flex;justify-content:center;margin-top:var(--space-4);font-size:var(--text-sm)}.auth-back a{color:var(--color-text-muted);text-decoration:underline;text-underline-offset:3px}:root{color-scheme:light;--color-bg: #f5f6f2;--color-surface: #ffffff;--color-surface-muted: #fafbf8;--color-sage: #edf2ea;--color-sage-strong: #e3eadf;--color-text: #1f332b;--color-text-muted: #56655c;--color-border: #d9e0d5;--color-border-strong: #b9c6b4;--color-control: #768679;--color-input: #859487;--color-primary: #234d41;--color-primary-hover: #1a3d33;--color-on-primary: #ffffff;--color-accent: #d9ef85;--color-accent-soft: #eef6d5;--color-illustration-bg: #eef6d5;--color-on-accent: #234d41;--color-selected: #e6efdd;--color-focus: #3f6f55;--color-brand-dot: #679454;--color-inverse: #1f332b;--color-on-inverse: #ffffff;--color-on-inverse-muted: #dfe9dc;--color-scrim: rgb(31 51 43 / .4);--color-timer-track: rgb(255 255 255 / .28);--color-timer-divider: rgb(255 255 255 / .22);--color-timer-ended: #31572c;--color-timer-bg: #234d41;--color-timer-fg: #ffffff;--color-raised: #ffffff;--color-on-accent-soft: #234d41;--logo-body: #8cc59f;--logo-detail: #16261f;--logo-leaf: #d9ef85;--color-on-dark-hover: rgb(255 255 255 / .12);--color-nav-bg: rgb(255 255 255 / .94);--success-fg: #2f6b45;--success-bg: #e8f2e3;--success-border: #b8d3b0;--warning-fg: #8a5a12;--warning-bg: #fbf1dc;--warning-border: #e8d3a6;--danger-fg: #a5483a;--danger-bg: #fbece8;--danger-border: #ebc3ba;--danger-solid: #a5483a;--danger-solid-hover: #8e3b2f;--color-on-danger: #ffffff;--neutral-fg: #56655c;--neutral-bg: #eff1ec;--neutral-border: #d9e0d5;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-rounded: ui-rounded, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--text-xs: .75rem;--text-sm: .8125rem;--text-md: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.5;--weight-semibold: 600;--weight-bold: 700;--tracking-tight: -.02em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 2rem;--space-8: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-pill: 999px;--shadow-card: 0 1px 2px rgb(31 51 43 / .05);--shadow-selected: 0 1px 4px rgb(31 51 43 / .12);--shadow-raised: 0 10px 32px rgb(31 51 43 / .16);--control-sm: 2.5rem;--touch: 2.75rem;--control-md: 3rem;--control-lg: 3.5rem;--sidebar-width: 228px;--content-width: 70rem;--duration: .15s}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-bg: #121a17;--color-surface: #1a2420;--color-surface-muted: #16201c;--color-sage: #22302a;--color-sage-strong: #2b3b34;--color-text: #e6ede8;--color-text-muted: #a3b1a9;--color-border: #2c3a34;--color-border-strong: #4a5c53;--color-control: #7f9187;--color-input: #71847a;--color-primary: #8cc59f;--color-primary-hover: #a1d3b2;--color-on-primary: #0f1d17;--color-accent-soft: #2c3a1f;--color-on-accent-soft: #d9ef85;--color-selected: #243a30;--color-raised: #2e3f37;--color-focus: #a6dbb8;--color-brand-dot: #8fbf6e;--color-inverse: #2e3f37;--color-on-inverse: #e6ede8;--color-on-inverse-muted: #b8c6be;--color-scrim: rgb(0 0 0 / .6);--color-timer-bg: #1e3b31;--color-timer-fg: #e6ede8;--color-timer-ended: #24472f;--color-nav-bg: rgb(26 36 32 / .94);--success-fg: #8fd1a4;--success-bg: #1c3326;--success-border: #2f5a40;--warning-fg: #e8c27a;--warning-bg: #3a2f17;--warning-border: #5c4a22;--danger-fg: #f0a597;--danger-bg: #3d211c;--danger-border: #6a3a31;--danger-solid: #b5503f;--danger-solid-hover: #c4604f;--neutral-fg: #a3b1a9;--neutral-bg: #25302b;--neutral-border: #36443e;--shadow-card: 0 1px 2px rgb(0 0 0 / .3);--shadow-selected: 0 1px 4px rgb(0 0 0 / .4);--shadow-raised: 0 12px 36px rgb(0 0 0 / .5)}}:root[data-theme=dark]{color-scheme:dark;--color-bg: #121a17;--color-surface: #1a2420;--color-surface-muted: #16201c;--color-sage: #22302a;--color-sage-strong: #2b3b34;--color-text: #e6ede8;--color-text-muted: #a3b1a9;--color-border: #2c3a34;--color-border-strong: #4a5c53;--color-control: #7f9187;--color-input: #71847a;--color-primary: #8cc59f;--color-primary-hover: #a1d3b2;--color-on-primary: #0f1d17;--color-accent-soft: #2c3a1f;--color-on-accent-soft: #d9ef85;--color-selected: #243a30;--color-raised: #2e3f37;--color-focus: #a6dbb8;--color-brand-dot: #8fbf6e;--color-inverse: #2e3f37;--color-on-inverse: #e6ede8;--color-on-inverse-muted: #b8c6be;--color-scrim: rgb(0 0 0 / .6);--color-timer-bg: #1e3b31;--color-timer-fg: #e6ede8;--color-timer-ended: #24472f;--color-nav-bg: rgb(26 36 32 / .94);--success-fg: #8fd1a4;--success-bg: #1c3326;--success-border: #2f5a40;--warning-fg: #e8c27a;--warning-bg: #3a2f17;--warning-border: #5c4a22;--danger-fg: #f0a597;--danger-bg: #3d211c;--danger-border: #6a3a31;--danger-solid: #b5503f;--danger-solid-hover: #c4604f;--neutral-fg: #a3b1a9;--neutral-bg: #25302b;--neutral-border: #36443e;--shadow-card: 0 1px 2px rgb(0 0 0 / .3);--shadow-selected: 0 1px 4px rgb(0 0 0 / .4);--shadow-raised: 0 12px 36px rgb(0 0 0 / .5)}:root[data-theme=light]{color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-sans);font-size:100%;color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;font-size:var(--text-base);line-height:var(--leading-normal);background:var(--color-bg)}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--font-rounded);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:transparent;border:0;padding:0}button:disabled{cursor:default}button,a,input,select,textarea,label{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}svg{flex-shrink:0}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}main:focus{outline:none}::selection{background:var(--color-accent);color:var(--color-text)}strong{font-weight:var(--weight-semibold)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-5rem;left:var(--space-5);z-index:100;padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-md)}.skip-link:focus{top:var(--space-3)}.muted{color:var(--color-text-muted)}.small{font-size:var(--text-sm)}.full-width{width:100%}.eyebrow{display:block;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted);line-height:var(--leading-normal)}.mini-label{display:block;font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-snug)}.field-help{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-muted)}.heading-dot{color:var(--color-brand-dot)}.quiet-note{display:flex;gap:var(--space-2);align-items:flex-start;margin-top:var(--space-4);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-muted)}.quiet-note>svg{margin-top:2px}.form-error,.wz-error{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--danger-fg)}.set-row .form-error{margin:var(--space-2) 0 0 var(--space-8)}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;min-width:0;min-height:var(--control-md);padding:var(--space-2) var(--space-3);border:1px solid var(--color-input);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-base);line-height:var(--leading-snug)}textarea{min-height:6rem;padding:var(--space-3);resize:vertical}input::placeholder,textarea::placeholder{color:var(--color-text-muted);opacity:1}input:not([type=checkbox]):not([type=radio]):focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-focus);outline-offset:1px;border-color:var(--color-focus)}input:disabled,select:disabled,textarea:disabled{background:var(--color-surface-muted);color:var(--color-text-muted)}input[type=checkbox],input[type=radio]{width:1.125rem;height:1.125rem;margin:0;flex-shrink:0;accent-color:var(--color-primary)}.auth-form label,.preferences-form fieldset>label,.catalog-toolbar label,.catalog-form label:not(.catalog-check),.program-form label,.wizard-form label,.wz-day-note,.wz-more label,.wz-create label:not(.wz-check){display:grid;gap:var(--space-2);min-width:0;font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text)}.status-fieldset legend,.field-label,.weekday-options legend,.wz-groups legend,.meal-foods legend,.catalog-identity legend{display:block;margin-bottom:var(--space-2);font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text)}fieldset{min-width:0;margin:0;padding:0;border:0}.catalog-check,.wz-check{display:flex;align-items:center;gap:var(--space-3);min-height:var(--touch);font-size:var(--text-md);cursor:pointer}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-md);padding:0 var(--space-5);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:var(--leading-snug);text-align:center;transition:background var(--duration),border-color var(--duration),color var(--duration)}.button.lg{min-height:var(--control-lg);border-radius:var(--radius-lg);font-size:var(--text-base)}.button.primary{background:var(--color-primary);color:var(--color-on-primary)}.button.primary:hover:not(:disabled){background:var(--color-primary-hover)}.button.secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.button.secondary:hover:not(:disabled){background:var(--color-surface-muted);border-color:var(--color-control)}.button.danger{background:var(--danger-solid);color:var(--color-on-danger)}.button.danger:hover:not(:disabled){background:var(--danger-solid-hover)}.button.secondary.danger{background:var(--color-surface);border-color:var(--danger-border);color:var(--danger-fg)}.button.secondary.danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger-fg)}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled,.text-button:disabled,.icon-button:disabled,.chip:disabled{opacity:.5}.text-button{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--touch);padding:0 var(--space-1);border-radius:var(--radius-sm);color:var(--color-primary);font-size:var(--text-md);font-weight:var(--weight-semibold)}.text-button:hover:not(:disabled){text-decoration:underline;text-underline-offset:3px}.text-button.delete-link{color:var(--danger-fg)}.text-link{color:var(--color-primary);font-weight:var(--weight-semibold);text-decoration:underline;text-underline-offset:3px}.icon-button{display:inline-grid;place-items:center;min-width:var(--touch);min-height:var(--touch);padding:var(--space-2);border-radius:var(--radius-pill);color:var(--color-text-muted);transition:background var(--duration),border-color var(--duration),color var(--duration)}.icon-button:hover:not(:disabled){background:var(--color-sage);color:var(--color-text)}.icon-button.is-outlined{background:var(--color-surface);border:1px solid var(--color-border-strong);color:var(--color-text)}.icon-button.is-outlined:hover:not(:disabled){background:var(--color-surface-muted);border-color:var(--color-control)}.icon-button.is-outlined[aria-current]{border-color:var(--color-primary);color:var(--color-primary)}.button-row,.program-actions,.catalog-actions,.preferences-actions,.account-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-4) 0}.account-actions{justify-content:flex-end;margin-top:var(--space-6)}.segmented{display:flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-md);background:var(--color-sage)}.segmented button{position:relative;flex:1 1 0;min-width:max-content;min-height:var(--touch);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:var(--text-md);font-weight:var(--weight-semibold);transition:background var(--duration),color var(--duration)}.segmented button:hover:not([aria-pressed=true]){background:var(--color-sage-strong);color:var(--color-text)}.segmented button[aria-pressed=true]{background:var(--color-raised);color:var(--color-primary);font-weight:var(--weight-bold);box-shadow:var(--shadow-selected)}.segmented-dot{width:6px;height:6px;margin-left:calc(-1 * var(--space-1));align-self:flex-start;margin-top:var(--space-3);border-radius:50%;background:currentColor}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--touch);padding:0 var(--space-4);border:1px solid var(--color-control);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-size:var(--text-md);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--duration),border-color var(--duration),color var(--duration)}.chip:hover:not(:disabled){background:var(--color-surface-muted);border-color:var(--color-primary)}.chip[aria-pressed=true],.chip-check:has(input:checked){background:var(--color-selected);border-color:var(--color-primary);color:var(--color-primary)}.chip[aria-pressed=true]:before{content:"✓";font-weight:var(--weight-bold)}.chip-check{padding-left:var(--space-3)}.chip-check:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.status-options label,.wz-choice-card,.session-picker button{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:border-color var(--duration),background var(--duration)}.status-options label:hover,.wz-choice-card:hover:not(:disabled),.session-picker button:hover{border-color:var(--color-control)}.status-options label.chosen,.session-picker button[aria-current]{border-color:var(--color-primary);background:var(--color-selected);box-shadow:inset 0 0 0 1px var(--color-primary)}.status,.badge-followed,.trend-badge,.next-label,.session-status{display:inline-flex;align-items:center;gap:var(--space-1);padding:0 var(--space-2);min-height:1.5rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-normal);white-space:nowrap}.status,.trend-badge{background:var(--neutral-bg);color:var(--neutral-fg)}.status-followed,.trend-badge.is-up{background:var(--success-bg);color:var(--success-fg)}.status-modified{background:var(--warning-bg);color:var(--warning-fg)}.status-skipped{background:var(--neutral-bg);color:var(--neutral-fg)}.badge-followed{background:var(--color-accent);color:var(--color-on-accent)}.next-label{margin-right:var(--space-2);background:var(--color-accent-soft);color:var(--color-on-accent-soft)}.session-status{background:var(--success-bg);color:var(--success-fg)}.session-status>span{width:6px;height:6px;border-radius:50%;background:currentColor}.panel,.meal-card,.exercise-card,.set-panel,.trend-card,.progress-tile,.workout-summary,.week-rows li,.date-panel,.cycle-card,.wz-exercise,.wz-meal,.wz-summary li,.history-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.panel{padding:var(--space-6)}.panel h3{font-size:var(--text-base)}a.meal-card-link:hover,.exercise-card:hover,a.history-card:hover,button.history-card:hover{border-color:var(--color-border-strong)}.meal-card:has(.meal-card-link:hover){border-color:var(--color-border-strong)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.section-heading h2{font-size:var(--text-xl)}.section-heading h3{font-size:var(--text-base)}.section-heading>span{font-size:var(--text-sm);color:var(--color-text-muted);text-align:right}.section-heading>svg{color:var(--color-text-muted)}.empty-state{text-align:center;padding:var(--space-8) var(--space-6)}.empty-icon{display:grid;place-items:center;width:4rem;height:4rem;margin:0 auto var(--space-5);border-radius:var(--radius-xl);background:var(--color-sage);color:var(--color-primary)}.empty-state h1,.empty-state h2{font-size:var(--text-2xl)}.empty-state h3{font-size:var(--text-lg)}.empty-state p{max-width:27rem;margin:var(--space-3) auto var(--space-6);font-size:var(--text-md);color:var(--color-text-muted)}.plan-empty{display:grid;justify-items:center;gap:var(--space-3);margin-top:var(--space-4)}.plan-empty>.empty-icon{margin:0}.plan-empty>p{margin:0 0 var(--space-3)}.plan-empty>.text-link{margin-top:var(--space-2);padding:var(--space-2) 0}.plan-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3)}.plan-choice{max-width:100%;overflow-wrap:anywhere}.detail-note,.detail-facts{margin:var(--space-4) 0;padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-sage);font-size:var(--text-md);line-height:var(--leading-normal);overflow-wrap:anywhere}.detail-note strong{font-size:var(--text-md)}.detail-note p,.detail-note ul{margin-top:var(--space-2);color:var(--color-text-muted)}.detail-note ul{padding-left:var(--space-5)}.toast-stack{position:fixed;z-index:20;bottom:var(--space-6);left:calc(50% + var(--sidebar-width) / 2);transform:translate(-50%);width:min(30rem,calc(100% - var(--sidebar-width) - var(--space-8)));display:grid;gap:var(--space-2);pointer-events:none}.toast-stack:empty{display:none}.toast{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-inverse);color:var(--color-on-inverse);box-shadow:var(--shadow-raised);font-size:var(--text-md);line-height:var(--leading-normal);animation:toast-in .2s ease-out}.toast-actions{display:flex;gap:var(--space-1);flex-shrink:0}.toast-action{min-height:var(--control-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-on-inverse-muted);font-size:var(--text-md);font-weight:var(--weight-semibold)}.toast-action:hover{background:var(--color-on-dark-hover)}.toast-action.is-primary{color:var(--color-accent)}.toast-action:focus-visible{outline-color:var(--color-accent)}@keyframes toast-in{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}.detail-dialog{width:min(34rem,calc(100% - var(--space-7)));max-height:calc(100dvh - var(--space-8));padding:0;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-raised);overscroll-behavior:contain}.detail-dialog::backdrop{background:var(--color-scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog-close{position:absolute;top:var(--space-3);right:var(--space-3)}.dialog-content{padding:var(--space-7) var(--space-6) var(--space-6)}.dialog-content h2{margin:var(--space-2) var(--space-7) var(--space-3) 0;font-size:var(--text-2xl)}.dialog-content h3{margin:var(--space-6) 0 var(--space-2);font-size:var(--text-base)}.dialog-content p{font-size:var(--text-md)}.dialog-content .small{margin:var(--space-3) 0;font-size:var(--text-sm)}@keyframes sheet-up{0%{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}.sync-indicator{color:var(--color-text-muted)}.sync-indicator-synced{color:var(--success-fg)}.sync-indicator-waiting{color:var(--warning-fg)}.sync-indicator-conflict,.sync-indicator-local{color:var(--danger-fg)}.sync-details{display:grid;gap:var(--space-3)}.sync-details h2{margin:var(--space-1) 0 0!important}.sync-details p{font-size:var(--text-md)!important}.sync-details-icon{display:grid;place-items:center;width:var(--control-md);height:var(--control-md);border-radius:var(--radius-lg);background:var(--color-sage)}.sync-details .program-actions{margin-bottom:0}.sync-status{display:grid;gap:var(--space-2);margin:var(--space-3) 0;padding:var(--space-3) var(--space-4);border:1px solid var(--neutral-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:var(--text-sm);color:var(--color-text-muted)}.sync-status>p[role=status]{display:flex;align-items:center;gap:var(--space-2)}.sync-status.sync-waiting,.sync-status.sync-conflict{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-fg)}.sync-status .text-button{justify-self:start}.sync-conflicts{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.sync-conflicts li{display:grid;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--warning-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);overflow-wrap:anywhere}.network-notice{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) 0;font-size:var(--text-sm);color:var(--color-text-muted)}.plans-message{margin:var(--space-2) 0}.app-shell{display:flex;min-height:100dvh;max-width:1660px;margin:0 auto}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;flex-shrink:0;width:var(--sidebar-width);height:100dvh;padding:var(--space-7) var(--space-5) var(--space-6);border-right:1px solid var(--color-border);background:var(--color-surface)}.brand{display:inline-flex;align-self:flex-start;align-items:center;justify-content:center;gap:var(--space-2);min-width:var(--touch);min-height:var(--touch);border-radius:var(--radius-md)}.brand-logo{display:block;flex-shrink:0;width:2.75rem;height:2.75rem}.brand-name{color:var(--color-text);font-family:var(--font-rounded);font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);white-space:nowrap}.brand-name>span{color:var(--color-brand-dot)}.primary-nav{display:grid;gap:var(--space-2);margin-top:var(--space-7)}.primary-nav a{display:flex;align-items:center;gap:var(--space-3);min-height:var(--control-md);padding:0 var(--space-4);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-md);font-weight:var(--weight-semibold)}.primary-nav a>span{flex:1}.primary-nav a:not([aria-current]):hover{background:var(--color-sage);color:var(--color-text)}.primary-nav a[aria-current]{background:var(--color-selected);color:var(--color-primary)}.sidebar-bottom{margin-top:auto;padding-top:var(--space-7)}.account-link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--control-md);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.account-link>span:nth-child(2){flex:1}.account-link strong,.account-link small{display:block}.account-link strong{font-size:var(--text-sm)}.account-link small{margin-top:2px;font-size:var(--text-xs);color:var(--color-text-muted)}.account-link[aria-current] strong{color:var(--color-primary)}.avatar{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--color-sage)}.workspace{flex:1;min-width:0;padding:0 var(--space-8) var(--space-8)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);max-width:var(--content-width);height:5rem;margin:0 auto;border-bottom:1px solid var(--color-border)}.topbar-actions{display:flex;align-items:center;gap:var(--space-2)}.topbar,.mobile-brand,.bottom-nav{display:none}main{max-width:var(--content-width);margin:0 auto;padding-top:var(--space-7)}.day-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.day-header h1{font-size:var(--text-3xl)}.section-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.history-button{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--touch);padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-primary);font-size:var(--text-md);font-weight:var(--weight-semibold)}.history-button:hover{border-color:var(--color-control);background:var(--color-surface-muted)}.subpage-header{display:grid;grid-template-columns:var(--touch) minmax(0,1fr) auto;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.subpage-title{min-width:0}.subpage-title h1{font-size:var(--text-3xl)}.subpage-title p{margin-top:2px;font-size:var(--text-md);line-height:var(--leading-snug);color:var(--color-text-muted)}.subpage-title p:first-letter{text-transform:uppercase}.subpage-actions{display:flex;align-items:center;gap:var(--space-1)}@media(max-width:1200px){:root{--sidebar-width: 208px}.workspace{padding-left:var(--space-7);padding-right:var(--space-7)}.sidebar{padding-left:var(--space-4);padding-right:var(--space-4)}}@media(max-width:720px){.sidebar{display:none}.workspace{padding:0 var(--space-4) calc(6rem + env(safe-area-inset-bottom))}.topbar{display:flex;height:calc(3.625rem + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.mobile-brand{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-width:var(--touch);min-height:var(--touch);border-radius:var(--radius-sm)}.mobile-brand .brand-logo{width:2.25rem;height:2.25rem}.topbar-actions{gap:var(--space-1)}main{padding-top:var(--space-4)}.panel{padding:var(--space-5)}.day-header{margin-bottom:var(--space-3)}.day-header h1{font-size:var(--text-2xl)}.subpage-header{gap:var(--space-3);margin-bottom:var(--space-4)}.subpage-title h1{font-size:var(--text-2xl)}.subpage-title p{font-size:var(--text-sm)}.bottom-nav{position:fixed;z-index:10;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:var(--space-3);padding:var(--space-1) var(--space-4) calc(var(--space-1) + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bottom-nav a{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);min-width:0;max-width:14rem;min-height:var(--control-md);padding:var(--space-1);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.bottom-nav a>svg{box-sizing:content-box;padding:var(--space-1) var(--space-4);border-radius:var(--radius-pill);transition:background var(--duration)}.bottom-nav a[aria-current]{color:var(--color-primary);font-weight:var(--weight-bold)}.bottom-nav a[aria-current]>svg{background:var(--color-accent);color:var(--color-on-accent)}.detail-dialog{max-height:calc(100dvh - var(--space-7) - env(safe-area-inset-top))}.dialog-content{padding:var(--space-7) var(--space-5) var(--space-6)}.sheet-dialog{width:100%;max-width:100%;max-height:90dvh;margin:auto 0 0;border-bottom:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:sheet-up .25s ease-out}.sheet-dialog .dialog-content{padding:var(--space-6) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom))}.sheet-dialog:before{content:"";position:absolute;top:var(--space-2);left:50%;width:2.5rem;height:4px;border-radius:var(--radius-pill);background:var(--color-border-strong);transform:translate(-50%)}.toast-stack{left:var(--space-3);right:var(--space-3);width:auto;transform:none;bottom:calc(4.5rem + env(safe-area-inset-bottom))}.focus-mode .bottom-nav,.focus-mode .topbar,.session-mode .topbar,.session-mode .bottom-nav,.subpage-mode .topbar{display:none}.focus-mode .workspace{padding-bottom:0}.focus-mode main{padding-top:calc(var(--space-3) + env(safe-area-inset-top))}.session-mode main,.subpage-mode main{padding-top:calc(var(--space-4) + env(safe-area-inset-top))}.session-mode .workspace{padding-bottom:calc(var(--space-7) + env(safe-area-inset-bottom))}.session-mode .toast-stack{bottom:calc(var(--space-3) + env(safe-area-inset-bottom))}.focus-mode .toast-stack{bottom:calc(6rem + env(safe-area-inset-bottom))}.full-width-mobile{width:100%}}@media(max-width:370px){.workspace{padding-left:var(--space-3);padding-right:var(--space-3)}.day-header h1{font-size:var(--text-xl)}.history-button{padding:0 var(--space-3)}.history-button>svg{display:none}}.date-panel{padding:var(--space-1) var(--space-4) var(--space-3);border-radius:var(--radius-lg)}.date-panel.is-other-day{background:var(--color-surface-muted);border-color:var(--warning-border)}.date-topline{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.date-actions{display:flex;align-items:center;flex-shrink:0}.date-button{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;min-height:var(--touch);margin-left:calc(-1 * var(--space-2));padding:0 var(--space-3) 0 var(--space-2);border-radius:var(--radius-md);font-size:var(--text-md);cursor:pointer}.date-button>svg{color:var(--color-text-muted)}.date-button:hover{background:var(--color-sage)}.date-button:focus-within{outline:3px solid var(--color-focus);outline-offset:0}.date-button-text{display:flex;gap:var(--space-2);min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.date-button-text>span{overflow:hidden;text-overflow:ellipsis}.date-button-text>span:first-letter{text-transform:uppercase}.date-button-text strong{font-weight:var(--weight-bold);color:var(--color-primary)}.date-button-text strong~span:before{content:"·";margin-right:var(--space-2);color:var(--color-text-muted)}.date-short{display:none}.date-button input:not([type=checkbox]){position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;opacity:0;cursor:pointer}.date-button input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;cursor:pointer}.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}.week-day{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);min-height:4rem;padding:var(--space-2) 2px var(--space-1);border-radius:var(--radius-md);transition:background var(--duration)}.week-day>span:first-child{font-size:var(--text-xs);text-transform:uppercase;color:var(--color-text-muted)}.week-day strong{font-family:var(--font-rounded);font-size:var(--text-lg);font-variant-numeric:tabular-nums}.week-day:not(.selected):hover{background:var(--color-sage)}.week-day.selected{background:var(--color-selected);color:var(--color-primary);box-shadow:inset 0 0 0 1.5px var(--color-primary)}.week-day.selected>span:first-child{color:var(--color-primary)}.week-day.is-today:not(.selected){box-shadow:inset 0 0 0 1.5px var(--color-control)}.week-day.is-today:not(.selected) strong{color:var(--color-primary)}.week-day-mark{width:6px;height:6px;border-radius:50%;visibility:hidden}.week-day-mark.is-done{visibility:visible;background:var(--color-primary)}.week-day-mark.is-planned{visibility:visible;box-shadow:inset 0 0 0 1.5px var(--color-control)}.selected .week-day-mark.is-planned{box-shadow:inset 0 0 0 1.5px var(--color-primary)}.past-notice{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-3);border:1px solid var(--warning-border);border-radius:var(--radius-md);background:var(--warning-bg);color:var(--warning-fg);font-size:var(--text-md);line-height:var(--leading-snug)}.past-notice>span{flex:1;min-width:0}.past-notice-today{flex-shrink:0;min-height:var(--control-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-primary);font-size:var(--text-md);font-weight:var(--weight-bold)}.past-notice-today:hover{background:var(--color-surface-muted)}.day-type{margin:var(--space-4) 0 var(--space-1)}.day-type-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.day-type h2{font-size:var(--text-base)}.day-type .segmented{flex:0 1 18rem}.day-type-hint{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.diet-plan-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-4);margin:var(--space-3) 0 var(--space-1);font-size:var(--text-md)}.diet-plan-name{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;min-height:var(--touch);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.diet-plan-name>svg{color:var(--color-text-muted)}.diet-guidance-toggle{font-size:var(--text-md);color:var(--color-primary)}.diet-guidance-toggle summary,.workout-guidance summary{display:inline-flex;align-items:center;gap:var(--space-1);min-height:var(--touch);font-weight:var(--weight-semibold);cursor:pointer;list-style:none}.diet-guidance-toggle summary::-webkit-details-marker,.workout-guidance summary::-webkit-details-marker{display:none}.diet-guidance-toggle[open]{flex-basis:100%}.diet-guidance-toggle[open] summary>svg{transform:rotate(180deg)}.diet-guidance-toggle p{margin:0 0 var(--space-2);font-size:var(--text-md);color:var(--color-text-muted);white-space:pre-wrap;overflow-wrap:anywhere}.diet-plan-day{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:auto;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.diet-plan-day select{width:auto;max-width:12.5rem;min-height:var(--control-sm);font-size:var(--text-md)}.diet-plan-note{flex-basis:100%;font-size:var(--text-sm);color:var(--color-text-muted)}.plan-selectors{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-4) 0}.plan-selector{display:grid;gap:var(--space-2);min-width:min(17.5rem,100%);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.meals-section{margin-top:var(--space-4)}.day-progress{display:flex;gap:var(--space-1);margin:calc(-1 * var(--space-1)) 0 var(--space-4)}.day-progress>span{flex:1;height:4px;border-radius:var(--radius-pill);background:var(--color-sage-strong);transition:background .2s}.day-progress>span.is-filled{background:var(--color-primary)}.meal-list{display:grid;gap:var(--space-4)}.meal-card{position:relative;min-width:0;transition:border-color var(--duration)}.meal-card-link{display:block;min-width:0;padding:var(--space-5);border-radius:inherit}.meal-card-heading{display:flex;align-items:center;gap:var(--space-4);padding-right:3.5rem}.meal-card-copy{flex:1;min-width:0}.meal-card h3{margin-top:2px;font-size:var(--text-lg);overflow-wrap:anywhere}.meal-card .meal-food-empty{margin-top:var(--space-4);font-size:var(--text-md);color:var(--color-text-muted);overflow-wrap:anywhere}.meal-food-preview{display:grid;gap:var(--space-2);margin:var(--space-4) 0 0;padding:0;list-style:none;font-size:var(--text-md);line-height:var(--leading-normal)}.meal-food-preview li{position:relative;min-width:0;padding:.5rem .75rem .5rem 1.5rem;border-radius:var(--radius-sm);background:var(--color-sage);color:var(--color-text);overflow-wrap:anywhere}.meal-food-preview li:before{content:"";position:absolute;top:1rem;left:.65rem;width:.3rem;height:.3rem;border-radius:var(--radius-pill);background:var(--color-brand-dot)}.meal-food-preview strong{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.meal-kcal{margin:var(--space-3) 0 0;color:var(--color-primary);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.meal-plan-settings{display:grid;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-sage);min-width:0}.diet-period,.diet-energy{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin-bottom:var(--space-4);overflow-wrap:anywhere}.diet-period p{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.diet-period{padding:0 var(--space-1);border:0;background:transparent;margin-bottom:var(--space-3);font-size:var(--text-sm)}.diet-energy{position:relative}.diet-energy-head{padding-right:2.25rem}.diet-energy .energy-details{margin-top:0}.diet-energy .energy-details summary{position:absolute;top:var(--space-2);right:var(--space-2);display:grid;place-items:center;width:var(--touch);height:var(--touch);border-radius:var(--radius-pill)}.diet-energy .energy-details summary:hover{background:var(--color-sage)}.diet-energy .energy-details[open]{padding-top:var(--space-3)}.diet-period a{display:inline-block;margin-top:var(--space-2);font-size:var(--text-sm)}.diet-period.is-finished{border-color:var(--warning-border);background:var(--warning-bg)}.diet-energy-head{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.diet-energy-head>span:first-child{color:var(--color-text);font-weight:var(--weight-semibold)}.diet-energy-numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:var(--space-4) 0}.diet-energy-numbers strong{display:block;font-family:var(--font-rounded);font-size:var(--text-2xl);color:var(--color-primary);font-variant-numeric:tabular-nums}.diet-energy-numbers span{font-size:var(--text-sm);color:var(--color-text-muted)}.diet-energy progress{display:block;width:100%;height:6px;margin-bottom:var(--space-3);border:0;border-radius:var(--radius-pill);overflow:hidden;background:var(--color-sage-strong)}.diet-energy progress::-webkit-progress-bar{background:var(--color-sage-strong)}.diet-energy progress::-webkit-progress-value{background:var(--color-primary)}.diet-energy progress::-moz-progress-bar{background:var(--color-primary)}.energy-details{margin-top:var(--space-3);font-size:var(--text-sm)}.energy-details summary{cursor:pointer;min-height:var(--touch);display:flex;align-items:center;color:var(--color-primary)}.energy-details p{margin-bottom:var(--space-3)}.energy-source-list{padding:0;list-style:none;display:grid;gap:var(--space-4)}.energy-source-list li{display:grid;gap:var(--space-2);overflow-wrap:anywhere}.energy-source-list a{min-height:var(--touch);display:flex;align-items:center;text-decoration:underline}.food-energy-info{margin-bottom:var(--space-3)}.meal-card .status{margin-top:var(--space-2)}.meal-card.is-recorded{background:var(--color-surface-muted)}.meal-card.is-next{border-color:var(--success-border);box-shadow:inset 0 0 0 1px var(--success-border)}.meal-image{display:block;flex-shrink:0;width:4rem;height:4rem;padding:.2rem;object-fit:contain;border-radius:var(--radius-lg);background:var(--color-illustration-bg)}.meal-quick,.set-check{display:grid;place-items:center;flex-shrink:0;border:1.5px solid var(--color-control);background:var(--color-surface);color:var(--color-control);transition:background var(--duration),border-color var(--duration),color var(--duration)}.meal-quick{position:absolute;top:var(--space-5);right:var(--space-5);width:var(--touch);height:var(--touch);border-radius:50%}.meal-quick:hover:not(.is-static),.set-check:hover:not(:disabled):not(.is-complete){border-color:var(--color-primary);color:var(--color-primary)}.meal-quick.is-done,.set-check.is-complete{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.meal-quick.is-done svg,.set-check.is-complete svg{animation:check-pop .22s ease-out}.meal-quick.is-static{border:0}.meal-quick.status-modified{background:var(--warning-bg);color:var(--warning-fg)}.meal-quick.status-skipped{background:var(--neutral-bg);color:var(--neutral-fg)}@keyframes check-pop{0%{transform:scale(.5);opacity:0}to{transform:none;opacity:1}}@media(min-width:1201px){.meal-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.food-list{display:grid;gap:var(--space-3);margin:var(--space-5) 0;padding:0;list-style:none;font-size:var(--text-md)}.food-list li{display:flex;align-items:center;gap:var(--space-2)}.food-list svg{color:var(--success-fg)}.status-fieldset{margin:var(--space-6) 0 var(--space-5)}.status-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.status-options label{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:4.75rem;padding:var(--space-3) var(--space-2);font-size:var(--text-md);font-weight:var(--weight-semibold);text-align:center;cursor:pointer}.status-options input{position:absolute;width:1px;height:1px;opacity:0}.status-options label:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.status-option-icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--success-bg);color:var(--success-fg)}.status-option-followed.chosen .status-option-icon{background:var(--color-primary);color:var(--color-on-primary)}.status-option-modified .status-option-icon{background:var(--warning-bg);color:var(--warning-fg)}.status-option-skipped .status-option-icon{background:var(--neutral-bg);color:var(--neutral-fg)}.dialog-content textarea{margin-bottom:var(--space-4);background:var(--color-surface)}.meal-unrecord{display:flex;margin:var(--space-2) auto 0;color:var(--color-text-muted)}.workout-overview{margin-top:var(--space-4)}.workout-overview>.small.muted{margin-bottom:var(--space-2)}.workout-summary{display:grid;gap:var(--space-2);margin-bottom:var(--space-6);padding:var(--space-5) var(--space-6) var(--space-6)}.workout-summary-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:var(--space-7)}.workout-kicker{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-primary)}.workout-kicker:first-letter{text-transform:uppercase}.change-session{flex-shrink:0;font-size:var(--text-sm)}.workout-kicker.is-active{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--success-fg)}.workout-live-dot{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px var(--success-bg)}.workout-live-progress{display:grid;gap:var(--space-2)}.workout-live-progress strong{color:var(--color-text)}.workout-live-progress progress{display:block;width:100%;max-width:32.5rem;height:6px;overflow:hidden;border:0;border-radius:var(--radius-pill);background:var(--color-sage-strong)}.workout-live-progress progress::-webkit-progress-bar{background:var(--color-sage-strong)}.workout-live-progress progress::-webkit-progress-value{background:var(--color-primary);border-radius:var(--radius-pill)}.workout-live-progress progress::-moz-progress-bar{background:var(--color-primary)}.workout-blocked{font-size:var(--text-sm);color:var(--color-text-muted)}.workout-summary h2{font-size:var(--text-3xl)}.workout-stats{font-size:var(--text-md);color:var(--color-text-muted)}.cycle-link{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2) var(--space-3);max-width:32.5rem;margin-top:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-sage)}.cycle-link.is-static{grid-template-columns:minmax(0,1fr)}.cycle-link:hover:not(.is-static){background:var(--color-sage-strong)}.cycle-link>svg{grid-column:2;grid-row:1 / span 2;color:var(--color-text-muted)}.cycle-link-copy{display:grid;gap:2px;min-width:0}.cycle-link-copy strong{font-size:var(--text-md);overflow-wrap:anywhere}.cycle-link-copy small{font-size:var(--text-sm);color:var(--color-text-muted)}.cycle-link-bar{grid-column:1;height:4px;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-border)}.cycle-link-bar>span{display:block;height:100%;border-radius:inherit;background:var(--color-primary)}.workout-guidance{font-size:var(--text-md);color:var(--color-primary)}.workout-guidance p{color:var(--color-text-muted);white-space:pre-wrap;overflow-wrap:anywhere}.workout-start{justify-self:start;justify-content:space-between;min-width:17.5rem;margin-top:var(--space-3)}.session-switch{max-width:22.5rem;margin-bottom:var(--space-3)}.session-switch button{font-family:var(--font-rounded);font-size:var(--text-base)}.session-picker h2{margin-bottom:var(--space-2)}.session-picker ul{display:grid;gap:var(--space-2);margin:var(--space-4) 0 0;padding:0;list-style:none}.session-picker button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);min-height:3.75rem;padding:var(--space-2) var(--space-3);text-align:left}.session-picker button>svg{color:var(--color-primary)}.session-picker-day{display:grid;place-items:center;min-width:var(--touch);height:2.25rem;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--color-sage);color:var(--color-primary);font-size:var(--text-sm);font-weight:var(--weight-bold)}.session-picker-copy strong,.session-picker-copy small{display:block;overflow-wrap:anywhere}.session-picker-copy strong{font-size:var(--text-base)}.session-picker-copy small{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.plan-guidance{display:grid;gap:var(--space-4);margin:0 0 var(--space-5);padding:var(--space-4) var(--space-5);font-size:var(--text-md)}.plan-guidance p{margin-top:var(--space-2);color:var(--color-text-muted);overflow-wrap:anywhere}.resume-banner{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-4) var(--space-5);border:1px solid var(--success-border);border-radius:var(--radius-md);background:var(--success-bg);color:var(--success-fg);font-size:var(--text-md)}.resume-banner>span:nth-child(2){flex:1}.resume-banner strong,.resume-banner small{display:block}.resume-banner strong{color:var(--color-text)}.resume-banner small{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.cycle-finished{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--space-3);margin:var(--space-3) 0;padding:var(--space-4);border:1px solid var(--success-border);border-radius:var(--radius-lg);background:var(--success-bg);color:var(--success-fg)}.cycle-finished p{margin-top:2px;font-size:var(--text-md);color:var(--color-text)}.cycle-finished .program-actions{grid-column:1 / -1;margin-bottom:0}.rest-day{display:grid;justify-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-7) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-sage);text-align:center}.rest-day-icon{display:grid;place-items:center;width:4rem;height:4rem;margin-bottom:var(--space-1);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-primary)}.rest-day h2{font-size:var(--text-2xl)}.rest-day>p{font-size:var(--text-md);color:var(--color-text-muted)}.rest-day-options{display:grid;justify-items:center;gap:var(--space-3);margin-top:var(--space-3);font-size:var(--text-md);font-weight:var(--weight-semibold)}.rest-day-options .chip-row{justify-content:center}.exercise-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.exercise-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-4)}.exercise-number{display:grid;place-items:center;flex-shrink:0;width:2.5rem;height:2.75rem;border-radius:var(--radius-sm);background:var(--color-sage);color:var(--color-primary);font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.exercise-number.is-done{background:var(--color-primary);color:var(--color-on-primary)}.exercise-copy{flex:1;min-width:0}.exercise-card h3{font-size:var(--text-lg)}.exercise-card p{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.exercise-card .exercise-prescription strong{font-size:var(--text-md);color:var(--color-text)}.exercise-card .mini-label{margin-top:var(--space-1)}.exercise-card>svg:last-child{color:var(--color-text-muted)}.overview-previous{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-primary)}.overview-previous>span{color:var(--color-text-muted)}.prescription-stats{display:flex;gap:var(--space-3);margin:var(--space-4) 0;padding:var(--space-5) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.prescription-stats>div{display:flex;flex:1;flex-direction:column;gap:var(--space-1)}.prescription-stats strong{font-family:var(--font-rounded);font-size:var(--text-xl);font-variant-numeric:tabular-nums}.prescription-stats span{font-size:var(--text-sm);color:var(--color-text-muted)}.previous-heading>span{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-md);font-weight:var(--weight-semibold)}.previous-heading p{margin:var(--space-1) 0 var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.previous-results>div{display:grid;grid-template-columns:4rem 1fr 1.25rem;align-items:center;gap:var(--space-3);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);font-size:var(--text-md)}.previous-results>div>span{font-size:var(--text-sm);color:var(--color-text-muted)}.previous-results svg{color:var(--success-fg)}.no-previous{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:12rem;padding:var(--space-6) var(--space-1);text-align:center;color:var(--color-text-muted)}.no-previous h3{margin:var(--space-4) 0 var(--space-2);font-size:var(--text-md);color:var(--color-text)}.no-previous p{max-width:15rem;font-size:var(--text-sm)}.previous-sheet h2{margin-top:2px!important}@media(max-width:1200px){.exercise-list{grid-template-columns:1fr}}@media(max-width:720px){.date-panel{padding:2px var(--space-2) var(--space-2);border-radius:var(--radius-md)}.week-strip{gap:var(--space-1)}.week-day{min-height:3.75rem}.date-long{display:none}.date-short{display:inline}.date-button{font-size:var(--text-base)}.day-type .segmented{flex-basis:15rem}.diet-plan-day{margin-left:0}.meal-card-link{padding:var(--space-4)}.meal-card-heading{gap:var(--space-3)}.meal-image{width:3.5rem;height:3.5rem}.meal-quick{top:var(--space-4);right:var(--space-4)}.workout-summary{margin-bottom:var(--space-5);padding:var(--space-4)}.workout-summary h2{font-size:var(--text-2xl)}.workout-stats{font-size:var(--text-sm)}.workout-start{justify-self:stretch;min-width:0}.session-switch{max-width:none}.cycle-link{max-width:none;padding:var(--space-3)}.exercise-card{gap:var(--space-3);padding:var(--space-4) var(--space-3)}.resume-banner{padding:var(--space-3)}}@media(max-width:370px){.day-type-row{flex-wrap:wrap}.day-type .segmented{flex-basis:100%}.exercise-card{gap:var(--space-2);padding:var(--space-4) var(--space-3)}.date-button{font-size:var(--text-md);padding-right:var(--space-1)}.date-actions .icon-button{min-width:var(--control-sm)}}.session-page{max-width:47.5rem;margin-inline:auto}.session-page .subpage-header{margin-bottom:var(--space-4)}.session-more{color:var(--color-text)}.session-progress{margin:0 0 var(--space-4)}.session-progress>div{display:flex;justify-content:space-between;margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.session-progress strong{color:var(--color-primary);font-variant-numeric:tabular-nums}.session-progress progress{display:block;width:100%;height:6px;overflow:hidden;border:0;border-radius:var(--radius-pill);background:var(--color-sage-strong)}.session-progress progress::-webkit-progress-bar{background:var(--color-sage-strong)}.session-progress progress::-webkit-progress-value{background:var(--color-primary);border-radius:var(--radius-pill)}.session-progress progress::-moz-progress-bar{background:var(--color-primary)}.session-correction{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin:0 0 var(--space-4)}.session-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--space-4)}.set-panel{min-width:0;overflow:hidden;scroll-margin-top:var(--space-4)}.set-panel.exercise-complete{border-color:var(--success-border)}.set-panel.is-collapsed{background:var(--color-surface-muted)}.set-card-heading{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-2)}.set-card-heading>div{flex:1;min-width:0}.set-card-heading h2{margin-top:2px;font-size:var(--text-lg)}.exercise-counter{font-family:var(--font-rounded);font-size:var(--text-base);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.exercise-counter>span{font-size:var(--text-sm);font-weight:400;color:var(--color-text-muted)}.prescription-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-4);padding:0 var(--space-5) var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.prescription-line>span{display:flex;align-items:center;gap:var(--space-1)}.prescription-line strong{color:var(--color-text)}.set-rows{padding:var(--space-3) var(--space-5) var(--space-1);border-top:1px solid var(--color-border)}.set-grid{display:grid;grid-template-columns:2rem 1fr 1fr var(--touch);align-items:center;gap:var(--space-2)}.set-header{padding-bottom:var(--space-2);font-size:var(--text-xs);text-align:center;color:var(--color-text-muted)}.set-row{padding:var(--space-2) 0;border-bottom:1px solid var(--color-sage)}.set-row:last-of-type{border-bottom:0}.set-grid strong{font-size:var(--text-md);text-align:center;font-variant-numeric:tabular-nums}.set-grid strong small{display:block;font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-muted)}.set-row.optional-set .set-grid strong{color:var(--color-text-muted)}.set-grid input:not([type=checkbox]){height:var(--control-md);padding:var(--space-1);font-family:var(--font-rounded);font-size:var(--text-lg);text-align:center;font-variant-numeric:tabular-nums}.set-grid input[readonly]{background:var(--color-surface-muted)}.row-complete input:not([type=checkbox]){background:var(--success-bg);border-color:var(--success-border)}.set-check{width:var(--touch);height:var(--control-md);border-radius:var(--radius-md)}.set-check:disabled{opacity:1}.set-check:disabled:not(.is-complete){border-color:var(--color-border);color:var(--color-border-strong)}.previous-inline{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-1) 0 0 2.5rem;font-size:var(--text-sm);color:var(--color-text-muted)}.previous-inline strong{color:var(--color-text)}.set-card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:3.5rem;padding:0 var(--space-5) var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.set-card-footer .text-button{font-size:var(--text-sm)}.set-card-footer-end{display:flex;align-items:center;gap:var(--space-4);margin-left:auto}.set-summary{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:inherit;text-align:left;color:var(--color-text)}.set-summary>svg{color:var(--color-text-muted)}.set-summary-copy{min-width:0}.set-summary-copy strong{display:block;font-size:var(--text-base);overflow-wrap:anywhere}.set-summary-copy small{display:block;margin-top:2px;overflow:hidden;font-size:var(--text-sm);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis}.session-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-6) 0 var(--space-3)}.session-actions>span{font-size:var(--text-sm);color:var(--color-text-muted)}.session-page.is-active .session-actions{position:sticky;bottom:0;z-index:6;margin-top:var(--space-3);padding:var(--space-5) 0 calc(var(--space-4) + env(safe-area-inset-bottom));background:linear-gradient(to bottom,transparent,var(--color-bg) 34%)}.session-options{display:grid;gap:var(--space-3)}.session-options h2{margin-bottom:0!important}.session-end-actions{align-items:center;margin-bottom:0}.session-end-actions .text-button{margin-left:auto}.rest-timer{position:fixed;z-index:15;bottom:var(--space-5);left:calc(50% + var(--sidebar-width) / 2);transform:translate(-50%);display:flex;align-items:center;gap:var(--space-4);width:min(45rem,calc(100% - var(--sidebar-width) - var(--space-8)));padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--color-timer-bg);color:var(--color-timer-fg);box-shadow:var(--shadow-raised)}.rest-ended{background:var(--color-timer-ended)}.timer-ring{position:relative;display:grid;place-items:center;flex-shrink:0;width:2.875rem;height:2.875rem;color:var(--color-accent)}.timer-ring>svg:first-child{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--color-timer-track);stroke-width:3}.timer-ring-progress{stroke:var(--color-accent);stroke-linecap:round}.timer-copy{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.timer-label{font-size:var(--text-md);font-weight:var(--weight-semibold)}.timer-context{overflow:hidden;font-size:var(--text-xs);color:var(--color-on-inverse-muted);white-space:nowrap;text-overflow:ellipsis}.timer-count{font-family:var(--font-rounded);font-size:var(--text-3xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.timer-controls{display:flex;align-items:center;gap:var(--space-1)}.timer-extra{min-height:var(--control-sm);padding:0 var(--space-3);border:1px solid var(--color-timer-track);border-radius:var(--radius-sm);color:var(--color-accent);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.timer-controls .icon-button{color:var(--color-timer-fg);border-radius:var(--radius-sm)}.timer-controls .icon-button:hover{background:var(--color-on-dark-hover)}.timer-dismiss{display:flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:var(--touch);padding:0 var(--space-2);color:var(--color-timer-fg);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.has-timer .workspace{padding-bottom:9.5rem}.has-timer .toast-stack{bottom:8rem}.has-timer .session-page.is-active .session-actions{bottom:6.75rem}@media(max-width:1200px){.session-cards{grid-template-columns:1fr;max-width:40rem;margin:auto}}@media(max-width:950px){.rest-timer{flex-wrap:wrap}.timer-controls{width:100%;justify-content:flex-end;padding-top:var(--space-2);border-top:1px solid var(--color-timer-divider)}.timer-controls .timer-extra{margin-right:auto}.has-timer .workspace{padding-bottom:12.5rem}.has-timer .toast-stack{bottom:10.5rem}}@media(min-width:721px){.session-page .subpage-actions .sync-indicator{display:none}}@media(max-width:720px){.session-cards{gap:var(--space-3)}.set-card-heading{gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-2)}.prescription-line{padding:0 var(--space-4) var(--space-3)}.set-rows{padding:var(--space-3) var(--space-4) var(--space-1)}.set-row{padding:var(--space-1) 0}.set-card-footer{padding:0 var(--space-4) 2px}.set-summary{gap:var(--space-3);padding:var(--space-3) var(--space-4)}.session-actions{gap:var(--space-3)}.session-actions>span{flex:1;min-width:0;line-height:var(--leading-snug)}.session-actions .button{flex-shrink:0}.session-end-actions{flex-direction:column;align-items:stretch}.session-end-actions .text-button{justify-content:center;margin-left:0}.rest-timer{left:var(--space-3);right:var(--space-3);bottom:calc(4.75rem + env(safe-area-inset-bottom));width:auto;transform:none;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-2);border-radius:var(--radius-lg)}.timer-ring{width:2.375rem;height:2.375rem}.timer-count{font-size:var(--text-2xl)}.timer-controls .icon-button,.timer-dismiss{min-height:var(--control-sm)}.rest-ended .timer-controls{width:auto;padding:0;border:0}.has-timer .workspace{padding-bottom:calc(15.5rem + env(safe-area-inset-bottom))}.has-timer .toast-stack{bottom:calc(12rem + env(safe-area-inset-bottom))}.session-mode .rest-timer{bottom:calc(var(--space-2) + env(safe-area-inset-bottom));padding:var(--space-3) var(--space-3)}.session-mode .timer-controls{width:auto;padding:0;border:0}.session-mode .timer-controls .timer-extra{margin:0}.session-mode .timer-context{display:none}.session-mode.has-timer .workspace{padding-bottom:calc(10.5rem + env(safe-area-inset-bottom))}.session-mode.has-timer .toast-stack{bottom:calc(7.5rem + env(safe-area-inset-bottom))}.session-mode.has-timer .session-page.is-active .session-actions{bottom:calc(4.75rem + env(safe-area-inset-bottom))}}@media(max-width:390px){.session-mode .rest-timer{flex-wrap:wrap}.session-mode .timer-controls{width:100%;justify-content:space-between;padding-top:var(--space-1);border-top:1px solid var(--color-timer-divider)}.session-mode.has-timer .workspace{padding-bottom:calc(13rem + env(safe-area-inset-bottom))}.session-mode.has-timer .session-page.is-active .session-actions{bottom:calc(7.25rem + env(safe-area-inset-bottom))}}@media(max-width:370px){.set-card-heading,.set-rows,.set-card-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.session-page .session-status{display:none}.timer-context{max-width:9rem}}.cycle-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--space-2) var(--space-5);padding:var(--space-5) var(--space-6)}.cycle-card h2{margin:2px 0;font-size:var(--text-3xl);color:var(--color-primary);font-variant-numeric:tabular-nums}.cycle-card h2 small{font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:0;color:var(--color-text)}.cycle-card p{font-size:var(--text-md);color:var(--color-text-muted)}.cycle-meta{display:grid;gap:var(--space-1);font-size:var(--text-sm);text-align:right}.cycle-meta span{color:var(--color-text-muted)}.cycle-bar{grid-column:1 / -1;height:8px;margin-top:var(--space-1);overflow:hidden;border-radius:var(--radius-pill);background:var(--color-sage-strong)}.cycle-bar span{display:block;height:100%;border-radius:inherit;background:var(--color-primary)}.progress-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:var(--space-3) 0 var(--space-6)}.progress-tile{display:grid;align-content:start;gap:2px;min-width:0;padding:var(--space-4)}.progress-tile strong{font-family:var(--font-rounded);font-size:var(--text-2xl);color:var(--color-primary);font-variant-numeric:tabular-nums}.progress-tile span{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.progress-tile small{font-size:var(--text-sm);line-height:var(--leading-snug);color:var(--color-text-muted)}.progress-section{margin-bottom:var(--space-7)}.progress-legend{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:calc(-1 * var(--space-1)) 0 var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.progress-legend .slot{width:1.25rem;height:1.25rem;margin-left:var(--space-1);border-radius:6px;font-size:var(--text-xs)}.week-rows{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.week-rows li{display:grid;grid-template-columns:6rem minmax(0,1fr);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md)}.week-rows li.is-current{background:var(--color-surface-muted);border-color:var(--color-primary)}.week-name strong,.week-name small{display:block}.week-name strong{font-size:var(--text-md)}.week-name small{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.week-slots{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.slot{position:relative;display:inline-grid;place-items:center;width:2.5rem;height:2.75rem;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-bold)}.week-slots .slot{align-content:center;gap:0}.slot em{font-size:var(--text-xs);font-style:normal;font-weight:var(--weight-semibold);line-height:1.1}.slot.is-done{background:var(--color-accent);color:var(--color-on-accent)}.slot.is-missed{background:var(--neutral-bg);color:var(--neutral-fg);border:1px solid var(--neutral-border)}.slot.is-planned{background:transparent;border:1.5px dashed var(--color-border-strong);color:var(--color-text-muted)}.slot-extra{align-self:center;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-primary)}.progress-week-history{margin-top:var(--space-3)}.progress-week-history summary{display:flex;align-items:center;justify-content:space-between;min-height:var(--touch);padding:0 var(--space-1);color:var(--color-primary);font-size:var(--text-md);font-weight:var(--weight-semibold);cursor:pointer;list-style:none}.progress-week-history summary::-webkit-details-marker{display:none}.progress-week-history[open] summary svg{transform:rotate(90deg)}.progress-week-history .week-rows{margin-top:var(--space-2)}.trend-list{display:grid;gap:var(--space-3)}.trend-card{display:grid;gap:var(--space-3);padding:var(--space-4)}.trend-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.trend-head h3{font-size:var(--text-base)}.trend-head small{font-size:var(--text-sm);color:var(--color-text-muted)}.trend-body{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3)}.trend-value{display:block;font-family:var(--font-rounded);font-size:var(--text-2xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.trend-value small{font-size:var(--text-sm);font-weight:400;color:var(--color-text-muted)}.trend-delta{display:block;margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.trend-metrics{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.trend-metrics span{display:grid;gap:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.trend-metrics strong{font-size:var(--text-md);color:var(--color-text);font-variant-numeric:tabular-nums}.sparkline{flex-shrink:0;overflow:visible;color:var(--color-primary)}.sparkline circle{fill:var(--color-surface);stroke:currentColor;stroke-width:1.5}.sparkline circle.is-last{fill:currentColor;stroke:var(--color-surface);stroke-width:2}.history-list{display:grid;gap:var(--space-3)}.history-card{display:flex;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-4) var(--space-5);text-align:left}.history-card>span:nth-child(2){flex:1;min-width:0}.history-card strong{display:block;font-size:var(--text-base);text-transform:capitalize}.history-card small{display:block;margin-top:var(--space-1);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-muted)}.history-card>svg{color:var(--color-text-muted)}@media(max-width:720px){.cycle-card{padding:var(--space-4)}.cycle-card h2{font-size:var(--text-2xl)}.week-rows li{grid-template-columns:5.5rem minmax(0,1fr);padding:var(--space-3)}.week-slots{gap:var(--space-1)}.history-card{gap:var(--space-3);padding:var(--space-4)}}@media(max-width:390px){.cycle-card{grid-template-columns:1fr}.cycle-meta{text-align:left}.week-rows li{grid-template-columns:1fr}.week-slots{justify-content:flex-start}.sparkline{width:100px}}.settings-stack{display:grid;gap:var(--space-5);max-width:40rem}.settings-panel h2{font-size:var(--text-xl)}.settings-panel>h2+.field-help{margin-top:var(--space-1)}.preferences-form{margin-top:var(--space-5)}.preferences-form>fieldset{display:grid;gap:var(--space-2)}.preferences-form>fieldset>label+label,.preferences-form>fieldset>.field-help+label{margin-top:var(--space-3)}.weekday-options{margin-top:var(--space-5)}.settings-note{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-sage);font-size:var(--text-md)}.settings-note p{margin-top:var(--space-1);color:var(--color-text-muted)}.preferences-message{margin:var(--space-4) 0;font-size:var(--text-md)}.preferences-conflict{margin-bottom:var(--space-4);padding:var(--space-4);border:1px solid var(--warning-border);border-radius:var(--radius-md);background:var(--warning-bg)}.preferences-conflict h3{font-size:var(--text-base)}.info-list{display:grid;margin:var(--space-3) 0 0}.info-list>div{display:flex;justify-content:space-between;gap:var(--space-5);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);font-size:var(--text-md)}.info-list>div:last-child{border-bottom:0}.info-list dt{color:var(--color-text-muted)}.info-list dd{margin:0;font-weight:var(--weight-semibold);text-align:right;overflow-wrap:anywhere}.account-email{margin:var(--space-3) 0 var(--space-4);font-size:var(--text-md);color:var(--color-text-muted);overflow-wrap:anywhere}.logout-explanation{margin-top:var(--space-3)}.auth-page{display:grid;align-items:center;max-width:28.75rem;min-height:100dvh;margin:0 auto;padding:var(--space-7) var(--space-4)}.auth-card{padding:var(--space-7)}.auth-logo{display:block;margin:0 auto var(--space-6);object-fit:contain}.auth-card h1{margin:var(--space-2) 0 var(--space-3);font-size:var(--text-3xl)}.auth-card>p{font-size:var(--text-md);color:var(--color-text-muted)}.auth-form{display:grid;gap:var(--space-5);margin:var(--space-6) 0 var(--space-5)}.auth-card .auth-help{font-size:var(--text-sm)}.mfa-qr{display:block;margin:var(--space-3) auto;background:#fff;padding:var(--space-2);border-radius:var(--radius-md, 8px)}.mfa-secret{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.catalog-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(6rem,.4fr);gap:var(--space-4);margin-bottom:var(--space-5)}.catalog-toolbar>.catalog-scope,.catalog-toolbar>.catalog-actions{grid-column:1 / -1;margin:0}.catalog-editor{margin-bottom:var(--space-6);scroll-margin-top:var(--space-5)}.catalog-editor h2{font-size:var(--text-xl)}.catalog-form{margin-top:var(--space-5)}.catalog-form>fieldset{display:grid;gap:var(--space-5)}.catalog-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}.catalog-identity legend{padding:0 var(--space-2);margin-bottom:0}.catalog-message{margin:var(--space-4) 0;font-size:var(--text-md)}.catalog-count{margin:var(--space-4) 0 var(--space-3)}.catalog-list{display:grid;gap:var(--space-3)}.catalog-card h2{margin-bottom:var(--space-2);font-size:var(--text-lg)}.catalog-card .catalog-actions{margin-bottom:0}.catalog-card,.catalog-editor{overflow-wrap:anywhere}.catalog-note{margin-top:var(--space-3);font-size:var(--text-md);white-space:pre-wrap}.catalog-conflict{margin-top:var(--space-5)}.catalog-conflict h3{margin-bottom:var(--space-3)}.program-list{display:grid;gap:var(--space-4)}.program-list-tools{display:flex;flex-wrap:wrap;gap:var(--space-4);margin:var(--space-2) 0 var(--space-4)}.program-list-tools .text-button:not(.delete-link){padding-left:0;color:var(--color-text-muted)}.program-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.program-card h2,.program-editor h2{font-size:var(--text-lg)}.program-card.is-followed{border-color:var(--success-border)}.program-card .program-actions{margin-top:var(--space-4)}.program-versions{margin-top:var(--space-3);padding-top:var(--space-1);border-top:1px solid var(--color-border)}.program-versions summary{display:flex;align-items:center;min-height:var(--touch);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted);cursor:pointer}.program-version{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);text-align:left}.program-version span{min-width:0;overflow-wrap:anywhere}.program-version strong,.program-version small{display:block}.program-version small{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.week-strip-mini{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-1);margin:var(--space-3) 0 0;padding:0;list-style:none}.week-strip-mini li{display:grid;justify-items:center;gap:2px;min-width:0;padding:var(--space-2) 2px;border-radius:var(--radius-sm);background:var(--color-sage)}.week-strip-mini li span{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text-muted)}.week-strip-mini li small{max-width:100%;overflow:hidden;font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis}.week-strip-mini li.is-training{background:var(--color-accent-soft)}.week-strip-mini li.is-training span{color:var(--color-primary)}.program-form>fieldset{display:grid;gap:var(--space-5)}.program-form h4{font-size:var(--text-base)}.program-catalog-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);font-size:var(--text-md)}.program-day{display:grid;gap:var(--space-4);min-width:0;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.program-day .section-heading,.program-day .program-actions{margin:0}.program-day-names{display:grid;grid-template-columns:minmax(4.5rem,.3fr) minmax(0,1fr);gap:var(--space-3)}.program-prescription{display:grid;gap:var(--space-4);min-width:0;padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-sage)}.program-numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.program-picker{display:grid;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.program-message{margin:var(--space-4) 0;font-size:var(--text-md)}.program-preview{overflow-wrap:anywhere}.program-preview h3{margin:var(--space-4) 0;font-size:var(--text-xl)}.program-preview h4{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-base)}.program-preview ol{padding-left:var(--space-5)}.program-preview li{margin:var(--space-4) 0}.program-preview li p{margin-top:var(--space-1);font-size:var(--text-md)}.program-conflict{margin-top:var(--space-6)}.meal-foods{display:grid;gap:var(--space-2);margin:var(--space-1) 0 var(--space-3)}.meal-food-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) var(--touch);align-items:center;gap:var(--space-2)}.meal-add-food,.meal-add,.meal-add-day{justify-self:start}.meal-plan-card h2{overflow-wrap:anywhere}.meal-day-selector{position:sticky;top:0;z-index:4;display:grid;gap:var(--space-2);padding:var(--space-3) 0;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.meal-plan-general{min-width:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-sage)}.meal-plan-general>summary{min-height:var(--touch);align-content:center;cursor:pointer;font-weight:var(--weight-semibold);color:var(--color-primary)}.meal-plan-general-fields{display:grid;gap:var(--space-5);padding-top:var(--space-3)}.meal-editor-bar{position:fixed;z-index:9;bottom:0;left:calc(max(0px,(100vw - 1660px) / 2) + var(--sidebar-width));right:max(0px,(100vw - 1660px) / 2);padding:var(--space-3) var(--space-7) calc(var(--space-3) + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 -4px 20px #0000000f}.meal-editor-bar-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:var(--space-3);max-width:var(--content-width);margin:0 auto}.meal-editor-message{max-width:var(--content-width);max-height:6rem;overflow:auto;overflow-wrap:anywhere;margin:0 auto var(--space-2);font-size:var(--text-sm)}.meal-editor-bar .button{min-height:var(--control-lg);border-radius:var(--radius-lg)}.app-shell:has(.meal-plan-editor) .workspace{padding-bottom:calc(7rem + env(safe-area-inset-bottom))}.app-shell:has(.meal-editor-message) .workspace{padding-bottom:calc(14rem + env(safe-area-inset-bottom))}.app-shell:has(.meal-editor-bar) .toast-stack{bottom:calc(6rem + env(safe-area-inset-bottom))}@media(max-width:720px){.meal-editor-bar{left:0;right:0;bottom:calc(4.5rem + env(safe-area-inset-bottom));padding:var(--space-3) var(--space-4)}.app-shell:has(.meal-editor-bar) .bottom-nav{height:calc(4.5rem + env(safe-area-inset-bottom))}.app-shell:has(.meal-plan-editor) .workspace{padding-bottom:calc(11rem + env(safe-area-inset-bottom))}.app-shell:has(.meal-editor-message) .workspace{padding-bottom:calc(18rem + env(safe-area-inset-bottom))}.app-shell:has(.meal-editor-bar) .toast-stack{bottom:calc(10rem + env(safe-area-inset-bottom))}}.wizard{display:grid;gap:var(--space-4);max-width:40rem;margin:0 auto;padding-bottom:var(--space-2)}.wizard-top{display:grid;grid-template-columns:var(--touch) minmax(0,1fr) var(--touch);align-items:center;gap:var(--space-2)}.wizard-spacer{width:var(--touch)}.wizard-top-title{min-width:0;text-align:center}.wizard-top-title strong{display:block;overflow:hidden;font-size:var(--text-md);white-space:nowrap;text-overflow:ellipsis}.wizard-intro{display:grid;gap:var(--space-2)}.wizard-intro h1{font-size:var(--text-3xl);outline:none}.wizard-intro p{font-size:var(--text-md);color:var(--color-text-muted)}.wizard-count{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-primary)}.wizard-form{display:grid;gap:var(--space-4)}.wizard-form input:not([type=checkbox]){min-height:var(--control-md);font-size:var(--text-lg)}.wizard-advanced{justify-self:start;padding-left:0;color:var(--color-text-muted)}.wizard-footer{position:sticky;bottom:0;z-index:5;display:flex;gap:var(--space-3);padding:var(--space-4) 0 calc(var(--space-4) + env(safe-area-inset-bottom));background:linear-gradient(to bottom,transparent,var(--color-bg) 28%)}.wizard-footer .button{flex:1;min-height:var(--control-lg);border-radius:var(--radius-lg);font-size:var(--text-base)}.wizard-footer .wizard-rest{flex:0 0 auto}.wz-message{display:grid;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--warning-border);border-radius:var(--radius-md);background:var(--warning-bg);color:var(--warning-fg);font-size:var(--text-md)}.wz-message:empty{display:none}.wz-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}.wz-pill{position:relative;display:grid;place-items:center;aspect-ratio:1;max-height:var(--control-md);padding:0;border:1.5px solid var(--color-border-strong);border-radius:50%;background:var(--color-surface);color:var(--color-text-muted);font-size:var(--text-md);font-weight:var(--weight-bold)}.wz-pill.is-training{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.wz-pill.is-rest{background:var(--color-sage);border-style:dashed}.wz-pill[aria-current]{border-color:var(--color-primary);color:var(--color-primary);box-shadow:0 0 0 3px var(--color-selected)}.wz-pill[aria-current].is-todo,.wz-pill[aria-current].is-rest{background:var(--color-surface)}.wz-groups{display:grid;gap:var(--space-3)}.wz-copy{display:grid;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-sage);font-size:var(--text-md);font-weight:var(--weight-semibold)}.wz-exercises,.wz-meals{display:grid;gap:var(--space-4)}.wz-exercise,.wz-meal{display:grid;gap:var(--space-3);min-width:0;padding:var(--space-4);animation:wz-in .22s ease-out}@keyframes wz-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.wz-exercise-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3)}.wz-exercise-head h3{font-size:var(--text-base)}.wz-exercise-head small{display:block;margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.wz-exercise-tools{display:flex}.wz-exercise-tools .icon-button{min-width:var(--control-sm);min-height:var(--control-sm);padding:var(--space-2)}.wz-field{display:grid;gap:var(--space-3);min-width:0}.wz-field-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.wz-field-head label,.wz-label{font-size:var(--text-md);font-weight:var(--weight-semibold)}.wz-input-wrap{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.wz-field input:not([type=checkbox]),.wz-range input:not([type=checkbox]){width:4.75rem;min-height:var(--touch);padding:var(--space-1);font-family:var(--font-rounded);font-size:var(--text-lg);font-weight:var(--weight-bold);text-align:center;font-variant-numeric:tabular-nums}.wz-range{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted)}.wz-range input:not([type=checkbox]){width:4rem}.wz-field.has-error input{border-color:var(--danger-fg);background:var(--danger-bg)}.wz-more{padding-top:var(--space-3);border-top:1px solid var(--color-border)}.wz-more summary{display:flex;align-items:center;min-height:var(--touch);font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-primary);cursor:pointer}.wz-more[open]{display:grid;gap:var(--space-3)}.wz-more textarea{margin:0}.wz-more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.wz-more-grid input:not([type=checkbox]){text-align:center}.wz-add,.wz-create-start,.wz-add-meal{border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface-muted);color:var(--color-primary)}.wz-add{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;min-height:4rem;font-size:var(--text-base);font-weight:var(--weight-semibold)}.wz-add:hover:not(:disabled),.wz-create-start:hover{background:var(--color-accent-soft);border-color:var(--color-primary)}.wz-day-note textarea{margin:0}.wz-sheet{display:grid;gap:var(--space-4)}.wz-sheet h2{margin-right:var(--space-8)}.wz-search{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-4);border:1px solid var(--color-input);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted)}.wz-search input:not([type=checkbox]){padding-left:0;border:0;background:transparent;outline:none}.wz-search input:not([type=checkbox]):focus-visible{outline:none}.wz-search:focus-within{outline:3px solid var(--color-focus);outline-offset:1px;border-color:var(--color-focus)}.wz-results{display:grid;margin:0;padding:0;list-style:none}.wz-results-title{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.wz-results button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:3.5rem;padding:var(--space-2) 2px;border-bottom:1px solid var(--color-border);text-align:left;color:var(--color-text)}.wz-results button:hover,.wz-results button:active{background:var(--color-surface-muted)}.wz-results strong,.wz-results small{display:block;overflow-wrap:anywhere}.wz-results strong{font-size:var(--text-base)}.wz-results small{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.wz-results svg{color:var(--color-primary)}.wz-create-start{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:var(--space-3);padding:var(--space-4);text-align:left}.wz-create-start span{font-weight:var(--weight-semibold);overflow-wrap:anywhere}.wz-create-start small{grid-column:2;font-size:var(--text-sm);color:var(--color-text-muted)}.wz-create{display:grid;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-sage)}.wz-create .segmented{background:var(--color-surface)}.wz-create .segmented button[aria-pressed=true]{background:var(--color-selected)}.wz-sheet-footer{position:sticky;bottom:0;padding-top:var(--space-3);background:linear-gradient(to bottom,transparent,var(--color-surface) 30%)}.wz-sheet-footer .button{min-height:var(--control-lg);font-size:var(--text-base)}.wizard-done{display:grid;justify-items:center;gap:var(--space-3);padding-top:var(--space-5);text-align:center}.wizard-done h1{font-size:var(--text-3xl);outline:none}.wizard-done>p{max-width:24rem;color:var(--color-text-muted)}.wizard-done-icon{display:grid;place-items:center;width:4.75rem;height:4.75rem;border-radius:var(--radius-xl);background:var(--color-accent);color:var(--color-on-accent);animation:wz-pop .35s ease-out}@keyframes wz-pop{0%{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}.wz-summary{display:grid;gap:var(--space-2);width:100%;margin:var(--space-4) 0 0;padding:0;list-style:none;text-align:left}.wz-summary li{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-md)}.wz-summary li span{font-weight:var(--weight-semibold);color:var(--color-primary);text-align:right;overflow-wrap:anywhere}.wz-summary li.is-rest{background:var(--color-sage);border-style:dashed;box-shadow:none}.wz-summary li.is-rest span{font-weight:400;color:var(--color-text-muted)}.wz-meal-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name tools" "time tools";align-items:center;gap:var(--space-2)}.wz-meal-name{grid-area:name;font-size:var(--text-lg)!important;font-weight:var(--weight-semibold)}.wz-meal-time{grid-area:time;width:9.5rem!important;min-height:var(--control-sm)!important;font-size:var(--text-md)!important}.wz-meal-head .wz-exercise-tools{grid-area:tools;align-self:start}.wz-foods{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.wz-foods .meal-food-row{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr) var(--control-sm)}.wz-foods .meal-food-row .icon-button{min-width:var(--control-sm);padding:var(--space-2)}.wz-add-food{justify-self:start;padding-left:0}.wz-add-meal{display:grid;gap:var(--space-3);padding:var(--space-4);font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text)}.wz-choice{display:grid;gap:var(--space-3)}.wz-choice-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-4);padding:var(--space-4);text-align:left}.wz-choice-card svg{color:var(--color-primary)}.wz-choice-card strong,.wz-choice-card small{display:block}.wz-choice-card small{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.wz-date input:not([type=checkbox]){width:auto;min-height:var(--control-sm);padding:0 var(--space-4);border-radius:var(--radius-pill);font-size:var(--text-md);font-weight:var(--weight-semibold)}.wz-cycle-note{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-on-accent-soft);font-size:var(--text-md)}.wz-revise-note{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-sage);color:var(--color-text);font-size:var(--text-md);line-height:var(--leading-normal)}.section-menu{display:grid;gap:var(--space-1)}.section-menu h2{margin-bottom:var(--space-3)}.section-menu a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-4);min-height:4.25rem;padding:var(--space-2);border-radius:var(--radius-lg);color:var(--color-text)}.section-menu a:hover,.section-menu a:active{background:var(--color-sage)}.section-menu a>svg{color:var(--color-text-muted)}.section-menu strong,.section-menu small{display:block}.section-menu strong{font-size:var(--text-base)}.section-menu small{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted)}.section-menu-icon{display:grid;place-items:center;width:var(--touch);height:var(--touch);border-radius:var(--radius-md);background:var(--color-sage);color:var(--color-primary)}@media(max-width:720px){.wizard-intro h1,.wizard-done h1{font-size:var(--text-2xl)}}@media(max-width:560px){.catalog-toolbar,.catalog-identity{grid-template-columns:minmax(0,1fr)}.program-day{padding:var(--space-4)}.program-prescription{padding:var(--space-3)}.program-day-names{grid-template-columns:minmax(0,1fr)}.plan-selectors{display:grid}.plan-selector{min-width:0}.meal-food-row{grid-template-columns:minmax(0,1fr) var(--touch)}.meal-food-row .meal-food-quantity{grid-column:1}.meal-food-row .icon-button{grid-row:1 / span 2;grid-column:2}.wz-foods .meal-food-row .meal-food-quantity{grid-column:auto}.wz-foods .meal-food-row .icon-button{grid-row:auto;grid-column:auto}}@media(max-width:380px){.wz-field-head{flex-wrap:wrap}.wz-range input:not([type=checkbox]){width:3.5rem}.wz-foods .meal-food-row{grid-template-columns:minmax(0,1fr) 5.5rem var(--control-sm)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.logo-body{fill:var(--logo-body)}.logo-detail{fill:var(--logo-detail)}.logo-leaf{fill:var(--logo-leaf)}.logo-body-stroke{stroke:var(--logo-body)}.logo-detail-stroke{stroke:var(--logo-detail)}.auth-logo{width:96px;height:96px}.sidebar-status{margin-bottom:var(--space-3)}.sync-row{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--touch);padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-align:left;transition:background var(--duration)}.sync-row:hover{background:var(--color-sage)}.sync-row.sync-indicator-synced,.sync-row.sync-indicator-pending,.sync-row.sync-indicator-sending{color:var(--color-text-muted)}.sync-row.sync-indicator-synced>svg{color:var(--success-fg)}@media(min-width:1100px){.diet-layout{display:grid;grid-template-columns:19rem minmax(0,1fr);align-items:start;gap:var(--space-6);margin-top:var(--space-5)}.diet-context{position:sticky;top:var(--space-6);display:grid;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.diet-context .day-type,.diet-context .diet-plan-line{margin:0}.diet-context .day-type-row{flex-direction:column;align-items:stretch;gap:var(--space-3)}.diet-context .day-type .segmented{flex-basis:auto}.diet-context .diet-plan-line{flex-direction:column;align-items:flex-start;gap:var(--space-1);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.diet-context .diet-plan-day{margin-left:0}.diet-layout .meals-section{margin-top:0}.workout-overview{display:grid;grid-template-columns:23rem minmax(0,1fr);align-items:start;gap:var(--space-6)}.workout-aside{position:sticky;top:var(--space-6)}.workout-aside .workout-summary{margin-bottom:var(--space-4)}.workout-aside .workout-summary h2{font-size:var(--text-2xl)}.workout-aside .workout-start{justify-self:stretch;min-width:0}.workout-aside .session-switch,.workout-aside .cycle-link{max-width:none}.workout-exercises .exercise-list{grid-template-columns:1fr}.progress-summary{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:stretch;gap:var(--space-3);margin-bottom:var(--space-6)}.progress-summary .progress-tiles{grid-template-columns:1fr;margin:0}.trend-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.sticky-cta{display:none}.sticky-cta-copy{display:grid;min-width:0;text-align:left}.sticky-cta-copy strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sticky-cta-copy small{overflow:hidden;font-size:var(--text-xs);font-weight:400;opacity:.85;white-space:nowrap;text-overflow:ellipsis}@media(max-width:1099px){.sticky-cta{display:block;position:fixed;z-index:9;left:calc(var(--sidebar-width) + var(--space-7));right:var(--space-7);bottom:calc(var(--space-5) + env(safe-area-inset-bottom));opacity:0;visibility:hidden;pointer-events:none;transform:translateY(1rem);transition:transform .2s ease,opacity .2s ease,visibility 0s linear .2s}.sticky-cta.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:transform .2s ease,opacity .2s ease}.sticky-cta .button{width:100%;justify-content:space-between;box-shadow:var(--shadow-raised)}.has-timer .sticky-cta{display:none}.app-shell:not(.has-timer):has(.sticky-cta) .workspace{padding-bottom:7rem}.app-shell:not(.has-timer):has(.sticky-cta.is-visible) .toast-stack{bottom:6.5rem}}@media(max-width:720px){.sticky-cta{left:var(--space-3);right:var(--space-3);bottom:calc(5rem + env(safe-area-inset-bottom))}.app-shell:not(.has-timer):has(.sticky-cta) .workspace{padding-bottom:calc(11rem + env(safe-area-inset-bottom))}.app-shell:not(.has-timer):has(.sticky-cta.is-visible) .toast-stack{bottom:calc(9.5rem + env(safe-area-inset-bottom))}}.muscle-group-image{display:block;flex-shrink:0;width:3.25rem;height:3.25rem;object-fit:contain;padding:.125rem;border-radius:var(--radius-md);background:var(--color-illustration-bg)}.muscle-group-image.is-compact{width:1.5rem;height:1.5rem;padding:0;border-radius:var(--radius-pill)}.muscle-group-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin:.25rem .25rem .25rem 0;padding:.2rem .6rem;border-radius:var(--radius-pill);background:var(--color-surface-muted);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.catalog-groups{display:grid;gap:1.5rem}.catalog-group-title{display:flex;align-items:center;gap:.65rem;margin:0 0 .75rem;font-size:var(--text-lg)}.catalog-group-title span,.wz-group-title span{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:400}.catalog-card h3{margin:0;font-size:var(--text-lg)}.wz-group-title{margin:1rem 0 .35rem;font-size:var(--text-md);color:var(--color-text)}.wz-sheet>.muscle-group-select{display:grid;gap:.35rem;margin:.75rem 0}.wz-exercise-head .muscle-group-badge{font-size:var(--text-sm)}.wz-exercise-head h3{overflow-wrap:anywhere}@media(max-width:380px){.wz-exercise-head{grid-template-columns:auto minmax(0,1fr)}.wz-exercise-head .wz-exercise-tools{grid-column:2;justify-self:end}}
