.coaching-page-heading, .coaching-section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.coaching-page-heading { margin-bottom: 14px; }
.coaching-page-heading h3, .coaching-section-heading h3 { margin: 3px 0 0; }
.coaching-page-heading p:last-child { margin: 5px 0 0; color: var(--muted, #75636e); }
.coaching-archive-filter, .coaching-discussed { display: flex !important; align-items: center; gap: 8px; cursor: pointer; }
.coaching-archive-filter input, .coaching-discussed input { width: 17px; height: 17px; accent-color: #d76744; }
.coaching-privacy-note { margin-bottom: 16px; padding: 12px 14px; border: 1px solid #e7c9ba; border-radius: 12px; color: #694b58; background: #fff7f1; }
.coaching-coverage { margin-bottom: 18px; padding: 16px; }
.coaching-filter { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(230px, .7fr) auto; align-items: end; gap: 16px; margin-bottom: 18px; padding: 16px; }
.coaching-filter h3 { margin: 3px 0 5px; }
.coaching-filter p:last-child { margin: 0; color: #806b75; font-size: 12px; }
.coaching-filter label { display: grid; gap: 6px; color: #5f4453; font-size: 12px; font-weight: 800; }
.coaching-filter .coaching-past-filter { display: flex; align-items: center; gap: 8px; align-self: end; cursor: pointer; }
.coaching-filter .coaching-past-filter input { width: 17px; height: 17px; accent-color: #d76744; }
.coaching-filter select { width: 100%; border: 1px solid #dfd1c8; border-radius: 10px; padding: 10px 11px; background: #fffdfb; color: #422b3a; font: inherit; }
.coaching-selected-target { grid-column: 1 / -1; }
.coaching-selected-target .coaching-coverage-card { max-width: none; }
.coaching-select-prompt { margin-top: 16px; padding: 48px 20px; }
.coaching-week-controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
.coaching-week-controls strong { color: #624653; font-size: 12px; }
.coaching-coverage-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 9px; margin-top: 13px; }
.coaching-coverage-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 5px 10px; align-items: center; padding: 11px 12px; border: 1px solid #eadfd8; border-left: 4px solid #d49a3d; border-radius: 11px; background: #fffdfb; }
.coaching-coverage-card.is-met { border-left-color: #6d9d78; background: #f4faf5; }
.coaching-coverage-card > div { display: grid; gap: 2px; min-width: 0; }
.coaching-coverage-card strong { overflow: hidden; color: #4c3041; text-overflow: ellipsis; white-space: nowrap; }
.coaching-coverage-card span { color: #806b75; font-size: 11px; }
.coaching-coverage-card .text-button { grid-column: 1 / -1; justify-self: start; padding: 2px 0; }
.coaching-target-badge { padding: 4px 7px; border-radius: 999px; background: #fff0dc; color: #8b572b !important; font-weight: 800; }
.coaching-coverage-card.is-met .coaching-target-badge { background: #dfeee2; color: #477052 !important; }
.coaching-layout { display: grid; grid-template-columns: minmax(300px, 0.72fr) minmax(480px, 1.28fr); gap: 18px; align-items: start; }
.coaching-editor { position: sticky; top: 16px; padding: 18px; }
.coaching-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; margin-top: 16px; }
.coaching-form label { display: grid; gap: 6px; color: #5f4453; font-size: 12px; font-weight: 700; }
.coaching-form input:not([type="checkbox"]), .coaching-form select, .coaching-form textarea { width: 100%; border: 1px solid #dfd1c8; border-radius: 10px; padding: 10px 11px; background: #fffdfb; color: #422b3a; font: inherit; box-sizing: border-box; }
.coaching-form textarea { resize: vertical; min-height: 78px; }
.coaching-form small, .coaching-existing-recording span { color: #88747f; font-weight: 500; }
.coaching-upload-progress { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; color: #755f6c; font-size: 12px; font-weight: 700; }
.coaching-upload-progress[hidden] { display: none; }
.coaching-upload-progress progress { width: 100%; height: 9px; accent-color: #8f3448; }
.coaching-helper, .coaching-empty-editor p { color: #806b75; font-size: 12px; line-height: 1.5; }
.coaching-empty-editor h3 { margin: 4px 0 8px; }
.coaching-wide { grid-column: 1 / -1; }
.coaching-discussed { align-self: center; min-height: 42px; }
.coaching-form-actions { display: flex; align-items: center; gap: 12px; }
.coaching-form-actions [role="status"] { color: #a64d32; font-size: 12px; }
.optional-label { color: #927d87; font-weight: 500; }
.coaching-existing-recording { display: grid; gap: 4px; padding: 12px; border: 1px solid #eadfd8; border-radius: 10px; background: #fbf7f4; }
.coaching-records { min-width: 0; }
.coaching-card-list { display: grid; gap: 12px; margin-top: 12px; }
.coaching-week-group { display: grid; gap: 10px; margin-top: 16px; }
.coaching-week-group + .coaching-week-group { margin-top: 24px; padding-top: 20px; border-top: 1px solid #e8ddd7; }
.coaching-week-group-heading { display: flex; align-items: end; justify-content: space-between; gap: 12px; }
.coaching-week-group-heading h4 { margin: 3px 0 0; color: #4c3041; }
.coaching-week-group-heading > span { color: #806b75; font-size: 11px; font-weight: 800; }
.coaching-week-group .coaching-card-list { margin-top: 0; }
.coaching-card { border: 1px solid #e3d6cf; border-radius: 15px; padding: 15px; background: #fffdfb; box-shadow: 0 8px 22px rgba(70, 40, 56, 0.05); }
.coaching-card.is-archived { opacity: 0.78; background: #f8f4f1; }
.coaching-card > header { display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.coaching-person { display: flex; gap: 10px; align-items: center; }
.coaching-person > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #f8ded2; color: #bd5235; font-size: 12px; font-weight: 800; }
.coaching-person h4 { margin: 0; color: #4c3041; }
.coaching-person small { color: #88747f; }
.coaching-card-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.coaching-status { display: inline-flex; align-items: center; padding: 5px 8px; border-radius: 999px; background: #fff0dc; color: #8b572b; font-size: 10px; font-weight: 800; }
.coaching-status.status-coaching_scheduled { background: #e7effa; color: #476a91; }
.coaching-status.status-reviewed { background: #eee8fa; color: #6b5791; }
.coaching-status.status-discussed { background: #dfeee2; color: #477052; }
.coaching-status.status-pending_review { background: #fff0dc; color: #8b572b; }
.coaching-status.status-review_completed { background: #eee8fa; color: #6b5791; }
.coaching-status.status-needs_coaching { background: #fff3e7; color: #9a5b31; }
.coaching-status.status-coaching_completed { background: #dfeee2; color: #477052; }
.coaching-status.status-archived { background: #eee8eb; color: #75636e; }
.coaching-meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 14px 0 10px; }
.coaching-meta span { display: grid; gap: 2px; padding: 8px 10px; border-radius: 9px; background: #f7f2ef; color: #735e69; font-size: 11px; }
.coaching-meta strong { color: #4c3041; text-transform: uppercase; font-size: 9px; letter-spacing: 0.08em; }
.coaching-meta .is-complete { background: #edf6ef; color: #4b7254; }
.coaching-meta .is-pending { background: #fff3e7; color: #9a5b31; }
.coaching-assessment-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.coaching-assessment-grid section { padding: 10px; border: 1px solid #eee4de; border-radius: 10px; background: #fff; min-width: 0; }
.coaching-assessment-grid h5 { margin: 0 0 6px; color: #c35638; font-size: 10px; text-transform: uppercase; letter-spacing: 0.06em; }
.coaching-assessment-grid p { margin: 0; color: #4f3a47; font-size: 12px; line-height: 1.45; white-space: pre-wrap; overflow-wrap: anywhere; }
.coaching-review-copy { display: grid; gap: 14px; margin-top: 14px; padding: 14px; border: 1px solid #dccfe8; border-radius: 12px; background: #fbf9ff; }
.coaching-review-copy-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.coaching-review-copy-heading h4 { margin: 3px 0 0; color: #4c3041; }
.coaching-review-copy-heading > span { color: #806b75; font-size: 11px; text-align: right; }
.coaching-review-summary { display: flex; flex-wrap: wrap; gap: 8px; }
.coaching-review-summary span { display: inline-flex; align-items: center; gap: 5px; padding: 6px 9px; border-radius: 999px; font-size: 10px; font-weight: 800; }
.coaching-review-summary strong { font-size: 12px; }
.review-rating-met { background: #e2f3e6; color: #39724a; }
.review-rating-needs_coaching { background: #fff0dc; color: #8b572b; }
.review-rating-not_applicable, .review-rating-unrated { background: #eee8eb; color: #75636e; }
.coaching-review-copy-rubric { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.coaching-review-copy-category { padding: 10px; border: 1px solid #e6dce9; border-radius: 10px; background: #fff; }
.coaching-review-copy-category h5 { margin: 0 0 8px; color: #7a4d87; font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.coaching-review-copy-category > div { display: grid; gap: 7px; }
.coaching-review-copy-category p { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; margin: 0; color: #513b48; font-size: 11px; line-height: 1.35; }
.coaching-review-copy-category p strong { padding: 4px 6px; border-radius: 999px; font-size: 9px; white-space: nowrap; }
.coaching-review-copy-notes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.coaching-review-copy-footnote { margin: 0; color: #806b75; font-size: 10px; }
.coaching-awaiting { padding: 11px 12px; border: 1px dashed #e5bd9f; border-radius: 10px; background: #fff8f1; color: #925a35; font-size: 12px; }
.coaching-recording-meta { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 1px solid #eee4de; color: #88747f; font-size: 11px; }
.coaching-recording-meta strong { color: #5c4351; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.coaching-contact-number { grid-column: 1 / -1; color: #5f4453; font-weight: 700; }
.coaching-recording-meta audio { grid-column: 1 / -1; width: 100%; height: 38px; }
.coaching-review-workspace { max-height: calc(100vh - 32px); overflow: auto; }
.coaching-review-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; margin: 14px 0; padding: 4px; border-radius: 11px; background: #f4eeea; }
.coaching-review-tabs button { min-height: 42px; border: 0; border-radius: 8px; padding: 7px 8px; background: transparent; color: #75636e; font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.coaching-review-tabs button.active { background: #fffdfb; color: #bd5235; box-shadow: 0 3px 10px rgba(70, 40, 56, .08); }
.coaching-review-panel { display: none; }
.coaching-review-panel.active { display: block; }
.coaching-rubric-group { display: grid; gap: 7px; margin: 0 0 12px; padding: 11px; border: 1px solid #eadfd8; border-radius: 11px; }
.coaching-rubric-group legend { padding: 0 6px; color: #c35638; font-size: 10px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.coaching-rubric-group label { display: grid; grid-template-columns: minmax(0, 1fr) 132px; gap: 10px; align-items: center; color: #513b48; font-size: 11px; line-height: 1.35; }
.coaching-rubric-group select { width: 100%; border: 1px solid #dfd1c8; border-radius: 8px; padding: 7px; background: #fffdfb; color: #422b3a; font: inherit; }
.coaching-discussion-complete { display: flex; align-items: center; justify-content: space-between; padding: 11px 12px; border-radius: 10px; background: #edf6ef; color: #477052; }
.coaching-discussion-complete span { font-size: 11px; }

html[data-theme="dark"] .coaching-privacy-note { background: #2f2328; border-color: #6e4b4a; color: #f2c9b6; }
html[data-theme="dark"] .coaching-card, html[data-theme="dark"] .coaching-editor, html[data-theme="dark"] .coaching-assessment-grid section, html[data-theme="dark"] .coaching-review-copy-category { background: #261c22; border-color: #513b47; }
html[data-theme="dark"] .coaching-review-copy { background: #241c29; border-color: #5b4765; }
html[data-theme="dark"] .coaching-review-copy-heading h4, html[data-theme="dark"] .coaching-review-copy-category p { color: #f4e8e2; }
html[data-theme="dark"] .coaching-review-copy .review-rating-met { color: #2f6740; }
html[data-theme="dark"] .coaching-review-copy .review-rating-needs_coaching { color: #815026; }
html[data-theme="dark"] .coaching-review-copy .review-rating-not_applicable, html[data-theme="dark"] .coaching-review-copy .review-rating-unrated { color: #66545e; }
html[data-theme="dark"] .coaching-review-copy .coaching-review-summary span strong { color: inherit; }
html[data-theme="dark"] .coaching-coverage-card { background: #261c22; border-color: #513b47; }
html[data-theme="dark"] .coaching-filter { background: #261c22; border-color: #513b47; }
html[data-theme="dark"] .coaching-filter select, html[data-theme="dark"] .coaching-rubric-group select { background: #21181d; color: #f7ece7; border-color: #5a424e; }
html[data-theme="dark"] .coaching-coverage-card.is-met { background: #243028; }
html[data-theme="dark"] .coaching-form input:not([type="checkbox"]), html[data-theme="dark"] .coaching-form select, html[data-theme="dark"] .coaching-form textarea { background: #21181d; color: #f7ece7; border-color: #5a424e; }
html[data-theme="dark"] .coaching-meta span, html[data-theme="dark"] .coaching-existing-recording { background: #31242a; border-color: #513b47; }
html[data-theme="dark"] .coaching-assessment-grid p, html[data-theme="dark"] .coaching-person h4, html[data-theme="dark"] .coaching-recording-meta strong, html[data-theme="dark"] .coaching-contact-number { color: #f4e8e2; }
html[data-theme="dark"] .coaching-week-group-heading h4 { color: #f4e8e2; }
html[data-theme="dark"] .coaching-week-group + .coaching-week-group { border-top-color: #513b47; }
html[data-theme="dark"] .coaching-week-controls strong, html[data-theme="dark"] .coaching-coverage-card strong { color: #f4e8e2; }
html[data-theme="dark"] .coaching-awaiting { background: #31251f; border-color: #7b5945; color: #efc19f; }
html[data-theme="dark"] .coaching-review-tabs { background: #1f171b; }
html[data-theme="dark"] .coaching-review-tabs button.active { background: #3a2931; color: #ffa081; }
html[data-theme="dark"] .coaching-rubric-group { border-color: #513b47; }
html[data-theme="dark"] .coaching-rubric-group label { color: #eadce3; }
html[data-theme="dark"] .coaching-discussion-complete { background: #243028; color: #a9d4b2; }

@media (max-width: 1120px) {
  .coaching-layout { grid-template-columns: 1fr; }
  .coaching-editor { position: static; }
  .coaching-review-workspace { max-height: none; overflow: visible; }
  .coaching-filter { grid-template-columns: 1fr 1fr; }
  .coaching-filter .coaching-week-controls { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 720px) {
  .coaching-page-heading, .coaching-card > header, .coaching-section-heading { align-items: stretch; flex-direction: column; }
  .coaching-week-controls { justify-content: flex-start; }
  .coaching-form, .coaching-meta, .coaching-assessment-grid, .coaching-review-copy-rubric, .coaching-review-copy-notes { grid-template-columns: 1fr; }
  .coaching-review-copy-heading { flex-direction: column; }
  .coaching-review-copy-heading > span { text-align: left; }
  .coaching-wide { grid-column: auto; }
  .coaching-card-actions { justify-content: flex-start; }
  .coaching-filter { grid-template-columns: 1fr; }
  .coaching-filter .coaching-week-controls { grid-column: auto; }
  .coaching-review-tabs { grid-template-columns: 1fr; }
  .coaching-rubric-group label { grid-template-columns: 1fr; }
  .coaching-week-group-heading { align-items: flex-start; flex-direction: column; }
}
