/* ==========================================================================
   Coach OS — Coach workspace
   Grivaa palette: navy #0B1F3A · orange #F97316 · ivory #FAF7F2
   Scope: .coach-workspace and the coach sidebar entries only.
   ========================================================================== */

.coach-workspace{
  --cw-navy:#0B1F3A;
  --cw-navy-2:#16324F;
  --cw-navy-3:#294A6E;
  --cw-orange:#F97316;
  --cw-orange-2:#EA6A0C;
  --cw-orange-soft:#FFF3E8;
  --cw-orange-line:#F8D3B0;
  --cw-orange-ink:#9A4A06;
  --cw-ivory:#FAF7F2;
  --cw-ivory-2:#F4EFE7;
  --cw-ink:#16263B;
  --cw-muted:#77859A;
  --cw-line:#E9E2D8;
  --cw-line-2:#F1ECE4;
  --cw-green:#0E8A54;
  --cw-green-soft:#E9F6EF;
  --cw-amber:#B45309;
  --cw-amber-soft:#FFF7E8;
  --cw-red:#B42318;
  --cw-red-soft:#FEF3F2;
  --cw-font:Inter,"Noto Sans Devanagari","Nirmala UI",Arial,sans-serif;

  display:block;
  padding:0 0 28px;
  font-family:var(--cw-font);
  color:var(--cw-ink);
}

/* ---------- Head and section tabs ---------- */
.coach-workspace .cw-head{
  position:relative;
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding:16px 20px 0;
  margin-bottom:16px;
  background:#fff;
  border:1px solid var(--cw-line);
  border-radius:14px;
  overflow:hidden;
}
.coach-workspace .cw-head::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--cw-orange);
}
.coach-workspace .cw-eyebrow{
  display:block;margin-bottom:2px;
  color:var(--cw-orange-2);
  font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
}
.coach-workspace .cw-head h2{
  margin:0 0 14px;color:var(--cw-navy);
  font-size:19px;font-weight:600;letter-spacing:-.3px;
}
.coach-workspace .cw-tabs{display:flex;gap:2px;flex-wrap:wrap}
.coach-workspace .cw-tab{
  position:relative;
  padding:10px 13px;
  color:var(--cw-muted);
  font-size:12.5px;font-weight:600;text-decoration:none;
}
.coach-workspace .cw-tab:hover{color:var(--cw-navy-2)}
.coach-workspace .cw-tab.on{color:var(--cw-navy)}
.coach-workspace .cw-tab.on::after{
  content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;
  border-radius:2px;background:var(--cw-orange);
}

/* ---------- Metrics ---------- */
.coach-workspace .cw-kpis{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;
  margin-bottom:20px;
}
.coach-workspace .cw-kpi{
  position:relative;
  padding:14px 16px;
  background:#fff;
  border:1px solid var(--cw-line);
  border-radius:12px;
  overflow:hidden;
}
.coach-workspace .cw-kpi span{
  display:block;color:var(--cw-muted);font-size:10.5px;font-weight:600;
}
.coach-workspace .cw-kpi strong{
  display:block;margin-top:6px;
  color:var(--cw-navy);font-size:23px;font-weight:600;line-height:1.05;
}
.coach-workspace .cw-kpi.accent::before,
.coach-workspace .cw-kpi.warn::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
}
.coach-workspace .cw-kpi.accent::before{background:var(--cw-orange)}
.coach-workspace .cw-kpi.warn::before{background:var(--cw-red)}

/* ---------- Section label ---------- */
.coach-workspace .cw-sec{
  display:flex;align-items:center;gap:10px;
  margin:0 0 12px;
  color:var(--cw-muted);
  font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
}
.coach-workspace .cw-sec::after{
  content:"";flex:1 1 auto;height:1px;background:var(--cw-line);
}

