:root{
  --bg:#f4f6f8;--surface:#fff;--surface2:#f8faf9;--surface3:#eef2ef;
  --text:#131820;--muted:#6f7885;--line:#e4e8ec;
  --green:#25aa6a;--green2:#14804f;--greenSoft:#e7f6ee;
  --orange:#f0a845;--red:#ef6b6b;--blue:#5c88e7;--purple:#8e6de7;
  --shadow:0 14px 34px rgba(20,25,31,.08);--r:18px;
}
html[data-theme="dark"]{
  --bg:#090d12;--surface:#11171e;--surface2:#151d25;--surface3:#1b2530;
  --text:#f4f7f9;--muted:#99a4af;--line:#24303b;
  --green:#38c980;--green2:#20a968;--greenSoft:#102b20;
  --orange:#ffb350;--red:#ff7777;--blue:#7ca6ff;--purple:#aa8cff;
  --shadow:0 16px 36px rgba(0,0,0,.3);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  padding-bottom:calc(78px + env(safe-area-inset-bottom));
}
button,input,textarea,select{font:inherit}
button{color:inherit}
.shell{max-width:880px;margin:auto;min-height:100vh}
.topbar{
  position:sticky;top:0;z-index:50;
  padding:calc(11px + env(safe-area-inset-top)) 14px 11px;
  background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line)
}
.toprow{display:flex;justify-content:space-between;align-items:center;gap:10px}
.brand{display:flex;align-items:center;gap:10px;min-width:0}
.logo{
  width:40px;height:40px;border-radius:13px;display:grid;place-items:center;
  background:linear-gradient(145deg,var(--green),var(--green2));color:#fff;font-weight:900;flex:0 0 auto
}
.brand strong{display:block;font-size:15px}.brand small{display:block;color:var(--muted);margin-top:2px}
.actions{display:flex;gap:8px}
.iconbtn{
  width:42px;height:42px;border-radius:13px;border:1px solid var(--line);background:var(--surface);
  display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow)
}
.page{padding:14px}
.screen{display:none}.screen.active{display:block}
.hero{margin:6px 0 16px}
.eyebrow{font-size:11px;color:var(--green);font-weight:900;letter-spacing:.08em;text-transform:uppercase}
h1{font-size:34px;line-height:1;margin:5px 0 7px;letter-spacing:-.04em}
h2{font-size:18px;margin:0}
h3{font-size:15px;margin:0}
.sub{font-size:13px;color:var(--muted);line-height:1.45}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.section{padding:14px;margin-bottom:12px}
.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.linkbtn{border:0;background:transparent;color:var(--green);font-weight:850;font-size:11px;cursor:pointer;padding:0}
.primary{
  width:100%;border:0;border-radius:14px;padding:14px 16px;
  background:linear-gradient(180deg,var(--green),var(--green2));color:#fff;font-weight:900;cursor:pointer
}
.secondary{
  border:1px solid var(--line);border-radius:12px;background:var(--surface2);
  padding:11px 12px;font-weight:800;cursor:pointer
}
.badge{
  display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:850;padding:6px 8px;border-radius:999px;
  background:var(--greenSoft);color:var(--green);white-space:nowrap
}
.badge.orange{background:color-mix(in srgb,var(--orange) 15%,transparent);color:var(--orange)}
.badge.blue{background:color-mix(in srgb,var(--blue) 15%,transparent);color:var(--blue)}
.badge.purple{background:color-mix(in srgb,var(--purple) 15%,transparent);color:var(--purple)}
.badge.gray{background:var(--surface3);color:var(--muted)}
.row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)
}
.row:last-child{border-bottom:0}
.row b{font-size:13px}.row small{display:block;color:var(--muted);margin-top:3px;line-height:1.35}
.row .chev{color:var(--muted);font-size:18px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.stat{padding:13px}
.stat span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.stat strong{display:block;margin-top:5px;font-size:18px}
.progress{height:8px;background:var(--surface3);border-radius:999px;overflow:hidden;margin-top:8px}
.progress i{display:block;height:100%;background:var(--green);border-radius:999px}
.today{
  padding:15px;margin:12px 0;background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 62%,var(--surface)),var(--surface))
}
.todaytop{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.today h2{font-size:21px;margin:4px 0}.today p{margin:0;color:var(--muted);font-size:12px}
.workout-preview{margin:13px 0;border-top:1px solid var(--line)}
.weekstrip{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:14px;overflow:auto;scrollbar-width:none}
.weekstrip::-webkit-scrollbar{display:none}
.day{
  min-width:54px;border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:9px 4px;text-align:center;cursor:pointer
}
.day strong,.day span{display:block}.day strong{font-size:12px}.day span{font-size:9px;color:var(--muted);margin-top:4px}
.day.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 42%,var(--line))}
.day.active strong{color:var(--green)}
.quickgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px}
.quick{
  border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:13px;text-align:left;box-shadow:var(--shadow);cursor:pointer
}
.quick .icon{font-size:20px}.quick b{display:block;margin-top:9px;font-size:13px}.quick small{display:block;color:var(--muted);margin-top:3px}

/* PLAN */
.program-card{
  padding:14px;margin-bottom:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 40%,var(--surface)),var(--surface))
}
.program-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.program-card h2{margin:4px 0 4px;font-size:20px}.program-card p{margin:0;color:var(--muted);font-size:12px}
.program-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.meta-box{padding:10px;border-radius:13px;background:var(--surface2);border:1px solid var(--line)}
.meta-box span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase}.meta-box strong{display:block;margin-top:4px;font-size:13px}
.week-selector{
  display:flex;gap:8px;overflow:auto;margin-bottom:12px;padding-bottom:3px;scrollbar-width:none
}
.week-selector::-webkit-scrollbar{display:none}
.week-chip{
  min-width:98px;border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:10px 11px;text-align:left;cursor:pointer
}
.week-chip b{display:block;font-size:12px}.week-chip span{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.week-chip.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 45%,var(--line))}
.plan-toolbar{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px}
.search{
  width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:13px;padding:11px 12px;outline:none
}
.plan-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.plan-summary .card{padding:11px}.plan-summary span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase}.plan-summary strong{display:block;margin-top:4px;font-size:14px}
.plan-day-tabs{display:flex;gap:7px;overflow:auto;margin-bottom:12px;scrollbar-width:none}
.plan-day-tabs::-webkit-scrollbar{display:none}
.plan-day-tab{
  min-width:76px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:9px 8px;text-align:center;cursor:pointer
}
.plan-day-tab b{display:block;font-size:11px}.plan-day-tab span{display:block;margin-top:3px;font-size:9px;color:var(--muted)}
.plan-day-tab.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 40%,var(--line))}
.plan-detail{display:none}.plan-detail.active{display:block}
.block-card{overflow:hidden;margin-bottom:10px}
.block-head{padding:13px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.block-title{display:flex;gap:10px}
.block-icon{
  width:34px;height:34px;border-radius:11px;background:var(--greenSoft);display:grid;place-items:center;flex:0 0 auto
}
.block-head p{margin:3px 0 0;color:var(--muted);font-size:11px}
.block-body{padding:0 14px}
.exercise-row{cursor:pointer}
.exercise-row .left{min-width:0}
.exercise-row .right{text-align:right;flex:0 0 auto}
.exercise-row .right strong{font-size:12px}
.exercise-row .right small{font-size:9px}
.trainer-note{
  padding:13px;border-radius:15px;background:var(--surface2);border:1px solid var(--line);margin-bottom:12px
}
.trainer-note strong{display:block;font-size:12px;margin-bottom:5px}.trainer-note p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}

/* HISTORY */
.filterbar{display:flex;gap:8px;overflow:auto;margin-bottom:12px;scrollbar-width:none}
.filterbar::-webkit-scrollbar{display:none}
.filterbtn{
  white-space:nowrap;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 10px;font-size:11px;color:var(--muted)
}
.filterbtn.active{background:var(--greenSoft);color:var(--green);border-color:transparent;font-weight:850}
.historyitem{padding:13px 0;border-bottom:1px solid var(--line);cursor:pointer}
.historyitem:last-child{border-bottom:0}
.historytop{display:flex;justify-content:space-between;gap:10px}
.historytop strong{font-size:14px}.historytop span{color:var(--muted);font-size:10px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.chip{font-size:10px;border-radius:999px;padding:6px 8px;background:var(--surface3);color:var(--muted)}

/* PERFORMANCE */
.pr-card{padding:14px}
.pr-card .label{color:var(--muted);font-size:11px}.pr-card .value{font-size:28px;font-weight:900;letter-spacing:-.04em;margin:5px 0}
.pr-card .delta{font-size:11px;color:var(--green);font-weight:850}
.graph{
  height:145px;margin-top:12px;border-radius:14px;background:
  linear-gradient(to top,var(--surface2),transparent),
  repeating-linear-gradient(to right,transparent 0 48px,color-mix(in srgb,var(--line) 50%,transparent) 49px),
  repeating-linear-gradient(to bottom,transparent 0 34px,color-mix(in srgb,var(--line) 50%,transparent) 35px);
  position:relative;overflow:hidden
}
.graph svg{position:absolute;inset:0;width:100%;height:100%}
.select{
  width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:12px;padding:11px
}
.benchmark{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}
.benchmark:last-child{border-bottom:0}.benchmark b{font-size:13px}.benchmark small{display:block;color:var(--muted);margin-top:2px}
.benchmark strong{font-size:14px}

/* WORKOUT */
.workout-card{padding:14px;margin-bottom:10px}
.exercise-name{font-size:19px;font-weight:900;margin:6px 0 2px}
.setline{display:grid;grid-template-columns:36px 1fr 1fr 44px;gap:8px;align-items:center;padding:8px 0;border-top:1px solid var(--line)}
.setline:first-of-type{margin-top:10px}
.setno{width:31px;height:31px;border-radius:9px;background:var(--surface3);display:grid;place-items:center;font-size:12px;font-weight:850}
.setbox{width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:10px;padding:9px 7px;text-align:center}
.checkbtn{width:42px;height:42px;border-radius:11px;border:1px solid var(--line);background:var(--surface2);font-weight:900}
.restbar{position:sticky;bottom:84px;padding:11px 12px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.restbar strong{font-size:21px}

/* bottom + overlays */
.bottomnav{
  position:fixed;left:0;right:0;bottom:0;z-index:60;background:color-mix(in srgb,var(--surface) 94%,transparent);
  backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:7px 10px calc(7px + env(safe-area-inset-bottom))
}
.bottominner{max-width:880px;margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.navbtn{border:0;background:transparent;color:var(--muted);border-radius:11px;padding:7px 3px;cursor:pointer}
.navbtn span{display:block;font-size:17px}.navbtn small{display:block;font-size:9px;margin-top:4px}
.navbtn.active{background:var(--greenSoft);color:var(--green);font-weight:850}
.overlay{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.62);display:none;align-items:flex-end}
.overlay.show{display:flex}
.sheet{
  width:100%;max-width:880px;margin:auto;background:var(--surface);border:1px solid var(--line);border-radius:22px 22px 0 0;
  max-height:88vh;overflow:auto;padding:14px 14px calc(18px + env(safe-area-inset-bottom))
}
.handle{width:42px;height:4px;background:var(--line);border-radius:999px;margin:0 auto 14px}
.sheettitle{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:12px}
.sheettitle h2{font-size:21px}.close{border:0;background:var(--surface3);border-radius:10px;width:36px;height:36px}
.detailgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.detailbox{background:var(--surface2);border:1px solid var(--line);border-radius:13px;padding:10px}
.detailbox span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.detailbox strong{display:block;margin-top:4px;font-size:13px}
.note{padding:12px;border-radius:13px;background:var(--surface2);border:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.5}
.profilehead{display:flex;gap:12px;align-items:center;padding:15px}
.profileavatar{
  width:58px;height:58px;border-radius:18px;background:linear-gradient(145deg,var(--green),var(--green2));display:grid;place-items:center;
  color:white;font-size:18px;font-weight:900
}
.setting{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}
.setting:last-child{border-bottom:0}.setting b{font-size:13px}.setting small{display:block;color:var(--muted);margin-top:3px}
.toggle{width:46px;height:28px;border-radius:999px;background:var(--surface3);border:1px solid var(--line);position:relative}
.toggle:after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;left:3px;top:3px;background:var(--muted);transition:.2s}
.toggle.on{background:var(--greenSoft)}.toggle.on:after{left:21px;background:var(--green)}


/* DAY DETAIL */
.backline{
  display:flex;align-items:center;gap:8px;margin:0 0 12px
}
.backbtn{
  border:1px solid var(--line);background:var(--surface);color:var(--text);
  border-radius:12px;padding:9px 11px;font-weight:850;cursor:pointer
}
.dayhero{
  padding:15px;margin-bottom:12px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 50%,var(--surface)),var(--surface))
}
.dayhero-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.dayhero h1{font-size:30px;margin:5px 0 5px}
.dayhero p{margin:0;color:var(--muted);font-size:12px}
.day-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}
.day-actions .secondary,.day-actions .primary{width:100%}
.daystats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}
.daystat{
  background:var(--surface2);border:1px solid var(--line);border-radius:13px;padding:10px
}
.daystat span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}
.daystat strong{display:block;margin-top:4px;font-size:13px}
.coach-card{
  padding:13px;margin-bottom:12px;border-left:3px solid var(--green)
}
.coach-card .coach-title{font-size:11px;color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.coach-card p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.source-card{
  display:flex;justify-content:space-between;align-items:center;gap:10px;
  padding:11px 13px;margin-bottom:12px
}
.source-card div b{display:block;font-size:12px}
.source-card div small{display:block;color:var(--muted);margin-top:3px}
.detail-block{overflow:hidden;margin-bottom:10px}
.detail-block-head{
  padding:13px 14px;border-bottom:1px solid var(--line);
  display:flex;justify-content:space-between;gap:10px;align-items:flex-start
}
.detail-block-title{display:flex;gap:10px}
.detail-block-body{padding:0 14px}
.detail-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;
  padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer
}
.detail-row:last-child{border-bottom:0}
.detail-row b{font-size:13px}
.detail-row small{display:block;color:var(--muted);margin-top:3px;line-height:1.35}
.detail-row .value{text-align:right}
.detail-row .value strong{display:block;font-size:12px}
.detail-row .value small{font-size:9px}
.day-footer-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.status-note{
  text-align:center;color:var(--muted);font-size:11px;margin:8px 0 2px
}


/* REAL EXCEL SNAPSHOT */
.plan-layout{display:none!important}
.live-plan-root{margin-top:12px}
.excel-banner{
  padding:12px 13px;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));
  background:var(--greenSoft);border-radius:15px
}
.excel-banner strong{display:block;font-size:12px;color:var(--green)}
.excel-banner span{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.4}
.live-week-row{display:flex;gap:8px;overflow:auto;scrollbar-width:none;padding-bottom:3px;margin-bottom:12px}
.live-week-row::-webkit-scrollbar{display:none}
.live-week{
  min-width:82px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:9px 10px;text-align:left;cursor:pointer
}
.live-week b{display:block;font-size:11px}
.live-week small{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.live-week.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 40%,var(--line))}
.live-days{display:flex;gap:7px;overflow:auto;scrollbar-width:none;margin-bottom:12px}
.live-days::-webkit-scrollbar{display:none}
.live-day{
  min-width:72px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:9px 8px;text-align:center;cursor:pointer
}
.live-day b{display:block;font-size:11px}
.live-day small{display:block;font-size:8px;color:var(--muted);margin-top:3px;white-space:nowrap}
.live-day.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 40%,var(--line))}
.live-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.live-summary .card{padding:10px}
.live-summary span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}
.live-summary strong{display:block;font-size:13px;margin-top:4px}
.source-list{overflow:hidden;margin-bottom:12px}
.source-head{padding:13px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}
.source-head p{margin:3px 0 0;color:var(--muted);font-size:11px}
.source-body{padding:0 14px}
.source-entry{padding:11px 0;border-bottom:1px solid var(--line)}
.source-entry:last-child{border-bottom:0}
.source-entry strong{font-size:13px;line-height:1.35}
.source-entry.headerish strong{color:var(--green)}
.source-entry a{
  display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-size:12px;font-weight:850;text-decoration:none;
  background:color-mix(in srgb,var(--blue) 12%,transparent);padding:8px 10px;border-radius:10px
}
.source-empty{padding:18px 14px;color:var(--muted);font-size:12px;text-align:center}
.live-search{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:13px;padding:11px 12px;margin-bottom:12px;outline:none}
.snapshot-note{font-size:10px;color:var(--muted);line-height:1.4;margin:8px 0 14px}


/* FULL PARSED EXCEL PLAN */
.plan-layout{display:none!important}
.live-plan-root{margin-top:12px}
.excel-banner{
  padding:12px 13px;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));
  background:var(--greenSoft);border-radius:15px
}
.excel-banner strong{display:block;font-size:12px;color:var(--green)}
.excel-banner span{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.4}
.live-week-row{display:flex;gap:8px;overflow:auto;scrollbar-width:none;padding-bottom:3px;margin-bottom:12px}
.live-week-row::-webkit-scrollbar{display:none}
.live-week{min-width:84px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:9px 10px;text-align:left;cursor:pointer}
.live-week b{display:block;font-size:11px}.live-week small{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.live-week.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 40%,var(--line))}
.live-days{display:flex;gap:7px;overflow:auto;scrollbar-width:none;margin-bottom:12px}
.live-days::-webkit-scrollbar{display:none}
.live-day{min-width:74px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:9px 8px;text-align:center;cursor:pointer}
.live-day b{display:block;font-size:11px}.live-day small{display:block;font-size:8px;color:var(--muted);margin-top:3px;white-space:nowrap}
.live-day.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 40%,var(--line))}
.live-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.live-summary .card{padding:10px}.live-summary span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}
.live-summary strong{display:block;font-size:13px;margin-top:4px}
.plan-mode{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:12px}
.plan-mode button{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:10px;font-size:11px;font-weight:800;cursor:pointer}
.plan-mode button.active{background:var(--greenSoft);color:var(--green);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}
.live-search{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:13px;padding:11px 12px;margin-bottom:12px;outline:none}
.parsed-block{overflow:hidden;margin-bottom:10px}
.parsed-block-head{padding:13px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.parsed-block-title{display:flex;gap:10px;align-items:flex-start}
.parsed-icon{width:34px;height:34px;border-radius:11px;background:var(--greenSoft);display:grid;place-items:center;flex:0 0 auto}
.parsed-block-head h3{margin:0}.parsed-block-head p{margin:3px 0 0;color:var(--muted);font-size:10px}
.parsed-body{padding:0 14px}
.parsed-line{padding:10px 0;border-bottom:1px solid var(--line)}
.parsed-line:last-child{border-bottom:0}
.parsed-line strong{font-size:12px;line-height:1.4;display:block}
.parsed-line.meta strong{color:var(--muted);font-weight:650}
.parsed-line a{display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-size:11px;font-weight:850;text-decoration:none;background:color-mix(in srgb,var(--blue) 12%,transparent);padding:8px 10px;border-radius:10px}
.raw-list{overflow:hidden;margin-bottom:12px}
.raw-head{padding:13px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}
.raw-head p{margin:3px 0 0;color:var(--muted);font-size:11px}
.raw-body{padding:0 14px}
.raw-entry{padding:10px 0;border-bottom:1px solid var(--line)}
.raw-entry:last-child{border-bottom:0}
.raw-entry strong{font-size:12px;line-height:1.4}
.raw-entry a{color:var(--blue);font-size:11px;font-weight:850;text-decoration:none}
.comment-box{padding:12px 13px;margin-top:10px;border-radius:14px;background:var(--surface2);border:1px solid var(--line)}
.comment-box strong{display:block;font-size:11px;color:var(--orange);margin-bottom:5px}
.comment-box p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}
.parser-note{font-size:10px;color:var(--muted);line-height:1.45;margin:8px 0 14px}


