:root{--bg: #f5f4f1;--surface: #ffffff;--surface-2: #efede8;--text: #1c1b19;--muted: #6b675f;--border: #e2dfd8;--primary: #b7461c;--primary-ink: #ffffff;--primary-soft: #fbe7dd;--iron: #2a2926;--iron-2: #46433d;--ok: #1f8a4c;--ok-soft: #dcf3e4;--warn: #b86e00;--warn-soft: #fff1d6;--bad: #c92a2a;--bad-soft: #fde2e2;--info: #1d5fb4;--info-soft: #e1ecfb;--radius: 16px;--shadow: 0 1px 2px rgba(30, 25, 20, .06), 0 6px 18px rgba(30, 25, 20, .06);--nav-h: 64px;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #131210;--surface: #1c1a17;--surface-2: #26231f;--text: #ece8e1;--muted: #a39d93;--border: #312d27;--primary: #ff9466;--primary-ink: #2b1208;--primary-soft: #3a2217;--iron: #0f0e0d;--iron-2: #2a2825;--ok: #4cd08a;--ok-soft: #173826;--warn: #f0b34a;--warn-soft: #3a2c12;--bad: #ff6b6b;--bad-soft: #3d1c1c;--info: #6fa7ff;--info-soft: #182a44;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 6px 18px rgba(0, 0, 0, .25);color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:17px;line-height:1.45;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}button,input,textarea,select{font:inherit;color:inherit}a{color:var(--primary);text-decoration:none}h1,h2,h3{margin:0 0 8px;line-height:1.2}h1{font-size:26px}h2{font-size:22px}h3{font-size:17px}p{margin:0 0 10px}ul{margin:0 0 10px;padding-left:20px}li{margin-bottom:4px}.muted{color:var(--muted)}.bad{color:var(--bad)}.small{font-size:14px}.tiny{font-size:12px}.center{text-align:center}.row{display:flex;gap:8px;align-items:center}.row.wrap{flex-wrap:wrap}.spread{justify-content:space-between}.grow{flex:1;min-width:0}.stack{display:flex;flex-direction:column;gap:12px}.mt{margin-top:12px}.mb{margin-bottom:12px}.nowrap{white-space:nowrap}.num{font-variant-numeric:tabular-nums}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.mono{font-family:ui-monospace,Menlo,monospace}.app{max-width:600px;margin:0 auto;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 12px) 16px calc(var(--nav-h) + env(safe-area-inset-bottom) + 24px)}.app.no-nav{padding-bottom:calc(env(safe-area-inset-bottom) + 24px)}.app.with-timer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.nav{position:fixed;left:0;right:0;bottom:0;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--border);display:flex;justify-content:center;z-index:20}.nav-inner{display:flex;width:100%;max-width:600px}.nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--muted);font-size:12px;font-weight:600;padding:8px 0}.nav a .ico{font-size:22px;line-height:1}.nav a.active{color:var(--primary)}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;border:1px solid var(--border)}.card.soft{background:var(--surface-2);box-shadow:none}.card.clickable{cursor:pointer;display:block;color:inherit}.card.clickable:active{transform:scale(.99)}.hero{background:linear-gradient(135deg,var(--iron) 0%,var(--iron-2) 100%);color:#fff;border:none}.hero .muted,.hero .eyebrow{color:#ffffffb8}.hero .btn-primary{background:var(--primary);color:#fff}.hero .btn-ghost{color:#ffffffd9}.hero .plan{display:flex;flex-direction:column;gap:6px;margin:12px 0 16px}.hero .plan .row{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.12)}.hero .plan .row:last-child{border-bottom:none}.hero .pill{background:#ffffff24;color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 18px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .05s ease,background .15s ease}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--primary);color:var(--primary-ink);border-color:transparent}.btn-ghost{background:transparent;border-color:transparent;color:var(--primary)}.btn-danger{background:var(--bad);color:#fff;border-color:transparent}.btn-sm{min-height:36px;padding:6px 12px;font-size:14px;border-radius:10px}.btn-block{width:100%}.btn-lg{min-height:56px;font-size:18px}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:600;background:var(--surface-2);color:var(--muted);white-space:nowrap}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.info{background:var(--info-soft);color:var(--info)}.pill.primary{background:var(--primary-soft);color:var(--primary)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{background:var(--surface-2);border-radius:12px;padding:10px 8px;text-align:center}.stat .n{font-size:24px;font-weight:700;line-height:1.1}.stat .l{font-size:12px;color:var(--muted);margin-top:2px}.progress{height:6px;background:var(--surface-2);border-radius:999px;overflow:hidden}.progress>div{height:100%;background:var(--primary);border-radius:999px;transition:width .3s ease}.input{width:100%;min-height:48px;padding:10px 14px;border-radius:14px;border:2px solid var(--border);background:var(--surface);font-size:18px}.input:focus{outline:none;border-color:var(--primary)}textarea.input{min-height:90px;line-height:1.45;font-size:17px;resize:vertical}select.input{font-size:17px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-weight:600;font-size:15px}.field .hint{font-size:13px;color:var(--muted)}.switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.switch:last-child{border-bottom:none}.switch input{width:22px;height:22px;flex:none}.stepper{display:flex;align-items:center;gap:6px}.stepper button{width:46px;height:46px;flex:none;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:22px;font-weight:700;cursor:pointer;line-height:1}.stepper button:active{transform:scale(.96)}.stepper button:disabled{opacity:.4}.stepper .input.weight{width:96px;text-align:center;font-weight:700;font-size:20px;padding:8px;min-height:46px}.stepper .unit{margin-right:2px}.lift .kind{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.lift .w{font-size:36px;font-weight:800;line-height:1.05;letter-spacing:-.01em}.lift .w span{font-size:16px;font-weight:600;color:var(--muted);margin-left:4px}.lift .lift-hint{font-size:14px;color:var(--muted);margin-top:2px}.plates-row{margin-top:10px;gap:12px}.plates{display:flex;align-items:center;gap:2px;height:46px;flex:none}.plates .bar{height:7px;background:var(--muted);border-radius:2px;flex:none}.plates .plate{border-radius:3px;flex:none;box-shadow:inset 0 0 0 1px #0000001f}.warmup{margin-top:10px}.warmup summary{cursor:pointer;font-size:14px;color:var(--muted);font-weight:600;list-style:none;display:flex;align-items:center;gap:6px}.warmup summary::-webkit-details-marker{display:none}.warmup summary:before{content:"›";display:inline-block;transition:transform .15s;font-size:18px;line-height:1}.warmup[open] summary:before{transform:rotate(90deg)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:5px 11px;border-radius:999px;background:var(--surface-2);font-size:14px;font-weight:600;white-space:nowrap}.chip b{color:var(--text)}.sets{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.set-col{display:flex;flex-direction:column;align-items:center;gap:3px}.set-col .rest{font-size:11px;line-height:13px;min-height:13px;color:var(--muted)}.set{width:54px;height:54px;border-radius:50%;border:2px solid var(--border);background:var(--surface-2);color:var(--muted);font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:transform .05s ease}.set:active{transform:scale(.94)}.set.ok{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.set.miss{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.set.zero{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.set .target{font-size:13px;font-weight:600;opacity:.7}.timer-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--border);padding:10px 16px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -4px 18px #00000014}.timer-bar .inner{max-width:600px;margin:0 auto}.timer-bar .n{font-size:30px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.timer-bar .n.over{color:var(--ok)}.timer-actions{flex:none;gap:6px}.timer-actions .btn-sm{padding:6px 9px}.list{display:flex;flex-direction:column;gap:8px}.list-item{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px 14px;color:inherit}.list-item .grow{min-width:0}.list-item .t{font-weight:600}.list-item .s{font-size:13px;color:var(--muted)}.list-item .s .fail{color:var(--warn);font-weight:600}.chev{color:var(--muted)}.outcome{display:flex;flex-direction:column;gap:8px}.outcome .row{padding:8px 0;border-bottom:1px solid var(--border)}.outcome .row:last-child{border-bottom:none}.outcome .reps{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.bars{display:flex;align-items:flex-end;gap:4px;height:80px}.bars .bar{flex:1;background:var(--primary);border-radius:4px 4px 0 0;min-height:2px;opacity:.9}.bars .bar.dim{background:var(--border)}.bar-labels{display:flex;gap:4px;font-size:10px;color:var(--muted)}.bar-labels span{flex:1;text-align:center}.chart-wrap{position:relative}.chart{width:100%;height:auto;display:block;touch-action:pan-y}.chart .grid{stroke:var(--border);stroke-width:1}.chart .axis{fill:var(--muted);font-size:10px}.chart .line{fill:none;stroke:var(--primary);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart .dot{fill:var(--primary);stroke:var(--surface);stroke-width:2}.chart .dot.miss{fill:var(--surface);stroke:var(--primary)}.chart .dot.sel{r:6}.chart .cursor{stroke:var(--muted);stroke-width:1}.tooltip{position:absolute;top:0;transform:translate(-50%);background:var(--text);color:var(--bg);font-size:12px;padding:5px 8px;border-radius:8px;white-space:nowrap;pointer-events:none}.plate-picker{display:flex;flex-wrap:wrap;gap:8px}.plate-picker button{min-width:56px;min-height:40px;padding:6px 12px;border-radius:12px;border:2px solid var(--border);background:var(--surface);font-weight:600;cursor:pointer}.plate-picker button.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.fade{animation:fade .18s ease}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.banner{background:var(--warn-soft);color:var(--warn);border-radius:12px;padding:10px 12px;font-size:14px}.banner.info{background:var(--info-soft);color:var(--info)}.banner.ok{background:var(--ok-soft);color:var(--ok)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.lift .w .bw{font-size:24px}.amrap-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.amrap-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.amrap{display:inline-flex;align-items:center;border:2px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--muted);height:50px}.amrap.ok{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.amrap button{width:46px;height:46px;border:none;background:transparent;color:inherit;font-size:22px;font-weight:700;cursor:pointer;padding:0;border-radius:999px}.amrap button:active{background:#0000000f}.amrap .n{min-width:40px;text-align:center;font-size:22px;font-weight:700}.warm-block{margin-top:12px}.warm-row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 4px;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);text-align:left;cursor:pointer;font-size:16px}.warm-row:last-child{border-bottom:none}.warm-row .tick{width:30px;height:30px;border-radius:50%;border:2px solid var(--border);background:var(--surface-2);flex:none;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;color:var(--primary-ink)}.warm-row.done .tick{background:var(--primary);border-color:var(--primary)}.warm-row.done .grow,.warm-row.done .grow b{color:var(--muted)}.warm-edit{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border)}.warm-edit:last-of-type{border-bottom:none}.stepper.sm{gap:4px}.stepper.sm button{width:38px;height:40px;font-size:18px;border-radius:10px}.stepper.sm .input.weight{width:62px;min-height:40px;font-size:17px;padding:4px;border-radius:10px}.counter{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);flex:none}.counter button{width:34px;height:38px;border:none;background:transparent;color:var(--text);font-size:18px;font-weight:700;cursor:pointer;padding:0}.counter .n{min-width:24px;text-align:center;font-weight:700}.btn-x{width:36px;min-height:36px;padding:0;border-radius:10px;font-size:18px;flex:none}
