:root{font-synthesis:none;text-rendering:optimizelegibility}body{min-width:320px}.auth-shell{background:radial-gradient(circle at 15% 20%,#dcebdc 0,#0000 34%),radial-gradient(circle at 85% 80%,#e4ead8 0,#0000 30%),#f5f2ea;place-items:center;width:100%;min-height:100vh;margin:0;padding:24px;display:grid;position:relative;overflow:hidden}.auth-shell:before{content:"";border:1px solid #4c876029;border-radius:50%;width:420px;height:420px;position:absolute;transform:translate(52vw,-34vh)}.auth-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffefaf0;border:1px solid #deded5;border-radius:22px;width:min(460px,100%);padding:42px;position:relative;box-shadow:0 28px 80px #293b2e24}.auth-brand{color:#fff;background:linear-gradient(135deg,#326946,#79ad6b);border-radius:13px;place-items:center;width:46px;height:46px;margin-bottom:30px;font-size:21px;font-weight:900;display:grid;box-shadow:0 10px 24px #315b403d}.auth-card h1{color:#17251e;letter-spacing:-.065em;margin:0;font-size:clamp(38px,8vw,54px);line-height:.98}.auth-card h1 em{color:#4c8760;font-style:normal}.auth-card>p:not(.overline):not(.auth-error){color:#63716a;margin:20px 0 0;font-size:15px;line-height:1.6}.google-login{color:#63716a;justify-content:center;align-items:center;min-height:44px;margin-top:30px;font-size:13px;display:flex}.auth-error{color:#8d3544;background:#f8e9e9;border-radius:9px;margin:18px 0 0;padding:11px 13px;font-size:12px;line-height:1.45}.sign-out{color:var(--muted);text-align:left;background:0 0;padding:0;font-size:11px;font-weight:750}.sign-out:hover{color:var(--accent-dark)}@media (width<=520px){.auth-shell{padding:16px}.auth-card{padding:30px 24px}.auth-card h1{font-size:42px}}.coach-page{border:1px solid var(--border);background:var(--surface);border-radius:18px;grid-template-columns:270px minmax(0,1fr);height:calc(100dvh - 70px);min-height:540px;display:grid;overflow:hidden}.workspace:has(.coach-page){overflow:hidden;max-width:none!important}.coach-desktop-list{border-right:1px solid var(--border);background:var(--soft);overflow:auto}.coach-list-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.coach-list-head span{letter-spacing:.12em;color:var(--muted);font-size:10px;font-weight:800}.coach-list-head button,.coach-mobile-new{background:var(--accent-soft);min-height:44px;color:var(--accent-dark);border-radius:9px;padding:8px 10px;font-weight:800}.coach-thread{border-radius:10px;align-items:center;margin:3px 0;display:flex}.coach-thread.active{background:var(--surface);box-shadow:0 2px 9px var(--shadow)}.coach-thread-select{text-align:left;min-width:0;min-height:62px;color:var(--text);background:0 0;flex:1;padding:10px}.coach-thread-select b,.coach-thread-select small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.coach-thread-select b{font-size:13px}.coach-thread-select small{color:var(--muted);margin-top:5px;font-size:11px}.coach-delete{width:44px;height:44px;color:var(--muted);background:0 0;font-size:19px}.coach-delete:disabled{opacity:.35}.coach-list-empty,.coach-skeleton{color:var(--muted);font-size:13px;line-height:1.5}.coach-chat{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.coach-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-height:84px;padding:16px 26px;display:flex}.coach-header h1{letter-spacing:-.04em;margin:3px 0 0;font-size:23px;line-height:1.2}.coach-header .overline{font-size:10px}.coach-drawer-button,.coach-mobile-new{display:none}.coach-timeline{overscroll-behavior:contain;flex:1;min-height:0;padding:26px max(24px,8%);overflow-y:auto}.coach-welcome{text-align:center;max-width:560px;margin:10vh auto 0}.coach-welcome>span{color:var(--accent);font-size:34px}.coach-welcome h2{margin:8px 0;font-size:28px}.coach-welcome p{color:var(--muted)}.coach-welcome>div{gap:8px;margin-top:26px;display:grid}.coach-welcome button{border:1px solid var(--border);background:var(--soft);min-height:44px;color:var(--text);text-align:left;border-radius:11px;padding:12px 16px}.coach-message{max-width:min(760px,100%);margin:0 0 20px}.coach-message.user{width:max-content;max-width:min(650px,90%);margin-left:auto}.coach-bubble{background:var(--soft);color:var(--text);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:15px;padding:14px 18px;line-height:1.55}.coach-message.user .coach-bubble{background:var(--accent-soft)}.coach-message.assistant .coach-bubble{background:0 0;padding-left:0}.coach-message.failed .coach-bubble,.coach-message.interrupted .coach-bubble{border-left:3px solid #bb6970;padding-left:12px}.coach-message>small{color:var(--muted);text-transform:capitalize}.coach-bubble p{margin:0 0 10px}.coach-bubble p:last-child{margin-bottom:0}.coach-bubble h1,.coach-bubble h2,.coach-bubble h3{margin:12px 0 7px;font-size:1.1em}.coach-bubble a{color:var(--accent-dark);text-decoration:underline}.coach-bubble pre,.coach-bubble table{max-width:100%;display:block;overflow:auto}.coach-bubble code{background:var(--soft);border-radius:4px;padding:1px 4px}.coach-bubble table{border-collapse:collapse}.coach-bubble td,.coach-bubble th{border:1px solid var(--border);padding:6px}.coach-proposal{border:1px solid var(--border);background:var(--surface);box-shadow:0 3px 14px var(--shadow);border-radius:14px;margin:12px 0;padding:18px}.coach-proposal.danger{border-color:#c98a8e}.coach-proposal-head{justify-content:space-between;gap:10px;display:flex}.coach-proposal-head b{color:var(--accent-dark)}.coach-proposal-head span{text-transform:capitalize;color:var(--muted);font-size:12px}.coach-proposal p{font-size:13px;line-height:1.45}.coach-proposal-detail{background:var(--soft);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;padding:12px;font-size:12px;display:grid}.coach-proposal-detail strong,.coach-proposal-detail small{display:block}.coach-proposal-detail small{color:var(--muted);margin-top:4px}.coach-proposal-detail ol{padding-left:18px;line-height:1.55}.coach-proposal-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.coach-proposal-actions button{border:1px solid var(--border);background:var(--soft);min-height:44px;color:var(--text);border-radius:9px;padding:9px 15px;font-weight:700}.coach-proposal-actions .primary{background:var(--accent);color:#fff}.coach-activity{color:var(--accent-dark);padding:10px;font-size:12px;animation:1.5s infinite coach-pulse}.coach-error{color:#9b3a45;background:#f7e7e7;border-radius:9px;align-items:center;gap:12px;padding:12px;font-size:13px;display:flex}.coach-error button{min-height:44px;color:inherit;background:0 0;padding:8px;text-decoration:underline}.coach-composer{border-top:1px solid var(--border);background:var(--surface);padding:14px 26px 18px}.coach-composer textarea{resize:vertical;border:1px solid var(--border);background:var(--field);width:100%;min-height:72px;max-height:160px;color:var(--text);font:inherit;border-radius:12px;padding:13px 15px;font-size:15px}.coach-composer>div{justify-content:space-between;align-items:center;margin-top:7px;display:flex}.coach-composer small{color:var(--muted);font-size:11px}.coach-composer button{min-height:44px;padding:9px 20px}.coach-jump{background:var(--accent);color:#fff;border-radius:20px;min-height:44px;padding:8px 14px;position:absolute;bottom:155px;right:30px}.coach-dot{background:var(--accent);border-radius:50%;width:7px;min-width:7px;height:7px;animation:1.4s infinite coach-pulse;display:inline-block}.coach-drawer-wrap,.more-wrap{display:none}button:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes coach-pulse{50%{opacity:.3}}@media (width<=760px){.workspace:has(.coach-page){height:100dvh!important;min-height:0!important;padding:var(--safe-area-top) 0 var(--mobile-nav-height)!important}main.workspace:has(.coach-page){height:100dvh!important;min-height:0!important;padding:var(--safe-area-top) 0 var(--mobile-nav-height)!important}.coach-page{border:0;border-radius:0;height:100%;min-height:0;display:block}.coach-desktop-list{display:none}.coach-chat{height:100%}.coach-header{min-height:65px;padding:10px 16px}.coach-header h1{text-overflow:ellipsis;white-space:nowrap;max-width:65vw;font-size:17px;overflow:hidden}.coach-drawer-button,.coach-mobile-new{min-width:44px;min-height:44px;color:var(--accent-dark);background:0 0;font-size:22px;display:block}.coach-mobile-new{margin-left:auto}.coach-timeline{padding:18px 16px}.coach-composer{padding:10px 16px}.coach-composer textarea{min-height:52px;font-size:16px}.coach-welcome{margin:7vh auto 0}.coach-welcome h2{font-size:24px}.coach-drawer-wrap{z-index:45;display:block;position:fixed;inset:0}.coach-drawer-backdrop,.more-backdrop{background:#0006;width:100%;height:100%;position:absolute;inset:0}.coach-drawer{background:var(--surface);width:min(340px,88vw);position:absolute;top:0;bottom:0;left:0;overflow:auto;box-shadow:10px 0 35px #0003}.coach-drawer-close{min-height:44px;color:var(--text);background:0 0;margin:12px 18px 0 auto;display:block}.more-wrap{z-index:40;display:block;position:fixed;inset:0}.more-sheet{right:0;bottom:var(--mobile-nav-height);background:var(--surface);border-radius:18px 18px 0 0;gap:8px;padding:18px;display:grid;position:absolute;left:0}.more-sheet>button{text-align:left;background:var(--soft);min-height:50px;color:var(--text);border-radius:10px;padding:12px}.more-sheet .switch{align-items:center;gap:12px;min-height:50px;display:flex}.mobile button.active{color:var(--accent-dark)}}@media (prefers-reduced-motion:reduce){.coach-dot,.coach-activity{animation:none}.coach-drawer,.more-sheet{transition:none}}.coach-retry{min-height:44px;color:var(--accent-dark);background:0 0;margin-left:8px;padding:8px;text-decoration:underline}.coach-proposal-detail em{color:var(--accent-dark);font-style:normal;font-weight:800}.coach-proposal-reasoning{border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 9px 9px 0;margin:14px 0;padding:14px 16px}.coach-proposal-reasoning strong{color:var(--accent-dark);font-size:12px;display:block}.coach-proposal-reasoning p{white-space:pre-wrap;margin:6px 0 0}.coach-proposal-head-actions{align-items:center;gap:12px;display:flex}.coach-proposal-head-actions button{border:1px solid var(--border);background:var(--soft);min-height:40px;color:var(--accent-dark);white-space:nowrap;border-radius:9px;padding:7px 12px;font-size:13px;font-weight:700}.coach-proposal-overlay{z-index:1000;isolation:isolate;place-items:center;padding:clamp(12px,3vw,36px);display:grid;position:fixed;inset:0}.coach-proposal-backdrop{-webkit-backdrop-filter:blur(9px);background:#0a110d9e;border:0;width:100%;height:100%;animation:.24s ease-out both coach-backdrop-in;position:absolute;inset:0}.coach-proposal-expanded{z-index:1;overscroll-behavior:contain;background:var(--surface);border-radius:20px;width:min(1100px,100%);max-height:min(90dvh,950px);margin:0;padding:clamp(20px,3vw,36px);animation:.26s cubic-bezier(.2,.8,.2,1) both coach-proposal-in;position:relative;overflow:auto;box-shadow:0 24px 70px #0005}.coach-proposal-expanded .coach-proposal-head b{font-size:clamp(21px,2.5vw,29px)}.coach-proposal-expanded .coach-proposal-head-actions span{font-size:14px}.coach-proposal-expanded .coach-proposal-close{width:44px;height:44px;padding:0;font-size:29px;line-height:1}.coach-proposal-expanded>p,.coach-proposal-expanded .coach-proposal-reasoning p{font-size:16px;line-height:1.6}.coach-proposal-expanded .coach-proposal-reasoning strong{font-size:15px}.coach-proposal-expanded .coach-proposal-detail{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px;padding:clamp(18px,2.5vw,28px);font-size:16px;line-height:1.6}.coach-proposal-expanded .coach-proposal-detail strong{font-size:17px}.coach-proposal-expanded .coach-proposal-detail small{font-size:14px}.coach-proposal-expanded .coach-proposal-detail ol{padding-left:25px;line-height:1.65}.coach-proposal-overlay.is-closing .coach-proposal-backdrop{animation:.2s ease-in both coach-backdrop-out}.coach-proposal-overlay.is-closing .coach-proposal-expanded{animation:.2s ease-in both coach-proposal-out}@keyframes coach-backdrop-in{0%{opacity:0;-webkit-backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(9px)}}@keyframes coach-backdrop-out{to{opacity:0;-webkit-backdrop-filter:blur()}}@keyframes coach-proposal-in{0%{opacity:0;transform:translateY(16px)scale(.975)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes coach-proposal-out{to{opacity:0;transform:translateY(10px)scale(.985)}}@media (width<=760px){.coach-proposal-overlay{padding:10px}.coach-proposal-expanded{border-radius:16px;max-height:calc(100dvh - 20px)}.coach-proposal-expanded .coach-proposal-head{align-items:flex-start}.coach-proposal-expanded .coach-proposal-detail{grid-template-columns:1fr}.coach-proposal-head-actions{gap:7px}}@media (prefers-reduced-motion:reduce){.coach-proposal-backdrop,.coach-proposal-expanded,.coach-proposal-overlay.is-closing .coach-proposal-backdrop,.coach-proposal-overlay.is-closing .coach-proposal-expanded{animation-duration:.01ms}}.app:has(.coach-page){height:100dvh;min-height:0;overflow:hidden}.app:has(.coach-page) main.workspace{height:100dvh;min-height:0;padding-top:18px;padding-bottom:18px;overflow:hidden}.coach-page{height:100%;min-height:0}.coach-timeline,.coach-desktop-list,.coach-drawer,.coach-proposal-expanded,.coach-composer textarea,.coach-bubble pre,.coach-bubble table{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 72%,var(--border)) transparent}.coach-timeline::-webkit-scrollbar{width:8px;height:8px}.coach-desktop-list::-webkit-scrollbar{width:8px;height:8px}.coach-drawer::-webkit-scrollbar{width:8px;height:8px}.coach-proposal-expanded::-webkit-scrollbar{width:8px;height:8px}.coach-composer textarea::-webkit-scrollbar{width:8px;height:8px}.coach-bubble pre::-webkit-scrollbar{width:8px;height:8px}.coach-bubble table::-webkit-scrollbar{width:8px;height:8px}.coach-timeline::-webkit-scrollbar-track{background:0 0;margin:12px 0}.coach-desktop-list::-webkit-scrollbar-track{background:0 0;margin:12px 0}.coach-drawer::-webkit-scrollbar-track{background:0 0;margin:12px 0}.coach-proposal-expanded::-webkit-scrollbar-track{background:0 0;margin:12px 0}.coach-composer textarea::-webkit-scrollbar-track{background:0 0;margin:12px 0}.coach-bubble pre::-webkit-scrollbar-track{background:0 0;margin:12px 0}.coach-bubble table::-webkit-scrollbar-track{background:0 0;margin:12px 0}.coach-timeline::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:2px solid var(--surface);border-radius:999px;min-height:42px}.coach-desktop-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:2px solid var(--surface);border-radius:999px;min-height:42px}.coach-drawer::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:2px solid var(--surface);border-radius:999px;min-height:42px}.coach-proposal-expanded::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:2px solid var(--surface);border-radius:999px;min-height:42px}.coach-composer textarea::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:2px solid var(--surface);border-radius:999px;min-height:42px}.coach-bubble pre::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:2px solid var(--surface);border-radius:999px;min-height:42px}.coach-bubble table::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:2px solid var(--surface);border-radius:999px;min-height:42px}.coach-timeline::-webkit-scrollbar-thumb:hover{background:var(--accent)}.coach-desktop-list::-webkit-scrollbar-thumb:hover{background:var(--accent)}.coach-drawer::-webkit-scrollbar-thumb:hover{background:var(--accent)}.coach-proposal-expanded::-webkit-scrollbar-thumb:hover{background:var(--accent)}.coach-composer textarea::-webkit-scrollbar-thumb:hover{background:var(--accent)}.coach-bubble pre::-webkit-scrollbar-thumb:hover{background:var(--accent)}.coach-bubble table::-webkit-scrollbar-thumb:hover{background:var(--accent)}.coach-timeline::-webkit-scrollbar-button{width:0;height:0;display:none}.coach-desktop-list::-webkit-scrollbar-button{width:0;height:0;display:none}.coach-drawer::-webkit-scrollbar-button{width:0;height:0;display:none}.coach-proposal-expanded::-webkit-scrollbar-button{width:0;height:0;display:none}.coach-composer textarea::-webkit-scrollbar-button{width:0;height:0;display:none}.coach-bubble pre::-webkit-scrollbar-button{width:0;height:0;display:none}.coach-bubble table::-webkit-scrollbar-button{width:0;height:0;display:none}@media (width<=760px){.app:has(.coach-page) main.workspace{height:100dvh;padding:var(--safe-area-top) 0 var(--mobile-nav-height)!important}.coach-page{height:100%}}.coach-page{animation:.36s cubic-bezier(.2,.8,.2,1) both coach-page-enter}.coach-desktop-list{animation:.38s ease-out 50ms both coach-panel-enter}.coach-header,.coach-composer{animation:.32s ease-out 80ms both coach-content-enter}.coach-timeline{animation:.35s ease-out .12s both coach-content-enter}.coach-message,.coach-welcome,.coach-thread{animation:.24s ease-out both coach-item-enter}.coach-thread-state{color:var(--accent-dark);align-items:center;gap:5px;margin-left:5px;font-weight:800;display:inline-flex}.coach-progress{border:1px solid var(--border);background:var(--soft);min-height:34px;color:var(--accent-dark);border-radius:999px;align-items:center;gap:10px;padding:6px 11px;font-size:12px;font-weight:750;animation:.22s ease-out both coach-item-enter;display:inline-flex}.coach-progress-mark{align-items:center;gap:3px;height:14px;display:inline-flex}.coach-progress-mark i{background:var(--accent);border-radius:50%;width:5px;height:5px;animation:1.15s ease-in-out infinite coach-thinking-dot}.coach-progress-mark i:nth-child(2){animation-delay:.15s}.coach-progress-mark i:nth-child(3){animation-delay:.3s}.coach-streaming-message .coach-bubble{padding-bottom:8px}@keyframes coach-page-enter{0%{opacity:0;transform:translateY(8px)scale(.995)}to{opacity:1;transform:none}}@keyframes coach-panel-enter{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}@keyframes coach-content-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes coach-item-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes coach-thinking-dot{0%,65%,to{opacity:.38;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.coach-page,.coach-desktop-list,.coach-header,.coach-composer,.coach-timeline,.coach-message,.coach-welcome,.coach-thread,.coach-progress,.coach-progress-mark i{animation:none!important}}@media (width<=760px){.coach-header{flex:none;gap:10px;min-height:68px;padding:10px 16px}.coach-header>div{flex:1;min-width:0}.coach-header h1{max-width:none;font-size:18px}.coach-drawer-button,.coach-mobile-new{background:var(--soft);border-radius:12px;flex:none;place-items:center;width:44px;height:44px;padding:0;font-size:24px;display:grid}.coach-timeline{padding:18px 18px 24px}.coach-welcome{flex-direction:column;justify-content:center;max-width:420px;min-height:100%;margin:0 auto;padding:12px 0 20px;display:flex}.coach-welcome>span{font-size:30px;line-height:1}.coach-welcome h2{margin:10px 0 0;font-size:25px}.coach-welcome p{max-width:30ch;margin:8px auto 0;font-size:15px;line-height:1.5}.coach-welcome>div{gap:8px;margin-top:24px}.coach-welcome button{min-height:48px;padding:10px 14px;font-size:14px;line-height:1.35}.coach-composer{flex:none;padding:10px 16px 12px}.coach-composer textarea{min-height:48px;max-height:128px;padding:12px 14px}.coach-composer>div{margin-top:5px}.coach-composer button{min-height:40px;padding:8px 16px}.coach-jump{min-height:38px;padding:7px 12px;font-size:13px;bottom:132px;right:18px}.coach-drawer-wrap{bottom:var(--mobile-nav-height);z-index:45}.coach-drawer{flex-direction:column;width:min(360px,100%);display:flex;bottom:0;overflow:hidden}.coach-drawer-top{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;min-height:66px;padding:10px 18px;display:flex}.coach-drawer-top strong{letter-spacing:-.03em;font-size:20px}.coach-drawer-close{background:var(--soft);border-radius:12px;place-items:center;width:44px;height:44px;min-height:44px;margin:0;font-size:25px;display:grid}.coach-drawer .coach-list{min-height:0;padding:18px;overflow-y:auto}.coach-drawer .coach-list-head{gap:12px;margin-bottom:12px}.coach-drawer .coach-list-head button{white-space:nowrap;min-height:40px;padding:8px 12px;font-size:13px}.coach-drawer .coach-thread{border:1px solid var(--border);background:var(--soft);margin:4px 0}.coach-drawer .coach-thread.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:none}.coach-drawer .coach-thread-select{min-height:60px;padding:10px 12px}}@media (width>=761px){.app:has(.coach-page) main.workspace{width:calc(100% - 224px)!important;max-width:none!important;margin-left:224px!important;padding:0!important}}.app:has(.coach-page){background:var(--bg-main,var(--field))}.app:has(.coach-page) main.workspace{background:var(--bg-main,var(--field))}.coach-page{background:0 0;border:0;border-radius:0;grid-template-columns:320px minmax(0,1fr);height:100%;animation:none}.coach-desktop-list{background:var(--bg-sidebar,var(--surface));border-right:1px solid var(--border-subtle,var(--border));animation:none}.app.dark .coach-desktop-list,.app.dark .coach-drawer{background:#111b15}.coach-list{padding:0}.coach-list-head{border-bottom:1px solid var(--border-subtle,var(--border));gap:10px;height:94px;margin:0;padding:0 20px}.coach-list-head h2{letter-spacing:-.04em;margin:0;font-size:22px}.coach-list-head button{background:var(--bg-active,var(--accent-soft));min-height:42px;color:var(--text);white-space:nowrap;border-radius:9px;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:700;display:inline-flex}.coach-list-head button svg{width:17px;height:17px}.coach-list-body{padding:21px 12px}.coach-recent{color:var(--muted);margin:0 10px 12px;font-size:13px;font-weight:650;display:block}.coach-thread{border-radius:9px;margin:0;animation:none;position:relative}.coach-thread:hover,.coach-thread.active{background:var(--bg-surface-hover,var(--soft));box-shadow:none}.coach-thread-select{align-items:center;gap:13px;width:100%;min-height:51px;padding:9px 10px;display:flex}.coach-thread-select svg{width:21px;height:21px;color:var(--text);flex:none}.coach-thread-select b{flex:1;min-width:0;font-size:13px;font-weight:550}.coach-thread-select small{color:var(--muted);flex:none;margin:0;font-size:12px}.coach-delete{background:var(--bg-surface-hover,var(--soft));border-radius:8px;width:36px;height:40px;display:none;position:absolute;top:5px;right:2px}.coach-thread:hover .coach-delete,.coach-delete:focus-visible{display:block}.coach-list-empty,.coach-skeleton{padding:0 10px}.coach-chat{background:var(--bg-main,var(--field))}.coach-header{animation:none;display:none}.coach-chat.has-conversation .coach-header{border-bottom:1px solid var(--border-subtle,var(--border));min-height:72px;padding:0 5%;display:flex}.coach-chat.has-conversation .coach-header h1{margin:0;font-size:18px;font-weight:650}.coach-timeline{padding:26px max(6%,50% - 450px);animation:none}.coach-chat.is-empty .coach-timeline{justify-content:center;align-items:flex-start;padding:0 20px;display:flex}.coach-welcome{width:100%;max-width:none;margin:clamp(165px,31vh,290px) auto 0;animation:none}.coach-welcome h2{color:var(--text);letter-spacing:-.045em;margin:0;font-size:clamp(34px,2.65vw,42px);font-weight:700;line-height:1.1}.coach-welcome p{color:var(--muted);margin:13px 0 0;font-size:clamp(17px,1.35vw,19px);line-height:1.4}.coach-composer{border:1px solid var(--border-subtle,var(--border));background:var(--bg-surface-hover,var(--soft));border-radius:999px;align-items:center;gap:10px;width:min(840px,76%);min-height:64px;margin:32px auto 0;padding:6px 9px 6px 21px;animation:none;display:flex}.coach-composer textarea{resize:none;width:auto;min-width:0;height:28px;min-height:28px;max-height:76px;color:var(--text);background:0 0;border:0;border-radius:0;outline:0;flex:1;padding:2px 0;font-size:15px;line-height:24px;overflow-y:hidden}.coach-composer textarea::placeholder{color:var(--muted);opacity:1}.coach-composer textarea:focus-visible{outline:none}.coach-composer button{box-shadow:none;flex:none;place-items:center;padding:0;display:grid;transform:none}.coach-composer button svg{width:22px;height:22px}.coach-composer .coach-send{background:var(--accent);color:#102016;border:0;border-radius:50%;width:44px;height:44px;min-height:44px}.coach-send:disabled{opacity:.65;cursor:default}.coach-composer .coach-stop{background:var(--accent-soft);color:var(--accent-dark);font-size:18px}.coach-button-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.coach-welcome .coach-prompts{flex-wrap:wrap;justify-content:center;gap:20px;margin:38px auto 0;display:flex}.coach-prompts button{border:1px solid var(--border-subtle,var(--border));min-height:54px;color:var(--text);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:14px;padding:0 20px;font-size:14px;display:flex}.coach-prompts button:hover{background:var(--bg-surface-hover,var(--soft))}.coach-prompts svg{width:23px;height:23px;color:var(--accent)}.coach-chat.has-conversation>.coach-composer{flex:none;margin:0 auto 22px}.coach-jump{bottom:112px}@media (width<=1200px) and (width>=761px){.coach-page{grid-template-columns:minmax(0,1fr)}.coach-desktop-list{display:none}.coach-chat .coach-header{min-height:68px;padding:0 4%;display:flex}.coach-drawer-button{background:var(--soft);width:42px;height:42px;color:var(--text);border-radius:9px;place-items:center;font-size:21px;display:grid}.coach-mobile-new{place-items:center;width:42px;height:42px;margin-left:auto;padding:0;display:grid}.coach-mobile-new svg{width:20px;height:20px}.coach-drawer-wrap{z-index:45;display:block;position:fixed;inset:0}.coach-drawer-backdrop{background:#0008;width:100%;height:100%;position:absolute;inset:0}.coach-drawer{background:var(--bg-sidebar,var(--surface));width:320px;position:absolute;top:0;bottom:0;left:0;overflow:auto}.coach-drawer-top{justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.coach-drawer-top strong{display:none}.coach-drawer-close{color:var(--text);background:0 0;margin-left:auto;font-size:25px}.coach-drawer .coach-delete{background:0 0;flex:none;display:block;position:static}}@media (width<=760px){.coach-page{height:100%;display:block}.coach-chat .coach-header{background:var(--bg-main,var(--field));min-height:64px;padding:8px 16px;display:flex}.coach-header h1{margin:0;font-size:18px}.coach-drawer-button,.coach-mobile-new{place-items:center;display:grid}.coach-mobile-new svg{width:20px;height:20px}.coach-chat.is-empty .coach-timeline{align-items:flex-start;padding:0 16px;display:flex}.coach-welcome{min-height:0;margin:clamp(65px,13vh,120px) auto 0;padding:0;display:block}.coach-welcome h2{font-size:31px}.coach-welcome p{margin-top:10px;font-size:16px}.coach-composer{border-radius:999px;gap:7px;width:100%;min-height:54px;margin:27px auto 0;padding:5px 7px 5px 16px}.coach-composer textarea{height:25px;min-height:25px;max-height:72px;padding:0;font-size:14px}.coach-composer button svg{width:20px;height:20px}.coach-composer .coach-send{width:38px;height:38px;min-height:38px}.coach-welcome .coach-prompts{gap:9px;margin-top:25px}.coach-prompts button{gap:8px;min-height:43px;padding:0 13px;font-size:12px}.coach-prompts svg{width:18px;height:18px}.coach-chat.is-empty .coach-composer{width:auto;margin:0;position:absolute;bottom:12px;left:12px;right:12px}.coach-chat.has-conversation>.coach-composer{width:calc(100% - 24px);margin:0 auto 10px}.coach-drawer .coach-list-head{height:77px}.coach-drawer .coach-list-body{padding:16px 12px}.coach-drawer .coach-thread{background:0 0;border:0}.coach-drawer .coach-thread.active{background:var(--bg-active,var(--accent-soft));box-shadow:none}.coach-drawer .coach-thread-select{min-height:51px}.coach-drawer-top strong{display:none}.coach-drawer .coach-delete{background:0 0;flex:none;display:block;position:static}.coach-drawer{padding-top:var(--safe-area-top);padding-left:var(--safe-area-left)}.coach-composer textarea{font-size:16px}}*{box-sizing:border-box}body{color:#17251e;background:#f5f2ea;margin:0;font-family:Manrope,Inter,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer;border:0}.app{--accent:#4c8760;--accent-dark:#315b40;--accent-soft:#e6f3e7;--surface:#fffefa;--soft:#f6f8f3;--field:#fcfbf7;--border:#deded5;--text:#17251e;--muted:#63716a;--shadow:#293b2e14;min-height:100vh;color:var(--text);background:#f5f2ea;display:flex}.app.dark{--accent:#76ad82;--accent-dark:#c0e5c7;--accent-soft:#203225;--surface:#1a211c;--soft:#222b24;--field:#121914;--border:#39453c;--text:#edf4ee;--muted:#aebcaf;--shadow:#0000003d;background:#111713}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;width:224px;padding:28px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:10px;padding:0 10px;font-size:11px;line-height:1.1;display:flex}.brand b{background:var(--accent);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.person{align-items:center;gap:10px;margin:42px 8px 22px;display:flex}.person i{background:var(--accent-soft);width:33px;height:33px;color:var(--accent-dark);border-radius:50%;place-items:center;font-size:12px;font-style:normal;font-weight:800;display:grid}.person b,.person small{display:block}.person small,.sidebar footer small{color:var(--muted);margin-top:3px;font-size:11px}.sidebar nav{gap:3px;display:grid}.sidebar nav button{color:var(--muted);text-align:left;background:0 0;border-radius:9px;align-items:center;gap:11px;padding:11px 12px;font-size:13px;font-weight:750;display:flex}.sidebar nav button i{text-align:center;width:18px;font-size:17px;font-style:normal}.sidebar nav button:hover,.sidebar nav button.active{background:var(--accent-soft);color:var(--accent-dark)}.sidebar footer{gap:16px;margin-top:auto;padding:12px 10px;display:grid}.switch{align-items:center;gap:8px;font-size:12px;font-weight:750;display:flex}.switch input{opacity:0;position:absolute}.switch span{background:#cfd8cf;border-radius:20px;width:36px;height:20px;display:block;position:relative}.switch span:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:all .2s;position:absolute;top:3px;left:3px}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{transform:translate(16px)}main{width:min(1180px,100% - 224px);margin-left:224px;padding:48px clamp(28px,5vw,72px) 70px}.head{justify-content:space-between;align-items:end;gap:25px;margin:0 0 32px;display:flex}.overline,.title{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font:600 11px/1.2 ui-monospace,Consolas,monospace}.head h1{letter-spacing:-.065em;color:var(--text);margin:0;font-size:clamp(38px,5vw,60px);line-height:1}.head h1 em{color:var(--accent);font-style:normal}.head>div>p:last-child{color:var(--muted);margin:12px 0 0;font-size:15px}.primary{color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 30%,transparent);background:linear-gradient(135deg,#326946,#79ad6b);border-radius:9px;padding:12px 15px;font-size:13px;font-weight:800}.primary:hover{transform:translateY(-1px)}.stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;display:grid}.stats article,.card,.prompt,.routine-folder,.logger article{background:var(--surface);border:1px solid var(--border);box-shadow:0 12px 30px var(--shadow);border-radius:16px}.stats article{padding:19px}.stats span,.stats small{color:var(--muted);font-size:12px;display:block}.stats strong{letter-spacing:-.05em;margin:8px 0;font-size:25px;display:block}.grid{grid-template-columns:.9fr 1.1fr;gap:14px;display:grid}.card{padding:25px}.weight{justify-content:space-between;align-items:center;gap:18px;margin-top:23px;display:flex}.weight strong{letter-spacing:-.06em;font-size:31px}.weight strong small{color:var(--muted);font-size:14px}.weight p{color:var(--muted);font-size:12px}.weight form{display:flex}.weight input,.folder input,.modal input,.modal select,.addexercise input{background:var(--field);color:var(--text);border:1px solid var(--border);border-radius:8px 0 0 8px;outline:none;padding:10px 11px}.weight input:focus,.folder input:focus,.modal input:focus,.modal select:focus,.addexercise input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.weight input{width:73px}.weight form button,.folder button{background:var(--accent-soft);color:var(--accent-dark);border-radius:0 8px 8px 0;padding:0 11px;font-size:12px;font-weight:800}.chart{height:150px;color:var(--muted);border-bottom:1px solid var(--border);background:repeating-linear-gradient(to bottom,transparent 0,transparent 49px,color-mix(in srgb,var(--border) 70%,transparent) 50px);place-items:center;margin-top:22px;font-size:12px;display:grid}.chart svg{width:100%;height:100%;padding:12px 0}.chart polyline{fill:none;stroke:var(--accent);stroke-width:2.4px;vector-effect:non-scaling-stroke}.legend{color:var(--muted);gap:15px;margin:20px 0;font-size:11px;display:flex}.legend i{background:var(--accent);border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.legend span+span i,.bar i+i{background:#ff8700}.bar>div:first-child{justify-content:space-between;font-size:12px;display:flex}.bar>div:first-child span{color:var(--muted)}.bar>div:last-child{height:13px;margin-top:7px;position:relative}.bar i{background:var(--accent);border-radius:8px;height:5px;position:absolute;left:0}.bar i+i{top:8px}.prompt{background:var(--soft);justify-content:space-between;align-items:center;margin-top:14px;padding:26px 28px;display:flex}.prompt h2{margin:0 0 5px;font-size:22px}.prompt span{color:var(--muted);font-size:13px}.folder{margin:-8px 0 22px;display:flex}.folder input{width:330px}.empty{text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:13px;padding:40px}.routine-folder{margin:15px 0;padding:23px}.routine-folder h2{margin:0 0 14px;font-size:19px}.routine-folder h2 small{color:var(--muted);font-size:12px;font-weight:500}.routine{background:var(--soft);border:1px solid var(--border);border-radius:11px;justify-content:space-between;align-items:center;margin-top:8px;padding:18px;display:flex}.routine h3{margin:0 0 6px}.routine p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:520px;margin:0;font-size:13px;overflow:hidden}.routine button{color:var(--accent-dark);background:0 0;margin-left:8px;font-size:12px;font-weight:700}.routine .small{color:#fff;padding:9px 11px}.add{color:var(--accent-dark);background:0 0;padding:16px 0 0;font-size:13px;font-weight:800}.back{z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f1611b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);width:min(620px,100%);max-height:90vh;color:var(--text);border:1px solid var(--border);border-radius:18px;padding:28px;overflow:auto;box-shadow:0 28px 80px #0008}.modal-head{justify-content:space-between;align-items:center;display:flex}.modal-head h2{margin:0}.modal-head button{background:var(--accent-soft);color:var(--accent-dark);border-radius:50%;width:32px;height:32px;font-size:23px}.modal>label{letter-spacing:.08em;color:var(--muted);gap:7px;margin-top:16px;font:700 11px/1.2 ui-monospace,Consolas,monospace;display:grid}.modal>label input,.modal>label select{border-radius:8px;width:100%}.search{border:1px solid var(--border);border-radius:9px;max-height:180px;margin-top:8px;overflow:auto}.search:empty{display:none}.search button,.addexercise button{text-align:left;background:var(--soft);width:100%;color:var(--accent-dark);border-bottom:1px solid var(--border);justify-content:space-between;padding:11px;display:flex}.search button:hover,.addexercise button:hover{background:var(--accent-soft)}.search small,.addexercise small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.items>div{border-bottom:1px solid var(--border);grid-template-columns:1fr 54px 54px auto;align-items:center;gap:8px;padding:11px 0;font-size:13px;display:grid}.items input{width:100%;padding:7px}.items button,.log-head button{color:#c46f7e;background:0 0;font-size:12px}.wide{width:100%;margin-top:22px}.session-name{width:100%;color:var(--text);letter-spacing:-.055em;background:0 0;border:0;padding:0;font-size:34px;font-weight:800}.logger{max-width:820px}.logger article{margin-bottom:13px;padding:23px}.log-head{justify-content:space-between;display:flex}.log-head h2{margin:0;font-size:20px}.log-head p{color:var(--muted);margin:6px 0 16px;font-size:12px}.setlabels,.set{grid-template-columns:70px 1fr 1fr;align-items:center;gap:9px;display:grid}.setlabels{color:var(--muted);letter-spacing:.08em;padding:8px 0;font:700 10px ui-monospace,Consolas,monospace}.set{padding:6px 0}.set input{background:var(--field);color:var(--text);border:1px solid var(--border);border-radius:8px;width:100%;padding:10px}.addset{color:var(--accent-dark);background:0 0;margin-top:10px;font-size:12px;font-weight:800}.addexercise{background:var(--surface);border:1px dashed var(--border);border-radius:12px;padding:14px}.addexercise input{border-radius:8px;width:100%}.toast,.error{z-index:10;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:9px;padding:12px 15px;position:fixed;top:18px;right:22px;box-shadow:0 12px 30px #0004}.error{color:#f2d9dc;background:#43262b}.mobile{display:none}@media (width<=760px){.sidebar{display:none}main{width:100%;margin:0;padding:31px 17px 86px}.head{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:25px}.head h1{font-size:39px}.stats,.grid{grid-template-columns:1fr}.stats{gap:9px}.prompt{flex-direction:column;align-items:flex-start;gap:16px}.folder input{width:100%}.routine{flex-direction:column;align-items:flex-start;gap:13px}.routine p{max-width:280px}.items>div{grid-template-columns:1fr 45px 45px}.items button{text-align:left;grid-column:1/-1}.session-name{font-size:28px}.modal{padding:20px}}.workspace{width:min(1120px,100vw - 280px)!important;margin-left:max(224px,50vw - 448px)!important;padding-inline:36px!important}.side-nav{gap:5px!important;display:grid!important}.side-link{appearance:none!important;color:var(--muted)!important;text-align:left!important;background:0 0!important;border:0!important;border-radius:9px!important;align-items:center!important;gap:11px!important;width:100%!important;padding:12px!important;font-size:13px!important;font-weight:750!important;line-height:1.2!important;display:flex!important}.side-link:hover,.side-link.active{background:var(--accent-soft)!important;color:var(--accent-dark)!important}.side-link i{text-align:center!important;width:18px!important;font-size:17px!important;font-style:normal!important}.chart-empty{border:1px dashed var(--border)!important;background:0 0!important;border-radius:10px!important;height:82px!important;margin-top:20px!important}.chart-empty span{color:var(--muted)!important;font-size:12px!important}.bar{margin:12px 0!important}.prompt{min-height:112px}.app.dark .side-link{color:var(--muted)!important}.app.dark .side-link.active{color:var(--accent-dark)!important}@media (width<=760px){.workspace{width:100%!important;margin:0!important;padding:31px 17px 86px!important}}.routine-intro{background:var(--surface);border:1px solid var(--border);border-radius:16px;justify-content:space-between;align-items:center;gap:22px;margin:-10px 0 16px;padding:20px 22px;display:flex}.routine-intro>div{grid-template-columns:34px auto;align-items:center;column-gap:11px;display:grid}.routine-intro>div span{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-dark);border-radius:50%;grid-row:span 2;place-items:center;font:700 11px ui-monospace,Consolas,monospace;display:grid}.routine-intro strong{font-size:14px}.routine-intro small{color:var(--muted);margin-top:3px;font-size:12px}.folder-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.folder-heading .overline{margin-bottom:6px}.folder-heading h2{margin:0}.secondary{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--accent-soft);color:var(--accent-dark);border-radius:8px;padding:10px 12px;font-size:12px;font-weight:800}.routine-days{gap:8px;display:grid}.day-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-dark)!important;margin-bottom:7px!important;font:700 10px ui-monospace,Consolas,monospace!important}.day-empty{border:1px dashed var(--border);color:var(--muted);border-radius:11px;padding:20px;font-size:13px}.routine-editor{width:min(800px,100%)}.builder-basics{grid-template-columns:1.4fr .8fr;gap:12px;display:grid}.builder-basics label,.add-exercise-label{color:var(--muted);letter-spacing:.09em;gap:7px;margin-top:18px;font:700 10px ui-monospace,Consolas,monospace;display:grid}.builder-basics input,.builder-basics select,.add-exercise-label input{border-radius:8px;width:100%}.builder-list{border:1px solid var(--border);border-radius:11px;margin-top:20px;overflow:hidden}.builder-list-head,.builder-item{grid-template-columns:minmax(150px,1fr) 62px 120px 105px 30px;align-items:center;gap:9px;display:grid}.builder-list-head{background:var(--soft);color:var(--muted);letter-spacing:.08em;padding:10px 12px;font:700 9px ui-monospace,Consolas,monospace}.builder-item{border-top:1px solid var(--border);padding:12px}.builder-item b,.builder-item small{display:block}.builder-item small{color:var(--muted);margin-top:3px;font-size:11px}.builder-item input{background:var(--field);width:100%;color:var(--text);border:1px solid var(--border);border-radius:7px;padding:8px}.builder-item>button{color:#c46f7e;background:0 0;border-radius:50%;width:28px;height:28px;font-size:20px}.rep-range{grid-template-columns:1fr 12px 1fr;align-items:center;gap:3px;display:grid}.rep-range span{text-align:center;color:var(--muted)}.builder-tip{background:var(--accent-soft);color:var(--accent-dark);border-radius:9px;margin:15px 0 0;padding:11px 13px;font-size:12px;line-height:1.45}@media (width<=650px){.routine-intro{flex-direction:column;align-items:flex-start}.routine-intro .folder{width:100%;margin:0}.builder-basics{grid-template-columns:1fr}.builder-list{overflow-x:auto}.builder-list-head,.builder-item{min-width:610px}.folder-heading{flex-direction:column}.secondary{width:100%}}.progress-chart{background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,color-mix(in srgb,var(--border) 70%,transparent) 40px);width:100%;height:120px;margin-top:12px}.progress-chart polyline{fill:none;stroke:var(--accent);stroke-width:2.5px;vector-effect:non-scaling-stroke}.progress-chart circle{fill:var(--accent)}.progress-labels{justify-content:space-between;display:flex}@media (width<=760px){.progress-chart{height:104px}.rest-timer{top:8px}.logger-actions{justify-content:space-between}.rest-button{min-height:38px}.previous-performance{margin-top:10px}.previous-performance b{line-height:1.45}}.rest-editor{width:min(900px,100%)}.rest-builder-list{border:1px solid var(--border);border-radius:11px;margin-top:20px;overflow:hidden}.rest-builder-head,.rest-builder-row{grid-template-columns:minmax(220px,1fr) 76px 184px 180px 32px;align-items:center;gap:10px;display:grid}.rest-builder-head{background:var(--soft);color:var(--muted);letter-spacing:.09em;padding:11px 14px;font:700 9px ui-monospace,Consolas,monospace}.rest-builder-row{border-top:1px solid var(--border);padding:13px 14px}.rest-builder-row b,.rest-builder-row small{display:block}.rest-builder-row small{color:var(--muted);margin-top:3px;font-size:11px}.rest-builder-row input,.rest-builder-row select{background:var(--field);width:100%;min-height:40px;color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px}.rest-reps{grid-template-columns:1fr 12px 1fr;align-items:center;gap:5px;display:grid}.rest-reps span{text-align:center;color:var(--muted)}.rest-builder-row>button{color:#bd6c78;background:0 0;border-radius:50%;width:30px;height:30px;font-size:21px}.routine .primary.small{box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 28%,transparent);background:linear-gradient(135deg,#326946,#79ad6b);margin-left:10px;color:#fff!important}.routine>div:last-child{justify-content:flex-end;align-items:center;gap:6px;display:flex}.routine>div:last-child button{margin-left:0}@media (width<=760px){.rest-builder-list{overflow-x:auto}.rest-builder-head,.rest-builder-row{min-width:760px}.routine>div:last-child{grid-template-columns:1fr 1fr;display:grid}.routine>div:last-child .primary.small{grid-column:1/-1;margin:0}}.rest-time-field{gap:8px;min-width:0;display:grid}.custom-rest-time{grid-template-columns:1fr 1fr;gap:8px;display:grid}.custom-rest-time label{min-width:0;display:block;position:relative}.rest-builder-row .custom-rest-time input{-moz-appearance:textfield;padding-right:34px;font-size:14px}.rest-builder-row .custom-rest-time input::-webkit-inner-spin-button{appearance:none;margin:0}.rest-builder-row .custom-rest-time input::-webkit-outer-spin-button{appearance:none;margin:0}.custom-rest-time span{color:var(--muted);pointer-events:none;font-size:10px;font-weight:700;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.mobile-rest-builder,.mobile-builder-save{display:none}.weight-point{cursor:pointer;outline:none}.chart .weight-point-hit{fill:#0000;stroke:#0000;pointer-events:all}.chart .weight-point-dot{fill:var(--accent);stroke:var(--surface);stroke-width:.8px;pointer-events:none;transition:r .16s,filter .16s}.weight-point:hover .weight-point-dot,.weight-point:focus .weight-point-dot{r:2.2;filter:drop-shadow(0 0 2px var(--accent))}.weight-point-popover{z-index:6;border:1px solid var(--border);background:var(--surface);min-width:104px;color:var(--text);pointer-events:none;border-radius:9px;gap:2px;padding:8px 10px;display:grid;position:absolute;transform:translate(-50%,calc(-100% - 10px));box-shadow:0 10px 28px #0000003d}.weight-point-popover.at-start{transform:translateY(calc(-100% - 10px))}.weight-point-popover.at-end{transform:translate(-100%,calc(-100% - 10px))}.weight-point-popover b{font-size:13px}.weight-point-popover small{color:var(--muted);white-space:nowrap;font-size:10px}.weight-point-popover:has(form){pointer-events:auto;width:174px;padding:10px}.weight-point-popover form,.weight-point-popover label{gap:7px;display:grid}.weight-point-popover label{color:var(--muted);font-size:10px;font-weight:700}.weight-point-popover label>span{color:var(--muted);align-items:center;gap:5px;display:flex}.weight-point-popover input{border:1px solid var(--border);background:var(--field);width:100%;min-width:0;color:var(--text);border-radius:7px;outline:none;padding:7px 8px;font-size:14px}.weight-point-popover input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.weight-point-popover form>div{grid-template-columns:1fr 1fr;gap:6px;display:grid}.weight-point-popover button{background:var(--soft);min-height:30px;color:var(--muted);border-radius:6px;font-size:10px;font-weight:800}.weight-point-popover button:last-child{background:var(--accent-soft);color:var(--accent-dark)}.week-planner{background:var(--surface);border:1px solid var(--border);border-radius:15px;max-width:820px;margin:-10px 0 18px;padding:20px}.week-planner>label{color:var(--muted);letter-spacing:.08em;gap:6px;font:700 10px ui-monospace,Consolas,monospace;display:grid}.week-planner input,.week-planner select{background:var(--field);min-height:42px;color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 10px}.week-planner>div{grid-template-columns:repeat(7,1fr);gap:8px;margin:16px 0;display:grid}.week-planner>div label{gap:6px;font-size:11px;font-weight:800;display:grid}.week-planner>div span{color:var(--muted)}.calendar-controls{justify-content:space-between;align-items:center;max-width:1000px;margin:0 0 12px;display:flex}.calendar-controls button{background:var(--accent-soft);color:var(--accent-dark);border-radius:8px;padding:9px 12px;font-size:12px;font-weight:800}.calendar-controls span{color:var(--muted);font-size:13px}.month-grid{background:var(--surface);border:1px solid var(--border);max-width:1000px;box-shadow:0 12px 30px var(--shadow);border-radius:16px;padding:12px}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.calendar-weekdays span{color:var(--muted);text-align:center;letter-spacing:.08em;padding:5px;font:700 10px ui-monospace,Consolas,monospace}.calendar-days>i{min-height:106px}.calendar-day{border:1px solid var(--border);background:var(--soft);border-radius:10px;min-height:106px;padding:9px}.calendar-day>span{color:var(--muted);font-size:12px}.calendar-day>div{gap:4px;margin-top:8px;display:grid}.calendar-day b{font-size:12px;line-height:1.25}.calendar-day small{color:var(--muted);font-size:10px}.calendar-day button{background:var(--accent);color:#fff;border-radius:6px;justify-self:start;padding:5px 8px;font-size:10px;font-weight:800}.calendar-day.completed{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.calendar-day.completed small{color:var(--accent-dark)}.calendar-day.missed{opacity:.58;border-style:dashed}@media (width<=760px){.week-planner{padding:15px}.week-planner>div{grid-template-columns:1fr 1fr}.calendar-controls span{text-align:center;max-width:110px}.month-grid{padding:8px;overflow-x:auto}.calendar-weekdays,.calendar-days{min-width:650px}.calendar-day,.calendar-days>i{min-height:92px}}.side-nav .side-link:nth-child(5) i{border:2px solid;border-radius:3px;position:relative;width:17px!important;height:16px!important;font-size:0!important}.side-nav .side-link:nth-child(5) i:before{content:"";border-top:2px solid;position:absolute;top:3px;left:-2px;right:-2px}.side-nav .side-link:nth-child(5) i:after{content:"··";letter-spacing:1px;font:900 12px/1 ui-monospace,monospace;position:absolute;top:3px;left:2px}@media (width<=760px){.month-grid{border-radius:14px;width:100%;padding:5px;overflow:hidden}.calendar-weekdays,.calendar-days{gap:3px;width:100%;min-width:0}.calendar-weekdays span{letter-spacing:0;padding:6px 0;font-size:9px}.calendar-days>i,.calendar-day{min-width:0;min-height:98px}.calendar-day{border-radius:8px;padding:6px}.calendar-day>span{font-size:11px}.calendar-day>div{gap:3px;min-width:0;margin-top:7px}.calendar-day b{text-overflow:ellipsis;font-size:11px;line-height:1.18;overflow:hidden}.calendar-day small{font-size:9px}.calendar-day button{max-width:100%;padding:5px 6px;font-size:10px}.calendar-controls{gap:7px}.calendar-controls button{padding:9px 10px}.calendar-controls span{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.head:has(+.calendar-controls) h1{font-size:clamp(34px,10vw,44px)}}@media (width<=430px){.calendar-weekdays span{font-size:0}.calendar-weekdays span:first-letter{font-size:10px}.calendar-days>i,.calendar-day{min-height:64px}.calendar-day{padding:5px}.calendar-day>div{margin-top:4px}.calendar-day b{display:none}.calendar-day small{font-size:0}.calendar-day.completed small:after{content:"✓";color:var(--accent-dark);font-size:12px}.calendar-day.upcoming small:after{content:"•";color:var(--accent);font-size:18px}.calendar-day.missed small:after{content:"–";font-size:14px}.calendar-day button{border-radius:50%;width:22px;height:22px;padding:0;font-size:0}.calendar-day button:after{content:"→";font-size:13px}.calendar-controls button{width:42px;height:38px;font-size:0}.calendar-controls button:first-child:after{content:"←";font-size:17px}.calendar-controls button:last-child:after{content:"→";font-size:17px}}.calendar-day.today{outline:2px solid var(--accent);outline-offset:2px;background:color-mix(in srgb,var(--accent-soft) 52%,var(--surface))}.calendar-day.today>span{background:var(--accent);color:#fff;border-radius:50%;place-items:center;min-width:22px;height:22px;font-weight:900;display:inline-grid}.calendar-day.today.completed{outline-color:var(--accent-dark);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.calendar-day.completed b:after{content:" ✓";color:var(--accent-dark)}.calendar-day:not(.today) button{display:none}.calendar-day.completed{cursor:pointer}.calendar-day.completed:hover{box-shadow:0 8px 18px var(--shadow);transform:translateY(-2px)}.calendar-editor{z-index:40;align-items:start;overflow:auto}.calendar-editor-panel{background:var(--surface);border:1px solid var(--border);width:min(900px,100%);color:var(--text);border-radius:18px;margin:24px auto;padding:26px;position:relative}.calendar-editor-panel .workspace{width:auto!important;margin:0!important;padding:0!important}.calendar-editor-panel .logger{max-width:none}.calendar-editor-close{z-index:2;background:var(--accent-soft);width:34px;height:34px;color:var(--accent-dark);border-radius:50%;font-size:23px;position:absolute;top:14px;right:16px}@media (width<=760px){.calendar-editor{align-items:end;padding:0}.calendar-editor-panel{border-radius:18px 18px 0 0;width:100%;max-height:94dvh;margin:0;padding:18px 14px;overflow:auto}.calendar-editor-panel .head{padding-right:42px}}.calendar-editor,.calendar-editor-panel{scrollbar-width:none}.calendar-editor::-webkit-scrollbar{display:none}.calendar-editor-panel::-webkit-scrollbar{display:none}.calendar-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:1000px;margin:-12px 0 20px;display:grid}.calendar-facts article{background:var(--surface);border:1px solid var(--border);box-shadow:0 8px 20px var(--shadow);border-radius:13px;padding:15px 17px}.calendar-facts span,.calendar-facts small{color:var(--muted);display:block}.calendar-facts span{letter-spacing:.08em;font:700 10px ui-monospace,Consolas,monospace}.calendar-facts b{letter-spacing:-.045em;margin:6px 0 3px;font-size:24px;display:block}.calendar-facts small{font-size:11px}@media (width<=430px){.calendar-facts{grid-template-columns:1fr 1fr;gap:7px;margin:-7px 0 14px}.calendar-facts article{padding:11px}.calendar-facts b{font-size:19px}.calendar-facts small{font-size:10px;line-height:1.25}}.stats strong>span{letter-spacing:inherit;color:inherit;font:inherit!important}.modal{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 68%,var(--border)) transparent}.modal::-webkit-scrollbar{width:10px}.modal::-webkit-scrollbar-track{background:0 0;margin:14px 0}.modal::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:3px solid var(--surface);border-radius:999px;min-height:48px}.modal::-webkit-scrollbar-thumb:hover{background:var(--accent)}@keyframes dashboard-sheet-cue{0%,to{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 20%,transparent);transform:translateY(0)}50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 0%,transparent);transform:translateY(4px)}}@media (width>=761px){main.dashboard-workspace{height:100dvh!important;padding-bottom:22px!important;overflow:hidden!important}.dashboard-shell{height:100%;position:relative;overflow:hidden}.dashboard-sheet-trigger{z-index:5;border:1px solid color-mix(in srgb,var(--accent) 46%,var(--border));background:var(--surface);width:34px;height:34px;color:var(--accent-dark);box-shadow:0 8px 20px var(--shadow);border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.dashboard-sheet-trigger i{font-size:18px;font-style:normal;line-height:1;animation:1.7s ease-in-out infinite dashboard-sheet-cue}.dashboard-sheet{z-index:8;background:var(--surface);border:1px solid var(--border);box-shadow:0 -12px 0 var(--soft),0 24px 60px var(--shadow);opacity:0;pointer-events:none;border-radius:18px;justify-content:space-between;align-items:center;gap:24px;padding:26px 28px;transition:transform .5s cubic-bezier(.22,.8,.25,1),opacity .25s;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(calc(100% + 28px))}.dashboard-sheet h2{margin:0 0 5px;font-size:22px}.dashboard-sheet span{color:var(--muted);font-size:13px}.dashboard-shell.session-open .dashboard-sheet{opacity:1;pointer-events:auto;transform:translateY(0)}.dashboard-shell.session-open .dashboard-sheet-trigger{opacity:0;pointer-events:none;transition:opacity .16s}.dashboard-shell>.prompt{display:none!important}.dashboard-shell:not(.session-open) .dashboard-sheet{visibility:hidden}.dashboard-shell.session-open .dashboard-sheet{visibility:visible}main.workspace:has(.month-grid):not(:has(.week-planner)){height:100dvh;overflow:hidden;padding-top:clamp(18px,2.8vh,32px)!important;padding-bottom:14px!important}.workspace:has(.month-grid):not(:has(.week-planner)) .head{margin-bottom:clamp(10px,1.6vh,16px)}.workspace:has(.month-grid):not(:has(.week-planner)) .head h1{font-size:clamp(34px,3.5vw,48px)}.workspace:has(.month-grid):not(:has(.week-planner)) .head .overline{margin-bottom:7px}.workspace:has(.month-grid):not(:has(.week-planner)) .head>div>p:last-child{margin-top:8px;font-size:14px}.workspace:has(.month-grid):not(:has(.week-planner)) .head .primary{padding:10px 13px}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-controls{height:42px;margin:0 0 8px}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-controls button{padding:8px 11px}.workspace:has(.month-grid):not(:has(.week-planner)) .month-grid{flex-direction:column;height:calc(100dvh - clamp(360px,28vh,470px));padding:9px;display:flex}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-weekdays{flex:0 0 25px}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-days{flex:1;grid-auto-rows:minmax(0,1fr);min-height:0}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-days>i{min-height:0}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day{min-height:0}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day{padding:clamp(7px,1vh,10px);overflow:hidden}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day>div{margin-top:clamp(4px,.7vh,8px)}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day b{font-size:clamp(11px,.9vw,12px)}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day small{font-size:10px}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day.today{outline-offset:1px}.workspace:has(.month-grid):not(:has(.week-planner)) .month-grid{height:calc(100dvh - clamp(290px,23vh,360px))}main.workspace:has(.routine-intro){height:auto;min-height:100dvh;overflow:visible;padding-top:clamp(18px,2.8vh,32px)!important;padding-bottom:70px!important}.workspace:has(.routine-intro) .routine-intro{min-height:0;margin:0 0 10px;padding:13px 17px}main.workspace:has(.routine-intro){padding-top:clamp(28px,3.5vh,40px)!important;padding-bottom:70px!important}.workspace:has(.routine-intro) .head{margin-bottom:18px}.workspace:has(.routine-intro) .head h1{font-size:clamp(38px,4.2vw,56px)}.workspace:has(.routine-intro) .head .overline{margin-bottom:9px}.workspace:has(.routine-intro) .head>div>p:last-child{margin-top:10px;font-size:15px}.workspace:has(.routine-intro) .head .primary{padding:12px 15px}.workspace:has(.routine-intro) .routine-intro{margin:0 0 13px;padding:17px 20px}.workspace:has(.routine-intro) .routine-intro>div span{width:31px;height:31px}.workspace:has(.routine-intro) .routine-intro strong{font-size:14px}.workspace:has(.routine-intro) .routine-intro small{font-size:12px}.workspace:has(.routine-intro) .folder input{min-height:42px;padding-block:10px}.workspace:has(.routine-intro) .folder button{min-height:42px}.workspace:has(.routine-intro) .routine-folder{margin:12px 0;padding:19px 21px}.workspace:has(.routine-intro) .folder-heading .overline{margin-bottom:6px}.workspace:has(.routine-intro) .folder-heading h2{font-size:19px}.workspace:has(.routine-intro) .folder-actions .secondary{padding:9px 11px}.workspace:has(.routine-intro) .routine{margin-top:8px;padding:15px 17px}.workspace:has(.routine-intro) .routine h3{margin-bottom:5px;font-size:18px}.workspace:has(.routine-intro) .routine p{font-size:13px}.workspace:has(.routine-intro) .day-tag{margin-bottom:6px!important}.workspace:has(.routine-intro) .routine .primary.small{padding:9px 11px}.workspace:has(.routine-intro) .day-empty{padding:17px;font-size:13px}}.dashboard-weight{position:relative;overflow:hidden}.card-switch{color:var(--accent-dark);background:0 0;border-radius:7px;padding:5px 7px;font-size:10px;font-weight:800;position:absolute;top:20px;right:20px}.card-switch:hover{background:var(--accent-soft)}.weight-card-viewport{position:relative;overflow:hidden}.weight-card-panel{width:100%;transition:transform .42s cubic-bezier(.22,.8,.25,1),opacity .28s}.weight-card-viewport.show-map .weight-panel{opacity:0;transform:translate(-110%)}.map-panel{opacity:0;display:grid;position:absolute;inset:0;transform:translate(110%)}.weight-card-viewport.show-map .map-panel{opacity:1;transform:translate(0)}.body-map{grid-template-rows:auto 1fr;grid-template-columns:1fr 1.08fr;gap:8px;height:100%;min-height:250px;display:grid;position:relative}.body-map-copy{align-self:start;padding-top:19px}.body-map-copy span{color:var(--muted);letter-spacing:.1em;font:700 10px ui-monospace,Consolas,monospace;display:block}.body-map-copy b{letter-spacing:-.045em;margin:5px 0;font-size:18px;display:block}.body-map-copy small{max-width:120px;color:var(--muted);font-size:11px;line-height:1.35;display:block}.body-map-figure{isolation:isolate;grid-area:1/2/span 2;min-height:0;position:relative;overflow:hidden}.body-map-figure img{object-fit:contain;mix-blend-mode:screen;filter:hue-rotate(64deg)saturate(.85);width:100%;height:94%;position:absolute;inset:3% 0 0}.body-map-silhouette{z-index:-1;border:1px solid var(--border);background:var(--soft);color:#0000;border-radius:45% 45% 35% 35%/24% 24% 55% 55%;width:58px;height:128px;position:absolute;inset:42% auto auto 50%;transform:translate(-50%)}.body-map-silhouette:before{content:"";border:1px solid var(--border);background:var(--soft);border-radius:50%;width:26px;height:26px;position:absolute;top:-29px;left:15px}.body-map-list{grid-column:1;align-self:end;gap:4px;display:grid}.body-map-list span{color:var(--muted);white-space:nowrap;justify-content:space-between;gap:6px;font-size:10px;display:flex}.body-map-list b{color:var(--accent-dark);font-weight:800}.body-map-fallback{width:100%;height:96%;position:absolute;inset:2% 0 0}.body-map-base{fill:var(--soft);stroke:var(--border);stroke-width:1.5px}.body-region{fill:var(--accent);stroke:var(--surface);stroke-width:2.2px;stroke-linejoin:round;transition:opacity .35s}.body-back{fill:var(--accent-dark);stroke-dasharray:2 1}.body-map-figure img.wger-muscle-layer{mix-blend-mode:screen;filter:hue-rotate(120deg)saturate(.7)brightness(1.1);transition:opacity .35s}.body-map-fallback.base-only .body-region{opacity:0!important}.body-map-figure img.wger-body-base{opacity:.34;mix-blend-mode:normal;filter:none;opacity:.3;height:98%;inset:1% 0 0}.body-map-figure img.wger-muscle-layer{mix-blend-mode:normal;filter:none}.body-map-view-toggle{border:1px solid var(--border);background:var(--soft);border-radius:8px;width:max-content;margin-top:13px;padding:3px;display:flex}.body-map-view-toggle button{color:var(--muted);background:0 0;border-radius:5px;padding:4px 7px;font-size:10px;font-weight:800}.body-map-view-toggle button.active{background:var(--surface);color:var(--accent-dark);box-shadow:0 1px 4px var(--shadow)}.body-map-test{color:var(--muted);text-underline-offset:3px;background:0 0;margin-top:7px;padding:4px 0;font-size:9px;font-weight:800;text-decoration:underline}.body-map-test:hover,.body-map-test.active{color:var(--accent-dark)}.body-map-test:disabled{opacity:.55;cursor:wait}.body-map-figure{clip-path:inset(1px)}.body-map-figure,.body-map-figure img{box-shadow:none!important;background:0 0!important;border:0!important;outline:0!important}.app.dark .body-map-figure img.wger-body-base{opacity:.34;filter:grayscale()sepia(.16)hue-rotate(70deg)saturate(.48)brightness(.72)contrast(.86)!important}.workout-head-actions{align-items:center;gap:9px;display:flex}.cancel-workout{color:#a14552;background:0 0;border:1px solid #d9a5ab;border-radius:9px;min-height:42px;padding:9px 12px;font-weight:800}.muscle-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.metric-toggle{border:1px solid var(--border);background:var(--soft);border-radius:9px;flex-shrink:0;padding:3px;display:flex}.metric-toggle button{min-height:32px;color:var(--muted);background:0 0;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:800}@media (width>=761px){main.dashboard-workspace{min-height:0;height:100dvh!important;padding-bottom:28px!important;overflow:hidden!important}.dashboard-shell{height:100%;min-height:0;padding-bottom:0;overflow:hidden}.dashboard-workspace .grid .card{padding-block:22px}.dashboard-workspace .dashboard-volume .legend{margin-block:16px}.dashboard-workspace .dashboard-volume .bar{margin:10px 0!important}}.metric-toggle button{transition:background-color .2s,color .2s,box-shadow .2s}.dashboard-volume .bar i{will-change:transform}.dashboard-volume{height:390px;min-height:390px;max-height:390px;overflow:hidden;padding-bottom:30px!important}.dashboard-volume:not(:has(.metric-toggle button:nth-child(2).active)) .legend{margin-bottom:12px}.dashboard-volume:not(:has(.metric-toggle button:nth-child(2).active)) .bar{margin:8px 0!important}.dashboard-volume:has(.metric-toggle button:nth-child(2).active){grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:0 28px;display:grid}:is(.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .muscle-card-head,.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .legend,.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .empty){grid-column:1/-1}.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .legend{margin:12px 0 4px}.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .bar{min-width:0;margin:5px 0!important}.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .bar>div:first-child{font-size:11px;line-height:1.15}.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .bar>div:last-child{height:9px;margin-top:4px}.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .bar i{height:4px}.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .bar i+i{top:5px}.dashboard-volume .legend span:first-child i,.dashboard-volume .bar i:first-child{background:#ff8700}.dashboard-volume .legend span:nth-child(2) i,.dashboard-volume .bar i:nth-child(2){background:var(--accent)}.dashboard-volume .legend span{flex:none;align-items:center;visibility:visible!important;opacity:1!important;display:inline-flex!important}.dashboard-volume .legend span:nth-child(2){color:var(--muted)!important}.calendar-editor{align-items:center;overflow:hidden}.calendar-editor-panel{flex-direction:column;height:min(900px,100dvh - 48px);max-height:calc(100dvh - 48px);margin:0 auto;display:flex;overflow:hidden}.calendar-editor-panel>.head{flex:none;padding-right:42px}.calendar-editor-panel>.logger{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;flex:1;min-height:0;padding:0 10px 18px 0;overflow-y:auto}.calendar-editor-panel>.logger::-webkit-scrollbar{width:8px}.calendar-editor-panel>.logger::-webkit-scrollbar-track{background:0 0;margin:10px 0}.calendar-editor-panel>.logger::-webkit-scrollbar-thumb{background:var(--accent);border:2px solid var(--surface);border-radius:999px}.calendar-editor-panel>.logger>.log-exercise:last-of-type{margin-bottom:0}@media (width<=760px){.calendar-editor{align-items:center;padding:12px}.calendar-editor-panel{border-radius:18px;width:100%;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);margin:0;padding:18px 14px}.calendar-editor-panel>.logger{-webkit-overflow-scrolling:touch;padding-bottom:14px;padding-right:5px}}.backend-saving{z-index:100;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--muted);box-shadow:0 7px 20px var(--shadow);letter-spacing:.02em;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:10px;font-weight:800;transition:opacity .18s,transform .18s;display:flex;position:fixed;bottom:18px;right:18px;transform:translateY(6px)}.backend-saving.visible{opacity:.88;transform:translateY(0)}.backend-saving i{border:2px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-top-color:var(--accent);border-radius:50%;width:12px;height:12px;animation:.72s linear infinite backend-saving-spin}@keyframes backend-saving-spin{to{transform:rotate(360deg)}}@media (width<=760px){.backend-saving{right:12px;bottom:calc(84px + env(safe-area-inset-bottom));padding:6px 9px}.backend-saving i{width:11px;height:11px}}.backend-saving.failed{background:color-mix(in srgb,#43262b 92%,var(--surface));color:#f2d9dc;opacity:1;border-color:#bd6c78}.backend-saving.failed i{background:#d9818e;border:0;animation:none}.backend-saving.failed i:after{content:"!";color:#43262b;place-items:center;height:12px;font-size:9px;font-style:normal;font-weight:900;display:grid}main.dashboard-workspace{width:calc(100% - 224px);max-width:none}.dashboard-workspace .dashboard-shell{max-width:1320px;margin:0 auto}.dashboard-workspace .head{align-items:center;margin-bottom:26px}.dashboard-workspace .head h1{letter-spacing:-.045em;font-size:clamp(27px,2.6vw,38px);line-height:1.1}.dashboard-workspace .head>div>p:last-child{margin-top:7px;font-size:15px}.dashboard-workspace .primary.dashboard-log{background:var(--accent);min-height:46px;box-shadow:none;color:#fff;padding:0 18px;transition:background-color .15s,transform .15s}.dashboard-workspace .primary.dashboard-log:hover{background:color-mix(in srgb,var(--accent) 86%,#fff);transform:translateY(-1px)}.dashboard-metrics{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:30px;padding:18px 0;display:grid}.dashboard-metrics article{min-width:0;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0 24px}.dashboard-metrics article:first-child{padding-left:0}.dashboard-metrics article+article{border-left:1px solid var(--border)}.dashboard-metrics span,.dashboard-metrics small{color:var(--muted);font-size:12px;display:block}.dashboard-metrics strong{letter-spacing:-.045em;margin:6px 0 5px;font-size:clamp(23px,2vw,29px);display:block}.dashboard-metrics small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dashboard-analytics{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1.25fr) minmax(340px,.9fr);gap:30px;padding-bottom:30px;display:grid}.dashboard-weight,.dashboard-volume{height:auto!important;min-height:360px!important;max-height:none!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;padding:0!important;overflow:visible!important}.dashboard-section-head,.muscle-card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-section-head h2,.muscle-card-head h2,.section-heading h2{letter-spacing:-.035em;margin:0;font-size:20px}.dashboard-section-head p,.muscle-card-head p{color:var(--muted);margin:5px 0 0;font-size:13px}.dashboard-section-head form{height:38px;display:flex}.dashboard-section-head input{border:1px solid var(--border);background:var(--field);width:76px;color:var(--text);border-radius:8px 0 0 8px;outline:none;padding:8px 10px}.dashboard-section-head input:focus{border-color:var(--accent)}.dashboard-section-head form button{background:var(--accent-soft);color:var(--accent-dark);border-radius:0 8px 8px 0;padding:0 12px;font-size:12px;font-weight:800}.dashboard-weight .chart{border-bottom:1px solid var(--border);background:repeating-linear-gradient(to bottom,transparent 0,transparent 66px,color-mix(in srgb,var(--border) 48%,transparent) 67px);height:270px;margin-top:22px;padding-right:62px;position:relative}.dashboard-weight .chart svg{width:calc(100% - 62px);height:100%;padding:12px 0;overflow:visible}.dashboard-weight .chart .weight-curve{fill:none;stroke:var(--accent);stroke-width:2.2px;vector-effect:non-scaling-stroke}.dashboard-weight .chart .weight-area{fill:url(#weight-area);stroke:none}.dashboard-weight .chart polyline{display:none}.first-weight{border:1px dashed var(--border);background:color-mix(in srgb,var(--soft) 60%,transparent);border-radius:10px;align-content:center;place-items:start;height:270px;margin-top:22px;padding:34px;display:grid}.first-weight strong{letter-spacing:-.05em;font-size:34px}.first-weight b{margin-top:12px;font-size:14px}.first-weight span{color:var(--muted);margin-top:4px;font-size:13px}.metric-toggle{background:0 0}.metric-toggle button.active{background:var(--accent-soft);box-shadow:none}.muscle-rows{gap:16px;margin-top:30px;display:grid}.muscle-row{grid-template-columns:86px minmax(70px,1fr) 78px 44px;align-items:center;gap:12px;font-size:12px;display:grid}.muscle-row>b{text-overflow:ellipsis;overflow:hidden}.muscle-row>div{background:color-mix(in srgb,var(--border) 62%,transparent);border-radius:5px;height:10px;overflow:hidden}.muscle-row>div i{border-radius:inherit;background:var(--accent);height:100%;display:block}.muscle-row>span{text-align:right;color:var(--muted);white-space:nowrap}.muscle-row>small{color:var(--accent-dark);text-align:right}.dashboard-empty{border:1px dashed var(--border);text-align:center;border-radius:10px;align-content:center;place-items:center;min-height:270px;margin-top:22px;padding:30px;display:grid}.dashboard-empty span{max-width:280px;color:var(--muted);margin:7px 0 15px;font-size:13px;line-height:1.5}.dashboard-empty button{background:var(--accent-soft);color:var(--accent-dark);border-radius:8px;padding:9px 13px;font-size:12px;font-weight:800}.dashboard-lower{grid-template-columns:minmax(0,1.55fr) minmax(220px,.72fr) minmax(220px,.8fr);gap:0;margin-top:26px;display:grid}.dashboard-lower>article{min-width:0;padding:0 24px}.dashboard-lower>article:first-child{padding-left:0}.dashboard-lower>article+article{border-left:1px solid var(--border)}.dashboard-lower>article:last-child{padding-right:0}.section-heading{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.section-heading h2{font-size:16px}.section-heading span{color:var(--accent-dark);font-size:11px;font-weight:700}.recent-row{border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:7px;grid-template-columns:54px minmax(120px,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:7px 10px;transition:background .15s;display:grid}.recent-row:hover{background:var(--soft)}.recent-row time,.upcoming-row time{color:var(--muted);font-size:11px}.recent-row div{min-width:0}.recent-row b,.recent-row small{display:block}.recent-row b{font-size:13px}.recent-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;overflow:hidden}.recent-row>span{color:var(--muted);white-space:nowrap;font-size:11px}.week-row,.upcoming-row{border-bottom:1px solid color-mix(in srgb,var(--border) 62%,transparent);grid-template-columns:42px 1fr 18px;align-items:center;min-height:34px;font-size:12px;display:grid}.week-row>b,.upcoming-row>b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.week-row i{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:17px;height:17px;font-size:10px;font-style:normal;display:grid}.upcoming-row{grid-template-columns:50px 1fr 14px;min-height:45px}.upcoming-row i{color:var(--muted);font-size:18px;font-style:normal}.lower-empty{min-height:100px;color:var(--muted);text-align:center;place-items:center;padding:18px;font-size:12px;display:grid}@media (width>=761px){main.dashboard-workspace{height:auto!important;min-height:100vh!important;padding-top:38px!important;padding-bottom:54px!important;overflow:visible!important}.dashboard-workspace .dashboard-shell{height:auto!important;overflow:visible!important}}@media (width<=1050px) and (width>=761px){.dashboard-analytics{grid-template-columns:1fr}.dashboard-weight,.dashboard-volume{min-height:340px!important}.dashboard-lower{grid-template-columns:1.25fr .75fr}.dashboard-lower .upcoming-workouts{border-top:1px solid var(--border);border-left:0;grid-column:1/-1;margin-top:24px;padding:22px 0 0}}.dashboard-weight .chart{--chart-axis-width:62px;padding-right:var(--chart-axis-width);display:block;overflow:visible}.dashboard-weight .chart svg{inset:0 var(--chart-axis-width) 0 0;width:calc(100% - var(--chart-axis-width));height:100%;padding:12px 0 14px;position:absolute}.dashboard-weight .chart-axis{width:54px;color:var(--muted);text-align:right;white-space:nowrap;flex-direction:column;justify-content:space-between;font-size:10px;display:flex;position:absolute;top:12px;bottom:14px;right:0}.dashboard-weight .chart-dates{right:var(--chart-axis-width);color:var(--muted);justify-content:space-between;font-size:10px;display:flex;position:absolute;bottom:-21px;left:0}.dashboard-weight .weight-point-popover{z-index:8}@media (width>=1051px){:is(html:has(main.dashboard-workspace),body:has(main.dashboard-workspace)){height:100%;overflow:hidden}main.dashboard-workspace{height:100dvh!important;min-height:0!important;padding-top:clamp(24px,3.3vh,38px)!important;padding-bottom:clamp(20px,3vh,34px)!important;overflow:hidden!important}.dashboard-workspace .dashboard-shell{grid-template-rows:auto auto minmax(290px,1fr) auto;min-height:0;display:grid;height:100%!important;overflow:hidden!important}.dashboard-workspace .head{margin-bottom:clamp(16px,2.2vh,26px)}.dashboard-metrics{margin-bottom:clamp(18px,2.8vh,30px);padding:clamp(18px,2.3vh,26px) 0}.dashboard-analytics{min-height:0;padding-bottom:clamp(18px,2.8vh,30px)}.dashboard-weight,.dashboard-volume{min-height:0!important}.dashboard-weight{flex-direction:column;min-width:0;display:flex}.dashboard-weight .chart{flex:1;height:auto;min-height:210px;margin-top:18px}.muscle-rows{gap:clamp(9px,1.4vh,16px);margin-top:clamp(18px,2.5vh,30px)}.dashboard-lower{min-height:0;margin-top:clamp(17px,2.4vh,26px)}.recent-row{min-height:clamp(44px,5.3vh,58px)}.week-row{min-height:clamp(27px,3.1vh,34px)}.upcoming-row{min-height:clamp(34px,4.1vh,45px)}}.app:not(.dark){--bg-main:#f3f5f0;--bg-sidebar:#e8eee8;--bg-surface:#fbfcf9;--bg-surface-hover:#eef3ed;--bg-active:#d8e7da;--border-subtle:#24432e26;--border-medium:#24432e45;--text-primary:#17251d;--text-secondary:#506158;--text-muted:#718078;--accent:#5f936d;--accent-bright:#477d57;--accent-deep:#d8e8da;--accent-muted:#5f936d24;--positive:#317a47;--negative:#b84f3d;--surface:var(--bg-surface);--soft:#edf2ec;--field:#f7f9f5;--border:var(--border-subtle);--text:var(--text-primary);--muted:var(--text-secondary);--accent-dark:#386e49;--accent-soft:var(--accent-muted);--shadow:#1f372612;background:var(--bg-main);color:var(--text-primary)}.app:not(.dark) .sidebar{background:var(--bg-sidebar);border-color:var(--border-subtle)}.app:not(.dark) main{background:radial-gradient(circle at 75% 8%,#709d7a14,transparent 32%),var(--bg-main)}.app:not(.dark) .brand b{background:var(--accent);color:#fff;box-shadow:none}.app:not(.dark) .person i{color:#315f40;background:#5f936d24}.app:not(.dark) .sidebar nav button{color:var(--text-secondary)!important}.app:not(.dark) .sidebar nav button:hover{color:var(--text-primary)!important;background:#5f936d1a!important}.app:not(.dark) .sidebar nav button.active{background:var(--bg-active)!important;color:#285c39!important}.app:not(.dark) .dashboard-workspace .primary.dashboard-log{color:#fff;background:#5b8f69}.app:not(.dark) .dashboard-workspace .primary.dashboard-log:hover{background:#4c805b}.app:not(.dark) .dashboard-section-head form,.app:not(.dark) .weight-ranges,.app:not(.dark) .metric-toggle,.app:not(.dark) .today-control{background:#ffffff8c}.app:not(.dark) .dashboard-section-head form button,.app:not(.dark) .weight-ranges button.active,.app:not(.dark) .metric-toggle button.active{color:#244c31;background:#d7e6d9}.app:not(.dark) .muscle-row>div{background:#dbe3db}.app:not(.dark) .muscle-row>div i{background:#73a680}.app:not(.dark) .recent-row,.app:not(.dark) .upcoming-row{background:#ffffff75}.app:not(.dark) .week-row{background:#ffffff61}.app:not(.dark) .week-row:nth-child(odd){background:#5f936d12}.app:not(.dark) .week-row:not(:has(i)):after{background:#cad4cc}.app:not(.dark) .dashboard-weight .chart .weight-area{opacity:.72}.app:not(.dark) .dashboard-weight .chart .weight-point-dot,.app:not(.dark) .weight-point-circle:after{background:var(--bg-main)}.app.dark{--bg-main:#0d1510;--bg-sidebar:#162019;--bg-surface:#17211a;--bg-surface-hover:#1d2a21;--bg-active:#203727;--border-subtle:#aacdb221;--border-medium:#aacdb233;--text-primary:#f0f4ef;--text-secondary:#a7b1a8;--text-muted:#77837a;--accent:#8fc49a;--accent-bright:#9ed8aa;--accent-deep:#243c2b;--accent-muted:#8fc49a26;--positive:#7fcf91;--negative:#e47763;--surface:var(--bg-surface);--soft:#19241c;--field:#0f1812;--border:var(--border-subtle);--text:var(--text-primary);--muted:var(--text-secondary);--accent-dark:var(--accent-bright);--accent-soft:var(--accent-muted);--shadow:#0000001f;background:var(--bg-main);color:var(--text-primary)}.app.dark .sidebar{background:var(--bg-sidebar);border-color:var(--border-subtle)}.app.dark main{background:radial-gradient(circle at 76% 12%,#43694b0b,transparent 32%),var(--bg-main)}.app.dark .brand b{background:var(--accent);color:#102016;box-shadow:none;border-radius:10px}.app.dark .person i{background:var(--accent-muted);color:var(--accent-bright)}.app.dark .sidebar nav button{color:var(--text-secondary);border-radius:8px;font-weight:650;transition:background-color .15s,color .15s}.app.dark .sidebar nav button:hover{color:var(--text-primary);background:#8fc49a12}.app.dark .sidebar nav button.active{background:var(--bg-active);color:var(--accent-bright)}.app.dark .sidebar nav button i{color:currentColor;filter:none}.app.dark .sign-out{color:var(--text-secondary)}.app.dark .switch input:checked+span{background:var(--accent)}.app.dark button:focus-visible,.app.dark input:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 72%,transparent);outline-offset:2px}.dashboard-workspace .head h1{color:var(--text-primary);font-weight:700}.dashboard-workspace .head>div>p:last-child{color:var(--text-secondary)}.dashboard-workspace .primary.dashboard-log{background:var(--accent);color:#102016;box-shadow:none;border-radius:8px;padding-inline:22px;font-weight:750}.dashboard-workspace .primary.dashboard-log:hover{background:var(--accent-bright)}.dashboard-workspace .primary.dashboard-log:active{background:#82b68d;transform:none}.dashboard-metrics,.dashboard-metrics article+article{border-color:var(--border-subtle)}.dashboard-metrics span{color:var(--text-secondary);font-size:13px;font-weight:500}.dashboard-metrics strong{color:color-mix(in srgb,var(--text-primary) 96%,white);font-size:clamp(25px,2vw,29px);font-weight:780}.dashboard-metrics strong>span{color:inherit;font-size:inherit;letter-spacing:-.045em;font-weight:800;line-height:1.05}.dashboard-metrics small{color:var(--text-secondary);font-size:12px;font-weight:500}.dashboard-metrics small.positive{color:var(--positive)}.dashboard-metrics small.negative{color:var(--negative)}.dashboard-section-head h2,.muscle-card-head h2{color:var(--text-primary);font-size:21px;font-weight:700}.dashboard-section-head p,.muscle-card-head p{color:var(--text-secondary)}.dashboard-section-head form{box-shadow:inset 0 0 0 1px var(--border-subtle);border-radius:8px}.dashboard-section-head input{background:var(--field);color:var(--text-primary);border-color:#0000}.dashboard-section-head input::placeholder{color:var(--text-muted)}.dashboard-section-head input:focus{border-color:var(--border-medium);box-shadow:none}.dashboard-section-head form button{background:var(--accent-deep);color:var(--accent-bright);font-weight:700;transition:background-color .15s}.dashboard-section-head form button:hover{background:#2c4934}.metric-toggle{border-color:var(--border-medium);background:var(--field);border-radius:8px;padding:3px}.metric-toggle button{color:var(--text-secondary);border-radius:6px;transition:background-color .15s,color .15s}.metric-toggle button:hover{color:var(--text-primary)}.metric-toggle button.active{background:var(--accent-deep);color:var(--text-primary);box-shadow:none}.dashboard-weight .chart{border-color:var(--border-subtle);background:repeating-linear-gradient(to bottom,transparent 0,transparent 66px,var(--border-subtle) 67px)}.dashboard-weight .chart .weight-curve{stroke:var(--accent);stroke-width:2px;filter:none}.dashboard-weight .chart .weight-point-dot{fill:var(--accent);stroke:var(--bg-main);stroke-width:.7px}.dashboard-weight .chart .weight-point:last-of-type .weight-point-dot{r:2.15;fill:var(--accent-bright);stroke:var(--accent-deep);stroke-width:1.1px}.dashboard-weight .chart-axis,.dashboard-weight .chart-dates{color:var(--text-muted);font-weight:500}.muscle-row>b{color:var(--text-primary);font-weight:650}.muscle-row>span{color:var(--text-secondary)}.muscle-row>div{background:#27322a;border-radius:6px;height:11px}.muscle-row>div i{background:#83b68d;border-radius:6px}.muscle-row>small{color:var(--positive);font-weight:650}.muscle-row>small.negative{color:var(--negative)}.dashboard-analytics,.dashboard-lower>article+article{border-color:var(--border-subtle)}.section-heading h2{color:var(--text-primary);font-weight:700}.section-heading span{color:var(--accent-bright)}.recent-row{border:1px solid var(--border-subtle);background:#ffffff04;border-radius:8px;margin-bottom:5px;transition:background-color .15s,border-color .15s}.recent-row:hover{border-color:var(--border-medium);background:var(--bg-surface-hover)}.recent-row b{color:var(--text-primary);font-weight:650}.recent-row time,.recent-row small,.recent-row>span{color:var(--text-secondary)}.week-row>span{color:var(--text-muted)}.week-row>b{color:var(--text-primary);font-weight:650}.week-row i{background:var(--accent);color:#102016;box-shadow:0 0 0 2px var(--accent-deep)}.week-row:not(:has(i)):after{content:"";background:#263129;border-radius:50%;width:15px;height:15px}.upcoming-row{border:1px solid var(--border-subtle);background:#ffffff05;border-radius:8px;margin-bottom:5px;padding-inline:10px;transition:background-color .15s,border-color .15s}.upcoming-row:hover{border-color:var(--border-medium);background:var(--bg-surface-hover)}.upcoming-row time{color:var(--text-secondary)}.upcoming-row b{color:var(--text-primary);font-weight:650}.upcoming-row i{color:var(--text-muted)}.dashboard-workspace .head h1{font-size:clamp(23px,1.95vw,31px)}.dashboard-workspace .dashboard-greeting{min-height:22px;color:var(--text-secondary);margin:7px 0 0;font-size:15px;line-height:1.4}.dashboard-workspace .dashboard-greeting i{background:var(--accent);vertical-align:-2px;width:1px;height:1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.dashboard-head-actions{align-items:center;gap:18px;display:flex}.today-control{border:1px solid var(--border-subtle);min-width:190px;min-height:52px;color:var(--text-secondary);text-align:left;background:0 0;border-radius:8px;grid-template-columns:22px 1fr 16px;align-items:center;gap:11px;padding:8px 12px;transition:background-color .15s,border-color .15s;display:grid}.today-control:hover{border-color:var(--border-medium);background:var(--bg-surface-hover)}.today-control span{gap:2px;display:grid}.today-control b{color:var(--text-primary);font-size:13px;font-weight:650}.today-control small{color:var(--text-secondary);font-size:11px}.dashboard-icon{width:22px;height:22px;color:var(--text-secondary);flex:none;display:block}.today-control>.dashboard-icon:last-child{width:16px;height:16px;color:var(--text-muted)}.dashboard-metrics article{grid-template-columns:30px minmax(0,1fr);align-items:center;gap:14px;display:grid}.dashboard-metrics article>.dashboard-icon{color:#b7c1b9;stroke-width:1.65px;width:25px;height:25px}.dashboard-metrics article>div{min-width:0}.dashboard-metrics article>div>span,.dashboard-metrics article>div>small{display:block}.dashboard-weight-actions{align-items:center;gap:10px;display:flex}.weight-ranges{border:1px solid var(--border-subtle);background:var(--field);border-radius:8px;height:38px;padding:3px;display:flex}.weight-ranges button{min-width:39px;color:var(--text-secondary);background:0 0;border-radius:6px;padding:0 9px;font-size:11px;font-weight:650;transition:background-color .15s,color .15s}.weight-ranges button:hover{color:var(--text-primary)}.weight-ranges button.active{background:var(--accent-deep);color:var(--text-primary)}.dashboard-weight .chart .weight-point-dot{r:1.15}.dashboard-weight .chart .weight-point:last-of-type .weight-point-dot{r:1.8}.dashboard-weight .chart .weight-area{opacity:.38}@media (width<=1250px) and (width>=1051px){.dashboard-head-actions{gap:10px}.today-control{min-width:165px}.dashboard-weight-actions{gap:6px}.weight-ranges button{min-width:33px;padding-inline:6px}.dashboard-section-head form{display:none}}.dashboard-weight .chart{padding-right:0;padding-left:var(--chart-axis-width);background:0 0;border-bottom:0}.dashboard-weight .chart svg{inset:0 0 0 var(--chart-axis-width);width:calc(100% - var(--chart-axis-width));padding:0;overflow:visible}.dashboard-weight .weight-grid line{stroke:var(--border-subtle);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-dasharray:3 4}.dashboard-weight .chart-axis{width:48px;color:var(--text-secondary);font-variant-numeric:tabular-nums;align-items:flex-end;padding:0;font-size:10px;inset:16% auto 12% 0}.dashboard-weight .chart-dates{bottom:-20px;right:0;left:var(--chart-axis-width);color:var(--text-secondary);font-variant-numeric:tabular-nums;align-items:center;font-size:10px}.dashboard-weight .chart-dates span:first-child{text-align:left}.dashboard-weight .chart-dates span:last-child{text-align:right}.dashboard-weight .chart .weight-point-dot{fill:var(--bg-main);stroke:var(--accent);stroke-width:1.15px;vector-effect:non-scaling-stroke;filter:none}.dashboard-weight .chart .weight-point:last-of-type .weight-point-dot{fill:var(--bg-main);stroke:var(--accent-bright);stroke-width:2px;filter:none}.dashboard-weight .chart .weight-curve{stroke:var(--accent-bright);stroke-width:2.1px}.weight-point-circle{z-index:3;width:64px;height:52px;box-shadow:none;background:0 0;border:0;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%);outline:none!important}.weight-point-circle:after{content:"";border:2px solid var(--accent);background:var(--bg-main);opacity:0;border-radius:50%;width:10px;height:10px;transition:opacity .26s,transform .34s cubic-bezier(.2,.8,.2,1),border-color .22s,background-color .22s,box-shadow .22s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.45)}.weight-point-circle.proximity-2:after{opacity:.48;transform:translate(-50%,-50%)scale(.72)}.weight-point-circle.proximity-1:after{opacity:.76;transform:translate(-50%,-50%)scale(1)}.weight-point-circle.proximity-0:after,.weight-point-circle:hover:after,.weight-point-circle:focus-visible:after{opacity:1;border-color:var(--accent-bright);background:var(--accent-deep);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-deep) 85%,transparent);transform:translate(-50%,-50%)scale(1.42)}.app.dark{--bg-main:#111a14;--bg-sidebar:#19241c;--bg-surface:#1b271e;--bg-surface-hover:#223027;--bg-active:#294332;--border-subtle:#b2d3b926;--border-medium:#b2d3b93b;--text-primary:#f2f5f1;--text-secondary:#adb8af;--text-muted:#818e84;--accent-deep:#2b4633;--soft:#1d2921;--field:#131e17}.dashboard-workspace .dashboard-shell{width:100%;max-width:none}@media (width>=761px){main.dashboard-workspace{padding-left:18px!important;padding-right:18px!important}main.workspace.dashboard-workspace{width:calc(100% - 224px)!important;max-width:none!important;padding-left:8px!important;padding-right:8px!important}main.workspace.dashboard-workspace .dashboard-shell{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}.dashboard-metrics article{padding-left:18px;padding-right:18px}.dashboard-metrics article:first-child{padding-left:0}.dashboard-analytics{gap:22px}.dashboard-lower>article{padding-left:18px;padding-right:18px}.dashboard-lower>article:first-child{padding-left:0}.dashboard-lower>article:last-child{padding-right:0}main.workspace.dashboard-workspace{width:calc(100% - 224px)!important;padding-right:var(--dashboard-inline-gutter,28px)!important;padding-left:var(--dashboard-inline-gutter,28px)!important;margin-left:224px!important}main.workspace.dashboard-workspace .dashboard-shell{width:100%!important;margin-left:0!important;margin-right:0!important}}@media (width>=1051px){.dashboard-analytics{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:0}.dashboard-weight{padding-right:30px!important}.dashboard-volume{position:relative;padding-left:30px!important}.dashboard-volume:before{content:"";background:linear-gradient(to bottom,transparent,var(--border-medium) 12%,var(--border-medium) 88%,transparent);width:1px;position:absolute;top:0;bottom:0;left:0}.dashboard-weight .chart{--chart-axis-width:46px;margin-right:4px}}.section-heading button{color:var(--accent-bright);background:0 0;padding:0;font-size:11px;font-weight:700}.section-heading button:hover{color:var(--text-primary)}.recent-row{border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-surface) 76%,transparent);width:100%;min-height:58px;color:var(--text-primary);text-align:left;border-radius:8px;grid-template-columns:58px minmax(120px,1fr) auto 14px;margin-bottom:5px;padding:6px 11px}.recent-row-copy{min-width:0;display:block}.recent-row-copy b,.recent-row-copy small{display:block}.recent-row time{border-right:1px solid var(--border-subtle);align-content:center;align-self:stretch;justify-items:center;padding-right:11px;font-style:normal;line-height:1;display:grid}.recent-row time small{color:var(--text-secondary);letter-spacing:.05em;font-size:9px;font-weight:700}.recent-row time strong{color:var(--text-primary);margin-top:4px;font-size:19px;font-weight:650}.recent-row>i{color:var(--text-muted);font-size:19px;font-style:normal}.week-row{background:color-mix(in srgb,var(--bg-surface) 58%,transparent);border:0;border-radius:6px;margin-bottom:2px;padding-inline:9px}.week-row:nth-child(odd){background:color-mix(in srgb,var(--accent-muted) 38%,transparent)}.upcoming-row{border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-surface) 76%,transparent);border-radius:8px;grid-template-columns:48px 18px minmax(0,1fr) 14px;min-height:45px;margin-bottom:5px;padding-inline:10px}.upcoming-row .upcoming-status{border:1px solid var(--text-muted);border-radius:50%;width:11px;height:11px;font-size:0;display:block}.upcoming-row>i:last-child{color:var(--text-muted);font-size:17px;font-style:normal;line-height:1}.dashboard-volume.sets-mode{min-height:0!important;overflow:hidden!important}.dashboard-volume.sets-mode .muscle-rows{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px 10px;width:100%;margin-top:clamp(12px,1.6vh,17px)}.dashboard-volume.sets-mode .muscle-row{border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-surface) 76%,transparent);border-radius:7px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:5px 9px;min-width:0;min-height:39px;padding:6px 8px;font-size:10px}.dashboard-volume.sets-mode .muscle-row>b{white-space:nowrap;text-overflow:clip;font-size:12px;overflow:visible}.dashboard-volume.sets-mode .muscle-row>span{grid-area:1/2}.dashboard-volume.sets-mode .muscle-row>div{grid-area:2/1;width:100%;height:7px}.dashboard-volume.sets-mode .muscle-row>small{grid-area:2/2}@media (width<=1180px) and (width>=761px){.dashboard-volume.sets-mode .muscle-rows{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:6px}.dashboard-volume.sets-mode .muscle-row{min-height:35px;padding-block:4px}}@media (width>=761px){.dashboard-analytics{border-bottom:0;position:relative}.dashboard-analytics:after{content:"";background:var(--border-subtle);height:1px;position:absolute;bottom:-13px;left:0;right:0}}.dashboard-volume.sets-mode .muscle-rows{scroll-behavior:smooth;scroll-snap-type:y proximity;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;width:100%;height:226px;margin-top:18px;padding:2px 14px 2px 2px;overflow:hidden auto;display:grid!important}.dashboard-volume.sets-mode .muscle-row{scroll-snap-align:start;border-radius:9px;align-content:center;width:auto;min-height:67px;padding:10px 12px}.dashboard-volume.sets-mode .muscle-row>b{font-size:13px}.dashboard-volume.sets-mode .muscle-row>span{font-size:11px}.dashboard-volume.sets-mode .muscle-row>div{height:8px}.dashboard-volume.sets-mode .muscle-rows::-webkit-scrollbar{width:11px;height:0}.dashboard-volume.sets-mode .muscle-rows::-webkit-scrollbar-track{background:0 0;margin-block:16px}.dashboard-volume.sets-mode .muscle-rows::-webkit-scrollbar-thumb{border:3px solid var(--bg-main);background:var(--accent);border-radius:999px;min-height:48px}.dashboard-volume.sets-mode .muscle-rows::-webkit-scrollbar-thumb:hover{background:var(--accent-bright)}.dashboard-volume.sets-mode .muscle-rows::-webkit-scrollbar-button{width:0;height:0;display:none}.dashboard-overview-page{display:contents}.mobile-dashboard-topbar,.mobile-dashboard-home{display:none}.folder-actions{align-items:center;gap:7px;display:flex}.folder-actions>button:not(.secondary),.routine .danger{color:var(--muted);background:0 0;padding:8px;font-size:12px;font-weight:700}.folder-actions .danger,.routine .danger{color:#c46f7e}.builder-list-head,.builder-item{grid-template-columns:minmax(180px,1fr) 74px 155px 32px}.builder-item{cursor:grab}.builder-item:active{cursor:grabbing}.drag-handle{color:var(--muted);cursor:grab;margin-right:8px}.builder-item input[type=text]{appearance:textfield}.builder-item input[type=text]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.builder-item input[type=text]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@media (width<=650px){.builder-list-head,.builder-item{min-width:500px}.folder-actions{flex-wrap:wrap}.folder-actions .secondary{width:auto}}.exercise-note{color:var(--muted);letter-spacing:.08em;gap:7px;margin-top:17px;font:700 10px ui-monospace,Consolas,monospace;display:grid}.exercise-note summary{cursor:pointer;list-style:none}.exercise-note summary::-webkit-details-marker{display:none}.exercise-note summary:after{content:"+";float:right;color:var(--accent-dark);font-size:15px;line-height:.7}.exercise-note[open] summary:after{content:"−"}.exercise-note textarea{resize:vertical;background:var(--field);width:100%;min-height:65px;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:8px;padding:10px}.addexercise p{letter-spacing:.08em;color:var(--muted);margin:0 0 9px;font:700 10px ui-monospace,Consolas,monospace}.routine-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:820px;display:grid}.routine-picker button{text-align:left;background:var(--surface);min-height:150px;color:var(--text);border:1px solid var(--border);box-shadow:0 12px 30px var(--shadow);border-radius:15px;flex-direction:column;align-items:flex-start;padding:21px;display:flex}.routine-picker button:hover{border-color:var(--accent);transform:translateY(-2px)}.routine-picker strong{letter-spacing:-.04em;margin:14px 0 8px;font-size:23px}.routine-picker small,.picker-folder{color:var(--muted);font-size:12px}.picker-folder{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-dark);font:700 10px ui-monospace,Consolas,monospace}@media (width<=650px){.routine-picker{grid-template-columns:1fr}.setlabels,.set{grid-template-columns:42px 1fr 1fr 1fr;gap:5px}.setlabels{font-size:8px}.set input{padding:9px 6px}}.picker-folder-group{background:var(--surface);border:1px solid var(--border);box-shadow:0 12px 30px var(--shadow);border-radius:15px;padding:20px}.picker-folder-group>.overline{color:var(--accent-dark);margin-bottom:13px}.picker-folder-group>div{gap:8px;display:grid}.routine-picker .picker-folder-group button{width:100%;min-height:0;box-shadow:none;background:var(--soft);flex-direction:row;justify-content:space-between;align-items:center;padding:15px}.routine-picker .picker-folder-group strong{margin:0;font-size:16px}.routine-picker .picker-folder-group small{text-align:right}.picker-empty{color:var(--muted);margin:0;font-size:12px}.substitute-modal{width:min(560px,100%)}.substitute-copy{color:var(--muted);margin:15px 0 0;font-size:13px;line-height:1.5}.substitute-results{min-height:0;margin-top:10px}.substitute-results:empty{display:none}.picker-folder-toggle{text-align:left!important;background:0 0!important;border:0!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;padding:0!important;display:flex!important}.picker-folder-toggle span{gap:3px;display:grid}.picker-folder-toggle b{font-size:16px}.picker-folder-toggle small{color:var(--muted);font-size:11px;text-align:left!important}.picker-folder-toggle i{color:var(--accent-dark);font-size:20px;font-style:normal}.picker-routines{margin-top:12px}.picker-folder-group.open{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}@media (width<=760px){body:has(.routine-picker) .head{gap:9px;margin-bottom:17px}body:has(.routine-picker) .head h1{font-size:32px;line-height:1.05}body:has(.routine-picker) .head>div>p:last-child{margin-top:7px;font-size:14px}.routine-picker{gap:8px}.picker-folder-group{border-radius:13px!important;padding:14px!important}.picker-folder-toggle{min-height:44px!important}.picker-folder-toggle b{font-size:15px}.picker-routines{gap:6px!important;margin-top:9px!important}.routine-picker .picker-folder-group .picker-routines button{border-radius:10px!important;min-height:52px!important;padding:11px 12px!important}.routine-picker .picker-folder-group .picker-routines strong{font-size:14px!important}.routine-picker .picker-folder-group .picker-routines small{font-size:11px!important}.picker-empty{margin-top:9px;font-size:12px}}.logger .next-exercise{display:none}.active-sessions{background:var(--accent-soft);border:1px solid var(--border);border-radius:14px;max-width:820px;margin:0 0 16px;padding:16px}.active-sessions>button{text-align:left;background:var(--surface);width:100%;color:var(--text);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;margin-top:8px;padding:13px;display:flex}.active-sessions button span{gap:3px;display:grid}.active-sessions small{color:var(--muted);font-size:11px}.active-sessions strong{color:var(--accent-dark);font-size:12px}.rest-timer{z-index:6;background:var(--accent-dark);color:#fff;max-width:820px;box-shadow:0 10px 24px var(--shadow);border-radius:11px;align-items:center;gap:12px;margin:0 0 12px;padding:10px 14px;display:flex;position:sticky;top:12px}.rest-timer span{letter-spacing:.1em;font:700 10px ui-monospace,Consolas,monospace}.rest-timer b{font-variant-numeric:tabular-nums;font-size:19px}.rest-timer button{color:#fff;background:#ffffff24;border-radius:7px;margin-left:auto;padding:7px 10px;font-size:12px;font-weight:800}.previous-performance{background:var(--accent-soft);color:var(--accent-dark);border-radius:9px;gap:4px;margin:14px 0 8px;padding:10px 12px;display:grid}.previous-performance span{letter-spacing:.08em;font:700 9px ui-monospace,Consolas,monospace}.previous-performance b{font-size:12px}.previous-performance small{color:var(--muted);font-size:11px}.logger-actions{align-items:center;gap:12px;display:flex}.rest-button{background:var(--accent-soft);color:var(--accent-dark);border-radius:8px;margin-top:10px;padding:8px 10px;font-size:12px;font-weight:800}body:has(.routine-picker) .active-sessions{display:none}body:has(.routine-picker) .head>.primary{display:none}.routine-picker{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start}.routine-picker .picker-folder-group{align-content:start;gap:8px;padding:18px;display:grid}.routine-picker .picker-folder-group>b{margin:0 0 2px;font-size:18px;line-height:1.15}.routine-picker .picker-folder-group>button{border-radius:12px!important;min-height:70px!important;margin:0!important;padding:13px 16px!important}.routine-picker .picker-folder-group>button strong{margin:0!important;font-size:18px!important}.routine-picker .picker-folder-group>button small{font-size:13px!important}@media (width<=760px){.routine-picker{grid-template-columns:1fr}.routine-picker .picker-folder-group{padding:14px}.routine-picker .picker-folder-group>button{min-height:58px!important;padding:11px 13px!important}.routine-picker .picker-folder-group>button strong{font-size:16px!important}}@media (width>=1200px){main.workspace:has(.routine-picker){height:100dvh;overflow:hidden;padding-top:clamp(30px,4vh,58px)!important;padding-bottom:24px!important}.workspace:has(.routine-picker) .head{margin-bottom:clamp(30px,4vh,54px)}.workspace:has(.routine-picker) .head h1{font-size:clamp(58px,5.2vw,82px)}.workspace:has(.routine-picker) .routine-picker{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:18px;max-width:none;min-height:calc(100dvh - clamp(290px,29vh,440px))}.workspace:has(.routine-picker) .picker-folder-group{border-radius:18px;min-height:0;padding:clamp(24px,2.2vw,34px)}.workspace:has(.routine-picker) .picker-folder-group>b{margin:0 0 12px;font-size:clamp(22px,1.8vw,29px)}.workspace:has(.routine-picker) .picker-folder-group>button{flex:1;border-radius:14px!important;min-height:112px!important;padding:22px!important}.workspace:has(.routine-picker) .picker-folder-group>button strong{font-size:clamp(20px,1.7vw,27px)!important}.workspace:has(.routine-picker) .picker-folder-group>button small{font-size:14px!important}.workspace:has(.routine-picker) .picker-folder-group:has(>b:only-child):after{content:"No workout days in this folder yet.";border:1px dashed var(--border);color:var(--muted);border-radius:14px;flex:1;place-items:center;font-size:13px;display:grid}}main.workspace:has(.routine-picker){height:auto;min-height:100dvh;overflow:visible;padding-bottom:80px!important}.workspace:has(.routine-picker) .head{margin-bottom:30px}.workspace:has(.routine-picker) .head h1{font-size:clamp(44px,5vw,70px)}.workspace:has(.routine-picker) .routine-picker{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;align-items:start;gap:16px;max-width:none;min-height:0}.routine-picker .picker-folder-group{border-radius:18px;min-width:0;padding:22px;display:block}.picker-group-heading{border-bottom:1px solid var(--border);align-items:center;gap:13px;padding-bottom:18px;display:flex}.picker-group-icon{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-dark);border-radius:12px;flex:none;place-items:center;font-size:21px;display:grid}.picker-group-heading b,.picker-group-heading small{display:block}.picker-group-heading b{letter-spacing:-.035em;font-size:20px;line-height:1.2}.picker-group-heading small{color:var(--muted);margin-top:4px;font-size:12px}.picker-days{gap:9px;margin-top:16px;display:grid}.routine-picker .picker-folder-group .picker-days>button{border:1px solid var(--border);background:var(--soft);text-align:left;width:100%;box-shadow:none;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;display:flex;min-height:78px!important;padding:15px 17px!important}.routine-picker .picker-folder-group .picker-days>button:hover{background:var(--accent-soft);border-color:var(--accent);transform:translateY(-2px)}.picker-day-copy{gap:4px;min-width:0;display:grid}.routine-picker .picker-folder-group .picker-day-copy strong{line-height:1.2;margin:0!important;font-size:17px!important}.routine-picker .picker-folder-group .picker-day-copy small{text-align:left;font-size:12px!important}.picker-day-arrow{background:var(--surface);width:32px;height:32px;color:var(--accent-dark);border-radius:50%;flex:none;place-items:center;font-size:19px;display:grid}.picker-days .picker-empty{border:1px dashed var(--border);border-radius:12px;padding:18px}@media (width<=900px){.workspace:has(.routine-picker) .routine-picker{grid-template-columns:1fr}}@media (width<=760px){main.workspace:has(.routine-picker){min-height:0;padding-bottom:var(--mobile-nav-height)!important}.workspace:has(.routine-picker) .head h1{font-size:clamp(34px,9vw,46px)}.routine-picker .picker-folder-group{padding:16px!important}.picker-group-heading{padding-bottom:13px}.picker-days{margin-top:12px}.routine-picker .picker-folder-group .picker-days>button{min-height:64px!important;padding:12px 14px!important}}.logger article.log-exercise{padding:0;overflow:hidden}.exercise-tab{background:var(--surface);width:100%;color:var(--text);text-align:left;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.exercise-tab:hover{background:var(--soft)}.exercise-tab span{grid-template-columns:30px 1fr;align-items:center;column-gap:10px;display:grid}.exercise-tab b{background:var(--accent-soft);width:26px;height:26px;color:var(--accent-dark);border-radius:50%;grid-row:span 2;place-items:center;font-size:11px;display:grid}.exercise-tab strong{font-size:17px}.exercise-tab small{color:var(--muted);font-size:11px}.exercise-tab i{color:var(--accent-dark);font-size:22px;font-style:normal}.exercise-body{border-top:1px solid var(--border);padding:0 23px 23px}.exercise-body .log-head{align-items:center;padding-top:15px}.exercise-body .log-head p{color:var(--muted);margin:0;font-size:12px}.exercise-body .log-head button{color:var(--accent-dark);margin-left:9px}.setlabels,.set{grid-template-columns:56px 1fr 1fr 1fr 28px}.remove-set{color:#c46f7e;background:0 0;border-radius:50%;width:27px;height:27px;font-size:18px}.next-exercise{float:right;background:var(--accent-soft);color:var(--accent-dark);border-radius:7px;padding:8px 10px;font-size:12px;font-weight:800}@media (width<=650px){.exercise-body{padding:0 14px 16px}.exercise-tab{padding:15px}.setlabels,.set{grid-template-columns:36px 1fr 1fr 1fr 24px}.exercise-body .log-head{flex-direction:column;align-items:flex-start;gap:8px}.exercise-body .log-head button{margin-left:0;margin-right:8px}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-pop{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes gentle-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 22%,transparent)}50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 0%,transparent)}}.workspace>.head,.workspace>.stats,.workspace>.grid,.workspace>.prompt,.workspace>.routine-intro,.workspace>.routine-folder,.workspace>.routine-picker,.workspace>.logger{animation:.42s cubic-bezier(.2,.75,.25,1) both rise-in}.workspace>.stats,.workspace>.routine-intro{animation-delay:40ms}.workspace>.grid,.workspace>.routine-folder,.workspace>.routine-picker{animation-delay:80ms}.workspace>.prompt,.workspace>.logger{animation-delay:.12s}.primary,.secondary,.routine-picker button,.exercise-tab,.side-link,.mobile button{transition:transform .18s,background-color .18s,color .18s,border-color .18s,box-shadow .18s}.primary:active,.secondary:active,.routine-picker button:active,.exercise-tab:active{transform:scale(.98)}.stats article,.card,.routine-folder,.logger article,.routine-picker .picker-folder-group{transition:transform .24s,box-shadow .24s,border-color .24s}.stats article:hover,.card:hover{box-shadow:0 16px 34px var(--shadow);transform:translateY(-2px)}.log-exercise.open{animation:.24s both soft-pop}.exercise-tab:hover b{animation:1.2s ease-in-out infinite gentle-pulse}.set input,.exercise-note textarea,.addexercise input{transition:border-color .16s,box-shadow .16s,background-color .16s}.set input:focus,.exercise-note textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.toast{animation:.28s both rise-in}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.demo-button{border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--accent-soft);width:100%;color:var(--accent-dark);border-radius:8px;padding:9px 10px;font-size:11px;font-weight:800;transition:transform .18s,background .18s}.demo-button:hover:not(:disabled){background:color-mix(in srgb,var(--accent-soft) 70%,var(--surface));transform:translateY(-1px)}.demo-button:disabled{opacity:.65;cursor:wait}.dashboard-greeting{min-height:24px;color:var(--accent-dark);letter-spacing:-.015em;align-items:center;margin:-18px 0 24px;font-size:14px;font-weight:700;display:flex}.dashboard-greeting i{background:currentColor;width:2px;height:1.05em;margin-left:3px;animation:.72s step-end infinite typing-caret;display:inline-block}@keyframes typing-caret{50%{opacity:0}}@media (width<=760px){.dashboard-greeting{display:none}}@media (prefers-reduced-motion:reduce){.dashboard-greeting i{animation:none}}@media (width>=761px){.dashboard-greeting{letter-spacing:-.03em;min-height:34px;margin:-8px 0 28px;font-size:20px;font-weight:750}.dashboard-greeting i{width:2px;height:1.1em;margin-left:5px}}@keyframes dashboard-card-in{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes chart-line-draw{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@keyframes point-pop{0%,55%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.dashboard-overview article{animation:.5s cubic-bezier(.2,.8,.25,1) both dashboard-card-in}.dashboard-overview article:nth-child(2){animation-delay:90ms}.dashboard-overview article:nth-child(3){animation-delay:.18s}.dashboard-weight,.dashboard-volume{animation:.55s cubic-bezier(.2,.8,.25,1) .24s both dashboard-card-in}.dashboard-volume{animation-delay:.32s}.dashboard-weight .chart circle{transform-box:fill-box;transform-origin:50%;animation:.38s both point-pop}.dashboard-weight .chart circle:first-of-type{animation-delay:.77s}.dashboard-weight .chart circle:nth-of-type(2){animation-delay:.85s}.dashboard-weight .chart circle:nth-of-type(3){animation-delay:.93s}.dashboard-weight .chart circle:nth-of-type(4){animation-delay:1.01s}.dashboard-weight .chart circle:nth-of-type(5){animation-delay:1.09s}.dashboard-volume .bar i{transform-origin:0;animation:.72s cubic-bezier(.2,.8,.25,1) both bar-grow}.dashboard-volume .bar:nth-of-type(3) i{animation-delay:.4s}.dashboard-volume .bar:nth-of-type(4) i{animation-delay:.48s}.dashboard-volume .bar:nth-of-type(5) i{animation-delay:.56s}.dashboard-volume .bar:nth-of-type(6) i{animation-delay:.64s}.dashboard-volume .bar:nth-of-type(7) i{animation-delay:.72s}.dashboard-volume .bar:nth-of-type(8) i{animation-delay:.8s}.dashboard-weight .chart polyline{stroke-dasharray:none;stroke-dashoffset:0;animation:none}@keyframes chart-reveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.dashboard-weight .chart svg{clip-path:inset(0 100% 0 0);animation:1.1s cubic-bezier(.2,.75,.25,1) .5s forwards chart-reveal}.chart circle{fill:var(--accent);stroke:var(--surface);stroke-width:.7px;vector-effect:non-scaling-stroke}.chart{padding-right:58px;position:relative}.chart svg{width:calc(100% - 58px)}.chart-axis{width:52px;color:var(--muted);text-align:right;flex-direction:column;justify-content:space-between;font:600 10px ui-monospace,Consolas,monospace;display:flex;position:absolute;top:12px;bottom:12px;right:0}.chart-axis span{white-space:nowrap}.chart-dates{color:var(--muted);justify-content:space-between;font:600 10px ui-monospace,Consolas,monospace;display:flex;position:absolute;bottom:-19px;left:0;right:58px}.chart:has(.chart-dates){margin-bottom:28px}@media (width<=760px){html,body{width:100%;max-width:100%;overflow-x:hidden}.app{min-width:0;display:block}.workspace,main.workspace{width:100%!important;max-width:100%!important;padding:calc(var(--safe-area-top) + 24px) 16px var(--mobile-nav-height)!important;margin:0!important}.head{gap:16px;margin-bottom:24px}.head h1{letter-spacing:-.06em;font-size:clamp(34px,11vw,46px);line-height:1.02}.head>div>p:last-child{font-size:16px;line-height:1.45}.head .primary{min-height:48px;padding:13px 16px;font-size:15px}.stats,.grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.stats article,.card,.prompt,.routine-folder,.logger article{border-radius:15px;width:100%}.stats article{padding:20px}.stats strong{font-size:30px}.stats span,.stats small{font-size:14px}.grid .card{padding:20px}.prompt{min-height:0;padding:22px 20px}.prompt h2{font-size:24px}.prompt span{font-size:15px;line-height:1.45}.prompt .primary{width:100%;min-height:48px;font-size:15px}.weight{flex-direction:column;align-items:flex-start;gap:14px}.weight form{width:100%;height:48px}.weight input{flex:1;width:auto;font-size:16px}.weight form button{padding-inline:16px;font-size:14px}.mobile button{border-radius:10px;flex:1;min-width:0;min-height:58px;padding:5px 2px!important;font-size:22px!important}.mobile small{font-weight:700;line-height:1.1;text-transform:capitalize!important;font-size:12px!important}.routine-intro,.folder-heading,.routine{gap:14px}.routine-intro{padding:18px}.folder-heading,.routine{align-items:stretch}.routine p{white-space:normal;max-width:none;overflow:visible}.folder-actions{gap:6px;width:100%}.folder-actions>button{min-height:40px}.routine>div:last-child{grid-template-columns:1fr 1fr;gap:7px;width:100%;display:grid}.routine>div:last-child button{min-height:42px;margin:0}.routine>div:last-child .primary{grid-column:1/-1}.routine-picker,.picker-folder-group{width:100%}.picker-folder-group{padding:16px}.routine-picker .picker-folder-group button{padding:14px}.routine-picker .picker-folder-group strong{font-size:16px}.routine-picker .picker-folder-group small{font-size:12px}.session-name{font-size:32px}.exercise-tab strong{font-size:18px}.exercise-tab small,.exercise-body .log-head p{font-size:13px}.exercise-body .log-head button,.addset,.next-exercise{min-height:38px;font-size:13px}.setlabels{font-size:10px!important}.set input{min-height:44px;font-size:16px}.exercise-note textarea,.addexercise input{font-size:16px}.addexercise{padding:16px}.chart{padding-right:62px}.chart svg{width:calc(100% - 62px)}.chart-axis{width:58px;font-size:11px}.chart-dates{font-size:11px;right:62px}.back{align-items:end;padding:12px}.modal{border-radius:16px 16px 0 0;max-height:88dvh;padding:20px 16px}.modal input,.modal select{min-height:46px;font-size:16px}.builder-list{overflow-x:auto}.builder-list-head,.builder-item{min-width:560px}.error,.toast{font-size:14px;top:12px;left:14px;right:14px}.desktop-rest-builder{display:none}.mobile-rest-builder{min-width:0;margin-top:20px;display:block}.mobile-builder-pages{scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:none;border:1px solid var(--border);border-radius:12px;width:100%;display:flex;overflow-x:auto}.mobile-builder-pages::-webkit-scrollbar{display:none}.mobile-builder-page{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;width:100%;min-width:100%}.mobile-builder-head,.mobile-builder-row{align-items:center;gap:8px;display:grid}.mobile-builder-head{background:var(--soft);color:var(--muted);letter-spacing:.08em;grid-template-columns:minmax(0,1fr) 54px 116px 26px;padding:11px 10px;font:700 9px ui-monospace,Consolas,monospace}.mobile-builder-row{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) 54px 116px 26px;padding:13px 10px}.mobile-builder-row b,.mobile-builder-row small{text-overflow:ellipsis;display:block;overflow:hidden}.mobile-builder-row b{font-size:14px;line-height:1.25}.mobile-builder-row small{color:var(--muted);white-space:nowrap;margin-top:3px;font-size:10px}.mobile-builder-row input,.mobile-builder-row select{background:var(--field);width:100%;min-width:0;min-height:44px;color:var(--text);border:1px solid var(--border);border-radius:8px;padding:7px}.mobile-builder-row .rest-reps{grid-template-columns:1fr 8px 1fr;gap:2px}.mobile-builder-row>button{color:#bd6c78;background:0 0;width:26px;height:32px;padding:0;font-size:21px}.mobile-rest-head{grid-template-columns:minmax(0,1fr) minmax(150px,1.2fr);padding-inline:13px}.mobile-builder-rest{grid-template-columns:minmax(0,1fr) minmax(150px,1.2fr);align-items:start;padding:13px}.mobile-builder-rest .rest-time-field{width:100%}.mobile-builder-rest .custom-rest-time input{padding-right:31px}.mobile-builder-nav{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.mobile-builder-nav button{border:1px solid var(--border);background:var(--surface);min-height:38px;color:var(--muted);letter-spacing:.06em;border-radius:9px;justify-content:center;align-items:center;gap:7px;font:800 10px ui-monospace,Consolas,monospace;display:flex}.mobile-builder-nav button span{background:var(--border);border-radius:50%;width:7px;height:7px}.mobile-builder-nav button.active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--accent-soft);color:var(--accent-dark)}.mobile-builder-nav button.active span{background:var(--accent)}.mobile-swipe-hint{text-align:center;color:var(--muted);margin:8px 0 0;font-size:11px}.mobile-builder-save{min-height:48px;margin-top:12px;font-size:14px;display:block}.rest-editor .desktop-builder-save{display:none}.head:has(+.logger){flex-direction:row;justify-content:space-between;align-items:flex-start;margin-bottom:18px;padding-right:0;position:relative}.head:has(+.logger)>div{min-width:0}.head:has(+.logger)>.primary{white-space:nowrap;width:auto;min-width:76px;height:40px;min-height:40px;box-shadow:none;border-radius:9px;padding:0 12px;font-size:0}.head:has(+.logger)>.primary b{display:none}.head:has(+.logger)>.primary:after{content:"Finish";font-size:13px;font-weight:900}.head:has(+.logger) .session-name{max-width:100%;font-size:32px}.head:has(+.logger) .overline{margin-bottom:7px;font-size:11px}.logger .exercise-body .log-head>p{display:none}.logger .exercise-body .log-head{align-items:center;padding-top:11px}.logger .exercise-body .log-head>div{gap:8px;display:flex}.logger .exercise-body .log-head button{min-height:32px;margin:0;padding:6px 0}.logger .exercise-note{margin-top:14px}.logger .exercise-note textarea{min-height:58px}.logger .next-exercise{padding:8px 10px}.logger article.log-exercise{margin-bottom:9px}.logger .log-exercise:not(.open){display:none}.logger .log-exercise.open{margin-bottom:0}.logger .exercise-body{padding-bottom:18px}.logger .next-exercise{min-width:176px}.logger .addexercise{background:0 0;border:0;margin:0;padding:0}.logger .addexercise p{color:var(--accent-dark);margin:0 0 10px;font-size:13px}.logger .addexercise input{background:var(--soft);border-style:solid;border-radius:10px;min-height:46px;font-size:16px}.logger .addexercise input::placeholder{color:var(--muted)}.mobile-add-sheet{right:0;bottom:var(--mobile-nav-height);z-index:29;background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -16px 34px var(--shadow);clip-path:inset(0 0 calc(100% - 35px) round 18px 18px 0 0);pointer-events:none;border-radius:18px 18px 0 0;padding:0 16px 16px;transition:transform .3s cubic-bezier(.22,.8,.25,1),clip-path .3s cubic-bezier(.22,.8,.25,1);position:fixed;left:0;transform:translateY(calc(100% - 35px))}.mobile-add-sheet.open{z-index:32;clip-path:inset(0);pointer-events:auto;transform:translate(0,0)}.mobile-add-sheet:not(.open) .addexercise{visibility:hidden;pointer-events:none}.mobile-add-handle{width:100%;height:35px;color:var(--muted);touch-action:none;pointer-events:auto;background:0 0;place-items:center;padding:6px 0 5px;display:grid}.mobile-add-handle span{background:var(--border);border-radius:4px;width:42px;height:5px;display:block}.mobile-add-handle b{font-size:0}.mobile-add-sheet.open .mobile-add-handle b{font-size:10px;font-weight:700}.mobile-add-sheet .addexercise{max-height:min(48dvh,420px);overflow:auto}.mobile-add-backdrop{inset:0 0 var(--mobile-nav-height);z-index:31;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080d0a73;position:fixed}.workspace>.logger{will-change:auto;animation:none!important;transform:none!important}.mobile-add-sheet{isolation:isolate}.mobile-add-sheet.open{box-shadow:0 -22px 55px #00000052}.mobile-add-backdrop{-webkit-backdrop-filter:none}}@media (width>=761px){.mobile-add-handle,.mobile-add-backdrop{display:none}}@media (width<=760px){.logger .open+.log-exercise{display:block}.logger .log-exercise:has(+.open){display:block}.logger .log-exercise.open .exercise-tab strong{letter-spacing:-.025em;text-overflow:clip;white-space:nowrap;min-width:0;font-size:clamp(11px,3.5vw,16px);line-height:1.1;overflow:hidden}.logger .log-exercise:has(+.open){box-shadow:none;border-radius:10px;margin-bottom:6px!important}.logger .log-exercise:has(+.open) .exercise-tab{border:1px solid var(--border);background:var(--soft);border-radius:10px;min-height:38px;padding:6px 11px}.logger .log-exercise:has(+.open) .exercise-tab span{grid-template-columns:none;gap:8px;min-width:0;display:flex}.logger .log-exercise:has(+.open) .exercise-tab b{flex:0 0 23px;width:23px;height:23px;font-size:10px}.logger .log-exercise:has(+.open) .exercise-tab strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.15;overflow:hidden}.logger .log-exercise:has(+.open) .exercise-tab small{display:none}.logger .log-exercise:has(+.open) .exercise-tab i{font-size:0}.logger .log-exercise:has(+.open) .exercise-tab i:after{content:"↑";font-size:15px}.logger .open+.log-exercise{box-shadow:none;border-radius:10px;margin-top:6px!important;margin-bottom:0!important}.logger .open+.log-exercise .exercise-tab{border:1px solid var(--border);background:var(--soft);border-radius:10px;min-height:38px;padding:6px 11px}.logger .open+.log-exercise .exercise-tab span{grid-template-columns:none;gap:8px;min-width:0;display:flex}.logger .open+.log-exercise .exercise-tab b{flex:0 0 23px;width:23px;height:23px;font-size:10px}.logger .open+.log-exercise .exercise-tab strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.15;overflow:hidden}.logger .open+.log-exercise .exercise-tab small{display:none}.logger .open+.log-exercise .exercise-tab i{font-size:0}.logger .open+.log-exercise .exercise-tab i:after{content:"↓";font-size:15px}body:has(.routine-picker) .workspace{padding-inline:20px!important}body:has(.routine-picker) .head{margin-bottom:22px}body:has(.routine-picker) .head h1{font-size:clamp(36px,10vw,44px);line-height:1.03}body:has(.routine-picker) .head>div>p:last-child{margin-top:10px;font-size:16px;line-height:1.45}body:has(.routine-picker) .routine-picker{gap:12px}body:has(.routine-picker) .picker-folder-group{border-radius:16px!important;padding:18px!important}body:has(.routine-picker) .picker-folder-toggle{min-height:58px!important}body:has(.routine-picker) .picker-folder-toggle b{font-size:18px}body:has(.routine-picker) .picker-folder-toggle small{margin-top:4px;font-size:13px}body:has(.routine-picker) .picker-folder-toggle i{font-size:25px}body:has(.routine-picker) .picker-routines{gap:8px!important;margin-top:12px!important}body:has(.routine-picker) .routine-picker .picker-folder-group .picker-routines button{min-height:60px!important;padding:13px 14px!important}body:has(.routine-picker) .routine-picker .picker-folder-group .picker-routines strong{font-size:16px!important}body:has(.routine-picker) .routine-picker .picker-folder-group .picker-routines small{font-size:12px!important}.logger .next-exercise{display:none}html,body,#root,.app{min-height:100dvh}.workspace,main.workspace{min-height:100dvh!important;padding-bottom:var(--mobile-nav-height)!important}.mobile{background:var(--surface);border-top:1px solid var(--border);width:100%;bottom:0;left:0;right:0;display:flex!important;position:fixed!important}.logger .log-exercise.open{z-index:4;background:color-mix(in srgb,var(--surface) 84%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:0 20px 44px var(--shadow);margin-bottom:-96px;animation:.34s cubic-bezier(.22,.8,.25,1) both exercise-sheet-in;position:relative;transform:translateY(-96px)}.logger .log-exercise.open .exercise-body{overscroll-behavior:contain;max-height:calc(100dvh - 170px);overflow-y:auto}body:has(.logger .log-exercise.open) .head:has(+.logger)>div{filter:blur(2px);opacity:.4;transition:transform .28s,filter .28s,opacity .28s;transform:scale(.98)}body:has(.logger .log-exercise.open) .head:has(+.logger)>.primary{z-index:5;position:relative}}@keyframes exercise-sheet-in{0%{opacity:.7;transform:translateY(-58px)scale(.985)}to{opacity:1;transform:translateY(-96px)scale(1)}}@media (width<=760px){.logger .log-exercise.open{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;border-color:var(--border);box-shadow:0 12px 30px var(--shadow);margin-bottom:0;animation:none;transform:none}.logger .log-exercise.open .exercise-body{max-height:none;overflow:visible}body:has(.logger .log-exercise.open) .head:has(+.logger)>div{filter:none;opacity:1;transform:none}.workspace:has(.logger){padding-top:calc(var(--safe-area-top) + 16px)!important}.head:has(+.logger){margin-bottom:12px}.head:has(+.logger) .session-name{font-size:29px;line-height:1}.head:has(+.logger)>.primary{height:38px;min-height:38px}.logger article.log-exercise{margin-bottom:6px}.exercise-tab{padding:12px 14px}.exercise-tab span{grid-template-columns:28px 1fr;column-gap:9px}.exercise-tab strong{font-size:17px;line-height:1.2}.exercise-tab small{white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.25;overflow:hidden}.exercise-body{padding:0 14px 14px}.logger .exercise-body .log-head{padding-top:8px}.setlabels{padding:5px 0}.set{padding:4px 0}.set input{min-height:40px;padding:7px 6px}.logger .exercise-note{margin-top:10px}.logger .exercise-note textarea{min-height:46px;padding:8px}main.workspace:has(.month-grid):not(:has(.week-planner)){height:calc(100dvh - var(--mobile-nav-height));flex-direction:column;display:flex;overflow:hidden;min-height:0!important;padding:calc(var(--safe-area-top) + 16px) 12px 10px!important}.workspace:has(.month-grid):not(:has(.week-planner))>.head{flex:none;gap:8px;margin-bottom:10px}.workspace:has(.month-grid):not(:has(.week-planner))>.head h1{font-size:clamp(32px,9vw,40px)}.workspace:has(.month-grid):not(:has(.week-planner))>.head .overline{margin-bottom:6px}.workspace:has(.month-grid):not(:has(.week-planner))>.head>div>p:last-child{display:none}.workspace:has(.month-grid):not(:has(.week-planner))>.head .primary{min-height:38px;padding:8px 10px;font-size:12px}.workspace:has(.month-grid):not(:has(.week-planner))>.calendar-controls{flex:none;min-height:38px;margin-bottom:7px}.workspace:has(.month-grid):not(:has(.week-planner))>.month-grid{flex-direction:column;flex:1;min-height:0;padding:5px;display:flex}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-weekdays{flex:0 0 24px}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-days{flex:1;grid-auto-rows:minmax(0,1fr);min-height:0}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-days>i{min-height:0}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day{min-height:0}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day{padding:4px;overflow:hidden}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day>span{font-size:10px}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day.today>span{min-width:20px;height:20px}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day>div{gap:2px;margin-top:3px}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day b{white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.15;display:block;overflow:hidden}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day small{display:none}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day button{border-radius:50%;place-items:center;width:22px;height:22px;padding:0;font-size:0;display:grid}.workspace:has(.month-grid):not(:has(.week-planner)) .calendar-day button:after{content:"→";font-size:13px}.workout-head-actions{white-space:nowrap;flex:none;gap:6px;display:flex}.head:has(+.logger) .workout-head-actions>.cancel-workout{width:64px;min-width:64px;min-height:38px;padding:0 6px;font-size:0}.head:has(+.logger) .workout-head-actions>.cancel-workout:after{content:"Cancel";font-size:12px;font-weight:800}.head:has(+.logger) .workout-head-actions>.primary{width:68px;min-width:68px;height:38px;min-height:38px;padding:0 8px;font-size:0}.head:has(+.logger) .workout-head-actions>.primary:after{content:"Finish";font-size:13px;font-weight:900}:root{--safe-area-top:env(safe-area-inset-top,0px);--safe-area-right:env(safe-area-inset-right,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--mobile-nav-height:calc(76px + var(--safe-area-bottom))}main.workspace{box-sizing:border-box;border-left:var(--safe-area-left) solid transparent;border-right:var(--safe-area-right) solid transparent}.head>div,.card,.card>div{overflow-wrap:anywhere;min-width:0}main.workspace input,main.workspace select,main.workspace textarea,.modal input,.modal select,.modal textarea{font-size:16px}main.workspace .primary,.modal .primary{min-height:48px}.mobile-add-sheet{padding-left:calc(16px + var(--safe-area-left));padding-right:calc(16px + var(--safe-area-right))}.error,.toast{top:calc(12px + var(--safe-area-top))}.mobile{box-sizing:border-box;padding:5px calc(3px + var(--safe-area-right)) calc(5px + var(--safe-area-bottom)) calc(3px + var(--safe-area-left));box-shadow:none;grid-template-columns:repeat(5,minmax(0,1fr));height:var(--mobile-nav-height)!important;display:grid!important}.mobile button{appearance:none;min-width:0;min-height:54px;box-shadow:none;color:var(--muted);background:0 0;border:0;align-content:center;justify-items:center;gap:2px;display:grid;padding:2px 0!important;font-size:23px!important}.mobile button span{line-height:1}.mobile button.active{color:var(--accent)}.mobile button.mobile-log span{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-dark);border-radius:50%;place-items:center;display:grid}.mobile small{white-space:normal;overflow-wrap:anywhere;font-weight:600;font-size:10px!important}}:root{font-synthesis:none}body,button,input,select,textarea{font-family:Manrope,Arial,sans-serif}h1,h2,h3,strong,button{font-feature-settings:"ss01" 1, "cv02" 1}.overline,.title,.exercise-note,.addexercise p,.picker-folder,.modal>label,.routine-intro>div span,.day-tag,.builder-basics label,.add-exercise-label,.builder-list-head,.setlabels{letter-spacing:.09em;font-weight:600;font-family:IBM Plex Mono,Consolas,monospace!important}.head h1,.session-name{letter-spacing:-.06em;font-weight:800}.routine-manager{max-width:1120px}.routine-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.routine-import{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);border-radius:8px;padding:10px 15px;font-size:14px;font-weight:700}.workout-transfer{width:min(560px,100vw - 32px);max-height:85dvh;overflow-y:auto}.workout-transfer .modal-head h2{font-size:26px}.workout-transfer p{line-height:1.5}.workout-transfer .error{box-shadow:none;margin-top:16px;position:static}.workout-transfer label{color:var(--text);gap:7px;margin:16px 0;font-size:14px;font-weight:700;display:grid}.workout-transfer input,.workout-transfer select{border:1px solid var(--border);background:var(--field);width:100%;min-width:0;min-height:44px;color:var(--text);border-radius:7px;padding:10px 12px;font-size:16px}.workout-transfer input:focus,.workout-transfer select:focus{outline:2px solid var(--accent);outline-offset:2px}.transfer-link-form{gap:10px;display:grid}.transfer-link-form label{margin-bottom:0}.transfer-link-form button{background:var(--accent-soft);min-height:44px;color:var(--accent-dark)}.transfer-preview{border:1px solid var(--border);background:var(--soft);border-radius:8px;margin:20px 0;padding:16px}.transfer-preview h3{overflow-wrap:anywhere;margin:0}.transfer-preview p,.transfer-hint{color:var(--muted);font-size:13px}.transfer-preview ol{margin-bottom:0;padding-left:22px}.transfer-preview li{overflow-wrap:anywhere;padding:6px 0}.transfer-preview small{color:var(--muted);margin-top:4px;display:block}.transfer-success{background:var(--accent-soft);color:var(--accent-dark);border-radius:8px;padding:12px 16px}@media (width<=760px){.routine-header-actions{justify-content:flex-end;gap:8px}.routine-import{padding:9px 11px;font-size:12px}.workout-transfer{padding:20px}}.routine-manager .head{align-items:center;margin-bottom:22px}.routine-manager .head h1{font-size:clamp(42px,4.5vw,62px)}.routine-manager .head>div>p:last-child{font-size:16px}.routine-manager .head .primary,.routine-create button,.routine-add-day,.routine-start{background:var(--accent);color:#102016;box-shadow:none;border-radius:8px;font-size:14px;font-weight:750}.app:not(.dark) .routine-manager .head .primary,.app:not(.dark) .routine-create button{color:#f7faf5}.routine-manager .head .primary{padding:13px 18px}.routine-manager .head .primary:hover,.routine-create button:hover,.routine-add-day:hover,.routine-start:hover{background:color-mix(in srgb,var(--accent) 82%,white);transform:none}.routine-create{border-bottom:1px solid var(--border);grid-template-columns:185px minmax(160px,1fr) auto;align-items:center;gap:12px;margin-bottom:16px;padding:0 0 20px;display:grid}.routine-create label{font-size:14px;font-weight:700}.routine-create input{border:1px solid var(--border);background:var(--field);width:100%;min-height:44px;color:var(--text);border-radius:7px;outline:none;padding:9px 14px}.routine-create input:focus{border-color:var(--accent)}.routine-create button{min-height:44px;padding:0 17px}.routine-folder-list{display:grid}.routine-group{border-bottom:1px solid var(--border)}.routine-group.open{border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 72%,transparent);border-radius:7px;margin-bottom:4px}.routine-group-head{justify-content:space-between;align-items:center;gap:10px;min-height:66px;padding:0 18px;display:flex}.routine-group.open .routine-group-head{border-bottom:1px solid var(--border)}.routine-folder-toggle{min-width:0;color:var(--text);text-align:left;background:0 0;flex:1;align-items:center;gap:14px;padding:12px 0;display:flex}.routine-folder-toggle:hover .routine-folder-title,.routine-day-open:hover strong{color:var(--accent-dark)}.folder-chevron{width:17px;color:var(--text);text-align:center;font-size:24px;line-height:1}.folder-icon{width:27px;height:27px;color:var(--accent);flex:none}.routine-folder-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:18px;font-weight:750;overflow:hidden}.routine-folder-toggle small{color:var(--muted);flex:none;font-size:13px}.routine-group-actions,.routine-day-actions{flex:none;align-items:center;gap:12px;display:flex}.routine-add-day{background:var(--accent-soft);min-height:38px;color:var(--accent-dark);padding:0 14px}.routine-menu{position:relative}.routine-menu summary{width:34px;height:38px;color:var(--muted);cursor:pointer;border-radius:6px;place-items:center;font-size:22px;line-height:1;list-style:none;display:grid}.routine-menu summary::-webkit-details-marker{display:none}.routine-menu summary:hover,.routine-menu[open] summary{background:var(--accent-soft);color:var(--text)}.routine-menu-panel{z-index:4;border:1px solid var(--border);background:var(--surface);min-width:150px;box-shadow:0 10px 26px var(--shadow);border-radius:8px;padding:5px;position:absolute;top:100%;right:0}.routine-menu-panel button{width:100%;color:var(--text);text-align:left;background:0 0;border-radius:5px;padding:10px 11px;font-size:13px;display:block}.routine-menu-panel button:hover{background:var(--soft)}.routine-menu-panel .danger{color:#ce8c94}.routine-day-list{padding:0 22px 0 52px}.routine-day-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;min-height:68px;display:flex}.routine-day-row:last-child{border-bottom:0}.routine-day-row:hover{background:color-mix(in srgb,var(--soft) 60%,transparent)}.routine-day-open{min-width:0;color:var(--text);text-align:left;background:0 0;flex:1;align-items:center;gap:16px;padding:10px 0;display:flex}.routine-day-open svg{width:22px;height:22px;color:var(--muted);flex:none}.routine-day-open span{min-width:0}.routine-day-open strong,.routine-day-open small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.routine-day-open strong{font-size:15px;font-weight:750}.routine-day-open small{color:var(--muted);margin-top:3px;font-size:12px}.routine-start{background:var(--accent-soft);min-width:72px;min-height:38px;color:var(--accent-dark);padding:0 12px}.routine-list-empty{color:var(--muted);padding:22px 0;font-size:13px}@media (width<=760px){.routine-manager .head{align-items:flex-start}.routine-manager .head h1{font-size:clamp(34px,9vw,46px)}.routine-manager .head .primary{min-height:44px}.routine-create{grid-template-columns:1fr auto;gap:9px}.routine-create label{grid-column:1/-1}.routine-create input{min-width:0;font-size:16px}.routine-group-head{min-height:60px;padding:0 10px}.routine-folder-toggle{gap:9px}.routine-folder-title{font-size:15px}.routine-folder-toggle small{font-size:11px}.folder-icon{width:22px;height:22px}.routine-group-actions,.routine-day-actions{gap:4px}.routine-add-day{padding:0 9px;font-size:12px}.routine-day-list{padding:0 10px 0 22px}.routine-day-row{min-height:68px}.routine-day-open{gap:10px}.routine-day-open strong{font-size:14px}.routine-day-open small{font-size:11px}.routine-start{min-width:58px;min-height:35px;font-size:12px}}@media (width<=430px){.routine-manager .head .primary{padding:9px 11px;font-size:12px}.routine-folder-toggle small{display:none}.routine-create button{padding:0 11px;font-size:12px}}@media (width<=760px){.routine-manager{width:100%;min-width:0}.routine-manager .head{gap:10px;margin-bottom:18px;padding-right:38px}.routine-manager .head h1{font-size:clamp(31px,8vw,38px);line-height:1.08}.routine-manager .head>div>p:last-child{font-size:14px;line-height:1.4}.routine-manager .head .primary{min-height:44px;padding:10px 14px;font-size:13px}.routine-create{margin-bottom:12px;padding-bottom:16px}.routine-create label{font-size:14px}.routine-create button{font-size:13px}.routine-group{min-width:0}.routine-group-head{gap:5px;min-width:0;padding:0 8px}.routine-folder-toggle{gap:7px;min-width:0;overflow:hidden}.routine-folder-title{flex:auto;font-size:14px}.routine-group-actions{gap:2px}.routine-add-day{width:34px;min-width:34px;height:36px;padding:0;font-size:0}.routine-add-day:after{content:"+";font-size:20px}.routine-menu summary{width:30px;height:36px}.routine-day-list{min-width:0;padding:0 8px}.routine-day-row{gap:7px;min-width:0;min-height:62px}.routine-day-open{gap:9px;min-width:0;padding:8px 0;overflow:hidden}.routine-day-open span{flex:auto;min-width:0}.routine-day-open svg{width:19px;height:19px}.routine-day-open strong{font-size:14px}.routine-day-open small{max-width:100%;font-size:11px}.routine-day-actions{gap:1px}.routine-start{min-width:50px;min-height:34px;padding:0 8px;font-size:11px}}main.workspace:has(.workout-chooser){height:auto;min-height:100dvh;overflow:visible;padding-top:clamp(38px,4vw,58px)!important;padding-bottom:80px!important}.workout-chooser{max-width:1240px}.workout-chooser .head{align-items:center;margin-bottom:24px}.workout-chooser .head h1{letter-spacing:-.045em;font-size:clamp(36px,3.2vw,44px);font-weight:750;line-height:1.1}.workout-chooser .head>div>p:last-child{margin-top:7px;font-size:16px}.chooser-empty-action{color:var(--accent-dark);background:0 0;padding:9px 0;font-size:14px;font-weight:750}.chooser-empty-action:hover{text-decoration:underline}.chooser-tabs{border-bottom:1px solid var(--border);scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 72%,var(--border)) transparent;gap:0;padding:0 0 10px;display:flex;overflow-x:auto}.chooser-tabs::-webkit-scrollbar{height:8px}.chooser-tabs::-webkit-scrollbar-track{background:0 0}.chooser-tabs::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 68%,var(--border));border:2px solid var(--surface);border-radius:999px;min-width:42px}.chooser-tabs::-webkit-scrollbar-thumb:hover{background:var(--accent)}.chooser-tabs::-webkit-scrollbar-button{width:0;height:0;display:none}.chooser-tabs button{border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 24%,transparent);min-width:210px;max-width:300px;min-height:74px;color:var(--muted);text-align:center;box-shadow:none;border-radius:0;flex:none;align-content:center;gap:3px;padding:12px 24px;transition:background-color .15s,color .15s;display:grid;position:relative}.chooser-tabs button:first-child{border-radius:7px 0 0 7px}.chooser-tabs button:last-child{border-radius:0 7px 7px 0}.chooser-tabs button+button{border-left:0}.chooser-tabs button:hover{background:var(--soft)}.chooser-tabs button.selected{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent-dark);border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}.chooser-tabs button.selected:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.chooser-tabs strong{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.chooser-tabs small{color:var(--muted);font-size:12px}.chooser-selected{padding-top:42px}.chooser-selected-heading{border-bottom:1px solid var(--border);padding-bottom:21px}.chooser-selected-heading h2{color:var(--text);letter-spacing:-.045em;margin:0;font-size:clamp(26px,2.4vw,31px);font-weight:750}.chooser-selected-heading p{color:var(--muted);margin:5px 0 0;font-size:15px}.chooser-days{width:100%}.chooser-day{border-bottom:1px solid var(--border);width:100%;min-height:76px;color:var(--text);text-align:left;box-shadow:none;background:0 0;grid-template-columns:105px minmax(0,1fr) 105px;align-items:center;gap:20px;padding:14px 16px;transition:background-color .15s;display:grid}.chooser-day:nth-child(2n){background:color-mix(in srgb,var(--accent) 4%,transparent)}.chooser-day:hover{background:color-mix(in srgb,var(--accent) 9%,transparent);transform:none}.chooser-day-number{color:var(--muted);font-size:14px;font-weight:600}.chooser-day-copy{gap:4px;min-width:0;display:grid}.chooser-day-copy strong{letter-spacing:-.025em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:17px;font-weight:700;overflow:hidden}.chooser-day-copy small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.chooser-start{color:var(--accent-dark);white-space:nowrap;justify-content:flex-end;align-items:center;gap:16px;font-size:15px;font-weight:750;display:flex}.chooser-start span{font-size:21px;transition:transform .15s}.chooser-day:hover .chooser-start span{transform:translate(2px)}.chooser-empty{color:var(--muted);padding:26px 10px;font-size:14px}@media (width<=760px){main.workspace:has(.workout-chooser){padding:calc(var(--safe-area-top) + 24px) 16px var(--mobile-nav-height)!important}.workout-chooser{width:100%;min-width:0}.workout-chooser .head{text-align:left;align-items:flex-start;gap:6px;margin-bottom:16px;padding-right:38px}.workout-chooser .head h1{font-size:clamp(31px,8vw,38px);line-height:1.08}.workout-chooser .head>div>p:last-child{font-size:14px}.chooser-empty-action{align-self:flex-start;min-height:42px;padding:7px 0;font-size:13px}.chooser-tabs{scrollbar-width:none;gap:0}.chooser-tabs::-webkit-scrollbar{display:none}.chooser-tabs button{flex:0 0 50%;min-width:0;max-width:none;min-height:67px;padding:8px 10px}.chooser-tabs.tabs-1 button{flex-basis:100%}.chooser-tabs.tabs-2 button{flex-basis:50%}.chooser-tabs.tabs-3 button{flex-basis:33.3333%}.chooser-tabs.tabs-4 button{flex-basis:25%}.chooser-tabs strong{white-space:normal;font-size:13px;line-height:1.15}.chooser-tabs small{font-size:11px}.chooser-selected{padding-top:19px}.chooser-selected-heading{padding-bottom:14px}.chooser-selected-heading h2{font-size:clamp(21px,6vw,25px);line-height:1.15}.chooser-selected-heading p{font-size:13px}.chooser-day{grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;min-height:74px;padding:10px 8px}.chooser-day-number{grid-column:1/-1;font-size:12px}.chooser-day-copy strong{font-size:16px}.chooser-day-copy small{font-size:12px}.chooser-start{gap:0;font-size:0}.chooser-start span{font-size:24px}}.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .legend span:last-child{display:none}.mobile-swipe-title,.dashboard-page-indicator,.mobile-add-weight{display:none}@media (width<=760px){.dashboard-sheet,.dashboard-sheet-trigger{display:none}.dashboard-volume:has(.metric-toggle button:nth-child(2).active){column-gap:14px}.dashboard-volume:has(.metric-toggle button:nth-child(2).active) .bar>div:first-child{font-size:10px}.dashboard-workspace .head{align-items:flex-start;margin-bottom:20px}.dashboard-workspace .head h1{font-size:27px}.dashboard-workspace .head>div>p:last-child{font-size:13px;display:block}.dashboard-workspace .primary.dashboard-log{min-height:40px;padding:0 11px;font-size:12px}.dashboard-metrics{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;margin-bottom:24px;padding:0}.dashboard-metrics article{border-bottom:1px solid var(--border);padding:16px 12px!important}.dashboard-metrics article+article{border-left:0}.dashboard-metrics article:nth-child(2n){border-left:1px solid var(--border)}.dashboard-metrics strong{font-size:23px}.dashboard-metrics small{font-size:10px}.dashboard-analytics{grid-template-columns:minmax(0,1fr);gap:28px;padding-bottom:27px;display:grid}.dashboard-weight,.dashboard-volume{min-height:0!important;display:block!important}.dashboard-weight .chart{--chart-axis-width:50px;height:235px;padding-left:var(--chart-axis-width);padding-right:0}.dashboard-weight .chart svg{right:0;left:var(--chart-axis-width);width:calc(100% - var(--chart-axis-width))}.dashboard-section-head{flex-direction:column;align-items:flex-start}.dashboard-section-head form{height:36px}.muscle-row{grid-template-columns:70px minmax(55px,1fr) 68px 38px;gap:8px}.muscle-rows{gap:14px;margin-top:22px}.dashboard-lower{grid-template-columns:1fr;gap:26px}.dashboard-lower>article{border-left:0!important;padding:0!important}.dashboard-lower>article+article{border-top:1px solid var(--border);padding-top:24px!important}.recent-row{grid-template-columns:52px 1fr 14px}.recent-row>span{grid-column:2;margin-top:-5px;font-size:10px}.first-weight{height:220px}.dash-tabs,.dashboard-greeting{display:none!important}.dashboard-weight .chart-dates{right:0;left:var(--chart-axis-width)}.today-control{display:none}.dashboard-head-actions{display:block}.dashboard-workspace .dashboard-greeting{max-width:210px;min-height:38px;font-size:12px}.dashboard-weight-actions{justify-content:space-between;width:100%}.weight-ranges{flex:1}.weight-ranges button{flex:1;min-width:0;padding-inline:4px}.dashboard-volume.sets-mode .muscle-rows{grid-template-columns:1fr;height:240px}.recent-row>i{grid-area:1/3/3}.dashboard-volume .muscle-card-head{align-items:center}.dashboard-volume .metric-toggle button{min-height:34px;padding-inline:9px}html:has(main.dashboard-workspace){height:100%;overflow:hidden}body:has(main.dashboard-workspace){height:100%;overflow:hidden}body:has(main.dashboard-workspace) #root{height:100%;overflow:hidden}.app:has(main.dashboard-workspace){height:100%;overflow:hidden}.dashboard-workspace .dashboard-shell::-webkit-scrollbar{display:none}.dashboard-overview-page::-webkit-scrollbar{display:none}.dashboard-workspace .dashboard-analytics::-webkit-scrollbar{display:none}.dashboard-workspace .dashboard-lower::-webkit-scrollbar{display:none}.dashboard-overview-page .head{flex-direction:column;align-items:stretch;gap:14px;margin:0 0 18px;display:flex}.mobile-dashboard-topbar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.mobile-dashboard-topbar>span{align-items:center;gap:9px;display:flex}.mobile-dashboard-topbar>span>b{background:var(--accent);color:#102016;border-radius:10px;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.mobile-dashboard-topbar em{color:var(--text-primary);letter-spacing:.03em;font-size:13px;font-style:normal;font-weight:750;line-height:1.15}.mobile-dashboard-topbar>span:nth-child(2){border-left:1px solid var(--border-subtle);gap:2px;padding-left:13px;display:none}.mobile-dashboard-topbar small{color:var(--text-primary);font-size:11px;font-weight:700}.mobile-dashboard-topbar time{color:var(--text-secondary);font-size:10px}.mobile-dashboard-topbar>i{background:var(--accent-muted);color:var(--accent-bright);border-radius:50%;place-items:center;width:40px;height:40px;font-size:15px;font-style:normal;font-weight:800;display:grid}.dashboard-overview-page .head h1{font-size:clamp(26px,7vw,30px);line-height:1.14}.dashboard-overview-page .dashboard-greeting{max-width:none;min-height:0;margin:8px 0 0;font-size:16px;line-height:1.45;display:block!important}.dashboard-overview-page .dashboard-head-actions{width:100%;margin:0}.dashboard-overview-page .dashboard-log{width:100%;min-height:52px;padding-inline:16px;font-size:16px}.dashboard-overview-page .dashboard-log:after{content:"›";float:right;font-size:22px;line-height:.7;display:none}.dashboard-overview-page .dashboard-metrics{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 0;padding:0;display:grid}.mobile-dashboard-home{gap:14px;margin-top:20px;display:block}.mobile-dashboard-home>article{border:1px solid var(--border-subtle);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-surface) 78%,transparent),color-mix(in srgb,var(--accent-muted) 32%,transparent));border-radius:12px;padding:15px}.mobile-card-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-card-heading h2{color:var(--text-primary);margin:0;font-size:22px}.mobile-card-heading button{min-height:44px;color:var(--accent-bright);background:0 0;padding:0;font-size:14px;font-weight:700}.mobile-today-card h3{color:var(--text-primary);letter-spacing:-.04em;margin:20px 0 5px;font-size:25px}.mobile-today-card>p{color:var(--text-secondary);margin:0;font-size:13px}.mobile-today-stats{color:var(--text-secondary);gap:18px;margin:18px 0;font-size:12px;display:flex}.mobile-start-workout{background:var(--accent);color:#102016;border-radius:9px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:44px;font-size:13px;font-weight:800;display:flex}.mobile-start-workout b{font-size:20px;line-height:1}.mobile-week-content{grid-template-columns:minmax(0,1fr) 64px;align-items:center;gap:12px;margin-top:16px;display:grid}.mobile-week-days{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:11px;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-top:8px;padding:12px;display:grid}.mobile-week-days span{justify-items:center;gap:10px;display:grid}.mobile-week-days i{border:1px solid var(--border-subtle);background:var(--field);color:var(--text-muted);border-radius:50%;place-items:center;width:28px;height:28px;font-size:15px;font-style:normal;display:grid}.mobile-week-days .complete i{background:var(--accent);color:#102016}.mobile-week-days small{color:var(--text-secondary);font-size:12px}.mobile-week-ring{text-align:center;border-radius:50%;place-content:center;width:60px;height:60px;display:grid;position:relative;box-shadow:inset 0 0 0 8px #0000}.mobile-week-ring:after{content:"";background:var(--bg-main);border-radius:50%;position:absolute;inset:8px}.mobile-week-ring b,.mobile-week-ring small{z-index:1;position:relative}.mobile-week-ring b{font-size:14px}.mobile-week-ring small{color:var(--text-secondary);font-size:8px}.mobile-recent-card{gap:8px;display:grid}.mobile-recent-row{border-top:1px solid var(--border-subtle);min-width:0;color:var(--text-primary);text-align:left;background:0 0;grid-template-columns:48px minmax(0,1fr) auto 10px;align-items:center;gap:9px;padding:9px 0 0;display:grid}.mobile-recent-row time{border-right:1px solid var(--border-subtle);justify-items:center;padding-right:8px;display:grid}.mobile-recent-row time small{color:var(--text-secondary);font-size:8px}.mobile-recent-row time b{font-size:18px}.mobile-recent-row>span{min-width:0}.mobile-recent-row>span>b,.mobile-recent-row>span>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.mobile-recent-row>span>b{font-size:12px}.mobile-recent-row>span>small{color:var(--text-secondary);margin-top:3px;font-size:9px}.mobile-recent-row em{color:var(--text-secondary);text-align:right;white-space:nowrap;font-size:9px;font-style:normal}.mobile-recent-row>i{color:var(--text-muted);font-style:normal}.dashboard-workspace .dashboard-analytics{border:0;gap:0;display:block!important}.dashboard-workspace .dashboard-weight{margin:0 0 20px;min-height:0!important}.dashboard-workspace .dashboard-weight .chart{--chart-axis-width:30px;--chart-right-gutter:30px;padding-right:var(--chart-right-gutter);margin:10px 0 0;height:clamp(155px,22dvh,200px)!important;min-height:0!important}.dashboard-workspace .dashboard-volume{border-top:1px solid var(--border-subtle)!important;min-height:0!important;padding-top:20px!important}.dashboard-workspace .dashboard-volume:before{display:none}.dashboard-workspace .muscle-card-head h2{white-space:nowrap;font-size:18px}.dashboard-workspace .muscle-rows{gap:12px;margin-top:20px}.dashboard-workspace .muscle-row{grid-template-columns:72px minmax(35px,1fr) 68px 34px;gap:7px;font-size:13px}.dashboard-workspace .dashboard-lower{align-content:start;gap:18px;display:block!important}.dashboard-workspace .dashboard-lower>article{margin-bottom:20px;border:0!important;padding:12px!important}.dashboard-workspace .dashboard-lower>article+article{border-top:0!important;padding-top:0!important}.dashboard-workspace .recent-row{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:9px;grid-template-columns:48px minmax(0,1fr) auto 12px;gap:9px;min-height:clamp(56px,8dvh,66px);margin-bottom:5px;padding:5px 8px;display:grid}.dashboard-workspace .week-row{background:color-mix(in srgb,var(--bg-surface) 75%,transparent);border-radius:7px;min-height:38px;padding:0 8px;font-size:14px}.dashboard-workspace .upcoming-row{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:8px;min-height:clamp(42px,6dvh,48px);margin-bottom:4px;padding:0 8px;font-size:14px}.dashboard-workspace .dashboard-shell{scroll-snap-type:none;scroll-behavior:auto;touch-action:pan-y pinch-zoom;scrollbar-width:none;overscroll-behavior-x:contain;grid-template:none;width:100%;min-height:0;height:100%!important;display:flex!important;overflow:hidden!important}.dashboard-overview-page,.dashboard-workspace .dashboard-analytics,.dashboard-workspace .dashboard-lower{scroll-snap-align:none;transform:translateX(var(--dashboard-page-offset,0%));will-change:transform;box-sizing:border-box;flex:0 0 100%;width:100%;min-width:0;height:100%;min-height:0;transition:transform .36s cubic-bezier(.22,.8,.25,1);overflow:hidden auto;margin:0!important;padding:20px 16px 48px!important;display:block!important}.app:has(main.dashboard-workspace){background:#101a13}main.workspace.dashboard-workspace{box-sizing:border-box;height:100dvh!important;min-height:0!important;padding:var(--safe-area-top) 0 var(--mobile-nav-height)!important;overflow:hidden!important}.dashboard-overview-page .dashboard-metrics article,.dashboard-overview-page .dashboard-metrics article:first-child,.dashboard-overview-page .dashboard-metrics article:nth-child(4){background:var(--bg-surface);min-height:0;box-shadow:none;border-radius:11px;display:block;position:relative;border:1px solid var(--border-subtle)!important;padding:12px!important}.dashboard-overview-page .dashboard-metrics article>.dashboard-icon{width:26px;height:26px;position:absolute;top:13px;left:13px}.dashboard-overview-page .dashboard-metrics article>div>span{align-items:center;min-height:26px;padding-left:34px;font-size:13px;line-height:1.25;display:flex}.dashboard-overview-page .dashboard-metrics strong{white-space:normal;font-size:26px}.dashboard-overview-page .dashboard-metrics small{white-space:normal;font-size:12px;line-height:1.3}.mobile-swipe-title{border-bottom:1px solid var(--border-subtle);letter-spacing:-.045em;margin:0 0 20px;padding:0 0 12px;font-size:clamp(26px,7vw,30px);font-weight:700;line-height:1.1;display:block}.dashboard-workspace .dashboard-section-head{display:block}.dashboard-workspace .dashboard-section-head>div:first-child{justify-content:space-between;align-items:center;display:flex}.dashboard-workspace .dashboard-section-head h2,.dashboard-workspace .muscle-card-head h2{font-size:22px}.dashboard-workspace .dashboard-section-head>div:first-child:after{content:"kg";color:var(--text-secondary);font-size:15px}.dashboard-workspace .dashboard-section-head p,.dashboard-workspace .muscle-card-head p{display:none}.dashboard-workspace .dashboard-weight-actions{align-items:center;gap:10px;margin-top:10px;display:flex;position:relative}.dashboard-workspace .weight-ranges{min-width:0;height:44px}.dashboard-workspace .weight-ranges button{min-width:0;padding:0 5px;font-size:13px}.dashboard-workspace .mobile-add-weight{background:var(--accent-deep);color:var(--accent-bright);border-radius:8px;flex:none;min-height:48px;padding:0 13px;font-size:14px;font-weight:700;display:block}.dashboard-workspace .dashboard-section-head form.adding{z-index:2;border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:8px;width:min(230px,100%);height:auto;min-height:48px;padding:3px;display:flex;position:absolute;top:50px;right:0}.dashboard-workspace .dashboard-section-head form.adding input{width:100%;min-width:0}.dashboard-workspace .dashboard-weight .chart svg{right:var(--chart-right-gutter);left:var(--chart-axis-width);width:calc(100% - var(--chart-axis-width) - var(--chart-right-gutter))}.dashboard-workspace .dashboard-weight .chart-axis{width:28px}.dashboard-workspace .dashboard-weight .chart-dates{right:var(--chart-right-gutter);left:var(--chart-axis-width)}.dashboard-workspace .muscle-card-head{flex-wrap:wrap;align-items:center;gap:8px}.dashboard-workspace .muscle-row>div{height:11px}.dashboard-workspace .muscle-row>span,.dashboard-workspace .muscle-row>small{font-size:12px}.dashboard-workspace .dashboard-lower .mobile-swipe-title{margin-bottom:12px;padding-bottom:10px}.dashboard-workspace .dashboard-lower .week-overview{display:none}.dashboard-workspace .section-heading h2{font-size:21px}.dashboard-workspace .section-heading span,.dashboard-workspace .section-heading button{font-size:14px}.dashboard-workspace .recent-row time small{font-size:10px}.dashboard-workspace .recent-row time strong{font-size:20px}.dashboard-workspace .recent-row-copy{grid-area:1/2!important;margin:0!important}.dashboard-workspace .recent-row-copy b{font-size:16px}.dashboard-workspace .recent-row-copy small{font-size:12px}.dashboard-workspace .recent-row>span:nth-of-type(2){white-space:normal;text-align:right;max-width:88px;font-size:11px;grid-area:1/3!important}.dashboard-workspace .recent-row>i{grid-column:4;font-size:20px}.dashboard-workspace .week-row>span{font-size:13px}.dashboard-workspace .week-row i{color:#102016;width:22px;height:22px;font-size:12px}.dashboard-page-indicator{right:0;bottom:calc(var(--mobile-nav-height) + 2px);z-index:28;pointer-events:none;justify-content:center;gap:4px;height:23px;display:flex;position:fixed;left:0}.dashboard-page-indicator button{width:22px;height:22px;color:var(--text-muted);pointer-events:auto;background:0 0;padding:0;font-size:17px}.dashboard-page-indicator button[aria-current=page]{color:var(--accent-bright)}.dashboard-workspace{font-size:16px}.dashboard-workspace :is(article,article>div,.head>div,.dashboard-head-actions,.section-heading,.muscle-card-head,.muscle-card-head>div,.recent-row-copy,.upcoming-row>span){min-width:0}.dashboard-workspace :is(h1,h2,b,strong,small,p,span){overflow-wrap:anywhere}.dashboard-workspace :is(.recent-row-copy b,.recent-row-copy small,.muscle-row>b,.muscle-card-head h2){white-space:normal;text-overflow:clip;overflow:visible}.dashboard-workspace :is(.dashboard-metrics small,.recent-row-copy small,.muscle-row>span,.muscle-row>small){font-size:13px;line-height:1.4}.dashboard-workspace :is(.dashboard-weight,.dashboard-volume,.dashboard-lower>article){min-height:0!important}.dashboard-workspace .dashboard-volume.sets-mode .muscle-rows{gap:12px;height:auto;padding:0;overflow:visible}.dashboard-workspace .dashboard-volume.sets-mode .muscle-row{min-height:0;padding:12px}}@media (width<=760px) and (prefers-reduced-motion:reduce){.dashboard-overview-page,.dashboard-workspace .dashboard-analytics,.dashboard-workspace .dashboard-lower{transition:none}}@media (width<=760px){.dashboard-overview-page .dashboard-greeting{height:1.45em;min-height:1.45em;position:relative;overflow:hidden;display:block!important}.dashboard-overview-page .dashboard-greeting-line{white-space:nowrap;width:max-content;max-width:none;transform:scale(var(--greeting-scale,1));transform-origin:0;align-items:center;display:inline-flex;position:absolute;top:0;left:0}.dashboard-overview-page .dashboard-greeting-line>span{white-space:nowrap;overflow-wrap:normal}.dashboard-overview-page .dashboard-greeting-line>i{flex:none}}.dashboard-weight .chart svg{cursor:crosshair}.dashboard-weight .weight-new-point.below{transform:translate(-50%,12px)}.dashboard-weight .weight-new-point.at-start.below{transform:translateY(12px)}.dashboard-weight .weight-new-point.at-end.below{transform:translate(-100%,12px)}.dashboard-weight .weight-new-point button:disabled{opacity:.6;cursor:wait}.dashboard-weight .weight-new-error{color:#c98b93;font-size:10px;line-height:1.3}@media (width<=760px){.dashboard-workspace .dashboard-weight-actions>form:not(.adding){display:none}}.workspace:has(.training-calendar){max-width:none;padding:30px 28px}.training-calendar{width:100%;color:var(--text)}.training-calendar-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px;display:flex}.training-calendar-header h1{letter-spacing:-.055em;white-space:nowrap;margin:0;font-size:clamp(38px,3.4vw,54px);line-height:1.08}.training-calendar-tools{align-items:center;gap:9px;min-width:0;display:flex}.training-calendar-tools button,.training-calendar-tools select{border:1px solid var(--border);background:var(--surface);height:44px;color:var(--text);border-radius:9px}.training-calendar-tools select{min-width:170px;max-width:290px;font:inherit;padding:0 15px;font-size:14px}.training-calendar-tools .calendar-icon-button{flex:none;width:44px;padding:0;font-size:25px;line-height:1}.training-calendar-tools .calendar-plan-button{background:var(--accent);color:#102016;white-space:nowrap;box-shadow:none;border-color:#0000;padding:0 18px;font-weight:800}.calendar-menu-wrap{position:relative}.calendar-menu{z-index:8;border:1px solid var(--border);background:var(--surface);min-width:180px;box-shadow:0 12px 25px var(--shadow);border-radius:10px;padding:6px;display:grid;position:absolute;top:50px;right:0}.calendar-menu button{text-align:left;border:0;height:40px;padding:0 12px;font-size:13px}.training-calendar-layout{grid-template-columns:minmax(0,1fr) minmax(260px,300px);align-items:stretch;gap:20px;display:grid}.training-month{border:1px solid var(--border);background:var(--surface);border-radius:11px;min-width:0;overflow:hidden}.training-weekdays,.training-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.training-weekdays span{border-right:1px solid var(--border);border-bottom:1px solid var(--border);height:48px;color:var(--muted);place-items:center;font-size:13px;display:grid}.training-weekdays span:last-child{border-right:0}.training-days{grid-auto-rows:minmax(118px,1fr)}.training-day{border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0;min-height:118px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border-radius:0;flex-direction:column;align-items:stretch;padding:12px 9px;transition:background .15s;display:flex;position:relative}.training-day:nth-child(7n){border-right:0}.training-day:nth-last-child(-n+7){border-bottom:0}.training-day:hover{background:var(--soft)}.training-day.completed{background:color-mix(in srgb,var(--accent) 11%,var(--surface))}.training-day.upcoming,.training-day.missed{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}.training-day.selected{z-index:1;outline:2px solid var(--accent);outline-offset:-2px;background:color-mix(in srgb,var(--accent) 15%,var(--surface))}.training-day.outside{opacity:.42}.training-date{place-items:center;width:27px;height:27px;font-size:15px;display:grid}.training-day.today .training-date{background:var(--accent);color:#102016;border-radius:50%;font-weight:800}.training-event{background:color-mix(in srgb,var(--accent) 13%,var(--surface));border-radius:6px;min-width:0;margin-top:auto;padding:7px 24px 7px 8px;display:block;position:relative}.training-day.upcoming .training-event,.training-day.missed .training-event{background:var(--soft)}.training-event b,.training-event small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.training-event b{font-size:12px;line-height:1.35}.training-event small{color:var(--muted);margin-top:3px;font-size:11px}.training-day.completed .training-event small{color:var(--accent-dark)}.training-event i{background:var(--accent);color:#102016;border-radius:50%;place-items:center;width:17px;height:17px;font-size:11px;font-style:normal;display:grid;position:absolute;top:8px;right:7px}.training-day:not(.completed) .training-event i{color:var(--muted);background:0 0}.training-event-short{display:none!important}.training-note-indicator{width:20px;height:20px;color:var(--accent-dark);cursor:help;border-radius:5px;place-items:center;font-size:14px;display:grid;position:absolute;top:8px;right:8px}.training-note-indicator:focus-visible,.training-detail-note-indicator:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.training-detail{border:1px solid var(--border);background:var(--surface);border-radius:11px;min-width:0;padding:22px 18px}.training-detail-head h2{letter-spacing:-.04em;margin:0;font-size:21px}.training-detail-head p{color:var(--muted);margin:3px 0 0;display:none}.training-detail-mobile-date{display:none}.training-detail-workout{border-top:1px solid var(--border);border-bottom:1px solid var(--border);align-items:center;gap:12px;margin:20px 0 14px;padding:16px 0;display:flex}.training-detail-icon{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-dark);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.training-detail-workout h3{margin:0;font-size:16px}.training-detail-workout p{color:var(--muted);margin:5px 0 0;font-size:13px}.training-detail-note-indicator{color:var(--accent-dark);cursor:help;margin-left:9px;font-size:.8em;display:inline-block}.training-detail-empty{color:var(--muted);margin:25px 0}.training-detail-primary{background:var(--accent);color:#102016;width:100%;min-height:48px;box-shadow:none;border-radius:9px;padding:10px;font-weight:800}.training-detail-actions{border-top:1px solid var(--border);margin-top:20px;display:grid}.training-detail-actions button{border:0;border-bottom:1px solid var(--border);min-height:50px;color:var(--text);text-align:left;background:0 0;align-items:center;gap:12px;padding:8px 3px;display:flex}.training-detail-actions button span{flex:1}.training-detail-actions button:hover{color:var(--accent-dark)}.training-calendar .week-planner{max-width:none;margin:0 0 20px}@media (width<=1100px){.training-calendar-layout{grid-template-columns:1fr}.training-detail{max-width:none}.training-days{grid-auto-rows:minmax(100px,1fr)}}@media (width<=760px){.workspace:has(.training-calendar){padding:calc(var(--safe-area-top) + 20px) 16px var(--mobile-nav-height)}.training-calendar-header{margin-bottom:18px;display:block}.training-calendar-header h1{margin-bottom:16px;font-size:clamp(30px,8vw,36px)}.training-calendar-tools{grid-template-columns:44px minmax(0,1fr) auto 44px;gap:7px;display:grid}.training-calendar-tools .previous{grid-column:1}.training-calendar-tools select{grid-area:1/2;min-width:0;max-width:none;padding:0 8px;font-size:13px}.training-calendar-tools .calendar-plan-button{grid-area:1/3;padding:0 10px;font-size:13px}.training-calendar-tools .next{grid-area:1/4}.training-calendar-tools .calendar-menu-wrap{position:absolute;top:17px;right:16px}.training-calendar-tools .calendar-menu-button{width:44px}.training-calendar-header h1{padding-right:52px}.training-calendar-layout{gap:18px}.training-weekdays span{height:38px;font-size:12px}.training-days{grid-auto-rows:minmax(68px,1fr)}.training-day{min-height:68px;padding:5px 3px}.training-date{width:22px;height:22px;font-size:13px}.training-event{text-align:center;margin-top:2px;padding:3px 2px}.training-event-full{display:none!important}.training-event-short{font-size:10px!important;display:block!important}.training-event small{display:none}.training-event i{width:auto;height:auto;margin:2px auto 0;font-size:9px;position:static;color:var(--accent-dark)!important;background:0 0!important}.training-detail{border-radius:11px;padding:18px}.training-detail-head h2{font-size:28px}.training-detail-head p,.training-detail-mobile-date{display:block}.training-detail-desktop-date{display:none}.training-detail-workout{margin:18px 0;padding:14px 0}.training-detail-workout h3{font-size:20px}.training-detail-workout p{font-size:15px}.training-detail-icon{width:48px;height:48px}.training-detail-actions{margin-top:16px}.training-calendar .week-planner>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=390px){.training-calendar-tools{grid-template-columns:44px minmax(0,1fr) 44px}.training-calendar-tools select{grid-column:2}.training-calendar-tools .calendar-plan-button{grid-area:2/2}.training-calendar-tools .next{grid-column:3}.training-weekdays span{font-size:11px}.training-event-short{font-size:9px!important}}.calendar-view-overlay,.calendar-note-overlay{z-index:50;place-items:center;padding:18px;display:grid}.calendar-view-panel,.calendar-note-panel{border:1px solid var(--border);background:var(--surface);width:min(620px,100%);max-height:min(88dvh,800px);color:var(--text);border-radius:14px;padding:24px;overflow:auto}.calendar-view-panel header,.calendar-note-panel header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.calendar-view-panel header small{color:var(--muted);font-size:12px}.calendar-view-panel h2,.calendar-note-panel h2{margin:5px 0;font-size:27px}.calendar-view-panel header p,.calendar-note-panel>p{color:var(--muted);margin:4px 0}.calendar-view-panel header>button,.calendar-note-panel header>button{background:var(--soft);width:40px;height:40px;color:var(--text);border-radius:9px;flex:none;font-size:24px}.calendar-view-note{background:var(--soft);white-space:pre-wrap;border-radius:9px;padding:12px}.calendar-view-exercises{border-top:1px solid var(--border);margin-top:20px}.calendar-view-exercises section{border-bottom:1px solid var(--border);padding:14px 0}.calendar-view-exercises h3{margin:0 0 5px;font-size:16px}.calendar-view-exercises p{color:var(--muted);margin:0;font-size:14px}.calendar-view-exercises small{color:var(--muted);margin-top:6px;display:block}.calendar-view-panel footer,.calendar-note-panel footer{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.calendar-view-panel footer button,.calendar-note-panel footer button{background:var(--accent-soft);min-height:44px;color:var(--accent-dark);border-radius:9px;padding:9px 16px;font-weight:750}.calendar-note-panel footer .primary{background:var(--accent);color:#102016}.calendar-note-panel textarea{border:1px solid var(--border);background:var(--field);width:100%;min-height:150px;color:var(--text);font:inherit;resize:vertical;border-radius:9px;margin-top:20px;padding:13px}@media (width<=760px){.calendar-view-overlay,.calendar-note-overlay{padding:12px}.calendar-view-panel,.calendar-note-panel{max-height:calc(100dvh - 100px);padding:18px}.calendar-view-panel h2,.calendar-note-panel h2{font-size:23px}}.training-month{overflow:visible}:is(.training-day:has(.training-note-indicator):hover,.training-day:has(.training-note-indicator):focus-within){z-index:5}.training-note-indicator,.training-detail-note-indicator{cursor:pointer;position:relative}.training-note-indicator{position:absolute}.training-note-tooltip{z-index:20;border:1px solid var(--border);background:var(--surface);width:max-content;max-width:min(280px,70vw);box-shadow:0 8px 20px var(--shadow);color:var(--text);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;pointer-events:none;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:400;line-height:1.4;display:none;position:absolute;top:calc(100% + 8px);right:0}.training-note-indicator:hover .training-note-tooltip,.training-note-indicator:focus .training-note-tooltip,.training-detail-note-indicator:hover .training-note-tooltip,.training-detail-note-indicator:focus .training-note-tooltip{display:block}.training-detail-note-indicator .training-note-tooltip{left:0;right:auto}main.workspace:has(.training-calendar){box-sizing:border-box;height:100dvh;min-height:0;overflow:hidden!important}.training-calendar{flex-direction:column;height:100%;min-height:0;display:flex}.training-calendar-header{flex:none}.training-calendar-layout{flex:1;min-height:0}.training-month{flex-direction:column;min-height:0;display:flex}.training-weekdays{flex:none}.training-days{flex:1;grid-auto-rows:minmax(0,1fr);min-height:0}.training-day{min-height:0}.training-calendar .week-planner{z-index:10;max-height:calc(100dvh - 130px);box-shadow:0 16px 40px var(--shadow);position:absolute;top:105px;left:28px;right:28px;overflow:auto}@media (width<=1100px){.training-calendar-layout{grid-template-rows:minmax(0,1fr) auto;display:grid}.training-detail{min-height:0}.training-days{grid-auto-rows:minmax(0,1fr)}}@media (width<=760px){main.workspace:has(.training-calendar){height:calc(100dvh - var(--mobile-nav-height));padding:calc(var(--safe-area-top) + 12px) 14px 8px!important}.training-calendar-header{margin-bottom:10px}.training-calendar-header h1{margin-bottom:9px;font-size:clamp(27px,7vw,32px)}.training-calendar-tools button,.training-calendar-tools select{height:40px}.training-calendar-tools .calendar-icon-button{width:40px}.training-calendar-tools{grid-template-columns:40px minmax(0,1fr) auto 40px}.training-calendar-layout{gap:10px}.training-weekdays span{height:30px}.training-days{grid-auto-rows:minmax(0,1fr)}.training-day{min-height:0;padding:3px 2px}.training-date{width:19px;height:19px;font-size:12px}.training-event{margin-top:auto;padding:1px 2px}.training-event-short{font-size:9px!important}.training-event i{margin-top:0;font-size:8px}.training-detail{padding:10px 13px}.training-detail-head h2{font-size:22px}.training-detail-head p{font-size:12px}.training-detail-workout{gap:9px;margin:7px 0;padding:7px 0}.training-detail-icon{width:34px;height:34px}.training-detail-workout h3{font-size:16px}.training-detail-workout p{margin-top:2px;font-size:12px}.training-detail-empty{margin:10px 0}.training-detail-primary{min-height:40px}.training-detail-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:7px;padding-top:5px}.training-detail-actions button{white-space:nowrap;border:0;justify-content:center;gap:4px;min-height:34px;padding:2px;font-size:11px}.training-detail-actions button span{flex:none}.training-calendar .week-planner{max-height:calc(100dvh - 180px);top:90px;left:14px;right:14px}}@media (width<=390px){.training-calendar-tools{grid-template-columns:40px minmax(0,1fr) auto 40px;gap:5px}.training-calendar-tools select{grid-area:1/2;width:100%;font-size:12px}.training-calendar-tools .calendar-plan-button{grid-area:1/3;padding:0 7px;font-size:12px}.training-calendar-tools .next{grid-area:1/4}}@media (width<=760px){.training-calendar-layout{grid-template-rows:auto minmax(0,1fr)}.training-month{align-self:start}.training-days{flex:none;grid-auto-rows:clamp(43px,6.3dvh,54px)}.training-day{height:100%}.training-event-short{text-overflow:clip;overflow:visible;font-size:10px!important}.training-detail{flex-direction:column;min-height:0;display:flex;overflow:hidden}.training-detail-actions{margin-top:auto}}@media (width>=1101px){main.workspace:has(.training-calendar){width:calc(100% - 224px)!important;max-width:none!important;padding-right:var(--dashboard-inline-gutter,28px)!important;padding-left:var(--dashboard-inline-gutter,28px)!important;margin-left:224px!important}.training-calendar-layout{flex:none;height:calc(100dvh - 140px)}}.training-day.filtered-out:not(.selected){background:var(--surface)}.training-day.filtered-out .training-event,.training-day.filtered-out .training-note-indicator{opacity:.25}.training-day.filtered-out:hover .training-event,.training-day.filtered-out:focus-visible .training-event,.training-day.filtered-out:hover .training-note-indicator,.training-day.filtered-out:focus-visible .training-note-indicator{opacity:.65}@media (width<=760px){main.workspace:has(.training-calendar){height:auto;min-height:100dvh!important;padding:calc(var(--safe-area-top) + 18px) 14px var(--mobile-nav-height)!important;overflow:visible!important}.training-calendar{height:auto;position:relative}.training-calendar-header{margin-bottom:14px;position:relative}.training-calendar-header h1{margin-bottom:16px;padding-right:52px;font-size:clamp(27px,7vw,32px)}.training-calendar-tools{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px}.training-calendar-tools button,.training-calendar-tools select{height:44px}.training-calendar-tools .calendar-icon-button{width:44px}.training-calendar-tools .previous{grid-area:1/1}.training-calendar-tools select{grid-area:1/2;width:100%;min-width:0;font-size:16px}.training-calendar-tools .next{grid-area:1/3}.training-calendar-tools .calendar-plan-button{grid-area:2/1/auto/-1;font-size:14px}.training-calendar-tools .calendar-menu-wrap{top:0;right:0}.training-calendar-layout{flex:none;grid-template-rows:auto auto;align-items:start;gap:14px}.training-days{grid-auto-rows:clamp(48px,7dvh,64px)}.training-day{padding:5px 3px}.training-date{width:23px;height:23px;font-size:13px}.training-event-short{text-overflow:ellipsis;overflow:hidden}.training-detail{padding:16px;display:block;overflow:visible}.training-detail-workout{margin:12px 0;padding:12px 0}.training-detail-primary{min-height:48px;font-size:16px}.training-detail-actions{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.training-detail-actions:empty{display:none}.training-detail-actions button{white-space:normal;min-height:44px}.training-detail-actions button:only-child{grid-column:1/-1;font-size:13px}.training-calendar .week-planner{max-height:none;box-shadow:none;margin-bottom:14px;position:static}}.workspace:has(.history-layout) .history-exercises{overscroll-behavior:contain}@media (width>=761px){main.workspace:has(.history-layout){flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}:is(.workspace:has(.history-layout)>.head,.workspace:has(.history-layout)>.history-tabs,.workspace:has(.history-page-title)>.history-toolbar){flex:none}.workspace:has(.history-layout)>.history-layout{flex:1;align-items:stretch;height:auto;min-height:0}:is(.workspace:has(.history-layout) .history-list,.workspace:has(.history-layout) .history-session){overscroll-behavior:contain;height:100%;min-height:0;max-height:none}.workspace:has(.history-layout) .history-list{overflow-y:auto}}@media (width<=760px){main.workspace:has(.history-layout){height:calc(100dvh - var(--mobile-nav-height));flex-direction:column;display:flex;overflow:hidden;min-height:0!important;padding:calc(var(--safe-area-top) + 18px) 16px 12px!important}:is(.workspace:has(.history-layout)>.head,.workspace:has(.history-layout)>.history-tabs,.workspace:has(.history-page-title)>.history-toolbar){flex:none}.workspace:has(.history-layout)>.history-layout{flex:1;min-height:0;display:block;position:relative;overflow:hidden}.workspace:has(.history-layout) .history-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:100%;min-height:0;max-height:none;position:absolute;inset:0;overflow-y:auto;height:auto!important}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app:has(.history-page-title){--history-stripe:color-mix(in srgb, var(--accent) 4%, transparent);--history-hover-outline:color-mix(in srgb, var(--accent) 40%, transparent)}.workspace:has(.history-page-title)>.history-tabs{border:1px solid var(--border);background:var(--soft)}.workspace:has(.history-page-title)>.history-tabs button{color:var(--muted);background:0 0;font-weight:750}.workspace:has(.history-layout)>.history-layout{min-width:0;display:grid}.workspace:has(.history-layout) .history-list{scrollbar-width:thin;scrollbar-color:var(--border) transparent;min-width:0;overflow-y:auto}.workspace:has(.history-layout) .history-session{min-width:0}.workspace:has(.history-layout) .history-no-results{color:var(--muted);padding:35px 18px;font-size:13px}.workspace:has(.history-layout) .history-actions button{background:var(--accent-soft);color:var(--accent-dark);font-weight:750}.history-exercise b,.history-exercise small{display:block}.history-session-close{display:none}.workspace:has(.history-page-title)>.head{margin:0 0 18px}.workspace:has(.history-page-title) .history-page-title{letter-spacing:-.055em;margin:0;font-size:clamp(42px,3.8vw,64px);line-height:1.05}.workspace:has(.history-page-title)>.history-tabs{width:max-content;box-shadow:none;border-radius:9px;flex:none;margin:0 0 20px;padding:2px;display:inline-flex}.workspace:has(.history-page-title)>.history-tabs button{min-width:108px;min-height:41px;box-shadow:none;border-radius:7px;padding:9px 17px;font-size:14px}.workspace:has(.history-page-title)>.history-tabs button.active{background:var(--accent-soft);color:var(--accent-dark);box-shadow:none}.workspace:has(.history-page-title)>.history-toolbar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,470px) 165px 1fr;align-items:center;gap:14px;width:100%;max-width:none;margin:0 0 17px;padding:16px 0;display:grid}.workspace:has(.history-page-title) .history-toolbar label{display:block;position:relative}:is(.workspace:has(.history-page-title) .history-toolbar input,.workspace:has(.history-page-title) .history-toolbar select){border:1px solid var(--border);background:var(--field);width:100%;height:46px;min-height:46px;color:var(--text);border-radius:8px;padding:0 17px;font-size:14px}.workspace:has(.history-page-title) .history-search svg{z-index:1;color:var(--muted);pointer-events:none;width:19px;height:19px;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.workspace:has(.history-page-title) .history-search input{padding-left:47px}.workspace:has(.history-page-title) .history-toolbar p{color:var(--muted);text-align:right;margin:0;font-size:13px}.workspace:has(.history-layout)>.history-layout{grid-template-columns:minmax(310px,.39fr) minmax(0,.61fr);gap:0;width:100%;max-width:none}:is(.workspace:has(.history-layout) .history-list,.workspace:has(.history-layout) .history-session){box-shadow:none;background:0 0;border:0;border-radius:0}.workspace:has(.history-layout) .history-list{padding:0 18px 0 0}.workspace:has(.history-layout) .history-group+.history-group{margin:0}.workspace:has(.history-layout) .history-group>p{color:var(--muted);letter-spacing:0;text-transform:none;margin:0;padding:9px 0 13px;font-family:inherit;font-size:13px;font-weight:650}.workspace:has(.history-layout) .history-group>.history-row-main{border-bottom:1px solid var(--border);width:100%;min-height:76px;color:var(--text);text-align:left;background:0 0;border-radius:0;grid-template-columns:47px minmax(0,1fr) 18px;align-items:center;gap:13px;margin:0;padding:11px 17px;display:grid}.workspace:has(.history-layout) .history-group>.history-row-main:nth-of-type(2n){background:var(--history-stripe)}.workspace:has(.history-layout) .history-group>.history-row-main.active{color:var(--text);box-shadow:inset 0 0 0 1px var(--accent)}.workspace:has(.history-layout) .history-group>.history-row-main:hover:not(.active){color:var(--text);box-shadow:inset 0 0 0 1px var(--history-hover-outline)}.history-row-main time{color:var(--muted);gap:2px;line-height:1;display:grid}.history-row-main time small{font-size:11px}.history-row-main time strong{color:var(--text);font-size:18px}.history-row-main>span{min-width:0}.history-row-main>span b{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:750;display:block;overflow:hidden}.history-row-main>span small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:12px;display:block;overflow:hidden}.history-row-main>i{color:var(--muted);font-size:23px;font-style:normal}.workspace:has(.history-layout) .history-session{border-left:1px solid var(--border);flex-direction:column;padding:11px 0 8px 38px;display:flex;position:relative;overflow:hidden}.workspace:has(.history-layout) .history-session-head{border:0;justify-content:space-between;align-items:flex-start;gap:18px;padding:0;display:flex}.history-session-head h2{letter-spacing:-.045em;margin:0 0 7px;line-height:1.12;font-size:clamp(27px,2.4vw,36px)!important}.history-session-head p{color:var(--muted);margin:0;font-size:14px!important}.workspace:has(.history-layout) .history-actions{flex:none;align-items:flex-start;gap:9px;width:auto;margin:0;display:flex}.workspace:has(.history-layout) .history-actions button{border-radius:8px;width:auto;min-height:41px;padding:9px 14px;font-size:13px}.workspace:has(.history-layout) .history-actions .history-edit{background:var(--accent);color:#0d1d13}.history-menu-wrap{position:relative}.workspace:has(.history-layout) .history-actions .history-menu-trigger{border:1px solid var(--border);width:41px;color:var(--text);background:0 0;padding:0;font-size:22px;line-height:1}.history-menu{z-index:5;border:1px solid var(--border);background:var(--surface);width:155px;box-shadow:0 12px 30px var(--shadow);border-radius:9px;padding:5px;position:absolute;top:calc(100% + 6px);right:0}.workspace:has(.history-layout) .history-actions .history-menu button{color:#be707a;text-align:left;background:0 0;width:100%;min-height:36px;padding:7px 9px}.history-menu button:hover{background:var(--soft)}.history-session-stats{border-bottom:1px solid var(--border);color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 29px;margin:21px 0 0;padding:0 0 20px;font-size:14px;display:flex}.history-session-stats span{align-items:center;gap:8px;display:inline-flex}.history-session-stats .dashboard-icon{width:21px;height:21px;color:var(--muted)}.history-session-note{color:var(--muted);margin:13px 0 0;font-size:13px}.workspace:has(.history-layout) .history-section-title{border-bottom:1px solid var(--border);flex-direction:row;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:18px 0 12px;display:flex}.history-section-title h3{margin:0;font-size:16px;font-weight:750}.history-utilities{flex-wrap:wrap;align-items:center;gap:8px 19px;display:flex}.history-utilities button{color:var(--muted);white-space:nowrap;background:0 0;padding:0;font-size:13px}.history-utilities button:hover{color:var(--accent-dark)}.workspace:has(.history-layout) .history-exercises{scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;min-height:0;padding:0 7px 0 0;overflow-y:auto}.workspace:has(.history-layout) .history-exercise{border-bottom:1px solid var(--border);grid-template-columns:32px minmax(0,1fr);gap:16px;padding:12px 10px;display:grid}.workspace:has(.history-layout) .history-exercise:nth-child(2n){background:var(--history-stripe)}.history-exercise-index{color:var(--muted);padding-top:3px;font-size:13px}.history-exercise b{color:var(--text);font-size:15px;font-weight:700}.history-exercise small{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.35}.history-set-details{color:var(--muted);gap:5px;margin-top:9px;font-size:12px;display:grid}.history-set-details p{margin:4px 0 0}.history-note-overlay{z-index:40}.history-note-panel{border:1px solid var(--border);background:var(--surface);width:min(500px,100%);color:var(--text);border-radius:14px;padding:24px}.history-note-panel header,.history-note-panel footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.history-note-panel h2{margin:0;font-size:24px}.history-note-panel header button,.history-note-panel footer button:first-child{color:var(--muted);background:0 0}.history-note-panel header button{font-size:28px}.history-note-panel>p{color:var(--muted);font-size:13px}.history-note-panel textarea{border:1px solid var(--border);background:var(--field);width:100%;min-height:135px;color:var(--text);font:inherit;resize:vertical;border-radius:8px;margin:10px 0 15px;padding:12px}.history-note-panel footer button{min-height:40px;padding:9px 14px}@media (width>=761px){.app:has(.history-page-title){--history-sidebar:clamp(224px, 16vw, 276px)}.app:has(.history-page-title) .sidebar{width:var(--history-sidebar)}main.workspace:has(.history-page-title){width:calc(100% - var(--history-sidebar))!important;max-width:none!important;margin-left:var(--history-sidebar)!important;padding:clamp(25px,2.7vw,46px) clamp(25px,2.7vw,46px) 20px!important}}@media (width<=1000px) and (width>=761px){.workspace:has(.history-page-title)>.history-toolbar{grid-template-columns:minmax(0,1fr) 135px}.workspace:has(.history-page-title) .history-toolbar p{text-align:right;grid-column:1/-1}.workspace:has(.history-layout)>.history-layout{grid-template-columns:minmax(250px,.43fr) minmax(0,.57fr)}.workspace:has(.history-layout) .history-list{padding-right:10px}.workspace:has(.history-layout) .history-session{padding-left:17px}.history-utilities{gap:8px 12px}.history-utilities button{font-size:12px}}@media (width<=760px){main.workspace:has(.history-page-title){padding:calc(var(--safe-area-top) + 17px) 16px 10px!important}.workspace:has(.history-page-title)>.head{margin-bottom:14px}.workspace:has(.history-page-title) .history-page-title{font-size:clamp(35px,9vw,44px)}.workspace:has(.history-page-title)>.history-tabs{width:100%;margin-bottom:14px}.workspace:has(.history-page-title)>.history-tabs button{flex:1}.workspace:has(.history-page-title)>.history-toolbar{grid-template-columns:minmax(0,1fr) 130px;gap:8px;margin-bottom:11px;padding:10px 0}:is(.workspace:has(.history-page-title) .history-toolbar input,.workspace:has(.history-page-title) .history-toolbar select){height:43px;min-height:43px;font-size:13px}.workspace:has(.history-page-title) .history-toolbar p{text-align:left;grid-column:1/-1}.workspace:has(.history-layout) .history-list{padding-right:0}.workspace:has(.history-layout) .history-group>.history-row-main{min-height:70px;padding:9px 12px}.workspace:has(.history-layout) .history-session{display:none;padding:18px 14px 8px!important}.workspace:has(.history-layout) .history-session-head{padding-right:42px!important}.history-session-head h2{font-size:25px!important}.workspace:has(.history-layout) .history-actions{margin-top:13px}.workspace:has(.history-layout) .history-section-title{flex-direction:column;align-items:flex-start}.history-utilities{gap:9px 16px}.history-utilities button{font-size:12px}.history-note-panel{padding:18px}body.history-session-open .app:after{content:"";inset:var(--safe-area-top) var(--safe-area-right) var(--mobile-nav-height) var(--safe-area-left);z-index:31;background:#060c0894;position:fixed}body.history-session-open .workspace:has(.history-layout) .history-session{z-index:32;top:14px;right:12px;bottom:calc(var(--mobile-nav-height) + 10px);border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;width:auto;height:auto;display:flex;position:fixed;left:12px}.history-session-close{z-index:2;border:1px solid var(--border);background:var(--soft);width:36px;height:36px;color:var(--accent-dark);border-radius:50%;place-items:center;padding:0;font-size:24px;display:grid;position:absolute;top:12px;right:12px}}.workspace:has(.history-analysis){overflow-y:auto}.history-analysis{border-top:1px solid var(--border);width:100%;padding-top:24px}.analysis-toolbar{grid-template-columns:auto auto 1fr;align-items:center;gap:26px;display:grid}.analysis-toolbar h2{letter-spacing:-.045em;margin:0;font-size:clamp(26px,2.2vw,32px);font-weight:700}.analysis-toolbar .weight-ranges{margin:0}.analysis-toolbar select{border:1px solid var(--border);background:var(--field);width:142px;min-height:40px;color:var(--text);border-radius:8px;justify-self:end;padding:8px 12px;font-size:13px;font-weight:650}.analysis-compare{flex-wrap:wrap;align-items:center;gap:10px 16px;margin:21px 0 20px;display:flex}.analysis-compare>span{color:var(--muted);font-size:14px}.analysis-compare>small{color:var(--accent-dark);font-size:12px}.analysis-chips{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.analysis-chip{border:1px solid var(--border);background:var(--field);min-width:155px;min-height:39px;color:var(--text);border-radius:8px;align-items:center;gap:10px;padding:0 9px 0 12px;font-size:13px;display:flex}.analysis-chip>i,.analysis-table-name i,.analysis-tooltip i{border-radius:50%;flex:none;width:10px;height:10px}.analysis-chip>span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.analysis-chip button{color:var(--muted);background:0 0;padding:4px;font-size:18px;line-height:1}.analysis-chip button:hover{color:var(--text)}.analysis-add-wrap{position:relative}.analysis-add{border:1px solid var(--border);min-height:39px;color:var(--accent-dark);background:0 0;border-radius:8px;padding:0 15px;font-size:13px;font-weight:700}.analysis-add:hover{background:var(--accent-soft)}.analysis-options{z-index:12;border:1px solid var(--border);background:var(--surface);width:min(300px,100vw - 40px);box-shadow:0 12px 24px var(--shadow);border-radius:9px;padding:7px;position:absolute;top:calc(100% + 6px);left:0}.analysis-options input{border:1px solid var(--border);background:var(--field);width:100%;color:var(--text);border-radius:6px;padding:9px 10px;font-size:13px}.analysis-options>div{max-height:230px;margin-top:5px;overflow-y:auto}.analysis-options button{width:100%;color:var(--text);text-align:left;background:0 0;border-radius:6px;justify-content:space-between;gap:12px;padding:9px;font-size:13px;display:flex}.analysis-options button:hover{background:var(--accent-soft)}.analysis-options small{color:var(--muted);flex:none}.analysis-empty{min-height:260px;color:var(--muted);text-align:center;place-items:center;font-size:14px;display:grid}.history-analysis .analysis-chart{width:100%;height:370px;position:relative}.analysis-y-axis{width:65px;color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;position:absolute;inset:0 auto 0 0}.analysis-y-axis span{white-space:nowrap;position:absolute;right:10px;transform:translateY(-50%)}.analysis-plot{position:absolute;inset:0 0 30px 65px}.analysis-plot svg{width:100%;height:100%;display:block;overflow:visible}.analysis-plot .weight-grid line{stroke:var(--border);stroke-width:1px;stroke-dasharray:3 5;vector-effect:non-scaling-stroke;opacity:.65}.analysis-plot polyline{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.analysis-plot .analysis-guide{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 4;vector-effect:non-scaling-stroke;opacity:.7}.analysis-point{z-index:2;background:0 0;border:0;border-radius:50%;width:30px;height:30px;padding:0;position:absolute;transform:translate(-50%,-50%)}.analysis-point:after{content:"";background:var(--bg-main,var(--surface));border:2px solid;border-radius:50%;width:8px;height:8px;margin:auto;transition:transform .15s,box-shadow .15s;display:block}.analysis-point:hover:after,.analysis-point:focus-visible:after,.analysis-point.active:after{box-shadow:0 0 0 2px color-mix(in srgb, currentColor 35%, transparent);transform:scale(1.55)}.analysis-tooltip{z-index:5;border:1px solid var(--border);background:var(--surface);min-width:185px;color:var(--text);box-shadow:0 10px 24px var(--shadow);pointer-events:none;border-radius:9px;padding:11px 12px;font-size:12px;position:absolute;transform:translate(12px,calc(-100% - 10px))}.analysis-tooltip.align-right{transform:translate(calc(-100% - 12px),calc(-100% - 10px))}.analysis-tooltip.below{transform:translate(12px,16px)}.analysis-tooltip.align-right.below{transform:translate(calc(-100% - 12px),16px)}.analysis-tooltip>span{color:var(--muted);margin-bottom:8px;display:block}.analysis-tooltip>div{grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:5px;display:grid}.analysis-tooltip b{font-variant-numeric:tabular-nums;white-space:nowrap}.analysis-x-axis{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:12px;display:flex;position:absolute;bottom:0;left:65px;right:0}.analysis-change{border-top:1px solid var(--border);margin-top:24px}.analysis-table-head,.analysis-table-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(180px,1fr) repeat(3,minmax(100px,.35fr));align-items:center;gap:16px;display:grid}.analysis-table-head{min-height:51px;color:var(--muted);font-size:12px}.analysis-table-head h3{color:var(--text);margin:0;font-size:17px;font-weight:700}.analysis-table-row{min-height:48px;color:var(--text);font-variant-numeric:tabular-nums;font-size:14px}.analysis-table-row>span:last-child,.analysis-table-head>span:last-child{text-align:right}.analysis-table-name{align-items:center;gap:13px;min-width:0;font-weight:650;display:inline-flex}.analysis-table-row .positive{color:var(--accent-dark);font-weight:700}.analysis-table-row .negative{color:#cb8890;font-weight:700}@media (width<=900px){.analysis-toolbar{grid-template-columns:1fr auto;gap:14px}.analysis-toolbar .weight-ranges{grid-area:2/1/auto/-1;width:max-content}.analysis-toolbar select{grid-area:1/2}.analysis-compare{flex-direction:column;align-items:flex-start}}@media (width<=760px){.workspace:has(.history-analysis){padding-bottom:var(--mobile-nav-height)!important}.history-analysis{padding-top:18px}.analysis-toolbar h2{font-size:25px}.analysis-toolbar select{width:118px}.analysis-toolbar .weight-ranges{width:100%}.analysis-toolbar .weight-ranges button{flex:1;font-size:12px}.analysis-compare{margin:20px 0 15px}.analysis-chips{flex-wrap:nowrap;width:100%;padding-bottom:3px;overflow-x:auto}.analysis-chip{min-width:150px}.history-analysis .analysis-chart{height:340px}.analysis-y-axis{width:57px;font-size:11px}.analysis-plot{left:57px}.analysis-x-axis{font-size:11px;left:57px}.analysis-x-axis span:nth-child(2n){display:none}.analysis-table-head{grid-template-columns:1fr auto}.analysis-table-head>span{display:none}.analysis-table-row{grid-template-columns:1fr 1fr;gap:4px 12px;padding:12px 0;font-size:13px}.analysis-table-row>span:nth-child(2):before{content:"First: ";color:var(--muted)}.analysis-table-row>span:nth-child(3):before{content:"Last: ";color:var(--muted)}.analysis-table-row>span:last-child{grid-area:1/2}}