/* STRUCTURED EXERCISE MODEL */
.model-block{overflow:hidden;margin-bottom:10px}
.model-head{
  padding:13px 14px;border-bottom:1px solid var(--line);
  display:flex;justify-content:space-between;gap:10px;align-items:flex-start
}
.model-head h3{margin:0;font-size:15px}
.model-head p{margin:3px 0 0;color:var(--muted);font-size:10px}
.model-body{padding:10px 12px}
.exercise-model{
  border:1px solid var(--line);background:var(--surface2);border-radius:14px;
  padding:12px;margin-bottom:9px
}
.exercise-model:last-child{margin-bottom:0}
.exercise-model-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.exercise-model-name{font-size:14px;font-weight:900;line-height:1.3}
.confidence{
  font-size:9px;font-weight:900;padding:5px 7px;border-radius:999px;
  background:var(--greenSoft);color:var(--green);white-space:nowrap
}
.confidence.medium{background:color-mix(in srgb,var(--orange) 15%,transparent);color:var(--orange)}
.exercise-fields{
  display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px
}
.fieldbox{background:var(--surface3);border-radius:10px;padding:8px}
.fieldbox span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.04em}
.fieldbox strong{display:block;margin-top:3px;font-size:11px;line-height:1.2;word-break:break-word}
.model-source{
  margin-top:9px;padding-top:9px;border-top:1px solid var(--line);color:var(--muted);font-size:9px;line-height:1.4
}
.unparsed-box{
  padding:11px 12px;border:1px dashed var(--line);border-radius:13px;margin-bottom:9px;
  color:var(--muted);font-size:11px;line-height:1.4
}
.model-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px
}
.model-stat{background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:9px}
.model-stat span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase}
.model-stat strong{display:block;font-size:13px;margin-top:3px}
.workout-generated-note{
  padding:11px 12px;border-radius:13px;background:var(--greenSoft);color:var(--muted);
  font-size:10px;line-height:1.45;margin-bottom:10px
}


/* PERSISTENT WORKOUT FLOW */
.resume-card{
  padding:14px;margin-bottom:12px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--orange) 12%,var(--surface)),var(--surface));
  border:1px solid color-mix(in srgb,var(--orange) 35%,var(--line))
}
.resume-card h3{margin:0 0 4px;font-size:15px}
.resume-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.4}
.resume-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}
.resume-actions button{min-height:42px}
.workout-topbar{
  display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start;margin-bottom:12px
}
.workout-clock{
  min-width:82px;text-align:center;background:var(--surface);border:1px solid var(--line);
  border-radius:14px;padding:9px 10px
}
.workout-clock span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase}
.workout-clock strong{display:block;font-size:19px;margin-top:3px}
.workout-progress-sticky{
  position:sticky;top:73px;z-index:20;margin-bottom:10px;padding:11px 12px;
  background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(14px)
}
.workout-progress-sticky .progressline{display:flex;justify-content:space-between;gap:10px;align-items:center}
.workout-progress-sticky .progressline span{font-size:10px;color:var(--muted)}
.workout-progress-sticky .progressline strong{font-size:11px}
.workout-save-card{padding:14px;margin-top:12px;margin-bottom:12px}
.workout-save-card h3{margin:0 0 4px}
.workout-save-card p{margin:0 0 11px;color:var(--muted);font-size:11px}
.workout-rpe{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin:10px 0}
.workout-rpe button{
  aspect-ratio:1;border-radius:50%;border:1px solid var(--line);background:var(--surface2);
  font-size:10px;cursor:pointer
}
.workout-rpe button.active{background:var(--green);border-color:var(--green);color:#fff;font-weight:900}
.workout-note{
  width:100%;min-height:78px;border:1px solid var(--line);background:var(--surface2);
  color:var(--text);border-radius:12px;padding:10px;resize:vertical;outline:none
}
.workout-footer-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.setline.completed .setno{background:var(--green);color:#fff}
.setline.completed .setbox{opacity:.72}
.dynamic-section{padding:14px;margin-bottom:12px}
.dynamic-section h2{margin:0}
.empty-state{
  padding:16px;text-align:center;border:1px dashed var(--line);border-radius:14px;
  color:var(--muted);font-size:11px
}
.saved-workout{
  padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer
}
.saved-workout:last-child{border-bottom:0}
.saved-workout-top{display:flex;justify-content:space-between;gap:10px}
.saved-workout-top b{font-size:13px}.saved-workout-top span{font-size:9px;color:var(--muted)}
.saved-metrics{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.saved-metric{padding:5px 7px;border-radius:999px;background:var(--surface3);font-size:9px;color:var(--muted)}
.pr-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.user-pr{
  padding:12px;border:1px solid var(--line);background:var(--surface2);border-radius:13px
}
.user-pr span{display:block;color:var(--muted);font-size:9px}
.user-pr strong{display:block;font-size:17px;margin-top:4px}
.user-pr small{display:block;color:var(--green);font-size:9px;margin-top:4px}
.history-exercise{padding:11px 0;border-bottom:1px solid var(--line)}
.history-exercise:last-child{border-bottom:0}
.history-exercise b{font-size:12px}
.history-sets{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.history-set{font-size:9px;background:var(--surface3);padding:5px 7px;border-radius:8px;color:var(--muted)}
.saved-toast{
  position:fixed;left:50%;bottom:90px;z-index:120;transform:translate(-50%,16px);
  background:var(--text);color:var(--bg);padding:10px 13px;border-radius:11px;font-size:11px;font-weight:850;
  opacity:0;pointer-events:none;transition:.2s;white-space:nowrap
}
.saved-toast.show{opacity:1;transform:translate(-50%,0)}


/* MOBILE WORKOUT FOCUS MODE */
.workout-focus-shell{padding-bottom:150px}
.focus-head{
  display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px
}
.focus-head h1{font-size:30px;margin:5px 0 4px}
.focus-clock{
  min-width:88px;text-align:center;border:1px solid var(--line);background:var(--surface);
  border-radius:14px;padding:9px 10px;box-shadow:var(--shadow)
}
.focus-clock span{display:block;font-size:8px;color:var(--muted);text-transform:uppercase}
.focus-clock strong{display:block;font-size:19px;margin-top:3px}
.exercise-nav-card{padding:11px 12px;margin-bottom:10px}
.exercise-nav-row{display:flex;justify-content:space-between;align-items:center;gap:10px}
.exercise-nav-row span{font-size:10px;color:var(--muted)}
.exercise-nav-row strong{font-size:11px}
.exercise-nav-dots{display:flex;gap:5px;overflow:hidden;margin-top:8px}
.exercise-nav-dot{height:6px;flex:1;background:var(--surface3);border-radius:999px}
.exercise-nav-dot.done{background:var(--green)}
.exercise-nav-dot.current{background:var(--orange)}
.focus-exercise{
  padding:14px;margin-bottom:10px
}
.focus-exercise-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.focus-exercise-name{font-size:22px;font-weight:900;letter-spacing:-.02em;margin:5px 0}
.focus-plan{
  padding:10px 11px;border:1px solid var(--line);background:var(--surface2);border-radius:12px;
  color:var(--muted);font-size:11px;line-height:1.45;margin:10px 0
}
.focus-set{
  border:1px solid var(--line);background:var(--surface2);border-radius:15px;padding:12px;margin-top:9px
}
.focus-set.done{border-color:color-mix(in srgb,var(--green) 45%,var(--line));background:var(--greenSoft)}
.focus-set-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.focus-set-title{font-size:12px;font-weight:900}
.focus-set-status{font-size:9px;color:var(--muted)}
.quick-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.quick-field{background:var(--surface3);border-radius:13px;padding:10px}
.quick-field label{display:block;font-size:8px;color:var(--muted);text-transform:uppercase;margin-bottom:5px}
.quick-value-row{display:grid;grid-template-columns:34px 1fr 34px;gap:5px;align-items:center}
.quick-step{
  width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-weight:900
}
.quick-input{
  width:100%;border:0;background:transparent;color:var(--text);text-align:center;font-size:18px;font-weight:900;outline:none
}
.set-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}
.set-actions button{min-height:42px}
.copy-btn{
  border:1px solid var(--line);background:var(--surface);border-radius:11px;font-size:10px;font-weight:800
}
.complete-set{
  border:0;background:var(--green);color:white;border-radius:11px;font-size:11px;font-weight:900
}
.complete-set.done{background:var(--surface3);color:var(--muted);border:1px solid var(--line)}
.rest-panel{
  padding:13px;margin-bottom:10px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--orange) 10%,var(--surface)),var(--surface));
  border:1px solid color-mix(in srgb,var(--orange) 35%,var(--line))
}
.rest-panel.hidden{display:none}
.rest-row{display:flex;justify-content:space-between;align-items:center;gap:10px}
.rest-label{font-size:10px;color:var(--muted)}
.rest-value{font-size:30px;font-weight:900;letter-spacing:-.03em}
.rest-buttons{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.rest-buttons button{
  border:1px solid var(--line);background:var(--surface2);border-radius:10px;padding:8px 10px;font-size:10px;font-weight:800
}
.focus-note{
  width:100%;min-height:70px;border:1px solid var(--line);background:var(--surface2);color:var(--text);
  border-radius:12px;padding:10px;resize:vertical;outline:none
}
.exercise-complete-btn{
  width:100%;margin-top:10px;border:1px solid color-mix(in srgb,var(--green) 45%,var(--line));
  background:var(--greenSoft);color:var(--green);border-radius:12px;padding:12px;font-weight:900
}
.workout-bottom-controls{
  position:fixed;left:0;right:0;bottom:calc(74px + env(safe-area-inset-bottom));z-index:55;
  pointer-events:none
}
.workout-bottom-inner{
  max-width:880px;margin:auto;padding:8px 12px;
  display:grid;grid-template-columns:46px 1fr 46px;gap:8px;
  background:color-mix(in srgb,var(--surface) 95%,transparent);backdrop-filter:blur(16px);
  border:1px solid var(--line);border-radius:16px 16px 0 0;box-shadow:0 -8px 28px rgba(0,0,0,.18);
  pointer-events:auto
}
.workout-bottom-inner button{min-height:46px;border-radius:12px;font-weight:900}
.focus-prev,.focus-next{border:1px solid var(--line);background:var(--surface2)}
.focus-main-action{border:0;background:var(--green);color:white}
.exercise-list-drawer{
  display:grid;gap:7px;margin-top:10px
}
.exercise-jump{
  border:1px solid var(--line);background:var(--surface2);border-radius:12px;padding:10px;text-align:left
}
.exercise-jump.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}
.exercise-jump b{display:block;font-size:11px}
.exercise-jump small{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.mobile-helper{
  text-align:center;color:var(--muted);font-size:9px;margin:7px 0
}


/* COMPACT CURRENT-SET WORKOUT v13 */
body.workout-active{
  padding-bottom:calc(92px + env(safe-area-inset-bottom));
}
body.workout-active .bottomnav{display:none}
body.workout-active .topbar{display:none}
body.workout-active .page{padding-top:calc(10px + env(safe-area-inset-top))}
body.workout-active .workout-bottom-controls{
  bottom:0;
  padding-bottom:env(safe-area-inset-bottom)
}
.current-workout-head{
  display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px
}
.current-workout-back{
  width:40px;height:40px;border:1px solid var(--line);background:var(--surface);
  border-radius:12px;font-weight:900
}
.current-workout-title{min-width:0;flex:1}
.current-workout-title .eyebrow{font-size:9px}
.current-workout-title h1{font-size:22px;margin:4px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.current-workout-time{
  min-width:70px;text-align:right
}
.current-workout-time span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase}
.current-workout-time strong{display:block;font-size:18px;margin-top:2px}
.compact-progress{
  padding:10px 11px;margin-bottom:10px
}
.compact-progress-row{
  display:flex;justify-content:space-between;gap:10px;align-items:center
}
.compact-progress-row span{font-size:9px;color:var(--muted)}
.compact-progress-row strong{font-size:10px}
.exercise-switcher{
  display:flex;gap:6px;overflow:auto;scrollbar-width:none;margin-bottom:10px
}
.exercise-switcher::-webkit-scrollbar{display:none}
.exercise-pill{
  min-width:42px;height:38px;border-radius:11px;border:1px solid var(--line);
  background:var(--surface);font-size:10px;font-weight:900;position:relative
}
.exercise-pill.current{background:var(--greenSoft);color:var(--green);border-color:color-mix(in srgb,var(--green) 40%,var(--line))}
.exercise-pill.done{background:var(--green);color:#fff;border-color:var(--green)}
.exercise-pill .tiny{
  position:absolute;right:3px;top:2px;font-size:7px
}
.current-exercise-card{
  padding:14px;margin-bottom:10px
}
.current-exercise-card .exercise-label{
  color:var(--green);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em
}
.current-exercise-card h2{
  font-size:23px;line-height:1.1;margin:5px 0 4px;letter-spacing:-.025em
}
.current-plan{
  color:var(--muted);font-size:11px;line-height:1.45
}
.set-overview{
  display:flex;gap:7px;margin:12px 0 10px;overflow:auto;scrollbar-width:none
}
.set-overview::-webkit-scrollbar{display:none}
.set-chip{
  min-width:46px;border:1px solid var(--line);background:var(--surface2);
  border-radius:10px;padding:7px 6px;text-align:center
}
.set-chip b{display:block;font-size:10px}
.set-chip small{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.set-chip.active{border-color:var(--orange);background:color-mix(in srgb,var(--orange) 10%,var(--surface2))}
.set-chip.done{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 35%,var(--line));color:var(--green)}
.current-set-card{
  padding:14px;border-radius:16px;background:var(--surface2);border:1px solid var(--line)
}
.current-set-header{
  display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px
}
.current-set-header strong{font-size:14px}
.current-set-header span{font-size:9px;color:var(--muted)}
.big-fields{
  display:grid;grid-template-columns:1fr 1fr;gap:10px
}
.big-field{
  border:1px solid var(--line);background:var(--surface3);border-radius:14px;padding:10px
}
.big-field label{
  display:block;text-align:center;color:var(--muted);font-size:8px;text-transform:uppercase;margin-bottom:7px
}
.big-control{
  display:grid;grid-template-columns:40px 1fr 40px;gap:5px;align-items:center
}
.big-control button{
  width:40px;height:44px;border:1px solid var(--line);background:var(--surface);
  border-radius:11px;font-size:20px;font-weight:900
}
.big-control input{
  width:100%;border:0;background:transparent;color:var(--text);text-align:center;
  font-size:25px;font-weight:900;outline:none
}
.finish-current-set{
  width:100%;border:0;background:var(--green);color:white;border-radius:13px;
  padding:14px;margin-top:11px;font-size:13px;font-weight:900
}
.finish-current-set.undo{
  background:var(--surface3);color:var(--muted);border:1px solid var(--line)
}
.current-set-tools{
  display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px
}
.current-set-tools button{
  border:1px solid var(--line);background:var(--surface);border-radius:11px;padding:10px;
  font-size:10px;font-weight:800
}
.compact-rest{
  padding:12px 13px;margin-bottom:10px;
  border:1px solid color-mix(in srgb,var(--orange) 35%,var(--line));
  background:linear-gradient(145deg,color-mix(in srgb,var(--orange) 10%,var(--surface)),var(--surface))
}
.compact-rest.hidden{display:none}
.compact-rest-main{
  display:flex;justify-content:space-between;align-items:center;gap:10px
}
.compact-rest-main span{font-size:9px;color:var(--muted)}
.compact-rest-main strong{font-size:30px}
.compact-rest-buttons{
  display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px
}
.compact-rest-buttons button{
  border:1px solid var(--line);background:var(--surface2);border-radius:9px;
  padding:8px 5px;font-size:9px;font-weight:800
}
.exercise-note-toggle{
  width:100%;border:1px solid var(--line);background:var(--surface);
  border-radius:12px;padding:10px;font-size:10px;font-weight:800;margin-bottom:10px
}
.exercise-note-box{display:none;margin-bottom:10px}
.exercise-note-box.open{display:block}
.exercise-note-box textarea{
  width:100%;min-height:70px;border:1px solid var(--line);background:var(--surface2);color:var(--text);
  border-radius:12px;padding:10px;resize:vertical
}
.quick-finish-panel{
  padding:12px 13px;margin-bottom:10px
}
.quick-finish-panel .workout-rpe{margin:8px 0}
.compact-bottom{
  display:grid;grid-template-columns:48px 1fr 48px;gap:8px
}
.compact-bottom button{
  min-height:48px;border-radius:13px;font-weight:900
}
.compact-bottom .middle{
  border:0;background:var(--green);color:#fff
}
.compact-bottom .side{
  border:1px solid var(--line);background:var(--surface2)
}


/* REAL HISTORY + PERFORMANCE v14 */
#screen-history > .filterbar,
#screen-history > .card.section{display:none}
#screen-performance > .grid2,
#screen-performance > section.card.section{display:none}

.analytics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}
.analytics-card{
  padding:12px;border:1px solid var(--line);background:var(--surface);border-radius:14px;box-shadow:var(--shadow)
}
.analytics-card span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.05em}
.analytics-card strong{display:block;font-size:19px;margin-top:4px}
.history-toolbar{
  display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:10px
}
.history-search{
  width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);
  border-radius:12px;padding:10px 11px;outline:none
}
.history-range{
  border:1px solid var(--line);background:var(--surface);color:var(--text);
  border-radius:12px;padding:10px 9px
}
.history-card{
  padding:13px;margin-bottom:9px;cursor:pointer;transition:.18s ease
}
.history-card:active{transform:scale(.992)}
.history-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.history-card h3{margin:0;font-size:14px}
.history-card .date{font-size:9px;color:var(--muted);text-align:right}
.history-card-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.metric-pill{font-size:9px;padding:5px 7px;border-radius:999px;background:var(--surface3);color:var(--muted)}
.metric-pill.green{background:var(--greenSoft);color:var(--green)}
.history-progress{margin-top:9px}
.history-progress-label{display:flex;justify-content:space-between;gap:10px;font-size:8px;color:var(--muted);margin-bottom:4px}
.history-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.history-actions button{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:10px;font-size:10px;font-weight:850}
.volume-highlight{
  padding:12px;border-radius:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 55%,var(--surface)),var(--surface));
  border:1px solid color-mix(in srgb,var(--green) 30%,var(--line));margin-bottom:10px
}
.volume-highlight span{font-size:9px;color:var(--muted);text-transform:uppercase}
.volume-highlight strong{display:block;font-size:24px;margin-top:3px}
.detail-exercise-card{
  padding:11px 0;border-bottom:1px solid var(--line)
}
.detail-exercise-card:last-child{border-bottom:0}
.detail-exercise-head{display:flex;justify-content:space-between;gap:10px}
.detail-exercise-head b{font-size:12px}
.detail-exercise-head span{font-size:9px;color:var(--muted)}
.set-table{display:grid;gap:5px;margin-top:7px}
.set-table-row{
  display:grid;grid-template-columns:30px 1fr 1fr auto;gap:6px;align-items:center;
  padding:6px 7px;border-radius:9px;background:var(--surface2);font-size:9px
}
.set-table-row .set-index{color:var(--muted)}
.set-ok{color:var(--green);font-weight:900}
.perf-toolbar{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:10px}
.perf-select{
  width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);
  border-radius:12px;padding:10px 11px
}
.perf-period{
  border:1px solid var(--line);background:var(--surface);color:var(--text);
  border-radius:12px;padding:10px 8px
}
.perf-hero{
  padding:14px;margin-bottom:10px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 50%,var(--surface)),var(--surface))
}
.perf-hero-name{font-size:11px;color:var(--muted)}
.perf-hero-value{font-size:31px;font-weight:900;letter-spacing:-.04em;margin-top:2px}
.perf-hero-sub{font-size:10px;color:var(--green);font-weight:850;margin-top:3px}
.perf-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}
.perf-mini{padding:9px;border-radius:11px;background:var(--surface2);border:1px solid var(--line)}
.perf-mini span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}
.perf-mini strong{display:block;font-size:12px;margin-top:3px}
.perf-chart{
  height:180px;border:1px solid var(--line);background:var(--surface2);border-radius:14px;
  margin:10px 0;position:relative;overflow:hidden
}
.perf-chart svg{width:100%;height:100%;position:absolute;inset:0}
.perf-chart-label{
  position:absolute;left:10px;top:9px;color:var(--muted);font-size:8px;z-index:2
}
.perf-table{overflow:hidden}
.perf-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;
  padding:10px 0;border-bottom:1px solid var(--line)
}
.perf-row:last-child{border-bottom:0}
.perf-row b{font-size:11px}
.perf-row small{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.perf-row .weight{font-size:11px;font-weight:900}
.perf-row .e1rm{font-size:9px;color:var(--green);font-weight:850}
.baseline-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.baseline-card{padding:11px;border:1px solid var(--line);background:var(--surface2);border-radius:12px}
.baseline-card span{display:block;color:var(--muted);font-size:8px}
.baseline-card strong{display:block;font-size:16px;margin-top:3px}
.backup-note{font-size:9px;color:var(--muted);line-height:1.4;margin-top:8px}


/* DYNAMIC HOME DASHBOARD v15 */
#screen-overview > .grid3,
#screen-overview > .card.today,
#screen-overview > .quickgrid,
#screen-overview > .dashboard{display:none}

.home-dynamic{margin-top:4px}
.home-resume{
  padding:14px;margin-bottom:10px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--orange) 12%,var(--surface)),var(--surface));
  border:1px solid color-mix(in srgb,var(--orange) 35%,var(--line))
}
.home-resume-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.home-resume h3{font-size:15px;margin:0 0 4px}
.home-resume p{margin:0;color:var(--muted);font-size:10px;line-height:1.4}
.home-resume-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}
.home-resume-actions button{min-height:42px}
.home-today{
  padding:15px;margin-bottom:10px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 60%,var(--surface)),var(--surface));
  border:1px solid color-mix(in srgb,var(--green) 28%,var(--line))
}
.home-today-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.home-today .label{font-size:9px;color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.home-today h2{font-size:21px;margin:4px 0}
.home-today p{margin:0;color:var(--muted);font-size:11px}
.home-today-preview{margin-top:11px;border-top:1px solid var(--line)}
.home-preview-line{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:9px 0;border-bottom:1px solid var(--line)
}
.home-preview-line:last-child{border-bottom:0}
.home-preview-line b{font-size:11px}
.home-preview-line small{display:block;color:var(--muted);font-size:9px;margin-top:2px}
.home-preview-line span{font-size:9px;color:var(--muted)}
.home-today-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:11px}
.home-today-actions button{min-height:43px}
.home-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:10px}
.home-stat{padding:10px;border:1px solid var(--line);background:var(--surface);border-radius:13px}
.home-stat span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase;letter-spacing:.05em}
.home-stat strong{display:block;font-size:15px;margin-top:4px}
.home-grid{display:grid;grid-template-columns:1fr;gap:10px}
.home-card{padding:13px}
.home-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}
.home-card-head h3{font-size:14px;margin:0}
.home-card-head button{border:0;background:transparent;color:var(--green);font-size:9px;font-weight:850}
.week-progress-row{
  display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:9px
}
.week-progress-day{
  border:1px solid var(--line);background:var(--surface2);border-radius:10px;
  padding:7px 3px;text-align:center
}
.week-progress-day b{display:block;font-size:9px}
.week-progress-day span{display:block;font-size:7px;color:var(--muted);margin-top:3px}
.week-progress-day.done{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}
.week-progress-day.done b{color:var(--green)}
.week-progress-day.current{border-color:var(--orange)}
.rpe-trend{
  display:flex;align-items:flex-end;gap:5px;height:74px;padding-top:6px
}
.rpe-bar{
  flex:1;min-width:12px;background:var(--surface3);border-radius:7px 7px 3px 3px;position:relative
}
.rpe-bar i{
  position:absolute;left:0;right:0;bottom:0;border-radius:7px 7px 3px 3px;
  background:var(--green)
}
.rpe-bar small{
  position:absolute;left:50%;transform:translateX(-50%);bottom:-14px;
  font-size:7px;color:var(--muted)
}
.pr-highlight{
  display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;
  padding:10px 0;border-bottom:1px solid var(--line)
}
.pr-highlight:last-child{border-bottom:0}
.pr-icon{
  width:32px;height:32px;border-radius:10px;background:var(--greenSoft);
  display:grid;place-items:center
}
.pr-highlight b{font-size:11px}
.pr-highlight small{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.pr-highlight strong{font-size:12px}
.quick-home-actions{
  display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:10px
}
.quick-home-btn{
  border:1px solid var(--line);background:var(--surface);border-radius:13px;
  padding:10px 4px;text-align:center;cursor:pointer
}
.quick-home-btn span{display:block;font-size:17px}
.quick-home-btn small{display:block;font-size:8px;color:var(--muted);margin-top:4px}
.home-empty{
  padding:12px;border:1px dashed var(--line);border-radius:12px;
  color:var(--muted);font-size:10px;line-height:1.4
}
@media(min-width:760px){
  .home-grid{grid-template-columns:1fr 1fr}
}


/* SETTINGS + SYNC CENTER v16 */
.settings-tabs{
  display:flex;gap:7px;overflow:auto;scrollbar-width:none;margin:4px 0 12px
}
.settings-tabs::-webkit-scrollbar{display:none}
.settings-tab{
  white-space:nowrap;border:1px solid var(--line);background:var(--surface2);
  color:var(--muted);border-radius:999px;padding:8px 11px;font-size:10px;font-weight:850
}
.settings-tab.active{background:var(--greenSoft);color:var(--green);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}
.settings-panel{display:none}
.settings-panel.active{display:block}
.settings-section{padding:13px;margin-bottom:10px}
.settings-section h3{margin:0 0 3px;font-size:14px}
.settings-section > p{margin:0 0 10px;color:var(--muted);font-size:10px;line-height:1.4}
.setting-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:11px 0;border-bottom:1px solid var(--line)
}
.setting-row:last-child{border-bottom:0}
.setting-row b{display:block;font-size:11px}
.setting-row small{display:block;color:var(--muted);font-size:9px;line-height:1.35;margin-top:2px}
.setting-select,.setting-input{
  max-width:140px;border:1px solid var(--line);background:var(--surface2);color:var(--text);
  border-radius:10px;padding:9px 9px;font-size:10px;text-align:right
}
.setting-input[type="number"]{width:86px}
.sync-status-card{
  padding:13px;margin-bottom:10px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--blue) 9%,var(--surface)),var(--surface));
  border:1px solid color-mix(in srgb,var(--blue) 28%,var(--line))
}
.sync-title{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.sync-title h3{margin:0;font-size:14px}
.sync-title p{margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.4}
.sync-badge{
  font-size:9px;font-weight:900;padding:6px 8px;border-radius:999px;
  background:color-mix(in srgb,var(--blue) 13%,transparent);color:var(--blue)
}
.sync-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:10px}
.sync-box{padding:9px;border-radius:11px;background:var(--surface2);border:1px solid var(--line)}
.sync-box span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}
.sync-box strong{display:block;font-size:10px;margin-top:3px;line-height:1.3}
.sync-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.sync-actions button{min-height:42px}
.info-banner{
  padding:11px 12px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);
  color:var(--muted);font-size:9px;line-height:1.45;margin-bottom:10px
}
.info-banner strong{color:var(--text)}
.data-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.data-actions button{
  min-height:42px;border:1px solid var(--line);background:var(--surface2);
  border-radius:11px;font-size:10px;font-weight:850
}
.data-actions .danger{
  color:var(--red);border-color:color-mix(in srgb,var(--red) 35%,var(--line))
}
.storage-bar{
  height:9px;background:var(--surface3);border-radius:999px;overflow:hidden;margin:8px 0 5px
}
.storage-bar i{display:block;height:100%;background:var(--green);border-radius:999px}
.storage-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:8px}
.account-card{
  display:flex;gap:11px;align-items:center;padding:13px;margin-bottom:10px
}
.account-avatar{
  width:50px;height:50px;border-radius:16px;background:linear-gradient(145deg,var(--green),var(--green2));
  color:white;display:grid;place-items:center;font-size:15px;font-weight:900
}
.account-card h3{margin:0;font-size:14px}
.account-card p{margin:3px 0 0;color:var(--muted);font-size:9px}
.cloud-placeholder{
  padding:12px;border:1px dashed var(--line);border-radius:13px;text-align:center;
  color:var(--muted);font-size:9px;line-height:1.45
}
.cloud-placeholder strong{display:block;color:var(--text);font-size:11px;margin-bottom:3px}
.toggle-mini{
  width:46px;height:28px;border-radius:999px;background:var(--surface3);border:1px solid var(--line);
  position:relative;cursor:pointer
}
.toggle-mini:after{
  content:"";position:absolute;width:20px;height:20px;border-radius:50%;left:3px;top:3px;background:var(--muted);transition:.2s
}
.toggle-mini.on{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}
.toggle-mini.on:after{left:21px;background:var(--green)}

