:root{color-scheme:light;--color-primary: #0075de;--color-primary-active: #005bab;--color-secondary: #213183;--color-on-primary: #ffffff;--color-canvas: #ffffff;--color-canvas-soft: #f6f5f4;--color-surface: #ffffff;--color-ink: #000000;--color-ink-secondary: #31302e;--color-ink-muted: #615d59;--color-ink-faint: #a39e98;--color-hairline: #e6e6e6;--color-accent-sky: #62aef0;--color-accent-purple: #d6b6f6;--color-accent-purple-deep: #391c57;--color-accent-pink: #ff64c8;--color-accent-orange: #dd5b00;--color-accent-orange-deep: #793400;--color-accent-teal: #2a9d99;--color-accent-green: #1aae39;--color-accent-brown: #523410;--font-family: Inter, -apple-system, system-ui, "Segoe UI", Helvetica, Arial;--font-features: "lnum" 1, "locl" 1;--text-display-1-size: 64px;--text-display-1-weight: 700;--text-display-1-line: 1;--text-display-1-tracking: -2.125px;--text-display-1-fluid-size: clamp(48px, 12vw, 64px);--text-display-1-fluid-tracking: clamp(-2.125px, -.3984vw, -1.59375px);--text-display-2-size: 54px;--text-display-2-weight: 700;--text-display-2-line: 1.04;--text-display-2-tracking: -1.875px;--text-display-2-fluid-size: clamp(40.5px, 10.125vw, 54px);--text-display-2-fluid-tracking: clamp(-1.875px, -.3516vw, -1.40625px);--text-heading-1-size: 40px;--text-heading-1-weight: 700;--text-heading-1-line: 1.1;--text-heading-1-tracking: -1px;--text-heading-1-fluid-size: clamp(32px, 9vw, 40px);--text-heading-1-fluid-tracking: clamp(-1px, -.225vw, -.8px);--text-heading-2-size: 26px;--text-heading-2-weight: 700;--text-heading-2-line: 1.23;--text-heading-2-tracking: -.625px;--text-heading-3-size: 22px;--text-heading-3-weight: 700;--text-heading-3-line: 1.27;--text-heading-3-tracking: -.25px;--text-title-size: 20px;--text-title-weight: 600;--text-title-line: 1.4;--text-title-tracking: -.125px;--text-body-md-size: 16px;--text-body-md-weight: 400;--text-body-md-line: 1.5;--text-body-md-tracking: 0;--text-body-sm-size: 15px;--text-body-sm-weight: 400;--text-body-sm-line: 1.33;--text-body-sm-tracking: 0;--text-button-size: 16px;--text-button-weight: 500;--text-button-line: 1.5;--text-button-tracking: 0;--text-caption-size: 14px;--text-caption-weight: 400;--text-caption-line: 1.43;--text-caption-tracking: 0;--text-eyebrow-size: 12px;--text-eyebrow-weight: 600;--text-eyebrow-line: 1.33;--text-eyebrow-tracking: .125px;--space-xxs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 1.75rem;--space-xxl: 2rem;--radius-xs: .25rem;--radius-sm: .3125rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-soft: 0 .175px 1.041px rgb(0 0 0 / 1%), 0 .8px 2.925px rgb(0 0 0 / 2%), 0 2.025px 7.847px rgb(0 0 0 / 2.7%), 0 4px 18px rgb(0 0 0 / 4%);--shadow-elevated: 0 1px 2px rgb(0 0 0 / 3%), 0 4px 12px rgb(0 0 0 / 4%), 0 12px 30px rgb(0 0 0 / 5%), 0 23px 52px rgb(0 0 0 / 5%);--touch-target: 2.75rem;--tab-bar-height: 4rem;font-family:var(--font-family);color:var(--color-ink);background:var(--color-canvas-soft);font-synthesis:none;text-rendering:optimizeLegibility;font-feature-settings:var(--font-features)}*{box-sizing:border-box}html{min-width:20rem;min-height:100%;background:var(--color-canvas-soft)}body{min-width:20rem;min-height:100%;margin:0;color:var(--color-ink);background:var(--color-canvas-soft);font-family:var(--font-family);font-size:var(--text-body-md-size);font-feature-settings:var(--font-features);font-weight:var(--text-body-md-weight);letter-spacing:var(--text-body-md-tracking);line-height:var(--text-body-md-line);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}button,input{font:inherit}button,a,input[type=file]{touch-action:manipulation}button,.tab-link{min-width:var(--touch-target);min-height:var(--touch-target)}button{border:0;cursor:pointer;font-family:var(--font-family);font-size:var(--text-button-size);font-weight:var(--text-button-weight);letter-spacing:var(--text-button-tracking);line-height:var(--text-button-line)}button:disabled,input:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--color-ink);font-family:var(--font-family);font-feature-settings:var(--font-features)}h1{margin-bottom:var(--space-md);font-size:var(--text-heading-1-fluid-size);font-weight:var(--text-heading-1-weight);letter-spacing:var(--text-heading-1-fluid-tracking);line-height:var(--text-heading-1-line)}h2{margin-bottom:var(--space-xs);font-size:var(--text-title-size);font-weight:var(--text-title-weight);letter-spacing:var(--text-title-tracking);line-height:var(--text-title-line)}h3{font-size:var(--text-heading-3-size);font-weight:var(--text-heading-3-weight);letter-spacing:var(--text-heading-3-tracking);line-height:var(--text-heading-3-line)}p{margin-bottom:var(--space-md);color:var(--color-ink-secondary)}.eyebrow{margin-bottom:var(--space-sm);color:var(--color-ink-muted);font-size:var(--text-eyebrow-size);font-weight:var(--text-eyebrow-weight);letter-spacing:var(--text-eyebrow-tracking);line-height:var(--text-eyebrow-line);text-transform:uppercase}.app-shell{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100dvh;min-height:100dvh;overflow:hidden}.app-scroll{min-height:0;overflow-y:auto;padding-top:env(safe-area-inset-top,0px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--space-md));overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.screen,.standalone-screen{width:100%;max-width:44rem;margin:0 auto;padding-right:max(var(--space-lg),env(safe-area-inset-right,0px));padding-left:max(var(--space-lg),env(safe-area-inset-left,0px))}.screen{min-height:100%;padding-top:var(--space-xxl)}.standalone-screen{display:grid;align-items:center;min-height:100dvh;padding-top:calc(var(--space-xxl) + env(safe-area-inset-top,0px));padding-bottom:calc(var(--space-xxl) + env(safe-area-inset-bottom,0px))}.placeholder{max-width:31rem;padding-block:clamp(4rem,18vh,9rem)}.placeholder>p:last-child{color:var(--color-ink-muted)}.screen-heading{padding-block:var(--space-lg) var(--space-xxl)}.tab-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:calc(var(--tab-bar-height) + env(safe-area-inset-bottom,0px));padding-right:max(var(--space-xs),env(safe-area-inset-right,0px));padding-bottom:env(safe-area-inset-bottom,0px);padding-left:max(var(--space-xs),env(safe-area-inset-left,0px));border-top:1px solid var(--color-hairline);background:var(--color-canvas)}.tab-link{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--space-xxs);border-radius:var(--radius-md);color:var(--color-ink-muted);font-size:var(--text-eyebrow-size);font-weight:500;line-height:1;text-decoration:none}.tab-link svg{width:1.375rem;height:1.375rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.tab-link[data-state=active]{color:var(--color-primary)}.settings-section{display:grid;gap:var(--space-sm);padding-block:var(--space-xl);border-top:1px solid var(--color-hairline)}.settings-section p{max-width:34rem;margin-bottom:0;color:var(--color-ink-muted);font-size:var(--text-body-sm-size)}.current-track{display:grid;gap:var(--space-xxs)}.current-track strong{color:var(--color-ink)}.current-track span{font-size:var(--text-caption-size)}.settings-heading{padding-block:var(--space-sm) var(--space-xl)}.settings-heading h1{margin-bottom:0;font-size:var(--text-heading-2-size);letter-spacing:var(--text-heading-2-tracking);line-height:var(--text-heading-2-line)}.settings-section h2{margin-bottom:var(--space-xxs)}.backup-section{padding-block:var(--space-lg) var(--space-xl)}.section-label{margin-bottom:var(--space-xxs);color:var(--color-ink-muted);font-size:var(--text-eyebrow-size);font-weight:var(--text-eyebrow-weight);letter-spacing:var(--text-eyebrow-tracking);line-height:var(--text-eyebrow-line);text-transform:uppercase}.settings-actions{display:grid;gap:var(--space-lg)}.button-primary,.button-secondary{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:var(--touch-target);padding:var(--space-xs) var(--space-lg);border-radius:var(--radius-full);font-size:var(--text-button-size);font-weight:var(--text-button-weight);letter-spacing:var(--text-button-tracking);line-height:var(--text-button-line)}.button-primary{color:var(--color-on-primary);background:var(--color-primary)}.button-primary:active{background:var(--color-primary-active)}.button-secondary{border:1px solid var(--color-hairline);color:var(--color-ink);background:var(--color-surface)}.file-field{display:grid;gap:var(--space-xs);max-width:25rem;color:var(--color-ink);font-size:var(--text-body-sm-size);font-weight:500}.file-field input{width:100%;min-height:var(--touch-target);padding:.375rem;border:1px solid #dddddd;border-radius:var(--radius-xs);color:var(--color-ink);background:var(--color-surface);font-size:var(--text-caption-size)}.file-field input::file-selector-button{min-height:2rem;margin-right:var(--space-sm);padding-inline:var(--space-sm);border:1px solid var(--color-hairline);border-radius:var(--radius-md);color:var(--color-ink);background:var(--color-canvas-soft)}.action-message{padding-left:var(--space-sm);border-left:2px solid var(--color-primary);color:var(--color-ink-secondary)}.settings-accordion{border-top:1px solid var(--color-hairline)}.settings-accordion h3,.progress-details h3{margin:0}.detail-trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);width:100%;min-height:3.5rem;padding:var(--space-sm) 0;color:var(--color-ink);background:transparent;text-align:left}.detail-trigger>span:last-child{color:var(--color-ink-muted);font-size:var(--text-caption-size);font-weight:400}.detail-trigger[data-state=open]>span:last-child{color:var(--color-primary)}.detail-content{overflow:hidden;padding-bottom:var(--space-lg)}.standard-reference>p{color:var(--color-ink-muted);font-size:var(--text-caption-size)}.standard-reference dl{margin:0}.standard-reference dl>div{display:grid;gap:var(--space-xxs);padding-block:var(--space-md);border-top:1px solid var(--color-hairline)}.standard-reference dt{font-weight:600}.standard-reference dd{margin:0;color:var(--color-ink-secondary);font-size:var(--text-body-sm-size)}.settings-meta{padding-block:var(--space-xl);border-top:1px solid var(--color-hairline)}.settings-meta h2{margin-bottom:var(--space-xxs);font-size:var(--text-body-sm-size)}.settings-meta p{margin-bottom:0;color:var(--color-ink-muted);font-size:var(--text-caption-size)}.dialog-overlay{position:fixed;z-index:20;inset:0;background:#0003}.dialog-content{position:fixed;z-index:21;top:50%;left:50%;width:min(calc(100vw - var(--space-xxl)),28rem);max-height:min(80dvh,34rem);padding:var(--space-lg);overflow-y:auto;transform:translate(-50%,-50%);border:1px solid var(--color-hairline);border-radius:var(--radius-xl);color:var(--color-ink);background:var(--color-surface);box-shadow:var(--shadow-elevated)}.dialog-content h2{font-size:var(--text-heading-2-size);font-weight:var(--text-heading-2-weight);letter-spacing:var(--text-heading-2-tracking);line-height:var(--text-heading-2-line)}.dialog-content p{color:var(--color-ink-muted)}.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-sm);padding-top:var(--space-xs)}.loading{display:grid;min-height:100dvh;place-items:center;padding:var(--space-lg);color:var(--color-ink-muted)}.storage-error{width:100%;max-width:32rem;padding-block:var(--space-xxl)}.stepper{display:grid;grid-template-columns:var(--touch-target) minmax(3rem,auto) var( --touch-target );align-items:center;gap:var(--space-xs)}.stepper button{border:1px solid var(--color-hairline);border-radius:var(--radius-md);color:var(--color-ink);background:var(--color-surface)}.stepper output{text-align:center;font-variant-numeric:tabular-nums}.onboarding-screen{display:block;max-width:64rem}.onboarding-flow{width:100%;padding-block:var(--space-sm) var(--space-xxl)}.onboarding-header{display:grid;gap:var(--space-sm);margin-bottom:clamp(2rem,5vh,3rem)}.onboarding-header>div:first-child{display:flex;align-items:baseline;justify-content:space-between}.onboarding-header .eyebrow,.step-count{margin-bottom:0}.step-count{color:var(--color-ink-muted);font-size:var(--text-caption-size);font-variant-numeric:tabular-nums}.step-line{height:2px;overflow:hidden;border-radius:var(--radius-full);background:var(--color-hairline)}.step-line span{display:block;height:100%;background:var(--color-primary)}.onboarding-step{width:100%}.compact-step{max-width:40rem;margin-inline:auto}.step-heading{max-width:38rem;margin-bottom:var(--space-lg)}.step-heading>p:last-child,.planner-heading>p:last-child{color:var(--color-ink-muted)}.track-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.track-option{display:grid;grid-template-columns:1.25rem 1fr;align-items:start;width:100%;min-height:100%;padding:var(--space-md);border:1px solid var(--color-hairline);border-radius:var(--radius-xl);color:var(--color-ink);background:var(--color-surface);text-align:left;box-shadow:none}.track-option[data-state=checked]{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.radio-mark{width:1.125rem;height:1.125rem;margin-top:.225rem;border:1px solid var(--color-ink-faint);border-radius:var(--radius-full);background:var(--color-surface)}.track-option[data-state=checked] .radio-mark{border:4px solid var(--color-primary)}.track-option-copy{display:grid;gap:var(--space-xs)}.track-option-copy strong{font-size:var(--text-title-size);font-weight:var(--text-title-weight);letter-spacing:var(--text-title-tracking);line-height:var(--text-title-line)}.track-option-title{display:grid;gap:var(--space-xxs)}.track-option-copy small,.standard-label{color:var(--color-ink-muted);font-size:var(--text-eyebrow-size);font-weight:var(--text-eyebrow-weight);letter-spacing:var(--text-eyebrow-tracking);line-height:var(--text-eyebrow-line);text-transform:uppercase}.track-option-copy>span{color:var(--color-ink-secondary);font-size:var(--text-body-sm-size);font-weight:var(--text-body-sm-weight);letter-spacing:var(--text-body-sm-tracking);line-height:var(--text-body-sm-line)}.track-standard-preview{display:grid;gap:var(--space-xs);margin-top:var(--space-xs);padding-top:var(--space-sm);border-top:1px solid var(--color-hairline)}.track-option-copy b{color:var(--color-ink);font-weight:600}.onboarding-primary{margin-top:var(--space-xl)}.onboarding-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm);padding-top:var(--space-xl)}.ability-fields{display:grid;border-top:1px solid var(--color-hairline)}.number-field{display:grid;grid-template-columns:minmax(0,1fr) 6.5rem;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;border:0;border-bottom:1px solid var(--color-hairline);border-radius:0;color:var(--color-ink);background:transparent}.number-field>span{display:grid;font-weight:600}.number-field small{color:var(--color-ink-muted);font-size:var(--text-caption-size);font-weight:400}.number-field input{width:100%;min-height:3.25rem;padding:var(--space-xs) var(--space-sm);border:1px solid #d8d8d8;border-radius:var(--radius-xs);color:var(--color-ink);background:var(--color-surface);font-size:var(--text-title-size);font-variant-numeric:tabular-nums;text-align:right}.inline-reason{margin-block:var(--space-lg);padding:var(--space-sm) var(--space-md);border-left:2px solid var(--color-primary);color:var(--color-ink-secondary);background:var(--color-canvas-soft);font-size:var(--text-body-sm-size)}.inline-reason p:last-child,.inline-reason:last-child{margin-bottom:0}.planner{display:grid;gap:var(--space-lg)}.movement-switcher{display:grid;grid-template-columns:repeat(3,1fr);padding:var(--space-xxs);border-radius:var(--radius-md);background:#ecebea}.movement-tab{min-height:var(--touch-target);padding:var(--space-xs);border-radius:var(--radius-sm);color:var(--color-ink-muted);background:transparent;font-size:var(--text-body-sm-size);font-weight:500}.movement-tab[aria-selected=true],.movement-tab[data-state=active]{color:var(--color-ink);background:var(--color-surface);box-shadow:0 1px 2px #00000014}.planner-ability{width:100%;max-width:none;border-top:1px solid var(--color-hairline)}.date-comparison{display:grid;gap:var(--space-sm)}.planner-section-heading,.goal-editor-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-md)}.planner-section-heading h2,.goal-editor-heading h2{margin-bottom:0;white-space:nowrap}.planner-section-heading>div:first-child,.goal-editor-heading>div:first-child{flex:0 0 auto}.planner-section-heading p:last-child,.goal-editor-heading>span{min-width:0;margin:0;color:var(--color-ink-muted);font-size:var(--text-caption-size);overflow-wrap:anywhere;text-align:right}.comparison-option{display:grid;align-content:start;gap:var(--space-sm);min-width:0;padding:var(--space-md);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);background:var(--color-surface)}.comparison-option.is-chosen{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.comparison-option header{display:grid;gap:var(--space-xxs)}.comparison-option header p{margin:0;color:var(--color-ink);font-size:var(--text-body-sm-size);font-weight:600}.comparison-option header span,.comparison-goal{color:var(--color-ink-muted);font-size:var(--text-eyebrow-size);line-height:1.35}.comparison-date{min-height:3.25rem;overflow-wrap:anywhere;font-size:clamp(1.125rem,5vw,1.5rem);letter-spacing:var(--text-heading-3-tracking);line-height:1.15}.comparison-option .basis-note,.comparison-option .blocked-copy{margin:0;font-size:var(--text-eyebrow-size)}.comparison-note{margin:0;color:var(--color-ink-muted);font-size:var(--text-caption-size)}.comparison-option>.button-primary,.comparison-option>.button-secondary{align-self:end;width:100%;margin-top:auto;padding-inline:var(--space-sm);font-size:var(--text-body-sm-size);line-height:1.2}.selected-track{align-self:end;min-height:var(--touch-target);margin:0;padding-block:var(--space-sm);color:var(--color-ink-secondary);font-size:var(--text-caption-size);font-weight:500;text-align:center}.goal-editor{padding:var(--space-lg);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);background:var(--color-surface)}.goal-editor .timeline-target-control{padding-bottom:var(--space-sm)}.basis-note.active-basis{margin-bottom:0}.planner-milestones{margin-top:var(--space-sm);border-top:1px solid var(--color-hairline)}.planner-milestones .milestone-list{margin:0;padding-top:0;border-top:0}.cross-track-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;border:1px solid var(--color-hairline);border-radius:var(--radius-xl);background:var(--color-surface)}.cross-track-dates>div{display:grid;gap:var(--space-xxs);min-width:0;padding:var(--space-md)}.cross-track-dates>div+div{border-left:1px solid var(--color-hairline)}.cross-track-dates span{overflow:hidden;color:var(--color-ink-muted);font-size:.675rem;font-weight:600;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.cross-track-dates strong{color:var(--color-ink-secondary);font-size:var(--text-caption-size)}.cross-track-dates b{overflow-wrap:anywhere;font-size:clamp(1rem,3vw,1.375rem);line-height:1.2}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.timeline-card{display:flex;min-width:0;padding:var(--space-lg);flex-direction:column;border:1px solid var(--color-hairline);border-radius:var(--radius-xl);background:var(--color-surface)}.timeline-card.is-chosen{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.timeline-card header{padding-bottom:var(--space-md);border-bottom:1px solid var(--color-hairline)}.standard-label{min-height:2.25rem;margin-bottom:var(--space-xs)}.timeline-card h3{margin:0;font-size:var(--text-heading-2-size);font-weight:var(--text-heading-2-weight);letter-spacing:var(--text-heading-2-tracking);line-height:var(--text-heading-2-line)}.goal-total{margin:var(--space-xxs) 0 0;color:var(--color-ink-muted);font-size:var(--text-caption-size)}.timeline-target-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-sm);padding-block:var(--space-md)}.timeline-target-control>span{color:var(--color-ink-muted);font-size:var(--text-caption-size)}.timeline-target-control .stepper{justify-self:end}.timeline-target-control .text-button{grid-column:1 / -1;justify-self:start}.preset-state{grid-column:1 / -1;color:var(--color-ink-muted);font-size:var(--text-caption-size)}.text-button,.back-link{width:fit-content;min-height:var(--touch-target);padding:var(--space-xs) 0;color:var(--color-primary);background:transparent;font-size:var(--text-body-sm-size);font-weight:500}.finish-date{display:grid;gap:var(--space-xxs);padding-block:var(--space-md)}.finish-date>span,.milestone-list>span{color:var(--color-ink-muted);font-size:var(--text-caption-size)}.finish-date strong{font-size:clamp(1.3rem,3vw,1.75rem);letter-spacing:var(--text-heading-2-tracking);line-height:1.2}.basis-note,.projection-detail,.blocked-copy{margin-bottom:var(--space-sm);color:var(--color-ink-muted);font-size:var(--text-caption-size);line-height:1.45}.blocked-copy{color:var(--color-ink-secondary)}.milestone-list{display:grid;gap:var(--space-xs);margin-bottom:var(--space-lg);padding-top:var(--space-sm);border-top:1px solid var(--color-hairline)}.milestone-list>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-sm);color:var(--color-ink-secondary);font-size:var(--text-caption-size)}.milestone-list>div>span:last-child{color:var(--color-ink-muted);text-align:right}.timeline-card>.button-primary,.timeline-card>.button-secondary{width:100%;margin-top:auto}.confirm-summary{overflow:hidden;border:1px solid var(--color-hairline);border-radius:var(--radius-lg);background:var(--color-surface)}.confirm-track{display:grid;gap:var(--space-xxs);grid-template-columns:auto minmax(0,1fr);align-items:baseline;padding:var(--space-md);background:var(--color-canvas-soft)}.confirm-track>span{grid-row:1 / span 2;padding-right:var(--space-sm)}.confirm-track>span,.confirm-track small,.confirm-row span{color:var(--color-ink-muted);font-size:var(--text-caption-size)}.confirm-row{display:grid;grid-template-columns:minmax(5.5rem,.7fr) minmax(0,1.3fr);align-items:start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-top:1px solid var(--color-hairline)}.confirm-row>div{display:grid;gap:var(--space-xxs)}.planner-screen{max-width:64rem}.planner-heading{max-width:40rem;padding-block:0 var(--space-lg)}.planner-heading>p:last-child{margin-bottom:0}.back-link{margin-bottom:var(--space-xs)}.planner-save{display:flex;align-items:center;gap:var(--space-lg);margin-top:var(--space-xl);padding-block:var(--space-lg);border-top:1px solid var(--color-hairline)}.planner-save p{max-width:28rem;margin:0;color:var(--color-ink-muted);font-size:var(--text-caption-size)}.track-switch-calibration{display:grid;gap:var(--space-lg);max-width:42rem;margin:var(--space-xl) auto 0;padding:var(--space-lg);border:1px solid var(--color-primary);border-radius:var(--radius-xl);background:var(--color-surface)}.track-switch-calibration h2{font-size:var(--text-heading-2-size);font-weight:var(--text-heading-2-weight);letter-spacing:var(--text-heading-2-tracking);line-height:var(--text-heading-2-line)}.track-switch-calibration>div:first-child>p:last-child{margin-bottom:0;color:var(--color-ink-muted);font-size:var(--text-body-sm-size)}.today-screen{max-width:48rem}.today-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-lg);padding-block:var(--space-sm) var(--space-xl)}.today-heading h1,.today-heading .eyebrow{margin-bottom:0}.today-heading>div:first-child{flex:0 0 auto}.today-heading h1{white-space:nowrap}.today-track{display:grid;gap:var(--space-xxs);min-width:0;max-width:18rem;margin:0;color:var(--color-ink-muted);font-size:var(--text-caption-size);line-height:1.4;overflow-wrap:anywhere;text-align:right}.today-track strong{color:var(--color-ink);font-size:var(--text-body-sm-size);font-weight:600}.today-track span{font-size:var(--text-eyebrow-size)}.workout-list{display:grid;gap:var(--space-sm)}.movement-card{padding:var(--space-md);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);background:var(--color-surface)}.movement-heading{display:flex;align-items:start;justify-content:space-between;gap:var(--space-md)}.movement-heading h2{margin-bottom:0;font-size:var(--text-heading-3-size);font-weight:var(--text-heading-3-weight);letter-spacing:var(--text-heading-3-tracking);line-height:var(--text-heading-3-line)}.session-kind{padding:var(--space-xxs) var(--space-xs);border-radius:var(--radius-sm);color:var(--color-ink-muted);background:var(--color-canvas-soft);font-size:var(--text-eyebrow-size);font-weight:600;white-space:nowrap}.rep-standard-copy,.failure-instruction,.set-instruction{margin-block:var(--space-sm);color:var(--color-ink-muted);font-size:var(--text-caption-size);font-weight:var(--text-caption-weight);letter-spacing:var(--text-caption-tracking);line-height:var(--text-caption-line)}.failure-instruction{margin-bottom:var(--space-xs);color:var(--color-ink);font-size:1.125rem;font-weight:600;line-height:1.35}.set-instruction{margin-bottom:var(--space-xs)}.set-circles{display:flex;flex-wrap:wrap;gap:var(--space-xs);padding-top:var(--space-xs)}.set-circle{display:grid;width:3.75rem;height:3.75rem;min-width:3.75rem;min-height:3.75rem;place-content:center;border:1px solid #cfcfcf;border-radius:var(--radius-full);color:var(--color-ink);background:var(--color-surface);font-variant-numeric:tabular-nums;text-align:center}.set-circle>span{color:var(--color-ink-muted);font-size:.675rem;line-height:1}.set-circle>strong{font-size:1.125rem;line-height:1.2}.set-circle.is-complete{border-color:var(--color-ink);color:var(--color-on-primary);background:var(--color-ink)}.set-circle.is-complete>span{color:#ffffffb8}.enter-count{margin-top:var(--space-sm)}.rep-editor{display:grid;grid-template-columns:minmax(8rem,.75fr) minmax(15rem,1.25fr);gap:var(--space-lg);margin-top:var(--space-lg);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--color-canvas-soft)}.rep-editor-value{display:grid;align-content:center;justify-items:center;color:var(--color-ink-muted);font-size:var(--text-caption-size);text-align:center}.rep-editor-value output{color:var(--color-ink);font-family:var(--font-family);font-size:var(--text-display-1-fluid-size);font-feature-settings:var(--font-features);font-variant-numeric:tabular-nums;font-weight:var(--text-display-1-weight);letter-spacing:var(--text-display-1-fluid-tracking);line-height:var(--text-display-1-line)}.keypad{display:grid;grid-template-columns:repeat(3,minmax(var(--touch-target),1fr));gap:var(--space-xs)}.keypad button{min-height:3.25rem;border:1px solid var(--color-hairline);border-radius:var(--radius-md);color:var(--color-ink);background:var(--color-surface);font-size:var(--text-title-size)}.keypad button:nth-last-child(3){font-size:var(--text-caption-size)}.keypad .keypad-save{color:var(--color-on-primary);background:var(--color-primary);font-size:var(--text-body-sm-size);font-weight:600}.rest-timer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-top:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);background:var(--color-surface)}.rest-timer>div{display:flex;align-items:center;gap:var(--space-sm)}.rest-timer>div:first-child{display:grid;gap:var(--space-xxs)}.rest-timer span{color:var(--color-ink-muted);font-size:var(--text-caption-size)}.rest-timer strong{font-size:var(--text-heading-3-size);font-variant-numeric:tabular-nums;font-weight:var(--text-heading-3-weight);letter-spacing:var(--text-heading-3-tracking);line-height:var(--text-heading-3-line)}.complete-session{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding-block:var(--space-lg)}.complete-session p{max-width:22rem;margin:0;color:var(--color-ink-muted);font-size:var(--text-caption-size);text-align:right}.session-reason{margin-top:0;margin-bottom:var(--space-xl)}.today-complete{max-width:34rem;padding-block:clamp(5rem,20vh,10rem)}.progress-screen{max-width:48rem}.progress-heading{max-width:34rem;padding-block:var(--space-sm) var(--space-lg)}.progress-heading h1{margin-bottom:0;font-size:var(--text-heading-2-size);letter-spacing:var(--text-heading-2-tracking);line-height:var(--text-heading-2-line)}.progress-panel{outline:none}.progress-identity{display:flex;justify-content:space-between;gap:var(--space-md);padding-block:var(--space-md) var(--space-xs)}.progress-identity p{margin:0;color:var(--color-ink-muted);font-size:var(--text-eyebrow-size);font-weight:var(--text-eyebrow-weight);letter-spacing:var(--text-eyebrow-tracking);line-height:var(--text-eyebrow-line);text-transform:uppercase}.progress-identity p:last-child{flex:0 0 auto;text-align:right}.trend-summary{padding-block:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-hairline)}.score-heading{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:end;gap:var(--space-lg)}.score-heading>div{display:grid;gap:var(--space-xxs);min-width:0}.score-heading span{color:var(--color-ink-muted);font-size:var(--text-caption-size)}.score-heading strong{font-family:var(--font-family);font-size:var(--text-display-1-fluid-size);font-feature-settings:var(--font-features);font-variant-numeric:tabular-nums;font-weight:var(--text-display-1-weight);letter-spacing:var(--text-display-1-fluid-tracking);line-height:var(--text-display-1-line);white-space:nowrap}.score-heading>p{max-width:17rem;margin:0;color:var(--color-ink-muted);font-size:var(--text-caption-size);text-align:right}.trend-figure{margin:var(--space-lg) 0 0}.trend-chart{display:block;width:100%;height:auto;overflow:visible}.trend-grid-line{stroke:var(--color-hairline);stroke-width:1}.trend-line{fill:none;stroke:var(--color-primary);stroke-linecap:round;stroke-linejoin:round;stroke-width:3;vector-effect:non-scaling-stroke}.trend-raw-point{fill:var(--color-ink-faint);stroke:var(--color-surface);stroke-width:1.5;vector-effect:non-scaling-stroke}.trend-line-point{fill:var(--color-primary)}.trend-single{display:flex;align-items:center;gap:var(--space-xs);margin-top:var(--space-md);padding-block:var(--space-sm);border-top:1px solid var(--color-hairline);color:var(--color-ink-muted);font-size:var(--text-caption-size)}.trend-single>span{display:grid;gap:var(--space-xxs)}.trend-single strong{color:var(--color-ink-secondary);font-size:var(--text-caption-size);font-weight:500}.trend-single small{color:var(--color-ink-muted);font-size:var(--text-eyebrow-size)}.trend-single .trend-line-point{flex:0 0 auto;width:.5rem;height:.5rem;border-radius:var(--radius-full);background:var(--color-primary)}.trend-figure figcaption{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-md);color:var(--color-ink-muted);font-size:var(--text-eyebrow-size)}.trend-figure figcaption>span{display:inline-flex;align-items:center;gap:var(--space-xxs)}.legend-dot{width:.45rem;height:.45rem;border-radius:var(--radius-full);background:var(--color-ink-faint)}.legend-line{width:1rem;height:2px;background:var(--color-primary)}.trend-figure .trend-date-range{margin-left:auto}.trend-empty{display:grid;min-height:4.5rem;margin-top:var(--space-md);place-items:center;border-top:1px solid var(--color-hairline);border-bottom:1px solid var(--color-hairline)}.trend-empty p{max-width:24rem;margin:0;color:var(--color-ink-muted);font-size:var(--text-body-sm-size);text-align:center}.goal-projection,.next-milestone{padding-block:var(--space-lg);border-bottom:1px solid var(--color-hairline)}.goal-projection-layout,.milestone-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:var(--space-lg)}.goal-projection-layout h2,.milestone-row h2{margin-bottom:var(--space-xxs);font-size:var(--text-heading-2-size);font-weight:var(--text-heading-2-weight);letter-spacing:var(--text-heading-2-tracking);line-height:var(--text-heading-2-line)}.goal-format-value{white-space:nowrap}.goal-projection-layout>div>p,.milestone-row>div:first-child>p{margin:0;color:var(--color-ink-muted);font-size:var(--text-eyebrow-size);font-weight:600}.projection-value{display:grid;gap:var(--space-xxs)}.projection-value strong{color:var(--color-ink);font-size:clamp(1.2rem,4vw,1.625rem);letter-spacing:var(--text-heading-2-tracking);line-height:1.2}.goal-projection-layout>.projection-value{order:-1}.goal-projection-layout>.projection-value strong{font-size:clamp(1.5rem,7vw,2rem)}.projection-value p{margin:0;color:var(--color-ink-muted);font-size:var(--text-caption-size);line-height:1.45}.projection-value.is-compact{justify-items:end;text-align:right}.projection-value.is-compact strong{font-family:var(--font-family);font-size:var(--text-body-sm-size);font-weight:600;letter-spacing:0}.projection-basis,.projection-missing{margin:var(--space-sm) 0 0;color:var(--color-ink-muted);font-size:var(--text-caption-size)}.progress-details{border-bottom:1px solid var(--color-hairline)}.progress-details>div+div{border-top:1px solid var(--color-hairline)}.all-milestones{display:grid}.milestone-row.is-small{grid-template-columns:max-content minmax(0,1fr);padding-block:var(--space-sm);border-top:1px solid var(--color-hairline)}.milestone-row.is-small>div:first-child{display:grid}.milestone-row.is-small>div:first-child>span{color:var(--color-ink-muted);font-size:.675rem;font-weight:600;text-transform:uppercase}.benchmark-log{margin:0;padding:0;list-style:none}.benchmark-log li{display:grid;gap:var(--space-xxs);padding-block:var(--space-sm);border-top:1px solid var(--color-hairline)}.benchmark-log li>div{display:flex;justify-content:space-between;gap:var(--space-md)}.benchmark-log time,.benchmark-log span{color:var(--color-ink-secondary);font-size:var(--text-body-sm-size)}.benchmark-log small{color:var(--color-ink-muted);font-size:var(--text-eyebrow-size);font-weight:600}.atomic-date,.date-range-end{white-space:nowrap}.loading-copy{color:var(--color-ink-muted)}@media(min-width:44rem){.settings-actions{grid-template-columns:max-content minmax(15rem,1fr);align-items:end}}@media(max-width:43.99rem){.track-options{grid-template-columns:1fr}.standard-label{min-height:auto}.planner-save,.complete-session{align-items:stretch;flex-direction:column}.complete-session p{max-width:none;text-align:left}.planner-save .button-primary{width:100%}.rep-editor{grid-template-columns:1fr}}@media(max-width:25rem){.screen,.standalone-screen{padding-right:max(var(--space-md),env(safe-area-inset-right,0px));padding-left:max(var(--space-md),env(safe-area-inset-left,0px))}.score-heading{grid-template-columns:minmax(0,1fr);gap:var(--space-sm)}.score-heading>p{max-width:24rem;text-align:left}.goal-projection-layout{grid-template-columns:minmax(0,1fr)}.goal-projection-layout>.projection-value{order:initial}.confirm-row{grid-template-columns:max-content minmax(0,1fr)}.confirm-row>div:first-child strong,.comparison-goal{white-space:nowrap}}@media(max-width:22rem){.number-field,.confirm-row,.comparison-grid,.goal-projection-layout,.milestone-row{grid-template-columns:1fr}.number-field input{text-align:left}.projection-value.is-compact{justify-items:start;text-align:left}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto}}
