/* Shared finishing layer: consistent rhythm, readable controls and touch targets. */
:root{--muted:#72737e;--line:#e6e7ec;--bg:#f6f6f8}body{line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,p{overflow-wrap:anywhere}h1{line-height:1.2}h2,h3{line-height:1.35}.title-row{gap:24px}.title-row>div{min-width:0}.title-row>.toolbar{margin:0;justify-content:flex-end;flex-shrink:0}.title-row p{max-width:640px;margin-top:8px}.eyebrow{line-height:1.5}.card,.stat{box-shadow:0 3px 12px #20213204}.panel-pad{padding:24px}.btn{min-height:44px;justify-content:center;line-height:1.4;transition:background .15s,border-color .15s,box-shadow .15s;text-decoration:none}.btn.secondary:hover{border-color:#c9cbd4;box-shadow:0 2px 5px #20213206}.btn:active{transform:translateY(1px)}button:disabled:active{transform:none}.text-btn{min-height:36px;padding:6px 8px;line-height:1.4;color:#696b76}.arrow{min-width:36px;width:36px;height:36px;display:inline-grid;place-items:center;flex-shrink:0}.row-actions button{min-width:36px;width:36px;height:36px}.row-actions{flex-shrink:0}input,textarea,select.field{min-height:44px;line-height:1.5}textarea:focus-visible{outline:2px solid var(--red);outline-offset:3px}input[type=checkbox]{min-height:0}input[type=number]{font-variant-numeric:tabular-nums}.stat strong{font-variant-numeric:tabular-nums;line-height:1.25}.stat .unit{font-family:'DM Sans',sans-serif;font-size:13px;margin-left:4px;letter-spacing:0}.stat .label{font-size:12px}.stat small{font-size:11px;line-height:1.5}.stat-button{min-width:0}.stat-button strong[style]{font-size:20px!important;letter-spacing:-.5px}.stats{align-items:stretch}.columns>div,.overview-columns>div,.grid>div,.message-layout>*,.prescription-fields>div{min-width:0}.attention-count{min-width:0}.attention-count small{color:#6e707c}.attention-row .details{min-width:0}.attention-row b{font-size:14px}.client-table{font-size:13px}.client-table th{font-size:11px}.client-name b{font-size:13px}.client-name small{font-size:11px;line-height:1.5}.client-table td{overflow-wrap:anywhere}.client-actions .btn,.subscription-workout .toolbar .btn{min-height:40px;font-size:11px;padding:9px 12px}.client-table td[data-label=Actions]{min-width:156px}.client-table td[data-label=Client]{min-width:200px}.client-empty{text-align:center;padding:36px!important}.client-list-controls .segmented button{min-height:44px}.client-list-controls>.field{min-width:160px}.segmented button{font-size:13px;min-height:44px;padding:10px 16px}.section-title{gap:12px;align-items:center}.section-title small{margin-top:0}.toolbar{align-items:center}.program .toolbar .btn{margin-top:0}.program>.btn{margin-top:20px}.exercise-summary span{line-height:1.5}.client-tabs a{min-height:40px;display:inline-flex;align-items:center;padding:5px 0;font-size:13px}.client-tabs{padding-bottom:8px}.unit{margin-left:4px}.measurement-table{font-size:12px}.measurement-table th{font-size:11px}.measurement-table .text-btn{color:#575965;font-size:11px;padding:0}.measurement-choice{padding:24px;min-height:90px}.measurement-choice small{font-size:12px}.measurement-choice>span:last-child{font-size:13px}.chart-controls select{min-width:130px}.history-chart{margin-top:18px}.back-btn{padding:11px 16px;margin-bottom:24px;color:#343640}.superset-toolbar{top:0;padding:12px;gap:8px;min-height:66px}.superset-toolbar .btn{min-height:40px;font-size:12px}.superset-toolbar .text-btn{font-size:12px}.prescription-fields label,.prescription-row label{font-size:11px;color:#6e707b}.prescription-fields input{font-size:13px;min-height:44px}.builder-heading{align-items:flex-start;padding-right:30px}.builder-heading h1{line-height:1.25}.builder-heading .toolbar{margin-top:0}.builder-meta{gap:16px}.builder-layout .section-title small{font-size:11px}.builder-library-row h3{font-size:13px}.builder-library-row .arrow{min-width:40px;width:40px;height:40px}.modal-box{position:relative;padding:32px;border-radius:22px;max-height:calc(100dvh - 48px);box-shadow:0 24px 90px #14142022;overscroll-behavior:contain}.modal-box>h1{padding-right:32px;font-size:28px}.modal-box>p{font-size:13px}.modal-box label{font-size:12px;color:#676975;margin-top:20px}.modal-close{position:absolute;right:16px;top:16px;width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:#fafafb;color:#6a6c76;font-size:23px;z-index:4;display:grid;place-items:center;line-height:1}.form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-pair>div{min-width:0}.setup-notice{padding:14px 16px;margin-top:24px;background:#f7f7fa;border:1px solid var(--line);border-radius:12px;color:#727480;font-size:12px;line-height:1.65}.form-error{color:#bd1022!important;font-size:12px!important;margin-top:12px!important}.form-error:empty{display:none}.onboarding-status{display:flex;gap:20px;justify-content:space-between;align-items:center;border:1px solid #f0d6db;background:#fff4f5;border-radius:14px;padding:18px 20px;margin-bottom:28px}.onboarding-status p{font-size:12px;margin-top:4px}.onboarding-status .btn{flex-shrink:0}.message-header{gap:12px}.message-header>div{min-width:0}.message-header .btn{min-height:40px}.message-log{min-height:260px}.message-thread b{font-size:13px}.message-composer label{display:block;font-size:12px;color:#6d6f7b;margin-bottom:8px}.message-composer-footer small{font-size:11px;line-height:1.5}.message-bubble small{font-size:10px}.week-day{min-width:36px;font-size:11px}.week-day b{font-size:14px}.week-day small{font-size:12px}.week{gap:2px}.day-activity-row .activity-type{display:block}.day-activity-row small{font-size:12px}.day-activity-row .activity-type{font-size:10px}.week-activity-title{align-items:center}.calendar .cell{overflow:hidden}.cell small{white-space:normal;overflow-wrap:anywhere}.calendar .cell:focus-visible{outline:2px solid var(--red);outline-offset:2px}#toast{max-width:calc(100vw - 32px);width:max-content;line-height:1.5;text-align:center;box-shadow:0 4px 24px #0002}.empty p{font-size:13px}.empty h3{margin-bottom:8px}
@media(min-width:1400px){#page{padding-top:36px}.title-row{margin-bottom:30px}}
@media(min-width:701px) and (max-width:1150px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.title-row{flex-wrap:wrap}.title-row>.toolbar{justify-content:flex-start}.message-layout{grid-template-columns:1fr}.message-threads{display:flex;overflow:auto}.message-thread{min-width:230px}.attention-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body{font-size:14px}header{height:68px;padding:0 18px}.header-right select{font-size:12px;min-height:38px;padding:8px 10px}.header-right>span:first-child{font-size:9px;max-width:120px;line-height:1.4}.demo{gap:12px;line-height:1.5}.demo span{max-width:175px}#page{padding:24px 18px 36px}.title-row{flex-direction:column;align-items:stretch;gap:18px;margin-bottom:24px}.title-row>.btn{font-size:13px;padding:12px 18px;align-self:flex-start;min-height:44px}.title-row>.toolbar{justify-content:flex-start;gap:8px}.title-row h1{font-size:29px;letter-spacing:-.8px}.title-row p{font-size:13px}.eyebrow{font-size:10px;letter-spacing:1.5px}h2{font-size:18px}h3{font-size:15px}.panel-pad{padding:20px}.stats{gap:12px}.stat{padding:18px 14px}.stat strong{font-size:28px;margin:12px 0}.stat-button strong[style]{font-size:18px!important}.stat .label{font-size:11px}.stat small{font-size:11px}.stat .unit{font-size:11px}.attention-summary{padding:18px}.attention-summary>.section-title{align-items:flex-start}.attention-summary .pill{white-space:normal;text-align:right;max-width:110px}.attention-count{padding:16px 12px}.attention-count strong{font-size:27px;margin-left:9px}.attention-count small{font-size:12px}.attention-counts{gap:10px}.attention-row{padding:18px 16px;gap:12px}.attention-row b{font-size:13px}.attention-row small{font-size:11px}.section-title{flex-wrap:wrap}.section-title h2{font-size:17px}.overview-columns{gap:28px}.client-list-controls{gap:12px}.client-list-controls .segmented{width:100%}.client-list-controls .segmented button{flex:1;padding:10px 12px}.client-list-controls .field{flex:1}.client-list-controls .search{width:100%;margin-left:0;min-width:0}.client-table-scroll{overflow:visible;background:transparent;border:0;box-shadow:none}.client-table{display:block;min-width:0;width:100%}.client-table thead{display:none}.client-table tbody{display:grid;gap:14px}.client-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;background:white;border:1px solid var(--line);border-radius:17px;padding:18px}.client-table td{display:block;max-width:none!important;min-width:0!important;padding:12px 0!important;border:0!important;font-size:13px}.client-table td:first-child{grid-column:1/-1;border-bottom:1px solid var(--line)!important;padding:0 0 16px!important;margin-bottom:2px}.client-table td:before{content:attr(data-label);display:block;color:#7b7d87;font-size:11px;margin-bottom:6px}.client-table td:first-child:before,.client-table td:last-child:before{display:none}.client-table td:last-child{grid-column:1/-1;padding-bottom:0!important}.client-table td.client-empty{grid-column:1/-1;text-align:center;border:0!important;padding:16px!important}.client-name{gap:12px;width:100%}.client-name b{font-size:14px}.client-name small{max-width:none;font-size:11px}.client-name .avatar{width:42px;height:42px}.client-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.client-actions .btn{min-height:44px;font-size:12px}.client-table td small{font-size:11px}.back-btn{font-size:12px;max-width:100%;text-align:left;justify-content:flex-start}.modal{padding:12px}.modal-box,.modal-box.wide{padding:24px 20px;border-radius:20px;max-height:calc(100dvh - 24px)}.modal-box>h1{font-size:26px}.modal-box input,.modal-box textarea,.modal-box select{font-size:16px;min-height:46px}.modal-box input[type=checkbox]{min-height:0}.modal-box .toolbar{gap:10px}.modal-box .toolbar>.btn{flex:1;min-height:46px;font-size:13px}.modal-close{right:12px;top:12px}.form-pair{gap:12px}.builder-heading{padding-right:24px}.builder-heading .toolbar{margin-top:18px;flex-wrap:wrap}.builder-heading .toolbar>.btn{min-width:100px}.builder-heading h1{font-size:24px}.builder-layout{gap:20px}.builder-library{max-height:230px}.prescription-row .section-title{flex-wrap:nowrap;align-items:flex-start}.exercise-select{max-width:none;min-width:0;flex:1}.exercise-select h3{font-size:13px;line-height:1.5}.row-actions{gap:3px}.row-actions button{width:32px;min-width:32px;height:36px}.superset-toolbar{padding:12px 10px;gap:6px}.superset-toolbar>span{flex-basis:100%}.superset-toolbar .text-btn{font-size:11px;padding:4px}.superset-card-heading{flex-wrap:wrap}.superset-card-heading input{font-size:16px}.prescription-fields{gap:12px}.prescription-fields input{font-size:16px;padding:10px 8px}.prescription-row label{line-height:1.4}.client-tabs{gap:22px}.onboarding-status{flex-direction:column;align-items:flex-start;padding:18px;gap:14px}.onboarding-status p{overflow-wrap:anywhere}.onboarding-status .btn{width:100%}.message-header{padding:18px}.message-header .btn{font-size:12px}.message-log{padding:18px;height:340px}.message-composer{padding:18px}.message-composer textarea{font-size:16px}.message-composer-footer{flex-wrap:wrap;align-items:center}.message-composer-footer small{flex:1;min-width:140px}.message-composer-footer .btn{font-size:13px}.message-threads{scroll-snap-type:x proximity}.message-thread{scroll-snap-align:start;min-width:240px;padding:18px}.measurement-choice{padding:20px;gap:14px}.measurement-choice>span:last-child{font-size:12px;max-width:130px;text-align:right}.chart-controls{gap:12px}.chart-controls label{flex:1;min-width:120px}.chart-controls select{max-width:none;width:100%;font-size:14px}.chart-controls .segmented{width:100%}.chart-controls .segmented button{flex:1}.set-table{table-layout:fixed}.set-table th:first-child,.set-table td:first-child{width:28px}.set-table th:last-child,.set-table td:last-child{width:38px}.set-table .previous{font-size:10px;overflow-wrap:anywhere}.set-table input[type=number]{width:100%;min-width:0;font-size:16px;padding:10px 4px}.set-table td{padding-right:5px}.workout{padding:18px 14px}.workout-top h2{font-size:17px}.workout-top .text-btn{flex-shrink:0}.workout-footer{gap:12px}.workout-footer .btn{font-size:12px}.workout-footer>input{max-width:100%}.calendar{gap:3px}.calendar .cell{min-height:70px;padding:7px 4px;font-size:12px}.calendar-label{font-size:9px;padding:8px 0}.cell small{font-size:8px;line-height:1.4;padding:3px}.calendar+.toolbar{gap:8px}aside{height:auto;min-height:74px;padding:6px 6px calc(8px + env(safe-area-inset-bottom));overflow-x:auto}nav{justify-content:flex-start;width:max-content;min-width:100%;gap:3px}nav button{flex:1;min-width:57px;padding:8px 5px;min-height:54px;font-size:10px;gap:4px}nav .ico{font-size:20px;width:24px}.header-right>span:first-child{max-width:118px}main{margin-bottom:calc(80px + env(safe-area-inset-bottom))}#toast{bottom:calc(92px + env(safe-area-inset-bottom));font-size:12px;padding:12px 16px}.photo-grid{gap:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(min-width:701px) and (max-width:1150px){.client-table{min-width:0;table-layout:fixed;width:100%}.client-table th,.client-table td{padding:16px 12px}.client-table td[data-label=Client]{min-width:0;width:28%}.client-table th:first-child{width:28%}.client-table td[data-label=Actions]{min-width:0;width:100px}.client-table th:last-child{width:100px}.client-actions{display:grid;gap:8px}.client-name{gap:8px;white-space:normal}.client-name .avatar{width:32px;height:32px;flex-shrink:0}.client-name b{font-size:12px}}