@media(min-width:900px){
  .shell{max-width:1060px}.page{padding:20px}.bottominner{max-width:1060px}
  .dashboard{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}
  .quickgrid{grid-template-columns:repeat(4,1fr)}
  .plan-layout{display:grid;grid-template-columns:270px 1fr;gap:14px;align-items:start}
  .plan-sidebar{position:sticky;top:86px}
  .week-selector{display:grid;grid-template-columns:1fr 1fr;max-height:540px;overflow:auto}
}


/* LOCAL BACKEND ACCOUNT v18 */
.backend-auth-grid{display:grid;grid-template-columns:1fr;gap:8px;margin:10px 0}
.backend-auth-input{
  width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--text);
  border-radius:11px;padding:11px 12px;outline:none;font-size:11px
}
.backend-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.backend-auth-actions button,.backend-full-btn{min-height:42px}
.backend-auth-message{min-height:18px;margin-top:7px;color:var(--muted);font-size:9px;line-height:1.35}
.backend-auth-message.error{color:var(--red)}
.backend-auth-message.ok{color:var(--green)}
.backend-user-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:9px 0 11px
}
.backend-user-row b{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis}
.backend-user-row small{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.backend-full-btn{width:100%}


/* GOOGLE DRIVE PLAN SYNC v20 */
.backend-field-label{
  display:block;color:var(--muted);font-size:8px;text-transform:uppercase;
  letter-spacing:.05em;margin:11px 0 5px
}
.drive-oauth-fields{display:none;gap:8px;margin-top:10px}
.drive-oauth-fields.show{display:grid}
.drive-status-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:10px
}
.drive-error{
  display:none;margin-top:9px;padding:9px 10px;border-radius:10px;
  background:color-mix(in srgb,var(--red) 10%,var(--surface2));
  border:1px solid color-mix(in srgb,var(--red) 28%,var(--line));
  color:var(--red);font-size:9px;line-height:1.4
}
.drive-error.show{display:block}
.manual-plan-card{
  border-color:color-mix(in srgb,var(--orange) 28%,var(--line));
  background:linear-gradient(145deg,color-mix(in srgb,var(--orange) 6%,var(--surface)),var(--surface))
}


/* PRIVATE GOOGLE DRIVE OAUTH v21 */
.private-drive-state{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:11px;border:1px solid var(--line);background:var(--surface2);border-radius:13px;margin:10px 0
}
.private-drive-icon{
  width:36px;height:36px;border-radius:11px;background:var(--surface3);display:grid;place-items:center;
  font-size:16px;font-weight:950;color:var(--text)
}
.private-drive-state b{display:block;font-size:11px}
.private-drive-state small{display:block;color:var(--muted);font-size:8px;line-height:1.35;margin-top:2px}
.oauth-client-box{display:grid;gap:8px;margin:10px 0}
.drive-connect-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.drive-connect-actions button{min-height:42px}
.danger-text{color:var(--red)!important;border-color:color-mix(in srgb,var(--red) 28%,var(--line))!important}


/* ACCURATE EXCEL WORKOUT v22 */
.current-exercise-card .exercise-label{
  line-height:1.35;
  white-space:normal;
}
.current-set-header span{
  text-align:right;
  max-width:62%;
  line-height:1.3;
}


/* REAL EXCEL SCREENS + BLOCK FLOW v23 */
.today-source-note{
  padding:10px 12px;margin-bottom:10px;border:1px solid var(--line);border-radius:12px;
  background:var(--surface2);color:var(--muted);font-size:9px
}
.actual-excel-block .block-head h3{text-transform:none}
.actual-exercise-row .actual-order{
  width:25px;height:25px;border-radius:8px;background:var(--surface3);
  display:grid;place-items:center;font-size:9px;color:var(--muted)
}
.actual-note{color:var(--muted)}
.workout-block-context{padding:12px;margin-bottom:10px}
.workout-block-context-top{
  display:flex;justify-content:space-between;gap:10px;align-items:center
}
.workout-block-context-top span:first-child{
  display:block;color:var(--muted);font-size:8px;text-transform:uppercase
}
.workout-block-context-top strong{display:block;font-size:14px;margin-top:2px}
.workout-round-info{
  margin-top:8px;padding:7px 8px;border-radius:9px;background:var(--greenSoft);
  color:var(--green);font-size:9px;font-weight:850
}
.workout-block-moves{display:grid;gap:5px;margin-top:8px}
.workout-block-move{
  display:grid;grid-template-columns:23px minmax(0,1fr) auto;gap:7px;align-items:center;
  padding:7px 8px;border:1px solid var(--line);border-radius:9px;background:var(--surface2)
}
.workout-block-move.active{
  border-color:color-mix(in srgb,var(--green) 40%,var(--line));
  background:var(--greenSoft)
}
.workout-block-move > span{
  width:23px;height:23px;border-radius:7px;background:var(--surface3);
  display:grid;place-items:center;font-size:8px
}
.workout-block-move b{font-size:10px}
.workout-block-move small{font-size:8px;color:var(--muted);text-align:right}


