:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f5f5f7;--bg:#0a0a0c;--bg-elevated:#141418;--bg-card:#1c1c22;--bg-muted:#24242c;--border:#2a2a32;--border-subtle:#1f1f26;--text-primary:#f5f5f7;--text-secondary:#9ca3af;--text-tertiary:#6b7280;--accent:#1a80ff;--accent-hover:#0066e6;--accent-soft:#1a80ff24;--danger:#ef4444;--success:#34d399;--warning:#fbbf24;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-card:0 1px 0 #ffffff0a;--header-backdrop:#0a0a0ceb;--tab-bar-backdrop:#0a0a0ceb;--feed-engagement-bg:#1a1a22;--feed-welcome-bg:#1a80ff1f;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);background-color:#0a0a0c;font-family:SF Pro Text,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#111827;--bg:#f3f4f6;--bg-elevated:#fff;--bg-card:#fff;--bg-muted:#eef2f7;--border:#cbd5e1;--border-subtle:#e2e8f0;--text-primary:#0f172a;--text-secondary:#334155;--text-tertiary:#475569;--accent-soft:#1a80ff24;--shadow-card:0 1px 3px #0f172a14;--header-backdrop:#fffffff0;--tab-bar-backdrop:#fffffff5;--feed-engagement-bg:#e8edf4;--feed-welcome-bg:#1a80ff14;background-color:#f3f4f6}*{box-sizing:border-box}html{overflow:hidden auto}body{background:var(--bg);min-height:100vh;margin:0;overflow:hidden auto}#root{min-height:100vh;overflow:hidden auto}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{background:var(--bg);touch-action:pan-y;width:100%;max-width:480px;min-height:100vh;margin:0 auto;overflow:hidden auto}.pull-to-refresh-indicator{color:var(--text-muted);flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;font-size:.75rem;transition:height .15s ease-out;display:flex;overflow:hidden}.pull-to-refresh-spinner{border:2px solid var(--border-subtle);border-top-color:var(--accent);opacity:0;border-radius:50%;width:20px;height:20px}.pull-to-refresh-indicator-active .pull-to-refresh-spinner{opacity:1;animation:.8s linear infinite pull-to-refresh-spin}@keyframes pull-to-refresh-spin{to{transform:rotate(360deg)}}.pull-to-refresh-label{padding-bottom:4px}.page-header-left{align-items:center;gap:4px;min-width:40px;display:flex}.header-spacer{width:40px;display:inline-block}.menu-button-icon{width:22px;height:22px;display:block}.page-header{padding:calc(12px + var(--safe-top)) 16px 12px;border-bottom:1px solid var(--border-subtle);background:var(--header-backdrop);-webkit-backdrop-filter:blur(12px);z-index:10;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.page-title{letter-spacing:-.02em;margin:0;font-size:1.125rem;font-weight:700}.icon-button{color:var(--text-primary);background:0 0;border:none;border-radius:8px;padding:4px 8px;font-size:1.25rem}.icon-button:hover{background:var(--bg-elevated)}.page-content{min-width:0;max-width:100%;padding:16px}.btn{border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:500;transition:background .15s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border)}.btn-danger{background:color-mix(in srgb, var(--danger) 14%, transparent);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 35%, transparent)}.btn-block{width:100%}.btn:disabled{opacity:.4;cursor:not-allowed}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:16px}.stack{flex-direction:column;gap:12px;display:flex}.row{align-items:center;gap:12px;display:flex}.text-muted{color:var(--text-secondary);font-size:.875rem}.text-small{font-size:.8125rem}.input{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--text-primary);border-radius:10px;padding:10px 12px}.input:focus{outline:2px solid var(--accent);outline-offset:1px}.field-label{color:var(--text-secondary);font-size:.8125rem;font-weight:600}.empty-state{text-align:center;color:var(--text-secondary);padding:32px 16px}.app-shell-with-tabs .page-content{padding-bottom:calc(72px + var(--safe-bottom))}.bottom-tab-bar{border-top:1px solid var(--border);background:var(--tab-bar-backdrop);-webkit-backdrop-filter:blur(12px);z-index:10;width:100%;max-width:480px;padding-bottom:var(--safe-bottom);display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-tab-item{text-align:center;color:var(--text-tertiary);letter-spacing:.01em;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px 8px 10px;font-size:.6875rem;font-weight:500;display:flex}.reference-title{margin:0;font-size:1.25rem;line-height:1.2}.upcoming-feature-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.upcoming-feature-title{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.upcoming-badge{letter-spacing:.02em;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-muted);border:1px solid var(--border-subtle);border-radius:999px;flex-shrink:0;padding:4px 8px;font-size:.6875rem;font-weight:600}.upcoming-badge-partial{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.daily-steps-strip{margin-bottom:16px;padding:14px 16px}.daily-steps-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.daily-steps-label{margin:0 0 4px;font-size:.8125rem}.daily-steps-value{color:var(--text-primary);margin:0;font-size:1.375rem;font-weight:700}.integration-unavailable{border-left:3px solid var(--accent);padding-left:10px}.integration-card-actions{gap:8px;display:flex}.integration-steps-today{margin:0;font-size:.9375rem}.btn-sm{min-height:36px;padding:6px 12px;font-size:.875rem}.reference-row{justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.program-card{display:block}.program-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.program-saved-badge{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent);border-radius:999px;padding:3px 8px;font-size:.6875rem;font-weight:600}.program-card h3{margin:6px 0}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.filter-chip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);min-height:32px;color:var(--text-primary);align-items:center;padding:6px 10px;font-size:.8125rem;display:inline-flex}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.calendar-day{aspect-ratio:1;background:var(--bg-muted);border-radius:6px}.notification-unread{border-left:3px solid var(--accent)}.changelog-entry-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.changelog-summary{color:var(--text-secondary);margin:0;padding-left:1.25rem}.changelog-summary li+li{margin-top:6px}.about-version{text-align:center;padding:8px 0 4px}.legal-document p{color:var(--text-secondary);margin:0;line-height:1.5}.legal-document p+p{margin-top:12px}.text-link{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.calendar-day.active{background:var(--accent)}.instruction-list{color:var(--text-secondary);margin:0;padding-left:20px}.set-table{gap:8px;display:grid}.set-table [role=row]{border-bottom:1px solid var(--border-subtle);grid-template-columns:42px 1fr 72px 56px;align-items:center;gap:8px;padding:8px 0;font-size:.8125rem;display:grid}.set-table-header-row,.set-table [role=row]:first-child{color:var(--text-tertiary);font-weight:700}.workout-detail-set-index-cell{align-items:center;gap:4px;display:flex}.workout-detail-set-index{color:var(--text-secondary);font-weight:600}.workout-detail-set-row-warmup .workout-detail-set-index{color:var(--accent)}.workout-detail-set-row-failed .workout-detail-set-strikethrough{opacity:.85;text-decoration:line-through}.workout-detail-set-badge-f{border:1px solid color-mix(in srgb, var(--danger) 35%, transparent);background:color-mix(in srgb, var(--danger) 14%, transparent);min-width:18px;height:18px;color:var(--danger);border-radius:4px;justify-content:center;align-items:center;padding:0 4px;font-size:.6875rem;font-weight:700;line-height:1;display:inline-flex}.bottom-tab-item.active{color:var(--accent);font-weight:600}.bottom-tab-item.deferred,.btn.deferred{color:var(--text-tertiary)}.modal-overlay{z-index:200;background:#0009;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-panel{background:var(--bg-elevated);border-radius:16px 16px 0 0;flex-direction:column;width:100%;max-width:480px;max-height:90vh;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px;display:flex}.modal-body{flex:1;padding:16px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border);padding:16px}.exercise-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 0;display:flex}.exercise-thumb{background:var(--bg-card);width:40px;height:40px;color:var(--text-tertiary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;display:flex}.exercise-thumb-image{object-fit:cover;display:block}.exercise-thumb-lg{width:120px;height:120px;font-size:2rem}.exercise-media-panel{align-items:flex-start}.community-member-card{align-items:center;gap:12px;display:flex}.community-member-profile-link{min-width:0;color:inherit;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}.community-member-body{flex:1;min-width:0}.community-member-name{color:var(--text-primary);font-weight:600}.app-drawer-root{z-index:100;position:fixed;inset:0}.app-drawer-overlay{cursor:pointer;background:#0f172a73;border:none;margin:0;padding:0;position:absolute;inset:0}.app-drawer-panel{background:var(--bg-elevated);border-right:1px solid var(--border-subtle);width:min(320px,86vw);max-width:100%;box-shadow:var(--shadow-card);outline:none;flex-direction:column;display:flex;position:absolute;top:0;bottom:0}.app-drawer-panel-left{animation:.2s ease-out app-drawer-slide-in-left;left:0}@keyframes app-drawer-slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}.app-drawer-header{padding:calc(12px + var(--safe-top)) 16px 12px;border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.app-drawer-title{margin:0;font-size:1.125rem;font-weight:700}.app-drawer-links{flex-direction:column;gap:4px;padding:8px;display:flex;overflow-y:auto}.app-drawer-link{border-radius:var(--radius-sm);width:100%;color:var(--text-primary);text-align:left;font:inherit;cursor:pointer;background:0 0;border:none;padding:12px 14px;text-decoration:none;display:block}.app-drawer-link:hover,.app-drawer-link:focus-visible{background:var(--bg-muted)}.app-drawer-signout{color:var(--danger);margin-top:8px}.feed-card{min-width:0;max-width:100%;margin-bottom:16px;overflow-x:hidden}.feed-card-discover{border-radius:var(--feed-card-radius,12px);padding:0}.feed-card-body{padding:16px}.feed-card-body-ref{padding:var(--feed-body-padding-block,14px) var(--feed-body-padding-inline,16px)}.feed-title-link{color:inherit;text-decoration:none}.feed-card .workout-feed-photo{margin-top:var(--feed-photo-margin-top,8px)}.feed-card .feed-metrics-strip{margin-top:var(--feed-metrics-margin-top,10px)}.feed-engagement-footer{border-top:1px solid var(--border-subtle);padding:var(--feed-engagement-padding-block,10px) var(--feed-engagement-padding-inline,14px);background:var(--feed-engagement-bg,var(--bg-muted));min-height:var(--feed-engagement-min-height,44px);align-items:center;display:flex}.feed-card-discover .engagement-row{margin:var(--feed-engagement-margin-top,12px) 0 0;gap:var(--feed-engagement-gap,20px);font-weight:var(--feed-engagement-font-weight,500);width:100%}.folder-create-btn{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.folder-create-form{gap:8px}.routine-folder-section{flex-direction:column;gap:10px;display:flex}.exercise-video-play-enabled{cursor:pointer;opacity:1}.exercise-video-player-wrap{width:100%}.exercise-video-player{border-radius:var(--radius-md);background:#000;width:100%;max-height:240px}.feed-card .metric-row{border-radius:var(--radius-sm);background:var(--bg-muted);padding:10px 12px}.feed-media-carousel{margin-top:12px}.feed-media-frame{align-items:center;display:flex;position:relative}.feed-media-count-badge{z-index:2;border-radius:var(--radius-sm);color:#fff;pointer-events:none;background:#0000008c;padding:4px 8px;font-size:.75rem;font-weight:600;position:absolute;top:8px;right:8px}.feed-media-carousel:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-md)}.feed-media-swipe{touch-action:pan-y}.feed-media-nav{z-index:1;color:#fff;cursor:pointer;background:#00000073;border:none;border-radius:50%;width:32px;height:32px;font-size:1.25rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.feed-media-nav-prev{left:8px}.feed-media-nav-next{right:8px}.feed-media-counter{text-align:center;margin-top:6px}.feed-media-slide{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--bg-muted) 0%, var(--bg-elevated) 100%);border:1px solid var(--border-subtle);height:180px}.feed-media-image{object-fit:cover;background:var(--bg-muted);width:100%;height:180px;display:block}.feed-media-hero{height:220px}.exercise-video-fallback-thumb{object-fit:cover;border-radius:var(--radius-md);width:100%;max-height:200px}.routine-folder-move{margin-top:8px;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.routine-folder-label{color:var(--accent);font-weight:600}.feed-media-dots{justify-content:center;gap:6px;margin-top:8px;display:flex}.feed-media-dot{background:var(--border);cursor:pointer;border:none;border-radius:50%;width:6px;height:6px;padding:0}.feed-media-dot-active{background:var(--accent)}.feed-author-username{font-size:var(--feed-author-username-size,.8125rem);line-height:var(--feed-author-username-line-height,1.2)}.dev-submit-form label,.dev-review-form label{margin-bottom:12px;display:block}.dev-submit-form input[type=text],.dev-submit-form textarea,.dev-submit-form select,.dev-review-form textarea,.dev-review-form select,.dev-review-form input[type=text]{width:100%;margin-top:4px;display:block}.dev-section-title{margin:0 0 12px;font-size:1rem}.admin-uid-value{background:var(--surface-elevated,#ffffff0f);word-break:break-all;border-radius:8px;margin:8px 0;padding:8px 10px;font-size:.85rem;display:block}.admin-user-row{flex-direction:column;gap:8px;display:flex}.admin-user-header{align-items:center;gap:12px;display:flex}.admin-user-avatar{object-fit:cover;border-radius:50%;flex-shrink:0}.admin-user-avatar-placeholder{background:var(--surface-elevated,#ffffff14);width:40px;height:40px}.admin-user-name{font-weight:600}.dev-request-card{margin-top:16px}.dev-request-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.dev-request-title{margin:0;font-size:1.05rem}.dev-status-badge{text-transform:lowercase;border-radius:var(--radius-sm);background:var(--bg-muted);padding:2px 8px;font-size:.75rem;font-weight:600}.dev-status-approved{color:var(--accent)}.dev-status-rejected{color:#c44}.dev-status-duplicate{color:var(--text-muted)}.dev-request-screenshot{object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--border-subtle);width:100%;max-height:240px;margin-top:12px;display:block}.dev-queue-matches ul{margin:4px 0 0;padding-left:1.25rem}.dev-agent-review{border-top:1px solid var(--border-subtle);margin-top:16px;padding-top:12px}.app-drawer-link-active{background:var(--bg-muted);font-weight:600}.exercise-video-unavailable-message{color:var(--text-secondary);text-align:center;margin:0;font-size:.875rem;font-weight:600}.exercise-video-placeholder{flex-direction:column;align-items:center;gap:10px;display:flex}.exercise-video-play{border:2px solid var(--border);background:var(--bg-elevated);width:64px;height:64px;color:var(--text-primary);cursor:not-allowed;opacity:.85;border-radius:50%;justify-content:center;align-items:center;display:flex}.exercise-video-play-icon{margin-left:3px;font-size:1.25rem}.feed-records-highlight .metric-stat-value{color:var(--accent)}.profile-workouts-section{flex-direction:column;gap:10px;display:flex}.profile-workout-card{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);color:inherit;align-items:flex-start;gap:12px;padding:14px;display:flex}.profile-workout-card-body{flex:1;min-width:0}.profile-workout-title{margin:0 0 4px;font-size:.9375rem;font-weight:600}.workout-detail-photo,.workout-detail-media--image,.workout-feed-photo{width:100%;height:var(--workout-detail-photo-height,200px);border-radius:var(--radius-md);border:1px solid var(--border-subtle);object-fit:cover;display:block}.workout-detail-header .workout-detail-author-row{gap:var(--workout-detail-author-row-gap,12px)}.workout-detail-header .workout-detail-author-meta{gap:var(--workout-detail-author-meta-gap,2px);flex-direction:column;min-width:0;display:flex}.workout-detail-header .workout-detail-author-name{font-size:var(--workout-detail-author-name-size,.9375rem);font-weight:var(--workout-detail-author-name-weight,600);line-height:var(--workout-detail-author-name-line-height,1.25)}.workout-detail-header .workout-detail-author-timestamp{font-size:var(--workout-detail-author-timestamp-size,.8125rem);line-height:var(--workout-detail-author-timestamp-line-height,1.35);color:var(--text-muted)}.workout-detail-header.stack{gap:0}.workout-detail-header .workout-detail-title{margin:var(--workout-detail-title-margin-top,12px) 0 0;font-size:var(--workout-detail-title-size,1.25rem);line-height:var(--workout-detail-title-line-height,1.2);font-weight:var(--workout-detail-title-weight,700)}.workout-detail-header .workout-detail-media{margin-top:var(--workout-detail-media-margin-top,8px)}.workout-detail-header .workout-detail-metric-row{gap:var(--workout-detail-metric-gap,12px);margin:var(--workout-detail-metric-row-margin-top,12px) 0 var(--workout-detail-metric-row-margin-bottom,0)}.workout-detail-header .metric-stat-label{font-size:var(--workout-detail-metric-label-size,.75rem)}.workout-detail-header .metric-stat-value{font-size:var(--workout-detail-metric-value-size,.9375rem);font-weight:var(--workout-detail-metric-value-weight,600)}.workout-detail-header .workout-detail-engagement-footer{margin:var(--workout-detail-engagement-margin-top,12px) calc(-1 * var(--workout-detail-card-padding-inline,16px)) 0;padding:var(--workout-detail-engagement-padding-block,12px) var(--workout-detail-engagement-padding-inline,14px);min-height:var(--workout-detail-engagement-min-height,48px)}.workout-detail-header .workout-detail-engagement-row{gap:var(--workout-detail-engagement-gap,56px);font-weight:var(--workout-detail-engagement-font-weight,500);width:100%;margin:0}.workout-detail-header .workout-detail-engagement-row .engagement-btn{font-size:var(--workout-detail-engagement-btn-size,.875rem);padding:var(--workout-detail-engagement-btn-padding,6px) 0}.workout-detail-header .workout-detail-engagement-row button{gap:var(--workout-detail-engagement-icon-gap,6px)}.workout-detail-header .workout-detail-engagement .feed-comments-panel,.feed-card .feed-card-comments .feed-comments-panel{margin-top:var(--feed-comments-margin-top,0);padding-top:var(--feed-comments-padding-top,10px);gap:var(--feed-comments-gap,12px)}.workout-detail-header .workout-detail-engagement .feed-comments-list,.feed-card .feed-card-comments .feed-comments-list{gap:var(--feed-comments-list-gap,10px)}.workout-detail-header .workout-detail-engagement .feed-comment-item,.feed-card .feed-card-comments .feed-comment-item{gap:var(--feed-comments-item-gap,4px)}.workout-detail-header .workout-detail-engagement .feed-comment-author,.feed-card .feed-card-comments .feed-comment-author{font-size:var(--feed-comments-author-size,.8125rem);font-weight:var(--feed-comments-author-weight,600);line-height:var(--feed-comments-author-line-height,1.2)}.workout-detail-header .workout-detail-engagement .feed-comment-text,.feed-card .feed-card-comments .feed-comment-text{font-size:var(--feed-comments-text-size,.875rem);line-height:var(--feed-comments-text-line-height,1.4)}.workout-detail-header .workout-detail-engagement .feed-comment-compose,.feed-card .feed-card-comments .feed-comment-compose{gap:var(--feed-comments-compose-gap,10px)}.workout-detail-header .workout-detail-engagement .feed-comment-compose .input,.feed-card .feed-card-comments .feed-comment-compose .input{font-size:var(--feed-comments-compose-input-size,.875rem)}.workout-detail-header .workout-detail-engagement .feed-comments-empty,.feed-card .feed-card-comments .feed-comments-empty{font-size:var(--feed-comments-empty-size,.8125rem)}.feed-card .feed-card-comments{padding:0 var(--feed-body-padding-inline,16px) var(--feed-body-padding-block,14px)}.workout-detail-muscle-split-title{font-size:var(--workout-detail-muscle-split-title-size,1.125rem);line-height:var(--workout-detail-muscle-split-title-line-height,1.2);font-weight:var(--workout-detail-muscle-split-title-weight,700);margin:0}.workout-detail-muscle-split-list{gap:var(--workout-detail-muscle-split-entry-gap,24px);flex-direction:column;display:flex}.workout-detail-muscle-split-entry{gap:var(--workout-detail-muscle-split-label-bar-gap,12px);flex-direction:column;display:flex}.workout-detail-muscle-split-label{font-size:var(--workout-detail-muscle-split-label-size,1rem);line-height:var(--workout-detail-muscle-split-label-line-height,1.35)}.workout-detail-muscle-split-bar-row{align-items:center;gap:var(--workout-detail-muscle-split-bar-row-gap,12px);display:flex}.workout-detail-muscle-split-track{height:var(--workout-detail-muscle-split-track-height,10px);background:var(--bg-muted);border-radius:999px;flex:1;overflow:hidden}.workout-detail-muscle-split-fill{background:var(--accent);border-radius:999px;height:100%}.workout-detail-muscle-split-value{min-width:var(--workout-detail-muscle-split-value-min-width,3.5rem);font-size:var(--workout-detail-muscle-split-value-size,.9375rem);font-weight:var(--workout-detail-muscle-split-value-weight,600);text-align:right;color:var(--text-secondary)}.workout-detail-exercise-header{align-items:center;gap:var(--workout-detail-exercise-header-gap,14px);display:flex}.workout-detail-exercise-header--divided{padding-bottom:var(--workout-detail-exercise-header-padding-bottom,12px);border-bottom:var(--workout-detail-exercise-divider-width,1px) solid var(--border-subtle)}.workout-detail-exercise-body{padding-top:var(--workout-detail-exercise-set-table-padding-top,12px)}.workout-detail-exercise-body .set-table [role=row]:first-child{padding-top:0}.workout-detail-exercise-block .exercise-thumb{width:var(--workout-detail-exercise-thumb-size,56px);height:var(--workout-detail-exercise-thumb-size,56px);border-radius:var(--workout-detail-exercise-thumb-radius,8px);flex-shrink:0}.workout-detail-exercise-title{min-width:0;font-size:var(--workout-detail-exercise-title-size,1rem);font-weight:var(--workout-detail-exercise-title-weight,600);line-height:var(--workout-detail-exercise-title-line-height,1.35);flex:1;margin:0}.workout-detail-workout-section-title{margin:0 0 var(--workout-detail-workout-section-title-margin-bottom,12px);font-size:var(--workout-detail-workout-section-title-size,1.125rem);font-weight:var(--workout-detail-workout-section-title-weight,700);line-height:var(--workout-detail-workout-section-title-line-height,1.2)}.workout-detail-workout-list{gap:var(--workout-detail-workout-section-list-gap,12px);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.workout-photo-preview{border-radius:var(--radius-md);border:1px solid var(--border-subtle);object-fit:cover;width:100%;max-height:220px}.workout-photo-modal{max-width:420px}.share-sheet-overlay{z-index:40;background:#00000073;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.share-sheet-panel{background:var(--bg-elevated);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border:1px solid var(--border);width:100%;max-width:480px;max-height:80vh;padding:16px;overflow:auto}.share-card-carousel{scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;display:flex;overflow-x:auto}.share-card-preview{scroll-snap-align:center;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);flex:0 0 78%;min-height:180px;padding:16px}.share-card-preview h3{margin:0 0 8px;font-size:1rem}.share-card-preview-dark{color:#f8fafc;background:#111827;border-color:#1f2937}.share-card-preview-accent{color:#fff;background:linear-gradient(145deg,#1a80ff,#0052cc);border-color:#0000}.feed-welcome-card{border:var(--feed-welcome-border-width,1px) solid var(--accent);background:var(--feed-welcome-bg,var(--accent-soft));border-radius:var(--feed-welcome-radius,12px);padding-inline:var(--feed-welcome-padding-inline,14px);padding-bottom:var(--feed-welcome-padding-extra,2px)}.engagement-btn-liked{color:var(--danger)}.engagement-row{color:var(--text-secondary);gap:16px;margin-top:12px;font-size:.875rem;display:flex}.set-row{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr) 40px;align-items:center;gap:8px;min-width:0;max-width:100%;margin-bottom:8px;display:grid}.set-row-duration,.set-row-compact{grid-template-columns:40px minmax(0,1fr) 40px}.workout-set-countdown{font-variant-numeric:tabular-nums;color:var(--accent);text-align:center;font-size:1.125rem;font-weight:600}.workout-set-duration-input{text-align:center}.workout-active-header{padding:calc(12px + var(--safe-top)) 16px 12px;border-bottom:1px solid var(--border-subtle);background:var(--header-backdrop);-webkit-backdrop-filter:blur(12px);z-index:10;flex-direction:column;gap:8px;display:flex;position:sticky;top:0}.workout-active-header-top{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.workout-active-title{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:1.0625rem;font-weight:700;overflow:hidden}.workout-active-header-stats{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.workout-active-timer{font-size:1.125rem}.workout-reset-link,.workout-discard-link{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:500}.workout-discard-link{color:var(--danger);align-self:flex-start}.workout-elapsed-timer{font-variant-numeric:tabular-nums;color:var(--accent);letter-spacing:.02em;font-size:.9375rem;font-weight:600}.workout-finish-btn{min-width:72px;padding:6px 14px;font-size:.875rem}.workout-logging-page{gap:14px;max-width:100%;overflow-x:hidden}.workout-session-stats{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.workout-elapsed-group{align-items:center;gap:8px;display:inline-flex}.workout-live-volume{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.75rem;font-weight:500}.workout-reset-timer-btn,.workout-discard-btn{min-height:28px;padding:4px 10px;font-size:.75rem}.workout-header-actions{align-items:center;gap:8px;display:flex}.workout-rest-timer{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent) 14%, var(--bg-muted));border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);align-items:center;gap:12px;padding:12px 14px;display:flex}.workout-rest-timer-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-size:.8125rem;font-weight:600}.workout-rest-timer-value{font-variant-numeric:tabular-nums;color:var(--accent);flex:1;font-size:1.25rem;font-weight:700}.workout-rest-skip-btn{padding:6px 12px;font-size:.8125rem}.workout-add-exercise-btn{align-self:flex-start}.workout-exercise-card{gap:10px;padding:14px 16px}.workout-exercise-header{align-items:flex-start;gap:12px;display:flex}.workout-exercise-reorder{flex-direction:column;flex-shrink:0;gap:4px;margin-left:auto;display:flex}.workout-exercise-reorder-btn{min-width:3.5rem;padding-inline:8px;font-size:.75rem}.workout-exercise-thumb-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;padding:0}.workout-exercise-header-text{flex:1;gap:4px;min-width:0}.workout-how-to-btn{align-self:flex-start;margin-top:4px;padding:4px 10px;font-size:.8125rem}.workout-video-modal{max-width:min(100%,420px)}.workout-exercise-title{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.workout-exercise-meta{margin:-4px 0 0}.workout-exercise-notes-label{gap:4px;margin-top:4px}.workout-exercise-notes-input{resize:vertical;width:100%;min-width:0}.workout-set-header{text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-top:4px;margin-bottom:0;font-size:.75rem;font-weight:600}.workout-set-row-done{opacity:.72}.workout-set-row-warmup .workout-set-index{color:var(--accent)}.workout-set-row-failed .workout-set-index,.workout-set-row-failed .workout-set-input{opacity:.85;text-decoration:line-through}.workout-set-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.workout-set-failed{border:1px solid var(--border);background:var(--bg-muted);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;border-radius:6px;font-size:.75rem;font-weight:700}.workout-set-failed-on{border-color:var(--danger,#e5484d);background:color-mix(in srgb, var(--danger,#e5484d) 14%, transparent);color:var(--danger,#e5484d)}.workout-set-index{color:var(--text-secondary);text-align:center;font-size:.875rem;font-weight:600}.workout-set-input{min-width:0;max-width:100%;padding:8px 10px;font-size:.9375rem}.workout-set-check{border:1px solid var(--border);background:var(--bg-muted);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:50%;font-size:1rem}.workout-set-check-done{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent)}.workout-add-set-btn{align-self:flex-start;padding:6px 12px;font-size:.8125rem}.auth-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-logo{margin-bottom:8px;font-size:2rem;font-weight:700}.auth-tagline{color:var(--text-secondary);margin-bottom:32px}.auth-mark{border-radius:18px;width:72px;height:72px;margin-bottom:20px;box-shadow:0 12px 40px #1a80ff40}.tab-icon{width:22px;height:22px;color:var(--text-tertiary)}.tab-icon-active{color:var(--accent)}.avatar{object-fit:cover;border-radius:50%;flex-shrink:0}.avatar-fallback{background:linear-gradient(135deg, var(--accent) 0%, #0052cc 100%);color:#fff;justify-content:center;align-items:center;font-weight:600;display:flex}.avatar-sm{font-size:.75rem}.avatar-md{font-size:.875rem}.avatar-lg{font-size:1.5rem}.metric-stat{flex-direction:column;gap:2px;min-width:0;display:flex}.metric-stat-label{font-size:var(--feed-metrics-label-size,.75rem);color:var(--text-tertiary)}.metric-stat-value{font-size:var(--feed-metrics-value-size,.9375rem);color:var(--text-primary);font-weight:600}.workout-previous-best{margin:-2px 0 0}.metric-stat-highlight .metric-stat-value{color:var(--warning)}.metric-row{gap:var(--feed-metrics-row-gap,12px);grid-template-columns:repeat(3,1fr);margin:12px 0;display:grid}.page-header-actions,.header-title-group{align-items:center;gap:4px;display:flex}.header-chevron{color:var(--text-tertiary);font-size:.75rem}.feed-filter-menu{position:relative}.feed-filter-trigger{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:1.0625rem;font-weight:700;display:flex}.feed-filter-dropdown{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-card);z-index:20;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.feed-filter-dropdown button{text-align:left;width:100%;color:var(--text-primary);font:inherit;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:10px 12px}.feed-filter-dropdown button:hover,.feed-filter-dropdown [aria-selected=true] button{background:var(--bg-muted)}.program-filter-menu{display:inline-block;position:relative}.program-filter-dropdown{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-card);z-index:20;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0}.program-filter-dropdown button{text-align:left;width:100%;color:var(--text-primary);font:inherit;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:10px 12px}.program-filter-dropdown button:hover,.program-filter-dropdown [aria-selected=true] button{background:var(--bg-muted)}.filter-chip-active{border-color:var(--accent);color:var(--accent)}.monthly-report-banner{background:linear-gradient(180deg, var(--bg-card) 0%, var(--bg-elevated) 100%);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-card);margin-bottom:20px;padding:20px 16px}.monthly-report-banner h2{margin:0 0 8px;font-size:1.0625rem;font-weight:700}.monthly-report-banner p{color:var(--text-secondary);margin:0 0 16px;font-size:.875rem;line-height:1.45}.monthly-report-actions{flex-direction:column;gap:8px;display:flex}.feed-card-header{justify-content:space-between;align-items:flex-start;gap:var(--feed-header-gap,12px);display:flex}.feed-post-date{font-size:var(--feed-post-date-size,.8125rem);line-height:var(--feed-post-date-line-height,1.35)}.feed-author{align-items:center;gap:var(--feed-author-row-gap,10px);min-width:0;display:flex}.feed-author-meta{gap:var(--feed-author-meta-gap,2px);min-width:0;line-height:var(--feed-author-meta-line-height,1.25);flex-direction:column;display:flex}.feed-author-name{font-weight:var(--feed-author-name-weight,600);font-size:var(--feed-author-name-size,.9375rem);line-height:var(--feed-author-name-line-height,1.25)}.feed-workout-title{font-size:var(--feed-title-size,1.125rem);font-weight:var(--feed-title-weight,700);margin:var(--feed-title-margin-top,12px) 0 0;letter-spacing:-.02em;line-height:var(--feed-title-line-height,1.3)}.feed-exercise-list{margin-top:var(--feed-exercise-list-margin-top,12px);border-top:1px solid var(--border-subtle);padding-top:var(--feed-exercise-list-padding-top,8px)}.feed-exercise-row{padding:var(--feed-exercise-row-padding,6px) 0;font-size:var(--feed-exercise-row-size,.875rem);color:var(--text-secondary);line-height:var(--feed-exercise-row-line-height,1.35);align-items:center;gap:10px;display:flex}.feed-exercise-dot{background:var(--bg-muted);border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:28px;height:28px}.workout-hero-action{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);width:100%;color:var(--text-primary);justify-content:center;align-items:center;gap:8px;padding:14px 16px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.workout-hero-action:hover:not(:disabled){background:var(--bg-muted);border-color:var(--accent)}.workout-action-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.workout-action-tile{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:14px 12px;font-size:.875rem;font-weight:500;display:flex}.workout-action-tile.deferred,.dashboard-tile.deferred{opacity:.45}.workout-action-icon{font-size:1.25rem}.section-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;align-items:center;margin:8px 0 12px;font-size:.8125rem;font-weight:600;display:flex}.routine-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:14px;transition:border-color .15s;display:block}.routine-card:hover{border-color:var(--accent)}.routine-card-title{margin-bottom:6px;font-size:1rem;font-weight:600}.routine-card-summary{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.4;display:-webkit-box;overflow:hidden}.routine-card-meta{color:var(--text-tertiary);margin-top:0;font-size:.75rem}.routine-card-footer{gap:10px}.btn-start-routine{border-radius:var(--radius-sm);background:var(--accent);color:#fff;box-sizing:border-box;border:none;flex-shrink:0;justify-content:center;align-items:center;width:100%;margin-top:0;padding:12px;font-size:.9375rem;font-weight:600;text-decoration:none;display:flex}.btn-start-routine:hover{background:var(--accent-hover)}.profile-cover{height:var(--profile-cover-height,96px);border-radius:var(--radius-md);margin:var(--profile-cover-overlap,-4px -4px -32px);background:linear-gradient(135deg,#1a2744 0%,#0f172a 50%,#1e3a5f 100%)}.profile-cover-strip{height:var(--profile-cover-height,96px);border-radius:var(--radius-md);margin:var(--profile-cover-overlap,-4px -4px -32px);gap:2px;display:flex;overflow:hidden}.profile-cover-photo{object-fit:cover;flex:1;min-width:0;height:100%;display:block}.profile-identity-row{align-items:flex-end;gap:var(--profile-identity-gap,14px);padding-top:var(--profile-identity-padding-top,4px);display:flex}.profile-stats-row{text-align:center;padding:var(--profile-stats-padding-block,16px) 0;border-bottom:1px solid var(--border-subtle);justify-content:space-around;display:flex}.profile-stats-row--inline{border:none;flex:1;padding:0}.profile-display-name{font-size:var(--profile-display-name-size,1.125rem);font-weight:var(--profile-display-name-weight,700)}.profile-stat-link{color:inherit;text-align:center;text-decoration:none}.profile-stat-link:hover .profile-stat-value{color:var(--accent)}.profile-stat-value{font-size:var(--profile-stat-value-size,1.125rem);font-weight:var(--profile-stat-value-weight,700)}.profile-dashboard-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dashboard-tile{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);align-items:center;gap:10px;padding:14px;font-size:.875rem;font-weight:500;display:flex}.dashboard-tile-icon{border-radius:var(--radius-sm);background:var(--accent-soft);width:28px;height:28px;color:var(--accent);justify-content:center;align-items:center;font-size:.875rem;display:flex}.profile-recent-workout{display:block}.profile-recent-workout h2{margin:6px 0 2px;font-size:1rem}.stats-tab{border:1px solid var(--border);color:var(--text-secondary);background:0 0;border-radius:999px;flex:1;padding:10px 12px;font-size:.8125rem;font-weight:500}.stats-tabs{gap:8px;margin-bottom:12px;display:flex}.stats-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.profile-bio{color:var(--text-primary);margin:8px 0 0;font-size:.9375rem;line-height:1.4}.profile-website{color:var(--accent);margin-top:4px;font-size:.875rem;text-decoration:none;display:inline-block}.profile-action-row{gap:8px;display:flex}.profile-action-row .btn{flex:1}.edit-profile-preview{flex-direction:column;align-items:center;gap:12px;margin-bottom:8px;display:flex;position:relative}.edit-profile-cover-preview{object-fit:cover;border-radius:12px;width:100%;height:96px}.edit-profile-cover-button,.edit-profile-avatar-button{cursor:pointer;background:0 0;border:none;padding:0}.edit-profile-cover-button{width:100%}.edit-profile-photo-actions{flex-wrap:wrap;gap:8px;display:flex}.edit-profile-advanced{margin-top:4px}.edit-profile-advanced summary{cursor:pointer;color:var(--text-muted);font-size:.875rem}.stats-chart{align-items:flex-end;gap:6px;height:96px;padding-top:8px;display:flex}.stats-chart-bar-wrap{flex:1;align-items:flex-end;height:100%;display:flex}.stats-chart-bar{background:linear-gradient(180deg, var(--accent) 0%, #2563eb 100%);border-radius:4px 4px 0 0;width:100%;min-height:4px}.body-graph{align-items:flex-end;gap:8px;height:120px;padding-top:8px;display:flex}.body-graph-day{flex-direction:column;flex:1;align-items:center;gap:4px;height:100%;display:flex}.body-graph-count{color:var(--text-primary);font-size:.75rem;font-weight:600}.body-graph-bar-wrap{flex:1;align-items:flex-end;width:100%;display:flex}.body-graph-bar{background:linear-gradient(180deg, #60a5fa 0%, var(--accent) 100%);border-radius:6px 6px 0 0;width:100%;min-height:4px}.body-graph-label{color:var(--text-secondary);font-size:.75rem}.muscle-split-bars,.muscle-compare-list{flex-direction:column;gap:10px;display:flex}.muscle-split-row,.muscle-compare-row{grid-template-columns:72px 1fr 36px;align-items:center;gap:8px;display:grid}.muscle-split-label,.muscle-compare-label{color:var(--text-secondary);font-size:.8125rem}.muscle-split-track,.muscle-compare-bar-wrap{background:var(--bg-muted);border-radius:999px;height:10px;overflow:hidden}.muscle-split-fill{background:var(--accent);border-radius:999px;height:100%}.muscle-split-value,.muscle-compare-value{text-align:right;font-size:.8125rem;font-weight:600}.muscle-compare-bars{flex-direction:column;gap:4px;display:flex}.muscle-compare-bar{border-radius:999px;height:100%}.muscle-compare-bar-current{background:var(--accent)}.muscle-compare-bar-previous{background:#94a3b8}.body-heatmap-svg{width:100%;max-width:180px;margin:0 auto}.body-heatmap-legend{flex-wrap:wrap;gap:8px 12px;display:flex}.body-heatmap-legend-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.body-heatmap-swatch{border-radius:999px;width:10px;height:10px}.engagement-row button,.engagement-row span{align-items:center;gap:var(--feed-engagement-icon-gap,6px);display:inline-flex}.engagement-btn{color:var(--text-secondary);font-size:var(--feed-engagement-btn-size,.875rem);padding:var(--feed-engagement-btn-padding,6px) 0;background:0 0;border:none}.engagement-btn:hover{color:var(--text-primary)}.engagement-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;color:var(--text-primary);border-radius:4px}:root[data-theme=light] .engagement-btn{color:var(--text-secondary)}:root[data-theme=light] .feed-author-username,:root[data-theme=light] .feed-card .text-muted{color:var(--text-tertiary)}.feed-comments-panel{border-top:1px solid var(--border-subtle);flex-direction:column;gap:10px;margin-top:12px;padding-top:12px;display:flex}.feed-comments-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.feed-comment-item{flex-direction:column;gap:2px;font-size:.875rem;display:flex}.feed-comment-compose{align-items:center;gap:8px;display:flex}.feed-comment-compose .input{flex:1}
