:root{color-scheme:dark;--bg:#101212;--surface:#1a1d1d;--surface2:#232727;--line:#353a39;--text:#f4f5ef;--muted:#9ba19f;--accent:#e63832;--green:#52cf87}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif}button,input{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}.app-shell{max-width:680px;min-height:100vh;margin:auto;padding:26px 18px 100px}.topbar,.workout-header,.section-heading,.workout-status,.round-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar{margin-bottom:24px}h1{font-size:28px;letter-spacing:-.8px}h2{font-size:20px;letter-spacing:-.35px}.eyebrow{color:var(--muted);font-size:10px;font-weight:750;letter-spacing:1px}.muted,.progress-label{color:var(--muted);font-size:13px}.icon-button,.back-button{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--text);font-size:18px}.hero-card{margin-bottom:28px;padding:21px;border:1px solid #4a3938;border-radius:22px;background:linear-gradient(140deg,#322121,#181b1b 55%)}.hero-card h2{margin-top:7px;font-size:24px}.hero-card .muted{margin-top:4px}.plan-progress,.workout-progress{height:5px;margin-top:20px;overflow:hidden;border-radius:9px;background:#3a3f3e}.plan-progress span,.workout-progress span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .25s}.progress-label{margin-top:8px}.section-heading{margin:22px 2px 12px}.section-heading span{color:var(--muted);font-size:12px}.text-button{padding:0;border:0;background:transparent;color:var(--text);font-size:13px;text-decoration:underline}.workout-list,.exercise-list,.session-list,.progress-list{display:grid;gap:11px}.workout-card,.session-card,.progress-card{width:100%;padding:16px;border:1px solid var(--line);border-radius:17px;background:var(--surface);color:var(--text);text-align:left}.workout-card{display:flex;align-items:center;justify-content:space-between}.workout-card:hover{border-color:#707775}.workout-card h3,.session-card h3,.progress-card h3{margin:3px 0 5px;font-size:16px}.workout-meta{color:var(--muted);font-size:12px}.arrow{color:var(--accent);font-size:22px}.view{display:none}.view.active{display:block}.workout-header{margin-bottom:17px}.workout-header h2{margin-top:2px}.finish-button,.primary-button{padding:10px 14px;border:0;border-radius:12px;background:var(--accent);color:#fff;font-weight:750}.workout-status{color:var(--muted);font-size:12px}.workout-status #workout-clock{color:var(--text);font-variant-numeric:tabular-nums}.workout-progress{margin:10px 0 19px}
.session-card-button{display:block;border-color:var(--line);font-family:inherit}.session-card-button:hover{border-color:#707775}.session-detail-dialog{width:min(620px,calc(100vw - 28px));max-height:82vh;overflow:auto;padding:20px;border-radius:20px;background:var(--surface);color:var(--text)}.session-detail-header{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:8px}.session-detail-note{margin:15px 0;padding:12px;border-left:2px solid var(--accent);border-radius:0 9px 9px 0;background:#242020;color:#d8c2c0;font-size:13px;line-height:1.5}.session-detail-body{display:grid;gap:12px;margin-top:18px}.saved-group{padding:14px;border:1px solid var(--line);border-radius:14px;background:#171919}.saved-group h3{font-size:15px;text-transform:capitalize}.saved-group>p{margin:3px 0 10px;color:var(--muted);font-size:11px}.saved-exercise{display:grid;gap:3px;padding:9px 0;border-top:1px solid #2d3231;font-size:13px}.saved-exercise span{color:var(--muted);font-size:12px;line-height:1.4}.workout-notes-label{display:block;margin:0 2px 6px;color:var(--muted);font-size:10px;font-weight:750;letter-spacing:1px}.workout-notes{width:100%;margin-bottom:14px;padding:11px 12px;resize:vertical;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--text);font-family:inherit;font-size:13px}.workout-notes:focus{outline:1px solid var(--accent)}.session-note,.progress-volume{margin-top:10px;color:#c7aaa6;font-size:12px;line-height:1.4}.next-cue{display:grid;gap:3px;margin:0 0 14px;padding:13px 15px;border:1px solid #5a3836;border-radius:15px;background:linear-gradient(100deg,#332020,#211e1e)}.next-cue strong{font-size:16px}.next-cue span{color:var(--muted);font-size:12px}.round-group{overflow:hidden;border:1px solid var(--line);border-radius:19px;background:var(--surface);transition:border-color .2s,box-shadow .2s}.round-group.is-active{border-color:#a3433e;box-shadow:0 0 0 1px #5d302d}.round-header{align-items:flex-start;padding:16px}.round-header h3{margin:3px 0 5px;font-size:17px;text-transform:capitalize}.round-meta{color:var(--muted);font-size:11px;line-height:1.4}.round-side{display:grid;justify-items:end;gap:8px}.round-count{display:grid;min-width:39px;height:31px;place-items:center;border-radius:10px;background:#302626;color:#f4d9d7;font-size:12px;font-variant-numeric:tabular-nums}.rest-adjust{display:flex;align-items:center;gap:3px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.5px}.rest-adjust input{width:37px;padding:4px 2px;border:1px solid #484c4b;border-radius:7px;background:#242727;color:var(--text);font-size:11px;text-align:center}.round-exercises{display:grid;gap:8px;padding:0 9px 9px}.exercise-card{overflow:hidden;border:1px solid #303534;border-radius:13px;background:#171919}.exercise-head{display:flex;align-items:flex-start;gap:11px;padding:13px}.exercise-index{display:grid;min-width:26px;height:26px;place-items:center;border-radius:8px;background:var(--surface2);color:var(--muted);font-size:12px}.exercise-head h3{margin:0 0 3px;font-size:15px}.exercise-head p{color:var(--muted);font-size:11px}.previous-performance{margin-top:5px!important;color:#c7aaa6!important;font-size:10px!important}.set-rows{border-top:1px solid var(--line)}.set-labels{display:grid;grid-template-columns:32px 1fr 1fr 34px;gap:8px;padding:8px 14px 2px;color:var(--muted);font-size:9px;letter-spacing:.6px}.set-row{display:grid;grid-template-columns:32px 1fr 1fr 34px;align-items:center;gap:8px;padding:9px 14px}.set-row+.set-row{border-top:1px solid #2b302f}.set-row.time,.set-labels.time{grid-template-columns:32px 1fr 34px}.set-number{color:var(--muted);font-size:12px}.set-input{min-width:0;padding:8px 7px;border:1px solid #3b403f;border-radius:9px;background:#202323;color:var(--text);font-size:13px;text-align:center}.set-input:focus{outline:1px solid var(--accent)}.set-done{width:30px;height:30px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--muted)}.set-done.checked{border-color:var(--green);background:var(--green);color:#102517}.add-set{width:100%;padding:11px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--muted);font-size:12px}.add-round{border-top:1px solid var(--line)}
.bottom-nav{position:fixed;z-index:3;bottom:0;left:50%;display:flex;width:min(680px,100%);justify-content:space-around;padding:10px 18px calc(11px + env(safe-area-inset-bottom));transform:translateX(-50%);border-top:1px solid var(--line);background:rgba(16,18,18,.96)}.nav-item{display:grid;min-width:68px;justify-items:center;gap:3px;border:0;background:transparent;color:var(--muted);font-size:11px}.nav-item span{font-size:18px}.nav-item.selected{color:var(--text)}.timer-dock{position:fixed;z-index:4;bottom:76px;left:50%;display:flex;align-items:center;gap:8px;width:min(630px,calc(100% - 28px));padding:11px 13px;transform:translateX(-50%);border:1px solid #5e3432;border-radius:17px;background:#292020;box-shadow:0 14px 30px #0008}.timer-dock div{margin-right:auto}.timer-dock strong{font-size:23px;font-variant-numeric:tabular-nums}.timer-dock button{padding:8px 9px;border:0;border-radius:9px;background:#3c3433;color:var(--text);font-size:11px}.hidden{display:none}dialog{max-width:340px;padding:0;border:0;border-radius:20px;background:var(--surface);color:var(--text)}dialog::backdrop{background:#000b}.dialog-content{display:grid;gap:13px;padding:26px}.dialog-content h2{font-size:28px}.dialog-content .text-button{justify-self:start}@media(min-width:700px){.app-shell{padding-top:45px}.exercise-list{grid-template-columns:1fr 1fr;align-items:start}.round-group:first-child{grid-column:span 2}}
