/* The remaining client surfaces share the approved Stitch palette and typography.
   Existing modal, scroll-lock and visual-viewport geometry remain in charge. */
#trainer-app.client-stitch212,#trainer-app[data-auth-state=locked]{--bg:#111615;--surface:#181e1c;--surface2:#1e2623;--surface3:#25302c;--text:#f6f7f5;--muted:#a3aca7;--line:#29352f;--green:#15d778;--greenSoft:#162b21;--red:#ef4444;font-family:Odmakni Jakarta,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-variant-numeric:tabular-nums}
#trainer-app.client-stitch212[data-theme=light],#trainer-app[data-auth-state=locked][data-theme=light]{--bg:#f3f6f4;--surface:#fff;--surface2:#eaf1ec;--surface3:#e2ece6;--text:#14221a;--muted:#55665b;--line:#d4dfd7;--green:#087f44;--greenSoft:#e0f4e8}
#trainer-app.client-stitch212 :is(#simpleMaximum,#simpleBlockHelp,#simpleLastLoad,#personalMaxesV97,#clientProgressPicker189){font-family:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 48px #0005}
#trainer-app.client-stitch212 :is(#simpleMaximum,#personalMaxesV97,#clientProgressPicker189)::backdrop{background:#080e0bc7;backdrop-filter:blur(6px)}
#trainer-app.client-stitch212 :is(dialog,button,input,textarea,select){font-family:inherit}
#trainer-app.client-stitch212 :is(#simpleMaximum,#personalMaxesV97,#clientProgressPicker189) :is(input,select,textarea){font-size:16px!important}
#trainer-app.client-stitch212 dialog :focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* History: compact dated cards, with results and comments kept inside their existing overlay. */
#trainer-app body.client-stitch212 #savedHistoryRoot .client-history-v92{max-width:728px;padding:8px 0 20px}
#trainer-app body.client-stitch212 .client-history-heading-v92{margin-bottom:18px}
#trainer-app body.client-stitch212 .client-history-heading-v92 h1{font-size:26px!important;font-weight:800;letter-spacing:-.7px}
#trainer-app body.client-stitch212 .client-history-heading-v92 p{font-size:13px!important;margin-top:6px}
#trainer-app body.client-stitch212 .client-history-search-v92>span{font-size:11px!important}
#trainer-app body.client-stitch212 #savedHistoryRoot :is(#opHistorySearch,#opHistoryRange){background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:10px 12px!important;color:var(--text)}
#trainer-app body.client-stitch212 .client-history-filters-v92{margin:12px 0 18px;gap:8px}
#trainer-app body.client-stitch212 .client-history-filters-v92>span{font-size:12px!important}
#trainer-app body.client-stitch212 .client-history-month-v92>h2{font-size:11px!important;text-transform:uppercase;letter-spacing:.7px;margin:0 0 9px;font-weight:600}
#trainer-app body.client-stitch212 #savedHistoryRoot .client-history-row-v92{padding:14px 12px!important;margin:0 0 9px;gap:10px;background:var(--surface)!important;border:1px solid transparent!important;border-radius:12px!important;min-height:0!important}
#trainer-app body.client-stitch212 #savedHistoryRoot .client-history-row-v92:hover{border-color:var(--line)!important;background:var(--surface2)!important}
#trainer-app body.client-stitch212 .client-history-date-v92{width:38px;background:transparent;min-height:48px}
#trainer-app body.client-stitch212 .client-history-date-v92 b{font-size:23px!important;font-weight:700}
#trainer-app body.client-stitch212 .client-history-date-v92 span{font-size:11px!important}
#trainer-app body.client-stitch212 .client-history-copy-v92>strong{font-size:15px!important;font-weight:700}
#trainer-app body.client-stitch212 .client-history-copy-v92>small{font-size:10px!important;line-height:1.5}
#trainer-app body.client-stitch212 .client-history-preview-v92{font-size:11px!important;margin-top:7px}
#trainer-app body.client-stitch212 #savedHistoryRoot .client-history-meta-v92{gap:5px 7px;margin-top:8px}
#trainer-app body.client-stitch212 .client-history-meta-v92>span{font-size:10px!important;padding:3px 6px;border-radius:5px;background:var(--surface2)}
#trainer-app body.client-stitch212 .client-history-meta-v92 .unread{color:var(--green);background:var(--greenSoft)}
#trainer-app body.client-stitch212 :is(#historyOverlay,#profileOverlay,#notificationsOverlay)>.sheet{background:var(--bg)!important;color:var(--text);border:1px solid var(--line);box-shadow:0 12px 48px #0005}
#trainer-app body.client-stitch212 #historyOverlay>.sheet{max-width:728px;padding:20px!important;border-radius:18px}
#trainer-app body.client-stitch212 .client-history-detail-heading-v92{gap:8px;margin-bottom:10px}
#trainer-app body.client-stitch212 .client-history-detail-heading-v92>div>span{font-size:10px!important;color:var(--green);font-weight:700;letter-spacing:.5px;text-transform:uppercase}
#trainer-app body.client-stitch212 .client-history-detail-heading-v92 h2{font-size:21px!important;font-weight:800}
#trainer-app body.client-stitch212 .client-history-detail-heading-v92 p{font-size:12px!important}
#trainer-app body.client-stitch212 .client-history-detail-actions-v92{gap:4px}
#trainer-app body.client-stitch212 :is(.client-history-detail-actions-v92 button,#recordEditClose){width:44px;height:44px;min-height:44px!important;background:var(--surface2)!important;border:0!important;border-radius:9px!important;color:var(--muted)!important;padding:10px!important}
#trainer-app body.client-stitch212 .client-history-detail-meta-v92{font-size:11px!important;gap:8px;margin:0 0 16px}
#trainer-app body.client-stitch212 .client-history-detail-meta-v92>span{padding:3px 7px;border-radius:5px;background:var(--surface2)}
#trainer-app body.client-stitch212 .client-history-results-v92{padding:0 12px;background:var(--surface);border-radius:12px}
#trainer-app body.client-stitch212 .client-history-exercise-v92{padding:14px 0!important;margin:0;border-bottom:1px solid var(--line);background:transparent}
#trainer-app body.client-stitch212 .client-history-exercise-v92:last-child{border-bottom:0}
#trainer-app body.client-stitch212 .client-history-exercise-v92 h3{font-size:15px!important;font-weight:700;line-height:1.4}
#trainer-app body.client-stitch212 .client-history-exercise-v92 h3>span{color:var(--green)}
#trainer-app body.client-stitch212 .client-history-result-v146{background:transparent!important;margin-top:4px}
#trainer-app body.client-stitch212 .client-history-actual-v146{font-size:13px!important;color:var(--muted)}
#trainer-app body.client-stitch212 .client-history-set-status-v92{border-radius:50%;background:var(--greenSoft);width:27px;height:27px;display:grid;place-items:center;font-size:15px!important}
#trainer-app body.client-stitch212 .client-history-result-v146.skipped .client-history-set-status-v92{background:#ef444420;color:#ef4444}
#trainer-app body.client-stitch212 .client-history-disclosure-v146{border:0;background:var(--surface);border-radius:10px;padding:0 12px;margin-top:12px}
#trainer-app body.client-stitch212 .client-history-disclosure-v146 summary{min-height:48px;font-size:13px!important;font-weight:600;align-items:center}
#trainer-app body.client-stitch212 .client-history-disclosure-v146 p{font-size:13px!important;line-height:1.6}

