@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/inter-cyrillic-400-obahsSVq.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-cyrillic-600-CWCymEST.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/inter-cyrillic-700-CjBOestx.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/jetbrains-mono-cyrillic-500-DmUKJPL_.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/jetbrains-mono-cyrillic-700-BWTpRfYl.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/inter-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/inter-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/jetbrains-mono-latin-6fWv1k7M.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/jetbrains-mono-latin-6fWv1k7M.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0e1116;--bg-deep: #0a0c10;--surface: #161b24;--surface-elevated: #1d2432;--surface-sunken: #252e3f;--border: rgba(255, 255, 255, .08);--border-soft: rgba(255, 255, 255, .15);--text: #f6f8fc;--text-muted: #96a0b4;--text-dim: #68738c;--primary: #4c8dff;--primary-pressed: #3a78ee;--primary-hi: #7cacff;--primary-grad: linear-gradient(135deg, #5f9bff, #3a78ee);--primary-soft: rgba(76, 141, 255, .16);--primary-mid: rgba(76, 141, 255, .42);--primary-strong: rgba(76, 141, 255, .78);--primary-border: rgba(76, 141, 255, .22);--on-primary: #06101f;--success: #34c77b;--success-soft: rgba(52, 199, 123, .15);--success-heat-1: rgba(76, 141, 255, .2);--success-heat-2: rgba(76, 141, 255, .42);--success-heat-3: rgba(76, 141, 255, .78);--success-border: rgba(52, 199, 123, .3);--primary-border: rgba(76, 141, 255, .24);--primary-glow: rgba(76, 141, 255, .22);--surface-hero: linear-gradient(155deg, #1c2634 0%, #161b24 65%);--warning: #e8aa45;--warning-soft: rgba(232, 170, 69, .15);--danger: #ef6673;--danger-soft: rgba(239, 102, 115, .15);--danger-border: rgba(239, 102, 115, .3);--gold: #e3b341;--gold-soft: rgba(227, 179, 65, .15);--gold-border: rgba(227, 179, 65, .3);--gold-grad: linear-gradient(135deg, #f0c75e, #d69b23);--on-gold: #14161c;--neutral-soft: rgba(150, 160, 180, .16);--overlay: rgba(0, 0, 0, .55);--overlay-strong: rgba(0, 0, 0, .6);--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--radius-card: 20px;--radius-control: 14px;--radius-tile: 16px;--tabbar-h: 82px;--screen-header-h: 70px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--focus-ring-color: var(--primary);--focus-ring: 0 0 0 3px rgba(76, 141, 255, .42);--shadow-card: 0 4px 18px rgba(0, 0, 0, .38);--shadow-elevated: 0 16px 40px rgba(0, 0, 0, .5);--shadow-primary: 0 4px 12px rgba(76, 141, 255, .4);--shadow-start: 0 8px 24px rgba(76, 141, 255, .35);--shadow-seg: 0 1px 5px rgba(0, 0, 0, .3);--bg-glass: rgba(14, 17, 22, .95);--motion-fast: .13s;--motion-base: .2s;--motion-slow: .32s;--motion-ease: cubic-bezier(.2, 0, 0, 1);--ease: cubic-bezier(.2, 0, 0, 1)}:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.pill-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:4px 12px;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap}.pill-badge__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.pill-badge--neutral{background:var(--neutral-soft);color:var(--text-muted)}.pill-badge--primary{background:var(--primary-soft);color:var(--primary)}.pill-badge--success{background:var(--success-soft);color:var(--success)}.pill-badge--warning{background:var(--warning-soft);color:var(--warning)}.pill-badge--danger{background:var(--danger-soft);color:var(--danger)}.pill-badge--gold{background:var(--gold-soft);color:var(--gold)}.progress-ring{display:block}.progress-ring__track{stroke:var(--surface-sunken)}.progress-ring__value{stroke:var(--primary);stroke-linecap:round;transition:stroke-dashoffset var(--motion-base) var(--motion-ease)}.progress-ring__label{fill:var(--text);font-family:var(--font-mono);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.skeleton{display:block;border-radius:var(--radius-control);background:linear-gradient(100deg,var(--surface) 40%,var(--surface-elevated) 50%,var(--surface) 60%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton--line{width:100%;height:16px}.skeleton--card{width:100%;height:96px;border-radius:var(--radius-card)}.skeleton--list .skeleton__row{width:100%;height:48px;margin-bottom:var(--space-2)}.skeleton--list .skeleton__row:last-child{margin-bottom:0}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);border:1px dashed var(--border);border-radius:var(--radius-card);background:var(--surface);text-align:center}.empty-state__icon{display:inline-flex;align-items:center;justify-content:center;line-height:0}.empty-state__title{margin:0;font-family:var(--font-body);font-size:18px;font-weight:600;color:var(--text)}.empty-state__description{margin:0;max-width:320px;font-family:var(--font-body);font-size:14px;color:var(--text-muted)}.empty-state__action{margin-top:var(--space-2);min-height:48px;padding:0 var(--space-5);border:none;border-radius:var(--radius-control);background:var(--primary);color:var(--on-primary);font-family:var(--font-body);font-size:16px;font-weight:600}.empty-state__action:active{background:var(--primary-pressed)}.metric-chart{width:100%;height:auto;display:block}.metric-chart__line{fill:none;stroke:var(--primary);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.metric-chart__point,.metric-chart__point--single{fill:var(--primary)}.home__body-preview{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);margin-top:var(--space-3)}.goals-preview{display:flex;flex-direction:column;gap:var(--space-1)}.goals-preview__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-1)}.goals-preview__title{margin:0;font-size:19px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.goals-preview__row{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:56px;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);padding:var(--space-2) 0;cursor:pointer;text-align:left}.goals-preview__row:last-child{border-bottom:none}.goals-preview__mid{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.goals-preview__name{font-size:14.5px;font-weight:500;overflow-wrap:anywhere}.goals-preview__numbers{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:12px}.goals-preview__row>svg{flex:0 0 auto;color:var(--text-dim)}.calendar__streak{display:flex;align-items:center;gap:var(--space-4)}.calendar__streak-value{margin:0 0 var(--space-1);font-size:20px;font-weight:700}.calendar__streak-meta{margin:0;color:var(--text-muted);font-size:14px}.calendar__month-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.calendar__month-title{margin:0;font-size:18px}.calendar__month-nav{min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-elevated);color:var(--text);font-size:22px;cursor:pointer}.calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar__weekday{text-align:center;color:var(--text-muted);font-size:12px;padding:var(--space-1) 0}.calendar__cell{min-height:44px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px;cursor:pointer}.calendar__cell--outside{color:var(--text-muted);opacity:.55}.calendar__cell--scheduled{background:transparent;border-color:var(--primary);color:var(--primary);font-weight:600}.calendar__cell--marked{background:var(--success-soft);border-color:var(--success-border);color:var(--success);font-weight:600}.calendar__cell--scheduled.calendar__cell--marked{background:var(--success-soft);border-color:var(--primary);color:var(--success)}.calendar__cell--today{background:var(--primary);border-color:var(--primary);color:var(--on-primary);font-weight:700}.calendar__cell--selected{outline:2px solid var(--primary);outline-offset:-2px}.calendar__legend{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2);color:var(--text-muted);font-size:12px}.calendar__legend-item{display:inline-flex;align-items:center;gap:var(--space-1)}.calendar__legend-marker{width:12px;height:12px;border-radius:var(--radius-control)}.calendar__legend-marker--scheduled{background:transparent;border:1px solid var(--primary)}.calendar__legend-marker--completed{background:var(--success-soft);border:1px solid var(--success-border)}.calendar__day-title{margin:0 0 var(--space-1);font-size:16px}.calendar__day-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-1)}.calendar__day-head .calendar__day-title{margin:0}.calendar__day-workout{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-2) 0}.calendar__day-workout-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--surface-elevated);color:var(--primary);flex-shrink:0}.calendar__day-line{margin:0;color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.calendar__error,.goals__error,.body-metrics__error,.achievements__error{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.goals__tabs{display:flex;gap:var(--space-5);margin-bottom:var(--space-1);border-bottom:1px solid var(--border)}.goals__tab{position:relative;flex:0 0 auto;min-height:44px;padding:0 0 11px;border:none;border-radius:0;background:transparent;color:var(--text-dim);font-size:15px;font-weight:600;cursor:pointer;transition:color var(--motion-fast) ease}.goals__tab:hover{color:var(--text-muted)}.goals__tab--active{background:transparent;color:var(--text)}.goals__tab--active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:var(--primary)}.goal-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.goal-card__name{margin:0;font-size:17px}.goal-card__muscle{margin:2px 0 0;color:var(--text-muted);font-size:14px}.goal-card__range{margin:2px 0 0;color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px}.goal-card__bar{position:relative;height:8px;margin-top:var(--space-3);border-radius:var(--radius-pill, 999px);background:var(--surface-sunken);overflow:hidden}.goal-card__bar-fill{position:absolute;inset:0 auto 0 0;min-width:8px;border-radius:inherit;background:var(--primary-grad)}.goal-card__remaining{margin:var(--space-2) 0 0;color:var(--text-dim);font-size:13px}.goal-card__body{display:flex;align-items:center;gap:var(--space-4);margin-top:var(--space-3)}.goal-card__numbers{display:flex;gap:var(--space-4);margin:0}.goal-card__num{display:flex;flex-direction:column}.goal-card__num dt{color:var(--text-muted);font-size:12px}.goal-card__num dd{margin:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.goal-card__engine{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:14px}.goal-card__actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.goal-form{margin-top:var(--space-3)}.goal-form__title{margin:0 0 var(--space-2);font-size:17px}.goal-form__exercise{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-2)}.goal-form__picked{min-height:48px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-elevated);color:var(--text);font-size:16px;text-align:left;padding:0 var(--space-3);cursor:pointer}.goal-form__field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-2)}.goal-form__label{color:var(--text-muted);font-size:14px}.goal-form__input{min-height:48px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-elevated);color:var(--text);font-size:16px;padding:0 var(--space-3)}.goal-form__actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.goals__create{width:100%;margin-top:var(--space-3)}.goal-confirm,.body-metrics__confirm{margin-top:var(--space-3);border:1px solid var(--warning)}.goal-confirm__text,.body-metrics__confirm-text{margin:0 0 var(--space-2)}.goal-confirm__actions,.body-metrics__confirm-actions{display:flex;gap:var(--space-2)}.body-metrics__latest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);margin-top:var(--space-2)}.body-metrics__latest-item{display:flex;flex-direction:column}.body-metrics__delta{align-self:flex-start;margin-top:2px;padding:1px 8px;border-radius:var(--radius-pill, 999px);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.body-metrics__delta--up{background:var(--success-soft);color:var(--success)}.body-metrics__delta--down{background:var(--danger-soft);color:var(--danger)}.body-metrics__latest-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:18px;font-weight:600}.body-metrics__latest-label{color:var(--text-muted);font-size:12px}.body-metrics__latest-date{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:14px}.body-metrics__chart-card{margin-top:var(--space-3)}.body-metrics__section-title{margin:0 0 var(--space-2);font-size:19px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.body-metrics__pills{display:flex;flex-wrap:nowrap;gap:var(--space-1);margin-bottom:var(--space-2);overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.body-metrics__pills::-webkit-scrollbar{display:none}.body-metrics__pill{flex:0 0 auto;min-height:44px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--text-muted);font-size:14px;cursor:pointer}.body-metrics__pill--active{background:var(--primary-soft);border-color:var(--primary);color:var(--text);font-weight:600}.body-metrics__rows{list-style:none;margin:0;padding:0}.body-metrics__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.body-metrics__row:last-child{border-bottom:none}.body-metrics__row-main{display:flex;flex-direction:column;min-width:0}.body-metrics__row-date{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px}.body-metrics__row-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:14px}.body-metrics__row-note{color:var(--text-muted);font-size:13px}.body-metrics__row-actions{display:flex;gap:var(--space-1)}.body-metrics__row-button{min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-elevated);color:var(--text);cursor:pointer}.body-metrics__row-button--danger{color:var(--danger)}.body-form{margin-top:var(--space-3)}.body-form__title{margin:0 0 var(--space-2);font-size:17px}.body-form__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.body-form__field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-2);min-width:0}.body-form__label{color:var(--text-muted);font-size:14px}.body-form__input{width:100%;min-width:0;min-height:48px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-elevated);color:var(--text);font-size:16px;padding:0 var(--space-3)}.body-form__actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.achievements__progress{display:flex;flex-direction:column;gap:var(--space-2)}.achievements__progress-head{display:flex;align-items:center;justify-content:space-between}.achievements__progress-label{font-size:14px;font-weight:600;color:var(--text-muted)}.achievements__progress-percent{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700;color:var(--gold)}.achievements__progress-bar{position:relative;height:8px;border-radius:var(--radius-pill, 999px);background:var(--surface-sunken);overflow:hidden}.achievements__progress-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--gold-grad)}.achievements__progress-caption{margin:0;color:var(--text-dim);font-size:13px}.achievements__section-label{display:inline-flex;align-items:center;gap:var(--space-1);margin:var(--space-3) 0 var(--space-2);color:var(--text-muted);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.achievements__section-label--gold{color:var(--gold)}.achievements__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.achievement-card{display:flex;flex-direction:column;align-items:center;gap:7px;padding:var(--space-4) var(--space-3);text-align:center}.achievement-card--locked{opacity:.55}.achievement-card--unlocked{border:1px solid var(--border)}.achievement-card__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--gold-soft);border:1px solid var(--gold-border);color:var(--gold);line-height:0}.achievement-card--locked .achievement-card__icon{background:var(--surface-elevated);border-color:transparent;color:var(--text-dim)}.achievement-card__title{margin:var(--space-1) 0 0;font-size:13.5px;font-weight:600}.achievement-card__description{margin:0;color:var(--text-muted);font-size:11px;line-height:1.35}.achievement-card__unlock{margin:var(--space-1) 0 0;color:var(--text-dim);font-size:11px}.achievement-card__progress{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.achievement-card__progress .progress-ring__value{stroke:var(--gold)}.achievement-card__progress-text{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:13px}.stat-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-tile)}.stat-card__title{font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:600;color:var(--text-muted);order:2}.stat-card__value{order:1;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.stat-card__hint{order:3;font-size:12px;color:var(--text-muted)}.stats-screen__period{margin-bottom:var(--space-3)}.stats-screen__kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}.stats-screen__section{margin-bottom:var(--space-3)}.stats-screen__section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.stats-screen__section-title{margin:0;font-size:19px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.stats-screen__section-hint{margin:0;font-size:12px;color:var(--text-dim)}.stats-screen__heat-legend{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-3)}.stats-screen__heat-scale{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim)}.stats-screen__muscle-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-3)}.stats-screen__muscle-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.stats-screen__muscle-list li{display:flex;justify-content:space-between;gap:var(--space-2);font-size:13px}.stats-screen__list-title{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:600;color:var(--text-muted)}.stats-screen__list-title--warn{color:var(--warning)}.stats-screen__list-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:700}.stats-screen__list-value--zero{color:var(--text-dim);font-weight:400}.stats-screen__list-empty{margin:0;display:inline-flex;align-items:center;gap:var(--space-1);font-size:13px;color:var(--text-muted)}.stats-screen__section-head .pill-badge{display:inline-flex;align-items:center;gap:5px}.stats-screen__section-head .pill-badge svg{width:14px;height:14px}.muscle-map{display:flex;justify-content:center;gap:var(--space-2)}.muscle-map__svg{width:46%;max-width:220px;height:auto}.muscle-map__group--clickable{cursor:pointer}.muscle-map__group--clickable:focus-visible{outline:var(--focus-ring, 2px solid var(--primary));outline-offset:2px}.activity-heatmap{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,9px);grid-auto-columns:9px;gap:2.5px;overflow-x:auto;padding-bottom:var(--space-1);scrollbar-width:none}.activity-heatmap::-webkit-scrollbar{display:none}.activity-heatmap__cell{width:9px;height:9px;border-radius:2.5px;background:var(--surface-elevated)}.activity-heatmap__cell--level-0{background:var(--surface-elevated)}.activity-heatmap__cell--level-1{background:var(--success-heat-1)}.activity-heatmap__cell--level-2{background:var(--success-heat-2)}.activity-heatmap__cell--level-3{background:var(--success-heat-3)}.activity-heatmap__cell--level-4{background:var(--primary)}.volume-chart{min-height:112px}.volume-chart__svg{display:block;width:100%;height:96px}.volume-chart__bar{fill:var(--primary)}.volume-chart__labels{display:flex;margin-top:6px}.volume-chart__label{flex:1;min-width:0;text-align:center;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:10px;color:var(--text-dim)}.volume-chart__caption{margin:6px 0 0;font-size:12px;color:var(--text-muted)}.volume-chart__empty{margin:0;font-size:13px;color:var(--text-muted)}.pr-list{list-style:none;margin:0;padding:0}.pr-list__row{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"icon name e1rm" "icon detail detail";align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.pr-list__row:last-child{border-bottom:0}.pr-list__icon{grid-area:icon;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--gold-soft);color:var(--gold);flex:0 0 auto}.pr-list__name{grid-area:name;font-size:14.5px;font-weight:500;text-align:left}.pr-list__name--link{display:flex;align-items:center;min-height:44px;color:var(--text);background:none;border:none;padding:0;cursor:pointer}.pr-list__name--link:hover{color:var(--primary)}.pr-list__e1rm{grid-area:e1rm;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.pr-list__detail{grid-area:detail;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--text-muted)}.pr-list__empty{margin:0;font-size:13px;color:var(--text-muted)}.delta{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.delta--up{color:var(--success);background:var(--success-soft)}.delta--down{color:var(--danger);background:var(--danger-soft)}.delta--flat{color:var(--text-muted);background:var(--surface-elevated)}.chip-row{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-ms-overflow-style:none}.chip-row::-webkit-scrollbar{display:none}.chip-row>*{flex:0 0 auto}.chip{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 13px;border-radius:var(--radius-pill, 999px);border:1px solid var(--border);background:var(--surface-elevated);color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:color var(--motion-fast) ease,border-color var(--motion-fast) ease,background var(--motion-fast) ease}.chip:hover{color:var(--text);border-color:var(--border-soft)}.chip:active{transform:scale(.97)}.chip:disabled{opacity:.45;pointer-events:none}.chip--active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.catalog__filters{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--space-3, 12px)}.catalog__by-muscle{margin-bottom:var(--space-3, 12px);display:flex;flex-direction:column;gap:8px}.screen-header__actions{display:flex;gap:6px}.plan-dialog{position:fixed;inset:0;z-index:40;display:flex;align-items:flex-end;justify-content:center}.plan-dialog__backdrop{position:absolute;inset:0;background:var(--overlay)}.plan-dialog__card{position:relative;width:min(480px,100%);max-height:80vh;overflow-y:auto;display:flex;flex-direction:column;gap:8px;border-radius:var(--radius-card, 14px) var(--radius-card, 14px) 0 0}.plan-dialog__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.plan-dialog__template{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-control, 10px);background:var(--surface-elevated);color:var(--text);cursor:pointer}.plan-dialog__template:disabled{opacity:.6}.plan-dialog__template-name{font-size:14px}.plan-dialog__template-meta{font-size:12px;color:var(--text-muted);white-space:nowrap}.plan-dialog__actions{display:flex;justify-content:flex-end}.set-table__extras{display:flex;flex-direction:column;gap:4px;padding:4px 0 8px 20px;border-left:2px solid var(--border-soft);margin-left:10px}.set-table__extra-row{display:flex;align-items:center;gap:8px;font-size:13px}.set-table__extra-row--burst .set-table__extra-label{color:var(--warning)}.set-table__extra-label{min-width:84px;color:var(--text-muted)}.set-table__extra-weight{font-variant-numeric:tabular-nums}.set-table__extra-stepper{flex:1}.set-table__extra-delete{margin-left:auto;width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--danger-soft);color:var(--danger);cursor:pointer}.set-table__extra-actions{display:flex;gap:6px}.set-table__extra-button{padding:4px 10px;border-radius:var(--radius-pill, 999px);border:1px solid var(--border);background:var(--surface-elevated);color:var(--success);font-size:12px;cursor:pointer}.set-table__extra-button:disabled{opacity:.6}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.4;-webkit-tap-highlight-color:transparent}h1,h2{font-family:var(--font-body);font-weight:700;letter-spacing:-.02em}.stepper__value,.rest-timer-screen__clock,.home__volume-value,.progress-summary__value,.history-entry__line,.progress-ring__label{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.app{max-width:520px;margin:0 auto;padding:calc(var(--space-5) + env(safe-area-inset-top)) var(--space-4) calc(var(--tabbar-h) + var(--space-4))}.app__dev-banner{margin:8px 0;padding:10px 12px;border-radius:12px;background:var(--warning-soft);color:var(--text);font-size:14px}.screen{display:flex;flex-direction:column;gap:var(--space-4)}.screen__status{margin:4px 0;color:var(--text-muted)}.screen__status--error{color:var(--danger);font-weight:600}.screen__hint{margin:4px 0;color:var(--text-muted);font-size:14px}.section-title{margin:12px 0 4px;font-size:19px;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border:none;border-radius:var(--radius-control);font-size:16px;font-weight:600;cursor:pointer;transition:filter var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease),background var(--motion-fast) ease,opacity var(--motion-fast) ease}.button:hover{filter:brightness(1.09)}.button:active{transform:scale(.976);filter:none}.button:disabled{opacity:.45;pointer-events:none}.button--primary{background:var(--primary);color:var(--on-primary)}.button--secondary{background:var(--surface-elevated);color:var(--text);border:1px solid var(--border)}.button--ghost{background:transparent;color:var(--text-muted)}.button--ghost:hover{color:var(--text);background:var(--surface-elevated);filter:none}.button--danger{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger-border)}.button--outline{background:transparent;color:var(--text);border:1px solid var(--border-soft);min-height:46px;padding:0 16px;font-size:15px}.button--sm{min-height:44px;padding:0 14px;border-radius:var(--radius-pill);font-size:14px}.button--full{width:100%}.field{display:flex;align-items:center;gap:9px;min-height:46px;padding:0 13px;border-radius:var(--radius-control);background:var(--surface-elevated);border:1px solid var(--border);color:var(--text-muted)}.field input{flex:1;min-width:0;border:none;background:transparent;color:var(--text);font-size:16px}.field input::placeholder{color:var(--text-dim)}.field--focus,.field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.screen-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;min-height:var(--screen-header-h);padding:12px 4px;background:var(--bg);box-sizing:border-box}.screen-header__back,.screen-header__right{flex:0 0 auto}.screen-header__back{width:44px;height:44px;border:none;border-radius:10px;background:transparent;color:var(--text);font-size:22px;cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.screen-header__back:hover{background:var(--surface-elevated)}.screen-header__back:active{transform:scale(.94)}.screen-header__back:disabled{opacity:.45}.screen-header__titles{flex:1;min-width:0}.screen-header__title{margin:0;font-size:19px;font-weight:700;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-header__subtitle{margin:1px 0 0;color:var(--text-muted);font-size:12px;display:flex;align-items:center;gap:6px}.screen-header__right{display:flex;align-items:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-4);box-shadow:var(--shadow-card)}.home__active-banner{background:var(--primary);color:var(--on-primary);border-radius:var(--radius-card);padding:14px;display:flex;flex-direction:column;gap:10px}.home__active-text{margin:0;font-weight:700}.home__cards{display:flex;flex-direction:column;gap:12px}.template-card__head{display:flex;align-items:center;gap:8px}.template-card__name{margin:0;font-size:16px;font-weight:600;letter-spacing:-.015em;overflow-wrap:anywhere}.template-card__meta{margin:4px 0 0;color:var(--text-muted);font-size:13px}.template-card__list{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--text-dim)}.template-card__actions{margin-top:12px;display:flex;flex-direction:column;gap:8px}.template-card__actions-row{display:flex;gap:8px}.template-card__actions-row .button:first-child{flex:1}.template-card__actions-row .button:last-child{flex:0 0 auto}.workouts-tabs{display:flex;gap:var(--space-5);padding:0;border-radius:0;border-bottom:1px solid var(--border);background:transparent}.workouts-tabs__tab{position:relative;flex:0 0 auto;min-height:44px;padding:0 0 11px;border:none;border-radius:0;background:transparent;color:var(--text-dim);font-size:15px;font-weight:600;cursor:pointer;transition:color var(--motion-fast) ease}.workouts-tabs__tab:hover{color:var(--text)}.workouts-tabs__tab:active{transform:scale(.98)}.workouts-tabs__tab:disabled{opacity:.45}.workouts-tabs__tab--active{background:transparent;color:var(--text)}.workouts-tabs__tab--active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:var(--primary)}.workouts-history-filters{display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.workouts-history-filters::-webkit-scrollbar{display:none}.workouts-history-filters__chip{flex:0 0 auto;min-height:44px;padding:6px 14px;border:none;border-radius:999px;background:var(--surface);color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.workouts-history-filters__chip--active{background:var(--primary);color:var(--on-primary)}.history-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.history-summary__tile{display:flex;flex-direction:column;gap:4px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-tile);background:var(--surface);min-width:0}.history-summary__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-summary__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.workouts-history{display:flex;flex-direction:column;gap:8px}.workouts-history__row{display:block;width:100%;border:none;border-left:3px solid var(--text-muted);border-radius:12px;padding:12px 14px;background:var(--surface);color:var(--text);text-align:left}.workouts-history__row--clickable{cursor:pointer}.workouts-history__row:has(.workouts-history__status--completed){border-left-color:var(--success)}.workouts-history__row:has(.workouts-history__status--active){border-left-color:var(--primary)}.workouts-history__row:has(.workouts-history__status--cancelled){border-left-color:var(--danger)}.workouts-history__row-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.workouts-history__name{font-size:16px;font-weight:700;overflow-wrap:anywhere}.workouts-history__status{padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.workouts-history__status--completed{background:var(--success-soft);color:var(--success)}.workouts-history__status--active{background:var(--primary-soft);color:var(--primary)}.workouts-history__status--cancelled{background:var(--danger-soft);color:var(--danger)}.workouts-history__date{margin:4px 0 0;color:var(--text-muted);font-size:13px}.workouts-history__meta{margin:2px 0 0;color:var(--text-muted);font-size:13px;font-variant-numeric:tabular-nums}.home__footer-nav{display:flex;flex-direction:column;gap:8px;margin-top:8px}.recommendation{background:var(--primary-soft);border:1px solid var(--primary-border);border-radius:var(--radius-control);padding:12px}.recommendation__head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.recommendation__today{font-size:16px}.recommendation__target{margin:10px 0 0;font-size:18px}.recommendation__previous{margin:4px 0 0;color:var(--text-muted);font-size:15px}.recommendation__hint{margin:10px 0 0;font-size:15px;font-weight:600}.recommendation__reason-text{margin:4px 0 0;color:var(--text-muted);font-size:14px}.set-table{display:flex;flex-direction:column;gap:10px}.set-table__table{width:100%;border-collapse:collapse;font-size:14px}.set-table__table th{color:var(--text-muted);font-weight:600;font-size:12px;text-align:center;padding:4px;border-bottom:1px solid var(--border)}.set-table__table td{text-align:center;padding:6px 4px;font-variant-numeric:tabular-nums;border-bottom:1px solid var(--border)}.set-table__row--current{background:var(--primary-soft)}.set-table__row--done .set-table__cell{color:var(--text)}.set-table__cell--num{color:var(--text-muted);font-weight:700}.set-table__cell--muted{color:var(--text-muted)}.set-table__cell--check{width:32px}.set-table__check{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--border-soft);border-radius:6px;background:transparent;color:var(--text);font-size:14px;cursor:pointer;padding:0}.set-table__check--done{border-color:var(--success);background:var(--success);color:var(--on-primary);cursor:default}.set-table__check--empty{border-color:var(--border);cursor:default}.set-table__grid{width:100%;font-size:14px}.set-table__grid-head,.set-table__cells{display:grid;grid-template-columns:24px 1fr 1fr 1fr 1fr 38px;gap:4px;align-items:center}.set-table__grid-head-cell{color:var(--text-dim);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.09em;text-align:center;padding:0 4px 2px}.set-table__grid-head-cell--check{width:38px}.set-table__grid-row{position:relative;overflow:hidden;border-radius:var(--radius-control);border-bottom:1px solid var(--border);touch-action:pan-y}.set-table__grid-row--current{background:var(--primary-soft)}.set-table__cells{position:relative;z-index:1;min-height:44px;padding:0 8px;border-radius:var(--radius-control);background:var(--surface-elevated);border:1px solid transparent;font-family:var(--font-mono);font-variant-numeric:tabular-nums;transition:transform .2s ease-out,background var(--motion-fast) ease}.set-table__grid-row--current .set-table__cells{background:var(--primary-soft);border-color:var(--primary)}.set-table__grid-row--done .set-table__cells{background:var(--surface)}.set-table__cells--dragging{transition:none}.set-table__gcell{min-width:0;text-align:center;padding:6px 4px;font-variant-numeric:tabular-nums}.set-table__grid-row--done .set-table__gcell{color:var(--text)}.set-table__gcell--num{color:var(--text-muted);font-weight:700}.set-table__gcell--muted{color:var(--text-muted)}.set-table__gcell--check{width:38px}.set-table__check{width:30px;height:30px;border-radius:9px}button.set-table__check,.set-table__check--target{width:44px;height:44px;border-radius:12px;background:var(--primary);border-color:transparent;color:var(--on-primary)}button.set-table__check:hover:not(:disabled){filter:brightness(1.09)}.set-table__delete-slot{position:absolute;top:0;bottom:0;right:0;width:64px;display:flex;align-items:stretch}.set-table__delete{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;border:none;background:var(--danger);color:var(--on-primary);font-family:var(--font-body);font-size:11px;font-weight:600;cursor:pointer;padding:4px}.set-table__delete:disabled{opacity:.6;cursor:default}.set-table__delete-label{line-height:1}.set-table__difficulty{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;background:var(--surface-elevated);border-radius:var(--radius-control)}.set-table__difficulty-button{min-height:44px;border:none;border-radius:calc(var(--radius-control) - 4px);background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer;padding:4px;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.set-table__difficulty-button:hover{color:var(--text)}.set-table__difficulty-button:active{transform:scale(.97)}.set-table__difficulty-button:disabled{opacity:.45}.set-table__difficulty-button--active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-seg)}.set-table__flags{display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.set-table__flag{flex:0 0 auto;min-height:44px;padding:0 13px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-elevated);color:var(--text-muted);font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease}.set-table__flag:hover{color:var(--text)}.set-table__flag:disabled{opacity:.45}.set-table__flag--active{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger)}.set-table__group-label{color:var(--text-muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.09em}.set-table__deviation{margin:0;color:var(--warning);font-size:14px}.set-table__add{width:100%}.set-table__meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:8px}.set-table__meta-field{display:flex;flex-direction:column;gap:4px;min-width:0}.set-table__meta-label{color:var(--text-muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.set-table__select{width:100%;min-height:48px;padding:8px 10px;border:1px solid var(--surface-elevated);border-radius:12px;background-color:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-size:5px 5px;background-repeat:no-repeat}.set-table__select:disabled{opacity:.6}.workout-exercise__replace-hint{margin:0;color:var(--text-muted);font-size:13px}.workout-exercise__recalc{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-left:3px solid var(--warning);border-radius:var(--radius-control);background:var(--warning-soft)}.workout-exercise__recalc-title{margin:0;font-size:14px;font-weight:700}.workout-exercise__recalc-text{margin:0;color:var(--text-muted);font-size:13px;line-height:1.4}.workout-exercise__recalc-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rest-dock{position:fixed;left:var(--space-3);right:var(--space-3);bottom:calc(var(--tabbar-h) + var(--space-4) + env(safe-area-inset-bottom));z-index:16;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-tile);background:var(--surface-elevated);border:1px solid var(--border-soft);box-shadow:var(--shadow-elevated)}.rest-dock__expand{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;min-height:44px;padding:0;border:none;background:transparent;color:var(--text);text-align:left;cursor:pointer}.rest-dock__ring{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:0}.rest-dock__ring-track{stroke:var(--surface-sunken)}.rest-dock__ring-progress{stroke:var(--primary);transition:stroke-dashoffset var(--motion-base, .2s) var(--ease)}.rest-dock__body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.rest-dock__title{font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.rest-dock__clock{font-variant-numeric:tabular-nums}.rest-dock__next{font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rest-dock__skip{flex:0 0 auto;min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-control);border:1px solid var(--border);background:transparent;color:var(--text-muted);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;transition:color var(--motion-fast, .13s) var(--ease),border-color var(--motion-fast, .13s) var(--ease)}.rest-dock__skip:hover,.rest-dock__skip:active{color:var(--text);border-color:var(--border-soft)}.rest-dock__expand:focus-visible,.rest-dock__skip:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.rest-timer-screen--collapsed{visibility:hidden;pointer-events:none}.rest-timer-screen{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;gap:18px;padding:20px 20px calc(20px + env(safe-area-inset-bottom));background:var(--bg-deep);overflow-y:auto}.rest-timer-screen__title{margin:0;font-size:18px;font-weight:700}.rest-timer-screen__header{display:flex;align-items:center;gap:8px;width:100%;max-width:340px;padding-bottom:12px;border-bottom:1px solid var(--border)}.rest-timer-screen__back{width:44px;height:44px;border:none;background:transparent;color:var(--text);font-size:22px;cursor:pointer}.rest-timer-screen__dial{position:relative;width:min(85vw,340px);height:min(85vw,340px)}.rest-timer-screen__ring{width:100%;height:100%}.rest-timer-screen__ring-track{stroke:var(--surface-sunken)}.rest-timer-screen__ring-progress{stroke:var(--primary);transition:stroke-dashoffset .3s linear}.rest-timer-screen__dial-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.rest-timer-screen__rest-label{color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.rest-timer-screen__clock{font-size:64px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.rest-timer-screen__default{color:var(--text-muted);font-size:14px}.rest-timer-screen__sound-indicator{display:inline-flex;align-items:center;gap:var(--space-1, 4px);color:var(--text-muted);font-size:14px;font-weight:600}.rest-timer-screen__controls{display:flex;align-items:center;gap:20px}.rest-timer-screen__round{width:52px;height:52px;border:none;border-radius:50%;background:var(--surface-elevated);color:var(--text);font-size:17px;font-weight:700;cursor:pointer}.rest-timer-screen__pause{width:72px;height:72px;border:none;border-radius:50%;background:var(--primary);color:var(--on-primary);cursor:pointer;display:flex;align-items:center;justify-content:center}.rest-timer-screen__skip{min-height:48px;width:100%;max-width:340px;border:none;border-radius:14px;background:var(--surface-elevated);color:var(--text);font-size:16px;font-weight:600;cursor:pointer;padding:10px 20px}.rest-timer-screen__group{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%;max-width:320px}.rest-timer-screen__group-label{color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.rest-timer-screen__chips{display:flex;flex-wrap:wrap;gap:8px;width:100%}.rest-timer-screen__chip{min-height:44px;border:none;border-radius:999px;background:var(--surface-elevated);color:var(--text);font-size:14px;font-weight:600;cursor:pointer;padding:6px 14px}.rest-timer-screen__chip--active{background:var(--primary);color:var(--on-primary)}.rest-timer-screen__last{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;max-width:320px;padding:12px 14px;border-radius:14px;background:var(--surface-elevated)}.rest-timer-screen__last-set{font-size:16px;font-weight:700}.rest-timer-screen__next{color:var(--text-muted);font-size:13px;text-align:left}.workout__blocks{display:flex;flex-direction:column;gap:14px}.workout-exercise{display:flex;flex-direction:column;gap:10px;scroll-margin-top:76px}.workout-exercise__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 8px}.workout-exercise__title{display:flex;align-items:flex-start;gap:10px;min-width:0;flex:1 1 100%}.workout-exercise__number{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-size:14px;font-weight:700}.workout-exercise__titles{min-width:0}.workout-exercise__technique{min-height:44px;padding:0 11px;border:1px solid var(--primary);border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);font:inherit;font-size:12.5px;font-weight:600;text-align:left;cursor:pointer}.workout-exercise__technique:active{color:var(--primary-pressed)}.catalog-row__thumb{flex-shrink:0;width:48px;height:48px;border-radius:10px;object-fit:cover;background:var(--neutral-soft)}.exercise-technique-card{display:flex;flex-direction:column;gap:var(--space-3)}.exercise-technique-card__hero{display:flex;align-items:center;gap:var(--space-4)}.exercise-technique-card__media{flex:0 0 144px;width:144px;height:144px;overflow:hidden;border-radius:var(--radius-control);background:var(--surface-elevated)}.exercise-technique-card__image{display:block;width:100%;height:100%;object-fit:contain}.exercise-technique-card__hero-facts,.exercise-technique-card__content,.exercise-technique-card__section{display:flex;min-width:0;flex-direction:column;gap:var(--space-2)}.exercise-technique-card__heading{margin:0;color:var(--text-muted);font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.exercise-technique-card__muscles{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0;padding:0;list-style:none}.exercise-technique-card__muscle{padding:4px 9px;border-radius:var(--radius-pill);font-size:13px;font-weight:600;line-height:1.35}.exercise-technique-card__muscle--primary{background:var(--primary-soft);color:var(--primary)}.exercise-technique-card__muscle--secondary{background:var(--neutral-soft);color:var(--text-muted)}.exercise-technique-card__toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:48px;padding:var(--space-2) 0;border:none;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:transparent;color:var(--text);font:inherit;font-weight:700;text-align:left;cursor:pointer}.exercise-technique-card__toggle:active{color:var(--primary)}.exercise-technique-card__toggle-meta{flex-shrink:0;color:var(--primary);font-size:13px;font-weight:600}.exercise-technique-card__steps{display:grid;gap:var(--space-2);margin:0;padding-left:var(--space-5);color:var(--text);font-size:15px;line-height:1.5}.exercise-technique-card__attribution,.exercise-technique-card__media-status{margin:0;color:var(--text-muted);font-size:12px;line-height:1.4}.exercise-technique-card--modal{gap:var(--space-4)}@media(max-width:359px){.exercise-technique-card__hero{align-items:flex-start;flex-direction:column}}@media(min-width:480px){.exercise-technique-card__hero{align-items:flex-start}.exercise-technique-card__media{flex-basis:180px;width:180px;height:180px}}.modal-overlay{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--overlay)}.modal--technique{width:min(460px,100%);max-height:80vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-elevated)}.modal__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.modal__title{margin:0;font-size:17px}.workout-exercise__name{margin:0;font-size:19px;font-weight:700;overflow-wrap:anywhere}.workout-exercise__meta{margin:4px 0 0;color:var(--text-muted);font-size:14px}.workout-exercise__menu{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:6px;flex:1 1 100%;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.workout-exercise__menu::-webkit-scrollbar{display:none}.workout-exercise__menu>*{flex:0 0 auto}.workout-exercise__menu .button{min-height:44px;padding:0 11px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-elevated);color:var(--text-muted);font-size:12.5px;font-weight:500}.workout-exercise__menu .button:hover:not(:disabled){color:var(--text);border-color:var(--border-soft)}.workout-exercise__order{display:flex;gap:2px}.workout-exercise__menu .workout-exercise__order .button{min-width:40px;padding:4px 10px;font-size:18px;line-height:1}.workout-exercise__footer{display:flex;gap:8px;flex-wrap:wrap}.workout-skipped__row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:4px 0}.workout__add,.workout__finish{display:flex;flex-direction:column;gap:8px;padding:4px 0 calc(12px + env(safe-area-inset-bottom))}.workout__finish .button{width:100%}.summary-decision__head{display:flex;justify-content:space-between;align-items:center;gap:8px}.summary-decision__name{margin:0;font-size:17px;font-weight:700;overflow-wrap:anywhere}.summary-decision__badge--success{background:var(--success-soft);color:var(--success)}.summary-decision__badge--hold{background:var(--neutral-soft);color:var(--text-muted)}.summary-decision__badge--warn{background:var(--warning-soft);color:var(--warning)}.summary-decision__badge{padding:4px 12px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:14px;font-weight:700}.summary-decision__meta{margin:6px 0 0;color:var(--text-muted);font-size:15px}.summary-decision__reason{margin:4px 0 0;font-size:14px}.progress-summary{display:flex;flex-direction:column;gap:6px}.progress-summary__tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.progress-summary__tile{display:flex;flex-direction:column;gap:2px;min-width:0}.progress-summary__muscles{display:flex;flex-wrap:wrap;gap:6px}.progress-summary__value{font-size:21px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-summary__value--gold{color:var(--gold)}.progress-summary__caption{color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;line-height:1.25}.progress-summary__meta{margin:0;color:var(--text-muted);font-size:13px}.progress-summary>.pill-badge{align-self:flex-start}.progress-stats__row{margin:4px 0}.progress-stats__outlook{margin:10px 0 0;font-weight:700;color:var(--primary)}.history-entry__date{margin:0;font-weight:700}.history-entry__line{margin:4px 0 0;color:var(--text-muted);font-size:15px}.editor-name{display:flex;flex-direction:column;gap:6px}.editor-name__label{color:var(--text-muted);font-size:14px}.editor-name__input,.catalog-form__name,.catalog__search,.picker__search,.catalog-form__alias-input{min-height:52px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface);color:var(--text);font-size:17px;padding:10px 14px;width:100%}.editor-entries{display:flex;flex-direction:column;gap:12px}.editor-entry__head{display:flex;justify-content:space-between;gap:8px}.editor-entry__name{margin:0;font-size:17px;font-weight:700;overflow-wrap:anywhere}.editor-entry__meta{margin:2px 0 0;color:var(--text-muted);font-size:14px}.editor-entry__summary{margin:2px 0 0;color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px}.editor-entry__order{display:flex;gap:2px}.editor-entry__order .button{min-height:40px;min-width:40px;padding:4px 10px;font-size:18px}.editor-entry__remove{color:var(--danger)}.editor-entry__steppers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px}.editor-entry__steppers .stepper__label{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-entry__steppers .number-stepper__control{gap:2px}.editor-entry__steppers .stepper__button{width:30px;height:34px;border-radius:9px;font-size:17px}.editor-entry__steppers .number-stepper__field{min-width:0;flex:1}.editor-entry__steppers .stepper__value{min-height:34px;font-size:13px;padding:0 2px;text-align:center}.stepper{display:flex;flex-direction:column;gap:4px}.stepper__label{color:var(--text-muted);font-size:13px}.stepper__button{width:48px;height:48px;border:none;border-radius:12px;background:var(--primary-soft);color:var(--primary);font-size:22px;font-weight:700;cursor:pointer;transition:background var(--motion-fast) ease,transform var(--motion-fast) var(--motion-ease)}.stepper__button:hover{background:var(--primary);color:var(--on-primary)}.stepper__button:active{transform:scale(.94)}.stepper__button:disabled{opacity:.5;pointer-events:none}.number-stepper{display:flex;align-items:center;gap:6px}.number-stepper--stacked{flex-direction:column;align-items:stretch;gap:6px}.number-stepper__control{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.number-stepper__field{display:inline-flex;align-items:baseline;justify-content:center;gap:6px;flex:1;min-width:0}.number-stepper__unit{color:var(--text-muted);font-size:13px}.stepper__value{width:64px;min-width:44px;min-height:44px;padding:0;border:none;background:transparent;color:var(--text);text-align:center;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.stepper__value:disabled{opacity:.5}.number-stepper.set-table__stepper .number-stepper__control{align-items:stretch;gap:8px}.number-stepper.set-table__stepper .number-stepper__field{background:var(--bg);border-radius:12px;padding:4px 8px}.number-stepper.set-table__stepper .stepper__value{flex:1;width:auto;min-width:0;font-size:24px;font-weight:800}.number-stepper.set-table__stepper .stepper__button{width:48px;min-height:44px}.editor-actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}.catalog__toolbar{display:flex;flex-direction:column;gap:8px}.catalog__search-field{display:flex;align-items:center;gap:8px;min-height:46px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface);color:var(--text-dim);padding:0 10px}.catalog__search-field:focus-within{border-color:var(--primary);color:var(--primary)}.catalog__search-field .catalog__search{border:none;background:transparent;min-height:44px;padding:0;flex:1;min-width:0}.catalog__search-clear{display:grid;place-items:center;width:32px;height:32px;border:none;border-radius:50%;background:transparent;color:var(--text-muted);cursor:pointer}.exercise-aliases{color:var(--text-dim)}.exercise-aliases__summary{min-height:44px;display:flex;align-items:center;font-size:12.5px;color:var(--text-muted);cursor:pointer;list-style:none}.exercise-aliases__summary::-webkit-details-marker{display:none}.exercise-aliases__summary:before{content:"▸";margin-right:6px;color:var(--text-dim)}.exercise-aliases[open] .exercise-aliases__summary:before{content:"▾"}.exercise-aliases__list{margin:0 0 var(--space-2);font-size:12px;line-height:1.5;color:var(--text-dim)}.catalog__actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.catalog__create{flex:0 0 auto}.catalog__toggle{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-elevated);color:var(--text-muted);font-size:13px;cursor:pointer}.catalog__toggle:has(input:checked){border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.catalog__toggle:focus-within{outline:2px solid var(--primary);outline-offset:2px}.catalog__toggle input{position:absolute;inset:-1px;margin:0;opacity:0;cursor:pointer}.catalog__toggle:before{content:"";width:16px;height:16px;border-radius:50%;border:1.5px solid currentColor;flex:0 0 auto}.catalog__toggle:has(input:checked):before{background:var(--primary);box-shadow:inset 0 0 0 3px var(--surface)}.catalog__list{display:flex;flex-direction:column;gap:10px}.catalog-row{display:flex;flex-direction:column;gap:8px}.catalog-row__main{display:flex;flex-direction:row;align-items:center;gap:12px;border:none;background:transparent;color:inherit;font:inherit;text-align:left;padding:0;cursor:pointer}.catalog-row__thumb{display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;border-radius:12px;background:var(--surface-elevated);color:var(--text-dim);overflow:hidden}.catalog-row__thumb img{width:100%;height:100%;object-fit:cover}.catalog-row__mid{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.catalog-row__main>svg{flex-shrink:0;color:var(--text-muted)}.catalog-row__name{font-size:16px;font-weight:600;overflow-wrap:anywhere}.catalog-row__meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px;color:var(--text-muted);font-size:13px}.catalog-row__actions{display:flex;gap:8px;flex-wrap:wrap}.catalog-row__archive{color:var(--danger)}.catalog-form,.form-fields{display:flex;flex-direction:column;gap:10px}.form-fields__group{display:flex;flex-direction:column;gap:6px}.form-fields__label{color:var(--text-muted);font-size:14px}.segment{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border-radius:var(--radius-control);background:var(--surface-elevated)}.segment__button{min-height:44px;border:none;border-radius:calc(var(--radius-control) - 4px);background:transparent;color:var(--text-muted);font-size:14px;font-weight:600;cursor:pointer;padding:0 6px;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.segment__button:hover{color:var(--primary)}.segment__button:active{transform:scale(.98)}.segment__button:disabled{opacity:.45}.segment__button--active{background:var(--surface);color:var(--text);box-shadow:0 1px 5px var(--overlay)}.catalog-form__alias{display:flex;gap:8px;align-items:center}.catalog-form__alias-input{flex:1}.catalog-form__actions{display:flex;gap:8px;flex-wrap:wrap}.picker{position:fixed;inset:0;z-index:30;background:var(--overlay-strong);display:flex;align-items:flex-start;justify-content:center;padding:24px 12px}.picker__card{width:100%;max-width:480px;max-height:calc(100% - 48px);background:var(--surface);border-radius:var(--radius-card);padding:14px;display:flex;flex-direction:column;gap:10px;overflow:hidden}.picker__head{display:flex;justify-content:space-between;align-items:center}.picker__title{margin:0;font-size:19px;font-weight:700}.picker__close{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:12px;background:var(--bg);color:var(--text);cursor:pointer}.picker__note{margin:0;color:var(--text-muted);font-size:14px}.picker__list{overflow-y:auto;display:flex;flex-direction:column;gap:6px;min-height:120px}.picker__status{margin:8px 0;color:var(--text-muted)}.picker__status--error{color:var(--danger)}.picker__item{border:none;background:var(--bg);border-radius:12px;padding:10px 12px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-height:56px}.picker__item-name{font-size:16px;font-weight:700;color:var(--text)}.picker__item-meta{font-size:13px;color:var(--text-muted);overflow-wrap:anywhere}.picker__create{width:100%}.workout-progress{position:sticky;top:var(--screen-header-h);z-index:9;display:flex;flex-direction:column;gap:8px;padding-bottom:var(--space-2);background:var(--bg)}.workout-progress__text{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.workout-progress__count{font-size:17px;font-weight:700}.workout-progress__percent{color:var(--text-muted);font-size:14px}.workout-progress__bar{height:8px;border-radius:999px;background:var(--surface);overflow:hidden}.workout-progress__fill{height:100%;border-radius:999px;background:var(--primary-grad);transition:width var(--motion-base) var(--motion-ease)}.workout__saved{margin:0;color:var(--success);font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px}.workout__saved-icon{display:inline-flex}.summary-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-3);padding:var(--space-6) var(--space-4) var(--space-5)}.summary-hero__icon{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:var(--success-soft);color:var(--success);border:1px solid var(--success-soft)}.summary-hero__icon svg{width:36px;height:36px}.summary-hero__top{display:flex;flex-direction:column-reverse;align-items:center;gap:10px}.summary-hero__status{padding:3px 10px;border-radius:999px;background:var(--success-soft);color:var(--success);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.summary-hero__title{margin:0;font-size:24px;font-weight:800;text-align:center}.summary-hero__subtitle{margin:0;color:var(--text-muted);font-size:15px}.summary-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.summary-stats__item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-tile);background:var(--surface)}.summary-stats__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;letter-spacing:-.02em}.summary-stats__label{color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.summary-records{padding:var(--space-3);border:1px solid var(--gold);border-radius:var(--radius-card);background:var(--gold-soft)}.summary-records__title{display:flex;align-items:center;gap:6px;margin:0 0 var(--space-2);color:var(--gold);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.summary-records__icon{display:inline-flex}.summary-records__count{margin-left:auto;padding:1px 8px;border-radius:var(--radius-pill);background:var(--gold);color:var(--on-gold);font-family:var(--font-mono);font-size:12px}.summary-records__list{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.summary-records__row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.summary-records__name{min-width:0;font-size:14px;font-weight:600;overflow-wrap:anywhere}.summary-records__value{flex:0 0 auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;color:var(--text)}.summary-note{margin:0;padding:12px 14px;border-radius:12px;background:var(--primary-soft);color:var(--text);font-size:14px}.summary-exercises{display:flex;flex-direction:column;gap:4px}.summary-exercises__row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 4px 10px 8px;border-left:3px solid transparent;border-bottom:1px solid var(--border)}.summary-exercises__row--record{border-left-color:var(--gold);background:var(--gold-soft)}.summary-exercises__name{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;font-weight:500;overflow-wrap:anywhere}.summary-exercises__pr-badge{padding:1px 6px;border-radius:999px;background:var(--gold);color:var(--on-gold);font-size:11px;font-weight:800;letter-spacing:.02em}.summary-exercises__meta{color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px;white-space:nowrap;text-align:right}.summary-actions{display:flex;gap:8px}.summary-actions .button{flex:1}.home__active-banner-wrap{display:flex;align-items:stretch;gap:8px}.home__active-banner-wrap .home__active-banner{flex:1;width:auto;min-width:0}.home__active-reset{display:flex;align-items:center;justify-content:center;flex:none;width:48px;border:none;border-radius:var(--radius-card);background:var(--surface);color:var(--danger);cursor:pointer;box-shadow:var(--shadow-card)}.home__active-reset--confirm{background:var(--danger-soft);outline:1px solid var(--danger-border)}.workout-detail__meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.workout-detail__date{color:var(--text-muted);font-size:14px}.workout-detail__exercises{display:flex;flex-direction:column;gap:8px}.workout-detail__exercise{display:flex;flex-direction:column;gap:6px}.workout-detail__exercise-head{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.workout-detail__exercise-name{margin:0;font-size:17px;font-weight:700;overflow-wrap:anywhere;flex:1;min-width:0}.workout-detail__exercise-meta{margin:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;color:var(--text-muted)}.workout-detail__exercise--skipped{opacity:.72}.workout-detail__no-sets{margin:0;color:var(--text-muted);font-size:14px}.set-table__row--pr{background:var(--gold-soft)}.set-table__row--pr .set-table__cell,.summary-stats__value--gold{color:var(--gold)}.workout-detail__actions{margin-top:4px}.workout-detail__delete{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.tab-bar{position:fixed;left:0;right:0;bottom:0;z-index:15;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding:0 6px env(safe-area-inset-bottom);background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border)}.tab-bar__tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:48px;min-height:44px;border:none;background:transparent;color:var(--text-dim);font-size:10.5px;font-weight:600;cursor:pointer;padding:3px;transition:color var(--motion-fast) ease}.tab-bar__tab:hover{color:var(--text-muted)}.tab-bar__tab:active{transform:scale(.96)}.tab-bar__tab:disabled{opacity:.45}.tab-bar__tab--active{color:var(--primary)}.tab-bar__label{font-size:10.5px;font-weight:600}.tab-bar__start{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:56px;height:56px;min-height:44px;align-self:center;justify-self:center;margin-top:-14px;border:none;border-radius:50%;background:var(--primary-grad);color:var(--on-primary);cursor:pointer;box-shadow:var(--shadow-start);padding:0;transition:filter var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}.tab-bar__start:hover{filter:brightness(1.09)}.tab-bar__start:active{transform:scale(.96)}.tab-bar__start:disabled{opacity:.6;pointer-events:none}.home__header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.home__brand{display:flex;flex-direction:column;gap:2px}.home__brand-name{margin:3px 0 2px;font-size:27px;font-weight:700;letter-spacing:-.025em;line-height:1}.home__greeting{margin:0;color:var(--text-muted);font-size:15px}.home__date{margin:0;color:var(--text-dim);font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.home__header-icons{display:flex;gap:8px}.icon-button,.home__icon-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.icon-button:hover,.home__icon-button:hover{background:var(--surface-elevated);color:var(--primary)}.icon-button:active,.home__icon-button:active{transform:scale(.94)}.icon-button:disabled,.home__icon-button:disabled{opacity:.45;pointer-events:none}.list-row{display:flex;align-items:center;gap:11px;width:100%;min-height:52px;padding:10px 4px;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:opacity var(--motion-fast) ease}.list-row:hover{opacity:.82}.list-row:disabled{opacity:.45}.list-row__mid{flex:1;min-width:0}.home__active-banner{display:flex;flex-direction:column;gap:4px;width:100%;border:none;background:var(--primary);color:var(--on-primary);border-radius:var(--radius-card);padding:14px;cursor:pointer;text-align:left}.home__active-progress{display:block;width:100%;height:5px;margin-top:4px;border-radius:var(--radius-pill);background:var(--surface-elevated);overflow:hidden}.home__active-progress-fill{display:block;height:100%;border-radius:var(--radius-pill);background:var(--primary-grad);transition:width var(--motion-base) var(--ease)}.home__active-text{font-weight:700;font-size:16px}.home__active-name{font-size:14px;opacity:.9}.home__volume{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:var(--space-4) var(--space-5);border:1px solid var(--primary-border);border-radius:var(--radius-card);background:var(--surface-hero);box-shadow:var(--shadow-card)}.home__volume:after{content:"";position:absolute;inset:auto -40px -70px auto;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,var(--primary-glow),transparent 70%);pointer-events:none}.home__volume>*{position:relative;z-index:1}.home__volume-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.home__spark{display:flex;align-items:flex-end;gap:5px;width:100%;height:38px;margin-top:14px}.home__spark-bar{flex:1;min-height:5px;border-radius:3px;background:var(--surface-sunken)}.home__spark-bar--today{background:var(--primary)}.home__volume-delta{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700;color:var(--text-muted);background:var(--surface-elevated);white-space:nowrap}.home__volume-delta--up{color:var(--success);background:var(--success-soft)}.home__volume-delta--down{color:var(--danger);background:var(--danger-soft)}.home__volume-title{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.home__volume-value{margin-top:8px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:40px;font-weight:700;letter-spacing:-.03em;line-height:1}.home__volume-unit{font-size:17px;font-weight:500;letter-spacing:0;color:var(--text-muted)}.home__volume-base{margin-top:12px;color:var(--text-muted);font-size:12.5px}.home__week{display:flex;flex-direction:column;gap:12px}.home__week-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.home__week-title{margin:0;font-size:17px;font-weight:700}.home__week-goal{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--warning);font-size:12.5px;font-weight:600;cursor:pointer;transition:border-color var(--motion-fast) ease}.home__week-goal:hover{border-color:var(--border-soft)}.home__week-goal svg{color:var(--warning);flex-shrink:0}.home__week-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.home__day{display:flex;flex-direction:column;align-items:center;gap:7px;padding:10px 2px 9px;border-radius:var(--radius-tile);background:var(--surface);border:1px solid var(--border);font:inherit;color:inherit;cursor:pointer;text-align:center}.home__day:hover{background:var(--surface);filter:brightness(1.08)}.home__day:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.home__day--today{background:var(--primary-soft);border-color:var(--primary)}.home__day--today .home__day-label{color:var(--text)}.home__day-dot{width:8px;height:8px;border-radius:50%;background:var(--surface-sunken)}.home__day-dot--completed{background:var(--success)}.home__day-dot--planned{background:var(--primary);opacity:.5}.home__day-dot--today{background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.home__day-dot--rest,.home__day-dot--skipped{background:var(--surface-sunken)}.home__day-label{font-size:11px;font-weight:600;color:var(--text-muted)}.home__tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3)}.home__tiles:empty{display:none}.home__tile{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:14px;text-align:left;font:inherit;color:inherit;cursor:pointer}.home__tile-title{display:flex;align-items:center;gap:5px;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.home__tile-title--gold{color:var(--gold)}.home__tile-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:24px;font-weight:700;letter-spacing:-.02em}.home__tile-sub{color:var(--text-dim);font-size:11.5px}.home__today-workout{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--radius-card);background:var(--surface)}.home__today-workout-title{margin:0 0 -4px;color:var(--text-muted);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.home__today-workout-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.home__today-workout-duration{color:var(--text-muted);font-size:13px;white-space:nowrap;margin-left:auto}.home__today-workout-name{margin:0;min-width:0;font-size:20px;font-weight:800;font-family:var(--font-body);overflow-wrap:anywhere}.home__today-workout-actions{display:flex;flex-direction:column;gap:8px}.home__today-workout-actions .button{width:100%;min-height:48px}.home__today-workout--completed{border:1px solid var(--success)}.home__today-workout-done{display:flex;align-items:center;gap:10px;min-width:0}.home__today-workout-done-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--success);color:var(--on-primary)}.home__today-workout-done-text{display:flex;flex-direction:column;gap:2px;min-width:0}.home__today-workout-done-title{margin:0;font-size:18px;font-weight:800;font-family:var(--font-body);color:var(--success)}.home__today-workout-done-name{margin:0;color:var(--text-muted);font-size:14px;overflow-wrap:anywhere}.home__today-workout-empty{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--radius-card);background:var(--surface);align-items:center;text-align:center}.home__today-workout-empty-text{margin:0;color:var(--text-muted);font-size:14px}.home__today-workout-empty .button{min-height:48px;width:100%}.home__record{display:flex;flex-direction:column;gap:2px}.progress-highlights{display:flex;gap:var(--space-2);flex-wrap:wrap}.progress-groups{display:flex;flex-direction:column;gap:var(--space-3)}.progress-group{display:flex;flex-direction:column;gap:var(--space-1)}.progress-group__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-1)}.progress-group__label{margin:0;font-size:19px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.progress-group__count{flex:0 0 auto}.progress-group .progress-list{padding:0}.progress-list{display:flex;flex-direction:column}.progress-list__row{gap:var(--space-3);padding:var(--space-3) 0;color:var(--text)}.progress-list__mid{display:flex;flex-direction:column;gap:2px;min-width:0}.progress-list__name{font-size:14.5px;font-weight:500;overflow-wrap:anywhere}.progress-list__meta{display:flex;align-items:center;gap:4px;color:var(--text-muted);font-size:12px;flex-wrap:wrap}.progress-list__weight{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.progress-list__status{font-weight:600}.progress-list__status--ok{color:var(--success)}.progress-list__status--warn{color:var(--warning)}.progress-list__status--danger{color:var(--danger)}.progress-list__status--primary{color:var(--primary)}.progress-list__row>svg{flex:0 0 auto;color:var(--text-dim)}.profile__greeting{display:flex;flex-direction:row;align-items:center;gap:14px}.profile__greeting-text{display:flex;flex-direction:column;gap:4px;min-width:0}.profile__avatar{display:grid;place-items:center;flex-shrink:0;width:56px;height:56px;border-radius:50%;background:var(--primary-grad);color:var(--on-primary);font-size:21px;font-weight:700}.profile__name{margin:0;font-size:20px;font-weight:700}.profile__subtitle{margin:0;color:var(--text-muted);font-size:14px}.profile__nav{display:flex;flex-direction:column;padding:4px 12px}.profile__nav-row{display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 4px;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);text-align:left;cursor:pointer}.profile__nav-row:last-child{border-bottom:none}.profile__nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:9px;background:var(--surface-elevated);color:var(--primary)}.profile__nav-label{flex:1;font-size:14.5px;font-weight:500;overflow-wrap:anywhere}.profile__nav-value{color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;white-space:nowrap}.profile__nav-row svg:last-child{flex-shrink:0;color:var(--text-muted)}.pr-block__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pr-block__card{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:12px;background:var(--surface)}.pr-block__label{color:var(--text-muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.pr-block__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.pr-block__date{color:var(--text-muted);font-size:12px}.muscle-volume{display:flex;flex-direction:column;gap:var(--space-3)}.muscle-volume__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.muscle-volume__title{margin:0;font-size:19px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.muscle-volume__range{color:var(--text-dim);font-size:12px;white-space:nowrap}.muscle-volume__row{display:flex;flex-direction:column;gap:6px}.muscle-volume__row-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.muscle-volume__name{font-size:13.5px;font-weight:500;overflow-wrap:anywhere}.muscle-volume__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--text-muted);white-space:nowrap}.muscle-volume__bar{height:5px;border-radius:var(--radius-pill);background:var(--surface-elevated);overflow:hidden}.muscle-volume__fill{height:100%;border-radius:var(--radius-pill);background:var(--primary-grad);transition:width var(--motion-base) var(--ease)}.muscle-volume__counters{margin:0;color:var(--text-muted);font-size:13px}.sub-picker__item{display:flex;flex-direction:column;gap:2px;text-align:left}.sub-picker__item--selected{outline:2px solid var(--primary);outline-offset:-2px}.sub-picker__rationale{color:var(--text-muted);font-size:13px}.sub-picker__apply{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--surface-elevated)}.sub-picker__apply-title{margin:0;color:var(--text-muted);font-size:13px;font-weight:600}.sub-picker__scopes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sub-picker__scope{min-height:48px;padding:8px;border:1px solid var(--surface-elevated);border-radius:12px;background:var(--bg);color:var(--text);font-size:15px;font-weight:600;cursor:pointer}.sub-picker__scope--active{border-color:var(--primary);background:var(--primary-soft);color:var(--on-primary)}.sub-picker__scope:disabled{opacity:.5;cursor:default}.sub-picker__confirm{width:100%}
