:root{--c-primary: #c41e3a;--c-primary-dark: #8b0000;--c-primary-text: #e8697a;--c-bg: #1a1a2e;--c-card: #16213e;--c-card-alt: #1e2a4a;--c-input: #2a2a4a;--c-border: #2a2a4a;--c-text: #fff;--c-text-muted: #a0a0b4;--c-text-dim: #8a8aa0;--c-success: #166534;--c-success-light: #4ade80;--c-error: #7f1d1d;--c-error-light: #fca5a5;--c-blue: #60a5fa;--c-glow: rgba(96, 165, 250, .6);--gradient-primary: linear-gradient(135deg, var(--c-primary), var(--c-primary-dark));--fs-xs: .55rem;--fs-sm: .65rem;--fs-md: .75rem;--fs-base: .85rem;--fs-lg: 1rem;--fs-2xl: 1.3rem;--c-overlay: rgba(0, 0, 0, .7);--c-hover: rgba(255, 255, 255, .05);--c-active: rgba(255, 255, 255, .1);--c-separator: rgba(255, 255, 255, .05);--c-warmup-bg: #1a2540;--c-warmup-border: #3a3a5a;--c-card-border: #444;--c-toggle-inactive: #4a4a5a;--c-badge-open: #333;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px}body.light-theme{--c-bg: #f0f2f5;--c-card: #ffffff;--c-card-alt: #f8f9fa;--c-input: #dfe3e8;--c-border: #d1d5db;--c-text: #111827;--c-text-muted: #4b5563;--c-text-dim: #6b7280;--c-success: #22c55e;--c-success-light: #16a34a;--c-error: #fee2e2;--c-error-light: #991b1b;--c-blue: #2563eb;--c-glow: rgba(37, 99, 235, .3);--c-overlay: rgba(0, 0, 0, .4);--c-hover: rgba(0, 0, 0, .05);--c-active: rgba(0, 0, 0, .1);--c-separator: rgba(0, 0, 0, .08);--c-warmup-bg: var(--c-bg);--c-warmup-border: var(--c-border);--c-card-border: var(--c-border);--c-primary-text: var(--c-primary);--c-toggle-inactive: #d1d5db;--c-badge-open: #e5e7eb;color-scheme:light}body.light-theme .day-btn.complete.active{background:#16653426}body.light-theme .group-header{background:#0000000d}body.light-theme .group-header.clickable:active{background:#00000014}body.light-theme .input-group.narrow input,body.light-theme .notes-input{background:#eaeef4}body.light-theme textarea.notes-input.expanded{box-shadow:0 0 20px #00000026}body.light-theme .input-group label{color:var(--c-text-muted)}body.light-theme .ios-install-overlay{background:#00000080}body.light-theme .header-plan-menu{box-shadow:0 4px 12px #0000001a}body.light-theme .header-plan-option.active{background:#c41e3a1a}body.light-theme .status-badge.done{color:#fff}body.light-theme .status-badge.skipped{background:#ef4444;color:#fff}body.light-theme .auth-screen{--c-bg: #1a1a2e;--c-card: #16213e;--c-text: #fff;--c-text-muted: #a0a0b4;--c-text-dim: #8a8aa0;--c-border: #2a2a4a;--c-input: #2a2a4a;color:#fff;background:#1a1a2e;position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;min-height:auto;padding:12px}body.light-theme .auth-screen.hidden{display:none}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;color-scheme:dark;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation}input,textarea,select,[contenteditable]{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default;touch-action:auto}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--c-bg);color:var(--c-text);min-height:100vh;padding:8px 8px 30px;padding-top:max(8px,env(safe-area-inset-top));padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));padding-bottom:max(30px,env(safe-area-inset-bottom))}.auth-screen{display:none;flex-direction:column;align-items:center;min-height:100dvh;padding:12px;text-align:center}.auth-screen-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;pointer-events:none}.auth-screen-content>*{pointer-events:auto}.auth-screen.show{display:flex}.auth-logo{width:120px;height:120px;margin-bottom:20px}.auth-title{color:var(--c-primary-text);font-size:var(--fs-2xl);font-weight:700;margin-bottom:8px}.auth-subtitle{color:var(--c-text-muted);font-size:var(--fs-base);margin-bottom:30px}.auth-btn{display:flex;align-items:center;gap:12px;padding:14px 28px;background:#fff;color:#333;border:none;border-radius:var(--radius-lg);font-size:var(--fs-lg);font-weight:600;cursor:pointer;transition:transform .15s,box-shadow .15s}.auth-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000004d}.auth-btn:active{transform:scale(.98)}.auth-btn svg{width:20px;height:20px}.install-btn{display:flex;align-items:center;gap:8px;margin-top:16px;padding:10px 20px;background:transparent;color:var(--c-text-muted);border:1px solid var(--c-border);border-radius:var(--radius-lg);font-size:var(--fs-base);font-weight:500;cursor:pointer;transition:color .15s,border-color .15s}.install-btn:hover{color:var(--c-text);border-color:var(--c-text-muted)}.install-btn svg{width:18px;height:18px}.ios-install-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;z-index:500;align-items:center;justify-content:center;padding:20px}.ios-install-overlay.show{display:flex}.ios-install-card{background:var(--c-card);border-radius:var(--radius-lg);padding:24px;width:100%;max-width:320px;text-align:center}.ios-install-title{color:var(--c-text);font-size:var(--fs-lg);font-weight:700;margin-bottom:20px}.ios-install-steps{display:flex;flex-direction:column;gap:0;align-items:center}.ios-install-step{display:flex;align-items:center;gap:12px;width:100%;padding:10px 16px;opacity:0;animation:iosStepIn .4s ease forwards}.ios-install-step:nth-child(1){animation-delay:.1s}.ios-install-step:nth-child(3){animation-delay:.25s}.ios-install-step:nth-child(5){animation-delay:.4s}.ios-install-step:nth-child(7){animation-delay:.55s}.ios-step-num{width:26px;height:26px;border-radius:50%;background:var(--c-primary);color:var(--c-bg);font-size:var(--fs-md);font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ios-step-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-lg);flex-shrink:0;color:var(--c-text)}.ios-step-icon svg{width:22px;height:22px}.ios-step-label{color:var(--c-text-muted);font-size:var(--fs-base);font-weight:500;text-align:left}.ios-step-connector{width:2px;height:12px;background:var(--c-border);margin-left:28px}.ios-install-dismiss{margin-top:20px;padding:10px 32px;background:var(--c-primary);color:var(--c-bg);border:none;border-radius:var(--radius-lg);font-size:var(--fs-base);font-weight:600;cursor:pointer;opacity:0;animation:iosStepIn .4s ease .75s forwards}@keyframes iosStepIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.setup-screen{display:none;flex-direction:column;align-items:center;padding:12px;max-width:500px;margin:0 auto;min-height:100dvh}.setup-screen.show{display:flex}.setup-title{color:var(--c-primary-text);font-size:var(--fs-2xl);font-weight:700;margin-bottom:8px}.setup-desc{color:var(--c-text-muted);font-size:var(--fs-base);margin-bottom:20px;text-align:center}.setup-input{width:100%;padding:14px;border:2px solid var(--c-border);border-radius:var(--radius-lg);background:var(--c-input);color:var(--c-text);font-size:var(--fs-base);margin-bottom:12px}.setup-input:focus{outline:none;border-color:var(--c-primary)}.setup-input::placeholder{color:var(--c-text-dim)}.setup-btn{width:100%;padding:14px;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--fs-lg);font-weight:600;cursor:pointer}.setup-btn:disabled{opacity:.5;cursor:not-allowed}.setup-error{color:var(--c-error-light);font-size:var(--fs-md);margin-top:8px}.setup-user{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding:10px 16px;background:var(--c-card);border-radius:var(--radius-lg);width:100%}.setup-user-avatar{width:36px;height:36px;border-radius:50%}.setup-user-info{flex:1;text-align:left}.setup-user-name{font-size:var(--fs-base);font-weight:600}.setup-user-email{font-size:var(--fs-md);color:var(--c-text-muted)}.setup-signout{padding:6px 12px;background:transparent;border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--radius-md);font-size:var(--fs-md);cursor:pointer}.app-screen{display:none}.app-screen.show{display:block;padding-top:40px}body.has-offline-banner .app-screen.show{padding-top:64px}.header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:6px;padding:8px;margin-bottom:0;position:fixed;top:0;left:0;right:0;background:var(--c-bg);z-index:200;padding-top:max(8px,env(safe-area-inset-top));padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}.header-left{display:flex;align-items:center;min-width:0}.header-center{display:flex;align-items:center;justify-content:center}body.has-offline-banner .header{top:24px}.header-plan-dropdown{position:relative;min-width:0;max-width:100%}.header-plan-btn{display:flex;align-items:center;gap:4px;cursor:pointer;padding:4px 6px;border-radius:var(--radius-md);transition:background .2s;background:transparent;border:none;max-width:100%;overflow:hidden}.header-plan-btn:hover{background:var(--c-hover)}.header-plan-btn:active{background:var(--c-active)}.header h1{color:var(--c-text);font-size:var(--fs-base);font-weight:600;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;min-width:0}.header-dropdown-arrow{color:var(--c-text-muted);font-size:var(--fs-xs);transition:transform .2s;flex-shrink:0}.header-plan-menu{display:none;position:absolute;top:100%;left:0;min-width:180px;background:var(--c-card);border:1px solid var(--c-border);border-radius:var(--radius-md);margin-top:4px;max-height:300px;overflow-y:auto;z-index:210;box-shadow:0 8px 24px #0006}.header-plan-menu.show{display:block}.header-plan-option{padding:10px 14px;cursor:pointer;font-size:var(--fs-base);color:var(--c-text-muted);transition:background .15s;border-bottom:1px solid var(--c-border)}.header-plan-option:last-child{border-bottom:none}.header-plan-option:hover{background:var(--c-hover)}.header-plan-option.active{color:var(--c-text);background:#c41e3a33}.header-selector-btn{display:flex;align-items:center;gap:6px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-md);transition:background .2s;background:transparent;border:none;color:var(--c-text);font-size:var(--fs-base);font-weight:500}.header-selector-btn:hover{background:var(--c-hover)}.header-selector-btn:active{background:var(--c-active)}.header-selector-btn .week-label{color:var(--c-text)}.header-selector-btn .day-label{color:var(--c-text-muted);margin-left:2px}.header-selector-btn .week-label.complete,.header-selector-btn .day-label.complete{color:var(--c-success-light)}.header-selector-btn .selector-arrow{color:var(--c-text-muted);font-size:var(--fs-xs);transition:transform .2s;margin-left:2px}.header-selector-btn.expanded .selector-arrow{transform:rotate(180deg)}.selector-section{display:none;position:fixed;top:40px;left:0;right:0;background:var(--c-bg);z-index:199;padding:0 8px 8px;border-bottom:1px solid var(--c-border);padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}.selector-section.show{display:block}.app-screen.selector-open{padding-top:110px}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.header-icon-btn{background:transparent;border:none;color:var(--c-text);cursor:pointer;padding:6px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:background .2s}.header-icon-btn:hover{background:var(--c-hover)}.header-icon-btn:active{background:var(--c-active)}.header-icon-btn svg{width:20px;height:20px}.week-tabs-container{margin-bottom:8px}.week-tabs{display:flex;gap:0;border-bottom:1px solid var(--c-border);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.week-tabs::-webkit-scrollbar{display:none}.week-tab{flex-shrink:0;padding:8px 14px;background:transparent;border:none;color:var(--c-text-muted);font-size:var(--fs-base);font-weight:500;cursor:pointer;position:relative;transition:color .2s;white-space:nowrap}.week-tab:hover{color:var(--c-text)}.week-tab.active{color:var(--c-text);font-weight:600}.week-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--c-primary);border-radius:2px 2px 0 0}.week-tab.complete{color:var(--c-success-light)}.week-tab.complete.active:after{background:var(--c-success-light)}.day-selector-row{display:flex;gap:6px;padding:0;overflow-x:auto;flex-wrap:wrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.day-selector-row::-webkit-scrollbar{display:none}.day-selector-row:empty{display:none}.day-btn{flex-shrink:0;padding:6px 12px;background:transparent;border:1px solid var(--c-border);color:var(--c-text-muted);font-size:var(--fs-md);font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap;border-radius:var(--radius-md)}.day-btn:hover{color:var(--c-text);border-color:var(--c-text-muted)}.day-btn.active{color:var(--c-text);font-weight:600;background:var(--c-active);border-color:var(--c-text)}.day-btn.complete{color:var(--c-success-light);border-color:var(--c-success)}.day-btn.complete.active{background:#1665344d;border-color:var(--c-success-light)}.recap-btn{border-style:dashed}.recap-btn.active{border-style:solid}#recap-content.hidden{display:none}.recap-group{border-left-color:var(--c-text-dim)}.recap-group .group-label{font-size:var(--fs-xs);line-height:1.3;white-space:normal;word-break:break-word;color:var(--c-text)}.recap-group .notes-input{width:100%;box-sizing:border-box}.recap-day-row{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid var(--c-separator)}.recap-day-row:last-child{border-bottom:none}.recap-day-label{background:var(--c-input);color:var(--c-text);padding:0 6px;border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:600;flex-shrink:0;min-width:50px;text-align:center;height:34px;line-height:34px}.recap-day-row .input-group.narrow{flex:0 0 65px;min-width:60px}.recap-day-row .input-group.narrow input{font-size:var(--fs-base);height:34px}.recap-avg-row{display:flex;align-items:center;gap:8px;padding:8px 4px 4px;border-top:1px solid var(--c-active);margin-top:4px}.recap-avg-label{color:var(--c-text-dim);font-size:var(--fs-sm);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.recap-avg-value{color:var(--c-blue);font-weight:700;font-size:var(--fs-base)}.recap-pain-row{margin-bottom:10px}.recap-pain-row:last-child{margin-bottom:0}.recap-pain-label{display:block;color:var(--c-text);font-size:var(--fs-md);font-weight:600;margin-bottom:4px;padding-left:2px}.exercise-group{background:var(--c-card);border-radius:var(--radius-lg);padding:6px;margin-bottom:8px;border:1px solid var(--c-border);border-left:4px solid var(--c-border);overflow:hidden}.exercise-group.complete{border-left-color:var(--c-success-light)}.group-label{color:var(--c-primary-text);font-size:var(--fs-sm);font-weight:700;letter-spacing:1px;margin-bottom:4px;padding-left:4px}.group-header{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;margin:-6px -6px 6px;background:#0003;border-radius:var(--radius-lg) var(--radius-lg) 0 0;position:relative;overflow:hidden}@keyframes collapse-countdown{0%{width:100%}to{width:0%}}.collapse-indicator{position:fixed;left:50%;transform:translate(-50%) translateY(-100%);max-width:500px;width:90%;z-index:199;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000004d;cursor:pointer;transition:transform .3s ease;overflow:hidden;background:var(--c-card)}.collapse-indicator.show{transform:translate(-50%) translateY(0)}.collapse-indicator-row{display:flex;align-items:center;justify-content:space-between;padding:5px 12px;position:relative;z-index:1}.collapse-indicator-label{font-size:var(--fs-md);font-weight:700;color:var(--c-text);text-shadow:0 0 4px var(--c-card)}.collapse-indicator-check{font-size:var(--fs-md);font-weight:700;color:var(--c-success-light);text-shadow:0 0 4px var(--c-card)}.collapse-indicator-bar{position:absolute;top:0;left:0;height:100%;background:#4ade8073;animation:collapse-countdown-width var(--collapse-duration, 4s) linear forwards}@keyframes collapse-countdown-width{0%{width:100%}to{width:0%}}body.light-theme .collapse-indicator{box-shadow:0 2px 8px #0000001f}body.light-theme .collapse-indicator-bar{background:#16a36a33}body.light-theme .collapse-indicator-label,body.light-theme .collapse-indicator-check{text-shadow:0 0 4px var(--c-card)}.group-header.clickable{cursor:pointer}.group-header.clickable:active{background:#0000004d}.group-header .group-label{margin:0;padding:0}.group-toggle-icon{color:var(--c-text-dim);font-size:var(--fs-xs);transition:transform .2s}.exercise-group.collapsed .group-toggle-icon{transform:rotate(-90deg)}.exercise-group.collapsed .group-header{margin-bottom:-6px;border-radius:var(--radius-lg)}.group-content{display:block}.exercise-group.collapsed .group-content{display:none}.warmup-toggle{background:var(--c-card-alt);border-radius:var(--radius-md);padding:8px 12px;margin-bottom:6px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;border:1px dashed var(--c-warmup-border)}.warmup-toggle:active{background:var(--c-input)}.warmup-toggle-label{color:var(--c-text-muted);font-size:var(--fs-md);font-weight:600}.warmup-toggle-icon{color:var(--c-text-dim);font-size:var(--fs-xs);transition:transform .2s}.warmup-toggle.expanded .warmup-toggle-icon{transform:rotate(180deg)}.warmup-content{display:none;padding-left:6px;border-left:2px dashed var(--c-warmup-border);margin-left:6px;margin-bottom:8px}.warmup-content.show{display:block}.day-summary-content{display:none;margin-bottom:8px}.day-summary-content.show{display:block}.day-summary-input{width:100%;box-sizing:border-box}.warmup-card{background:var(--c-warmup-bg);border-radius:var(--radius-md);padding:8px;margin-bottom:4px;border-left:3px solid var(--c-text-dim)}.warmup-card .exercise-name{font-size:var(--fs-md);color:var(--c-text-muted)}.warmup-card .exercise-meta{font-size:var(--fs-xs)}.exercise-card{background:var(--c-card-alt);border-radius:var(--radius-lg);padding:8px;touch-action:manipulation;margin-bottom:6px;border-left:4px solid var(--c-card-border);position:relative;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.exercise-card:last-child{margin-bottom:0}.exercise-card.saving{opacity:.7}.status-badge{position:absolute;top:6px;right:6px;font-size:var(--fs-xs);font-weight:700;padding:2px 5px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}.status-badge.done{background:var(--c-success);color:var(--c-success-light)}.status-badge.skipped{background:var(--c-error);color:var(--c-error-light)}.status-badge.open{background:var(--c-badge-open);color:var(--c-text-muted)}.exercise-header{display:flex;align-items:flex-start;gap:6px;margin-bottom:4px;padding-right:45px}.exercise-code{background:var(--c-input);color:var(--c-primary-text);padding:2px 5px;border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:700;flex-shrink:0}.exercise-name{font-weight:600;font-size:var(--fs-base);line-height:1.3;word-break:break-word}.set-label{color:var(--c-text-muted);font-size:var(--fs-sm)}.exercise-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px;color:var(--c-text-dim);font-size:var(--fs-sm);margin-bottom:6px}.exercise-meta span{margin-right:0}.target-kg{color:var(--c-blue);font-weight:600}.plate-loader{display:flex;align-items:center;gap:1px;margin-left:auto;flex-shrink:0;cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.plate{display:flex;align-items:center;justify-content:center;border-radius:2px;font-size:var(--fs-xs);font-weight:700;color:#000;flex-shrink:0;border:1px solid rgba(0,0,0,.3)}.plate-25{width:8px;height:32px;background:#e53935}.plate-20{width:7px;height:28px;background:#1e88e5}.plate-15{width:6px;height:24px;background:#fdd835}.plate-10{width:6px;height:20px;background:#43a047}.plate-5{width:5px;height:16px;background:#fff}.plate-2_5{width:4px;height:14px;background:#e53935}.plate-1_25{width:3px;height:12px;background:#fdd835}.plate-loader-warning{font-size:var(--fs-xs);color:var(--c-error-light);margin-left:4px}.exercise-top-row{display:flex;align-items:center;gap:6px;margin-bottom:4px;padding-right:45px}.exercise-top-row .exercise-name{flex:1;min-width:0}.input-row{display:flex;gap:6px;margin-bottom:6px}.input-group{flex:1}.input-group.narrow{flex:.35;min-width:60px}.input-group.wide{flex:.65}.input-group label{display:block;color:var(--c-text-dim);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}input{width:100%;height:34px;border:none;border-radius:var(--radius-md);background:var(--c-input);color:var(--c-text);font-size:var(--fs-md);text-align:center}input:focus{outline:2px solid var(--c-primary)}.rpe-row{display:flex;gap:2px}.rpe-btn{flex:1;height:34px;border:none;border-radius:5px;background:var(--c-input);color:var(--c-text-dim);font-weight:600;font-size:var(--fs-md);cursor:pointer;transition:all .15s ease;min-width:0;position:relative;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation}.rpe-btn.selected{background:var(--gradient-primary);color:#fff}.rpe-btn:active{transform:scale(.94)}.rpe-btn.goal-single{border:2px dotted var(--c-blue)}.rpe-btn.goal-start{border:2px dotted var(--c-blue);border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.rpe-btn.goal-middle{border-top:2px dotted var(--c-blue);border-bottom:2px dotted var(--c-blue);border-left:none;border-right:none;border-radius:0}.rpe-btn.goal-end{border:2px dotted var(--c-blue);border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}.notes-row{display:flex;gap:6px;margin-top:6px;position:relative}.notes-input{flex:1;text-align:left;font-size:var(--fs-md);padding:8px 10px}textarea.notes-input{resize:none;overflow:hidden;height:34px;border:none;border-radius:var(--radius-md);background:var(--c-input);color:var(--c-text);font-family:inherit;font-size:16px;white-space:nowrap;text-overflow:ellipsis;line-height:34px;padding:0 10px}textarea.notes-input:focus{outline:none}textarea.notes-input.expanded{position:fixed;z-index:1000;min-height:80px;max-height:calc(7em + 24px);overflow-y:auto;white-space:pre-wrap;word-wrap:break-word;border-radius:12px;background:var(--c-card);box-shadow:0 0 20px #0006;outline:none;line-height:1.4;padding:10px 12px}.skip-btn{flex:0 0 50px;padding:8px;border:none;border-radius:var(--radius-md);background:var(--c-input);color:var(--c-text-dim);font-weight:600;font-size:var(--fs-md);cursor:pointer}.skip-btn:active{transform:scale(.97)}.day-section{margin-bottom:16px}.day-section.hidden{display:none}.day-title{display:flex;justify-content:space-between;align-items:center;cursor:pointer;color:var(--c-text-muted);font-size:var(--fs-sm);font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;padding-left:4px}.day-summary-arrow{cursor:pointer;font-size:var(--fs-xs);color:var(--c-text-dim);transition:transform .2s;padding:4px 8px;-webkit-tap-highlight-color:transparent;outline:none}.day-title.expanded .day-summary-arrow{transform:rotate(180deg)}.loading{text-align:center;padding:40px 20px;color:var(--c-text-dim)}.spinner{width:28px;height:28px;border:3px solid var(--c-input);border-top-color:var(--c-primary);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 12px}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--c-success);color:#fff;padding:10px 20px;border-radius:var(--radius-md);font-weight:600;font-size:var(--fs-base);opacity:0;pointer-events:none;transition:opacity .2s;z-index:9999;white-space:nowrap;max-width:90vw;overflow:hidden;text-overflow:ellipsis}.toast.error{background:var(--c-error)}body.light-theme .toast.error{background:#dc2626}.toast.show{opacity:1;pointer-events:auto}.toast.toast-sticky{cursor:pointer;padding-bottom:10px}.toast.toast-sticky:after{content:"Tap to dismiss";display:block;font-size:.65rem;opacity:.7;margin-top:2px}.offline-indicator{display:none;position:fixed;top:0;left:0;right:0;height:24px;line-height:24px;background:var(--c-error);color:#fff;text-align:center;font-size:var(--fs-md);font-weight:600;z-index:300}.offline-indicator.show{display:block}.offline-indicator.slow{background:var(--c-warning, #f59e0b)}body.light-theme .offline-indicator{background:#dc2626}body.light-theme .offline-indicator.slow{background:#d97706}.reconsent-banner{position:fixed;top:0;left:0;right:0;z-index:301;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--c-warning, #f59e0b);color:#1a1a1a;font-size:var(--fs-md);font-weight:500;box-shadow:0 2px 6px #0000002e}.reconsent-banner[hidden]{display:none}.reconsent-banner-msg{flex:1 1 auto;line-height:1.35}.reconsent-banner-actions{display:flex;gap:8px;flex:0 0 auto}.reconsent-banner-btn{border:none;border-radius:6px;padding:6px 12px;font-size:var(--fs-sm);font-weight:600;cursor:pointer;white-space:nowrap}.reconsent-banner-btn.primary{background:#1a1a1a;color:#fff}.reconsent-banner-btn.primary:hover{background:#333}.reconsent-banner-btn.secondary{background:transparent;color:#1a1a1a;border:1px solid rgba(0,0,0,.35)}.reconsent-banner-btn.secondary:hover{background:#00000014}@media(max-width:480px){.reconsent-banner{flex-direction:column;align-items:stretch;text-align:center}.reconsent-banner-actions{justify-content:center}}.modal-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:var(--c-overlay);z-index:400;align-items:center;justify-content:center;padding:20px}.modal-overlay.show{display:flex}.modal{background:var(--c-card);border-radius:var(--radius-lg);padding:14px;width:100%;max-width:400px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;position:relative}.missing-tab-modal{text-align:center;padding:24px 20px}.missing-tab-title{color:var(--c-primary-text);font-size:var(--fs-lg);font-weight:700;margin:0 0 12px}.missing-tab-msg{color:var(--c-text);font-size:var(--fs-base);line-height:1.5;margin:0 0 20px}.missing-tab-msg strong{color:var(--c-primary-text)}.missing-tab-actions{display:flex;justify-content:center}.missing-tab-actions .btn-primary{background:var(--c-primary, #c41e3a);color:#fff;border:none;padding:10px 22px;border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:600;cursor:pointer;transition:opacity .15s}.missing-tab-actions .btn-primary:hover{opacity:.9}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.modal-title{color:var(--c-primary-text);font-size:var(--fs-lg);font-weight:700;margin:0}.modal-close-btn{background:transparent;border:none;color:var(--c-text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .15s}.modal-close-btn:hover{color:var(--c-text);background:var(--c-active)}.modal-close-btn svg{width:20px;height:20px}.modal-section{margin-bottom:8px}.modal-section.compact{margin-bottom:4px}.modal-label{color:var(--c-text-muted);font-size:var(--fs-md);margin-bottom:6px;display:block}.modal-value{color:var(--c-text);font-size:var(--fs-base);word-break:break-all;background:var(--c-input);padding:10px;border-radius:var(--radius-md)}.modal-btns{display:flex;gap:8px;margin-top:6px}.modal-btn{flex:1;padding:10px 8px;border:none;border-radius:var(--radius-md);font-weight:500;font-size:var(--fs-base);cursor:pointer;transition:all .15s}.modal-btn.primary{background:var(--c-input);color:var(--c-text)}.modal-btn.primary:hover{background:var(--c-card-alt)}.modal-btn.secondary{background:transparent;color:var(--c-text-muted);border:1px solid var(--c-border)}.modal-btn.secondary:hover{background:var(--c-hover);color:var(--c-text)}.modal-btn.danger{background:transparent;color:var(--c-error-light);border:1px solid var(--c-error)}.modal-btn.danger:hover{background:#7f1d1d4d}.settings-group{margin:0}.settings-group-header{display:flex;align-items:center;justify-content:space-between;padding:10px 0 6px;cursor:pointer;-webkit-user-select:none;user-select:none}.settings-group-header span{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-muted)}.settings-group-header .chevron-icon{transition:transform .2s;color:var(--c-text-muted)}.settings-group:not(.expanded) .chevron-icon{transform:rotate(-90deg)}.settings-group-body{overflow:hidden}.settings-group:not(.expanded) .settings-group-body{display:none}.settings-sub-section{margin:4px 0 4px 8px}.settings-sub-header{display:flex;align-items:center;justify-content:space-between;padding:4px 0;cursor:pointer;-webkit-user-select:none;user-select:none}.settings-sub-header .chevron-icon{transition:transform .2s;color:var(--c-text-muted)}.settings-sub-section:not(.expanded) .settings-sub-header .chevron-icon{transform:rotate(-90deg)}.settings-sub-section:not(.expanded) .warmup-settings-body{display:none}.settings-sub-label{font-size:.72rem;font-weight:600;color:var(--c-text-muted)}.warmup-lift-header{display:grid;grid-template-columns:1fr 68px 54px;gap:8px;padding:2px 0 4px}.warmup-col-label{font-size:.65rem;font-weight:600;color:var(--c-text-muted);text-align:center}.warmup-lift-row{display:grid;grid-template-columns:1fr 68px 54px;align-items:center;gap:8px;padding:4px 0}.warmup-lift-name{font-size:.8rem;color:var(--c-text);font-weight:500}.warmup-min-input,.warmup-sets-select{background:var(--c-input);border:1px solid var(--c-border);border-radius:6px;color:var(--c-text);font-size:.8rem;width:100%;height:34px;box-sizing:border-box;padding:4px 6px}.warmup-min-input{text-align:right;-moz-appearance:textfield}.warmup-min-input::-webkit-outer-spin-button,.warmup-min-input::-webkit-inner-spin-button{-webkit-appearance:none}.warmup-sets-select{text-align:center}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.toggle-row:last-child{border-bottom:none}.toggle-info{flex:1}.toggle-title{color:var(--c-text);font-size:var(--fs-base);font-weight:600;margin-bottom:1px}.toggle-desc{color:var(--c-text-dim);font-size:var(--fs-sm)}.toggle-switch{width:44px;height:24px;background:var(--c-toggle-inactive);border-radius:12px;position:relative;cursor:pointer;transition:background .3s}.toggle-switch.active{background:var(--c-success)}.toggle-switch-slider{width:20px;height:20px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:transform .3s;box-shadow:0 1px 3px #0000004d}.toggle-switch.active .toggle-switch-slider{transform:translate(20px)}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:var(--c-overlay);z-index:400}.sidebar-overlay.show{display:block}.sidebar{position:fixed;top:0;right:0;bottom:0;width:300px;max-width:80vw;background:var(--c-card);display:flex;flex-direction:column;overflow-y:auto;z-index:401;transform:translate(100%);transition:transform .3s ease;padding:16px}.sidebar-overlay.show .sidebar{transform:translate(0)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.sidebar-title{color:var(--c-text);font-size:var(--fs-lg);font-weight:700;margin:0}.sidebar-close-btn{background:transparent;border:none;color:var(--c-text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .15s}.sidebar-close-btn:hover{color:var(--c-text);background:var(--c-active)}.theme-switcher{display:flex;background:var(--c-input);border-radius:var(--radius-md);padding:3px;margin-bottom:16px}.theme-switcher button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 4px;border:none;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--c-text-muted);font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:all .2s}.theme-switcher button:hover{color:var(--c-text)}.theme-switcher button.active{background:#ffffff1a;color:var(--c-text)}body.light-theme .theme-switcher button.active{background:#fffc;color:var(--c-text)}.theme-switcher button svg{flex-shrink:0}.sidebar-nav{flex:1}.sidebar-section-header{display:flex;align-items:center;gap:10px;padding:12px 0;cursor:pointer;color:var(--c-text);font-size:var(--fs-base);font-weight:600;border-bottom:1px solid var(--c-separator);-webkit-user-select:none;user-select:none}.sidebar-section-header span{flex:1}.sidebar-section-header:hover{color:var(--c-text)}.sidebar-section-header .chevron-icon{transition:transform .2s ease;color:var(--c-text-muted)}.sidebar-section.expanded .sidebar-section-header .chevron-icon{transform:rotate(180deg)}.sidebar-section-body{max-height:0;overflow:hidden;transition:max-height .3s ease}.sidebar-section.expanded .sidebar-section-body{max-height:2000px}.sidebar-nav-item{display:flex;align-items:center;gap:10px;padding:12px 0;color:var(--c-text);font-size:var(--fs-base);font-weight:500;cursor:pointer;border-bottom:1px solid var(--c-separator);-webkit-user-select:none;user-select:none;transition:color .15s}.sidebar-nav-item:hover{color:var(--c-text)}.sidebar-nav-item.disabled{opacity:.35;cursor:default;pointer-events:none}.sidebar-nav-item.danger{color:var(--c-error-light)}.sidebar-nav-item.danger:hover{color:var(--c-error)}.sidebar-divider{height:1px;background:var(--c-separator);margin:4px 0}.sidebar-footer{margin-top:auto;padding-top:16px}.sidebar-footer .config-info-footer{margin-top:0}.sidebar-footer .powered-by{margin-top:8px;margin-bottom:0;opacity:.5}.config-info-footer{margin-top:16px;padding-top:0;display:flex;flex-wrap:wrap;gap:4px 16px;font-size:var(--fs-sm);color:var(--c-text-dim)}.config-info-item{display:flex;gap:4px;align-items:baseline}.config-info-item .label{font-size:var(--fs-xs);color:var(--c-text-dim)}.config-info-item .value{color:var(--c-text-muted);font-size:var(--fs-sm)}.powered-by{font-size:var(--fs-sm);color:var(--c-text-dim);text-align:center;margin-top:16px;position:relative;z-index:2;pointer-events:auto}.auth-screen .powered-by{padding-bottom:16px}.setup-screen .powered-by{margin-top:auto;padding-bottom:16px}.powered-by a{color:inherit;text-decoration:none}.powered-by a span{font-weight:600;color:var(--c-text-muted)}.legal-links{display:block;margin-top:6px}.legal-links a{margin:0 8px;font-size:.75rem;color:var(--c-text-dim)}.access-denied-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;text-align:center;padding:0 24px}.access-denied-icon{margin-bottom:16px;opacity:.9}.access-denied-back{display:inline-block;margin-top:16px;font-size:.85rem;color:var(--c-text-dim);text-decoration:none}.access-denied-back:hover{color:var(--c-text-muted);text-decoration:underline}.radio-group{display:flex;gap:8px;margin-top:8px}.radio-btn{flex:1;padding:8px;background:var(--c-input);color:var(--c-text-muted);border:none;border-radius:var(--radius-md);font-size:var(--fs-md);font-weight:600;cursor:pointer;transition:all .2s}.radio-btn.active{background:var(--gradient-primary);color:#fff}.plate-grid{display:flex;justify-content:space-between;gap:4px;margin-top:8px}.plate-stepper{display:flex;flex-direction:column;align-items:center;border-radius:var(--radius-md);padding:6px 4px;flex:1;min-width:0;min-height:42px;justify-content:center;border:1px solid rgba(0,0,0,.2)}.plate-stepper-label{font-size:var(--fs-xs);color:#111;font-weight:700;margin-bottom:1px;white-space:nowrap;text-shadow:0 0 2px rgba(255,255,255,.5)}.plate-stepper-controls{display:none;flex-direction:column;align-items:center}.plate-grid.home-gym-active .plate-stepper-controls{display:flex}.plate-stepper-btn{background:transparent;border:none;color:#111;cursor:pointer;padding:1px 4px;font-size:var(--fs-xs);line-height:1;transition:color .15s}.plate-stepper-btn:hover{color:#333}.plate-stepper-btn:active{color:#000}.plate-stepper-value{font-size:var(--fs-base);font-weight:600;color:#111;min-width:16px;text-align:center;line-height:1.2}.cycle-selector{margin-top:8px}.cycle-buttons{display:flex;gap:6px;flex-wrap:wrap}.cycle-btn{padding:8px 12px;background:var(--c-input);color:var(--c-text-muted);border:none;border-radius:var(--radius-md);font-size:var(--fs-md);font-weight:600;cursor:pointer}.cycle-btn.active{background:var(--gradient-primary);color:#fff}@keyframes splashSpin{to{transform:rotate(360deg)}}.one-rm-estimate{color:var(--c-text-muted);font-weight:500;opacity:.65;white-space:nowrap;margin-left:auto}.one-rm-estimate:empty{display:none}.warmup-helper-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.warmup-helper-overlay.hidden{display:none}.warmup-helper-card{background:var(--c-card);border:1px solid var(--c-border);border-radius:12px;width:100%;max-width:340px;box-shadow:0 20px 60px #0006;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.warmup-helper-header{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px 10px 6px;border-bottom:1px solid var(--c-border);background:var(--c-card-alt)}.warmup-helper-title{font-size:.78rem;font-weight:700;color:var(--c-text);flex:1}.warmup-helper-counter{font-size:.8rem;color:var(--c-text-muted);background:var(--c-input);border-radius:10px;padding:2px 8px;font-variant-numeric:tabular-nums}.warmup-helper-close{background:none;border:none;color:var(--c-text-muted);font-size:1rem;cursor:pointer;padding:4px 6px;border-radius:6px;line-height:1;transition:background .15s,color .15s}.warmup-helper-close:hover{background:var(--c-input);color:var(--c-text)}.warmup-sets-list{padding:2px 0;max-height:340px;overflow-y:auto}.warmup-set-row{display:flex;align-items:center;gap:8px;padding:5px 10px;cursor:pointer;border-radius:6px;margin:0 4px;position:relative;transition:background .12s,opacity .2s;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.warmup-set-row:active{background:var(--c-input)}.warmup-set-row.warmup-done{opacity:.45}.warmup-set-row.warmup-done:after{content:"";position:absolute;left:10px;right:10px;top:50%;height:1.5px;background:var(--c-text-muted);pointer-events:none}.warmup-set-num{flex:1;display:flex;justify-content:center;align-items:center}.warmup-set-num-inner{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--c-border);display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:600;color:var(--c-text-muted);flex-shrink:0;transition:background .2s,border-color .2s,color .2s}.warmup-set-row.warmup-done .warmup-set-num-inner{background:var(--c-success, #4caf50);border-color:var(--c-success, #4caf50);color:#fff}.warmup-set-main{flex:1;position:relative;align-self:stretch}.warmup-set-reps{position:absolute;left:calc((100% - 86px)/2);top:50%;transform:translateY(-50%);font-size:.8rem;font-weight:700;color:var(--c-text)}.warmup-reps-x{font-size:.65rem;font-weight:500;color:var(--c-text-muted);margin-left:1px}.warmup-set-weight{position:absolute;left:calc((100% - 92px)/2 + 62px);top:50%;transform:translateY(-50%);font-size:.82rem;font-weight:700;color:var(--c-text)}.warmup-weight-unit{font-size:.6rem;font-weight:500;color:var(--c-text-muted);margin-left:1px}.warmup-plate-col{flex:1;position:relative;align-self:stretch}.warmup-plate-loader{position:absolute;left:calc(50% - 3px);top:50%;transform:translateY(-50%);zoom:.72;cursor:default;pointer-events:none;display:flex;align-items:center}.warmup-helper-footer{padding:4px 10px 5px;text-align:center}.warmup-helper-hint{font-size:.6rem;color:var(--c-text-dim)}.warmup-controls-row{display:flex;align-items:flex-start;justify-content:space-around;padding:8px 10px 6px;border-bottom:1px solid var(--c-border);gap:8px}.warmup-control-group{display:flex;flex-direction:column;align-items:center;gap:5px;flex:1}.warmup-control-label{font-size:.68rem;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.03em}.warmup-input-pill{display:flex;align-items:center;gap:3px;height:32px;padding:0 8px;background:var(--c-input);border:1px solid var(--c-border);border-radius:var(--radius-sm);box-sizing:border-box}.warmup-input-pill input[type=number]{width:36px;background:none;border:none;outline:none;color:var(--c-text);font-size:.85rem;font-weight:700;text-align:right;padding:0;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.warmup-input-pill input[type=number]::-webkit-outer-spin-button,.warmup-input-pill input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.warmup-input-pill span{font-size:.7rem;color:var(--c-text-muted);font-weight:500}.warmup-stepper{display:flex;align-items:center;gap:4px}.warmup-step-btn{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--c-input);border:1px solid var(--c-border);color:var(--c-text);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.warmup-step-btn:active{background:var(--c-active)}.warmup-step-value{font-size:.8rem;font-weight:600;min-width:24px;text-align:center}#prTrackerModal,#maxTrackerModal{padding:0;background:transparent}#prTrackerModal .modal.pr-tracker-modal,#maxTrackerModal .modal.pr-tracker-modal{display:flex;flex-direction:column;width:100%;height:100%;max-width:none;max-height:none;background:var(--c-bg);border:none;border-radius:0;padding:0;overflow:hidden}.pr-tracker-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--c-border);background:var(--c-card-alt);flex-shrink:0}.pr-close-btn{background:none;border:none;color:var(--c-text-muted);font-size:1.1rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:8px;line-height:1;transition:background .15s,color .15s}.pr-close-btn:hover{background:var(--c-input);color:var(--c-text)}.pr-toggle-row{display:flex;align-items:center;padding:8px 14px 4px;flex-shrink:0}.pr-add-fab{width:28px;height:28px;border-radius:50%;border:none;background:#ffffff14;color:var(--c-text-muted);font-size:1.1rem;font-weight:300;line-height:1;cursor:pointer;margin-left:auto;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.pr-add-fab:hover{background:#ffffff24;color:var(--c-text)}body.light-theme .pr-add-fab{background:#0000000f}body.light-theme .pr-add-fab:hover{background:#0000001a}.pr-tracker-title{font-size:1rem;font-weight:700;color:var(--c-text);margin:0}.pr-type-toggle{display:inline-flex;background:#ffffff0f;border-radius:8px;padding:2px;flex-shrink:0}body.light-theme .pr-type-toggle{background:#0000000d}.pr-toggle-btn{padding:4px 16px;border:none;border-radius:6px;background:transparent;color:var(--c-text-dim, #555);font-size:.78rem;font-weight:700;cursor:pointer;transition:background .18s,color .18s}.pr-toggle-btn.active{background:#ffffff1f;color:var(--c-text)}body.light-theme .pr-toggle-btn.active{background:#ffffffb3}.pr-chart-container{flex:1;min-height:200px;padding:6px 10px 0;position:relative}.pr-chart-container canvas{width:100%!important;height:100%!important}.pr-chart-fullscreen-btn,.pr-chart-reset-zoom-btn{position:absolute;top:10px;background:#ffffff0f;border:none;color:var(--c-text-dim, #555);font-size:.75rem;cursor:pointer;padding:3px 6px;border-radius:4px;line-height:1;z-index:2;transition:background .15s,color .15s}.pr-chart-fullscreen-btn{right:14px}.pr-chart-reset-zoom-btn{right:46px}.pr-chart-fullscreen-btn:hover,.pr-chart-reset-zoom-btn:hover{background:#ffffff1f;color:var(--c-text)}.pr-chart-container.fullscreen{min-height:0}.pr-chart-container.fullscreen~.pr-filter-strip,.pr-chart-container.fullscreen~.pr-add-overlay,.pr-chart-container.fullscreen~.pr-entries-section{display:none}.pr-filter-strip{display:flex;gap:6px;padding:6px 14px;justify-content:center;align-items:center;flex-shrink:0}.pr-filter-divider{width:1px;height:16px;background:var(--c-border);margin:0 4px}.pr-filter-btn{padding:4px 10px;border-radius:6px;border:none;background:transparent;color:var(--c-text-dim, #555);font-size:.72rem;font-weight:600;cursor:pointer;transition:color .15s,background .15s;white-space:nowrap}.pr-filter-btn.active{color:var(--c-text)}.pr-filter-btn[data-pr-range].active{background:#ffffff1a}body.light-theme .pr-filter-btn[data-pr-range].active{background:#00000014}.pr-filter-btn[data-lift=squat].active{color:#f59e0b}.pr-filter-btn[data-lift=bench].active{color:#3b82f6}.pr-filter-btn[data-lift=deadlift].active{color:#ef4444}.pr-filter-btn[data-lift=total].active{color:#22c55e}.pr-filter-btn[data-lift].soloed{border-radius:6px}.pr-filter-btn[data-lift=squat].soloed{background:#f59e0b1f}.pr-filter-btn[data-lift=bench].soloed{background:#3b82f61f}.pr-filter-btn[data-lift=deadlift].soloed{background:#ef44441f}.pr-filter-btn[data-lift=total].soloed{background:#22c55e1f}.pr-add-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100}.pr-add-overlay.hidden{display:none}.pr-add-popup{background:var(--c-card-alt);border:1px solid var(--c-border);border-radius:14px;padding:16px;width:320px;max-width:92vw}.pr-add-popup-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.pr-add-popup-header span{font-size:.9rem;font-weight:700;color:var(--c-text)}.pr-add-popup-close{background:none;border:none;color:var(--c-text-muted);font-size:1rem;cursor:pointer;padding:2px 6px;border-radius:6px;line-height:1;transition:background .15s,color .15s}.pr-add-popup-close:hover{background:var(--c-input);color:var(--c-text)}.pr-add-switch-row{display:flex;gap:8px;margin-bottom:12px}.pr-add-switch{display:inline-flex;background:#ffffff0f;border-radius:8px;padding:2px}#prLiftSwitch{flex:2}#prTypeSwitch{flex:1}body.light-theme .pr-add-switch{background:#0000000d}.pr-add-switch-btn{flex:1;padding:5px 4px;border:none;border-radius:6px;background:transparent;color:var(--c-text-dim, #555);font-size:.75rem;font-weight:700;cursor:pointer;transition:background .18s,color .18s;text-align:center}.pr-add-switch-btn.active{background:#ffffff1f;color:var(--c-text)}body.light-theme .pr-add-switch-btn.active{background:#ffffffb3}.pr-add-form-row{display:flex;gap:8px;margin-bottom:10px}.pr-input{flex:1;background:var(--c-input);border:1px solid var(--c-border);border-radius:8px;color:var(--c-text);font-size:.85rem;padding:8px 10px;min-width:0}.pr-input:focus{outline:none;border-color:var(--c-text-dim)}.pr-btn{padding:8px 20px;border-radius:8px;border:none;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.pr-btn:hover{opacity:.9}.pr-btn-save{width:100%;background:var(--c-text);color:var(--c-bg)}.pr-entries-section{display:flex;flex-direction:column;overflow:hidden;margin-top:auto}.pr-entries-section:not(.collapsed){flex:1}.pr-entries-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;cursor:pointer;border-top:1px solid var(--c-border);-webkit-user-select:none;user-select:none}.pr-entries-header span{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--c-text-muted)}.pr-entries-header .chevron-icon{transition:transform .2s}.pr-entries-section.collapsed .pr-entries-header .chevron-icon{transform:rotate(-90deg)}.pr-entries-section.collapsed .pr-entries-list{display:none}.pr-entries-list{flex:1;overflow-y:auto;padding:4px 0}.pr-empty-msg{text-align:center;color:var(--c-text-muted);font-size:.85rem;padding:24px 16px}.pr-entry-row{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--c-border);transition:background .12s}.pr-entry-row:last-child{border-bottom:none}.pr-entry-lift{font-size:.78rem;font-weight:700;padding:3px 8px;border-radius:10px;min-width:60px;text-align:center;text-transform:capitalize}.pr-lift-squat{background:#f59e0b22;color:#f59e0b}.pr-lift-bench{background:#3b82f622;color:#3b82f6}.pr-lift-deadlift{background:#ef444422;color:#ef4444}.pr-entry-weight{font-weight:700;font-size:.95rem;color:var(--c-text);flex:1}.pr-entry-date{font-size:.78rem;color:var(--c-text-muted)}.pr-entry-delete{background:none;border:none;color:var(--c-text-dim);font-size:1.1rem;cursor:pointer;padding:4px 6px;border-radius:6px;line-height:1;transition:background .15s,color .15s}.pr-entry-delete:hover{background:#ffffff1f;color:var(--c-text)}body.light-theme .pr-entry-delete:hover{background:#00000014}.pr-toggle-row-sub{padding-top:0}#maxTrackerModal .pr-add-fab{width:38px;height:38px;flex:0 0 38px;aspect-ratio:1;border-radius:50%;padding:0;font-size:1.4rem;font-weight:300;background:#ffffff1f;color:var(--c-text)}body.light-theme #maxTrackerModal .pr-add-fab{background:#ffffffb3}#maxTrackerModal .pr-add-fab:hover{background:#ffffff2e;color:var(--c-text)}body.light-theme #maxTrackerModal .pr-add-fab:hover{background:#ffffffe6}.pr-filter-btn[data-max-lift=squat].active{color:#f59e0b}.pr-filter-btn[data-max-lift=bench].active{color:#3b82f6}.pr-filter-btn[data-max-lift=deadlift].active{color:#ef4444}.pr-filter-btn[data-max-lift=pullup].active{color:#22c55e}.pr-filter-btn[data-max-lift=ohp].active{color:#a855f7}.pr-filter-btn[data-max-lift=dips].active{color:#06b6d4}.pr-filter-btn[data-max-lift=endur1].active{color:#f97316}.pr-filter-btn[data-max-lift=endur2].active{color:#84cc16}.pr-filter-btn[data-max-lift=total].active{color:#22c55e}.pr-filter-btn[data-max-lift].soloed{border-radius:6px}.pr-filter-btn[data-max-lift=squat].soloed{background:#f59e0b1f}.pr-filter-btn[data-max-lift=bench].soloed{background:#3b82f61f}.pr-filter-btn[data-max-lift=deadlift].soloed{background:#ef44441f}.pr-filter-btn[data-max-lift=pullup].soloed{background:#22c55e1f}.pr-filter-btn[data-max-lift=ohp].soloed{background:#a855f71f}.pr-filter-btn[data-max-lift=dips].soloed{background:#06b6d41f}.pr-filter-btn[data-max-lift=endur1].soloed{background:#f973161f}.pr-filter-btn[data-max-lift=endur2].soloed{background:#84cc161f}.pr-filter-btn[data-max-lift=total].soloed{background:#22c55e1f}#maxChartContainer.fullscreen~.pr-filter-strip,#maxChartContainer.fullscreen~.pr-add-overlay,#maxChartContainer.fullscreen~.pr-entries-section,#maxChartContainer.fullscreen~.pr-toggle-row-sub{display:none}.max-lift-badge{min-width:44px;font-weight:700;font-size:.78rem;padding:3px 8px;border-radius:10px;text-align:center}.max-row-var{font-size:.72rem;color:var(--c-text-dim);background:#ffffff0d;padding:2px 7px;border-radius:6px;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.light-theme .max-row-var{background:#0000000d}.max-add-popup{width:min(380px,92vw);display:flex;flex-direction:column;gap:10px}.max-add-row{display:flex;flex-direction:column;gap:4px}.max-add-row.hidden{display:none}.max-add-row-triple,.max-add-row-double{display:grid;gap:8px}.max-add-row-triple{grid-template-columns:1fr 1fr 1fr}.max-add-row-double{grid-template-columns:1fr 1fr}.max-add-field{display:flex;flex-direction:column;gap:4px;min-width:0}.max-add-label{font-size:.72rem;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.04em}.max-add-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23999' d='M6 8L0 0h12z'/></svg>");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px}.max-add-extra{margin-top:4px;border-top:1px solid var(--c-border);padding-top:8px}.max-add-extra summary{cursor:pointer;font-size:.8rem;color:var(--c-text-muted);padding:4px 0;list-style:none;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;gap:6px}.max-add-extra summary::-webkit-details-marker{display:none}.max-add-extra summary:before{content:"▾";font-size:.75rem;display:inline-block;transition:transform .18s}.max-add-extra[open] summary:before{transform:rotate(-180deg)}.max-add-extra .max-add-row-triple{margin-top:8px}.bar-weight-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2001;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.bar-weight-overlay.hidden{display:none}.bar-weight-card{background:var(--c-card);border:1px solid var(--c-border);border-radius:var(--radius-lg);width:100%;max-width:280px;box-shadow:0 20px 60px #0006;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.bar-weight-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 9px;border-bottom:1px solid var(--c-border);background:var(--c-card-alt)}.bar-weight-title{font-size:.78rem;font-weight:700;color:var(--c-text)}.bar-weight-close{background:none;border:none;color:var(--c-text-muted);font-size:1rem;cursor:pointer;padding:4px 6px;border-radius:6px;line-height:1;transition:background .15s,color .15s}.bar-weight-close:hover{background:var(--c-input);color:var(--c-text)}.bar-weight-body{display:flex;flex-direction:column;align-items:center;gap:12px;padding:14px 16px 16px}.bar-weight-exercise-name{font-size:.72rem;font-weight:600;color:var(--c-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.bar-weight-input-wrap{position:relative;display:inline-flex;align-items:center}.bar-weight-input{width:88px;height:36px;padding:0 26px 0 10px;background:var(--c-input);border:1px solid var(--c-border);border-radius:var(--radius-sm);color:var(--c-text);font-size:1rem;font-weight:700;text-align:left;box-sizing:border-box}.bar-weight-input:focus{outline:none;border-color:var(--c-blue)}.bar-weight-unit{position:absolute;right:8px;font-size:.7rem;font-weight:600;color:var(--c-text-muted);pointer-events:none;-webkit-user-select:none;user-select:none}.bar-weight-scope-toggle{display:flex;width:100%;background:#ffffff0f;border-radius:8px;padding:2px}body.light-theme .bar-weight-scope-toggle{background:#0000000d}.bar-weight-scope-btn{flex:1;padding:5px 0;border:none;border-radius:6px;background:transparent;color:var(--c-text-dim, #555);font-size:.78rem;font-weight:700;cursor:pointer;transition:background .18s,color .18s}.bar-weight-scope-btn.active{background:#ffffff1f;color:var(--c-text)}body.light-theme .bar-weight-scope-btn.active{background:#ffffffb3}.bar-weight-save{width:100%;padding:9px 12px;border:none;border-radius:var(--radius-md);font-size:.82rem;font-weight:700;cursor:pointer;background:var(--c-text);color:var(--c-bg);transition:opacity .15s}.bar-weight-save:hover{opacity:.88}:root{--acc-weight: #94a3b8;--acc-regen: #2dd4bf;--acc-move: #60a5fa;--acc-food: #fbbf24;--acc-pain: #4ade80}.lf-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--c-bg);z-index:500;flex-direction:column;overflow:hidden;transform:translate(100%);transition:transform .3s ease}.lf-overlay.show{display:flex;transform:translate(0)}.lf-topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:10px;border-bottom:1px solid var(--c-separator);flex-shrink:0}.lf-topbar-left{display:flex;align-items:center;gap:4px}.lf-topbar-right{display:flex;justify-content:flex-end}.lf-iconbtn{width:36px;height:36px;border-radius:var(--radius-md, 8px);background:transparent;border:none;color:var(--c-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.lf-iconbtn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.lf-topbar-date{display:flex;flex-direction:column;line-height:1.2;text-align:center}.lf-topbar-day{font-size:var(--fs-lg, 1rem);font-weight:700}.lf-topbar-week{font-size:var(--fs-md, .75rem);color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.4px}.lf-year-pill-wrap{position:relative;flex-shrink:0}.lf-year-pill{background:transparent;color:var(--c-text-muted);border:none;border-radius:var(--radius-md, 8px);padding:0 10px;height:28px;font-size:var(--fs-md, .75rem);font-weight:600;pointer-events:none;white-space:nowrap}.lf-year-select{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;font-size:16px}.lf-date-input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.lf-weekstrip{display:flex;align-items:center;gap:4px;padding:8px 6px 10px;flex-shrink:0}.lf-navarrow{background:none;border:none;color:var(--c-text-dim);font-size:var(--fs-lg, 1rem);padding:4px 8px;cursor:pointer}.lf-days{display:flex;gap:4px;flex:1;justify-content:space-around}.lf-day-pill{width:36px;height:36px;border-radius:50%;background:transparent;color:var(--c-text-muted);font-size:var(--fs-base, .85rem);font-weight:600;line-height:1;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;cursor:pointer}.lf-day-pill.filled{border-color:var(--c-success, #166534);color:var(--c-success-light, #4ade80)}.lf-day-pill.active{background:var(--c-blue, #60a5fa);color:#0b1224;border-color:var(--c-blue, #60a5fa)}.lf-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 10px 80px;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.lf-tiles{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:8px;margin-bottom:12px}.lf-tile{background:var(--c-card);border-radius:var(--radius-lg, 12px);padding:10px 8px;touch-action:manipulation;text-align:center;position:relative;border-top:3px solid var(--accent, var(--c-blue));box-shadow:0 2px 6px #00000040;display:flex;flex-direction:column;gap:6px;min-height:110px;min-width:0;overflow:hidden}.lf-tile.weight{--accent: var(--acc-weight)}.lf-tile.sleep{--accent: var(--acc-regen)}.lf-tile.steps{--accent: var(--acc-move)}.lf-tile-label{font-size:var(--fs-md, .75rem);font-weight:600;color:var(--c-text);text-transform:uppercase;letter-spacing:.5px}.lf-tile-input-area{display:flex;flex-direction:column;gap:4px;flex:1;justify-content:center}.lf-tile-meta{font-size:var(--fs-sm, .65rem);color:var(--c-text-muted);padding-top:4px;border-top:1px solid var(--c-separator);display:flex;align-items:center;justify-content:center;gap:4px}.lf-unitbox{display:inline-flex;align-items:baseline;background:#ffffff0a;border:1px solid var(--c-separator);border-radius:var(--radius-md, 8px);padding:5px 8px;gap:3px;width:100%;justify-content:center;transition:border-color .15s,background .15s}.lf-unitbox:focus-within{border-color:var(--c-separator);background:#ffffff0f}.lf-unitbox.empty{border-style:dashed}.lf-unitbox>.lf-unitbox-input{background:transparent;border:none;color:var(--c-text);font-weight:700;text-align:center;padding:0;flex:1;min-width:0;outline:none;box-shadow:none;font-size:clamp(.95rem,4.5vw,1.25rem);line-height:1;font-family:inherit}.lf-unitbox>.lf-unitbox-input::placeholder{color:var(--c-text-dim);font-weight:500;opacity:.7}.lf-unitbox>.lf-u{color:var(--c-text-dim);font-size:var(--fs-md, .75rem);font-weight:500;flex-shrink:0}.lf-unitbox-input::-webkit-outer-spin-button,.lf-unitbox-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lf-unitbox-input[type=number]{-moz-appearance:textfield}.lf-unitbox.sm{padding:3px 5px}.lf-unitbox.sm>.lf-unitbox-input{font-size:var(--fs-base, .85rem)}.lf-unitbox.sm>.lf-u{font-size:var(--fs-xs, .55rem)}.lf-chip-select{background:var(--c-input);border:1px solid transparent;color:var(--c-text);border-radius:var(--radius-md, 8px);height:26px;padding:0 22px 0 8px;font-size:var(--fs-sm, .65rem);-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23a0a0b4' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 6px center;background-size:10px;align-self:center;width:auto;max-width:100%;cursor:pointer;font-family:inherit}.lf-chip-select.lf-empty{color:var(--c-text-dim);border-style:dashed;border-color:var(--c-separator)}.lf-tile-row{display:flex;align-items:center;gap:8px}.lf-tile-row .lf-tile-label{flex-shrink:0;text-align:left;white-space:nowrap}.lf-tile-row .lf-unitbox{flex:1}.lf-ghost{background-color:transparent!important;border-color:transparent!important;color:var(--c-text-muted)}.lf-ghost.lf-empty{border-style:none}.lf-tile-input-area .lf-ghost,.lf-pain-row .lf-ghost{width:100%;align-self:stretch}.lf-sleep-quality{height:auto!important;padding:0 20px 0 0;margin:0;font-size:inherit;width:100%;text-align:center}.lf-trend-arrow.up{color:var(--c-success-light, #4ade80)}.lf-trend-arrow.up-bad,.lf-trend-arrow.down{color:#fbbf24}.lf-trend-arrow.down-good{color:var(--c-success-light, #4ade80)}.lf-trend-arrow.flat{color:var(--c-text-dim)}.lf-hints{flex-shrink:0;display:flex;justify-content:center;align-items:center;gap:12px;padding:8px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--c-separator);color:var(--c-text-dim);font-size:11px;opacity:.55}.lf-hints-sep{opacity:.35}.lf-reorder-zone{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.lf-accordion{background:var(--c-card);border-radius:var(--radius-lg, 12px);overflow:hidden;border-left:4px solid var(--acc, var(--c-blue));position:relative}.lf-accordion.food{--acc: var(--acc-food)}.lf-accordion.move{--acc: var(--acc-move)}.lf-accordion.dragging{opacity:.5;transform:scale(.98)}.lf-acc-head{display:flex;align-items:center;height:44px;padding:0 12px;cursor:pointer;-webkit-user-select:none;user-select:none;gap:10px;position:relative}.lf-acc-title{font-size:var(--fs-base, .85rem);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.lf-acc-summary{position:absolute;left:50%;transform:translate(-50%);white-space:nowrap;color:var(--c-text-muted);font-size:var(--fs-md, .75rem);display:flex;align-items:center;gap:8px}.lf-acc-head .lf-chev,.lf-acc-head .lf-pain-close{margin-left:auto}.lf-acc-summary{max-width:55%;overflow:hidden;text-overflow:ellipsis}.lf-chev{transition:transform .15s;color:var(--c-text-dim)}.lf-accordion.open .lf-chev{transform:rotate(180deg)}.lf-acc-body{padding:0 14px 14px;border-top:1px solid var(--c-separator);display:none}.lf-accordion.open .lf-acc-body{display:block;padding-top:12px}.lf-food-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.lf-field{display:flex;flex-direction:column;gap:3px;align-items:center}.lf-field label{font-size:var(--fs-xs, .55rem);color:var(--c-text-dim);text-transform:uppercase;letter-spacing:.5px}.lf-move-body{display:flex;flex-direction:column;gap:8px}.lf-korr-chip{flex:1;background:#60a5fa0f;border:1px solid var(--c-separator);border-radius:var(--radius-md, 8px);padding:8px 10px;color:var(--c-text-muted);font-size:var(--fs-md, .75rem);text-align:left;cursor:pointer;display:flex;align-items:center;gap:6px;width:100%;font-family:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lf-korr-chip svg{width:14px;height:14px;flex-shrink:0;opacity:.6;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.lf-korr-chip.lf-empty{border-style:dashed;color:var(--c-text-dim);background:transparent}.lf-korr-chip:not(.lf-empty){color:var(--c-text)}.lf-pain-section{background:var(--c-card);border-radius:var(--radius-lg, 12px);overflow:hidden;border-left:4px solid var(--acc-pain);position:relative;margin:4px 0 12px}.lf-pain-section.open .lf-chev{transform:rotate(180deg)}.lf-pain-expanded{display:none;padding:0 14px 14px;border-top:1px solid var(--c-separator)}.lf-pain-section.open .lf-pain-expanded{display:block;padding-top:12px}.lf-pain-close{background:none;border:none;color:var(--c-text-dim);font-size:1.1rem;cursor:pointer;padding:4px;line-height:1;font-family:inherit}.lf-pain-row{display:flex;flex-direction:column;gap:6px}.lf-pain-row-top{display:flex;gap:6px;align-items:center;position:relative}.lf-pain-row-top input[type=text]{flex:1;width:auto;padding-right:28px}.lf-pain-row+.lf-pain-row{margin-top:8px}.lf-pain-row input[type=text]{height:26px;padding:0 8px;background:#ffffff0a;border:1px solid var(--c-separator);border-radius:var(--radius-md, 8px);color:var(--c-text);font-size:var(--fs-sm, .65rem);font-family:inherit;width:100%;box-sizing:border-box}.lf-pain-row input[type=text]::placeholder{color:var(--c-text-dim)}.lf-pain-remove{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--c-text-dim);opacity:.4;width:20px;height:20px;cursor:pointer;font-size:.85rem;padding:0;line-height:1;display:flex;align-items:center;justify-content:center;transition:opacity .15s}.lf-pain-remove:active{opacity:1}.lf-add-pain{margin-top:8px;width:100%;background:transparent;border:1px dashed var(--c-separator);color:var(--c-text-dim);border-radius:var(--radius-md, 8px);padding:6px 10px;cursor:pointer;font-size:var(--fs-sm, .65rem);font-family:inherit}.lf-pain-add-btn{display:none;width:100%;background:transparent;border:1px dashed var(--c-separator);color:var(--c-text-dim);border-radius:var(--radius-lg, 12px);padding:11px 10px;cursor:pointer;font-size:var(--fs-md, .75rem);font-family:inherit;text-align:center;box-sizing:border-box}.lf-pain-section.pain-inactive{background:transparent;border-left-color:transparent;overflow:visible}.lf-pain-section.pain-inactive .lf-acc-head{display:none}.lf-pain-section.pain-inactive .lf-pain-add-btn{display:block}.lf-trends-section{margin-top:14px;padding-top:12px;border-top:1px solid var(--c-separator)}.lf-trends-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.lf-trends-label{font-size:var(--fs-sm, .65rem);color:var(--c-text-dim);text-transform:uppercase;letter-spacing:1px}.lf-trend-pills{display:inline-flex;background:#ffffff0f;border-radius:8px;padding:2px;gap:0}body.light-theme .lf-trend-pills{background:#0000000d}.lf-trend-pill{padding:3px 11px;border-radius:6px;border:none;background:transparent;color:var(--c-text-dim);font-size:.72rem;font-weight:700;cursor:pointer;transition:background .18s,color .18s}.lf-trend-pill.active{background:#ffffff1f;color:var(--c-text)}body.light-theme .lf-trend-pill.active{background:#ffffffb3}.lf-trends-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.lf-trend-tile{background:var(--c-card);border-radius:var(--radius-lg, 12px);padding:8px;cursor:pointer;transition:transform .15s;border-bottom:2px solid var(--accent, var(--c-blue));display:flex;flex-direction:column;gap:4px}.lf-trend-tile:hover{transform:translateY(-2px)}.lf-trend-tile.weight{--accent: var(--acc-weight)}.lf-trend-tile.sleep{--accent: var(--acc-regen)}.lf-trend-tile.steps{--accent: var(--acc-move)}.lf-trend-head{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-sm, .65rem);color:var(--c-text-dim);text-transform:uppercase;letter-spacing:.5px}.lf-trend-spark{width:100%;height:30px;display:block;overflow:visible}.lf-trend-foot{display:flex;justify-content:space-between;align-items:baseline}.lf-trend-avg{font-size:var(--fs-base, .85rem);font-weight:700}.lf-trend-avg .unit{font-size:var(--fs-sm, .65rem);color:var(--c-text-dim);font-weight:500;margin-left:2px}.lf-trend-delta{font-size:var(--fs-sm, .65rem);color:var(--c-text-dim)}body.lf-edit-mode .lf-tile,body.lf-edit-mode .lf-accordion,body.lf-edit-mode .lf-pain-section{animation:lf-wobble .4s ease-in-out infinite alternate;cursor:grab;overflow:visible}@keyframes lf-wobble{0%{transform:rotate(-.4deg)}to{transform:rotate(.4deg)}}body.lf-edit-mode .lf-tile-input-area,body.lf-edit-mode .lf-acc-summary,body.lf-edit-mode .lf-acc-body,body.lf-edit-mode .lf-pain-expanded{pointer-events:none;opacity:.5}.lf-edit-overlay{position:absolute;top:6px;right:6px;display:none;align-items:center;gap:2px;background:#121212c7;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:999px;padding:3px 6px;z-index:3;pointer-events:none}body.lf-edit-mode .lf-edit-overlay{display:flex}.lf-grip-btn,.lf-trash-btn{width:22px;height:22px;border-radius:50%;background:none;border:none;color:var(--c-text);display:inline-flex;align-items:center;justify-content:center;pointer-events:auto;cursor:pointer}.lf-grip-btn{cursor:grab}.lf-grip-btn svg{width:10px;height:10px}.lf-trash-btn{color:#fca5a5}.lf-trash-btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.lf-edit-bar{position:fixed;left:50%;transform:translate(-50%);bottom:12px;background:var(--c-card);border:1px solid var(--c-separator);border-radius:999px;padding:6px 6px 6px 16px;display:none;align-items:center;gap:10px;z-index:600;box-shadow:0 6px 20px #00000080}body.lf-edit-mode .lf-edit-bar{display:inline-flex}.lf-edit-label{color:var(--c-text-muted);font-size:var(--fs-md, .75rem)}.lf-edit-reset{border:none;border-radius:999px;padding:6px 14px;cursor:pointer;font-weight:600;font-size:var(--fs-md, .75rem);background:transparent;color:var(--c-text-dim)}.lf-edit-done{border:none;border-radius:999px;padding:6px 14px;cursor:pointer;font-weight:600;font-size:var(--fs-md, .75rem);background:var(--c-blue, #60a5fa);color:#0b1224}.lf-quality-trigger{background:transparent;border:none;color:var(--c-text-muted);font-size:var(--fs-sm, .65rem);cursor:pointer;padding:0 4px;font-family:inherit;text-align:left;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.lf-quality-trigger:after{content:"";display:inline-block;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid currentColor;margin-left:4px;vertical-align:middle;opacity:.5}.lf-quality-trigger.lf-empty{color:var(--c-text-dim)}.lf-quality-trigger:not(.lf-empty){color:var(--c-text)}.lf-accordion.move.move-dormant-mode .lf-acc-head .lf-chev{display:none}#lf-restfulnessTrigger{width:100%;text-align:center;padding:0;font-size:inherit;line-height:inherit;height:auto;min-height:0;display:inline}.lf-add-chip{display:block;width:100%;background:transparent;border:1px dashed var(--c-separator);color:var(--c-text-dim);border-radius:var(--radius-lg, 12px);padding:11px 10px;cursor:pointer;font-size:var(--fs-md, .75rem);font-family:inherit;text-align:center;box-sizing:border-box;transition:border-color .15s,color .15s}.lf-add-chip:active{border-color:var(--c-blue);color:var(--c-text)}.lf-move-dormant{display:flex;flex-direction:row;gap:8px;padding:0}.lf-accordion.move.move-dormant-mode,.lf-accordion.food.food-dormant-mode{background:transparent;border-left-color:transparent;box-shadow:none;overflow:visible}.lf-decision-add,.lf-decision-ghost{flex:1;background:transparent;border-radius:var(--radius-lg, 12px);padding:11px 8px;cursor:pointer;font-size:var(--fs-md, .75rem);font-family:inherit;text-align:center;color:var(--c-text-muted)}.lf-decision-add{border:1px dashed var(--c-separator);flex:7}.lf-decision-ghost{border:none;color:var(--c-text-dim);flex:3}.lf-restday-summary{display:flex;align-items:center;gap:8px}.lf-restday-label{font-size:var(--fs-sm, .65rem);color:var(--c-text-muted)}.lf-restday-change{background:none;border:none;color:var(--c-text-dim);cursor:pointer;padding:2px 4px;display:inline-flex;align-items:center;opacity:.75}.lf-restday-change:active{opacity:1}.lf-pill-row{display:flex;background:#ffffff0f;border-radius:8px;padding:2px;gap:0}body.light-theme .lf-pill-row{background:#0000000d}.lf-pain-pill{flex:1;background:transparent;border:none;border-radius:6px;color:var(--c-text-dim);font-size:.72rem;font-weight:700;padding:4px 6px;cursor:pointer;font-family:inherit;text-align:center;transition:background .18s,color .18s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lf-pain-pill.selected{background:#ffffff1f;color:var(--c-text)}body.light-theme .lf-pain-pill.selected{background:#ffffffb3}.lf-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:600;display:flex;align-items:flex-end;opacity:0;pointer-events:none;transition:opacity .18s}.lf-picker-overlay.show{opacity:1;pointer-events:auto}.lf-picker-card{background:var(--c-card);border-radius:var(--radius-lg, 12px) var(--radius-lg, 12px) 0 0;width:100%;padding:20px 16px 32px;transform:translateY(16px);transition:transform .18s ease-out}.lf-picker-overlay.show .lf-picker-card{transform:translateY(0)}.lf-picker-title{font-size:var(--fs-sm, .65rem);font-weight:600;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:14px;text-align:center}.lf-picker-options{display:flex;flex-direction:column;gap:8px}.lf-picker-option{width:100%;background:#ffffff0a;border:1px solid var(--c-separator);border-radius:var(--radius-md, 8px);color:var(--c-text);font-size:var(--fs-base, .85rem);padding:14px 16px;cursor:pointer;font-family:inherit;text-align:center;transition:background .12s,border-color .12s}.lf-picker-option.selected{border-color:var(--accent, var(--c-blue));background:#60a5fa1a;color:var(--c-text);font-weight:500}.lf-picker-option:active{background:#ffffff14}.lf-picker-option--restday{background:#b4282826;border-color:#b4282840;margin-top:4px;color:var(--c-text-muted)}.lf-picker-option--restday:active{background:#b4282840}.lf-bubble-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--c-overlay);display:none;align-items:center;justify-content:center;z-index:700;padding:20px}.lf-bubble-overlay.show{display:flex}.lf-bubble{background:var(--c-card);border-radius:var(--radius-lg, 12px);width:100%;max-width:380px;padding:14px;border-left:4px solid var(--acc-move);animation:lf-bubble-in .18s ease-out}@keyframes lf-bubble-in{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.lf-bubble h4{margin:0 0 10px;font-size:var(--fs-base, .85rem);text-transform:uppercase;letter-spacing:.5px;color:var(--c-text)}.lf-bubble textarea{width:100%;background:var(--c-input);border:1px solid var(--c-border);color:var(--c-text);border-radius:var(--radius-md, 8px);padding:10px;font-family:inherit;font-size:var(--fs-base, .85rem);min-height:110px;resize:vertical;box-sizing:border-box}.lf-bubble-actions{display:flex;gap:8px;margin-top:10px;justify-content:flex-end}.lf-bubble-actions button{border:none;border-radius:var(--radius-md, 8px);padding:8px 16px;cursor:pointer;font-weight:600;font-family:inherit}.lf-cancel{background:var(--c-input);color:var(--c-text-muted)}.lf-save{background:var(--c-blue, #60a5fa);color:#0b1224}.lf-trend-modal{z-index:560}.lf-trend-modal-inner{min-width:280px;overflow:hidden}.lf-trend-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.lf-trend-modal-close{background:none;border:none;color:var(--c-text-muted);font-size:1.2rem;cursor:pointer}.lf-trend-modal-chart-wrap{overflow:hidden}.lf-trend-modal-spark{display:block;width:100%;height:160px}.lf-tile.hidden,.lf-accordion.hidden,.lf-pain-section.hidden,.lf-trend-tile.hidden{display:none!important}.lf-empty-msg{text-align:center;color:var(--c-text-muted);padding:40px 20px;font-size:var(--fs-base, .85rem);line-height:1.6}.light-theme .lf-overlay{background:var(--c-bg)}.light-theme .lf-tile,.light-theme .lf-accordion,.light-theme .lf-trend-tile{background:var(--c-card)}