/* Progress */
#trainer-app body.client-stitch212 #clientAnalyticsRoot .client-progress-v93{max-width:728px;padding:8px 0 20px}
#trainer-app body.client-stitch212 .client-progress-v93>header{margin-bottom:18px;align-items:center}
#trainer-app body.client-stitch212 .client-progress-v93 h1{font-size:26px!important;font-weight:800;letter-spacing:-.7px}
#trainer-app body.client-stitch212 .client-progress-summary{font-size:12px!important;margin-top:4px}
#trainer-app body.client-stitch212 .personal-max-link{min-height:44px!important;border:1px solid var(--line)!important;border-radius:9px;background:var(--surface);padding:10px 12px!important;color:var(--text);font-size:12px!important;font-weight:700}
#trainer-app body.client-stitch212 .client-progress-exercise{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:none}
#trainer-app body.client-stitch212 .client-progress-picker{gap:7px;margin:0 0 14px}
#trainer-app body.client-stitch212 .client-progress-picker>span{font-size:11px!important}
#trainer-app body.client-stitch212 #clientAnalyticsRoot [data-analytics-exercise]{min-height:52px!important;border:1px solid var(--line)!important;border-radius:10px;background:var(--surface2)!important;padding:10px 12px!important;gap:8px}
#trainer-app body.client-stitch212 .progress-picker-name{font-size:14px!important;font-weight:700}
#trainer-app body.client-stitch212 .progress-picker-weight{font-size:17px!important;font-weight:700}
#trainer-app body.client-stitch212 .progress-picker-weight small{font-size:11px!important}
#trainer-app body.client-stitch212 .client-progress-controls{gap:8px;justify-content:space-between;margin:14px 0}
#trainer-app body.client-stitch212 .client-progress-metrics{padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}
#trainer-app body.client-stitch212 #clientAnalyticsRoot .client-progress-metrics button{min-height:40px!important;font-size:12px!important;padding:8px 10px!important;border-radius:6px;border:0;color:var(--muted)}
#trainer-app body.client-stitch212 #clientAnalyticsRoot .client-progress-metrics button[aria-pressed=true]{background:var(--green)!important;color:var(--bg)!important;font-weight:700}
#trainer-app body.client-stitch212 #clientAnalyticsRoot [data-progress-range]{min-height:44px!important;border-radius:9px;border:1px solid var(--line)!important;background:var(--bg)!important;width:94px!important;padding:6px 8px!important}
#trainer-app body.client-stitch212 .client-progress-caption{font-size:11px!important;line-height:1.5;color:var(--muted)}
#trainer-app body.client-stitch212 .client-progress-values{margin:16px 0;gap:12px}
#trainer-app body.client-stitch212 .client-progress-values>div{padding:0;background:transparent;border:0}
#trainer-app body.client-stitch212 .client-progress-values>div+div{padding-left:12px;border-left:1px solid var(--line)}
#trainer-app body.client-stitch212 .client-progress-values span{font-size:11px!important}
#trainer-app body.client-stitch212 .client-progress-values strong{font-size:26px!important;font-weight:800;letter-spacing:-.6px;line-height:1.4}
#trainer-app body.client-stitch212 .client-progress-values small{font-size:10px!important}
#trainer-app body.client-stitch212 .client-progress-graph{padding:14px 10px 10px;background:var(--surface2);border:1px solid var(--line);border-radius:12px}
#trainer-app body.client-stitch212 .client-progress-graph-heading{gap:8px;align-items:start}
#trainer-app body.client-stitch212 .client-progress-graph-heading h3{font-size:13px!important;font-weight:700}
#trainer-app body.client-stitch212 .client-progress-unit{font-size:10px!important;font-weight:400;color:var(--muted)}
#trainer-app body.client-stitch212 .client-progress-change b{font-size:13px!important}
#trainer-app body.client-stitch212 .client-progress-change small{font-size:9px!important}
#trainer-app body.client-stitch212 .client-progress-axis,#trainer-app body.client-stitch212 .client-progress-dates{font-size:10px!important}
#trainer-app body.client-stitch212 [data-progress-point-detail]{background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:12px;font-size:12px!important}
#trainer-app body.client-stitch212 [data-progress-point-workout]{background:var(--greenSoft);color:var(--green);border:0;border-radius:8px;min-height:44px;font-size:12px!important}
#trainer-app body.client-stitch212 .client-progress-results{border:0;margin-top:16px;border-radius:8px;background:var(--bg);padding:0 12px}
#trainer-app body.client-stitch212 .client-progress-results summary{font-size:12px!important;min-height:44px}
#trainer-app.client-stitch212 #clientProgressPicker189 header{padding:18px 16px 12px;border:0}
#trainer-app.client-stitch212 #clientProgressPicker189 h2{font-size:20px!important;font-weight:800}
#trainer-app.client-stitch212 #clientProgressPicker189 p{font-size:12px!important;color:var(--muted)}
#trainer-app.client-stitch212 #clientProgressPicker189 [data-progress-options]{padding:0 12px 16px}
#trainer-app.client-stitch212 #clientProgressPicker189 [data-progress-choice]{padding:16px 12px!important;margin-bottom:6px;min-height:58px;border:0;border-radius:10px;background:var(--bg);gap:8px}
#trainer-app.client-stitch212 #clientProgressPicker189 [aria-selected=true]{background:var(--greenSoft)}