/* UNIFIED PLAN BLOCK UI v24 */
.shared-plan-list{display:grid;gap:10px}
.shared-plan-block{
  overflow:hidden;border:1px solid var(--line);background:var(--surface);
  border-radius:15px;margin-bottom:10px
}
.shared-plan-head{
  display:flex;justify-content:space-between;gap:10px;align-items:center;
  padding:11px 12px;border-bottom:1px solid var(--line)
}
.shared-plan-title{display:flex;gap:9px;align-items:center;min-width:0}
.shared-plan-index{
  width:30px;height:30px;flex:0 0 auto;border-radius:9px;background:var(--greenSoft);
  color:var(--green);display:grid;place-items:center;font-size:10px;font-weight:950
}
.shared-plan-title h3{margin:0;font-size:12px}
.shared-plan-title p{margin:2px 0 0;color:var(--muted);font-size:8px;line-height:1.3}
.shared-plan-body{padding:0 12px}
.shared-plan-exercise{
  display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:8px;align-items:center;
  padding:9px 0;border-bottom:1px solid var(--line)
}
.shared-plan-exercise:last-child{border-bottom:0}
.shared-plan-order{
  width:25px;height:25px;border-radius:8px;background:var(--surface3);
  color:var(--muted);display:grid;place-items:center;font-size:8px;font-weight:850
}
.shared-plan-exercise-main b{display:block;font-size:10px}
.shared-plan-exercise-main small{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.shared-video{color:var(--blue);text-decoration:none;font-size:11px}
.shared-plan-links,.shared-plan-notes{
  padding:8px 12px;border-top:1px solid var(--line);font-size:8px;color:var(--muted)
}
.shared-plan-links a{color:var(--blue);text-decoration:none;margin-right:8px}
.home-today-block-preview{border-top:1px solid var(--line);padding-top:10px}
.home-shared-plan-block{
  background:transparent;border-color:color-mix(in srgb,var(--line) 80%,transparent);
  box-shadow:none;margin-bottom:7px
}
.home-shared-plan-block .shared-plan-head{padding:8px 9px}
.home-shared-plan-block .shared-plan-body{padding:0 9px}
.home-shared-plan-block .shared-plan-exercise{padding:7px 0}
.home-shared-plan-block .shared-plan-title h3{font-size:10px}
.home-shared-plan-block .shared-plan-title p{font-size:7px}
.home-shared-plan-block .shared-plan-exercise-main b{font-size:9px}
.home-shared-plan-block .shared-plan-exercise-main small{font-size:7px}
.home-shared-plan-block .shared-plan-index{width:25px;height:25px}


/* TRAINER ADMIN v25 */
.trainer-top-btn{font-weight:950;color:var(--green)}
.trainer-head{
  display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px
}
.trainer-head h1{font-size:27px;margin:4px 0}
.trainer-head p{margin:0;color:var(--muted);font-size:10px}
.trainer-tabs{
  display:flex;gap:7px;overflow:auto;scrollbar-width:none;margin-bottom:12px
}
.trainer-tabs button{
  border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;
  padding:9px 12px;font-size:10px;font-weight:850;white-space:nowrap
}
.trainer-tabs button.active{background:var(--greenSoft);color:var(--green);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}
.trainer-tabs span{margin-left:4px;opacity:.75}
.trainer-two-col{display:grid;grid-template-columns:1fr;gap:10px}
.trainer-panel{padding:13px}
.trainer-panel-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:11px}
.trainer-panel-head h2{margin:0;font-size:15px}
.trainer-panel-head p{margin:3px 0 0;color:var(--muted);font-size:9px;line-height:1.4}
.trainer-label{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.05em;margin:9px 0 5px}
.trainer-input,.trainer-textarea{
  width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--text);
  border-radius:10px;padding:9px 10px;outline:none;font-size:10px
}
.trainer-textarea{min-height:72px;resize:vertical}
.trainer-full{width:100%;margin-top:10px}
.trainer-client-list,.trainer-program-list{display:grid;gap:7px}
.trainer-client-card{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;
  padding:10px;border:1px solid var(--line);background:var(--surface2);border-radius:12px
}
.trainer-avatar{
  width:37px;height:37px;border-radius:11px;background:var(--greenSoft);color:var(--green);
  display:grid;place-items:center;font-weight:900;font-size:10px
}
.trainer-card-main b,.trainer-program-card b{display:block;font-size:11px}
.trainer-card-main small,.trainer-program-card small{display:block;color:var(--muted);font-size:8px;margin-top:3px}
.trainer-program-card{
  width:100%;display:flex;justify-content:space-between;gap:10px;align-items:center;
  border:1px solid var(--line);background:var(--surface2);color:var(--text);
  border-radius:12px;padding:11px;text-align:left
}
.trainer-program-right{text-align:right}
.trainer-program-right small{margin-top:4px}
.trainer-editor-toolbar{
  display:grid;grid-template-columns:1fr 110px;gap:8px;margin-bottom:10px
}
.trainer-day-tabs{
  grid-column:1/-1;display:grid;grid-template-columns:repeat(7,1fr);gap:5px
}
.trainer-day-tabs button{
  border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:9px 3px;font-size:9px;font-weight:850
}
.trainer-day-tabs button.active{background:var(--greenSoft);color:var(--green);border-color:color-mix(in srgb,var(--green) 35%,var(--line))}
.trainer-day-meta{padding:12px;margin-bottom:10px}
.trainer-day-statusbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}
.trainer-day-statusbar span:first-child{display:block;color:var(--muted);font-size:8px;text-transform:uppercase}
.trainer-day-statusbar strong{display:block;font-size:13px;margin-top:2px}
.trainer-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.trainer-block{padding:11px;margin-bottom:10px}
.trainer-block-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:start}
.trainer-block-number{
  width:29px;height:29px;border-radius:9px;background:var(--greenSoft);color:var(--green);
  display:grid;place-items:center;font-weight:900;font-size:10px
}
.trainer-block-fields{display:grid;gap:6px}
.trainer-block-mini{display:grid;grid-template-columns:1.2fr .7fr .7fr;gap:6px}
.trainer-reorder{display:flex;gap:4px}
.trainer-reorder button{
  width:29px;height:29px;border:1px solid var(--line);background:var(--surface2);border-radius:8px;font-size:10px;font-weight:900
}
.trainer-reorder button.danger{color:var(--red)}
.trainer-exercise-list{display:grid;gap:7px;margin:10px 0}
.trainer-exercise{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:start;
  padding:9px;border:1px solid var(--line);background:var(--surface2);border-radius:11px
}
.trainer-exercise-order{
  width:24px;height:24px;border-radius:7px;background:var(--surface3);display:grid;place-items:center;
  color:var(--muted);font-size:8px;font-weight:900
}
.trainer-exercise-fields{display:grid;gap:5px}
.trainer-exercise-targets{display:grid;grid-template-columns:1.25fr repeat(5,.75fr);gap:5px}
.trainer-add-exercise,.trainer-add-block{
  width:100%;border:1px dashed color-mix(in srgb,var(--green) 45%,var(--line));background:var(--greenSoft);
  color:var(--green);border-radius:11px;padding:10px;font-size:10px;font-weight:900
}
.trainer-add-block{margin-bottom:10px;padding:12px}
.trainer-block-extra{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.trainer-preview{padding:12px;margin-bottom:86px}
.trainer-preview-block{
  border:1px solid var(--line);background:var(--surface2);border-radius:11px;overflow:hidden;margin-bottom:7px
}
.trainer-preview-head{
  display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line)
}
.trainer-preview-head b{font-size:10px}.trainer-preview-head span{font-size:9px;color:var(--green);font-weight:900}
.trainer-preview-ex{
  display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line)
}
.trainer-preview-ex:last-child{border-bottom:0}
.trainer-preview-ex span{
  width:22px;height:22px;border-radius:7px;background:var(--surface3);display:grid;place-items:center;font-size:8px;color:var(--muted)
}
.trainer-preview-ex b{font-size:9px}.trainer-preview-ex small{font-size:8px;color:var(--muted)}
.trainer-editor-actions{
  position:fixed;left:0;right:0;bottom:calc(74px + env(safe-area-inset-bottom));z-index:48;
  max-width:880px;margin:auto;padding:8px 12px;display:grid;grid-template-columns:1fr 1fr;gap:8px;
  background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(16px);
  border:1px solid var(--line);border-radius:15px 15px 0 0
}
.trainer-editor-actions button{min-height:45px}
.trainer-empty{padding:18px;text-align:center}.trainer-empty p{color:var(--muted);font-size:10px}
.trainer-empty-small{padding:13px;color:var(--muted);font-size:9px;text-align:center}
@media(min-width:780px){
  .trainer-two-col{grid-template-columns:1.4fr .8fr}
  .trainer-editor-toolbar{grid-template-columns:1fr 140px 1.6fr}
  .trainer-day-tabs{grid-column:auto}
}
@media(max-width:620px){
  .trainer-head{display:block}.trainer-head>button{margin-top:8px}
  .trainer-meta-grid{grid-template-columns:1fr}
  .trainer-block-mini{grid-template-columns:1fr 1fr 1fr}
  .trainer-exercise-targets{grid-template-columns:1fr 1fr 1fr}
  .trainer-block-extra{grid-template-columns:1fr}
}

/* TRAINER IMPORT + SERIES EDITOR v26 */
.trainer-import-panel{padding:13px;margin-top:10px;border-color:color-mix(in srgb,var(--blue) 28%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--blue) 6%,var(--surface)),var(--surface))}
.trainer-import-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.trainer-import-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:11px 0}
.trainer-import-summary>div{padding:9px;border:1px solid var(--line);background:var(--surface2);border-radius:10px;text-align:center}
.trainer-import-summary b{display:block;font-size:14px}.trainer-import-summary span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase;margin-top:2px}
.trainer-import-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.trainer-import-actions button{min-height:42px}
.trainer-prescriptions{margin-top:7px;border:1px solid var(--line);background:var(--surface);border-radius:10px;overflow:hidden}
.trainer-prescriptions summary{cursor:pointer;list-style:none;padding:8px 9px;font-size:9px;font-weight:850;display:flex;gap:7px;align-items:center}
.trainer-prescriptions summary::-webkit-details-marker{display:none}.trainer-prescriptions summary span{padding:3px 6px;border-radius:999px;background:var(--greenSoft);color:var(--green)}
.trainer-prescriptions summary small{margin-left:auto;color:var(--muted);font-weight:600;text-align:right}
.trainer-prescription-list{display:grid;gap:5px;padding:7px;border-top:1px solid var(--line)}
.trainer-prescription-row{display:grid;grid-template-columns:24px 1fr repeat(6,.72fr) 28px;gap:5px;align-items:center}
.trainer-series-no{width:24px;height:24px;border-radius:7px;background:var(--surface3);display:grid;place-items:center;color:var(--muted);font-size:8px;font-weight:900}
.trainer-series-remove{width:28px;height:28px;border:1px solid color-mix(in srgb,var(--red) 30%,var(--line));background:var(--surface2);color:var(--red);border-radius:8px;font-weight:900}
.trainer-add-series{width:100%;border:0;border-top:1px solid var(--line);background:var(--surface2);color:var(--green);padding:8px;font-size:9px;font-weight:850}
@media(max-width:760px){
  .trainer-import-grid{grid-template-columns:1fr}.trainer-import-summary{grid-template-columns:repeat(3,1fr)}
  .trainer-prescription-row{grid-template-columns:24px 1fr 1fr 1fr 28px}.trainer-prescription-row .p-rir,.trainer-prescription-row .p-rpe,.trainer-prescription-row .p-rest,.trainer-prescription-row .p-duration{grid-column:auto}
  .trainer-prescription-row{overflow-x:auto}
}


/* PUBLISHED TRAINER PROGRAM SOURCE v27 */
.client-source-banner{
  padding:10px 12px;margin-bottom:10px;border-radius:13px;
  border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));
  background:var(--greenSoft)
}
.client-source-banner strong{display:block;color:var(--green);font-size:10px}
.client-source-banner span{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.trainer-db-banner{
  border-color:color-mix(in srgb,var(--green) 40%,var(--line))!important;
  background:var(--greenSoft)!important
}


/* ROLES + INVITATIONS v28 */
.account-role-badges{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}
.account-role{
  padding:4px 6px;border-radius:999px;font-size:8px;font-weight:900;
  background:var(--surface3);color:var(--muted)
}
.account-role.trainer{background:var(--greenSoft);color:var(--green)}
.account-role.client{background:color-mix(in srgb,var(--blue) 12%,transparent);color:var(--blue)}
.trainer-client-card-v28{
  padding:10px;border:1px solid var(--line);background:var(--surface2);border-radius:12px
}
.trainer-client-main-row{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center
}
.trainer-client-actions{
  display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;padding-top:8px;border-top:1px solid var(--line)
}
.trainer-client-actions button{
  border:1px solid var(--line);background:var(--surface);border-radius:9px;
  padding:7px 9px;font-size:9px;font-weight:850
}
.trainer-client-actions button.primary-mini{background:var(--green);color:white;border-color:var(--green)}
.link-state{font-size:8px;color:var(--muted)}
.link-state.linked{color:var(--green);font-weight:850}
.link-state.pending{color:var(--orange);font-weight:850}
.invite-sheet{max-width:520px}
.invite-card{
  padding:14px;border:1px solid var(--line);background:var(--surface2);border-radius:14px;margin:10px 0
}
.invite-card h3{margin:0 0 4px;font-size:15px}
.invite-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.45}
.invite-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0}
.invite-meta div{padding:9px;background:var(--surface3);border-radius:10px}
.invite-meta span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}
.invite-meta strong{display:block;font-size:10px;margin-top:3px}
.invite-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.invite-actions button{min-height:42px}
.invite-link-box{
  margin-top:8px;padding:9px;border:1px dashed var(--line);border-radius:10px;
  font-size:9px;color:var(--muted);word-break:break-all
}


/* TRAINER CLIENT RESULTS v29 */
.trainer-results-toolbar{
  display:grid;grid-template-columns:1fr 120px 1fr;gap:8px;margin-bottom:10px
}
.trainer-results-summary{
  display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:10px
}
.trainer-results-summary>div{
  padding:11px;border:1px solid var(--line);background:var(--surface);border-radius:12px
}
.trainer-results-summary span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}
.trainer-results-summary strong{display:block;font-size:16px;margin-top:4px}
.trainer-results-client{
  padding:11px 12px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:10px
}
.trainer-results-client span:first-child{display:block;color:var(--muted);font-size:8px;text-transform:uppercase}
.trainer-results-client strong{display:block;font-size:12px;margin-top:2px}
.trainer-results-client small{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.trainer-results-unlinked{padding:15px;text-align:center}
.trainer-results-unlinked strong{font-size:12px}.trainer-results-unlinked p{color:var(--muted);font-size:9px}
.trainer-results-list{display:grid;gap:8px}
.trainer-result-card{
  width:100%;padding:12px;text-align:left;color:var(--text);cursor:pointer
}
.trainer-result-top{display:flex;justify-content:space-between;gap:10px}
.trainer-result-program{display:block;color:var(--green);font-size:8px;font-weight:900;text-transform:uppercase}
.trainer-result-top h3{font-size:13px;margin:3px 0}
.trainer-result-top small{color:var(--muted);font-size:8px}
.trainer-result-rpe{text-align:center;min-width:43px;padding:6px;border-radius:10px;background:var(--surface2)}
.trainer-result-rpe span{display:block;color:var(--muted);font-size:7px}.trainer-result-rpe strong{font-size:16px}
.trainer-result-metrics{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.trainer-result-metrics span{padding:5px 7px;border-radius:999px;background:var(--surface3);font-size:8px;color:var(--muted)}
.trainer-client-feedback{
  padding:11px 12px;margin:10px 0;border-left:3px solid var(--green);background:var(--greenSoft);border-radius:0 11px 11px 0
}
.trainer-client-feedback span{font-size:8px;text-transform:uppercase;color:var(--green);font-weight:900}
.trainer-client-feedback p{margin:4px 0 0;font-size:10px;line-height:1.45}
.trainer-plan-vs-actual{display:grid;gap:9px}
.trainer-result-exercise{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.trainer-result-ex-head{display:flex;justify-content:space-between;gap:10px;padding:10px;background:var(--surface2)}
.trainer-result-ex-head b{display:block;font-size:11px}.trainer-result-ex-head small{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.trainer-result-ex-head>span{font-size:9px;color:var(--green);font-weight:900}
.trainer-compare-head,.trainer-compare-row{
  display:grid;grid-template-columns:38px minmax(0,1fr) minmax(0,1fr) 24px;gap:6px;align-items:center;padding:7px 9px
}
.trainer-compare-head{color:var(--muted);font-size:7px;text-transform:uppercase;border-bottom:1px solid var(--line)}
.trainer-compare-row{font-size:8px;border-bottom:1px solid var(--line)}
.trainer-compare-row:last-child{border-bottom:0}
.trainer-compare-row strong{font-size:9px}
@media(max-width:620px){
  .trainer-results-toolbar{grid-template-columns:1fr 100px}.trainer-results-toolbar #resultsSearch{grid-column:1/-1}
  .trainer-results-summary{grid-template-columns:1fr 1fr}
}


/* TRAINER ↔ CLIENT FEEDBACK v30 */
.trainer-feedback-count{
  display:inline-flex;margin:0 0 8px;padding:5px 7px;border-radius:999px;
  background:var(--greenSoft);color:var(--green);font-size:8px;font-weight:850
}
.trainer-feedback-loading,.trainer-feedback-error,.trainer-feedback-empty{
  padding:12px;margin-top:10px;border:1px dashed var(--line);border-radius:11px;
  color:var(--muted);font-size:9px;text-align:center
}
.trainer-feedback-box{
  margin-top:12px;padding:12px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));
  background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 50%,var(--surface)),var(--surface));
  border-radius:14px
}
.trainer-feedback-head{
  display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:9px
}
.trainer-feedback-head span:first-child{display:block;color:var(--green);font-size:8px;text-transform:uppercase;font-weight:900}
.trainer-feedback-head strong{display:block;font-size:13px;margin-top:2px}
.trainer-feedback-list{display:grid;gap:6px;margin-bottom:10px}
.trainer-feedback-item{
  padding:9px;border:1px solid var(--line);background:var(--surface2);border-radius:10px
}
.trainer-feedback-item-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.trainer-feedback-item b{font-size:9px}
.trainer-feedback-item small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.trainer-feedback-item p{margin:6px 0 0;font-size:9px;line-height:1.45}
.trainer-feedback-item-actions{display:flex;gap:4px}
.trainer-feedback-item-actions button{
  border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:5px 6px;font-size:7px
}
.trainer-feedback-item-actions button.danger{color:var(--red)}
.trainer-feedback-text{min-height:88px}
.trainer-feedback-compose-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.trainer-feedback-compose-actions button{min-height:40px}
.client-feedback-badge{
  padding:5px 7px!important;border-radius:999px!important;background:var(--surface3)!important;
  color:var(--muted)!important;font-size:8px!important;font-weight:850
}
.client-feedback-badge.unread{
  background:var(--greenSoft)!important;color:var(--green)!important
}
.client-trainer-feedback{
  margin-top:12px;padding:12px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));
  background:var(--greenSoft);border-radius:14px
}
.client-feedback-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:9px}
.client-feedback-title span:first-child{display:block;color:var(--green);font-size:8px;text-transform:uppercase;font-weight:900}
.client-feedback-title strong{display:block;font-size:13px;margin-top:2px}
.client-feedback-list{display:grid;gap:7px}
.client-feedback-item{
  padding:10px;border:1px solid color-mix(in srgb,var(--green) 20%,var(--line));
  background:var(--surface);border-radius:10px
}
.client-feedback-target{font-size:8px;color:var(--green);font-weight:900;text-transform:uppercase}
.client-feedback-item p{margin:5px 0;font-size:10px;line-height:1.5}
.client-feedback-item small{color:var(--muted);font-size:7px}
.client-feedback-loading,.client-feedback-empty{padding:7px;color:var(--muted);font-size:9px;text-align:center}


