:root{color-scheme:dark;font-family:Inter,Segoe UI,sans-serif;--app-background: radial-gradient(circle at top, rgba(67, 97, 238, .18), transparent 42%), linear-gradient(180deg, #10131a 0%, #090b10 100%);color:#f3f5f8;--surface: rgba(17, 21, 29, .84);--surface-border: rgba(255, 255, 255, .08);--surface-strong: rgba(24, 29, 39, .96);--text-strong: #f3f5f8;--text-muted: #a4adba;--accent: #7bdff6;--accent-strong: #45b7d1}:root[data-theme=light]{--app-background: radial-gradient(circle at top, rgba(80, 133, 255, .18), transparent 38%), linear-gradient(180deg, #f7fafc 0%, #edf2f7 100%);color:#14202d;--surface: rgba(255, 255, 255, .9);--surface-border: rgba(20, 32, 45, .08);--surface-strong: rgba(255, 255, 255, .98);--text-strong: #14202d;--text-muted: #5e6b79;--accent: #2563eb;--accent-strong: #1d4ed8}:root[data-theme=pink]{--app-background: radial-gradient(circle at top, rgba(255, 104, 171, .24), transparent 40%), linear-gradient(180deg, #21111a 0%, #120a11 100%);color:#fff3f8;--surface: rgba(34, 16, 27, .86);--surface-border: rgba(255, 255, 255, .08);--surface-strong: rgba(48, 22, 38, .96);--text-strong: #fff3f8;--text-muted: #d6a9bc;--accent: #ff7ab8;--accent-strong: #ff4f9d}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{min-height:100vh;background:var(--app-background);color:inherit}button,input,textarea,select{font:inherit}.visually-hidden-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-modal-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:24px;background:#04080ead;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:1000}.auth-modal-overlay.is-visible{display:flex}.auth-modal-card{position:relative;width:min(100%,480px);padding:28px;border:1px solid var(--surface-border);border-radius:28px;background:var(--surface);box-shadow:0 24px 80px #00000052}.auth-close-btn{position:absolute;top:14px;right:14px;width:40px;height:40px;border:0;border-radius:999px;background:#ffffff0f;color:var(--text-strong);cursor:pointer;font-size:1.3rem}.auth-modal-card h2,.auth-card h3{margin:0}.auth-copy{color:var(--text-muted);line-height:1.6}.auth-card{display:grid;gap:16px;margin-top:18px}.auth-button-column,.auth-button-row{display:grid;gap:12px}.auth-button-row{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-form{display:grid;gap:12px}.auth-form label{display:grid;gap:8px;color:var(--text-strong);font-weight:600}.auth-form input{border:1px solid var(--surface-border);border-radius:16px;padding:14px 16px;background:var(--surface-strong);color:var(--text-strong)}.auth-oauth-btn,.auth-primary-btn,.auth-secondary-btn,.auth-danger-btn,.auth-toggle-btn{border:0;border-radius:16px;padding:14px 16px;cursor:pointer;font:inherit}.auth-oauth-btn,.auth-primary-btn{background:linear-gradient(135deg,#7bdff6eb,#45b7d1eb);color:#081018;font-weight:700}.auth-secondary-btn,.auth-toggle-btn{background:#ffffff0f;color:var(--text-strong)}.auth-danger-btn{background:#ff6b8129;color:#ffd7de}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--text-muted)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--surface-border)}.auth-feedback{margin-top:14px;padding:12px 14px;border-radius:16px;background:#ffffff0a;color:var(--text-strong)}.auth-feedback.is-error{border:1px solid rgba(255,107,129,.28);background:#7c223038;color:#ffd7de}.auth-feedback.is-success{border:1px solid rgba(61,220,151,.28);background:#1161432e;color:#dff8e8}@media(max-width:640px){.auth-button-row{grid-template-columns:1fr}}.calculator-shell{display:grid;gap:20px}.calculator-hero{padding:28px;border:1px solid var(--surface-border);border-radius:24px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 24px 60px #00000047}.calculator-hero h2{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:.98}.calculator-hero p{margin:12px 0 0;max-width:58ch;color:var(--text-muted);line-height:1.6}.calculator-grid{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:20px}.calculator-card{padding:24px;border:1px solid var(--surface-border);border-radius:24px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 45px #00000038}.calculator-card h3{margin:0;font-size:1.05rem}.calculator-card>p{margin:10px 0 0;color:var(--text-muted);line-height:1.5}.calculator-form{display:grid;gap:20px;margin-top:22px}.control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.control-group{display:grid;gap:10px}.control-group label,.control-group legend{padding:0;color:var(--text-strong);font-weight:600}.control-group fieldset{padding:0;margin:0;border:0}.pill-toggle{display:inline-grid;grid-auto-flow:column;gap:8px}.pill-toggle button{border:1px solid var(--surface-border);border-radius:999px;padding:10px 16px;background:#ffffff0a;color:var(--text-muted);cursor:pointer}.pill-toggle button.is-active{background:linear-gradient(135deg,#7bdff633,#45b7d142);color:var(--text-strong)}.control-group input,.control-group select{width:100%;border:1px solid var(--surface-border);border-radius:16px;padding:14px 16px;background:var(--surface-strong);color:var(--text-strong)}.control-hint{color:var(--text-muted);font-size:.85rem;line-height:1.5}.plate-checklist{display:flex;flex-wrap:wrap;gap:10px}.plate-check{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--surface-border);border-radius:999px;background:#ffffff08;color:var(--text-muted)}.plate-check input{width:auto;margin:0}.calculator-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.calculator-meta-item{padding:14px 16px;border-radius:18px;background:#ffffff08}.calculator-meta-item span,.result-summary span{display:block;color:var(--text-muted);font-size:.82rem}.calculator-meta-item strong,.result-summary strong{display:block;margin-top:4px;font-size:1rem}.session-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--surface-border);border-radius:18px;background:#ffffff08}.session-banner p{margin:4px 0 0;color:var(--text-muted);font-size:.92rem}.session-banner strong{display:block;font-size:1rem}.session-chip{border-radius:999px;padding:8px 12px;background:#7bdff62e;color:var(--text-strong);white-space:nowrap}.action-row{display:flex;flex-wrap:wrap;gap:12px}.primary-btn,.secondary-btn{border:0;border-radius:16px;padding:14px 18px;cursor:pointer}.primary-btn{background:linear-gradient(135deg,#7bdff6,#45b7d1);color:#081018;font-weight:700}.secondary-btn{background:#ffffff0f;color:var(--text-strong)}.primary-btn:disabled,.secondary-btn:disabled{cursor:not-allowed;opacity:.45}.feedback-strip{padding:14px 16px;border-radius:18px;background:#ffffff0a}.feedback-strip.is-success{border:1px solid rgba(61,220,151,.32);background:#11614329}.feedback-strip.is-error{border:1px solid rgba(255,107,107,.32);background:#7d1f1f29}.feedback-strip p{margin:0}.feedback-strip p+p{margin-top:6px;color:var(--text-muted)}.result-shell{display:grid;gap:20px}.result-callout{padding:18px 20px;border-radius:20px;background:#ffffff0a}.result-callout.is-error{border:1px solid rgba(255,107,107,.35);background:#9921212e}.result-callout p{margin:0}.result-callout p+p{margin-top:8px;color:var(--text-muted)}.barbell-stage{padding:28px 16px;border-radius:24px;background:linear-gradient(180deg,#ffffff08,#fff0),#04060aa8}.barbell-visual{display:grid;grid-template-columns:minmax(80px,1fr) minmax(140px,220px) minmax(80px,1fr);align-items:center;gap:12px;min-height:220px}.plate-stack{display:flex;align-items:flex-end;gap:6px;min-height:170px}.plate-stack.is-left{justify-content:flex-end}.plate-stack.is-right{justify-content:flex-start}.plate-chip{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:12px 6px;border-radius:12px 12px 8px 8px;background:var(--plate-color, #8ab4f8);color:#0d1117;font-size:.74rem;font-weight:700;box-shadow:inset 0 -10px 18px #00000038}.plate-chip[data-height=tall]{min-height:132px}.plate-chip[data-height=mid]{min-height:108px}.plate-chip[data-height=short]{min-height:88px}.bar-core{position:relative;height:12px;border-radius:999px;background:linear-gradient(90deg,#6f7783,#d9dce3 50%,#6f7783)}.bar-core:before,.bar-core:after{content:"";position:absolute;top:50%;width:10px;height:48px;transform:translateY(-50%);border-radius:999px;background:linear-gradient(180deg,#8f97a3,#4a515c)}.bar-core:before{left:18px}.bar-core:after{right:18px}.bar-core-label{display:inline-flex;justify-content:center;width:100%;margin-top:16px;color:var(--text-strong);font-weight:700}.result-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.result-summary{padding:16px;border-radius:18px;background:#ffffff08}.result-plate-list{display:flex;flex-wrap:wrap;gap:8px}.result-plate-pill{border:1px solid var(--surface-border);border-radius:999px;padding:8px 12px;color:var(--text-muted);background:#ffffff08}.recent-log-list{display:grid;gap:10px}.recent-log-item{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;background:#ffffff08}.recent-log-item p{margin:0}.recent-log-item p+p{margin-top:4px;color:var(--text-muted);font-size:.88rem}.empty-copy{color:var(--text-muted);line-height:1.6}@media(max-width:960px){.calculator-grid{grid-template-columns:1fr}}@media(max-width:720px){.control-grid,.calculator-meta,.result-summary-grid{grid-template-columns:1fr}.barbell-visual{grid-template-columns:1fr;gap:20px}.plate-stack.is-left,.plate-stack.is-right{justify-content:center}}.history-shell{display:grid;gap:20px}.history-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px;border:1px solid var(--surface-border);border-radius:24px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 45px #00000038}.history-header h2{margin:0;font-size:clamp(1.7rem,3vw,2.4rem)}.history-header p{margin:10px 0 0;color:var(--text-muted);line-height:1.6;max-width:60ch}.history-pill{display:inline-flex;align-items:center;border-radius:999px;padding:10px 14px;background:#7bdff629;color:var(--text-strong);white-space:nowrap}.history-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:14px;padding:20px 24px;border:1px solid var(--surface-border);border-radius:24px;background:var(--surface)}.history-toolbar label{display:grid;gap:8px;color:var(--text-strong);font-weight:600}.history-toolbar select{width:100%;border:1px solid var(--surface-border);border-radius:16px;padding:14px 16px;background:var(--surface-strong);color:var(--text-strong)}.history-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.history-feedback{padding:14px 16px;border:1px solid rgba(102,227,163,.32);border-radius:16px;background:#35704c2e;color:#dff8e8}.history-feedback-error{border-color:#ff6b8147;background:#7c223038;color:#ffd7de}.history-summary-card{padding:18px;border:1px solid var(--surface-border);border-radius:20px;background:var(--surface)}.history-summary-card span{display:block;color:var(--text-muted);font-size:.82rem}.history-summary-card strong{display:block;margin-top:6px;font-size:1.2rem}.history-day-list{display:grid;gap:16px}.history-day-card{padding:22px 24px;border:1px solid var(--surface-border);border-radius:24px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.history-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}.history-day-head h3{margin:0;font-size:1.1rem}.history-day-head p{margin:6px 0 0;color:var(--text-muted)}.history-day-actions{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.history-day-actions strong{margin-right:4px;white-space:nowrap}.history-day-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#ffffff08;color:var(--text-muted);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.history-day-btn:hover{background:#ffffff14;border-color:#ffffff29;color:var(--text-primary)}.history-day-btn.delete:hover{color:#ff9baa}.history-day-btn svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none}.history-exercise-block+.history-exercise-block{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.06)}.history-exercise-block h4{margin:0 0 10px;font-size:1rem}.history-set-list{display:grid;gap:10px}.history-set-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;background:#ffffff08}.history-set-row p{margin:0}.history-set-row p+p{margin-top:4px;color:var(--text-muted);font-size:.88rem}.history-set-actions{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.history-edit-button,.history-delete-button{border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:8px 12px;background:#ff6b8124;color:#ffd7de;cursor:pointer;font:inherit}.history-edit-button{background:#7aa8ff24;color:#dbe8ff}.history-edit-button:hover{background:#7aa8ff3d}.history-delete-button:hover{background:#ff6b8138}.history-empty{padding:26px;border:1px dashed var(--surface-border);border-radius:24px;color:var(--text-muted);text-align:center;line-height:1.7}.history-activity-statuses{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.history-activity-status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:700;letter-spacing:.02em}.history-activity-status.status-completed{background:#4ade8029;color:#baf5ca}.history-activity-status.status-skipped{background:#fbbf242e;color:#ffe3a3}.history-activity-status.status-stopped{background:#f8717129;color:#ffc7c7}.history-activity-status.status-started{background:#60a5fa29;color:#c9e0ff}.history-activity-log{display:grid;gap:8px;margin:14px 0 18px}.history-activity-row{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;padding:10px 12px;border-radius:14px;background:#ffffff0a}.history-activity-time{color:var(--text-muted);font-size:.84rem}.history-activity-label{color:var(--text-strong)}@media(max-width:720px){.history-header,.history-day-head{flex-direction:column}.history-day-actions{width:100%;margin-left:0}.history-day-actions strong{margin-right:auto}.history-toolbar,.history-summary,.history-activity-row{grid-template-columns:1fr}}#progressChart{display:block;width:100%;height:100%}.insights-shell{display:grid;gap:1.25rem}.insights-hero,.insights-section,.insights-empty-card,.insights-pr-card,.insights-stat,.insights-card,.insights-list-row,.insights-alert,.insights-program-card{border:1px solid var(--border-color);border-radius:20px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-bg) 90%,white 10%),var(--panel-bg));box-shadow:0 18px 40px #0000002e}.insights-hero,.insights-section{padding:1.25rem}.insights-hero p,.insights-section-head p,.insights-section-head h3{margin:0}.insights-hero p:last-child,.insights-program-workout p,.insights-pr-card span,.insights-pr-card small,.insights-list-row span,.insights-alert span,.insights-alert small,.insights-card p:last-child{color:var(--text-secondary)}.insights-grid{display:grid;gap:1rem}.insights-section-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;margin-bottom:1rem}.insights-card-label{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--text-tertiary)}.insights-stat-grid,.insights-pr-grid,.insights-card-grid{display:grid;gap:.85rem}.insights-stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.insights-stat,.insights-pr-card,.insights-card,.insights-list-row,.insights-alert,.insights-empty-card{padding:.95rem 1rem}.insights-stat span{display:block;color:var(--text-secondary);font-size:.82rem}.insights-stat strong{display:block;margin-top:.2rem;font-size:1.15rem}.insights-stat-value.is-success,.insights-stat-value.is-positive,.trend-up{color:#86efac}.insights-stat-value.is-warning,.trend-down{color:#fca5a5}.insights-pr-grid,.insights-card-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.insights-pr-card,.insights-card,.insights-program-card{display:grid;gap:.35rem}.insights-list,.insights-alert-list{display:grid;gap:.75rem}.insights-celebration,.insights-status-banner{padding:.9rem 1rem;border-radius:16px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--panel-bg) 94%,black 6%)}.insights-celebration{margin-bottom:.9rem;border-left:3px solid var(--accent-color)}.insights-celebration-text{color:var(--text-secondary);line-height:1.45}.insights-streak-row{display:flex;justify-content:space-between;gap:.85rem;align-items:center;margin-bottom:.9rem}.insights-streak-badge{display:inline-flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border-radius:18px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--panel-bg) 94%,black 6%)}.insights-streak-badge strong{display:block;font-size:1.35rem}.insights-streak-badge span:last-child{color:var(--text-secondary);font-size:.8rem}.insights-streak-badge.is-positive,.insights-streak-badge.is-success{background:linear-gradient(135deg,#ff6b35,#f7c948);color:#fff;border-color:transparent}.insights-streak-badge.is-positive span:last-child,.insights-streak-badge.is-success span:last-child{color:#ffffffeb}.insights-streak-chip{display:inline-flex;align-items:center;padding:.45rem .8rem;border-radius:999px;border:1px solid var(--border-color);color:var(--text-secondary);font-size:.78rem;white-space:nowrap}.insights-streak-chip.is-complete{color:#86efac}.insights-status-banner{margin-bottom:.9rem;color:var(--text-secondary)}.insights-status-banner.is-success,.insights-status-banner.is-positive{border-color:#86efac38}.insights-status-banner.is-warning{border-color:#fcd34d38}.insights-chart-shell{display:grid;gap:1rem}.insights-chart-controls{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.insights-chart-controls label{display:grid;gap:.35rem;color:var(--text-secondary);font-size:.84rem}.insights-chart-controls select{width:100%;border:1px solid var(--border-color);border-radius:14px;background:color-mix(in srgb,var(--panel-bg) 88%,black 12%);color:var(--text-primary);padding:.75rem .9rem}.insights-chart-tabs{display:inline-flex;gap:.45rem;padding:.3rem;border:1px solid var(--border-color);border-radius:999px;background:color-mix(in srgb,var(--panel-bg) 90%,black 10%);width:fit-content}.insights-chart-tab{border:0;border-radius:999px;background:transparent;color:var(--text-secondary);padding:.6rem 1rem;font:inherit;cursor:pointer}.insights-chart-tab.is-active{background:var(--accent-color);color:#081018;font-weight:700}.insights-chart-stage{display:grid;gap:.5rem}.insights-chart-svg{width:100%;height:220px;border:1px solid var(--border-color);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-bg) 82%,white 18%),var(--panel-bg))}.insights-chart-grid-line{stroke:color-mix(in srgb,var(--border-color) 65%,transparent 35%);stroke-width:1;fill:none}.insights-chart-line{stroke:var(--accent-color);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;fill:none}.insights-chart-point{fill:var(--accent-color);stroke:color-mix(in srgb,var(--panel-bg) 75%,black 25%);stroke-width:2}.insights-chart-axis{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:.4rem;color:var(--text-tertiary);font-size:.73rem;text-align:center}.insights-chart-summary{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.insights-list-row{display:flex;justify-content:space-between;gap:1rem;align-items:center}.insights-alert{display:grid;gap:.25rem}.insights-program-card{gap:1rem}.insights-program-gains{display:grid;gap:.55rem}.insights-program-gain{display:flex;justify-content:space-between;gap:.8rem;color:var(--text-secondary)}.insights-program-workout{padding-top:1rem;border-top:1px solid var(--border-color)}.insights-card-positive{border-color:#86efac38}.insights-card-warning{border-color:#fcd34d38}.insights-alert-success{border-color:#86efac38}@media(min-width:960px){.insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.insights-streak-row,.insights-list-row{flex-direction:column;align-items:flex-start}.insights-chart-tabs{width:100%;justify-content:stretch}.insights-chart-tab{flex:1 1 0}.insights-chart-axis{font-size:.68rem}}body{padding:24px}.app-shell{margin:0 auto;max-width:1100px}.app-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.eyebrow,.placeholder-label,.status-label{margin:0 0 8px;color:var(--accent);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}.app-header h1,.status-card h2,.placeholder-card h2{margin:0;font-size:clamp(2rem,5vw,3.4rem);line-height:.96}.version-pill{display:inline-flex;padding:10px 14px;border:1px solid var(--surface-border);border-radius:999px;background:#ffffff0a;color:var(--text-muted);white-space:nowrap}.app-main{display:grid}.view-panel{min-height:420px}.status-card,.placeholder-card{padding:28px;border:1px solid var(--surface-border);border-radius:24px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 24px 60px #00000047}.status-copy,.placeholder-card p{color:var(--text-muted);line-height:1.6}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:24px 0}.status-item{padding:18px;border:1px solid var(--surface-border);border-radius:18px;background:var(--surface-strong)}.status-item strong,.status-item span{display:block}.status-item strong{margin-top:6px;font-size:1.05rem}.next-step-list{display:grid;gap:12px;padding:0;margin:0;list-style:none}.next-step-list li{padding:14px 16px;border-left:3px solid var(--accent);border-radius:14px;background:#ffffff08}.app-nav{position:sticky;bottom:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;margin-top:24px;padding:14px;border:1px solid var(--surface-border);border-radius:24px;background:#0b0e14eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav-tab{border:0;border-radius:16px;padding:14px 16px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease}.nav-tab[data-active=true]{background:linear-gradient(135deg,#7bdff638,#45b7d12e);color:var(--text-strong)}.nav-tab:hover{transform:translateY(-1px)}@media(max-width:720px){body{padding:16px}.app-header{flex-direction:column}.app-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}.body-map-overlay .muscle-region{fill:var(--muscle-fill, transparent)}.muscles-shell{display:grid;gap:1.25rem}.muscles-hero,.muscles-weekly-summary,.muscles-map-card,.muscles-detail-card,.muscles-empty,.muscles-volume-item{border:1px solid var(--border-color);border-radius:20px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-bg) 90%,white 10%),var(--panel-bg));box-shadow:0 18px 40px #0000002e}.muscles-hero,.muscles-detail-card,.muscles-empty{padding:1.25rem}.muscles-hero p:last-child,.muscles-detail-copy,.muscles-detail-exercise-item span,.muscles-weekly-summary span{color:var(--text-secondary)}.muscles-summary-row,.muscles-week-selector,.muscles-detail-header,.muscles-detail-stats,.muscles-detail-exercise-item{display:flex;justify-content:space-between;gap:1rem;align-items:center}.muscles-summary-row{flex-wrap:wrap}.muscles-week-selector{padding:.4rem;border-radius:999px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--panel-bg) 94%,black 6%)}.muscles-week-btn{border:0;border-radius:999px;width:2.2rem;height:2.2rem;background:transparent;color:var(--text-primary);cursor:pointer}.muscles-week-btn:disabled{opacity:.35;cursor:default}.muscles-weekly-summary{padding:.9rem 1rem}.muscles-summary-badge{display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .85rem;border-radius:999px;border:1px solid var(--border-color);color:var(--text-secondary)}.muscles-summary-badge.complete{border-color:#86efac38;color:#86efac}.muscles-summary-copy{margin:.55rem 0 0;color:var(--text-secondary)}.muscles-primary-grid{display:grid;gap:1rem}.muscles-focus-grid{display:grid;gap:.85rem}.muscles-focus-card{padding:.95rem 1rem;border-radius:20px;border:1px solid var(--border-color);background:linear-gradient(180deg,color-mix(in srgb,var(--panel-bg) 90%,white 10%),var(--panel-bg));box-shadow:0 18px 40px #0000002e}.muscles-focus-card span,.muscles-focus-card small{display:block;color:var(--text-secondary)}.muscles-focus-card strong{display:block;margin-top:.25rem}.muscles-volume-grid{display:grid;gap:.85rem}.muscles-volume-item{width:100%;padding:.95rem 1rem;text-align:left;cursor:pointer}.muscles-map-card{padding:1.1rem;display:grid;gap:1rem}.muscles-map-header h3,.muscles-map-header p{margin:0}.muscles-map-copy,.muscles-map-side-label,.muscles-detail-stats{color:var(--text-secondary)}.muscles-map-grid{display:grid;gap:.85rem}.muscles-map-panel{border:1px solid var(--border-color);border-radius:18px;padding:.85rem;background:color-mix(in srgb,var(--panel-bg) 95%,black 5%)}.muscles-map-svg-shell{border-radius:14px;background:radial-gradient(circle at top,color-mix(in srgb,var(--accent-color) 10%,transparent 90%),transparent 55%),linear-gradient(180deg,color-mix(in srgb,var(--panel-bg) 88%,white 12%),color-mix(in srgb,var(--panel-bg) 94%,black 6%))}.muscles-map-svg{width:100%;height:auto;aspect-ratio:1 / 1}.muscles-map-side-label{margin-top:.55rem;text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.muscles-region{fill:#ffffff0f;stroke:#ffffff14;stroke-width:1.5;cursor:pointer;transition:fill .2s ease,stroke .2s ease,transform .2s ease}.muscles-region.optimal{fill:#34c75959}.muscles-region.partial{fill:#64b5f659}.muscles-region.low{fill:#ff950052}.muscles-region.empty{fill:#ffffff0a}.muscles-region:hover,.muscles-region.is-selected{stroke:var(--accent-color);fill:color-mix(in srgb,var(--accent-color) 45%,transparent 55%)}.muscles-volume-item.selected{border-color:var(--accent-color);background:color-mix(in srgb,var(--accent-color) 10%,var(--panel-bg))}.muscles-volume-item.optimal .muscles-volume-bar-fill{background:#34c759}.muscles-volume-item.partial .muscles-volume-bar-fill{background:var(--accent-color)}.muscles-volume-item.low .muscles-volume-bar-fill{background:#ff9500}.muscles-volume-item.empty .muscles-volume-bar-fill{background:#ffffff1f}.muscles-volume-name{font-weight:600}.muscles-volume-bar-track,.muscles-detail-bar{margin-top:.65rem;height:.65rem;border-radius:999px;background:#ffffff14;overflow:hidden}.muscles-volume-bar-fill,.muscles-detail-bar-fill{height:100%;border-radius:inherit;background:var(--accent-color)}.muscles-volume-count{margin-top:.55rem;color:var(--text-secondary);font-size:.9rem}.muscles-detail-progress{margin:1rem 0}.muscles-detail-card{grid-column:1 / -1}.muscles-detail-meta{display:flex;flex-wrap:wrap;gap:.6rem 1rem;margin-top:.9rem;color:var(--text-secondary);font-size:.84rem}.muscles-status-chip{padding:.35rem .65rem;border-radius:999px;border:1px solid var(--border-color);font-size:.78rem;font-weight:700;white-space:nowrap}.muscles-status-chip.optimal{color:#86efac}.muscles-status-chip.partial{color:#93c5fd}.muscles-status-chip.low{color:#fdba74}.muscles-status-chip.empty{color:var(--text-secondary)}.muscles-detail-exercises{display:grid;gap:.75rem}.muscles-detail-exercise-item{padding:.8rem .95rem;border-radius:16px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--panel-bg) 95%,black 5%)}@media(min-width:960px){.muscles-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.muscles-primary-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.muscles-volume-grid,.muscles-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.muscles-summary-row,.muscles-detail-header,.muscles-detail-stats,.muscles-detail-meta,.muscles-detail-exercise-item{flex-direction:column;align-items:flex-start}}.settings-shell{display:grid;gap:20px}.settings-hero,.settings-card{padding:24px;border:1px solid var(--surface-border);border-radius:24px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 45px #0000002e}.settings-card-wide{display:grid;gap:18px}.settings-hero h2,.settings-card h3{margin:0}.settings-hero p,.settings-card p{color:var(--text-muted);line-height:1.6}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-field{display:grid;gap:8px;margin-top:14px}.settings-field label,.settings-field span{font-weight:600}.settings-field input,.settings-field select{width:100%;border:1px solid var(--surface-border);border-radius:16px;padding:14px 16px;background:var(--surface-strong);color:inherit}.settings-chip-row,.settings-check-grid,.settings-stat-list,.settings-action-row{display:grid;gap:12px}.billing-plan-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.billing-plan-card{display:grid;gap:6px;text-align:left;border:1px solid var(--surface-border);border-radius:18px;padding:16px;background:#ffffff0a;color:inherit;cursor:pointer;font:inherit}.billing-plan-card span,.billing-note{color:var(--text-muted)}.billing-feedback{margin-top:16px;padding:14px 16px;border-radius:16px;border:1px solid var(--surface-border);background:#7bdff61f}.billing-feedback.is-error{background:#ff66661f}.billing-feedback.is-success{background:#7bdff61f}.settings-chip-row{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-chip{border:1px solid var(--surface-border);border-radius:18px;padding:14px 16px;background:#ffffff0a;color:inherit;cursor:pointer;text-transform:capitalize}.settings-chip.is-active{border-color:#7bdff657;background:#7bdff624}.settings-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-check{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--surface-border);border-radius:16px;background:#ffffff08}.settings-stat{padding:14px 16px;border-left:3px solid var(--accent);border-radius:16px;background:#ffffff08}.settings-stat span,.settings-stat strong{display:block}.settings-stat span{color:var(--text-muted);font-size:.84rem}.settings-stat strong{margin-top:6px;overflow-wrap:anywhere}.settings-action-row{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.settings-action-btn{border:0;border-radius:16px;padding:14px 16px;background:linear-gradient(135deg,#7bdff6eb,#45b7d1eb);color:#081018;cursor:pointer;font:inherit;font-weight:700}.settings-action-btn.secondary{background:#ffffff0f;color:var(--text-strong)}.exercise-manager-header,.exercise-manager-summary,.exercise-manager-columns,.exercise-manager-actions,.exercise-manager-tags,.exercise-manager-check-grid{display:grid;gap:12px}.exercise-manager-header{grid-template-columns:minmax(0,1fr) 220px;align-items:start}.exercise-manager-summary{grid-template-columns:1fr}.exercise-manager-create{display:grid;gap:16px;padding:18px;border:1px solid var(--surface-border);border-radius:20px;background:#ffffff08}.exercise-manager-create-muscles{margin-top:0}.exercise-manager-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.exercise-manager-column{display:grid;gap:12px}.exercise-manager-column h4{margin:0}.exercise-manager-list{display:grid;gap:12px}.exercise-manager-row{display:grid;gap:12px;padding:18px;border:1px solid var(--surface-border);border-radius:18px;background:#ffffff08}.exercise-manager-row.is-hidden{opacity:.9}.exercise-manager-row-top{display:flex;justify-content:space-between;gap:16px;align-items:start}.exercise-manager-tags{grid-template-columns:repeat(auto-fit,minmax(0,max-content))}.exercise-manager-tag{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#7bdff61f;color:var(--text-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.exercise-manager-actions{grid-auto-flow:column;grid-auto-columns:max-content}.exercise-manager-copy{margin:0;color:var(--text-muted)}.exercise-manager-editor{display:grid;gap:12px}.exercise-manager-editor summary{cursor:pointer;color:var(--accent);font-weight:700}.exercise-manager-form{display:grid;gap:14px;padding-top:8px}.exercise-manager-check-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.exercise-manager-check{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--surface-border);border-radius:14px;background:#ffffff05}.exercise-manager-feedback{padding:14px 16px;border-radius:16px;border:1px solid var(--surface-border);background:#7bdff61f}.exercise-manager-feedback.is-error{background:#ff66661f}.exercise-manager-feedback.is-success{background:#7bdff61f}.exercise-manager-empty{margin:0;padding:16px;border:1px dashed var(--surface-border);border-radius:16px;color:var(--text-muted)}.upload-manager-shell{display:grid;gap:18px}.upload-manager-header,.upload-manager-usage,.upload-manager-mode,.upload-preview-summary,.upload-manager-section-header,.upload-saved-actions{display:grid;gap:12px}.upload-manager-header{grid-template-columns:minmax(0,1fr) 220px;align-items:start}.upload-manager-usage{grid-template-columns:1fr}.upload-manager-mode{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-manager-form,.upload-manager-section,.upload-preview-list,.upload-saved-list{display:grid;gap:14px}.upload-manager-note{margin:0;color:var(--text-muted)}.upload-manager-feedback{padding:14px 16px;border-radius:16px;border:1px solid var(--surface-border);background:#7bdff61f}.upload-manager-feedback.is-error{background:#ff66661f}.upload-manager-feedback.is-success{background:#7bdff61f}.upload-preview-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.upload-preview-summary>div,.upload-preview-workout,.upload-saved-item{padding:16px;border:1px solid var(--surface-border);border-radius:16px;background:#ffffff08}.upload-preview-summary strong,.upload-preview-summary span{display:block}.upload-preview-summary span{color:var(--text-muted);font-size:.84rem}.upload-preview-workout h4,.upload-manager-section h4{margin:0}.upload-preview-workout ul{display:grid;gap:10px;margin:12px 0 0;padding:0;list-style:none}.upload-preview-workout li{display:flex;justify-content:space-between;gap:16px;color:var(--text-muted)}.upload-preview-workout li strong{color:var(--text-strong)}.upload-manager-section-header{grid-template-columns:minmax(0,1fr) max-content;align-items:center}.upload-saved-item{display:flex;justify-content:space-between;gap:16px;align-items:center}.upload-saved-item p{margin:6px 0 0}.upload-saved-actions{grid-auto-flow:column;grid-auto-columns:max-content}@media(max-width:720px){.settings-grid,.settings-chip-row,.settings-check-grid,.settings-action-row,.billing-plan-grid,.exercise-manager-header,.exercise-manager-columns,.exercise-manager-check-grid,.upload-manager-header,.upload-preview-summary,.upload-manager-mode{grid-template-columns:1fr}.exercise-manager-row-top{flex-direction:column}.exercise-manager-actions{grid-auto-flow:row;grid-auto-columns:1fr}.upload-preview-workout li,.upload-saved-item{flex-direction:column;align-items:start}.upload-saved-actions{grid-auto-flow:row;grid-auto-columns:1fr}}:root{--bg-primary: #111111;--bg-secondary: #1a1a1a;--bg-card: #222222;--text-primary: #ffffff;--text-secondary: #888888;--accent: #64b5f6;--accent-hover: #42a5f5;--border: #333333;--success: #34c759;--warning: #ff9500;--bg: #1a1a1a;--text: #ffffff;--card-bg: #222222;--hover-bg: rgba(255, 255, 255, .08);--plate-45: #e53935;--plate-35: #1e88e5;--plate-25: #fdd835;--plate-10: #43a047;--plate-5: #64b5f6;--plate-2-5: #81c784;--plate-1-25: #9e9e9e;--plate-25kg: #e53935;--plate-20kg: #1e88e5;--plate-15kg: #fdd835;--plate-10kg: #43a047;--plate-5kg: #ffffff;--plate-2-5kg: #c0c0c0;--plate-1-25kg: #9e9e9e;--header-logo-image: none}[data-theme=light]{--bg-primary: #f5f5f7;--bg-secondary: #ffffff;--bg-card: #ffffff;--text-primary: #1d1d1f;--text-secondary: #6e6e73;--accent: #64b5f6;--accent-hover: #42a5f5;--border: #d2d2d7;--success: #34c759;--warning: #ff9500;--bg: #f5f5f7;--text: #1d1d1f;--card-bg: #ffffff;--hover-bg: rgba(29, 29, 31, .06)}[data-theme=pink]{--bg-primary: linear-gradient(135deg, #fff0f5 0%, #e0ffff 50%, #ffe4ec 100%);--bg-secondary: #b2f5ea;--bg-card: linear-gradient(145deg, #ffffff 0%, #e6fffa 100%);--text-primary: #2d3436;--text-secondary: #319795;--accent: #ff1493;--accent-hover: #ff69b4;--border: #81e6d9;--success: #00cec9;--warning: #fdcb6e;--plate-45: #ff1493;--plate-35: #00cec9;--plate-25: #ff69b4;--plate-10: #00b894;--plate-5: #20b2aa;--plate-2-5: #81ecec;--plate-1-25: #48d1cc;--plate-25kg: #e53935;--plate-20kg: #1e88e5;--plate-15kg: #fdd835;--plate-10kg: #43a047;--plate-5kg: #ffffff;--plate-2-5kg: #c0c0c0;--plate-1-25kg: #9e9e9e;--bg: rgba(255, 255, 255, .9);--text: #2d3436;--card-bg: linear-gradient(145deg, #ffffff 0%, #e6fffa 100%);--hover-bg: rgba(255, 255, 255, .55)}[data-theme=pink] body{background:linear-gradient(135deg,#ff69b4,#40e0d0,#ff1493)}[data-theme=pink] .card{background:linear-gradient(145deg,#fff0f5,#ffe4ec,#e0ffff);border:3px solid #ff69b4;box-shadow:0 8px 32px #ff14934d}[data-theme=pink] .unit-toggle{background:linear-gradient(90deg,#ff69b4,#40e0d0)}[data-theme=pink] .unit-btn{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}[data-theme=pink] .unit-btn.active{background:linear-gradient(135deg,#ff1493,#ff69b4);box-shadow:0 4px 15px #ff149366}[data-theme=light] .input-field{border:2px solid var(--border)}[data-theme=light] .settings-toggle{color:#1d1d1f}[data-theme=pink] .input-label{color:#ff1493}[data-theme=pink] .input-field{background:linear-gradient(90deg,#fff0f5,#e0ffff);border:2px solid #ff69b4}[data-theme=pink] .input-field:focus{border-color:#00cec9;box-shadow:0 0 20px #ff14934d}[data-theme=pink] .section-title{color:#ff1493}[data-theme=pink] .plate-toggle label{border-color:#ff69b4;background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .plate-toggle input:checked+label{background:linear-gradient(135deg,#ff1493,#00cec9);border-color:#ff1493;box-shadow:0 4px 15px #ff149366}[data-theme=pink] .bar{background:linear-gradient(180deg,#ff69b4,#00cec9,#319795)}[data-theme=pink] .bar-weight{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}[data-theme=pink] .summary-label{color:#00cec9}[data-theme=pink] .summary-value{color:#ff1493}[data-theme=pink] .summary-total{background:linear-gradient(90deg,#ff1493,#00cec9,#ff1493);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:36px}[data-theme=pink] .theme-toggle{background:linear-gradient(135deg,#ff69b4,#40e0d0);border:2px solid #ff1493}[data-theme=pink] .icon-sparkle{font-weight:900;font-size:22px;background:linear-gradient(135deg,#ff1493,#00cec9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=pink] .empty-state-icon{filter:grayscale(0) hue-rotate(320deg)}[data-theme=pink] .message.error{color:#ff1493}[data-theme=pink] .settings-toggle{background:linear-gradient(135deg,#ff69b4,#40e0d0);border:2px solid #ff1493}[data-theme=pink] .set-btn{border-color:#ff69b4;background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .set-btn:hover{background:linear-gradient(135deg,#ff1493,#00cec9);border-color:#ff1493}[data-theme=pink] .set-dot.active{background:linear-gradient(135deg,#ff1493,#00cec9)}[data-theme=pink] .tracking-option label{border-color:#ff69b4}[data-theme=pink] .tracking-option input:checked+label{background:linear-gradient(135deg,#ff1493,#00cec9);border-color:#ff1493}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:clip;width:100%;max-width:100vw}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px;transition:background .3s ease,color .3s ease;overflow-x:clip}#app{width:100%}.container{width:100%;max-width:500px;margin:0 auto;padding-top:16px;padding-bottom:80px}.header{text-align:center;margin-bottom:136px;padding-top:24px;padding-right:96px;position:relative}.header .title{width:clamp(248px,52vw,332px);aspect-ratio:783 / 417;margin:4px auto 0;background-image:var(--header-logo-image);background-position:center;background-repeat:no-repeat;background-size:118% auto;color:transparent;font-size:0;line-height:0;filter:drop-shadow(0 10px 18px rgba(0,0,0,.14));overflow:hidden;white-space:nowrap}.header-buttons{position:absolute;top:50%;transform:translateY(-50%);right:0;display:flex;gap:8px}.theme-toggle,.settings-toggle{width:44px;height:44px;border:none;background:var(--bg-card);border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;transition:background .2s ease,transform .2s ease}.theme-toggle:hover,.settings-toggle:hover{background:var(--bg-secondary);transform:scale(1.05)}.settings-toggle{font-size:18px;color:#fff}.theme-toggle .icon-sun,.theme-toggle .icon-moon,.theme-toggle .icon-sparkle{position:absolute;transition:opacity .2s ease,transform .2s ease}.theme-toggle .icon-sun{opacity:0;transform:rotate(-90deg)}.theme-toggle .icon-moon{opacity:1;transform:rotate(0)}.theme-toggle .icon-sparkle{opacity:0;transform:rotate(-90deg)}[data-theme=light] .theme-toggle .icon-sun{opacity:1;transform:rotate(0)}[data-theme=light] .theme-toggle .icon-moon{opacity:0;transform:rotate(90deg)}[data-theme=light] .theme-toggle .icon-sparkle{opacity:0;transform:rotate(-90deg)}[data-theme=pink] .theme-toggle .icon-sun,[data-theme=pink] .theme-toggle .icon-moon{opacity:0;transform:rotate(90deg)}[data-theme=pink] .theme-toggle .icon-sparkle{opacity:1;transform:rotate(0)}.account-btn{width:44px;height:44px;border:none;background:var(--bg-card);border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;position:relative}.account-btn:hover{background:var(--bg-secondary);transform:scale(1.05)}.account-btn.logged-in{background:var(--accent)}.account-avatar{width:100%;height:100%;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);background-size:cover;background-position:center;font-weight:600;font-size:14px}.account-btn.logged-in .account-avatar{color:#fff}.account-avatar img{width:100%;height:100%;border-radius:10px;object-fit:cover}.sync-indicator{position:absolute;bottom:-4px;right:-4px;width:12px;height:12px;border-radius:50%;border:2px solid var(--bg-primary);display:none}.sync-indicator.syncing{display:block;background:var(--warning);animation:pulse 1s infinite}.sync-indicator.synced{display:block;background:var(--success)}.sync-indicator.error{display:block;background:#e53935}.sync-indicator.partial{display:block;background:#ff9800}.sync-indicator.offline{display:block;background:var(--text-secondary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.upgrade-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;padding:20px}.upgrade-modal-overlay.visible{opacity:1;visibility:visible}.upgrade-modal{background:var(--bg-card);border-radius:24px;padding:32px;max-width:360px;width:100%;text-align:center;position:relative;transform:scale(.9);transition:transform .2s ease}.upgrade-modal-overlay.visible .upgrade-modal{transform:scale(1)}.upgrade-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:28px;color:var(--text-secondary);cursor:pointer;line-height:1;padding:4px}.upgrade-modal-close:hover{color:var(--text-primary)}.upgrade-modal-icon{margin-bottom:16px;color:var(--accent)}.upgrade-modal-title{margin:0 0 8px;font-size:24px;font-weight:700;color:var(--text-primary)}.upgrade-modal-subtitle{margin:0 0 24px;color:var(--text-secondary);font-size:14px}.upgrade-features{list-style:none;padding:0;margin:0 0 24px;text-align:left}.upgrade-features li{padding:10px 0 10px 28px;position:relative;color:var(--text-primary);font-size:15px;border-bottom:1px solid var(--border)}.upgrade-features li:last-child{border-bottom:none}.upgrade-features li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700}.price-options{display:flex;gap:12px;margin-bottom:20px}.price-option{flex:1;position:relative;cursor:pointer}.price-option input{position:absolute;opacity:0;width:0;height:0}.price-option-content{display:flex;flex-direction:column;align-items:center;padding:16px 12px;border:2px solid var(--border);border-radius:12px;background:var(--bg-secondary);transition:all .2s ease}.price-option.selected .price-option-content,.price-option input:checked+.price-option-content{border-color:var(--accent);background:#3b82f61a}.price-option-label{font-size:14px;color:var(--text-secondary);margin-bottom:4px}.price-option-price{font-size:18px;font-weight:700;color:var(--text)}.price-option-savings{font-size:11px;color:var(--success);background:#22c55e26;padding:2px 8px;border-radius:10px;margin-top:6px;font-weight:600}.upgrade-btn{width:100%;padding:16px 24px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.upgrade-btn:hover{background:var(--accent-hover);transform:scale(1.02)}.upgrade-signin-link{margin-top:16px;font-size:14px;color:var(--text-secondary)}.upgrade-signin-link a{color:var(--accent);text-decoration:none}.upgrade-signin-link a:hover{text-decoration:underline}.promo-code-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.promo-code-toggle{font-size:13px;color:var(--text-secondary);text-decoration:none}.promo-code-toggle:hover{color:var(--accent)}.promo-code-input-wrapper{display:none;margin-top:12px;gap:8px}.promo-code-input-wrapper.visible{display:flex}.promo-code-input{flex:1;padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px;text-transform:uppercase}.promo-code-input:focus{outline:none;border-color:var(--accent)}.promo-code-apply{padding:10px 16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease}.promo-code-apply:hover{background:var(--border)}.promo-code-error{margin-top:8px;font-size:13px;color:#e53935;display:none}.promo-code-error.visible{display:block}.promo-code-error.success{color:var(--success)}.auth-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1001;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;padding:20px}.auth-modal-overlay.visible{opacity:1;visibility:visible}.auth-modal{background:var(--bg-card);border-radius:24px;padding:32px;max-width:360px;width:100%;text-align:center;position:relative;transform:scale(.9);transition:transform .2s ease}.auth-modal-overlay.visible .auth-modal{transform:scale(1)}.auth-modal-title{font-size:22px;font-weight:700;margin-bottom:4px;color:var(--text)}.auth-modal-subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:20px}.auth-google-btn{width:100%;padding:14px;border:2px solid var(--border);border-radius:12px;background:var(--bg-secondary);color:var(--text);font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .2s ease}.auth-google-btn:hover{background:var(--border)}.auth-google-btn svg{width:20px;height:20px}.auth-apple-btn{width:100%;padding:14px;border:2px solid var(--border);border-radius:12px;background:#000;color:#fff;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .2s ease;margin-top:10px}.auth-apple-btn:hover{background:#333}.auth-apple-btn svg{width:20px;height:20px}.auth-divider{display:flex;align-items:center;margin:20px 0;color:var(--text-secondary);font-size:13px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-divider span{padding:0 12px}.auth-email-form{text-align:left}.auth-input{width:100%;padding:12px 14px;margin-bottom:12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:14px;box-sizing:border-box}.auth-input:focus{outline:none;border-color:var(--accent)}.auth-submit-btn{width:100%;padding:14px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s ease}.auth-submit-btn:hover{background:var(--accent-hover)}.auth-submit-btn:disabled{opacity:.5;cursor:not-allowed}.auth-toggle-text{margin-top:16px;font-size:14px;color:var(--text-secondary)}.auth-toggle-text a{color:var(--accent);text-decoration:none;cursor:pointer}.auth-forgot-link{display:block;margin-top:8px;margin-bottom:16px;font-size:13px;color:var(--accent);text-decoration:none;cursor:pointer;text-align:right}.auth-error{margin-top:12px;font-size:13px;color:#e53935;display:none;text-align:center}.auth-error.visible{display:block}.auth-error.success{color:var(--success)}.auth-verify-notice{margin-top:16px;padding:16px;background:#22c55e1a;border-radius:12px;border:1px solid var(--success);text-align:center}.auth-verify-notice p{font-size:14px;color:var(--text);margin-bottom:8px}.auth-resend-btn{background:none;border:none;color:var(--accent);font-size:13px;cursor:pointer;text-decoration:underline}.password-requirements{list-style:none;padding:0;margin:0 0 12px;font-size:12px;text-align:left}.password-requirements li{padding:2px 0;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.password-requirements li.met{color:var(--success)}.password-requirements li:before{content:"✗";font-size:11px}.password-requirements li.met:before{content:"✓"}.password-requirements .req{display:inline-block;padding:3px 8px;margin:2px;font-size:11px;color:var(--text-secondary);background:var(--bg);border-radius:4px;border:1px solid var(--border)}.password-requirements .req.met{color:var(--success);border-color:var(--success)}.auth-reset-form{text-align:left}.move-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1002;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.move-modal-overlay.visible{opacity:1;visibility:visible}.move-modal{background:var(--bg-card);border-radius:20px;padding:24px;width:90%;max-width:320px;transform:scale(.9);transition:transform .2s ease}.move-modal-overlay.visible .move-modal{transform:scale(1)}.move-modal-title{font-size:18px;font-weight:700;margin-bottom:8px}.move-modal-subtitle{font-size:13px;color:var(--text-secondary);margin-bottom:16px}.move-modal-date-input{width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);font-size:16px;margin-bottom:16px}.move-modal-buttons{display:flex;gap:8px}.move-modal-btn{flex:1;padding:12px 16px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.move-modal-btn.cancel{background:var(--bg-secondary);color:var(--text-primary)}.move-modal-btn.confirm{background:var(--accent);color:#fff}.move-modal-btn:hover{transform:scale(1.02)}.move-modal-conflict{display:none;margin-bottom:16px;padding:12px;background:#ff6b6b1a;border:1px solid #ff6b6b;border-radius:10px}.move-modal-conflict.visible{display:block}.move-modal-conflict-text{font-size:13px;color:#ff6b6b;margin-bottom:12px}.move-modal-conflict-buttons{display:flex;gap:8px}.move-modal-conflict-btn{flex:1;padding:8px 12px;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer}.move-modal-conflict-btn.merge{background:var(--accent);color:#fff}.move-modal-conflict-btn.replace{background:#ff6b6b;color:#fff}.program-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;padding:20px}.program-modal-overlay.visible{opacity:1;visibility:visible}.program-modal{background:var(--bg-card);border-radius:20px;padding:28px;width:100%;max-width:380px;max-height:85vh;overflow-y:auto;transform:scale(.9);transition:transform .2s ease;position:relative;scrollbar-width:none;-ms-overflow-style:none}.program-modal::-webkit-scrollbar{display:none}.program-modal-overlay.visible .program-modal{transform:scale(1)}.program-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:4px;line-height:1}.program-step-title{font-size:20px;font-weight:800;text-align:center;margin-bottom:8px;color:var(--text-primary)}.program-step-subtitle{font-size:13px;color:var(--text-secondary);text-align:center;margin-bottom:24px}.program-back-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:0;margin-bottom:16px}.program-back-btn:hover{color:var(--text-primary)}.program-options{display:flex;flex-direction:column;gap:12px}.program-option-btn{display:flex;flex-direction:column;align-items:center;padding:20px 16px;background:var(--bg-secondary);border:2px solid transparent;border-radius:14px;cursor:pointer;transition:all .2s ease}.program-option-btn:hover{border-color:var(--accent);transform:translateY(-2px)}.program-option-btn.selected{border-color:var(--accent);background:#64b5f61a}.program-option-icon{color:var(--accent);margin-bottom:8px}.program-option-label{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.program-option-desc{font-size:12px;color:var(--text-secondary)}.program-option-why{font-size:11px;color:var(--text-tertiary, #888);margin-top:6px;line-height:1.4;opacity:.85}.program-preview{background:var(--bg-secondary);border-radius:12px;padding:16px;margin-bottom:20px}.program-preview-day{padding:10px 0;border-bottom:1px solid var(--border)}.program-preview-day:last-child{border-bottom:none}.program-preview-day-name{font-size:13px;font-weight:700;color:var(--accent);margin-bottom:4px}.program-preview-exercises{font-size:12px;color:var(--text-secondary)}.program-timeline{background:var(--bg-tertiary, var(--bg-secondary));border-radius:12px;padding:14px 16px;margin-bottom:20px;border-left:3px solid var(--accent)}.program-timeline-title{font-size:12px;font-weight:700;color:var(--accent);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.program-timeline-items{display:flex;flex-direction:column;gap:8px}.program-timeline-item{display:flex;align-items:flex-start;gap:10px}.program-timeline-week{font-size:11px;font-weight:600;color:var(--text-primary);min-width:65px;flex-shrink:0}.program-timeline-text{font-size:12px;color:var(--text-secondary);line-height:1.3}.program-start-btn{width:100%;padding:16px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease}.program-start-btn:hover{transform:scale(1.02)}.schedule-day-picker{display:flex;justify-content:center;gap:6px;margin:20px 0}.program-start-split-selector{margin:-8px 0 16px}.program-start-split-label{font-size:12px;color:var(--text-secondary);text-align:center;margin-bottom:8px}.program-start-split-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.program-start-split-options .program-option-btn{padding:12px 8px}.program-start-split-options .program-option-label{font-size:13px;margin-bottom:0}.weekly-strip-day{flex:1;min-width:40px;text-align:center;padding:4px 2px;border-radius:8px;cursor:pointer;transition:background .15s;position:relative}.weekly-strip-day:hover{background:var(--bg-secondary)}.weekly-strip-day.today:after{content:"";position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.weekly-strip-day.selected{border:2px solid var(--accent)}.weekly-strip-day.rest-day{opacity:.5}.weekly-strip-day.completed .strip-day-label{color:var(--success, #4ade80)}.strip-day-label{display:block;font-size:10px;font-weight:700;color:var(--text-secondary);text-transform:uppercase}.strip-workout-label{display:block;font-size:10px;font-weight:600;color:var(--text-primary);margin-top:2px}.weekly-strip-day.rest-day .strip-workout-label{color:var(--text-secondary);font-weight:400;font-style:italic}.strip-check{display:none;font-size:8px;color:var(--success, #4ade80)}.weekly-strip-day.completed .strip-check{display:block}.date-display-btn{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:8px;color:var(--text-primary);font-size:inherit;font-weight:inherit;transition:background .2s}.date-display-btn:hover{background:var(--bg-secondary)}.custom-calendar-dropdown{position:absolute;top:100%;left:0;z-index:100;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:12px;box-shadow:0 8px 24px #0000004d;width:280px;margin-top:4px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.calendar-month-label{font-size:14px;font-weight:700;color:var(--text-primary)}.calendar-nav-btn{background:none;border:none;color:var(--accent);font-size:16px;cursor:pointer;padding:4px 10px;border-radius:6px}.calendar-nav-btn:hover{background:var(--bg-secondary)}.calendar-weekday-labels{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:11px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:13px;cursor:pointer;color:var(--text-primary);transition:background .15s;margin:0 auto;background:none;border:none}.calendar-day:hover{background:var(--bg-secondary)}.calendar-day.other-month{color:var(--text-secondary);opacity:.35}.calendar-day.today{font-weight:800;box-shadow:inset 0 0 0 2px var(--accent)}.calendar-day.selected{background:var(--accent);color:#fff}.calendar-dot{position:absolute;bottom:2px;width:5px;height:5px;border-radius:50%}.calendar-dot-stack{position:absolute;left:50%;bottom:2px;width:16px;height:5px;transform:translate(-50%)}.calendar-dot.dot-0{left:0}.calendar-dot.dot-1{left:6px}.calendar-dot.dot-2{left:12px}.calendar-dot.scheduled{background:var(--accent)}.calendar-dot.completed{background:var(--success, #4ade80)}.calendar-dot.started{background:#60a5fa}.calendar-dot.stopped{background:#f87171}.calendar-dot.skipped{background:#fbbf24}.program-next-btn{width:100%;padding:16px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;margin-top:16px}.program-next-btn:hover{transform:scale(1.02)}.rec-progress{height:3px;background:var(--border, rgba(255,255,255,.1));border-radius:2px;margin-bottom:20px;overflow:hidden}.rec-progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s ease;width:0%}.rec-multi .program-option-btn.rec-toggle.selected{border-color:var(--accent);background:rgba(var(--accent-rgb, 66,133,244),.12)}.rec-card{background:var(--card-bg, var(--bg-secondary));border:2px solid var(--accent);border-radius:16px;padding:24px 18px 18px;margin-bottom:16px}.rec-card-header{font-size:17px;font-weight:800;color:var(--text-primary);margin-bottom:18px}.rec-section{margin-bottom:16px}.rec-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--accent);margin-bottom:8px}.rec-why-bullets{display:flex;flex-direction:column;gap:8px}.rec-why-bullet{font-size:13px;line-height:1.5;color:var(--text-secondary);padding-left:14px;position:relative}.rec-why-bullet:before{content:"";position:absolute;left:0;top:4px;width:4px;height:14px;background:var(--accent);border-radius:2px}.rec-evidence{display:flex;flex-direction:column;gap:6px}.rec-evidence-claim{font-size:12px;line-height:1.45;color:var(--text-secondary);font-style:italic;padding-left:14px;position:relative}.rec-evidence-claim:before{content:"▸";position:absolute;left:0;color:var(--accent)}.rec-timeline{display:flex;flex-direction:column;gap:10px}.rec-timeline-phase{display:flex;gap:12px;align-items:flex-start}.rec-timeline-label{font-size:11px;font-weight:700;color:var(--accent);min-width:68px;flex-shrink:0}.rec-timeline-text{font-size:12px;line-height:1.45;color:var(--text-secondary)}.rec-conditions{display:flex;flex-direction:column;gap:4px}.rec-condition{font-size:12px;color:var(--text-secondary);opacity:.75;padding-left:14px;position:relative}.rec-condition:before{content:"✓";position:absolute;left:0;color:var(--accent);font-size:10px}.rec-program-attr{font-size:12px;color:var(--text-secondary);opacity:.6;text-align:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--border, rgba(255,255,255,.08))}.rec-injury-note{font-size:12px;color:var(--accent);background:rgba(var(--accent-rgb, 66,133,244),.08);border-radius:8px;padding:10px 12px;margin-top:10px}.rec-alt-toggle{display:block;width:100%;background:none;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:10px 0;text-align:center;opacity:.7}.rec-alt-toggle:hover{color:var(--accent);opacity:1}.rec-alternatives{display:flex;flex-direction:column;gap:8px;margin-top:4px}.rec-alt-card{background:var(--card-bg, var(--bg-secondary));border:1px solid var(--border, rgba(255,255,255,.1));border-radius:12px;padding:14px;cursor:pointer;transition:border-color .2s ease}.rec-alt-card:hover{border-color:var(--accent)}.rec-alt-name{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.rec-alt-desc{font-size:12px;color:var(--text-secondary);line-height:1.4}.rec-skip-btn{display:block;width:100%;background:none;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:6px 0 14px;text-align:center;opacity:.7}.rec-skip-btn:hover{color:var(--accent);opacity:1}.rec-browse-all-btn{display:block;width:100%;background:none;border:1px dashed var(--border, rgba(255,255,255,.15));color:var(--text-secondary);font-size:13px;cursor:pointer;padding:12px;text-align:center;border-radius:12px;margin-top:8px;transition:border-color .2s,color .2s}.rec-browse-all-btn:hover{border-color:var(--accent);color:var(--accent)}.program-browse-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}.browse-program-card{background:var(--card-bg, var(--bg-secondary));border:1px solid var(--border, rgba(255,255,255,.1));border-radius:12px;padding:16px;cursor:pointer;transition:border-color .2s ease}.browse-program-card:hover{border-color:var(--accent)}.browse-card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.browse-card-name{font-size:15px;font-weight:700;color:var(--text-primary)}.browse-card-author{font-size:11px;color:var(--text-secondary);opacity:.7}.browse-card-meta{font-size:12px;color:var(--text-secondary);margin-bottom:6px}.browse-card-tags{display:flex;flex-wrap:wrap;gap:4px}.browse-tag{font-size:10px;padding:2px 8px;border-radius:10px;background:#ffffff0f;color:var(--text-secondary)}.browse-card-match{font-size:11px;color:var(--accent);font-weight:600;margin-top:6px}.rec-accept-btn{width:100%;padding:14px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;margin-top:8px}.rec-disclaimer-card{background:var(--card-bg, var(--bg-secondary));border-radius:14px;padding:20px 18px;margin-bottom:16px}.rec-disclaimer-intro{font-size:14px;line-height:1.5;color:var(--text-primary);margin-bottom:16px}.rec-disclaimer-points{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.rec-disclaimer-point{font-size:13px;color:var(--text-secondary);padding-left:18px;position:relative;line-height:1.4}.rec-disclaimer-point:before{content:"•";position:absolute;left:4px;color:var(--text-secondary)}.rec-disclaimer-consult{font-size:13px;color:var(--text-primary);font-weight:600;line-height:1.5;margin-bottom:8px}.rec-disclaimer-results{font-size:12px;color:var(--text-secondary);opacity:.7;line-height:1.4}.rec-disclaimer-links{text-align:center;margin-top:12px;font-size:12px}.rec-disclaimer-links a{color:var(--accent);text-decoration:none}.graduation-banner{background:linear-gradient(135deg,var(--accent),#42a5f5);border-radius:14px;padding:20px;margin:12px 0;color:#fff;display:none}.graduation-banner.visible{display:block}.graduation-banner-title{font-size:16px;font-weight:800;margin-bottom:8px}.graduation-banner-text{font-size:13px;line-height:1.5;opacity:.9;margin-bottom:16px}.graduation-banner-actions{display:flex;gap:10px}.graduation-btn{padding:10px 20px;border-radius:10px;font-size:14px;font-weight:700;border:none;cursor:pointer}.graduation-btn.primary{background:#fff;color:var(--accent)}.graduation-btn.secondary{background:#fff3;color:#fff}.onerm-inputs{display:flex;flex-direction:column;gap:12px;margin:20px 0}.onerm-input-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--card-bg);border-radius:10px;border:1px solid var(--border)}.onerm-exercise-header{display:flex;align-items:center;gap:8px}.onerm-label{font-size:15px;font-weight:600;color:var(--text-primary)}.onerm-swap-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.onerm-swap-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.swap-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1100;opacity:0;visibility:hidden;transition:all .2s ease}.swap-modal-overlay.active{opacity:1;visibility:visible}.swap-modal{background:var(--bg-primary);border-radius:16px;width:90%;max-width:320px;padding:20px;transform:scale(.9);transition:transform .2s ease}.swap-modal-overlay.active .swap-modal{transform:scale(1)}.swap-modal-title{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.swap-modal-subtitle{font-size:12px;color:var(--text-secondary);margin-bottom:16px}.swap-options{display:flex;flex-direction:column;gap:8px}.swap-option{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all .15s ease}.swap-option:hover{border-color:var(--accent);background:var(--accent-bg, rgba(88, 166, 255, .1))}.swap-option.selected{border-color:var(--accent);background:var(--accent-bg, rgba(88, 166, 255, .15))}.swap-option-name{font-size:14px;font-weight:600;color:var(--text-primary)}.swap-option-desc{font-size:11px;color:var(--text-secondary);margin-top:2px}.swap-option-check{width:20px;height:20px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;color:transparent;transition:all .15s ease}.swap-option.selected .swap-option-check{background:var(--accent);border-color:var(--accent);color:#fff}.swap-modal-actions{display:flex;gap:10px;margin-top:16px}.swap-modal-btn{flex:1;padding:12px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}.swap-modal-btn.cancel{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary)}.swap-modal-btn.confirm{background:var(--accent);border:none;color:#fff}.swap-modal-btn:hover{opacity:.9}.onerm-input-wrapper{display:flex;align-items:center;gap:8px}.onerm-input{width:80px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;font-size:16px;font-weight:600;text-align:right;background:var(--bg);color:var(--text-primary)}.onerm-input:focus{outline:none;border-color:var(--accent)}.onerm-unit{font-size:14px;color:var(--text-secondary);min-width:28px}.onerm-help-toggle{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;background:transparent;border:none;color:var(--accent);font-size:14px;font-weight:500;cursor:pointer;margin-top:8px}.onerm-help-toggle:hover{text-decoration:underline}.onerm-help-content{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:16px;margin-top:12px;text-align:left}.onerm-help-title{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:12px}.onerm-help-section{margin-bottom:16px;font-size:13px;color:var(--text-secondary);line-height:1.5}.onerm-help-section:last-child{margin-bottom:0}.onerm-help-section strong{display:block;color:var(--text-primary);margin-bottom:6px;font-size:14px}.onerm-help-section p{margin:4px 0}.onerm-help-example{background:var(--bg);padding:8px 12px;border-radius:6px;font-family:monospace;margin-top:8px}.onerm-help-section ol{margin:8px 0;padding-left:20px}.onerm-help-section ol li{margin:4px 0}.saved-workouts-selector{background:var(--card-bg);border-radius:14px;margin-bottom:12px;border:1px solid var(--border);overflow:hidden}.saved-workouts-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;cursor:pointer;transition:background-color .2s ease}.saved-workouts-header:hover{background:var(--hover-bg)}.saved-workouts-title-row{display:flex;align-items:center;gap:8px}.saved-workouts-title-row svg{color:var(--accent)}.saved-workouts-title{font-size:14px;font-weight:600;color:var(--text)}.saved-workouts-count{font-size:12px;color:var(--text-secondary);background:var(--bg);padding:2px 8px;border-radius:10px}.saved-workouts-toggle{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.saved-workouts-toggle.expanded{transform:rotate(180deg)}.saved-workouts-dropdown{max-height:0;overflow:hidden;transition:max-height .3s ease}.saved-workouts-dropdown.expanded{max-height:400px;overflow-y:auto}.saved-workouts-list{padding:0 10px 10px}.my-workout-selector #myWorkoutContext{max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-workout-header-actions{display:flex;align-items:center;gap:10px}.my-workout-content .calculator-program-card{margin:0}.saved-workout-card{display:flex;align-items:center;padding:12px;background:var(--bg);border-radius:10px;margin-bottom:8px;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.saved-workout-card:last-child{margin-bottom:0}.saved-workout-card:hover{background:var(--hover-bg);border-color:var(--accent)}.saved-workout-card.active{border-color:var(--accent);background:#4682b41a}.saved-workout-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--accent) 0%,#5c9ce6 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;margin-right:12px;flex-shrink:0}.saved-workout-icon svg{color:#fff}.saved-workout-info{flex:1;min-width:0}.saved-workout-name{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.saved-workout-meta{font-size:12px;color:var(--text-secondary);display:flex;gap:8px;margin-top:2px}.saved-workout-actions{display:flex;gap:6px;margin-left:8px}.saved-workout-load-btn{padding:6px 12px;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.saved-workout-load-btn:hover{transform:scale(1.05);filter:brightness(1.1)}.saved-workouts-empty{padding:20px;text-align:center}.saved-workouts-empty p{color:var(--text-secondary);font-size:13px;margin:0}.saved-workouts-hint{margin-top:4px!important;font-size:12px!important;opacity:.7}[data-theme=pink] .saved-workout-icon{background:linear-gradient(135deg,#ff1493,#00cec9)}[data-theme=pink] .saved-workout-card.active{background:#ff14931a;border-color:#ff1493}[data-theme=pink] .saved-workout-load-btn{background:#ff1493}[data-theme=pink] .saved-workouts-title-row svg{color:#ff1493}#workoutDaySelectorOverlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;padding:20px}#workoutDaySelectorOverlay.visible{opacity:1;visibility:visible}.workout-day-selector-modal{background:var(--card-bg);border-radius:16px;max-width:400px;width:100%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;transform:scale(.9);transition:transform .2s ease}#workoutDaySelectorOverlay.visible .workout-day-selector-modal{transform:scale(1)}.workout-day-selector-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.workout-day-selector-header h3{margin:0;font-size:18px;font-weight:700;color:var(--text)}.workout-day-close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;line-height:1;padding:4px}.workout-day-close-btn:hover{color:var(--text)}.workout-day-selector-content{padding:16px;overflow-y:auto}.workout-day-option{padding:14px 16px;background:var(--bg);border-radius:10px;margin-bottom:10px;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.workout-day-option:last-child{margin-bottom:0}.workout-day-option:hover{border-color:var(--accent);background:var(--hover-bg)}.workout-day-name{font-size:15px;font-weight:600;color:var(--text);margin-bottom:4px}.workout-day-exercises{font-size:12px;color:var(--text-secondary)}[data-theme=pink] .workout-day-option:hover{border-color:#ff1493}[data-theme=pink] .program-modal{background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .program-option-btn{background:#ffffffb3}[data-theme=pink] .program-option-btn:hover,[data-theme=pink] .program-option-btn.selected{border-color:#ff1493}[data-theme=pink] .program-start-btn,[data-theme=pink] .program-next-btn{background:linear-gradient(135deg,#ff1493,#00cec9)}.program-settings-wrapper{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.upload-workout-wrapper{margin-top:16px;padding-top:16px;border-top:1px solid var(--border);display:none}.upload-workout-section{margin-top:8px}.custom-workout-wrapper{display:none}.program-settings-section{margin-top:8px}.program-settings-info{padding:12px;background:var(--bg-secondary);border-radius:10px;margin-bottom:8px}.program-settings-name{font-size:14px;font-weight:700;color:var(--text-primary)}.program-settings-details{font-size:12px;color:var(--text-secondary);margin-top:2px}.program-settings-btn{width:100%;padding:12px 16px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.program-settings-btn.setup{background:var(--accent);color:#fff}.program-settings-btn.stop{background:var(--bg-secondary);color:var(--warning);border:1px solid var(--warning)}.program-settings-btn:hover{transform:scale(1.02)}.program-settings-actions{display:flex;gap:8px;margin-top:8px}.program-settings-btn.customize{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);flex:1}.program-settings-actions .program-settings-btn.stop{width:auto;flex-shrink:0}.program-settings-progress{font-size:11px;color:var(--text-tertiary);margin-top:4px}.program-schedule-overview{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.program-day-card{background:var(--bg-secondary);border-radius:8px;padding:10px 12px;border:1px solid transparent}.program-day-card.current{border-color:var(--accent)}.program-day-header{font-size:12px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.program-day-exercises{display:flex;flex-direction:column;gap:2px}.program-day-exercise{font-size:11px;color:var(--text-secondary);line-height:1.4}.program-exercise-day-group{margin-bottom:16px}.program-exercise-day-header{font-size:13px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:8px 4px 6px;border-bottom:1px solid var(--border);margin-bottom:8px}.program-exercise-day-header.current{color:var(--accent);border-bottom-color:var(--accent)}.program-exercise-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-secondary);border-radius:10px;margin-bottom:8px}.program-exercise-info{flex:1;min-width:0}.program-exercise-name{font-size:14px;font-weight:600;color:var(--text-primary)}.program-exercise-original{font-size:11px;color:var(--text-tertiary);font-weight:400}.program-exercise-muscles{font-size:11px;color:var(--text-secondary);margin-top:2px}.program-exercise-swap-btn{padding:6px 14px;border:1px solid var(--accent);border-radius:8px;background:transparent;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;margin-left:8px}.program-swap-custom-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;margin-bottom:12px;box-sizing:border-box}.program-swap-custom-input::placeholder{color:var(--text-tertiary)}.program-swap-section-label{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin:12px 0 8px}.program-swap-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.program-swap-back-btn{background:none;border:none;color:var(--accent);cursor:pointer;padding:4px;display:flex;align-items:center;border-radius:8px}.program-swap-back-btn:hover{background:var(--bg-secondary)}[data-theme=pink] .program-settings-btn.setup{background:linear-gradient(135deg,#ff1493,#00cec9)}.insight-section{background:var(--bg-card);border-radius:16px;padding:20px;margin-bottom:16px}.insight-section-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:14px}.consistency-card{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.consistency-stat{text-align:center;padding:12px 8px;background:var(--bg-secondary);border-radius:12px}.consistency-stat-value{font-size:28px;font-weight:800;color:var(--text-primary);line-height:1}.consistency-stat-value.warning{color:var(--warning)}.consistency-stat-value.success{color:var(--success)}.consistency-stat-label{font-size:11px;color:var(--text-secondary);margin-top:6px}.program-progress-card{background:var(--bg-secondary);border-radius:12px;padding:16px;border-left:3px solid var(--accent)}.program-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.program-progress-name{font-size:16px;font-weight:700;color:var(--text-primary)}.program-progress-week{font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-bg, rgba(88, 166, 255, .15));padding:4px 10px;border-radius:12px}.program-progress-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:14px}.program-progress-stat{text-align:center;padding:10px;background:var(--bg-primary);border-radius:8px}.program-progress-stat-value{font-size:24px;font-weight:800;color:var(--accent);line-height:1}.program-progress-stat-label{font-size:10px;color:var(--text-secondary);margin-top:4px}.program-progress-gains{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.program-gain-item{display:flex;justify-content:space-between;align-items:center;font-size:12px}.program-gain-exercise{color:var(--text-secondary)}.program-gain-value{font-weight:600;color:var(--success)}.program-gain-value.negative{color:var(--warning)}.program-progress-status{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--success-bg, rgba(52, 199, 89, .1));border-radius:8px;font-size:12px;color:var(--success)}.program-status-icon{font-weight:700}.program-progress-status.warning{background:var(--warning-bg, rgba(255, 149, 0, .1));color:var(--warning)}.plateau-list{display:flex;flex-direction:column;gap:10px}.plateau-alert{display:flex;align-items:flex-start;gap:12px;padding:14px;background:var(--bg-secondary);border-radius:12px;border-left:3px solid var(--warning)}.plateau-alert-icon{width:20px;height:20px;color:var(--warning);flex-shrink:0;margin-top:2px}.plateau-alert-content{flex:1}.plateau-alert-title{font-weight:700;font-size:14px;color:var(--text-primary);margin-bottom:4px}.plateau-alert-meta{font-size:12px;color:var(--text-secondary)}.no-plateaus{display:flex;align-items:center;gap:10px;padding:14px;background:#34c7591a;border-radius:12px;color:var(--success);font-size:13px;font-weight:600}.no-plateaus-icon{display:flex}.orm-progress-list{display:flex;flex-direction:column;gap:8px}.orm-progress-item{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:var(--bg-secondary);border-radius:10px}.orm-exercise{font-weight:600;font-size:14px;color:var(--text-primary)}.orm-stats{display:flex;align-items:center;gap:12px}.orm-value{font-size:13px;color:var(--text-secondary)}.orm-change{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:6px}.orm-change.up{background:#34c75926;color:var(--success)}.orm-change.down{background:#ff950026;color:var(--warning)}.orm-change.stable{background:var(--bg-card);color:var(--text-secondary)}.insights-empty{padding:40px 20px;text-align:center}.chart-controls{display:flex;gap:8px;margin-bottom:12px}.chart-filter{flex:1;padding:10px 32px 10px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.chart-filter:focus{outline:none;border-color:var(--accent)}.chart-tabs{display:flex;gap:4px;background:var(--bg-secondary);border-radius:8px;padding:4px;margin-bottom:12px}.chart-tab{flex:1;padding:8px 12px;border:none;background:transparent;color:var(--text-secondary);border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.chart-tab.active{background:var(--accent);color:#fff}.chart-tab:hover:not(.active){color:var(--text-primary)}.chart-container{position:relative;width:100%;height:220px;background:var(--bg-secondary);border-radius:12px;padding:12px}.chart-empty{display:flex;align-items:center;justify-content:center;height:220px;background:var(--bg-secondary);border-radius:12px;color:var(--text-secondary);font-size:13px}.insights-list{display:flex;flex-direction:column;gap:10px}.insight-card{display:flex;align-items:flex-start;gap:12px;padding:14px;background:var(--bg-secondary);border-radius:12px;border-left:3px solid var(--accent)}.insight-card.positive{border-left-color:var(--success)}.insight-card.warning{border-left-color:var(--warning)}.insight-card.neutral{border-left-color:var(--accent)}.insight-card-icon{width:20px;height:20px;flex-shrink:0;margin-top:2px}.insight-card.positive .insight-card-icon{color:var(--success)}.insight-card.warning .insight-card-icon{color:var(--warning)}.insight-card.neutral .insight-card-icon{color:var(--accent)}.insight-card-content{flex:1}.insight-card-title{font-weight:700;font-size:14px;color:var(--text-primary);margin-bottom:4px}.insight-card-message{font-size:13px;color:var(--text-secondary);line-height:1.4}.no-insights{display:flex;align-items:center;gap:10px;padding:14px;background:var(--bg-secondary);border-radius:12px;color:var(--text-secondary);font-size:13px}.no-insights-icon{display:flex;flex-shrink:0}.checkin-btn{display:flex;align-items:center;justify-content:center;position:relative;width:36px;height:36px;background:var(--bg-secondary);border:none;border-radius:50%;cursor:pointer;margin-right:8px;transition:all .2s ease}.checkin-btn:hover{background:var(--bg-card);transform:scale(1.05)}.checkin-btn.checked-in{background:var(--accent)}.checkin-icon{display:flex;align-items:center;gap:1px;color:var(--accent)}.checkin-icon svg{stroke:var(--accent)}.checkin-n{font-size:12px;font-weight:800;color:var(--accent);line-height:1}.checkin-btn.checked-in .checkin-icon,.checkin-btn.checked-in .checkin-icon svg,.checkin-btn.checked-in .checkin-n{color:#fff;stroke:#fff}[data-theme=light] .checkin-icon,[data-theme=light] .checkin-icon svg,[data-theme=light] .checkin-n{color:var(--accent);stroke:var(--accent)}[data-theme=pink] .checkin-icon,[data-theme=pink] .checkin-icon svg,[data-theme=pink] .checkin-n{color:#ff1493;stroke:#ff1493}[data-theme=pink] .checkin-btn.checked-in{background:linear-gradient(135deg,#ff1493,#00cec9)}.checkin-indicator{position:absolute;top:-2px;right:-2px;width:14px;height:14px;background:var(--accent);color:#fff;border-radius:50%;font-size:9px;display:flex;align-items:center;justify-content:center;font-weight:700}[data-theme=pink] .checkin-indicator{background:#ff1493}.checkin-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1003;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;padding:20px}.checkin-modal-overlay.visible{opacity:1;visibility:visible}.checkin-modal{background:var(--bg-card);border-radius:24px;padding:24px;width:100%;max-width:400px;max-height:90vh;overflow-y:auto;position:relative;transform:scale(.9);transition:transform .3s ease}.checkin-modal-overlay.visible .checkin-modal{transform:scale(1)}.checkin-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:4px;line-height:1}.checkin-modal-title{font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:20px;text-align:center}.checkin-section{margin-bottom:20px}.checkin-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:10px}.feeling-options{display:flex;gap:6px;justify-content:center}.feeling-options.numeric-mode{flex-wrap:wrap;gap:8px}.feeling-btn{display:flex;flex-direction:column;align-items:center;flex:1;padding:10px 6px;background:var(--bg-secondary);border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .2s ease;min-width:0;max-width:70px}.numeric-feeling-btn{flex:0 0 calc(20% - 8px);max-width:56px;min-height:52px;justify-content:center;padding:12px 4px}.numeric-feeling-btn .feeling-emoji{margin-bottom:0;font-size:20px;font-weight:700}.feeling-btn:hover{background:var(--bg-card);transform:scale(1.02)}.feeling-btn.selected{border-color:var(--accent);background:#64b5f61a}.feeling-emoji{font-size:24px;margin-bottom:4px}.feeling-label{font-size:10px;color:var(--text-secondary);font-weight:500}@media(max-width:380px){.feeling-options{gap:4px}.feeling-btn{padding:8px 4px;border-radius:10px}.numeric-feeling-btn{flex-basis:calc(20% - 6px);max-width:52px;min-height:48px}.feeling-emoji{font-size:20px}.feeling-label{font-size:9px}}.checkin-tags{display:flex;flex-wrap:wrap;gap:8px}.checkin-tag{padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:20px;font-size:12px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.checkin-tag:hover{background:var(--bg-card);color:var(--text-primary)}.checkin-tag.selected{background:var(--accent);border-color:var(--accent);color:#fff}.checkin-notes{width:100%;min-height:80px;padding:12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;color:var(--text-primary);font-size:14px;font-family:inherit;resize:none}.checkin-notes:focus{outline:none;border-color:var(--accent)}.checkin-notes::placeholder{color:var(--text-secondary)}.checkin-save-btn{width:100%;padding:14px;background:var(--accent);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.checkin-save-btn:hover{filter:brightness(1.1)}.streak-counter{display:flex;align-items:center;gap:4px;padding:6px 10px;background:var(--bg-secondary);border-radius:16px;font-size:14px;font-weight:600;color:var(--text-primary);margin-right:8px}.streak-counter.active{background:linear-gradient(135deg,#ff6b35,#f7c948);color:#fff}.streak-counter .streak-flame{font-size:14px}.streak-counter.milestone{animation:streakPulse .5s ease}@keyframes streakPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.goals-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1003;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;padding:20px}.goals-modal-overlay.visible{opacity:1;visibility:visible}.goals-modal{background:var(--bg-card);border-radius:24px;padding:32px;max-width:380px;width:100%;text-align:center;transform:scale(.9);transition:transform .3s ease}.goals-modal-overlay.visible .goals-modal{transform:scale(1)}.calculator-program-card{margin:0 0 16px;padding:16px;border-radius:18px;background:linear-gradient(135deg,#64b5f629,#64b5f60f);border:1px solid rgba(100,181,246,.22)}.calculator-program-card.repeat{background:linear-gradient(135deg,#ff95002e,#ff950014);border-color:#ff950047}.calculator-program-card.overdue{background:linear-gradient(135deg,#ff950033,#ff950014);border-color:#ff950052}.calculator-program-card.current-session{background:linear-gradient(135deg,#5ac8fa29,#5ac8fa0f);border-color:#5ac8fa38}.calculator-program-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.calculator-program-kicker{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.calculator-program-title{font-size:18px;font-weight:700;color:var(--text-primary)}.calculator-program-subtitle{font-size:13px;line-height:1.5;color:var(--text-secondary);margin-top:8px}.calculator-program-progress-block{margin-top:14px;padding:14px;border-radius:14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.calculator-program-progress-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.calculator-program-progress-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.calculator-program-progress-stat{padding:12px;border-radius:12px;background:#ffffff0d}.calculator-program-progress-stat-value{font-size:20px;font-weight:700;color:var(--text-primary)}.calculator-program-progress-stat-label{margin-top:4px;font-size:11px;line-height:1.4;color:var(--text-secondary)}.calculator-program-progress-rows{display:flex;flex-direction:column;gap:10px;margin-top:12px}.calculator-program-progress-row{display:grid;grid-template-columns:minmax(88px,104px) minmax(0,1fr);gap:12px;align-items:start}.calculator-program-progress-key{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.calculator-program-progress-value{min-width:0;font-size:13px;line-height:1.45;color:var(--text-primary)}.calculator-program-progress-note{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);font-size:12px;line-height:1.5;color:var(--text-secondary)}.calculator-program-open{border:0;border-radius:999px;background:#ffffff24;color:var(--text-primary);font-size:12px;font-weight:600;padding:10px 14px;cursor:pointer;white-space:nowrap}.calculator-program-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.calculator-program-tag{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:#ffffff14;color:var(--text-secondary);font-size:11px;font-weight:600;text-transform:capitalize}.program-session-overlay{position:fixed;inset:0;background:#000000d1;display:flex;align-items:center;justify-content:center;z-index:1004;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;padding:20px}.program-session-overlay.visible{opacity:1;visibility:visible}.program-session-modal{position:relative;background:var(--bg-card);border-radius:24px;width:min(420px,100%);padding:28px;transform:translateY(12px) scale(.96);transition:transform .25s ease;box-shadow:0 24px 60px #00000047}.program-session-overlay.visible .program-session-modal{transform:translateY(0) scale(1)}.program-session-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border:0;border-radius:50%;background:#ffffff14;color:var(--text-secondary);font-size:22px;cursor:pointer}.program-session-kicker{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.program-session-title{font-size:24px;font-weight:700;line-height:1.2;color:var(--text-primary)}.program-session-subtitle{font-size:14px;line-height:1.6;color:var(--text-secondary);margin-top:10px}.program-session-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.program-session-tag{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:var(--bg-secondary);color:var(--text-secondary);font-size:11px;font-weight:600;text-transform:capitalize}.program-session-note{margin-top:16px;padding:12px 14px;border-radius:14px;background:#ff950014;color:var(--text-secondary);font-size:13px;line-height:1.5}.program-session-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.program-session-btn{border:0;border-radius:14px;padding:14px 16px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer}.program-session-btn.primary{background:var(--accent);color:#fff}.program-session-btn.danger{background:#ff6b6b1f;color:#ff8a8a}@media(max-width:480px){.calculator-program-meta{flex-direction:column}.calculator-program-open{width:100%}.calculator-program-progress-stats{grid-template-columns:1fr}.calculator-program-progress-row{grid-template-columns:1fr;gap:4px}.program-session-modal{padding:22px}.program-session-actions{grid-template-columns:1fr}}.goals-celebration{font-size:48px;margin-bottom:12px}.goals-title{font-size:22px;font-weight:700;margin-bottom:8px;color:var(--text-primary)}.goals-subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:24px}.goals-list{list-style:none;padding:0;margin:0 0 24px;text-align:left}.goals-list li{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--bg-secondary);border-radius:12px;margin-bottom:8px;font-size:14px;color:var(--text-primary)}.goals-list li .goal-check{color:var(--success);font-size:18px;flex-shrink:0}.goals-close-btn{width:100%;padding:14px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer}.goals-empty-message{color:var(--text-secondary);font-size:14px;padding:20px}.workout-summary-stats{display:flex;justify-content:center;gap:20px;margin:16px 0 20px;padding:16px;background:var(--bg-secondary);border-radius:12px}.summary-stat{display:flex;flex-direction:column;align-items:center}.summary-stat-value{font-size:24px;font-weight:800;color:var(--text-primary)}.summary-stat-value.summary-pr{font-size:28px}.summary-stat-label{font-size:11px;color:var(--text-secondary);margin-top:4px}.consistency-celebration{text-align:center;padding:10px 16px;margin:0 0 16px;background:#64b5f61a;border-radius:8px;border-left:3px solid var(--accent)}.consistency-celebration-text{font-size:13px;color:var(--text-secondary);line-height:1.4}.post-workout-feeling{margin-bottom:20px}.post-feeling-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:12px}.post-feeling-options{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.post-feeling-btn{display:flex;flex-direction:column;align-items:center;padding:10px 12px;background:var(--bg-secondary);border:2px solid transparent;border-radius:10px;cursor:pointer;transition:all .2s ease;min-width:70px}.post-feeling-btn:hover{transform:scale(1.02)}.post-feeling-btn.selected{border-color:var(--accent);background:#64b5f61a}.post-feeling-emoji{font-size:22px;margin-bottom:4px}.post-feeling-text{font-size:10px;color:var(--text-secondary);font-weight:500}.goals-settings-wrapper{margin-top:16px;padding-top:16px;border-top:1px solid var(--border);display:none}.goals-settings-list{margin-top:12px}.goal-setting-item{display:flex;gap:8px;margin-bottom:8px}.goal-setting-item input{flex:1;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px}.goal-setting-item input::placeholder{color:var(--text-secondary)}.remove-goal-btn{width:36px;height:36px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.remove-goal-btn:hover{background:#ff4757;color:#fff;border-color:#ff4757}.add-goal-btn{width:100%;padding:10px;background:transparent;border:1px dashed var(--border);border-radius:8px;color:var(--text-secondary);font-size:14px;cursor:pointer;margin-top:8px}.add-goal-btn:hover{border-color:var(--accent);color:var(--accent)}[data-theme=pink] .goals-modal{background:linear-gradient(135deg,#fff0f5,#ffe4ec)}[data-theme=pink] .goals-list li{background:#ffffffb3}[data-theme=pink] .insight-section{background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .consistency-stat,[data-theme=pink] .plateau-alert,[data-theme=pink] .orm-progress-item{background:#ffffffb3}[data-theme=pink] .no-plateaus{background:#00cec926;color:#00cec9}[data-theme=pink] .chart-container,[data-theme=pink] .chart-filter,[data-theme=pink] .chart-tabs{background:#ffffffb3}[data-theme=pink] .chart-tab.active{background:linear-gradient(135deg,#ff1493,#00cec9)}[data-theme=pink] .insight-card{background:#ffffffb3}[data-theme=pink] .insight-card.positive{border-left-color:#00cec9}[data-theme=pink] .insight-card.warning{border-left-color:#ff6b6b}[data-theme=pink] .insight-card.neutral{border-left-color:#ff1493}[data-theme=pink] .checkin-modal,[data-theme=pink] .goals-modal{background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .feeling-btn,[data-theme=pink] .checkin-tag,[data-theme=pink] .checkin-notes,[data-theme=pink] .post-feeling-btn{background:#ffffffb3}[data-theme=pink] .feeling-btn.selected,[data-theme=pink] .post-feeling-btn.selected{border-color:#ff1493;background:#ff14931a}[data-theme=pink] .checkin-tag.selected{background:linear-gradient(135deg,#ff1493,#00cec9);border-color:transparent}[data-theme=pink] .checkin-save-btn,[data-theme=pink] .goals-close-btn{background:linear-gradient(135deg,#ff1493,#00cec9)}[data-theme=pink] .workout-summary-stats{background:#ffffffb3}.account-panel-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;padding:20px}.account-panel-overlay.visible{opacity:1;visibility:visible}.account-panel{background:var(--bg-card);border-radius:24px;padding:32px;max-width:360px;width:100%;max-height:calc(100vh - 40px);overflow-y:auto;position:relative;transform:scale(.9);transition:transform .2s ease;scrollbar-width:none;-ms-overflow-style:none}.account-panel::-webkit-scrollbar{display:none}.account-panel-overlay.visible .account-panel{transform:scale(1)}.account-header{text-align:center;margin-bottom:24px}.account-panel-avatar{width:64px;height:64px;border-radius:50%;margin:0 auto 12px;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff;overflow:hidden}.account-panel-avatar img{width:100%;height:100%;object-fit:cover}.account-panel-email{font-size:15px;font-weight:600;color:var(--text)}.account-panel-provider{font-size:12px;color:var(--text-secondary);margin-top:2px}.account-section{padding:16px 0;border-top:1px solid var(--border)}.account-section h3{font-size:14px;font-weight:500;color:var(--text-primary);letter-spacing:-.01em;margin-bottom:10px}.account-toggle-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.account-toggle-label{font-size:14px;color:var(--text-primary)}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--bg-secondary);transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--text-secondary);transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px);background-color:#fff}.feeling-mode-select,.profile-select{padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px;cursor:pointer}.profile-input-row{display:flex;justify-content:space-between;align-items:center}.profile-input-label{font-size:14px;color:var(--text-primary)}.profile-input-group{display:flex;align-items:center;gap:8px}.profile-input{width:80px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px;text-align:right}.profile-input:focus{outline:none;border-color:var(--accent)}.profile-input-unit{font-size:13px;color:var(--text-secondary);min-width:24px}.profile-hint{font-size:12px;color:var(--text-secondary);margin-top:12px;margin-bottom:0}.cycle-settings{padding-left:4px}.cycle-log-period-btn{width:100%;margin-top:12px;padding:10px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer}.cycle-log-period-btn:hover{opacity:.9}.cycle-last-logged{font-size:12px;color:var(--text-secondary);margin-top:8px;text-align:center}.cycle-phase-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);margin-left:8px;white-space:nowrap}.history-cycle-phase{font-size:11px;padding:2px 8px;border-radius:10px;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap}.account-sub-status{font-size:16px;font-weight:600;margin-bottom:4px}.account-sub-status.active{color:var(--success)}.account-sub-status.free{color:var(--text-secondary)}.account-sub-expiry{font-size:13px;color:var(--text-secondary)}.badge-count{font-weight:400;font-size:12px;color:var(--text-secondary);text-transform:none;letter-spacing:normal}.account-upgrade-btn{margin-top:12px;width:100%;padding:12px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease}.account-upgrade-btn:hover{background:var(--accent-hover)}.account-links{display:flex;flex-direction:column;gap:12px}.account-links a{font-size:14px;color:var(--accent);text-decoration:none}.account-links a:hover{text-decoration:underline}.legal-modal-overlay{display:none;position:fixed;inset:0;background:#000000b3;z-index:2000;justify-content:center;align-items:center;padding:20px}.legal-modal-overlay.visible{display:flex}.legal-modal{background:var(--bg-card);border-radius:16px;width:100%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.legal-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border)}.legal-modal-header h2{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.legal-modal-close{background:none;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;padding:4px;line-height:1}.legal-modal-body{padding:24px;overflow-y:auto;font-size:14px;line-height:1.7;color:var(--text-secondary)}.legal-modal-body h3{color:var(--text-primary);font-size:15px;font-weight:600;margin:20px 0 8px}.legal-modal-body h3:first-child{margin-top:0}.legal-modal-body p{margin:0 0 12px}.legal-modal-body ul{margin:0 0 12px;padding-left:20px}.legal-modal-body li{margin-bottom:4px}.legal-modal-body a{color:var(--accent)}.legal-modal-body .legal-updated{font-size:12px;color:var(--text-secondary);opacity:.7;margin-bottom:16px}.account-signout-btn{margin-top:16px;width:100%;padding:14px;background:transparent;border:2px solid var(--border);border-radius:12px;color:var(--text-secondary);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.account-signout-btn:hover{border-color:#e53935;color:#e53935}.account-display-name-row{display:flex;gap:8px;align-items:center}.account-display-name-input{flex:1;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:14px}.account-display-name-input:focus{outline:none;border-color:var(--accent)}.account-save-name-btn{padding:10px 16px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease}.account-save-name-btn:hover{background:var(--accent-hover)}.account-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:14px;margin-bottom:8px;box-sizing:border-box}.account-input:focus{outline:none;border-color:var(--accent)}.account-secondary-btn{padding:10px 16px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.account-secondary-btn:hover{border-color:var(--accent);color:var(--accent)}.account-primary-btn{width:100%;padding:12px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease;margin-top:8px}.account-primary-btn:hover{background:var(--accent-hover)}.account-primary-btn:disabled{opacity:.5;cursor:not-allowed}.change-password-form{margin-top:12px}#accountPasswordReqs{margin-bottom:12px}.account-form-error{color:#e53935;font-size:13px;margin-top:8px;min-height:18px}.account-export-btns{display:flex;gap:8px}.account-export-btns .account-secondary-btn{flex:1}.account-restore-btn{width:100%;margin-top:8px}.account-delete-btn{width:100%;padding:10px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.account-delete-btn:hover{border-color:var(--text-secondary);color:var(--text)}.delete-confirm-modal{position:absolute;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;border-radius:24px;padding:24px}.delete-confirm-content{text-align:center;background:var(--bg-card);padding:24px;border-radius:16px;max-width:320px;width:100%}.delete-confirm-content h3{color:var(--text);margin-bottom:12px;font-size:18px}.delete-confirm-content p{color:var(--text-secondary);font-size:14px;margin-bottom:8px;line-height:1.5}.delete-confirm-instruction{margin-top:16px}.delete-confirm-content input{margin:12px 0 16px}.delete-confirm-btns{display:flex;gap:12px}.delete-confirm-btns button{flex:1}.account-delete-confirm-btn{padding:12px;background:#e53935;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease}.account-delete-confirm-btn:hover:not(:disabled){background:#c62828}.account-delete-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.view-tab.locked{opacity:.6}.view-tab.locked:after{content:"";position:absolute;top:4px;right:4px;width:14px;height:14px;background:var(--bg-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center}.view-tab.locked .lock-icon{position:absolute;top:2px;right:2px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:10px;background:var(--bg-card);border-radius:50%;border:2px solid var(--border)}.card{background:var(--bg-card);border-radius:20px;padding:28px;margin-bottom:16px;transition:background .3s ease}.settings-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;padding:20px}.settings-modal-overlay.visible{opacity:1;visibility:visible}.settings-card{background:var(--bg-card);border-radius:24px;padding:28px;max-width:380px;width:100%;max-height:85vh;overflow-y:auto;position:relative;transform:scale(.9);transition:transform .2s ease;scrollbar-width:none;-ms-overflow-style:none}.settings-card::-webkit-scrollbar{display:none}.settings-modal-overlay.visible .settings-card{transform:scale(1)}.unit-toggle{display:flex;background:var(--bg-secondary);border-radius:12px;padding:4px;margin-bottom:20px}.unit-btn{flex:1;padding:10px;border:none;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;border-radius:10px;transition:all .2s ease}.unit-btn.active{background:var(--text-primary);color:var(--bg-primary)}.input-group{margin-bottom:16px}.input-group:last-child{margin-bottom:0}.input-label{display:block;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.input-wrapper{position:relative}.input-field{width:100%;padding:14px 50px 14px 16px;background:var(--bg-secondary);border:2px solid transparent;border-radius:12px;color:var(--text-primary);font-family:inherit;font-size:20px;font-weight:800;transition:border-color .2s ease;-moz-appearance:textfield;appearance:textfield}.input-field::-webkit-outer-spin-button,.input-field::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}.input-field:focus{outline:none;border-color:var(--accent)}.input-field::placeholder{color:var(--text-secondary);font-weight:400}.input-unit{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:600;color:var(--text-secondary)}.bar-weight-group{position:relative}.bar-type-toggle{position:absolute;right:44px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);font-size:10px;cursor:pointer;padding:4px 6px;border-radius:4px;transition:color .2s ease,transform .2s ease;line-height:1}.bar-type-toggle:hover{color:var(--text-primary)}.bar-type-toggle.open{transform:translateY(-50%) rotate(180deg)}.bar-type-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-card);border:2px solid var(--border);border-radius:12px;max-height:0;overflow:hidden;opacity:0;z-index:100;transition:max-height .25s ease,opacity .2s ease;box-shadow:0 8px 24px #0000004d}.bar-type-dropdown.open{max-height:320px;overflow-y:auto;opacity:1}.bar-type-dropdown::-webkit-scrollbar{width:4px}.bar-type-dropdown::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:4px}.bar-type-category{padding:8px 14px 4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary)}.bar-type-category:first-child{padding-top:10px}.bar-type-option{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;cursor:pointer;transition:background .15s ease}.bar-type-option:hover{background:var(--bg-secondary)}.bar-type-option.active{background:var(--accent);color:#fff}.bar-type-option.active .bar-type-weight{color:#fffc}.bar-type-option.active .bar-type-name{color:#fff}.bar-type-name{font-size:13px;font-weight:600;color:var(--text-primary)}.bar-type-weight{font-size:12px;font-weight:500;color:var(--text-secondary)}[data-theme=light] .bar-type-dropdown{box-shadow:0 8px 24px #0000001f}[data-theme=pink] .bar-type-dropdown{border-color:#ff69b4;box-shadow:0 8px 24px #ff149326}[data-theme=pink] .bar-type-category{color:#ff1493}.kg-suggestion{margin-top:6px;padding:12px 14px;background:var(--bg-card);border:2px solid var(--accent);border-radius:12px;box-shadow:0 4px 16px #0003}.kg-suggestion-text{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:10px;line-height:1.4}.kg-suggestion-btns{display:flex;gap:8px}.kg-suggestion-btn{flex:1;padding:8px 12px;border:none;border-radius:8px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s ease}.kg-suggestion-btn:active{opacity:.8}.kg-suggestion-yes{background:var(--accent);color:#fff}.kg-suggestion-no{background:var(--bg-secondary);color:var(--text-secondary)}.slide-inputs-row{display:flex;gap:12px;margin-bottom:16px}.slide-input-group{width:100%}.slide-input-group.weight-group{flex:2}.slide-input-group.reps-group{flex:1}.slide-input-group .input-wrapper{width:100%}.slide-input-group .input-field{width:100%;font-size:24px;padding:14px 50px 14px 16px;text-align:center;box-sizing:border-box}.reps-group .input-field{padding:14px 16px}.slide-input-group .input-unit{font-size:14px;right:16px}.section-title{font-size:14px;font-weight:500;color:var(--text-primary);letter-spacing:-.01em;margin-bottom:12px}.plate-toggles{display:flex;flex-wrap:wrap;gap:6px}.plate-toggle{position:relative}.plate-toggle input{position:absolute;opacity:0;pointer-events:none}.plate-toggle label{display:flex;align-items:center;justify-content:center;min-width:48px;padding:10px 14px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;font-size:14px;font-weight:700;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.plate-toggle-value{position:relative;z-index:1}.plate-toggle input:not(:checked)+label{border-color:#dc262673}.plate-toggle input:not(:checked)+label:before,.plate-toggle input:not(:checked)+label:after{content:"";position:absolute;left:8px;right:8px;top:50%;height:3px;border-radius:999px;background:#dc2626f2;transform-origin:center;pointer-events:none;z-index:2}.plate-toggle input:not(:checked)+label:before{transform:translateY(-50%) rotate(24deg)}.plate-toggle input:not(:checked)+label:after{transform:translateY(-50%) rotate(-24deg)}.plate-toggle input:checked+label{background:var(--accent);border-color:var(--accent);color:var(--text-primary)}.plate-toggle label:hover{border-color:var(--text-secondary)}.premium-section{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.premium-info{display:flex;flex-direction:column;gap:4px}.premium-label{font-weight:600;color:var(--text-primary)}.premium-status{font-size:12px;color:var(--text-secondary);padding:2px 8px;background:var(--border);border-radius:10px;display:inline-block;width:fit-content}.premium-status.active{background:var(--accent);color:#fff}.upgrade-settings-btn{padding:10px 16px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.upgrade-settings-btn:hover{background:var(--accent-hover);transform:scale(1.02)}[data-theme=pink] .upgrade-settings-btn{background:linear-gradient(135deg,#ff1493,#00cec9)}.premium-actions{display:flex;gap:8px;align-items:center}.pro-features-btn{padding:10px 16px;background:transparent;color:var(--accent);border:1px solid var(--accent);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.pro-features-btn:hover{background:var(--accent);color:#fff;transform:scale(1.02)}[data-theme=pink] .pro-features-btn{border-color:#ff1493;color:#ff1493}[data-theme=pink] .pro-features-btn:hover{background:linear-gradient(135deg,#ff1493,#00cec9);border-color:transparent;color:#fff}.pro-features-popup-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;padding:20px}.pro-features-popup-overlay.active{opacity:1;visibility:visible}.pro-features-popup{background:var(--bg-card);border-radius:24px;padding:32px;max-width:360px;width:100%;text-align:center;position:relative;transform:scale(.9);transition:transform .2s ease;max-height:85vh;overflow-y:auto}.pro-features-popup-overlay.active .pro-features-popup{transform:scale(1)}.pro-features-popup-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:28px;color:var(--text-secondary);cursor:pointer;line-height:1;padding:4px}.pro-features-popup-close:hover{color:var(--text-primary)}.pro-features-popup-icon{margin-bottom:16px;color:var(--accent)}[data-theme=pink] .pro-features-popup-icon{color:#ff1493}.pro-features-popup-title{margin:0 0 8px;font-size:24px;font-weight:700;color:var(--text-primary)}.pro-features-popup-subtitle{margin:0 0 24px;color:var(--text-secondary);font-size:14px}.pro-features-list{list-style:none;padding:0;margin:0 0 24px;text-align:left}.pro-features-list li{padding:10px 0 10px 28px;position:relative;color:var(--text-primary);font-size:15px;border-bottom:1px solid var(--border)}.pro-features-list li:last-child{border-bottom:none}.pro-features-list li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700}.pro-features-unlock-btn{width:100%;padding:16px 24px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.pro-features-unlock-btn:hover{background:var(--accent-hover);transform:scale(1.02)}[data-theme=pink] .pro-features-unlock-btn{background:linear-gradient(135deg,#ff1493,#00cec9)}.pro-features-unlock-btn:active{transform:scale(.98)}[data-simple-mode=true] .view-tabs,[data-simple-mode=true] .exercise-selector,[data-simple-mode=true] .date-selector,[data-simple-mode=true] .set-controls,[data-simple-mode=true] .set-dots{display:none}[data-simple-mode=true] .card-header-row{flex-direction:row-reverse}.sets-promo-btn{display:none;align-items:center;gap:6px;background:none;border:none;color:var(--text-secondary);padding:0;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.sets-promo-btn:active{transform:scale(.96)}.sets-promo-plus,.sets-promo-minus{width:28px;height:28px;border-radius:8px;border:2px solid var(--border);background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--text-secondary)}[data-simple-mode=true] .sets-promo-btn{display:flex}[data-theme=pink] .sets-promo-plus,[data-theme=pink] .sets-promo-minus{border-color:#ff69b4;background:linear-gradient(135deg,#fff0f5,#e0ffff)}.rest-timer{display:flex;align-items:center;gap:4px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:8px;padding:4px 8px;font-family:inherit;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.rest-timer:active{transform:scale(.96)}.rest-timer .rest-timer-icon{font-size:12px}.rest-timer-display{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:13px;font-weight:700;min-width:32px;text-align:center}.rest-timer.running{border-color:var(--accent);color:var(--accent)}.rest-timer.done{border-color:#e53935;color:#e53935;animation:timerFlash .5s ease infinite alternate}@keyframes timerFlash{0%{opacity:1}to{opacity:.5}}[data-theme=pink] .rest-timer{border-color:#ff69b4}[data-theme=pink] .rest-timer.running{border-color:#00cec9;color:#00cec9}.timer-popup-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;display:flex;align-items:center;justify-content:center}.timer-popup-overlay.visible{opacity:1;visibility:visible}.timer-popup{width:calc(100% - 48px);max-width:340px;height:280px;position:relative;overflow:hidden;border-radius:20px;background:var(--bg-card, #222222);box-shadow:0 8px 40px #0006;transform:scale(.92);transition:transform .3s ease}.timer-popup-overlay.visible .timer-popup{transform:scale(1)}.timer-popup-stack{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-height:90dvh;max-height:90vh;overflow-y:auto}.next-set-preview{width:calc(100% - 48px);max-width:340px;background:var(--bg-card, #222222);border-radius:16px;box-shadow:0 4px 20px #0000004d;padding:0 16px;max-height:0;opacity:0;overflow:hidden;transform:translateY(-8px);transition:opacity .3s ease .15s,transform .3s ease .15s,max-height .3s ease .15s,padding .3s ease .15s}.next-set-preview.visible{padding:12px 16px;max-height:350px;opacity:1;transform:translateY(0)}.next-set-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.next-set-preview-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.next-set-preview-reps{font-size:13px;font-weight:700;color:var(--accent)}.next-set-preview .barbell-container{padding:4px 0}.next-set-preview .barbell{transform:scale(.9);transform-origin:center center}.next-set-preview .summary{padding:4px 0 0;gap:16px}.next-set-preview .summary-label{font-size:11px}.next-set-preview .summary-value{font-size:16px}.next-set-preview .summary-total{font-size:20px}.next-set-preview .plate{pointer-events:none}.timer-popup-actions{position:absolute;top:10px;right:10px;z-index:4;display:flex;align-items:center;gap:10px}.timer-popup-edit,.timer-popup-close{background:#1e78ff80;border:none;color:#fff;cursor:pointer;transition:background .2s ease,transform .2s ease}.timer-popup-edit{font-size:13px;font-weight:700;padding:8px 14px;border-radius:999px}.timer-popup-close{font-size:22px;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.timer-popup-edit:hover,.timer-popup-close:hover{background:#1e78ffb3}.timer-popup-wave-container{position:absolute;bottom:0;left:0;right:0;height:100%;overflow:hidden;--wave-progress: 0;background:var(--accent, #64b5f6);clip-path:inset(100% 0 0 0)}.timer-popup.done .timer-popup-wave-container{background:#34c759}.timer-popup-fish-container{position:absolute;bottom:0;left:0;right:0;height:100%;z-index:2;pointer-events:none;--fish-progress: 0;clip-path:inset(calc((1 - var(--fish-progress)) * 100%) 0 0 0);-webkit-mask-image:linear-gradient(to top,black 60%,transparent 100%);mask-image:linear-gradient(to top,black 60%,transparent 100%)}.timer-popup-fish{position:absolute;width:36px;height:24px;pointer-events:none}.timer-popup-fish-1{bottom:10%;animation:fishSwim1 7s ease-in-out infinite}.timer-popup-fish-2{bottom:30%;width:28px;height:19px;animation:fishSwim2 9s ease-in-out infinite}.timer-popup-fish-3{bottom:5%;width:32px;height:22px;animation:fishSwim3 6s ease-in-out infinite}.timer-popup-fish-4{bottom:50%;width:24px;height:16px;animation:fishSwim4 11s ease-in-out infinite}.timer-popup-fish-5{bottom:20%;width:30px;height:20px;animation:fishSwim5 8s ease-in-out infinite}@keyframes fishSwim1{0%{left:-12%;transform:scaleX(1) translateY(0)}45%{transform:scaleX(1) translateY(-8px)}50%{left:105%;transform:scaleX(1) translateY(-4px)}51%{transform:scaleX(-1) translateY(-4px)}95%{transform:scaleX(-1) translateY(6px)}to{left:-12%;transform:scaleX(-1) translateY(0)}}@keyframes fishSwim2{0%{right:-10%;left:auto;transform:scaleX(-1) translateY(0)}45%{transform:scaleX(-1) translateY(6px)}50%{right:105%;transform:scaleX(-1) translateY(4px)}51%{transform:scaleX(1) translateY(4px)}95%{transform:scaleX(1) translateY(-5px)}to{right:-10%;transform:scaleX(1) translateY(0)}}@keyframes fishSwim3{0%{left:-10%;transform:scaleX(1) translateY(0)}30%{transform:scaleX(1) translateY(-6px)}50%{left:95%;transform:scaleX(1) translateY(4px)}51%{transform:scaleX(-1) translateY(4px)}80%{transform:scaleX(-1) translateY(-4px)}to{left:-10%;transform:scaleX(-1) translateY(0)}}@keyframes fishSwim4{0%{left:105%;transform:scaleX(-1) translateY(0)}40%{transform:scaleX(-1) translateY(5px)}50%{left:-8%;transform:scaleX(-1) translateY(-3px)}51%{transform:scaleX(1) translateY(-3px)}90%{transform:scaleX(1) translateY(4px)}to{left:105%;transform:scaleX(1) translateY(0)}}@keyframes fishSwim5{0%{left:-15%;transform:scaleX(1) translateY(0) rotate(-3deg)}25%{transform:scaleX(1) translateY(-7px) rotate(3deg)}50%{left:100%;transform:scaleX(1) translateY(3px) rotate(-2deg)}51%{transform:scaleX(-1) translateY(3px) rotate(2deg)}75%{transform:scaleX(-1) translateY(-5px) rotate(-3deg)}to{left:-15%;transform:scaleX(-1) translateY(0) rotate(3deg)}}.timer-popup-content{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.timer-popup-time{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:56px;font-weight:800;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);letter-spacing:2px;line-height:1}.timer-popup-label{font-size:15px;font-weight:600;color:#fffc;margin-top:6px;text-shadow:0 1px 6px rgba(0,0,0,.3)}.timer-popup-editor{pointer-events:auto;width:min(320px,calc(100% - 48px));margin-top:18px}.timer-popup-editor-card{display:flex;flex-direction:column;gap:10px;background:#0710227a;border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:16px;box-shadow:0 12px 32px #00000038;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.timer-popup-editor-title{font-size:16px;font-weight:700;color:#fff}.timer-popup-editor-subtitle,.timer-popup-editor-meta,.timer-popup-editor-label{font-size:12px;color:#ffffffd1}.timer-popup-editor-label{font-weight:600}.timer-popup-editor-input{width:100%;border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:12px 14px;background:#ffffff24;color:#fff;font-size:16px;font-weight:700;font-family:inherit}.timer-popup-editor-input::placeholder{color:#fff9}.timer-popup-editor-input:focus{outline:2px solid rgba(255,255,255,.4);outline-offset:1px}.timer-popup-editor-feedback{margin:0;text-align:left}.timer-popup-editor-actions{display:flex;flex-wrap:wrap;gap:8px}.timer-popup-editor-secondary,.timer-popup-editor-primary{border:none;border-radius:12px;padding:10px 14px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;transition:transform .2s ease,background .2s ease}.timer-popup-editor-secondary{background:#ffffff29;color:#fff}.timer-popup-editor-primary{margin-left:auto;background:#1e78ffd1;color:#fff}.timer-popup-editor-secondary:hover{background:#ffffff3d}.timer-popup-editor-primary:hover{background:#1e78fff2}.timer-popup-editor-secondary:active,.timer-popup-editor-primary:active{transform:scale(.97)}.timer-popup.editing .timer-popup-time{font-size:48px}.timer-popup-stop{pointer-events:auto;margin-top:24px;background:#1e78ff80;border:2px solid rgba(30,120,255,.6);color:#fff;font-size:14px;font-weight:600;font-family:inherit;padding:10px 32px;border-radius:10px;cursor:pointer;transition:background .2s ease,transform .2s ease}.timer-popup-stop:hover{background:#1e78ffb3}.timer-popup-stop:active{transform:scale(.96)}.timer-popup.get-ready .timer-popup-label{color:#ffd60a;font-size:17px;font-weight:700;text-shadow:0 1px 6px rgba(0,0,0,.3)}.timer-popup-countdown{position:absolute;z-index:5;font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:120px;font-weight:900;color:#fff;opacity:0;pointer-events:none;text-shadow:0 4px 24px rgba(0,0,0,.5);top:50%;left:50%;transform:translate(-50%,-50%) scale(.5);transition:none}.timer-popup-countdown.pop{opacity:1;transform:translate(-50%,-50%) scale(1);animation:countdownPop .8s ease-out forwards}@keyframes countdownPop{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}60%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.3)}}.timer-popup.done .timer-popup-time{animation:timerPopupPulse .6s ease infinite alternate}.timer-popup.done .timer-popup-label{color:#ffffffe6;font-size:15px;text-shadow:0 1px 6px rgba(0,0,0,.3)}@keyframes timerPopupPulse{0%{transform:scale(1)}to{transform:scale(1.06)}}[data-theme=light] .timer-popup-overlay{background:#000000b3}[data-theme=light] .timer-popup-wave-container{background:#42a5f5}[data-theme=light] .timer-popup.done .timer-popup-wave-container{background:#34c759}[data-theme=light] .timer-popup-edit,[data-theme=light] .timer-popup-close{background:#1e78ff80;color:#fff}[data-theme=light] .timer-popup-edit:hover,[data-theme=light] .timer-popup-close:hover{background:#1e78ffb3}[data-theme=light] .timer-popup-stop{background:#1e78ff80;border-color:#1e78ff99;color:#000;text-shadow:0 0 4px #fff,0 1px 6px rgba(255,255,255,.8)}[data-theme=light] .timer-popup-editor-card{background:#fff9;border-color:#0000001f}[data-theme=light] .timer-popup-editor-title,[data-theme=light] .timer-popup-editor-subtitle,[data-theme=light] .timer-popup-editor-meta,[data-theme=light] .timer-popup-editor-label{color:#000}[data-theme=light] .timer-popup-editor-input{background:#ffffffb8;border-color:#00000024;color:#000}[data-theme=light] .timer-popup-editor-input::placeholder{color:#00000073}[data-theme=light] .timer-popup-editor-secondary{background:#ffffffb3;color:#000}[data-theme=light] .timer-popup-editor-primary{background:#1e78ffd1;color:#fff}[data-theme=light] .timer-popup-stop:hover{background:#1e78ffb3}[data-theme=light] .timer-popup-time{color:#000;text-shadow:0 0 6px #fff,0 2px 12px rgba(255,255,255,.8)}[data-theme=light] .timer-popup-label,[data-theme=light] .timer-popup.get-ready .timer-popup-label,[data-theme=light] .timer-popup.done .timer-popup-label{color:#000;text-shadow:0 0 4px #fff,0 1px 6px rgba(255,255,255,.8)}[data-theme=pink] .timer-popup-wave-container{background:#ff1493}[data-theme=pink] .timer-popup.done .timer-popup-wave-container{background:#00cec9}[data-theme=pink] .timer-popup-edit,[data-theme=pink] .timer-popup-close{background:#ff14938c;color:#fff}[data-theme=pink] .timer-popup-edit:hover,[data-theme=pink] .timer-popup-close:hover{background:#ff1493bf}[data-theme=pink] .timer-popup-stop{background:#ff14938c;border-color:#ff1493a6;color:#000;text-shadow:0 0 4px #fff,0 1px 6px rgba(255,255,255,.8)}[data-theme=pink] .timer-popup-editor-card{background:#380a2e94;border-color:#ffffff3d}[data-theme=pink] .timer-popup-editor-primary{background:#ff1493d1}[data-theme=pink] .timer-popup-stop:hover{background:#ff1493bf}[data-theme=pink] .timer-popup-time{color:#000;text-shadow:0 0 6px #fff,0 2px 12px rgba(255,255,255,.8)}[data-theme=pink] .timer-popup-label,[data-theme=pink] .timer-popup.get-ready .timer-popup-label,[data-theme=pink] .timer-popup.done .timer-popup-label{color:#000;text-shadow:0 0 4px #fff,0 1px 6px rgba(255,255,255,.8)}.fish-score{position:absolute;top:12px;left:12px;z-index:4;display:flex;align-items:center;gap:4px;color:#fff;font-size:14px;font-weight:700;opacity:0;transition:opacity .3s ease;text-shadow:0 1px 4px rgba(0,0,0,.4);pointer-events:none}.fish-score.visible{opacity:1}@keyframes fishWobble{0%{transform:rotate(0) translate(0)}15%{transform:rotate(12deg) translate(3px)}30%{transform:rotate(-10deg) translate(-3px)}45%{transform:rotate(8deg) translate(2px)}60%{transform:rotate(-6deg) translate(-2px)}75%{transform:rotate(4deg) translate(1px)}to{transform:rotate(0) translate(0)}}.timer-popup-fish.wobble{animation:fishWobble .6s ease-out!important}.timer-popup-fish.bonus{filter:drop-shadow(0 0 4px #ffd700) drop-shadow(0 0 8px #ffa500);width:48px!important;height:32px!important}@keyframes scorePop{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-30px) scale(1.3)}}.fish-score-pop{position:absolute;z-index:4;color:#fff;font-size:18px;font-weight:800;pointer-events:none;text-shadow:0 1px 6px rgba(0,0,0,.5);animation:scorePop .7s ease-out forwards}[data-simple-mode=true] .tracking-option,[data-simple-mode=true] .reps-group,[data-simple-mode=true] .tracking-feature{display:none}[data-simple-mode=true] .container{padding-bottom:20px}.feature-teasers{display:none;flex-direction:column;gap:10px;margin-top:16px}[data-simple-mode=true] .feature-teasers{display:flex}.teaser-card{display:flex;align-items:center;gap:14px;background:var(--bg-card);border-radius:16px;padding:16px;cursor:pointer;transition:transform .2s ease,box-shadow .25s ease,border-color .2s ease;border:1px solid var(--border)}.teaser-card:hover{border-color:#64b5f640;box-shadow:0 4px 20px #64b5f614;transform:translateY(-1px)}.teaser-card:active{transform:scale(.98) translateY(0);box-shadow:none}.teaser-visual{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.teaser-colors{background:linear-gradient(135deg,#64b5f626,#42a5f526)}.teaser-upload{background:linear-gradient(135deg,#64b5f626,#42a5f526);color:var(--accent)}.teaser-tracking{background:linear-gradient(135deg,#34c75926,#4caf5026);color:var(--success, #34c759)}.teaser-plates-preview{display:flex;gap:2px}.teaser-plate{width:10px;height:28px;border-radius:2px}.teaser-content{flex:1;min-width:0}.teaser-title{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.teaser-desc{font-size:12px;color:var(--text-secondary)}.teaser-arrow{color:var(--text-secondary);flex-shrink:0}.promo-banner-wrapper{display:none;margin-top:14px}[data-simple-mode=true] .promo-banner-wrapper{display:block}.promo-banner{background:linear-gradient(135deg,var(--bg-card),var(--bg-secondary));border:1px solid var(--border);border-radius:14px;padding:14px 16px;transition:border-color .2s ease}.promo-banner:hover{border-color:#64b5f633}.promo-banner-content{display:flex;align-items:center;gap:10px}.promo-banner-tag{background:linear-gradient(135deg,var(--accent),#42a5f5);color:#fff;font-size:9px;font-weight:700;padding:3px 8px;border-radius:6px;flex-shrink:0;letter-spacing:1px;text-transform:uppercase}.promo-banner-text{flex:1;font-size:13px;color:var(--text-secondary)}.promo-banner-cta{background:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:10px;font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease}.promo-banner-cta:hover{box-shadow:0 2px 12px #64b5f640}.promo-banner-cta:active{transform:scale(.96)}[data-theme=pink] .teaser-card{border-color:#ff69b4;background:linear-gradient(145deg,#fff0f5,#e0ffff)}[data-theme=pink] .teaser-card:hover{border-color:#ff1493;box-shadow:0 4px 20px #ff149326}[data-theme=pink] .promo-banner{border-color:#ff69b4;background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .promo-banner-tag{background:linear-gradient(135deg,#ff1493,#00cec9)}[data-theme=pink] .promo-banner-cta{background:#ff1493}[data-theme=pink] .onboarding-modal{border-color:#ff149326;box-shadow:0 24px 80px #ff149326}[data-theme=pink] .onboarding-progress-bar{background:linear-gradient(90deg,#ff1493,#00cec9)}[data-theme=pink] .onboarding-hero:before{background:radial-gradient(circle,rgba(255,20,147,.12) 0%,transparent 70%)}[data-theme=pink] .onboarding-value-feature-icon{background:linear-gradient(135deg,#ff14931f,#00cec90f)}[data-theme=pink] .onboarding-option-btn:hover,[data-theme=pink] .onboarding-option-btn.selected,[data-theme=pink] .onboarding-freq-btn:hover,[data-theme=pink] .onboarding-freq-btn.selected{border-color:#ff1493;background:#ff14930f}[data-theme=pink] .onboarding-price-badge{background:linear-gradient(135deg,#ff1493,#00cec9)}[data-theme=pink] .onboarding-price-card input:checked+.onboarding-price-card-content{border-color:#ff1493;box-shadow:0 0 0 1px #ff1493,0 4px 24px #ff14931f}[data-theme=pink] .onboarding-cta-btn,[data-theme=pink] .onboarding-next-btn{background:linear-gradient(135deg,#ff1493,#00cec9)}[data-theme=light] .onboarding-modal{box-shadow:0 24px 80px #0003,0 0 0 1px #0000000d;border-color:var(--border)}[data-theme=light] .onboarding-overlay{background:#0009}[data-theme=light] .teaser-card:hover{box-shadow:0 4px 20px #0000000f}@keyframes onb-feature-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes onb-step-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes onb-hero-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.06);opacity:.85}}@keyframes onb-cta-glow{0%,to{box-shadow:0 0 #64b5f666}50%{box-shadow:0 0 20px 4px #64b5f640}}.onboarding-overlay{position:fixed;inset:0;background:#000000e0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1100;opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s ease;padding:16px;overflow-y:auto}.onboarding-overlay.visible{opacity:1;visibility:visible}.onboarding-modal{background:var(--bg-card);border-radius:24px;padding:32px 24px 28px;max-width:400px;width:100%;position:relative;transform:scale(.92) translateY(24px);transition:transform .4s cubic-bezier(.16,1,.3,1);max-height:90vh;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;border:1px solid rgba(100,181,246,.08);box-shadow:0 24px 80px #00000080,0 0 0 1px #ffffff0a inset}.onboarding-modal::-webkit-scrollbar{display:none}.onboarding-overlay.visible .onboarding-modal{transform:scale(1) translateY(0)}.onboarding-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:28px;color:var(--text-secondary);cursor:pointer;z-index:1;line-height:1;padding:4px;transition:color .2s ease}.onboarding-close:hover{color:var(--text-primary)}.onboarding-progress{height:3px;background:var(--border);border-radius:2px;margin-bottom:28px;margin-right:40px;overflow:hidden}.onboarding-progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),#90caf9);border-radius:2px;transition:width .4s cubic-bezier(.16,1,.3,1)}.onboarding-title{font-size:22px;font-weight:800;color:var(--text-primary);text-align:center;margin-bottom:8px;letter-spacing:-.3px}.onboarding-subtitle{font-size:14px;color:var(--text-secondary);text-align:center;margin-bottom:24px;line-height:1.5}.onboarding-hero{text-align:center;margin-bottom:20px;position:relative}.onboarding-hero:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px;background:radial-gradient(circle,rgba(100,181,246,.12) 0%,transparent 70%);border-radius:50%;pointer-events:none}.onboarding-hero svg{width:48px;height:48px;color:var(--accent);animation:onb-hero-pulse 3s ease-in-out infinite}.onboarding-value-features{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.onboarding-value-feature{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:var(--bg-secondary);border-radius:12px;border:1px solid transparent;transition:border-color .2s ease;opacity:0;animation:onb-feature-in .4s ease forwards}.onboarding-value-feature:nth-child(1){animation-delay:.05s}.onboarding-value-feature:nth-child(2){animation-delay:.1s}.onboarding-value-feature:nth-child(3){animation-delay:.15s}.onboarding-value-feature:nth-child(4){animation-delay:.2s}.onboarding-value-feature:nth-child(5){animation-delay:.25s}.onboarding-value-feature-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(135deg,#64b5f61f,#64b5f60a);color:var(--accent)}.onboarding-value-feature-icon svg{width:18px;height:18px}.onboarding-value-feature-title{font-size:14px;color:var(--text-primary);font-weight:600;letter-spacing:-.1px}.onboarding-value-feature-desc{font-size:12px;color:var(--text-secondary);margin-top:2px;line-height:1.4}.onboarding-next-btn{width:100%;padding:16px;background:var(--accent);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease;letter-spacing:-.2px}.onboarding-next-btn:hover{box-shadow:0 4px 20px #64b5f64d}.onboarding-next-btn:active{transform:scale(.97)}.onboarding-back-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-secondary);font-size:14px;cursor:pointer;margin-bottom:16px;padding:0;font-family:inherit;transition:color .2s ease}.onboarding-back-btn:hover{color:var(--text-primary)}.onboarding-options{display:flex;flex-direction:column;gap:10px}.onboarding-option-btn{display:flex;align-items:center;gap:14px;width:100%;padding:18px 16px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:14px;cursor:pointer;font-family:inherit;text-align:left;color:var(--text-primary);transition:border-color .2s ease,background .2s ease,transform .15s ease}.onboarding-option-btn:hover{border-color:var(--accent);background:#64b5f60a}.onboarding-option-btn.selected{border-color:var(--accent);background:#64b5f60f;box-shadow:0 0 0 1px var(--accent)}.onboarding-option-btn:active{transform:scale(.98)}.onboarding-option-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#64b5f61f,#64b5f60a);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent)}.onboarding-option-icon svg{width:22px;height:22px}.onboarding-option-label{display:block;font-size:16px;font-weight:600;letter-spacing:-.1px}.onboarding-option-desc{display:block;font-size:12px;color:var(--text-secondary);margin-top:2px}.onboarding-frequency-options{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:8px}.onboarding-freq-btn{padding:14px 24px;border:2px solid var(--border);border-radius:14px;background:var(--bg-secondary);font-family:inherit;font-size:15px;font-weight:600;color:var(--text-primary);cursor:pointer;min-width:80px;transition:border-color .2s ease,background .2s ease,transform .15s ease}.onboarding-freq-btn:hover{border-color:var(--accent);background:#64b5f60a}.onboarding-freq-btn.selected{border-color:var(--accent);background:#64b5f60f;box-shadow:0 0 0 1px var(--accent)}.onboarding-freq-btn:active{transform:scale(.97)}.onboarding-plan-summary{margin-bottom:24px}.onboarding-plan-tagline{font-size:14px;color:var(--text-secondary);text-align:center;margin-bottom:16px;line-height:1.5}.onboarding-personalized-benefits{display:flex;flex-direction:column;gap:6px}.onboarding-benefit-item{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-primary);padding:8px 10px;background:var(--bg-secondary);border-radius:10px}.onboarding-benefit-check{color:var(--success, #34c759);flex-shrink:0;line-height:0}.onboarding-benefit-check svg{width:16px;height:16px}.onboarding-social-proof{text-align:center;font-size:12px;color:var(--text-secondary);margin-bottom:16px;font-weight:500;letter-spacing:.2px}.onboarding-pricing{border-top:1px solid var(--border);padding-top:20px}.onboarding-price-card{display:block;cursor:pointer;margin-bottom:10px}.onboarding-price-card input[type=radio]{position:absolute;opacity:0;width:0;height:0}.onboarding-price-card-content{padding:18px;border:2px solid var(--border);border-radius:14px;background:var(--bg-secondary);text-align:center;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;position:relative}.onboarding-price-card.recommended .onboarding-price-card-content{border-color:var(--accent)}.onboarding-price-card input:checked+.onboarding-price-card-content{border-color:var(--accent);background:#64b5f60f;box-shadow:0 0 0 1px var(--accent),0 4px 24px #64b5f61f}.onboarding-price-badge{display:inline-block;background:linear-gradient(135deg,var(--accent),#90caf9);color:#fff;font-size:10px;font-weight:700;padding:4px 12px;border-radius:20px;margin-bottom:10px;letter-spacing:.8px;text-transform:uppercase}.onboarding-price-name{font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.onboarding-price-amount{font-size:32px;font-weight:800;color:var(--text-primary);letter-spacing:-1px}.onboarding-price-amount span{font-size:14px;font-weight:500;color:var(--text-secondary);letter-spacing:0}.onboarding-price-monthly{font-size:13px;color:var(--success, #34c759);font-weight:600;margin-top:4px}.onboarding-price-trial{font-size:13px;color:var(--accent);font-weight:600;margin-top:6px}.onboarding-cta-btn{width:100%;padding:18px;color:#fff;background:linear-gradient(135deg,var(--accent),#42a5f5);border:none;border-radius:14px;font-size:17px;font-weight:700;cursor:pointer;margin-top:16px;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease;letter-spacing:-.2px;animation:onb-cta-glow 2.5s ease-in-out infinite}.onboarding-cta-btn:hover{box-shadow:0 6px 28px #64b5f659}.onboarding-cta-btn:active{transform:scale(.97);animation:none}.onboarding-cta-reassurance{text-align:center;font-size:12px;color:var(--text-secondary);margin-top:10px;line-height:1.4}.onboarding-cta-legal{text-align:center;font-size:11px;color:var(--text-secondary);margin-top:12px;opacity:.5}.onboarding-cta-legal a{color:var(--accent);text-decoration:none}.data-management{display:flex;gap:8px;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.data-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:10px 8px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;font-family:inherit;font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.data-btn:hover{border-color:var(--accent);color:var(--text-primary)}.data-btn .btn-icon{font-size:16px}#importFileInput{display:none}[data-theme=pink] .data-btn{border-color:#ff69b4;background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .data-btn:hover{background:linear-gradient(135deg,#ff1493,#00cec9);color:#fff}.barbell-container{padding:24px 0;width:100%;overflow:visible}.barbell{display:flex;align-items:center;justify-content:center;min-height:100px;width:100%}.plates-side{display:flex;align-items:center;height:100%}.plates-left{flex-direction:row-reverse;margin-right:5px}.plates-right{flex-direction:row;margin-left:5px}.plate{display:flex;align-items:center;justify-content:center;border-radius:6px;font-weight:800;color:#000;text-shadow:0 1px 0 rgba(255,255,255,.3);margin:0 1px;transition:transform .2s ease;writing-mode:vertical-rl}.plate-num{text-combine-upright:all;-webkit-text-combine:horizontal}.plate:hover{transform:scale(1.05)}.plate-45{width:28px;height:130px;font-size:16px;font-weight:700;background:var(--plate-45)}.plate-35{width:24px;height:115px;font-size:15px;font-weight:700;background:var(--plate-35)}.plate-25{width:22px;height:100px;font-size:14px;font-weight:700;background:var(--plate-25)}.plate-10{width:18px;height:85px;font-size:13px;font-weight:700;background:var(--plate-10)}.plate-5{width:14px;height:70px;font-size:12px;font-weight:700;background:var(--plate-5)}.plate-2-5{width:12px;height:58px;font-size:9px;font-weight:700;background:var(--plate-2-5)}.plate-25kg{width:28px;height:130px;font-size:16px;font-weight:700;background:var(--plate-25kg)}.plate-20kg{width:24px;height:115px;font-size:15px;font-weight:700;background:var(--plate-20kg)}.plate-15kg{width:22px;height:100px;font-size:14px;font-weight:700;background:var(--plate-15kg)}.plate-10kg{width:18px;height:85px;font-size:13px;font-weight:700;background:var(--plate-10kg)}.plate-5kg{width:14px;height:70px;font-size:12px;font-weight:700;background:var(--plate-5kg);border:2px solid #333}.plate-2-5kg{width:12px;height:58px;font-size:9px;font-weight:700;background:var(--plate-2-5kg);border:1px solid #999}.plate-1-25kg{width:10px;height:50px;font-size:8px;font-weight:700;background:var(--plate-1-25kg);border:1px solid #999}.dumbbell-container{padding:24px 0;width:100%}.dumbbell-pair{display:flex;align-items:center;justify-content:center;gap:24px;min-height:100px}.dumbbell{display:flex;align-items:center;gap:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.18))}.dumbbell-weight{width:18px;height:56px;background:var(--accent);border-radius:4px;position:relative}.dumbbell-weight-outer{width:22px;height:48px;background:var(--text-tertiary);border-radius:4px;display:flex;align-items:center;justify-content:center}.dumbbell-collar{width:6px;height:24px;background:var(--text-tertiary);border-radius:1px}.dumbbell-handle{width:40px;height:10px;background:linear-gradient(to bottom,var(--text-tertiary) 0%,color-mix(in srgb,var(--text-tertiary) 60%,white) 30%,var(--text-tertiary) 50%,color-mix(in srgb,var(--text-tertiary) 60%,white) 70%,var(--text-tertiary) 100%);border-radius:5px;background-size:4px 100%}.dumbbell-weight-label{text-align:center;font-size:18px;font-weight:700;color:var(--text-primary);margin-top:12px}.dumbbell-weight-sub{text-align:center;font-size:12px;color:var(--text-secondary);margin-top:4px}.bodyweight-container{padding:32px 0;width:100%;text-align:center}.bodyweight-reps{font-size:48px;font-weight:800;color:var(--text-primary);line-height:1}.bodyweight-reps-label{font-size:13px;color:var(--text-secondary);margin-top:4px}.bodyweight-added{font-size:14px;color:var(--accent);font-weight:600;margin-top:8px}.weight-stack-container{padding:24px 0;width:100%}.weight-stack-wrapper{display:flex;justify-content:center;align-items:flex-end}.weight-stack{display:flex;flex-direction:column;align-items:center;gap:2px;position:relative}.weight-stack-cable{width:3px;height:12px;background:var(--text-tertiary);border-radius:1px}.weight-stack-plate{width:100px;height:16px;background:var(--bg-tertiary, var(--bg-secondary));border-radius:3px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;font-size:10px;font-weight:600;color:var(--text-tertiary);position:relative;transition:all .2s ease;box-sizing:border-box}.weight-stack-plate.active{background:var(--accent);color:#fff;height:20px;width:106px;font-size:11px;font-weight:700;box-shadow:0 2px 8px #0003}.weight-stack-pin{position:absolute;left:-18px;top:50%;transform:translateY(-50%);width:14px;height:14px;background:var(--warning, #f44);border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px #0000004d}.weight-stack-label{text-align:center;font-size:14px;font-weight:600;color:var(--text-secondary);margin-top:12px}.plate-editor-overlay{position:fixed;inset:0;background:#000000b3;display:none;justify-content:center;align-items:center;z-index:1000;padding:20px}.plate-editor-overlay.visible{display:flex}.plate-editor-modal{background:var(--bg-card);border-radius:16px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 16px 48px #0000004d}.plate-editor-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.plate-editor-header h3{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.plate-editor-close{background:none;border:none;font-size:28px;color:var(--text-secondary);cursor:pointer;padding:0;line-height:1}.plate-editor-close:hover{color:var(--text-primary)}.plate-editor-preview{padding:24px 20px;display:flex;justify-content:center;align-items:center;min-height:180px}.plate-editor-select-all{text-align:center;padding:10px 20px 0}.select-all-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s ease}.select-all-btn:hover,.select-all-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.plate-editor-colors{padding:16px 20px;border-top:1px solid var(--border)}.plate-editor-colors-title{font-size:13px;color:var(--text-secondary);margin-bottom:12px;text-align:center}.plate-color-options{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.plate-color-option{width:36px;height:36px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s ease,border-color .15s ease}.plate-color-option:hover{transform:scale(1.15);border-color:var(--text-primary)}.plate-color-option.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.plate-color-option.default-option{background:linear-gradient(135deg,#e53935 25%,#1e88e5 25% 50%,#fdd835 50% 75%,#43a047 75%);font-size:18px;display:flex;align-items:center;justify-content:center;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.plate-color-option.white-option{border:2px solid #333}[data-theme=dark] .plate-color-option.white-option{border:2px solid #fff}[data-theme=pink] .plate-color-option.white-option{border:2px solid #ff1493}[data-theme=dark] .plate-color-option.black-option{border:2px solid #fff}.plate-editor-buttons{display:flex;gap:12px;padding:16px 20px;border-top:1px solid var(--border)}.plate-editor-cancel,.plate-editor-save{flex:1;padding:12px 20px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.plate-editor-cancel{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary)}.plate-editor-cancel:hover{background:var(--border)}.plate-editor-save{background:var(--accent);border:none;color:#fff}.plate-editor-save:hover{background:var(--accent-hover)}.upload-workout-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;padding:20px}.upload-workout-overlay.visible{opacity:1;visibility:visible}.upload-workout-modal{background:var(--bg-card);border-radius:20px;padding:28px;max-width:420px;width:100%;max-height:85vh;overflow-y:auto;position:relative;transform:scale(.9);transition:transform .2s ease}.upload-workout-overlay.visible .upload-workout-modal{transform:scale(1)}.upload-modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:var(--bg-secondary);border-radius:50%;font-size:20px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.upload-modal-close:hover{background:var(--border);color:var(--text-primary)}.upload-step-title{font-size:20px;font-weight:700;margin:0 0 8px;color:var(--text-primary)}.upload-step-subtitle{font-size:14px;color:var(--text-secondary);margin:0 0 24px}.upload-options{display:flex;flex-direction:column;gap:12px}.upload-option{display:flex;flex-direction:column;align-items:center;padding:20px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:center}.upload-option:hover{border-color:var(--accent);background:var(--bg-primary)}.upload-option-icon{color:var(--accent);margin-bottom:8px}.upload-option-label{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.upload-option-desc{font-size:12px;color:var(--text-secondary)}.saved-uploads-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.settings-saved-uploads{margin-top:14px;padding-top:14px}.saved-uploads-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.settings-saved-uploads-header{padding:12px;background:var(--bg-secondary);border-radius:10px}.settings-saved-uploads-header:hover{background:var(--bg-card)}.saved-uploads-title{font-size:14px;font-weight:600;color:var(--text-secondary)}.settings-saved-uploads-dropdown.expanded{max-height:280px;margin-top:8px}.saved-uploads-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding:0}.saved-uploads-empty{padding:12px;background:var(--bg-secondary);border-radius:10px;color:var(--text-secondary);font-size:12px}.saved-upload-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--bg-secondary);border-radius:10px;cursor:pointer;transition:all .2s ease}.saved-upload-item:hover{background:var(--bg-card);transform:translate(4px)}.saved-upload-info{display:flex;flex-direction:column;gap:2px}.saved-upload-name{font-size:14px;font-weight:600;color:var(--text-primary)}.saved-upload-meta{font-size:11px;color:var(--text-secondary)}.saved-upload-arrow{color:var(--text-secondary);font-size:18px}.saved-upload-delete{background:none;border:none;color:var(--text-secondary);font-size:18px;cursor:pointer;padding:4px 8px;margin-left:8px;opacity:0;transition:opacity .2s ease}.saved-upload-item:hover .saved-upload-delete{opacity:1}.saved-upload-delete:hover{color:#ef4444}.upload-back-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-secondary);font-size:14px;cursor:pointer;padding:0;margin-bottom:16px}.upload-back-btn:hover{color:var(--text-primary)}.upload-text-input{width:100%;min-height:180px;padding:16px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:12px;color:var(--text-primary);font-family:inherit;font-size:14px;resize:vertical;margin-bottom:16px;box-sizing:border-box}.upload-text-input:focus{outline:none;border-color:var(--accent)}.upload-text-input::placeholder{color:var(--text-secondary);opacity:.7}.upload-submit-btn{width:100%;padding:14px 20px;background:var(--accent);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s ease}.upload-submit-btn:hover{background:var(--accent-hover)}.upload-submit-btn:disabled{opacity:.6;cursor:not-allowed}.upload-loading{text-align:center;padding:40px 20px}.upload-spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:uploadSpin 1s linear infinite;margin:0 auto 16px}@keyframes uploadSpin{to{transform:rotate(360deg)}}.upload-loading-text{color:var(--text-secondary);font-size:14px;margin:0}.upload-workout-name{font-size:16px;font-weight:600;color:var(--accent);margin:0 0 16px}.parsed-exercises{max-height:300px;overflow-y:auto;margin-bottom:12px}.parsed-exercise-card{background:var(--bg-secondary);border-radius:12px;padding:14px;margin-bottom:10px}.parsed-exercise-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.parsed-exercise-name{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:15px;font-weight:600;padding:0}.parsed-exercise-name:focus{outline:none}.parsed-exercise-delete{width:24px;height:24px;border:none;background:none;color:var(--text-secondary);font-size:18px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.parsed-exercise-delete:hover{color:var(--warning)}.parsed-exercise-details{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:8px}.parsed-detail label{display:block;font-size:10px;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.parsed-detail input[type=number],.parsed-detail input[type=text]{width:100%;padding:8px;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:14px;box-sizing:border-box}.parsed-detail input:focus{outline:none;border-color:var(--accent)}.parsed-weight-wrapper{display:flex;align-items:center;gap:4px}.parsed-weight-wrapper input{flex:1}.parsed-weight-unit{font-size:12px;color:var(--text-secondary);min-width:24px}.parsed-amrap-row{grid-column:1 / -1;margin-top:6px}.parsed-amrap-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);cursor:pointer}.parsed-amrap-label input{width:16px;height:16px;accent-color:var(--accent)}.upload-add-exercise-btn{width:100%;padding:10px;background:transparent;border:2px dashed var(--border);border-radius:10px;color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all .2s ease;margin-bottom:16px}.upload-add-exercise-btn:hover{border-color:var(--accent);color:var(--accent)}.upload-action-buttons{display:flex;flex-direction:column;gap:10px}.upload-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.upload-action-btn.primary{background:var(--accent);border:none;color:#fff}.upload-action-btn.primary:hover{background:var(--accent-hover)}.upload-action-btn.secondary{background:var(--bg-secondary);border:2px solid var(--border);color:var(--text-primary)}.upload-action-btn.secondary:hover{border-color:var(--accent)}.upload-input-group{margin-bottom:16px}.upload-input-label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.upload-input-field{width:100%;padding:12px 14px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;color:var(--text-primary);font-size:15px;box-sizing:border-box}.upload-input-field:focus{outline:none;border-color:var(--accent)}.upload-goal-btns{display:flex;gap:8px}.upload-goal-btn{flex:1;padding:12px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.upload-goal-btn:hover{border-color:var(--accent)}.upload-goal-btn.selected{background:var(--accent);border-color:var(--accent);color:#fff}.upload-toggle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.upload-toggle-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-toggle-grid .upload-goal-btn{height:100%;text-align:left}.upload-toggle-title{display:block;font-size:14px;font-weight:600}.upload-toggle-desc{display:block;font-size:12px;font-weight:400;line-height:1.35;margin-top:4px;opacity:.85}.upload-field-help{font-size:12px;color:var(--text-secondary);margin-top:8px;line-height:1.45}.ai-builder-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#3b82f61f;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:14px}.ai-inline-note{padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;color:var(--text-secondary);font-size:13px;line-height:1.45;margin-bottom:16px}.ai-preview-hero,.ai-empty-card,.ai-substitution-card,.ai-workout-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:14px;padding:14px}.ai-preview-hero{margin-bottom:18px}.ai-preview-title{font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.ai-preview-meta{font-size:13px;color:var(--text-secondary);margin-bottom:10px}.ai-preview-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.ai-preview-tag{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-secondary);font-size:12px;font-weight:600;text-transform:capitalize}.ai-preview-copy{font-size:14px;line-height:1.55;color:var(--text-primary)}.ai-review-section{margin-bottom:18px}.ai-review-title{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:10px;text-transform:uppercase;letter-spacing:.04em}.ai-bullet-list{display:flex;flex-direction:column;gap:10px}.ai-bullet-item{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--text-primary)}.ai-bullet-list.warnings .ai-bullet-item{color:#b45309}.ai-bullet-dot{width:8px;height:8px;border-radius:999px;background:var(--accent);margin-top:7px;flex-shrink:0}.ai-bullet-list.warnings .ai-bullet-dot{background:#f59e0b}.ai-schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px}.ai-schedule-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:10px}.ai-schedule-card.rest{opacity:.75}.ai-schedule-day{font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;margin-bottom:4px}.ai-schedule-workout{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.4}.ai-substitution-list,.ai-workout-list{display:flex;flex-direction:column;gap:10px}.ai-substitution-title,.ai-workout-title{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.ai-substitution-meta,.ai-workout-meta{font-size:12px;color:var(--text-secondary);margin-bottom:6px;text-transform:capitalize}.ai-substitution-copy,.ai-workout-exercises,.ai-empty-card{font-size:13px;line-height:1.5;color:var(--text-primary)}.ai-substituted-lift-note{font-size:12px;color:var(--text-secondary);margin-top:4px}.workout-day-selector{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:4px}.workout-day-btn{flex-shrink:0;padding:8px 16px;border:2px solid var(--border);border-radius:20px;background:var(--bg-secondary);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.workout-day-btn:hover{border-color:var(--accent)}.workout-day-btn.selected{background:var(--accent);border-color:var(--accent);color:#fff}.workout-import-summary{background:var(--bg-secondary);border-radius:12px;padding:16px;margin-bottom:16px;border:1px solid var(--border)}.import-summary-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:10px}.import-summary-days{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.import-day-badge{background:var(--accent);color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.import-pr-notice{font-size:13px;color:var(--accent);margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.parsed-exercise-notes{font-size:12px;color:var(--text-secondary);padding:6px 10px;background:var(--bg-secondary);border-radius:6px;margin-top:8px;font-style:italic}.upload-error{text-align:center;padding:30px 20px}.upload-error-icon{color:var(--warning);margin-bottom:16px}.upload-error-text{color:var(--text-primary);font-size:15px;margin:0 0 20px}.upload-error-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch}.upload-retry-btn{padding:12px 24px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.upload-retry-btn:hover{border-color:var(--accent)}.toast-notification{position:fixed;bottom:100px;left:50%;transform:translate(-50%) translateY(20px);background:var(--bg-card);color:var(--text-primary);padding:14px 24px;border-radius:12px;font-size:14px;font-weight:500;box-shadow:0 4px 20px #0000004d;opacity:0;visibility:hidden;transition:all .3s ease;z-index:1100}.toast-notification.visible{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.install-banner{position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-top:1px solid var(--border);padding:16px 20px;display:none;align-items:center;gap:12px;z-index:1200;box-shadow:0 -4px 20px #0000004d}.install-banner.visible{display:flex}.install-banner-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0}.install-banner-text{flex:1}.install-banner-title{font-weight:600;font-size:14px;color:var(--text-primary)}.install-banner-desc{font-size:12px;color:var(--text-secondary);margin-top:2px}.install-banner-btn{background:var(--accent);color:#000;border:none;padding:8px 16px;border-radius:8px;font-weight:600;font-size:13px;cursor:pointer;white-space:nowrap}.install-banner-close{background:none;border:none;color:var(--text-secondary);font-size:20px;cursor:pointer;padding:4px;line-height:1}.update-banner{position:fixed;top:0;left:0;right:0;background:var(--accent);color:#000;padding:10px 20px;display:none;align-items:center;justify-content:center;gap:12px;z-index:1300;font-size:13px;font-weight:600}.update-banner.visible{display:flex}.update-banner-btn{background:#0003;color:#000;border:none;padding:6px 14px;border-radius:6px;font-weight:600;font-size:12px;cursor:pointer}.update-banner-close{background:none;border:none;color:#00000080;font-size:18px;cursor:pointer;padding:2px;line-height:1}.preview-barbell{display:flex;align-items:center;transform:scale(.85)}.preview-plate{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.preview-plate:hover{transform:scale(1.08)}.preview-plate.selected{box-shadow:0 0 0 3px var(--accent)}.bar{background:linear-gradient(180deg,#666,#444,#333);height:28px;width:140px;border-radius:4px;display:flex;align-items:center;justify-content:center;position:relative}.bar:before,.bar:after{content:"";position:absolute;width:8px;height:40px;background:linear-gradient(180deg,#555,#333);border-radius:2px}.bar:before{left:-4px}.bar:after{right:-4px}.bar-weight{font-size:12px;font-weight:700;color:var(--text-secondary)}.summary{text-align:center;padding:12px 0;display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.summary-item{text-align:center}.summary-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:16px;font-weight:800}.summary-total{font-size:24px;font-weight:900;color:var(--accent)}.message{text-align:center;padding:24px;color:var(--text-secondary);font-size:14px}.message.error{color:var(--warning)}.message.success{color:var(--success)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 20px;color:var(--text-secondary)}.empty-state-icon{font-size:40px;margin-bottom:12px;opacity:.5}.empty-state-icon svg{stroke:currentColor;stroke-width:1.5;fill:none}.empty-state-text{font-size:13px;text-align:center}.empty-state-sub{font-size:11px;text-align:center;margin-top:8px;opacity:.7;font-style:italic}.set-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.set-info{font-size:14px;font-weight:600;color:var(--text-secondary)}.set-buttons{display:flex;gap:8px}.set-btn{width:36px;height:36px;border:2px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);border-radius:8px;font-size:18px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.set-btn:hover{border-color:var(--accent);background:var(--accent)}.set-btn:disabled{opacity:.3;cursor:not-allowed}.set-btn:disabled:hover{border-color:var(--border);background:var(--bg-secondary)}.set-dots{display:flex;justify-content:center;gap:8px;margin-top:16px}.set-dot{width:8px;height:8px;border-radius:50%;background:var(--border);cursor:pointer;transition:all .2s ease}.set-dot.active{background:var(--accent);transform:scale(1.25)}.set-dot:hover{background:var(--text-secondary)}.set-dot.completed{background:var(--success, #34c759)}.set-dot.active.completed{background:var(--success, #34c759);transform:scale(1.25)}.amrap-feedback{max-height:0;opacity:0;overflow:hidden;transition:max-height .4s ease,opacity .3s ease,margin .3s ease,padding .3s ease;margin:0;padding:0 16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px}.amrap-feedback.visible{max-height:500px;opacity:1;overflow:visible;padding:14px 16px;margin-top:12px}.amrap-feedback.is-pr{border-color:var(--success, #34c759);background:#34c7590f}.amrap-feedback-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.amrap-feedback-header-icon{flex-shrink:0;display:flex}.amrap-feedback-header-icon svg{width:18px;height:18px;color:var(--accent)}.amrap-feedback.is-pr .amrap-feedback-header-icon svg{color:var(--success, #34c759)}.amrap-feedback-header span:last-child{font-size:13px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px}.amrap-feedback-stats{display:flex;gap:10px;margin-bottom:10px}.amrap-feedback-stat{flex:1;padding:8px 10px;background:var(--bg-card);border-radius:8px;text-align:center}.amrap-feedback-stat-label{font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.amrap-feedback-stat-value{font-size:18px;font-weight:800;color:var(--text-primary)}.amrap-feedback-stat-value.new-pr{color:var(--success, #34c759)}.amrap-feedback-comparison{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:6px;padding:6px 0}.amrap-feedback-comparison svg,.amrap-feedback-comparison-icon{flex-shrink:0;width:14px;height:14px;display:flex}.amrap-feedback-comparison-icon svg{width:14px;height:14px}.amrap-feedback-comparison.positive{color:var(--success, #34c759)}.amrap-feedback-comparison.negative{color:var(--warning, #ff9500)}.amrap-feedback-rep-history{font-size:12px;color:var(--text-secondary);padding-top:8px;border-top:1px solid var(--border);display:flex;align-items:center;gap:6px}.amrap-feedback-rep-history svg,.amrap-feedback-history-icon{flex-shrink:0;width:14px;height:14px;display:flex}.amrap-feedback-history-icon svg{width:14px;height:14px;color:var(--accent)}.amrap-feedback-rep-diff.positive{color:var(--success, #34c759);font-weight:700}.amrap-feedback-rep-diff.negative{color:var(--warning, #ff9500);font-weight:700}[data-theme=pink] .amrap-feedback.is-pr{border-color:#ff1493;background:#ff14930f}[data-theme=pink] .amrap-feedback.is-pr .amrap-feedback-header-icon svg{color:#ff1493}[data-theme=pink] .amrap-feedback-stat-value.new-pr{color:#ff1493}.carousel-container{overflow-x:clip;overflow-y:visible;position:relative;width:100%}.carousel-track{display:flex;transition:transform .3s ease;width:100%}.carousel-slide{min-width:100%;width:100%;flex-shrink:0;box-sizing:border-box;position:relative}.delete-set-btn{position:absolute;top:-10px;right:4px;width:28px;height:28px;border:none;background:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;z-index:5;opacity:.5;transition:opacity .15s ease,background .15s ease,color .15s ease}.delete-set-btn:hover{opacity:1;background:#ff3b301a;color:#ff3b30}.promo-slide-content{display:flex;flex-direction:column;align-items:center;padding:32px 20px;text-align:center}.promo-slide-icon{color:var(--accent);margin-bottom:16px}.promo-slide-title{font-size:20px;font-weight:800;color:var(--text-primary);margin-bottom:20px;letter-spacing:-.3px}.promo-slide-features{display:flex;flex-direction:column;gap:10px;width:100%;max-width:280px;margin-bottom:24px}.promo-slide-feature{display:flex;align-items:center;gap:10px;text-align:left;font-size:13px;color:var(--text-secondary)}.promo-slide-feature svg{color:var(--success, #34c759);flex-shrink:0}.promo-slide-btn{background:linear-gradient(135deg,var(--accent),#42a5f5);color:#fff;border:none;padding:14px 32px;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease;letter-spacing:-.2px}.promo-slide-btn:hover{box-shadow:0 4px 20px #64b5f64d}.promo-slide-btn:active{transform:scale(.97)}[data-theme=pink] .promo-slide-btn{background:linear-gradient(135deg,#ff1493,#00cec9)}.viz-container{width:100%;overflow:hidden}.set-tracking{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px;border-top:1px solid var(--border);margin-top:12px}.tracking-option{flex:1 1 auto;min-width:100px}.tracking-option input{position:absolute;opacity:0;pointer-events:none}.tracking-option label{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.tracking-option input:checked+label{background:var(--success);border-color:var(--success);color:#fff}.tracking-option.amrap input:checked+label{background:var(--accent);border-color:var(--accent)}.tracking-option label:hover{border-color:var(--text-secondary)}.greeting-row{display:flex;align-items:center;justify-content:space-between;font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.tooltip-wrapper{position:relative;display:inline-block}.tooltip-trigger{cursor:help}.tooltip-trigger:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:10px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;font-size:12px;font-weight:400;line-height:1.5;color:var(--text-primary);white-space:normal;width:max-content;max-width:280px;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1000;box-shadow:0 4px 12px #00000026;pointer-events:none}.tooltip-trigger:hover:after{opacity:1;visibility:visible}.tooltip-trigger:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:2px;border:6px solid transparent;border-top-color:var(--border);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1001}.tooltip-trigger:hover:before{opacity:1;visibility:visible}[data-tooltip]{position:relative;cursor:default}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;font-size:13px;font-weight:400;line-height:1.6;letter-spacing:.01em;color:var(--text-secondary);white-space:normal;width:max-content;max-width:300px;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1000;box-shadow:0 8px 24px #0003;pointer-events:none;text-align:left}[data-tooltip]:hover:after{opacity:1;visibility:visible}[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--border);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:1001}[data-tooltip]:hover:before{opacity:1;visibility:visible}[data-tooltips-disabled=true] [data-tooltip]:after,[data-tooltips-disabled=true] [data-tooltip]:before{display:none!important}[data-tooltip-pos=left]:after{left:0;transform:translate(0)}[data-tooltip-pos=left]:before{left:20px;transform:translate(0)}[data-tooltip-pos=right]:after{left:auto;right:0;transform:translate(0)}[data-tooltip-pos=right]:before{left:auto;right:20px;transform:translate(0)}[data-tooltip-pos=bottom]:after{bottom:auto;top:calc(100% + 10px)}[data-tooltip-pos=bottom]:before{bottom:auto;top:calc(100% + 4px);border-top-color:transparent;border-bottom-color:var(--border)}[data-tooltip-pos=side-left]:after{bottom:auto;top:50%;left:auto;right:calc(100% + 10px);transform:translateY(-50%);writing-mode:horizontal-tb;text-orientation:mixed;white-space:nowrap;min-width:150px}[data-tooltip-pos=side-left]:before{bottom:auto;top:50%;left:auto;right:calc(100% + 4px);transform:translateY(-50%);border-top-color:transparent;border-left-color:var(--border);border-right-color:transparent}[data-tooltip-pos=side-right]:after{bottom:auto;top:-20px;left:calc(100% + 10px);right:auto;transform:none;writing-mode:horizontal-tb;text-orientation:mixed;white-space:nowrap;min-width:150px}[data-tooltip-pos=side-right]:before{bottom:auto;top:-10px;left:calc(100% + 4px);right:auto;transform:none;border-top-color:transparent;border-right-color:var(--border);border-left-color:transparent}@media(max-width:600px){.streak-counter[data-tooltip]:after{bottom:auto;top:calc(100% + 10px);right:auto;left:0;transform:none}.streak-counter[data-tooltip]:before{bottom:auto;top:calc(100% + 4px);right:auto;left:20px;transform:none;border-top-color:transparent;border-bottom-color:var(--border)}}.card-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.card-header-row .settings-toggle{width:36px;height:36px;font-size:18px}.date-display{display:inline-block;cursor:pointer;position:relative}.date-display .date-text{font-size:18px;font-weight:700;color:var(--text-primary);transition:color .2s ease}.date-display:hover .date-text{color:var(--text-primary)}.date-display input[type=date]{position:absolute;opacity:0;width:0;height:0}.past-workout-badge{display:none;font-size:11px;font-weight:600;color:#fff;background:var(--accent);padding:2px 8px;border-radius:10px;margin-left:8px;vertical-align:middle}.past-workout-badge.visible{display:inline-block}.exercise-selector{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.exercise-buttons{display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;scroll-behavior:smooth;padding:8px 0;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.exercise-buttons::-webkit-scrollbar{display:none}.exercise-btn{padding:10px 16px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;font-family:inherit;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.exercise-btn:hover{border-color:var(--text-secondary)}.exercise-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.exercise-btn.add-btn{padding:8px 12px;font-size:12px;flex-shrink:0;scroll-snap-align:center;transform:scale(.75);opacity:.45;transition:transform .25s ease,opacity .25s ease}.exercise-btn.exercise-completed{position:relative;opacity:.65}.exercise-btn.exercise-completed:after{content:"✓";position:absolute;top:-5px;right:-5px;background:var(--success, #34c759);color:#fff;font-size:9px;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;line-height:1}.exercise-btn.active.exercise-completed{opacity:.85}.exercise-btn-wrapper{position:relative;display:inline-block;flex-shrink:0;scroll-snap-align:center;cursor:grab;transform:scale(.85);opacity:.55;transition:transform .25s ease,opacity .25s ease}.exercise-btn-wrapper.active-item{transform:scale(1);opacity:1}.exercise-btn-wrapper.dragging{opacity:.5;cursor:grabbing}.exercise-btn-wrapper.drag-over{transform:scale(1.05)}.exercise-btn-wrapper.drag-over:before{content:"";position:absolute;left:-4px;top:0;bottom:0;width:3px;background:var(--accent);border-radius:2px}[data-theme=pink] .exercise-btn-wrapper.drag-over:before{background:linear-gradient(180deg,#ff1493,#00cec9)}@keyframes long-press-shake{0%,to{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}.exercise-btn-wrapper.long-press-active .exercise-btn{animation:long-press-shake .4s ease;background:var(--bg-secondary);border-color:var(--accent)}.exercise-context-backdrop{display:none;position:fixed;inset:0;z-index:9998}.exercise-context-backdrop.active{display:block}.exercise-context-menu{display:none;position:fixed;z-index:9999;background:var(--bg-primary);border:1px solid var(--border);border-radius:12px;padding:4px;min-width:180px;box-shadow:0 8px 24px #0000004d;opacity:0;transform:scale(.9);transition:opacity .15s ease,transform .15s ease}.exercise-context-menu.active{display:block;opacity:1;transform:scale(1)}.exercise-context-option{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:none;background:none;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;border-radius:8px;text-align:left}.exercise-context-option:hover,.exercise-context-option:active{background:var(--bg-secondary)}.exercise-context-option.delete{color:#f44}.exercise-context-option svg{flex-shrink:0}.custom-exercise-input{display:none;gap:8px;margin-top:8px}.custom-exercise-input.visible{display:flex}.custom-exercise-input-field{flex:1;min-width:0}.custom-exercise-input input{flex:1;width:100%;padding:10px 14px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;color:var(--text-primary);font-family:inherit;font-size:14px;font-weight:600}.custom-exercise-input input:focus{outline:none;border-color:var(--accent)}.custom-exercise-input input::placeholder{color:var(--text-secondary);font-weight:400}.custom-exercise-input-hint{margin-top:6px;color:var(--text-secondary);font-size:12px;line-height:1.4}.custom-exercise-input button{padding:10px 16px;background:var(--accent);border:none;border-radius:10px;color:#fff;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease}.custom-exercise-input .custom-exercise-icon-btn{flex:0 0 44px;width:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:22px;line-height:1;text-transform:lowercase}.custom-exercise-input button:hover{background:var(--accent-hover)}.custom-exercise-input .cancel-btn{background:var(--bg-secondary);border:2px solid var(--border);color:var(--text-secondary)}.custom-exercise-input .cancel-btn:hover{border-color:var(--text-secondary);background:var(--bg-secondary)}[data-theme=pink] .exercise-btn{border-color:#ff69b4;background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .exercise-btn.active{background:linear-gradient(135deg,#ff1493,#00cec9);border-color:#ff1493}[data-theme=pink] .exercise-btn-wrapper.long-press-active .exercise-btn{background:#ff149326;border-color:#ff1493}[data-theme=pink] .custom-exercise-input input{border-color:#ff69b4;background:linear-gradient(135deg,#fff0f5,#e0ffff)}[data-theme=pink] .custom-exercise-input button{background:linear-gradient(135deg,#ff1493,#00cec9)}@media(max-width:480px){body{align-items:flex-start;padding-top:16px}.header{margin-bottom:0;padding-top:18px}.header .title{width:clamp(212px,72vw,264px);margin-top:4px}.theme-toggle{width:36px;height:36px;font-size:16px;border-radius:10px}.card,.settings-card{padding:20px}.input-field{font-size:18px;padding:12px 45px 12px 14px}.slide-input-group .input-field{font-size:24px;padding:14px 50px 14px 16px}.plate-toggle label{min-width:42px;padding:8px 10px;font-size:13px}.bar{width:100px}.plate-45,.plate-25kg{width:24px;height:110px;font-size:14px}.plate-35,.plate-20kg{width:20px;height:95px;font-size:13px}.plate-25,.plate-15kg{width:18px;height:85px;font-size:12px}.plate-10,.plate-10kg{width:14px;height:70px;font-size:11px}.plate-5,.plate-5kg{width:12px;height:58px;font-size:11px}.plate-2-5,.plate-2-5kg{width:10px;height:48px;font-size:10px}.plate-1-25kg{width:8px;height:42px;font-size:9px}.set-controls{gap:8px}.set-info{font-size:12px}.set-btn{width:28px;height:28px;font-size:16px}.set-tracking{flex-wrap:wrap}.tracking-option{flex:1 1 45%}.history-filters{gap:6px}.history-filter{padding:8px 26px 8px 10px;font-size:12px;background-position:right 8px center}}@media(max-width:360px){.history-filters{flex-direction:column;gap:8px}.history-filter{width:100%}}.view-tabs{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:500px;display:flex;background:var(--bg-card);border-radius:20px 20px 0 0;padding:8px 12px;padding-bottom:max(8px,env(safe-area-inset-bottom));gap:4px;box-shadow:0 -4px 20px #00000026;z-index:100}.view-tab{flex:1;display:flex;align-items:center;justify-content:center;padding:12px 8px;background:transparent;border:none;border-radius:12px;color:var(--text-secondary);font-family:inherit;cursor:pointer;transition:all .2s ease}.view-tab .tab-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center}.view-tab .tab-icon svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.view-tab .tab-label{display:none}.view-tab.active{background:var(--accent);color:#fff}.view-tab:hover:not(.active){background:var(--bg-secondary)}[data-theme=pink] .view-tabs{background:linear-gradient(145deg,#fff0f5,#ffe4ec,#e0ffff);border-top:2px solid #ff69b4;box-shadow:0 -4px 20px #ff149333}[data-theme=pink] .view-tab.active{background:linear-gradient(135deg,#ff1493,#00cec9)}.view-container{display:none}.view-container.active{display:block}.history-filters{display:flex;gap:8px;margin-bottom:16px}.history-filter{flex:1;min-width:0;box-sizing:border-box;padding:10px 32px 10px 12px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:10px;color:var(--text-primary);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L2 4h8z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.history-filter:focus{outline:none;border-color:var(--accent)}.history-list{display:flex;flex-direction:column;gap:12px;max-height:60vh;overflow-y:auto;min-height:0;padding-right:4px;scrollbar-width:none;-ms-overflow-style:none}.history-list::-webkit-scrollbar{display:none}.history-day{background:var(--bg-secondary);border-radius:12px}.history-day-header{display:flex;align-items:center;padding:12px 16px;cursor:pointer;transition:background .2s ease;gap:12px}.history-day-header:hover{background:var(--bg-card)}.history-date{font-weight:700;font-size:14px}.history-summary{font-size:12px;flex:1;color:var(--text-secondary)}.history-feeling{font-size:12px;font-weight:600;padding:2px 8px;background:var(--bg-card);border-radius:10px;white-space:nowrap}.history-post-feeling{font-size:12px;opacity:.7}.history-checkin-tags{display:flex;flex-wrap:wrap;gap:4px;padding:0 16px 8px}.history-tag{font-size:10px;font-weight:600;padding:2px 8px;background:var(--bg-card);border-radius:8px;color:var(--text-secondary)}.history-notes{padding:0 16px 8px;font-size:12px;font-style:italic;color:var(--text-secondary);line-height:1.4}.history-rest{font-size:10px;font-weight:500;color:var(--accent);opacity:.8}.history-day-actions{display:flex;gap:8px;margin-left:auto;padding-left:12px}.history-day-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px 8px;border-radius:6px;font-size:14px;transition:all .2s ease}.history-day-btn:hover{background:var(--bg-card);color:var(--text-primary)}.history-day-btn.delete:hover{color:#ff6b6b}.history-day-btn svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none;display:block}.history-day-content{padding:0 16px 12px;display:flex;flex-direction:column;gap:8px}.history-exercise{padding:8px 0;border-top:1px solid var(--border)}.history-exercise-name{font-weight:600;font-size:13px;margin-bottom:4px;color:var(--text-secondary)}.history-sets{display:flex;flex-wrap:wrap;gap:6px}.history-set{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-card);border-radius:6px;font-size:12px;font-weight:600}.history-set.is-pr{background:var(--accent);color:#fff}.history-set.is-pr .history-rest{color:#ffffffd9}.pr-board{display:flex;flex-direction:column;gap:12px}.pr-card{background:var(--bg-secondary);border-radius:12px;padding:16px;border:1px solid var(--border)}.pr-exercise{font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;color:var(--accent)}.pr-stats{display:flex;gap:16px}.pr-stat{flex:1}.pr-stat-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.pr-stat-value{font-size:20px;font-weight:800;color:var(--text-primary)}.pr-stat-date,.pr-stat-meta{font-size:11px;color:var(--text-secondary);margin-top:2px}.pr-indicator{display:none;position:absolute;top:-8px;right:8px;background:linear-gradient(135deg,gold,#ff6b00);color:#000;font-size:10px;font-weight:800;padding:4px 8px;border-radius:6px;animation:prPulse 1s ease-in-out infinite}.pr-indicator.visible{display:block}.cycle-pr-attempt-label{text-align:center;font-size:12px;font-weight:700;color:gold;background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:8px;padding:6px 12px;margin-bottom:8px;animation:prPulse 2s ease-in-out infinite}@keyframes prPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}[data-theme=pink] .history-filter{border-color:#ff69b4;background-color:#fff0f580}[data-theme=pink] .pr-card{background:linear-gradient(135deg,#fff0f5,#e0ffff);border:2px solid #ff69b4}[data-theme=pink] .pr-exercise{background:linear-gradient(90deg,#ff1493,#00cec9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=pink] .pr-indicator{background:linear-gradient(135deg,#ff1493,gold)}[data-theme=pink] .history-set.is-pr{background:linear-gradient(135deg,#ff1493,#00cec9)}.muscle-week-selector{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px 0 8px}.muscle-week-btn{background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border, #333);border-radius:8px;color:var(--text-primary, #fff);width:36px;height:36px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.muscle-week-btn:hover{background:var(--bg-card, #222)}.muscle-week-label{font-size:14px;font-weight:600;color:var(--text-primary, #fff);min-width:120px;text-align:center}.body-map-wrapper{margin:8px 0 12px}.body-map-scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.body-map-scroll::-webkit-scrollbar{display:none}.body-map-panel{min-width:100%;scroll-snap-align:center;display:flex;flex-direction:column;align-items:center;padding:0 4px;box-sizing:border-box}.body-map-image-container{position:relative;width:100%;overflow:hidden}.body-map-image{width:140%;height:auto;display:block;margin-left:-20%;margin-top:-3%}.body-map-overlay{position:absolute;top:0;left:0;width:100%;height:100%}.body-map-side-label{font-size:12px;font-weight:600;color:var(--text-secondary, #888);text-transform:uppercase;letter-spacing:1px;margin-top:4px;text-align:center}.muscle-region{fill:transparent;stroke:none;cursor:pointer;transition:fill .4s ease;mix-blend-mode:screen;pointer-events:all}.muscle-region:hover,.muscle-region.muscle-highlighted{fill:#64b5f633}.body-map-dots{display:flex;justify-content:center;gap:8px;margin-top:10px}.body-map-dot{width:8px;height:8px;border-radius:50%;background:var(--border, #333);cursor:pointer;transition:background .2s ease,transform .2s ease}.body-map-dot.active{background:var(--accent, #64b5f6);transform:scale(1.3)}.muscle-detail-card{background:var(--bg-card, #222);border-radius:14px;padding:16px;margin:12px 16px 0;border:1px solid var(--border, #333)}.muscle-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.muscle-detail-name{font-size:16px;font-weight:700;color:var(--accent, #64b5f6)}.muscle-detail-close{cursor:pointer;font-size:22px;color:var(--text-secondary, #888);line-height:1;padding:4px}.muscle-detail-progress{margin-bottom:10px}.muscle-detail-bar{height:6px;background:var(--border, #333);border-radius:3px;overflow:hidden;margin-bottom:6px}.muscle-detail-bar-fill{height:100%;border-radius:3px;transition:width .4s ease,background .3s ease}.muscle-detail-stats{display:flex;justify-content:space-between;font-size:13px;color:var(--text-secondary, #888)}.muscle-detail-range{font-size:11px;color:var(--text-secondary, #888)}.muscle-detail-exercises{border-top:1px solid var(--border, #333);padding-top:8px}.muscle-detail-exercise-item{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:13px;color:var(--text-primary, #fff)}.muscle-detail-exercise-sets{color:var(--text-secondary, #888);font-size:12px}.muscle-volume-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:0 16px;margin-top:16px}.muscle-volume-item{background:var(--bg-card, #222);border-radius:10px;padding:10px 12px;cursor:pointer;transition:all .2s ease;border-left:3px solid var(--border, #333)}.muscle-volume-item:hover{transform:scale(1.02)}.muscle-volume-item.selected{border-color:var(--accent, #64b5f6);background:var(--bg-secondary, #1a1a1a)}.muscle-volume-item.optimal{border-left-color:var(--success, #34c759)}.muscle-volume-item.partial{border-left-color:var(--accent, #64b5f6)}.muscle-volume-item.low{border-left-color:var(--warning, #ff9500)}.muscle-volume-item.empty{border-left-color:var(--border, #333);opacity:.6}.muscle-volume-name{font-size:12px;font-weight:600;color:var(--text-primary, #fff);margin-bottom:4px}.muscle-volume-bar-track{height:4px;background:var(--border, #333);border-radius:2px;margin-bottom:4px;overflow:hidden}.muscle-volume-bar-fill{height:100%;background:var(--accent, #64b5f6);border-radius:2px;transition:width .4s ease}.muscle-volume-item.optimal .muscle-volume-bar-fill{background:var(--success, #34c759)}.muscle-volume-item.low .muscle-volume-bar-fill{background:var(--warning, #ff9500)}.muscle-volume-count{font-size:11px;color:var(--text-secondary, #888)}.muscle-weekly-summary{margin-top:16px;padding:0 16px 16px;text-align:center}.weekly-summary-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;background:var(--bg-card, #222);font-size:13px;color:var(--text-secondary, #888);border:1px solid var(--border, #333)}.weekly-summary-badge.complete{background:#34c7591f;border-color:#34c7594d;color:var(--success, #34c759)}.weekly-summary-icon{font-weight:700}.weekly-summary-total{font-size:11px;color:var(--text-secondary, #888);margin-top:6px}.muscle-picker-overlay{position:fixed;inset:0;background:#0009;z-index:9999;display:none;align-items:center;justify-content:center}.muscle-picker-overlay.visible{display:flex}.muscle-picker-modal{background:var(--bg-card, #222);border-radius:20px;padding:24px;width:calc(100% - 48px);max-width:350px;max-height:80vh;overflow-y:auto}.muscle-picker-title{font-size:16px;font-weight:700;color:var(--text-primary, #fff);margin-bottom:4px}.muscle-picker-subtitle{font-size:12px;color:var(--text-secondary, #888);margin-bottom:16px}.muscle-picker-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:16px}.muscle-picker-option{display:flex;align-items:center;gap:8px;padding:10px;border-radius:10px;background:var(--bg-secondary, #1a1a1a);cursor:pointer;font-size:13px;color:var(--text-primary, #fff);transition:background .2s ease;border:1px solid transparent}.muscle-picker-option:has(input:checked){border-color:var(--accent, #64b5f6);background:#64b5f61a}.muscle-picker-option input[type=checkbox]{accent-color:var(--accent, #64b5f6)}.muscle-picker-save{width:100%;padding:12px;border:none;border-radius:12px;background:var(--accent, #64b5f6);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease}.muscle-picker-save:hover{transform:scale(1.02)}.muscle-picker-skip{width:100%;padding:10px;border:none;border-radius:12px;background:transparent;color:var(--text-secondary, #888);font-size:13px;cursor:pointer;margin-top:4px}.equip-picker-overlay{position:fixed;inset:0;background:#0009;z-index:9999;display:none;align-items:center;justify-content:center}.equip-picker-overlay.visible{display:flex}.equip-picker-modal{background:var(--bg-card, #222);border-radius:20px;padding:24px;width:calc(100% - 48px);max-width:350px}.equip-picker-title{font-size:16px;font-weight:700;color:var(--text-primary, #fff);margin-bottom:4px}.equip-picker-subtitle{font-size:12px;color:var(--text-secondary, #888);margin-bottom:16px}.equip-picker-options{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.equip-picker-option{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--bg-secondary, #1a1a1a);cursor:pointer;font-size:14px;color:var(--text-primary, #fff);border:2px solid transparent;font-weight:500;transition:border-color .2s ease}.equip-picker-option.selected{border-color:var(--accent, #64b5f6);background:#64b5f61f}.equip-picker-option .equip-icon{font-size:18px;width:24px;text-align:center}.equip-picker-save{width:100%;padding:12px;border:none;border-radius:12px;background:var(--accent, #64b5f6);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease}.equip-picker-save:hover{transform:scale(1.02)}[data-theme=pink] .muscle-region{mix-blend-mode:multiply}[data-theme=pink] .muscle-region:hover,[data-theme=pink] .muscle-region.muscle-highlighted{fill:#ff149333}[data-theme=pink] .body-map-dot.active{background:#ff1493}[data-theme=pink] .muscle-detail-name{background:linear-gradient(90deg,#ff1493,#00cec9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=pink] .muscle-volume-item{background:#ffffffb3}[data-theme=pink] .muscle-volume-item.partial{border-left-color:#ff1493}[data-theme=pink] .muscle-volume-bar-fill{background:#ff1493}[data-theme=pink] .muscle-volume-item.optimal .muscle-volume-bar-fill{background:#34c759}[data-theme=pink] .muscle-detail-card{background:#fffc}[data-theme=pink] .weekly-summary-badge{background:#ffffffb3}[data-theme=pink] .muscle-picker-modal{background:#fff0f5}[data-theme=pink] .muscle-picker-option{background:#fffc}[data-theme=light] .muscle-region{mix-blend-mode:multiply}[data-theme=light] .muscle-region:hover,[data-theme=light] .muscle-region.muscle-highlighted{fill:#2196f333}[data-theme=light] .muscle-volume-item{background:#fff;border:1px solid #eee}[data-theme=light] .muscle-detail-card{background:#fff;border-color:#eee}[data-theme=light] .weekly-summary-badge{background:#f5f5f5;border-color:#eee}[data-theme=light] .muscle-picker-modal{background:#fff}[data-theme=light] .muscle-picker-option{background:#f5f5f5}
