/* SLPT-R25R32-CLIENT-DASHBOARD-DESIGN-A-20260819 */
/* Coached-client dashboard only. Main Nutrition page is intentionally untouched. */
.r32-design-a .page-head p{letter-spacing:.01em}

/* Upcoming - compact timeline list */
.r32-design-a .r32-upcoming-panel{padding-bottom:16px}
.r32-design-a .r32-upcoming-panel .panel-head{margin-bottom:10px}
.r32-design-a .r32-upcoming-list,
.r20-coached-main[data-r20b-layout="upcoming-full-width"] .r32-upcoming-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  position:relative;
}
.r32-upcoming-item{
  position:relative;
  display:grid;
  grid-template-columns:54px 18px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  min-height:64px;
  padding:7px 13px 7px 7px;
  border:1px solid rgba(104,116,139,.12);
  border-radius:14px;
  background:linear-gradient(90deg,rgba(247,249,253,.98),rgba(255,255,255,.92));
  box-shadow:0 5px 16px rgba(31,42,64,.035);
}
.r32-upcoming-item:not(:last-child):after{
  content:"";
  position:absolute;
  left:69px;
  top:45px;
  width:1px;
  height:32px;
  background:linear-gradient(#d6dce8,transparent);
  pointer-events:none;
}
.r32-date-tile{
  width:48px;
  min-height:50px;
  display:grid;
  place-items:center;
  align-content:center;
  border:1px solid rgba(210,52,76,.16);
  border-radius:12px;
  background:linear-gradient(145deg,#fff4f6,#fff);
  line-height:1;
}
.r32-date-tile small{font-size:9px;font-weight:850;letter-spacing:.08em;color:#c22f48}
.r32-date-tile b{margin:2px 0;font-size:18px;color:#202532}
.r32-date-tile em{font-size:8px;font-style:normal;font-weight:800;color:#7a8290}
.r32-timeline-dot{
  position:relative;
  z-index:1;
  width:11px;
  height:11px;
  border:3px solid #fff;
  border-radius:50%;
  background:#e74a61;
  box-shadow:0 0 0 2px rgba(231,74,97,.22);
}
.r32-upcoming-copy{min-width:0}
.r32-upcoming-copy b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:#242936}
.r32-upcoming-copy small{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#737b89}
.r32-upcoming-item time{font-size:11px;font-weight:750;color:#4d5564;white-space:nowrap}
.r32-upcoming-empty{padding:24px 12px!important}

/* Dashboard nutrition card only */
.r32-design-a .r32-nutrition-card{display:flex;flex-direction:column;min-width:0}
.r32-nutrition-primary{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:12px;align-items:center;padding:4px 0 12px}
.r32-nutrition-primary>div:first-child strong{display:block;font-size:29px;line-height:1;color:#1c2029;letter-spacing:-.03em}
.r32-nutrition-primary>div:first-child span{display:block;margin-top:6px;color:#707887;font-size:10px;font-weight:700}
.r32-calorie-ring{
  --r32-cal-pct:0%;
  width:66px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  justify-self:end;
  border-radius:50%;
  background:conic-gradient(#2b8fb9 var(--r32-cal-pct),#e8edf3 0);
  position:relative;
}
.r32-calorie-ring:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff}
.r32-calorie-ring b{position:relative;z-index:1;font-size:13px;color:#252b36}
.r32-macro-list{display:grid;gap:10px;margin-top:2px}
.r32-macro-row{display:grid;grid-template-columns:86px minmax(0,1fr) 32px;gap:9px;align-items:center}
.r32-macro-row>div:first-child{display:flex;justify-content:space-between;gap:7px;align-items:baseline}
.r32-macro-row b{font-size:10px;color:#343a47}.r32-macro-row span{font-size:9px;color:#7a8290}
.r32-macro-track{height:5px;border-radius:99px;background:#e8ecf2;overflow:hidden}
.r32-macro-track i{display:block;width:var(--r32-pct,0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,#26a56e,#5bc08f)}
.r32-macro-row:nth-child(2) .r32-macro-track i{background:linear-gradient(90deg,#3576d7,#69a0ee)}
.r32-macro-row:nth-child(3) .r32-macro-track i{background:linear-gradient(90deg,#e88a1a,#f3b057)}
.r32-macro-row>small{text-align:right;font-size:9px;font-weight:800;color:#697180}
.r32-nutrition-note{display:block;margin-top:10px;color:#88909d;font-size:9px;line-height:1.35}
.r32-nutrition-empty{display:grid;gap:7px;justify-items:start;padding:14px;border:1px dashed rgba(105,116,137,.2);border-radius:13px;background:#fafbfd}
.r32-nutrition-empty b{font-size:13px;color:#2a303c}.r32-nutrition-empty small{font-size:10px;color:#737b89}.r32-nutrition-empty .small-btn{margin-top:2px}
.r32-nutrition-footer{margin-top:auto;padding:11px 0 0;border:0;border-top:1px solid rgba(107,117,136,.12);background:none;color:#626b7a;font-size:10px;font-weight:750;cursor:pointer;text-align:center}
.r32-nutrition-footer span{margin-left:3px}

/* Learn & Grow - retain Nutrition Essentials; modernise remaining iconography */
.r32-learning-panel .r20-learning-grid .r20-quick-tile>span{overflow:hidden}
.r32-learning-panel .r20-learning-grid .r20-quick-tile>span svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;color:#edf2ff}
.r32-learning-panel .r20-learning-grid .r20-quick-tile:not(:first-child)>span{background:linear-gradient(135deg,#20283b,#292138);box-shadow:inset 0 0 0 1px rgba(255,255,255,.055)}
.r32-learning-panel .r20-learning-grid .r20-quick-tile:first-child>span{font-size:20px}

/* Dark/Mist theme parity */
html[data-theme="dark"] .r32-upcoming-item,
html[data-theme="mist-graphite"] .r32-upcoming-item{background:linear-gradient(90deg,rgba(24,29,39,.98),rgba(28,34,46,.92));border-color:#2b3342}
html[data-theme="dark"] .r32-date-tile,
html[data-theme="mist-graphite"] .r32-date-tile{background:linear-gradient(145deg,#30232b,#202632);border-color:rgba(232,75,99,.25)}
html[data-theme="dark"] .r32-date-tile b,
html[data-theme="mist-graphite"] .r32-date-tile b,
html[data-theme="dark"] .r32-upcoming-copy b,
html[data-theme="mist-graphite"] .r32-upcoming-copy b,
html[data-theme="dark"] .r32-nutrition-primary strong,
html[data-theme="mist-graphite"] .r32-nutrition-primary strong{color:#f5f7fb}
html[data-theme="dark"] .r32-calorie-ring:before,
html[data-theme="mist-graphite"] .r32-calorie-ring:before{background:#181d27}
html[data-theme="dark"] .r32-calorie-ring b,
html[data-theme="mist-graphite"] .r32-calorie-ring b{color:#f5f7fb}
html[data-theme="dark"] .r32-macro-track,
html[data-theme="mist-graphite"] .r32-macro-track{background:#303746}
html[data-theme="dark"] .r32-nutrition-empty,
html[data-theme="mist-graphite"] .r32-nutrition-empty{background:#181d27;border-color:#303747}
html[data-theme="dark"] .r32-nutrition-empty b,
html[data-theme="mist-graphite"] .r32-nutrition-empty b,
html[data-theme="dark"] .r32-macro-row b,
html[data-theme="mist-graphite"] .r32-macro-row b{color:#eef2f8}

@media(max-width:760px){
  .r32-upcoming-item{grid-template-columns:50px 14px minmax(0,1fr);padding-right:10px}
  .r32-upcoming-item time{grid-column:3;justify-self:start;margin-top:-5px;font-size:10px}
  .r32-upcoming-item:not(:last-child):after{left:64px}
  .r32-nutrition-primary{grid-template-columns:minmax(0,1fr) 64px}
  .r32-calorie-ring{width:60px}
  .r32-macro-row{grid-template-columns:78px minmax(0,1fr) 29px}
}