/* Maxima use the existing independently scrolling dialogs. */
#trainer-app.client-stitch212 #personalMaxesV97{padding:20px}
#trainer-app.client-stitch212 #personalMaxesV97 h2,#trainer-app.client-stitch212 #simpleMaximum h2{font-size:22px!important;font-weight:800;letter-spacing:-.4px}
#trainer-app.client-stitch212 #personalMaxesV97 .personal-muted{font-size:12px!important;line-height:1.5;margin:6px 0 16px}
#trainer-app.client-stitch212 #personalMaxesV97 [data-personal-maximum]{background:var(--bg);border:1px solid transparent;border-radius:10px;padding:14px 12px;min-height:60px;margin:0 0 6px;gap:8px}
#trainer-app.client-stitch212 #personalMaxesV97 [data-personal-maximum]>span:first-child{font-size:14px!important;font-weight:600}
#trainer-app.client-stitch212 #personalMaxesV97 [data-personal-maximum]>strong{font-size:17px!important;font-weight:700;color:var(--green);white-space:nowrap}
#trainer-app.client-stitch212 #personalMaxesV97 [data-personal-maximum] small{font-size:11px!important;color:var(--muted)}
#trainer-app.client-stitch212 #personalMaxesV97 .personal-max-add{padding:14px 0 0;border-top:1px solid var(--line);margin-top:14px}
#trainer-app.client-stitch212 #personalMaxesV97 .personal-max-add label{font-size:12px!important}
#trainer-app.client-stitch212 #personalMaxesV97 .personal-max-add input{background:var(--surface3);border:1px solid var(--line);border-radius:8px;padding:12px!important}
#trainer-app.client-stitch212 #simpleMaximum{padding:20px;max-width:420px}
#trainer-app.client-stitch212 #simpleMaximumExercise{color:var(--green);font-size:17px!important;font-weight:700;margin:10px 0 20px}
#trainer-app.client-stitch212 #simpleMaximum label{font-size:12px!important;color:var(--muted)}
#trainer-app.client-stitch212 #simpleMaximumValue{font-size:30px!important;font-weight:800;text-align:center;background:var(--bg)!important;border:1px solid var(--line)!important;border-radius:12px!important;padding:16px!important;height:76px!important}
#trainer-app.client-stitch212 #simpleMaximumHint{font-size:12px!important;line-height:1.5;margin:12px 0 18px}
#trainer-app.client-stitch212 #simpleMaximum .simple-action{min-height:48px;font-size:14px!important;border-radius:9px;background:#15d778;color:#102118;border:0}