/* ---------- Client rows ---------- */
.coach-workspace .cw-rows{
  background:#fff;border:1px solid var(--cw-line);border-radius:14px;overflow:hidden;
}
.coach-workspace .cw-row{
  position:relative;
  width:100%;
  display:grid;
  grid-template-columns:auto minmax(0,1.5fr) 110px 110px minmax(0,1.2fr);
  align-items:center;gap:14px;
  padding:14px 18px;
  border:0;border-top:1px solid var(--cw-line-2);
  background:#fff;
  text-align:left;font-family:var(--cw-font);
  cursor:pointer;
}
.coach-workspace .cw-row:first-child{border-top:0}
.coach-workspace .cw-row:hover{background:#FDFBF8}
.coach-workspace .cw-row.open{background:var(--cw-orange-soft)}
.coach-workspace .cw-row::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;
}
.coach-workspace .cw-row.cw-red::before{background:var(--cw-red)}
.coach-workspace .cw-row.cw-amber::before{background:var(--cw-amber)}
.coach-workspace .cw-row.cw-ok::before{background:var(--cw-green)}

.coach-workspace .cw-avatar{
  width:34px;height:34px;flex:0 0 34px;
  display:grid;place-items:center;
  border-radius:50%;
  background:var(--cw-navy);color:#fff;
  font-size:11px;font-weight:600;letter-spacing:.02em;
}
.coach-workspace .cw-avatar.lg{width:44px;height:44px;flex:0 0 44px;font-size:13px}
.coach-workspace .cw-who{min-width:0}
.coach-workspace .cw-who b{
  display:block;color:var(--cw-navy);font-size:13px;font-weight:600;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.coach-workspace .cw-who small{
  display:block;margin-top:2px;color:var(--cw-muted);font-size:10.5px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.coach-workspace .cw-last small,
.coach-workspace .cw-shared small{
  display:block;color:var(--cw-muted);font-size:9px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
}
.coach-workspace .cw-last b,
.coach-workspace .cw-shared b{
  display:block;margin-top:3px;color:var(--cw-navy);font-size:12.5px;font-weight:600;
}
.coach-workspace .cw-row.cw-red .cw-last b{color:var(--cw-red)}
.coach-workspace .cw-row.cw-amber .cw-last b{color:var(--cw-amber)}
.coach-workspace .cw-types{
  min-width:0;color:var(--cw-muted);font-size:10.5px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}

/* ---------- Client detail ---------- */
.coach-workspace .cw-detail{
  margin-top:14px;
  background:#fff;border:1px solid var(--cw-line);border-radius:14px;overflow:hidden;
}
.coach-workspace .cw-detail-head{
  display:flex;align-items:center;gap:14px;
  padding:16px 18px;
  border-bottom:1px solid var(--cw-line-2);
  background:linear-gradient(180deg,#FCFAF7,#fff);
}
.coach-workspace .cw-detail-head h3{
  margin:0;color:var(--cw-navy);font-size:15px;font-weight:600;
}
.coach-workspace .cw-detail-head p{
  margin:3px 0 0;color:var(--cw-muted);font-size:11px;
}
.coach-workspace .cw-close{
  margin-left:auto;
  height:32px;padding:0 14px;
  border:1px solid var(--cw-line);border-radius:9px;
  background:#fff;color:var(--cw-navy);
  font-family:var(--cw-font);font-size:11.5px;font-weight:600;cursor:pointer;
}
.coach-workspace .cw-close:hover{border-color:var(--cw-navy-3)}
.coach-workspace .cw-detail-body{padding:16px 18px}
.coach-workspace .cw-detail-body h4{
  margin:0 0 12px;color:var(--cw-muted);
  font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
}
.coach-workspace .cw-items{display:grid;gap:10px}
.coach-workspace .cw-item{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;
  padding:12px 14px;
  background:var(--cw-ivory);
  border:1px solid var(--cw-line);
  border-radius:11px;
}
.coach-workspace .cw-item b{
  display:block;color:var(--cw-navy);font-size:12.5px;font-weight:600;
}
.coach-workspace .cw-item p{
  margin:3px 0 0;color:var(--cw-muted);font-size:11.5px;line-height:1.5;
}
.coach-workspace .cw-item time{color:var(--cw-muted);font-size:10.5px;white-space:nowrap}
.coach-workspace .cw-tag{
  padding:3px 9px;border-radius:999px;
  font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  background:var(--cw-ivory-2);color:var(--cw-navy-2);
}
.coach-workspace .cw-tag-goal{background:var(--cw-orange-soft);color:var(--cw-orange-ink)}
.coach-workspace .cw-tag-commitment{background:var(--cw-green-soft);color:var(--cw-green)}
.coach-workspace .cw-tag-session{background:#EAF1FA;color:var(--cw-navy-3)}

/* ---------- Session prep ---------- */
.coach-workspace .cw-prep{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;
}
.coach-workspace .cw-prep-card{
  padding:16px;
  background:#fff;border:1px solid var(--cw-line);border-radius:14px;
}
.coach-workspace .cw-prep-card header{
  display:flex;align-items:center;gap:11px;margin-bottom:12px;
}
.coach-workspace .cw-prep-card header b{color:var(--cw-navy);font-size:13px;font-weight:600}
.coach-workspace .cw-prep-card dl{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 14px;margin:0;
}
.coach-workspace .cw-prep-card dt{color:var(--cw-muted);font-size:11px}
.coach-workspace .cw-prep-card dd{margin:0;color:var(--cw-navy);font-size:11.5px;font-weight:500}
.coach-workspace .cw-prep-note{
  margin:12px 0 0;padding-top:10px;
  border-top:1px solid var(--cw-line-2);
  color:var(--cw-muted);font-size:10.5px;line-height:1.5;
}

/* ---------- Honest empty states ---------- */
.coach-workspace .cw-notyet{
  padding:26px 22px;
  background:#fff;
  border:1px dashed var(--cw-line);
  border-radius:14px;
  text-align:center;
}
.coach-workspace .cw-notyet strong{
  display:block;color:var(--cw-navy);font-size:14px;font-weight:600;
}
.coach-workspace .cw-notyet p{
  margin:7px auto 0;max-width:56ch;
  color:var(--cw-muted);font-size:12px;line-height:1.6;
}
.coach-workspace .cw-notyet span{
  display:block;margin-top:9px;color:var(--cw-orange-ink);font-size:11px;
}
.coach-workspace .cw-loading{
  padding:26px;color:var(--cw-muted);font-size:12.5px;text-align:center;
}
.coach-workspace .cw-error{
  padding:20px 22px;
  background:var(--cw-red-soft);
  border:1px solid #F1C4C0;
  border-radius:14px;
}
.coach-workspace .cw-error strong{display:block;color:var(--cw-red);font-size:13.5px;font-weight:600}
.coach-workspace .cw-error p{margin:6px 0 0;color:var(--cw-ink);font-size:12px}
.coach-workspace .cw-error span{display:block;margin-top:8px;color:var(--cw-muted);font-size:11px}

.coach-workspace .cw-foot{
  margin:22px 0 0;
  color:var(--cw-muted);font-size:10.5px;line-height:1.6;
}
.coach-workspace :focus-visible{outline:2px solid var(--cw-orange);outline-offset:2px}

/* ---------- Coach sidebar entries ---------- */
.role-nav-sub{
  padding-left:34px!important;
  font-size:12.5px;
}
.role-nav-item.role-nav-on{
  background:rgba(249,115,22,.15)!important;
  color:#fff!important;
}

/* ---------- Narrow ---------- */
@media (max-width:900px){
  .coach-workspace .cw-kpis{grid-template-columns:1fr}
  .coach-workspace .cw-row{
    grid-template-columns:auto minmax(0,1fr);
    row-gap:8px;
  }
  .coach-workspace .cw-last,
  .coach-workspace .cw-shared{grid-column:2}
  .coach-workspace .cw-types{grid-column:2}
  .coach-workspace .cw-item{grid-template-columns:auto minmax(0,1fr)}
  .coach-workspace .cw-item time{grid-column:2}
}
