:root{--bg:#0f172a;--surface:#1a2436;--surface-2:#24314a;--text:#e8edf5;--text-dim:#93a1b8;--accent:#5ee09c;--danger:#ef6b6b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#app{min-height:100vh;padding-bottom:env(safe-area-inset-bottom)}.app-header{padding:calc(env(safe-area-inset-top) + 12px) 16px 12px;background:var(--surface);border-bottom:1px solid var(--surface-2);z-index:10;position:sticky;top:0}.header-top{justify-content:space-between;align-items:center;display:flex}.app-header h1{margin:0;font-size:1.1rem}.settings-btn{background:var(--surface-2);color:var(--text);cursor:pointer;border:none;border-radius:8px;width:34px;height:34px;font-size:1rem}.settings-panel{background:var(--surface-2);border-radius:10px;margin-top:10px;padding:10px 12px}.settings-row{justify-content:space-between;align-items:center;padding:6px 0;font-size:.9rem;display:flex}.settings-input-group{align-items:center;gap:4px;display:flex}.settings-input-group input{border:1px solid var(--surface);background:var(--surface);width:56px;color:var(--text);text-align:center;border-radius:8px;padding:6px;font-size:.9rem}.day-label{color:var(--text-dim);margin-top:6px;font-size:.95rem}main{max-width:560px;margin:0 auto;padding:16px}.rest-view,.placeholder-view{text-align:center;color:var(--text-dim);padding:48px 16px;font-size:1.05rem}.recap{background:#5ee09c1f;border:1px solid #5ee09c80;border-radius:12px;margin-bottom:16px;padding:12px 14px}.recap-symbols{flex-wrap:wrap;gap:6px 12px;margin-bottom:8px;display:flex}.recap-item{white-space:nowrap;font-size:.85rem}.recap-item.up{color:var(--accent)}.recap-item.down{color:var(--danger)}.recap-line{color:var(--text);font-size:.9rem;font-weight:600}.arrows{flex-shrink:0;align-items:baseline;gap:4px;margin-left:auto;display:flex}.arrow{line-height:1}.arrow.main{font-size:1.25rem;font-weight:700}.arrow.secondary{opacity:.75;font-size:.8rem}.arrow.up{color:var(--accent)}.arrow.down{color:var(--danger)}.arrow.flat{color:var(--text-dim)}.exercise-card{background:var(--surface);border-radius:14px;margin-bottom:14px;padding:14px}.exercise-header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.exercise-name{font-size:1.05rem;font-weight:600}.remove-exercise-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px 6px;font-size:1rem}.last-logged{color:var(--text-dim);margin-top:2px;margin-bottom:10px;font-size:.78rem}.set-count-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.set-count-label{color:var(--text-dim);font-size:.8rem}.set-count-value{text-align:center;min-width:20px;font-size:.95rem}.set-row{align-items:center;gap:6px;padding:6px 0;display:flex}.set-label{width:48px;color:var(--text-dim);flex-shrink:0;font-size:.85rem}.stepper{background:var(--surface-2);border-radius:10px;align-items:center;display:flex;overflow:hidden}.stepper button{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:none;font-size:1.2rem}.stepper button:active{background:#ffffff1a}.stepper input{width:44px;color:var(--text);text-align:center;-moz-appearance:textfield;background:0 0;border:none;font-size:1rem}.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper input.prefill{color:var(--text-dim)}.x{color:var(--text-dim);font-size:.9rem}.failure-toggle{border:1px solid var(--text-dim);width:36px;height:36px;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;margin-left:auto;font-weight:700}.failure-toggle.active{background:var(--danger);border-color:var(--danger);color:#fff}.add-exercise-btn{background:var(--surface);border:1px dashed var(--text-dim);width:100%;color:var(--text);cursor:pointer;border-radius:12px;margin-bottom:10px;padding:14px;font-size:.95rem}.add-exercise-row{gap:8px;margin-bottom:16px;display:flex}.add-exercise-row input{border:1px solid var(--surface-2);background:var(--surface);color:var(--text);border-radius:10px;flex:1;padding:12px;font-size:1rem}.add-exercise-row button{background:var(--accent);color:#0f172a;cursor:pointer;border:none;border-radius:10px;padding:12px 18px;font-weight:700}.section+.section{margin-top:28px}.section-heading{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;font-size:.95rem}.save-workout-btn{background:var(--accent);color:#0f172a;cursor:pointer;width:100%;bottom:calc(env(safe-area-inset-bottom) + 12px);border:none;border-radius:14px;padding:16px;font-size:1.05rem;font-weight:700;position:sticky}.sprint-blocks{flex-direction:column;gap:14px;display:flex}.sprint-block{background:var(--surface);border-radius:14px;padding:14px}.sprint-block-header{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.sprint-block-title{font-size:1.05rem;font-weight:600}.sprint-block-count{color:var(--text-dim);font-size:.8rem}.check-taps{flex-wrap:wrap;gap:8px;display:flex}.check-tap{border:1px solid var(--surface-2);background:var(--surface-2);width:48px;height:48px;color:var(--text-dim);cursor:pointer;border-radius:10px;font-size:1.1rem;font-weight:700}.check-tap.done{background:var(--accent);border-color:var(--accent);color:#0f172a}.timed-reps{flex-direction:column;gap:8px;display:flex}.timed-rep{align-items:center;gap:10px;min-height:48px;display:flex}.timed-rep-label{width:56px;color:var(--text-dim);flex-shrink:0;font-size:.85rem}.timed-rep.logged .timed-rep-time{font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:700}.timed-rep.logged .timed-rep-pct{color:var(--text-dim);font-size:.85rem}.timed-rep.logged.stop-rep .timed-rep-pct{color:var(--danger);font-weight:700}.timed-rep-flag{text-transform:uppercase;letter-spacing:.03em;color:var(--danger);border:1px solid var(--danger);border-radius:6px;margin-left:auto;padding:1px 6px;font-size:.7rem}.timed-rep-enter-btn{background:var(--surface-2);border:1px solid var(--accent);color:var(--text);cursor:pointer;border-radius:12px;flex:1;padding:14px;font-size:1rem;font-weight:600}.timed-rep-waiting{color:var(--text-dim);opacity:.4}.timed-rep.greyed .arm-override-btn{border:1px dashed var(--text-dim);color:var(--text-dim);cursor:pointer;opacity:.6;background:0 0;border-radius:12px;flex:1;padding:12px;font-size:.85rem}.timed-rep.armed .log-anyway-btn{border:1px solid var(--danger);color:var(--danger);cursor:pointer;background:#ef6b6b26;border-radius:12px;flex:1;padding:12px;font-size:.9rem;font-weight:700}.rest-timer{background:var(--surface);border:1px solid var(--surface-2);border-radius:14px;align-items:center;gap:12px;margin-bottom:14px;padding:14px;display:flex}.rest-timer.done{border-color:var(--accent);background:#5ee09c1f}.rest-timer-label{color:var(--text-dim);flex:1;font-size:.9rem}.rest-timer.done .rest-timer-label{color:var(--accent);font-weight:600}.rest-timer-clock{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:700}.rest-timer-dismiss{background:var(--surface-2);color:var(--text);cursor:pointer;border:none;border-radius:8px;padding:8px 12px;font-size:.85rem}.form-broke-btn{border:1px solid var(--danger);width:100%;color:var(--danger);cursor:pointer;background:0 0;border-radius:12px;margin-bottom:14px;padding:12px;font-size:.9rem}.form-broke-confirm{border:1px solid var(--danger);background:#ef6b6b1a;border-radius:12px;margin-bottom:14px;padding:12px 14px;font-size:.9rem}.form-broke-confirm-actions{gap:8px;margin-top:10px;display:flex}.form-broke-confirm-actions button{cursor:pointer;background:var(--surface-2);color:var(--text);border:none;border-radius:10px;flex:1;padding:10px;font-size:.9rem}.form-broke-confirm-actions button.danger{background:var(--danger);color:#fff;font-weight:700}.form-broke-status{color:var(--danger);border:1px solid var(--danger);border-radius:12px;margin-bottom:14px;padding:10px 14px;font-size:.85rem}.stop-overlay{background:var(--danger);z-index:100;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.stop-overlay-title{color:#fff;letter-spacing:.05em;font-size:4rem;font-weight:900}.stop-overlay-detail{color:#fff;margin-top:12px;font-size:1.1rem;font-weight:600}.stop-overlay-sub{color:#ffffffd9;margin-top:8px;font-size:.95rem}.stop-overlay-ok{color:var(--danger);cursor:pointer;background:#fff;border:none;border-radius:14px;margin-top:32px;padding:16px 48px;font-size:1.1rem;font-weight:700}.numpad-overlay{background:var(--bg);z-index:90;padding:calc(env(safe-area-inset-top) + 16px) 20px calc(env(safe-area-inset-bottom) + 16px);flex-direction:column;display:flex;position:fixed;inset:0}.numpad-header{color:var(--text-dim);justify-content:space-between;align-items:center;font-size:.95rem;display:flex}.numpad-cancel{background:var(--surface-2);color:var(--text);cursor:pointer;border:none;border-radius:8px;width:32px;height:32px;font-size:.9rem}.numpad-display{text-align:center;font-variant-numeric:tabular-nums;margin:24px 0 8px;font-size:4rem;font-weight:700}.numpad-hint{text-align:center;min-height:1.4em;margin-bottom:16px;font-size:.95rem}.numpad-hint-ok{color:var(--accent)}.numpad-hint-danger{color:var(--danger);font-weight:700}.numpad-grid{flex:1;grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.numpad-grid button{background:var(--surface);color:var(--text);cursor:pointer;border:none;border-radius:14px;font-size:1.6rem;font-weight:600}.numpad-grid button:active{background:var(--surface-2)}.numpad-submit{grid-column:span 1;background:var(--accent)!important;color:#0f172a!important}.numpad-submit:disabled{opacity:.5;background:var(--surface)!important;color:var(--text-dim)!important}