/* Profile and settings: actual forms, with no duplicated tabs or invented capabilities. */
.stitch-profile-identity212{display:none}
#trainer-app body.client-stitch212 #profileOverlay>.sheet{max-width:620px;padding:20px!important;border-radius:18px}
#trainer-app body.client-stitch212 #profileOverlay .sheettitle{border:0;padding:0 0 16px;margin:0;gap:8px}
#trainer-app body.client-stitch212 #profileOverlay .sheettitle .eyebrow{font-size:10px!important;letter-spacing:1px;color:var(--green)}
#trainer-app body.client-stitch212 #profileOverlay #settingsTitle{font-size:24px!important;font-weight:800;letter-spacing:-.6px;margin:3px 0 0}
#trainer-app body.client-stitch212 #profileOverlay .close{width:44px;min-height:44px;border:0;border-radius:9px;background:var(--surface2)!important;color:var(--muted)!important}
#trainer-app body.client-stitch212 .stitch-profile-identity212{display:flex;align-items:center;gap:12px;margin:0 0 20px;padding:12px 0}
#trainer-app body.client-stitch212 .stitch-profile-identity212>[data-stitch-initials]{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:50%;background:var(--greenSoft);color:var(--green);font-size:20px!important;font-weight:700}
#trainer-app body.client-stitch212 .stitch-profile-identity212>div{min-width:0}
#trainer-app body.client-stitch212 .stitch-profile-identity212 strong{display:block;font-size:17px!important;font-weight:700;overflow-wrap:anywhere}
#trainer-app body.client-stitch212 .stitch-profile-identity212 small{display:block;color:var(--muted);font-size:12px!important;margin-top:4px;overflow-wrap:anywhere}
#trainer-app body.client-stitch212 #profileOverlay #accountProfile135{padding:0!important}
#trainer-app body.client-stitch212 #profileOverlay .profile-group203{background:var(--surface);padding:16px;border:0;border-radius:12px;margin:0 0 14px;display:flow-root}
#trainer-app body.client-stitch212 #profileOverlay .profile-group203+.profile-group203{margin-top:0}
#trainer-app body.client-stitch212 #profileOverlay .profile-group203 legend{float:left;text-transform:none;color:var(--text);font-size:15px!important;font-weight:700;letter-spacing:0;margin-bottom:12px;gap:8px}
#trainer-app body.client-stitch212 #profileOverlay .account-fields135{clear:both;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#trainer-app body.client-stitch212 #profileOverlay .profile-group203 label{font-size:12px!important;color:var(--muted);gap:6px}
#trainer-app body.client-stitch212 #profileOverlay :is(.profile-group203,#accountPasswordForm135) :is(input,select){background:var(--surface3)!important;color:var(--text)!important;border:1px solid transparent!important;border-radius:8px!important;min-height:48px;padding:10px!important;font-size:16px!important;box-shadow:none}
#trainer-app body.client-stitch212 #profileOverlay :is(.profile-group203,#accountPasswordForm135) :is(input,select):focus{border-color:var(--green)!important;outline-offset:0}
#trainer-app body.client-stitch212 #profileOverlay #accountEmail135{background:var(--surface2)!important;color:var(--muted)!important}
#trainer-app body.client-stitch212 #profileOverlay .profile-group203 small{font-size:11px!important}
#trainer-app body.client-stitch212 #profileOverlay .profile-optional203{font-size:10px!important}
#trainer-app body.client-stitch212 #profileOverlay :is(.primary,#accountSave135,#accountPasswordSave135){width:100%;min-height:48px;border:0!important;border-radius:9px!important;background:#15d778!important;color:#102118!important;font-size:14px!important;font-weight:800;padding:12px!important}
#trainer-app body.client-stitch212 #profileOverlay .account-status135:not(:empty){font-size:12px!important;line-height:1.5;padding:10px 12px;border-radius:8px;margin:10px 0;background:var(--surface2)}
#trainer-app body.client-stitch212 #profileOverlay .settings-section:not(.account-profile135){padding:16px!important;background:var(--surface)!important;border:0!important;border-radius:12px;margin:0 0 14px}
#trainer-app body.client-stitch212 #profileOverlay .settings-section h3{font-size:15px!important;font-weight:700;margin-bottom:12px}
#trainer-app body.client-stitch212 #profileOverlay .settings-label202 b{font-size:14px!important;font-weight:600}
#trainer-app body.client-stitch212 #profileOverlay .settings-label202 small{font-size:11px!important}
#trainer-app body.client-stitch212 #profileOverlay .settings-icon202{color:var(--green);width:21px;height:21px}
#trainer-app body.client-stitch212 #profileOverlay #accountPasswordForm135{padding:14px 0 0;gap:12px}
#trainer-app body.client-stitch212 #profileOverlay #accountPasswordForm135 label{font-size:12px!important;color:var(--muted)}
#trainer-app body.client-stitch212 #profileOverlay #accountPasswordForm135 small{font-size:11px!important}
#trainer-app body.client-stitch212 #accountShowPassword135{min-height:44px;font-size:12px!important;color:var(--green);background:transparent;border:0}
#trainer-app body.client-stitch212 .account-session-row137{font-size:12px!important}
#trainer-app body.client-stitch212 .account-session-row137 strong{font-size:13px!important}
#trainer-app body.client-stitch212 .account-session-row137 small{font-size:11px!important}
#trainer-app body.client-stitch212 .account-sessions-actions137{flex-wrap:wrap}
#trainer-app body.client-stitch212 .account-sessions-actions137 button{min-height:44px;font-size:12px!important;border-radius:8px;background:var(--surface2)!important}
#trainer-app body.client-stitch212 #profileOverlay .data-option204{background:var(--surface2);border-radius:9px;padding:12px!important;margin-top:6px}
#trainer-app body.client-stitch212 #profileOverlay .data-label204 strong{font-size:14px!important}
#trainer-app body.client-stitch212 #profileOverlay .data-label204 small{font-size:11px!important}

