:root{--color-cream:#fff8f3;--color-white:#fff;--color-pink-tint:#ffeef2;--color-raspberry:#e63462;--color-raspberry-dark:#c41e4a;--color-raspberry-light:#ff8fa3;--color-blue:#2f9bf4;--color-blue-light:#8ed1ff;--color-yellow:#ffc94a;--color-text:#2b1e2e;--color-text-secondary:#8c7b91;--color-success:#22c58b;--color-danger:#ff6b4a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--color-text);background:var(--color-cream);-webkit-font-smoothing:antialiased;font:17px/1.45 -apple-system,system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--color-cream);min-height:100svh;margin:0}#root{min-height:100svh}h1,h2,h3{color:var(--color-text);margin:0 0 8px;font-weight:700}h1{font-size:28px}h2{font-size:22px}h3{font-size:17px}p{margin:0}button{font:inherit}.screen{flex-direction:column;min-height:100svh;padding-bottom:72px;display:flex}.screen-centered{justify-content:center;align-items:center}.screen-content{flex-direction:column;flex:1;gap:16px;padding:20px 16px 24px;display:flex}.btn{cursor:pointer;border:none;border-radius:16px;width:100%;min-height:52px;padding:0 20px;font-size:17px;font-weight:700;transition:transform .1s}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg, var(--color-raspberry) 0%, var(--color-raspberry-dark) 100%);color:var(--color-white);box-shadow:0 6px 16px #e6346259}.btn-secondary{background:var(--color-white);color:var(--color-text);border:2px solid var(--color-blue);box-shadow:0 3px 10px #2f9bf426}.btn-ghost{color:var(--color-text-secondary);box-shadow:none;background:0 0}.btn-danger{background:var(--color-danger);color:var(--color-white);box-shadow:0 6px 16px #ff6b4a59}.greeting{color:var(--color-raspberry-dark);margin-top:8px;font-size:28px}.greeting-subtitle{color:var(--color-text-secondary);margin:-8px 0 4px;font-size:15px}.today-card{background:var(--color-white);border-radius:24px;flex-direction:column;gap:12px;padding:20px;display:flex;box-shadow:0 8px 24px #e634621a}.today-label{color:var(--color-raspberry);text-transform:uppercase;letter-spacing:.04em;font-size:14px;font-weight:700}.today-workout-name{font-size:26px}.today-actions{flex-direction:column;gap:10px;margin-top:8px;display:flex}.preview-card{margin:4px 0}.preview-exercise-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.preview-exercise-list li{color:var(--color-text-secondary);justify-content:space-between;font-size:15px;display:flex}.preview-exercise-name{color:var(--color-text)}.dialog-overlay{z-index:50;background:#2b1e2e73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.dialog-card,.sheet-card{background:var(--color-white);border-radius:24px 24px 0 0;flex-direction:column;gap:12px;width:100%;max-width:480px;padding:24px 20px;display:flex;box-shadow:0 -8px 32px #2b1e2e1f}.dialog-actions{gap:10px;margin-top:8px;display:flex}.dialog-actions .btn{flex:1}.sheet-list{flex-direction:column;gap:8px;max-height:50vh;display:flex;overflow-y:auto}.sheet-list-item{background:var(--color-pink-tint);min-height:52px;color:var(--color-text);cursor:pointer;border:none;border-radius:16px;justify-content:space-between;align-items:center;padding:14px 16px;font-weight:600;display:flex}.sheet-list-item-count{color:var(--color-text-secondary);font-size:14px;font-weight:400}.bottom-nav{background:var(--color-white);border-top:1px solid var(--color-pink-tint);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{min-height:56px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;flex:1;font-size:15px;font-weight:600}.bottom-nav-item.active{color:var(--color-raspberry)}.workout-header{justify-content:space-between;align-items:center;padding:20px 16px 0;display:flex}.discard-link{color:var(--color-danger);cursor:pointer;background:0 0;border:none;font-size:14px;font-weight:600}.workout-counter{color:var(--color-text-secondary);padding:0 16px;font-size:14px}.exercise-list{gap:20px}.exercise-card{background:var(--color-white);border-radius:20px;flex-direction:column;gap:10px;padding:16px;display:flex;box-shadow:0 6px 20px #2b1e2e12}.exercise-card-header{justify-content:space-between;align-items:baseline;display:flex}.exercise-card-target{color:var(--color-text-secondary);font-size:14px}.exercise-card-cues{color:var(--color-text-secondary);margin:0;padding-left:18px;font-size:14px;list-style:outside}.exercise-card-previous{color:var(--color-blue);font-size:13px;font-weight:600}.set-rows{flex-direction:column;gap:6px;display:flex}.set-row{grid-template-columns:24px 56px 1fr 1fr 40px;align-items:center;gap:8px;display:grid}.set-row-header{color:var(--color-text-secondary);text-transform:uppercase;font-size:12px}.set-row-index{color:var(--color-raspberry);font-weight:700}.set-row-target{color:var(--color-text-secondary);font-size:14px}.set-row-bodyweight{color:var(--color-text-secondary);text-align:center;font-size:14px}.set-row-done{background:#22c58b1f;border-radius:12px}.set-row-checkbox{width:26px;height:26px;accent-color:var(--color-success)}.numeric-input{border:2px solid var(--color-blue-light);background:var(--color-white);min-height:44px;color:var(--color-text);border-radius:12px;width:100%;padding:0 10px;font-size:16px}.numeric-input:focus{border-color:var(--color-blue);outline:none}.numeric-input:disabled{background:var(--color-pink-tint);color:var(--color-text-secondary);border-color:#0000}.workout-footer{padding:16px 16px calc(16px + env(safe-area-inset-bottom))}.celebration-screen{text-align:center;background:radial-gradient(circle at top, #ffd6e0 0%, #fff3cf 45%, var(--color-cream) 80%);justify-content:center;align-items:center}.celebration-content{flex-direction:column;gap:16px;max-width:420px;padding:24px;display:flex}.celebration-static{font-size:64px}.celebration-message{color:var(--color-raspberry-dark);font-size:26px;font-weight:800}.celebration-workout-name{color:var(--color-blue)}.celebration-stats{color:var(--color-text-secondary);font-weight:600}.history-list{flex-direction:column;gap:8px;display:flex}.history-list-item{background:var(--color-white);min-height:52px;color:var(--color-text);cursor:pointer;text-align:left;border:none;border-radius:16px;justify-content:space-between;gap:8px;padding:14px 16px;display:flex;box-shadow:0 4px 14px #2b1e2e0f}.history-list-item-date{color:var(--color-text-secondary);flex:1;font-size:13px}.history-list-item-name{flex:1;font-weight:700}.history-list-item-sets{color:var(--color-text-secondary);font-size:13px}.history-empty{color:var(--color-text-secondary);text-align:center;padding:32px 0}.history-detail-date{color:var(--color-text-secondary);margin-bottom:8px}.history-set-list{color:var(--color-text-secondary);flex-direction:column;gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.back-link{color:var(--color-blue);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:15px;font-weight:600}.backup-actions{border-top:1px solid var(--color-pink-tint);flex-direction:column;gap:12px;margin-top:16px;padding-top:16px;display:flex}.backup-explainer{color:var(--color-text-secondary);font-size:13px}.backup-buttons{gap:10px;display:flex}.backup-buttons .btn{flex:1}.backup-error{color:var(--color-danger);font-size:13px;font-weight:600}.login-screen{background:radial-gradient(circle at top, #ffd6e0 0%, #fff3cf 45%, var(--color-cream) 80%)}.login-card{background:var(--color-white);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:360px;margin:0 16px;padding:28px 24px;display:flex;box-shadow:0 8px 24px #e6346226}.login-heart{font-size:40px}.login-message{color:var(--color-raspberry-dark);font-size:19px;font-weight:700}.login-input{border:2px solid var(--color-blue-light);background:var(--color-white);width:100%;min-height:48px;color:var(--color-text);text-align:center;border-radius:12px;padding:0 14px;font-size:16px}.login-input:focus{border-color:var(--color-blue);outline:none}.login-error{color:var(--color-danger);font-size:13px;font-weight:600}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
