:root{color-scheme:dark;--background: #101411;--surface: #1b231d;--border: #344137;--text: #f4f7f4;--muted: #b9c6bb;--accent: #a3f75b;background:var(--background);color:var(--text);font:100%/1.5 system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}.app{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;max-width:48rem;margin-inline:auto}.app-header{display:flex;align-items:center;gap:.5rem;padding:1rem;border-bottom:1px solid var(--border);font-weight:700}.app-content{flex:1;padding:clamp(1rem,5vw,2rem)}.app-content h1{margin:0 0 .5rem;line-height:1.2}.app-content p{margin:0;color:var(--muted)}.app-nav{position:sticky;bottom:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.375rem;padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface)}.app-nav button{min-height:3rem;padding:.25rem;border:0;border-radius:.5rem;background:transparent;color:var(--text);font:inherit;overflow-wrap:anywhere;cursor:pointer}.app-nav button[aria-current=page]{background:var(--accent);color:var(--background);font-weight:700}.app-nav button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.routines fieldset{min-inline-size:0;margin:1rem 0 0;padding:0;border:0}.routine-editor,.routine-day{display:grid;gap:.75rem;margin-top:1rem}.routine-day,.progress-card{padding:1rem;border:1px solid var(--border);border-radius:.75rem;background:var(--surface)}.routine-day h2,.routine-day h3,.routine-exercises{margin:0}.routine-actions{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem}:is(.routines,.workout,.progress,.backup-settings) label{display:grid;min-width:0;gap:.25rem}:is(.routines,.workout,.workout-resume,.progress,.backup-settings) :is(button,select,input:not([type=checkbox]),textarea){min-height:2.75rem;max-width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.5rem;background:var(--background);color:var(--text);font:inherit}:is(.routines,.workout,.workout-resume,.progress,.backup-settings) button:not(:disabled){cursor:pointer}:is(.routines,.workout,.workout-resume,.backup-settings,.app-nav) button:disabled{opacity:.55}:is(.routines,.workout,.workout-resume,.progress,.backup-settings) :is(button,select,input,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:2px}:is(.routines,.workout) .routine-save:not(:disabled){background:var(--accent);color:var(--background);font-weight:700}.routine-exercises{padding-inline-start:1.5rem}.routine-exercises li{margin-block-end:.75rem}.routine-exercises .routine-actions{margin-top:.375rem}.workout,.workout-log{display:grid;gap:1rem}.workout,.workout-resume{margin-top:1rem}.workout h2,.workout h3,.workout .routine-day{margin:0}.workout>button{justify-self:start}.workout fieldset{min-inline-size:0}.workout-log,.workout-set{margin:0;padding:0;border:0}.workout .routine-day>legend{font-weight:700}.workout-set-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.workout-set-fields input[type=number]{width:100%;min-width:0}.workout label.workout-set-done{grid-column:1 / -1;display:flex;align-items:center;min-height:2.75rem;gap:.5rem}.workout-set-done input{width:1.25rem;height:1.25rem;margin:0;accent-color:var(--accent)}.rest-timer{position:sticky;z-index:1;top:.5rem;grid-template-columns:1fr auto;align-items:center;gap:.5rem}.rest-timer .routine-actions,.rest-cue{grid-column:1 / -1}.rest-cue:empty{position:absolute}.rest-time{font-size:2rem;font-variant-numeric:tabular-nums;font-weight:700}.rest-cue{color:var(--accent);font-weight:700}.progress,.progress-card{display:grid;gap:.75rem}.progress,.backup-settings,.app-content>.progress-empty{margin-top:1rem}.progress-card{min-width:0;padding-inline:clamp(.625rem,3vw,1rem);overflow-wrap:anywhere}.progress-card :is(select,input){min-width:0}.progress-card h2{margin:0}.backup-settings button{justify-self:start}.progress-chart{display:block;width:100%;max-width:36rem;font-size:13px;fill:var(--muted)}.progress-chart line{stroke:var(--border)}.progress-chart polyline{fill:none;stroke:var(--accent);stroke-width:2}.progress-chart circle{fill:var(--accent)}.progress-card summary{display:list-item;min-height:2.75rem;padding-block:.625rem;overflow-wrap:anywhere;cursor:pointer}.progress-card summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.history-session+.history-session{border-top:1px solid var(--border)}.history-exercises{margin:0;padding-inline-start:1.25rem;overflow-wrap:anywhere}.history-exercises>li+li{margin-top:.75rem}.history-notes{white-space:pre-wrap}.progress-values{width:100%;border-collapse:collapse;table-layout:fixed;text-align:left}.progress-values :is(th,td){padding:.375rem;border-bottom:1px solid var(--border);overflow-wrap:anywhere}
