:root{--bg:#0b0b0d;--bg-elevated:#151518;--bg-sunken:#070708;--bg-card:#1b1b1f;--text:#f5f3f0;--text-2:#b4b0aa;--text-3:#7a766f;--border:#2a2a2f;--border-strong:#3a3a41;--accent:#ff6b1a;--accent-pressed:#e25a0e;--accent-subtle:#ff6b1a24;--success:#3ecf8e;--warning:#f5b544;--danger:#ff5a5a;--info:#6ab0ff;--sim:#b48cff;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--fast:.15s;--base:.22s;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;padding:0}body{min-height:100dvh}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}#root{max-width:520px;min-height:100dvh;margin:0 auto;position:relative}.num{font-variant-numeric:tabular-nums}.app{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.screen{padding:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex}.screen-title{letter-spacing:-.02em;margin:var(--space-2) 0 0;font-size:28px;font-weight:800}.section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:var(--space-2) 0 0;font-size:13px;font-weight:700}.muted{color:var(--text-2)}.small{font-size:13px}.tiny{color:var(--text-3);font-size:12px}.row{align-items:center;gap:var(--space-2);display:flex}.row.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{gap:var(--space-2);flex-direction:column;display:flex}.stack-3{gap:var(--space-3);flex-direction:column;display:flex}.authority-banner{z-index:30;gap:var(--space-2);padding:8px var(--space-4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);color:var(--text-2);background:#0b0b0deb;align-items:center;font-size:12px;display:flex;position:sticky;top:0}.authority-banner strong{color:var(--warning);letter-spacing:.06em}.badge{letter-spacing:.06em;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:800;display:inline-flex}.badge.provisional{color:var(--warning);background:#f5b54426}.badge.simulation{color:var(--sim);background:#b48cff29}.badge.unavailable{color:var(--danger);background:#ff5a5a1f}.badge.done{color:var(--success);background:#3ecf8e24}.badge.neutral{background:var(--bg-elevated);color:var(--text-2)}.hero{min-height:360px;margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) 0;padding:var(--space-5) var(--space-4);justify-content:flex-end;gap:var(--space-3);background:linear-gradient(180deg, #0b0b0d0d 0%, #0b0b0d8c 55%, var(--bg) 100%), var(--hero-image,none) center / cover no-repeat, radial-gradient(120% 70% at 85% 0%, #ff6b1a8c 0%, #ff6b1a00 55%), radial-gradient(90% 60% at 0% 30%, #783c1480 0%, #0000 60%), linear-gradient(160deg, #26140a 0%, #0b0b0d 70%);flex-direction:column;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:repeating-linear-gradient(115deg,#ffffff09 0 2px,#0000 2px 22px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 75%);mask-image:linear-gradient(#000 0%,#0000 75%)}.hero>*{position:relative}.hero-brand{top:var(--space-4);left:var(--space-4);letter-spacing:.32em;font-size:14px;font-weight:900;position:absolute}.hero-brand span{color:var(--accent)}.hero h1{letter-spacing:-.03em;margin:0;font-size:34px;font-weight:900;line-height:1.05}.hero p{color:var(--text-2);margin:0}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.card.accent{background:linear-gradient(160deg, #ff6b1a1f, var(--bg-card) 55%);border-color:#ff6b1a73}.card.button-card{text-align:left;width:100%;color:inherit;transition:transform var(--fast), border-color var(--fast)}.card.button-card:active{transform:scale(.99)}.card h3{margin:0;font-size:18px}.stats{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.stat{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3)}.stat .v{font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}.stat .l{color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-size:11px}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-5);transition:background var(--fast), transform var(--fast);border:1px solid #0000;border-radius:999px;font-weight:700;display:inline-flex}.btn:active{transform:scale(.98)}.btn.primary{background:var(--accent);color:#140800}.btn.primary:active{background:var(--accent-pressed)}.btn.secondary{background:var(--bg-elevated);border-color:var(--border-strong)}.btn.ghost{color:var(--text-2);background:0 0}.btn.danger{color:var(--danger);background:#ff5a5a1f;border-color:#ff5a5a59}.btn.block{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed}.chip{min-height:40px;padding:0 var(--space-4);border:1px solid var(--border-strong);background:var(--bg-elevated);border-radius:999px;font-size:14px;font-weight:600}.chip.on{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent)}label.field{color:var(--text-2);flex-direction:column;gap:6px;font-size:13px;display:flex}select,input[type=number],input[type=text],textarea{background:var(--bg-sunken);border:1px solid var(--border-strong);border-radius:var(--radius-md);width:100%;min-height:48px;padding:12px}textarea{resize:vertical;min-height:80px}.option{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);text-align:left;align-items:flex-start;width:100%;display:flex}.option.on{border-color:var(--accent);background:var(--accent-subtle)}.option .t{font-weight:700}.check{gap:var(--space-3);color:var(--text-2);align-items:flex-start;font-size:14px;display:flex}.check input{width:22px;height:22px;accent-color:var(--accent);flex:none;margin-top:1px}.week{gap:var(--space-2);flex-direction:column;display:flex}.day{gap:var(--space-3);grid-template-columns:54px 1fr;align-items:stretch;display:grid}.day .d{border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border);padding:var(--space-2) 0;flex-direction:column;justify-content:center;align-items:center;display:flex}.day .d .w{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.day .d .n{font-size:20px;font-weight:800}.day.today .d{border-color:var(--accent)}.day .rest{color:var(--text-3);padding:0 var(--space-3);border-radius:var(--radius-md);border:1px dashed var(--border);align-items:center;font-size:14px;display:flex}.weekstrip{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.weekstrip .c{text-align:center;border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border);padding:8px 0;font-size:12px}.weekstrip .c.has{border-color:var(--border-strong)}.weekstrip .c.today{border-color:var(--accent)}.weekstrip .dot{background:var(--accent);border-radius:50%;width:6px;height:6px;margin:4px auto 0}.weekstrip .dot.done{background:var(--success)}.weekstrip .dot.off{background:0 0}.session-header{gap:var(--space-2);flex-direction:column;display:flex}.block-title{justify-content:space-between;align-items:baseline;display:flex}.exercise{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.exercise-head{padding:var(--space-4);justify-content:space-between;gap:var(--space-2);align-items:flex-start;display:flex}.exercise-head h4{margin:0;font-size:17px}.set{padding:8px var(--space-3);border-top:1px solid var(--border);grid-template-columns:44px 1fr 64px 64px 48px;align-items:center;gap:6px;display:grid}.set.rampup{opacity:.8}.set .idx{color:var(--text-3);text-align:center;font-size:12px}.set .target{font-size:14px}.set .target .sub{color:var(--text-3);font-size:12px}.set input{text-align:center;font-variant-numeric:tabular-nums;min-height:44px;padding:6px}.set .tick{border:2px solid var(--border-strong);background:var(--bg-sunken);color:#0000;width:44px;height:44px;transition:all var(--fast);border-radius:12px;place-items:center;font-size:20px;font-weight:900;display:grid}.set .tick.on{background:var(--accent);border-color:var(--accent);color:#140800}.set.done .target{color:var(--text-2)}.set-head{padding:6px var(--space-3);color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;grid-template-columns:44px 1fr 64px 64px 48px;gap:6px;font-size:11px;display:grid}.rest-timer{left:50%;bottom:calc(92px + env(safe-area-inset-bottom));z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--accent);width:min(480px,100% - 24px);padding:var(--space-3) var(--space-4);align-items:center;gap:var(--space-3);background:#1b1b1ff5;border-radius:22px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 40px #00000080}.rest-timer .time{font-variant-numeric:tabular-nums;min-width:96px;font-size:34px;font-weight:900}.rest-timer .time.over{color:var(--success)}.rest-timer .bar{background:var(--border);border-radius:2px;height:4px;margin-top:6px;overflow:hidden}.rest-timer .bar>div{background:var(--accent);height:100%;transition:width .25s linear}.wizard{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.wizard-actions{z-index:50;align-items:center;gap:var(--space-2);width:min(520px,100%);padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#0b0b0df5;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabbar{z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);width:min(520px,100%);padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:#0b0b0df0;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabbar button{min-height:56px;color:var(--text-3);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:600;display:flex}.tabbar button.on{color:var(--accent)}.tabbar svg{width:22px;height:22px}.overlay{z-index:60;background:var(--bg);position:fixed;inset:0;overflow-y:auto}.overlay-inner{max-width:520px;margin:0 auto;padding-bottom:120px}.topbar{z-index:5;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#0b0b0df0;display:flex;position:sticky;top:0}.topbar .title{flex:1;font-weight:800}.sheet-backdrop{z-index:70;background:#0009;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg-elevated);width:min(520px,100%);max-height:92dvh;padding:var(--space-5) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));gap:var(--space-4);border-radius:24px 24px 0 0;flex-direction:column;display:flex;overflow-y:auto}.notice{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-2);font-size:13px;display:flex}.notice.warn{border-color:#f5b54466}.notice.danger{color:var(--text);border-color:#ff5a5a73}.notice.sim{border-color:#b48cff66}.toast{z-index:90;background:var(--danger);color:#fff;border-radius:12px;max-width:calc(100% - 32px);padding:10px 16px;font-size:14px;font-weight:600;position:fixed;top:52px;left:50%;transform:translate(-50%)}.steps{gap:6px;display:flex}.steps span{background:var(--border);border-radius:2px;flex:1;height:4px}.steps span.on{background:var(--accent)}.days-grid{gap:var(--space-2) var(--space-3);grid-template-columns:1fr auto;align-items:center;display:grid}.empty{text-align:center;padding:var(--space-6) var(--space-4);color:var(--text-2)}hr.sep{border:0;border-top:1px solid var(--border);width:100%;margin:0}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.authority-banner.beta strong{color:var(--sim)}.badge.sim{color:var(--sim);background:#b48cff29}.badge.test{background:var(--accent-subtle);color:var(--accent)}.badge.st-planned,.badge.st-not_planned{background:var(--bg-elevated);color:var(--text-2)}.badge.st-in_progress{background:var(--accent-subtle);color:var(--accent)}.badge.st-completed_as_prescribed,.badge.st-modified{color:var(--success);background:#3ecf8e24}.badge.st-abandoned{color:var(--warning);background:#f5b54426}.badge.st-missed{color:var(--danger);background:#ff5a5a1f}.bar{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.bar>div{background:var(--accent);height:100%;transition:width .25s linear}details summary{cursor:pointer;min-height:32px;color:var(--text-3);align-items:center;display:flex}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rest-timer.rest0{align-items:stretch;gap:var(--space-3);bottom:calc(16px + env(safe-area-inset-bottom));flex-direction:column}.overlay .screen.with-timer{padding-bottom:200px}.weekstrip .dots{justify-content:center;gap:3px;margin-top:4px;display:flex}.weekstrip .dots .dot{margin:0}.weekstrip .dot.st-completed_as_prescribed,.weekstrip .dot.st-modified{background:var(--success)}.weekstrip .dot.st-abandoned{background:var(--warning);border-radius:1px}.weekstrip .dot.st-missed{border:1.5px solid var(--danger);background:0 0;width:7px;height:7px}.weekstrip .dot.st-in_progress{background:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.row>.field{flex:1 1 0;min-width:0}.row>.field input{width:100%;min-width:0}.k-effort{gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) 0;border-top:1px dashed var(--border);flex-direction:column;display:flex}.k-effort-label{flex-direction:column;min-width:0;font-size:13px;display:flex}.k-effort-label span{color:var(--text-2);font-size:12px}.k-effort-chips{gap:6px;display:flex}.k-effort-chips .chip{font-variant-numeric:tabular-nums;flex:1 1 0;min-width:0;max-width:56px;min-height:44px;padding:0}.k-ct-head{flex-direction:column;gap:8px;display:flex}.k-ct-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--k-text-3);font-size:12px;font-weight:700}.k-ct-title{margin:0;font-size:26px;line-height:1.15}.k-ct-headline{color:var(--k-text-2);font-size:14px}.k-ct-clock{border-radius:var(--k-radius-m);background:var(--k-surface-1);border:2px solid var(--k-accent);flex-direction:column;align-items:center;gap:2px;padding:16px 12px;display:flex}.k-ct-clock.rest{border-color:var(--k-success)}.k-ct-clock.over{border-color:var(--k-text-3)}.k-ct-clock-label{letter-spacing:.14em;color:var(--k-text-2);font-size:13px;font-weight:800}.k-ct-clock-big{font-variant-numeric:tabular-nums;font-size:clamp(56px,18vw,84px);font-weight:900;line-height:1}.k-ct-clock-sub{color:var(--k-text-2);font-size:14px}.k-ct-moves-title{letter-spacing:.12em;text-transform:uppercase;color:var(--k-text-3);margin-bottom:6px;font-size:12px;font-weight:800}.k-ct-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.k-ct-move{border-radius:var(--k-radius-m);background:var(--k-surface-1);justify-content:space-between;align-items:baseline;gap:12px;padding:12px 14px;display:flex}.k-ct-move-name{font-size:16px;font-weight:700}.k-ct-move-dose{color:var(--k-text-2);white-space:nowrap;font-size:15px}.k-ct-stepper{grid-template-columns:1fr 56px 64px 56px;align-items:center;gap:8px;display:grid}.k-ct-stepper-label{font-size:14px;font-weight:600}.k-ct-step{border:1px solid var(--border);background:var(--k-surface-2);min-height:56px;color:var(--k-text);border-radius:16px;font-size:26px;font-weight:800}.k-ct-step.plus{background:var(--k-accent);color:#1a0a00;border-color:#0000}.k-ct-step:disabled{opacity:.4}.k-ct-step-value{text-align:center;font-size:28px;font-weight:900}.k-ct .row .k-cta,.k-hr .row .k-cta{flex:1}.k-hr .k-ct-clock{padding:10px 12px}.k-hr .k-ct-clock-big{font-size:clamp(44px,14vw,64px)}.k-hr .row .k-hr-back{flex:0 0 34%}.k-hr-count{color:var(--k-text-2);letter-spacing:.02em;font-size:14px;font-weight:800}.k-hr-now{border-radius:var(--k-radius-l);background:var(--k-surface-1);border:2px solid var(--k-accent);box-shadow:0 0 0 4px var(--k-accent-soft);flex-direction:column;gap:6px;padding:18px 16px;display:flex}.k-hr-now.run{border-color:#4ea8ff;box-shadow:0 0 0 4px #4ea8ff24}.k-hr-now.done{border-color:var(--k-success);box-shadow:none}.k-hr-now-kind{letter-spacing:.14em;text-transform:uppercase;color:var(--k-accent);font-size:12px;font-weight:800}.k-hr-now.run .k-hr-now-kind{color:#4ea8ff}.k-hr-now-name{overflow-wrap:anywhere;font-size:clamp(26px,8vw,34px);font-weight:900;line-height:1.05}.k-hr-now-dose{color:var(--k-text);font-size:20px;font-weight:800}.k-hr-now-note{color:var(--k-text-2);font-size:13px}.k-hr-load{color:var(--k-text-2);flex-direction:column;gap:6px;margin-top:4px;font-size:13px;display:flex}.k-hr-load input{border:1px solid var(--border);background:var(--k-surface-2);min-height:52px;color:var(--k-text);box-sizing:border-box;border-radius:14px;width:100%;padding:0 14px;font-size:22px;font-weight:800}.k-hr-rail{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.k-hr-step{border-radius:var(--k-radius-m);background:var(--k-surface-1);grid-template-columns:28px 1fr auto;align-items:center;column-gap:10px;padding:10px 12px;display:grid}.k-hr-step .k-hr-round{letter-spacing:.12em;text-transform:uppercase;color:var(--k-text-3);grid-column:1/-1;margin-bottom:4px;font-size:11px;font-weight:800}.k-hr-dot{background:var(--k-surface-3);width:28px;height:28px;color:var(--k-text-2);border-radius:99px;justify-content:center;align-items:center;font-size:13px;font-weight:900;display:inline-flex}.k-hr-step.run .k-hr-dot{color:#4ea8ff}.k-hr-step.done{opacity:.55}.k-hr-step.done .k-hr-dot{color:var(--k-success);background:#3ecf8e29}.k-hr-step.now{background:var(--k-accent-soft);outline:1px solid var(--k-accent-line)}.k-hr-step.now .k-hr-dot{background:var(--k-accent);color:#1a0a00}.k-hr-step-name{overflow-wrap:anywhere;font-size:15px;font-weight:700}.k-hr-step-dose{color:var(--k-text-2);white-space:nowrap;font-size:14px}.field-chips{flex-wrap:wrap;gap:8px;display:flex}.field-chips .chip{min-height:44px}.field-after{padding:0 var(--space-4) calc(var(--space-6,24px) + env(safe-area-inset-bottom));gap:var(--space-3);flex-direction:column;display:flex}.k-block-note{border-radius:var(--radius-md);border:1px dashed var(--border-strong);color:var(--text-2);flex-direction:column;gap:4px;padding:12px 14px;font-size:13px;line-height:1.4;display:flex}.k-block-note strong{color:var(--text-1,inherit);text-transform:uppercase;letter-spacing:.04em;font-size:13px}html.k-test{--k-test-h:calc(24px + env(safe-area-inset-top))}.k-test-ribbon{height:var(--k-test-h);z-index:1000;box-sizing:border-box;padding:env(safe-area-inset-top) 8px 0;white-space:nowrap;text-overflow:ellipsis;color:#fff;letter-spacing:.02em;background:#8a1c1c;justify-content:center;align-items:center;font:600 11px/1 system-ui,sans-serif;display:flex;position:fixed;top:0;left:0;right:0;overflow:hidden}html.k-test body{padding-top:var(--k-test-h)}html.k-test .overlay,html.k-test .authority-banner,html.k-test .topbar{top:var(--k-test-h)}html.k-test .overlay .topbar{top:0}html.k-test .k-nav{top:calc(56px + var(--k-test-h))}html.k-test .toast{top:calc(52px + var(--k-test-h))}:root{--k-bg:#0a0a0b;--k-surface-1:#131315;--k-surface-2:#1b1b1e;--k-surface-3:#242428;--k-text:#f4f1ec;--k-text-2:#a7a29b;--k-text-3:#6f6b65;--k-accent:#ff6b1a;--k-accent-soft:#ff6b1a1f;--k-accent-line:#ff6b1a59;--k-success:#3ecf8e;--k-danger:#ff6464;--k-radius-xl:28px;--k-radius-l:22px;--k-radius-m:16px;--k-shadow:0 18px 48px #0000008c;--k-ease:cubic-bezier(.2, .8, .2, 1)}.k-workout{background:var(--k-bg);flex-direction:column;gap:20px;padding:8px 16px 32px;display:flex}.k-workout.with-timer{padding-bottom:260px}.k-head{flex-direction:column;gap:10px;padding-top:8px;display:flex}.k-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--k-text-3);font-size:12px;font-weight:700}.k-title{letter-spacing:-.03em;text-transform:uppercase;color:var(--k-text);margin:0;font-size:clamp(40px,12vw,52px);font-weight:900;line-height:.95}.k-meta{color:var(--k-text-2);font-variant-numeric:tabular-nums;align-items:baseline;gap:10px;font-size:15px;display:flex}.k-meta strong{color:var(--k-text);font-weight:800}.k-meta .sep{color:var(--k-text-3)}.k-progress{background:var(--k-surface-3);border-radius:99px;height:6px;overflow:hidden}.k-progress>i{background:linear-gradient(90deg, #ff8a3d, var(--k-accent));height:100%;transition:width .4s var(--k-ease);border-radius:99px;display:block;box-shadow:0 0 16px #ff6b1a73}.k-pill{letter-spacing:.04em;height:24px;color:var(--k-text-2);background:var(--k-surface-2);border-radius:99px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.k-pill.accent{color:var(--k-accent);background:var(--k-accent-soft)}.k-pill.done{color:var(--k-success);background:#3ecf8e1f}.k-nav{z-index:20;background:var(--k-bg);box-shadow:0 12px 16px -8px var(--k-bg);align-items:center;gap:8px;margin:0 -16px;padding:10px 16px;display:flex;position:sticky;top:56px}.k-nav-count{color:var(--k-text-2);font-variant-numeric:tabular-nums;white-space:nowrap;margin-right:4px;font-size:13px;font-weight:800}.k-nav-count b{color:var(--k-text)}.k-nav-dots{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.k-nav-dot{background:var(--k-surface-2);min-width:44px;height:36px;color:var(--k-text-2);font-variant-numeric:tabular-nums;border:0;border-radius:99px;padding:0 10px;font-size:13px;font-weight:800}.k-nav-dot.current{background:var(--k-text);color:var(--k-bg)}.k-nav-dot.done{color:var(--k-accent);background:var(--k-accent-soft)}.k-light{border-radius:var(--k-radius-m);background:var(--k-surface-1);grid-template-columns:1fr auto;align-items:center;gap:2px 12px;padding:12px 16px;display:grid}.k-light .k-light-kind{letter-spacing:.14em;text-transform:uppercase;color:var(--k-text-3);grid-column:1/-1;font-size:10px;font-weight:800}.k-light .k-light-name{color:var(--k-text);flex:1;font-size:15px;font-weight:600}.k-light .k-light-dose{color:var(--k-text-2);font-variant-numeric:tabular-nums;font-size:14px}.k-ex{border-radius:var(--k-radius-xl);background:var(--k-surface-1);transition:box-shadow .3s var(--k-ease);flex-direction:column;gap:14px;padding:22px 18px 14px;scroll-margin-top:120px;display:flex}.k-ex.current{background:linear-gradient(180deg, var(--k-surface-2), var(--k-surface-1) 120px);box-shadow:inset 0 0 0 1px var(--k-accent-line)}.k-ex.complete{opacity:.92}.k-ex-head{align-items:flex-start;gap:14px;display:flex}.k-ex-num{color:var(--k-accent);font-variant-numeric:tabular-nums;letter-spacing:.02em;padding-top:6px;font-size:15px;font-weight:900}.k-ex.complete .k-ex-num{color:var(--k-text-3)}.k-ex-name{letter-spacing:-.01em;text-transform:uppercase;color:var(--k-text);margin:0;font-size:24px;font-weight:900;line-height:1.08}.k-ex-sub{color:var(--k-text-2);font-variant-numeric:tabular-nums;margin-top:6px;font-size:14px}.k-ex-sub .sep{color:var(--k-text-3);margin:0 6px}.k-sets{flex-direction:column;gap:6px;display:flex}.k-set{background:var(--k-surface-2);transition:background .22s var(--k-ease), opacity .22s;border-radius:18px;grid-template-columns:minmax(64px,1fr) minmax(64px,84px) minmax(64px,92px) 56px;align-items:center;gap:8px;padding:8px 6px 8px 12px;display:grid}.k-set.warm{background:0 0;padding-top:4px;padding-bottom:4px}.k-set.done{background:0 0}.k-set.done .k-set-label b,.k-set.done .k-set-label span,.k-set.done .k-field small{color:var(--k-text-3)}.k-set.done .k-field input{color:var(--k-text-2);-webkit-text-fill-color:var(--k-text-2)}.k-set-label{flex-direction:column;gap:2px;min-width:0;display:flex}.k-set-label b{letter-spacing:.12em;text-transform:uppercase;color:var(--k-text-2);white-space:nowrap;font-size:12px;font-weight:800}.k-set.warm .k-set-label b{color:var(--k-text-3)}.k-set-label span{color:var(--k-text-3);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-size:12px;overflow:hidden}.k-field{cursor:text;border-radius:14px;flex-direction:column;align-items:center;gap:0;padding:4px 0 6px;transition:background .15s;display:flex}.k-field:focus-within{background:var(--k-surface-3)}.k-field input{text-align:center;letter-spacing:-.02em;width:100%;min-height:40px;color:var(--k-text);font-variant-numeric:tabular-nums;-moz-appearance:textfield;caret-color:var(--k-accent);background:0 0;border:0;outline:none;padding:0;font-size:28px;font-weight:800}.k-field input::placeholder{color:var(--k-text-3);font-weight:700}.k-field input:disabled{color:var(--k-text);opacity:1;-webkit-text-fill-color:var(--k-text)}.k-set.warm .k-field input{min-height:34px;font-size:22px}.k-field small{letter-spacing:.16em;color:var(--k-text-3);font-size:10px;font-weight:800}.k-check{color:#ffffff80;width:52px;height:52px;transition:all .2s var(--k-ease);background:#ffffff0f;border:2.5px solid #ffffff9e;border-radius:50%;justify-self:end;place-items:center;font-size:22px;font-weight:900;display:grid}.k-check:not(:disabled):active{transform:scale(.92)}.k-check:disabled{opacity:.55;color:#0000;border-style:dashed}.k-set-hint{color:var(--k-text-2);grid-column:1/-1;margin-top:-4px;font-size:12px;line-height:1.3}.k-set{scroll-margin-top:96px;scroll-margin-bottom:260px}.k-check.on{background:var(--k-accent);border-color:var(--k-accent);color:#1a0a00;box-shadow:0 6px 20px #ff6b1a59}.k-set.warm .k-check{width:44px;height:44px}.k-ex-foot{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;column-gap:12px;padding-top:2px;display:flex}.k-ex-foot .k-details[open]{flex-basis:100%}.k-ex-foot .k-link{margin-left:auto}.k-details{color:var(--k-text-2);font-size:14px}.k-details summary{cursor:pointer;min-height:44px;color:var(--k-text-2);align-items:center;gap:6px;font-weight:700;list-style:none;display:inline-flex}.k-details summary::-webkit-details-marker{display:none}.k-details summary:after{content:"▾";font-size:13px;transition:transform .2s;display:inline-block}.k-details[open] summary:after{transform:rotate(180deg)}.k-details ul{flex-direction:column;gap:6px;margin:0 0 6px;padding:0 0 0 18px;line-height:1.4;display:flex}.k-link{min-height:44px;color:var(--k-text-3);text-underline-offset:3px;background:0 0;border:0;padding:0 4px;font-size:13px;font-weight:600;text-decoration:underline}.k-link[aria-pressed=true]{color:var(--k-danger);text-decoration:none}.k-cta{background:var(--k-accent);color:#1a0a00;letter-spacing:.01em;border:0;border-radius:99px;width:100%;min-height:60px;font-size:17px;font-weight:900;box-shadow:0 10px 30px #ff6b1a4d}.k-cta.ghost{background:var(--k-surface-2);color:var(--k-text);box-shadow:none}.k-cta:active{transform:scale(.98)}.k-dock{z-index:40;width:min(520px,100%);padding:24px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(#0a0a0b00, var(--k-bg) 40%);position:fixed;bottom:0;left:50%;transform:translate(-50%)}.k-workout.with-dock{padding-bottom:120px}.k-rest{left:50%;bottom:calc(14px + env(safe-area-inset-bottom));z-index:60;border-radius:var(--k-radius-xl);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:min(480px,100% - 20px);box-shadow:var(--k-shadow), inset 0 0 0 1px #ffffff0f;animation:k-rise .32s var(--k-ease);background:#161619f0;flex-direction:column;gap:14px;padding:16px 16px 14px;display:flex;position:fixed;transform:translate(-50%)}@keyframes k-rise{0%{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%)}}.k-rest-top{align-items:center;gap:16px;display:flex}.k-ring{flex:none;width:76px;height:76px;position:relative}.k-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.k-ring circle{fill:none;stroke-width:6px}.k-ring .track{stroke:var(--k-surface-3)}.k-ring .value{stroke:var(--k-accent);stroke-linecap:round;transition:stroke-dashoffset .25s linear}.k-ring.over .value{stroke:var(--k-success)}.k-rest-label{letter-spacing:.18em;color:var(--k-accent);font-size:11px;font-weight:800}.k-rest-time{letter-spacing:-.03em;color:var(--k-text);font-variant-numeric:tabular-nums;font-size:48px;font-weight:900;line-height:1}.k-rest-time.over{color:var(--k-success)}.k-rest-ex{color:var(--k-text-2);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.k-rest-actions{grid-template-columns:1fr 1fr 1.3fr;gap:8px;display:grid}.k-rest-actions button{background:var(--k-surface-3);min-height:50px;color:var(--k-text);white-space:nowrap;border:0;border-radius:99px;font-size:15px;font-weight:800}.k-rest-actions button.primary{background:var(--k-accent);color:#1a0a00}@media (prefers-reduced-motion:reduce){.k-rest,.k-progress>i,.k-set,.k-check{transition:none;animation:none}}.k-dur{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.k-dur legend{color:var(--text-2);margin-bottom:8px;padding:0;font-size:14px}.k-dur-row{gap:10px;display:flex}.k-dur-part{background:var(--k-surface-2);cursor:text;border-radius:16px;flex:1 1 0;align-items:baseline;gap:6px;min-width:0;padding:8px 14px;display:flex}.k-dur-part:focus-within{box-shadow:inset 0 0 0 2px var(--k-accent)}.k-dur-part input{width:100%;min-width:0;min-height:44px;color:var(--k-text);font-variant-numeric:tabular-nums;text-align:right;background:0 0;border:0;outline:none;padding:0;font-size:28px;font-weight:800}.k-dur-part input::placeholder{color:var(--k-text-3)}.k-dur-part span{color:var(--k-text-3);font-size:14px;font-weight:700}.k-dur.invalid .k-dur-part{box-shadow:inset 0 0 0 2px var(--k-danger)}.k-dur-error{color:var(--k-danger);font-size:14px;font-weight:600}
