:root{--accent:#185fa5;--accent-light:#e6f1fb;--accent-text:#0c447c;--bg:#f5f5f5;--bg-card:#fff;--bg-input:#fff;--bg-input-subtle:#fafafa;--bg-subtle:#f9f9f9;--bg-hover:#f0f0f0;--bg-nav:#fff;--text-primary:#1a1a1a;--text-secondary:#444;--text-muted:#888;--text-faint:#aaa;--text-placeholder:#bbb;--border:#e8e8e8;--border-light:#f0f0f0;--border-input:#ddd;--border-input-focus:#185fa5;--success-bg:#eaf3de;--success-text:#27500a;--danger:#b94040;--danger-bg:#fdf0f0;--warning-bg:#faeeda;--warning-text:#633806;--status-started-bg:#faeeda;--status-started-text:#854f0b;--status-done-bg:#eaf3de;--status-done-text:#27500a;--type-weighted-bg:#e6f1fb;--type-weighted-text:#0c447c;--type-body-bg:#eaf3de;--type-body-text:#27500a;--type-timed-bg:#faeeda;--type-timed-text:#633806;--type-cardio-bg:#fcebeb;--type-cardio-text:#791f1f;--type-interval-bg:#f0eafb;--type-interval-text:#4a1f8c;--status-started:#ef9f27;--status-finished:#639922;--shadow-nav:0 4px 24px #0000001f,0 1px 4px #00000014;--overlay:#0006}[data-theme=dark]{--bg:#0f0f0f;--bg-card:#1c1c1e;--bg-input:#2c2c2e;--bg-input-subtle:#232325;--bg-subtle:#242426;--bg-hover:#2c2c2e;--bg-nav:#1c1c1e;--text-primary:#f2f2f7;--text-secondary:#c7c7cc;--text-muted:#8e8e93;--text-faint:#636366;--text-placeholder:#48484a;--border:#2c2c2e;--border-light:#232325;--border-input:#3a3a3c;--border-input-focus:#4da3f5;--success-bg:#1a2e0a;--success-text:#86c840;--danger:#c0544a;--danger-bg:#2a0f0f;--status-started-bg:#2e1e00;--status-started-text:#f0b050;--status-done-bg:#0d2010;--status-done-text:#7ec850;--type-weighted-bg:#0d2440;--type-weighted-text:#7ab8f5;--type-body-bg:#0d2010;--type-body-text:#7ec850;--type-timed-bg:#2e1e00;--type-timed-text:#f0b050;--type-cardio-bg:#2e0d0d;--type-cardio-text:#f07070;--type-interval-bg:#1e0d40;--type-interval-text:#b090f0;--shadow-nav:0 4px 24px #00000080,0 1px 4px #0000004d;--overlay:#0009}[data-theme=forest]{--accent:#2d6a4f;--accent-light:#d8f3dc;--accent-text:#1b4332;--bg:#f4f7f4;--bg-card:#fff;--bg-input:#fff;--bg-input-subtle:#f9faf9;--bg-subtle:#f0f4f0;--bg-hover:#e8f0e8;--bg-nav:#fff;--text-primary:#1a1a1a;--text-secondary:#444;--text-muted:#888;--text-faint:#aaa;--text-placeholder:#bbb;--border:#dde8dd;--border-light:#eaf2ea;--border-input:#ccdacc;--border-input-focus:#2d6a4f;--status-started-bg:#fff3cd;--status-started-text:#7d5a00;--status-done-bg:#d8f3dc;--status-done-text:#1b4332;--type-weighted-bg:#d8f3dc;--type-weighted-text:#1b4332;--type-body-bg:#d8f3dc;--type-body-text:#1b4332;--type-timed-bg:#fff3cd;--type-timed-text:#7d5a00;--type-cardio-bg:#fce4d6;--type-cardio-text:#7d2e00;--type-interval-bg:#ede7f6;--type-interval-text:#4527a0;--shadow-nav:0 4px 24px #0000001a,0 1px 4px #0000000f;--overlay:#0006}[data-theme=into]{--accent:#e8961e;--accent-light:#2a2400;--accent-text:#e8961e;--bg:#1c1c1c;--bg-card:#383838;--bg-input:#383838;--bg-input-subtle:#303030;--bg-subtle:#282828;--bg-hover:#444;--bg-nav:#383838;--text-primary:#fff;--text-secondary:#ddd;--text-muted:#aaa;--text-faint:#777;--text-placeholder:#888;--border:#505050;--border-light:#444;--border-input:#606060;--border-input-focus:#e8961e;--success-bg:#1a2e0a;--success-text:#86c840;--danger-bg:#2e0a0a;--status-started-bg:#2a2000;--status-started-text:#e8961e;--status-done-bg:#0d2010;--status-done-text:#7ec850;--type-weighted-bg:#2a2000;--type-weighted-text:#e8961e;--type-body-bg:#0d2010;--type-body-text:#7ec850;--type-timed-bg:#2a2000;--type-timed-text:#e8961e;--type-cardio-bg:#2e0d0d;--type-cardio-text:#f07070;--type-interval-bg:#1e1a40;--type-interval-text:#a99ef8;--shadow-nav:0 4px 24px #00000080,0 1px 4px #0000004d;--overlay:#0009}[data-theme=sunset]{--accent:#c75b2a;--accent-light:#fdebd0;--accent-text:#943f18;--bg:#faf6f2;--bg-card:#fff;--bg-input:#fff;--bg-input-subtle:#fdf9f6;--bg-subtle:#f7f0ea;--bg-hover:#f2e8de;--bg-nav:#fff;--text-primary:#1a1a1a;--text-secondary:#444;--text-muted:#888;--text-faint:#aaa;--text-placeholder:#bbb;--border:#ecddd2;--border-light:#f4ece5;--border-input:#dcc8b8;--border-input-focus:#c75b2a;--status-started-bg:#fdebd0;--status-started-text:#943f18;--status-done-bg:#d8f3dc;--status-done-text:#1b4332;--type-weighted-bg:#fdebd0;--type-weighted-text:#943f18;--type-body-bg:#d8f3dc;--type-body-text:#1b4332;--type-timed-bg:#fff3cd;--type-timed-text:#7d5a00;--type-cardio-bg:#fdebd0;--type-cardio-text:#943f18;--type-interval-bg:#ede7f6;--type-interval-text:#4527a0;--shadow-nav:0 4px 24px #0000001a,0 1px 4px #0000000f;--overlay:#0006}[data-theme=midnight]{--accent:#7c6ff5;--accent-light:#1e1a40;--accent-text:#a99ef8;--bg:#0a0a12;--bg-card:#14141e;--bg-input:#1e1e2e;--bg-input-subtle:#18182a;--bg-subtle:#16161f;--bg-hover:#1e1e2e;--bg-nav:#14141e;--text-primary:#e8e8f8;--text-secondary:#b0b0cc;--text-muted:#7070a0;--text-faint:#505070;--text-placeholder:#3a3a58;--border:#22223a;--border-light:#1a1a2e;--border-input:#2e2e4a;--border-input-focus:#7c6ff5;--success-bg:#1a2e0a;--success-text:#86c840;--danger-bg:#2e0a0a;--status-started-bg:#2e2200;--status-started-text:#f0c060;--status-done-bg:#0d2010;--status-done-text:#7ec850;--type-weighted-bg:#1e1a40;--type-weighted-text:#a99ef8;--type-body-bg:#0d2010;--type-body-text:#7ec850;--type-timed-bg:#2e2200;--type-timed-text:#f0c060;--type-cardio-bg:#2e0d0d;--type-cardio-text:#f07070;--type-interval-bg:#1e1a40;--type-interval-text:#a99ef8;--shadow-nav:0 4px 24px #0009,0 1px 4px #0006;--overlay:#0009}[data-theme=steel]{--accent:#e0729a;--accent-light:#2a0d1a;--accent-text:#f4a4bc;--bg:#111;--bg-card:#1a1a1a;--bg-input:#242424;--bg-input-subtle:#202020;--bg-subtle:#1e1e1e;--bg-hover:#282828;--bg-nav:#1a1a1a;--text-primary:#f0f0f0;--text-secondary:#b8b8b8;--text-muted:#707070;--text-faint:#585858;--text-placeholder:#3a3a3a;--border:#2a2a2a;--border-light:#222;--border-input:#363636;--border-input-focus:#e0729a;--success-bg:#0a2010;--success-text:#70c870;--danger:#c05050;--danger-bg:#2e0a0a;--status-started-bg:#2a1e00;--status-started-text:#d4a030;--status-done-bg:#0a2010;--status-done-text:#70c870;--type-weighted-bg:#2a0d1a;--type-weighted-text:#f4a4bc;--type-body-bg:#0a2010;--type-body-text:#70c870;--type-timed-bg:#2a1e00;--type-timed-text:#d4a030;--type-cardio-bg:#2a0d1a;--type-cardio-text:#f4a4bc;--type-interval-bg:#1a0d30;--type-interval-text:#a090f0;--shadow-nav:0 4px 24px #0009,0 1px 4px #0006;--overlay:#000000b3}[data-theme=lavender]{--accent:#7c6ff5;--accent-light:#ede9ff;--accent-text:#4a3db8;--bg:#f5f4fe;--bg-card:#fff;--bg-input:#fff;--bg-input-subtle:#faf9ff;--bg-subtle:#efedfe;--bg-hover:#e6e3fc;--bg-nav:#fff;--text-primary:#1a1730;--text-secondary:#3d3860;--text-muted:#7068a0;--text-faint:#b0a8d8;--text-placeholder:#c8c0e8;--border:#ddd8f8;--border-light:#eae8fc;--border-input:#cec8f0;--border-input-focus:#7c6ff5;--success-bg:#e8f8ec;--success-text:#2a7a3a;--danger:#dc3535;--danger-bg:#fdeaea;--status-started-bg:#fff8e0;--status-started-text:#9a6800;--status-done-bg:#e8f8ec;--status-done-text:#2a7a3a;--type-weighted-bg:#ede9ff;--type-weighted-text:#4a3db8;--type-body-bg:#e8f8ec;--type-body-text:#2a7a3a;--type-timed-bg:#fff8e0;--type-timed-text:#9a6800;--type-cardio-bg:#fdeaea;--type-cardio-text:#b03030;--type-interval-bg:#ede9ff;--type-interval-text:#5040d0;--shadow-nav:0 4px 24px #7c6ff51a,0 1px 4px #0000000f;--overlay:#140f3266}[data-theme=rose]{--accent:#c2547a;--accent-light:#fae8ef;--accent-text:#8f2d4e;--bg:#fdf6f8;--bg-card:#fff;--bg-input:#fff;--bg-input-subtle:#fdf9fa;--bg-subtle:#faeef2;--bg-hover:#f5e4ea;--bg-nav:#fff;--text-primary:#2a1a1f;--text-secondary:#5c3a46;--text-muted:#9a7080;--text-faint:#c4a0b0;--text-placeholder:#d4b0c0;--border:#f0d8e0;--border-light:#f8edf0;--border-input:#e8c8d4;--border-input-focus:#c2547a;--status-started-bg:#fae8ef;--status-started-text:#8f2d4e;--status-done-bg:#e8f5e9;--status-done-text:#2e7d32;--type-weighted-bg:#fae8ef;--type-weighted-text:#8f2d4e;--type-body-bg:#e8f5e9;--type-body-text:#2e7d32;--type-timed-bg:#fff3cd;--type-timed-text:#7d5a00;--type-cardio-bg:#fae8ef;--type-cardio-text:#8f2d4e;--type-interval-bg:#ede7f6;--type-interval-text:#4527a0;--shadow-nav:0 4px 24px #c2547a1f,0 1px 4px #0000000f;--overlay:#2a1a1f66}[data-theme=pine]{--accent:#2ecc71;--accent-light:#0d2a18;--accent-text:#5ddfa0;--bg:#111;--bg-card:#1a1a1a;--bg-input:#242424;--bg-input-subtle:#202020;--bg-subtle:#1e1e1e;--bg-hover:#282828;--bg-nav:#1a1a1a;--text-primary:#f0f0f0;--text-secondary:#b8b8b8;--text-muted:#707070;--text-faint:#585858;--text-placeholder:#3a3a3a;--border:#2a2a2a;--border-light:#222;--border-input:#363636;--border-input-focus:#2ecc71;--success-bg:#0d2a18;--success-text:#2ecc71;--danger:#b04848;--danger-bg:#2a0a0a;--status-started-bg:#2a1e00;--status-started-text:#d4a030;--status-done-bg:#0d2a18;--status-done-text:#2ecc71;--type-weighted-bg:#0d2a18;--type-weighted-text:#5ddfa0;--type-body-bg:#0d2a18;--type-body-text:#5ddfa0;--type-timed-bg:#2a1e00;--type-timed-text:#d4a030;--type-cardio-bg:#2a0a0a;--type-cardio-text:#e07070;--type-interval-bg:#1a0d30;--type-interval-text:#9080e0;--shadow-nav:0 4px 24px #0009,0 1px 4px #0006;--overlay:#000000b3}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}button{background:none;border:none;cursor:pointer}button,input,select,textarea{font-family:inherit}.app-layout{display:flex;min-height:100vh}.sidebar{background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;height:100vh;position:sticky;top:0;width:220px}.sidebar-header{border-bottom:1px solid var(--border-light);padding:20px 20px 16px}.sidebar-logo{font-size:22px;font-weight:700;letter-spacing:-.5px}.logo-into{color:var(--accent)}.logo-app{color:var(--text-primary)}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow-y:auto;padding:12px 10px}.sidebar-nav-btn{align-items:center;border-radius:8px;color:var(--text-secondary);display:flex;font-size:14px;font-weight:500;gap:10px;padding:9px 12px;text-align:left;transition:background .15s,color .15s;width:100%}.sidebar-nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-nav-btn.active{background:var(--accent-light);color:var(--accent-text)}.sidebar-nav-btn.active svg{color:var(--accent)}.sidebar-footer{border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:6px;padding:14px 16px}.sidebar-user-email{color:var(--text-muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-signout-btn{color:var(--text-muted);font-size:13px;padding:0;text-align:left;transition:color .15s}.sidebar-signout-btn:hover{color:var(--danger)}.main-area{display:flex;flex:1 1;flex-direction:column;min-width:0}.main-content{flex:1 1;max-width:1200px;padding:32px;width:100%}.mobile-topbar{align-items:center;background:var(--bg-card);border-bottom:1px solid var(--border);display:none;height:52px;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:10}.mobile-menu-btn{align-items:center;border-radius:6px;color:var(--text-primary);display:flex;padding:6px}.mobile-topbar-title{font-size:16px;font-weight:600}.sidebar-overlay{background:var(--overlay);display:none;inset:0;position:fixed;z-index:40}@media (max-width:768px){.sidebar{height:100%;left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .22s ease;z-index:50}.sidebar.sidebar-open{transform:translateX(0)}.sidebar-overlay{display:block}.mobile-topbar{display:flex}.main-content{padding:20px 16px}}.auth-wrap{align-items:center;background:var(--bg);display:flex;justify-content:center;min-height:100vh;padding:24px}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;max-width:380px;padding:40px 36px;width:100%}.auth-logo{font-size:28px;font-weight:700;letter-spacing:-.5px;margin-bottom:4px}.auth-logo-into{color:var(--accent)}.auth-logo-app{color:var(--text-primary)}.auth-tagline{color:var(--text-muted);font-size:14px;margin-bottom:28px}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-input{background:var(--bg-input);border:1px solid var(--border-input);border-radius:8px;color:var(--text-primary);font-size:15px;padding:11px 14px;transition:border-color .15s;width:100%}.auth-input:focus{border-color:var(--accent);outline:none}.auth-input::placeholder{color:var(--text-placeholder)}.auth-error{background:var(--danger-bg);border-radius:6px;color:var(--danger);font-size:13px;padding:8px 12px}.auth-btn-primary{background:var(--accent);border-radius:8px;color:#fff;font-size:15px;font-weight:600;padding:11px;transition:opacity .15s;width:100%}.auth-btn-primary:disabled{cursor:default;opacity:.6}.auth-divider{align-items:center;color:var(--text-muted);display:flex;font-size:13px;gap:10px}.auth-divider:after,.auth-divider:before{background:var(--border);content:"";flex:1 1;height:1px}.auth-btn-google{align-items:center;background:var(--bg-input);border:1px solid var(--border-input);border-radius:8px;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:10px;justify-content:center;padding:11px;transition:background .15s,border-color .15s;width:100%}.auth-btn-google:hover{background:var(--bg-hover);border-color:var(--border-input-focus)}.auth-footer{align-items:center;color:var(--text-muted);display:flex;font-size:13px;gap:6px;justify-content:center;margin-top:20px}.auth-footer-sep{color:var(--text-faint)}.auth-link-btn{color:var(--accent);font-size:13px;font-weight:500;padding:0;transition:opacity .15s}.auth-link-btn:hover{opacity:.75}.auth-reset-sent{color:var(--text-secondary);display:flex;flex-direction:column;font-size:14px;gap:8px;margin-bottom:16px}.auth-reset-sent strong{color:var(--text-primary)}.app-loading{align-items:center;display:flex;justify-content:center;min-height:100vh}.app-loading-dot{animation:pulse 1s ease-in-out infinite;background:var(--accent);border-radius:50%;height:10px;width:10px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.screen-placeholder{padding:0}.screen-placeholder h2{font-size:24px;font-weight:600;margin-bottom:8px}.screen-placeholder p{color:var(--text-muted);font-size:15px}.screen-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.screen-title{font-size:24px;font-weight:700;margin-bottom:2px}.screen-subtitle{color:var(--text-muted);font-size:14px}.btn-primary{align-items:center;background:var(--accent);border-radius:8px;color:#fff;display:inline-flex;flex-shrink:0;font-size:14px;font-weight:600;gap:7px;padding:9px 16px;transition:opacity .15s;white-space:nowrap}.btn-primary:disabled{cursor:default;opacity:.6}.btn-secondary{align-items:center;background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);display:inline-flex;font-size:14px;font-weight:500;gap:7px;padding:9px 16px;transition:background .15s}.btn-secondary:hover{background:var(--bg-hover)}.btn-danger{align-items:center;background:var(--danger);border-radius:8px;color:#fff;display:inline-flex;font-size:14px;font-weight:600;gap:7px;padding:9px 16px;transition:opacity .15s}.btn-danger:hover{opacity:.85}.btn-small-primary{background:var(--accent);border-radius:6px;color:#fff;font-size:13px;font-weight:600;padding:6px 12px}.btn-small-secondary{background:var(--bg-subtle);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:13px;padding:6px 12px}.search-wrap{margin-bottom:20px}.search-input{background:var(--bg-input);border:1px solid var(--border-input);border-radius:8px;color:var(--text-primary);font-size:14px;max-width:360px;padding:9px 14px;transition:border-color .15s;width:100%}.search-input:focus{border-color:var(--accent);outline:none}.search-input::placeholder{color:var(--text-placeholder)}.modal-overlay{align-items:center;background:var(--overlay);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:100}.modal-card{animation:modal-in .18s ease;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;max-width:420px;padding:28px;width:100%}@keyframes modal-in{0%{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.modal-title{font-size:17px;font-weight:600}.modal-close{align-items:center;border-radius:6px;color:var(--text-muted);display:flex;padding:4px;transition:color .15s}.modal-close:hover{color:var(--text-primary)}.modal-desc{color:var(--text-muted);font-size:14px;line-height:1.6;margin-bottom:20px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.invite-code-display{align-items:center;background:var(--bg-subtle);border:1px solid var(--border);border-radius:10px;display:flex;justify-content:space-between;margin-bottom:12px;padding:14px 16px}.invite-code-text{font-feature-settings:"tnum";color:var(--accent);font-size:28px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:4px}.invite-code-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.invite-code-refresh{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;color:var(--text-muted);display:flex;height:32px;justify-content:center;transition:border-color .15s,color .15s;width:32px}.invite-code-refresh:hover{border-color:var(--accent);color:var(--accent)}.invite-code-refresh:disabled{cursor:default;opacity:.4}.invite-code-spinner{animation:spin .8s linear infinite;color:var(--text-faint)}.invite-code-copy{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 10px;transition:border-color .15s,color .15s}.invite-code-copy:hover{border-color:var(--accent);color:var(--accent)}.invite-regenerate-btn{align-items:center;color:var(--text-muted);display:flex;font-size:13px;gap:6px;margin-bottom:16px;transition:color .15s}.invite-regenerate-btn:hover{color:var(--text-primary)}.invite-regenerate-btn:disabled{cursor:default;opacity:.5}.invite-note{border-top:1px solid var(--border-light);color:var(--text-faint);font-size:12px;line-height:1.5;margin-top:16px;padding-top:16px}.clients-screen{max-width:720px}.clients-list,.clients-loading{display:flex;flex-direction:column;gap:12px}.client-card-skeleton{animation:skeleton-pulse 1.4s ease-in-out infinite;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;height:88px}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.clients-empty{align-items:center;display:flex;flex-direction:column;gap:10px;padding:64px 24px;text-align:center}.clients-empty-icon{color:var(--text-faint);margin-bottom:6px}.clients-empty-title{font-size:17px;font-weight:600}.clients-empty-desc{color:var(--text-muted);font-size:14px;margin-bottom:8px}.client-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px;transition:border-color .15s}.client-card:hover{border-color:var(--accent)}.client-card-top{align-items:flex-start;display:flex;gap:12px}.client-avatar{align-items:center;background:var(--accent-light);border-radius:50%;color:var(--accent-text);display:flex;flex-shrink:0;font-size:15px;font-weight:700;height:42px;justify-content:center;width:42px}.client-info{flex:1 1;min-width:0}.client-name{font-size:15px;font-weight:600;margin-bottom:2px}.client-email{color:var(--text-muted);font-size:13px;margin-bottom:2px}.client-joined{color:var(--text-faint);font-size:12px}.client-menu-wrap{flex-shrink:0;position:relative}.client-menu-btn{align-items:center;border-radius:6px;color:var(--text-muted);display:flex;padding:4px;transition:color .15s,background .15s}.client-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.client-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:0 4px 16px #0000001f;min-width:160px;padding:6px;position:absolute;right:0;top:28px;z-index:10}.client-menu button{align-items:center;border-radius:6px;color:var(--text-secondary);display:flex;font-size:13px;gap:8px;padding:8px 10px;text-align:left;transition:background .12s,color .12s;width:100%}.client-menu button:hover{background:var(--bg-hover);color:var(--text-primary)}.client-menu button.danger{color:var(--danger)}.client-menu button.danger:hover{background:var(--danger-bg)}.client-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.client-tag{background:var(--accent-light);border-radius:20px;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:3px 8px}.client-tag,.tag-remove{align-items:center;color:var(--accent-text)}.tag-remove{display:flex;opacity:.6;transition:opacity .15s}.tag-remove:hover{opacity:1}.tag-input{background:var(--bg-input);border:1px dashed var(--border-input);border-radius:20px;color:var(--text-primary);font-size:12px;padding:3px 10px;width:160px}.tag-input:focus{border-color:var(--accent);outline:none}.client-note{background:var(--bg-subtle);border-radius:6px;color:var(--text-muted);cursor:pointer;font-size:13px;font-style:italic;line-height:1.5;margin-top:10px;padding:8px 10px;transition:background .15s}.client-note:hover{background:var(--bg-hover)}.client-note-edit{margin-top:10px}.client-note-textarea{background:var(--bg-input);border:1px solid var(--border-input);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:13px;margin-bottom:8px;padding:8px 10px;resize:vertical;transition:border-color .15s;width:100%}.client-note-textarea:focus{border-color:var(--accent);outline:none}.client-note-actions{display:flex;gap:8px;justify-content:flex-end}.upgrade-wrap{align-items:center;background:var(--bg);display:flex;justify-content:center;min-height:100vh;padding:24px}.upgrade-card{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;max-width:420px;padding:44px 40px;width:100%}.upgrade-logo{font-size:26px;font-weight:700;letter-spacing:-.5px;margin-bottom:16px}.upgrade-badge{align-items:center;background:var(--accent-light);border-radius:20px;color:var(--accent-text);display:inline-flex;font-size:11px;font-weight:600;gap:5px;letter-spacing:.6px;margin-bottom:16px;padding:4px 10px;text-transform:uppercase}.upgrade-title{color:var(--text-primary);font-size:22px;font-weight:700;line-height:1.25;margin-bottom:10px}.upgrade-desc{color:var(--text-muted);font-size:14px;line-height:1.6;margin-bottom:24px}.upgrade-features{display:flex;flex-direction:column;gap:10px;list-style:none;margin-bottom:28px}.upgrade-feature-row{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:10px}.upgrade-feature-icon{color:var(--accent);flex-shrink:0}.upgrade-error{background:var(--danger-bg);border-radius:6px;color:var(--danger);font-size:13px;margin-bottom:12px;padding:8px 12px}.upgrade-btn-primary{background:var(--accent);border-radius:10px;color:#fff;font-size:15px;font-weight:600;margin-bottom:14px;padding:13px;transition:opacity .15s;width:100%}.upgrade-btn-primary:disabled{cursor:default;opacity:.6}.upgrade-note{color:var(--text-muted);font-size:13px;line-height:1.5;margin-bottom:24px}.upgrade-note-hint{color:var(--text-secondary)}.upgrade-footer{align-items:center;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;padding-top:16px}.upgrade-signed-in-as{color:var(--text-muted);font-size:12px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upgrade-signout-btn{align-items:center;color:var(--text-muted);display:flex;flex-shrink:0;font-size:12px;gap:5px;transition:color .15s}.upgrade-signout-btn:hover{color:var(--danger)}.upgrade-toast{animation:toast-in .2s ease;border-radius:10px;bottom:24px;font-size:14px;font-weight:500;left:50%;padding:11px 20px;position:fixed;transform:translateX(-50%);white-space:nowrap;z-index:100}.upgrade-toast.success{background:var(--success-bg);border:1px solid var(--success-text);color:var(--success-text)}.upgrade-toast.neutral{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary)}@keyframes toast-in{0%{opacity:0;transform:translateX(-50%) translateY(8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.programs-layout{display:flex;margin:-32px;min-height:calc(100vh - 52px);overflow:hidden}.programs-loading{align-items:center;color:var(--text-muted);display:flex;justify-content:center;min-height:300px}.programs-left-panel{background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:264px}.programs-panel-tabs{border-bottom:1px solid var(--border);display:flex;flex-shrink:0}.programs-panel-tab{border-bottom:2px solid #0000;color:var(--text-muted);flex:1 1;font-size:13px;font-weight:600;padding:13px 8px;transition:color .15s,border-color .15s}.programs-panel-tab.active{border-bottom-color:var(--accent);color:var(--accent)}.programs-panel-new{border-bottom:1px solid var(--border-light);flex-shrink:0;padding:12px}.programs-new-btn{justify-content:center;width:100%}.programs-item-list{flex:1 1;overflow-y:auto;padding:8px}.programs-list-empty{color:var(--text-muted);font-size:13px;padding:20px 8px;text-align:center}.programs-item{align-items:flex-start;border-radius:8px;display:flex;flex-direction:column;padding:10px 12px;text-align:left;transition:background .12s;width:100%}.programs-item:hover{background:var(--bg-hover)}.programs-item.active{background:var(--accent-light)}.programs-item-name{color:var(--text-primary);font-size:14px;font-weight:500;margin-bottom:2px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.programs-item.active .programs-item-name{color:var(--accent-text)}.programs-item-meta{color:var(--text-muted);font-size:12px}.programs-item.active .programs-item-meta{color:var(--accent-text);opacity:.7}.programs-editor-area{background:var(--bg);flex:1 1;min-width:0;overflow-y:auto;padding:32px}.programs-toast{animation:toast-in .2s ease;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;bottom:24px;box-shadow:0 4px 16px #0000001f;color:var(--text-primary);font-size:14px;font-weight:500;left:50%;padding:10px 20px;position:fixed;transform:translateX(-50%);white-space:nowrap;z-index:200}.template-editor{align-items:flex-start;display:flex;gap:24px}.template-editor-main{flex:1 1;min-width:0}.template-name-input{background:#0000;border:none;border-bottom:2px solid var(--border-input);color:var(--text-primary);font-size:22px;font-weight:700;margin-bottom:24px;outline:none;padding:4px 0 8px;transition:border-color .15s;width:100%}.template-name-input:focus{border-bottom-color:var(--accent)}.template-name-input::placeholder{color:var(--text-placeholder)}.template-empty-hint{color:var(--text-muted);font-size:14px;padding:32px 0 24px;text-align:center}.exercise-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.add-exercise-btn{align-items:center;color:var(--accent);display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:8px 0;transition:opacity .15s}.add-exercise-btn:hover{opacity:.75}.template-editor-footer{border-top:1px solid var(--border-light);display:flex;gap:10px;justify-content:flex-end;margin-top:24px;padding-top:20px}.exercise-row{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px}.exercise-row-header{align-items:center;display:flex;gap:10px;margin-bottom:12px}.exercise-reorder{display:flex;flex-direction:column;flex-shrink:0;gap:2px}.ex-move-btn{align-items:center;border-radius:4px;color:var(--text-muted);display:flex;height:22px;justify-content:center;transition:color .12s,background .12s;width:22px}.ex-move-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.ex-move-btn:disabled{cursor:default;opacity:.2}.exercise-row-info{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.exercise-row-name{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-remove-btn{align-items:center;border-radius:6px;color:var(--text-muted);display:flex;flex-shrink:0;height:26px;justify-content:center;transition:color .12s,background .12s;width:26px}.ex-remove-btn:hover{background:var(--danger-bg);color:var(--danger)}.type-badge{border-radius:20px;flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.3px;padding:2px 7px;text-transform:uppercase;white-space:nowrap}.type-weighted{background:#e8f0fe;color:#1a56a6}.type-bodyweight{background:#e6f4ea;color:#1a7c34}.type-countdown,.type-stopwatch,.type-timed{background:#fce8e6;color:#b5200d}.type-cardio{background:#fff3cd;color:#856404}.type-interval{background:#f3e8fd;color:#6a0dad}@media (prefers-color-scheme:dark){.type-weighted{background:#1a2e4a;color:#7eb3ff}.type-bodyweight{background:#1a2e1a;color:#7ec87e}.type-countdown,.type-stopwatch,.type-timed{background:#3a1a1a;color:#ff8a80}.type-cardio{background:#3a2e0a;color:#ffd54f}.type-interval{background:#2e1a3a;color:#ce93d8}}.sets-table{border:1px solid var(--border-light);border-radius:8px;margin-bottom:10px;overflow:hidden}.sets-table-header{align-items:center;background:var(--bg-subtle);border-bottom:1px solid var(--border-light);display:flex;gap:8px;padding:6px 10px}.set-col-num{flex-shrink:0;width:24px}.set-col-label,.set-col-num{color:var(--text-muted);font-size:12px;font-weight:600;text-align:center}.set-col-label{flex:1 1}.set-row{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:8px;padding:5px 10px}.set-row:last-child{border-bottom:none}.set-input{background:var(--bg-input);border:1px solid var(--border-input);border-radius:6px;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:14px;padding:5px 6px;text-align:center;transition:border-color .15s}.set-input:focus{border-color:var(--accent);outline:none}.set-actions{display:flex;gap:8px}.exercise-picker{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;flex-shrink:0;max-height:calc(100vh - 120px);overflow:hidden;position:sticky;top:32px;width:280px}.picker-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;flex-shrink:0;justify-content:space-between;padding:14px 14px 12px}.picker-title{font-size:14px;font-weight:600}.picker-close{align-items:center;border-radius:5px;color:var(--text-muted);display:flex;padding:3px;transition:color .12s,background .12s}.picker-close:hover{background:var(--bg-hover);color:var(--text-primary)}.picker-search{background:var(--bg-input);border:1px solid var(--border-input);border-radius:8px;color:var(--text-primary);flex-shrink:0;font-size:13px;margin:10px;padding:8px 12px;transition:border-color .15s}.picker-search:focus{border-color:var(--accent);outline:none}.picker-search::placeholder{color:var(--text-placeholder)}.picker-groups{display:flex;flex-shrink:0;gap:4px;overflow-x:auto;padding:0 10px 10px;scrollbar-width:none}.picker-groups::-webkit-scrollbar{display:none}.picker-group-btn{background:var(--bg-subtle);border-radius:20px;color:var(--text-muted);flex-shrink:0;font-size:12px;font-weight:500;padding:4px 10px;transition:background .12s,color .12s;white-space:nowrap}.picker-group-btn.active{background:var(--accent);color:#fff}.picker-list{flex:1 1;overflow-y:auto;padding:4px 6px 8px}.picker-empty{color:var(--text-muted);font-size:13px;padding:20px;text-align:center}.picker-exercise-row{align-items:center;border-radius:7px;display:flex;gap:8px;justify-content:space-between;padding:9px 8px;text-align:left;transition:background .12s;width:100%}.picker-exercise-row:hover{background:var(--bg-hover)}.picker-exercise-name{flex:1 1;font-size:13px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.program-editor{max-width:860px}.program-meta-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;margin-bottom:28px}.program-meta-group{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.program-meta-label{color:var(--text-muted);font-size:13px;font-weight:500;white-space:nowrap}.schedule-type-toggle{background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;display:flex;gap:2px;padding:3px}.schedule-type-btn{border-radius:6px;color:var(--text-secondary);font-size:13px;font-weight:500;padding:6px 12px;transition:background .12s,color .12s;white-space:nowrap}.schedule-type-btn.active{background:var(--bg-card);box-shadow:0 1px 3px #00000014;color:var(--text-primary)}.nday-input-wrap{align-items:center;display:flex;gap:6px}.nday-input{background:var(--bg-input);border:1px solid var(--border-input);border-radius:7px;color:var(--text-primary);font-size:14px;padding:6px 8px;text-align:center;transition:border-color .15s;width:56px}.nday-input:focus{border-color:var(--accent);outline:none}.total-weeks-input{background:var(--bg-input);border:1px solid var(--border-input);border-radius:7px;color:var(--text-primary);font-size:14px;padding:6px 10px;transition:border-color .15s;width:110px}.total-weeks-input:focus{border-color:var(--accent);outline:none}.total-weeks-input::placeholder{color:var(--text-placeholder)}.program-grid-wrap{margin-bottom:8px;overflow-x:auto}.program-grid{grid-gap:8px;display:grid;gap:8px;min-width:0}.program-day-col{display:flex;flex-direction:column;gap:4px;min-width:80px;position:relative}.program-day-label{font-weight:600;letter-spacing:.5px;text-transform:uppercase}.program-day-cell,.program-day-label{color:var(--text-muted);font-size:12px;text-align:center}.program-day-cell{align-items:center;background:#0000;border:1.5px dashed var(--border);border-radius:8px;display:flex;font-weight:500;justify-content:center;line-height:1.3;min-height:56px;padding:10px 6px;transition:border-color .15s,background .15s,color .15s;width:100%;word-break:break-word}.program-day-cell.has-template{border-style:solid}.program-day-cell.has-template,.program-day-cell:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent-text)}.day-cell-dropdown{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:0 4px 20px #00000024;left:0;margin-top:4px;min-width:160px;padding:6px;position:absolute;right:0;top:100%;z-index:50}.day-dropdown-item{border-radius:6px;color:var(--text-secondary);display:block;font-size:13px;overflow:hidden;padding:8px 10px;text-align:left;text-overflow:ellipsis;transition:background .12s,color .12s;white-space:nowrap;width:100%}.day-dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.day-dropdown-item.active{background:var(--accent-light);color:var(--accent-text);font-weight:600}.day-dropdown-empty{color:var(--text-muted);font-size:12px;padding:8px 10px}.program-no-workouts-hint{color:var(--text-muted);font-size:13px;margin-bottom:20px}.program-editor-footer{align-items:center;border-top:1px solid var(--border-light);display:flex;gap:12px;justify-content:space-between;margin-top:28px;padding-top:20px}.program-footer-right{display:flex;gap:10px}.assign-client-list{display:flex;flex-direction:column;gap:6px;margin-top:4px}.assign-client-row{align-items:center;border:1px solid #0000;border-radius:10px;display:flex;gap:12px;padding:10px 12px;text-align:left;transition:background .12s;width:100%}.assign-client-row:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border)}.assign-client-row:disabled{cursor:default;opacity:.6}.assign-client-name{color:var(--text-primary);font-size:14px;font-weight:600}.assign-client-email{color:var(--text-muted);font-size:12px}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin .9s linear infinite}@media (max-width:768px){.programs-layout{flex-direction:column;margin:-20px -16px;min-height:auto;overflow-y:auto}.programs-left-panel{border-bottom:1px solid var(--border);border-right:none;max-height:280px;width:100%}.programs-editor-area{padding:20px 16px}.exercise-picker{border-radius:0;inset:0;max-height:100%;position:fixed;width:100%;z-index:100}.program-meta-row,.template-editor{flex-direction:column}.program-meta-row{gap:14px}}
/*# sourceMappingURL=main.a561bcc2.css.map*/