/* Drawer */
#trainer-app body.client-stitch212 #clientMenu149{background:var(--surface);width:min(350px,calc(100vw - 24px));border:0;box-shadow:-16px 0 50px #0003}
#trainer-app body.client-stitch212 #clientMenu149 header{padding-inline:20px;border:0}
#trainer-app body.client-stitch212 #clientMenu149 .brand-menu210{max-width:155px}
#trainer-app body.client-stitch212 #clientMenu149 .client-menu-identity149{padding:4px 10px 20px}
#trainer-app body.client-stitch212 #clientMenu149 .client-menu-identity149 strong{font-size:19px!important;font-weight:700}
#trainer-app body.client-stitch212 #clientMenu149 .client-menu-identity149 span{font-size:12px!important}
#trainer-app body.client-stitch212 #clientMenu149 :is([data-client-menu],[data-stitch-maxes]){display:flex;align-items:center;gap:14px;min-height:62px;width:100%;padding:12px!important;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;font-size:14px!important;font-weight:600}
#trainer-app body.client-stitch212 #clientMenu149 :is([data-client-menu],[data-stitch-maxes]):hover{background:var(--surface2)}
#trainer-app body.client-stitch212 #clientMenu149 small{font-size:11px!important;line-height:1.4;margin-top:4px}
#trainer-app body.client-stitch212 #clientMenu149 [data-client-menu=logout]{color:#ef4444}
#trainer-app body.client-stitch212 #clientMenu149 [data-client-menu][hidden]{display:none!important}

/* Notification list */
#trainer-app body.client-stitch212 #notificationsOverlay .sheet{padding:20px!important;max-width:600px;border-radius:18px}
#trainer-app body.client-stitch212 #notificationsOverlay .sheettitle{padding:0 0 12px;border:0;margin:0}
#trainer-app body.client-stitch212 #notificationsOverlay h2{font-size:23px!important;font-weight:800}
#trainer-app body.client-stitch212 #notificationsOverlay .eyebrow{font-size:10px!important;color:var(--green)}
#trainer-app body.client-stitch212 .notifications-toolbar{gap:12px;align-items:center;margin-bottom:14px;font-size:12px!important}
#trainer-app body.client-stitch212 #notificationsReadAll{min-height:44px;padding:8px!important;border:0;background:transparent!important;color:var(--green);font-size:11px!important;text-align:right}
#trainer-app body.client-stitch212 .notification-item{padding:14px 12px!important;gap:12px;margin:0 0 8px;border:1px solid transparent;border-radius:12px;background:var(--surface)!important}
#trainer-app body.client-stitch212 .notification-item.unread{background:var(--surface2)!important;border-color:var(--line)}
#trainer-app body.client-stitch212 .notification-icon{width:38px;height:38px;flex:none;border-radius:50%;background:var(--greenSoft);color:var(--green);display:grid;place-items:center}
#trainer-app body.client-stitch212 .notification-main strong{font-size:13px!important;font-weight:700}
#trainer-app body.client-stitch212 .notification-main p{font-size:12px!important;line-height:1.6}
#trainer-app body.client-stitch212 .notification-main small{font-size:10px!important;color:var(--muted)}

