:root{--blue:#3BB3F7;--navy:#07182d;--panel:#0d2947;--line:#183b5d}*{box-sizing:border-box}html,body{margin:0;background:#020b15;font-family:Inter,system-ui,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top,#123b60,#04111f 55%)}.login-card{width:min(380px,100%);padding:28px;border-radius:24px;background:#081c32;border:1px solid #183d60;color:white;text-align:center}.login-card img{width:110px}.login-card h1{margin:0;letter-spacing:.08em}.login-card p{font-size:10px;color:#8fdcff}.login-card input{width:100%;margin:6px 0;padding:12px;border-radius:10px;border:1px solid #294a67;background:#06172a;color:white}.login-card button,.cta{width:100%;border:0;border-radius:9px;padding:12px;background:linear-gradient(#35b8fa,#1495e2);color:white;font-weight:800;margin-top:9px}.login-card small{display:block;color:#9fb4c5;font-size:9px;margin-top:7px}.phone{width:100%;max-width:440px;min-height:100vh;margin:auto;background:linear-gradient(#07182d,#0a203a);color:white;position:relative;overflow:hidden}.phone header{height:68px;display:grid;grid-template-columns:40px 1fr 40px;align-items:center;padding:12px 16px;background:#07182d;border-bottom:1px solid #173954}.phone header button{border:0;background:transparent;color:white;font-size:24px}.brand{display:flex;justify-content:center;align-items:center;gap:8px}.brand img{width:30px}.brand b{font-size:11px}.screen{display:none;min-height:calc(100vh - 68px);padding-bottom:90px}.screen.active{display:block}.dark{padding:18px;background:radial-gradient(circle at 80% 0,rgba(59,179,247,.09),transparent 28%),linear-gradient(#07182d,#0a203a)}.light{background:#f5f7f9;color:#102030}.welcome small,.muted{color:#93aabd}.welcome h1{font-size:32px;margin:4px 0 12px}.welcome p{font-size:13px}.icons{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 8px;margin:28px 0}.icons button{border:0;background:transparent;color:white;display:grid;place-items:center;gap:7px;font-size:20px}.icons b{font-size:10px}.blue{padding:16px;border-radius:13px;background:linear-gradient(135deg,#32b4f7,#1496e3)}.row{display:flex;justify-content:space-between;align-items:center}.bar{height:6px;background:#e5edf2;border-radius:999px;overflow:hidden;margin-top:7px}.bar i{display:block;height:100%;background:#2eacf2}.bar.white{background:rgba(255,255,255,.35)}.bar.white i{background:white}.next,.card{background:#0d2947;border:1px solid #183b5d;border-radius:13px;padding:14px;margin-top:12px}.next small{font-size:8px;color:#8ea9be}.next h3{font-size:14px;margin:6px 0}.next p{font-size:10px;color:#a7bbc9}.hero{background:#07182d;color:white;padding:14px 18px}.hero h2{margin:0}.hero small{font-size:8px;color:#8edcff}.panel{padding:16px;min-height:calc(100vh - 130px);background:white}.panel h4{font-size:9px;letter-spacing:.06em}.workout{padding:13px 0;border-bottom:1px solid #e8edf1}.workout b,.workout small{display:block}.workout b{font-size:12px}.workout small{font-size:9px;color:#7e8a94}.workout button,.ghost{border:0;border-radius:8px;padding:8px 10px;background:#e8f7ff;color:#117dae;margin-top:8px}.target{margin:14px 0}.target .row{font-size:10px}.meal{border:1px solid #e4eaf0;border-radius:10px;padding:10px;margin:8px 0}.meal b,.meal small{display:block}.meal b{font-size:11px}.meal small{font-size:9px;color:#778590}.habit{background:#0d2947;border:1px solid #183b5d;border-radius:12px;padding:13px;margin:9px 0;display:grid;grid-template-columns:1fr 36px}.habit small{display:block;color:#91aabd}.habit button{width:34px;height:34px;border-radius:50%;border:1px solid #365873;background:#0d2947;color:#91aabd}.habit.done button{background:#3BB3F7;color:#051523}.card label{display:block;font-size:11px;margin:10px 0}.card input,.card textarea,.search,.modal input,.modal textarea,.modal select{width:100%;padding:11px;border:1px solid #294c69;border-radius:9px;background:#061a2f;color:white;margin:5px 0}.card textarea{min-height:70px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stats>div{background:#0d2947;border:1px solid #183b5d;border-radius:12px;padding:12px}.stats small{display:block;font-size:8px;color:#91aabd}.stats b{font-size:18px}.chart{height:180px;display:flex;align-items:end;gap:5px}.chart i{flex:1;background:linear-gradient(#3BB3F7,#147caf);border-radius:4px 4px 0 0}.chat{display:flex;flex-direction:column;gap:9px;padding-bottom:72px}.msg{max-width:82%;padding:11px 13px;border-radius:13px;font-size:11px}.msg.coach{background:#123552;border:1px solid #214867}.msg.client{align-self:flex-end;background:#3BB3F7;color:#071523}.send{position:fixed;bottom:78px;width:min(404px,calc(100% - 36px));display:grid;grid-template-columns:1fr 44px;gap:7px}.send input{padding:11px;border:1px solid #214864;border-radius:10px;background:#0b2743;color:white}.send button{border:0;border-radius:10px;background:#3BB3F7}.phone nav{position:fixed;bottom:0;width:100%;max-width:440px;height:72px;background:#07182d;border-top:1px solid #173954;display:grid;grid-template-columns:repeat(5,1fr);z-index:20}.phone nav button{border:0;background:transparent;color:#8298ab;display:grid;place-items:center;padding:7px}.phone nav button.active{color:#3BB3F7}.phone nav small{font-size:8px}.coach-client{background:#0d2947;border:1px solid #183b5d;border-radius:12px;padding:13px;margin:9px 0;display:grid;grid-template-columns:1fr auto}.coach-client small{display:block;color:#92aabc}.coach-client button{border:0;border-radius:8px;background:#3BB3F7;padding:8px}.section{background:#0d2947;border:1px solid #183b5d;border-radius:12px;padding:13px;margin:12px 0}.section h3{font-size:13px}.section p{font-size:10px;color:#a9bac7}.feedback{width:100%;min-height:65px;background:#071b30;color:white;border:1px solid #28506f;border-radius:9px;padding:9px}.modal{padding:20px;position:relative}.modal>button{position:absolute;right:8px;top:6px;border:0;background:transparent;font-size:22px}.modal input,.modal textarea,.modal select{background:#f8fafc;color:#142130;border-color:#dbe4eb}.modal label{display:block;font-size:11px;margin:8px 0}dialog{border:0;border-radius:15px;padding:0;width:min(390px,calc(100% - 24px))}dialog::backdrop{background:rgba(0,0,0,.7)}#toast{position:fixed;top:15px;left:50%;transform:translateX(-50%);z-index:99;background:#0d2947;color:white;padding:9px 13px;border-radius:9px;opacity:0;transition:.2s}#toast.show{opacity:1}@media(min-width:700px){body{padding:24px}.phone{border:8px solid #05090e;border-radius:42px;min-height:900px;box-shadow:0 30px 80px rgba(0,0,0,.5)}}

/* --- Coach detail mobile layout refinement --- */
#detail{overflow-x:hidden}
#detailBody{width:100%;max-width:100%}
#detailBody>h2{font-size:27px;line-height:1.08;margin:18px 0 6px}
#detailBody>.muted{font-size:13px;margin:0 0 18px;color:#7fc9f3}
#detail .section{padding:16px;border-radius:15px;margin:14px 0;background:#0d3155;border-color:#1b4a72}
#detail .section h3{font-size:13px;margin:0 0 15px}
#detail .section label{display:block;width:100%;font-size:10px;font-weight:800;color:#9fb6c9;margin:0 0 12px;letter-spacing:.02em}
#detail .section input,
#detail .section textarea,
#detail .section select{display:block;width:100%;max-width:100%;min-width:0;margin:6px 0 0;padding:11px 12px;border:1px solid #285276;border-radius:9px;background:#071e35;color:#fff;outline:none}
#detail .section input:focus,
#detail .section textarea:focus,
#detail .section select:focus{border-color:#3BB3F7;box-shadow:0 0 0 2px rgba(59,179,247,.12)}
#detail .section textarea{min-height:88px;resize:vertical}
#detail .section select{appearance:auto}
#detail .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
#detail .form-grid label{min-width:0}
#detail .full-field{grid-column:1/-1}
#detail .exercise-builder{display:grid;gap:8px}
#detail .exercise-row-editor{display:grid;grid-template-columns:minmax(0,1fr) 62px 76px 34px;gap:7px;align-items:end}
#detail .exercise-row-editor label{margin:0}
#detail .exercise-row-editor input{margin-top:5px}
#detail .remove-exercise{height:40px;margin:0;border:1px solid #315a79;border-radius:9px;background:#09243e;color:#a9c3d6}
#detail .add-exercise{width:100%;margin:3px 0 8px;border:1px dashed #3a739a;background:#092641;color:#8edcff;border-radius:9px;padding:10px;font-weight:700}
#detail .cta{min-height:48px;border-radius:10px;font-size:13px}
#detail .checkin-item{background:#09243e;border:1px solid #1d4769;border-radius:11px;padding:12px;margin:10px 0}
#detail .checkin-item p{line-height:1.45;margin:7px 0}
#detail .feedback{display:block;width:100%;margin:9px 0}
#detail .message-compose{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:8px;align-items:center}
#detail .message-compose .search{margin:0}
#detail .message-compose .cta{margin:0;min-height:42px;padding:9px}
#coachBack{margin-bottom:4px;background:#e8f7ff;color:#087bb7;font-weight:700}
@media(max-width:370px){
 #detail .form-grid{grid-template-columns:1fr}
 #detail .full-field{grid-column:auto}
 #detail .exercise-row-editor{grid-template-columns:minmax(0,1fr) 58px 70px}
 #detail .remove-exercise{grid-column:1/-1;width:100%}
}

/* What's Coach Doing */
.coachdoing-intro{background:linear-gradient(135deg,#2fb4f7,#148ed6);border-radius:15px;padding:16px;margin-bottom:14px}
.coachdoing-intro b,.coachdoing-intro span{display:block}.coachdoing-intro b{font-size:15px}.coachdoing-intro span{font-size:10px;margin-top:5px;line-height:1.45}
.coach-meal-card{background:#0d2a49;border:1px solid #1b4569;border-radius:15px;overflow:hidden;margin:12px 0}
.coach-meal-photo{height:170px;background:linear-gradient(135deg,#123d63,#081c31);display:grid;place-items:center;font-size:42px;background-size:cover;background-position:center}
.coach-meal-body{padding:14px}.coach-meal-body small{font-size:8px;color:#55c4ff;letter-spacing:.08em;font-weight:800}.coach-meal-body h3{margin:4px 0 6px;font-size:16px}.coach-meal-body p{font-size:10px;color:#b7c8d6;line-height:1.5}
.meal-macros{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0}.meal-macros span{font-size:9px;background:#08213a;border:1px solid #214b6c;border-radius:999px;padding:5px 8px}
.meal-details{border-top:1px solid #1d4262;padding-top:9px;margin-top:9px}.meal-details b{font-size:9px}.meal-details p{white-space:pre-line;margin-top:4px}
.coach-publish-card{background:linear-gradient(145deg,#10395f,#0c2947);border:1px solid #1c4a70;border-radius:14px;padding:14px;margin:13px 0}
.coach-publish-card small{font-size:8px;color:#61c9ff}.coach-publish-card h3{margin:3px 0 5px}.coach-publish-card p{font-size:10px;color:#9fb7c9;line-height:1.45}

.score-card{background:linear-gradient(135deg,#31b6f8,#138ed7);border-radius:16px;padding:17px;margin:8px 0 14px}.score-card small{display:block;font-size:8px;font-weight:900}.score-card strong{font-size:42px}.score-card p{font-size:9px}.tool-card,.tool-action{width:100%;text-align:left;background:#0d2a49;border:1px solid #1d486b;border-radius:14px;padding:15px;margin:9px 0;color:#fff}.tool-card h3{margin:4px 0}.tool-card p,.tool-action span{display:block;color:#a2b9ca;font-size:10px;line-height:1.45;margin-top:4px}.danger-soft{background:#34263a;border-color:#70404d}.coachdoing-intro{background:linear-gradient(135deg,#31b6f8,#138ed7);border-radius:15px;padding:16px;margin-bottom:14px}.coachdoing-intro b,.coachdoing-intro span{display:block}.coachdoing-intro span{font-size:10px;margin-top:5px}.coach-meal-card{background:#0d2a49;border:1px solid #1d486b;border-radius:15px;overflow:hidden;margin:11px 0}.coach-meal-photo{height:150px;background:#0a2038;display:grid;place-items:center;font-size:40px;background-size:cover;background-position:center}.coach-meal-body{padding:14px}.coach-meal-body small{font-size:8px;color:#55c7ff}.coach-meal-body h3{margin:4px 0}.coach-meal-body p{font-size:10px;color:#adc0ce;white-space:pre-line}.meal-macros{display:flex;gap:6px}.meal-macros span{font-size:9px;background:#071d33;border-radius:999px;padding:5px 8px}.coach-publish-card{background:#0d3155;border:1px solid #1d4a70;border-radius:14px;padding:14px;margin:12px 0}.coach-publish-card small{font-size:8px;color:#55c7ff}.coach-publish-card h3{margin:3px 0}.coach-publish-card p{font-size:10px;color:#a2b9ca}.struggle-alert{background:#352438;border:1px solid #744151;border-radius:12px;padding:11px;margin:9px 0}.struggle-alert span{display:block;font-size:9px;color:#d4b9c1;margin:4px 0}.emergency-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.emergency-choice{background:#f4f9fc;border:1px solid #dce8ef;border-radius:9px;padding:10px}.emergency-choice b,.emergency-choice span{display:block}.emergency-choice span{font-size:9px;color:#687b88;margin-top:3px}

/* Functional coach/content controls */
.coach-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.coach-actions .cta,.coach-actions .action-btn{margin:0;min-height:44px}
.action-btn{width:100%}
.update-card{background:#0d2a49;border:1px solid #1d486b;border-radius:14px;padding:14px;margin:10px 0}
.update-card small{font-size:8px;color:#58c7ff;font-weight:800}.update-card h3{margin:4px 0 6px}.update-card p{font-size:10px;line-height:1.5;color:#afc2d1}
.update-image{width:100%;max-height:220px;object-fit:cover;border-radius:10px;margin-top:9px}
.content-admin{background:#f7fafc;border:1px solid #dbe6ed;border-radius:10px;padding:10px;margin:8px 0;color:#172532}
.content-admin b,.content-admin small{display:block}.content-admin small{color:#718493;margin:3px 0}.content-admin-actions{display:flex;gap:6px;margin-top:8px}.content-admin-actions button{flex:1}
.client-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
.client-profile-grid .full{grid-column:1/-1}
.upload-preview{width:100%;max-height:180px;object-fit:cover;border-radius:10px;margin-top:8px;display:none}
.workout-admin{border:1px solid #1c4567;background:#09243e;border-radius:11px;padding:11px;margin:8px 0}.workout-admin .row{align-items:flex-start}.workout-admin small{display:block;color:#91aabc}
@media(max-width:360px){.coach-actions,.client-profile-grid{grid-template-columns:1fr}.client-profile-grid .full{grid-column:auto}}

.exercise-image{width:100%;height:150px;object-fit:cover;border-radius:11px;margin:8px 0;background:#0b2238}
.exercise-no-image{width:100%;height:120px;border-radius:11px;margin:8px 0;background:linear-gradient(135deg,#123a5e,#081d33);display:grid;place-items:center;color:#7fcdf7;font-size:34px}
.full-btn{width:100%;margin-top:8px}
.recipe-card{background:#0d2a49;border:1px solid #1d486b;border-radius:14px;overflow:hidden;margin:10px 0}
.recipe-image{width:100%;height:145px;object-fit:cover;background:#0a2038}
.recipe-body{padding:13px}.recipe-body h3{margin:3px 0}.recipe-body small{color:#5ac8ff;font-size:8px}.recipe-body p{font-size:10px;line-height:1.45;color:#aec2d1;white-space:pre-line}.recipe-macros{display:flex;gap:6px}.recipe-macros span{font-size:9px;background:#071d33;border-radius:999px;padding:5px 8px}
.plan-day{background:#0d2a49;border:1px solid #1d486b;border-radius:13px;padding:12px;margin:9px 0}.plan-day h3{margin:0 0 7px}.plan-meal{padding:8px 0;border-top:1px solid #1b425f}.plan-meal:first-of-type{border-top:0}.plan-meal b,.plan-meal small{display:block}.plan-meal small{font-size:9px;color:#91aabc}
.plan-builder-row{display:grid;grid-template-columns:58px 90px 1fr 34px;gap:6px;align-items:end;margin:7px 0}.plan-builder-row label{margin:0}.plan-builder-row select,.plan-builder-row input{margin-top:4px}
@media(max-width:390px){.plan-builder-row{grid-template-columns:55px 82px 1fr}.plan-builder-row .remove-plan-item{grid-column:1/-1;width:100%}}

.machine-alt-btn{width:100%;margin-top:8px;border:1px solid #2b5d82;background:#0a2742;color:#8fdcff;border-radius:9px;padding:10px;font-weight:800}
.alternative-card{margin-top:9px;padding:12px;border-radius:11px;background:#102f4d;border:1px solid #286084}
.alternative-card small{display:block;color:#5ecbff;font-size:8px;font-weight:900;letter-spacing:.08em}
.alternative-card h4{margin:5px 0 6px}.alternative-card p{font-size:10px;line-height:1.45;color:#b7c9d6}
.alt-image{width:100%;height:130px;object-fit:cover;border-radius:9px;margin:7px 0}

/* Coach navigation hub */
.coach-tabs{position:sticky;top:68px;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:8px;background:#07182d;border-bottom:1px solid #173a56}
.coach-tabs button{border:0;border-radius:8px;padding:9px 3px;background:#0b2947;color:#89a4b8;font-size:9px;font-weight:800}
.coach-tabs button.active{background:#3BB3F7;color:#061523}
.coach-screen{padding-top:16px}
.coach-hub-card{background:#0d2f50;border:1px solid #1d4b70;border-radius:15px;padding:15px;margin:11px 0}
.coach-hub-card b,.coach-hub-card span{display:block}.coach-hub-card b{font-size:14px}.coach-hub-card span{font-size:10px;line-height:1.5;color:#9eb7c9;margin:5px 0 10px}


/* =========================================================
   MOTIVE-8 PREMIUM DESIGN SYSTEM — UNIFIED VISUAL PASS
   ========================================================= */
:root{
  --m8-bg:#061321;
  --m8-bg-2:#0A1C30;
  --m8-panel:#0D2743;
  --m8-panel-2:#102F4F;
  --m8-panel-soft:#F6F8FA;
  --m8-card:#FFFFFF;
  --m8-blue:#3BB3F7;
  --m8-blue-2:#1499E8;
  --m8-blue-soft:#EAF7FF;
  --m8-text:#0D1B2A;
  --m8-text-inverse:#F7FBFF;
  --m8-muted:#7E94A8;
  --m8-muted-light:#A9BDCC;
  --m8-border:#173D5D;
  --m8-border-light:#DFE7EE;
  --m8-success:#2CB878;
  --m8-danger:#D95A64;
  --m8-warning:#E5A437;
  --m8-shadow:0 16px 42px rgba(0,0,0,.18);
  --m8-shadow-soft:0 8px 24px rgba(13,27,42,.08);
  --m8-radius-xl:22px;
  --m8-radius-lg:16px;
  --m8-radius-md:12px;
  --m8-radius-sm:9px;
}

html{background:#020A12}
body{
  background:
    radial-gradient(circle at 50% -10%,rgba(59,179,247,.12),transparent 34%),
    linear-gradient(180deg,#020A12,#061321);
  color:var(--m8-text-inverse);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
  letter-spacing:-.01em;
}
button,input,textarea,select{font:inherit}
button{transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease}
button:active{transform:scale(.985)}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:2px solid var(--m8-blue);
  outline-offset:2px;
}

/* app shell */
.phone,.phone-app{
  background:linear-gradient(180deg,#071727 0%,#0A1F35 100%)!important;
  box-shadow:0 36px 90px rgba(0,0,0,.52);
}
header,.app-top{
  background:rgba(6,19,33,.96)!important;
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,255,255,.06)!important;
}
.brand img,.mini-brand img{filter:drop-shadow(0 5px 10px rgba(59,179,247,.18))}
.brand b,.mini-brand b{
  letter-spacing:.07em!important;
  font-weight:900!important;
}
.brand small,.mini-brand small{
  color:#80D7FF!important;
  letter-spacing:.16em!important;
  font-weight:800!important;
}

/* type hierarchy */
h1,h2,h3,h4{
  letter-spacing:-.03em;
  font-weight:800;
}
h1{font-size:34px}
h2{font-size:25px;line-height:1.08}
h3{font-size:16px}
h4{font-size:12px;letter-spacing:.02em}
.muted{
  color:var(--m8-muted-light)!important;
  line-height:1.45;
}
.screen>h2,.screen>.subhead h2{margin-bottom:5px}
.screen>p.muted,.subhead p{margin-top:0;margin-bottom:20px}

/* surfaces */
.card,.section,.tool-card,.coach-hub-card,.update-card,.coach-client,.workout,.habit,.next,.score-card,
.coach-publish-card,.workout-admin,.checkin-item,.meal,.target-card,.plan-day,.recipe-card,.content-admin{
  border-radius:var(--m8-radius-lg)!important;
}
.card,.section,.tool-card,.coach-hub-card,.update-card,.coach-client,.workout,.habit,.next,
.coach-publish-card,.workout-admin,.checkin-item{
  background:linear-gradient(180deg,rgba(17,48,80,.96),rgba(12,38,64,.96))!important;
  border:1px solid rgba(118,183,225,.14)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
}
.card:hover,.coach-hub-card:hover,.tool-card:hover,.coach-client:hover,.workout:hover{
  border-color:rgba(59,179,247,.28)!important;
}

/* bright premium feature cards */
.blue-card,.score-card,.coachdoing-intro{
  background:linear-gradient(135deg,#45BEFC 0%,#1597E5 72%,#1282C8 100%)!important;
  border:0!important;
  box-shadow:0 18px 36px rgba(20,151,229,.24)!important;
  color:#041421!important;
}
.blue-card small,.score-card small,.coachdoing-intro small{color:#06213A!important}
.blue-card p,.score-card p{color:#0A2941!important}

/* buttons */
.cta,.primary{
  border:none!important;
  border-radius:12px!important;
  min-height:46px;
  padding:12px 16px!important;
  background:linear-gradient(180deg,#48C1FF,#1598E6)!important;
  color:#041522!important;
  font-weight:900!important;
  letter-spacing:-.01em;
  box-shadow:0 8px 18px rgba(26,157,229,.24)!important;
}
.cta:hover,.primary:hover{box-shadow:0 11px 25px rgba(26,157,229,.32)!important}
.ghost,.secondary,.action-btn{
  border:1px solid rgba(121,190,232,.22)!important;
  background:rgba(255,255,255,.045)!important;
  color:#D6E8F3!important;
  border-radius:11px!important;
  min-height:42px;
  padding:10px 13px!important;
  font-weight:750;
  box-shadow:none!important;
}
.ghost:hover,.secondary:hover,.action-btn:hover{
  background:rgba(59,179,247,.10)!important;
  border-color:rgba(59,179,247,.42)!important;
}
.danger,.danger-soft{
  background:rgba(217,90,100,.12)!important;
  border:1px solid rgba(217,90,100,.32)!important;
  color:#FFB9C0!important;
  box-shadow:none!important;
}
.full-btn{width:100%}

/* inputs */
label{
  color:#AFC3D2!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.025em;
}
input,textarea,select,.search{
  width:100%;
  max-width:100%;
  color:#F7FBFF!important;
  background:#071B2E!important;
  border:1px solid #264864!important;
  border-radius:11px!important;
  min-height:44px;
  padding:11px 12px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}
textarea{min-height:92px}
input::placeholder,textarea::placeholder{color:#68859A!important}
input:focus,textarea:focus,select:focus,.search:focus{
  border-color:var(--m8-blue)!important;
  box-shadow:0 0 0 3px rgba(59,179,247,.10)!important;
}
input[type="range"]{
  min-height:auto;
  padding:0!important;
  accent-color:var(--m8-blue);
  background:transparent!important;
  border:0!important;
}

/* lists and rows */
.coach-client,.workout,.habit{
  padding:14px!important;
  margin-bottom:9px!important;
}
.coach-client b,.workout b,.habit b{font-size:13px}
.coach-client small,.workout small,.habit small{font-size:9px;color:#8FA8BA!important}
.row{gap:12px}

/* coach dashboard */
.coach-tabs{
  background:#061725!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
  backdrop-filter:blur(14px);
}
.coach-tabs button{
  color:#7F99AD!important;
  font-weight:700;
}
.coach-tabs button.active{
  color:var(--m8-blue)!important;
}
.coach-actions{
  gap:9px!important;
}
.coach-hub-card{
  padding:17px!important;
  margin:11px 0!important;
}
.coach-hub-card b{
  display:block;
  font-size:14px;
  margin-bottom:5px;
}
.coach-hub-card span{
  display:block;
  color:#91AABC!important;
  font-size:10px;
  line-height:1.5;
  margin-bottom:12px;
}

/* client nav */
nav,.bottom-nav{
  background:rgba(5,19,32,.97)!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
  backdrop-filter:blur(18px);
}
nav button,.bottom-nav button{
  color:#7891A5!important;
  font-weight:750;
}
nav button.active,.bottom-nav button.active{
  color:var(--m8-blue)!important;
}
nav small,.bottom-nav small{font-size:8px!important}

/* feature grid */
.feature-grid button{
  border-radius:14px;
}
.feature-grid span,.circle-icon{
  background:linear-gradient(180deg,#123451,#0B2945)!important;
  border:1px solid rgba(113,190,235,.22)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.01),0 8px 20px rgba(0,0,0,.12);
}
.feature-grid b{font-weight:800}

/* nutrition / plan */
.target{margin:17px 0!important}
.bar{
  height:6px!important;
  border-radius:999px!important;
  background:#DCE5EB!important;
}
.dark .bar,.score-card .bar,.tool-card .bar{
  background:#071A2B!important;
}
.bar i{
  border-radius:999px!important;
  background:linear-gradient(90deg,#32ADF3,#55C7FF)!important;
}
.meal,.plan-meal{
  padding:11px 0;
}
.meal b,.plan-meal b{font-size:11px}
.meal small,.plan-meal small{font-size:9px}

/* recipes */
.recipe-card{
  overflow:hidden;
  box-shadow:var(--m8-shadow);
}
.recipe-image,.exercise-image,.alt-image,.update-image{
  border-radius:13px!important;
  box-shadow:0 10px 25px rgba(0,0,0,.18);
}
.recipe-macros,.meal-macros{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
}
.recipe-macros span,.meal-macros span,.pill{
  border-radius:999px!important;
  font-size:9px!important;
  font-weight:800;
  padding:6px 9px!important;
  background:rgba(59,179,247,.11)!important;
  border:1px solid rgba(59,179,247,.18)!important;
  color:#95DEFF!important;
}
.content-admin{
  background:#F7F9FB!important;
  border:1px solid #E0E7ED!important;
  color:#172532!important;
  box-shadow:var(--m8-shadow-soft);
  padding:12px!important;
}
.content-admin b{font-size:12px}
.content-admin small{color:#718493!important}
.content-admin .ghost{
  background:#EAF7FF!important;
  border-color:#D3EEFC!important;
  color:#0879B8!important;
}

/* exercise alternative */
.machine-alt-btn{
  border-radius:11px!important;
  min-height:42px;
  background:rgba(59,179,247,.08)!important;
  border:1px solid rgba(59,179,247,.25)!important;
  color:#8EDAFF!important;
  font-weight:850!important;
}
.alternative-card{
  border-radius:13px!important;
  background:#0B2946!important;
  border:1px solid rgba(59,179,247,.23)!important;
  box-shadow:inset 3px 0 0 var(--m8-blue);
}

/* modal */
dialog{
  background:transparent!important;
  border:0!important;
  border-radius:22px!important;
  overflow:visible;
  width:min(410px,calc(100% - 24px))!important;
  max-height:88vh;
  box-shadow:0 40px 100px rgba(0,0,0,.48)!important;
}
dialog::backdrop{
  background:rgba(1,8,14,.76)!important;
  backdrop-filter:blur(5px);
}
.modal{
  max-height:88vh;
  overflow:auto;
  border-radius:22px!important;
  padding:22px!important;
  background:#F8FAFC!important;
  color:#12202D!important;
}
.modal h3{font-size:20px;margin-top:0}
.modal h4{color:#385269}
.modal p{color:#526778;line-height:1.5}
.modal label{color:#536C7E!important}
.modal input,.modal textarea,.modal select,.modal .search{
  background:#FFFFFF!important;
  border-color:#DCE5EC!important;
  color:#142230!important;
}
.modal input::placeholder,.modal textarea::placeholder{color:#8B9AA7!important}
.modal .ghost{
  background:#EDF7FD!important;
  border-color:#D6ECF8!important;
  color:#0C7DBB!important;
}
.modal .cta{color:#041522!important}
#close{
  position:sticky!important;
  top:0;
  float:right;
  z-index:4;
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  border:1px solid #E0E7ED!important;
  background:#FFFFFF!important;
  color:#41576A!important;
  box-shadow:0 5px 14px rgba(0,0,0,.08);
}

/* login */
.login{
  background:
    radial-gradient(circle at 50% -10%,rgba(59,179,247,.20),transparent 30%),
    linear-gradient(180deg,#04101C,#071A2C)!important;
}
.login-card{
  border-radius:24px!important;
  border:1px solid rgba(109,186,231,.18)!important;
  background:linear-gradient(180deg,#0B2744,#071B30)!important;
  box-shadow:0 32px 90px rgba(0,0,0,.42)!important;
}
.login-card h1{letter-spacing:.08em}
.demo,.demo-box{
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(255,255,255,.06)!important;
  color:#A8BDCC!important;
  border-radius:12px!important;
}

/* spacing rhythm */
.screen{
  padding-left:18px!important;
  padding-right:18px!important;
}
.light.screen{
  padding-left:0!important;
  padding-right:0!important;
}
.light .panel{
  padding:18px!important;
}
.section{
  padding:15px!important;
  margin:11px 0!important;
}
.two-col,.client-profile-grid,.form-grid{gap:10px!important}

/* premium subtle separators */
hr{
  border:0;
  border-top:1px solid rgba(255,255,255,.08);
}

/* mobile comfort */
@media(max-width:390px){
  .coach-actions{grid-template-columns:1fr!important}
  .feature-grid{gap:16px 8px!important}
  .modal{padding:18px!important}
}

/* Core product completion */
.priority-panel{margin:14px 0 18px;padding:15px;border:1px solid rgba(86,188,245,.18);background:linear-gradient(180deg,#0D2A48,#092039);border-radius:16px}
.priority-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.priority-title small{font-size:8px;letter-spacing:.12em;color:#64C9FF;font-weight:900}.priority-title h3{margin:3px 0 0}
.priority-count{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:#43BDF9;color:#052038;font-weight:900}
.priority-item{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:11px 0;border:0;border-top:1px solid rgba(255,255,255,.07);background:transparent;color:#F5FAFD}.priority-item:first-child{border-top:0}.priority-item b,.priority-item small{display:block}.priority-item b{font-size:11px}.priority-item small{font-size:8px;color:#93ADBE;margin-top:3px;line-height:1.4}.priority-item>span{font-size:9px;color:#64C9FF;font-weight:800}.priority-clear{font-size:10px;color:#A8C4D5;padding:8px 0}
.onboarding-shortcut{width:calc(100% - 36px);margin:14px 18px 90px;text-align:left;padding:16px;border:1px solid rgba(66,189,250,.24);border-radius:16px;background:linear-gradient(135deg,#113654,#0A2742);color:#fff}.onboarding-shortcut span,.onboarding-shortcut b,.onboarding-shortcut small{display:block}.onboarding-shortcut span{font-size:8px;letter-spacing:.12em;color:#64CBFF;font-weight:900}.onboarding-shortcut b{font-size:13px;margin:5px 0}.onboarding-shortcut small{font-size:9px;color:#A7BFCE}
.success-banner,.attention-banner{padding:12px 13px;border-radius:12px;margin:10px 0;font-size:10px;line-height:1.45}.success-banner{background:rgba(44,184,120,.12);border:1px solid rgba(44,184,120,.25);color:#9AE3BE}.attention-banner{background:rgba(229,164,55,.10);border:1px solid rgba(229,164,55,.25);color:#F1C97F}
.consent-row{display:flex!important;align-items:flex-start;gap:9px;line-height:1.45}.consent-row input{width:18px!important;min-height:18px!important;margin:2px 0 0;padding:0!important}
.profile-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.profile-summary>div{padding:10px;border-radius:10px;background:#071D31}.profile-summary small,.profile-summary b{display:block}.profile-summary small{font-size:7px;color:#66C9FB;letter-spacing:.08em}.profile-summary b{font-size:9px;margin-top:4px;line-height:1.35}
.private-notes>div{border-top:1px solid rgba(255,255,255,.08);padding:9px 0}.private-notes b{font-size:8px;color:#6CCBFA}.private-notes p{font-size:10px;margin:4px 0;color:#BCD0DC}


/* =========================================================
   MOTIVE-8 COACH DESKTOP EXPERIENCE
   ========================================================= */
#coach{
  min-height:100vh;
  width:min(1440px,100vw);
  max-width:none;
  background:#06111D;
  color:#EAF3F9;
}
#coach:not([hidden]){
  display:grid!important;
  grid-template-columns:230px minmax(0,1fr);
}
.coach-sidebar{
  position:sticky;
  top:0;
  height:100vh;
  background:linear-gradient(180deg,#071421 0%,#08192A 100%);
  border-right:1px solid #163047;
  padding:24px 14px 18px;
  display:flex;
  flex-direction:column;
  z-index:40;
}
.coach-brand{
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 8px 24px;
  border-bottom:1px solid rgba(255,255,255,.06);
  margin-bottom:16px;
}
.coach-brand img{width:38px;height:38px;object-fit:contain}
.coach-brand b{display:block;font-size:15px;letter-spacing:.06em;font-weight:800}
.coach-brand small{display:block;font-size:8px;letter-spacing:.18em;color:#73D0FF;font-weight:700;margin-top:2px}
.coach-side-nav{display:grid;gap:4px;background:transparent!important;border:0!important;position:static!important;height:auto!important}
.coach-side-nav button,.coach-side-section button{
  width:100%;
  min-height:44px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  color:#A8BAC8!important;
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:flex-start;
  font-size:12px;
  font-weight:600;
  text-align:left;
}
.coach-side-nav button span{width:18px;text-align:center;color:#7894A9}
.coach-side-nav button:hover,.coach-side-section button:hover{
  background:#0B263F;
  color:#FFFFFF!important;
}
.coach-side-nav button.active{
  background:linear-gradient(90deg,#0C66CE,#128AE6);
  border-color:#197FDF;
  color:#FFFFFF!important;
  box-shadow:0 8px 24px rgba(15,111,211,.22);
}
.coach-side-nav button.active span{color:#FFFFFF}
.coach-side-section{
  margin-top:22px;
  border-top:1px solid rgba(255,255,255,.06);
  padding-top:18px;
}
.coach-side-section>small{
  display:block;
  padding:0 12px 8px;
  font-size:8px;
  letter-spacing:.14em;
  color:#577188;
  font-weight:800;
}
.coach-side-section button{min-height:38px;font-size:11px}
.coach-side-footer{
  margin-top:auto;
  display:flex;
  align-items:center;
  gap:10px;
  border-top:1px solid rgba(255,255,255,.06);
  padding:16px 8px 0;
}
.coach-avatar{
  width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#36B7F6,#147DCE);
  color:#02131F;font-weight:900;font-size:10px;
}
.coach-side-footer b{display:block;font-size:10px}.coach-side-footer small{display:block;font-size:8px;color:#7792A6;margin-top:2px}

.coach-workspace{
  min-width:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 80% -10%,rgba(19,139,225,.08),transparent 30%),
    linear-gradient(180deg,#06111D 0%,#081827 100%);
  padding:0;
}
#coach .coach-screen{
  padding:32px 34px 48px!important;
  max-width:1180px;
  margin:0 auto;
  background:transparent!important;
}
.coach-page-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:22px;
}
.coach-page-head>div>small{
  display:block;
  color:#3BB3F7;
  font-size:9px;
  letter-spacing:.14em;
  font-weight:800;
  margin-bottom:5px;
}
.coach-page-head h2{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:30px!important;
  line-height:1.1;
  letter-spacing:-.035em;
  font-weight:750!important;
  margin:0 0 7px!important;
}
.coach-page-head p{font-size:12px!important;color:#839AAC!important}

#coach .stats{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
#coach .stats>div{
  background:linear-gradient(180deg,#0C243B,#0A1E33)!important;
  border:1px solid #153A59!important;
  border-radius:14px!important;
  padding:17px!important;
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}
#coach .stats small{font-size:8px!important;color:#7193AA!important;letter-spacing:.09em;font-weight:750}
#coach .stats b{font-size:28px!important;font-weight:700!important;margin-top:7px}

#coach .coach-hub-card,#coach .priority-panel,#coach .section{
  background:linear-gradient(180deg,#0B2137,#091C30)!important;
  border:1px solid #173954!important;
  border-radius:16px!important;
  box-shadow:0 12px 28px rgba(0,0,0,.12)!important;
}
#coach .coach-hub-card{padding:18px!important}
#coach .coach-hub-card b{font-size:14px!important;font-weight:700!important}
#coach .coach-hub-card span{font-size:11px!important;line-height:1.55!important;color:#88A3B6!important}

#coach input,#coach textarea,#coach select,#coach .search{
  background:#071827!important;
  color:#EAF3F9!important;
  border:1px solid #24455F!important;
  border-radius:10px!important;
  font-size:12px!important;
  font-weight:450!important;
  line-height:1.45!important;
}
#coach input:focus,#coach textarea:focus,#coach select:focus{
  border-color:#269DE9!important;
  box-shadow:0 0 0 3px rgba(38,157,233,.10)!important;
}
#coach label{
  font-size:10px!important;
  color:#A6B7C5!important;
  font-weight:650!important;
  letter-spacing:0!important;
}
#coach .cta{
  font-size:11px!important;
  font-weight:700!important;
  color:#FFFFFF!important;
  background:linear-gradient(180deg,#178FE6,#0B72D3)!important;
  border:1px solid #1B94E7!important;
  box-shadow:0 8px 18px rgba(10,112,206,.18)!important;
}
#coach .ghost{
  font-size:11px!important;
  font-weight:600!important;
  color:#B6D0E1!important;
  background:#091E32!important;
  border-color:#274963!important;
}
#coach .coach-client{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  background:#0A2035!important;
  border-color:#173B59!important;
  padding:15px 16px!important;
}
#coach .coach-client b{font-size:12px!important;font-weight:650}
#coach .coach-client small{font-size:9px!important;font-weight:450;color:#7893A6!important}

/* premium recipe editor modal */
#modal:has(#recipeEditorPremium){
  width:min(1180px,calc(100vw - 36px))!important;
}
#modal:has(#recipeEditorPremium) .modal{
  background:#071421!important;
  color:#EAF3F9!important;
  padding:0!important;
  border:1px solid #183A55;
  box-shadow:0 40px 110px rgba(0,0,0,.58)!important;
}
#modal:has(#recipeEditorPremium) #close{
  position:absolute!important;
  top:18px;right:18px;
  background:#0B2033!important;
  color:#D5E5EF!important;
  border-color:#24455F!important;
}
.recipe-editor-premium{padding:28px 30px 30px}
.recipe-editor-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-right:44px}
.recipe-editor-head h3{font-size:28px!important;font-weight:750!important;letter-spacing:-.035em;margin:0 0 5px!important}
.recipe-editor-head p{margin:0;color:#7F98AA!important;font-size:11px}
.recipe-editor-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.9fr);gap:18px}
.recipe-main-panel,.recipe-side-panel>section{
  background:linear-gradient(180deg,#0B2137,#091C2F);
  border:1px solid #183B58;
  border-radius:15px;
  padding:18px;
}
.recipe-section-title{
  color:#32B5FF;
  font-size:10px;
  letter-spacing:.08em;
  font-weight:800;
  margin:2px 0 14px;
}
.recipe-editor-premium label{display:block;margin:0 0 13px}
.recipe-editor-premium input,.recipe-editor-premium textarea,.recipe-editor-premium select{
  margin-top:6px!important;
  min-height:46px!important;
}
.recipe-editor-premium textarea{min-height:108px!important}
.recipe-photo-box{
  height:210px;
  border-radius:14px;
  border:1px dashed #31536D;
  background:linear-gradient(135deg,#0D2A43,#071A2B);
  display:grid;
  place-items:center;
  overflow:hidden;
  color:#6E8DA2;
  margin-bottom:10px;
}
.recipe-photo-box img{width:100%;height:100%;object-fit:cover}
.recipe-preset-grid{display:grid;gap:7px;margin-top:10px}
.recipe-preset{
  display:flex;align-items:center;justify-content:space-between;
  min-height:54px;padding:0 12px;
  border:1px solid #21455F;
  border-radius:10px;background:#081B2D;color:#D7E6EF;
  text-align:left;
}
.recipe-preset b{display:block;font-size:10px}.recipe-preset small{display:block;font-size:8px;color:#7894A7;margin-top:2px}
.recipe-preset.active{border-color:#1FA4F2;background:#0A2843;box-shadow:inset 3px 0 0 #22AAF7}
.recipe-nutrition-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.recipe-nutrition-stat{background:#071827;border:1px solid #1E405C;border-radius:10px;padding:12px}
.recipe-nutrition-stat small{display:block;color:#7895A9;font-size:8px}.recipe-nutrition-stat b{display:block;font-size:17px;margin-top:4px;font-weight:650}
.recipe-editor-actions{display:grid;grid-template-columns:120px 1fr 160px;gap:10px;margin-top:18px}
.recipe-editor-actions .cta,.recipe-editor-actions .ghost{margin:0!important}
@media(max-width:900px){
  #coach:not([hidden]){grid-template-columns:1fr}
  .coach-sidebar{position:relative;height:auto;padding:12px;display:block}
  .coach-brand{padding-bottom:12px}.coach-side-nav{grid-template-columns:repeat(4,1fr);display:grid}.coach-side-nav button{justify-content:center;font-size:9px;padding:8px}.coach-side-section,.coach-side-footer{display:none}
  #coach .coach-screen{padding:20px 16px 90px!important}
  .recipe-editor-grid{grid-template-columns:1fr}
}


/* =========================================================
   MOTIVE-8 REFERENCE-WIDE DESIGN
   Based on the approved premium dark coach reference.
   ========================================================= */
:root{
  --ref-bg:#06111d;
  --ref-bg2:#081827;
  --ref-surface:#0a1d30;
  --ref-surface2:#0b2238;
  --ref-line:#173650;
  --ref-line2:#234760;
  --ref-text:#f0f5f8;
  --ref-muted:#8aa0b1;
  --ref-blue:#1fa6f4;
  --ref-blue2:#0e79da;
  --ref-green:#35bd82;
  --ref-red:#da626c;
  --ref-radius:14px;
}

/* Global typography: calmer, cleaner, more premium */
body,
button,
input,
textarea,
select{
  font-family:"Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
}
body{font-weight:400!important}
h1,h2,h3,h4,b,strong{
  font-family:"Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
}
h1,h2,h3,h4{font-weight:650!important;letter-spacing:-.025em!important}
b,strong{font-weight:650!important}
p,small,label,input,textarea,select,button{letter-spacing:0!important}

/* Whole app background */
body{
  background:
    radial-gradient(circle at 80% -10%,rgba(31,166,244,.08),transparent 30%),
    linear-gradient(180deg,#030a11 0%,#06111d 100%)!important;
  color:var(--ref-text)!important;
}

/* Client shell now matches coach visual language */
.phone,.phone-app{
  background:linear-gradient(180deg,var(--ref-bg),var(--ref-bg2))!important;
  border-color:#0b2135!important;
}
#client{
  background:linear-gradient(180deg,var(--ref-bg),var(--ref-bg2))!important;
}
#client .screen,
#client .screen.light,
#client .screen.dark{
  background:
    radial-gradient(circle at 85% -10%,rgba(31,166,244,.06),transparent 28%),
    linear-gradient(180deg,var(--ref-bg),var(--ref-bg2))!important;
  color:var(--ref-text)!important;
}
#client .panel,
#client .white-panel{
  background:transparent!important;
  color:var(--ref-text)!important;
}
#client .hero,
#client .page-hero{
  background:transparent!important;
  color:var(--ref-text)!important;
  border-bottom:1px solid rgba(255,255,255,.05);
  padding:18px!important;
}
#client .hero h2,#client .page-hero h2{font-size:24px!important}
#client .hero small,#client .page-hero small{
  color:#4dbbf7!important;
  font-size:8px!important;
  letter-spacing:.12em!important;
  font-weight:700!important;
}

/* Client cards */
#client .card,
#client .section,
#client .workout,
#client .habit,
#client .meal,
#client .next,
#client .tool-card,
#client .update-card,
#client .plan-day,
#client .recipe-card,
#client .coach-meal-card{
  background:linear-gradient(180deg,#0b2136,#091c2f)!important;
  border:1px solid var(--ref-line)!important;
  border-radius:14px!important;
  box-shadow:0 10px 26px rgba(0,0,0,.10)!important;
  color:var(--ref-text)!important;
}
#client .workout,
#client .habit,
#client .meal,
#client .plan-day{
  padding:14px!important;
  margin-bottom:10px!important;
}
#client .workout b,#client .habit b,#client .meal b{
  color:#edf4f8!important;
  font-size:12px!important;
}
#client .workout small,#client .habit small,#client .meal small{
  color:#7f98aa!important;
  font-size:9px!important;
}

/* Home feature area */
#client .welcome h1{font-size:31px!important;font-weight:650!important}
#client .welcome small{color:#6d899d!important;font-size:8px!important;letter-spacing:.11em!important}
#client .welcome p{color:#a9bac6!important;font-size:12px!important}
#client .feature-grid{
  gap:12px!important;
  margin:22px 0!important;
}
#client .feature-grid button{
  background:#0a1f33!important;
  border:1px solid #153953!important;
  border-radius:13px!important;
  min-height:88px;
  color:#e9f2f7!important;
  padding:12px 8px!important;
}
#client .feature-grid button:hover{border-color:#2677a7!important;background:#0b263e!important}
#client .feature-grid span{
  width:36px!important;height:36px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#29acf4!important;
  font-size:18px!important;
}
#client .feature-grid b{font-size:10px!important;font-weight:600!important}

/* Main progress card: reference-style blue, not glossy */
#client .blue-card,
#client .score-card,
#client .coachdoing-intro{
  background:linear-gradient(135deg,#0f79d6,#169ce9)!important;
  color:#fff!important;
  border:1px solid #209de7!important;
  box-shadow:0 12px 28px rgba(11,116,201,.20)!important;
  border-radius:14px!important;
}
#client .blue-card small,#client .score-card small{color:#d9f3ff!important}
#client .blue-card p,#client .score-card p{color:#e6f7ff!important}

/* Client navigation */
#client nav,#client .bottom-nav{
  background:rgba(5,16,28,.98)!important;
  border-top:1px solid #153249!important;
  backdrop-filter:blur(16px);
}
#client nav button,#client .bottom-nav button{
  color:#708a9d!important;
  font-weight:500!important;
}
#client nav button.active,#client .bottom-nav button.active{
  color:#31aff5!important;
}
#client nav small,#client .bottom-nav small{font-weight:500!important}

/* Forms on client */
#client label{color:#8fa4b3!important;font-size:9px!important;font-weight:600!important}
#client input,#client textarea,#client select,#client .search{
  background:#071827!important;
  color:#eaf2f7!important;
  border:1px solid #203f58!important;
  border-radius:10px!important;
  font-size:11px!important;
  font-weight:400!important;
}
#client input::placeholder,#client textarea::placeholder{color:#617d91!important}
#client input:focus,#client textarea:focus,#client select:focus{
  border-color:#249ee8!important;
  box-shadow:0 0 0 3px rgba(36,158,232,.09)!important;
}

/* Buttons everywhere */
.cta{
  border-radius:10px!important;
  background:linear-gradient(180deg,#178fe6,#0d73d3)!important;
  border:1px solid #1a91e5!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:650!important;
  box-shadow:0 7px 17px rgba(8,105,195,.16)!important;
}
.ghost{
  border-radius:10px!important;
  background:#091d30!important;
  border:1px solid #25455e!important;
  color:#b6ccda!important;
  font-size:10px!important;
  font-weight:550!important;
}

/* Targets/progress */
#client .target{margin:16px 0!important}
#client .target .row{color:#a8bac6!important}
#client .bar{
  height:5px!important;
  background:#132b3d!important;
}
#client .bar i{
  background:#24a8f0!important;
}

/* Messages */
#client .msg.coach{
  background:#0b243a!important;
  border:1px solid #1b4664!important;
  color:#dce9f0!important;
}
#client .msg.client{
  background:#137fd7!important;
  color:#fff!important;
}
#client .message-box input{background:#071827!important}

/* Tools */
#client .tool-action{
  background:#0a2035!important;
  border:1px solid #173c59!important;
  border-radius:13px!important;
}
#client .tool-action b{font-size:12px!important}
#client .tool-action span{color:#7f9bad!important;font-size:9px!important}

/* Onboarding */
#client .onboarding-shortcut{
  background:linear-gradient(180deg,#0b253c,#091d30)!important;
  border:1px solid #1d4968!important;
  border-radius:14px!important;
}
#client .onboarding-shortcut span{color:#39b7f8!important}
#client .onboarding-shortcut b{font-size:12px!important}
#client .onboarding-shortcut small{color:#86a2b3!important}

/* Global modal now follows approved reference */
dialog{
  border-radius:16px!important;
}
.modal{
  background:#071421!important;
  color:#edf4f8!important;
  border:1px solid #183a55!important;
  border-radius:16px!important;
  box-shadow:0 34px 90px rgba(0,0,0,.55)!important;
}
.modal h3{font-size:22px!important;font-weight:650!important}
.modal h4{color:#28adf4!important;font-size:10px!important;letter-spacing:.07em!important}
.modal p{color:#8da4b4!important}
.modal label{color:#91a6b5!important;font-size:9px!important;font-weight:600!important}
.modal input,.modal textarea,.modal select,.modal .search{
  background:#071827!important;
  border:1px solid #213f58!important;
  color:#e9f2f7!important;
  font-size:11px!important;
}
.modal .content-admin{
  background:#091e32!important;
  border:1px solid #1d405b!important;
  color:#e9f2f7!important;
  box-shadow:none!important;
}
.modal .content-admin small{color:#718da0!important}
.modal .content-admin .ghost{
  background:#0a2942!important;
  color:#87d8ff!important;
  border-color:#1e5475!important;
}
#close{
  background:#091d30!important;
  border:1px solid #28475f!important;
  color:#aec4d2!important;
}

/* Coach visual consistency */
#coach{
  background:var(--ref-bg)!important;
}
#coach .coach-sidebar{
  background:linear-gradient(180deg,#061320,#071827)!important;
}
#coach .coach-workspace{
  background:
    radial-gradient(circle at 80% -10%,rgba(31,166,244,.06),transparent 28%),
    linear-gradient(180deg,#06111d,#081827)!important;
}
#coach .coach-page-head h2{font-weight:650!important}
#coach .coach-hub-card b,#coach .coach-client b{font-weight:600!important}
#coach .coach-side-nav button{font-weight:500!important}

/* Better table/list feel across coach admin */
#coach .content-admin{
  background:#091e32!important;
  border:1px solid #1a3b55!important;
  color:#edf4f8!important;
  box-shadow:none!important;
}
#coach .content-admin small{color:#718ea2!important}
#coach .priority-item b{font-weight:600!important}
#coach .priority-item small{font-weight:400!important}

/* Responsive: coach keeps premium feel on mobile */
@media(max-width:900px){
  #coach .coach-sidebar{
    background:#06131f!important;
    border-bottom:1px solid #18344a;
  }
  #coach .coach-side-nav button{
    border-radius:8px!important;
  }
  #coach .coach-side-nav button.active{
    background:#0d70cf!important;
  }
}

.workout-session-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.workout-session-head small{color:#35b6fa;font-size:8px;letter-spacing:.1em}.workout-session-head h3{margin:3px 0!important}.workout-session-head>span{font-size:9px;color:#8ca4b5;background:#0a2136;border:1px solid #1b405d;border-radius:999px;padding:7px 9px}
.exercise-session{overflow:hidden}.exercise-session-title{display:flex;align-items:center;justify-content:space-between;margin:10px 0}.exercise-session-title b,.exercise-session-title small{display:block}.exercise-session-title small{color:#7f98aa;font-size:9px;margin-top:3px}.done-pill{font-size:7px;font-weight:800;letter-spacing:.08em;background:rgba(53,189,130,.13);color:#71d5a7;border:1px solid rgba(53,189,130,.25);padding:5px 7px;border-radius:999px}.previous-performance{font-size:9px;color:#7894a7;background:#071827;border:1px solid #183950;padding:9px 10px;border-radius:9px;margin-bottom:9px}.previous-performance b{float:right;color:#cfe5f1}
.set-table{margin:12px 0;border:1px solid #173b56;border-radius:10px;overflow:hidden}.set-row{display:grid;grid-template-columns:42px 1fr 1fr 52px;gap:6px;align-items:center;padding:7px 8px;border-top:1px solid rgba(255,255,255,.05)}.set-row:first-child{border-top:0}.set-head{background:#071827;color:#6f8ca0;font-size:7px;font-weight:800;letter-spacing:.08em}.set-row input{margin:0!important;min-height:36px!important;text-align:center;padding:6px!important}.set-row>b{text-align:center;font-size:10px}.setDone{width:34px;height:34px;margin:auto;border-radius:50%;border:1px solid #28516d;background:#0a2034;color:#718fa3}.setDone.active{background:#168fe1;color:#fff;border-color:#2aaaf2}.exercise-complete{border-color:rgba(53,189,130,.28)!important}

.photo-progress-block{margin:18px 0 22px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.section-head small{color:#31aff5;font-size:8px;font-weight:700;letter-spacing:.1em}.section-head h3{margin:3px 0 0}.muted-copy{color:#7893a6;font-size:10px;line-height:1.5}.progress-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.progress-photo-card{position:relative;padding:0;border:1px solid #183d58;background:#091d30;border-radius:12px;overflow:hidden;text-align:left;color:#eef5f8}.progress-photo-card img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}.progress-photo-card span{display:block;padding:8px 8px 1px;font-size:8px;color:#36b5f7;font-weight:800;letter-spacing:.08em}.progress-photo-card small{display:block;padding:0 8px 8px;color:#7893a6;font-size:8px}.progress-photo-large{width:100%;max-height:65vh;object-fit:contain;border-radius:12px;background:#030a11}.empty-photo-state{grid-column:1/-1;padding:24px;border:1px dashed #24445b;border-radius:12px;color:#6f8a9d;text-align:center;font-size:10px}

.pt-package-meta{display:flex;gap:14px;margin-top:9px;font-size:9px;color:#d7effc}.pt-session-card,.pt-session-admin{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#0a2035;border:1px solid #173c59;border-radius:12px;padding:13px;margin:9px 0}.pt-session-card b,.pt-session-card small,.pt-session-card span,.pt-session-admin b,.pt-session-admin small,.pt-session-admin span{display:block}.pt-session-card b,.pt-session-admin b{font-size:11px;margin:3px 0}.pt-session-card small,.pt-session-admin small{font-size:8px;color:#65c9fb}.pt-session-card span,.pt-session-admin span{font-size:9px;color:#7894a7}.pt-session-card em{font-style:normal;font-size:8px;text-transform:uppercase;letter-spacing:.06em;padding:5px 7px;border-radius:999px;background:#0b2942;color:#7ed8ff}.pt-session-card.completed em{background:rgba(53,189,130,.12);color:#72d5a8}.pt-session-card.cancelled em,.pt-session-card.no-show em{background:rgba(218,98,108,.12);color:#e9a1a8}.pt-package-inline{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.pt-package-inline>div{background:#071827;border:1px solid #183b56;border-radius:10px;padding:11px}.pt-package-inline small,.pt-package-inline b{display:block}.pt-package-inline small{font-size:7px;color:#6f8ca0}.pt-package-inline b{font-size:20px;margin-top:3px}

/* =========================================================
   MOTIVE-8 FINAL PREMIUM UI PASS
   ========================================================= */
:root{
 --m8-ink:#f2f7fa;--m8-muted:#7f98aa;--m8-blue:#20a9f5;--m8-blue-deep:#0d73d3;
 --m8-bg:#06111d;--m8-panel:#0a1e31;--m8-panel2:#0b2339;--m8-line:#173b56;
}
*{box-sizing:border-box}
body{font-size:14px;line-height:1.45}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.screen h2{font-size:26px!important;line-height:1.08;margin:0 0 6px!important}
.screen h3{font-size:16px!important;line-height:1.2}
.screen p{line-height:1.55}
.subhead{padding:20px 18px 12px;border-bottom:1px solid rgba(255,255,255,.045)}
.subhead p{margin:5px 0 0;color:var(--m8-muted);font-size:10px}
.section{margin:12px 0!important}
.section>h3:first-child{margin-top:0!important}
.row{gap:12px}
.muted,.muted-copy{color:var(--m8-muted)!important}
.attention-banner{background:#0b263e;border:1px solid #245171;border-radius:10px;padding:10px 11px;margin:9px 0;color:#b9d4e4;font-size:9px;line-height:1.55}
.two-col{gap:9px!important}
.full-btn{width:100%}
input,textarea,select{outline:none}
textarea{resize:vertical}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #36b8fa;outline-offset:2px}
.cta,.ghost{min-height:42px}
.cta:active,.ghost:active{transform:translateY(1px)}
.content-admin{transition:border-color .15s ease,background .15s ease}
.content-admin:hover{border-color:#28516d!important}
.content-admin-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.content-admin-actions button{margin:0!important;min-height:34px!important}
.exercise-image,.alt-image{border-radius:11px;border:1px solid #173b56;background:#071827}
.exercise-image{width:100%;aspect-ratio:16/9;object-fit:cover}
.exercise-no-image{width:100%;aspect-ratio:16/9;display:grid;place-items:center;background:linear-gradient(135deg,#0b263e,#071827);border:1px solid #173b56;border-radius:11px;color:#39b8f7;font-weight:800;letter-spacing:.08em}
.machine-alt-btn{width:100%;margin:8px 0;padding:9px;border:1px solid #204863;background:#081b2d;color:#8edcff;border-radius:9px;font-size:9px}
.alternative-card{background:#071827;border:1px solid #1a405c;border-radius:11px;padding:11px;margin-bottom:10px}
.alternative-card small{color:#39b8f7;font-size:7px;font-weight:800;letter-spacing:.1em}
.alternative-card h4{margin:5px 0!important;color:#edf5f9!important}
#client .screen{padding-bottom:92px!important}
#client nav button{min-height:58px}
#client .score-card strong{font-size:34px;letter-spacing:-.04em}
#client .score-card span{font-size:10px}
#coach .coach-workspace{overflow-x:hidden}
#coach .coach-screen{min-height:100vh}
#coach .coach-page-head{padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.045)}
#coach .coach-hub{gap:12px!important}
#coach .coach-hub-card{min-height:115px}
#coach .coach-client{transition:border-color .15s ease,transform .15s ease}
#coach .coach-client:hover{border-color:#2a5877!important;transform:translateY(-1px)}
#coach .priority-panel{padding:18px!important}
#coach .priority-item{border-bottom:1px solid rgba(255,255,255,.05);padding:11px 0}
#coach .priority-item:last-child{border-bottom:0}
.modal{max-height:min(88vh,900px);overflow:auto}
.modal::-webkit-scrollbar{width:7px}.modal::-webkit-scrollbar-thumb{background:#23445c;border-radius:99px}
@media(max-width:700px){
 .screen h2{font-size:23px!important}
 .subhead{padding:17px 15px 10px}
 .two-col{grid-template-columns:1fr!important}
 .progress-photo-grid{grid-template-columns:repeat(2,1fr)}
 .recipe-editor-premium{padding:20px 15px 22px}
 .recipe-editor-actions{grid-template-columns:1fr 1fr}
 .recipe-editor-actions>div{display:none}
 .recipe-editor-actions button{width:100%}
 .set-row{grid-template-columns:34px 1fr 1fr 44px}
}

/* Emergency Meals — premium MOTIVE-8 treatment */
.emergency-head{padding:2px 2px 14px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:14px}
.emergency-head small{display:block;color:#28b1fb;font-size:8px;font-weight:800;letter-spacing:.13em;margin-bottom:5px}
.emergency-head h3{font-size:24px!important;letter-spacing:-.025em;margin:0 0 5px!important;color:#f4f8fb!important}
.emergency-head p{margin:0;color:#8099aa;font-size:10px;max-width:420px}
.emergency-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.emergency-choice{min-height:138px!important;display:flex!important;align-items:flex-start!important;gap:12px!important;text-align:left!important;padding:15px!important;border:1px solid #173e5b!important;border-radius:14px!important;background:linear-gradient(145deg,#0b263e,#081b2d)!important;color:#edf6fb!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important}
.emergency-choice:hover{border-color:#2b77a7!important;background:linear-gradient(145deg,#0d2b46,#092036)!important}
.emergency-icon{flex:0 0 31px;height:31px;display:grid;place-items:center;border-radius:9px;background:rgba(32,169,245,.11);border:1px solid rgba(32,169,245,.28);color:#43bdfd;font-size:8px;font-weight:900;letter-spacing:.06em}
.emergency-choice div{min-width:0}
.emergency-choice b{display:block!important;color:#f2f8fb!important;font-size:12px!important;line-height:1.25;margin:1px 0 5px!important}
.emergency-choice small{display:block;color:#38b8fa;font-size:7px;font-weight:800;letter-spacing:.09em;margin-bottom:9px}
.emergency-choice p{margin:0;color:#9bb0be;font-size:9px;line-height:1.5}
.emergency-rule{margin-top:11px;padding:13px 14px;border:1px solid #164b70;border-radius:13px;background:rgba(15,83,128,.13)}
.emergency-rule span{display:block;color:#39b9fb;font-size:7px;font-weight:900;letter-spacing:.13em}
.emergency-rule b{display:block;color:#edf7fb;font-size:11px;margin:4px 0}
.emergency-rule p{margin:0;color:#819baa;font-size:9px;line-height:1.5}
@media(max-width:560px){.emergency-grid{grid-template-columns:1fr}.emergency-choice{min-height:auto!important}}

/* Client programme list — compact premium treatment */
#workouts{display:flex;flex-direction:column;gap:9px;margin-top:14px}
#workouts .workout.programme-row{display:grid!important;grid-template-columns:48px minmax(0,1fr);padding:0!important;margin:0!important;min-height:104px;background:linear-gradient(135deg,#0a2136 0%,#0b263d 100%)!important;border:1px solid #173f5c!important;border-radius:14px!important;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.10)}
.programme-index{display:grid;place-items:center;background:#071a2a;border-right:1px solid rgba(56,181,247,.12);color:#2caef4;font-size:10px;font-weight:900;letter-spacing:.08em}
.programme-main{min-width:0;padding:14px 15px 12px}
.programme-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.programme-top>div{min-width:0}
.programme-top b{display:block;color:#f2f7fa;font-size:14px;line-height:1.2;letter-spacing:-.015em}
.programme-top small{display:block;color:#7895a8;font-size:9px;margin-top:4px}
.workout-status{flex:0 0 auto;display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:7px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.workout-status.complete{color:#75d7aa;background:rgba(54,191,133,.10);border:1px solid rgba(54,191,133,.2)}
.workout-status.planned{color:#77d2ff;background:rgba(32,169,245,.10);border:1px solid rgba(32,169,245,.22)}
.programme-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:15px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055)}
.programme-bottom>span{color:#6f899c;font-size:8px}
.programme-bottom button{border:0;background:transparent;color:#49c1ff;font-size:9px;font-weight:800;padding:4px 0;min-height:0}
.programme-bottom button span{margin-left:4px}
#workouts .programme-row.is-complete{background:linear-gradient(135deg,#091e31,#0a2236)!important}
#workouts .programme-row.is-complete .programme-index{color:#638397}
.programme-empty{padding:25px 18px;text-align:center;border:1px dashed #24445b;border-radius:14px;background:#081b2b}
.programme-empty b,.programme-empty span{display:block}.programme-empty b{color:#eaf4f9}.programme-empty span{margin-top:5px;color:#728da0;font-size:9px}
@media(max-width:520px){
 #workouts .workout.programme-row{grid-template-columns:40px minmax(0,1fr);min-height:96px}
 .programme-main{padding:12px}
 .programme-top b{font-size:13px}
 .programme-bottom>span{display:none}
}

/* Client nutrition — premium dashboard */
.nutrition-screen{padding-top:0!important}
.nutrition-hero{padding:24px 18px 20px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}
.nutrition-hero>small{color:#36b8fa;font-size:8px;font-weight:900;letter-spacing:.14em}.nutrition-hero h2{margin:5px 0 4px!important}.nutrition-hero p{margin:0;color:#829bac;font-size:10px}
.nutrition-section-head{display:flex;align-items:end;justify-content:space-between;padding:20px 18px 10px}.nutrition-section-head small{display:block;color:#2faef5;font-size:7px;font-weight:900;letter-spacing:.12em}.nutrition-section-head h3{margin:3px 0 0!important}.nutrition-section-head>span{color:#718da0;font-size:8px}
.nutrition-targets{padding:0 18px;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.nutrition-target{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;background:#0a2034;border:1px solid #173c58;border-radius:13px;padding:12px}
.target-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:rgba(32,169,245,.1);border:1px solid rgba(32,169,245,.2);color:#43bdfd;font-size:7px;font-weight:900}
.target-copy{min-width:0}.target-copy span{display:block;color:#7894a7;font-size:8px}.target-copy b{display:block;color:#eef6fa;font-size:12px;margin:2px 0 7px}.target-copy b em{font-style:normal;color:#71899a;font-size:8px;font-weight:500}.target-copy .bar{height:3px!important;margin:0!important}.nutrition-target>strong{font-size:8px;color:#7d9aac}
.nutrition-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px 18px 2px}.nutrition-actions button{margin:0!important}
.meal-log-head{padding-top:23px}.mini-add{border:0;background:transparent;color:#43bdfd;font-size:9px;font-weight:800;padding:5px}
.meal-log-list{padding:0 18px 18px;display:flex;flex-direction:column;gap:8px}.premium-meal{display:grid!important;grid-template-columns:38px minmax(0,1fr);gap:11px;padding:12px!important;margin:0!important;border:1px solid #173b56!important;background:#091e31!important;border-radius:12px!important}.meal-number{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#071725;color:#35b6fa;font-size:8px;font-weight:900}.premium-meal b,.premium-meal small,.premium-meal span{display:block}.premium-meal b{font-size:11px;color:#eef6fa}.premium-meal small{font-size:8px;color:#7c96a8;margin:2px 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.premium-meal span{font-size:8px;color:#55c4fb}.premium-meal span i{font-style:normal;color:#466478;margin:0 4px}
@media(max-width:520px){.nutrition-targets{grid-template-columns:1fr}.nutrition-actions{grid-template-columns:1fr 1fr}}

/* Daily Habits — premium consistency screen */
.habits-screen{padding-top:0!important}
.habits-hero{padding:24px 18px 20px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}
.habits-hero small{color:#35b6fa;font-size:8px;font-weight:900;letter-spacing:.14em}.habits-hero h2{margin:5px 0 4px!important}.habits-hero p{margin:0;color:#819aaa;font-size:10px}
.habit-summary{margin:16px 18px 10px;padding:14px 15px;display:flex;align-items:center;justify-content:space-between;background:#0a2034;border:1px solid #173c58;border-radius:13px}
.habit-summary small,.habit-summary b{display:block}.habit-summary small{color:#39b8fa;font-size:7px;font-weight:900;letter-spacing:.1em}.habit-summary b{font-size:11px;color:#eaf4f9;margin-top:3px}.habit-summary>span{font-size:20px;font-weight:800;color:#eef7fb;letter-spacing:-.04em}
.habit-list{padding:0 18px 20px;display:flex;flex-direction:column;gap:8px}
.habit-list .habit{margin:0!important;min-height:62px;padding:11px 12px!important;border-radius:12px!important;background:#091e31!important;border:1px solid #173b56!important}
.habit-list .habit b{font-size:11px}.habit-list .habit small{font-size:8px;color:#718da0;margin-top:2px}.habit-list .habit.done{border-color:rgba(53,189,130,.25)!important;background:linear-gradient(90deg,rgba(53,189,130,.055),#091e31)!important}
.habit-list .habitBtn{width:36px!important;height:36px!important;border-radius:50%!important;background:#071827!important;border:1px solid #28506c!important;color:#7392a5!important;font-size:15px!important}
.habit-list .habit.done .habitBtn{background:#1590df!important;border-color:#28aef4!important;color:#fff!important}

/* Weekly Check-In — premium guided review */
.checkin-screen{padding-top:0!important}
.checkin-hero{padding:24px 18px 20px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}
.checkin-hero small{color:#35b6fa;font-size:8px;font-weight:900;letter-spacing:.14em}.checkin-hero h2{margin:5px 0 4px!important}.checkin-hero p{margin:0;color:#819aaa;font-size:10px;max-width:430px}
.checkin-intro{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:16px 18px 10px;padding:13px 14px;background:#091f33;border:1px solid #173c58;border-radius:12px}.checkin-intro small,.checkin-intro b{display:block}.checkin-intro small{color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.1em}.checkin-intro b{font-size:12px;margin-top:2px}.checkin-intro>span{max-width:190px;text-align:right;color:#7893a6;font-size:8px}
.checkin-form{padding:0 18px 22px}.checkin-field{display:grid;grid-template-columns:35px minmax(0,1fr);gap:11px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.055)}.checkin-step{width:35px;height:35px;display:grid;place-items:center;border:1px solid #1d4663;background:#071827;border-radius:10px;color:#3cb9f8;font-size:8px;font-weight:900}.checkin-field label{margin:0!important}.checkin-field label>span{display:block;color:#dcebf2;font-size:10px;font-weight:700;margin:0 0 7px}.checkin-field label>span em{font-style:normal;color:#6f8b9e;font-size:8px;font-weight:500}.checkin-field input,.checkin-field textarea{margin:0!important;background:#081b2c!important;border-color:#183e59!important}.checkin-field textarea{min-height:82px}
.checkin-submit{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px;padding:14px;background:#0a2237;border:1px solid #174463;border-radius:13px}.checkin-submit small,.checkin-submit b{display:block}.checkin-submit small{font-size:7px;color:#39b8fa;font-weight:900;letter-spacing:.11em}.checkin-submit b{font-size:10px;margin-top:2px}.checkin-submit .cta{width:auto!important;margin:0!important;padding-left:17px!important;padding-right:17px!important}
@media(max-width:520px){.checkin-submit{display:block}.checkin-submit .cta{width:100%!important;margin-top:11px!important}}

/* Progress dashboard — premium trend-led treatment */
.progress-screen{padding-top:0!important}
.progress-hero{padding:24px 18px 20px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}
.progress-hero small{color:#35b6fa;font-size:8px;font-weight:900;letter-spacing:.14em}.progress-hero h2{margin:5px 0 4px!important}.progress-hero p{margin:0;color:#819aaa;font-size:10px}
.progress-section-head,.progress-log-head{display:flex;align-items:end;justify-content:space-between;padding:20px 18px 10px}.progress-section-head small,.progress-log-head small{display:block;color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.12em}.progress-section-head h3,.progress-log-head h3{margin:3px 0 0!important}.progress-section-head>span{font-size:8px;color:#708c9f}
.progress-stats{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;padding:0 18px!important;margin:0!important}.progress-stats>div{position:relative;padding:13px 11px!important;background:#0a2034!important;border:1px solid #173c58!important;border-radius:12px!important}.progress-stats>div>span{position:absolute;right:9px;top:8px;color:#2d5b79;font-size:7px;font-weight:900}.progress-stats small{display:block;color:#6f8da1!important;font-size:7px!important;font-weight:800;letter-spacing:.08em}.progress-stats b{display:block;margin-top:6px;color:#f0f7fa!important;font-size:17px!important;letter-spacing:-.03em}.progress-stats b em{font-style:normal;color:#6e8b9f;font-size:8px;font-weight:600}
.progress-chart-card{margin:10px 18px 0;padding:14px;background:#081c2e;border:1px solid #173b56;border-radius:13px}.chart-title{display:flex;justify-content:space-between;align-items:center}.chart-title small,.chart-title b{display:block}.chart-title small{font-size:7px;color:#35b6fa;font-weight:900;letter-spacing:.1em}.chart-title b{font-size:10px;margin-top:2px}.chart-title>span{font-size:8px;color:#6f8b9e}.progress-chart-card .chart{height:115px!important;margin-top:12px!important;border-bottom:1px solid #1b415b!important;background:linear-gradient(180deg,rgba(32,169,245,.025),transparent)!important}.progress-chart-card .chart i{border-radius:4px 4px 0 0!important;background:linear-gradient(#38b9fa,#147fd1)!important;opacity:.9}
.progress-screen .photo-progress-block{padding:0 18px;margin:22px 0 4px!important}.progress-screen .photo-progress-block .section-head{padding:0!important}.progress-screen .photo-progress-grid{margin-top:10px}
.progress-log-head{padding-top:22px}.progress-log-form{margin:0 18px 24px;padding:14px;background:#091e31;border:1px solid #173b56;border-radius:13px}.progress-input-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.progress-log-form label{font-size:8px;color:#91a8b7;font-weight:700}.progress-log-form label>span{float:right;color:#547389;font-weight:500}.progress-log-form input,.progress-log-form textarea{margin-top:6px!important;background:#071827!important}.progress-log-form textarea{min-height:75px}.progress-log-form .cta{margin-bottom:0!important}
@media(max-width:520px){.progress-stats{grid-template-columns:1fr 1fr 1fr!important}.progress-input-grid{grid-template-columns:1fr}.progress-stats b{font-size:14px!important}}

/* Messages — premium coach communication */
.messages-screen{padding:0 0 86px!important;display:flex;flex-direction:column;min-height:calc(100vh - 70px)}
.messages-hero{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:19px 18px 17px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}.coach-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#071827;border:1px solid #22618a;color:#3dbbfb;font-size:10px;font-weight:900;letter-spacing:.08em}.messages-hero small{display:block;color:#3ab9f9;font-size:7px;font-weight:900;letter-spacing:.12em}.messages-hero h2{font-size:17px!important;margin:2px 0!important}.messages-hero p{margin:0;color:#7e98a9;font-size:8px}.online-dot{align-self:start;margin-top:2px;padding:5px 7px;border:1px solid rgba(53,189,130,.22);border-radius:999px;background:rgba(53,189,130,.08);color:#70d5a7;font-size:6px;font-weight:900;letter-spacing:.08em}
.message-date-label{text-align:center;padding:15px 0 3px;color:#52738a;font-size:7px;font-weight:900;letter-spacing:.12em}
.premium-chat{flex:1!important;padding:13px 18px 18px!important;display:flex!important;flex-direction:column!important;gap:12px!important;background:transparent!important;overflow-y:auto}.message-wrap{display:flex;flex-direction:column;max-width:78%}.message-wrap.coach{align-self:flex-start;align-items:flex-start}.message-wrap.client{align-self:flex-end;align-items:flex-end}.message-wrap>small{margin:0 5px 4px;color:#5d7a8e;font-size:6px;font-weight:900;letter-spacing:.1em}.premium-chat .msg{margin:0!important;padding:10px 12px!important;border-radius:13px!important;font-size:10px!important;line-height:1.5!important;max-width:none!important}.premium-chat .msg.coach{background:#0b253c!important;border:1px solid #1a4563!important;color:#dceaf1!important;border-bottom-left-radius:4px!important}.premium-chat .msg.client{background:linear-gradient(135deg,#128bdc,#0b6fc0)!important;border:1px solid #249ee9!important;color:white!important;border-bottom-right-radius:4px!important}.chat-empty{margin:auto;text-align:center;padding:35px 20px;color:#6f8a9d}.chat-empty b,.chat-empty span{display:block}.chat-empty b{color:#dcebf2;font-size:11px}.chat-empty span{font-size:8px;margin-top:4px}
.premium-send{position:sticky;bottom:0;display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:11px 18px 13px!important;background:linear-gradient(180deg,rgba(6,17,29,.8),#06111d 25%);border-top:1px solid rgba(255,255,255,.05)}.premium-send input{height:43px!important;margin:0!important;border-radius:12px!important;background:#091e31!important;border:1px solid #183e5a!important;padding:0 13px!important}.premium-send button{height:43px!important;padding:0 15px!important;border-radius:11px!important;border:1px solid #1c9be4!important;background:linear-gradient(135deg,#1597e8,#0b70c2)!important;color:#fff!important;font-size:9px!important;font-weight:800!important}.premium-send button span{margin-left:5px}

/* What's Coach Doing — premium editorial feed */
.coachdoing-screen{padding-top:0!important}
.coachdoing-hero{padding:24px 18px 20px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}.coachdoing-hero small{color:#35b6fa;font-size:8px;font-weight:900;letter-spacing:.14em}.coachdoing-hero h2{margin:5px 0 4px!important}.coachdoing-hero p{margin:0;color:#819aaa;font-size:10px}
.coachdoing-feature{display:grid;grid-template-columns:44px 1fr;gap:12px;margin:16px 18px 4px;padding:14px;background:linear-gradient(135deg,#0a2339,#091d30);border:1px solid #194561;border-radius:13px}.coachdoing-feature>span{width:44px;height:44px;display:grid;place-items:center;border-radius:11px;background:#071827;border:1px solid #24618a;color:#3dbbfb;font-size:9px;font-weight:900}.coachdoing-feature small,.coachdoing-feature b{display:block}.coachdoing-feature small{color:#36b7f8;font-size:7px;font-weight:900;letter-spacing:.11em}.coachdoing-feature b{font-size:11px;line-height:1.35;margin:3px 0}.coachdoing-feature p{font-size:8px;color:#7893a5;margin:0}
.feed-heading{display:flex;align-items:end;justify-content:space-between;padding:20px 18px 10px}.feed-heading small{display:block;color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.11em}.feed-heading h3{margin:3px 0 0!important}.feed-heading>span{color:#6e899c;font-size:8px}
.coach-meal-feed{padding:0 18px 22px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.coach-meal-card{overflow:hidden!important;margin:0!important;border:1px solid #173d59!important;border-radius:14px!important;background:#091e31!important}.coach-meal-photo{height:150px!important;background-position:center!important;background-size:cover!important;border:0!important;border-bottom:1px solid #173d59!important;border-radius:0!important}.coach-meal-photo.no-image{display:flex!important;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 25%,#0f3b5e,#071827 70%)!important;color:#36b8fa!important}.coach-meal-photo.no-image span{font-size:18px;font-weight:900;letter-spacing:.08em}.coach-meal-photo.no-image small{font-size:6px;letter-spacing:.12em;margin-top:3px}.coach-meal-body{padding:13px!important}.coach-meal-body>small{color:#38b8fa!important;font-size:7px!important;font-weight:900!important;letter-spacing:.1em}.coach-meal-body h3{font-size:13px!important;margin:4px 0!important}.coach-meal-body>p{font-size:8px!important;color:#839cab!important;line-height:1.5!important;margin:0 0 10px!important}.meal-macros{display:flex!important;gap:6px!important;margin:0 0 9px!important}.meal-macros span{flex:1;padding:7px 8px!important;border:1px solid #183e59!important;border-radius:8px!important;background:#071827!important;color:#7894a7!important;font-size:7px!important}.meal-macros span b{display:block;color:#eaf5fa;font-size:10px}.coach-meal-body details{border-top:1px solid rgba(255,255,255,.05);padding:8px 0 0;margin-top:7px}.coach-meal-body summary{cursor:pointer;color:#61c9fc;font-size:8px;font-weight:700}.coach-meal-body details p{white-space:pre-line;color:#849cab;font-size:8px;line-height:1.5;margin:7px 0 0}
@media(max-width:560px){.coach-meal-feed{grid-template-columns:1fr}.coach-meal-photo{height:180px!important}}

/* MOTIVE-8 Hub — premium utility dashboard */
.tools-screen{padding-top:0!important}
.tools-hero{padding:24px 18px 20px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}.tools-hero small{color:#35b6fa;font-size:8px;font-weight:900;letter-spacing:.14em}.tools-hero h2{margin:5px 0 4px!important}.tools-hero p{margin:0;color:#819aaa;font-size:10px}
.hub-overview{padding:16px 18px 2px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.hub-score,.hub-mission{margin:0!important;min-height:155px!important;border-radius:14px!important}.hub-score{padding:15px!important;background:linear-gradient(145deg,#0d3150,#0a2238)!important;border:1px solid #205270!important}.hub-score-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.hub-score-top small,.hub-score-top b{display:block}.hub-score-top small{font-size:7px!important;color:#5fc9fb!important;letter-spacing:.1em}.hub-score-top b{font-size:11px;margin-top:3px}.hub-score-top>div:last-child{text-align:right;white-space:nowrap}.hub-score strong{font-size:32px!important;line-height:1!important}.hub-score span{font-size:9px!important;color:#7c9aab!important}.hub-score .bar{margin:17px 0 9px!important;height:4px!important}.hub-score p{font-size:8px!important;color:#829cab!important;margin:0!important}.hub-mission{padding:15px!important;background:#091e31!important;border:1px solid #173d59!important}.hub-mission>small{color:#35b6fa!important;font-size:7px!important;font-weight:900!important;letter-spacing:.1em}.hub-mission h3{font-size:13px!important;margin:7px 0 4px!important}.hub-mission p{font-size:8px!important;color:#7d96a7!important}
.hub-section-head{padding:22px 18px 9px}.hub-section-head small{display:block;color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.12em}.hub-section-head h3{margin:3px 0 0!important}
.hub-action-grid{padding:0 18px;display:flex;flex-direction:column;gap:8px}.hub-action-grid .tool-action{width:100%;display:grid!important;grid-template-columns:37px minmax(0,1fr) auto;align-items:center;gap:11px;text-align:left!important;padding:12px!important;margin:0!important;min-height:65px!important;border-radius:12px!important;background:#091e31!important;border:1px solid #173c58!important}.hub-action-grid .tool-action:hover{border-color:#2a6288!important}.hub-action-grid .tool-action.danger-soft{background:linear-gradient(90deg,rgba(193,76,88,.07),#091e31)!important;border-color:rgba(193,76,88,.22)!important}.hub-action-no{width:37px;height:37px;display:grid;place-items:center;border-radius:10px;background:#071827;color:#35b6fa;font-size:8px;font-weight:900;border:1px solid #1d4663}.hub-action-grid .danger-soft .hub-action-no{color:#e29ba3;border-color:rgba(193,76,88,.28)}.hub-action-grid .tool-action b,.hub-action-grid .tool-action small{display:block}.hub-action-grid .tool-action b{font-size:11px!important;color:#edf6fa!important}.hub-action-grid .tool-action small{font-size:8px!important;color:#758fa2!important;margin-top:2px}.hub-action-grid .tool-action em{font-style:normal;color:#3cb9fa;font-size:13px}
@media(max-width:560px){.hub-overview{grid-template-columns:1fr}.hub-score,.hub-mission{min-height:auto!important}}

/* 1-to-1 PT Diary — premium appointment experience */
.ptdiary-screen{padding-top:0!important}
.pt-hero{padding:24px 18px 20px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}.pt-hero small{color:#35b6fa;font-size:8px;font-weight:900;letter-spacing:.14em}.pt-hero h2{margin:5px 0 4px!important}.pt-hero p{margin:0;color:#819aaa;font-size:10px}
.pt-package-summary{padding:16px 18px 0}.pt-balance-card{padding:16px;background:linear-gradient(135deg,#0d3150,#092137);border:1px solid #205270;border-radius:14px}.pt-balance-card>div:first-child{display:flex;align-items:end;justify-content:space-between}.pt-balance-card small{color:#5bc8fb;font-size:7px;font-weight:900;letter-spacing:.11em}.pt-balance-card strong{display:block;color:#f1f8fb;font-size:36px;line-height:1;letter-spacing:-.05em}.pt-balance-breakdown{display:flex;gap:8px;margin:13px 0 10px}.pt-balance-breakdown span{flex:1;padding:8px 9px;background:#071827;border:1px solid #19415d;border-radius:9px;color:#7894a7;font-size:8px}.pt-balance-breakdown b{color:#eaf5fa;font-size:11px;margin-right:3px}.pt-balance-card .bar{height:4px!important;margin:0!important}
.pt-info-strip{display:grid;grid-template-columns:40px 1fr;gap:11px;margin:10px 18px 0;padding:12px 13px;border:1px solid #173d59;border-radius:12px;background:#091e31}.pt-info-strip>span{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#071827;border:1px solid #225b80;color:#39b9fa;font-size:8px;font-weight:900}.pt-info-strip small,.pt-info-strip b{display:block}.pt-info-strip small{color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.1em}.pt-info-strip b{font-size:10px;margin:2px 0}.pt-info-strip p{margin:0;color:#748fa2;font-size:8px}
.pt-section-head{display:flex;align-items:end;justify-content:space-between;padding:22px 18px 10px}.pt-section-head small{display:block;color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.11em}.pt-section-head h3{margin:3px 0 0!important}.pt-section-head>span{font-size:8px;color:#6f8a9d}.pt-session-list{padding:0 18px 22px;display:flex;flex-direction:column;gap:8px}.pt-session-list .pt-session-card{display:grid!important;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;margin:0!important;padding:11px!important;min-height:72px;background:#091e31!important;border:1px solid #173c58!important;border-radius:12px!important}.pt-date-tile{width:48px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#071827;border:1px solid #1b4664;border-radius:10px}.pt-date-tile b{font-size:15px!important;line-height:1}.pt-date-tile small{margin-top:3px;color:#3ab9fa!important;font-size:7px!important;font-weight:900}.pt-session-copy small,.pt-session-copy b,.pt-session-copy span{display:block}.pt-session-copy small{font-size:7px!important;color:#38b8fa!important;font-weight:800}.pt-session-copy b{font-size:11px!important;margin:3px 0}.pt-session-copy span{font-size:8px!important;color:#728da0!important}.pt-session-list .pt-session-card em{font-size:7px!important}.pt-empty{text-align:center;padding:30px 15px;border:1px dashed #23445b;border-radius:13px;background:#081b2b}.pt-empty span,.pt-empty b,.pt-empty small{display:block}.pt-empty span{color:#35b6fa;font-size:13px;font-weight:900}.pt-empty b{font-size:11px;margin:5px 0 2px}.pt-empty small{color:#708b9d;font-size:8px}

/* Onboarding — premium guided setup */
.onboarding-screen{padding-top:0!important}
.onboarding-hero{padding:24px 18px 20px;background:linear-gradient(155deg,#0c2a45,#081a2b 72%);border-bottom:1px solid #17405e}.onboarding-hero small{color:#35b6fa;font-size:8px;font-weight:900;letter-spacing:.14em}.onboarding-hero h2{margin:5px 0 4px!important}.onboarding-hero p{margin:0;color:#819aaa;font-size:10px;max-width:430px}
.onboarding-note{display:grid;grid-template-columns:42px 1fr;gap:11px;margin:16px 18px 5px;padding:13px;background:#091f33;border:1px solid #173e5b;border-radius:12px}.onboarding-note>span{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#071827;border:1px solid #225b80;color:#3ab9fa;font-size:8px;font-weight:900}.onboarding-note small,.onboarding-note b{display:block}.onboarding-note small{color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.1em}.onboarding-note b{font-size:10px;margin:2px 0}.onboarding-note p{margin:0;color:#7893a5;font-size:8px}
.onboarding-screen #onboardingStatus{margin:10px 18px 0}.onboarding-group{margin:10px 18px!important;padding:15px!important;background:#091e31!important;border:1px solid #173b56!important;border-radius:14px!important}.onboarding-group-head{display:flex;align-items:center;gap:10px;padding-bottom:12px;margin-bottom:11px;border-bottom:1px solid rgba(255,255,255,.055)}.onboarding-group-head>span{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#071827;border:1px solid #1c4867;color:#35b6fa;font-size:8px;font-weight:900}.onboarding-group-head small{display:block;color:#56788f;font-size:6px;font-weight:900;letter-spacing:.1em}.onboarding-group-head h3{margin:2px 0 0!important;font-size:13px!important}.onboarding-group label{font-size:8px!important;color:#91a8b7!important;font-weight:700!important}.onboarding-group input,.onboarding-group textarea,.onboarding-group select{margin-top:5px!important;background:#071827!important;border-color:#183e59!important}.onboarding-group textarea{min-height:72px}
.onboarding-screen #saveOnboarding,.onboarding-screen button[type="submit"]{margin:15px 18px 24px!important;width:calc(100% - 36px)!important}

/* =========================================================
   FINAL REMAINING SCREEN PASS
   ========================================================= */
.final-premium-screen{padding-bottom:92px!important}
.final-premium-screen>h2:first-child{padding:23px 18px 5px;margin:0!important;background:linear-gradient(155deg,#0c2a45,#081a2b 72%)}
.final-premium-screen>h2:first-child+ .muted,.final-premium-screen>h2:first-child+p{padding:0 18px 19px;margin:0!important;background:#081a2b;border-bottom:1px solid #17405e;color:#819aaa!important;font-size:9px!important}
.final-premium-screen>.panel,.final-premium-screen>.card,.final-premium-screen>.section{margin-left:18px!important;margin-right:18px!important;border-radius:14px!important;border-color:#173c58!important;background:#091e31!important}
.final-premium-screen .row{align-items:center}
.final-premium-screen .ghost,.final-premium-screen .cta{border-radius:10px!important;font-weight:750!important}
.final-premium-screen .tool-action{border-radius:12px!important;background:#091e31!important;border-color:#173c58!important}
.home-screen .hero{padding:25px 18px 20px!important;background:linear-gradient(155deg,#0d2e4b,#081a2b 72%)!important;border-bottom:1px solid #17405e}
.home-screen .hero h1,.home-screen .hero h2{letter-spacing:-.035em}
.home-screen .panel{box-shadow:0 10px 30px rgba(0,0,0,.08)}
.home-screen .quick-grid>*{border-radius:13px!important;border-color:#173d59!important;background:#091e31!important}
.home-screen .quick-grid b{font-size:11px!important}.home-screen .quick-grid small{font-size:8px!important;color:#7691a3!important}
.recipe-screen .recipe-card,.mealplan-screen .meal-card{overflow:hidden;border-radius:14px!important;border-color:#173d59!important;background:#091e31!important}
.recipe-screen img,.mealplan-screen img{object-fit:cover}
.workout-detail-screen .exercise,.exercise-screen .exercise{border-radius:14px!important;background:#091e31!important;border-color:#173d59!important}
.workout-detail-screen .set-row{border-radius:10px}
#coach{background:#06111d}
#coach .coach-topbar{border-bottom:1px solid #173b56;background:#081827}
#coach .coach-sidebar{background:#071725;border-right:1px solid #173b56}
#coach .coach-nav button{border-radius:10px;margin:2px 8px;width:calc(100% - 16px)}
#coach .coach-nav button.active{background:linear-gradient(90deg,#0d3150,#0a243a);color:#58c5fb}
#coach .coach-page-head h2{letter-spacing:-.03em}
#coach .coach-page-head p{color:#7894a7}
#coach .coach-screen>.panel,#coach .coach-screen>.card,#coach .coach-screen>.section{border-radius:14px!important;background:#091e31!important;border-color:#173c58!important}
#coach table{border-collapse:separate;border-spacing:0 6px}
#coach th{color:#6f8ca0;font-size:8px;letter-spacing:.08em;text-transform:uppercase}
#coach td{background:#091e31;border-top:1px solid #173b56;border-bottom:1px solid #173b56}
#coach td:first-child{border-left:1px solid #173b56;border-radius:10px 0 0 10px}
#coach td:last-child{border-right:1px solid #173b56;border-radius:0 10px 10px 0}
#coach input,#coach textarea,#coach select{background:#071827!important;border-color:#183e59!important}
#coach .coach-hub-card,#coach .coach-client,#coach .content-admin,#coach .priority-panel{border-radius:14px!important;background:#091e31!important;border-color:#173c58!important}
#coach .coach-hub-card small,#coach .content-admin small{color:#36b8fa}
#coach .coach-client b{color:#edf6fa}
#coach .cta{background:linear-gradient(135deg,#1597e8,#0b70c2)!important}
#coach .ghost{background:#081b2d!important;border-color:#214966!important}
@media(max-width:760px){
 #coach .coach-sidebar{border-right:0;border-bottom:1px solid #173b56}
 #coach .coach-nav{overflow-x:auto}
 #coach .coach-nav button{white-space:nowrap;width:auto}
}

/* Canonical MOTIVE-8 asset placeholders */
.m8-image-placeholder{width:100%;aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 20%,#10446b 0,#0a263d 34%,#071827 78%);border:1px solid #19415d;border-radius:12px;color:#35b6fa;overflow:hidden}
.m8-image-placeholder b{font-size:18px;letter-spacing:.08em;font-weight:900}.m8-image-placeholder small{margin-top:4px;color:#6f91a6;font-size:7px;letter-spacing:.12em;font-weight:800}
.image-missing .m8-image-placeholder{display:flex}

/* =========================================================
   MOTIVE-8 RESPONSIVE FIT PASS
   Keep all screens inside the viewport on mobile/tablet/desktop.
   ========================================================= */
html,body{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
}
body{min-height:100dvh}
#shell,.phone,.phone-app,#client,#coach,.coach-workspace{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
main,section,article,div,form,nav,aside{
  min-width:0;
}
img,video,canvas,svg{
  max-width:100%;
  height:auto;
}
input,textarea,select,button{
  max-width:100%;
}
textarea{
  width:100%!important;
}
.screen{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
.panel,.card,.section,.tool-card,.coach-hub-card,.priority-panel,
.recipe-main-panel,.recipe-side-panel>section{
  max-width:100%!important;
}

/* Modal/dialog sizing */
dialog{
  width:min(94vw,760px)!important;
  max-width:94vw!important;
  max-height:90dvh!important;
  margin:auto!important;
}
dialog:has(#recipeEditorPremium){
  width:min(96vw,1120px)!important;
  max-width:96vw!important;
}
.modal{
  width:100%!important;
  max-width:100%!important;
  max-height:90dvh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
.modal table,.modal .table-wrap{
  max-width:100%;
  overflow-x:auto;
}

/* Responsive grids */
.two-col,.recipe-nutrition-grid,.nutrition-targets,.hub-overview,
.progress-input-grid,.progress-stats,.profile-summary,.stats{
  min-width:0;
}
.two-col>*,
.recipe-editor-grid>*,
.recipe-nutrition-grid>*,
.nutrition-targets>*,
.progress-input-grid>*,
.progress-stats>*,
.profile-summary>*,
.stats>*{
  min-width:0;
}

/* Coach desktop layout */
#coach:not([hidden]){
  grid-template-columns:minmax(190px,230px) minmax(0,1fr)!important;
  width:100vw!important;
  max-width:100vw!important;
}
.coach-sidebar{
  width:100%!important;
  max-width:230px!important;
  overflow-y:auto;
  overflow-x:hidden;
}
.coach-workspace{
  overflow-x:hidden!important;
}
#coach .coach-screen{
  width:100%!important;
  max-width:1180px!important;
  box-sizing:border-box;
}
#coach table{
  width:100%;
  max-width:100%;
}
#coach .table-wrap{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

/* Workout and content rows */
.programme-main,.programme-top>div,.pt-session-copy,.target-copy,
.coach-client>div,.content-admin>div{
  min-width:0;
}
.programme-top b,.pt-session-copy b,.coach-client b,
.content-admin b,.premium-meal b{
  overflow-wrap:anywhere;
}
.programme-bottom,.content-admin-actions{
  flex-wrap:wrap;
}

/* Bottom nav */
#client nav,#client .bottom-nav{
  width:100%!important;
  max-width:100vw!important;
  left:0!important;
  right:0!important;
}
#client nav button,#client .bottom-nav button{
  min-width:0!important;
}

/* Small phones */
@media(max-width:520px){
  .phone,.phone-app{
    border-radius:0!important;
    width:100vw!important;
    max-width:100vw!important;
  }
  .screen{
    padding-left:0!important;
    padding-right:0!important;
  }
  .screen>h2:first-child,
  .screen>p.muted,
  .screen>.subhead,
  .screen>.hero,
  .screen>.panel{
    max-width:100%;
  }
  .two-col,
  .recipe-editor-grid,
  .recipe-nutrition-grid,
  .nutrition-targets,
  .hub-overview,
  .profile-summary,
  .progress-input-grid{
    grid-template-columns:1fr!important;
  }
  .progress-stats{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .progress-photo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .coach-meal-feed{
    grid-template-columns:1fr!important;
  }
  .recipe-editor-premium{
    padding:18px 14px 20px!important;
  }
  .recipe-editor-actions{
    grid-template-columns:1fr!important;
  }
  .recipe-editor-actions>div{
    display:none!important;
  }
  .recipe-editor-actions button{
    width:100%!important;
  }
  .set-row{
    grid-template-columns:30px minmax(0,1fr) minmax(0,1fr) 40px!important;
    gap:4px!important;
    padding:6px!important;
  }
  .set-row input{
    min-width:0!important;
    width:100%!important;
  }
  .workout-session-head{
    gap:8px;
  }
  .workout-session-head>span{
    white-space:nowrap;
  }
  .emergency-grid{
    grid-template-columns:1fr!important;
  }
  .premium-send{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  .premium-send button{
    padding:0 12px!important;
  }
}

/* Tablets / narrow coach view */
@media(max-width:900px){
  #coach:not([hidden]){
    display:block!important;
    width:100%!important;
  }
  .coach-sidebar{
    position:sticky!important;
    top:0;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    overflow:visible!important;
  }
  .coach-side-nav{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .coach-side-nav button{
    min-width:0!important;
    padding:8px 5px!important;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .coach-workspace{
    width:100%!important;
  }
  #coach .coach-screen{
    max-width:100%!important;
    padding:20px 14px 90px!important;
  }
  #coach .stats{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

/* Very small phones */
@media(max-width:360px){
  .progress-stats{
    grid-template-columns:1fr!important;
  }
  .nutrition-actions{
    grid-template-columns:1fr!important;
  }
  .programme-row{
    grid-template-columns:34px minmax(0,1fr)!important;
  }
  .programme-main{
    padding:10px!important;
  }
  .programme-top{
    gap:7px!important;
  }
  .workout-status{
    padding:4px 6px!important;
    font-size:6px!important;
  }
  .pt-session-list .pt-session-card{
    grid-template-columns:42px minmax(0,1fr)!important;
  }
  .pt-session-list .pt-session-card>em{
    grid-column:2;
    justify-self:start;
  }
}

/* Nutrition manager modal — remove dead space and use available area */
dialog:has(.nutrition-manager){
  width:min(920px,94vw)!important;
  max-width:94vw!important;
  height:auto!important;
  max-height:88dvh!important;
  overflow:visible!important;
}
dialog:has(.nutrition-manager) .modal{
  height:auto!important;
  min-height:0!important;
  max-height:88dvh!important;
  padding:20px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
.nutrition-manager{
  width:100%;
  display:block;
}
.nutrition-manager>h3{
  margin:0 0 16px!important;
}
.nutrition-manager>h4{
  margin:20px 0 10px!important;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.06);
}
.nutrition-manager>h4:first-of-type{
  border-top:0;
  padding-top:0;
  margin-top:8px!important;
}
.nutrition-manager .content-admin{
  margin:8px 0!important;
}
@media(min-width:760px){
  .nutrition-manager{
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:14px;
    align-items:start;
  }
  .nutrition-manager>h3,
  .nutrition-manager>h4{
    grid-column:1/-1;
  }
}

/* Coach Client Content — publishing centre */
.coach-content-screen{max-width:1180px!important}
.content-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:4px}
.content-command{width:100%;min-height:128px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px!important;text-align:left;border:1px solid #173c58!important;border-radius:14px!important;background:linear-gradient(145deg,#0a2136,#091c2f)!important;color:#edf6fa!important;box-shadow:0 8px 24px rgba(0,0,0,.08)!important}
.content-command:hover{border-color:#2b658c!important;background:linear-gradient(145deg,#0b2942,#092037)!important}
.content-command.primary-content{border-color:#1c5b83!important;background:linear-gradient(145deg,#0c2d49,#092038)!important}
.content-command-no{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#071827;border:1px solid #21506e;color:#39b9fa;font-size:8px;font-weight:900;letter-spacing:.06em}
.content-command small,.content-command b,.content-command p{display:block}.content-command small{color:#39b9fa;font-size:7px;font-weight:900;letter-spacing:.11em;margin-bottom:4px}.content-command b{font-size:13px;line-height:1.2;margin-bottom:5px}.content-command p{margin:0;color:#7f99aa;font-size:9px;line-height:1.5}.content-command em{font-style:normal;color:#3ab9fa;font-size:15px;align-self:center}
.content-help-strip{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;margin-top:14px;padding:14px 15px;border:1px solid #17415e;border-radius:13px;background:#081d30}.content-help-strip>span{width:44px;height:44px;display:grid;place-items:center;border-radius:11px;background:#071827;border:1px solid #245d82;color:#3ab9fa;font-size:9px;font-weight:900}.content-help-strip small,.content-help-strip b{display:block}.content-help-strip small{color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.11em}.content-help-strip b{font-size:11px;margin:3px 0}.content-help-strip p{margin:0;color:#7792a4;font-size:8px;line-height:1.5}
@media(max-width:720px){.content-command-grid{grid-template-columns:1fr}.content-command{min-height:auto}}

/* Hub action icons — replace placeholder numbers */
.hub-action-no.hub-icon{
  width:42px!important;
  height:42px!important;
  border-radius:11px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(145deg,#0a2a44,#071827)!important;
  border:1px solid #245878!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.hub-action-no.hub-icon svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:#3dbbfb;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.hub-action-grid .danger-soft .hub-icon{
  border-color:rgba(218,98,108,.32)!important;
  background:linear-gradient(145deg,rgba(140,44,55,.16),#071827)!important;
}
.hub-action-grid .danger-soft .hub-icon svg{
  stroke:#e58d98;
}
\n/* Meal plan builder */\n.nutrition-manager-head{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px}.nutrition-manager-head small{color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.11em}.nutrition-manager-head h3{margin:3px 0!important}.nutrition-manager-head p{margin:0;color:#7893a5;font-size:9px}.meal-plan-admin{display:flex!important;align-items:center;justify-content:space-between;gap:12px}.meal-plan-admin>div:first-child{min-width:0}.meal-plan-editor>p{color:#7893a5;font-size:9px}.meal-plan-builder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:17px 0 8px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}.meal-plan-builder-head small,.meal-plan-builder-head b{display:block}.meal-plan-builder-head small{color:#35b6fa;font-size:7px;font-weight:900;letter-spacing:.1em}.meal-plan-builder-head b{font-size:10px;margin-top:2px}.meal-plan-builder-row{display:grid;grid-template-columns:72px 130px minmax(200px,1fr) auto;gap:8px;align-items:end;padding:10px;margin:7px 0;background:#081b2d;border:1px solid #173c58;border-radius:11px}.meal-plan-builder-row label{margin:0!important}.meal-plan-builder-row input,.meal-plan-builder-row select{margin:5px 0 0!important}.meal-plan-builder-row button{margin:0!important;min-height:42px!important}@media(max-width:720px){.nutrition-manager-head{display:block}.nutrition-manager-head .cta{margin-top:10px}.meal-plan-admin{display:block!important}.meal-plan-builder-row{grid-template-columns:1fr 1fr}.meal-plan-builder-row label:nth-child(3){grid-column:1/-1}.meal-plan-builder-row button{grid-column:1/-1}}\n
/* =========================================================
   MOTIVE-8 LIVE MOBILE SHELL FIX
   Login is a true front page. Coach UI is not trapped in the
   client's 440px phone shell.
   ========================================================= */

/* Critical: author CSS must never override HTML's hidden attribute. */
[hidden]{display:none!important}

/* Login is the only visible view before authentication. */
body:not(.logged-in){
  overflow:hidden!important;
  width:100vw;
  min-height:100dvh;
}
body:not(.logged-in) #shell{display:none!important}
#login:not([hidden]){
  position:fixed!important;
  inset:0!important;
  z-index:9999!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:100dvh!important;
  display:grid!important;
  place-items:center!important;
  overflow:auto!important;
  padding:max(20px,env(safe-area-inset-top)) 18px max(20px,env(safe-area-inset-bottom))!important;
}
#login .login-card{
  width:min(390px,calc(100vw - 36px))!important;
  max-width:390px!important;
  margin:auto!important;
}

/* Client retains the phone-style experience. */
body.client-mode #shell,
body.client-mode .phone{
  width:100%!important;
  max-width:440px!important;
  margin:0 auto!important;
}

/* Coach gets the full browser width rather than the 440px client shell. */
body.coach-mode{
  width:100%;
  min-height:100dvh;
  overflow-x:hidden!important;
  background:#06111d;
}
body.coach-mode #shell,
body.coach-mode #shell>.phone{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:100dvh!important;
  margin:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:#06111d!important;
}
body.coach-mode #shell>.phone>header{
  display:none!important;
}
body.coach-mode #coach:not([hidden]){
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}

/* Desktop coach layout. */
@media(min-width:901px){
  body.coach-mode #coach:not([hidden]){
    display:grid!important;
    grid-template-columns:230px minmax(0,1fr)!important;
  }
  body.coach-mode .coach-workspace{
    width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }
}

/* Proper phone/tablet coach layout. */
@media(max-width:900px){
  body.coach-mode #coach:not([hidden]){
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }
  body.coach-mode .coach-sidebar{
    position:sticky!important;
    top:0!important;
    z-index:100!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    padding:10px 10px 8px!important;
    border-right:0!important;
    border-bottom:1px solid #173b56!important;
    overflow:hidden!important;
    background:rgba(6,17,29,.98)!important;
    backdrop-filter:blur(12px);
  }
  body.coach-mode .coach-brand{
    padding:2px 4px 9px!important;
    margin:0 0 7px!important;
    border-bottom:1px solid rgba(255,255,255,.055)!important;
  }
  body.coach-mode .coach-brand img{
    width:28px!important;height:28px!important;
  }
  body.coach-mode .coach-brand b{font-size:11px!important}
  body.coach-mode .coach-brand small{font-size:6px!important}

  body.coach-mode .coach-side-nav{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:5px!important;
    width:100%!important;
    overflow:visible!important;
  }
  body.coach-mode .coach-side-nav button{
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    margin:0!important;
    padding:6px 3px!important;
    border-radius:9px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:3px!important;
    font-size:8px!important;
    line-height:1.1!important;
    white-space:normal!important;
    text-align:center!important;
  }
  body.coach-mode .coach-side-nav button span{
    width:auto!important;
    font-size:10px!important;
  }

  /* Keep secondary tools available but compact instead of taking a tall block. */
  body.coach-mode .coach-side-section{
    display:flex!important;
    gap:5px!important;
    margin:7px 0 0!important;
    padding:7px 0 0!important;
    overflow-x:auto!important;
    border-top:1px solid rgba(255,255,255,.05)!important;
    scrollbar-width:none;
  }
  body.coach-mode .coach-side-section::-webkit-scrollbar{display:none}
  body.coach-mode .coach-side-section>small{display:none!important}
  body.coach-mode .coach-side-section button{
    flex:0 0 auto!important;
    width:auto!important;
    min-height:30px!important;
    padding:5px 9px!important;
    font-size:7px!important;
    border:1px solid #173b56!important;
    background:#081b2d!important;
  }
  body.coach-mode .coach-side-footer{display:none!important}

  body.coach-mode .coach-workspace{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }
  body.coach-mode #coach .coach-screen{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:18px 12px 42px!important;
    overflow-x:hidden!important;
  }
  body.coach-mode #coach .coach-page-head{
    width:100%!important;
    padding:2px 0 14px!important;
  }
  body.coach-mode #coach .coach-page-head h2{
    font-size:25px!important;
    overflow-wrap:anywhere;
  }

  /* Never let dashboard cards run wider than the phone. */
  body.coach-mode #coach .stats{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
  }
  body.coach-mode #coach .stats>div{
    min-width:0!important;
    padding:12px 9px!important;
  }
  body.coach-mode #coach .stats b{font-size:25px!important}
  body.coach-mode #coach .stats small{font-size:7px!important}

  body.coach-mode #coach .priority-panel,
  body.coach-mode #coach .coach-hub-card,
  body.coach-mode #coach .coach-client,
  body.coach-mode #coach .section,
  body.coach-mode #coach .panel,
  body.coach-mode #coach .card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.coach-mode #coach .priority-title{
    gap:8px!important;
  }
  body.coach-mode #coach .priority-count{
    flex:0 0 40px!important;
    width:40px!important;
    height:40px!important;
  }
  body.coach-mode #coach .coach-client,
  body.coach-mode #coach .priority-item{
    overflow:hidden!important;
  }
  body.coach-mode #coach .coach-client .row,
  body.coach-mode #coach .priority-item{
    min-width:0!important;
  }
  body.coach-mode #coach .coach-client button,
  body.coach-mode #coach .priority-item button{
    flex:0 0 auto!important;
    max-width:92px!important;
  }
  body.coach-mode #coach input,
  body.coach-mode #coach textarea,
  body.coach-mode #coach select,
  body.coach-mode #coach button{
    max-width:100%!important;
  }

  /* Tables scroll inside their own region, never the page itself. */
  body.coach-mode #coach table{
    min-width:620px;
  }
  body.coach-mode #coach .table-wrap,
  body.coach-mode #coach .table-scroll{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
  }
}

@media(max-width:390px){
  body.coach-mode .coach-side-nav button{
    font-size:7px!important;
    padding-left:1px!important;
    padding-right:1px!important;
  }
  body.coach-mode #coach .coach-screen{
    padding-left:10px!important;
    padding-right:10px!important;
  }
}

.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.feature-grid .coach-hub-card{margin:0;text-align:left;min-height:120px}.feature-grid button{color:inherit}.integration-row{display:flex!important;align-items:center;gap:10px;padding:12px;border-bottom:1px solid rgba(255,255,255,.08)}.integration-row input{width:auto!important}
@media(max-width:700px){.feature-grid{grid-template-columns:1fr}.feature-grid .coach-hub-card{min-height:96px}}

/* =========================================================
   MOTIVE-8 LIGHT APP THEME
   Keep login dark. Use a clean white/light workspace after login.
   ========================================================= */

/* Login intentionally stays dark */
#login{
  color:#fff;
}

/* Base logged-in workspace */
body.logged-in,
body.client-mode,
body.coach-mode{
  background:#f4f7fa!important;
  color:#102235!important;
}

body.logged-in #shell,
body.logged-in .phone,
body.logged-in #client,
body.logged-in #coach,
body.logged-in .coach-workspace{
  background:#f4f7fa!important;
  color:#102235!important;
}

/* Shared top bars */
body.logged-in .phone header,
body.logged-in .coach-sidebar,
body.logged-in .coach-topbar{
  background:#ffffff!important;
  border-color:#dce5ec!important;
  color:#102235!important;
  box-shadow:0 2px 12px rgba(15,44,70,.05);
}
body.logged-in .phone header button,
body.logged-in .brand b,
body.logged-in .coach-brand b{
  color:#102235!important;
}
body.logged-in .brand img,
body.logged-in .coach-brand img{
  filter:none;
}

/* Main screens */
body.logged-in .screen,
body.logged-in .dark,
body.logged-in .final-premium-screen,
body.logged-in .coach-screen{
  background:#f4f7fa!important;
  color:#102235!important;
}

/* Light page hero treatment */
body.logged-in .hero,
body.logged-in .nutrition-hero,
body.logged-in .habits-hero,
body.logged-in .checkin-hero,
body.logged-in .progress-hero,
body.logged-in .messages-hero,
body.logged-in .coachdoing-hero,
body.logged-in .tools-hero,
body.logged-in .pt-hero,
body.logged-in .onboarding-hero,
body.logged-in .welcome{
  background:#ffffff!important;
  color:#102235!important;
  border-color:#dce5ec!important;
  box-shadow:none!important;
}
body.logged-in .hero small,
body.logged-in .nutrition-hero small,
body.logged-in .habits-hero small,
body.logged-in .checkin-hero small,
body.logged-in .progress-hero small,
body.logged-in .messages-hero small,
body.logged-in .coachdoing-hero small,
body.logged-in .tools-hero small,
body.logged-in .pt-hero small,
body.logged-in .onboarding-hero small,
body.logged-in .coach-page-head small{
  color:#118fd7!important;
}
body.logged-in .hero p,
body.logged-in .nutrition-hero p,
body.logged-in .habits-hero p,
body.logged-in .checkin-hero p,
body.logged-in .progress-hero p,
body.logged-in .messages-hero p,
body.logged-in .coachdoing-hero p,
body.logged-in .tools-hero p,
body.logged-in .pt-hero p,
body.logged-in .onboarding-hero p,
body.logged-in .muted,
body.logged-in .muted-copy{
  color:#6d8294!important;
}

/* Cards / panels */
body.logged-in .panel,
body.logged-in .card,
body.logged-in .section,
body.logged-in .next,
body.logged-in .tool-card,
body.logged-in .coach-hub-card,
body.logged-in .priority-panel,
body.logged-in .coach-client,
body.logged-in .content-admin,
body.logged-in .programme-row,
body.logged-in .nutrition-target,
body.logged-in .premium-meal,
body.logged-in .habit-summary,
body.logged-in .habit,
body.logged-in .checkin-intro,
body.logged-in .checkin-field,
body.logged-in .progress-chart-card,
body.logged-in .progress-log-form,
body.logged-in .pt-balance-card,
body.logged-in .pt-info-strip,
body.logged-in .pt-session-card,
body.logged-in .coachdoing-feature,
body.logged-in .coach-meal-card,
body.logged-in .hub-score,
body.logged-in .hub-mission,
body.logged-in .hub-action-grid .tool-action,
body.logged-in .onboarding-note,
body.logged-in .onboarding-group,
body.logged-in .content-command,
body.logged-in .content-help-strip{
  background:#ffffff!important;
  color:#102235!important;
  border-color:#dce5ec!important;
  box-shadow:0 8px 24px rgba(21,55,84,.045)!important;
}

/* Card typography */
body.logged-in .panel b,
body.logged-in .card b,
body.logged-in .section b,
body.logged-in .next h3,
body.logged-in .tool-card b,
body.logged-in .coach-hub-card b,
body.logged-in .priority-panel b,
body.logged-in .coach-client b,
body.logged-in .content-admin b,
body.logged-in .programme-row b,
body.logged-in .nutrition-target b,
body.logged-in .premium-meal b,
body.logged-in .habit b,
body.logged-in .pt-session-card b,
body.logged-in .coach-meal-card h3,
body.logged-in .content-command b{
  color:#102235!important;
}
body.logged-in small,
body.logged-in .panel p,
body.logged-in .card p,
body.logged-in .section p,
body.logged-in .content-admin small,
body.logged-in .programme-row small,
body.logged-in .premium-meal small,
body.logged-in .habit small{
  color:#708699;
}

/* Inputs */
body.logged-in input,
body.logged-in textarea,
body.logged-in select{
  background:#ffffff!important;
  color:#102235!important;
  border:1px solid #cdd9e2!important;
}
body.logged-in input::placeholder,
body.logged-in textarea::placeholder{
  color:#9aabb8!important;
}
body.logged-in input:focus,
body.logged-in textarea:focus,
body.logged-in select:focus{
  border-color:#1aa5ed!important;
  box-shadow:0 0 0 3px rgba(26,165,237,.10);
}

/* Primary blue still carries the brand */
body.logged-in .cta,
body.logged-in button.cta,
body.logged-in .coach-side-nav button.active{
  background:linear-gradient(135deg,#20aaf3,#087dd0)!important;
  color:#ffffff!important;
  border-color:#1595dd!important;
  box-shadow:0 8px 20px rgba(16,140,216,.16)!important;
}
body.logged-in .ghost{
  background:#edf7fd!important;
  color:#0c79bd!important;
  border:1px solid #c8e8f8!important;
}
body.logged-in .ghost:hover{
  background:#e4f4fc!important;
}

/* Status/utility pills */
body.logged-in .workout-status.planned,
body.logged-in .online-dot,
body.logged-in .done-pill{
  background:#eaf7fd!important;
  color:#0c86ce!important;
  border-color:#c6e8f7!important;
}
body.logged-in .workout-status.complete,
body.logged-in .pt-session-card.completed em{
  background:#edf9f2!important;
  color:#27845c!important;
  border-color:#cdebdc!important;
}

/* Progress / stats */
body.logged-in .progress-stats>div,
body.logged-in .pt-package-inline>div,
body.logged-in .profile-summary>div,
body.logged-in #coach .stats>div{
  background:#ffffff!important;
  border-color:#dce5ec!important;
  color:#102235!important;
}
body.logged-in .progress-stats b,
body.logged-in .pt-package-inline b,
body.logged-in #coach .stats b{
  color:#102235!important;
}

/* Workout rows */
body.logged-in #workouts .workout.programme-row{
  background:#ffffff!important;
  border-color:#dce5ec!important;
}
body.logged-in .programme-index,
body.logged-in .meal-number,
body.logged-in .target-icon,
body.logged-in .hub-action-no,
body.logged-in .checkin-step,
body.logged-in .pt-date-tile,
body.logged-in .content-command-no{
  background:#edf7fd!important;
  color:#118fd7!important;
  border-color:#cdeaf8!important;
}

/* Messages */
body.logged-in .premium-chat .msg.coach{
  background:#ffffff!important;
  border-color:#d7e2ea!important;
  color:#183044!important;
}
body.logged-in .premium-chat .msg.client{
  background:linear-gradient(135deg,#179fe8,#087bca)!important;
  color:#fff!important;
}
body.logged-in .premium-send{
  background:#f4f7fa!important;
  border-color:#dce5ec!important;
}

/* Modal */
body.logged-in dialog,
body.logged-in .modal{
  background:#ffffff!important;
  color:#102235!important;
}
body.logged-in dialog{
  border:1px solid #dce5ec!important;
}
body.logged-in #close{
  color:#60788a!important;
}

/* Coach navigation */
body.logged-in .coach-sidebar{
  background:#ffffff!important;
}
body.logged-in .coach-side-nav button,
body.logged-in .coach-side-section button{
  color:#536c80!important;
}
body.logged-in .coach-side-nav button:hover,
body.logged-in .coach-side-section button:hover{
  background:#edf7fd!important;
  color:#0d7fc6!important;
}
body.logged-in .coach-side-section{
  border-color:#e1e9ef!important;
}
body.logged-in .coach-side-section button{
  background:#ffffff!important;
  border-color:#dce5ec!important;
}

/* Bottom client navigation */
body.logged-in #client nav{
  background:rgba(255,255,255,.97)!important;
  border-top:1px solid #dce5ec!important;
  box-shadow:0 -6px 22px rgba(20,48,70,.06);
}
body.logged-in #client nav button{
  color:#7b8f9e!important;
}
body.logged-in #client nav button.active{
  color:#0b8bd7!important;
}

/* Tables */
body.logged-in #coach td{
  background:#ffffff!important;
  border-color:#dce5ec!important;
  color:#183044!important;
}
body.logged-in #coach th{
  color:#6e8291!important;
}

/* Keep only selected high-impact areas blue */
body.logged-in .blue,
body.logged-in .score-card.hub-score{
  background:linear-gradient(135deg,#1eabf3,#087dce)!important;
  color:#ffffff!important;
  border-color:#1597de!important;
}
body.logged-in .blue *,
body.logged-in .score-card.hub-score *{
  color:#ffffff!important;
}

/* Empty states */
body.logged-in .programme-empty,
body.logged-in .empty-photo-state,
body.logged-in .pt-empty,
body.logged-in .chat-empty{
  background:#ffffff!important;
  border-color:#cfdde6!important;
  color:#6e8496!important;
}

/* Mobile coach top navigation remains clear and light */
@media(max-width:900px){
  body.coach-mode .coach-sidebar{
    background:rgba(255,255,255,.98)!important;
    border-bottom-color:#dce5ec!important;
  }
  body.coach-mode .coach-side-section button{
    background:#f6fafc!important;
    border-color:#dce5ec!important;
  }
}

.checkin-weight-field input{font-size:18px!important;font-weight:750!important}
.checkin-weight-field label>span{color:#102235!important}


/* MOTIVE-8 readability + organised nutrition library */
body.logged-in #coach,
body.logged-in #coach .coach-workspace,
body.logged-in #coach .coach-main,
body.logged-in #coach .coach-screen,
body.logged-in #coachNutrition{
  background:#f4f7fa!important;
  color:#102235!important;
}
body.logged-in #coach .coach-screen h1,
body.logged-in #coach .coach-screen h2,
body.logged-in #coach .coach-screen h3,
body.logged-in #coach .coach-screen h4,
body.logged-in #coachNutrition h1,
body.logged-in #coachNutrition h2,
body.logged-in #coachNutrition h3,
body.logged-in #coachNutrition h4{
  color:#102235!important;
}
body.logged-in #coach .coach-screen p,
body.logged-in #coach .coach-screen small,
body.logged-in #coachNutrition p{
  color:#657d90!important;
}
body.logged-in #coachNutrition .panel,
body.logged-in #coachNutrition .section,
body.logged-in #coachNutrition .content-admin{
  background:#fff!important;
  color:#102235!important;
  border-color:#d7e3eb!important;
}
body.logged-in #coachNutrition .content-admin b{
  color:#102235!important;
}

.recipe-library-modal,
.nutrition-manager{
  color:#102235;
}
.library-heading{
  margin:4px 0 16px;
}
.library-heading small{
  display:block;
  color:#0b93df!important;
  font-weight:800;
  letter-spacing:.08em;
  margin-bottom:4px;
}
.library-heading h3,
.library-heading h4{
  margin:0 0 5px;
  color:#102235!important;
}
.library-heading p{
  margin:0;
  color:#6b8294!important;
}
.recipe-category-jump{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 0 14px;
  scrollbar-width:thin;
}
.recipe-category-jump button{
  flex:0 0 auto;
  border:1px solid #d4e1e9;
  background:#f5f9fc;
  color:#27465d;
  border-radius:999px;
  padding:9px 13px;
  font-weight:750;
}
.recipe-category-jump button.active{
  background:#e8f6fd;
  border-color:#9ed9f5;
  color:#087fc5;
}
.recipe-category-jump button span{
  opacity:.65;
  margin-left:4px;
}
.recipe-category-section{
  border:1px solid #d8e4ec;
  background:#fff;
  border-radius:16px;
  margin:0 0 12px;
  overflow:hidden;
}
.recipe-category-head{
  width:100%;
  border:0;
  background:#fff;
  color:#102235;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px;
  text-align:left;
  cursor:pointer;
}
.recipe-category-head>span:first-child{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.recipe-category-head b{
  color:#102235!important;
  font-size:15px;
}
.recipe-category-head small{
  color:#71889a!important;
}
.category-chevron{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#edf7fd;
  color:#0789d4;
  font-size:20px;
  font-weight:500;
}
.recipe-category-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:0 14px 14px;
}
.recipe-category-grid[hidden]{
  display:none!important;
}
.recipe-tile{
  min-width:0;
  border:1px solid #dbe6ed;
  background:#fbfdfe;
  border-radius:14px;
  padding:14px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.recipe-tile-image{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px;display:block;background:#e8f0f4}
.recipe-tile b{
  display:block;
  color:#102235!important;
  line-height:1.25;
  margin-bottom:5px;
}
.recipe-tile small{
  display:block;
  color:#6e8597!important;
  line-height:1.45;
}
.recipe-tile .ghost{
  width:auto!important;
  margin:0!important;
}
.coach-recipe-library{
  margin-top:22px;
}
.plan-meal:has(img){display:grid;grid-template-columns:76px 1fr;gap:12px;align-items:center}.plan-meal>img{width:76px;aspect-ratio:3/2;object-fit:cover;border-radius:9px;background:#e8f0f4}

@media(max-width:650px){
  .recipe-category-grid{grid-template-columns:1fr}
  .recipe-category-head{padding:14px}
  .recipe-tile{padding:13px}
}

/* Organised workout libraries */
.workout-category-stack,
.workout-template-categories{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.workout-category-section{
  background:#fff;
  border:1px solid #d8e4ec;
  border-radius:16px;
  overflow:hidden;
}
.workout-category-head{
  width:100%;
  border:0;
  background:#fff;
  color:#102235;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px;
  text-align:left;
}
.workout-category-head>span:first-child{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.workout-category-head b{
  color:#102235!important;
  font-size:15px;
}
.workout-category-head small{
  color:#71889a!important;
}
.workout-category-list{
  display:flex;
  flex-direction:column;
  gap:9px;
  padding:0 14px 14px;
}
.workout-category-list[hidden]{display:none!important}
.workout-category-list .programme-row{
  margin:0!important;
}
.workout-template-library .cta{
  margin:0 0 16px!important;
}
.workout-template-tile{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px;
  border:1px solid #dbe6ed;
  background:#fbfdfe;
  border-radius:14px;
}
.workout-template-tile>div:first-child{
  min-width:0;
}
.workout-template-tile b{
  display:block;
  color:#102235!important;
  margin-bottom:4px;
}
.workout-template-tile small{
  display:block;
  color:#6e8597!important;
  line-height:1.4;
}
.workout-template-tile .content-admin-actions{
  flex:0 0 auto;
}
.programme-empty.compact{
  min-height:0!important;
  padding:18px!important;
}
@media(max-width:650px){
  .workout-category-head{padding:14px}
  .workout-template-tile{
    align-items:flex-start;
    flex-direction:column;
  }
  .workout-template-tile .content-admin-actions{
    width:100%;
  }
}


/* =========================================================
   MOTIVE-8 COACH WORKSPACE — LIGHT READABILITY PASS
   Login/auth remains dark. Logged-in coach workspace is light.
   ========================================================= */

body.logged-in #coach,
body.logged-in #coach .coach-workspace,
body.logged-in #coach .coach-main,
body.logged-in #coach .coach-screen,
body.logged-in #coach .coach-page,
body.logged-in #coach .coach-content,
body.logged-in #coach [id^="coach"] {
  background:#f4f7fa !important;
  color:#102235 !important;
}

body.logged-in #coach .coach-main {
  min-height:100vh;
}

/* Main page copy */
body.logged-in #coach h1,
body.logged-in #coach h2,
body.logged-in #coach h3,
body.logged-in #coach h4,
body.logged-in #coach h5,
body.logged-in #coach strong,
body.logged-in #coach b {
  color:#102235 !important;
}

body.logged-in #coach p,
body.logged-in #coach small,
body.logged-in #coach .muted,
body.logged-in #coach .sub,
body.logged-in #coach .helper,
body.logged-in #coach .description {
  color:#647b8d !important;
}

/* Section eyebrow labels */
body.logged-in #coach .eyebrow,
body.logged-in #coach .section-label,
body.logged-in #coach .kicker {
  color:#078ed8 !important;
}

/* Cards / panels */
body.logged-in #coach .panel,
body.logged-in #coach .card,
body.logged-in #coach .tool-card,
body.logged-in #coach .content-admin,
body.logged-in #coach .coach-card,
body.logged-in #coach .dashboard-card,
body.logged-in #coach .section-card,
body.logged-in #coach .feature-card {
  background:#ffffff !important;
  border-color:#d8e4ec !important;
  color:#102235 !important;
  box-shadow:0 8px 24px rgba(16,34,53,.045);
}

/* More Tools grid: catches cards even if their original class is generic */
body.logged-in #coachMoreTools .panel,
body.logged-in #coachMoreTools .card,
body.logged-in #coachMoreTools article,
body.logged-in #coachMoreTools .content-admin,
body.logged-in #coachMoreTools > div > div {
  background:#ffffff !important;
  color:#102235 !important;
  border-color:#d8e4ec !important;
}

body.logged-in #coachMoreTools h1,
body.logged-in #coachMoreTools h2,
body.logged-in #coachMoreTools h3,
body.logged-in #coachMoreTools h4,
body.logged-in #coachMoreTools b,
body.logged-in #coachMoreTools strong {
  color:#102235 !important;
}

body.logged-in #coachMoreTools p,
body.logged-in #coachMoreTools small,
body.logged-in #coachMoreTools span:not(.category-chevron) {
  color:#667f92 !important;
}

/* Inputs should look intentional, not like selected/highlighted text */
body.logged-in #coach input,
body.logged-in #coach textarea,
body.logged-in #coach select {
  background:#ffffff !important;
  color:#102235 !important;
  border-color:#cbdbe5 !important;
}

body.logged-in #coach input::placeholder,
body.logged-in #coach textarea::placeholder {
  color:#8ba0af !important;
}

/* Remove accidental text-selection/highlight appearance */
body.logged-in #coach p,
body.logged-in #coach small,
body.logged-in #coach .description,
body.logged-in #coach .tool-card span {
  background-color:transparent !important;
  box-shadow:none;
}

/* Buttons */
body.logged-in #coach button:not(.cta):not(.primary),
body.logged-in #coach .ghost {
  background:#ffffff;
  color:#0a6fae;
  border-color:#c8dce8;
}

body.logged-in #coach .cta,
body.logged-in #coach .primary {
  color:#ffffff !important;
}

/* Dividers */
body.logged-in #coach hr {
  border-color:#dde7ed !important;
}

/* More Tools readability and spacing */
body.logged-in #coachMoreTools {
  padding-bottom:40px;
}

body.logged-in #coachMoreTools .tools-grid,
body.logged-in #coachMoreTools .more-tools-grid {
  gap:16px !important;
}

body.logged-in #coachMoreTools .tool-card,
body.logged-in #coachMoreTools .feature-card {
  min-height:142px;
  padding:20px !important;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

body.logged-in #coachMoreTools .tool-card:hover,
body.logged-in #coachMoreTools .feature-card:hover {
  border-color:#9fd7f2 !important;
  box-shadow:0 10px 28px rgba(16,34,53,.08);
}

/* Authentication views are mutually exclusive. Keep this final in the cascade. */
#login[hidden],
#shell[hidden]{display:none!important}

.goal-progress-block{margin:16px 0;padding:16px;border-radius:16px;background:#fff;border:1px solid #dce7ee;box-shadow:0 8px 24px rgba(12,41,64,.06)}
.goal-progress-block .section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.goal-progress-block h3{margin:2px 0;color:#102235}.goal-progress-block .section-head small{font-size:8px;font-weight:900;letter-spacing:.1em;color:#168fca}.goal-streak{padding:7px 10px;border-radius:999px;background:#e8f7ff;color:#117dae;font-size:9px;font-weight:800}.goal-card{padding:14px;margin:9px 0;border:1px solid #dce7ee;border-radius:13px;background:#f8fbfd;color:#102235}.goal-card.complete{background:#effaf5;border-color:#bfe8d5}.goal-card-top,.goal-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.goal-card-top small,.goal-card-top b{display:block}.goal-card-top small{font-size:7px;color:#168fca;font-weight:900;letter-spacing:.1em}.goal-card-top b{font-size:12px;margin-top:2px}.goal-card-top strong{font-size:12px;color:#168fca}.goal-card .bar{margin:12px 0 8px}.goal-meta{font-size:8px;color:#6e8290}.goal-card .ghost{font-size:9px}.badge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.achievement-badge{display:flex;gap:9px;align-items:center;padding:11px;border-radius:12px;background:#071f35;color:#fff}.achievement-badge>span{display:grid;place-items:center;min-width:42px;height:42px;border-radius:50%;background:#28aeea;color:#fff;font-size:8px;font-weight:900}.achievement-badge b,.achievement-badge small{display:block}.achievement-badge b{font-size:10px}.achievement-badge small{font-size:8px;color:#9fb7c8;margin-top:3px}.badge-empty{grid-column:1/-1;padding:12px;border-radius:10px;background:#f3f7fa;color:#7890a0;font-size:9px}@media(max-width:390px){.badge-grid{grid-template-columns:1fr}}

@media(max-width:700px){
  body.logged-in #coach,
  body.logged-in #coach .coach-workspace,
  body.logged-in #coach .coach-main,
  body.logged-in #coach .coach-screen,
  body.logged-in #coach [id^="coach"] {
    background:#f4f7fa !important;
  }

  body.logged-in #coachMoreTools .tools-grid,
  body.logged-in #coachMoreTools .more-tools-grid {
    grid-template-columns:1fr !important;
  }
}

/* Calm, programme-library inspired responsive theme */
:root{--m8-ink:#14283b;--m8-muted:#667d90;--m8-canvas:#f2f5f7;--m8-surface:#fff;--m8-line:#dce5eb;--m8-accent:#1688c2;--m8-soft:#eaf5fb;--m8-navy:#0b2032;--m8-radius:14px}
html{font-size:16px;background:var(--m8-canvas)}
body{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;background:var(--m8-canvas)!important;color:var(--m8-ink)!important}
button,input,textarea,select{font:inherit}button{min-height:44px}input,textarea,select{font-size:16px!important}
body.logged-in #shell,body.logged-in .phone,body.logged-in #client,body.logged-in #coach,body.logged-in .coach-workspace,body.logged-in .screen{background:var(--m8-canvas)!important;color:var(--m8-ink)!important}
body.coach-mode{padding:0!important;overflow-x:hidden!important}
body.coach-mode #shell,body.coach-mode #shell>.phone{width:100%!important;max-width:none!important;min-height:100dvh!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
body.coach-mode #shell>.phone>header{display:none!important}
body.coach-mode #coach:not([hidden]){display:grid!important;grid-template-columns:250px minmax(0,1fr)!important;min-height:100dvh!important;align-items:stretch!important}
body.coach-mode .coach-sidebar{position:sticky!important;top:0!important;height:100dvh!important;padding:24px 18px!important;background:var(--m8-navy)!important;border:0!important;color:#fff!important;box-shadow:none!important}
body.coach-mode .coach-brand{padding:0 8px 22px!important;border-bottom:1px solid rgba(255,255,255,.1)!important}.coach-brand img{width:40px!important}.coach-brand b{font-size:14px!important;color:#fff!important}.coach-brand small{font-size:9px!important;color:#9fb2c1!important}
body.coach-mode .coach-side-nav{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin-top:18px!important}
body.coach-mode .coach-side-nav button,body.coach-mode .coach-side-section button{justify-content:flex-start!important;min-height:46px!important;padding:0 13px!important;border-radius:10px!important;background:transparent!important;color:#b9c8d3!important;font-size:13px!important;font-weight:600!important;text-align:left!important}
body.coach-mode .coach-side-nav button.active{background:#167fba!important;color:#fff!important}.coach-side-nav button span{color:inherit!important}
body.coach-mode .coach-side-section{display:grid!important;gap:5px!important;margin-top:24px!important;padding-top:18px!important;border-top:1px solid rgba(255,255,255,.1)!important}.coach-side-section>small{padding:0 12px 6px!important;color:#7892a5!important;font-size:9px!important}
body.coach-mode .coach-workspace{min-width:0!important;width:100%!important}.coach-page-head{margin-bottom:28px!important}.coach-page-head small{font-size:10px!important;letter-spacing:.1em!important;color:var(--m8-accent)!important}.coach-page-head h2{font-size:clamp(28px,4vw,42px)!important;line-height:1.1!important;margin:6px 0 10px!important;color:var(--m8-ink)!important}.coach-page-head p{font-size:15px!important;color:var(--m8-muted)!important}
body.coach-mode #coach .coach-screen{width:100%!important;max-width:1440px!important;margin:0 auto!important;padding:42px clamp(22px,4vw,58px) 70px!important;background:var(--m8-canvas)!important;color:var(--m8-ink)!important}
body.coach-mode #coach .feature-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;gap:16px!important}
body.coach-mode #coach .coach-hub-card,body.coach-mode #coach .priority-panel,body.coach-mode #coach .coach-client,body.coach-mode #coach .content-admin,body.coach-mode #coach .section{min-height:0!important;padding:20px!important;margin:0!important;border:1px solid var(--m8-line)!important;border-radius:var(--m8-radius)!important;background:var(--m8-surface)!important;color:var(--m8-ink)!important;box-shadow:0 5px 18px rgba(17,43,64,.05)!important}
body.coach-mode #coach .coach-hub-card{text-align:left!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}body.coach-mode #coach .coach-hub-card:hover{transform:translateY(-2px);border-color:#a9cedf!important;box-shadow:0 10px 24px rgba(17,43,64,.08)!important}
body.coach-mode #coach .coach-hub-card b{font-size:16px!important;line-height:1.3!important;color:var(--m8-ink)!important}body.coach-mode #coach .coach-hub-card span{font-size:13px!important;line-height:1.55!important;color:var(--m8-muted)!important;margin:8px 0 0!important;background:transparent!important;border:0!important}
body.coach-mode #coach .stats{gap:14px!important;margin-bottom:18px!important}body.coach-mode #coach .stats>div{padding:20px!important;border:1px solid var(--m8-line)!important;border-radius:var(--m8-radius)!important;background:#fff!important;color:var(--m8-ink)!important}body.coach-mode #coach .stats small{font-size:10px!important;color:var(--m8-muted)!important}body.coach-mode #coach .stats b{font-size:28px!important;color:var(--m8-ink)!important}
body.client-mode{padding:0!important;background:var(--m8-canvas)!important}body.client-mode #shell,body.client-mode .phone{width:100%!important;max-width:480px!important;min-height:100dvh!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--m8-canvas)!important}body.client-mode .phone header{height:64px!important;background:#fff!important;border-color:var(--m8-line)!important;color:var(--m8-ink)!important}body.client-mode .screen{padding:18px 16px 96px!important;background:var(--m8-canvas)!important;color:var(--m8-ink)!important}body.client-mode .hero,body.client-mode [class$="-hero"]{border-radius:14px!important;background:var(--m8-navy)!important;color:#fff!important;padding:20px!important}body.client-mode .card,body.client-mode .section,body.client-mode .next,body.client-mode .workout,body.client-mode .habit,body.client-mode .tool-card{background:#fff!important;border:1px solid var(--m8-line)!important;color:var(--m8-ink)!important;box-shadow:none!important}body.client-mode .phone nav{width:100%!important;max-width:480px!important;height:72px!important;background:#fff!important;border-color:var(--m8-line)!important}body.client-mode .phone nav button{color:#718596!important;font-size:16px!important}body.client-mode .phone nav button.active{color:var(--m8-accent)!important}body.client-mode .phone nav small{font-size:10px!important}
.cta{min-height:46px!important;border-radius:11px!important;background:var(--m8-accent)!important;color:#fff!important}.ghost{min-height:42px!important;border:1px solid #cfe1ea!important;background:var(--m8-soft)!important;color:#176e99!important}
dialog{width:min(620px,calc(100% - 24px))!important;max-height:90dvh!important;border-radius:16px!important;background:#fff!important;color:var(--m8-ink)!important}dialog .modal{padding:26px!important}dialog h3{font-size:24px!important;color:var(--m8-ink)!important}dialog p,dialog small{color:var(--m8-muted)!important}dialog input,dialog textarea,dialog select{min-height:46px!important;background:#fff!important;color:var(--m8-ink)!important;border:1px solid #cddbe4!important}
.account-list{display:grid;gap:10px;margin-top:18px}.account-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid var(--m8-line);border-radius:12px;background:#f8fafb}.account-row b,.account-row small{display:block}.account-row small{font-size:12px;margin-top:3px}.account-actions{display:flex;flex-wrap:wrap;gap:8px}.account-actions .ghost{margin:0!important}
@media(max-width:800px){body.coach-mode #coach:not([hidden]){display:block!important}body.coach-mode .coach-sidebar{position:sticky!important;z-index:30!important;height:auto!important;padding:12px!important}body.coach-mode .coach-brand{padding:4px 4px 10px!important}.coach-brand img{width:32px!important}body.coach-mode .coach-side-nav{display:flex!important;overflow-x:auto!important;gap:6px!important;margin:10px 0 0!important;padding-bottom:2px!important;scrollbar-width:none}.coach-side-nav::-webkit-scrollbar{display:none}body.coach-mode .coach-side-nav button{flex:0 0 auto!important;justify-content:center!important;min-width:92px!important;min-height:44px!important;padding:0 12px!important;font-size:11px!important}body.coach-mode .coach-side-section,body.coach-mode .coach-side-footer{display:none!important}body.coach-mode #coach .coach-screen{padding:26px 16px 48px!important}body.coach-mode #coach .feature-grid{grid-template-columns:1fr!important;gap:12px!important}body.coach-mode #coach .coach-hub-card{padding:18px!important}.coach-page-head{margin-bottom:20px!important}.coach-page-head h2{font-size:30px!important}.coach-page-head p{font-size:14px!important}.account-row{display:block}.account-actions{margin-top:12px}.account-actions .ghost{flex:1}}
@media(max-width:480px){body.client-mode .progress-stats{grid-template-columns:1fr 1fr!important}body.client-mode .icons{grid-template-columns:repeat(3,1fr)!important;gap:12px 6px!important}dialog .modal{padding:20px!important}.two-col{grid-template-columns:1fr!important}}

.client-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:18px 0 24px}.client-detail-head small,.client-detail-section .section-head small,.client-detail-card>small{font-size:9px;font-weight:800;letter-spacing:.1em;color:var(--m8-accent)}.client-detail-head h2{margin:4px 0!important}.client-detail-head p{margin:0;color:var(--m8-muted)}.client-detail-head .cta{width:auto!important;min-width:150px;margin:0!important}.client-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.client-detail-card,.client-detail-section{padding:20px;margin-bottom:14px;border:1px solid var(--m8-line);border-radius:var(--m8-radius);background:#fff;box-shadow:0 5px 18px rgba(17,43,64,.05)}.client-detail-card h3{margin:7px 0 14px}.client-detail-card p{color:var(--m8-muted)}.client-target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.client-target-grid span{padding:11px;border-radius:10px;background:var(--m8-soft)}.client-target-grid b,.client-target-grid small{display:block}.client-target-grid small{font-size:9px;color:var(--m8-muted)}.client-detail-section{margin-top:14px}.client-detail-section .section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.client-detail-section .section-head h3{margin:2px 0}.client-detail-section .section-head>span{font-size:11px;color:var(--m8-muted)}.client-detail-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-top:1px solid var(--m8-line)}.client-detail-row b,.client-detail-row small{display:block}.client-detail-row small{font-size:11px;color:var(--m8-muted);margin-top:3px}.client-detail-row>span{font-size:11px;color:var(--m8-muted)}
@media(max-width:650px){.client-detail-head{display:block}.client-detail-head .cta{width:100%!important;margin-top:14px!important}.client-detail-grid{grid-template-columns:1fr}.client-target-grid{grid-template-columns:repeat(3,1fr)}.client-detail-card,.client-detail-section{padding:16px}.client-detail-row{align-items:flex-start}}

/* Final accessible colour pass: calm neutrals, readable contrast, no dark-on-dark cards. */
body.logged-in dialog{background:#f7f9fb!important;border:1px solid #cbd9e2!important;color:#14283b!important}
body.logged-in dialog .modal{background:#f7f9fb!important;color:#14283b!important;border:0!important;box-shadow:none!important}
body.logged-in dialog .modal h1,body.logged-in dialog .modal h2,body.logged-in dialog .modal h3,
body.logged-in dialog .modal h4,body.logged-in dialog .modal b,body.logged-in dialog .modal strong{color:#14283b!important}
body.logged-in dialog .modal p,body.logged-in dialog .modal small{color:#647b8d!important}
body.logged-in dialog .plan-day{background:#fff!important;border:1px solid #d8e3ea!important;color:#14283b!important;box-shadow:0 3px 12px rgba(20,40,59,.05)!important}
body.logged-in dialog .plan-day h3,body.logged-in dialog .plan-meal b{color:#18364d!important}
body.logged-in dialog .plan-meal{border-color:#e4ebf0!important}
body.logged-in dialog .plan-meal small{color:#60798c!important}
body.logged-in dialog .recipe-macros span{background:#e8f3f9!important;color:#176e99!important;border:1px solid #c8dfe9!important}
body.logged-in dialog #close{background:#e8f1f6!important;color:#24475f!important;border:1px solid #cadde7!important}

.client-card-facts{margin-top:5px!important;color:#2d6f91!important;font-weight:650!important}
.client-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0 0 14px}
.client-overview-grid>section{padding:17px;border:1px solid var(--m8-line);border-radius:var(--m8-radius);background:#fff;box-shadow:0 4px 14px rgba(17,43,64,.04)}
.client-overview-grid small,.client-overview-grid b{display:block}.client-overview-grid small{font-size:9px;font-weight:800;letter-spacing:.08em;color:var(--m8-muted)}
.client-overview-grid b{margin-top:7px;font-size:25px;color:var(--m8-ink)}.client-overview-grid .remaining{background:#eaf5fb;border-color:#c9e1ec}.client-overview-grid .remaining b{color:#147cac}
.last-session-note{margin-top:14px;padding:13px;border-radius:11px;background:#f0f5f8;border-left:3px solid #1688c2}.last-session-note small{font-weight:800;color:#1688c2!important}.last-session-note p{margin:5px 0 0!important;white-space:pre-line}
@media(max-width:700px){.client-overview-grid{grid-template-columns:1fr 1fr}.client-target-grid{grid-template-columns:1fr 1fr!important}}

.shared-feed-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.shared-feed-actions button{width:auto;margin:0}
.coach-client.low-sessions{border-color:#e59a42!important;background:#fff8ef!important;box-shadow:0 6px 20px rgba(178,103,17,.1)!important}.client-card-name{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.client-card-name em{font-size:9px;font-style:normal;font-weight:800;letter-spacing:.06em;color:#8b4b00;background:#ffe3ba;border:1px solid #f1bd73;border-radius:999px;padding:4px 7px}
.shared-feed-info{display:flex;align-items:center;gap:14px;padding:16px 18px;margin-bottom:18px;border:1px solid #c8dce9;border-radius:18px;background:#eef8fd;color:#17334a}.shared-feed-info img{width:48px;height:48px;object-fit:contain}.shared-feed-info>div{display:grid;gap:4px}.shared-feed-info small{color:#248fca;font-size:9px;font-weight:900;letter-spacing:.1em}
.coach-shared-feed{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.shared-feed-admin-card{overflow:hidden;border:1px solid #cbdbe6;border-radius:20px;background:#fff;color:#173149;box-shadow:0 8px 24px rgba(12,40,62,.07)}.shared-feed-admin-card>img,.shared-feed-placeholder{width:100%;height:190px;object-fit:cover;background:#eaf4fa}.shared-feed-placeholder{display:grid;place-items:center}.shared-feed-placeholder img{width:58px;height:58px;object-fit:contain}.shared-feed-admin-card>div:last-child{padding:18px}.shared-feed-admin-card small{color:#218fc9;font-size:8px;font-weight:900;letter-spacing:.08em}.shared-feed-admin-card h3{margin:7px 0;color:#102a42}.shared-feed-admin-card p{min-height:42px;color:#667d90;line-height:1.5}.shared-feed-card-actions{display:flex;gap:8px;margin-top:14px}.shared-feed-card-actions button{flex:1;margin:0}
#client .coach-feed-update{border-color:#2e6385!important}#client .coach-feed-update>div{padding:14px}#client .coach-feed-update>div>small{color:#5bc7ff;font-size:8px;font-weight:900}#client .coach-feed-update>div>span{display:inline-block;margin-top:8px;color:#8ca9ba;font-size:8px}
@media(max-width:700px){.shared-feed-actions{flex-direction:column}.shared-feed-actions button{width:100%}.coach-shared-feed{grid-template-columns:1fr}.shared-feed-info{align-items:flex-start}}

/* New-client signup workflow */
.client-signup-flow{max-width:780px}.signup-head{margin-bottom:14px}.signup-head>small,.signup-confirm>small{color:#1688c2!important;font-size:9px!important;font-weight:850!important;letter-spacing:.1em}.signup-head h3,.signup-confirm h3{margin:5px 0!important}.signup-head p,.signup-confirm>p{margin:0 0 16px!important}
.client-signup-flow>section{display:grid;grid-template-columns:34px minmax(0,1fr);gap:13px;padding:17px 0;border-top:1px solid #dce5eb}.client-signup-flow>section>span{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#e7f3f9;color:#1478a6;font-size:11px;font-weight:850}.client-signup-flow h4{margin:3px 0 12px!important;color:#18364d!important;font-size:14px!important;letter-spacing:0!important}.signup-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.password-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.password-row .ghost{margin:5px 0!important}.client-signup-flow input,.client-signup-flow textarea,.client-signup-flow select{background:#fff!important;color:#14283b!important;border-color:#cbdbe5!important}.client-signup-flow .cta{margin-top:14px!important}
.account-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.account-manager-head small{color:#1688c2!important;font-size:9px!important;font-weight:850;letter-spacing:.1em}.account-manager-head h3{margin:4px 0!important}.account-manager-head p{margin:0!important}.account-manager-head .cta{width:auto!important;min-width:180px;margin:0!important}
.login-details{display:grid;gap:8px;margin:16px 0}.login-details label{padding:11px 13px;margin:0!important;border:1px solid #d5e2e9;border-radius:10px;background:#fff;color:#647b8d!important}.login-details b{display:block;margin-top:4px;color:#17364e!important;font-size:13px;overflow-wrap:anywhere}
@media(max-width:720px){.signup-grid{grid-template-columns:1fr 1fr}.account-manager-head{display:block}.account-manager-head .cta{width:100%!important;margin-top:12px!important}.password-row{grid-template-columns:1fr}.client-signup-flow>section{grid-template-columns:28px minmax(0,1fr)}.client-signup-flow>section>span{width:28px;height:28px}}

/* Clear feedback for actions performed inside a modal dialog */
.modal-feedback{margin:0 42px 14px 0;padding:11px 13px;border:1px solid #f1b7b7;border-radius:10px;background:#fff1f1;color:#8d2020;font-size:12px;font-weight:750;line-height:1.4}
.password-requirements{margin:10px 0;padding:10px 12px;border-radius:9px;background:#eef8ff;color:#21526f;font-size:11px;line-height:1.45}
button:disabled{cursor:wait;opacity:.62}

/* Client workspace polish: stable phone scrolling, readable forms and an app-width nav. */
body.client-mode{
  overflow-x:hidden!important;
  background:#eaf0f4!important;
}
body.client-mode #shell,
body.client-mode #shell>.phone{
  width:100%!important;
  max-width:720px!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  background:#f5f8fa!important;
  box-shadow:0 14px 44px rgba(13,36,54,.12)!important;
}
body.client-mode .phone>header{
  height:68px!important;
  padding:0 clamp(16px,4vw,28px)!important;
}
body.client-mode .phone>header .brand b{font-size:14px!important;letter-spacing:.04em!important}
body.client-mode .screen{
  width:100%!important;
  padding:22px clamp(16px,4vw,28px) calc(104px + env(safe-area-inset-bottom))!important;
}
body.client-mode .phone nav{
  position:fixed!important;
  z-index:60!important;
  left:50%!important;
  right:auto!important;
  bottom:0!important;
  transform:translateX(-50%)!important;
  width:min(720px,100%)!important;
  max-width:720px!important;
  height:calc(74px + env(safe-area-inset-bottom))!important;
  padding:6px 8px env(safe-area-inset-bottom)!important;
  border-top:1px solid #d7e2e9!important;
  box-shadow:0 -8px 26px rgba(16,42,61,.08)!important;
}
body.client-mode .phone nav button{min-width:0!important;min-height:56px!important}
body.client-mode .phone nav small{font-size:11px!important;font-weight:650!important}

body.client-mode .messages-screen:not(.active){display:none!important}
body.client-mode .messages-screen.active{
  display:flex!important;
  flex-direction:column!important;
  min-height:calc(100dvh - 68px)!important;
  padding-bottom:calc(168px + env(safe-area-inset-bottom))!important;
}
body.client-mode .messages-hero{
  padding:20px!important;
  border:1px solid #d8e4eb!important;
  border-radius:16px!important;
}
body.client-mode .premium-chat{
  flex:1!important;
  min-height:300px!important;
  padding:18px 0 24px!important;
  overflow:visible!important;
}
body.client-mode .chat-empty{
  width:min(420px,100%)!important;
  margin:auto!important;
  padding:28px 22px!important;
  border:1px solid #d5e3eb!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#566f82!important;
  box-shadow:0 8px 24px rgba(18,47,69,.06)!important;
  text-align:center!important;
}
body.client-mode .chat-empty b{display:block!important;color:#17364d!important;font-size:17px!important}
body.client-mode .chat-empty small{display:block!important;margin-top:6px!important;color:#667f91!important;font-size:13px!important;line-height:1.5!important}
body.client-mode .premium-send{
  position:fixed!important;
  z-index:55!important;
  left:50%!important;
  right:auto!important;
  bottom:calc(74px + env(safe-area-inset-bottom))!important;
  transform:translateX(-50%)!important;
  width:min(688px,calc(100% - 32px))!important;
  padding:12px!important;
  border:1px solid #d6e2e9!important;
  border-radius:15px 15px 0 0!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 -8px 24px rgba(16,42,61,.08)!important;
  backdrop-filter:blur(10px)!important;
}
body.client-mode .premium-send input{
  min-height:48px!important;
  padding:0 15px!important;
  border:1px solid #c9dbe5!important;
  border-radius:11px!important;
  background:#f7fafc!important;
  color:#17364d!important;
}
body.client-mode .premium-send button{min-height:48px!important;padding:0 18px!important;border-radius:11px!important}

body.client-mode .onboarding-screen{padding-top:22px!important}
body.client-mode .onboarding-hero{padding:24px!important;border-radius:16px!important}
body.client-mode .onboarding-hero small{font-size:10px!important;letter-spacing:.1em!important}
body.client-mode .onboarding-hero h2{font-size:clamp(28px,7vw,36px)!important;line-height:1.12!important;margin:7px 0!important}
body.client-mode .onboarding-hero p{font-size:14px!important;line-height:1.55!important}
body.client-mode .onboarding-note,
body.client-mode .onboarding-group{
  margin:14px 0!important;
  padding:18px!important;
  border:1px solid #d7e3ea!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#17364d!important;
  box-shadow:0 5px 18px rgba(18,47,69,.045)!important;
}
body.client-mode .onboarding-note b,
body.client-mode .onboarding-group b,
body.client-mode .onboarding-group h3{color:#17364d!important;font-size:16px!important}
body.client-mode .onboarding-note small{font-size:12px!important;line-height:1.5!important;color:#667f91!important}
body.client-mode .onboarding-group label{display:block!important;margin-top:14px!important;color:#38556b!important;font-size:13px!important;font-weight:650!important}
body.client-mode .onboarding-group input,
body.client-mode .onboarding-group textarea,
body.client-mode .onboarding-group select{
  width:100%!important;
  min-height:50px!important;
  margin-top:7px!important;
  padding:12px 14px!important;
  border:1px solid #c9d9e3!important;
  border-radius:11px!important;
  background:#f8fafc!important;
  color:#17364d!important;
}
body.client-mode .onboarding-group textarea{min-height:104px!important;resize:vertical!important}
body.client-mode .onboarding-screen #onboardingStatus{margin:12px 0 0!important;font-size:13px!important}
body.client-mode .onboarding-screen #saveOnboarding,
body.client-mode .onboarding-screen button[type="submit"]{
  width:100%!important;
  min-height:52px!important;
  margin:16px 0 8px!important;
  font-size:15px!important;
}

@media(max-width:720px){
  body.client-mode #shell,
  body.client-mode #shell>.phone{max-width:none!important;box-shadow:none!important}
  body.client-mode .premium-send{width:calc(100% - 24px)!important}
}
@media(max-width:390px){
  body.client-mode .screen{padding-left:14px!important;padding-right:14px!important}
  body.client-mode .phone nav small{font-size:10px!important}
  body.client-mode .premium-send{grid-template-columns:minmax(0,1fr) 72px!important}
  body.client-mode .premium-send button{padding:0 10px!important}
  body.client-mode .onboarding-note,
  body.client-mode .onboarding-group{padding:16px!important}
}

/* Final navigation, sizing and service-workflow corrections. */
html{
  width:100%;
  max-width:100%;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{width:100%;max-width:100%;overflow-x:hidden}
button,[role="button"],a{touch-action:manipulation}
body.client-mode input,
body.client-mode textarea,
body.client-mode select,
dialog input,
dialog textarea,
dialog select{font-size:16px!important;max-width:100%!important}

body.logged-in.coach-mode .coach-sidebar .coach-brand b,
body.logged-in.coach-mode .coach-sidebar .coach-side-footer b{color:#f7fbff!important}
body.logged-in.coach-mode .coach-sidebar .coach-brand small{color:#67c8f7!important}
body.logged-in.coach-mode .coach-sidebar .coach-side-footer small{color:#9eb4c4!important}
.coach-logout{
  min-height:38px!important;
  margin-left:auto;
  padding:0 12px!important;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.07)!important;
  color:#f7fbff!important;
  font-size:11px!important;
  font-weight:750!important;
}
.coach-logout:hover{background:#fff!important;color:#17364d!important}

body.client-mode .premium-send{display:none!important}
body.client-mode .messages-screen.active .premium-send{display:grid!important}
body.client-mode .messages-screen:not(.active) .premium-send{display:none!important}

.field-help{display:block;margin-top:7px;color:#657e91!important;font-size:11px!important;line-height:1.45}
.challenge-manager>small{color:#1688c2!important;font-size:10px!important;font-weight:850!important;letter-spacing:.1em}
.challenge-manager>h3{margin:5px 0 8px!important}.challenge-manager>p{margin:0 0 14px!important}
.challenge-places{padding:12px 14px;margin-bottom:10px;border:1px solid #cce2ec;border-radius:11px;background:#eaf6fb;color:#176e99}
.challenge-entry{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;margin-top:9px;border:1px solid #d9e4ea;border-radius:12px;background:#fff}
.challenge-entry b,.challenge-entry small{display:block}.challenge-entry small{margin-top:3px;color:#667f91!important;font-size:11px!important}
.challenge-entry .ghost{margin:0!important;white-space:nowrap}.challenge-entry.winner{border-color:#a8dcc5;background:#eefaf4}.challenge-entry.winner>span{padding:6px 9px;border-radius:999px;background:#d7f2e4;color:#237651;font-size:10px;font-weight:850}

@media(max-width:800px){
  body.coach-mode .coach-sidebar{padding-right:88px!important}
  body.coach-mode .coach-side-nav,
  body.coach-mode .coach-side-section{width:calc(100% + 76px)!important}
  body.coach-mode .coach-side-footer{
    display:flex!important;
    position:absolute!important;
    top:13px!important;
    right:12px!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  body.coach-mode .coach-side-footer>.coach-avatar,
  body.coach-mode .coach-side-footer>div:nth-child(2){display:none!important}
  body.coach-mode .coach-logout{min-height:36px!important;margin:0!important}
}

/* Final contrast guardrails for legacy light-theme selectors. */
body.logged-in.client-mode #client,
body.logged-in.client-mode #client .screen,
body.logged-in.client-mode #client .screen.light,
body.logged-in.client-mode #client .screen.dark{
  background:
    linear-gradient(115deg,rgba(255,255,255,.018),transparent 34%),
    radial-gradient(circle at 100% 0,rgba(0,132,255,.1),transparent 24rem),
    #060809!important;
  color:var(--vision-text)!important;
}
body.logged-in.client-mode #client .screen.dark .section,
body.logged-in.client-mode #client .screen.dark .panel,
body.logged-in.client-mode #client .screen.dark .next,
body.logged-in.client-mode #client .screen.dark .weekly-shopping-card,
body.logged-in.client-mode #client .screen.dark .nutrition-target,
body.logged-in.client-mode #client .screen.dark .meal,
body.logged-in.client-mode #client .screen.dark .habit,
body.logged-in.client-mode #client .screen.dark .checkin-field,
body.logged-in.client-mode #client .screen.dark .progress-chart-card,
body.logged-in.client-mode #client .screen.dark .progress-log-form,
body.logged-in.client-mode #client .screen.dark .onboarding-group,
body.logged-in.client-mode #client .screen.dark .onboarding-note,
body.logged-in.client-mode #client .screen.dark .pt-info-strip,
body.logged-in.client-mode #client .screen.dark .tool-card,
body.logged-in.client-mode #client .screen.dark .tool-action{
  border-color:var(--vision-line)!important;
  background:linear-gradient(145deg,#12171b,#0a0e11)!important;
  color:var(--vision-text)!important;
}
body.logged-in.client-mode #client .screen.dark b,
body.logged-in.client-mode #client .screen.dark strong,
body.logged-in.client-mode #client .screen.dark h1,
body.logged-in.client-mode #client .screen.dark h2,
body.logged-in.client-mode #client .screen.dark h3,
body.logged-in.client-mode #client .screen.dark h4{color:var(--vision-text)!important}
body.logged-in.client-mode #client .screen.dark p,
body.logged-in.client-mode #client .screen.dark label{color:var(--vision-muted)!important}
body.logged-in.client-mode #client .screen.dark input,
body.logged-in.client-mode #client .screen.dark textarea,
body.logged-in.client-mode #client .screen.dark select{
  border-color:#313b43!important;
  background:#080c0f!important;
  color:#f5f7f8!important;
}
body.logged-in.client-mode #client .screen.dark input::placeholder,
body.logged-in.client-mode #client .screen.dark textarea::placeholder{color:#727f88!important}
body.logged-in.client-mode #client .screen.dark .attention-banner,
body.logged-in.client-mode #client .screen.dark .programme-empty,
body.logged-in.client-mode #client .screen.dark .empty-photo-state{
  border-color:#25465c!important;
  background:#0b1a23!important;
  color:#b8c8d2!important;
}
body.logged-in.client-mode .phone>header button{
  border-color:#323d44!important;
  background:#0b1013!important;
  color:#f3f7f9!important;
}

/* Coach contrast guardrails for older high-specificity light rules. */
body.logged-in.coach-mode #coach,
body.logged-in.coach-mode #coach .coach-workspace,
body.logged-in.coach-mode #coach .coach-screen,
body.logged-in.coach-mode #coach [id^="coach"]{
  background:
    radial-gradient(circle at 100% 0,rgba(0,132,255,.1),transparent 30rem),
    #080b0d!important;
  color:var(--vision-text)!important;
}
body.logged-in.coach-mode #coach .stats>*,
body.logged-in.coach-mode #coach .priority-panel,
body.logged-in.coach-mode #coach .priority-item,
body.logged-in.coach-mode #coach .coach-notification-panel,
body.logged-in.coach-mode #coach .coach-notification-row,
body.logged-in.coach-mode #coach .coach-hub-card,
body.logged-in.coach-mode #coach .coach-client,
body.logged-in.coach-mode #coach .client-overview-grid>section,
body.logged-in.coach-mode #coach .coach-inbox-list,
body.logged-in.coach-mode #coach .coach-inbox-conversation,
body.logged-in.coach-mode #coach .coach-inbox-client,
body.logged-in.coach-mode #coach .shared-feed-admin-card,
body.logged-in.coach-mode #coach .content-admin,
body.logged-in.coach-mode #coach .programme-empty,
body.logged-in.coach-mode #coach .attention-banner{
  border-color:var(--vision-line)!important;
  background:linear-gradient(145deg,#12171b,#0a0e11)!important;
  color:var(--vision-text)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.18)!important;
}
body.logged-in.coach-mode #coach h1,
body.logged-in.coach-mode #coach h2,
body.logged-in.coach-mode #coach h3,
body.logged-in.coach-mode #coach h4,
body.logged-in.coach-mode #coach b,
body.logged-in.coach-mode #coach strong{color:var(--vision-text)!important}
body.logged-in.coach-mode #coach p,
body.logged-in.coach-mode #coach label,
body.logged-in.coach-mode #coach .muted{color:var(--vision-muted)!important}
body.logged-in.coach-mode #coach input,
body.logged-in.coach-mode #coach textarea,
body.logged-in.coach-mode #coach select{
  border-color:#313b43!important;
  background:#080c0f!important;
  color:#f5f7f8!important;
}
body.logged-in.coach-mode #coach .coach-sidebar,
body.logged-in.coach-mode #coach #m8CoachSidebar{
  background:linear-gradient(180deg,#06090b,#0a1116)!important;
}
body.logged-in.coach-mode #coach .coach-notification-title span{
  background:#092b42!important;
  color:#32b4ff!important;
}
body.logged-in.coach-mode #coach .coach-notification-row{
  border-top-color:#263139!important;
}

.push-prompt{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:200;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  width:min(440px,calc(100vw - 28px));
  padding:14px;
  border:1px solid #126ead;
  border-radius:14px;
  background:#09131a;
  color:#fff;
  box-shadow:0 20px 50px rgba(0,0,0,.5),0 0 24px rgba(7,135,255,.18);
}
.push-prompt div{display:grid;gap:3px}.push-prompt b{font-size:13px}.push-prompt span{color:#a9b8c2;font-size:11px}
.push-prompt button{min-height:38px;padding:8px 12px;border:1px solid #159eff;border-radius:9px;background:#0787e8;color:#fff;font-weight:800}
.push-prompt .push-dismiss{width:34px;padding:0;border-color:#34424b;background:#10171c;color:#aab6be;font-size:20px}
@media(max-width:600px){
  .push-prompt{right:14px;bottom:84px;grid-template-columns:minmax(0,1fr) auto;padding:12px}
  .push-prompt .push-dismiss{position:absolute;top:-10px;right:-6px}
}
@media(max-width:520px){
  .challenge-entry{align-items:flex-start;flex-direction:column}
  .challenge-entry .ghost{width:100%!important}
  dialog{width:calc(100% - 16px)!important}
}

body.logged-in.coach-mode #coach .coach-sidebar .coach-brand b,
body.logged-in.coach-mode #coach .coach-sidebar .coach-side-footer b{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}
#signupPtSessions[hidden],
#signupOnlinePackage[hidden]{display:none!important}

/* Tidy coach navigation and separate client management */
body.coach-mode .coach-side-nav button{display:flex!important;grid-template-columns:none!important;flex-direction:row!important;align-items:center!important;gap:11px!important;line-height:1.2!important}
body.coach-mode .coach-side-nav button>span{display:grid!important;place-items:center!important;flex:0 0 22px!important;width:22px!important;height:22px!important;margin:0!important}
body.coach-mode .coach-side-nav button>span svg{display:block!important;width:19px!important;height:19px!important}
body.coach-mode .coach-brand{display:flex!important;align-items:center!important;gap:11px!important}.coach-brand>div{min-width:0}.coach-brand b,.coach-brand small{white-space:nowrap}
.coach-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.coach-head-action,.dashboard-clients-button{width:auto!important;min-width:170px!important;margin:0!important}.dashboard-clients-button{margin-top:18px!important}
#coachClients #clientList{display:grid;gap:10px;margin-top:14px}#coachClients .coach-client{width:100%;margin:0!important}.client-shopping-button{width:100%!important;margin:14px 0 0!important}

/* Assigned-plan weekly shopping list */
.weekly-shopping-card{margin:18px 0;padding:18px;border:1px solid #cfe0e9;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(17,43,64,.05)}
.weekly-shopping-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.weekly-shopping-head small{display:block;color:#1688c2;font-size:9px;font-weight:850;letter-spacing:.1em}.weekly-shopping-head h3{margin:4px 0 5px;color:#14283b}.weekly-shopping-head p{max-width:480px;margin:0;color:#667d90;font-size:12px;line-height:1.5}.weekly-shopping-head .ghost{flex:0 0 auto;margin:0!important}
#shoppingListPreview{margin-top:15px}.shopping-preview-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-radius:12px;background:#eaf5fb}.shopping-preview-summary b,.shopping-preview-summary small{display:block}.shopping-preview-summary b{color:#17364d}.shopping-preview-summary small{margin-top:3px;color:#617b8e;font-size:10px}.shopping-preview-summary>span{padding:5px 8px;border-radius:999px;background:#fff;color:#1688c2;font-size:10px;font-weight:800}
.shopping-preview-items{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.shopping-preview-items span{padding:6px 9px;border:1px solid #d8e5ec;border-radius:999px;background:#f8fbfc;color:#516b7d;font-size:10px}.shopping-list-empty{display:grid;gap:3px;padding:15px;border:1px dashed #bed3de;border-radius:12px;background:#f7fafb}.shopping-list-empty b{color:#17364d}.shopping-list-empty span{color:#657e90;font-size:11px}
.shopping-modal-head>small,.shopping-list-title>small{color:#1688c2!important;font-size:9px!important;font-weight:850;letter-spacing:.1em}.shopping-modal-head h3,.shopping-list-title h3{margin:4px 0 5px!important}.shopping-modal-head p,.shopping-list-title p{margin:0!important}.shopping-list-title{margin:18px 0 12px;padding:14px;border-radius:12px;background:#eaf5fb}.shopping-list-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.shopping-group{overflow:hidden;border:1px solid #d8e4ea;border-radius:13px;background:#fff}.shopping-group-head{display:flex;justify-content:space-between;gap:10px;padding:12px 13px;background:#f2f7f9}.shopping-group-head b{font-size:13px}.shopping-group-head span{color:#698093;font-size:10px}.shopping-item{display:grid!important;grid-template-columns:22px 1fr;align-items:center;gap:9px;margin:0!important;padding:11px 13px;border-top:1px solid #e7edf1;cursor:pointer}.shopping-item input{width:19px!important;height:19px!important;min-height:0!important;margin:0!important;accent-color:#1688c2}.shopping-item span,.shopping-item b,.shopping-item small{display:block}.shopping-item b{font-size:12px}.shopping-item small{margin-top:2px;color:#6b8192!important;font-size:9px!important}.shopping-item:has(input:checked){background:#edf8f2}.shopping-item:has(input:checked) b{text-decoration:line-through;color:#5f7a6d!important}
@media(max-width:700px){.coach-page-head,.weekly-shopping-head{display:block}.coach-head-action,.weekly-shopping-head .ghost{width:100%!important;margin-top:14px!important}.shopping-list-groups{grid-template-columns:1fr}.weekly-shopping-card{padding:15px}}
body.client-mode #client input#msg{
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:16px!important;
  line-height:1.2!important;
}
body.client-mode .phone>header #logout{
  width:auto!important;
  min-width:66px!important;
  padding:0 10px!important;
  border:1px solid #cfe0e9!important;
  border-radius:9px!important;
  background:#eef6fa!important;
  color:#24556f!important;
  font-size:12px!important;
  font-weight:750!important;
}

/* Accessible client onboarding: override the legacy dark theme at its original
   selector strength, keep the form focused, and prevent the mobile nav shift. */
body.client-mode #client .onboarding-screen{
  width:100%!important;
  padding:18px 16px calc(34px + env(safe-area-inset-bottom))!important;
  background:#eef3f6!important;
  color:#14283b!important;
}
body.client-mode #client .onboarding-hero{
  padding:22px!important;
  border:1px solid #c9dce7!important;
  border-radius:16px!important;
  background:#eaf6fc!important;
  color:#14283b!important;
  box-shadow:none!important;
}
body.client-mode #client .onboarding-hero small{
  color:#087db8!important;
  font-size:11px!important;
}
body.client-mode #client .onboarding-hero h2{
  color:#10283b!important;
  font-size:32px!important;
}
body.client-mode #client .onboarding-hero p{
  max-width:36rem!important;
  color:#4e687b!important;
  font-size:15px!important;
  line-height:1.55!important;
}
body.client-mode #client .onboarding-note{
  grid-template-columns:46px minmax(0,1fr)!important;
  gap:14px!important;
  margin:14px 0 10px!important;
  padding:16px!important;
  border:1px solid #d3e0e8!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#14283b!important;
  box-shadow:none!important;
}
body.client-mode #client .onboarding-note>span{
  width:46px!important;
  height:46px!important;
  border:1px solid #b9d9e9!important;
  border-radius:12px!important;
  background:#eaf6fc!important;
  color:#087db8!important;
  font-size:11px!important;
}
body.client-mode #client .onboarding-note small{
  color:#537084!important;
  font-size:11px!important;
  letter-spacing:.07em!important;
}
body.client-mode #client .onboarding-note b{
  margin:3px 0!important;
  color:#14283b!important;
  font-size:17px!important;
  line-height:1.3!important;
}
body.client-mode #client .onboarding-note p{
  margin:0!important;
  color:#60788a!important;
  font-size:13px!important;
  line-height:1.5!important;
}
body.client-mode #client .onboarding-screen #onboardingStatus{
  margin:10px 0 14px!important;
  color:#264a61!important;
  font-size:13px!important;
}
body.client-mode #client .onboarding-screen #onboardingStatus>div{
  padding:12px 14px!important;
  border:1px solid #bdd8e7!important;
  border-radius:11px!important;
  background:#e2f2fa!important;
  color:#264a61!important;
  line-height:1.45!important;
}
body.client-mode #client .section.onboarding-group{
  margin:12px 0!important;
  padding:18px!important;
  border:1px solid #ccd9e1!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#14283b!important;
  box-shadow:0 4px 14px rgba(18,47,69,.045)!important;
}
body.client-mode #client .onboarding-group-head{
  gap:12px!important;
  margin:0 0 16px!important;
  padding:0 0 14px!important;
  border-bottom:1px solid #dce5eb!important;
}
body.client-mode #client .onboarding-group-head>span{
  width:40px!important;
  height:40px!important;
  border:1px solid #b8d9e9!important;
  border-radius:11px!important;
  background:#eaf6fc!important;
  color:#087db8!important;
  font-size:11px!important;
}
body.client-mode #client .onboarding-group-head small{
  color:#627b8d!important;
  font-size:10px!important;
  letter-spacing:.08em!important;
}
body.client-mode #client .onboarding-group-head h3{
  margin:2px 0 0!important;
  color:#14283b!important;
  font-size:20px!important;
  line-height:1.25!important;
}
body.client-mode #client .onboarding-group label{
  display:block!important;
  margin:15px 0 0!important;
  color:#29485e!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.4!important;
}
body.client-mode #client .onboarding-group input:not([type="checkbox"]),
body.client-mode #client .onboarding-group textarea,
body.client-mode #client .onboarding-group select{
  width:100%!important;
  min-height:52px!important;
  margin:7px 0 0!important;
  padding:13px 14px!important;
  border:1px solid #aebfcb!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#10283b!important;
  font-size:16px!important;
  line-height:1.45!important;
  box-shadow:inset 0 1px 2px rgba(17,43,64,.035)!important;
}
body.client-mode #client .onboarding-group textarea{
  min-height:108px!important;
  resize:vertical!important;
}
body.client-mode #client .onboarding-group input::placeholder,
body.client-mode #client .onboarding-group textarea::placeholder{
  color:#708494!important;
  opacity:1!important;
}
body.client-mode #client .onboarding-group input:focus,
body.client-mode #client .onboarding-group textarea:focus,
body.client-mode #client .onboarding-group select:focus{
  border-color:#1688c2!important;
  outline:0!important;
  box-shadow:0 0 0 3px rgba(22,136,194,.16)!important;
}
body.client-mode #client .onboarding-group .consent-row{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr)!important;
  align-items:start!important;
  gap:11px!important;
  margin-top:18px!important;
  color:#29485e!important;
  font-size:14px!important;
  line-height:1.5!important;
}
body.client-mode #client .onboarding-group .consent-row input[type="checkbox"]{
  appearance:auto!important;
  width:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  margin:1px 0 0!important;
  padding:0!important;
  accent-color:#1688c2!important;
  box-shadow:none!important;
}
body.client-mode #client .onboarding-screen #saveOnboarding{
  width:100%!important;
  min-height:54px!important;
  margin:20px 0 2px!important;
  border:0!important;
  border-radius:12px!important;
  background:#1688c2!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
body.client-mode #client nav{
  left:0!important;
  right:0!important;
  transform:none!important;
  width:100vw!important;
  max-width:none!important;
}
body.client-mode.client-onboarding-open #client nav{display:none!important}

@media(max-width:420px){
  body.client-mode #client .onboarding-screen{padding-left:12px!important;padding-right:12px!important}
  body.client-mode #client .onboarding-hero{padding:19px!important}
  body.client-mode #client .section.onboarding-group{padding:16px!important}
  body.client-mode #client .onboarding-note{grid-template-columns:40px minmax(0,1fr)!important;padding:14px!important}
  body.client-mode #client .onboarding-note>span{width:40px!important;height:40px!important}
}

/* One consistent client theme across every screen. These ID-scoped rules
   intentionally outrank the original navy prototype without affecting login. */
body.client-mode #client,
body.client-mode #client .screen,
body.client-mode #client .screen.light,
body.client-mode #client .screen.dark{
  background:#eef3f6!important;
  color:#14283b!important;
}
body.client-mode #client .welcome{
  margin:0 0 14px!important;
  padding:20px!important;
  border:1px solid #c9dce7!important;
  border-radius:16px!important;
  background:#eaf6fc!important;
  color:#14283b!important;
}
body.client-mode #client .welcome small{color:#087db8!important;font-size:10px!important;font-weight:850!important}
body.client-mode #client .welcome h1{margin:5px 0 8px!important;color:#10283b!important;font-size:31px!important;line-height:1.15!important}
body.client-mode #client .welcome p,
body.client-mode #client .welcome p b{margin:0!important;color:#4e687b!important;font-size:14px!important;line-height:1.5!important}
body.client-mode #client .icons{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
  margin:0 0 14px!important;
}
body.client-mode #client .icons button{
  min-width:0!important;
  min-height:82px!important;
  padding:11px 6px!important;
  border:1px solid #d2dfe7!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#1688c2!important;
  box-shadow:none!important;
  font-size:20px!important;
}
body.client-mode #client .icons button b{color:#29485e!important;font-size:11px!important;font-weight:750!important}
body.client-mode #client .blue,
body.client-mode #client .blue-card{
  margin:0 0 12px!important;
  border:0!important;
  border-radius:15px!important;
  background:#1688c2!important;
  color:#fff!important;
  box-shadow:none!important;
}
body.client-mode #client .blue *,body.client-mode #client .blue-card *{color:#fff!important}
body.client-mode #client .next,
body.client-mode #client .card,
body.client-mode #client .section,
body.client-mode #client .workout,
body.client-mode #client .habit,
body.client-mode #client .nutrition-target,
body.client-mode #client .premium-meal,
body.client-mode #client .habit-summary,
body.client-mode #client .checkin-intro,
body.client-mode #client .checkin-field,
body.client-mode #client .progress-stats>div,
body.client-mode #client .progress-chart-card,
body.client-mode #client .progress-log-form,
body.client-mode #client .pt-balance-card,
body.client-mode #client .pt-info-strip,
body.client-mode #client .pt-session-card,
body.client-mode #client .pt-empty,
body.client-mode #client .coachdoing-feature,
body.client-mode #client .coach-meal-card,
body.client-mode #client .hub-mission,
body.client-mode #client .hub-action-grid .tool-action,
body.client-mode #client .chat-empty{
  border:1px solid #d0dde5!important;
  background:#fff!important;
  color:#14283b!important;
  box-shadow:none!important;
}
body.client-mode #client .panel{
  padding:16px 0!important;
  background:transparent!important;
  color:#14283b!important;
}
body.client-mode #client .next h3,
body.client-mode #client .workout b,
body.client-mode #client .habit b,
body.client-mode #client .nutrition-target b,
body.client-mode #client .premium-meal b,
body.client-mode #client .habit-summary b,
body.client-mode #client .checkin-field label>span,
body.client-mode #client .progress-stats b,
body.client-mode #client .chart-title b,
body.client-mode #client .pt-balance-card strong,
body.client-mode #client .pt-session-card b,
body.client-mode #client .coachdoing-feature b,
body.client-mode #client .coach-meal-card h3,
body.client-mode #client .hub-mission h3,
body.client-mode #client .hub-action-grid .tool-action b,
body.client-mode #client .chat-empty b{
  color:#14283b!important;
}
body.client-mode #client .next p,
body.client-mode #client .workout small,
body.client-mode #client .habit small,
body.client-mode #client .nutrition-target span,
body.client-mode #client .premium-meal small,
body.client-mode #client .premium-meal span,
body.client-mode #client .checkin-intro>span,
body.client-mode #client .progress-stats small,
body.client-mode #client .chart-title>span,
body.client-mode #client .pt-session-card span,
body.client-mode #client .coachdoing-feature p,
body.client-mode #client .coach-meal-body>p,
body.client-mode #client .hub-mission p,
body.client-mode #client .hub-action-grid .tool-action small,
body.client-mode #client .chat-empty small{
  color:#60788a!important;
}
body.client-mode #client .hero,
body.client-mode #client .nutrition-hero,
body.client-mode #client .habits-hero,
body.client-mode #client .checkin-hero,
body.client-mode #client .progress-hero,
body.client-mode #client .messages-hero,
body.client-mode #client .tools-hero,
body.client-mode #client .pt-hero,
body.client-mode #client .coachdoing-hero{
  margin:0 0 14px!important;
  padding:20px!important;
  border:1px solid #c9dce7!important;
  border-radius:16px!important;
  background:#eaf6fc!important;
  color:#14283b!important;
  box-shadow:none!important;
}
body.client-mode #client .hero h2,
body.client-mode #client .nutrition-hero h2,
body.client-mode #client .habits-hero h2,
body.client-mode #client .checkin-hero h2,
body.client-mode #client .progress-hero h2,
body.client-mode #client .messages-hero h2,
body.client-mode #client .tools-hero h2,
body.client-mode #client .pt-hero h2,
body.client-mode #client .coachdoing-hero h2{color:#10283b!important;font-size:27px!important;line-height:1.2!important}
body.client-mode #client .hero small,
body.client-mode #client .nutrition-hero small,
body.client-mode #client .habits-hero small,
body.client-mode #client .checkin-hero small,
body.client-mode #client .progress-hero small,
body.client-mode #client .messages-hero small,
body.client-mode #client .tools-hero small,
body.client-mode #client .pt-hero small,
body.client-mode #client .coachdoing-hero small{color:#087db8!important;font-size:10px!important}
body.client-mode #client .hero p,
body.client-mode #client .nutrition-hero p,
body.client-mode #client .habits-hero p,
body.client-mode #client .checkin-hero p,
body.client-mode #client .progress-hero p,
body.client-mode #client .messages-hero p,
body.client-mode #client .tools-hero p,
body.client-mode #client .pt-hero p,
body.client-mode #client .coachdoing-hero p{color:#4e687b!important;font-size:14px!important;line-height:1.5!important}
body.client-mode #client .nutrition-section-head,
body.client-mode #client .progress-section-head,
body.client-mode #client .progress-log-head,
body.client-mode #client .hub-section-head,
body.client-mode #client .pt-section-head,
body.client-mode #client .feed-heading{color:#14283b!important}
body.client-mode #client .nutrition-section-head small,
body.client-mode #client .progress-section-head small,
body.client-mode #client .progress-log-head small,
body.client-mode #client .hub-section-head small,
body.client-mode #client .pt-section-head small,
body.client-mode #client .feed-heading small{color:#087db8!important}
body.client-mode #client .habit-list .habit.done{
  border-color:#a8dac2!important;
  background:#eff9f4!important;
}
body.client-mode #client .habit-list .habitBtn{
  border-color:#b9d7e6!important;
  background:#eaf6fc!important;
  color:#087db8!important;
}
body.client-mode #client .meal-number,
body.client-mode #client .checkin-step,
body.client-mode #client .hub-action-no,
body.client-mode #client .pt-date-tile,
body.client-mode #client .coach-avatar,
body.client-mode #client .coachdoing-feature>span,
body.client-mode #client .pt-info-strip>span{
  border-color:#b9d9e9!important;
  background:#eaf6fc!important;
  color:#087db8!important;
}
body.client-mode #client input,
body.client-mode #client textarea,
body.client-mode #client select,
body.client-mode #client .search{
  border:1px solid #aebfcb!important;
  background:#fff!important;
  color:#10283b!important;
  font-size:16px!important;
}
body.client-mode #client input::placeholder,
body.client-mode #client textarea::placeholder{color:#708494!important;opacity:1!important}
body.client-mode #client .checkin-submit{
  border:1px solid #c6dce7!important;
  background:#eaf6fc!important;
  color:#14283b!important;
}
body.client-mode #client .progress-chart-card .chart{
  border-bottom-color:#cbdbe4!important;
  background:linear-gradient(180deg,rgba(22,136,194,.06),transparent)!important;
}
body.client-mode #client .progress-photo-card,
body.client-mode #client .empty-photo-state{
  border-color:#cbd9e2!important;
  background:#fff!important;
  color:#60788a!important;
}
body.client-mode #client .hub-score{
  border:0!important;
  background:#1688c2!important;
  color:#fff!important;
  box-shadow:none!important;
}
body.client-mode #client .hub-score *{color:#fff!important}
body.client-mode #client .hub-action-grid .tool-action.danger-soft{
  border-color:#e5c6ca!important;
  background:#fff6f6!important;
}
body.client-mode #client .premium-chat .msg.coach{
  border:1px solid #cbdce6!important;
  background:#fff!important;
  color:#29485e!important;
}
body.client-mode #client .premium-chat .msg.client{
  border:0!important;
  background:#1688c2!important;
  color:#fff!important;
}
body.client-mode #client .coach-meal-photo.no-image{
  border-bottom-color:#d0dde5!important;
  background:#eaf6fc!important;
  color:#087db8!important;
}
body.client-mode #client .meal-macros span{
  border-color:#d3e0e7!important;
  background:#f3f7f9!important;
  color:#60788a!important;
}
body.client-mode #client .meal-macros span b{color:#14283b!important}
body.client-mode #client .pt-balance-breakdown span,
body.client-mode #client .pt-package-inline>div{
  border-color:#cbdce6!important;
  background:#f3f8fa!important;
  color:#60788a!important;
}
body.client-mode #client .pt-balance-breakdown b,
body.client-mode #client .pt-package-inline b{color:#14283b!important}
body.client-mode #client .onboarding-shortcut{
  width:100%!important;
  margin:14px 0 0!important;
  padding:16px!important;
  border:1px solid #c7dce7!important;
  border-radius:14px!important;
  background:#eaf6fc!important;
  color:#14283b!important;
  box-shadow:none!important;
}
body.client-mode #client .onboarding-shortcut span{color:#087db8!important;font-size:9px!important}
body.client-mode #client .onboarding-shortcut b{color:#14283b!important;font-size:14px!important}
body.client-mode #client .onboarding-shortcut small{color:#60788a!important;font-size:11px!important;line-height:1.45!important}
body.client-mode #client .habit-summary>span{color:#1688c2!important}
body.client-mode #client .pt-package-summary{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding:0!important;
  margin:0 0 12px!important;
}
body.client-mode #client .pt-package-summary>div{
  min-width:0!important;
  padding:14px 10px!important;
  border:1px solid #d0dde5!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#14283b!important;
}
body.client-mode #client .pt-package-summary small,
body.client-mode #client .pt-package-summary b{display:block!important}
body.client-mode #client .pt-package-summary small{color:#60788a!important;font-size:9px!important;line-height:1.35!important}
body.client-mode #client .pt-package-summary b{margin-top:5px!important;color:#1688c2!important;font-size:22px!important}
body.client-mode #client .pt-session-row,
body.client-mode #client .programme-empty{
  padding:15px!important;
  border:1px solid #d0dde5!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#14283b!important;
}
body.client-mode #client .pt-session-row b,
body.client-mode #client .programme-empty b{color:#14283b!important}
body.client-mode #client .pt-session-row small,
body.client-mode #client .programme-empty span{color:#60788a!important}

@media(max-width:420px){
  body.client-mode #client .screen{padding-left:12px!important;padding-right:12px!important}
  body.client-mode #client .icons{gap:7px!important}
  body.client-mode #client .icons button{min-height:76px!important;padding-left:4px!important;padding-right:4px!important}
}

/* Progress page: clear hierarchy, positive feedback and readable achievements. */
body.client-mode #client .progress-screen .goal-progress-block{
  margin:14px 0!important;
  padding:18px!important;
  border:1px solid #ccdbe4!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#14283b!important;
  box-shadow:none!important;
}
body.client-mode #client .goal-progress-block>.section-head{margin:0 0 14px!important}
body.client-mode #client .goal-progress-block>.section-head small,
body.client-mode #client .progress-subhead small{
  display:block!important;
  color:#087db8!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.09em!important;
}
body.client-mode #client .goal-progress-block>.section-head h3{
  margin:3px 0 0!important;
  color:#14283b!important;
  font-size:22px!important;
}
body.client-mode #client .goal-streak{
  padding:7px 10px!important;
  border:1px solid #bddbeb!important;
  border-radius:999px!important;
  background:#eaf6fc!important;
  color:#087db8!important;
  font-size:10px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
body.client-mode #client .progress-encouragement{
  display:grid!important;
  grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)!important;
  gap:14px!important;
  align-items:center!important;
  padding:15px!important;
  border:1px solid #c2dfec!important;
  border-radius:13px!important;
  background:#eaf6fc!important;
}
body.client-mode #client .progress-encouragement>div>small{
  display:block!important;
  color:#087db8!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
}
body.client-mode #client .progress-encouragement>div>b{
  display:block!important;
  margin-top:4px!important;
  color:#14283b!important;
  font-size:15px!important;
  line-height:1.35!important;
}
body.client-mode #client .progress-encouragement p{
  margin:5px 0 0!important;
  color:#526e81!important;
  font-size:11px!important;
  line-height:1.5!important;
}
body.client-mode #client .progress-win-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
}
body.client-mode #client .progress-win-grid span{
  min-width:0!important;
  padding:10px 5px!important;
  border:1px solid #d3e4ec!important;
  border-radius:10px!important;
  background:#fff!important;
  text-align:center!important;
}
body.client-mode #client .progress-win-grid b,
body.client-mode #client .progress-win-grid small{display:block!important}
body.client-mode #client .progress-win-grid b{color:#1688c2!important;font-size:18px!important;line-height:1!important}
body.client-mode #client .progress-win-grid small{margin-top:4px!important;color:#60788a!important;font-size:8px!important}
body.client-mode #client .progress-subhead{
  margin:18px 0 9px!important;
  padding-bottom:8px!important;
  border-bottom:1px solid #e0e7ec!important;
}
body.client-mode #client .progress-subhead b{
  display:block!important;
  margin-top:2px!important;
  color:#29485e!important;
  font-size:14px!important;
}
body.client-mode #client .badge-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  margin:0!important;
}
body.client-mode #client .achievement-badge{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  min-width:0!important;
  padding:12px!important;
  border:1px solid #cfe1e9!important;
  border-radius:12px!important;
  background:#f5fafc!important;
  color:#14283b!important;
}
body.client-mode #client .achievement-badge>span{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  padding:3px!important;
  border:1px solid #b8dbea!important;
  border-radius:50%!important;
  background:#e3f4fb!important;
  color:#087db8!important;
  font-size:8px!important;
  font-weight:900!important;
  text-align:center!important;
}
body.client-mode #client .achievement-badge b{
  color:#14283b!important;
  font-size:12px!important;
  line-height:1.35!important;
}
body.client-mode #client .achievement-badge small{
  margin-top:3px!important;
  color:#60788a!important;
  font-size:10px!important;
  line-height:1.4!important;
}
body.client-mode #client .badge-empty{
  grid-column:1/-1!important;
  padding:14px!important;
  border:1px dashed #b8d4e2!important;
  border-radius:11px!important;
  background:#f7fbfd!important;
  color:#526e81!important;
}
body.client-mode #client .badge-empty b,
body.client-mode #client .badge-empty span{display:block!important}
body.client-mode #client .badge-empty b{color:#29485e!important;font-size:12px!important}
body.client-mode #client .badge-empty span{margin-top:3px!important;font-size:10px!important;line-height:1.45!important}
body.client-mode #client .goal-card{
  margin:8px 0 0!important;
  padding:13px!important;
  border:1px solid #d3e0e7!important;
  border-radius:12px!important;
  background:#f8fafb!important;
  color:#14283b!important;
}
body.client-mode #client .goal-card.complete{border-color:#bce1cf!important;background:#eff9f4!important}
body.client-mode #client .progress-screen .photo-progress-block{
  margin:14px 0!important;
  padding:18px!important;
  border:1px solid #ccdbe4!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#14283b!important;
}
body.client-mode #client .progress-screen .progress-log-form{
  margin:0 0 18px!important;
  padding:16px!important;
}

@media(max-width:520px){
  body.client-mode #client .progress-encouragement{grid-template-columns:1fr!important}
  body.client-mode #client .badge-grid{grid-template-columns:1fr!important}
}

/* Daily measurable habits */
body.client-mode #client .habit-list .measure-habit{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
body.client-mode #client .habit-measure-copy{flex:1;min-width:0}
body.client-mode #client .habit-progress{height:6px;margin-top:8px;overflow:hidden;border-radius:999px;background:#dceaf1}
body.client-mode #client .habit-progress i{display:block;height:100%;border-radius:inherit;background:#1590df;transition:width .2s ease}
body.client-mode #client .habit-quantity{display:grid;grid-template-columns:38px 36px 38px;align-items:center;flex:0 0 auto;border:1px solid #b9d7e6;border-radius:12px;background:#fff;overflow:hidden}
body.client-mode #client .habit-quantity strong{text-align:center;color:#14283b;font-size:14px}
body.client-mode #client .habit-list .habitQuantityBtn{width:38px!important;height:40px!important;padding:0!important;border:0!important;border-radius:0!important;background:#eaf6fc!important;color:#087db8!important;font-size:20px!important;font-weight:800!important;line-height:1!important}
body.client-mode #client .habit-list .habitQuantityBtn:active{background:#d6edf8!important}
@media(max-width:420px){
  body.client-mode #client .habit-list .measure-habit{align-items:flex-start!important;flex-direction:column!important}
  body.client-mode #client .habit-quantity{align-self:stretch;grid-template-columns:48px 1fr 48px}
  body.client-mode #client .habit-list .habitQuantityBtn{width:48px!important}
}

/* MOTIVE8 visual system: consistent icons, logo tiles and navy surfaces */
.m8-icon-sprite{position:absolute!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important}
.m8-action-icon{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;border:1px solid #24516f!important;border-radius:12px!important;background:#0b2744!important;color:#46bdf5!important}
.m8-action-icon svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body.client-mode #client .icons button{gap:7px!important}
body.client-mode #client .icons button:hover .m8-action-icon,
body.client-mode #client .icons button:focus-visible .m8-action-icon{border-color:#1688c2!important;background:#0d3155!important;color:#7bd2fb!important}
body.client-mode #client nav button>svg{width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#coach .coach-side-nav button span svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.logo-avatar,.logo-tile{display:grid!important;place-items:center!important;overflow:hidden!important;background:#eaf6fc!important;border-color:#b9d9e9!important}
.logo-avatar img,.logo-tile img{display:block!important;width:76%!important;height:76%!important;object-fit:contain!important}
.exercise-no-image img{width:74px;height:74px;object-fit:contain;filter:none}
html,body{background:#081b2d!important}
body.coach-mode,#coach{background:#081b2d!important}
#coach .coach-sidebar{background:#0a2034!important}
#coach .coach-workspace{background:#0d2236!important}

/* Daily habit progress and achievement celebration */
.habit-summary>div{flex:1;min-width:0}
.habit-summary-bar{height:6px;margin-top:9px;overflow:hidden;border-radius:999px;background:#dceaf1}
.habit-summary-bar i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1688c2,#42b8ef);transition:width .25s ease}
.daily-habit-achievement{margin:0 0 12px;padding:15px;border:1px solid #b9dbea;border-radius:14px;background:linear-gradient(135deg,#eaf6fc,#f7fcff);color:#14283b}
.daily-habit-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.daily-habit-top small,.daily-habit-top b{display:block}.daily-habit-top small{color:#087db8;font-size:8px;font-weight:900;letter-spacing:.09em}.daily-habit-top b{margin-top:4px;font-size:14px}.daily-habit-top strong{color:#1688c2;font-size:22px}
.daily-habit-achievement .bar{margin:12px 0 8px}.daily-habit-achievement p{margin:0;color:#526e81;font-size:10px;line-height:1.45}

/* Coach-set exercise targets */
.client-workout-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.client-workout-actions .ghost{margin:0!important;white-space:nowrap}
.target-editor-head{padding:4px 0 12px}.target-editor-head small{color:#087db8;font-size:8px;font-weight:900;letter-spacing:.1em}.target-editor-head h3{margin:4px 0}.target-editor-head p{margin:0;color:#60788a;font-size:11px;line-height:1.5}
.workout-target-row{margin:9px 0;padding:13px;border:1px solid #d3e0e7;border-radius:13px;background:#f7fafc}
.workout-target-row>div:first-child{display:flex;align-items:center;gap:9px;margin-bottom:10px}.workout-target-row>div:first-child span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#0b2744;color:#46bdf5;font-size:8px;font-weight:900}.workout-target-row>div:first-child b{color:#14283b;font-size:12px}
.target-editor-grid{display:grid;grid-template-columns:70px minmax(90px,1fr) minmax(110px,1fr);gap:8px}.target-editor-grid label{margin:0!important;color:#526e81!important;font-size:9px!important}.target-editor-grid input{margin-top:5px!important}
.coach-exercise-target{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 9px;padding:10px 11px;border:1px solid #b9dbea;border-radius:10px;background:#eaf6fc;color:#14283b}.coach-exercise-target span{color:#087db8;font-size:7px;font-weight:900;letter-spacing:.1em}.coach-exercise-target b{font-size:11px}
.target-template-grid{display:grid;grid-template-columns:70px 1fr 1fr;gap:8px}

@media(max-width:520px){
  .target-editor-grid{grid-template-columns:1fr 1fr}.target-editor-grid label:last-child{grid-column:1/-1}
  .client-detail-row{align-items:flex-start!important}.client-workout-actions{align-items:flex-end;flex-direction:column}
}

/* One-tap mobile navigation and consistent Progress spacing */
#client nav button,#client [data-go]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
body.client-mode #client .progress-screen{padding-left:16px!important;padding-right:16px!important}
body.client-mode #client .progress-screen .progress-hero{margin-left:-16px!important;margin-right:-16px!important}
body.client-mode #client .progress-section-head,
body.client-mode #client .progress-log-head{padding-left:0!important;padding-right:0!important}
body.client-mode #client .progress-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;padding:0!important}
body.client-mode #client .progress-stats>div{display:flex!important;min-width:0!important;min-height:92px!important;flex-direction:column!important;justify-content:center!important}
body.client-mode #client .progress-chart-card,
body.client-mode #client .goal-progress-block,
body.client-mode #client .photo-progress-block,
body.client-mode #client .progress-log-form{width:100%!important;margin-left:0!important;margin-right:0!important}

/* Collapsed achievements archive keeps previous days tidy */
body.client-mode #client .achievement-archive{margin:16px 0 4px!important;border:1px solid #c9dfe9!important;border-radius:13px!important;background:#f7fbfd!important;overflow:hidden!important}
body.client-mode #client .achievement-archive summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 14px!important;cursor:pointer!important;list-style:none!important}
body.client-mode #client .achievement-archive summary::-webkit-details-marker{display:none!important}
body.client-mode #client .achievement-archive summary div small,
body.client-mode #client .achievement-archive summary div b{display:block!important}
body.client-mode #client .achievement-archive summary div small{color:#087db8!important;font-size:9px!important;font-weight:850!important;letter-spacing:.09em!important}
body.client-mode #client .achievement-archive summary div b{margin-top:3px!important;color:#29485e!important;font-size:14px!important}
body.client-mode #client .achievement-archive summary>span{padding:6px 9px!important;border-radius:999px!important;background:#e2f3fb!important;color:#087db8!important;font-size:9px!important;font-weight:800!important;white-space:nowrap!important}
body.client-mode #client .achievement-archive[open] summary{border-bottom:1px solid #d7e6ed!important}
body.client-mode #client .achievement-archive .badge-grid{padding:12px!important}

/* Coach assistance notifications */
#coach #coachStats{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#coach #coachStats .needs-assistance{border-color:#f3b4a8!important;background:#fff3f0!important}
#coach #coachStats .needs-assistance small,#coach #coachStats .needs-assistance b{color:#a73524!important}
.assistance-panel{margin:14px 0;padding:18px;border:1px solid #f0b7aa;border-radius:16px;background:#fff7f5;color:#14283b}
.assistance-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.assistance-title small{color:#a73524;font-size:9px;font-weight:900;letter-spacing:.1em}.assistance-title h3{margin:3px 0 0}.assistance-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#c84732;color:#fff;font-weight:900}
.assistance-alert{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-top:1px solid #edd4cf}.assistance-alert:first-of-type{border-top:0}.assistance-alert>div:first-child{min-width:0}.assistance-alert small,.assistance-alert b{display:block}.assistance-alert small{color:#a73524;font-size:9px;font-weight:800}.assistance-alert b{margin-top:3px;font-size:14px}.assistance-alert p{margin:4px 0 0;color:#526e81;font-size:11px;line-height:1.45}.assistance-alert>div:last-child{display:flex;gap:8px;flex:0 0 auto}.assistance-alert button{margin:0!important;white-space:nowrap}
@media(max-width:700px){#coach #coachStats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.assistance-alert{align-items:stretch;flex-direction:column}.assistance-alert>div:last-child{justify-content:flex-end}}
@media(max-width:360px){body.client-mode #client .progress-stats{grid-template-columns:1fr!important}}

/* Measurable daily habits */
body.client-mode #client .habit-number-entry{display:grid!important;grid-template-columns:minmax(76px,110px) auto!important;gap:5px 8px!important;align-items:center!important;flex:0 0 auto!important}
body.client-mode #client .habit-number-entry input{grid-row:1!important;width:100%!important;min-height:42px!important;margin:0!important;padding:8px 10px!important;border:1px solid #b9d7e6!important;border-radius:10px!important;background:#fff!important;color:#14283b!important;font-size:15px!important;font-weight:800!important}
body.client-mode #client .habit-number-entry span{grid-row:1!important;color:#607b8d!important;font-size:9px!important;font-weight:700!important}
body.client-mode #client .habit-number-entry button{grid-column:1/-1!important;width:100%!important;min-height:34px!important;border:0!important;border-radius:9px!important;background:#1688c2!important;color:#fff!important;font-size:10px!important;font-weight:850!important}

/* Coach notifications and client grouping */
.coach-notification-panel{margin:0 0 18px;padding:18px;border:1px solid #c9dfe9;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(17,43,64,.05)}
.coach-notification-title,.coach-notification-title>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.coach-notification-title small,.coach-notification-title h3{display:block}.coach-notification-title small{color:#1688c2;font-size:9px;font-weight:900;letter-spacing:.1em}.coach-notification-title h3{margin:3px 0 0}.coach-notification-title span{padding:6px 9px;border-radius:999px;background:#e8f6fc;color:#087db8;font-size:10px;font-weight:850}.coach-notification-title .ghost{min-height:34px!important;margin:0!important;padding:6px 9px!important;font-size:9px!important}
.coach-notification-row{width:100%;display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 0;border:0;border-top:1px solid #e4edf1;background:transparent;color:#14283b;text-align:left}.coach-notification-row:first-of-type{margin-top:12px}.coach-notification-row .notification-dot{width:8px;height:8px;border-radius:50%;background:#b7c9d3}.coach-notification-row.unread .notification-dot{background:#e45c42;box-shadow:0 0 0 4px rgba(228,92,66,.1)}.coach-notification-row b,.coach-notification-row small{display:block}.coach-notification-row b{font-size:12px}.coach-notification-row small{margin-top:3px;color:#627b8c;font-size:10px}.coach-notification-row time{color:#78909e;font-size:9px;white-space:nowrap}
.client-group-controls{display:flex;align-items:end;gap:10px;margin:14px 0 10px}.client-group-controls label{flex:1;color:#526e81;font-size:10px;font-weight:800}.client-group-controls select{width:100%;min-height:44px;margin-top:5px;padding:9px 11px;border:1px solid #c9dfe9;border-radius:10px;background:#fff;color:#14283b}.client-group-controls .ghost{margin:0!important;white-space:nowrap}.group-member-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:14px 0}.group-member-picker>small{grid-column:1/-1;color:#1688c2;font-weight:900}.group-member-picker label{padding:10px;border:1px solid #d8e6ec;border-radius:10px;background:#f7fbfd}.group-edit-row{width:100%;display:flex;justify-content:space-between;gap:12px;padding:12px;border:0;border-top:1px solid #dce8ed;background:#fff;color:#14283b;text-align:left}.group-edit-row span{color:#6b8291;font-size:10px}
.coach-message-thread{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow:auto;padding:8px 0 14px}.coach-thread-message{max-width:82%;padding:10px 12px;border-radius:12px;background:#edf5f9}.coach-thread-message.from-coach{align-self:flex-end;background:#0b2744;color:#fff}.coach-thread-message small{font-size:7px;font-weight:900;letter-spacing:.09em;color:#1688c2}.coach-thread-message.from-coach small{color:#70cdf7}.coach-thread-message p{margin:3px 0 0!important;color:inherit!important;font-size:11px!important}.coach-reply-box{display:grid;grid-template-columns:1fr auto;gap:8px}.coach-reply-box textarea{min-height:70px!important;margin:0!important}.coach-reply-box .cta{width:auto!important;min-width:110px!important;margin:0!important}
@media(max-width:600px){body.client-mode #client .measure-habit{align-items:stretch!important}.coach-notification-title,.client-group-controls,.coach-reply-box{align-items:stretch;flex-direction:column}.coach-notification-title{display:block}.coach-notification-title>div{margin-top:8px}.coach-notification-row{grid-template-columns:9px minmax(0,1fr)}.coach-notification-row time{grid-column:2}.client-group-controls{display:grid}.group-member-picker{grid-template-columns:1fr}.coach-reply-box{grid-template-columns:1fr}}
/* Unified coach inbox, archive controls and programme summary */
.coach-side-nav button{position:relative}
.coach-nav-unread{margin-left:auto;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#38aef6;color:#061827;font-size:11px;font-style:normal;font-weight:900;display:inline-flex;align-items:center;justify-content:center}
.coach-nav-unread[hidden]{display:none}
.coach-inbox-shell{display:grid;grid-template-columns:minmax(240px,330px) minmax(0,1fr);min-height:660px;border:1px solid #cad9e6;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 18px 45px rgba(17,42,67,.08)}
.coach-inbox-clients{background:#f4f8fb;border-right:1px solid #d5e1eb;overflow:auto}
.coach-inbox-list-head,.coach-inbox-chat-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid #d5e1eb}
.coach-inbox-list-head span,.coach-inbox-chat-head small{color:#61778a;font-size:12px}
.coach-inbox-client{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 18px;border:0;border-bottom:1px solid #dbe5ed;background:transparent;text-align:left;color:#132b43;cursor:pointer}
.coach-inbox-client:hover,.coach-inbox-client.active{background:#fff;box-shadow:inset 4px 0 #22a8f5}
.coach-inbox-client>span:nth-child(2){min-width:0;display:grid;gap:4px}.coach-inbox-client small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#71869a}.coach-inbox-client>strong{background:#22a8f5;color:#061827;border-radius:999px;min-width:24px;height:24px;display:grid;place-items:center;font-size:11px}
.coach-inbox-avatar{width:42px;height:42px;border-radius:14px;background:#08243a;color:#5dc5ff;display:grid;place-items:center;font-size:12px;font-weight:900}
.coach-inbox-conversation{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#fff;color:#132b43}
.coach-inbox-chat-head>div{display:grid;gap:3px}.coach-inbox-thread{min-height:0;max-height:570px;overflow:auto;padding:24px;display:flex;flex-direction:column;gap:14px;background:#f9fbfd}
.coach-inbox-message{max-width:min(78%,680px);display:grid;gap:4px}.coach-inbox-message p{margin:0;padding:13px 16px;border-radius:18px;background:#e9f0f6;color:#19334b;line-height:1.45}.coach-inbox-message.sent{align-self:flex-end;text-align:right}.coach-inbox-message.sent p{background:#0d3552;color:#fff;border-bottom-right-radius:5px}.coach-inbox-message.received p{border-bottom-left-radius:5px}.coach-inbox-message small,.coach-inbox-message time{font-size:10px;color:#75899b}
.coach-inbox-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:18px;border-top:1px solid #d5e1eb;background:#fff}.coach-inbox-compose textarea{min-height:54px;max-height:120px;resize:vertical;margin:0;background:#f4f8fb!important;color:#132b43!important;border-color:#bfd0de!important}.coach-inbox-compose button{width:auto;margin:0;align-self:stretch}
.coach-inbox-empty{display:grid;place-items:center;align-content:center;gap:8px;min-height:280px;color:#71869a;text-align:center}.coach-inbox-empty img{width:54px;height:54px;object-fit:contain}.coach-inbox-empty.compact{min-height:120px}
.client-profile-actions{display:flex;gap:10px;align-items:center}.danger-outline{border-color:#d86a74!important;color:#a52c38!important;background:#fff!important}.danger-button{border:0;border-radius:12px;padding:12px 16px;background:#b72f3c;color:#fff;font-weight:800;cursor:pointer}.danger-button:hover{background:#982530}.full-btn{width:100%}
.archived-client-panel{margin-top:20px;border:1px solid #cbd8e3;border-radius:18px;background:#fff;overflow:hidden}.archived-client-panel summary{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;cursor:pointer;color:#183149}.archived-client-panel summary span{display:grid;gap:3px}.archived-client-panel summary small{color:#71869a}.archived-client-panel summary strong{min-width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#e8f4fc;color:#1378b9}.archived-client-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;border-top:1px solid #dbe5ed;color:#183149}.archived-client-row>div:first-child{display:grid;gap:4px}.archived-client-row small{color:#71869a}.archived-client-row>div:last-child{display:flex;gap:8px}
@media(max-width:760px){.coach-inbox-shell{grid-template-columns:1fr;min-height:auto}.coach-inbox-clients{border-right:0;border-bottom:1px solid #d5e1eb;max-height:250px}.coach-inbox-thread{height:420px}.coach-inbox-compose{grid-template-columns:1fr}.coach-inbox-compose button{width:100%}.client-profile-actions,.archived-client-row,.archived-client-row>div:last-child{align-items:stretch;flex-direction:column}.coach-inbox-message{max-width:90%}}

/* Clear, accessible login feedback */
.login-error{margin:8px 0 2px;padding:10px 12px;border:1px solid #ff9b9b;border-radius:10px;background:#fff1f1;color:#8f1f1f;font-size:13px;font-weight:700;text-align:left}
.login-error[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Coach navigation: consistent desktop alignment and an accessible mobile drawer. */
body.coach-mode #coach .coach-sidebar{
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
body.coach-mode #coach .coach-side-nav{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
  width:100%!important;
}
body.coach-mode #coach .coach-side-nav button{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr) auto!important;
  align-items:center!important;
  justify-content:stretch!important;
  justify-items:start!important;
  column-gap:12px!important;
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  padding:11px 14px!important;
  text-align:left!important;
  white-space:nowrap!important;
}
body.coach-mode #coach .coach-side-nav button>span{
  display:grid!important;
  place-items:center!important;
  width:24px!important;
  height:24px!important;
  margin:0!important;
}
body.coach-mode #coach .coach-side-nav button>span svg{
  width:19px!important;
  height:19px!important;
}
body.coach-mode #coach .coach-nav-unread{grid-column:3!important;margin-left:0!important}
body.coach-mode #coach .coach-side-section button{
  width:100%!important;
  min-height:48px!important;
  padding:11px 14px!important;
  text-align:left!important;
}
.coach-menu-toggle,.coach-sidebar-backdrop{display:none!important}

@media(max-width:800px){
  body.coach-mode #coach:not([hidden]){display:block!important;min-height:100dvh!important}
  body.coach-mode .coach-workspace{width:100%!important;padding-top:64px!important}
  body.coach-mode #coach .coach-menu-toggle{
    position:fixed!important;
    top:max(12px,env(safe-area-inset-top))!important;
    left:14px!important;
    z-index:80!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    min-height:44px!important;
    padding:9px 13px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:12px!important;
    background:#0a2034!important;
    color:#fff!important;
    box-shadow:0 8px 24px rgba(0,0,0,.2)!important;
  }
  body.coach-mode #coach .coach-menu-toggle>span{display:grid!important;gap:4px!important;width:19px!important}
  body.coach-mode #coach .coach-menu-toggle i{display:block!important;width:19px!important;height:2px!important;border-radius:2px!important;background:currentColor!important}
  body.coach-mode #coach .coach-menu-toggle b{font:700 14px/1 system-ui,sans-serif!important}
  body.coach-mode #coach .coach-sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    z-index:90!important;
    display:flex!important;
    flex-direction:column!important;
    width:min(86vw,300px)!important;
    max-width:300px!important;
    height:100dvh!important;
    padding:20px 18px max(20px,env(safe-area-inset-bottom))!important;
    transform:translateX(-105%)!important;
    transition:transform .24s ease!important;
    box-shadow:12px 0 36px rgba(0,0,0,.3)!important;
  }
  body.coach-mode.coach-menu-open #coach .coach-sidebar{transform:translateX(0)!important}
  body.coach-mode #coach .coach-side-nav{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
    width:100%!important;
    padding:0!important;
  }
  body.coach-mode #coach .coach-side-nav button{
    display:grid!important;
    grid-template-columns:24px minmax(0,1fr) auto!important;
    justify-content:stretch!important;
    width:100%!important;
    min-width:0!important;
  }
  body.coach-mode #coach .coach-side-section{display:grid!important;width:100%!important;padding-right:0!important}
  body.coach-mode #coach .coach-side-footer{display:flex!important;position:static!important;width:100%!important;margin-top:auto!important}
  body.coach-mode #coach .coach-sidebar-backdrop{
    position:fixed!important;
    inset:0!important;
    z-index:85!important;
    background:rgba(3,14,25,.62)!important;
    backdrop-filter:blur(2px)!important;
  }
  body.coach-mode.coach-menu-open #coach .coach-sidebar-backdrop{display:block!important}
  body.coach-mode #coach .coach-sidebar-backdrop[hidden]{display:none!important}
body.coach-mode.coach-menu-open{overflow:hidden!important}
}

/* Uploaded images: predictable boxes without stretching or overflow. */
.coach-meal-card>img,
.latest-coach-update>img,
.shared-feed-admin-card>img,
.recipe-tile-image,
.recipe-image,
.exercise-image,
.alt-image,
.update-image{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:16/9!important;
  object-fit:cover!important;
  object-position:center!important;
  overflow:hidden!important;
  background:#e8f0f4!important;
}
.coach-meal-card>img,
.latest-coach-update>img,
.shared-feed-admin-card>img{
  border-radius:0!important;
  border-bottom:1px solid rgba(120,155,178,.28)!important;
}
.recipe-photo-box{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16/9!important;
}
.recipe-photo-box img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.plan-meal>img{
  display:block!important;
  width:76px!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  object-fit:cover!important;
  object-position:center!important;
}
.progress-photo-card img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:3/4!important;
  object-fit:cover!important;
  object-position:center top!important;
}
.logo-avatar img,.logo-tile img,.coach-brand img,.shared-feed-placeholder img,.exercise-no-image img{
  object-fit:contain!important;
  object-position:center!important;
}
@media(max-width:560px){
  .coach-meal-card>img,
  .latest-coach-update>img,
  .shared-feed-admin-card>img,
  .recipe-tile-image,
  .recipe-image,
  .exercise-image,
  .alt-image,
  .update-image,
  .recipe-photo-box{
    aspect-ratio:4/3!important;
  }
}

/* =========================================================
   MOTIVE-8 brand vision — black, electric blue, high contrast
   ========================================================= */
:root{
  --vision-black:#050607;
  --vision-panel:#0d1115;
  --vision-panel-2:#12181d;
  --vision-line:#273038;
  --vision-blue:#0787ff;
  --vision-blue-2:#00a8ff;
  --vision-text:#f5f7f8;
  --vision-muted:#a4afb8;
  --vision-heading:"Arial Narrow","Roboto Condensed",Impact,system-ui,sans-serif;
}
body.logged-in{
  background:
    radial-gradient(circle at 88% 12%,rgba(0,136,255,.16),transparent 28rem),
    linear-gradient(135deg,#020304 0%,#080b0e 48%,#030405 100%)!important;
  color:var(--vision-text)!important;
}
body.logged-in .phone,
body.logged-in #client,
body.logged-in #coach,
body.logged-in .coach-workspace,
body.logged-in .screen,
body.logged-in .coach-screen{
  background:transparent!important;
  color:var(--vision-text)!important;
}
body.logged-in h1,body.logged-in h2,body.logged-in h3,body.logged-in h4,
body.logged-in .welcome h1,body.logged-in .hero h2{
  color:var(--vision-text)!important;
  font-family:var(--vision-heading)!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
}
body.logged-in p,body.logged-in small,body.logged-in .muted,
body.logged-in .muted-copy,body.logged-in label{
  color:var(--vision-muted)!important;
}
body.logged-in input,body.logged-in textarea,body.logged-in select{
  border:1px solid var(--vision-line)!important;
  background:#090d10!important;
  color:var(--vision-text)!important;
  box-shadow:none!important;
}
body.logged-in input:focus,body.logged-in textarea:focus,body.logged-in select:focus{
  border-color:var(--vision-blue)!important;
  outline:2px solid rgba(7,135,255,.2)!important;
}
body.logged-in input::placeholder,body.logged-in textarea::placeholder{color:#707b84!important}
body.logged-in .cta,body.logged-in .mini-add{
  border:1px solid #1599ff!important;
  background:linear-gradient(135deg,#0076e7,#079cff)!important;
  color:#fff!important;
  box-shadow:0 0 20px rgba(7,135,255,.2)!important;
  font-weight:850!important;
}
body.logged-in .ghost{
  border:1px solid #3a4650!important;
  background:#10161a!important;
  color:#eef5f9!important;
}
body.logged-in .ghost:hover,body.logged-in .ghost:focus-visible{
  border-color:var(--vision-blue)!important;
  color:#fff!important;
}

/* Client shell and persistent navigation */
body.client-mode .phone{
  border-color:#222b32!important;
  background:#050708!important;
  box-shadow:0 28px 80px rgba(0,0,0,.58),0 0 35px rgba(7,135,255,.1)!important;
}
body.client-mode .phone>header{
  border-bottom:1px solid #20282e!important;
  background:rgba(5,7,8,.96)!important;
  backdrop-filter:blur(18px)!important;
}
body.client-mode .phone>header .brand b{color:#fff!important}
body.client-mode .phone>header button{color:#dce6ec!important}
body.client-mode #client>nav{
  border-top:1px solid #222b31!important;
  background:rgba(5,7,9,.96)!important;
  backdrop-filter:blur(18px)!important;
}
body.client-mode #client>nav button{color:#7f8b94!important;background:transparent!important}
body.client-mode #client>nav button.active{color:var(--vision-blue-2)!important}
body.client-mode #client>nav button.active svg{filter:drop-shadow(0 0 6px rgba(0,145,255,.6))}
body.client-mode #client .screen{
  background:
    linear-gradient(115deg,rgba(255,255,255,.018),transparent 34%),
    radial-gradient(circle at 100% 0,rgba(0,132,255,.1),transparent 24rem),
    #060809!important;
}
body.client-mode #client .welcome,
body.client-mode #client .hero,
body.client-mode #client .nutrition-hero,
body.client-mode #client .habits-hero,
body.client-mode #client .checkin-hero,
body.client-mode #client .progress-hero,
body.client-mode #client .messages-hero,
body.client-mode #client .tools-hero,
body.client-mode #client .pt-hero,
body.client-mode #client .onboarding-hero,
body.client-mode #client .coachdoing-hero{
  border-bottom:1px solid #1f282e!important;
  background:
    linear-gradient(105deg,rgba(7,135,255,.12),transparent 48%),
    linear-gradient(180deg,#0b0f12,#07090b)!important;
}
body.client-mode #client .welcome small,
body.client-mode #client .hero small,
body.client-mode #client [class$="-hero"] small,
body.client-mode #client [class$="-head"] small,
body.client-mode #client [class$="-heading"] small{
  color:var(--vision-blue-2)!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
body.client-mode #client .welcome h1{font-size:34px!important;text-transform:uppercase!important}

/* Dashboard tiles inspired by the supplied phone concept */
body.client-mode #client .icons{
  gap:10px!important;
  padding:16px 18px!important;
}
body.client-mode #client .icons button{
  min-height:112px!important;
  border:1px solid #29333a!important;
  border-radius:10px!important;
  background:linear-gradient(145deg,#151a1e,#0b0f12)!important;
  color:#fff!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 8px 20px rgba(0,0,0,.18)!important;
}
body.client-mode #client .icons button:hover,
body.client-mode #client .icons button:focus-visible{
  border-color:var(--vision-blue)!important;
  transform:translateY(-1px)!important;
}
body.client-mode #client .icons svg{color:var(--vision-blue-2)!important;stroke:currentColor!important}
body.client-mode #client .icons b{font-family:var(--vision-heading)!important;text-transform:uppercase!important;letter-spacing:.02em!important}
body.client-mode #client .blue,
body.client-mode #client .score-card{
  border:1px solid #0a75c8!important;
  background:linear-gradient(135deg,#092c49,#06131e)!important;
  box-shadow:0 0 25px rgba(0,132,255,.12)!important;
}
body.client-mode #client .bar{background:#252d33!important}
body.client-mode #client .bar i,
body.client-mode #client .habit-summary-bar i{background:linear-gradient(90deg,#007df2,#13aeff)!important}

/* Reusable dark cards across every client page */
body.client-mode #client .section,
body.client-mode #client .panel,
body.client-mode #client .next,
body.client-mode #client .weekly-shopping-card,
body.client-mode #client .nutrition-target,
body.client-mode #client .meal,
body.client-mode #client .habit,
body.client-mode #client .habit-summary,
body.client-mode #client .checkin-field,
body.client-mode #client .checkin-intro,
body.client-mode #client .progress-chart-card,
body.client-mode #client .progress-photo-card,
body.client-mode #client .progress-log-form,
body.client-mode #client .tool-card,
body.client-mode #client .tool-action,
body.client-mode #client .pt-info-strip,
body.client-mode #client .pt-package-summary,
body.client-mode #client .pt-session-card,
body.client-mode #client .onboarding-note,
body.client-mode #client .onboarding-group,
body.client-mode #client .coachdoing-feature,
body.client-mode #client .coach-meal-card,
body.client-mode #client .latest-coach-update{
  border:1px solid var(--vision-line)!important;
  background:linear-gradient(145deg,#12171b,#0a0e11)!important;
  color:var(--vision-text)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.2)!important;
}
body.client-mode #client .nutrition-target b,
body.client-mode #client .habit b,
body.client-mode #client .tool-action b,
body.client-mode #client .pt-session-card b,
body.client-mode #client .coach-meal-card b{color:#fff!important}
body.client-mode #client .nutrition-target span,
body.client-mode #client .habit span,
body.client-mode #client .tool-action small{color:#9ba8b1!important}
body.client-mode #client .habit.done{border-color:#087dd8!important;background:#0a2335!important}
body.client-mode #client .checkin-step,
body.client-mode #client .onboarding-group-head>span,
body.client-mode #client .hub-icon{background:#062d4d!important;color:#21a8ff!important}
body.client-mode #client .premium-chat .msg.coach{border-color:#2b353c!important;background:#11171b!important;color:#eef3f6!important}
body.client-mode #client .premium-chat .msg.client{background:#087fdf!important;color:#fff!important}
body.client-mode #client .premium-send{border-top-color:#222c32!important;background:#070a0c!important}
body.client-mode #client .photo-progress-block{background:transparent!important}

/* Coach application uses the same visual language at desktop scale */
body.coach-mode #coach .coach-sidebar{
  border-right:1px solid #1f2b33!important;
  background:linear-gradient(180deg,#070a0c,#0a1116)!important;
}
body.coach-mode #coach .coach-side-nav button{
  border:1px solid transparent!important;
  background:transparent!important;
  color:#aab5bd!important;
}
body.coach-mode #coach .coach-side-nav button:hover{border-color:#29353d!important;background:#11181d!important;color:#fff!important}
body.coach-mode #coach .coach-side-nav button.active{
  border-color:#087fdc!important;
  background:linear-gradient(135deg,#087edc,#0a4e82)!important;
  color:#fff!important;
  box-shadow:0 0 20px rgba(0,132,255,.2)!important;
}
body.coach-mode #coach .coach-side-section button,
body.coach-mode #coach .coach-logout{
  border-color:#35434d!important;
  background:#0c1115!important;
  color:#e9f1f5!important;
}
body.coach-mode #coach .coach-workspace{
  background:
    radial-gradient(circle at 100% 0,rgba(0,132,255,.1),transparent 30rem),
    #080b0d!important;
}
body.coach-mode #coach .coach-screen{color:var(--vision-text)!important}
body.coach-mode #coach .coach-page-head small{color:var(--vision-blue-2)!important}
body.coach-mode #coach .coach-page-head h2{text-transform:uppercase!important;font-size:clamp(34px,4vw,54px)!important}
body.coach-mode #coach .stats>*,
body.coach-mode #coach .priority-panel,
body.coach-mode #coach .coach-hub-card,
body.coach-mode #coach .coach-client,
body.coach-mode #coach .client-overview-grid>section,
body.coach-mode #coach .coach-inbox-list,
body.coach-mode #coach .coach-inbox-conversation,
body.coach-mode #coach .shared-feed-admin-card,
body.coach-mode #coach .content-admin,
body.coach-mode #coach .programme-empty{
  border-color:var(--vision-line)!important;
  background:linear-gradient(145deg,#12171b,#0b0f12)!important;
  color:var(--vision-text)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.18)!important;
}
body.coach-mode #coach .stats>* b,
body.coach-mode #coach .priority-panel h3,
body.coach-mode #coach .coach-hub-card b,
body.coach-mode #coach .coach-client b,
body.coach-mode #coach .content-admin b{color:#fff!important}
body.coach-mode #coach .stats>* small,
body.coach-mode #coach .coach-hub-card span,
body.coach-mode #coach .coach-client small,
body.coach-mode #coach .content-admin small{color:#9aa8b2!important}
body.coach-mode #coach .priority-count,
body.coach-mode #coach .coach-nav-unread{background:var(--vision-blue)!important;color:#fff!important}
body.coach-mode #coach .shared-feed-info{
  border-color:#1c5580!important;
  background:#091b28!important;
  color:#eaf5fb!important;
}
body.coach-mode #coach .coach-inbox-client{border-color:#222c33!important;background:#0c1115!important;color:#eef4f7!important}
body.coach-mode #coach .coach-inbox-client.active{border-color:#0787ff!important;background:#0b2b43!important}

/* Dialogs inherit the brand without sacrificing form clarity. */
.modal-card,.modal>div{
  border:1px solid #2e3941!important;
  background:#0c1114!important;
  color:#f2f6f8!important;
  box-shadow:0 28px 80px rgba(0,0,0,.7),0 0 30px rgba(0,132,255,.08)!important;
}
.modal-card h3,.modal>div h3,.modal-card h4,.modal>div h4{color:#fff!important}
.modal-card p,.modal>div p,.modal-card label,.modal>div label{color:#a7b2ba!important}

@media(max-width:800px){
  body.client-mode .phone{border:0!important;box-shadow:none!important}
  body.client-mode #client .welcome h1{font-size:30px!important}
  body.coach-mode #coach .coach-menu-toggle{background:#0787e8!important;border-color:#20a4ff!important}
  body.coach-mode #coach .coach-sidebar{background:linear-gradient(180deg,#06090b,#0a1116)!important}
}
