:root{--bg:#070a08;--panel:#101511;--panel2:#171d18;--ink:#f6f8f6;--muted:#9da69f;--lime:#c9ff18;--lime2:#8fe800;--line:#273029;--danger:#ff5d68;--amber:#ffbd3d;--ok:#4ce68a;--shadow:0 18px 50px rgba(0,0,0,.36)}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;background:radial-gradient(circle at 90% -5%,rgba(201,255,24,.12),transparent 25%),var(--bg);color:var(--ink);font:15px/1.45 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;padding-bottom:84px;min-height:100vh}.bg-symbols{position:fixed;inset:0;pointer-events:none;overflow:hidden;opacity:.035;font-size:88px;font-weight:900}.bg-symbols i{position:absolute;font-style:normal}.bg-symbols i:nth-child(1){top:15%;left:5%}.bg-symbols i:nth-child(2){top:38%;right:4%}.bg-symbols i:nth-child(3){top:68%;left:10%}.bg-symbols i:nth-child(4){top:82%;right:12%}.bg-symbols i:nth-child(5){top:5%;right:35%}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:rgba(7,10,8,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.04)}h1{font-size:24px;margin:0}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:900;color:var(--lime)}main{max-width:940px;margin:auto;padding:14px}.view{display:none}.view.active{display:block}.bottom-nav{position:fixed;z-index:30;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(10,13,11,.96);border-top:1px solid var(--line);padding:6px 4px max(6px,env(safe-area-inset-bottom));backdrop-filter:blur(18px)}.bottom-nav button{background:transparent;border:0;color:#717b73;padding:7px 2px;font-size:10px}.bottom-nav button span{display:block;font-size:19px;line-height:22px}.bottom-nav button.active{color:var(--lime)}.card{position:relative;background:linear-gradient(145deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:22px;padding:17px;margin-bottom:13px;box-shadow:var(--shadow);overflow:hidden}.card::after{content:"";position:absolute;width:140px;height:140px;border-radius:50%;right:-90px;top:-90px;background:rgba(201,255,24,.06)}.hero{background:linear-gradient(135deg,var(--lime),#90ea00);color:#11170c;border:none}.hero .eyebrow,.hero .muted{color:#263111}.hero h2{font-size:29px;line-height:1.05;margin:8px 0}.hero .btn{background:#0b0e0c;color:#fff}.grid{display:grid;gap:12px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{background:#0d120e;border:1px solid var(--line);border-radius:17px;padding:13px}.metric b{display:block;font-size:23px}.metric small,.muted{color:var(--muted)}.btn{border:0;border-radius:13px;padding:12px 15px;font-weight:850;cursor:pointer}.btn.primary{background:var(--lime);color:#11170c}.btn.secondary{background:#252d27;color:#fff}.btn.ghost{background:transparent;border:1px solid #39433c;color:#fff}.btn.danger{background:#3a171c;color:#ff9ba3}.btn:disabled{opacity:.45}.row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.progress-track{height:10px;background:#262d28;border-radius:999px;overflow:hidden}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,var(--lime2),var(--lime));transition:width .45s ease}.ring{--p:0;display:grid;place-items:center;width:126px;height:126px;border-radius:50%;background:conic-gradient(var(--lime) calc(var(--p)*1%),#2b322d 0);position:relative}.ring::after{content:"";position:absolute;inset:12px;border-radius:50%;background:#111612}.ring strong{position:relative;z-index:1;font-size:26px}.workout-choice{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center}.session-number{width:52px;height:52px;border-radius:16px;background:rgba(201,255,24,.1);color:var(--lime);display:grid;place-items:center;font-size:22px;font-weight:900}.live-shell{max-width:580px;margin:auto}.live-head{margin-bottom:14px}.set-card{min-height:440px;display:flex;flex-direction:column;justify-content:space-between;animation:cardIn .28s ease}.set-card.exit{animation:cardOut .22s ease}.set-tag{display:inline-flex;background:rgba(201,255,24,.12);border:1px solid rgba(201,255,24,.32);color:var(--lime);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900}.exercise-name{font-size:31px;line-height:1.05;margin:15px 0 8px}.target-line{font-size:18px;font-weight:800}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.field label{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.field input,.field select,textarea,input,select{width:100%;border:1px solid #343d36;background:#0b0f0c;color:#fff;padding:12px;border-radius:12px;font:inherit}.next-preview{background:#0b0f0c;border:1px solid var(--line);border-radius:14px;padding:11px;margin-top:12px}.card-actions{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:16px}.card-actions .primary{font-size:16px}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.mini-stats div{padding:10px;background:#0a0e0b;border-radius:12px}.mini-stats b{display:block}.sync-pill{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#111612;color:#c9d1cb;border-radius:999px;padding:8px 10px;font-size:11px}.sync-dot{width:8px;height:8px;border-radius:50%;background:#707870}.sync-pill.synced .sync-dot{background:var(--ok);box-shadow:0 0 10px var(--ok)}.sync-pill.syncing .sync-dot{background:var(--amber);animation:pulse 1s infinite}.sync-pill.pending .sync-dot{background:var(--amber)}.sync-pill.error .sync-dot,.sync-pill.offline .sync-dot{background:var(--danger)}.status-panel{border-left:4px solid var(--lime)}.log-item{display:grid;grid-template-columns:1fr auto;gap:7px;padding:12px 0;border-bottom:1px solid var(--line)}.log-item:last-child{border:0}.chart{height:220px;display:flex;align-items:flex-end;gap:8px;padding:18px 5px 25px;border-bottom:1px solid var(--line);position:relative}.chart-bar{flex:1;min-width:16px;background:linear-gradient(var(--lime),var(--lime2));border-radius:6px 6px 2px 2px;position:relative;transition:height .5s ease}.chart-bar span{position:absolute;bottom:-22px;width:100%;font-size:9px;color:var(--muted);text-align:center}.chart-bar em{position:absolute;top:-22px;width:100%;font-style:normal;font-size:10px;text-align:center}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th,td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left}th{color:var(--lime);font-size:10px;letter-spacing:.08em}dialog{border:0;background:transparent;padding:0}dialog::backdrop{background:rgba(0,0,0,.74);backdrop-filter:blur(5px)}.timer-card,.modal{width:min(92vw,440px);background:#111612;border:1px solid var(--line);border-radius:24px;padding:22px}.timer-number{text-align:center;font-size:72px;font-weight:950;color:var(--lime);font-variant-numeric:tabular-nums}.toast{position:fixed;z-index:80;left:50%;bottom:92px;transform:translate(-50%,20px);opacity:0;background:#202821;color:#fff;border:1px solid #3b463d;padding:10px 14px;border-radius:12px;transition:.25s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}.warning{background:#2a2110;border:1px solid #5d491d;color:#ffd785;padding:11px;border-radius:13px}.success{color:var(--ok)}.danger-text{color:var(--danger)}.hidden{display:none!important}@keyframes cardIn{from{opacity:0;transform:translateX(18px) scale(.985)}to{opacity:1;transform:none}}@keyframes cardOut{to{opacity:0;transform:translateX(-18px) scale(.985)}}@keyframes pulse{50%{opacity:.35}}@media(max-width:640px){.grid.three{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr 1fr}.form-grid .field:last-child{grid-column:1/-1}.exercise-name{font-size:27px}.topbar{padding:12px}.sync-pill{max-width:145px}.sync-pill span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* v2.5 rep-by-rep workout flow */
.alt-switch{padding:8px 11px;background:#171f19;color:var(--lime);border:1px solid rgba(201,255,24,.35);font-size:11px}.alt-switch.active{background:var(--lime);color:#10140e}.form-grid.compact{grid-template-columns:1fr 1fr}.rep-zone{margin-top:17px;padding:16px;border:1px solid rgba(201,255,24,.18);border-radius:19px;background:radial-gradient(circle at 50% 10%,rgba(201,255,24,.1),transparent 55%),#0a0e0b;text-align:center}.rep-orbit{width:142px;height:142px;margin:0 auto 13px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:8px solid #283129;box-shadow:inset 0 0 0 2px rgba(201,255,24,.2),0 0 26px rgba(201,255,24,.08)}.rep-orbit strong{font-size:54px;line-height:.9;color:var(--lime)}.rep-orbit span{font-size:12px;color:var(--muted);margin-top:8px}.rep-track{height:8px;border-radius:99px;background:#252d27;overflow:hidden}.rep-track span{display:block;height:100%;background:linear-gradient(90deg,#81eb00,var(--lime));transition:width .22s ease}.rep-dots{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:13px 0}.rep-dots i{width:11px;height:11px;border-radius:50%;background:#2f3931;transition:.18s}.rep-dots i.done{background:var(--lime);box-shadow:0 0 9px rgba(201,255,24,.65)}.rep-dots i.current{outline:2px solid var(--lime);outline-offset:2px}.rep-instruction{font-size:12px;margin:7px auto 0;max-width:390px}.rep-finish{min-height:50px}.rep-pop .rep-orbit{animation:repPulse .25s ease}.set-card.flip{animation:cardFlip .22s ease}.rep-zone.interval label{text-align:left}.rep-zone.interval .rep-orbit strong{font-size:42px}@keyframes repPulse{50%{transform:scale(1.08);box-shadow:0 0 34px rgba(201,255,24,.35)}}@keyframes cardFlip{50%{transform:rotateY(8deg) scale(.985);opacity:.45}}@media(max-width:640px){.rep-orbit{width:126px;height:126px}.rep-orbit strong{font-size:48px}.form-grid.compact{grid-template-columns:1fr 1fr}.row.between .alt-switch{margin-left:auto}}

/* v2.6 layout, per-rep and history controls */
.set-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.alt-select{width:auto;max-width:100%;min-width:190px;padding:9px 34px 9px 11px;border-color:rgba(201,255,24,.35);color:var(--lime);background:#111812}.live-title-row{flex-wrap:nowrap}.compact-btn{padding:9px 11px;white-space:nowrap}.three-actions{grid-template-columns:52px minmax(90px,.45fr) minmax(170px,1fr)}.icon-btn{font-size:20px}.log-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.delete-btn{padding:7px 10px;font-size:11px}.history-header{align-items:flex-start}.button-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.master-prompt{min-height:260px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.45;resize:vertical}.rep-orbit span{max-width:115px;text-align:center;line-height:1.2}.rep-finish{animation:buttonGlow 1.8s ease-in-out infinite}@keyframes buttonGlow{50%{box-shadow:0 0 22px rgba(201,255,24,.25);transform:translateY(-1px)}}
@media(max-width:640px){.set-card{min-height:auto}.set-toolbar{align-items:stretch}.set-tag{width:100%;justify-content:center}.alt-select{width:100%;min-width:0}.mini-stats{grid-template-columns:1fr 1fr}.mini-stats div:last-child{grid-column:1/-1}.three-actions{grid-template-columns:48px 1fr}.three-actions .rep-finish{grid-column:1/-1;grid-row:1}.three-actions .icon-btn{grid-row:2}.three-actions .ghost{grid-row:2}.history-header{flex-direction:column}.history-header .btn{width:100%}.log-item{grid-template-columns:1fr}.log-actions{justify-content:space-between}.button-grid{grid-template-columns:1fr}.live-title-row{align-items:flex-start}.compact-btn{font-size:11px}.exercise-name{overflow-wrap:anywhere}.topbar{gap:8px}.sync-pill{flex:0 1 140px}}

/* v2.7 combined combo-round cards */
.combo-card{min-height:auto;padding:18px}.combo-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.combo-header h2{font-size:28px;margin:12px 0 5px}.combo-header p{margin:0;color:var(--muted);font-size:13px}.round-counter{flex:0 0 70px;width:70px;height:70px;border-radius:22px;background:var(--lime);color:#11170c;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:30px;font-weight:950}.round-counter small{font-size:9px;letter-spacing:.13em}.timer-plan{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.timer-plan span{background:#0a0e0b;border:1px solid var(--line);border-radius:12px;padding:10px;font-size:10px;color:var(--muted)}.timer-plan b{display:block;color:#fff;font-size:15px;margin-top:3px}.combo-stack{display:flex;flex-direction:column;gap:8px}.combo-exercise{border:1px solid #303a32;background:#0b100c;border-radius:17px;padding:14px;transition:.22s}.combo-exercise.active{border-color:var(--lime);box-shadow:0 0 0 1px rgba(201,255,24,.18),0 0 24px rgba(201,255,24,.06)}.combo-exercise.done{opacity:.72;border-color:#315d3c}.combo-ex-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.combo-ex-head h3{font-size:20px;margin:5px 0 0}.slot-badge{font-size:10px;font-weight:950;color:var(--lime);letter-spacing:.08em}.target-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.target-strip span{background:#111712;border-radius:10px;padding:8px}.target-strip small{display:block;color:var(--muted);font-size:9px}.target-strip b{font-size:13px}.combo-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.combo-inputs label{font-size:10px;color:var(--muted)}.combo-inputs input,.combo-inputs select{margin-top:5px}.combo-complete{width:100%;margin-top:12px;min-height:48px}.exercise-complete{margin-top:10px;color:var(--ok);font-weight:850;font-size:12px}.waiting-label{margin-top:10px;color:var(--muted);font-size:11px;text-align:center}.combo-link{text-align:center;color:var(--lime);font-size:10px;font-weight:900;letter-spacing:.06em}.compact-warning{font-size:11px;padding:8px;margin-bottom:10px}.combo-actions{grid-template-columns:1fr 1fr}.recovery-note{margin-top:14px;padding:12px;border:1px solid rgba(201,255,24,.22);border-radius:13px;background:rgba(201,255,24,.05);font-size:12px}.recovery-note b{color:var(--lime)}
@media(max-width:640px){.combo-card{padding:14px}.combo-header{align-items:center}.round-counter{width:58px;height:58px;flex-basis:58px;border-radius:18px;font-size:25px}.timer-plan{grid-template-columns:1fr}.timer-plan span{display:flex;justify-content:space-between;align-items:center}.timer-plan b{display:inline;margin:0}.combo-ex-head{flex-direction:column}.combo-ex-head .alt-select{width:100%}.target-strip{grid-template-columns:1fr 1fr}.target-strip span:last-child{grid-column:1/-1}.combo-inputs{grid-template-columns:1fr 1fr}.combo-actions{grid-template-columns:1fr}.combo-actions .btn{width:100%}}