/* Conversation list and chat: preserve fixed viewport and independent scrolling. */
#trainer-app body.client-stitch212 #clientCommsOverlayV57 .v57-client-comms{background:var(--bg)!important;border-color:var(--line);max-width:680px}
#trainer-app body.client-stitch212 .v57-client-comms>header{background:var(--surface);border-bottom:1px solid var(--line)}
#trainer-app body.client-stitch212 .v57-client-comms>header h2{font-size:18px!important;font-weight:700}
#trainer-app body.client-stitch212 .v57-client-comms>header>div>span{font-size:10px!important;letter-spacing:.5px;text-transform:uppercase;color:var(--muted)}
#trainer-app body.client-stitch212 .comms-avatar{background:var(--greenSoft);border:0;color:var(--green)}
#trainer-app body.client-stitch212 #clientCommsBodyV57 .comms-contacts{padding:8px 16px 12px}
#trainer-app body.client-stitch212 .comms-contacts>button{padding:12px!important;min-height:84px;margin:0 0 8px;border:1px solid transparent;border-radius:12px;background:var(--surface)}
#trainer-app body.client-stitch212 .comms-contacts>button:has(.comms-contact-unread){border-left:3px solid var(--green);background:var(--surface2)}
#trainer-app body.client-stitch212 .comms-contacts>button[hidden]{display:none!important}
#trainer-app body.client-stitch212 .comms-contact-main strong{font-size:14px!important;font-weight:700}
#trainer-app body.client-stitch212 .comms-contact-main small{font-size:10px!important;text-transform:uppercase;letter-spacing:.4px}
#trainer-app body.client-stitch212 .comms-contact-main>span{font-size:12px!important}
#trainer-app body.client-stitch212 .comms-contact-unread{min-width:20px;height:20px;padding:0 5px;font-size:10px!important;background:#15d778}
#trainer-app body.client-stitch212 .comms-contacts-refresh{font-size:12px!important;min-height:44px;background:var(--surface);border-radius:9px;border-color:var(--line)}
.stitch-contact-search212[hidden]{display:none!important}
#trainer-app body.client-stitch212 .stitch-contact-search212{padding:12px 16px 6px;flex:none}
#trainer-app body.client-stitch212 .stitch-contact-search212 label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#trainer-app body.client-stitch212 .stitch-contact-search212 input{width:100%;height:46px;padding:10px 12px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--surface)!important;color:var(--text);font-size:16px!important}
#trainer-app body.client-stitch212 .stitch-contact-search212 p{font-size:12px!important;color:var(--muted);padding:12px 0 0}
#trainer-app body.client-stitch212 #clientCommsBodyV57>.v59-client-comms-tabs{padding:4px 12px;background:var(--surface);gap:4px}
#trainer-app body.client-stitch212 .v59-client-comms-tabs button{flex:1;font-size:12px!important;min-height:44px;padding:8px!important;border:0!important;border-radius:8px;background:transparent!important;color:var(--muted)}
#trainer-app body.client-stitch212 .v59-client-comms-tabs button.active{background:var(--surface3)!important;color:var(--green)}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg{border:0!important;border-radius:12px!important;background:var(--surface2);padding:12px!important;box-shadow:none;max-width:88%}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg p{font-size:15px!important;line-height:1.6!important}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg .comms-author{font-size:10px!important;color:var(--muted)}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg small{font-size:10px!important;color:var(--muted)}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg.mine{background:#15d778!important;color:#102118!important;border-bottom-right-radius:4px!important}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg.mine :is(.comms-author,small){color:#174b32!important}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg.theirs{border-top-left-radius:4px!important}
#trainer-app body.client-stitch212 #clientMessagesV57 .comms-file-link{background:var(--bg);border:0}
#trainer-app body.client-stitch212 #clientCommsOverlayV57 .comms-compose{background:var(--surface);border-top:1px solid var(--line)}
#trainer-app body.client-stitch212 #clientCommsOverlayV57 .comms-compose textarea{border:1px solid var(--line)!important;background:var(--surface3)!important;border-radius:10px!important;color:var(--text);font-size:16px!important}
#trainer-app body.client-stitch212 #clientCommsOverlayV57 .comms-send{background:#15d778!important;color:#102118!important;border:0;border-radius:10px!important}

/* Authentication and recovery share the same brand; private screens stay gated. */
#trainer-app[data-auth-state=locked] body{font-family:Odmakni Jakarta,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;background:var(--bg);color:var(--text)}
#trainer-app[data-auth-state=locked] :is(input,button,textarea,select){font-family:inherit}
#trainer-app #authScreen{background:var(--bg);padding:32px max(24px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
#trainer-app #authScreen .auth-card{max-width:375px;padding:16px 0}
#trainer-app #authScreen .auth-brand{width:210px!important;max-width:70%;margin:0 auto 48px!important;height:auto;background:transparent}
#trainer-app #authScreen h1{font-size:29px!important;font-weight:800;letter-spacing:-.8px;margin:0 0 8px}
#trainer-app #authScreen #authLead{font-size:14px!important;margin-bottom:28px;color:var(--muted)}
#trainer-app #authLoginForm{display:flex;flex-direction:column;gap:7px}
#trainer-app #authLoginForm label{font-size:12px!important;font-weight:500;color:var(--text);margin:0}
#trainer-app #authLoginForm input{width:100%;min-height:50px!important;padding:12px!important;margin:0 0 12px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--surface)!important;color:var(--text);font-size:16px!important;box-shadow:none}
#trainer-app #authLoginForm input:focus{outline:1px solid var(--green);border-color:var(--green)!important;outline-offset:0}
#trainer-app #authLoginForm #authSubmit{width:100%;min-height:48px;border:0!important;border-radius:9px;background:#15d778!important;color:#102118!important;font-size:14px!important;font-weight:800;margin:4px 0 0;padding:12px!important}
#trainer-app #authScreen :is(#authForgot,#authRegister129){font-size:13px!important;min-height:44px;padding:10px!important;border:0;background:transparent!important}
#trainer-app #authScreen #authForgot{margin:12px 0 0;color:var(--text)}
#trainer-app #authScreen #authRegister129{color:var(--green)}
#trainer-app #authScreen .auth-invite-hint{font-size:11px!important;line-height:1.7;margin:28px 0 16px}
#trainer-app #authScreen .auth-legal129{font-size:11px!important;margin:0}
#trainer-app #authScreen #authMessage{font-size:12px!important;margin:0;color:#ff7373}
#trainer-app .stitch-login-password212{position:relative}
#trainer-app #authLoginForm .stitch-login-password212 input{padding-right:48px!important}
#trainer-app #authLoginForm .stitch-password-eye212{position:absolute;right:3px;top:3px;width:44px;height:44px;min-height:44px;margin:0;padding:11px!important;background:transparent!important;color:var(--muted)!important;border:0;border-radius:8px}
#trainer-app .stitch-password-eye212 svg{width:22px;height:22px}
#trainer-app[data-auth-state=locked] :is(#accountAccessDialog,#accountRegistration129){background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:16px;font-family:inherit}
#trainer-app[data-auth-state=locked] :is(#accountAccessDialog,#accountRegistration129) :is(input,select){font-size:16px!important;background:var(--surface3);color:var(--text);border:1px solid var(--line);border-radius:8px}