/* PROGRAM CALENDAR v31 */
.trainer-calendar-panel{padding:13px;margin-bottom:10px}
.trainer-calendar-top{display:grid;grid-template-columns:1.35fr .8fr;gap:8px}
.trainer-calendar-stats{
  display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0
}
.trainer-calendar-stats>div{
  padding:9px;border:1px solid var(--line);background:var(--surface2);border-radius:10px
}
.trainer-calendar-stats span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}
.trainer-calendar-stats strong{display:block;font-size:10px;margin-top:3px;line-height:1.35}
.trainer-calendar-actions{display:flex;gap:6px;flex-wrap:wrap}
.trainer-calendar-actions button{min-height:38px}
.trainer-calendar-note{
  margin-top:9px;padding:8px 10px;border-radius:9px;background:color-mix(in srgb,var(--orange) 10%,var(--surface2));
  color:var(--muted);font-size:8px
}
.trainer-editor-calendar{
  padding:10px 12px;margin-bottom:9px;display:flex;justify-content:space-between;gap:10px;align-items:center
}
.trainer-editor-calendar span{display:block;color:var(--green);font-size:8px;font-weight:900;text-transform:uppercase}
.trainer-editor-calendar strong{display:block;font-size:12px;margin-top:2px}
.trainer-editor-calendar small{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.program-calendar-banner{
  display:flex;justify-content:space-between;gap:10px;align-items:center;
  margin-bottom:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));
  background:var(--greenSoft);border-radius:13px
}
.program-calendar-banner span{display:block;color:var(--green);font-size:7px;font-weight:950;text-transform:uppercase}
.program-calendar-banner strong{display:block;font-size:10px;margin-top:2px}
.program-calendar-banner small{display:block;color:var(--muted);font-size:8px;margin-top:2px}
.program-calendar-banner.paused{
  border-color:color-mix(in srgb,var(--orange) 35%,var(--line));
  background:color-mix(in srgb,var(--orange) 8%,var(--surface))
}
.program-calendar-banner.paused span{color:var(--orange)}
.program-calendar-banner.upcoming,.program-calendar-banner.completed{background:var(--surface2);border-color:var(--line)}
.program-calendar-banner.upcoming span,.program-calendar-banner.completed span{color:var(--muted)}
.program-calendar-date{font-size:10px;font-weight:900;white-space:nowrap}
@media(max-width:620px){
  .trainer-calendar-top{grid-template-columns:1fr}
  .trainer-calendar-stats{grid-template-columns:1fr 1fr}
  .trainer-editor-calendar{align-items:flex-start;flex-direction:column}
  .trainer-editor-calendar button{width:100%}
}


/* NORMALIZED RESULTS / EXERCISE LIBRARY / COPY / DASHBOARD v32-v35 */
.exercise-library-layout{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:10px
}
.exercise-library-list,.exercise-library-editor{padding:13px}
.exercise-library-tools{display:grid;grid-template-columns:1fr auto;gap:7px;margin-bottom:9px}
.exercise-library-items{display:grid;gap:6px;max-height:620px;overflow:auto}
.exercise-library-card{
  width:100%;display:flex;justify-content:space-between;gap:10px;align-items:center;
  padding:10px;border:1px solid var(--line);background:var(--surface2);color:var(--text);
  border-radius:11px;text-align:left
}
.exercise-library-card.active{
  border-color:color-mix(in srgb,var(--green) 45%,var(--line));background:var(--greenSoft)
}
.exercise-library-card b{display:block;font-size:10px}
.exercise-library-card small{display:block;margin-top:3px;color:var(--muted);font-size:8px;line-height:1.35}
.exercise-library-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}
.exercise-library-usage{margin-top:13px;padding-top:10px;border-top:1px solid var(--line)}
.exercise-library-usage h3{font-size:11px;margin:0 0 7px}
.library-usage-row{
  display:flex;justify-content:space-between;gap:9px;align-items:center;
  padding:8px 0;border-bottom:1px solid var(--line)
}
.library-usage-row:last-child{border-bottom:0}
.library-usage-row b{display:block;font-size:9px}
.library-usage-row small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.library-usage-row>span{font-size:7px;color:var(--muted);text-align:right}

.trainer-copy-panel,.trainer-copy-program-panel{padding:12px;margin-bottom:10px}
.trainer-copy-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.trainer-copy-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.trainer-copy-actions button{min-height:38px}
.trainer-copy-note{margin-top:7px;color:var(--muted);font-size:8px}
.trainer-reorder button[data-block-copy],
.trainer-reorder button[data-block-duplicate]{color:var(--blue)}

.trainer-dashboard-toolbar{
  display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:10px
}
.trainer-dashboard-toolbar>div{
  margin-right:auto;padding:8px 10px;border-radius:10px;background:var(--surface2);border:1px solid var(--line)
}
.trainer-dashboard-toolbar>div span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}
.trainer-dashboard-toolbar>div strong{display:block;font-size:10px;margin-top:2px}
.trainer-dashboard-toolbar label{font-size:8px;color:var(--muted)}
.trainer-dashboard-toolbar select{
  margin-left:5px;border:1px solid var(--line);background:var(--surface2);color:var(--text);
  border-radius:8px;padding:7px;font-size:9px
}
.trainer-dashboard-kpis{
  display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-bottom:10px
}
.trainer-dashboard-kpi{
  padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)
}
.trainer-dashboard-kpi span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}
.trainer-dashboard-kpi strong{display:block;font-size:20px;margin:3px 0}
.trainer-dashboard-kpi small{display:block;color:var(--muted);font-size:7px}
.trainer-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.trainer-dashboard-section{padding:12px;min-width:0}
.trainer-dashboard-empty{padding:13px;color:var(--muted);font-size:9px;text-align:center}
.trainer-dashboard-row{
  width:100%;display:flex;justify-content:space-between;gap:10px;align-items:center;
  padding:9px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--text);text-align:left
}
.trainer-dashboard-row:last-child{border-bottom:0}
.trainer-dashboard-row b{display:block;font-size:9px}
.trainer-dashboard-row small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.trainer-dashboard-row.warning b{color:var(--orange)}
.dashboard-reason{
  max-width:120px;padding:5px 7px;border-radius:999px;background:color-mix(in srgb,var(--orange) 10%,var(--surface2));
  color:var(--orange);font-size:7px;font-weight:850;text-align:right
}
.trainer-dashboard-note{
  width:100%;padding:9px;margin-bottom:6px;border:1px solid var(--line);
  background:var(--surface2);border-radius:10px;color:var(--text);text-align:left
}
.trainer-dashboard-note-head{display:flex;justify-content:space-between;gap:8px}
.trainer-dashboard-note-head b{font-size:9px}
.trainer-dashboard-note-head span{font-size:7px;color:var(--muted)}
.trainer-dashboard-note p{margin:5px 0;font-size:9px;line-height:1.4}
.trainer-dashboard-note small{font-size:7px;color:var(--muted)}
.trainer-dashboard-pr{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;
  padding:8px 0;border-bottom:1px solid var(--line)
}
.trainer-dashboard-pr:last-child{border-bottom:0}
.trainer-pr-star{
  width:28px;height:28px;border-radius:9px;background:var(--greenSoft);color:var(--green);
  display:grid;place-items:center;font-size:12px
}
.trainer-dashboard-pr b{display:block;font-size:9px}
.trainer-dashboard-pr small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.trainer-dashboard-pr>strong{font-size:9px;white-space:nowrap}

@media(max-width:900px){
  .trainer-dashboard-kpis{grid-template-columns:repeat(3,1fr)}
  .exercise-library-layout{grid-template-columns:1fr}
}
@media(max-width:620px){
  .trainer-dashboard-toolbar{align-items:stretch;flex-wrap:wrap}
  .trainer-dashboard-toolbar>div{width:100%;margin-right:0}
  .trainer-dashboard-kpis{grid-template-columns:1fr 1fr}
  .trainer-dashboard-grid{grid-template-columns:1fr}
  .exercise-library-tools{grid-template-columns:1fr}
  .trainer-copy-grid{grid-template-columns:1fr}
  .trainer-dashboard-pr{grid-template-columns:auto minmax(0,1fr)}
  .trainer-dashboard-pr>strong{grid-column:2}
}


/* NOTIFICATION CENTER v38 */
.notification-top-btn{position:relative;font-size:16px}
#notificationsBadge{
  position:absolute;right:-2px;top:-3px;min-width:16px;height:16px;padding:0 4px;
  border-radius:999px;background:var(--red);color:white;display:none;place-items:center;
  font-size:7px;font-weight:950;border:2px solid var(--surface)
}
#notificationsBadge.show{display:grid}
.notifications-sheet{max-width:560px}
.notifications-toolbar{
  display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px
}
.notifications-toolbar span{font-size:8px;color:var(--muted)}
.notifications-toolbar button{font-size:8px}
#notificationsList{display:grid;gap:6px;max-height:65vh;overflow:auto}
.notification-item{
  width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:start;
  border:1px solid var(--line);background:var(--surface2);color:var(--text);
  padding:10px;border-radius:11px;text-align:left
}
.notification-item.unread{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 30%,var(--line))}
.notification-icon{
  width:31px;height:31px;border-radius:9px;background:var(--surface3);display:grid;place-items:center;
  font-size:12px;font-weight:900
}
.notification-item.unread .notification-icon{background:var(--green);color:white}
.notification-main span{display:block;color:var(--green);font-size:7px;font-weight:900;text-transform:uppercase}
.notification-main b{display:block;font-size:10px;margin-top:2px}
.notification-main p{margin:4px 0;font-size:8px;color:var(--muted);line-height:1.4}
.notification-main small{font-size:7px;color:var(--muted)}
.notification-item>i{width:7px;height:7px;border-radius:50%;background:var(--green);margin-top:5px}
.notification-empty{padding:20px;text-align:center;color:var(--muted);font-size:9px}


/* ANALYTICS v39 */
.analytics-toolbar{display:flex;gap:8px;justify-content:space-between;align-items:center;margin-bottom:10px}
.analytics-toolbar>div span{display:block;color:var(--green);font-size:8px;font-weight:900;text-transform:uppercase}
.analytics-toolbar>div strong{font-size:14px}
.analytics-toolbar select{max-width:300px}
.analytics-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-bottom:10px}
.analytics-summary>div{padding:10px;border:1px solid var(--line);background:var(--surface);border-radius:12px}
.analytics-summary span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}
.analytics-summary strong{display:block;font-size:16px;margin-top:3px}
.analytics-summary small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.analytics-card{padding:12px;min-width:0}
.analytics-wide{grid-column:1/-1}
.analytics-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:9px}
.analytics-card-head h2{margin:0;font-size:14px}.analytics-card-head p{margin:3px 0 0;font-size:8px;color:var(--muted)}
.analytics-exercise-select{max-width:260px}
.analytics-bars{height:165px;display:flex;gap:5px;align-items:flex-end;padding-top:22px}
.analytics-bar-col{flex:1;min-width:24px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}
.analytics-bar-value{font-size:6px;color:var(--muted);height:15px;white-space:nowrap}
.analytics-bar-track{height:120px;width:100%;max-width:28px;background:var(--surface3);border-radius:7px;display:flex;align-items:flex-end;overflow:hidden}
.analytics-bar-track i{display:block;width:100%;background:var(--green);border-radius:7px 7px 0 0}
.analytics-bar-col small{font-size:7px;color:var(--muted);margin-top:4px}
.analytics-exercise-kpis{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:9px}
.analytics-exercise-kpis span{padding:6px 8px;border-radius:999px;background:var(--surface2);font-size:8px;color:var(--muted)}
.analytics-exercise-kpis b{color:var(--text)}
.analytics-trend{height:170px;display:flex;align-items:flex-end;gap:5px;border-bottom:1px solid var(--line);padding:20px 4px 0}
.analytics-trend-point{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;min-width:20px}
.analytics-trend-point i{width:70%;max-width:22px;background:var(--green);border-radius:6px 6px 0 0;display:block}
.analytics-trend-point span{font-size:7px;font-weight:900;margin-top:3px}.analytics-trend-point small{font-size:6px;color:var(--muted)}
.analytics-pr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.analytics-pr{padding:9px;border:1px solid var(--line);background:var(--surface2);border-radius:10px}
.analytics-pr span{display:block;font-size:8px;color:var(--muted)}.analytics-pr strong{display:block;font-size:12px;margin-top:3px}.analytics-pr small{display:block;font-size:7px;color:var(--muted);margin-top:2px}
.analytics-empty,.analytics-empty-card{padding:16px;text-align:center;color:var(--muted);font-size:9px}
@media(max-width:700px){
  .analytics-summary{grid-template-columns:1fr 1fr}
  .analytics-grid{grid-template-columns:1fr}
  .analytics-wide{grid-column:auto}
  .analytics-pr-grid{grid-template-columns:1fr 1fr}
  .analytics-toolbar{align-items:stretch;flex-direction:column}
  .analytics-toolbar select{max-width:none}
}


/* TRAINER TEMPLATES v40 */
.template-layout{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.template-create-panel,.template-apply-panel,.template-list-panel{padding:12px}
.template-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.template-create-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:9px}
.template-hint{margin-top:8px;color:var(--muted);font-size:8px;line-height:1.4}
.template-filter-row{display:flex;gap:5px;overflow:auto;margin-bottom:9px}
.template-cards{display:grid;gap:7px}
.template-card{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;
  padding:10px;border:1px solid var(--line);background:var(--surface2);border-radius:11px
}
.template-card-icon{
  width:32px;height:32px;border-radius:9px;background:var(--greenSoft);color:var(--green);
  display:grid;place-items:center;font-size:13px;font-weight:900
}
.template-card-main span{display:block;color:var(--green);font-size:7px;font-weight:900;text-transform:uppercase}
.template-card-main b{display:block;font-size:10px;margin-top:2px}.template-card-main small{display:block;font-size:7px;color:var(--muted);margin-top:2px}
.template-card-actions{display:flex;gap:5px}
.template-card-actions button{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:6px 8px;font-size:8px;font-weight:850}
.template-card-actions .primary-mini{background:var(--green);color:white;border-color:var(--green)}
.template-card-actions .danger{color:var(--red)}
@media(max-width:700px){
  .template-layout{grid-template-columns:1fr}
  .template-create-actions{grid-template-columns:1fr}
  .template-card{grid-template-columns:auto minmax(0,1fr)}
  .template-card-actions{grid-column:2}
}


/* PRODUCTION ACCOUNT UI v41 */
.production-account-actions{display:flex;justify-content:flex-end;margin-top:6px}
.production-account-actions .linkbtn{font-size:8px}


/* TRAINER CLEANUP / DELETE v42.5 */
.trainer-program-card-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:stretch}
.trainer-program-card-row .trainer-program-card{width:100%}
.trainer-delete-btn,
.trainer-client-actions .danger{
  border:1px solid color-mix(in srgb,var(--red) 35%,var(--line));
  background:color-mix(in srgb,var(--red) 7%,var(--surface));
  color:var(--red);border-radius:9px;padding:7px 9px;font-size:8px;font-weight:850
}
.trainer-delete-btn{align-self:stretch;min-width:58px}
@media(max-width:620px){
  .trainer-program-card-row{grid-template-columns:1fr}
  .trainer-delete-btn{min-height:36px}
}

/* COACH CLIENT WORKSPACE v43 */
.client-workspace-hero{padding:14px;display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}
.client-workspace-hero.archived{border-color:color-mix(in srgb,var(--orange) 35%,var(--line));opacity:.9}
.client-workspace-identity{display:flex;gap:11px;align-items:center;min-width:0}
.client-workspace-avatar{width:48px;height:48px;min-width:48px;border-radius:15px;background:var(--greenSoft);color:var(--green);display:grid;place-items:center;font-size:16px;font-weight:950}
.client-workspace-state{font-size:7px;color:var(--green);font-weight:950;letter-spacing:.06em}
.client-workspace-identity h1{margin:2px 0;font-size:18px}.client-workspace-identity p{margin:0;color:var(--muted);font-size:8px}
.client-workspace-hero-actions{display:flex;gap:6px;flex-wrap:wrap}
.client-workspace-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-bottom:10px}
.client-workspace-kpis>div{padding:10px;border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:0}
.client-workspace-kpis>div.attention{border-color:color-mix(in srgb,var(--orange) 45%,var(--line));background:color-mix(in srgb,var(--orange) 7%,var(--surface))}
.client-workspace-kpis span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase}.client-workspace-kpis strong{display:block;font-size:12px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-workspace-kpis small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.client-workspace-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:10px;margin-bottom:10px}
.client-workspace-grid>section{padding:12px;min-width:0}
.client-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.client-profile-wide{grid-column:1/-1}.client-profile-grid textarea{min-height:72px}.private-notes textarea{min-height:105px}.private-notes small{display:block;color:var(--muted);font-size:7px;margin-top:3px}
.client-linked-account{margin:8px 0;padding:8px;border-radius:9px;background:var(--greenSoft);color:var(--green);font-size:8px}
.client-program-main{padding:10px;border:1px solid color-mix(in srgb,var(--green) 28%,var(--line));background:var(--greenSoft);border-radius:11px}.client-program-main h3{font-size:14px;margin:5px 0 2px}.client-program-main p{font-size:8px;color:var(--muted);margin:0}
.client-program-metrics{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0}.client-program-metrics span{padding:5px 7px;border-radius:999px;background:var(--surface);font-size:7px;color:var(--muted)}
.client-program-actions{display:flex;gap:6px;flex-wrap:wrap}.client-program-actions button{min-height:36px}
.client-program-list{display:grid;gap:5px;margin-top:8px}.client-program-row{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:8px;border-bottom:1px solid var(--line)}.client-program-row:last-child{border-bottom:0}.client-program-row.archived{opacity:.65}.client-program-row b{display:block;font-size:9px}.client-program-row small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.workspace-week-days{display:grid;gap:6px}.workspace-day{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:9px}.workspace-day.published{border-color:color-mix(in srgb,var(--green) 25%,var(--line))}.workspace-day b{font-size:9px}.workspace-day small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.workspace-attention-list{display:grid;gap:6px}.workspace-attention-row{display:flex;justify-content:space-between;gap:10px;padding:9px;border-bottom:1px solid var(--line);font-size:9px}.workspace-attention-row.warn{background:color-mix(in srgb,var(--orange) 7%,transparent);border-radius:8px;color:var(--orange)}
.workspace-workout{width:100%;display:flex;justify-content:space-between;gap:10px;text-align:left;color:var(--text);padding:9px 0;border:0;border-bottom:1px solid var(--line);background:none}.workspace-workout:last-child{border-bottom:0}.workspace-workout b{font-size:9px}.workspace-workout small{display:block;color:var(--muted);font-size:7px;margin-top:2px}.workspace-workout p{margin:4px 0 0;color:var(--muted);font-size:8px;line-height:1.35}.workspace-workout>span{font-size:9px;color:var(--green);font-weight:900}
.workspace-pr-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.workspace-pr-row:last-child{border-bottom:0}.workspace-pr-row b{font-size:9px}.workspace-pr-row small{display:block;color:var(--muted);font-size:7px;margin-top:2px}.workspace-pr-row strong{font-size:9px;white-space:nowrap}
.workspace-open-row{cursor:pointer;border-radius:9px}.workspace-open-row:hover{background:var(--surface3)}
.archived-clients-panel{padding:12px;margin-top:10px}.archived-client-list{display:grid;gap:6px}.archived-client-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px;border:1px solid var(--line);background:var(--surface2);border-radius:10px}.archived-client-row b{font-size:9px}.archived-client-row small{display:block;color:var(--muted);font-size:7px;margin-top:2px}.archived-client-row>div:last-child{display:flex;gap:5px}
@media(max-width:900px){.client-workspace-kpis{grid-template-columns:repeat(3,1fr)}.client-workspace-grid{grid-template-columns:1fr}}
@media(max-width:620px){.client-workspace-hero{align-items:flex-start;flex-direction:column}.client-workspace-hero-actions{width:100%}.client-workspace-hero-actions button{width:100%}.client-workspace-kpis{grid-template-columns:1fr 1fr}.client-profile-grid{grid-template-columns:1fr}.client-profile-wide{grid-column:auto}.archived-client-row{align-items:flex-start;flex-direction:column}.archived-client-row>div:last-child{width:100%}.archived-client-row button{flex:1}}


