:root{--color-paper:oklch(15% .012 58);--color-paper-2:oklch(19% .014 58);--color-paper-3:oklch(23% .014 58);--color-rule:oklch(32% .014 58);--color-rule-strong:oklch(48% .018 58);--color-neutral:oklch(66% .012 58);--color-muted:oklch(74% .012 58);--color-ink:oklch(95% .01 72);--color-accent:oklch(70% .19 48);--color-accent-ink:oklch(16% .016 48);--color-focus:oklch(84% .15 92);--color-error:oklch(69% .18 28);--color-success:oklch(76% .13 145);--font-display:"Big Shoulders Display", "Arial Narrow", sans-serif;--font-body:"IBM Plex Sans JP", "IBM Plex Sans", sans-serif;--font-outlier:var(--font-body);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--text-xs:.64rem;--text-sm:.8rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.5625rem;--text-xl:1.9531rem;--text-2xl:2.4414rem;--text-3xl:3.0518rem;--text-4xl:3.8147rem;--text-display:clamp(3.75rem, 16vw, 7rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.1s;--dur-short:.16s;--dur-long:.32s;--rule-thin:1px;--rule-heavy:2px;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400;--z-toast:500;--z-tooltip:600}*{box-sizing:border-box}html,body{background:var(--color-paper);min-width:20rem;color:var(--color-ink);margin:0;overflow-x:clip}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--text-base);padding-bottom:max(var(--space-md), env(safe-area-inset-bottom));line-height:1.55}button,input,textarea{font:inherit}button,a,summary,.file-button{-webkit-tap-highlight-color:transparent}button,.button,a,summary{white-space:nowrap}button,.button{border:var(--rule-thin) solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper-2);min-height:2.75rem;color:var(--color-ink);cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out)}button:focus-visible,.button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:var(--rule-heavy) solid var(--color-focus);outline-offset:var(--space-2xs)}button:active,.button:active{transform:translateY(var(--rule-thin))}button:disabled,.button[aria-disabled=true]{opacity:.5;cursor:not-allowed}button[data-state=loading]{cursor:progress}button[data-state=error]{border-color:var(--color-error)}button[data-state=success],.button[data-state=success]{background:var(--color-paper-2);border-color:var(--color-success);color:var(--color-success)}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p,dl,dd,blockquote{margin:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;min-width:0;font-style:normal;line-height:1.04}input,textarea{border:var(--rule-thin) solid var(--color-rule-strong);outline:var(--rule-heavy) solid transparent;outline-offset:var(--rule-thin);border-radius:var(--radius-sm);background:var(--color-paper);width:100%;min-height:2.75rem;color:var(--color-ink);padding:var(--space-sm);font-variant-numeric:tabular-nums;transition:background-color var(--dur-short) var(--ease-out)}input::placeholder,textarea::placeholder{color:var(--color-muted)}input:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-error)}input[data-state=loading],textarea[data-state=loading]{cursor:progress}input[data-state=success],textarea[data-state=success]{border-color:var(--color-success)}textarea{resize:vertical;min-height:6rem}.app-shell{max-width:90rem;margin-inline:auto}.nav-edge{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md) clamp(var(--space-md), 4vw, var(--space-xl));border-bottom:var(--rule-heavy) solid var(--color-ink);flex-wrap:wrap;display:flex}.nav-tools{justify-content:flex-end;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.sync-status{font-family:var(--font-outlier);font-size:var(--text-xs);color:var(--color-muted)}.sync-status:before{content:"●";color:var(--color-success);margin-inline-end:var(--space-2xs)}.sync-status[data-state=loading]:before,.sync-status[data-state=saving]:before{color:var(--color-accent)}.sync-status[data-state=offline]:before{color:var(--color-error)}.wordmark{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.03em;font-weight:900}.nav-action{border:var(--rule-thin) solid var(--color-accent);min-height:2.75rem;padding-inline:var(--space-md);color:var(--color-accent);font-family:var(--font-outlier);font-size:var(--text-sm);align-items:center;display:inline-flex}main>section{padding-inline:clamp(var(--space-md), 4vw, var(--space-xl))}.dashboard{padding-block:var(--space-xl) var(--space-2xl)}.week-hero{gap:var(--space-xs);padding-block:var(--space-lg) var(--space-xl);display:grid}.program-state,.session-sheet>header p,.field>span:first-child,.date-field>span,.kpi>p,.utility-panel dt,.weight-status span{font-family:var(--font-outlier);font-size:var(--text-sm);letter-spacing:.08em;color:var(--color-muted)}.week-hero h1{font-size:var(--text-display);text-transform:uppercase;font-weight:900;line-height:1}.week-hero h1 span{color:var(--color-accent);font-family:var(--font-outlier)}.week-hero h1 small{font-size:var(--text-lg);color:var(--color-muted);letter-spacing:0}.week-title{font-family:var(--font-outlier);color:var(--color-accent)}.kpi-grid{border-top:var(--rule-thin) solid var(--color-rule-strong);grid-template-columns:minmax(0,1fr);display:grid}.kpi{gap:var(--space-md);min-width:0;padding-block:var(--space-lg);border-bottom:var(--rule-thin) solid var(--color-rule-strong);display:grid}.kpi strong{font-family:var(--font-outlier);font-size:clamp(var(--text-xl), 10vw, var(--text-3xl));font-variant-numeric:tabular-nums;line-height:1}.kpi strong small{font-size:var(--text-md);color:var(--color-muted)}.kpi dl{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.kpi dt{font-size:var(--text-xs);color:var(--color-muted)}.kpi dd{font-family:var(--font-outlier);font-size:var(--text-sm)}.workbench{padding-block:var(--space-2xl);background:var(--color-paper-2);color:var(--color-ink);border-block:var(--rule-heavy) solid var(--color-ink)}.section-heading{gap:var(--space-sm);margin-bottom:var(--space-xl);display:grid}.section-heading h2{font-size:clamp(var(--text-2xl), 8vw, var(--text-4xl));text-transform:uppercase;font-weight:900}.section-heading p{max-width:42rem;color:var(--color-muted)}.section-heading--compact{margin-bottom:var(--space-lg)}.section-heading--compact h2{font-size:var(--text-2xl)}.week-switcher{margin-bottom:var(--space-md);border-block:var(--rule-thin) solid var(--color-rule-strong);grid-template-columns:2.75rem minmax(0,1fr) 2.75rem;align-items:center;display:grid}.week-switcher button{font-size:var(--text-lg);background:0 0;border:0;border-radius:0}.week-switcher strong{text-align:center;font-family:var(--font-outlier)}.program-notice,.power-banner{padding:var(--space-sm) var(--space-md);border:var(--rule-thin) solid var(--color-accent);color:var(--color-accent);font-family:var(--font-outlier);font-size:var(--text-sm);text-align:left;font-weight:700}.program-notice{margin-bottom:var(--space-md)}.session-tabs{gap:var(--space-2xs);margin-bottom:var(--space-lg);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.session-tabs button{place-items:center;gap:var(--space-3xs);min-width:0;min-height:4rem;padding:var(--space-xs);font-family:var(--font-outlier);font-size:clamp(var(--text-xs), 2.8vw, var(--text-sm));display:grid}.session-tabs button span{font-family:var(--font-display);font-size:var(--text-xl);line-height:.8}.session-tabs button.is-selected{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.session-sheet{background:var(--color-paper);color:var(--color-ink);border:var(--rule-thin) solid var(--color-rule-strong)}.session-sheet>header{gap:var(--space-md);padding:var(--space-lg);border-bottom:var(--rule-thin) solid var(--color-rule);display:grid}.session-sheet>header h2{font-size:var(--text-2xl);text-transform:uppercase}.power-banner{margin:var(--space-lg)}.session-note{padding-inline:var(--space-lg);color:var(--color-muted)}.date-field{gap:var(--space-xs);display:grid}.date-field input{min-width:0}.exercise-block{padding:var(--space-xl) var(--space-lg);border-bottom:var(--rule-thin) solid var(--color-rule)}.exercise-head{gap:var(--space-sm);margin-bottom:var(--space-lg);display:grid}.exercise-head h3{font-size:var(--text-xl);font-weight:900}.exercise-head>div{align-items:center;gap:var(--space-sm);display:flex}.intent-tag{border:var(--rule-thin) solid var(--color-accent);color:var(--color-accent);padding:var(--space-2xs) var(--space-xs);font-family:var(--font-outlier);font-size:var(--text-xs)}.plan-string{font-family:var(--font-outlier);color:var(--color-accent);font-weight:700}.exercise-note{color:var(--color-muted);margin-bottom:var(--space-lg)}.set-list{display:grid}.set-row{gap:var(--space-sm);padding-block:var(--space-md);border-top:var(--rule-thin) solid var(--color-rule);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.set-row--single{background:var(--color-paper-2);color:var(--color-ink);margin-inline:calc(var(--space-md) * -1);padding-inline:var(--space-md)}.set-number{font-family:var(--font-outlier);font-size:var(--text-sm);color:var(--color-muted);grid-column:1/-1}.compact-field{gap:var(--space-2xs);min-width:0;display:grid}.compact-field>span:first-child{font-size:var(--text-xs);color:var(--color-muted)}.input-with-unit{align-items:center;gap:var(--space-xs);grid-template-columns:minmax(0,1fr) auto;display:grid}.input-with-unit input{min-width:0;font-family:var(--font-outlier);font-weight:700}.input-with-unit b{font-family:var(--font-outlier);font-size:var(--text-xs);color:var(--color-muted)}.rir-picker{gap:var(--space-2xs);border:0;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;margin:0;padding:0;display:grid}.rir-picker legend{margin-bottom:var(--space-2xs);font-size:var(--text-xs);color:var(--color-muted)}.rir-picker button{min-width:0;font-family:var(--font-outlier)}.rir-picker button.is-selected{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.conditional-single{gap:var(--space-md);margin-top:var(--space-lg);padding:var(--space-md);border:var(--rule-thin) dashed var(--color-rule-strong);display:grid}.conditional-single p{gap:var(--space-2xs);display:grid}.conditional-single strong{font-family:var(--font-outlier);color:var(--color-accent)}.conditional-single span{color:var(--color-muted)}.field{gap:var(--space-xs);display:grid}.field small{min-height:1lh;color:var(--color-muted)}.note-field{padding:var(--space-xl) var(--space-lg) var(--space-lg)}.button{padding-inline:var(--space-lg);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.button--primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.button--quiet{color:var(--color-ink);background:0 0}.complete-button{width:calc(100% - (var(--space-lg) * 2));margin:0 var(--space-lg) var(--space-lg);min-height:3.5rem}.off-state{text-align:center;place-content:center;gap:var(--space-sm);min-height:18rem;padding:var(--space-xl);display:grid}.off-state strong{font-family:var(--font-display);font-size:var(--text-display);color:var(--color-muted)}.off-state p{color:var(--color-muted)}.measurement-grid{gap:var(--space-xl);padding-block:var(--space-3xl);display:grid}.measurement-panel{min-width:0}.measurement-panel form{gap:var(--space-md);display:grid}.standing-reach-setting{padding-block:var(--space-md);border-block:var(--rule-thin) solid var(--color-rule);margin-bottom:var(--space-md)}.input-with-unit--large input{font-size:var(--text-xl)}.jump-inputs{gap:var(--space-lg);display:grid}.jump-inputs small{justify-content:space-between;align-items:baseline;display:flex}.jump-inputs small strong{font-family:var(--font-outlier);font-size:var(--text-md);color:var(--color-accent)}.recommendation{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:var(--rule-thin) solid var(--color-rule);color:var(--color-muted);font-size:var(--text-sm)}.weight-status{margin-bottom:var(--space-xl);border-top:var(--rule-thin) solid var(--color-rule);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.weight-status>div{gap:var(--space-xs);padding-block:var(--space-md);border-bottom:var(--rule-thin) solid var(--color-rule);display:grid}.weight-status strong{font-family:var(--font-outlier);font-size:var(--text-lg)}.mini-history{margin-top:var(--space-xl)}.mini-history p{justify-content:space-between;gap:var(--space-md);padding-block:var(--space-sm);border-bottom:var(--rule-thin) solid var(--color-rule);display:flex}.mini-history strong{font-family:var(--font-outlier)}.history{padding-block:var(--space-2xl) var(--space-3xl);border-top:var(--rule-heavy) solid var(--color-ink)}.history-columns{gap:var(--space-2xl);display:grid}.history-columns>div>h3{font-family:var(--font-outlier);font-size:var(--text-sm);letter-spacing:.08em;margin-bottom:var(--space-md)}.empty-copy{color:var(--color-muted);padding-block:var(--space-lg);border-block:var(--rule-thin) solid var(--color-rule)}.history-item{border-top:var(--rule-thin) solid var(--color-rule)}.history-item:last-child{border-bottom:var(--rule-thin) solid var(--color-rule)}.history-item summary{justify-content:space-between;align-items:center;gap:var(--space-md);cursor:pointer;min-height:4.5rem;list-style:none;display:flex}.history-item summary::-webkit-details-marker{display:none}.history-item summary>span{display:grid}.history-item summary small{font-family:var(--font-outlier);color:var(--color-muted)}.history-item summary strong{font-family:var(--font-display);font-size:var(--text-md)}.history-detail{gap:var(--space-lg);padding:0 0 var(--space-lg);display:grid}.history-detail h4{font-size:var(--text-lg);margin-bottom:var(--space-xs)}.history-detail p{gap:var(--space-sm);padding-block:var(--space-xs);border-top:var(--rule-thin) solid var(--color-rule);font-family:var(--font-outlier);font-size:var(--text-sm);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.history-detail p em{color:var(--color-muted);font-style:normal}.history-detail blockquote{color:var(--color-muted);border-inline-start:var(--rule-heavy) solid var(--color-accent);padding-inline-start:var(--space-md)}.jump-history-item{padding-block:var(--space-md);border-top:var(--rule-thin) solid var(--color-rule)}.jump-history-item header{font-family:var(--font-outlier);font-size:var(--text-sm);color:var(--color-muted);justify-content:space-between;display:flex}.jump-history-item p{gap:var(--space-2xs) var(--space-md);padding-top:var(--space-sm);grid-template-columns:minmax(0,1fr) auto;display:grid}.jump-history-item strong{font-family:var(--font-outlier)}.jump-history-item em{color:var(--color-muted);font-style:normal;font-size:var(--text-sm);grid-column:1/-1}.utility-grid{gap:var(--space-xl);padding-block:var(--space-2xl);background:var(--color-paper-2);color:var(--color-ink);border-block:var(--rule-heavy) solid var(--color-ink);display:grid}.utility-panel{align-content:start;gap:var(--space-lg);min-width:0;display:grid}.utility-panel h2{font-size:var(--text-2xl);text-transform:uppercase}.utility-panel>p{color:var(--color-muted)}.backup-actions{gap:var(--space-xs);display:grid}.file-button{cursor:pointer;position:relative;overflow:clip}.file-button input{inline-size:var(--rule-thin);block-size:var(--rule-thin);opacity:0;pointer-events:none;position:absolute}.sync-key-panel{border-top:var(--rule-thin) solid var(--color-rule);padding-top:var(--space-md)}.sync-key-panel summary{cursor:pointer;min-height:2.75rem;font-weight:700}.sync-key-panel>p{color:var(--color-muted);font-size:var(--text-sm)}.sync-key-panel[open]{gap:var(--space-md);display:grid}.sync-key-current{gap:var(--space-sm);display:grid}.sync-key-current code{padding:var(--space-sm);border:var(--rule-thin) solid var(--color-rule);background:var(--color-paper);color:var(--color-muted);font-size:var(--text-xs);overflow-wrap:anywhere;user-select:all;display:block}.rules-panel dl{display:grid}.rules-panel dl>div{gap:var(--space-md);padding-block:var(--space-sm);border-top:var(--rule-thin) solid var(--color-rule);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);display:grid}.rules-panel dd{color:var(--color-muted)}.rules-panel details{border-top:var(--rule-thin) solid var(--color-rule);padding-top:var(--space-md)}.rules-panel summary{cursor:pointer;min-height:2.75rem;font-weight:700}.rules-panel details p{color:var(--color-muted)}.status-region{inset-inline:var(--space-md);z-index:var(--z-toast);pointer-events:none;position:fixed;inset-block-end:max(var(--space-md), env(safe-area-inset-bottom))}.error-message{max-width:34rem;padding:var(--space-md);border:var(--rule-thin) solid var(--color-rule-strong);background:var(--color-paper-3);color:var(--color-ink);border-color:var(--color-error);margin-inline:auto}.sr-only{inline-size:var(--rule-thin);block-size:var(--rule-thin);clip-path:inset(50%);white-space:nowrap;border:0;margin:0;padding:0;position:absolute;overflow:clip}.foot-line{padding:var(--space-lg) clamp(var(--space-md), 4vw, var(--space-xl))}.foot-line p{gap:var(--space-xs);font-family:var(--font-outlier);font-size:var(--text-xs);color:var(--color-muted);flex-wrap:wrap;display:flex}.setup-shell,.loading-state{min-height:100svh;padding:var(--space-md);place-items:center;display:grid}.setup-panel{gap:var(--space-lg);border-block:var(--rule-heavy) solid var(--color-ink);width:min(100%,34rem);padding-block:var(--space-xl);display:grid}.setup-panel h1{font-size:var(--text-4xl);text-transform:uppercase}.setup-panel>p:not(.wordmark){color:var(--color-muted)}.setup-panel form{gap:var(--space-lg);display:grid}.loading-state{font-family:var(--font-outlier);color:var(--color-muted)}@media (hover:hover) and (pointer:fine){button:hover,.button:hover{background:var(--color-ink);color:var(--color-paper)}.button--primary:hover{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink);transform:translateY(calc(var(--rule-thin) * -1))}.nav-action:hover{background:var(--color-accent);color:var(--color-accent-ink)}input:hover,textarea:hover{background:var(--color-paper-2)}}@media (pointer:coarse){button,.button,input,textarea,summary{min-height:3rem}}@media (width>=40rem){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi{padding:var(--space-lg)}.kpi:nth-child(odd){border-inline-end:var(--rule-thin) solid var(--color-rule-strong)}.session-sheet>header{grid-template-columns:minmax(0,1fr) minmax(12rem,.35fr);align-items:end}.exercise-head{grid-template-columns:minmax(0,1fr) auto;align-items:end}.set-row{grid-template-columns:5rem minmax(0,1fr) minmax(0,1fr) minmax(16rem,1.8fr);align-items:end}.set-number,.rir-picker{grid-column:auto}.conditional-single{grid-template-columns:minmax(0,1fr) auto;align-items:center}.jump-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.weight-status{grid-template-columns:repeat(4,minmax(0,1fr))}.weight-status>div:not(:last-child){border-inline-end:var(--rule-thin) solid var(--color-rule);padding-inline-end:var(--space-md)}.weight-status>div:not(:first-child){padding-inline-start:var(--space-md)}.backup-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=60rem){.dashboard{gap:var(--space-2xl);grid-template-columns:minmax(18rem,.7fr) minmax(0,1.3fr);display:grid}.week-hero{align-content:end}.measurement-grid,.history-columns,.utility-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}.measurement-grid>:first-child,.history-columns>:first-child,.utility-grid>:first-child{border-inline-end:var(--rule-thin) solid var(--color-rule-strong);padding-inline-end:var(--space-xl)}.section-heading{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr);align-items:end}.section-heading--compact{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}}