@media(max-width:600px){
 #trainer-app body.client-stitch212 :is(#historyOverlay,#profileOverlay,#notificationsOverlay)>.sheet{padding:18px 16px calc(20px + env(safe-area-inset-bottom))!important;border-radius:18px 18px 0 0}
 #trainer-app body.client-stitch212 #profileOverlay .account-fields135{gap:12px 8px}
 #trainer-app.client-stitch212 :is(#personalMaxesV97,#clientProgressPicker189){border-radius:16px}
}
@media(max-width:350px){
 #trainer-app body.client-stitch212 .client-progress-exercise{padding:12px}
 #trainer-app body.client-stitch212 .client-progress-values strong{font-size:23px!important}
 #trainer-app body.client-stitch212 #clientAnalyticsRoot .client-progress-metrics button{padding:8px 6px!important;font-size:11px!important}
 #trainer-app body.client-stitch212 #clientAnalyticsRoot [data-progress-range]{width:78px!important}
 #trainer-app body.client-stitch212 #profileOverlay .profile-group203{padding:12px}
 #trainer-app body.client-stitch212 .client-history-date-v92{width:32px}
}

/* Same input and status styling for saved results. */
#trainer-app body.client-stitch211 #historyOverlay .sheettitle{padding:0;margin:0 0 16px;border:0}
#trainer-app body.client-stitch211 #historyOverlay .sheettitle .eyebrow{font-size:11px!important;font-weight:700;letter-spacing:1px}
#trainer-app body.client-stitch211 #historyOverlay .sheettitle h1{font-size:28px!important;font-weight:800;letter-spacing:-.8px;margin:6px 0!important;line-height:1.2}
#trainer-app body.client-stitch211 #historyOverlay .sheettitle p{font-size:12px!important;color:var(--muted)}
#trainer-app body.client-stitch211 #historyOverlay .simple-record-progress{margin:0 0 12px;padding:14px;border:0;border-radius:12px;background:var(--surface)}
#trainer-app body.client-stitch211 #historyOverlay .simple-record-progress>p{margin:0;font-size:15px!important;font-weight:750;color:var(--text)}
#trainer-app body.client-stitch211 #historyOverlay .simple-record-counts{justify-content:space-between;gap:6px;font-size:11px!important}
#trainer-app body.client-stitch211 #historyOverlay .simple-record-counts b{font-size:13px!important;font-weight:700}
#trainer-app body.client-stitch211 #historyOverlay .simple-record-counts [data-record-count=skipped]{color:#ff7373}
#trainer-app body.client-stitch211 #historyOverlay .simple-state-help{font-size:11px!important;color:var(--muted);margin:0 2px 14px}
#trainer-app body.client-stitch211 #historyOverlay .record-exercise-list>.record-edit-exercise,#trainer-app body.client-stitch211 #historyOverlay .record-exercise-list>.simple-sequence{padding:12px;margin:0 0 12px;border:0;border-radius:12px;background:var(--surface)}
#trainer-app body.client-stitch211 #historyOverlay .simple-sequence .record-edit-exercise{padding:8px 0 12px;margin:0 0 8px;border:0;border-bottom:1px solid var(--line);background:transparent}
#trainer-app body.client-stitch211 #historyOverlay .simple-sequence .record-edit-exercise:last-child{border-bottom:0;margin-bottom:0}
#trainer-app body.client-stitch211 #historyOverlay .simple-exercise-progress{font-size:12px!important;margin:8px 0;color:var(--muted)}
#trainer-app body.client-stitch211 #historyOverlay .simple-results{margin-top:8px;max-width:none}
#trainer-app body.client-stitch211 #historyOverlay .simple-results .simple-set{grid-template-columns:16px minmax(0,1fr) 92px;align-items:end;gap:5px;padding:8px 6px;margin:0 0 8px;border:0;border-radius:9px;background:var(--surface2)}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-number{font-size:12px!important;font-weight:600;padding-top:14px;text-align:center}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-fields{gap:4px;min-width:0}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-fields label{font-size:10px!important;line-height:1.3;gap:3px;margin:0;min-width:0}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-fields label>span{padding-left:3px}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-fields input{width:100%;height:44px;min-height:44px;padding:6px 2px;background:var(--surface3);color:var(--text);border:1px solid transparent;border-radius:8px;font-size:17px!important;font-weight:650;box-shadow:none}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-fields input:focus{border-color:var(--green);outline:1px solid var(--green);outline-offset:0}
#trainer-app body.client-stitch211 #historyOverlay .simple-set .simple-set-status{gap:4px;align-items:center}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-status button{width:44px;height:44px;min-height:44px;border:0;border-radius:8px;background:var(--surface3);color:var(--muted);font-size:23px!important}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-status [data-simple-confirm][aria-pressed=true]{background:#15d778;color:#102118;border:0}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-status [data-simple-skip][aria-pressed=true]{background:#ef4444;color:#fff;border:0}
#trainer-app body.client-stitch211 #historyOverlay .block-score{padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--surface2)}
#trainer-app body.client-stitch211 #historyOverlay .block-score-heading{font-size:12px!important}
#trainer-app body.client-stitch211 #historyOverlay .block-score-status [data-block-choice=done][aria-pressed=true]{background:#15d778;color:#102118;border:0}
#trainer-app body.client-stitch211 #historyOverlay .block-score-status [data-block-choice=skipped][aria-pressed=true]{background:#ef4444;color:#fff;border:0}
#trainer-app body.client-stitch211 #historyOverlay .record-editor>label{display:grid;gap:6px;margin:14px 0;font-size:12px!important;color:var(--muted)}
#trainer-app body.client-stitch211 #historyOverlay .record-editor>label :is(select,textarea,input){background:var(--surface3);color:var(--text);border:1px solid var(--line);border-radius:8px;min-height:44px;padding:10px;font-size:16px!important}
#trainer-app body.client-stitch211 #historyOverlay .record-edit-actions{display:flex;flex-direction:column;gap:6px;margin-top:18px}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-fields input{padding:6px 2px!important;background:var(--surface3)!important;border:1px solid transparent!important;border-radius:8px!important}
#trainer-app body.client-stitch211 #historyOverlay .simple-set-fields input:focus{border-color:var(--green)!important;outline-offset:0!important}
#trainer-app body.client-stitch211 #historyOverlay .sheettitle{border:0!important;padding-bottom:0!important}
#trainer-app body.client-stitch212 #historyOverlay .record-edit-actions #recordEditSave{order:0;background:#15d778!important;color:#102118!important;border:0;border-radius:9px;min-height:48px;font-size:14px!important;font-weight:800}
#trainer-app body.client-stitch212 #historyOverlay .record-edit-actions #recordEditCancel{order:1;background:var(--surface2)!important;color:var(--muted)!important;border:0;border-radius:9px;min-height:44px;font-size:13px!important}