/* === UX FOUNDATION v44 === */
/* Goal: one clear action at a time, readable typography, fewer competing surfaces. */
:root{--content-client:820px;--content-trainer:1180px;--touch:44px}
body{font-size:15px;line-height:1.45}
.shell{max-width:var(--content-trainer)}
.page{max-width:var(--content-client);margin:0 auto;padding:20px 18px 28px}
#screen-trainer{margin-left:calc((var(--content-client) - var(--content-trainer))/2);margin-right:calc((var(--content-client) - var(--content-trainer))/2)}
#screen-trainer.active{display:block}
.topbar{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
.toprow{max-width:var(--content-trainer);margin:auto}
.brand strong{font-size:16px}.brand small{font-size:12px}
.iconbtn{min-width:44px;height:44px;box-shadow:none}
.trainer-top-btn{width:auto!important;padding:0 14px!important;font-size:13px!important;font-weight:850!important;color:var(--green)!important}
.hero{margin:10px 0 22px}.hero h1,h1{font-size:clamp(30px,5vw,42px);line-height:1.04}.sub{font-size:14px;max-width:700px}
.card{box-shadow:0 5px 18px rgba(0,0,0,.08)}
.primary,.secondary{min-height:var(--touch);font-size:14px}
.primary{width:auto;min-width:150px;padding:12px 18px}
.linkbtn{font-size:13px;min-height:36px}
.row b{font-size:14px}.row small{font-size:12px}
.badge{font-size:11px}

/* Client side: primary task is today's workout. */
#screen-overview .hero .sub,#screen-today .hero .sub,#screen-plan .hero .sub,#screen-history .hero .sub,#screen-performance .hero .sub{max-width:620px}
.today{padding:18px;border-radius:18px}.today h2{font-size:24px}.today p{font-size:13px}
.quick{padding:16px;box-shadow:none}.quick b{font-size:15px}.quick small{font-size:12px}
.program-card{padding:18px}.program-card h2{font-size:23px}.program-card p{font-size:13px}
.week-chip{min-width:112px;padding:12px}.week-chip b{font-size:14px}.week-chip span{font-size:11px}
.plan-day-tab{min-width:86px;padding:11px 9px}.plan-day-tab b{font-size:13px}.plan-day-tab span{font-size:11px}
.block-head{padding:16px}.block-head p,.trainer-note p,.coach-card p{font-size:13px}
.exercise-row .right strong{font-size:14px}.exercise-row .right small{font-size:11px}
.historytop strong{font-size:15px}.historytop span,.chip{font-size:11px}
.workout-card{padding:18px}.exercise-name{font-size:21px}.setline{grid-template-columns:40px 1fr 1fr 48px;gap:10px;padding:10px 0}.setbox{min-height:44px;font-size:16px}.checkbtn{width:46px;height:46px}

/* Client bottom navigation: large enough to read and tap, no visual noise. */
.bottomnav{padding-top:8px}.bottominner{max-width:var(--content-client);gap:6px}
.navbtn{min-height:54px;padding:7px 4px}.navbtn span{font-size:18px}.navbtn small{font-size:11px;margin-top:2px;font-weight:750}

/* Trainer shell / navigation */
.trainer-shell{max-width:var(--content-trainer);margin:0 auto}
.trainer-head{margin-bottom:18px}
.trainer-head h1{font-size:34px!important}.trainer-head p,.trainer-head .sub{font-size:13px!important}
.trainer-nav-v44{position:sticky;top:69px;z-index:35;margin:0 0 20px;padding:6px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:16px}
.trainer-nav-main-v44{display:flex;gap:5px;align-items:center;min-width:0}
.trainer-nav-main-v44>button,.trainer-more-v44>summary{min-height:42px;border:0;border-radius:11px;background:transparent;color:var(--muted);padding:0 14px;font-size:13px;font-weight:800;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:7px}
.trainer-nav-main-v44>button span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--surface3);font-size:10px}
.trainer-nav-main-v44>button.active,.trainer-more-v44.active>summary{background:var(--greenSoft);color:var(--green)}
.trainer-more-v44{position:relative;margin-left:auto}.trainer-more-v44>summary{list-style:none}.trainer-more-v44>summary::-webkit-details-marker{display:none}
.trainer-more-menu-v44{position:absolute;right:0;top:48px;z-index:50;width:210px;padding:7px;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);display:grid;gap:3px}
.trainer-more-menu-v44 button{border:0;background:transparent;color:var(--text);text-align:left;min-height:40px;padding:8px 10px;border-radius:9px;font-size:13px;cursor:pointer}.trainer-more-menu-v44 button:hover{background:var(--surface2)}

/* Trainer legacy readability guard: old modules used 7-10px fonts. */
#trainerRoot{font-size:14px}
#trainerRoot p,#trainerRoot small{font-size:12px;line-height:1.45}
#trainerRoot h2{font-size:20px}#trainerRoot h3{font-size:16px}
#trainerRoot input,#trainerRoot select,#trainerRoot textarea{font-size:14px;min-height:42px}
#trainerRoot button{font-size:13px}
.trainer-panel,.trainer-card,.trainer-program-card,.trainer-client-card-v28,.template-create-panel,.template-apply-panel,.template-list-panel{box-shadow:none}
.trainer-panel-head h2{font-size:18px!important}.trainer-panel-head p{font-size:12px!important}
.trainer-empty,.trainer-empty-small{font-size:13px!important;line-height:1.5}

/* Dashboard v44 */
.dashboard-hero-v44{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:16px}
.dashboard-hero-v44>div:first-child span{display:block;font-size:12px;color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.dashboard-hero-v44>div:first-child strong{display:block;font-size:28px;margin-top:2px}.dashboard-hero-v44 p{margin:3px 0 0;color:var(--muted);font-size:13px}
.dashboard-hero-actions-v44{display:flex;align-items:flex-end;gap:8px}.dashboard-hero-actions-v44 label{font-size:11px;color:var(--muted)}.dashboard-hero-actions-v44 select{display:block;margin-top:4px;min-height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:0 9px}
.dashboard-kpis-v44{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.dashboard-kpis-v44 .trainer-kpi{padding:16px!important;min-height:108px!important;border-radius:15px!important;box-shadow:none!important}
.dashboard-kpis-v44 .trainer-kpi span{font-size:11px!important}.dashboard-kpis-v44 .trainer-kpi strong{font-size:28px!important;margin-top:8px!important}.dashboard-kpis-v44 .trainer-kpi small{font-size:11px!important}
.dashboard-layout-v44{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dashboard-primary-v44{padding:17px;min-width:0}
.dashboard-subsection-title-v44{margin:16px 0 6px;font-size:11px;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.empty-inline-v44{padding:24px 12px;text-align:center;color:var(--muted);font-size:13px;border:1px dashed var(--line);border-radius:12px}.empty-inline-v44.success{color:var(--green);background:var(--greenSoft)}
.dashboard-prs-v44{padding:17px;margin-top:12px}.dashboard-pr-grid-v44{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}

/* Clients v44: status-first list. */
.clients-overview-v44{margin-bottom:14px}
.clients-overview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.clients-overview-head h2{font-size:28px!important;margin:2px 0 3px}.clients-overview-head p{margin:0;color:var(--muted);font-size:13px!important}.client-add-cta{width:auto!important;white-space:nowrap}
.client-list-v44{display:grid;gap:8px}.client-row-v44{overflow:hidden;border:1px solid var(--line);background:var(--surface);border-radius:15px}
.client-row-main-v44{width:100%;min-height:76px;border:0;background:transparent;color:var(--text);display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:13px;padding:12px 14px;text-align:left;cursor:pointer}
.client-row-main-v44:hover{background:var(--surface2)}
.client-row-copy{min-width:0}.client-row-copy strong{display:block;font-size:15px}.client-row-copy span{display:block;color:var(--muted);font-size:12px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-row-programs{text-align:center;min-width:54px}.client-row-programs b{display:block;font-size:16px}.client-row-programs span{display:block;font-size:10px;color:var(--muted)}
.client-row-chevron{font-size:25px;color:var(--muted)}
.onboarding-status{display:inline-flex;align-items:center;min-height:30px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:850;white-space:nowrap}.onboarding-status.ok{background:var(--greenSoft);color:var(--green)}.onboarding-status.pending{background:color-mix(in srgb,var(--blue) 15%,transparent);color:var(--blue)}.onboarding-status.warn{background:color-mix(in srgb,var(--orange) 15%,transparent);color:var(--orange)}.onboarding-status.muted{background:var(--surface3);color:var(--muted)}
.client-row-actions-v44{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:8px 12px;border-top:1px solid var(--line);background:var(--surface2)}.client-row-actions-v44>span{margin-right:auto;color:var(--muted);font-size:11px}.client-row-actions-v44 button{min-height:36px!important;padding:7px 10px!important}
.quiet-danger{border:0;background:transparent;color:var(--red);cursor:pointer;font-weight:800}
.empty-state-v44{padding:40px 18px;text-align:center;border:1px dashed var(--line);border-radius:16px;background:var(--surface)}.empty-state-icon{width:54px;height:54px;margin:auto;border-radius:17px;background:var(--greenSoft);color:var(--green);display:grid;place-items:center;font-size:28px}.empty-state-v44 h3{font-size:19px!important;margin:12px 0 4px}.empty-state-v44 p{max-width:440px;margin:0 auto 16px;color:var(--muted);font-size:13px!important}.compact-archive-v44{padding:14px;box-shadow:none}

/* Onboarding: one guided flow, large touch targets. */
#inviteOverlay .sheet{max-width:720px}
.onboarding-sheet-title h2{font-size:24px!important}.client-onboarding-intro{display:flex;align-items:center;gap:13px;padding:14px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}
.client-onboarding-avatar,.onboarding-success-icon{width:52px;height:52px;min-width:52px;border-radius:16px;background:var(--greenSoft);color:var(--green);display:grid;place-items:center;font-size:19px;font-weight:950}.client-onboarding-intro strong{display:block;font-size:15px}.client-onboarding-intro p{margin:3px 0 0;color:var(--muted);font-size:12px}
.client-onboarding-form,.trainer-onboarding-form{display:grid;gap:14px}.onboarding-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.onboarding-form-grid label,.onboarding-new-program label{display:grid;gap:5px}.onboarding-form-grid label>span,.onboarding-new-program label>span{font-size:11px;color:var(--muted);font-weight:800}.onboarding-wide{grid-column:1/-1}.onboarding-form-grid textarea{min-height:80px!important;resize:vertical}.compact-fields{margin-top:8px}
.onboarding-step{display:flex;align-items:center;gap:10px;margin-top:6px}.onboarding-step>span{width:31px;height:31px;min-width:31px;border-radius:10px;background:var(--greenSoft);color:var(--green);font-weight:950;display:grid;place-items:center}.onboarding-step strong{display:block;font-size:14px}.onboarding-step small{display:block;color:var(--muted);font-size:11px;margin-top:1px}
.onboarding-main-cta{width:100%!important;min-height:50px}.onboarding-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.onboarding-actions button{width:100%!important;min-height:46px}.invite-link-box{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.45;word-break:break-all}.onboarding-success-copy{margin:10px 0}.onboarding-success-copy h3{font-size:18px!important}.onboarding-success-copy p{color:var(--muted);font-size:13px!important}
.client-onboarding-consents{display:grid;gap:8px}.client-onboarding-consents label{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);font-size:12px}.client-onboarding-consents input{width:18px;height:18px;min-height:auto!important;margin-top:1px}

/* Coach Workspace readability pass */
.client-workspace-state{font-size:11px}.client-workspace-identity h1{font-size:25px}.client-workspace-identity p{font-size:12px}.client-workspace-kpis span{font-size:10px}.client-workspace-kpis strong{font-size:18px}.client-workspace-kpis small{font-size:10px}.client-program-main h3{font-size:18px}.client-program-main p,.client-program-row small,.workspace-day small,.workspace-workout small,.workspace-pr-row small,.private-notes small{font-size:11px}.client-program-metrics span{font-size:11px}.client-program-row b,.workspace-day b,.workspace-workout b,.workspace-pr-row b,.workspace-pr-row strong{font-size:13px}.workspace-workout p{font-size:12px}.workspace-attention-row{font-size:12px}.archived-client-row b{font-size:13px}.archived-client-row small{font-size:11px}

@media(max-width:900px){
  .page{max-width:none}.dashboard-kpis-v44{grid-template-columns:1fr 1fr}.dashboard-layout-v44{grid-template-columns:1fr}
  #screen-trainer{margin:0}.trainer-nav-v44{top:68px;overflow:visible}.trainer-nav-main-v44{overflow-x:auto;scrollbar-width:none}.trainer-nav-main-v44::-webkit-scrollbar{display:none}.trainer-more-v44{margin-left:0}
}
@media(max-width:640px){
  body{font-size:14px}.page{padding:14px 12px 22px}.brand small{display:none}.logo{width:38px;height:38px}.actions{gap:5px}.iconbtn{min-width:40px;width:40px;height:40px}.trainer-top-btn{padding:0 10px!important}
  .hero{margin-bottom:17px}.hero h1,h1{font-size:30px}.sub{font-size:13px}
  .bottomnav{padding-left:6px;padding-right:6px}.navbtn small{font-size:10px}.navbtn span{font-size:17px}
  .dashboard-hero-v44{align-items:flex-start;flex-direction:column}.dashboard-hero-actions-v44{width:100%;justify-content:space-between}.dashboard-kpis-v44{grid-template-columns:1fr 1fr}.dashboard-kpis-v44 .trainer-kpi{min-height:92px!important;padding:13px!important}.dashboard-kpis-v44 .trainer-kpi strong{font-size:24px!important}
  .trainer-nav-v44{margin-left:-4px;margin-right:-4px}.trainer-nav-main-v44>button,.trainer-more-v44>summary{padding:0 10px;font-size:12px}
  .clients-overview-head{align-items:stretch;flex-direction:column}.client-add-cta{width:100%!important}.client-row-main-v44{grid-template-columns:auto minmax(0,1fr) auto;padding:11px}.client-row-programs{display:none}.onboarding-status{grid-column:2;justify-self:start}.client-row-chevron{grid-row:1/3;grid-column:3;align-self:center}.client-row-actions-v44{align-items:stretch;flex-wrap:wrap}.client-row-actions-v44>span{width:100%;margin:0}.client-row-actions-v44 button{flex:1}
  .onboarding-form-grid{grid-template-columns:1fr}.onboarding-wide{grid-column:auto}.onboarding-actions{grid-template-columns:1fr}
  .client-workspace-kpis{grid-template-columns:1fr 1fr}.client-workspace-grid{grid-template-columns:1fr}
  .program-meta,.plan-summary{grid-template-columns:1fr 1fr}.daystats{grid-template-columns:1fr 1fr}.detailgrid{grid-template-columns:1fr 1fr}.quickgrid{grid-template-columns:1fr}
}

/* v44 onboarding small-control polish */
.onboarding-consent{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);font-size:12px;line-height:1.4;cursor:pointer}
.onboarding-consent input{width:18px;height:18px;min-height:auto!important;margin:1px 0 0;flex:0 0 auto;accent-color:var(--green)}
.onboarding-login-link{border:0;background:transparent;color:var(--green);min-height:40px;font-weight:850;cursor:pointer}
.onboarding-inline-note{padding:13px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);color:var(--muted);font-size:13px}
.invite-meta.clean{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.invite-meta.clean>div{padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--surface2)}.invite-meta.clean span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.invite-meta.clean strong{display:block;margin-top:4px;font-size:13px;overflow-wrap:anywhere}
.onboarding-new-program{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
@media(max-width:640px){.invite-meta.clean{grid-template-columns:1fr}.onboarding-consent{font-size:13px}}

/* =========================================================
   v45 UX PASS 2 — CLIENT TODAY / WORKOUT / TRAINER EDITOR
   ========================================================= */

/* Client shell is intentionally calmer than trainer workspace. */
.client-page-head-v45{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin:4px 0 18px}
.client-page-head-v45>div>span{display:block;color:var(--muted);font-size:12px;text-transform:capitalize}
.client-page-head-v45 h1{font-size:34px;margin:4px 0 5px;letter-spacing:-.045em}
.client-page-head-v45 p{margin:0;color:var(--muted);font-size:13px}
.client-status-v45{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;background:var(--greenSoft);color:var(--green);font-size:11px;font-weight:900;white-space:nowrap}
.client-status-v45.paused{background:color-mix(in srgb,var(--orange) 14%,transparent);color:var(--orange)}
.client-status-v45.upcoming,.client-status-v45.completed{background:var(--surface3);color:var(--muted)}

.today-main-v45{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow);margin-bottom:16px}
.today-main-top-v45{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.today-main-top-v45 span{display:block;color:var(--green);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.055em}
.today-main-top-v45 h2{font-size:27px;margin:4px 0 0;letter-spacing:-.035em}
.today-main-top-v45>b{font-size:11px;color:var(--muted);background:var(--surface3);padding:7px 9px;border-radius:999px;white-space:nowrap}
.today-metrics-v45{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}
.today-metrics-v45>div{padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface2)}
.today-metrics-v45 span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.today-metrics-v45 strong{display:block;font-size:18px;margin-top:4px}
.coach-note-v45{padding:13px 14px;border-left:3px solid var(--green);background:var(--surface2);border-radius:0 13px 13px 0;margin:14px 0}
.coach-note-v45 span{display:block;color:var(--green);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.coach-note-v45 p{margin:5px 0 0;font-size:13px;line-height:1.5}
.today-start-v45{min-height:54px;font-size:15px;margin-top:4px}
.today-start-v45:disabled{opacity:.45;cursor:not-allowed}
.today-plan-link-v45{display:block;width:100%;min-height:44px;border:0;background:transparent;color:var(--muted);font-weight:800;cursor:pointer;margin-top:4px}
.today-content-v45{margin-top:20px}.section-title-v45{margin-bottom:10px}.section-title-v45 span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:850}.section-title-v45 h2{font-size:20px;margin:3px 0 0}

.resume-v45{padding:16px;border:1px solid color-mix(in srgb,var(--green) 36%,var(--line));border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 70%,var(--surface)),var(--surface));margin-bottom:14px}
.resume-v45>div:first-child>span{font-size:10px;color:var(--green);font-weight:900;text-transform:uppercase}.resume-v45 h2{font-size:20px;margin:4px 0 2px}.resume-v45 p{margin:0;color:var(--muted);font-size:12px}
.resume-progress-v45{height:7px;background:var(--surface3);border-radius:999px;overflow:hidden;margin:12px 0}.resume-progress-v45 i{display:block;height:100%;background:var(--green);border-radius:inherit}
.resume-actions-v45{display:grid;grid-template-columns:1fr auto;gap:8px}.resume-actions-v45 .primary{min-height:48px}.resume-actions-v45 .secondary{min-width:92px}

