/* V38.82.36 — peak readiness, recruiting, ranking clarity, non-blocking visual loading */
.tm-navigation-feedback{display:flex;align-items:center;gap:9px;pointer-events:none!important;max-width:min(92vw,520px);}
.tm-navigation-feedback-spinner,.tm-inline-spinner{display:inline-block;width:16px;height:16px;box-sizing:border-box;border:2px solid color-mix(in srgb,currentColor 28%,transparent);border-top-color:currentColor;border-radius:50%;animation:tm-spinner-rotate .72s linear infinite;flex:0 0 auto;pointer-events:none;}
@keyframes tm-spinner-rotate{to{transform:rotate(360deg)}}
.tm-touch-pending{position:relative;}
.tm-touch-pending::after{content:"";display:inline-block;width:12px;height:12px;margin-inline-start:7px;box-sizing:border-box;border:2px solid color-mix(in srgb,currentColor 32%,transparent);border-top-color:currentColor;border-radius:50%;animation:tm-spinner-rotate .72s linear infinite;vertical-align:-1px;pointer-events:none;}
.tm-team-competitive-loading::before{content:"";display:block;width:20px;height:20px;margin:0 0 10px;box-sizing:border-box;border:3px solid color-mix(in srgb,var(--action,#b63225) 25%,transparent);border-top-color:var(--action,#b63225);border-radius:50%;animation:tm-spinner-rotate .8s linear infinite;pointer-events:none;}
.tm-team-competitive-loading::after{display:none!important;}
.tm-athlete-name-link{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;line-height:inherit;padding:0;margin:0;text-align:inherit;text-decoration-line:underline;text-decoration-thickness:.08em;text-underline-offset:.16em;text-decoration-color:color-mix(in srgb,var(--action,#b63225) 58%,transparent);cursor:pointer;}
.tm-athlete-name-link:hover{color:var(--action,#b63225);text-decoration-color:currentColor;}
.tm-athlete-name-link:focus-visible{outline:3px solid var(--action,#b63225);outline-offset:3px;border-radius:4px;}
.tm-athlete-peak{overflow:hidden;}
.tm-athlete-peak .section-head{align-items:flex-start;}
.tm-peak-hero{display:grid;grid-template-columns:minmax(140px,190px) minmax(0,1fr);gap:22px;align-items:center;margin-top:14px;padding:20px;border:1px solid var(--border,#dfe5eb);border-radius:18px;background:var(--surface-raised,#fafbfc);}
.tm-peak-score{display:grid;gap:4px;align-content:center;}
.tm-peak-score strong{font-size:clamp(2.65rem,8vw,4.5rem);line-height:.95;letter-spacing:-.045em;font-variant-numeric:tabular-nums;color:var(--text,#17212c);}
.tm-peak-score span{font-size:.82rem;font-weight:750;color:var(--text-muted,#536171);text-transform:uppercase;letter-spacing:.05em;}
.tm-peak-track{height:16px;border-radius:999px;background:var(--surface-muted,#f0f3f6);border:1px solid var(--border,#dfe5eb);overflow:hidden;}
.tm-peak-track>span{display:block;height:100%;width:var(--tm-peak,0%);max-width:100%;border-radius:inherit;background:var(--action,#b63225);}
.tm-peak-copy{display:grid;gap:10px;min-width:0;}
.tm-peak-copy>strong{font-size:1.05rem;line-height:1.35;}
.tm-peak-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin-top:14px;}
.tm-peak-metrics article{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--border,#dfe5eb);border-radius:12px;background:var(--surface,#fff);}
.tm-peak-metrics article span{font-size:.76rem;font-weight:700;color:var(--text-muted,#536171);}
.tm-peak-metrics article strong{font-size:1rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.tm-peak-context{display:grid;gap:8px;margin-top:14px;padding:14px 16px;border-left:4px solid var(--info,#174a7e);background:var(--info-soft,#eaf2fa);border-radius:0 12px 12px 0;}
.tm-peak-boundary{margin-top:12px;padding-top:12px;border-top:1px solid var(--border,#dfe5eb);color:var(--text-muted,#536171);font-size:.83rem;line-height:1.5;}
.tm-recruiting-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:12px;margin-top:14px;}
.tm-recruiting-card{display:grid;gap:12px;padding:15px;border:1px solid var(--border,#dfe5eb);border-radius:14px;background:var(--surface,#fff);}
.tm-recruiting-card>div{display:grid;gap:4px;}
.tm-recruiting-card>div:first-child strong{font-size:1.35rem;font-variant-numeric:tabular-nums;}
.tm-recruiting-card small{color:var(--text-muted,#536171);line-height:1.4;}
.tm-recruiting-card.is-match{border-color:color-mix(in srgb,var(--success,#246b43) 55%,var(--border,#dfe5eb));background:var(--success-soft,#eaf5ed);}
.tm-training-group-grid{display:grid;gap:20px;margin-top:14px;}
.tm-training-family{padding:18px;border:2px solid var(--border-strong,#b9c4cf);border-radius:18px;background:var(--surface,#fff);}
.tm-training-family>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:2px solid var(--border,#dfe5eb);}
.tm-training-family>header>div{display:grid;gap:3px;}.tm-training-family-kicker{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.055em;color:var(--text-muted,#536171);}
.tm-training-cohort-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;margin-top:14px;}
.tm-training-cohort-card{display:grid;gap:12px;padding:15px;border:1px solid var(--border,#dfe5eb);border-left:5px solid var(--action,#b63225);border-radius:12px;background:var(--surface-raised,#fafbfc);}
.tm-training-cohort-head{display:grid;gap:5px;}.tm-working-cohort-label{display:inline-flex;justify-self:start;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;background:var(--primary,#17212c);color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.02em;}
.tm-training-athlete-list{display:grid;gap:0;border-top:1px solid var(--border,#dfe5eb);}.tm-training-athlete-row{padding:10px 0;border-bottom:1px solid var(--border,#dfe5eb);}
.tm-ranking-group-detail>summary,.tm-training-cohorts>summary{min-height:52px;}
@media(max-width:720px){
  .tm-peak-hero{grid-template-columns:1fr;gap:14px;padding:16px;}.tm-peak-score strong{font-size:3.25rem}.tm-peak-metrics{grid-template-columns:1fr 1fr}.tm-recruiting-grid,.tm-training-cohort-list{grid-template-columns:1fr}.tm-training-family{padding:14px}.tm-training-family>header{display:grid;gap:6px}.tm-training-athlete-row{display:grid!important;gap:7px!important}.tm-training-athlete-evidence{text-align:left!important;}
}
@media(max-width:440px){.tm-peak-metrics{grid-template-columns:1fr}.tm-peak-score strong{font-size:2.9rem}}
@media(prefers-reduced-motion:reduce){.tm-navigation-feedback-spinner,.tm-inline-spinner,.tm-touch-pending::after,.tm-team-competitive-loading::before{animation:none;border-top-color:transparent;}}
@media print{.tm-navigation-feedback-spinner,.tm-touch-pending::after,.tm-team-competitive-loading::before{display:none!important}.tm-athlete-name-link{text-decoration:none}.tm-athlete-peak,.tm-athlete-recruiting{break-inside:avoid}}
/* Peak tracker uses the profile renderer's existing semantic class names. */
.tm-peak-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;}
.tm-peak-head>div:first-child{min-width:0;}
.tm-peak-number{display:grid;justify-items:end;gap:2px;flex:0 0 auto;padding:8px 0 8px 16px;}
.tm-peak-number strong{font-size:clamp(2.7rem,7vw,4.5rem);line-height:.92;letter-spacing:-.05em;font-variant-numeric:tabular-nums;color:var(--text,#17212c);}
.tm-peak-number span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted,#536171);}
.tm-athlete-peak .tm-peak-track{margin-top:18px;height:18px;box-shadow:inset 0 0 0 1px var(--border,#dfe5eb);}
.tm-athlete-peak .tm-peak-track>span{background:linear-gradient(90deg,var(--info,#174a7e),var(--action,#b63225));}
.tm-peak-evidence{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px;margin-top:16px;}
.tm-peak-evidence article{display:grid;gap:4px;padding:13px 14px;border:1px solid var(--border,#dfe5eb);border-radius:12px;background:var(--surface,#fff);}
.tm-peak-evidence article small{font-weight:700;color:var(--text-muted,#536171);}
.tm-peak-evidence article strong{font-size:1.08rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.tm-peak-evidence article span{font-size:.8rem;color:var(--text-muted,#536171);line-height:1.4;}
@media(max-width:620px){.tm-peak-head{display:grid;gap:12px}.tm-peak-number{justify-items:start;padding:0}.tm-peak-evidence{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.tm-peak-evidence{grid-template-columns:1fr}}
button[aria-busy="true"]:not(.tm-touch-pending)::after,.btn[aria-busy="true"]:not(.tm-touch-pending)::after{content:"";display:inline-block;width:12px;height:12px;margin-inline-start:7px;box-sizing:border-box;border:2px solid color-mix(in srgb,currentColor 32%,transparent);border-top-color:currentColor;border-radius:50%;animation:tm-spinner-rotate .72s linear infinite;vertical-align:-1px;pointer-events:none;}
@media(prefers-reduced-motion:reduce){button[aria-busy="true"]:not(.tm-touch-pending)::after,.btn[aria-busy="true"]:not(.tm-touch-pending)::after{animation:none;border-top-color:transparent;}}
