*{box-sizing:border-box;touch-action:manipulation}:root{--border: #cbd5e1;--muted: #64748b;--active: #e2e8f0;--logged: #dcfce7;--logged-border: #22c55e;--danger: #dc2626;--ok: #15803d}body{margin:0;overflow-x:hidden;font-family:system-ui,sans-serif;line-height:1.4}button,input,select,textarea{border:1px solid var(--border);background:transparent;color:inherit;font:inherit;padding:.5rem .75rem}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}button,input,select{min-height:2.75rem}textarea{min-height:16rem;width:100%;max-width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.35}.workout-page{width:100%;margin:0;padding:1rem}@media(min-width:48rem){.workout-page{padding:1rem 2rem}}.app-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem;padding:0 0 .875rem;border-bottom:1px solid var(--border, #cbd5e1)}.app-brand{display:inline-flex;gap:.5rem;align-items:center;min-width:max-content}.app-brand-icon,.set-kind-icon{display:inline-block;width:1.5rem;height:1.5rem;flex:0 0 auto;color:currentColor;background:currentColor;mask-position:center;mask-repeat:no-repeat;mask-size:contain;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain}.icon-set{mask-image:url(/set.svg);-webkit-mask-image:url(/set.svg)}.icon-cardio{mask-image:url(/cardio.svg);-webkit-mask-image:url(/cardio.svg)}.icon-trophy{mask-image:url(/trophy.svg);-webkit-mask-image:url(/trophy.svg)}.app-brand-mark{font-weight:700}.app-navigation{display:flex;gap:1rem;align-items:center;justify-content:flex-end}.app-navigation-item{color:var(--muted, #64748b);text-decoration:none}.app-navigation-item:hover,.app-navigation-item:focus-visible,.app-navigation-item[aria-current=page]{color:inherit;text-decoration:underline;text-underline-offset:.25em}.date-navigation,.workout-header,.settings-block{margin-bottom:1rem}.date-navigation,.workout-header{border-bottom:1px solid var(--border);padding-bottom:.75rem}.date-navigation{display:grid;gap:.75rem}.date-navigation-row,.date-navigation-controls,.workout-header{display:flex;gap:.75rem;align-items:center}.date-navigation-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;justify-content:stretch}.selected-date{min-width:0;text-align:center}.date-navigation-controls{justify-content:center;flex-wrap:wrap}.date-picker-label{display:inline-flex;gap:.5rem;align-items:center;min-width:0}.date-picker{min-width:0;max-width:100%}.workout-select-label,.settings-label,.login-label,.login-form{display:grid;gap:.5rem}.workout-header{justify-content:space-between;flex-wrap:wrap}.exercise{margin-top:1.5rem}.exercise-name{margin:0 0 .5rem}.sets{display:grid;gap:.6rem}.set-row{display:grid;grid-template-columns:auto minmax(4rem,1fr) auto;gap:.75rem;align-items:center;width:100%;min-height:3rem;padding:.75rem;background:transparent;border:1px solid var(--border);cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}.set-row[data-logged=true]{background:var(--logged);border-color:var(--logged-border)}.set-kind-icon{opacity:1}.set-control-icon{display:none}.set-row-feedback{animation:tapset-row-feedback .18s ease-out}.button-feedback{background:var(--active);animation:tapset-button-feedback .18s ease-out}@keyframes tapset-button-feedback{0%{transform:scale(1)}50%{transform:scale(.94)}to{transform:scale(1)}}@keyframes tapset-row-feedback{0%{transform:scale(1)}50%{transform:scale(.995)}to{transform:scale(1)}}.rep-controls,.weight-controls,.duration-controls,.distance-controls{display:inline-flex;gap:.5rem;align-items:center;justify-content:flex-end}.rep-controls{border:0;padding:0}.date-previous,.date-next,.rep-decrease,.weight-decrease,.weight-increase,.duration-decrease,.duration-increase,.distance-decrease,.distance-increase{min-width:2.75rem;font-weight:700}.date-picker-label,.set-number,.autosave-status,.page-eyebrow,.page-description,.settings-block-description,.login-description,.login-acquire,.login-message{color:var(--muted)}.selected-date,.workout-progress,.rep-count,.weight-value{font-weight:700}.workout-progress{color:var(--ok)}.exercise-name{font-size:1.1rem}.rep-display{min-width:3rem;text-align:center}.rep-count,.weight-value,.duration-value,.distance-value{min-width:2rem;text-align:center}.target-reps{color:var(--muted);font-size:.85em;font-weight:400}.weight-value,.duration-value,.distance-value{min-width:4rem}.rep-decrease{color:var(--danger);border-color:var(--danger)}.weight-controls,.distance-controls{border-left:3px solid var(--border);padding-left:.75rem}.page-template,.settings{display:grid;gap:1rem}.page-template-header{max-width:48rem}.page-eyebrow{margin:0 0 .25rem}.page-title{margin:0}.page-description{margin:.5rem 0 0}.settings-block{display:grid;gap:.75rem}.settings-block-title{margin:0 0 .5rem}.settings-block-description{margin:0}.connection-code{display:block;width:fit-content;max-width:100%;padding:.5rem .75rem;overflow-x:auto;border:1px solid var(--border);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-wrap:anywhere}.connection-steps{margin:0;padding-left:1.25rem}.connection-steps li+li{margin-top:.35rem}.connection-link{width:fit-content;color:inherit;font-weight:700}.connection-actions,.connection-token-create{display:flex;flex-wrap:wrap;gap:.5rem}.connection-expiry-label,.connection-token-list,.connection-token-details{display:grid;gap:.35rem}.connection-token-list{gap:.75rem}.connection-token-row{display:grid;gap:.5rem;padding:.75rem;border:1px solid var(--border)}.connection-message{margin:0;color:var(--muted)}.login-page{max-width:28rem}.login-title{margin:0 0 .5rem}.login-description,.login-acquire,.login-message{margin:0 0 1rem}.login-form{margin-bottom:1rem}.login-input,.login-submit,.logout-button{width:fit-content;max-width:100%}.login-input{width:100%}.workout-json-errors,.custom-css-message,.autosave-status,.login-message{white-space:pre-wrap;overflow-wrap:anywhere}.set-row:focus-visible,.app-navigation-item:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(max-width:34rem){.workout-page{padding:.75rem;padding-bottom:calc(6rem + env(safe-area-inset-bottom))}.app-header{position:fixed;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom));left:.75rem;z-index:20;justify-content:center;margin:0;padding:.5rem .375rem .125rem;background:canvas;border:1px solid var(--border, #cbd5e1);border-radius:0;box-shadow:0 .75rem 1.75rem #00000073}.app-brand{display:none}.app-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:.25rem}.app-navigation-item{display:grid;min-height:2.75rem;padding:0;color:var(--muted, #64748b);font-size:.9rem;font-weight:700;line-height:1;text-align:center;text-decoration:none;border-radius:0;place-items:center;-webkit-text-size-adjust:100%}.app-navigation-item:hover,.app-navigation-item:focus-visible,.app-navigation-item[aria-current=page]{color:inherit;background:var(--active, #e2e8f0);text-decoration:none}.workout-header{align-items:stretch}.date-navigation,.date-navigation-row,.date-navigation-controls,.date-picker-label,.date-picker,.workout-select,.settings button,.rep-controls,.weight-controls,.duration-controls,.distance-controls{width:100%}.date-navigation{overflow-x:hidden}.date-navigation-controls{display:grid;grid-template-columns:minmax(0,1fr);min-width:0}.date-picker-label{display:grid;grid-template-columns:minmax(0,1fr);gap:.35rem;width:100%}.date-picker{min-width:0;max-width:100%;-webkit-appearance:none;appearance:none}.set-row{grid-template-columns:1fr;gap:.5rem;padding:.5rem}.set-row-icon{display:none}.set-control-icon{display:inline-block}.set-kind-icon{align-self:center}.rep-controls,.weight-controls,.duration-controls,.distance-controls{grid-column:1}.rep-count{font-size:1.5rem;line-height:1}.target-reps{font-size:1rem}.rep-controls,.duration-controls{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.duration-controls{grid-template-columns:auto minmax(0,1fr) auto auto}.rep-display,.duration-value{justify-self:center}.weight-controls,.distance-controls{justify-content:space-between}.weight-controls,.distance-controls{border-top:3px solid var(--border);border-left:0;padding-top:.5rem;padding-left:0}}