.client-empty-card-v45{padding:34px 22px;border:1px solid var(--line);border-radius:20px;background:var(--surface);text-align:center;box-shadow:var(--shadow)}
.client-empty-icon-v45{width:58px;height:58px;border-radius:18px;background:var(--greenSoft);color:var(--green);display:grid;place-items:center;margin:0 auto 12px;font-size:28px;font-weight:900}
.client-empty-card-v45 h2{font-size:21px;margin:0 0 7px}.client-empty-card-v45 p{max-width:430px;margin:0 auto 16px;color:var(--muted);font-size:13px;line-height:1.55}.client-empty-v45{padding:24px;border:1px dashed var(--line);border-radius:15px;color:var(--muted);text-align:center}

/* Shared plan cards: larger type, fewer decorative labels. */
.plan-block-v45{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface);margin-bottom:10px}
.plan-block-head-v45{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;border-bottom:1px solid var(--line)}
.plan-block-title-v45{display:flex;align-items:center;gap:11px;min-width:0}.plan-block-title-v45>span{width:34px;height:34px;min-width:34px;border-radius:11px;background:var(--greenSoft);color:var(--green);display:grid;place-items:center;font-weight:950}
.plan-block-title-v45 h3{font-size:14px;margin:0}.plan-block-title-v45 small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.plan-block-head-v45>b{font-size:10px;color:var(--muted);white-space:nowrap;font-weight:850}
.plan-exercises-v45{padding:0 14px}.plan-exercise-v45{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.plan-exercise-v45:last-child{border-bottom:0}
.plan-exercise-v45>span{width:28px;height:28px;border-radius:9px;background:var(--surface3);display:grid;place-items:center;color:var(--muted);font-size:10px;font-weight:900}.plan-exercise-v45 strong{display:block;font-size:13px}.plan-exercise-v45 small{display:block;color:var(--muted);font-size:11px;margin-top:3px;line-height:1.35}.plan-exercise-v45>a{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--surface2);border:1px solid var(--line);text-decoration:none;color:var(--green)}
.plan-links-v45,.plan-note-v45{padding:11px 14px;border-top:1px solid var(--line);font-size:11px}.plan-links-v45 a{color:var(--blue);text-decoration:none}.plan-note-v45{color:var(--muted);line-height:1.45;background:var(--surface2)}
.plan-block-v45.compact .plan-block-head-v45{padding:10px 11px}.plan-block-v45.compact .plan-exercise-v45{padding:9px 0}

/* Workout: one decision at a time. */
body.workout-active{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
body.workout-active .page{padding:0 12px 16px}
.workout-v45{max-width:680px;margin:0 auto;padding-top:calc(10px + env(safe-area-inset-top))}
.workout-head-v45{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;margin-bottom:9px}
.workout-head-v45>button{width:42px;height:42px;border-radius:13px;border:1px solid var(--line);background:var(--surface);font-weight:900;cursor:pointer}.workout-head-v45 div{min-width:0}.workout-head-v45 div span{display:block;color:var(--muted);font-size:10px}.workout-head-v45 div strong{display:block;font-size:13px;margin-top:2px}.workout-head-v45 time{font-size:16px;font-weight:900;font-variant-numeric:tabular-nums}
.workout-progress-v45{height:6px;border-radius:999px;background:var(--surface3);overflow:hidden;margin-bottom:12px}.workout-progress-v45 i{display:block;height:100%;background:var(--green);border-radius:inherit;transition:width .2s ease}
.workout-task-v45{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}
.workout-context-v45{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px}.workout-context-v45 span{font-size:10px;color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.055em}.workout-context-v45 b{font-size:10px;color:var(--muted);background:var(--surface3);padding:5px 8px;border-radius:999px}
.workout-task-v45 h1{font-size:31px;line-height:1.05;margin:5px 0 4px;letter-spacing:-.045em}.workout-step-v45{color:var(--muted);font-size:12px}
.target-v45{margin:16px 0;padding:13px 14px;border-radius:14px;background:var(--greenSoft);border:1px solid color-mix(in srgb,var(--green) 25%,var(--line))}.target-v45 span{display:block;color:var(--green);font-size:9px;text-transform:uppercase;font-weight:900}.target-v45 strong{display:block;font-size:17px;margin-top:3px}.target-v45 small{display:block;margin-top:4px;color:color-mix(in srgb,var(--text) 70%,var(--muted));font-size:10px;line-height:1.35}
.actual-fields-v45{display:grid;grid-template-columns:1fr 1fr;gap:10px}.actual-fields-v45>label{display:block}.actual-fields-v45>label>span{display:block;color:var(--muted);font-size:10px;font-weight:800;margin:0 0 5px}.actual-fields-v45>label>div{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:5px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);padding:6px}.actual-fields-v45 button{width:44px;height:46px;border:1px solid var(--line);border-radius:11px;background:var(--surface);font-size:19px;font-weight:900}.actual-fields-v45 input{min-width:0;width:100%;border:0;background:transparent;color:var(--text);text-align:center;outline:none;font-size:20px;font-weight:950}
.copy-prev-v45{width:100%;margin-top:10px;min-height:40px;border:1px solid var(--line);background:var(--surface2);color:var(--muted);border-radius:11px;font-size:11px;font-weight:800;cursor:pointer}
.rest-v45{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;margin-bottom:10px;border:1px solid color-mix(in srgb,var(--orange) 35%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--orange) 9%,var(--surface))}.rest-v45>div:first-child span{display:block;color:var(--orange);font-size:9px;text-transform:uppercase;font-weight:900}.rest-v45>div:first-child strong{display:block;font-size:28px;font-variant-numeric:tabular-nums}.rest-v45>div:last-child{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.rest-v45 button{min-height:36px;padding:6px 9px;border-radius:9px;border:1px solid var(--line);background:var(--surface);font-size:10px;font-weight:800}
.workout-block-detail-v45{margin:10px 0;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.workout-block-detail-v45>summary{display:flex;justify-content:space-between;gap:12px;padding:12px 13px;cursor:pointer;font-size:11px;font-weight:850}.workout-block-detail-v45>summary span{color:var(--muted);font-weight:650}.workout-block-detail-v45>div{padding:0 13px 7px;border-top:1px solid var(--line)}.workout-move-v45{display:grid;grid-template-columns:27px 1fr;gap:8px;padding:9px 0;border-bottom:1px solid var(--line)}.workout-move-v45:last-child{border-bottom:0}.workout-move-v45>span{width:27px;height:27px;border-radius:8px;background:var(--surface3);display:grid;place-items:center;font-size:9px;color:var(--muted)}.workout-move-v45 b{display:block;font-size:12px}.workout-move-v45 small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.workout-move-v45.active b{color:var(--green)}
.workout-secondary-v45{display:flex;justify-content:center;gap:8px;margin:10px 0}.workout-secondary-v45 button{min-height:38px;border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:800;cursor:pointer}.workout-note-inline-v45{display:none}.workout-note-inline-v45.open{display:block}.workout-note-inline-v45 textarea{width:100%;min-height:74px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--text);padding:11px;resize:vertical;outline:none}.workout-spacer-v45{height:80px}
.workout-actions-v45{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(680px,100%);z-index:80;display:grid;grid-template-columns:48px 1fr 86px;gap:7px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(18px);border-top:1px solid var(--line)}.workout-actions-v45 button{min-height:52px;border-radius:13px;font-weight:900;cursor:pointer}.workout-actions-v45 .main{border:0;background:var(--green);color:white;font-size:14px}.workout-actions-v45 .quiet{border:1px solid var(--line);background:var(--surface);font-size:11px}.workout-actions-v45 button:disabled{opacity:.35;cursor:not-allowed}

.finish-workout-v45{max-width:620px;margin:0 auto;padding:calc(16px + env(safe-area-inset-top)) 2px 30px;text-align:center}.workout-back-link-v45{display:block;border:0;background:transparent;color:var(--muted);font-weight:800;min-height:40px;margin:0 0 10px;padding:0;cursor:pointer}.finish-check-v45{width:68px;height:68px;border-radius:22px;background:var(--greenSoft);color:var(--green);display:grid;place-items:center;margin:8px auto 12px;font-size:34px;font-weight:950}.finish-workout-v45>span{color:var(--green);font-size:10px;text-transform:uppercase;font-weight:900}.finish-workout-v45 h1{font-size:34px;margin:5px 0 7px}.finish-workout-v45>p{max-width:460px;margin:0 auto 18px;color:var(--muted);font-size:13px;line-height:1.55}.finish-summary-v45{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px}.finish-summary-v45>div{padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.finish-summary-v45 span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.finish-summary-v45 strong{display:block;font-size:20px;margin-top:3px}.finish-rpe-v45{padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-align:left}.finish-rpe-v45 label{display:block;font-size:12px;font-weight:900}.finish-rpe-v45 label small{display:block;color:var(--muted);font-size:10px;font-weight:500;margin-top:2px}.finish-rpe-v45 #opRpe{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin-top:11px}.finish-rpe-v45 #opRpe button{min-width:0;height:38px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);font-size:11px;font-weight:900}.finish-rpe-v45 #opRpe button.active{background:var(--green);border-color:var(--green);color:#fff}.finish-note-v45{display:block;text-align:left;margin:10px 0 14px;font-size:11px;font-weight:900}.finish-note-v45 textarea{display:block;width:100%;min-height:88px;margin-top:6px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);padding:12px;resize:vertical;outline:none}.finish-save-v45{min-height:54px;font-size:15px}.finish-leave-v45{width:100%;min-height:44px;margin-top:7px}

/* Trainer editor: hierarchy before density. */
.editor-shell-v45{display:grid;gap:12px}
.editor-selector-v45{padding:14px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}
.editor-program-row-v45{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:9px}.editor-program-row-v45 label>span,.editor-day-settings-body-v45 label>span,.editor-block-settings-v45 label>span,.editor-primary-fields-v45 label>span,.editor-advanced-grid-v45 label>span,.editor-tools-body-v45 label>span{display:block;color:var(--muted);font-size:10px;font-weight:800;margin-bottom:5px}
.editor-week-meta-v45{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:11px 0 8px}.editor-week-meta-v45>div span{display:block;color:var(--green);font-size:9px;font-weight:900;text-transform:uppercase}.editor-week-meta-v45>div strong{display:block;font-size:13px;margin-top:2px}.editor-save-state-v45{font-size:10px;color:var(--muted);font-weight:850}.editor-save-state-v45.dirty{color:var(--orange)}
.editor-days-v45{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.editor-days-v45 button{min-height:50px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);cursor:pointer}.editor-days-v45 button b{display:block;font-size:11px}.editor-days-v45 button span{display:block;font-size:8px;color:var(--muted);margin-top:2px}.editor-days-v45 button.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 40%,var(--line));color:var(--green)}
.editor-day-settings-v45,.editor-tools-v45,.editor-preview-v45{border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}.editor-day-settings-v45>summary,.editor-tools-v45>summary,.editor-preview-v45>summary{list-style:none;cursor:pointer;padding:13px 14px;font-size:12px;font-weight:900}.editor-day-settings-v45>summary::-webkit-details-marker,.editor-tools-v45>summary::-webkit-details-marker,.editor-preview-v45>summary::-webkit-details-marker{display:none}.editor-day-settings-v45>summary{display:flex;justify-content:space-between;align-items:center;gap:12px}.editor-day-settings-v45>summary div span{display:block;color:var(--muted);font-size:9px}.editor-day-settings-v45>summary div strong{display:block;font-size:13px;margin-top:2px}.editor-day-settings-v45>summary>b{font-size:9px;padding:5px 8px;border-radius:999px}.editor-day-settings-v45>summary>b.published{background:var(--greenSoft);color:var(--green)}.editor-day-settings-v45>summary>b.draft{background:color-mix(in srgb,var(--orange) 13%,transparent);color:var(--orange)}
.editor-day-settings-body-v45{display:grid;grid-template-columns:1fr 180px;gap:9px;padding:12px 14px 14px;border-top:1px solid var(--line)}.editor-day-settings-body-v45 .wide{grid-column:1/-1}
.editor-blocks-v45{display:grid;gap:12px}.editor-block-v45{border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.editor-block-head-v45{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;padding:12px 13px;border-bottom:1px solid var(--line)}.editor-block-no-v45{width:38px;height:38px;border-radius:11px;background:var(--greenSoft);color:var(--green);display:grid;place-items:center;font-weight:950}.editor-block-head-v45>.trainer-input{font-size:15px!important;font-weight:900;background:transparent!important;border-color:transparent!important;padding-left:4px!important}.editor-block-head-v45>.trainer-input:focus{background:var(--surface2)!important;border-color:var(--line)!important}
.editor-icon-actions-v45{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.editor-icon-actions-v45 button{width:32px;height:32px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);font-size:11px;font-weight:900;cursor:pointer}.editor-icon-actions-v45 button.danger{color:var(--red)}
.editor-block-settings-v45{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:8px;padding:10px 13px;background:var(--surface2);border-bottom:1px solid var(--line)}
.editor-exercises-v45{display:grid;gap:8px;padding:10px 12px}.editor-exercise-v45{padding:11px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.editor-exercise-top-v45{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center}.editor-exercise-top-v45>span{width:30px;height:30px;border-radius:9px;background:var(--surface3);display:grid;place-items:center;color:var(--muted);font-size:10px;font-weight:900}.editor-exercise-top-v45>.ex-name{font-weight:900;font-size:14px!important;background:var(--surface)!important}
.editor-primary-fields-v45{display:grid;grid-template-columns:1.4fr repeat(3,.8fr);gap:7px;margin-top:9px}.editor-primary-fields-v45 .trainer-input{background:var(--surface)!important}
.editor-advanced-v45,.editor-series-v45,.editor-block-extra-v45{margin-top:8px;border:1px solid var(--line);border-radius:11px;background:var(--surface);overflow:hidden}.editor-advanced-v45>summary,.editor-block-extra-v45>summary{list-style:none;cursor:pointer;padding:9px 10px;font-size:10px;font-weight:850}.editor-advanced-v45>summary::-webkit-details-marker,.editor-block-extra-v45>summary::-webkit-details-marker{display:none}.editor-advanced-v45>summary small{float:right;color:var(--muted);font-weight:600}.editor-advanced-grid-v45{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:9px;border-top:1px solid var(--line)}.editor-advanced-grid-v45 .wide{grid-column:1/-1}.editor-block-extra-v45{margin:0 12px 12px}.editor-block-extra-v45>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:9px;border-top:1px solid var(--line)}
.editor-add-exercise-v45{display:block;width:calc(100% - 24px)!important;margin:0 12px 10px!important;min-height:40px!important;border:1px dashed color-mix(in srgb,var(--green) 35%,var(--line))!important;background:var(--greenSoft)!important;color:var(--green)!important}.editor-add-block-v45{width:100%;min-height:50px;border:1px dashed color-mix(in srgb,var(--green) 45%,var(--line));border-radius:15px;background:var(--greenSoft);color:var(--green);font-weight:900;cursor:pointer}
.editor-tools-body-v45{display:grid;grid-template-columns:1fr 1fr repeat(3,auto);gap:8px;align-items:end;padding:11px 13px;border-top:1px solid var(--line)}.editor-tools-body-v45 button{min-height:43px}.editor-preview-v45>div{padding:12px 13px;border-top:1px solid var(--line)}.editor-preview-block-v45{padding:9px 0;border-bottom:1px solid var(--line)}.editor-preview-block-v45:last-child{border-bottom:0}.editor-preview-block-v45>div{display:flex;justify-content:space-between;gap:10px}.editor-preview-block-v45>div b{font-size:12px}.editor-preview-block-v45>div span{color:var(--muted);font-size:10px}.editor-preview-block-v45 p{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:7px;align-items:center;margin:6px 0 0}.editor-preview-block-v45 p>span{width:24px;height:24px;border-radius:7px;background:var(--surface3);display:grid;place-items:center;font-size:9px;color:var(--muted)}.editor-preview-block-v45 p>b{font-size:11px}.editor-preview-block-v45 p>small{font-size:9px;color:var(--muted);text-align:right}
.editor-action-space-v45{height:74px}.editor-actions-v45{position:sticky;bottom:8px;z-index:35;display:grid;grid-template-columns:1fr 1.25fr auto;gap:7px;padding:8px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px);box-shadow:0 10px 32px rgba(0,0,0,.18)}.editor-actions-v45 button{min-height:46px}.editor-actions-v45 .publish-week{white-space:nowrap}

