:root{--bg:#f6f7f9;--surface:#fff;--text:#1a1d23;--muted:#6b7280;--border:#e3e6eb;--accent:#2563eb;--accent-text:#fff;--done:#16a34a;--done-soft:#e7f6ec;--danger:#dc2626;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1115;--surface:#181b21;--text:#e8eaee;--muted:#9099a6;--border:#2a2f38;--accent:#3b82f6;--done:#22c55e;--done-soft:#15291d;--danger:#f87171;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1115;--surface:#181b21;--text:#e8eaee;--muted:#9099a6;--border:#2a2f38;--accent:#3b82f6;--done:#22c55e;--done-soft:#15291d;--danger:#f87171;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4}a{color:inherit}h2,h3{margin:0 0 12px}.site-header{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.theme-toggle{white-space:nowrap;padding:4px 10px;font-size:.85rem}.brand{font-weight:700;text-decoration:none}.header-actions{align-items:center;gap:8px;display:flex}.login{max-width:360px;margin:48px auto}.login-form{flex-direction:column;gap:12px;display:flex}.login-form label{flex-direction:column;gap:4px;font-size:.9rem;display:flex}.sync-error{border:1px solid var(--danger);color:var(--danger);border-radius:8px;margin:0 0 12px;padding:8px 12px;font-size:.9rem}.login-error{color:var(--danger);margin:0;font-size:.9rem}.container{max-width:760px;margin:0 auto;padding:16px}.muted{color:var(--muted);font-size:.9rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin:16px 0;padding:16px}input{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;min-width:0;padding:8px 10px}button{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:8px 12px}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}button.danger{color:var(--danger)}button.small{padding:4px 8px;font-size:.85rem}.row{flex-wrap:wrap;gap:8px;display:flex}.row input:first-child{flex:200px}.workout-list{margin:0;padding:0;list-style:none}.workout-item{align-items:center;gap:12px;margin:10px 0;display:flex}.workout-link{flex-direction:column;flex:1;min-width:0;text-decoration:none;display:flex}.actions{gap:6px;display:flex}.workout-header{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.title-input{background:0 0;border-color:#0000;flex:220px;font-size:1.4rem;font-weight:700}.title-input:hover,.title-input:focus{border-color:var(--border)}.progress{background:var(--surface);border:1px solid var(--border);border-radius:999px;height:26px;position:relative;overflow:hidden}.progress-bar{background:var(--done);height:100%;transition:width .2s}.progress span{place-items:center;font-size:.85rem;font-weight:600;display:grid;position:absolute;inset:0}.exercise.complete{border-color:var(--done)}.exercise-header{align-items:center;gap:10px;margin-bottom:8px;display:flex}.exercise-header h3{flex:1;margin:0}.set-row{border-top:1px solid var(--border);padding:10px 0}.set-row.done{background:var(--done-soft);margin:0 -16px;padding:10px 16px}.set-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.set-label{min-width:48px;font-weight:600}.set-meta label{color:var(--muted);align-items:center;gap:4px;font-size:.9rem;display:flex}.set-meta input{width:64px;padding:4px 6px}.set-meta .check{margin-left:auto}button.check.on{background:var(--done);border-color:var(--done);color:#fff}button.icon{color:var(--muted);padding:4px 10px}.reps{flex-wrap:wrap;gap:6px;display:flex}button.rep{border-radius:50%;width:40px;height:40px;padding:0;font-weight:600;transition:background .1s}button.rep.on{background:var(--done);border-color:var(--done);color:#fff}.add-exercise{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.add-exercise>input{flex:100%}.add-exercise label{color:var(--muted);flex-direction:column;gap:2px;font-size:.85rem;display:flex}.add-exercise label input{width:90px}