/* Final priorities over older form/card resets. */
#trainer-app body.client-stitch212 #profileOverlay .settings-section:not(.account-profile135){border-radius:12px!important}
#trainer-app body.client-stitch212 #profileOverlay .settings-section>h3{font-size:13px!important;letter-spacing:.3px;color:var(--text)}
#trainer-app body.client-stitch212 #profileOverlay .profile-group203 :is(input,select){font-weight:400!important}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg p{font-weight:400!important}
#trainer-app body.client-stitch212 #clientMessagesV57 .v57-msg.mine p{color:#102118!important}
#trainer-app.client-stitch212 #personalMaxesV97 [data-personal-maximum]{border-radius:10px!important;padding:14px 12px!important}
#trainer-app.client-stitch212 #simpleMaximum #simpleMaximumValue{font-size:30px!important;font-weight:800!important}
#trainer-app body.client-stitch212 #notificationsOverlay .notification-main b{font-size:13px!important;font-weight:700}
#trainer-app body.client-stitch212 #notificationsOverlay .notification-main>span{font-size:10px!important;color:var(--green)}
#trainer-app #authScreen :is(#authForgot,#authRegister129){display:block;width:100%;text-align:center}
#trainer-app body.client-stitch212 #historyOverlay .simple-single-line{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
#trainer-app body.client-stitch212 #historyOverlay .simple-single-name{min-width:0;flex:1;gap:6px}
#trainer-app body.client-stitch212 #historyOverlay .simple-exercise-name{font-size:15px!important;font-weight:700}
#trainer-app body.client-stitch212 #historyOverlay .stitch-edit-series212{font-size:10px!important;color:var(--muted);background:var(--surface2);padding:3px 6px;border-radius:5px;white-space:nowrap}
#trainer-app body.client-stitch212 #historyOverlay .sheettitle h2{font-size:22px!important;font-weight:800;margin:4px 0!important}
#trainer-app body.client-stitch212 #historyOverlay .simple-set-fields label{font-size:10px!important}
#trainer-app body.client-stitch212 #historyOverlay .simple-set-fields input{font-weight:600!important}
#trainer-app body.client-stitch212 #historyOverlay .record-editor>label :is(select,textarea){background:var(--surface3)!important;padding:10px!important;border:1px solid var(--line)!important;border-radius:8px!important}