/* v45 global readability clean-up for client pages */
#screen-plan .hero .sub,#screen-history .hero .sub,#screen-performance .hero .sub{max-width:620px}
#screen-plan .shared-plan-list,.live-plan-root{display:grid;gap:10px}

@media(max-width:760px){
  .client-page-head-v45{align-items:flex-start}.client-status-v45{font-size:10px;min-height:30px}
  .today-main-v45{padding:15px}.today-main-top-v45 h2{font-size:24px}.actual-fields-v45{grid-template-columns:1fr}.workout-task-v45 h1{font-size:28px}
  .finish-rpe-v45 #opRpe{grid-template-columns:repeat(5,1fr)}
  .editor-program-row-v45{grid-template-columns:1fr}.editor-days-v45{gap:4px}.editor-days-v45 button{min-height:46px}.editor-day-settings-body-v45{grid-template-columns:1fr}.editor-day-settings-body-v45 .wide{grid-column:auto}
  .editor-block-head-v45{grid-template-columns:34px minmax(0,1fr)}.editor-block-no-v45{width:34px;height:34px}.editor-block-head-v45 .editor-icon-actions-v45{grid-column:1/-1;justify-content:flex-end;border-top:1px solid var(--line);padding-top:8px}
  .editor-block-settings-v45{grid-template-columns:1.2fr .8fr .8fr}.editor-primary-fields-v45{grid-template-columns:1fr 1fr}.editor-advanced-grid-v45,.editor-block-extra-v45>div{grid-template-columns:1fr}.editor-advanced-grid-v45 .wide{grid-column:auto}
  .editor-tools-body-v45{grid-template-columns:1fr 1fr}.editor-tools-body-v45 button{width:100%}.editor-actions-v45{grid-template-columns:1fr 1fr}.editor-actions-v45 .publish-week{grid-column:1/-1}
}
@media(max-width:480px){
  .client-page-head-v45 h1{font-size:31px}.today-metrics-v45{grid-template-columns:repeat(3,1fr)}.today-metrics-v45>div{padding:9px}.resume-actions-v45{grid-template-columns:1fr}
  .workout-head-v45{grid-template-columns:40px 1fr auto}.workout-head-v45>button{width:40px;height:40px}.workout-head-v45 time{font-size:14px}.workout-task-v45{padding:14px}.target-v45 strong{font-size:15px}.actual-fields-v45>label>div{grid-template-columns:42px 1fr 42px}.actual-fields-v45 button{width:42px}
  .rest-v45{align-items:flex-start;flex-direction:column}.rest-v45>div:last-child{justify-content:flex-start}.workout-actions-v45{grid-template-columns:44px 1fr 76px}.workout-actions-v45 button{min-height:50px}
  .editor-days-v45{grid-template-columns:repeat(7,minmax(38px,1fr));overflow-x:auto}.editor-days-v45 button{min-width:38px;padding:4px}.editor-block-settings-v45{grid-template-columns:1fr 1fr}.editor-block-settings-v45 label:first-child{grid-column:1/-1}.editor-primary-fields-v45{grid-template-columns:1fr 1fr}.editor-icon-actions-v45 button{width:35px;height:35px}.editor-tools-body-v45{grid-template-columns:1fr}.editor-actions-v45{grid-template-columns:1fr}.editor-actions-v45 .publish-week{grid-column:auto}
}
.bottominner{grid-template-columns:repeat(4,1fr)}
.rest-v45.hidden{display:none}


/* ============================================================
   UX PASS 3 v46 — clients, programs, history/results, analytics
   ============================================================ */
#screen-trainer{
  width:min(1180px,calc(100vw - 30px));
  margin-left:50%;
  transform:translateX(-50%);
}
#screen-trainer .trainer-head{
  margin:14px 0 18px;
  display:flex;align-items:flex-end;justify-content:space-between;gap:18px;
}
#screen-trainer .trainer-head h1{font-size:32px;margin:4px 0 5px}
#screen-trainer .trainer-head p{font-size:13px;color:var(--muted);margin:0;max-width:620px}
.trainer-nav-v44{position:sticky;top:70px;z-index:38;margin-bottom:18px;padding:7px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px)}
.trainer-nav-main-v44{gap:5px}
.trainer-nav-main-v44>button,.trainer-more-v44>summary{min-height:42px;padding:9px 13px;font-size:12px;border-radius:11px}
.trainer-nav-main-v44>button.active{background:var(--greenSoft);color:var(--green);border-color:transparent}

.v46-page{display:grid;gap:14px}
.v46-page-head,.v46-results-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
}
.v46-page-head h2,.v46-results-head h2{font-size:28px;letter-spacing:-.035em;margin:3px 0 5px}
.v46-page-head p,.v46-results-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}
.v46-head-cta{width:auto!important;min-width:150px;min-height:46px;padding-inline:18px}
.v46-summary-line{display:flex;gap:8px;flex-wrap:wrap}
.v46-summary-line span{padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:11px;color:var(--muted)}
.v46-summary-line b{color:var(--text);font-size:12px}

.v46-list-toolbar{display:flex;gap:9px;align-items:center}
.v46-list-toolbar.results{display:grid;grid-template-columns:180px minmax(0,1fr)}
.v46-search{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:6px;width:100%;min-height:46px;padding:0 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.v46-search>span{color:var(--muted);font-size:19px}
.v46-search input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:13px}
.v46-search input::placeholder{color:var(--muted)}

.v46-client-list{display:grid;gap:8px}
.v46-client-row{border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}
.v46-client-row[hidden]{display:none}
.v46-client-main{
  width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) 80px auto 22px;gap:12px;align-items:center;
  padding:12px 14px;border:0;background:transparent;text-align:left;cursor:pointer
}
.v46-avatar{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--greenSoft);color:var(--green);font-size:13px;font-weight:950}
.v46-client-copy{min-width:0}
.v46-client-copy strong{display:block;font-size:14px}
.v46-client-copy span,.v46-client-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px;margin-top:3px}
.v46-client-copy small{color:color-mix(in srgb,var(--text) 62%,var(--muted))}
.v46-client-programs{text-align:center}
.v46-client-programs strong{display:block;font-size:16px}.v46-client-programs span{font-size:9px;color:var(--muted)}
.v46-state{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900;background:var(--surface3);color:var(--muted)}
.v46-state.ok{background:var(--greenSoft);color:var(--green)}
.v46-state.wait{background:color-mix(in srgb,var(--blue) 14%,transparent);color:var(--blue)}
.v46-state.warn{background:color-mix(in srgb,var(--orange) 15%,transparent);color:var(--orange)}
.v46-state.muted{background:var(--surface3);color:var(--muted)}
.v46-chevron{font-size:24px;color:var(--muted)}
.v46-inline-action{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:8px 14px;border-top:1px solid var(--line);background:var(--surface2)}
.v46-inline-action>span{margin-right:auto;color:var(--muted);font-size:10px}
.v46-inline-action button{min-height:34px;padding:7px 10px;font-size:10px}
.v46-text-danger{border:0;background:transparent;color:var(--red);font-size:10px;font-weight:850;cursor:pointer;padding:8px}

.v46-empty{padding:36px 18px;text-align:center;border:1px dashed var(--line);border-radius:18px;background:var(--surface)}
.v46-empty>div:first-child{font-size:28px;color:var(--muted)}
.v46-empty h3{font-size:17px;margin:8px 0 5px}.v46-empty p{max-width:480px;margin:0 auto 14px;color:var(--muted);font-size:12px;line-height:1.5}
.v46-empty .primary{width:auto;min-width:180px}
.v46-empty.compact{padding:22px 16px}
.v46-empty.compact h3{margin-top:0}

.v46-tools{border:1px solid var(--line);border-radius:15px;background:var(--surface);overflow:hidden}
.v46-tools>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;cursor:pointer;font-size:12px;font-weight:900}
.v46-tools>summary::-webkit-details-marker{display:none}.v46-tools>summary>span{color:var(--muted)}
.v46-tools-body{padding:14px 15px;border-top:1px solid var(--line)}
.v46-tools-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.v46-tools-head p,.v46-tool-copy{margin:0;color:var(--muted);font-size:11px;line-height:1.5}

.v46-program-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:12px;align-items:start}
.v46-program-sidebar{border:1px solid var(--line);border-radius:17px;background:var(--surface);padding:10px;display:grid;gap:9px}
.v46-program-list{display:grid;gap:6px;max-height:610px;overflow:auto}
.v46-program-row{
  display:grid;grid-template-columns:minmax(0,1fr) 50px auto;gap:8px;align-items:center;width:100%;padding:11px;
  border:1px solid transparent;border-radius:13px;background:transparent;text-align:left;cursor:pointer
}
.v46-program-row:hover{background:var(--surface2)}.v46-program-row.active{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 28%,var(--line))}
.v46-program-row[hidden]{display:none}
.v46-program-row>div:first-child{min-width:0}.v46-program-row strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v46-program-row span{display:block;font-size:9px;color:var(--muted);margin-top:3px}
.v46-program-row>div:nth-child(2){text-align:center}.v46-program-row>div:nth-child(2) b{display:block;font-size:13px}.v46-program-row>div:nth-child(2) small{font-size:8px;color:var(--muted)}
.v46-program-detail{display:grid;gap:10px}
.v46-program-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--greenSoft) 38%,var(--surface)),var(--surface))}
.v46-program-hero h3{font-size:23px;letter-spacing:-.03em;margin:7px 0 4px}.v46-program-hero p{margin:0;color:var(--muted);font-size:11px}
.v46-program-hero>.primary{width:auto;min-width:140px}
.v46-program-kpis,.v46-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.v46-program-kpis>div,.v46-metrics>div{padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.v46-program-kpis span,.v46-metrics span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em}
.v46-program-kpis strong,.v46-metrics strong{display:block;margin-top:5px;font-size:18px;letter-spacing:-.025em}
.v46-metrics small{display:block;color:var(--muted);font-size:8px;margin-top:3px;line-height:1.3}
.v46-metrics>div.attention{border-color:color-mix(in srgb,var(--orange) 35%,var(--line));background:color-mix(in srgb,var(--orange) 7%,var(--surface))}
.v46-metrics>div.focus{background:var(--greenSoft);border-color:color-mix(in srgb,var(--green) 25%,var(--line))}
.v46-program-actions-card,.v46-analytics-main,.v46-panel{border:1px solid var(--line);border-radius:17px;background:var(--surface);padding:14px}
.v46-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:11px}.v46-section-head h3{font-size:15px}.v46-section-head p{font-size:10px;color:var(--muted);margin:3px 0 0}
.v46-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.v46-action-grid button{min-height:44px}
.v46-action-grid.secondary-actions{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:10px}
.v46-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.v46-form-grid label>span,.v46-results-client-select label>span,.v46-analytics-filters label>span{display:block;color:var(--muted);font-size:9px;font-weight:850;margin:0 0 5px}
.v46-contained-cta{width:auto!important;min-width:190px;margin-top:12px}
.v46-import-summary{margin:11px 0!important}

.v46-results-head{padding-bottom:2px}
.v46-results-client-select{min-width:260px}
.v46-result-list{display:grid;gap:7px}
.v46-result-row{
  display:grid;grid-template-columns:112px minmax(0,1fr) auto 56px 18px;gap:12px;align-items:center;width:100%;
  padding:12px 13px;border:1px solid var(--line);border-radius:15px;background:var(--surface);text-align:left;cursor:pointer
}
.v46-result-row:hover{background:var(--surface2)}
.v46-result-date strong{display:block;font-size:10px}.v46-result-date span{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.v46-result-copy{min-width:0}.v46-result-copy>strong{display:block;font-size:13px}.v46-result-copy>span{display:block;color:var(--muted);font-size:9px;margin-top:3px}
.v46-result-progress{height:4px;margin-top:7px;border-radius:999px;background:var(--surface3);overflow:hidden}.v46-result-progress i{display:block;height:100%;background:var(--green)}
.v46-result-meta{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.v46-result-meta span,.v46-result-meta b{font-size:8px;padding:5px 7px;border-radius:999px;background:var(--surface3);color:var(--muted);font-weight:800}.v46-result-meta b{background:color-mix(in srgb,var(--orange) 12%,var(--surface));color:var(--orange)}
.v46-rpe{text-align:center}.v46-rpe span{display:block;color:var(--muted);font-size:8px}.v46-rpe strong{display:block;font-size:17px;margin-top:2px}

.v46-analytics{display:grid;gap:12px}
.v46-analytics-main{padding:16px}
.v46-analytics-main .analytics-exercise-select{width:min(320px,45%);min-width:180px}
.v46-exercise-kpis{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:9px}.v46-exercise-kpis span{padding:7px 9px;border-radius:10px;background:var(--surface2);font-size:9px;color:var(--muted)}.v46-exercise-kpis b{color:var(--text)}
.v46-chart{min-height:170px}.v46-chart .analytics-trend{margin:0}
.v46-analytics-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:10px}
.v46-pr-list{display:grid;gap:2px}
.v46-pr-list>div{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.v46-pr-list>div:last-child{border-bottom:0}.v46-pr-list>div>span{width:25px;height:25px;border-radius:8px;background:var(--surface3);display:grid;place-items:center;color:var(--muted);font-size:9px}.v46-pr-list strong{font-size:11px}.v46-pr-list b{font-size:11px;color:var(--green)}
.v46-trend-block+ .v46-trend-block{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.v46-trend-block h3{font-size:12px;margin-bottom:8px}
.v46-analytics-filters{display:grid;grid-template-columns:180px 220px;gap:7px}
.client-progress-head-v46{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:13px}
.client-progress-head-v46>div>span{color:var(--green);font-size:10px;font-weight:900;text-transform:uppercase}.client-progress-head-v46 h1{font-size:31px;margin:4px 0}.client-progress-head-v46 p{margin:0;color:var(--muted);font-size:11px}.client-progress-head-v46>select{width:min(280px,45%)}

.client-history-v46{display:grid;gap:11px}
.client-history-list-v46{display:grid;gap:7px}
.client-history-row-v46{
  display:grid;grid-template-columns:98px minmax(0,1fr) auto 18px;gap:10px;align-items:center;width:100%;
  padding:12px;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer
}
.client-history-date-v46 strong{display:block;font-size:10px}.client-history-date-v46 span{display:block;font-size:9px;color:var(--muted);margin-top:3px}
.client-history-copy-v46 strong{display:block;font-size:13px}.client-history-copy-v46>span{display:block;font-size:9px;color:var(--muted);margin-top:3px}
.client-history-meta-v46{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.client-history-meta-v46 span,.client-history-meta-v46 b,.client-feedback-badge{font-size:8px;padding:5px 7px;border-radius:999px;background:var(--surface3);color:var(--muted);font-weight:800}.client-history-meta-v46 b,.client-feedback-badge.unread{background:color-mix(in srgb,var(--orange) 12%,var(--surface));color:var(--orange)}
.client-data-tools-v46{margin-top:3px}

/* Tone down legacy hero on History / Progress: the new pages carry the hierarchy. */
#screen-history>.hero,#screen-performance>.hero{margin-bottom:10px}
#screen-history>.hero h1,#screen-performance>.hero h1{font-size:27px}
#screen-history>.hero .sub,#screen-performance>.hero .sub{display:none}

@media(max-width:900px){
  #screen-trainer{width:100%;margin-left:0;transform:none}
  .v46-program-layout{grid-template-columns:1fr}.v46-program-list{max-height:none}
  .v46-program-sidebar{padding:8px}.v46-program-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v46-action-grid.secondary-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v46-analytics-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  #screen-trainer .trainer-head{align-items:flex-start}.trainer-nav-v44{top:68px;overflow:auto}.trainer-nav-main-v44{min-width:max-content}
  .v46-page-head,.v46-results-head,.client-progress-head-v46{align-items:stretch;flex-direction:column}
  .v46-head-cta,.v46-program-hero>.primary{width:100%!important}
  .v46-client-main{grid-template-columns:44px minmax(0,1fr) auto 18px}.v46-client-programs{display:none}.v46-state{grid-column:3}
  .v46-client-copy small{white-space:normal}
  .v46-inline-action{flex-wrap:wrap}.v46-inline-action>span{width:100%}
  .v46-program-list{grid-template-columns:1fr}.v46-program-hero{align-items:stretch;flex-direction:column}
  .v46-program-kpis,.v46-metrics{grid-template-columns:1fr 1fr}
  .v46-form-grid,.v46-analytics-filters{grid-template-columns:1fr}
  .v46-action-grid{grid-template-columns:1fr 1fr}.v46-action-grid>button:first-child{grid-column:1/-1}
  .v46-list-toolbar.results{grid-template-columns:1fr}
  .v46-results-client-select{min-width:0}.v46-results-client-select select{width:100%}
  .v46-result-row{grid-template-columns:82px minmax(0,1fr) 45px 15px}.v46-result-meta{grid-column:2/4;justify-content:flex-start}.v46-rpe{grid-column:3;grid-row:1}.v46-result-row>.v46-chevron{grid-column:4;grid-row:1}
  .v46-analytics-main .analytics-exercise-select,.client-progress-head-v46>select{width:100%;min-width:0}
  .client-history-row-v46{grid-template-columns:82px minmax(0,1fr) 15px}.client-history-meta-v46{grid-column:2/4;justify-content:flex-start}.client-history-row-v46>.v46-chevron{grid-column:3;grid-row:1}
}
@media(max-width:480px){
  .v46-program-kpis,.v46-metrics{grid-template-columns:1fr 1fr}
  .v46-client-main{padding:10px;gap:8px}.v46-avatar{width:40px;height:40px;border-radius:12px}
  .v46-client-main .v46-state{font-size:8px;padding:5px 7px}
  .v46-action-grid,.v46-action-grid.secondary-actions{grid-template-columns:1fr}.v46-action-grid>button:first-child{grid-column:auto}
  .v46-result-row{grid-template-columns:1fr 45px 15px}.v46-result-date{grid-column:1;grid-row:1}.v46-result-copy{grid-column:1/-1;grid-row:2}.v46-result-meta{grid-column:1/-1;grid-row:3}.v46-rpe{grid-column:2;grid-row:1}.v46-result-row>.v46-chevron{grid-column:3;grid-row:1}
  .client-history-row-v46{grid-template-columns:1fr 15px}.client-history-date-v46{grid-column:1;grid-row:1}.client-history-copy-v46{grid-column:1/-1;grid-row:2}.client-history-meta-v46{grid-column:1/-1;grid-row:3}.client-history-row-v46>.v46-chevron{grid-column:2;grid-row:1}
}
[hidden] { display: none !important; }
