:root{--bg: #f3f7fb;--panel: #ffffff;--panel-soft: #f7fbff;--ink: #1f2937;--muted: #64748b;--line: #d7e3f1;--brand: #2563eb;--brand-dark: #1d4ed8;--brand-soft: #dbeafe;--highlight: #fce7f3;--highlight-border: #f9a8d4;--danger: #a53d3d;--shadow: 0 18px 48px rgba(37, 99, 235, .08);--hover-shadow: 0 16px 36px rgba(37, 99, 235, .14);--hover-shift: translateY(-2px)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;cursor:pointer;font-weight:800}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.5}input,select,textarea{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:42px;outline:none;padding:10px 12px;width:100%}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #2563eb29}label span{color:var(--muted);display:block;font-size:.8rem;font-weight:800;margin-bottom:7px}h1,h2,h3,p{margin-top:0}.app{margin:0 auto;max-width:1240px;padding:28px}.login-page{align-items:center;background:radial-gradient(circle at 18% 18%,rgba(252,231,243,.95),transparent 28%),radial-gradient(circle at 82% 12%,rgba(219,234,254,.95),transparent 32%),linear-gradient(135deg,#f8fbff,#eef6ff 48%,#fff5fb);display:grid;isolation:isolate;min-height:100vh;overflow:hidden;padding:28px;position:relative}.login-page:before{animation:loginSweep 8s ease-in-out infinite alternate;background:linear-gradient(120deg,transparent 0%,rgba(249,168,212,.18) 40%,transparent 70%),repeating-linear-gradient(90deg,rgba(37,99,235,.04) 0 1px,transparent 1px 76px);content:"";inset:0;position:absolute;z-index:-2}.login-orb{border-radius:999px;filter:blur(2px);opacity:.72;position:absolute;z-index:-1}.login-orb.one{animation:floatOrb 9s ease-in-out infinite;background:#f9a8d475;height:220px;left:-70px;top:18%;width:220px}.login-orb.two{animation:floatOrb 11s ease-in-out infinite reverse;background:#2563eb29;bottom:10%;height:280px;right:-90px;width:280px}.login-card{animation:loginCardIn .7s ease both;background:#ffffffe0;border:1px solid rgba(215,227,241,.86);border-radius:8px;box-shadow:0 28px 80px #2563eb2e;display:grid;gap:20px;margin:0 auto;max-width:560px;overflow:hidden;padding:30px;position:relative;text-align:center;width:min(100%,560px)}.login-card:before{background:linear-gradient(90deg,var(--brand),var(--highlight-border),var(--brand));content:"";height:5px;inset:0 0 auto;position:absolute}.login-logo-stage{align-items:center;aspect-ratio:1;display:grid;justify-self:center;max-width:340px;position:relative;width:76%}.login-logo-ring{animation:logoRing 2.8s ease-in-out infinite;border:2px solid rgba(249,168,212,.74);border-radius:8px;inset:8%;position:absolute}.login-logo{animation:logoBreath 3.4s ease-in-out infinite;aspect-ratio:1;background:#fff;border:1px solid rgba(249,168,212,.74);border-radius:8px;justify-self:center;object-fit:contain;padding:10px;position:relative;width:86%;z-index:1}.login-form{background:#f7fbffc7;border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;padding:14px;text-align:left}.login-error{background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;color:#be123c;font-size:.82rem;font-weight:750;margin:0;padding:10px 12px}.login-account-toggle{background:transparent;color:var(--brand);font-size:.78rem;margin:2px auto 0;min-height:32px;padding:4px 8px}.login-form button{background:var(--brand);color:#fff;min-height:46px;transition:background .14s ease,box-shadow .14s ease,transform .14s ease}.login-form button:hover,.login-form button:focus{background:var(--brand-dark);box-shadow:0 12px 26px #2563eb38;transform:translateY(-1px)}.login-hint{background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;color:var(--brand-dark);font-weight:900;margin:0;padding:10px}.login-shell{animation:loginCardIn .7s ease both;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);margin:0 auto;max-width:1100px;min-height:650px;width:100%}.login-story{background:linear-gradient(145deg,#172554,#283b96 62%,#5b3a9d);border-radius:20px 0 0 20px;box-shadow:0 30px 90px #1e3a8a3d;color:#fff;display:flex;flex-direction:column;overflow:hidden;padding:34px 38px;position:relative}.login-story:before{background:radial-gradient(circle,rgba(255,255,255,.14) 0 1px,transparent 1.5px);background-size:22px 22px;content:"";height:250px;opacity:.38;position:absolute;right:-55px;top:-45px;transform:rotate(14deg);width:280px}.login-story:after{background:linear-gradient(135deg,#ec489966,#2563eb0d);border:1px solid rgba(255,255,255,.14);border-radius:50%;bottom:-130px;content:"";height:330px;position:absolute;right:-110px;width:330px}.login-brand{align-items:center;display:flex;gap:11px;position:relative;z-index:1}.login-brand img{background:#fff;border:1px solid rgba(255,255,255,.22);border-radius:12px;height:58px;object-fit:contain;padding:4px;width:58px}.login-brand p,.login-brand span{display:block;margin:0}.login-brand p{font-size:.85rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.login-brand span{color:#bfdbfe;font-size:.72rem;margin-top:2px}.login-story-copy{margin:auto 0 30px;max-width:520px;position:relative;z-index:1}.login-story-copy .eyebrow{color:#f9a8d4}.login-story-copy h1{color:#fff;font-size:clamp(2.35rem,4vw,4rem);letter-spacing:-.045em;line-height:.98;margin:0 0 18px}.login-story-copy>p:last-child{color:#ffffffb8;font-size:1rem;line-height:1.55;margin:0;max-width:500px}.login-feature-list{display:grid;gap:9px;position:relative;z-index:1}.login-feature-list>div{align-items:center;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:11px;display:flex;gap:12px;padding:10px 12px}.login-feature-list>div>span{align-items:center;background:#ffffff1f;border-radius:8px;color:#fbcfe8;display:flex;flex:0 0 35px;font-size:.67rem;font-weight:950;height:35px;justify-content:center}.login-feature-list p,.login-feature-list strong,.login-feature-list small{display:block;margin:0}.login-feature-list strong{font-size:.8rem}.login-feature-list small{color:#ffffffa3;font-size:.68rem;margin-top:2px}.login-story blockquote{color:#ffffff9e;font-size:.7rem;font-style:italic;margin:20px 0 0;position:relative;z-index:1}.login-shell .login-card{align-content:center;animation:none;background:#fffffff0;border:1px solid rgba(215,227,241,.92);border-left:0;border-radius:0 20px 20px 0;box-shadow:0 30px 90px #1e3a8a2e;gap:22px;margin:0;max-width:none;padding:clamp(32px,5vw,62px);text-align:left;width:auto}.login-shell .login-card:before{background:linear-gradient(180deg,var(--brand),#ec4899);height:auto;inset:0 auto 0 0;width:4px}.login-welcome-mark{align-items:center;display:flex;justify-content:space-between}.login-welcome-mark>span{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.login-welcome-mark i{align-items:center;background:linear-gradient(135deg,var(--brand),#ec4899);border-radius:10px;color:#fff;display:flex;font-style:normal;height:38px;justify-content:center;width:38px}.login-shell .login-card h2{font-size:clamp(1.75rem,3vw,2.35rem);letter-spacing:-.035em;margin:2px 0 7px}.login-shell .login-card .lede{color:var(--muted);font-size:.86rem;margin:0}.login-shell .login-form{background:transparent;border:0;gap:15px;padding:0}.login-shell .login-form label>span{color:var(--ink);font-size:.72rem}.login-input-wrap{align-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;margin-top:5px;overflow:hidden;transition:border-color .14s ease,box-shadow .14s ease}.login-input-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #2563eb1a}.login-input-wrap>i{color:#94a3b8;font-size:.7rem;font-style:normal;font-weight:900;padding-left:12px}.login-input-wrap input{border:0;border-radius:0;box-shadow:none;min-height:48px}.login-input-wrap input:focus{box-shadow:none}.login-form .login-password-toggle{background:transparent;box-shadow:none;color:var(--brand);font-size:.68rem;min-height:34px;padding:0 11px;transform:none}.login-form .login-password-toggle:hover,.login-form .login-password-toggle:focus{background:var(--highlight);box-shadow:none;transform:none}.login-form .login-submit{align-items:center;display:flex;font-size:.86rem;justify-content:space-between;margin-top:3px;padding:0 16px}.login-form .login-submit strong{font-size:1.1rem}.login-help{background:var(--panel-soft);border:1px solid var(--line);border-radius:9px;padding:9px 11px}.login-help summary{color:var(--brand);cursor:pointer;font-size:.72rem;font-weight:900}.login-help p{color:var(--muted);font-size:.7rem;line-height:1.45;margin:8px 0 0}.login-help strong{color:var(--ink)}.login-card>footer{color:#94a3b8;display:flex;font-size:.65rem;gap:6px;justify-content:center;margin-top:3px}@media(max-width:820px){.login-page{overflow:auto}.login-shell{grid-template-columns:1fr;max-width:620px}.login-story{border-radius:18px 18px 0 0;min-height:330px;padding:26px}.login-story-copy{margin:45px 0 20px}.login-story-copy h1{font-size:2.55rem}.login-feature-list{grid-template-columns:repeat(3,minmax(0,1fr))}.login-feature-list>div{align-items:flex-start}.login-feature-list small,.login-story blockquote{display:none}.login-shell .login-card{border-left:1px solid var(--line);border-radius:0 0 18px 18px}.login-shell .login-card:before{height:4px;inset:0 0 auto;width:auto}}@keyframes loginCardIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes loginSweep{0%{transform:translate(-4%)}to{transform:translate(4%)}}@keyframes floatOrb{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(20px,-18px,0) scale(1.06)}}@keyframes logoBreath{0%,to{transform:scale(.97)}50%{transform:scale(1.04)}}@keyframes logoRing{0%,to{opacity:.48;transform:scale(.94)}50%{opacity:1;transform:scale(1.03)}}.topbar{align-items:start;display:grid;gap:22px;grid-template-columns:minmax(0,1fr) auto;margin-bottom:22px}.impersonation-banner{align-items:center;background:linear-gradient(100deg,#172554,#1d4ed8 55%,#be185d);border-radius:10px;box-shadow:0 14px 35px #1d4ed838;color:#fff;display:flex;gap:18px;justify-content:space-between;margin-bottom:18px;padding:12px 14px}.impersonation-banner>div{align-items:center;display:flex;gap:12px}.impersonation-banner p,.impersonation-banner p strong,.impersonation-banner p span{display:block;margin:0}.impersonation-banner p span{color:#ffffffbf;font-size:.76rem;margin-top:2px}.impersonation-icon{align-items:center;background:#ffffff24;border:1px solid rgba(255,255,255,.22);border-radius:50%;display:flex;font-size:1.2rem;height:38px;justify-content:center;width:38px}.impersonation-banner button{background:#fff;color:#1d4ed8;flex:0 0 auto;min-height:40px;padding:8px 13px}.topbar-side{align-self:start;display:grid;gap:10px;justify-items:end}.user-pill{align-items:center;display:grid;justify-content:flex-end;position:relative}.user-pill strong{display:block;font-size:.88rem;text-align:right}.user-pill div span{background:var(--highlight);border:1px solid var(--highlight-border);border-radius:999px;color:var(--brand-dark);display:inline-block;font-size:.76rem;font-weight:900;margin-top:3px;padding:4px 8px;text-transform:capitalize}.user-avatar{align-items:center;aspect-ratio:1;background:var(--brand);border:3px solid var(--highlight-border);border-radius:50%;color:#fff;display:inline-flex;flex:0 0 46px;font-size:.92rem;font-weight:950;height:46px;justify-content:center;letter-spacing:.04em;object-fit:cover;padding:0}.avatar-button{background:transparent;border-radius:50%;padding:0}.avatar-button .user-avatar{pointer-events:none}button.avatar-button{min-height:46px}.account-menu{background:var(--panel);border:1px solid rgba(37,99,235,.16);border-radius:8px;box-shadow:0 20px 54px #2563eb29;display:grid;gap:12px;min-width:280px;padding:10px;position:absolute;right:0;top:calc(100% + 8px);z-index:20}.admin-user-switcher{background:linear-gradient(135deg,#2563eb12,#ec489912);border:1px solid var(--highlight-border);border-radius:8px;display:grid;gap:8px;padding:10px}.admin-user-switcher>div span{background:transparent;border:0;color:var(--brand);display:block;font-size:.66rem;margin:0 0 2px;padding:0;text-transform:uppercase}.admin-user-switcher>div strong{font-size:.84rem;text-align:left}.admin-user-switcher select{min-width:0;width:100%}.admin-user-switcher button{min-height:40px;width:100%}.admin-user-switcher small{color:var(--muted);font-size:.66rem;line-height:1.35}.account-menu-header{align-items:center;background:linear-gradient(135deg,var(--highlight),var(--panel-soft));border:1px solid var(--highlight-border);border-radius:8px;padding:12px}.account-menu-header>div{align-items:center;display:flex;gap:8px}.account-menu-header strong{font-size:.98rem;text-align:left}.account-menu-header span{margin-top:0}.account-menu-photo{aspect-ratio:1;border:3px solid var(--highlight-border);border-radius:8px;box-shadow:0 12px 28px #2563eb1f;justify-self:center;object-fit:cover;width:min(150px,100%)}.account-detail{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:3px;padding:9px 10px}.account-detail span{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.account-detail strong{text-align:left}.account-menu>button{border:1px solid rgba(165,61,61,.22);justify-self:stretch;text-align:center}.account-profile-link{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;color:var(--brand);font-weight:900;padding:10px 12px;text-align:center;text-decoration:none}.account-profile-link:hover{background:var(--highlight);border-color:var(--highlight-border)}.brand-lockup{align-items:center;display:flex;gap:16px}.app-logo{aspect-ratio:1;background:#fff;border:1px solid var(--line);border-radius:8px;flex:0 0 179px;height:179px;object-fit:contain;padding:6px}.eyebrow{color:var(--brand);font-size:.78rem;font-weight:900;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}h1{font-size:clamp(2.1rem,5vw,4.8rem);line-height:.95;margin-bottom:12px}.lede{color:var(--muted);font-size:1.08rem;line-height:1.5;max-width:660px}.app-nav{display:flex;gap:8px;margin-top:18px}.app-nav a,.text-link{border-radius:8px;color:var(--brand);font-weight:900;padding:8px 10px;text-decoration:none}.app-nav a.active,.app-nav a:hover,.text-link:hover{background:var(--highlight)}.stats{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(3,1fr);min-width:390px;overflow:hidden}.stats.client-stats{grid-template-columns:repeat(2,1fr);min-width:280px}.stats div{padding:18px}.stats div+div{border-left:1px solid var(--line)}.stats strong{display:block;font-size:1.75rem}.stats span,.meta,.member-card span,.member-card small,.empty,.plan-notes,.exercise-card p,#current-goal{color:var(--muted)}.layout{align-items:start;display:grid;gap:20px;grid-template-columns:330px minmax(0,1fr)}.workout-layout{grid-template-columns:minmax(0,1fr)}.member-management{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)}.member-roster-dashboard{display:grid;gap:16px;grid-template-columns:1fr}.roster-command-header{align-items:center;background:linear-gradient(115deg,#172554,#3547aa);border-radius:11px;color:#fff;display:flex;gap:20px;justify-content:space-between;padding:21px 23px}.roster-command-header .eyebrow{color:#bfdbfe;margin:0 0 3px}.roster-command-header h2{color:#fff;font-size:1.65rem;margin:0}.roster-command-header p:not(.eyebrow){color:#ffffffb8;margin:5px 0 0}.roster-command-header>button{background:#fff;color:var(--brand-dark);padding:0 17px;white-space:nowrap}.roster-summary{background:#fff;border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.roster-summary>div{padding:14px 16px}.roster-summary>div+div{border-left:1px solid var(--line)}.roster-summary span,.roster-summary small{color:var(--muted);display:block}.roster-summary span{font-size:.68rem;font-weight:900;text-transform:uppercase}.roster-summary strong{display:block;font-size:1.45rem;margin:2px 0}.roster-summary small{font-size:.7rem}.roster-directory{padding:18px}.roster-tools{align-items:end;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) 210px}.roster-tools label{margin:0}.roster-tools label>span{color:var(--muted);display:block;font-size:.68rem;font-weight:900;margin-bottom:5px;text-transform:uppercase}.roster-search input{background:var(--panel-soft)}.roster-filters{border-bottom:1px solid var(--line);display:flex;gap:4px;margin-top:13px;overflow-x:auto}.roster-filters button{background:transparent;border-bottom:3px solid transparent;border-radius:0;color:var(--muted);font-size:.75rem;min-height:42px;padding:0 13px;white-space:nowrap}.roster-filters button.active{border-bottom-color:var(--brand);color:var(--brand)}.roster-results-heading{align-items:center;display:flex;justify-content:space-between;padding:13px 2px 8px}.roster-results-heading p{margin:0}.roster-results-heading>span{color:var(--muted);font-size:.72rem}.roster-member-list{display:grid;gap:8px}.roster-member-card{align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;display:grid;gap:13px;grid-template-columns:auto minmax(210px,1fr) minmax(190px,.8fr) auto auto;padding:12px;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.roster-member-card:hover,.roster-member-card:focus-within{border-color:var(--highlight-border);box-shadow:0 9px 24px #2563eb12;transform:translateY(-1px)}.roster-member-avatar{align-items:center;background:linear-gradient(135deg,var(--highlight),#fce7f3);border:1px solid var(--highlight-border);border-radius:50%;color:var(--brand-dark);display:flex;font-weight:950;height:44px;justify-content:center;width:44px}.roster-member-identity{min-width:0}.roster-member-identity strong,.roster-member-identity span,.roster-member-identity small,.roster-member-status span,.roster-member-status strong,.roster-member-status small{display:block}.roster-member-identity span{color:var(--brand);font-size:.75rem;font-weight:850;margin-top:2px}.roster-member-identity small,.roster-member-status small{color:var(--muted);font-size:.68rem;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roster-member-status>span{color:var(--muted);font-size:.62rem;font-weight:900;margin-bottom:3px;text-transform:uppercase}.roster-member-status strong{font-size:.78rem}.roster-plan-status span{border-radius:999px;display:inline-block;font-size:.66rem;font-weight:900;padding:5px 8px;white-space:nowrap}.roster-plan-status .ready{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.roster-plan-status .attention{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c}.roster-member-actions{align-items:center;display:flex;gap:6px}.roster-member-actions .primary-action{min-height:36px;padding:0 11px;white-space:nowrap}.roster-member-actions details{position:relative}.roster-member-actions summary{align-items:center;border-radius:7px;color:var(--muted);cursor:pointer;display:flex;font-weight:950;height:36px;justify-content:center;list-style:none;width:36px}.roster-member-actions summary:hover{background:var(--panel-soft)}.roster-member-actions details>div{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--hover-shadow);display:grid;padding:6px;position:absolute;right:0;top:38px;width:165px;z-index:6}.roster-member-actions details a,.roster-member-actions details button{background:transparent;border-radius:6px;color:var(--ink);font-size:.74rem;justify-content:flex-start;min-height:34px;padding:0 9px;text-align:left;text-decoration:none}.roster-member-actions details a{align-items:center;display:flex}.roster-member-actions details .danger{color:var(--danger)}.roster-empty{display:grid;gap:4px;justify-items:center}.add-member-modal{max-width:680px}.add-member-modal .modal-header p{color:var(--muted);margin:4px 0 0}.form-step-label{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:9px;padding-bottom:8px}.form-step-label>span{align-items:center;background:var(--brand);border-radius:50%;color:#fff;display:flex;font-size:.72rem;font-weight:950;height:27px;justify-content:center;width:27px}.form-step-label strong,.form-step-label small{display:block}.form-step-label small{color:var(--muted);font-size:.7rem;margin-top:2px}.add-member-actions{align-items:center;border-top:1px solid var(--line);display:flex;gap:9px;justify-content:flex-end;padding-top:12px}.settings-layout{display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}.settings-command-center{align-items:start;display:grid;gap:16px;grid-template-columns:260px minmax(0,1fr)}.settings-command-header{align-items:center;background:linear-gradient(115deg,#172554,#3547aa);border-radius:11px;color:#fff;display:flex;gap:20px;grid-column:1 / -1;justify-content:space-between;padding:20px 23px}.settings-command-header .eyebrow{color:#bfdbfe;margin:0 0 2px}.settings-command-header h2{color:#fff;font-size:1.65rem;margin:0}.settings-command-header p:not(.eyebrow){color:#ffffffb8;margin:4px 0 0}.settings-command-header>span{background:#ffffff24;border:1px solid rgba(255,255,255,.2);border-radius:999px;font-size:.68rem;font-weight:900;padding:6px 9px;text-transform:uppercase}.settings-navigation{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);display:grid;overflow:hidden;position:sticky;top:12px}.settings-navigation button{align-items:center;background:transparent;border-left:3px solid transparent;border-radius:0;color:var(--ink);display:grid;gap:2px 8px;grid-template-columns:minmax(0,1fr) auto;justify-items:start;min-height:68px;padding:10px 13px;text-align:left}.settings-navigation button+button{border-top:1px solid var(--line)}.settings-navigation button strong{font-size:.82rem}.settings-navigation button small{color:var(--muted);font-size:.67rem;grid-column:1}.settings-navigation button em{align-self:center;color:var(--muted);font-style:normal;grid-column:2;grid-row:1 / 3}.settings-navigation button.active{background:var(--highlight);border-left-color:var(--brand);color:var(--brand-dark)}.settings-navigation button.active em{color:var(--brand)}.settings-workspace{display:grid;gap:14px;min-width:0}.settings-panel-heading{padding:2px 2px 4px}.settings-panel-heading .eyebrow{margin:0 0 3px}.settings-panel-heading h2{font-size:1.55rem;margin:0}.settings-panel-heading p:not(.eyebrow){color:var(--muted);margin:5px 0 0}.branding-settings{padding:18px}.branding-settings>div{align-items:center;display:grid;gap:18px;grid-template-columns:150px minmax(0,1fr)}.branding-settings .logo-preview{height:140px;width:140px}.branding-settings h3{margin:0 0 4px}.branding-settings p{color:var(--muted);margin:0 0 13px}.logo-upload-button{display:inline-flex;margin:0 8px 0 0}.logo-upload-button span{align-items:center;background:var(--brand);border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:900;min-height:40px;padding:0 13px}.logo-upload-button input{height:1px;opacity:0;position:absolute;width:1px}.settings-danger-card{border-color:#fecaca;padding:18px}.settings-danger-card .danger-zone{background:#fff7f7;border-color:#fecaca}.settings-danger-card .danger-zone span{color:var(--danger);display:block;font-size:.65rem;font-weight:950;margin-bottom:4px;text-transform:uppercase}.settings-danger-card .danger-zone button{border:1px solid #fecaca;padding:0 13px}.access-invite-form{background:#f8fbff;border:1px solid var(--highlight-border);border-radius:9px;margin-bottom:14px;padding:14px}.access-form-heading,.access-directory-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.access-form-heading{border-bottom:1px solid var(--line);padding-bottom:10px}.access-form-heading strong,.access-form-heading span,.access-directory-heading strong,.access-directory-heading span{display:block}.access-form-heading span,.access-directory-heading span{color:var(--muted);font-size:.7rem;margin-top:2px}.access-form-heading em{background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;color:#c2410c;font-size:.62rem;font-style:normal;font-weight:900;padding:5px 8px}.access-directory-heading{margin-bottom:10px}.access-directory-heading>div:last-child{display:flex;gap:5px}.access-directory-heading .role-count{background:var(--panel-soft);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.62rem;font-weight:850;margin:0;padding:4px 7px}.access-directory-heading .role-count.admin{background:#eef2ff;color:#4338ca}.access-directory-heading .role-count.client{background:#ecfdf5;color:#047857}.user-access-directory{border:1px solid var(--line);border-radius:9px;display:grid;overflow:hidden}.access-user-row{align-items:center;background:#fff;border-radius:0;color:var(--ink);display:grid;gap:10px;grid-template-columns:auto minmax(150px,1fr) auto minmax(120px,.7fr) auto auto;justify-items:start;min-height:61px;padding:9px 11px;text-align:left}.access-user-row+.access-user-row{border-top:1px solid var(--line)}.access-user-row:hover,.access-user-row.selected{background:var(--highlight)}.access-user-avatar{align-items:center;background:linear-gradient(135deg,var(--brand),#ec4899);border-radius:50%;color:#fff;display:flex;flex:0 0 36px;font-size:.72rem;font-weight:950;height:36px;justify-content:center;width:36px}.access-user-row div strong,.access-user-row div span{display:block}.access-user-row div span,.access-user-row small{color:var(--muted);font-size:.68rem}.access-role{border-radius:999px;font-size:.62rem;font-style:normal;font-weight:900;padding:4px 7px;text-transform:capitalize}.access-role.admin{background:#eef2ff;color:#4338ca}.access-role.trainer{background:#eff6ff;color:#1d4ed8}.access-role.client{background:#ecfdf5;color:#047857}.access-user-row b{color:#7c3aed;font-size:.62rem}.access-user-row i{color:var(--brand);font-style:normal}.access-user-editor{background:#fff;border:1px solid var(--highlight-border);border-radius:10px;box-shadow:0 16px 40px #2563eb1f;margin-top:12px;padding:16px}.access-editor-heading,.access-editor-heading>div{align-items:center;display:flex;gap:11px}.access-editor-heading{border-bottom:1px solid var(--line);justify-content:space-between;margin-bottom:13px;padding-bottom:12px}.access-editor-heading .eyebrow{margin:0}.access-editor-heading h3{margin:1px 0}.access-editor-heading>div>div>span{color:var(--muted);font-size:.7rem}.access-user-editor form{display:grid;gap:12px}.access-editor-actions{align-items:center;border-top:1px solid var(--line);display:flex;gap:8px;justify-content:flex-end;padding-top:12px}.access-editor-actions .danger{margin-right:auto}.profile-layout{margin:0 auto;max-width:820px}.profile-card{display:grid;gap:18px}.profile-body{align-items:start;display:grid;gap:18px;grid-template-columns:220px minmax(0,1fr)}.profile-photo-frame{align-items:center;aspect-ratio:1;background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;display:grid;justify-items:center;overflow:hidden}.profile-photo-frame img{height:100%;object-fit:cover;width:100%}.profile-photo-frame span{align-items:center;background:var(--brand);border:4px solid var(--highlight-border);border-radius:50%;color:#fff;display:flex;font-size:2.4rem;font-weight:950;height:132px;justify-content:center;width:132px}.profile-details{display:grid;gap:12px}.profile-details>div{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:10px 12px}.profile-details>div span{color:var(--muted);display:block;font-size:.72rem;font-weight:900;margin-bottom:4px;text-transform:uppercase}.profile-upload-help{color:var(--muted);font-size:.85rem;margin:-4px 0 0}.schedule-layout{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}.calendar-card,.upcoming-card{grid-column:auto}.sidebar,.workspace,.card,.program-board{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.sidebar{padding:18px;position:sticky;top:20px}.workspace{padding:20px}.workout-layout .workspace{background:transparent;border:0;box-shadow:none;padding:0}.section-title,.member-header,.plan-header,.exercise-card,.member-card{align-items:center;display:flex;gap:14px;justify-content:space-between}.section-title{margin-bottom:16px}.section-title h2,.section-title h3,.member-header h2{margin-bottom:0}.member-form,.stack-form,.quick-form{display:grid;gap:13px}.member-form button,.stack-form button:not(.text-button):not(.icon-button),.quick-form button{background:var(--brand);color:#fff;min-height:44px;padding:0 16px}.member-form button:hover,.stack-form button:not(.text-button):not(.icon-button):hover,.quick-form button:hover{background:var(--brand-dark)}.text-button,.icon-button{background:transparent;color:var(--brand);min-height:34px;padding:0 6px}.text-button:hover,.icon-button:hover{background:var(--highlight)}.text-button.danger,.icon-button{color:var(--danger)}.member-list{display:grid;gap:10px;margin-top:18px}.member-card{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:12px;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.member-card.active{background:var(--highlight);border-color:var(--highlight-border)}.member-card:hover,.member-card:focus-within{border-color:var(--highlight-border);box-shadow:var(--hover-shadow);transform:var(--hover-shift)}.member-card-actions{align-items:center;display:flex;gap:8px;justify-content:flex-end;margin-top:10px}.settings-list{display:grid;gap:10px}.settings-form{display:grid;gap:13px}.settings-form button,.trainer-form button,.section-title>button,.user-access-form button,.user-access-row button:not(.text-button),.workout-day-add-form button,.workout-day-actions button:not(.text-button){background:var(--brand);color:#fff;justify-self:start;min-height:44px;padding:0 16px}.settings-help{color:var(--muted);margin:0}.trainer-form,.trainer-list,.user-access-form,.user-access-list,.workout-day-add-form,.workout-day-list{display:grid;gap:12px}.trainer-list,.user-access-list,.workout-day-list{margin-top:14px}.collapsible-settings-card>button{background:var(--brand);color:#fff;margin-bottom:12px;min-height:42px;padding:0 16px}.user-access-form{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:12px}.user-access-card:not(.expanded) .section-title,.collapsible-settings-card:not(.expanded) .section-title{margin-bottom:0}.user-access-row{align-items:start;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(180px,.7fr) minmax(0,2fr) auto;padding:12px}.user-access-row.protected-user{background:linear-gradient(135deg,#fff,var(--highlight));border-color:var(--highlight-border)}.user-access-row>div span{color:var(--muted);display:block;font-size:.82rem;font-weight:800;margin-top:4px;text-transform:capitalize}.user-access-row form{align-items:end;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(130px,1fr))}.protected-user-note{align-self:center;background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;color:var(--brand);font-size:.78rem;font-weight:900;padding:9px 10px;text-align:center}.workout-day-add-form{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:12px}.workout-day-row{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.workout-day-row:hover,.workout-day-row:focus-within{border-color:var(--highlight-border);box-shadow:var(--hover-shadow);transform:var(--hover-shift)}.workout-day-row form{display:grid;gap:12px;padding:12px}.workout-day-row.expanded{border-color:var(--highlight-border);box-shadow:0 10px 26px #2563eb14}.workout-day-summary{align-items:center;background:var(--panel-soft);color:var(--ink);display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto auto;padding:12px;text-align:left;width:100%;transition:background .14s ease}.workout-day-summary:hover,.workout-day-summary:focus{background:var(--highlight);outline:none}.workout-day-summary strong,.workout-day-summary span,.workout-day-summary small{display:block}.workout-day-summary span,.workout-day-summary small{color:var(--muted);font-size:.82rem;font-weight:800}.workout-day-summary .expand-label{background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;color:var(--brand-dark);padding:8px 10px}.workout-day-row.expanded .workout-day-summary{background:var(--highlight)}.workout-day-meta{align-self:end;background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;min-height:42px;padding:8px 12px}.workout-day-meta span{color:var(--muted);display:block;font-size:.72rem;font-weight:900;text-transform:uppercase}.workout-day-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.focus-area-picker{border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:12px}.focus-area-picker legend{color:var(--muted);font-size:.78rem;font-weight:900;padding:0 6px;text-transform:uppercase}.focus-area-picker label{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;gap:7px;margin:0;min-height:38px;padding:0 10px}.focus-area-picker input{accent-color:var(--brand);width:auto}.focus-area-picker label:has(input:checked){background:var(--highlight);border-color:var(--highlight-border)}.trainer-row{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto auto;padding:12px}.trainer-identity{align-items:center;display:flex;gap:10px}.trainer-swatch{border:1px solid var(--line);border-radius:999px;display:block;height:24px;width:24px}.trainer-color-control{align-items:center;display:flex;gap:8px;margin:0}.trainer-color-control input,.trainer-form input[type=color]{height:38px;padding:3px;width:54px}.trainer-row strong,.trainer-row span{display:block}.trainer-row span{color:var(--muted);margin-top:4px}.schedule-form-card .section-title p{color:var(--muted);margin:6px 0 0}.schedule-form-card .section-title{align-items:center;margin-bottom:0}.schedule-form-card .section-title button{background:var(--brand);color:#fff;min-height:42px;padding:0 16px}.schedule-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.schedule-actions .text-button{background:var(--highlight);color:var(--brand-dark)}.weekday-picker{border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:12px}.weekday-picker legend{color:var(--muted);font-size:.78rem;font-weight:900;padding:0 6px;text-transform:uppercase}.weekday-picker label{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;flex:1 1 72px;gap:6px;justify-content:center;margin:0;min-height:38px;min-width:0;padding:0 8px}.weekday-picker input{accent-color:var(--brand);width:auto}.weekday-picker label:has(input:checked){background:var(--highlight);border-color:var(--highlight-border)}.member-picker{border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;grid-template-columns:1fr;margin:0;padding:12px}.member-picker-header{align-items:center;display:flex;justify-content:space-between}.member-picker-header span,.member-search span{color:var(--muted);display:block;font-size:.78rem;font-weight:900;text-transform:uppercase}.member-picker-header strong{color:var(--brand-dark)}.member-search{margin:0}.member-picker-body{display:grid;gap:12px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.member-results,.selected-member-list{align-content:start;background:#eff6ff;border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;max-height:260px;overflow:auto;padding:8px}.member-results button,.stack-form .member-results button,.stack-form .member-results button:not(.text-button):not(.icon-button){background:#f0f7ff!important;border:1px solid #bfdbfe!important;color:var(--ink)!important;display:grid;gap:3px;justify-content:stretch;min-height:46px;padding:8px 10px;text-align:left}.member-results button:focus,.member-results button:active,.stack-form .member-results button:focus,.stack-form .member-results button:active,.stack-form .member-results button:not(.text-button):not(.icon-button):focus,.stack-form .member-results button:not(.text-button):not(.icon-button):active{background:#eaf4ff!important;border-color:#93c5fd!important;box-shadow:0 0 0 3px #93c5fd3d}.member-results button strong,.stack-form .member-results button strong{color:var(--ink);font-size:.92rem;font-weight:900;line-height:1.2}.member-results button span,.stack-form .member-results button span{color:#1e3a8a;font-size:.8rem;font-weight:800}.member-results button:hover,.stack-form .member-results button:hover,.stack-form .member-results button:not(.text-button):not(.icon-button):hover{background:#dbeafe!important;border-color:#93c5fd!important}.member-results button:hover strong,.stack-form .member-results button:hover strong{color:#1d4ed8}.member-results button:hover span,.stack-form .member-results button:hover span{color:#1e40af}.member-picker-help{color:var(--muted);font-size:.78rem;margin:0}.selected-member-list{display:flex;flex-wrap:wrap}.selected-member-chip{align-items:center;background:color-mix(in srgb,var(--highlight) 68%,#fff);border:1px solid var(--highlight-border);border-radius:8px;color:var(--brand-dark);display:inline-flex;font-weight:900;gap:8px;padding:7px 8px}.selected-member-chip button{background:#fff;color:var(--brand-dark);min-height:24px;padding:0 7px}.cancel-future-form{background:var(--panel-soft);border:1px solid rgba(165,61,61,.22);border-radius:8px;display:grid;gap:12px;margin-top:18px;padding:12px}.cancel-future-form p{color:var(--muted);margin:6px 0 0}.cancel-future-form label{margin:0}.cancel-future-form button{justify-self:start}.calendar-toolbar{align-items:center;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;margin-bottom:16px}.schedule-operations{display:grid;gap:12px;grid-template-columns:minmax(300px,.9fr) minmax(0,1.4fr)}.schedule-next-up{align-items:center;background:linear-gradient(125deg,#172554,#3547aa);border-radius:11px;color:#fff;display:flex;gap:18px;justify-content:space-between;min-width:0;padding:17px 19px}.schedule-next-up .eyebrow{color:#bfdbfe;margin:0 0 3px}.schedule-next-up h2{color:#fff;font-size:1.3rem;margin:0 0 4px}.schedule-next-up p:not(.eyebrow){color:#ffffffb3;font-size:.75rem;margin:0}.schedule-next-up>div>div{display:flex;gap:5px;margin-top:9px}.schedule-next-up>div>div span{background:#ffffff1f;border-radius:999px;font-size:.62rem;font-weight:900;padding:4px 7px}.schedule-next-up>div>div .ready{color:#bbf7d0}.schedule-next-up>div>div .attention{color:#fde68a}.schedule-next-up>button{background:#fff;color:var(--brand-dark);flex:0 0 auto;min-height:39px;padding:0 12px}.schedule-week-insights{background:#fff;border:1px solid var(--line);border-radius:11px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:hidden}.schedule-week-insights>div{padding:13px 12px}.schedule-week-insights>div+div{border-left:1px solid var(--line)}.schedule-week-insights span,.schedule-week-insights small{color:var(--muted);display:block}.schedule-week-insights span{font-size:.61rem;font-weight:900;text-transform:uppercase}.schedule-week-insights strong{display:block;font-size:1.22rem;margin:2px 0}.schedule-week-insights small{font-size:.63rem}.schedule-week-insights .attention{background:#fffaf0}.schedule-week-insights .attention strong{color:#c2410c}.calendar-period-controls,.calendar-display-controls{align-items:center;display:flex;gap:6px}.calendar-period-controls .icon-button{border:1px solid var(--line);color:var(--brand)}.calendar-period-controls .today-button{border:1px solid var(--line);padding:0 10px}.calendar-display-controls{justify-content:flex-end}.calendar-display-controls .schedule-view-toggle,.calendar-display-controls .trainer-filter{margin:0}.calendar-display-controls .trainer-filter{width:155px}.calendar-toolbar h2{margin:0;text-align:center}.schedule-view-toggle{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:inline-flex;gap:4px;margin-top:10px;padding:4px}.schedule-view-toggle button{background:transparent;color:var(--muted);min-height:32px;padding:0 12px;text-transform:capitalize}.schedule-view-toggle button.active{background:var(--highlight);color:var(--brand-dark)}.trainer-filter{display:grid;gap:5px;margin:10px auto 0;max-width:260px}.trainer-filter span{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.calendar-grid{display:grid;gap:8px;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-grid.day-view{grid-template-columns:minmax(0,1fr)}.calendar-grid.week-view{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekday{color:var(--muted);font-size:.75rem;font-weight:900;text-align:center;text-transform:uppercase}.calendar-day{align-content:start;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;grid-template-rows:auto minmax(0,1fr);min-height:118px;padding:8px}.day-view .calendar-day,.week-view .calendar-day{align-content:start;min-height:360px}.day-view .calendar-day{min-height:440px}.calendar-day.muted{opacity:.45}.calendar-day.today{background:var(--highlight);border-color:var(--highlight-border)}.calendar-day>strong{color:var(--brand-dark);font-size:.9rem}.calendar-appointments,.appointment-list{align-content:start;align-self:start;display:grid;gap:8px}.calendar-appointments.time-positioned{background:repeating-linear-gradient(to bottom,transparent 0 50px,rgba(148,163,184,.13) 50px 51px);height:663px;position:relative}.calendar-appointments.time-positioned:before{color:#94a3b8;content:"7a\a 9a\a 11a\a 1p\a 3p\a 5p\a 7p";font-size:.5rem;line-height:102px;opacity:.7;pointer-events:none;position:absolute;right:2px;top:-4px;white-space:pre}.calendar-appointments.time-positioned .appointment-chip{height:var(--event-height);left:0;overflow:hidden;position:absolute;right:0;top:var(--event-top);z-index:1}.calendar-appointments.time-positioned .appointment-chip:hover,.calendar-appointments.time-positioned .appointment-chip.active{height:auto;min-height:var(--event-height);overflow:visible;z-index:4}.preparation-card{overflow:hidden}.preparation-card .section-title{align-items:end;display:flex;justify-content:space-between;margin-bottom:18px}.preparation-card .section-title h2{margin:2px 0 4px}.preparation-card .section-title p:last-child{color:var(--muted);margin:0}.preparation-count{background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;color:#c2410c;font-size:.76rem;font-weight:900;padding:7px 11px}.preparation-list{gap:8px}.preparation-row{align-items:center;display:grid;gap:14px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:12px 14px}.preparation-date{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;justify-content:center;min-height:52px;min-width:52px}.preparation-date strong{color:var(--muted);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.preparation-date em{color:var(--ink);font-size:1.15rem;font-style:normal;font-weight:950;line-height:1.05}.preparation-status{background:#fff7ed;border-radius:999px;color:#c2410c;font-size:.7rem;font-weight:900;padding:6px 9px;white-space:nowrap}.preparation-complete{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;display:flex;gap:12px;padding:18px}.preparation-complete>span{align-items:center;background:#10b981;border-radius:50%;color:#fff;display:flex;font-size:1.1rem;height:36px;justify-content:center;width:36px}.preparation-complete p{color:#047857;margin:3px 0 0}@media(max-width:720px){.preparation-card .section-title{align-items:flex-start;gap:12px}.preparation-row{grid-template-columns:auto minmax(0,1fr) auto}.preparation-status{display:none}}.day-view .calendar-appointments{gap:5px}.appointment-chip{background:color-mix(in srgb,var(--trainer-color, #fff) 22%,#fff);border:1px solid color-mix(in srgb,var(--trainer-color, #2563eb) 48%,rgba(37,99,235,.18));border-left:5px solid var(--trainer-color, rgba(37, 99, 235, .42));border-radius:8px;color:var(--ink);cursor:pointer;display:grid;gap:2px;min-height:auto;padding:7px;text-align:left;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease;width:100%}.appointment-chip:hover,.appointment-chip.active{background:var(--highlight);border-color:var(--highlight-border);border-left-color:var(--trainer-color, var(--highlight-border));box-shadow:0 10px 24px #2563eb1f;transform:translateY(-1px)}.appointment-chip.group-class-chip{background:color-mix(in srgb,#f9a8d4 30%,#fff);border-color:color-mix(in srgb,#ec4899 44%,rgba(37,99,235,.18));border-left-color:#ec4899}.appointment-chip.past{background:#eef2f7;border-color:#cbd5e1;border-left-color:#94a3b8;color:#64748b;opacity:.72}.appointment-chip.past em{background:#f8fafc;border-color:#cbd5e1;color:#64748b}.appointment-chip.past.active,.appointment-chip.past:hover{background:#e2e8f0;border-color:#94a3b8}.appointment-chip span,.appointment-chip small,.appointment-row span{color:var(--muted);font-size:.78rem;font-weight:800}.appointment-chip strong{font-size:.82rem;line-height:1.2}.appointment-chip small{display:block;font-size:.72rem}.appointment-chip em{background:#ffffffb8;border:1px solid rgba(37,99,235,.14);border-radius:6px;color:var(--brand-dark);display:inline-block;font-size:.7rem;font-style:normal;font-weight:900;margin-top:2px;padding:2px 5px}.appointment-chip .appointment-kind{background:#ffffffa8;color:var(--muted)}.appointment-chip .appointment-readiness.ready{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.appointment-chip .appointment-readiness.attention{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.appointment-duration,.appointment-chip-notes{display:none}.day-view .appointment-chip{align-items:center;gap:8px;grid-template-columns:86px minmax(140px,1.15fr) minmax(120px,.85fr) 70px minmax(150px,.9fr);min-height:38px;padding:6px 8px}.day-view .appointment-chip span,.day-view .appointment-chip strong,.day-view .appointment-chip small,.day-view .appointment-chip em,.day-view .appointment-chip-notes{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-view .appointment-chip span{font-size:.8rem;grid-column:1}.day-view .appointment-chip strong{font-size:.9rem;grid-column:2}.day-view .appointment-chip small{font-size:.75rem;grid-column:3}.day-view .appointment-chip em{grid-column:5;justify-self:start;margin-top:0;max-width:100%}.day-view .appointment-duration{display:block;grid-column:4}.day-view .appointment-chip-notes{color:var(--muted);display:block;font-size:.76rem;font-weight:700;grid-column:2 / -1;margin:-2px 0 0}.appointment-row{align-items:center;background:color-mix(in srgb,var(--trainer-color, var(--panel-soft)) 12%,var(--panel-soft));border:1px solid var(--line);border-left:5px solid var(--trainer-color, var(--line));border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:12px;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.appointment-row:hover,.appointment-row:focus-within{background:var(--highlight);border-color:var(--highlight-border);box-shadow:var(--hover-shadow);transform:var(--hover-shift)}.appointment-row strong,.appointment-row span{display:block}.appointment-row p{color:var(--muted);margin:6px 0 0}.appointment-details{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-details>div{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:12px}.appointment-details span{color:var(--muted);display:block;font-size:.78rem;font-weight:900;margin-bottom:6px;text-transform:uppercase}.appointment-detail-notes,.appointment-workout-form,.appointment-shortcuts,.appointment-detail-actions{grid-column:1 / -1}.class-management-form{display:grid;gap:12px;margin-top:12px}.compact-class-roster{border:1px solid var(--line);border-radius:8px;overflow:hidden}.compact-class-roster-header{align-items:center;background:var(--panel-soft);display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.compact-class-roster-header>div{display:grid;gap:2px}.compact-class-roster-header span{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.compact-class-roster-list{display:grid}.compact-class-member{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:44px;padding:7px 12px}.compact-class-member+.compact-class-member{border-top:1px solid var(--line)}.compact-class-member>span{font-weight:900}.compact-class-member .text-button{min-height:32px;padding:0 10px}.compact-class-roster>.member-picker{border:0;border-radius:0}.class-history-picker{align-items:end;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;margin-top:12px;padding:12px}.class-history-picker label{min-width:0}.class-history-picker .text-button{border:1px solid var(--brand);min-height:42px;padding:0 14px}.appointment-row.group-class-row{border-left-color:#ec4899}.appointment-detail-notes p{color:var(--muted);margin:0}.appointment-detail-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.primary-action{align-items:center;background:var(--brand);border-radius:8px;color:#fff;display:inline-flex;font-weight:900;min-height:40px;padding:0 14px;text-decoration:none}.primary-action:hover{background:var(--brand-dark)}.appointment-workout-form{align-items:end;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:12px}.appointment-workout-form label{margin:0}.appointment-workout-form button{background:var(--brand);color:#fff;min-height:40px;padding:0 14px}.appointment-shortcuts{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.appointment-edit-form{display:grid;gap:13px}.appointment-edit-form>button,.appointment-edit-form .appointment-detail-actions button:not(.text-button){background:var(--brand);color:#fff;min-height:40px;padding:0 16px}.edit-scope{border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;margin:0;padding:12px}.edit-scope legend{color:var(--muted);font-size:.78rem;font-weight:900;padding:0 6px;text-transform:uppercase}.edit-scope label{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;gap:8px;margin:0;min-height:38px;padding:0 10px}.edit-scope input{accent-color:var(--brand);width:auto}.modal-backdrop{align-items:center;background:#0f172a6b;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:50}.appointment-modal{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 60px #0f172a47;max-height:calc(100vh - 40px);max-width:620px;overflow:auto;padding:18px;width:min(620px,100%)}.chart-modal{max-width:980px;width:min(980px,100%)}.chart-modal .modal-header{align-items:start}.chart-modal .modal-header p{color:var(--muted);font-weight:800;margin:5px 0 0}.schedule-modal{max-width:720px;width:min(720px,100%)}.member-edit-modal{max-width:680px;width:min(680px,100%)}.member-edit-actions{align-items:center;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end;padding-top:12px}.member-edit-actions .text-button{border:1px solid var(--line);padding:0 14px}.wizard-steps{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px}.wizard-steps button,.stack-form .wizard-steps button:not(.text-button):not(.icon-button){align-items:center;background:transparent;color:var(--muted);display:flex;gap:7px;justify-content:center;min-height:38px;padding:0 8px;transition:background .14s ease,color .14s ease,box-shadow .14s ease}.wizard-steps button span{align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;color:var(--brand);display:inline-flex;flex:0 0 24px;font-size:.78rem;height:24px;justify-content:center;margin:0}.wizard-steps button:hover,.stack-form .wizard-steps button:not(.text-button):not(.icon-button):hover{background:#eaf4ff;color:var(--brand-dark)}.wizard-steps button:disabled,.stack-form .wizard-steps button:disabled:not(.text-button):not(.icon-button){background:transparent;box-shadow:none;color:#94a3b8;cursor:default;opacity:1}.wizard-steps button:disabled span{background:#f8fafc;color:#94a3b8}.wizard-steps button.active,.stack-form .wizard-steps button.active:not(.text-button):not(.icon-button){background:var(--highlight);box-shadow:inset 0 0 0 1px var(--highlight-border);color:var(--brand-dark)}.wizard-steps button.active span{background:var(--brand);border-color:var(--brand);color:#fff}.wizard-panel{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:13px;padding:14px}.wizard-panel-heading h3{margin-bottom:4px}.wizard-panel-heading p{color:var(--muted);font-weight:800;margin:0}.required-fields-note{color:var(--muted);font-size:.72rem;font-weight:800;margin:-2px 2px 0;text-align:right}.required-fields-note span,.required-heading{color:#dc2626;font-weight:950}.required-field:after{color:#dc2626;content:" *";font-weight:950}.wizard-note{background:#fff7ed;border:1px solid #fed7aa;border-radius:6px;color:#9a3412;font-size:.88rem;font-weight:800;margin:0;padding:9px 11px}.wizard-capacity{background:var(--highlight);border:1px solid var(--highlight-border);border-radius:7px;color:var(--brand-dark);margin:0;padding:9px 11px}.recurrence-ending{border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:12px}.recurrence-ending legend{color:var(--muted);font-size:.78rem;font-weight:900;padding:0 6px;text-transform:uppercase}.recurrence-ending label{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:7px;cursor:pointer;display:flex;font-size:.78rem;font-weight:800;gap:7px;margin:0;padding:9px}.recurrence-ending label:has(input:checked){background:var(--highlight);border-color:var(--highlight-border);color:var(--brand-dark)}.recurrence-ending input[type=radio]{accent-color:var(--brand);width:auto}.recurrence-ending>input{grid-column:1 / -1}.workout-template-preview{background:linear-gradient(135deg,#2563eb12,#ec489914);border:1px solid var(--highlight-border);border-radius:8px;padding:12px}.workout-template-preview span,.workout-template-preview strong{display:block}.workout-template-preview span{color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase}.workout-template-preview strong{margin:3px 0}.workout-template-preview p{color:var(--muted);font-size:.78rem;margin:0}.class-review-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.class-review-grid>div{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:11px}.class-review-grid span,.class-review-grid strong,.class-review-grid small{display:block}.class-review-grid span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.class-review-grid strong{margin:4px 0}.class-review-grid small{color:var(--muted);line-height:1.35}.class-review-grid .review-warning{background:#fff7ed;border-color:#fed7aa}.class-conflict-review{border:1px solid;border-radius:8px;padding:12px}.class-conflict-review.clear{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.class-conflict-review.has-conflicts{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.class-conflict-review strong,.class-conflict-review span{display:block}.class-conflict-review span{font-size:.76rem;margin-top:3px}.class-conflict-review ul{font-size:.76rem;margin:9px 0 0;padding-left:18px}.class-command-modal{max-width:780px;overflow:visible;padding:0;width:min(780px,100%)}.appointment-command-modal{border-radius:11px;max-width:780px;overflow:visible;padding:0;width:min(780px,100%)}.appointment-command-hero{align-items:center;background:linear-gradient(120deg,color-mix(in srgb,var(--appointment-accent, var(--brand)) 78%,#172554),#172554);border-radius:10px 10px 0 0;color:#fff;display:grid;gap:14px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:20px}.appointment-command-hero .icon-button{align-self:start;background:#ffffff24;color:#fff}.appointment-member-avatar{align-items:center;background:#ffffff29;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:flex;font-size:1.15rem;font-weight:950;height:62px;justify-content:center;width:62px}.appointment-command-title p{color:#ffffffb8;font-size:.68rem;font-weight:900;margin:0 0 3px;text-transform:uppercase}.appointment-command-title h2{color:#fff;font-size:1.55rem;margin:0 0 7px}.appointment-command-title>div{display:flex;flex-wrap:wrap;gap:6px}.appointment-command-title>div span{background:#ffffff1f;border-radius:999px;font-size:.68rem;font-weight:800;padding:4px 8px}.appointment-command-status{text-align:right}.appointment-command-status span,.appointment-command-status strong{display:block}.appointment-command-status span{color:#fde68a;font-size:.68rem;font-weight:950;letter-spacing:.03em;text-transform:uppercase}.appointment-command-status strong{font-size:.78rem;margin-top:5px}.appointment-command-body{background:linear-gradient(180deg,#fff,var(--panel-soft));display:grid;gap:14px;padding:20px}.appointment-command-body>section{background:#fff;border:1px solid var(--line);border-radius:9px;padding:15px}.appointment-section-heading{align-items:start;display:flex;gap:12px;justify-content:space-between}.appointment-section-heading .eyebrow{margin:0 0 3px}.appointment-section-heading h3{margin:0}.appointment-ready-badge{background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;color:#c2410c;font-size:.66rem;font-weight:950;padding:5px 8px;text-transform:uppercase}.appointment-ready-badge.ready{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.appointment-workout-command>p{color:var(--muted);font-weight:700;margin:10px 0}.appointment-workout-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.appointment-workout-meta span{background:var(--panel-soft);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.7rem;font-weight:850;padding:5px 8px}.appointment-command-body .appointment-workout-form{background:#f8fbff;margin-top:10px}.appointment-snapshot-grid{display:grid;gap:9px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:12px}.appointment-snapshot-grid>div{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;min-width:0;padding:11px}.appointment-snapshot-grid span,.appointment-coach-note>span{color:var(--muted);display:block;font-size:.64rem;font-weight:950;margin-bottom:5px;text-transform:uppercase}.appointment-snapshot-grid strong,.appointment-snapshot-grid small{display:block;overflow:hidden;text-overflow:ellipsis}.appointment-snapshot-grid strong{font-size:.82rem}.appointment-snapshot-grid small{color:var(--muted);font-size:.68rem;margin-top:3px}.appointment-coach-note{border-left:3px solid var(--brand);margin-top:11px;padding:8px 11px}.appointment-coach-note p{margin:0}.appointment-command-footer{align-items:center;background:#fff;border-radius:0 0 10px 10px;border-top:1px solid var(--line);display:flex;gap:9px;justify-content:flex-end;padding:13px 16px}.appointment-command-edit{padding:20px}.class-command-hero{align-items:center;background:linear-gradient(120deg,color-mix(in srgb,var(--class-accent, var(--brand)) 82%,#172554),#172554);border-radius:10px 10px 0 0;color:#fff;display:grid;gap:14px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:18px 20px}.class-command-hero .icon-button{align-self:start;background:#ffffff24;color:#fff}.class-command-date{align-items:center;background:#ffffff21;border:1px solid rgba(255,255,255,.22);border-radius:10px;display:flex;flex-direction:column;height:62px;justify-content:center;width:62px}.class-command-date span{font-size:.65rem;font-weight:900;text-transform:uppercase}.class-command-date strong{font-size:1.65rem;line-height:1}.class-command-title p{color:#ffffffb8;font-size:.7rem;font-weight:900;margin:0 0 3px;text-transform:uppercase}.class-command-title h2{font-size:1.55rem;margin:0 0 7px}.class-command-title>div{display:flex;flex-wrap:wrap;gap:6px}.class-command-title>div span{background:#ffffff1f;border-radius:999px;font-size:.66rem;font-weight:800;padding:4px 7px}.class-command-status{text-align:right}.class-command-status span,.class-command-status strong{display:block}.class-command-status span{color:#bbf7d0;font-size:.68rem;font-weight:900;text-transform:uppercase}.class-command-status strong{font-size:.78rem;margin-top:4px}.class-command-tabs{background:#fff;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:0 16px}.class-command-tabs button{background:transparent;border-bottom:3px solid transparent;border-radius:0;color:var(--muted);min-height:48px;text-transform:capitalize}.class-command-tabs button.active{border-bottom-color:var(--brand);color:var(--brand)}.class-command-body{background:linear-gradient(180deg,#fff,var(--panel-soft));display:block;min-height:330px;padding:20px}.class-command-body>section{display:grid;gap:14px}.class-overview-grid{display:grid;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.class-overview-grid>div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:11px}.class-overview-grid span,.class-overview-grid strong{display:block}.class-overview-grid span,.class-workout-feature span,.class-command-notes span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.class-overview-grid strong{margin-top:4px}.class-workout-feature{align-items:center;background:linear-gradient(135deg,#2563eb14,#ec489917);border:1px solid var(--highlight-border);border-radius:10px;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto;padding:14px}.class-workout-feature strong{display:block;font-size:1.05rem;margin:4px 0}.class-workout-feature p{color:var(--muted);font-size:.75rem;margin:0}.class-workout-feature.empty-workout{background:#fff7ed;border-color:#fed7aa}.class-workout-feature>.text-link{align-self:center;background:#fff;border:1px solid var(--highlight-border);white-space:nowrap}.class-workout-actions{align-items:center;display:flex;gap:10px;justify-content:flex-end}.class-workout-actions .primary-action{background:var(--brand);border-radius:8px;color:#fff;font-weight:900;padding:11px 14px;text-decoration:none}.class-command-notes{background:#fff;border-left:3px solid var(--brand);border-radius:7px;padding:11px 13px}.class-command-notes p{margin:5px 0 0}.class-roster-list{display:grid;gap:7px}.class-roster-list article,.history-member-cards a{align-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:9px 10px}.roster-avatar{align-items:center;background:linear-gradient(135deg,var(--brand),#ec4899);border-radius:50%;color:#fff;display:flex;font-size:.68rem;font-weight:900;height:34px;justify-content:center;width:34px}.class-roster-list strong,.class-roster-list small,.history-member-cards strong,.history-member-cards small{display:block}.class-roster-list small,.history-member-cards small{color:var(--muted);font-size:.7rem;margin-top:2px}.class-roster-list em{background:#f0fdf4;border-radius:999px;color:#166534;font-size:.66rem;font-style:normal;font-weight:900;padding:5px 7px}.class-history-panel>p{color:var(--muted);margin:0}.history-member-cards{display:grid;gap:8px}.history-member-cards a{color:var(--ink);grid-template-columns:auto minmax(0,1fr) auto;text-decoration:none}.history-member-cards a:hover{border-color:var(--highlight-border);box-shadow:var(--hover-shadow)}.history-member-cards em{color:var(--brand);font-style:normal;font-weight:900}.class-command-footer{align-items:center;background:#fff;border-radius:0 0 10px 10px;border-top:1px solid var(--line);display:flex;gap:9px;justify-content:flex-end;padding:13px 16px}.class-command-footer .primary-action{background:var(--brand);border-radius:8px;color:#fff;font-weight:900;padding:11px 14px;text-decoration:none}.class-more-actions{margin-right:auto;position:relative}.class-more-actions summary{color:var(--muted);cursor:pointer;font-size:.76rem;font-weight:900;list-style:none;padding:8px}.class-more-actions summary::-webkit-details-marker{display:none}.class-more-actions>div{background:#fff;border:1px solid var(--line);border-radius:9px;bottom:calc(100% + 8px);box-shadow:var(--shadow);display:grid;gap:5px;left:0;min-width:210px;padding:7px;position:absolute;z-index:3}.class-more-actions>div button{background:transparent;color:var(--ink);font-size:.75rem;justify-content:flex-start;min-height:38px;text-align:left}.class-more-actions>div button.danger{color:#b91c1c}.group-workout-page{display:grid;gap:18px}.group-workout-identity{align-items:center;background:radial-gradient(circle at 90% 20%,rgba(236,72,153,.14),transparent 28%),linear-gradient(135deg,#f8fbff,#fff7fc);border:1px solid var(--highlight-border);border-radius:12px;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) auto auto;padding:20px}.group-workout-identity h2{font-size:clamp(1.65rem,3vw,2.25rem);margin:2px 0 6px}.group-workout-identity>div>p:not(.eyebrow){color:var(--muted);margin:0}.group-roster-avatars{align-items:center;display:flex}.group-roster-avatars span{align-items:center;background:linear-gradient(135deg,var(--brand),#ec4899);border:3px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:.65rem;font-weight:900;height:38px;justify-content:center;margin-left:-9px;width:38px}.group-roster-avatars span:first-child{margin-left:0}.group-roster-avatars strong{font-size:.75rem;margin-left:10px}.shared-workout-message{align-items:center;background:linear-gradient(100deg,#172554,#1d4ed8 60%,#be185d);border-radius:12px;box-shadow:0 16px 35px #1d4ed833;color:#fff;display:flex;gap:14px;padding:16px 18px}.shared-workout-message>span{align-items:center;background:#ffffff24;border:1px solid rgba(255,255,255,.22);border-radius:50%;display:flex;flex:0 0 44px;font-size:1.5rem;height:44px;justify-content:center}.shared-workout-message strong{display:block;font-size:1.05rem}.shared-workout-message p{color:#ffffffc2;font-size:.78rem;margin:3px 0 0}.group-workout-columns{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 310px}.group-workout-main{display:grid;gap:16px}.group-empty-workout{background:#fff;border:2px dashed var(--highlight-border);border-radius:12px;padding:28px;text-align:center}.group-empty-workout>span{align-items:center;background:var(--highlight);border-radius:50%;color:var(--brand);display:flex;font-size:1.7rem;height:50px;justify-content:center;margin:0 auto 10px;width:50px}.group-empty-workout h3{font-size:1.4rem;margin:0 0 6px}.group-empty-workout p{color:var(--muted);margin:0}.group-workout-roster,.shared-plan-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px #2563eb14;padding:18px}.group-workout-roster h3{margin:2px 0 13px}.group-workout-roster>div{align-items:center;border-top:1px solid var(--line);display:grid;gap:9px;grid-template-columns:auto minmax(0,1fr) auto;padding:10px 0}.group-workout-roster>div>span{align-items:center;background:linear-gradient(135deg,var(--brand),#ec4899);border-radius:50%;color:#fff;display:flex;font-size:.65rem;font-weight:900;height:32px;justify-content:center;width:32px}.group-workout-roster p,.group-workout-roster strong,.group-workout-roster small{display:block;margin:0}.group-workout-roster small{color:var(--muted);font-size:.68rem;margin-top:2px}.group-workout-roster em{color:#166534;font-size:.65rem;font-style:normal;font-weight:900}.group-workout-roster footer{background:var(--highlight);border-radius:8px;color:var(--brand-dark);font-size:.72rem;font-weight:900;margin-top:12px;padding:9px;text-align:center}.shared-plan-card{padding:22px}.shared-plan-card.published{border-color:#86efac}.shared-plan-status{align-items:center;display:flex;justify-content:space-between}.shared-plan-status span{background:var(--highlight);border-radius:999px;color:var(--brand-dark);font-size:.7rem;font-weight:900;padding:6px 9px;text-transform:uppercase}.shared-plan-card.published .shared-plan-status span{background:#dcfce7;color:#166534}.shared-plan-status em{color:var(--muted);font-size:.7rem;font-style:normal;font-weight:800}.shared-plan-card h3{font-size:1.6rem;margin:16px 0 7px}.shared-plan-exercises{display:grid;gap:7px;margin:18px 0}.shared-plan-exercises>div{align-items:center;background:var(--panel-soft);border-radius:8px;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;padding:9px 10px}.shared-plan-exercises>div>span{align-items:center;background:#fff;border-radius:50%;color:var(--brand);display:flex;font-size:.68rem;font-weight:900;height:25px;justify-content:center;width:25px}.shared-plan-exercises small{color:var(--muted)}.shared-plan-exercises>p{color:var(--muted);font-size:.72rem;margin:2px 0 0;text-align:center}.shared-plan-actions{align-items:center;display:flex;gap:10px;justify-content:flex-end}.shared-plan-actions details{position:relative}.shared-plan-actions summary{color:var(--muted);cursor:pointer;font-size:.75rem;font-weight:900;padding:8px}.wizard-actions{align-items:center;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end;padding-top:12px}.wizard-actions .text-button{border:1px solid var(--line);padding:0 14px}.modal-header{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;margin-bottom:14px;padding-bottom:12px}.modal-header h2{margin:0}.logo-settings{align-items:center;display:grid;gap:18px;grid-template-columns:auto minmax(0,1fr)}.logo-preview{aspect-ratio:1;background:#fff;border:1px solid var(--line);border-radius:8px;height:150px;object-fit:contain;padding:8px}.logo-controls{display:grid;gap:12px}.logo-controls .text-button{justify-self:start}.settings-list div,.danger-zone{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:12px}.settings-list span{color:var(--muted);font-weight:800}.danger-zone{border-color:#a53d3d59}.danger-zone p{color:var(--muted);margin:6px 0 0}.exercise-library-card:not(.expanded) .section-title{margin-bottom:0}.exercise-library-toolbar{align-items:end;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) minmax(220px,.5fr) auto;margin-bottom:14px;padding:12px}.exercise-library-toolbar>div{background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;padding:9px 12px}.exercise-library-toolbar span,.exercise-library-group-title span{color:var(--muted);display:block;font-size:.72rem;font-weight:900;text-transform:uppercase}.exercise-library-list{display:grid;gap:14px}.exercise-library-add-form{background:#fff;border:1px solid var(--brand);border-radius:8px;display:grid;gap:12px;margin-bottom:14px;padding:14px}.exercise-library-add-form button[type=submit]{background:var(--brand);color:#fff;justify-self:start;min-height:42px;padding:0 16px}.exercise-library-group{border:1px solid var(--line);border-radius:8px;overflow:hidden}.exercise-library-group-title{align-items:center;background:var(--panel-soft);display:flex;justify-content:space-between;padding:10px 12px}.exercise-library-group-title h3{margin:0}.exercise-library-group-title span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px 8px}.exercise-library-items{display:grid;gap:8px;padding:10px}.exercise-library-item{align-items:start;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:10px 12px;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.exercise-library-item.expanded{border-color:var(--highlight-border);box-shadow:0 10px 24px #2563eb14}.exercise-library-item:hover,.exercise-library-item:focus-within{border-color:var(--highlight-border);box-shadow:0 10px 24px #2563eb1a;transform:translateY(-1px)}.exercise-library-item p{color:var(--muted);margin:5px 0 0}.exercise-library-summary{align-items:start;display:flex;gap:12px;justify-content:space-between;min-width:0}.exercise-library-summary button{background:var(--highlight);border:1px solid var(--highlight-border);color:var(--text);flex:0 0 auto;min-height:36px;padding:0 12px}.exercise-library-defaults-form{display:grid;gap:10px;grid-column:1 / -1;margin-top:10px}.exercise-library-default-grid{align-items:end;display:grid;gap:8px;grid-template-columns:82px 82px minmax(110px,.35fr) minmax(220px,1fr)}.exercise-library-defaults-form label{margin:0}.exercise-library-default-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.exercise-library-default-actions button{background:var(--brand);color:#fff;min-height:42px;padding:0 14px}.history-summary{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.history-summary div,.history-workout,.history-exercise{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px}.history-summary div{padding:14px}.history-summary span,.history-workout small,.history-exercise small{color:var(--muted);display:block;font-size:.78rem;font-weight:900;margin-bottom:6px;text-transform:uppercase}.history-summary strong{display:block;font-size:1.4rem}.strength-score-card{align-items:center;background:linear-gradient(135deg,#2563eb14,#ec48991a);border:1px solid var(--highlight-border);border-radius:12px;display:grid;gap:20px;grid-template-columns:auto minmax(0,1fr) auto;margin-bottom:18px;padding:20px}.strength-hero{background:radial-gradient(circle at 12% 45%,rgba(37,99,235,.17),transparent 28%),radial-gradient(circle at 88% 20%,rgba(236,72,153,.18),transparent 30%),linear-gradient(135deg,#f8fbff,#fff7fc);box-shadow:0 22px 55px #2563eb1f;margin-top:4px;overflow:hidden;padding:26px;position:relative}.strength-hero:after{background:linear-gradient(90deg,var(--brand),#ec4899);bottom:0;content:"";height:4px;left:0;position:absolute;width:100%}.strength-hero .strength-score-ring{height:138px;width:138px}.strength-hero .strength-score-ring strong{font-size:2.8rem}.strength-hero .strength-score-copy h3{font-size:clamp(1.55rem,3vw,2.3rem);letter-spacing:-.03em}.strength-hero-pills{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}.strength-hero-pills span{background:#fff;border:1px solid rgba(37,99,235,.15);border-radius:999px;color:var(--brand-dark);font-size:.72rem;font-weight:900;padding:6px 9px}.history-wins{display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin:18px 0}.history-wins article{align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #2563eb12;display:flex;gap:13px;padding:16px}.history-wins article>span{align-items:center;background:linear-gradient(135deg,var(--brand),#ec4899);border-radius:12px;color:#fff;display:flex;flex:0 0 46px;font-size:1.4rem;height:46px;justify-content:center}.history-wins small,.top-movers small{color:var(--muted);display:block;font-size:.7rem;font-weight:900;text-transform:uppercase}.history-wins strong{display:block;margin:2px 0}.history-wins p{color:var(--muted);font-size:.78rem;margin:0}.history-visual-grid,.history-insights-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.history-visual-card,.history-insight-card,.strength-journey-card{background:linear-gradient(180deg,#fff,var(--panel-soft));border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px #2563eb12;padding:20px}.visual-card-heading{align-items:start;display:flex;gap:14px;justify-content:space-between}.visual-card-heading h3{font-size:1.35rem;margin:2px 0}.visual-card-heading>strong{color:var(--brand-dark);font-size:1.65rem}.visual-card-heading>strong span{color:var(--muted);display:block;font-size:.68rem;text-align:right}.history-visual-card>p{color:var(--muted);font-size:.82rem;margin:4px 0 0}.balanced-badge{background:var(--highlight);border:1px solid var(--highlight-border);border-radius:999px;color:var(--brand-dark);font-size:.7rem;font-weight:900;padding:6px 9px}.muscle-map{display:block;height:390px;margin:10px auto 0;max-width:100%;width:100%}.body-view-panel{fill:#f8fafcbf;stroke:#e2e8f0}.body-view-title{fill:var(--muted);font-size:9px;font-weight:950;letter-spacing:.14em;text-anchor:middle}.body-silhouette{fill:url(#bodySurface);stroke:#aeb9c8;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.body-feature{fill:none;opacity:.62;stroke:#b8c2cf;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.3}.muscle-zone{cursor:default;fill:#dfe5ec;stroke:#ffffffeb;stroke-linejoin:round;stroke-width:1.7;transition:fill .18s ease,filter .18s ease,opacity .18s ease}.muscle-zone.trained{cursor:pointer}.muscle-zone.intensity-1{fill:#a9c4f8}.muscle-zone.intensity-2{fill:#668ee9}.muscle-zone.intensity-3{fill:#315ed4}.muscle-zone.trained:hover,.muscle-zone.selected{fill:#ec4899;filter:drop-shadow(0 3px 7px rgba(236,72,153,.45));outline:none}.muscle-map-legend{align-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;display:flex;gap:12px;justify-content:space-between;margin-top:4px;padding:8px 10px}.muscle-map-legend>span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.muscle-map-legend>div{align-items:center;display:flex;gap:5px}.muscle-map-legend i{border:1px solid rgba(148,163,184,.28);border-radius:4px;display:inline-block;height:11px;width:18px}.muscle-map-legend i.level-0{background:#dfe5ec}.muscle-map-legend i.level-1{background:#a9c4f8}.muscle-map-legend i.level-2{background:#668ee9}.muscle-map-legend i.level-3{background:#315ed4}.muscle-map-legend small{color:var(--muted);font-size:.6rem;margin-right:3px}.muscle-map-selection{align-items:center;background:var(--highlight);border-radius:8px;display:flex;justify-content:space-between;padding:9px 12px}.muscle-map-selection span{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.muscle-map-selection strong{color:var(--brand-dark)}.radar-chart{display:block;margin:15px auto 0;max-height:350px;width:100%}.radar-grid{fill:#2563eb06;stroke:#2563eb29}.radar-grid-line{stroke:#2563eb1c}.radar-data{fill:#ec489930;stroke:url(#none);stroke:#ec4899;stroke-linejoin:round;stroke-width:3}.radar-chart text{fill:var(--muted);font-size:10px;font-weight:900}.strength-journey-card{margin-bottom:18px;overflow:hidden}.strength-journey-card svg{display:block;margin-top:10px;width:100%}.strength-journey-card svg line{stroke:#2563eb1a;stroke-dasharray:4 6}.strength-journey-card svg text{fill:var(--muted);font-size:11px;font-weight:800}.journey-line{fill:none;stroke:#ec4899;stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.journey-glow{fill:none;filter:blur(7px);opacity:.35;stroke:#2563eb;stroke-width:13}.strength-journey-card circle{fill:#fff;stroke:#ec4899;stroke-width:3}.journey-footer{color:var(--muted);display:flex;font-size:.72rem;font-weight:900;justify-content:space-between}.consistency-card{background:radial-gradient(circle at 100% 0,rgba(236,72,153,.13),transparent 38%),linear-gradient(145deg,#fff,#f8faff);overflow:hidden}.consistency-live{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;color:#047857;display:flex;font-size:.68rem;font-weight:900;gap:6px;padding:6px 9px}.consistency-live i{animation:consistency-pulse 1.8s infinite;background:#10b981;border-radius:50%;height:7px;width:7px}.consistency-hero{align-items:center;display:grid;gap:16px;grid-template-columns:auto minmax(0,1fr);margin:18px 0 16px}.consistency-streak{align-items:center;background:linear-gradient(145deg,#172554,#2563eb);border-radius:16px;box-shadow:0 12px 28px #2563eb38;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:132px;min-width:116px;padding:14px;position:relative}.consistency-streak>span{filter:drop-shadow(0 3px 7px rgba(251,146,60,.45));font-size:1.65rem;position:absolute;right:12px;top:10px}.consistency-streak strong{font-size:3rem;line-height:1}.consistency-streak small{color:#ffffffb8;font-size:.66rem;font-weight:900;margin-top:5px;text-transform:uppercase}.consistency-story>strong{display:block;font-size:1rem;line-height:1.25}.consistency-story p{color:var(--muted);font-size:.78rem;line-height:1.45;margin:5px 0 10px}.consistency-story>small{color:var(--muted);display:block;font-size:.65rem;font-weight:800;margin-top:6px}.rhythm-meter{background:#e7edf7;border-radius:999px;height:8px;overflow:hidden}.rhythm-meter span{background:linear-gradient(90deg,#2563eb,#ec4899);border-radius:inherit;display:block;height:100%}.weekly-rhythm{align-items:end;background:#ffffffb3;border:1px solid var(--line);border-radius:12px;display:grid;gap:7px;grid-template-columns:repeat(8,1fr);padding:12px 10px 9px}.weekly-rhythm>div{align-items:center;display:flex;flex-direction:column;gap:4px;min-width:0}.weekly-rhythm strong{color:var(--muted);font-size:.68rem}.weekly-rhythm>div>span{align-items:end;background:#edf2f9;border-radius:5px;display:flex;height:58px;overflow:hidden;width:min(22px,100%)}.weekly-rhythm i{background:linear-gradient(180deg,#ec4899,#2563eb);border-radius:5px;display:block;min-height:4px;width:100%}.weekly-rhythm small{color:var(--muted);font-size:.55rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekly-rhythm .current strong,.weekly-rhythm .current small{color:var(--brand)}.weekly-rhythm .current>span{box-shadow:0 0 0 2px #2563eb33}.consistency-footer{display:grid;gap:6px;grid-template-columns:repeat(3,1fr);margin-top:10px}.consistency-footer span{color:var(--muted);font-size:.62rem;text-align:center}.consistency-footer strong{color:var(--ink);display:block;font-size:.9rem}@keyframes consistency-pulse{50%{box-shadow:0 0 0 5px #10b98126}}.top-movers{display:grid;gap:8px;margin-top:14px}.top-movers>div{align-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;padding:9px 10px}.mover-rank{align-items:center;background:var(--highlight);border-radius:50%;color:var(--brand-dark);display:flex;font-size:.72rem;font-weight:900;height:28px;justify-content:center;width:28px}.top-movers em{color:#16a34a;font-style:normal;font-weight:900}.history-detail-heading{align-items:end;border-top:1px solid var(--line);display:flex;justify-content:space-between;margin:26px 0 14px;padding-top:22px}.history-detail-heading h3{font-size:1.55rem;margin:3px 0 0}.client-deep-dive{display:grid;gap:16px;margin-bottom:18px}.deep-dive-hero{align-items:center;background:radial-gradient(circle at 85% 20%,rgba(236,72,153,.2),transparent 32%),linear-gradient(130deg,#172554,#1d4ed8);border-radius:14px;box-shadow:0 18px 42px #1d4ed833;color:#fff;display:grid;gap:22px;grid-template-columns:minmax(0,1fr) auto;overflow:hidden;padding:24px;position:relative}.deep-dive-hero .eyebrow{color:#f9a8d4}.deep-dive-hero h3{font-size:clamp(1.5rem,3vw,2.15rem);letter-spacing:-.025em;margin:2px 0 7px}.deep-dive-hero p:not(.eyebrow){color:#ffffffc7;margin:0;max-width:650px}.deep-dive-hero-stats{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.deep-dive-hero-stats div{background:#ffffff1a;border:1px solid rgba(255,255,255,.17);border-radius:10px;min-width:92px;padding:12px;text-align:center}.deep-dive-hero-stats strong,.deep-dive-hero-stats span{display:block}.deep-dive-hero-stats strong{font-size:1.45rem}.deep-dive-hero-stats span{color:#ffffffb3;font-size:.66rem;font-weight:800;margin-top:2px}.exercise-spotlights{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.exercise-spotlights button{align-items:start;background:linear-gradient(180deg,#fff,var(--panel-soft));border:1px solid var(--line);border-radius:11px;color:var(--ink);display:grid;gap:4px;min-height:106px;padding:14px;text-align:left}.exercise-spotlights button:hover{border-color:var(--highlight-border);box-shadow:var(--hover-shadow);transform:translateY(-2px)}.exercise-spotlights span{color:var(--brand);font-size:.68rem;font-weight:900;text-transform:uppercase}.exercise-spotlights strong{line-height:1.25}.exercise-spotlights em{color:#16a34a;font-size:1.05rem;font-style:normal;font-weight:950}.exercise-focus-card,.milestone-card,.next-goal-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px #2563eb12;padding:20px}.exercise-focus-heading{align-items:start;display:flex;gap:16px;justify-content:space-between}.exercise-focus-heading select{background:transparent;border:0;color:var(--ink);display:block;font-size:clamp(1.25rem,2vw,1.65rem);font-weight:950;margin-left:-4px;max-width:500px;padding:2px 28px 2px 4px}.exercise-focus-heading>div>span{color:var(--muted);display:block;font-size:.74rem;font-weight:900;margin-top:3px;text-transform:uppercase}.deep-dive-range{background:var(--panel-soft);border:1px solid var(--line);border-radius:9px;display:flex;padding:3px}.deep-dive-range button{background:transparent;color:var(--muted);min-height:34px;padding:5px 9px}.deep-dive-range button.active{background:#fff;box-shadow:0 3px 9px #2563eb1f;color:var(--brand)}.then-now-row{align-items:center;display:grid;gap:14px;grid-template-columns:1fr auto 1fr;margin:18px 0 8px}.then-now-row article{background:var(--panel-soft);border:1px solid var(--line);border-radius:10px;padding:14px}.then-now-row article.now{background:linear-gradient(135deg,#2563eb14,#ec48991a);border-color:var(--highlight-border)}.then-now-row article span,.then-now-row article strong,.then-now-row article small{display:block}.then-now-row article span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.then-now-row article strong{font-size:1.65rem;margin:3px 0}.then-now-row article small{color:var(--muted)}.transformation-arrow{text-align:center}.transformation-arrow span,.transformation-arrow strong{display:block}.transformation-arrow span{color:var(--brand);font-size:1.5rem}.transformation-arrow strong{color:#16a34a;font-size:.82rem}.deep-dive-chart .weight-chart{border:0;box-shadow:none;margin:0}.deep-dive-bottom-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.milestone-list{display:grid;gap:8px;margin-top:14px}.milestone-list>div{align-items:center;background:var(--panel-soft);border-radius:9px;display:flex;gap:10px;padding:9px 10px}.milestone-list>div>span{align-items:center;background:linear-gradient(135deg,var(--brand),#ec4899);border-radius:50%;color:#fff;display:flex;height:30px;justify-content:center;width:30px}.milestone-list p,.milestone-list strong,.milestone-list small{display:block;margin:0}.milestone-list small{color:var(--muted);font-size:.7rem;margin-top:2px}.next-goal-card{background:radial-gradient(circle at 90% 10%,rgba(236,72,153,.15),transparent 35%),linear-gradient(135deg,#f8fbff,#fff7fc)}.next-goal-card h3{font-size:1.6rem;margin:4px 0 9px}.next-goal-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.next-goal-card>small{color:var(--muted);display:block;font-size:.73rem;line-height:1.5}.goal-progress{background:#2563eb1a;border-radius:999px;height:10px;margin:18px 0 12px;overflow:hidden}.goal-progress span{background:linear-gradient(90deg,var(--brand),#ec4899);border-radius:inherit;display:block;height:100%}.all-exercise-charts{border:1px solid var(--line);border-radius:12px;margin-bottom:18px;overflow:hidden}.all-exercise-charts>summary{align-items:center;background:var(--panel-soft);cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:15px 17px}.all-exercise-charts>summary::-webkit-details-marker{display:none}.all-exercise-charts>summary strong,.all-exercise-charts>summary small{display:block}.all-exercise-charts>summary small{color:var(--muted);font-size:.72rem;margin-top:3px}.all-exercise-charts>summary em{color:var(--brand);font-size:.76rem;font-style:normal;font-weight:900}.all-exercise-charts .history-dashboard{margin:0;padding:14px}.strength-score-ring{align-items:center;background:conic-gradient(var(--brand) 0 var(--strength-score),rgba(37,99,235,.12) var(--strength-score) 360deg);border-radius:50%;display:flex;height:116px;justify-content:center;position:relative;width:116px}.strength-score-ring:before{background:#fff;border-radius:50%;content:"";inset:9px;position:absolute}.strength-score-ring div{position:relative;text-align:center}.strength-score-ring strong,.strength-score-ring span{display:block}.strength-score-ring strong{color:var(--brand-dark);font-size:2.25rem;line-height:1}.strength-score-ring span,.strength-score-copy small,.strength-score-breakdown span{color:var(--muted);font-size:.75rem;font-weight:800}.strength-score-copy h3{font-size:1.45rem;margin:3px 0 6px}.strength-score-copy>p:not(.eyebrow){margin:0 0 8px}.strength-score-breakdown{display:grid;gap:8px;min-width:170px}.strength-score-breakdown div{align-items:center;background:#ffffffc7;border:1px solid rgba(37,99,235,.12);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:9px 10px}.strength-score-breakdown strong{white-space:nowrap}.history-list,.history-exercise-list,.history-set-table{display:grid;gap:10px}.history-dashboard{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:18px}.history-trend-group{border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff 0%,var(--panel-soft) 100%);box-shadow:0 10px 26px #2563eb14;overflow:hidden;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.history-trend-group:hover,.history-trend-group:focus-within{border-color:var(--highlight-border);box-shadow:var(--hover-shadow);transform:var(--hover-shift)}.history-trend-group.expanded{border-color:var(--highlight-border);grid-column:1 / -1}.history-trend-group-summary{background:transparent;color:var(--ink);display:grid;gap:10px;min-width:0;padding:12px;text-align:left;width:100%}.history-trend-group-summary:hover,.history-trend-group-summary:focus{background:var(--highlight);outline:none}.history-trend-group-summary .weight-chart{background:transparent;border:0;box-shadow:none;margin:0;padding:0}.area-featured-chart-title{align-items:start;display:grid;gap:8px;grid-template-columns:minmax(0,1fr);min-width:0}.area-featured-chart-title span{color:var(--muted);display:block;font-size:.68rem;font-weight:900;text-transform:uppercase}.area-featured-chart-title strong{display:block;line-height:1.2;overflow-wrap:anywhere}.area-featured-chart-title em{align-self:start;background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;color:var(--brand-dark);font-size:.72rem;font-style:normal;font-weight:900;justify-self:start;padding:5px 7px;white-space:normal}.history-trend-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding:12px}.trend-tile{background:linear-gradient(180deg,#fff 0%,var(--panel-soft) 100%);border:1px solid rgba(37,99,235,.16);border-radius:8px;box-shadow:0 10px 26px #2563eb14;cursor:pointer;display:grid;gap:8px;min-width:0;padding:12px;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.trend-tile:hover,.trend-tile:focus{border-color:var(--highlight-border);box-shadow:0 14px 34px #ec489924;outline:none;transform:translateY(-1px)}.trend-tile-heading{align-items:start;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;min-width:0}.history-trend-group-summary .trend-tile-heading{align-items:center;grid-template-columns:minmax(0,1fr) auto}.trend-tile-heading span{color:var(--muted);display:block;font-size:.72rem;font-weight:900;margin-bottom:4px;text-transform:uppercase}.trend-tile-heading strong{display:block;line-height:1.2;overflow-wrap:anywhere}.trend-tile-heading em{align-self:start;background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;color:var(--brand-dark);font-style:normal;font-weight:900;justify-self:start;padding:5px 7px;white-space:normal}.trend-tile-heading .expand-icon{align-items:center;aspect-ratio:1;display:inline-flex;font-size:1.05rem;justify-content:center;line-height:1;padding:0;width:30px}.history-workout{padding:12px 14px}.history-workout-header{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto}.history-workout.expanded .history-workout-header{border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:12px}.history-workout-header .text-button{justify-self:end}.history-workout-header strong,.history-exercise-heading strong{display:block;margin-bottom:6px}.history-exercise{background:#fff;padding:10px}.history-exercise-heading{align-items:start;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;margin-bottom:10px}.history-exercise-heading>span{background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;color:var(--brand-dark);font-weight:900;padding:6px 8px}.history-set-row{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-template-columns:90px minmax(0,1fr) minmax(0,1fr);padding:9px 10px}.weight-chart{background:linear-gradient(180deg,#fff 0%,var(--panel-soft) 100%);border:1px solid rgba(37,99,235,.16);border-radius:8px;box-shadow:0 10px 28px #2563eb14;display:grid;gap:10px;margin-bottom:12px;padding:12px}.trend-tile .weight-chart{background:transparent;border:0;box-shadow:none;margin:0;padding:0}.weight-chart-heading,.weight-chart-meta{align-items:center;display:flex;gap:10px;justify-content:space-between}.weight-chart-heading span,.weight-chart-meta{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.weight-chart-heading strong{background:var(--highlight);border:1px solid var(--highlight-border);border-radius:8px;color:var(--brand-dark);padding:5px 8px}.weight-chart svg{background:radial-gradient(circle at 12% 12%,rgba(252,231,243,.8),transparent 28%),linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(215,227,241,.9);border-radius:8px;display:block;min-height:170px;overflow:visible;width:100%}.trend-tile .weight-chart svg{min-height:104px}.trend-tile .weight-chart-meta{font-size:.68rem}.trend-tile .chart-line{stroke-width:3.5}.trend-tile .chart-point-halo{r:6}.trend-tile .chart-point{r:3.5}.chart-data-list{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:12px}.chart-data-list div{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:3px;padding:9px 10px}.chart-data-list span,.chart-data-list small{color:var(--muted);font-size:.76rem;font-weight:900}.chart-data-list span{text-transform:uppercase}.chart-data-list small{font-weight:800}.chart-grid{stroke:#64748b2e;stroke-width:1}.chart-area{pointer-events:none}.chart-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.chart-point-halo{fill:#f9a8d43d}.chart-point-group{cursor:pointer;outline:none}.chart-point{fill:#fff;stroke:#ec4899;stroke-width:2}.chart-label{fill:#1d4ed8;font-size:.72rem;font-weight:900;paint-order:stroke;stroke:#fff;stroke-width:4px}.chart-hover-label{fill:#1d4ed8;font-size:.72rem;font-weight:900;opacity:0;paint-order:stroke;pointer-events:none;stroke:#fff;stroke-width:5px;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease}.chart-point-group:hover .chart-hover-label,.chart-point-group:focus .chart-hover-label{opacity:1;transform:translateY(-8px)}.chart-point-group:hover .chart-point,.chart-point-group:focus .chart-point{fill:var(--highlight);stroke-width:3}.member-card button:first-child{background:transparent;color:var(--ink);display:grid;gap:3px;padding:0;text-align:left}.icon-button{font-size:1.15rem;line-height:1;min-width:32px}.member-header{background:linear-gradient(135deg,#dbeafef5,#fce7f3e0);border:1px solid rgba(249,168,212,.62);border-radius:8px;box-shadow:0 18px 42px #2563eb1a;margin-bottom:18px;overflow:hidden;padding:20px;position:relative}.member-header:after{background:#ffffff6b;border-radius:999px;content:"";height:150px;position:absolute;right:-52px;top:-58px;width:150px}.member-header>*{position:relative;z-index:1}.member-header h2{font-size:1.65rem;line-height:1.05}.member-header p:not(.eyebrow){color:var(--brand-dark);font-weight:800;margin:8px 0 0}.member-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.member-header-actions .text-link,.member-header-actions .text-button{background:#ffffffb8;border:1px solid rgba(255,255,255,.84)}.member-header-actions .text-link:hover,.member-header-actions .text-button:hover{background:#fff;border-color:var(--highlight-border)}.client-switcher{align-items:end;background:#fff;border:1px solid var(--highlight-border);border-radius:8px;box-shadow:0 14px 30px #2563eb14;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;margin:-6px 0 18px;padding:12px}.client-switcher label{margin:0}.builder-grid{display:grid;gap:18px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.builder-grid.single{grid-template-columns:1fr}.optional-builder{margin-bottom:16px}.optional-card .section-title{margin-bottom:0}.optional-card{background:#ffffffdb;border-color:#d7e3f1eb;box-shadow:0 10px 26px #2563eb0f}.optional-card.expanded .section-title{border-bottom:1px solid var(--line);margin-bottom:16px;padding-bottom:12px}.optional-card .section-title p{color:var(--muted);margin:6px 0 0}.quick-builder{background:#fff;border-color:#2563eb2e;box-shadow:0 18px 44px #2563eb1a;margin-bottom:18px;overflow:hidden;position:relative}.quick-builder:before{background:linear-gradient(180deg,var(--brand),var(--highlight-border));content:"";inset:0 auto 0 0;position:absolute;width:5px}.quick-builder .section-title{align-items:start;padding-left:4px}.quick-builder .section-title p{color:var(--muted);margin:6px 0 0}.quick-form{align-items:end;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) minmax(0,1fr) auto;padding:12px}.quick-form label{margin:0}.quick-form button{box-shadow:0 10px 22px #2563eb29}.card,.program-board{padding:18px}.program-board{background:linear-gradient(180deg,#fffffffa,#f7fbfffa);border-color:#2563eb24;margin-top:18px}.program-board>.section-title{border-bottom:1px solid var(--line);margin-bottom:14px;padding-bottom:12px}.form-row{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}.plans-board{display:grid;gap:12px}.plan-card{background:#fff;border:1px solid rgba(215,227,241,.92);border-radius:8px;padding:14px;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.plan-card:hover,.plan-card:focus-within{border-color:var(--highlight-border);box-shadow:var(--hover-shadow);transform:var(--hover-shift)}.plan-card.complete{background:linear-gradient(180deg,#fff,#fce7f394);border-color:var(--highlight-border)}.plan-header{align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto}.plan-card.expanded .plan-header{border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:12px}.plan-actions{align-items:end;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.plan-actions .text-button{background:var(--panel-soft);border:1px solid var(--line)}.plan-actions .text-button:hover{background:var(--highlight);border-color:var(--highlight-border)}.plan-actions button:not(.text-button){background:var(--brand);color:#fff;min-height:40px;padding:0 14px}.plan-footer{display:flex;justify-content:flex-end;margin-top:14px}.plan-footer button{background:var(--brand);color:#fff;min-height:42px;padding:0 16px}.plan-header strong{display:block;font-size:1.12rem;margin-bottom:6px}.meta{display:flex;flex-wrap:wrap;font-size:.88rem;gap:8px}.meta span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px 8px}.exercise-card:not(.expanded):not(.complete) .meta{gap:6px}.exercise-card:not(.expanded):not(.complete) .meta span{background:#ffffffbd;border-color:#d7e3f1cc;font-size:.78rem;padding:3px 7px}.plan-notes{margin:10px 0 0}.exercise-list{display:grid;gap:9px}.client-workout-card>.plan-header>.text-button{background:var(--panel-soft);border:1px solid var(--line);min-height:40px;padding:0 14px}.client-calendar-layout{display:grid;gap:16px}.client-calendar-summary{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}.client-calendar-summary>div{padding:14px 16px}.client-calendar-summary>div+div{border-left:1px solid var(--line)}.client-calendar-summary span{color:var(--muted);display:block;font-size:.76rem;font-weight:900;margin-bottom:4px;text-transform:uppercase}.client-calendar-summary strong{font-size:1.2rem}.client-calendar-card{overflow:hidden}.client-calendar-toolbar{align-items:center;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;margin-bottom:14px}.client-calendar-toolbar h2{margin:0;text-align:center}.client-calendar-toolbar .text-button{border:1px solid var(--line);padding:0 13px}.client-calendar-scroll{overflow-x:auto}.client-calendar-grid{border-left:1px solid var(--line);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:820px}.client-calendar-weekday{background:var(--brand);color:#fff;font-size:.78rem;font-weight:900;padding:8px;text-align:center;text-transform:uppercase}.client-calendar-day{background:#fff;border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:124px;padding:7px}.client-calendar-day.muted{background:#f8fafc;color:#94a3b8}.client-calendar-day.today{box-shadow:inset 0 0 0 2px var(--highlight-border)}.client-calendar-day>strong{display:block;font-size:.82rem;margin-bottom:6px}.client-calendar-events{display:grid;gap:5px}.client-workout-event{border:1px solid;border-radius:6px;color:var(--ink);display:grid;gap:2px;padding:6px 7px;text-decoration:none;transition:box-shadow .14s ease,transform .14s ease}.client-workout-event:hover,.client-workout-event:focus-visible{box-shadow:0 8px 18px #2563eb29;transform:translateY(-1px)}.client-workout-event.assigned{background:#eff6ff;border-color:#bfdbfe}.client-workout-event.completed{background:var(--highlight);border-color:var(--highlight-border)}.client-workout-event>span{color:var(--brand-dark);font-size:.64rem;font-weight:900;text-transform:uppercase}.client-workout-event>strong{font-size:.76rem;line-height:1.2;overflow-wrap:anywhere}.client-workout-event>small{color:var(--muted);font-size:.68rem;overflow-wrap:anywhere}.client-calendar-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.client-calendar-legend span{border:1px solid;border-radius:6px;font-size:.78rem;font-weight:900;padding:5px 8px}.client-calendar-legend .assigned{background:#eff6ff;border-color:#bfdbfe;color:var(--brand-dark)}.client-calendar-legend .completed{background:var(--highlight);border-color:var(--highlight-border);color:#9d174d}.client-exercise-list{display:grid;gap:8px}.client-exercise-summary{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;grid-template-columns:32px minmax(0,1fr) auto;padding:10px 12px}.client-exercise-summary>span{align-items:center;background:var(--brand-soft);border-radius:50%;color:var(--brand-dark);display:inline-flex;font-weight:900;height:30px;justify-content:center;width:30px}.client-exercise-summary p,.client-exercise-summary small{color:var(--muted);display:block;margin:3px 0 0}.exercise-card{align-items:start;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;padding:11px 12px;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.exercise-card:hover,.exercise-card:focus-within{border-color:var(--highlight-border);box-shadow:var(--hover-shadow);transform:var(--hover-shift)}.exercise-card:not(.expanded):not(.complete){background:linear-gradient(180deg,#ffffff 0%,var(--panel-soft) 100%);border-color:#2563eb24;box-shadow:0 8px 22px #2563eb0f;padding:10px 12px}.exercise-card:not(.expanded):not(.complete) .exercise-card-header{align-items:center}.exercise-card.collapsed{cursor:pointer}.exercise-card:not(.expanded):not(.complete):hover{background:linear-gradient(180deg,#fff,#fef7fb)}.exercise-card.collapsed:focus{border-radius:8px;box-shadow:0 0 0 3px #2563eb29;outline:none}.exercise-card-header{align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;min-width:0}.exercise-title-block{min-width:0}.exercise-card:not(.expanded):not(.complete) .exercise-title-block{display:grid;gap:5px}.exercise-summary{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto}.exercise-summary .text-button{justify-self:end}.exercise-card-body{border-top:1px solid var(--line);padding-top:12px}.detail-meta{margin-bottom:6px}.exercise-detail-panel{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:10px 12px}.exercise-card.complete{background:linear-gradient(180deg,#fff,#fce7f3b8);border-color:var(--highlight-border)}.complete-heading{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.complete-heading small{margin-bottom:0}.complete-badge{background:var(--brand);border-radius:999px;color:#fff;font-size:.72rem;font-weight:900;padding:4px 8px;text-transform:uppercase}.complete-summary{color:var(--muted);margin:8px 0 0}.exercise-footer{display:flex;justify-content:flex-end;margin-top:12px}.exercise-footer button{background:var(--brand);color:#fff;min-height:42px;padding:0 18px}.exercise-actions{align-items:center;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;min-width:0}.exercise-actions .text-link,.exercise-actions .text-button{background:var(--panel-soft);border:1px solid var(--line);min-height:34px}.exercise-actions .text-link:hover,.exercise-actions .text-button:hover{background:var(--highlight);border-color:var(--highlight-border)}.exercise-actions .icon-action{align-items:center;aspect-ratio:1;background:#fff;border-color:#2563eb29;box-shadow:0 6px 16px #2563eb14;color:var(--brand);display:inline-flex;justify-content:center;min-height:34px;padding:0;width:34px}.exercise-actions .howto-action{font-size:.78rem}.exercise-actions .replace-action{font-size:1rem}.exercise-card small{color:var(--muted);display:block;font-size:.72rem;font-weight:950;letter-spacing:.04em;margin-bottom:0;text-transform:uppercase}.exercise-card strong{display:block;line-height:1.2;margin-bottom:2px;overflow-wrap:anywhere}.exercise-card p{margin:9px 0 0}.set-table{border:1px solid var(--line);border-radius:8px;display:grid;margin-top:12px;overflow:hidden}.set-row{align-items:center;background:#fff;display:grid;gap:10px;grid-template-columns:84px minmax(0,1fr) minmax(0,1fr) auto;min-height:50px;padding:8px 10px}.set-row+.set-row{border-top:1px solid var(--line)}.set-header{background:var(--panel-soft);color:var(--muted);font-size:.78rem;font-weight:900;min-height:36px;text-transform:uppercase}.set-row.logged{background:var(--panel-soft)}.set-row.logged span{color:var(--ink)}.logged-status{color:var(--brand);font-weight:900;justify-self:end}.set-row input{min-height:38px}.set-row button{justify-self:end}.set-controls{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:10px;padding:8px}.set-controls button:disabled{opacity:.45}.plate-calculator{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;margin-top:10px;padding:12px}.plate-calculator-toggle{align-items:center;background:transparent;color:var(--ink);display:flex;gap:10px;justify-content:space-between;min-height:34px;padding:0;text-align:left;width:100%}.plate-calculator-toggle span{color:var(--brand);display:block;font-weight:900}.plate-calculator-toggle small:after{content:" +";font-weight:900}.plate-calculator.expanded .plate-calculator-toggle small:after{content:" -"}.plate-calculator-body{align-items:end;display:grid;gap:12px;grid-template-columns:130px 130px 160px minmax(220px,1fr);margin-top:12px}.plate-calculator small,.plate-calculator output{color:var(--muted)}.plate-calculator output{background:#fff;border:1px solid var(--line);border-radius:8px;min-height:42px;padding:10px 12px}.set-form{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;margin-top:12px}.set-form button,.set-row button{background:var(--brand);color:#fff;min-height:42px;padding:0 14px}.rest-timer{background:var(--brand);border-radius:8px;color:#fff;display:inline-block;font-weight:900;margin-top:10px;padding:8px 12px}.rest-timer.complete{background:var(--highlight);color:var(--brand-dark)}.set-history{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;margin-top:10px;padding:10px}.set-history>span{color:var(--muted);display:block;font-size:.78rem;font-weight:900;margin-bottom:6px;text-transform:uppercase}.set-history ul{display:grid;gap:8px;list-style:none;margin:0;padding:0}.set-history li{background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 10px}.set-history small{color:var(--muted)}.empty-history{color:var(--muted);font-size:.9rem}.replace-form{background:#fff;border:1px solid var(--brand);border-radius:8px;display:grid;gap:12px;padding:14px}.exercise-description{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;color:var(--muted);margin:0;padding:10px 12px}.replace-actions{align-items:center;display:flex;gap:10px}.replace-actions button[type=submit]{background:var(--brand);color:#fff;min-height:42px;padding:0 16px}.quick-builder-heading,.workout-library-heading,.focus-toolbar,.training-toolbar,.review-footer,.training-finish-bar{align-items:center;display:flex;gap:16px;justify-content:space-between}.quick-builder-heading{margin-bottom:16px;padding-left:5px}.quick-builder-heading h3,.workout-library-heading h2,.focus-toolbar h2,.training-toolbar h2{margin:2px 0 0}.quick-builder-heading p:not(.eyebrow),.focus-toolbar-copy p:not(.eyebrow){color:var(--muted);margin:5px 0 0}.quick-step{align-items:center;background:var(--highlight);border:1px solid var(--highlight-border);border-radius:50%;color:var(--brand-dark);display:flex;font-size:1.1rem;font-weight:950;height:42px;justify-content:center;width:42px}.quick-builder .quick-form{grid-template-columns:minmax(0,1.25fr) minmax(180px,.65fr) auto}.quick-builder .quick-form>button{min-width:190px}.workout-name-option{grid-column:1 / -1}.workout-name-option summary{color:var(--brand);cursor:pointer;font-size:.84rem;font-weight:850;list-style-position:inside}.workout-name-option label{margin-top:10px;max-width:480px}.workout-library{margin-top:18px}.workout-library-heading{border-bottom:1px solid var(--line);margin-bottom:14px;padding-bottom:14px}.workout-tabs{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;display:flex;gap:4px;padding:4px}.workout-tabs button{background:transparent;color:var(--muted);min-height:36px;padding:0 11px}.workout-tabs button span{background:#fff;border-radius:999px;color:var(--brand-dark);margin-left:4px;padding:2px 6px}.workout-tabs button.active{background:#fff;box-shadow:0 4px 12px #2563eb1a;color:var(--brand)}.workout-queue{display:grid;gap:10px}.workout-launch-card{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) auto;padding:14px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.workout-launch-card:hover,.workout-launch-card:focus-within{border-color:var(--highlight-border);box-shadow:var(--hover-shadow);transform:translateY(-1px)}.workout-launch-card.featured{background:linear-gradient(135deg,#eff6fff5,#fdf2f8c7);border-color:var(--highlight-border);box-shadow:0 14px 30px #2563eb14;padding:18px}.workout-launch-card.complete{background:#fbfcfe}.workout-launch-main>strong{display:block;font-size:1.08rem;margin:5px 0 8px}.ready-badge{color:var(--brand);font-size:.72rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.workout-launch-actions{align-items:center;display:flex;gap:8px}.workout-launch-actions>button:not(.text-button),.start-workout-button,.review-footer>button:not(.text-button),.training-finish-bar button,.summary-actions button{background:var(--brand);color:#fff;min-height:42px;padding:0 16px}.workout-launch-actions>button:not(.text-button):hover,.start-workout-button:hover,.review-footer>button:not(.text-button):hover,.training-finish-bar button:hover,.summary-actions button:hover{background:var(--brand-dark)}.plan-more{position:relative}.plan-more summary{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;color:var(--muted);cursor:pointer;display:flex;font-weight:900;height:36px;justify-content:center;list-style:none;width:40px}.plan-more[open] button{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);min-width:120px;padding:8px 10px;position:absolute;right:0;top:42px;z-index:5}.mini-progress,.session-progress-track{background:#dbeafe;border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.mini-progress span,.session-progress-track span{background:var(--brand);display:block;height:100%;transition:width .3s ease}.workout-focus-layout{display:grid;gap:16px;margin:0 auto;max-width:1120px}.focus-toolbar,.training-toolbar{background:#fffffff5;border:1px solid var(--line);border-radius:8px;box-shadow:0 16px 34px #2563eb14;padding:14px 16px;position:sticky;top:10px;z-index:10}.focus-toolbar-copy{flex:1;min-width:0}.review-overview,.workout-summary-grid{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.review-overview>div,.workout-summary-grid>div{padding:14px 16px}.review-overview>div+div,.workout-summary-grid>div+div{border-left:1px solid var(--line)}.review-overview span,.workout-summary-grid span,.training-timer span,.weight-guidance span{color:var(--muted);display:block;font-size:.72rem;font-weight:850;margin-bottom:4px;text-transform:uppercase}.review-notes{background:var(--panel-soft);border-left:4px solid var(--highlight-border);color:var(--muted);margin:0;padding:12px 14px}.review-exercise-list{display:grid;gap:8px}.review-exercise-row{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:14px;grid-template-columns:38px minmax(220px,1fr) minmax(320px,1.1fr) auto;padding:12px;transition:border-color .14s ease,box-shadow .14s ease}.review-exercise-row:hover,.review-exercise-row:focus-within{border-color:var(--highlight-border);box-shadow:0 8px 20px #2563eb12}.exercise-order,.training-step-number{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:50%;color:var(--brand);display:flex;font-weight:950;height:34px;justify-content:center;width:34px}.review-exercise-copy small{color:var(--brand);display:block;font-size:.7rem;font-weight:900;text-transform:uppercase}.review-exercise-copy strong{display:block;margin-top:3px}.review-exercise-copy p{color:var(--muted);font-size:.84rem;margin:4px 0 0}.review-prescription{display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr))}.review-prescription span{background:var(--panel-soft);border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:.78rem;padding:7px 8px;text-align:center}.review-exercise-actions{display:flex;gap:5px}.review-exercise-actions .icon-action{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;color:var(--brand);display:flex;height:36px;justify-content:center;padding:0;width:36px}.review-exercise-actions .icon-action.danger{color:var(--danger)}.review-footer{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px 14px}.session-canvas{gap:14px;max-width:1180px}.session-canvas-toolbar{align-items:center;border-radius:11px;display:grid;gap:15px;grid-template-columns:auto minmax(0,1fr) auto;padding:13px 16px}.session-canvas-toolbar .canvas-back{border-right:1px solid var(--line);border-radius:0;padding-right:16px}.session-canvas-toolbar h2{font-size:1.3rem;margin:1px 0 5px}.session-canvas-toolbar .eyebrow{margin:0}.canvas-header-meta{display:flex;flex-wrap:wrap;gap:5px}.canvas-header-meta span{background:var(--panel-soft);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.67rem;font-weight:850;padding:3px 7px}.canvas-toolbar-actions{align-items:center;display:flex;gap:8px}.canvas-readiness{align-items:center;background:linear-gradient(115deg,#172554,#3346a8);border-radius:11px;color:#fff;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) auto;padding:18px 20px}.canvas-readiness .eyebrow{color:#bfdbfe;margin:0 0 3px}.canvas-readiness h3{color:#fff;font-size:1.2rem;margin:0 0 5px}.canvas-readiness p{color:#ffffffb8;margin:0}.canvas-time{border-left:1px solid rgba(255,255,255,.2);min-width:150px;padding-left:22px;text-align:right}.canvas-time span,.canvas-time small{color:#ffffffb3;display:block;font-size:.68rem;font-weight:850;text-transform:uppercase}.canvas-time strong{display:block;font-size:1.45rem;margin:2px 0}.session-phases{display:grid;gap:15px}.session-phase{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 8px 24px #1e40af0a;overflow:visible;padding:0 13px 13px}.session-phase>header{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:11px;grid-template-columns:auto minmax(0,1fr) auto;margin:0 -13px 8px;padding:13px 15px}.session-phase>header>span{color:var(--highlight-border);font-size:.72rem;font-weight:950}.session-phase>header h3{font-size:1rem;margin:0}.session-phase>header p{color:var(--muted);font-size:.75rem;margin:2px 0 0}.session-phase>header>strong{background:var(--panel-soft);border-radius:999px;color:var(--muted);font-size:.68rem;padding:5px 8px}.session-phase>div{display:grid;gap:7px}.session-phase .review-exercise-row{border-color:transparent;border-radius:9px;box-shadow:none;grid-template-columns:48px minmax(210px,1fr) minmax(360px,1.2fr) auto;padding:10px}.session-phase .review-exercise-row:nth-child(odd){background:#f8faff}.session-phase .review-exercise-row:hover,.session-phase .review-exercise-row:focus-within{background:#fff;border-color:var(--highlight-border);box-shadow:0 8px 22px #2563eb14}.exercise-order-control{align-items:center;display:flex;gap:4px}.exercise-order-control>div{display:grid;opacity:0;transition:opacity .14s ease}.review-exercise-row:hover .exercise-order-control>div,.review-exercise-row:focus-within .exercise-order-control>div{opacity:1}.exercise-order-control button{background:transparent;color:var(--muted);font-size:.65rem;height:15px;min-height:0;padding:0 3px}.review-prescription label{min-width:0}.review-prescription label span{color:var(--muted);display:block;font-size:.58rem;font-weight:900;margin:0 0 3px 3px;text-transform:uppercase}.review-prescription input{background:#fff;border-color:var(--line);font-size:.76rem;min-height:35px;padding:6px 8px;text-align:center}.review-prescription input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.review-exercise-actions{align-items:center}.exercise-action-link{background:transparent;border:0;color:var(--brand);font-size:.7rem;font-weight:900;min-height:34px;padding:0 7px;text-decoration:none;white-space:nowrap}.exercise-action-link:hover{background:var(--highlight)}.exercise-more{position:relative}.exercise-more summary{align-items:center;border-radius:7px;color:var(--muted);cursor:pointer;display:flex;font-weight:950;height:34px;justify-content:center;list-style:none;width:34px}.exercise-more summary:hover{background:var(--panel-soft)}.exercise-more>div{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--hover-shadow);padding:6px;position:absolute;right:0;top:36px;width:150px;z-index:5}.exercise-more button{background:transparent;font-size:.75rem;width:100%}.phase-add-button{background:transparent;border:1px dashed var(--highlight-border);color:var(--brand);margin-top:9px;min-height:36px;width:100%}.phase-add-button:hover{background:var(--highlight)}.canvas-add-exercise .optional-builder{margin:0}.canvas-add-exercise .optional-card{border:1px dashed var(--highlight-border);box-shadow:none}.canvas-footer{align-items:center;bottom:10px;box-shadow:0 15px 40px #0f172a29;display:flex;gap:9px;justify-content:flex-end;position:sticky;z-index:9}.canvas-footer>div{display:grid;margin-right:auto}.canvas-footer>div span{color:var(--muted);font-size:.7rem}.training-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.training-identity strong{color:var(--muted);display:block;margin-top:3px}.training-timer{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;min-width:100px;padding:9px 12px;text-align:right}.training-timer strong{color:var(--brand-dark);font-size:1.3rem}.session-progress{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 16px}.session-progress>div:first-child{display:flex;justify-content:space-between}.session-progress small{color:var(--muted);display:block;margin-top:7px}.session-progress-track{height:9px}.training-exercise-list{display:grid;gap:10px}.training-exercise-step{align-items:start;display:grid;gap:10px;grid-template-columns:40px minmax(0,1fr)}.training-step-number{margin-top:10px}.training-exercise-step:has(.exercise-card.complete) .training-step-number{background:var(--highlight);border-color:var(--highlight-border)}.training-mode .exercise-card.expanded{border-color:#2563eb57;box-shadow:0 18px 38px #2563eb1a;padding:16px}.training-mode .exercise-card.complete{opacity:.82}.weight-guidance{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.weight-guidance>div{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:10px 12px}.weight-guidance>div+div{background:#fdf2f8;border-color:#fbcfe8}.training-finish-bar{background:#fffffff7;border:1px solid var(--line);border-radius:8px;bottom:10px;box-shadow:0 -10px 32px #2563eb1f;padding:12px 14px;position:sticky;z-index:10}.training-finish-bar div span{color:var(--muted);display:block;font-size:.82rem;margin-top:2px}.workout-summary-screen{background:#fff;border:1px solid var(--highlight-border);border-radius:8px;box-shadow:0 24px 60px #2563eb21;margin:20px auto;max-width:820px;padding:34px;text-align:center}.workout-summary-screen h2{font-size:2rem;margin:6px 0 8px}.workout-summary-screen>p:not(.eyebrow){color:var(--muted)}.summary-celebration{align-items:center;animation:summary-pop .55s ease both;background:var(--brand);border:8px solid #dbeafe;border-radius:50%;color:#fff;display:flex;font-size:2rem;font-weight:950;height:82px;justify-content:center;margin:0 auto 18px;width:82px}.workout-summary-grid{margin:24px 0;text-align:left}.workout-summary-grid strong{font-size:1.2rem}.summary-actions{align-items:center;display:flex;gap:12px;justify-content:center}@keyframes summary-pop{0%{opacity:0;transform:scale(.7)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.empty{border:1px dashed var(--line);border-radius:8px;background:#ffffff9e;padding:20px;text-align:center}.action-empty{align-items:center;display:grid;gap:10px}.action-empty .text-link{justify-self:center}.empty.compact{padding:14px}.hidden{display:none}@media(max-width:920px){.topbar,.layout,.member-management,.schedule-layout,.builder-grid,.client-switcher,.quick-form,.profile-body,.user-access-row,.user-access-row form,.review-exercise-row,.schedule-operations{grid-template-columns:1fr}.calendar-toolbar{grid-template-columns:1fr;justify-items:center}.calendar-display-controls{flex-wrap:wrap;justify-content:center}.roster-member-card{grid-template-columns:auto minmax(0,1fr) auto}.settings-command-center{grid-template-columns:1fr}.settings-navigation{display:flex;overflow-x:auto;position:static}.settings-navigation button{border-bottom:3px solid transparent;border-left:0;flex:1 0 145px}.settings-navigation button+button{border-left:1px solid var(--line);border-top:0}.settings-navigation button.active{border-bottom-color:var(--brand);border-left-color:transparent}.access-user-row{grid-template-columns:auto minmax(130px,1fr) auto auto}.access-user-row small{grid-column:2}.access-user-row b{grid-column:3}.roster-member-status{grid-column:2}.roster-plan-status{grid-column:3;grid-row:1}.roster-member-actions{grid-column:2 / -1;justify-content:flex-end}.quick-builder .quick-form{grid-template-columns:minmax(0,1fr) minmax(180px,.65fr) auto}.review-exercise-row{align-items:start}.session-phase .review-exercise-row{grid-template-columns:44px minmax(0,1fr)}.session-phase .review-prescription,.session-phase .review-exercise-actions{grid-column:2}.session-canvas-toolbar{grid-template-columns:auto minmax(0,1fr)}.canvas-toolbar-actions{grid-column:1 / -1;justify-content:flex-end}.review-prescription{grid-template-columns:repeat(4,minmax(110px,1fr));overflow-x:auto}.calendar-card,.upcoming-card{grid-column:auto}.topbar-side{justify-items:start}.stats{min-width:0}.sidebar{position:static}}@media(prefers-reduced-motion:reduce){.login-page:before,.login-orb,.login-card,.login-logo,.login-logo-ring{animation:none}.member-card,.workout-day-row,.workout-day-summary,.appointment-chip,.appointment-row,.exercise-library-item,.history-trend-group,.trend-tile,.plan-card,.exercise-card,.workout-launch-card,.review-exercise-row{transition:none}.member-card:hover,.member-card:focus-within,.workout-day-row:hover,.workout-day-row:focus-within,.appointment-chip:hover,.appointment-chip.active,.appointment-row:hover,.appointment-row:focus-within,.exercise-library-item:hover,.exercise-library-item:focus-within,.history-trend-group:hover,.history-trend-group:focus-within,.trend-tile:hover,.trend-tile:focus,.plan-card:hover,.plan-card:focus-within,.exercise-card:hover,.exercise-card:focus-within,.workout-launch-card:hover,.workout-launch-card:focus-within{transform:none}.summary-celebration{animation:none}}@media(max-width:600px){.app{padding:16px}.login-page{padding:14px}.login-story{min-height:0;padding:22px}.login-story-copy{margin:32px 0 18px}.login-story-copy h1{font-size:2.1rem}.login-feature-list{grid-template-columns:1fr}.login-feature-list>div:nth-child(n+3){display:none}.login-shell .login-card{padding:28px 22px}.schedule-next-up{align-items:stretch;flex-direction:column}.schedule-week-insights{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-week-insights>div+div{border-left:0}.schedule-week-insights>div:nth-child(2n){border-left:1px solid var(--line)}.schedule-week-insights>div:nth-child(n+3){border-top:1px solid var(--line)}.impersonation-banner,.roster-command-header{align-items:stretch;flex-direction:column}.settings-command-header{align-items:flex-start;flex-direction:column}.branding-settings>div{grid-template-columns:1fr;justify-items:start}.access-form-heading,.access-directory-heading{align-items:flex-start;flex-direction:column}.access-user-row{grid-template-columns:auto minmax(0,1fr) auto}.access-user-row .access-role,.access-user-row small,.access-user-row b{grid-column:2}.access-user-row i{grid-column:3;grid-row:1 / 3}.access-editor-actions{align-items:stretch;flex-direction:column}.access-editor-actions .danger{margin-right:0}.roster-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-summary>div+div{border-left:0}.roster-summary>div:nth-child(2n){border-left:1px solid var(--line)}.roster-summary>div:nth-child(n+3){border-top:1px solid var(--line)}.roster-tools{grid-template-columns:1fr}.roster-member-card{align-items:start;grid-template-columns:auto minmax(0,1fr)}.roster-member-status,.roster-plan-status,.roster-member-actions{grid-column:2;grid-row:auto}.roster-member-actions{justify-content:flex-start}.wizard-steps{grid-template-columns:repeat(5,minmax(44px,1fr));overflow-x:auto}.wizard-steps button{font-size:0;gap:0;padding:0}.wizard-steps button span{font-size:.78rem}.recurrence-ending,.class-review-grid{grid-template-columns:1fr}.class-command-hero,.appointment-command-hero{grid-template-columns:auto minmax(0,1fr) auto}.appointment-command-status{display:none}.appointment-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-command-footer{align-items:stretch;flex-wrap:wrap}.class-command-status{display:none}.class-command-tabs{padding:0 6px}.class-command-tabs button{font-size:.72rem}.class-overview-grid,.class-workout-feature{grid-template-columns:1fr}.class-workout-actions{align-items:stretch;flex-direction:column}.class-command-footer{align-items:stretch;flex-wrap:wrap}.class-more-actions{margin-right:0}.group-workout-identity,.group-workout-columns{grid-template-columns:1fr}.group-roster-avatars{justify-self:start}.calendar-card{overflow-x:auto}.calendar-grid{min-width:680px}.calendar-grid.day-view{min-width:0}.stats,.client-calendar-summary,.brand-lockup,.form-row,.form-row.three,.logo-settings,.profile-body,.calendar-toolbar,.appointment-details,.appointment-workout-form,.class-history-picker,.member-picker-body,.history-summary,.strength-score-card,.history-wins,.history-visual-grid,.history-insights-grid,.deep-dive-hero,.deep-dive-hero-stats,.exercise-spotlights,.deep-dive-bottom-grid,.history-exercise-heading,.history-set-row,.appointment-row,.settings-list div,.trainer-row,.user-access-row,.user-access-row form,.exercise-library-toolbar,.exercise-library-item,.exercise-library-default-grid,.danger-zone,.set-form,.plate-calculator,.plate-calculator-body,.plan-header,.client-exercise-summary,.exercise-card-header,.exercise-card,.review-overview,.workout-summary-grid,.workout-launch-card,.training-toolbar,.weight-guidance,.quick-builder .quick-form{grid-template-columns:1fr}.quick-builder .quick-form>button{min-width:0}.quick-builder-heading,.workout-library-heading,.focus-toolbar,.review-footer,.training-finish-bar{align-items:stretch;flex-direction:column}.workout-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.workout-tabs button{padding:0 5px}.workout-launch-actions{align-items:stretch;display:grid;grid-template-columns:minmax(0,1fr) auto auto}.review-overview>div+div,.workout-summary-grid>div+div{border-left:0;border-top:1px solid var(--line)}.review-prescription{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.review-exercise-actions{justify-content:flex-end}.focus-toolbar,.training-toolbar{position:static}.training-toolbar{display:grid}.training-timer{text-align:left}.training-exercise-step{grid-template-columns:32px minmax(0,1fr)}.training-step-number{height:30px;width:30px}.training-finish-bar>div,.training-finish-bar button,.summary-actions>*{width:100%}.summary-actions{align-items:stretch;flex-direction:column}.brand-lockup{align-items:start}.app-logo{height:179px}.logo-preview{height:112px}.set-row{gap:8px;grid-template-columns:60px minmax(64px,1fr) minmax(76px,1fr) auto;padding:8px}.set-row input{padding:0 8px}.set-row button{min-width:72px;padding:0 10px}.stats div+div{border-left:0;border-top:1px solid var(--line)}.client-calendar-summary>div+div{border-left:0;border-top:1px solid var(--line)}.plan-header,.exercise-card{display:grid}.exercise-summary{grid-template-columns:1fr}.exercise-summary .text-button{justify-self:stretch}.exercise-actions,.replace-actions,.set-controls,.plan-actions,.exercise-footer,.plan-footer{align-items:stretch}.exercise-actions{justify-content:stretch}.exercise-actions .text-link,.exercise-actions .text-button{flex:1 1 auto;text-align:center}.exercise-actions .icon-action{flex:0 0 40px;width:40px}.set-controls,.plan-actions,.exercise-footer,.plan-footer{display:grid}.day-view .appointment-chip{grid-template-columns:minmax(0,1fr)}}
