:root{color:var(--color-text-primary);background:var(--color-bg);color-scheme:dark;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--font-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--canvas: #101311;--canvas-raised: #151916;--surface: #1a1f1b;--surface-2: #202621;--surface-3: #29302a;--surface-hover: #2d352e;--text: #f2f4ed;--text-soft: #c4cac3;--text-muted: #a0a8a0;--line: rgba(230, 239, 227, .11);--line-strong: rgba(230, 239, 227, .2);--coral: #ff8e64;--coral-ink: #38170c;--green: #b8f35b;--green-ink: #18220b;--violet: #8d7cff;--cyan: #58c9d6;--danger: #ff7777;--content: min(100% - 56px, 1280px);--color-bg: var(--canvas);--color-bg-secondary: var(--canvas-raised);--color-surface: var(--surface);--color-surface-hover: var(--surface-hover);--color-border: var(--line);--color-border-strong: var(--line-strong);--color-text-primary: var(--text);--color-text-secondary: var(--text-soft);--color-text-tertiary: var(--text-muted);--color-text-on-accent: var(--coral-ink);--color-accent: var(--coral);--color-accent-hover: color-mix(in srgb, var(--coral) 88%, white);--color-accent-active: color-mix(in srgb, var(--coral) 78%, black);--color-accent-tint: color-mix(in srgb, var(--coral) 12%, transparent);--color-success: var(--green);--color-success-tint: color-mix(in srgb, var(--green) 11%, transparent);--color-danger: var(--danger);--color-danger-tint: color-mix(in srgb, var(--danger) 11%, transparent);--color-focus-ring: var(--coral);--chart-1: var(--coral);--chart-2: var(--cyan);--chart-3: var(--green);--chart-4: #e8bf65;--chart-5: var(--violet);--chart-6: var(--text-muted);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 56px;--radius-sm: 10px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 999px;--shadow-none: none;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .12);--shadow-md: 0 18px 44px rgba(0, 0, 0, .2);--shadow-lg: 0 24px 70px rgba(0, 0, 0, .24);--ease-standard: cubic-bezier(.4, 0, .2, 1);--duration-fast: .12s;--duration-base: .18s;--duration-slow: .28s}:root[data-theme=light],body[data-theme=light]{color-scheme:light;--canvas: #f2f3ed;--canvas-raised: #eceee6;--surface: #fbfcf7;--surface-2: #f0f2ea;--surface-3: #e1e5da;--surface-hover: #e7eadf;--text: #151a16;--text-soft: #3f4941;--text-muted: #59635a;--line: rgba(23, 34, 25, .11);--line-strong: rgba(23, 34, 25, .2);--coral: #a83f20;--coral-ink: #ffffff;--green: #426f0b;--green-ink: #f7ffe9;--violet: #6755d5;--cyan: #176876;--danger: #c94444;--shadow-md: 0 18px 44px rgba(31, 45, 33, .09);--shadow-lg: 0 24px 70px rgba(31, 45, 33, .11)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;overflow-x:hidden;background:radial-gradient(circle at 9% -8%,color-mix(in srgb,var(--violet) 10%,transparent),transparent 34rem),radial-gradient(circle at 94% 16%,color-mix(in srgb,var(--coral) 8%,transparent),transparent 38rem),var(--color-bg);color:var(--color-text-primary);transition:background-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}body:before{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;content:"";opacity:.22;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 75%);mask-image:linear-gradient(to bottom,black,transparent 75%)}::selection{color:var(--color-text-on-accent);background:var(--color-accent)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}input,select,textarea{min-width:0}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.app-shell{display:grid;grid-template-columns:256px minmax(0,1fr);min-height:100vh;min-height:100dvh;background:var(--color-bg)}.app-rail{position:sticky;top:0;display:flex;flex-direction:column;gap:var(--space-5);height:100vh;height:100dvh;padding:var(--space-5);border-right:1px solid var(--color-border);background:var(--color-bg-secondary)}.brand-mark,.chrome-brand{display:flex;align-items:center;gap:var(--space-3);min-width:0}.brand-mark{min-height:64px;padding:var(--space-2)}.brand-mark svg,.chrome-mark svg{width:22px;height:22px;color:var(--color-accent);stroke-width:1.7}.brand-mark strong,.brand-mark span,.chrome-brand strong,.chrome-brand span{display:block}.brand-mark strong,.chrome-brand strong{color:var(--color-text-primary);font-size:18px;font-weight:550;line-height:1.15}.brand-mark span,.chrome-brand span{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:13px;font-weight:400}.rail-summary{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-surface) 50%,transparent)}.rail-summary span,.chrome-status span,.metric-tile span,.today-strip span,.week-day-head span,.week-day p,.recent-entry span,.program-editor-head>span,.program-day-button strong,.calendar-cell small,.legend-item,.pr-entry span,.empty-note,.legacy-detail{color:var(--color-text-secondary)}.rail-summary>span,.chrome-status span,.set-row label span,.set-index,.eyebrow,.calendar-label,.metric-tile span,.week-day-head span,.program-editor-head>span{font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.rail-summary strong{font-family:var(--font-mono);font-size:28px;font-weight:500;line-height:1;font-variant-numeric:tabular-nums}.app-rail nav{display:grid;gap:var(--space-1)}.tab-button{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:0 var(--space-3);border:1px solid transparent;border-radius:var(--radius-full);color:var(--color-text-secondary);background:transparent;text-align:left;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.tab-button:hover{color:var(--color-text-primary);background:color-mix(in srgb,var(--color-surface) 45%,transparent)}.tab-button svg{width:20px;height:20px;flex:0 0 auto;stroke-width:1.65}.tab-button.active{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 16%,transparent);background:var(--color-accent-tint)}.app-main{width:min(100%,980px);margin:0 auto;padding:var(--space-8) var(--space-7) var(--space-10)}.app-chrome{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-4);min-height:64px;margin-bottom:var(--space-8);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border)}.chrome-mark{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.chrome-status{display:grid;min-width:82px;text-align:right}.chrome-status strong{color:var(--color-accent);font-family:var(--font-mono);font-size:20px;font-weight:500;font-variant-numeric:tabular-nums}.chrome-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.mode-toggle{display:inline-flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-full);color:var(--color-text-secondary);background:var(--color-surface);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.mode-toggle:hover,.mode-toggle.active{color:var(--color-text-primary);border-color:var(--color-border-strong);background:var(--color-surface-hover)}.mode-toggle svg{width:18px;height:18px;stroke-width:1.65}.mode-toggle strong{min-width:54px;font-size:12px;font-weight:500;line-height:1;text-align:left}.mode-toggle-track{position:relative;width:34px;height:18px;border-radius:var(--radius-full);background:var(--color-bg-secondary);box-shadow:inset 0 0 0 1px var(--color-border)}.mode-toggle-track span{position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:var(--radius-full);background:var(--color-text-tertiary);transition:transform var(--duration-base) var(--ease-standard),background-color var(--duration-base) var(--ease-standard)}.mode-toggle.active .mode-toggle-track span{transform:translate(16px);background:var(--color-accent)}.view-stack{display:grid;gap:var(--space-6)}.topline{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-5)}.topline h1,.workout-banner h2{margin:0;color:var(--color-text-primary);font-weight:550;letter-spacing:0}.topline h1{font-size:clamp(34px,5vw,56px);line-height:1.05}.workout-banner h2{font-size:clamp(30px,4.5vw,48px);line-height:1.08}.eyebrow{margin:0 0 var(--space-2);color:var(--color-accent)}.metric-tile,.today-dashboard,.today-command,.trend-card,.workout-banner,.exercise-group,.calendar-shell,.timeline-section,.recent-panel,.program-side-panel,.program-editor-panel,.program-workout-row,.superset-builder,.week-day,.settings-action,.today-strip article{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-none)}.today-dashboard{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.9fr);gap:var(--space-4);padding:var(--space-5);overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent) 14%,transparent),transparent 48%),var(--color-surface)}.today-hero{display:grid;align-content:center;min-height:260px;padding:var(--space-4)}.today-hero h1{max-width:720px;margin:0;color:var(--color-text-primary);font-size:clamp(40px,7vw,72px);font-weight:620;line-height:.96;letter-spacing:0}.today-hero p{max-width:620px;margin:var(--space-4) 0 0;color:var(--color-text-secondary);font-size:18px;line-height:1.45}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:var(--space-5)}.hero-actions>span,.current-set-summary{display:inline-flex;align-items:center;min-height:34px;width:fit-content;padding:0 var(--space-3);border-radius:var(--radius-full);color:var(--color-text-secondary);background:color-mix(in srgb,var(--color-bg-secondary) 72%,transparent);font-family:var(--font-mono);font-size:13px;font-variant-numeric:tabular-nums}.spotify-inline{text-decoration:none}.today-command{display:grid;align-content:center;justify-items:center;gap:var(--space-5);min-height:260px;padding:var(--space-5);text-align:center;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--chart-2) 16%,transparent),transparent 70%),var(--color-surface)}.today-command span{color:var(--color-text-secondary);font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.today-command strong{display:block;margin-top:var(--space-2);font-size:22px;font-weight:620;line-height:1.15}.today-command p{margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:13px}.today-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.today-strip article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);min-height:72px;padding:var(--space-4)}.today-strip svg{width:18px;height:18px;color:var(--color-accent)}.today-strip strong{font-family:var(--font-mono);font-size:22px;font-weight:500;font-variant-numeric:tabular-nums}.training-strip article{border-color:color-mix(in srgb,var(--color-accent) 12%,var(--color-border))}.trend-card{display:grid;gap:var(--space-4);padding:var(--space-5)}.trend-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:var(--space-3);min-height:132px}.trend-bar{display:grid;grid-template-rows:1fr auto;gap:var(--space-2);height:132px;min-width:0}.trend-bar span{align-self:end;display:block;min-height:8px;border-radius:var(--radius-full) var(--radius-full) var(--radius-sm) var(--radius-sm);background:linear-gradient(180deg,var(--color-accent),var(--chart-2))}.trend-bar small{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:11px;text-align:center}.workout-stage{display:grid;gap:var(--space-5)}.workout-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-height:208px;padding:var(--space-6)}.banner-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.banner-chips>span:not(.status-pill){display:inline-flex;align-items:center;min-height:28px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);background:var(--color-bg-secondary);font-size:13px;font-weight:400}.banner-chips .rest-chip{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 26%,var(--color-border));background:var(--color-accent-tint);font-family:var(--font-mono)}.progress-orb{position:relative;z-index:0;display:grid;place-items:center;flex:0 0 auto;width:132px;aspect-ratio:1;border-radius:var(--radius-full)}.progress-orb:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:inherit;background:conic-gradient(var(--color-accent) var(--progress),var(--color-border) 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 calc(100% - 9px));mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 calc(100% - 9px))}.progress-orb.large{width:152px}.progress-orb strong,.progress-orb span{grid-area:1 / 1}.progress-orb strong{margin-top:-14px;font-family:var(--font-mono);font-size:28px;font-weight:500;font-variant-numeric:tabular-nums}.progress-orb span{margin-top:38px;color:var(--color-text-secondary);font-size:12px;font-weight:500}.status-pill{display:inline-flex;align-items:center;min-height:28px;padding:0 var(--space-3);border:1px solid transparent;border-radius:var(--radius-full);color:var(--color-text-secondary);background:var(--color-bg-secondary);font-size:12px;font-weight:500}.status-pill.completed{color:var(--color-success);background:var(--color-success-tint)}.status-pill.partial{color:var(--color-accent);background:var(--color-accent-tint)}.status-pill.planned{color:var(--chart-5);background:color-mix(in srgb,var(--chart-5) 14%,transparent)}.status-pill.skipped,.status-pill.unlogged{color:var(--color-text-secondary);background:var(--color-bg-secondary)}.status-pill.unlogged{border-color:var(--color-border)}.status-pill.future{color:var(--chart-2);background:color-mix(in srgb,var(--chart-2) 16%,transparent)}.action-row,.date-pager,.superset-controls,.legend-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.icon-text-button,.icon-only-button,.check-button,.skip-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-primary);background:var(--color-surface);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.icon-text-button:hover,.icon-only-button:hover,.check-button:hover,.skip-button:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.icon-text-button{gap:var(--space-2);min-height:40px;padding:0 var(--space-4);font-weight:500}.icon-text-button.primary{border-color:var(--color-accent);color:var(--color-text-on-accent);background:var(--color-accent)}.icon-text-button.primary:hover{background:var(--color-accent-hover)}.icon-text-button.primary:active{background:var(--color-accent-active)}.icon-text-button.danger{color:var(--color-danger);border-color:color-mix(in srgb,var(--color-danger) 30%,var(--color-border));background:var(--color-danger-tint)}.icon-text-button.danger:hover{color:var(--color-text-primary);border-color:color-mix(in srgb,var(--color-danger) 52%,var(--color-border-strong));background:color-mix(in srgb,var(--color-danger) 16%,var(--color-surface))}.icon-text-button.compact{min-height:36px;padding-inline:var(--space-3);font-size:14px}.icon-only-button{width:40px;height:40px;padding:0}.icon-only-button.small{width:36px;height:36px;min-height:36px}.icon-text-button svg,.icon-only-button svg,.check-button svg,.skip-button svg{width:18px;height:18px;stroke-width:1.7}.section-title{display:flex;align-items:center;gap:var(--space-2)}.section-title h3{margin:0;font-size:17px;font-weight:500}.section-title svg{width:18px;height:18px;color:var(--color-accent)}.superset-builder{display:grid;gap:var(--space-4);padding:var(--space-5)}.mobile-superset-toggle{display:none}.superset-builder-body{display:grid;gap:var(--space-4)}.superset-builder-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.superset-builder-heading>span{color:var(--color-accent);font-family:var(--font-mono);font-size:12px;font-weight:700}.superset-builder>p,.superset-builder-body>p{margin:calc(var(--space-2) * -1) 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.superset-controls{align-items:stretch}.superset-controls select,.date-input,.program-add-row input,.program-workout-row input,.set-row select,.set-row input,.notes-grid textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-primary);background:var(--color-surface);outline:none}.superset-controls select:focus,.date-input:focus,.program-add-row input:focus,.program-workout-row input:focus,.set-row select:focus,.set-row input:focus,.notes-grid textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent) 18%,transparent)}.superset-controls select,.date-input{min-height:40px}.superset-controls select{min-width:min(100%,16rem);flex:1 1 13rem;padding:0 var(--space-3)}.exercise-stack{display:grid;gap:var(--space-4)}.exercise-group{position:relative;padding:var(--space-3)}.exercise-group.superset{border-left:3px solid var(--color-accent);padding-left:calc(var(--space-3) + 3px)}.exercise-group.dragging{opacity:.66}.exercise-group.drop-target{border-color:var(--color-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent) 18%,transparent)}.group-header{display:flex;align-items:center;justify-content:space-between;min-height:32px;padding:0 var(--space-1) var(--space-3);color:var(--color-accent);font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.group-header span{display:inline-flex;align-items:center;gap:var(--space-2)}.group-header svg{width:16px;height:16px}.exercise-group-body{display:grid;grid-template-columns:36px minmax(0,1fr);gap:var(--space-3);align-items:start}.group-move-controls{display:grid;gap:var(--space-2);padding-top:var(--space-2)}.drag-button,.move-mini-button,.set-remove-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-tertiary);background:transparent}.drag-button{width:36px;height:44px;cursor:grab}.drag-button:active{cursor:grabbing}.drag-button:hover,.move-mini-button:hover,.set-remove-button:hover{color:var(--color-text-primary);border-color:var(--color-border-strong);background:var(--color-surface-hover)}.drag-button svg,.move-mini-button svg,.set-remove-button svg{width:17px;height:17px}.move-pair{display:grid;gap:var(--space-1)}.move-mini-button{width:36px;height:28px;padding:0}.group-exercise-list{display:grid}.exercise-row{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:var(--space-3);align-items:center;min-height:78px;padding:var(--space-3);border-radius:var(--radius-md);transition:background-color var(--duration-base) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.exercise-row+.exercise-row{border-top:1px solid var(--color-border);border-radius:0}.exercise-row.done{background:var(--color-success-tint);animation:complete-pulse .26s var(--ease-standard)}.exercise-row.skipped{background:color-mix(in srgb,var(--color-danger) 4%,transparent)}.exercise-row.skipped .exercise-copy{opacity:.62}.check-button,.skip-button{width:40px;height:40px;padding:0}.check-button{color:var(--color-success)}.check-button:hover{color:var(--color-accent)}.skip-button.active{color:var(--color-danger);border-color:color-mix(in srgb,var(--color-danger) 35%,var(--color-border));background:var(--color-danger-tint)}.exercise-copy{display:grid;gap:var(--space-3);min-width:0}.exercise-copy strong{font-size:17px;font-weight:500;overflow-wrap:anywhere}.exercise-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.exercise-title-row>div{display:grid;gap:var(--space-1);min-width:0}.exercise-name-line{display:flex;align-items:center;gap:var(--space-2);min-width:0}.rename-exercise-button{display:inline-grid;place-items:center;flex:0 0 auto;width:30px;height:30px;padding:0;border:0;border-radius:var(--radius-sm);color:var(--color-text-tertiary);background:transparent}.rename-exercise-button:hover{color:var(--color-accent);background:var(--color-accent-tint)}.rename-exercise-button svg{width:15px;height:15px}.exercise-name-editor{display:grid;gap:var(--space-2);padding:var(--space-3);border:1px solid color-mix(in srgb,var(--color-accent) 26%,var(--color-border));border-radius:var(--radius-md);background:var(--color-accent-tint)}.exercise-name-editor label{display:grid;gap:var(--space-1)}.exercise-name-editor label>span{color:var(--color-text-secondary);font-size:12px;font-weight:600}.exercise-name-editor input{width:100%;min-height:42px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-primary);background:var(--color-surface)}.exercise-name-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.exercise-title-row small{color:var(--color-text-secondary);font-size:13px;line-height:1.35}.pr-chip{flex:0 0 auto;min-height:26px;padding:0 var(--space-3);border-radius:var(--radius-full);color:var(--color-text-on-accent);background:var(--color-accent);font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.02em}.last-sets-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);justify-self:start;min-height:34px;padding:0 var(--space-3);border:1px solid color-mix(in srgb,var(--chart-2) 34%,var(--color-border));border-radius:var(--radius-full);color:var(--chart-2);background:color-mix(in srgb,var(--chart-2) 12%,transparent);font-size:13px;font-weight:600}.last-sets-button:hover{color:var(--color-text-primary);border-color:var(--chart-2);background:color-mix(in srgb,var(--chart-2) 18%,transparent)}.last-sets-button svg{width:15px;height:15px}.set-stack{display:grid;gap:var(--space-2)}.set-row{display:grid;grid-template-columns:64px minmax(0,1fr) minmax(74px,.45fr);gap:var(--space-2);align-items:end;padding:var(--space-2);border-top:1px solid var(--color-border)}.set-row:first-child{border-top:0}.set-row.with-pounds{grid-template-columns:64px minmax(0,1fr) minmax(96px,.6fr) minmax(74px,.45fr)}.set-row.can-remove{grid-template-columns:64px minmax(0,1fr) minmax(74px,.45fr) 36px}.set-row.with-pounds.can-remove{grid-template-columns:64px minmax(0,1fr) minmax(96px,.6fr) minmax(74px,.45fr) 36px}.set-row.stretch-row{grid-template-columns:88px minmax(120px,180px);justify-content:start}.set-row.stretch-row.can-remove{grid-template-columns:88px minmax(120px,180px) 36px}.set-row label{display:grid;gap:var(--space-1);min-width:0}.set-index{align-self:center;color:var(--color-accent)}.set-row select,.set-row input{width:100%;min-height:40px;padding:0 var(--space-3);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.set-remove-button{width:36px;height:40px;padding:0;color:var(--color-danger)}.set-add-button{justify-self:start}.cardio-logger{display:grid;gap:var(--space-3);padding:var(--space-3);border:1px solid color-mix(in srgb,var(--chart-2) 22%,var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--chart-2) 8%,transparent)}.cardio-slider-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.cardio-slider-head span{color:var(--color-text-secondary);font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.cardio-slider-head strong{font-family:var(--font-mono);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.cardio-minute-input{display:flex;align-items:center;gap:var(--space-2)}.cardio-minute-input input{width:76px;min-height:38px;padding:var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-primary);background:var(--color-surface);font-family:var(--font-mono);font-size:16px;font-variant-numeric:tabular-nums;text-align:right}.cardio-logger input[type=range]{width:100%;accent-color:var(--chart-2)}.cardio-quick-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.cardio-quick-row button{min-height:34px;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);background:var(--color-surface);font-family:var(--font-mono);font-size:12px}.cardio-quick-row button:hover,.cardio-quick-row button.active{color:var(--color-text-primary);border-color:var(--chart-2);background:color-mix(in srgb,var(--chart-2) 14%,transparent)}.legacy-detail{display:block;font-size:13px;font-weight:400;overflow-wrap:anywhere}.notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.notes-grid label{display:grid;gap:var(--space-2)}.notes-grid span{color:var(--color-text-secondary);font-size:13px;font-weight:500}.notes-grid textarea{width:100%;min-height:128px;resize:vertical;padding:var(--space-3);line-height:1.55}.mobile-workout-tools,.mobile-panel-toggle{display:none}.session-notes-panel{display:grid}.session-finish-bar{position:sticky;bottom:var(--space-4);z-index:8;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3);border:1px solid color-mix(in srgb,var(--color-accent) 18%,var(--color-border));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-surface) 96%,transparent);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.session-finish-bar strong,.session-finish-bar span{display:block}.session-finish-bar strong{font-family:var(--font-mono);font-size:18px;font-weight:600}.session-finish-bar span{color:var(--color-text-secondary);font-size:13px}.week-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.week-day{display:grid;align-content:start;gap:var(--space-3);min-height:320px;padding:var(--space-5)}.week-day-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.week-day-head strong{display:block;margin-top:var(--space-1);font-size:17px;font-weight:500}.week-day ul{display:grid;gap:var(--space-2);max-height:188px;margin:0;padding:0;overflow:auto;list-style:none}.week-day li{padding-left:var(--space-3);border-left:2px solid var(--color-border-strong);color:var(--color-text-primary);font-size:14px;line-height:1.45}.thin-progress{height:6px;overflow:hidden;border-radius:var(--radius-full);background:var(--color-border)}.thin-progress span{display:block;height:100%;border-radius:inherit;background:var(--color-accent)}.calendar-shell{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;padding:0;overflow:hidden}.calendar-label{padding:var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);text-align:center}.calendar-cell{display:grid;align-content:space-between;min-height:100px;padding:var(--space-3);border:0;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);color:var(--color-text-primary);background:var(--color-surface);text-align:left}.calendar-cell:nth-child(7n){border-right:0}.calendar-cell:hover{background:var(--color-surface-hover)}.calendar-cell.muted{color:var(--color-text-tertiary);background:color-mix(in srgb,var(--color-bg-secondary) 55%,transparent)}.calendar-cell.today span{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-accent);border-radius:var(--radius-full);color:var(--color-accent)}.calendar-cell span{font-family:var(--font-mono);font-weight:500;font-variant-numeric:tabular-nums}.calendar-cell i,.legend-item i{display:block;width:8px;height:8px;border-radius:var(--radius-full);background:transparent}.calendar-cell.completed i,.legend-item.completed i{background:var(--color-accent)}.calendar-cell.partial i,.legend-item.partial i{background:var(--chart-4)}.calendar-cell.planned i,.legend-item.planned i{background:var(--chart-5)}.calendar-cell.skipped i,.legend-item.skipped i{background:var(--color-text-tertiary)}.calendar-cell.unlogged i,.legend-item.unlogged i{border:1px solid var(--color-border-strong);background:transparent}.calendar-cell.future i,.legend-item.future i{background:var(--chart-2)}.calendar-cell small{font-size:12px;font-weight:400}.legend-row{padding-bottom:var(--space-4)}.legend-item{display:inline-flex;align-items:center;gap:var(--space-2);font-size:13px;font-weight:400}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.metric-tile{display:flex;align-items:center;gap:var(--space-4);min-height:112px;padding:var(--space-5);background:linear-gradient(135deg,color-mix(in srgb,var(--metric-accent) 8%,transparent),transparent 62%),var(--color-surface)}.metric-icon{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border-radius:var(--radius-md);color:var(--metric-accent);background:color-mix(in srgb,var(--metric-accent) 14%,transparent)}.metric-icon svg{width:20px;height:20px}.metric-tile strong{display:block;margin-top:var(--space-2);font-family:var(--font-mono);font-size:22px;font-weight:500;font-variant-numeric:tabular-nums}.timeline-section,.recent-panel{display:grid;gap:var(--space-4);padding:var(--space-5)}.progress-section{background:linear-gradient(135deg,color-mix(in srgb,var(--chart-2) 10%,transparent),transparent 58%),var(--color-surface)}.progress-trend-list{display:grid;gap:var(--space-3)}.progress-trend-row{display:grid;grid-template-columns:82px minmax(0,1fr) 88px;align-items:center;gap:var(--space-3)}.progress-trend-row>span{color:var(--color-text-secondary);font-size:13px}.progress-trend-row strong{font-family:var(--font-mono);font-size:13px;font-weight:500;text-align:right}.pr-list{display:grid;gap:var(--space-3)}.pr-entry{padding:var(--space-4);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-accent-tint)}.pr-entry span{font-size:13px;font-weight:500}.pr-entry p,.empty-note{margin:var(--space-1) 0 0}.empty-note{font-size:15px}.logbook-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:var(--space-5);align-items:start}.recent-entry{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:52px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);background:var(--color-surface);text-align:left}.recent-entry:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.recent-entry strong{font-size:14px;font-weight:500}.recent-entry small{display:block;margin-top:var(--space-1);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:12px;font-variant-numeric:tabular-nums}.recent-entry span{font-size:13px;font-weight:400}.date-input{width:160px;padding:0 var(--space-3)}.settings-action{display:grid;place-items:center;gap:var(--space-3);min-height:144px;padding:var(--space-5);color:var(--color-text-primary);font-weight:500;text-align:center;text-decoration:none}.settings-action:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.settings-action svg{width:26px;height:26px;color:var(--color-accent)}.settings-action.spotify-action{border-color:color-mix(in srgb,var(--color-accent) 26%,var(--color-border));background:var(--color-surface)}.settings-action.spotify-action svg:last-child{width:16px;height:16px;color:var(--color-text-tertiary)}.program-editor-layout{display:grid;grid-template-columns:256px minmax(0,1fr);gap:var(--space-5);align-items:start}.program-side-panel,.program-editor-panel{display:grid;gap:var(--space-4);padding:var(--space-5)}.program-day-tabs{display:grid;gap:var(--space-2)}.program-day-button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);background:var(--color-surface);text-align:left}.program-day-button:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.program-day-button.active{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 26%,var(--color-border));background:var(--color-accent-tint)}.program-day-button span,.program-day-button strong{min-width:0}.program-day-button span{overflow-wrap:anywhere;font-size:14px;font-weight:500}.program-day-button strong{color:currentColor;font-size:13px;font-weight:500}.program-spotify{min-height:100px}.program-editor-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.program-editor-help{margin:0;color:var(--color-text-secondary);font-size:13px;line-height:1.55}.program-add-row{display:grid;grid-template-columns:minmax(0,1fr) 140px auto;gap:var(--space-3)}.program-add-row input,.program-add-row select,.program-workout-row input,.program-workout-row select,.settings-field select{min-height:40px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-primary);background:var(--color-surface)}.program-workout-list{display:grid;gap:var(--space-3)}.program-workout-row{display:grid;grid-template-columns:76px minmax(0,1fr) 40px;gap:var(--space-3);align-items:start;min-height:64px;padding:var(--space-3)}.program-workout-row .move-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.program-workout-row .move-mini-button{width:34px;height:36px}.session-toolbar{display:grid;gap:var(--space-3)}.session-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.rest-control{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);width:fit-content;max-width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.rest-control.active{border-color:color-mix(in srgb,var(--cyan) 42%,var(--color-border));background:color-mix(in srgb,var(--cyan) 7%,var(--color-surface))}.rest-readout{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px var(--space-2);min-width:104px}.rest-readout svg{grid-row:1 / 3;width:19px;height:19px;color:var(--cyan)}.rest-readout span{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.rest-readout strong{font-family:var(--font-mono);font-size:18px;font-variant-numeric:tabular-nums}.rest-presets{display:flex;gap:var(--space-1)}.rest-presets button{min-height:34px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);background:var(--color-bg-secondary);font-family:var(--font-mono);font-size:10px}.rest-presets button:hover{color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 50%,var(--color-border))}.target-summary{display:inline-flex;align-items:center;gap:6px;width:fit-content;margin-top:5px;color:var(--color-accent);font-family:var(--font-mono);font-size:10px;letter-spacing:.02em}.target-summary svg{width:13px;height:13px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-4)}.settings-panel{display:grid;align-content:start;gap:var(--space-4);min-height:230px;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent) 8%,transparent),transparent 62%),var(--color-surface)}.settings-panel>p{margin:0;color:var(--color-text-secondary);font-size:13px;line-height:1.6}.settings-field{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,.55fr);align-items:center;gap:var(--space-3)}.settings-field>span,.prescription-grid label>span{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.data-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:auto}.sync-account{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:0}.sync-account>div{display:grid;gap:var(--space-1);min-width:0}.sync-account strong,.sync-account span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-account span,.last-sync{color:var(--color-text-secondary);font-size:12px}.sync-error{padding:var(--space-3);border:1px solid color-mix(in srgb,var(--color-danger) 28%,var(--color-border));border-radius:var(--radius-sm);color:var(--color-danger)!important;background:var(--color-danger-tint)}.data-import{position:relative;cursor:pointer}.data-import:focus-within{outline:2px solid var(--color-focus-ring);outline-offset:2px}.data-import.disabled{cursor:not-allowed;opacity:.55}.data-import input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.program-workout-content{display:grid;gap:var(--space-3);min-width:0}.program-name-row{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:var(--space-2)}.prescription-grid{display:grid;grid-template-columns:repeat(4,minmax(78px,1fr));gap:var(--space-2)}.prescription-grid label{display:grid;gap:5px}.prescription-grid input{width:100%;font-family:var(--font-mono);font-size:12px;font-variant-numeric:tabular-nums}.app-shell{position:relative;z-index:1;display:block;min-height:100vh;background:transparent}.skip-link{position:fixed;top:12px;left:16px;z-index:200;padding:11px 15px;border-radius:var(--radius-sm);color:var(--color-text-on-accent);background:var(--color-accent);font-size:12px;font-weight:800;text-decoration:none;transform:translateY(-180%);transition:transform var(--duration-base) var(--ease-standard)}.skip-link:focus{transform:translateY(0)}.app-header{position:sticky;top:0;z-index:80;display:grid;grid-template-columns:minmax(200px,.72fr) minmax(0,1.85fr) minmax(190px,.68fr);align-items:center;width:var(--content);min-height:76px;margin:0 auto;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border-strong);border-left:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg) 88%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.15);backdrop-filter:blur(20px) saturate(1.15)}.brand-link{display:flex;align-items:center;gap:var(--space-3);min-width:0;min-height:75px;padding:10px var(--space-5);color:inherit;text-decoration:none}.brand-link>span:last-child{display:grid;min-width:0}.brand-link strong,.app-footer strong{font-family:var(--font-display);font-size:21px;font-weight:650;line-height:1;letter-spacing:-.025em}.brand-link small,.app-footer small{margin-top:5px;color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.gym-logo{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border:1px solid var(--color-border-strong);border-radius:12px;color:var(--color-accent);background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent) 14%,transparent),transparent 70%),var(--color-surface)}.gym-logo svg{width:21px;height:21px;stroke-width:1.8}.desktop-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));min-height:75px;border-left:1px solid var(--color-border)}.desktop-nav .tab-button{position:relative;justify-content:center;gap:var(--space-2);min-height:75px;padding:0 var(--space-2);border:0;border-right:1px solid var(--color-border);border-radius:0;color:var(--color-text-tertiary);background:transparent;font-size:11px;font-weight:760;letter-spacing:.04em;text-align:center}.desktop-nav .tab-button:after{position:absolute;right:12px;bottom:-1px;left:12px;height:3px;border-radius:3px 3px 0 0;content:"";background:var(--color-accent);transform:scaleX(0);transition:transform var(--duration-base) var(--ease-standard)}.desktop-nav .tab-button:hover,.desktop-nav .tab-button.active{color:var(--color-text-primary);border-color:var(--color-border);background:color-mix(in srgb,var(--color-surface) 55%,transparent)}.desktop-nav .tab-button.active:after{transform:scaleX(1)}.desktop-nav .tab-button.active{color:var(--color-text-primary)}.header-tools{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);min-height:75px;padding:0 var(--space-4)}.sync-status{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid color-mix(in srgb,var(--color-success) 34%,var(--color-border));border-radius:var(--radius-full);color:var(--color-success);background:color-mix(in srgb,var(--color-success) 8%,var(--color-surface));font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sync-status.local{color:var(--color-text-secondary);border-color:var(--color-border-strong);background:var(--color-surface)}.sync-status.connecting,.sync-status.syncing{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 34%,var(--color-border));background:var(--color-accent-tint)}.sync-status.offline{color:var(--chart-4);border-color:color-mix(in srgb,var(--chart-4) 34%,var(--color-border));background:color-mix(in srgb,var(--chart-4) 8%,var(--color-surface))}.sync-status.error{color:var(--color-danger);border-color:color-mix(in srgb,var(--color-danger) 34%,var(--color-border));background:var(--color-danger-tint)}.sync-status svg,.theme-toggle svg,.settings-shortcut svg{width:16px;height:16px}.theme-toggle,.settings-shortcut{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-full);color:var(--color-text-secondary);background:var(--color-surface)}.theme-toggle:hover,.settings-shortcut:hover,.settings-shortcut.active{color:var(--color-text-primary);border-color:color-mix(in srgb,var(--color-accent) 52%,var(--color-border-strong));background:var(--color-surface-hover);transform:translateY(-1px)}.app-main{width:var(--content);min-height:calc(100vh - 152px);margin:0 auto;padding:54px 28px 80px;border-right:1px solid var(--color-border);border-left:1px solid var(--color-border)}.topline h1,.workout-banner h2,.today-hero h1,.section-title h3{font-family:var(--font-display);letter-spacing:-.03em}.eyebrow{font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.11em}.app-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);width:var(--content);min-height:76px;margin:0 auto;padding:var(--space-4) var(--space-5);border:1px solid var(--color-border);color:var(--color-text-secondary);background:color-mix(in srgb,var(--color-bg) 76%,transparent)}.app-footer>div{display:flex;align-items:center;gap:var(--space-3)}.app-footer>div>span{display:grid}.app-footer p{max-width:480px;margin:0;color:var(--color-text-tertiary);font-size:12px;line-height:1.5;text-align:right}.bottom-tabs{display:none}@media(max-width:1180px)and (min-width:981px){.desktop-nav .tab-button{gap:var(--space-1);padding-inline:var(--space-2);font-size:10px}.sync-status.compact{position:relative;width:40px;justify-content:center;padding:0}.sync-status.compact span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.header-tools{padding-inline:var(--space-2)}}@media(max-width:980px){:root{--content: calc(100% - 24px) }.app-shell{display:block}.app-header{grid-template-columns:minmax(0,1fr) auto}.desktop-nav{display:none}.brand-link{border-right:1px solid var(--color-border)}.app-main{min-height:0}.app-footer{margin-bottom:calc(90px + env(safe-area-inset-bottom,0px))}.app-rail{display:none}.app-main{padding:var(--space-5) var(--space-4) calc(104px + env(safe-area-inset-bottom,0px))}.app-main.has-workout{padding-bottom:calc(184px + env(safe-area-inset-bottom,0px))}.app-chrome{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:var(--space-3);margin-bottom:var(--space-6)}.chrome-status{display:none}.chrome-controls{justify-content:stretch}.mode-toggle{flex:1 1 0}.bottom-tabs{position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));left:12px;z-index:90;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;min-height:61px;padding:5px;border:1px solid var(--color-border-strong);border-radius:17px;background:color-mix(in srgb,var(--color-surface) 94%,transparent);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15)}.bottom-tabs .tab-button{display:grid;justify-items:center;align-content:center;gap:3px;min-height:49px;padding:4px 2px;border:0;border-radius:13px;color:var(--color-text-tertiary);background:transparent;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.01em;text-align:center;text-transform:uppercase}.bottom-tabs .tab-button:hover{color:var(--color-text-primary);background:var(--color-surface-hover)}.bottom-tabs .tab-button.active{color:var(--color-text-on-accent);background:var(--color-accent)}.bottom-tabs .tab-button span{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.bottom-tabs .tab-button svg{width:18px;height:18px;stroke-width:1.8}.session-finish-bar{bottom:calc(88px + env(safe-area-inset-bottom,0px))}.exercise-group-body{grid-template-columns:40px minmax(0,1fr)}.move-mini-button,.program-workout-row .move-mini-button{width:40px;height:40px}.drag-button{width:40px}.program-workout-row{grid-template-columns:88px minmax(0,1fr) 40px}.set-row.can-remove{grid-template-columns:64px minmax(0,1fr) minmax(74px,.45fr) 40px}.set-row.with-pounds.can-remove{grid-template-columns:64px minmax(0,1fr) minmax(96px,.6fr) minmax(74px,.45fr) 40px}.set-row.stretch-row.can-remove{grid-template-columns:88px minmax(120px,180px) 40px}.set-remove-button{width:40px;height:40px}.icon-only-button.small{width:40px;height:40px;min-height:40px}.rename-exercise-button{width:44px;height:44px;min-width:44px;min-height:44px}body:has(.workout-stage :is(input,textarea,select):focus) .session-finish-bar,body:has(.workout-stage :is(input,textarea,select):focus) .bottom-tabs{display:none}.cardio-quick-row button,.last-sets-button{min-height:44px}.logbook-layout{grid-template-columns:1fr}.recent-panel{order:2}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){:root{--content: calc(100% - 24px) }.app-header{min-height:68px}.brand-link{gap:10px;min-height:67px;padding:9px 12px}.brand-link strong{font-size:19px}.brand-link small{font-size:9px}.gym-logo{width:38px;height:38px;border-radius:11px}.gym-logo svg{width:19px;height:19px}.header-tools{gap:7px;min-height:67px;padding:0 10px}.sync-status.compact{display:inline-grid;place-items:center;position:relative;width:44px;height:44px;min-height:44px;padding:0;border-radius:12px}.sync-status.compact span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.settings-shortcut,.theme-toggle{display:grid;width:44px;height:44px;padding:0;border-radius:12px}.app-main{padding:18px 12px calc(104px + env(safe-area-inset-bottom,0px))}.app-footer{display:none}.view-stack{gap:12px}.topline{align-items:stretch;flex-direction:column;gap:14px}.date-pager{flex-wrap:nowrap;width:100%;gap:8px}.date-pager .icon-text-button{flex:1 1 auto}.today-view .trend-card,.today-view .today-command,.today-view .workout-banner{display:none}.today-dashboard{grid-template-columns:1fr;gap:10px;padding:0;overflow:visible;border:0;border-radius:0;background:transparent}.today-hero,.today-command{border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}.today-hero{min-height:0;padding:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent) 12%,transparent),transparent 58%),var(--color-surface)}.today-hero h1{font-size:clamp(34px,10vw,44px);line-height:1}.today-hero p:not(.eyebrow){margin-top:10px;font-size:15px;line-height:1.4}.hero-actions{gap:8px;margin-top:16px}.hero-actions .icon-text-button,.hero-actions>span{min-height:44px}.today-command{grid-template-columns:82px minmax(0,1fr);align-items:center;align-content:center;justify-items:stretch;gap:16px;min-height:112px;padding:14px;text-align:left;background:linear-gradient(120deg,color-mix(in srgb,var(--chart-2) 12%,transparent),transparent 66%),var(--color-surface)}.today-command .progress-orb.large{width:82px}.today-command .progress-orb strong{margin-top:-10px;font-size:20px}.today-command .progress-orb span{margin-top:28px;font-size:11px}.today-command>div:last-child{min-width:0}.today-command strong{margin-top:5px;font-size:19px;overflow-wrap:anywhere}.today-command p{margin-top:6px;font-size:12px;line-height:1.5}.eyebrow{font-size:11px}.topline h1{font-size:34px}.workout-banner h2{font-size:30px}.today-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:hidden;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}.today-strip article{grid-template-columns:auto minmax(0,1fr) auto;gap:9px;min-height:64px;padding:12px;border:0;border-radius:0;box-shadow:none}.today-strip article:nth-child(odd){border-right:1px solid var(--color-border)}.today-strip article:nth-child(-n+2){border-bottom:1px solid var(--color-border)}.today-strip strong{font-size:18px}.today-strip span{font-size:12px}.workout-stage{gap:12px}.workout-banner{align-items:stretch;flex-direction:column;gap:10px;min-height:0;padding:14px;border-radius:16px}.workout-banner .progress-orb{display:none}.workout-banner h2{font-size:30px;line-height:1}.banner-chips{gap:6px;margin-top:10px}.banner-chips>span:not(.status-pill),.banner-chips .status-pill{min-height:28px;padding-inline:10px;font-size:11px}.banner-chips>span.desktop-session-chip{display:none}.session-toolbar{gap:10px}.session-actions{display:none}.rest-control{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:8px;width:100%;padding:10px;border-radius:14px}.rest-readout{min-width:0}.rest-control>.icon-only-button{grid-row:1;width:44px;height:44px}.rest-control>.icon-only-button:nth-last-child(2){grid-column:2}.rest-control>.icon-only-button:last-child{grid-column:3}.rest-presets{grid-row:2;grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:100%}.rest-presets button{min-height:40px;padding:0 8px;border-radius:10px}.mobile-workout-tools,.session-notes-panel{display:grid;overflow:hidden;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface)}.mobile-panel-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:50px;padding:0 14px;border:0;color:var(--color-text-primary);background:transparent;font-size:13px;font-weight:600;text-align:left}.mobile-panel-toggle:hover{background:var(--color-surface-hover)}.mobile-panel-toggle svg{width:17px;height:17px;color:var(--color-accent);transition:transform var(--duration-base) var(--ease-standard)}.mobile-panel-toggle svg:last-child{color:var(--color-text-tertiary)}.mobile-workout-tools.open>.mobile-panel-toggle svg:last-child,.session-notes-panel.open>.mobile-panel-toggle svg:last-child{transform:rotate(180deg)}.mobile-workout-tools-body,.session-notes-panel .notes-grid{display:none}.mobile-workout-tools.open .mobile-workout-tools-body{display:grid;gap:16px;padding:14px;border-top:1px solid var(--color-border)}.session-notes-panel.open .notes-grid{display:grid;grid-template-columns:1fr;gap:12px;padding:14px;border-top:1px solid var(--color-border)}.mobile-tool-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mobile-tool-actions .icon-text-button{width:100%;min-height:44px;padding-inline:10px;font-size:12px}.mobile-tool-actions .icon-text-button:last-child{grid-column:1 / -1}.mobile-tool-actions .icon-text-button.active{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 42%,var(--color-border));background:var(--color-accent-tint)}.superset-builder{display:grid;gap:0;overflow:hidden;padding:0;border-radius:14px}.mobile-superset-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:50px;padding:0 14px;border:0;color:var(--color-text-primary);background:transparent;font-size:13px;font-weight:600;text-align:left}.mobile-superset-toggle:hover{background:var(--color-surface-hover)}.mobile-superset-toggle svg{width:17px;height:17px;color:var(--color-accent)}.mobile-superset-toggle>svg:last-child{color:var(--color-text-tertiary);transition:transform var(--duration-base) var(--ease-standard)}.mobile-superset-toggle[aria-expanded=true]>svg:last-child,.superset-builder.open>.mobile-superset-toggle>svg:last-child{transform:rotate(180deg)}.superset-builder-body{display:none}.mobile-superset-toggle[aria-expanded=true]+.superset-builder-body,.superset-builder.open>.superset-builder-body{display:grid;gap:10px;padding:14px;border-top:1px solid var(--color-border)}.superset-builder-body .superset-builder-heading{display:none}.superset-builder-body>p{margin:0}.superset-builder .superset-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.superset-builder select,.superset-builder .icon-text-button{width:100%;min-width:0;min-height:44px}.exercise-stack{gap:8px}.exercise-group,.exercise-group.superset{padding:5px;border-radius:14px}.exercise-group.superset{border-left:3px solid var(--color-accent)}.group-header{min-height:38px;padding:2px 6px 8px}.exercise-group-body{grid-template-columns:1fr;gap:0}.group-move-controls{display:none}.reorder-mode .group-move-controls{display:flex;justify-content:flex-end;padding:2px 4px 8px}.reorder-mode .group-move-controls .drag-button{display:none}.reorder-mode .group-move-controls .move-pair{display:flex;gap:6px}.group-exercise-list{min-width:0}.exercise-row{grid-template-columns:44px minmax(0,1fr) 44px;align-items:start;gap:8px;min-width:0;min-height:0;padding:10px 6px}.exercise-row>.check-button{grid-column:1;grid-row:1}.exercise-row>.skip-button{grid-column:3;grid-row:1}.check-button,.skip-button{width:44px;height:44px}.exercise-copy{display:contents}.exercise-copy>.exercise-title-row{grid-column:2;grid-row:1;align-self:center;min-width:0}.exercise-copy>.last-sets-button,.exercise-copy>.current-set-summary,.exercise-copy>.exercise-name-editor,.exercise-copy>.cardio-logger,.exercise-copy>.set-stack,.exercise-copy>.legacy-detail{grid-column:1 / -1;min-width:0}.rename-exercise-button{width:44px;height:44px;min-width:44px;min-height:44px}.exercise-name-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-name-actions .icon-text-button{width:100%;min-height:44px;padding-inline:8px;font-size:12px}.exercise-name-actions .icon-only-button{grid-column:1 / -1;width:100%}.exercise-copy strong{font-size:16px}.exercise-title-row{align-items:center;gap:8px}.exercise-title-row small{font-size:12px}.target-summary{font-size:11px}.pr-chip{min-height:26px;padding-inline:8px;font-size:11px}.last-sets-button{justify-self:stretch;width:100%;border-radius:11px}.current-set-summary{width:100%}.set-stack{gap:8px}.set-row,.set-row.with-pounds,.set-row.can-remove,.set-row.with-pounds.can-remove,.set-row.stretch-row,.set-row.stretch-row.can-remove{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;padding:8px 0}.set-index{flex:0 0 100%}.set-row label{flex:1 1 132px}.set-row.stretch-row label{flex:1 1 180px}.set-row select,.set-row input{min-height:44px}.set-remove-button{flex:0 0 44px;width:44px;height:44px}.set-add-button{width:100%;min-height:44px}.cardio-logger{padding:12px}.session-finish-bar{position:fixed;right:24px;bottom:calc(88px + env(safe-area-inset-bottom,0px));left:24px;z-index:85;display:flex;gap:10px;padding:9px 10px;border-radius:14px}.session-finish-bar>div{min-width:0}.session-finish-bar strong{font-size:16px}.session-finish-bar span{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.session-finish-bar .icon-text-button{flex:0 0 auto;min-height:44px;padding-inline:13px}.notes-grid textarea{min-height:110px}.week-grid{grid-template-columns:1fr;gap:8px}.week-day{gap:10px;min-height:0;padding:14px}.week-day ul{max-height:none}.calendar-shell{grid-template-columns:repeat(7,minmax(44px,1fr));overflow-x:auto;overscroll-behavior-inline:contain}.calendar-label{padding:9px 4px;font-size:11px}.calendar-cell{min-height:50px;padding:6px}.calendar-cell small{display:none}.calendar-cell.today span{width:26px;height:26px}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric-tile{display:grid;align-content:start;gap:10px;min-height:104px;padding:12px}.metric-icon{width:36px;height:36px}.metric-tile strong{margin-top:5px;font-size:18px}.timeline-section,.recent-panel{padding:16px}.progress-trend-row{grid-template-columns:60px minmax(0,1fr) 64px;gap:8px}.progress-trend-row>span,.progress-trend-row strong{font-size:12px}.program-editor-layout,.settings-grid{grid-template-columns:1fr}.program-side-panel,.program-editor-panel{gap:12px;padding:12px}.program-day-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.program-day-tabs::-webkit-scrollbar{display:none}.program-day-button{flex:0 0 112px;min-height:46px}.program-spotify{display:none}.program-name-row{grid-template-columns:minmax(0,1fr) 132px}.prescription-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-cell{font-size:12px}.program-add-row{grid-template-columns:1fr}.program-workout-row{grid-template-columns:minmax(0,1fr) 40px}.program-workout-row .move-pair{display:flex;grid-column:1 / -1}.program-workout-content{grid-column:1}.program-workout-row>.set-remove-button{grid-column:2;grid-row:2}.app-main input:not([type=range]),.app-main select,.app-main textarea{font-size:16px}.program-add-row input,.program-add-row select,.program-workout-row input,.program-workout-row select,.settings-field select,.date-input,.notes-grid textarea{min-height:44px}.settings-field>span,.prescription-grid label>span{font-size:11px}}@media(max-width:520px){.topline h1{font-size:32px}.cardio-slider-head,.cardio-minute-input{align-items:stretch;flex-direction:column}.cardio-minute-input input{width:100%;text-align:left}.settings-field,.program-name-row{grid-template-columns:1fr}.cardio-quick-row{grid-template-columns:repeat(2,minmax(0,1fr))}.program-workout-row{padding:10px}.prescription-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-tabs .tab-button{font-size:10px}.exercise-name-actions{grid-template-columns:minmax(0,1fr)}.exercise-name-actions .icon-text-button,.exercise-name-actions .icon-only-button{grid-column:1;width:100%}}@media(max-width:360px){.brand-link small{display:none}.header-tools{padding-inline:8px}}@keyframes complete-pulse{0%{transform:scale(.992)}to{transform:scale(1)}}@keyframes sync-spin{to{transform:rotate(360deg)}}.spin{animation:sync-spin .9s linear infinite}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
