.coaching-page { background:#f5f3ea; color:#111; }
.coaching-hero { background:#f3c623; border-bottom:1px solid rgba(0,0,0,.18); }
.coaching-hero-inner { width:min(1380px,calc(100% - 40px)); margin:0 auto; padding:46px 0 40px; display:flex; justify-content:space-between; align-items:flex-end; gap:32px; }
.coaching-hero h1 { margin:2px 0 10px; font-size:clamp(2.25rem,5vw,4.2rem); line-height:.95; letter-spacing:-.045em; }
.coaching-hero p:not(.coaching-eyebrow) { max-width:760px; margin:0; font-size:1.02rem; line-height:1.6; }
.coaching-eyebrow { margin:0 0 8px; font-size:.76rem; font-weight:900; letter-spacing:.16em; }
.coaching-freshness { flex:0 0 auto; max-width:250px; padding:11px 14px; background:#111; color:#fff; border-radius:8px; font-size:.78rem; font-weight:800; text-align:right; }
.coaching-shell { width:min(1380px,calc(100% - 40px)); margin:30px auto 64px; }
.coaching-tabs { display:flex; gap:7px; padding:5px; background:#111; border-radius:10px; width:max-content; max-width:100%; overflow:auto; }
.coaching-tab { border:0; border-radius:7px; background:transparent; color:#bbb; padding:11px 17px; font:inherit; font-size:.86rem; font-weight:850; cursor:pointer; white-space:nowrap; }
.coaching-tab:hover,.coaching-tab:focus-visible { color:#fff; }
.coaching-tab.is-active { background:#f3c623; color:#111; }
.coaching-toolbar { margin-top:18px; display:grid; grid-template-columns:150px minmax(220px,1fr) auto; gap:12px; align-items:end; }
.coaching-control { display:flex; flex-direction:column; gap:5px; font-size:.72rem; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.coaching-season-control[hidden] { display:none !important; }
.coaching-control select,.coaching-search-wrap input { width:100%; min-height:43px; border:1px solid #c9c6ba; border-radius:7px; background:#fff; color:#111; padding:0 12px; font:inherit; }
.coaching-search-wrap { display:block; }
.coaching-filter-group { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.coaching-filter-button,.coach-role-button { min-height:39px; border:1px solid #c7c3b6; border-radius:999px; background:#fff; padding:0 13px; font:inherit; font-size:.76rem; font-weight:850; cursor:pointer; }
.coaching-filter-button.is-active,.coach-role-button.is-active { background:#111; border-color:#111; color:#f3c623; }
.coaching-pulse { margin-top:20px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.coaching-pulse-card { border:1px solid #d8d4c7; border-radius:10px; background:#fff; padding:17px; }
.coaching-pulse-card span { display:block; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; font-weight:800; color:#68645b; }
.coaching-pulse-card strong { display:block; margin-top:5px; font-size:1.8rem; line-height:1; }
.coaching-status { display:flex; gap:8px; align-items:center; margin:20px 0 10px; color:#67645d; font-size:.82rem; }
.coaching-status strong { color:#111; }
.coaching-table-wrap { overflow:auto; border:1px solid #d8d4c7; border-radius:10px; background:#fff; }
.coaching-table { width:100%; border-collapse:collapse; min-width:900px; }
.coaching-table th { padding:12px 13px; background:#111; color:#f3c623; font-size:.69rem; letter-spacing:.07em; text-transform:uppercase; text-align:left; white-space:nowrap; }
.coaching-table td { padding:13px; border-bottom:1px solid #ece9df; vertical-align:middle; font-size:.85rem; }
.coaching-table tr:last-child td { border-bottom:0; }
.coaching-table tbody tr:hover { background:#faf8f1; }
.coaching-team-link,.coaching-coach-link { color:#111; font-weight:850; text-decoration:none; }
.coaching-team-link:hover,.coaching-coach-link:hover { text-decoration:underline; }
.coaching-team-code { display:inline-flex; min-width:40px; justify-content:center; padding:4px 7px; background:#111; color:#f3c623; border-radius:5px; font-weight:900; }
.coaching-badge { display:inline-flex; align-items:center; min-height:25px; padding:3px 8px; border-radius:999px; background:#efede4; font-size:.7rem; font-weight:850; white-space:nowrap; }
.coaching-badge.is-highlight { background:#f3c623; color:#111; }
.coaching-badge.is-aligned { background:#e6f0e4; }
.coaching-badge.is-contrary { background:#f4e3df; }
.coaching-empty { border:1px dashed #bbb6a8; border-radius:10px; padding:36px 20px; text-align:center; color:#68645b; background:#faf9f4; }
.coaching-change-list { display:grid; gap:14px; }
.coaching-change-card { background:#fff; border:1px solid #d8d4c7; border-radius:11px; overflow:hidden; }
.coaching-change-head { padding:18px 20px 15px; display:flex; justify-content:space-between; gap:20px; border-bottom:1px solid #ece9df; }
.coaching-change-team { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.coaching-change-card h3 { margin:0; font-size:1.24rem; }
.coaching-change-card p { margin:5px 0 0; color:#68645b; font-size:.83rem; line-height:1.45; }
.coaching-change-meta { display:flex; flex-wrap:wrap; gap:6px; margin-top:11px; }
.coaching-change-evidence { min-width:150px; text-align:right; }
.coaching-change-evidence strong { display:block; font-size:.9rem; }
.coaching-change-evidence span { display:block; margin-top:4px; color:#68645b; font-size:.72rem; }
.coaching-metric-wrap { overflow:auto; }
.coaching-metric-table { width:100%; border-collapse:collapse; min-width:820px; }
.coaching-metric-table th,.coaching-metric-table td { padding:10px 13px; border-bottom:1px solid #efede6; text-align:right; font-size:.77rem; }
.coaching-metric-table th { color:#67645d; font-size:.65rem; text-transform:uppercase; letter-spacing:.055em; }
.coaching-metric-table th:first-child,.coaching-metric-table td:first-child { text-align:left; }
.coaching-metric-table tr:last-child td { border-bottom:0; }
.coaching-profile-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:16px; }
.coach-picker { background:#111; border-radius:10px; padding:10px; max-height:720px; overflow:auto; }
.coach-picker button { display:block; width:100%; border:0; border-radius:7px; background:transparent; color:#ddd; padding:10px 11px; text-align:left; font:inherit; font-size:.81rem; font-weight:750; cursor:pointer; }
.coach-picker button:hover { color:#fff; background:#252525; }
.coach-picker button.is-active { background:#f3c623; color:#111; }
.coach-profile { min-width:0; }
.coach-profile-header { background:#111; color:#fff; border-radius:11px; padding:23px; }
.coach-profile-header h2 { margin:0; font-size:2rem; letter-spacing:-.025em; }
.coach-profile-header p { margin:6px 0 0; color:#c9c9c9; }
.coach-role-tabs { margin-top:15px; display:flex; gap:7px; }
.coach-role-button { border-color:#555; background:#222; color:#ddd; }
.coach-role-button.is-active { background:#f3c623; color:#111; border-color:#f3c623; }
.coach-section { margin-top:15px; background:#fff; border:1px solid #d8d4c7; border-radius:10px; padding:18px; }
.coach-section h3 { margin:0 0 13px; font-size:1rem; }
.coach-section-note { margin:-6px 0 13px; color:#777268; font-size:.76rem; }
.coach-metric-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.coach-metric { background:#f7f5ee; border-radius:8px; padding:12px; }
.coach-metric span { display:block; min-height:28px; color:#68645b; font-size:.67rem; text-transform:uppercase; letter-spacing:.055em; font-weight:800; }
.coach-metric strong { display:block; margin-top:3px; font-size:1.12rem; }
.coach-position-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.coach-position-card { border:1px solid #e4e0d6; border-radius:9px; padding:14px; }
.coach-position-card h4 { margin:0 0 10px; }
.coach-position-row { display:flex; justify-content:space-between; gap:12px; padding:6px 0; border-bottom:1px solid #efede5; font-size:.76rem; }
.coach-position-row:last-child { border-bottom:0; }
.coach-personnel-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.coach-personnel-item { background:#111; color:#fff; border-radius:8px; padding:12px; }
.coach-personnel-item span { display:block; color:#aaa; font-size:.67rem; text-transform:uppercase; }
.coach-personnel-item strong { display:block; margin-top:3px; color:#f3c623; font-size:1.12rem; }
.coach-history-section { padding:18px 14px; }
.coach-history-wrap { overflow-x:auto; }
.coach-history-table { min-width:0; table-layout:auto; }
.coach-history-table th { padding:10px 8px; white-space:normal; line-height:1.2; font-size:.62rem; }
.coach-history-table td { padding:11px 8px; white-space:nowrap; font-size:.78rem; }
.coach-history-table th:first-child,.coach-history-table td:first-child { padding-left:11px; }
.coach-history-table th:last-child,.coach-history-table td:last-child { padding-right:11px; }
.coaching-error { margin-top:20px; border:1px solid #c98178; background:#fff1ef; border-radius:8px; padding:15px; color:#6c211a; }
@media (max-width:900px) {
  .coaching-hero-inner { align-items:flex-start; flex-direction:column; }
  .coaching-freshness { text-align:left; }
  .coaching-toolbar { grid-template-columns:130px 1fr; }
  .coaching-filter-group { grid-column:1/-1; justify-content:flex-start; }
  .coaching-pulse { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .coaching-profile-layout { grid-template-columns:1fr; }
  .coach-picker { max-height:230px; }
  .coach-metric-grid,.coach-position-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
  .coaching-hero-inner,.coaching-shell { width:min(100% - 24px,1380px); }
  .coaching-hero-inner { padding:34px 0 30px; }
  .coaching-toolbar { grid-template-columns:1fr; }
  .coaching-filter-group { grid-column:auto; }
  .coaching-pulse { grid-template-columns:1fr 1fr; }
  .coaching-change-head { flex-direction:column; }
  .coaching-change-evidence { text-align:left; }
  .coach-metric-grid,.coach-position-grid { grid-template-columns:1fr; }
  .coach-personnel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
.coaching-coach-link { border:0; background:transparent; padding:0; font:inherit; cursor:pointer; }
