/* Reach Pass 4 — scoped Coaching workspace refinement */

#coachingView,#growModal,#coachingDetailModal{
  --coaching-soft:color-mix(in srgb,var(--vf-accent-soft,#e8f1eb) 68%,var(--vf-surface-content,#fff));
  --coaching-line:color-mix(in srgb,var(--vf-accent,#1f5e3e) 24%,var(--vf-border,#d4ddd8));
}

#coachingView>.page-title{margin-bottom:18px}
#coachingView .coaching-workspace-section{margin-top:30px}
#coachingExperience{display:grid;gap:20px}.coaching-action-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid var(--coaching-line);border-radius:16px;background:var(--coaching-soft)}.coaching-action-bar h2{margin:3px 0 0;font-family:var(--vf-font-interface,-apple-system,sans-serif);font-size:18px}.coaching-action-bar .actions{margin:0;justify-content:flex-end}.coaching-area-tabs{display:flex;gap:6px;overflow:auto;padding:4px;border-bottom:1px solid var(--vf-border,#d4ddd8)}.coaching-area-tabs button{flex:0 0 auto;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--vf-text-secondary,#52645c);padding:10px 12px 9px;font:inherit;font-size:13px;font-weight:760;cursor:pointer}.coaching-area-tabs button:hover{color:var(--vf-text-primary,#173247)}.coaching-area-tabs button.active{border-bottom-color:var(--vf-accent,#1f5e3e);color:var(--vf-accent,#1f5e3e)}.coaching-area-tabs button:focus-visible,.coaching-summary-card:focus-visible{outline:3px solid var(--vf-focus,rgba(31,94,62,.28));outline-offset:2px}.coaching-area-panel[hidden]{display:none}.coaching-area-heading{margin-bottom:18px}.coaching-area-heading p{max-width:720px;margin:5px 0 0;color:var(--vf-text-secondary,#52645c);line-height:1.5}.coaching-area-content{display:grid;gap:22px}.coaching-home-intro{max-width:760px;padding:4px 0}.coaching-home-intro h2{margin:0 0 7px;font-size:24px}.coaching-home-intro p{margin:0;color:var(--vf-text-secondary,#52645c);line-height:1.55}.coaching-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.coaching-summary-card{display:grid;gap:4px;min-height:138px;align-content:start;padding:18px;border:1px solid var(--vf-border,#d4ddd8);border-radius:14px;background:var(--vf-surface-content,#fff);color:var(--vf-text-primary,#173247);text-align:left;cursor:pointer;box-shadow:var(--vf-shadow-content,0 1px 2px rgba(19,38,58,.035))}.coaching-summary-card:hover{border-color:var(--coaching-line);background:var(--coaching-soft)}.coaching-summary-card strong{color:var(--vf-accent,#1f5e3e);font-size:28px;line-height:1.1}.coaching-summary-card span{font-size:15px;font-weight:780}.coaching-summary-card small{margin-top:3px;color:var(--vf-text-secondary,#52645c);font-size:12px;line-height:1.45}.coaching-access-note{display:grid;gap:4px;padding:14px 16px;border-left:4px solid var(--vf-accent,#1f5e3e);border-radius:0 12px 12px 0;background:var(--coaching-soft)}.coaching-access-note strong{font-size:13px}.coaching-access-note span{color:var(--vf-text-secondary,#52645c);font-size:13px;line-height:1.45}#coachingArea-leadership #leadershipActivities,#coachingArea-coachees #coachWorkspace,#coachingArea-growth #assignedCoachGoals,#coachingArea-records #coachingHistorySection,#coachingArea-records #coachingAuthorisedRecords{margin-top:0}
#coachingView .coaching-workspace-section>.section-head{margin:0 0 14px;align-items:start}
#coachingView .coaching-workspace-section>.section-head h2{margin-top:4px}
#coachingView .coaching-coachee-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px;margin:0}

.coaching-coachee-card{display:flex;min-width:0;flex-direction:column;gap:16px;padding:20px;box-shadow:var(--vf-shadow-content,0 1px 2px rgba(19,38,58,.035))}
.coaching-coachee-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.coaching-coachee-head h3{margin:8px 0 0;font-size:20px}
.coaching-person-mark{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;overflow:hidden;border:1px solid var(--coaching-line);border-radius:50%;background:var(--coaching-soft);color:var(--vf-accent,#1f5e3e);font-size:12px;font-weight:850;letter-spacing:.04em}.coaching-person-mark img{display:block;width:100%;height:100%;object-fit:cover}
.coaching-coachee-context{display:grid;border-block:1px solid var(--vf-border,#d4ddd8)}
.coaching-coachee-context>div{display:grid;grid-template-columns:126px 1fr;gap:12px;padding:10px 0;align-items:baseline}
.coaching-coachee-context>div+div{border-top:1px solid var(--vf-border,#d4ddd8)}
.coaching-coachee-context span{color:var(--vf-text-secondary,#52645c);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.coaching-coachee-context strong{min-width:0;overflow:hidden;color:var(--vf-text-primary,#173247);font-size:13px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.coaching-coachee-card>.btn{align-self:flex-start;margin-top:auto}

.coaching-followup-list{display:grid;gap:9px}
.coaching-followup-row{display:grid;grid-template-columns:142px minmax(0,1fr) auto;gap:18px;align-items:center;padding:14px 16px;border:1px solid var(--vf-border,#d4ddd8);border-left:4px solid var(--vf-accent,#1f5e3e);border-radius:12px;background:var(--vf-surface-content,#fff)}
.coaching-followup-row.is-past{border-left-color:#94702a}
.coaching-followup-date{display:grid;gap:3px}
.coaching-followup-date span{color:var(--vf-text-secondary,#52645c);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.coaching-followup-date strong{font-size:14px}
.coaching-followup-row h3{margin:4px 0 2px;font-family:var(--vf-font-interface,-apple-system,sans-serif);font-size:15px}
.coaching-followup-row p{margin:0;color:var(--vf-text-secondary,#52645c);font-size:12px}
.coaching-followup-row .btn{min-height:36px;padding:8px 12px}

#coachingList{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#coachingList>.coaching-empty{grid-column:1/-1}
.coaching-history-card{display:flex;min-width:0;flex-direction:column;gap:14px;padding:0;overflow:hidden;text-align:left;box-shadow:var(--vf-shadow-content,0 1px 2px rgba(19,38,58,.035))}
.coaching-history-card:hover{border-color:color-mix(in srgb,var(--vf-accent,#1f5e3e) 45%,var(--vf-border,#d4ddd8));box-shadow:var(--vf-shadow-hover,0 9px 22px rgba(19,38,58,.085))}
.coaching-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 18px 0}
.coaching-history-head time{flex:0 0 auto;color:var(--vf-text-secondary,#52645c);font-size:12px;font-weight:650}
.coaching-history-person{display:flex;align-items:center;gap:11px;padding:0 18px}
.coaching-history-person .coaching-person-mark{width:36px;height:36px;flex-basis:36px}
.coaching-history-person span{display:block;color:var(--vf-text-secondary,#52645c);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.coaching-history-person h3{margin:2px 0 0;font-size:18px}
.coaching-history-focus{margin:0;padding:0 18px;color:var(--vf-text-primary,#173247);font-size:14px;font-weight:650;line-height:1.5}
.coaching-history-context{display:flex;flex-wrap:wrap;gap:6px 16px;padding:11px 18px;border-block:1px solid var(--vf-border,#d4ddd8);background:color-mix(in srgb,var(--coaching-soft) 48%,transparent);color:var(--vf-text-secondary,#52645c);font-size:11px;font-weight:650}
.coaching-history-outcome{position:relative;display:grid;gap:3px;padding:0 48px 17px 18px}
.coaching-history-outcome span{color:var(--vf-text-secondary,#52645c);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.coaching-history-outcome strong{font-size:13px;line-height:1.4}
.coaching-history-outcome i{position:absolute;right:18px;bottom:19px;color:var(--vf-accent,#1f5e3e);font-size:19px;font-style:normal}

.coaching-empty{display:grid;justify-items:center;gap:8px;padding:34px 24px}
.coaching-empty>span{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--vf-border,#d4ddd8);border-radius:50%;background:var(--vf-surface-content,#fff);color:var(--vf-accent,#1f5e3e)}
.coaching-empty strong{margin:0}
.coaching-empty p{max-width:540px;margin:0 0 6px;line-height:1.5}
.coaching-empty--compact{padding:25px}

#assignedCoachGoals,#coachingAuthorisedRecords{margin-top:30px}
.coaching-authorised-details{border:1px solid var(--vf-border,#d4ddd8);border-radius:14px;background:var(--vf-surface-subtle,#f5f6f3)}
.coaching-authorised-details>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;cursor:pointer;list-style:none}
.coaching-authorised-details>summary::-webkit-details-marker{display:none}
.coaching-authorised-details>summary>span:first-child{display:grid;gap:3px}
.coaching-authorised-details>summary strong{font-size:16px}
.coaching-authorised-details>summary small{color:var(--vf-text-secondary,#52645c);font-size:12px}
.coaching-authorised-details>summary:focus-visible{outline:3px solid var(--vf-focus,rgba(31,94,62,.28));outline-offset:2px}
.coaching-authorised-body{padding:4px 19px 19px;border-top:1px solid var(--vf-border,#d4ddd8)}
.coaching-authorised-body .assigned-coach-person{margin-top:18px}
.coaching-authorised-links{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
.coaching-authorised-links .area-card{min-height:94px;box-shadow:var(--vf-shadow-content,0 1px 2px rgba(19,38,58,.035))}

#growModal .coaching-record-modal{display:flex;width:min(900px,100%);height:min(90vh,820px);max-height:90vh;flex-direction:column;padding:0;overflow:hidden}
#growModal .modal-head{z-index:4;flex:0 0 auto;margin:0;padding:22px 24px 18px;background:var(--vf-surface-content,#fff)}
.coaching-record-form{display:grid;min-height:0;flex:1;grid-template-rows:auto minmax(0,1fr) auto}
.coaching-modal-context{z-index:3;padding:14px 24px;border-bottom:1px solid var(--vf-border,#d4ddd8);background:var(--coaching-soft,#eef5f0)}
.coaching-context-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.coaching-type-picker{grid-column:1/-1;display:grid;gap:6px}
.coaching-type-picker>span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.coaching-type-options{display:flex;flex-wrap:wrap;gap:7px}
.coaching-type-options button{border:1px solid var(--vf-border,#d4ddd8);border-radius:999px;background:var(--vf-surface-content,#fff);color:var(--vf-text-secondary,#52645c);padding:8px 12px;font:inherit;font-size:13px;font-weight:720}
.coaching-type-options button[aria-pressed="true"]{border-color:var(--vf-accent,#1f5e3e);background:var(--vf-accent,#1f5e3e);color:#fff}
.coaching-context-controls .field{gap:5px}
.coaching-context-controls .field>span{font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.coaching-context-controls select{min-height:40px;padding-block:8px;background:var(--vf-surface-content,#fff)}
.coaching-context-meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:10px;padding-top:10px;border-top:1px solid var(--coaching-line)}
.coaching-context-meta>span{display:flex;gap:7px;align-items:baseline;font-size:11px}
.coaching-context-meta b{color:var(--vf-text-secondary,#52645c);font-size:10px;text-transform:uppercase;letter-spacing:.055em}
.coaching-context-meta strong{font-size:11px}
.coaching-context-privacy{margin-left:auto}
.coaching-context-privacy:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--vf-accent,#1f5e3e)}
.coaching-context-privacy.is-private:before{background:#94702a}
.coaching-form-scroll{min-height:0;overflow:auto;padding:0 24px;overscroll-behavior:contain}
.coaching-form-section{padding:22px 0 24px}
.coaching-form-section+.coaching-form-section{border-top:1px solid var(--vf-border,#d4ddd8)}
.coaching-form-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:15px}
.coaching-form-heading h3{margin:4px 0 0;font-family:var(--vf-font-interface,-apple-system,sans-serif);font-size:17px}
.coaching-form-heading>p{max-width:430px;margin:0;color:var(--vf-text-secondary,#52645c);font-size:12px;line-height:1.45;text-align:right}
.coaching-conversation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.coaching-conversation-grid .field{align-content:start;padding:0;border:0;border-radius:0;background:transparent}
.coaching-conversation-grid .field>span{display:flex;align-items:center;min-height:24px;font-size:14px}
.coaching-conversation-grid .grow-field span b{width:25px;height:25px;flex:0 0 25px}
.coaching-conversation-grid textarea{min-height:94px;background:var(--vf-surface-content,#fff)}
.goal-review-journey .coaching-modal-context{padding-top:20px}
.goal-review-context-heading,.goal-review-step-heading{display:grid;grid-template-columns:30px 1fr;gap:11px;align-items:start}
.goal-review-context-heading{margin-bottom:16px}
.goal-review-context-heading h3,.goal-review-step-heading h3{margin:0;color:var(--vf-text-primary,#173247);font-family:var(--vf-font-interface,-apple-system,sans-serif);font-size:16px;font-weight:780;line-height:1.3}
.goal-review-context-heading p,.goal-review-step-heading p{margin:3px 0 0;color:var(--vf-text-secondary,#52645c);font-size:13px;line-height:1.45}
.goal-review-journey .coaching-conversation-grid{display:block}
.goal-review-journey .goal-review-step{display:grid;gap:14px;padding:0 0 24px}
.goal-review-journey .goal-review-step+.goal-review-step{padding-top:24px;border-top:1px solid var(--vf-border,#d4ddd8)}
.goal-review-journey .coaching-conversation-grid .field{padding:0;border:0;border-radius:0;background:transparent}
.goal-review-journey .coaching-conversation-grid .field>span{min-height:0;font-size:14px;font-weight:750}
.goal-review-journey .coaching-conversation-grid .grow-field span b{display:none}
.goal-review-journey .coaching-conversation-grid textarea{min-height:110px}
.goal-review-journey .goal-review-step:nth-child(2) .grow-field+ .grow-field{margin-top:4px}
.coaching-record-form[data-coaching-type="check_in"] .coaching-conversation-grid textarea{min-height:88px}
.coaching-record-form[data-coaching-type="check_in"] .coaching-conversation-grid .field{padding:12px}
.coaching-action-section>.form-two{margin-bottom:14px}
.coaching-followup-date{max-width:420px;margin-bottom:14px}
.coaching-action-section>.check-row{margin-top:12px}
.coaching-action-section>.subtle{margin:8px 0 0}
.coaching-privacy-section .check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.coaching-privacy-section .check-row{padding:13px;border:1px solid var(--vf-border,#d4ddd8);border-radius:11px;background:var(--vf-surface-subtle,#f8f9f6)}
.coaching-privacy-section .check-row span,.coaching-privacy-section .check-row strong,.coaching-privacy-section .check-row small{display:block}
.coaching-privacy-section .check-row small{margin-top:2px;color:var(--vf-text-secondary,#52645c);line-height:1.4}
.coaching-form-actions{z-index:4;flex:0 0 auto;margin:0;padding:14px 24px;border-top:1px solid var(--vf-border,#d4ddd8);background:var(--vf-surface-content,#fff);box-shadow:0 -8px 22px rgba(19,38,58,.045)}

#coachingDetailModal .coaching-detail-modal{width:min(900px,100%)}
.coaching-detail-context{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--vf-border,#d4ddd8);border-radius:12px;overflow:hidden}
.coaching-detail-context>div{display:grid;gap:4px;padding:12px 14px}
.coaching-detail-context>div+div{border-left:1px solid var(--vf-border,#d4ddd8)}
.coaching-detail-context span,.coaching-detail-agreement span{color:var(--vf-text-secondary,#52645c);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.coaching-detail-context strong{overflow:hidden;font-size:12px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.coaching-detail-privacy{display:flex;gap:10px;align-items:flex-start;margin:14px 0 22px;padding:12px 14px;border-left:3px solid var(--vf-accent,#1f5e3e);background:var(--coaching-soft,#eef5f0)}
.coaching-detail-privacy>span{color:var(--vf-accent,#1f5e3e);font-size:9px}
.coaching-detail-privacy p{margin:2px 0 0;color:var(--vf-text-secondary,#52645c);font-size:12px}
.coaching-detail-purpose{margin-bottom:18px}
.coaching-detail-purpose h3{margin:5px 0 0;font-size:19px}
.coaching-detail-conversation{position:relative;display:grid;gap:0}
.coaching-detail-conversation:before{content:"";position:absolute;left:15px;top:17px;bottom:24px;width:2px;background:var(--coaching-line)}
.coaching-detail-conversation>section{position:relative;display:grid;grid-template-columns:32px 1fr;gap:14px;padding-bottom:20px}
.coaching-detail-conversation>section>span{z-index:1;display:grid;width:32px;height:32px;place-items:center;border:2px solid var(--coaching-line);border-radius:50%;background:var(--vf-surface-content,#fff);color:var(--vf-accent,#1f5e3e);font-size:10px;font-weight:850}
.coaching-detail-conversation h3{margin:3px 0 6px;font-family:var(--vf-font-interface,-apple-system,sans-serif);font-size:15px}
.coaching-detail-conversation p{margin:0;color:var(--vf-text-secondary,#52645c);line-height:1.55;white-space:pre-wrap}
.coaching-detail-agreement{display:grid;grid-template-columns:1.5fr .8fr .8fr;border:1px solid var(--coaching-line);border-radius:12px;background:var(--coaching-soft,#eef5f0)}
.coaching-detail-agreement>div{display:grid;gap:5px;padding:13px 14px}
.coaching-detail-agreement>div+div{border-left:1px solid var(--coaching-line)}
.coaching-detail-agreement strong{font-size:13px;line-height:1.4}
.coaching-detail-actions{margin-top:20px;padding-top:16px;border-top:1px solid var(--vf-border,#d4ddd8)}

html[data-theme="dark"] .coaching-privacy-section .check-row,
html[data-theme="dark"] .coaching-authorised-details{background:color-mix(in srgb,var(--vf-surface-content) 92%,#000)}

@media(max-width:900px){
  #coachingList{grid-template-columns:1fr}
  .coaching-context-controls{grid-template-columns:1fr 1fr}
  .coaching-detail-context{grid-template-columns:repeat(2,minmax(0,1fr))}
  .coaching-detail-context>div:nth-child(3){border-left:0;border-top:1px solid var(--vf-border,#d4ddd8)}
  .coaching-detail-context>div:nth-child(4){border-top:1px solid var(--vf-border,#d4ddd8)}
}

@media(max-width:680px){
  .coaching-action-bar{display:grid}.coaching-action-bar .actions{justify-content:stretch}.coaching-action-bar .actions .btn{flex:1 1 100%}.coaching-summary-grid{grid-template-columns:1fr}
  #coachingView .page-title .btn{width:100%;margin-top:16px}
  #coachingView .coaching-coachee-grid{grid-template-columns:1fr}
  .coaching-followup-row{grid-template-columns:1fr auto;gap:9px 12px}
  .coaching-followup-date{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between}
  .coaching-authorised-links{grid-template-columns:1fr}
  #growModal{padding:0}
  #growModal .coaching-record-modal{width:100%;height:100dvh;max-height:100dvh;border-radius:0}
  #growModal .modal-head{padding:17px 18px 14px}
  #growModal .modal-head h2{font-size:23px}
  .coaching-modal-context{padding:12px 18px}
  .coaching-context-controls{grid-template-columns:1fr}
  .coaching-type-picker{grid-column:auto}
  .coaching-context-meta{display:grid;grid-template-columns:auto 1fr}
  .coaching-context-privacy{margin-left:0;justify-self:end;text-align:right}
  .coaching-form-scroll{padding-inline:18px}
  .coaching-conversation-grid{grid-template-columns:1fr}
  .coaching-form-heading{display:block}
  .coaching-form-heading>p{margin-top:5px;text-align:left}
  .coaching-conversation-grid{grid-template-columns:1fr}
  .coaching-conversation-grid textarea{min-height:108px}
  .coaching-privacy-section .check-grid{grid-template-columns:1fr}
  .coaching-form-actions{padding:12px 18px}
  .coaching-form-actions .btn{width:auto;flex:1}
  .coaching-detail-context,.coaching-detail-agreement{grid-template-columns:1fr}
  .coaching-detail-context>div+div,.coaching-detail-context>div:nth-child(3),.coaching-detail-context>div:nth-child(4),.coaching-detail-agreement>div+div{border-left:0;border-top:1px solid var(--vf-border,#d4ddd8)}
}

@media(prefers-reduced-motion:reduce){.coaching-history-card{transition:none}}
