/* v0.6.0 compact client search and badge filters. */
.clients-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.clients-toolbar{align-items:center;gap:12px}
.client-search-field{flex:1 1 260px;max-width:360px;animation:client-search-in .16s ease-out}
.client-status-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-left:0}
.client-status-mobile,.profile-tabs-select{display:none}
.clients-toolbar #client-count{margin-left:auto}
.stat-link{color:inherit;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.stat-link:hover{transform:translateY(-2px);border-color:#cad4cf;box-shadow:0 8px 22px #1a2b2212}
.stat-link:focus-visible{outline:3px solid #8eb4a0;outline-offset:2px}
.client-status-badge{border:1px solid #e2e6e5;border-radius:999px;background:#fff;color:#626a6e;padding:8px 13px;font:600 13px/1.2 inherit;cursor:pointer;min-height:36px}
.client-status-badge:hover{background:#eff4f1;color:#2e3933}
.client-status-badge.selected{background:#191b1d;border-color:#191b1d;color:#fff;box-shadow:0 2px 5px #17191b12}
.client-status-badge.status-active:not(.selected){background:#edf7ee;color:#477452;border-color:#deeddf}
.client-status-badge.status-onboarding:not(.selected){background:#fff5e5;color:#936d32;border-color:#f3e3c7}
.client-status-badge.status-paused:not(.selected){background:#f1edf8;color:#776394;border-color:#e5ddef}
.client-status-badge.status-archived:not(.selected){background:#f0f2f3;color:#697277;border-color:#e3e6e8}
.client-name-link{color:#24282b;text-decoration:none;text-underline-offset:3px}
.client-name-link:hover{text-decoration:underline;color:#385e4b}
.client-name-link:focus-visible{border-radius:4px}
.profile-session-link{color:#24282b;text-decoration:none;text-underline-offset:3px}
.profile-session-link:hover{text-decoration:underline;color:#385e4b}
.management-list{display:flex;flex-direction:column;overflow:hidden}
.management-list-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:18px 20px;border-bottom:1px solid #edf0f1}
.management-list-item:last-child{border-bottom:0}
.management-list-item:hover{background:#f7faf8}
.list-item-icon{width:44px;height:44px;border-radius:13px;background:#edf4ef;color:#466956;display:inline-flex;align-items:center;justify-content:center}
.list-item-icon svg{width:21px;height:21px}
.list-item-main{min-width:0}
.list-item-main .eyebrow{margin-bottom:5px}
.list-item-main h2{font-size:16px;margin:0}
.list-item-main p{color:#788286;font-size:13px;line-height:1.55;margin-top:6px;white-space:normal}
.item-name-link{color:#252b2e;text-decoration:none;text-underline-offset:3px}
.item-name-link:hover{text-decoration:underline;color:#385e4b}
.item-name-link:focus-visible{border-radius:4px}
.list-item-meta{display:flex;align-items:center;gap:8px;justify-content:flex-end}
.list-item-actions{justify-content:flex-end;flex-wrap:wrap}
@keyframes client-search-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:900px){
 .clients-header-actions{justify-content:space-between;width:100%;flex-wrap:nowrap}
 .clients-header-actions [data-action="client"]{order:1}
 .clients-header-actions [data-action="client-search-toggle"]{order:2;margin-left:auto}
 .clients-toolbar{display:flex;flex-direction:column;align-items:stretch}
 .client-search-field{flex:none;max-width:none;width:100%}
 .client-status-filters{display:none}
 .client-status-mobile{display:block;width:100%}
 .client-status-mobile .field{width:100%;gap:7px}
 .client-status-mobile select{width:100%}
 .clients-toolbar #client-count{padding:2px 4px;margin-left:0}
 .clients-overview-table.responsive-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(125px,.9fr);gap:14px;align-items:start;padding:14px}
 .clients-overview-table.responsive-table tbody td:nth-child(2),.clients-overview-table.responsive-table tbody td:nth-child(3){display:none}
 .clients-overview-table.responsive-table tbody td:first-child,.clients-overview-table.responsive-table tbody td:nth-child(4){display:block;width:auto;padding:0;min-width:0}
 .clients-overview-table.responsive-table tbody td:first-child::before,.clients-overview-table.responsive-table tbody td:nth-child(4)::before{display:none}
 .clients-overview-table .client-name{align-items:center;gap:9px}
 .clients-overview-table .client-name small{display:none}
 .clients-overview-table .client-name b{line-height:1.35}
 .clients-overview-table .client-next-session{width:100%;min-width:0;min-height:0;padding:0;gap:3px}
 .clients-overview-table .client-next-session b,.clients-overview-table .client-next-session span{font-size:13px;line-height:1.35}
 .clients-overview-table .client-next-session small{font-size:12px;line-height:1.35}
 .profile-hero{position:relative;padding-top:76px}
 .profile-hero-actions,.profile-hero-actions.compact-action-group{position:absolute;top:16px;right:16px;width:auto;max-width:none;justify-content:flex-end;z-index:2;flex-wrap:nowrap}
 .profile-hero-actions>.button,.profile-hero-actions.compact-action-group>.button{flex:0 1 auto}
 .profile-hero-actions>.action-dropdown-trigger,.profile-hero-actions.compact-action-group>.action-dropdown-trigger{flex:0 0 44px}
 .profile-identity{padding-right:0}
 .profile-identity .session-pills{margin-right:0}
 .profile-tabs{display:none}
 .profile-tabs-select{display:flex;flex-direction:column;gap:7px;padding:14px 16px;background:#fff;border:1px solid #edf0f1;border-radius:18px}
 .profile-tabs-select>span{font-size:12px;font-weight:650;color:#69777c;letter-spacing:.3px}
 .profile-tabs-select select{width:100%;min-height:46px}
 .management-list-item{grid-template-columns:40px minmax(0,1fr);align-items:start;gap:10px 12px;padding:15px 14px}
 .list-item-icon{width:40px;height:40px;border-radius:11px;grid-row:1/span 3}
 .list-item-main{grid-column:2}
 .list-item-main h2{font-size:15px}
 .list-item-main p{font-size:12px;margin-top:4px}
 .list-item-meta{grid-column:2;justify-content:flex-start}
 .list-item-actions{grid-column:2;justify-content:flex-start}
 .list-item-actions.compact-action-group{width:100%}
}
@media(max-width:420px){
 .clients-overview-table.responsive-table tbody tr{grid-template-columns:minmax(0,1fr) minmax(112px,.85fr);gap:10px;padding:13px}
 .clients-overview-table .avatar{width:34px;height:34px}
 .profile-hero{padding-top:74px}
}
@media(prefers-reduced-motion:reduce){.client-search-field{animation:none}}

/* v0.6.5: compact dialogs, workout logging and calendar controls. */
.modal-heading .icon-btn[data-action="close"]{width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border-radius:50%;font-size:25px;line-height:1;color:#5d666a;background:transparent}
.modal-heading .icon-btn[data-action="close"]:hover{background:#f1f4f3;color:#202629}
.modal-heading .icon-btn[data-action="close"] .action-icon-label{display:none}
.workout-log-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px;border:1px solid #e7ebea;border-radius:10px;background:#f7f9f8;color:#697579;font-size:13px}
.workout-log-intro p{color:#343c3f;line-height:1.5}.workout-log-intro span{white-space:nowrap}
.workout-log-section{padding:0;margin-top:14px;overflow:hidden;background:#fff}
.workout-log-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;background:#f5f8f6;border-bottom:1px solid #e6ebe8}
.workout-log-section-head>div,.workout-log-exercise-head>div{display:flex;align-items:center;gap:10px;min-width:0}
.workout-log-section-head h3,.workout-log-exercise-head h3{margin:0;min-width:0}
.workout-log-section-head>span{font-size:12px;color:#697579;white-space:nowrap}
.workout-log-section-number,.workout-log-exercise-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:25px;height:25px;border-radius:8px;background:#dfece5;color:#426653;font-size:12px;font-weight:700}
.workout-log-section-note{padding:10px 15px 0;color:#697579;font-size:13px;line-height:1.45}
.workout-log-exercise{padding:14px 15px;border-top:1px solid #edf0ef}
.workout-log-section-head+.workout-log-exercise{border-top:0}
.workout-log-exercise-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.workout-log-exercise-number{width:23px;height:23px;border-radius:7px;background:#edf2f0;color:#68766f}
.workout-log-media{display:flex;align-items:center;gap:6px;flex:0 0 auto}.workout-log-media .button{min-height:34px;padding:7px 10px}
.workout-log-prescription{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:8px 0 10px 33px;color:#738078;font-size:12px}
.workout-log-prescription>*{padding-right:8px;border-right:1px solid #dfe5e1}.workout-log-prescription>*:last-child{padding-right:0;border-right:0}.workout-log-prescription strong{color:#34463d}
.workout-log-sets{margin-left:33px;border:1px solid #e7ebe9;border-radius:10px;overflow:hidden;background:#fbfcfb}
.log-set{display:grid;grid-template-columns:68px minmax(90px,120px) minmax(110px,150px);align-items:end;justify-content:start;gap:10px;margin:0;padding:8px 10px;border-bottom:1px solid #e8ecea}
.log-set:last-child{border-bottom:0}.log-set-number{align-self:center;font-size:12px;font-weight:700;color:#64716b}
.log-field{display:flex;flex-direction:column;gap:4px;color:#6c7772;font-size:11px;font-weight:650}.log-field span{white-space:nowrap}.log-field small{font-size:10px;font-weight:500}
.log-field input{width:100%;min-height:38px;padding:7px 9px;border-radius:7px;font-size:14px;background:#fff}.workout-log-feedback{margin-top:15px}
.schedule-toolbar{justify-content:flex-start;align-items:center;gap:9px}
.schedule-toolbar .calendar-controls{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}
.schedule-toolbar .calendar-controls .button{min-height:38px;padding:8px 12px}
.schedule-toolbar .calendar-controls #schedule-date{width:150px;min-height:38px;padding:7px 9px}
.schedule-toolbar>.button{min-height:38px;padding:8px 12px;margin-left:0}
@media(max-width:900px){
 .schedule-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-bottom:16px}
 .schedule-toolbar>.calendar-controls{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;width:100%}
 .calendar-controls>[data-action="calendar-mode"]{grid-column:span 2;min-height:38px!important;padding:7px 8px!important}
 .calendar-controls>[data-action="calendar-shift"]{grid-column:span 1;width:100%!important;min-width:0!important;padding:7px!important}
 .calendar-controls>[data-action="calendar-shift"] .action-icon-label{display:none}
 .calendar-controls>#schedule-date{grid-column:span 3;width:100%!important;min-width:0;max-width:none!important;font-size:14px!important;text-align:center}
 .calendar-controls>[data-action="day-today"]{grid-column:span 1;width:100%!important;min-width:0!important;padding:7px!important}
 .calendar-controls>[data-action="day-today"] svg{width:17px;height:17px}.calendar-controls>[data-action="day-today"] .action-icon-label{font-size:11px}
 .schedule-toolbar>.button{width:100%!important;min-width:0!important;min-height:38px!important;padding:7px 9px!important;white-space:normal;line-height:1.25;font-size:12px}
 .workout-log-intro{align-items:flex-start;flex-direction:column;gap:5px;padding:10px 11px}
 .workout-log-section{padding:0!important;margin-top:10px}.workout-log-section-head{padding:11px 12px}.workout-log-section-note{padding:9px 12px 0}.workout-log-exercise{padding:12px}
 .workout-log-prescription{margin-left:0}.workout-log-sets{margin-left:0}
 .log-set{grid-template-columns:48px minmax(0,1fr) minmax(0,1fr);gap:7px;padding:7px 8px}.log-set>:first-child{grid-column:auto}.log-field input{min-height:40px}
}
@media(max-width:420px){
 .schedule-toolbar{gap:6px}.schedule-toolbar>.calendar-controls{gap:5px}.schedule-toolbar .calendar-controls .button{font-size:12px}.schedule-toolbar>.button{font-size:11px}
 .workout-log-exercise-head{align-items:flex-start}.workout-log-media .action-icon-label{display:none}.workout-log-media .pictogram-button{width:36px;min-width:36px;padding:7px}
}

/* v0.7.0 flexible client training plans. */
.training-plan-card{margin-bottom:18px;overflow:hidden}.training-plan-card.active-plan{border-color:#b9d7c6;box-shadow:0 8px 28px #254f3b0b}
.training-plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid #edf0ef}
.training-plan-head>div:first-child{min-width:0}.training-plan-head h2{font-size:22px;margin:0}.training-plan-head p{margin-top:7px;color:#697579;line-height:1.5}.training-plan-head>.actions{justify-content:flex-end;flex-wrap:wrap}
.plan-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#e8ecea;border-bottom:1px solid #e8ecea}.plan-summary-grid>div{display:flex;flex-direction:column;gap:4px;padding:13px 18px;background:#fafcfb}.plan-summary-grid strong{font-size:17px;color:#25312b}.plan-summary-grid span{font-size:11px;color:#7b8681;text-transform:uppercase;letter-spacing:.6px}
.plan-progress{height:5px;background:#edf1ef}.plan-progress span{display:block;height:100%;background:#4f8d6d;transition:width .2s ease}.plan-notes{padding:15px 22px;color:#5f6d66;line-height:1.55;border-bottom:1px solid #edf0ef}
.plan-blocks{display:flex;flex-direction:column}.plan-block{padding:18px 22px;border-bottom:1px solid #e9edeb}.plan-block:last-child{border-bottom:0}.plan-block-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px}.plan-block-head h3{margin:0}.plan-block-head>span{font-size:12px;color:#76827c;white-space:nowrap}.plan-block>p{font-size:13px;color:#697579;margin-bottom:12px}
.plan-slot-list{border:1px solid #e7ebe9;border-radius:12px;overflow:hidden}.plan-slot{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 13px;background:#fff;border-bottom:1px solid #ebefed}.plan-slot:last-child{border-bottom:0}.plan-slot:hover{background:#f8faf9}.plan-slot-order{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:#eef3f0;color:#65746c;font-size:12px;font-weight:700}.plan-slot-main{min-width:0}.plan-slot-main h3{margin:0;font-size:14px}.plan-slot-main p{margin:4px 0 7px;color:#76817c;font-size:12px;line-height:1.35}.plan-slot .session-pills{gap:5px}.plan-slot .badge,.plan-slot .session-pill{font-size:10px;padding:4px 7px}.plan-slot-completed .plan-slot-order{background:#e2f1e7;color:#397253}.plan-slot-skipped .plan-slot-order,.plan-slot-cancelled .plan-slot-order{background:#f0f1f1;color:#7a8280}.plan-slot-actions{justify-content:flex-end;flex-wrap:wrap}
.client-plan-summary{margin-bottom:20px}.client-plan-summary .plan-slot-list{margin:16px 20px 20px}.client-plan-summary .plan-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){
 .training-plan-head{padding:16px;gap:14px}.training-plan-head>.actions{max-width:220px}.plan-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-block{padding:15px 14px}.plan-slot{grid-template-columns:36px minmax(0,1fr);gap:9px;padding:11px}.plan-slot-order{width:32px;height:32px}.plan-slot-actions{grid-column:2;justify-content:flex-start}.client-plan-summary .plan-slot-list{margin:12px}
}
@media(max-width:560px){
 .training-plan-head{flex-direction:column}.training-plan-head>.actions{width:100%;max-width:none;justify-content:flex-start}.training-plan-head>.actions .button{flex:1 1 auto}.plan-summary-grid>div{padding:11px 12px}.plan-summary-grid strong{font-size:15px}.plan-block-head{align-items:center}.plan-slot .session-pills .session-pill{white-space:normal}.client-plan-summary .plan-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
