/* V38.82.38 — Main-Screen Clarity & Latency Hardening
   Final presentation layer. Keeps key evidence visible, moves specialist detail behind clear disclosure,
   and standardizes readable density without changing data, ranking, sync, timing, or storage semantics. */

:root{
  --tm-clarity-gap:clamp(14px,2vw,22px);
  --tm-clarity-reading:72ch;
}

/* Primary reading path: enough separation to understand regions without wasting screen space. */
.page>*,.experience-page>*{scroll-margin-top:86px;}
.page-heading{margin-bottom:clamp(18px,3vw,28px)!important;}
.page-heading .lead{max-width:var(--tm-clarity-reading);}
.experience-section,.tm-dashboard-panel,.surface-card{margin-block:0 var(--tm-clarity-gap);}
.experience-section .helper,.tm-dashboard-panel .helper,.experience-disclosure .helper{max-width:var(--tm-clarity-reading);}

/* Metric collections are summaries, not dashboards of everything we can calculate. */
.experience-metrics{align-items:stretch;}
.experience-metrics>div{display:grid;align-content:start;gap:5px;}
.experience-metrics>div>strong{font-size:clamp(1.08rem,3vw,1.35rem);line-height:1.15;}
.experience-metrics>div>small{line-height:1.35;color:var(--text-muted,#536171);}

/* Consistent progressive disclosure: 48px target, clear relationship to the content it reveals. */
.tm-coach-review-more,.tm-athlete-section-group,.tm-results-competitive-drawer,
.results-event-aggregate-section,.experience-admin-details,.recruiting-breakdowns>details,
.recruiting-depth-charts,.tm-statistical-details{
  width:100%;max-width:100%;box-sizing:border-box;border:1px solid var(--border,#dfe5eb);
  border-radius:14px;background:var(--surface,#fff);overflow:hidden;margin-block:12px;
}
.tm-coach-review-more>summary,.tm-athlete-section-group>summary,.tm-results-competitive-drawer>summary,
.results-event-aggregate-section>summary,.experience-admin-details>summary,.recruiting-breakdowns>details>summary,
.recruiting-depth-charts>summary,.tm-statistical-details>summary{
  min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px 14px;cursor:pointer;list-style:none;font-weight:700;background:var(--surface-raised,#fafbfc);
}
.tm-coach-review-more>summary::-webkit-details-marker,.tm-athlete-section-group>summary::-webkit-details-marker,
.tm-results-competitive-drawer>summary::-webkit-details-marker,.results-event-aggregate-section>summary::-webkit-details-marker,
.experience-admin-details>summary::-webkit-details-marker,.recruiting-breakdowns>details>summary::-webkit-details-marker,
.recruiting-depth-charts>summary::-webkit-details-marker,.tm-statistical-details>summary::-webkit-details-marker{display:none;}
.tm-coach-review-more>summary span,.tm-athlete-section-group>summary span,.tm-results-competitive-drawer>summary span,
.results-event-aggregate-section>summary span,.experience-admin-details>summary span,.recruiting-breakdowns>details>summary span,
.recruiting-depth-charts>summary span{min-width:0;}
.tm-coach-review-more>summary small,.tm-athlete-section-group>summary small,.tm-results-competitive-drawer>summary small,
.results-event-aggregate-section>summary small,.experience-admin-details>summary small,.recruiting-breakdowns>details>summary small,
.recruiting-depth-charts>summary small{display:block;margin-top:2px;color:var(--text-muted,#536171);font-weight:500;line-height:1.35;}
.tm-coach-review-more[open]>summary,.tm-athlete-section-group[open]>summary,.tm-results-competitive-drawer[open]>summary,
.results-event-aggregate-section[open]>summary,.experience-admin-details[open]>summary,.recruiting-breakdowns>details[open]>summary,
.recruiting-depth-charts[open]>summary{border-bottom:1px solid var(--border,#dfe5eb);}
.tm-coach-review-more-body,.experience-disclosure-body,.experience-admin-details>div:not(.section-head),
.recruiting-depth-charts>.tm-glance-charts{padding:14px;}

/* Athlete profile: grouped sections read as one clean notebook, not stacked nested cards. */
.tm-athlete-section-group{margin-block:10px;}
.tm-athlete-section-group .experience-disclosure-body>.experience-section,
.tm-athlete-section-group .experience-disclosure-body>.surface-card{margin-bottom:14px;}
.tm-athlete-section-group .experience-disclosure-body>:last-child{margin-bottom:0;}

/* Home history is deliberately secondary while current actions remain above it. */
.tm-coach-review-more{margin-top:18px;}
.tm-coach-review-more-body{display:grid;gap:14px;background:var(--background,#f4f6f8);}
.tm-coach-review-more-body>*{margin:0!important;}

/* Results: recorded evidence first; specialist comparison layers stay visually subordinate. */
.tm-results-competitive-drawer,.results-event-aggregate-section{margin-top:14px;}
.tm-results-competitive-drawer .experience-disclosure-body,
.results-event-aggregate-section .experience-disclosure-body{background:var(--background,#f4f6f8);}
.tm-result-stat-primary{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))!important;gap:10px!important;}
.tm-result-stat-primary>span{min-width:0;padding:12px;border:1px solid var(--border,#dfe5eb);border-radius:12px;background:var(--surface,#fff);}
.tm-result-stat-primary>span small,.tm-result-stat-primary>span em{display:block;color:var(--text-muted,#536171);}
.tm-statistical-details{margin-top:10px;background:transparent;}
.tm-statistical-details>summary{min-height:44px;font-size:.93rem;background:var(--surface-muted,#f0f3f6);}
.tm-statistical-details>.result-stat-grid,.tm-statistical-details>.results-event-metrics{padding:12px;}

/* Team/recruiting intelligence: emphasize current facts and choices, not analysis machinery. */
.team-season-context .experience-team-metrics{margin-top:14px;}
.team-overview-actions .experience-action-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important;}
.tm-team-attention{border-color:var(--warning,#865300)!important;background:var(--warning-soft,#fff3de)!important;}
.tm-definition-list{display:grid;gap:10px;}
.tm-definition-list p{margin:0;max-width:var(--tm-clarity-reading);}
.recruiting-priority .experience-metrics{margin-top:12px;}
.recruiting-breakdowns{display:grid;gap:10px;}
.recruiting-breakdowns>details{margin:0;}
.recruiting-depth-charts{margin-top:14px;}

/* Tools/action grids: a clean primary row, then secondary capabilities in disclosure. */
.experience-action-grid{gap:10px!important;}
.experience-action{min-height:58px;align-items:center;}
.experience-action-copy small{line-height:1.35;}

/* Loading remains visible but never masks content or captures input. */
.tm-navigation-feedback{pointer-events:none!important;max-width:min(92vw,420px);}
[aria-busy="true"]{cursor:progress;}

@media(max-width:680px){
  .page-heading{margin-bottom:18px!important;}
  .experience-section,.tm-dashboard-panel,.surface-card{margin-bottom:14px;}
  .tm-coach-review-more>summary,.tm-athlete-section-group>summary,.tm-results-competitive-drawer>summary,
  .results-event-aggregate-section>summary,.experience-admin-details>summary,.recruiting-breakdowns>details>summary,
  .recruiting-depth-charts>summary{padding:12px;align-items:flex-start;}
  .tm-coach-review-more-body,.experience-disclosure-body,.experience-admin-details>div:not(.section-head),
  .recruiting-depth-charts>.tm-glance-charts{padding:12px;}
  .team-overview-actions .experience-action-grid,.experience-action-grid{grid-template-columns:minmax(0,1fr)!important;}
  .experience-action{width:100%;}
}

@media(max-width:390px){
  .tm-result-stat-primary{grid-template-columns:minmax(0,1fr)!important;}
  .experience-metrics>div{padding:12px!important;}
}

@media(prefers-reduced-motion:reduce){
  .tm-navigation-feedback-spinner,.tm-loading-ring{animation:none!important;}
}

@media(forced-colors:active){
  .tm-coach-review-more,.tm-athlete-section-group,.tm-results-competitive-drawer,
  .results-event-aggregate-section,.experience-admin-details,.recruiting-breakdowns>details,
  .recruiting-depth-charts,.tm-statistical-details,.tm-result-stat-primary>span{border-color:CanvasText!important;}
}
/* V38.82.39 — Practice-integrated, attendance-aware training cohorts */
.tm-practice-training-summary,
.tm-training-home,
.tm-training-practice-page {
  min-width: 0;
  overflow: clip;
}
.tm-practice-training-summary .section-head,
.tm-training-home .section-head,
.tm-training-practice-page .section-head {
  align-items: flex-start;
  gap: 16px;
}
.tm-training-loading {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
}
.tm-training-context {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--border, #d9e0e7);
  margin-bottom: 14px;
  min-width: 0;
}
.tm-training-context > div { min-width: 0; }
.tm-training-context h3 { margin: 2px 0 4px; overflow-wrap: anywhere; }
.tm-training-workout-families {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}
.tm-training-workout-chip,
.tm-training-match-badge,
.tm-training-attendance-state {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  border: 1px solid var(--border, #d9e0e7);
  border-radius: 999px;
  padding: 4px 8px;
  font-size: .78rem;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.tm-training-match-badge {
  background: color-mix(in srgb, var(--action, #b63225) 9%, white);
  border-color: color-mix(in srgb, var(--action, #b63225) 30%, var(--border, #d9e0e7));
  font-weight: 700;
}
.tm-training-attendance-state { margin-top: 6px; }
.tm-training-boundary { margin: 0 0 14px; }
.tm-training-group-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 16px;
  min-width: 0;
}
.tm-training-group-grid-compact { grid-template-columns: 1fr; }
.tm-training-family {
  min-width: 0;
  border: 1px solid var(--border, #d9e0e7);
  border-radius: 16px;
  padding: 14px;
  background: var(--surface, #fff);
}
.tm-training-family.workout-match {
  border-width: 2px;
  border-color: color-mix(in srgb, var(--action, #b63225) 38%, var(--border, #d9e0e7));
}
.tm-training-family > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  min-width: 0;
}
.tm-training-family > header > div { min-width: 0; }
.tm-training-family-kicker { display: block; font-size: .76rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.tm-training-family > header strong { display: block; margin-top: 3px; overflow-wrap: anywhere; }
.tm-training-cohort-list { display: grid; gap: 12px; }
.tm-training-cohort-card {
  min-width: 0;
  border-top: 1px solid var(--border, #d9e0e7);
  padding-top: 12px;
}
.tm-training-cohort-card:first-child { border-top: 0; padding-top: 0; }
.tm-training-cohort-head {
  display: grid;
  gap: 3px;
  margin-bottom: 8px;
  min-width: 0;
}
.tm-working-cohort-label { font-weight: 800; }
.tm-training-cohort-head small,
.tm-training-athlete-row small { overflow-wrap: anywhere; }
.tm-training-athlete-list { display: grid; gap: 8px; }
.tm-training-athlete-row {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 12px;
  align-items: start;
  min-width: 0;
  padding: 10px 0;
  border-top: 1px solid color-mix(in srgb, var(--border, #d9e0e7) 70%, transparent);
}
.tm-training-athlete-row:first-child { border-top: 0; }
.tm-training-athlete-row > span { min-width: 0; }
.tm-athlete-name-link {
  appearance: none;
  border: 0;
  background: none;
  color: inherit;
  padding: 0;
  margin: 0;
  min-height: 0;
  font: inherit;
  font-weight: 800;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.tm-training-athlete-row small { display: block; margin-top: 3px; }
.tm-training-athlete-evidence b { display: block; overflow-wrap: anywhere; }

@media (max-width: 680px) {
  .tm-training-context,
  .tm-training-family > header { flex-direction: column; }
  .tm-training-workout-families { justify-content: flex-start; }
  .tm-training-group-grid { grid-template-columns: 1fr; }
  .tm-training-athlete-row { grid-template-columns: 1fr; gap: 7px; }
  .tm-practice-training-summary .section-head,
  .tm-training-home .section-head,
  .tm-training-practice-page .section-head { display: grid; grid-template-columns: 1fr; }
  .tm-practice-training-summary .section-head .btn,
  .tm-training-home .section-head .btn,
  .tm-training-practice-page .section-head .btn { width: 100%; }
}

/* V38.82.40 — standalone Marks & Standards Explorer */
.standards-explorer-panel{display:grid;gap:16px;min-width:0;max-width:100%;}
.standards-explorer-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;min-width:0;}
.standards-explorer-intro>div{min-width:0;max-width:760px;}
.standards-explorer-intro h2{margin:.2rem 0 .35rem;}
.standards-explorer-intro p:not(.eyebrow){margin:0;color:var(--text-muted,#536171);line-height:1.5;}
.standards-explorer-search{display:grid;gap:7px;font-weight:800;min-width:0;}
.standards-explorer-search input{width:100%;min-height:50px;font-size:16px;border-radius:14px;}
.standards-scope-tabs{display:flex;gap:8px;flex-wrap:wrap;min-width:0;}
.standards-scope-button{min-height:44px;border:1px solid var(--border,#dce1e4);border-radius:999px;background:var(--surface,#fff);color:var(--text,#17212c);padding:9px 14px;font:inherit;font-weight:800;cursor:pointer;max-width:100%;white-space:normal;text-align:center;}
.standards-scope-button:hover{border-color:#9aa9b6;background:var(--surface-muted,#f0f2f3);}
.standards-scope-button.is-active,.standards-scope-button[aria-pressed="true"]{background:var(--navy,#17212c);border-color:var(--navy,#17212c);color:#fff;}
.standards-explorer-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.standards-explorer-secondary{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px;}
.standards-more-filters{border:1px solid var(--border,#dce1e4);border-radius:14px;background:var(--surface,#fff);overflow:hidden;}
.standards-more-filters>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 14px;cursor:pointer;list-style:none;}
.standards-more-filters>summary::-webkit-details-marker{display:none;}
.standards-more-filters>summary span{display:grid;gap:2px;min-width:0;}
.standards-more-filters>summary small{font-weight:500;color:var(--text-muted,#536171);}
.standards-more-filters[open]{padding-bottom:14px;}
.standards-more-filters[open]>.standards-explorer-secondary{padding:0 14px;}
.standards-browser-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,auto);gap:16px;align-items:start;}
.standards-explorer-summary{display:grid;gap:4px;justify-items:end;text-align:right;padding:12px 14px;border:1px solid var(--border,#dce1e4);border-radius:14px;background:var(--surface-muted,#f0f2f3);min-width:0;}
.standards-explorer-summary strong{font-size:1rem;}
.standards-explorer-summary span{max-width:36ch;color:var(--text-muted,#536171);font-size:12px;line-height:1.4;overflow-wrap:anywhere;}
.standards-browser-more{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:14px;padding:14px;border:1px solid var(--border,#dce1e4);border-radius:14px;background:var(--surface-muted,#f0f2f3);}
.standards-browser-more p{margin:0;max-width:64ch;color:var(--text-muted,#536171);}
.standards-browser-more strong{color:var(--text,#17212c);}
@media(max-width:900px){.standards-explorer-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.standards-browser-head{grid-template-columns:1fr;}.standards-explorer-summary{justify-items:start;text-align:left;}}
@media(max-width:680px){.standards-explorer-intro{display:grid;grid-template-columns:1fr;}.standards-explorer-intro>.btn{width:100%;}.standards-scope-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}.standards-scope-button{width:100%;border-radius:12px;}.standards-explorer-grid,.standards-explorer-secondary{grid-template-columns:1fr;}.standards-more-filters[open]>.standards-explorer-secondary{padding:0 12px;}.standards-browser-more{align-items:stretch;}.standards-browser-more>.btn{width:100%;}}
@media(max-width:390px){.standards-scope-tabs{grid-template-columns:1fr;}}

/* V38.82.41 — Single Runner mobile field-workspace repair.
   Keep the live camera and Start visible together; secondary controls scroll between them. */
.single-capture-hud{
  position:absolute;inset:8px 8px auto 8px;z-index:8;display:grid;grid-template-columns:minmax(0,1fr) auto auto;
  align-items:start;gap:8px;pointer-events:auto;color:#fff;
}
.single-capture-meta,.single-capture-state{
  min-width:0;width:max-content;max-width:100%;padding:7px 9px;border-radius:10px;background:rgba(5,10,16,.78);
  backdrop-filter:blur(3px);box-shadow:0 1px 0 rgba(255,255,255,.08) inset;
}
.single-capture-meta{display:grid;gap:1px;}
.single-capture-meta strong,.single-capture-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.single-capture-meta strong{font-size:.82rem;}
.single-capture-meta span{font-size:.72rem;color:#e7edf3;}
.single-capture-state{font-size:.76rem;font-weight:850;letter-spacing:.02em;white-space:nowrap;}
.single-capture-state[data-state="ready"]{background:rgba(20,115,60,.9);}
.single-capture-state[data-state="running"]{background:rgba(180,35,24,.94);}
.single-capture-exit{
  pointer-events:auto;appearance:none;border:1px solid rgba(255,255,255,.42);background:rgba(5,10,16,.78);color:#fff;
  width:44px;height:44px;border-radius:12px;font:700 1.4rem/1 system-ui;cursor:pointer;
}
.single-start-dock{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,auto);gap:12px;align-items:center;
  padding:12px;background:var(--surface,#fff);border-top:1px solid var(--border,#dfe5eb);
}
.single-start-dock>div{display:grid;gap:2px;min-width:0;}
.single-start-dock>div strong,.single-start-dock>div span{overflow-wrap:anywhere;}
.single-start-dock>div span{font-size:.8rem;color:var(--text-muted,#536171);}
.single-precision-zoom{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
.single-precision-zoom .btn{min-width:52px;min-height:40px;padding:7px 10px;}
.single-precision-zoom .btn[aria-pressed="true"]{background:var(--navy,#17212c);border-color:var(--navy,#17212c);color:#fff;}

@media(max-width:720px){
  .single-runner-page.single-capture-active .single-camera-stage{
    position:fixed!important;inset:0!important;z-index:10050!important;width:100%!important;height:100vh!important;height:100svh!important;
    max-width:none!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;padding:0!important;
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;background:#07090c!important;
    scrollbar-gutter:stable both-edges;
  }
  .single-runner-page.single-capture-active .single-video-wrap{
    position:sticky!important;top:0!important;z-index:12!important;width:100%!important;height:min(50svh,420px)!important;
    min-height:250px!important;max-height:none!important;margin:0!important;border-radius:0!important;background:#07090c!important;
    box-shadow:0 4px 14px rgba(0,0,0,.34)!important;
  }
  .single-runner-page.single-capture-active .single-video-wrap video{object-fit:contain!important;}
  .single-runner-page.single-capture-active .single-start-dock{
    position:sticky;bottom:0;z-index:18;grid-template-columns:1fr;padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    box-shadow:0 -6px 18px rgba(0,0,0,.2);background:rgba(255,255,255,.98);
  }
  .single-runner-page.single-capture-active .single-start-dock>div{display:flex;align-items:center;justify-content:space-between;gap:10px;}
  .single-runner-page.single-capture-active .single-start-dock>div span{display:none;}
  .single-runner-page.single-capture-active .single-start-now{width:100%!important;min-height:68px!important;font-size:1.18rem!important;}
  .single-runner-page.single-capture-active .single-precision-panel,
  .single-runner-page.single-capture-active .single-finish-adjust,
  .single-runner-page.single-capture-active .single-camera-zoom,
  .single-runner-page.single-capture-active .single-field-readybar,
  .single-runner-page.single-capture-active .single-field-controls,
  .single-runner-page.single-capture-active .single-setup-quality,
  .single-runner-page.single-capture-active .single-camera-health{
    position:relative;z-index:2;background:var(--surface,#fff);color:var(--text,#17212c);border-radius:0!important;margin:0!important;
  }
  .single-runner-page.single-capture-active .single-precision-panel{
    grid-template-columns:minmax(0,.9fr) minmax(150px,1.1fr);gap:10px;padding:10px 12px;border-inline:0;border-top:1px solid var(--border,#dfe5eb);
  }
  .single-runner-page.single-capture-active .single-precision-panel>div>span{font-size:.78rem;line-height:1.3;}
  .single-runner-page.single-capture-active .timing-precision-canvas{max-width:none;min-height:96px;max-height:17svh;}
  .single-runner-page.single-capture-active .single-camera-zoom{padding:9px 12px;border-inline:0;}
  .single-runner-page.single-capture-active .single-camera-zoom small{font-size:.76rem;}
  .single-runner-page.single-capture-active .single-field-readybar{padding:9px 12px!important;}
  .single-runner-page.single-capture-active .single-field-readybar .single-line-hint{font-size:.8rem!important;line-height:1.35!important;}
  .single-runner-page.single-capture-active .single-field-controls{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:10px 12px!important;}
  .single-runner-page.single-capture-active .single-field-controls .single-runner-picker{grid-column:1/-1!important;}
  .single-runner-page.single-capture-active .single-field-controls>*{min-width:0;}
  .single-runner-page.single-capture-active .single-field-controls .btn{width:100%;white-space:normal;}
  .single-runner-page.single-capture-active .single-setup-quality-compact{padding:8px 12px;}
  .single-runner-page.single-capture-active .single-camera-health{padding:8px 12px 12px;}
  .single-capture-hud{grid-template-columns:minmax(0,1fr) auto auto;inset:8px 8px auto 8px;}
  .single-capture-exit{width:48px;height:48px;}
  .single-precision-zoom{gap:6px;}
  .single-precision-zoom .btn{flex:1 1 0;min-width:0;min-height:44px;}
}
@media(max-width:520px){
  .single-runner-page.single-capture-active .single-video-wrap{height:min(47svh,360px)!important;min-height:235px!important;}
  .single-runner-page.single-capture-active .single-precision-panel{grid-template-columns:1fr;}
  .single-runner-page.single-capture-active .single-precision-panel>div>span{display:none;}
  .single-runner-page.single-capture-active .timing-precision-canvas{min-height:88px;max-height:14svh;}
  .single-runner-page.single-capture-active .single-field-controls{grid-template-columns:1fr!important;}
  .single-runner-page.single-capture-active .single-field-controls>*{grid-column:1!important;}
  .single-capture-meta span{max-width:44vw;}
}
@media(max-height:700px) and (max-width:950px){
  .single-runner-page.single-capture-active .single-video-wrap{height:min(43svh,300px)!important;min-height:210px!important;}
  .single-runner-page.single-capture-active .timing-precision-canvas{min-height:78px;max-height:13svh;}
  .single-runner-page.single-capture-active .single-camera-zoom small,
  .single-runner-page.single-capture-active .single-field-readybar .single-line-hint{display:none;}
  .single-runner-page.single-capture-active .single-start-now{min-height:62px!important;}
}
@media(prefers-reduced-motion:reduce){
  .single-runner-page.single-capture-active .single-start-dock{scroll-behavior:auto;}
}

/* V38.82.42 — group workout planning and Flying Timing field ergonomics */
.group-workout-editor{margin-top:18px;}
.group-workout-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:14px;}
.group-workout-plan{min-width:0;padding:14px;border:1px solid rgba(255,255,255,.25);border-radius:16px;background:rgba(255,255,255,.07);display:grid;gap:12px;}
.group-workout-plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.group-workout-plan-head>div{min-width:0;}
.group-workout-plan-head h3,.group-workout-plan-head p{overflow-wrap:anywhere;}
.group-workout-blocks{display:grid;gap:10px;}
.group-workout-plan .workout-block{margin:0;}
.tm-cohort-workout-plan{display:grid;gap:8px;margin:10px 0 12px;padding:12px;border:1px solid var(--border,#dfe5eb);border-radius:14px;background:var(--surface-subtle,#f6f8fa);}
.tm-cohort-workout-kicker{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted,#536171);}
.tm-cohort-workout-blocks{margin:0;padding-left:20px;display:grid;gap:6px;}
.tm-cohort-workout-blocks li{display:grid;gap:1px;}
.tm-cohort-workout-blocks small,.tm-cohort-workout-stop{color:var(--text-muted,#536171);overflow-wrap:anywhere;}

.flying-capture-hud{position:absolute;z-index:7;inset:10px 10px auto 10px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;pointer-events:none;}
.flying-capture-hud>*{min-width:0;padding:6px 9px;border-radius:999px;background:rgba(0,0,0,.68);color:#fff;font-size:.78rem;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.flying-capture-hud strong{font-size:.82rem;}
.flying-precision-selector{display:flex;gap:7px;align-items:center;flex-wrap:wrap;}
.flying-precision-selector strong{margin-right:4px;}
.flying-precision-selector .btn{min-width:48px;min-height:40px;padding:7px 10px;}
.flying-precision-selector .btn[aria-pressed="true"]{background:var(--navy,#17212c);border-color:var(--navy,#17212c);color:#fff;}
.flying-start-dock{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,auto);gap:12px;align-items:center;padding:12px;background:var(--surface,#fff);border-top:1px solid var(--border,#dfe5eb);}
.flying-start-dock>div{display:grid;gap:2px;min-width:0;}
.flying-start-dock span{font-size:.8rem;color:var(--text-muted,#536171);overflow-wrap:anywhere;}
.flying-start-dock [data-extra-start]{min-height:54px;}
.flying-distance-quick .btn{min-width:72px;}

@media(max-width:720px){
  .group-workout-plans{grid-template-columns:1fr;}
  .group-workout-plan-head{display:grid;grid-template-columns:1fr;}
  .flying-intervals-page.flying-capture-active .flying-capture-shell{
    position:fixed!important;inset:0!important;z-index:10050!important;width:100%!important;height:100vh!important;height:100svh!important;
    max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;background:#07090c!important;scrollbar-gutter:stable both-edges;
  }
  .flying-intervals-page.flying-capture-active .flying-capture-stage{
    position:sticky!important;top:0!important;z-index:12!important;width:100%!important;height:min(49svh,410px)!important;min-height:240px!important;
    max-height:none!important;margin:0!important;border-radius:0!important;background:#07090c!important;box-shadow:0 4px 14px rgba(0,0,0,.34)!important;
  }
  .flying-intervals-page.flying-capture-active .flying-capture-stage video{object-fit:contain!important;}
  .flying-intervals-page.flying-capture-active .flying-camera-tools,
  .flying-intervals-page.flying-capture-active .camera-extra-controls{position:relative;z-index:2;background:var(--surface,#fff);color:var(--text,#17212c);border-radius:0!important;margin:0!important;padding:12px!important;}
  .flying-intervals-page.flying-capture-active .flying-camera-tools{border-top:1px solid var(--border,#dfe5eb);}
  .flying-intervals-page.flying-capture-active .flying-plane-controls{grid-template-columns:1fr!important;gap:10px!important;}
  .flying-intervals-page.flying-capture-active .flying-plane-magnifier{max-width:none!important;min-height:88px!important;max-height:14svh!important;}
  .flying-intervals-page.flying-capture-active .flying-start-dock{
    position:sticky!important;bottom:0!important;z-index:18!important;grid-template-columns:1fr!important;padding:10px 12px calc(10px + env(safe-area-inset-bottom))!important;
    background:rgba(255,255,255,.98)!important;box-shadow:0 -6px 18px rgba(0,0,0,.2)!important;
  }
  .flying-intervals-page.flying-capture-active .flying-start-dock>div{display:flex;align-items:center;justify-content:space-between;gap:8px;}
  .flying-intervals-page.flying-capture-active .flying-start-dock>div span{display:none;}
  .flying-intervals-page.flying-capture-active .flying-start-dock [data-extra-start]{width:100%!important;min-height:68px!important;font-size:1.15rem!important;}
  .flying-capture-hud{grid-template-columns:minmax(0,1fr) auto;}
  .flying-capture-hud [data-flying-hud-athlete]{grid-column:1/-1;justify-self:start;max-width:72vw;}
  .flying-precision-selector .btn{flex:1 1 0;min-width:0;min-height:44px;}
  .flying-distance-quick{display:grid!important;grid-template-columns:repeat(3,1fr)!important;}
  .flying-distance-quick .btn{min-width:0;width:100%;}
}
@media(max-width:440px){
  .flying-intervals-page.flying-capture-active .flying-capture-stage{height:min(45svh,340px)!important;min-height:220px!important;}
  .flying-intervals-page.flying-capture-active .flying-plane-magnifier{min-height:78px!important;max-height:12svh!important;}
}
.flying-capture-exit{pointer-events:auto;width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font-size:1.45rem;font-weight:800;line-height:1;cursor:pointer;}
@media(max-width:720px){.flying-capture-hud{grid-template-columns:minmax(0,1fr) auto auto auto!important;}.flying-capture-hud [data-flying-hud-athlete]{grid-column:auto!important;max-width:34vw!important;}.flying-capture-exit{width:48px;height:48px;}}
@media(max-width:480px){.flying-capture-hud{grid-template-columns:minmax(0,1fr) auto auto!important;}.flying-capture-hud [data-flying-hud-athlete]{grid-column:1/3!important;justify-self:start;max-width:62vw!important;}.flying-capture-exit{grid-column:3;grid-row:1/3;align-self:start;}}

/* V38.82.44 — coach-operated on-screen stopwatch for Manual Athlete Result */
.manual-stopwatch-card{display:grid;gap:14px;padding:16px;border:1px solid var(--border,#dfe5eb);border-radius:16px;background:var(--surface,#fff);min-width:0;max-width:100%;}
.manual-stopwatch-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;min-width:0;}
.manual-stopwatch-heading h2{margin:2px 0 0;font-size:clamp(1rem,2.7vw,1.2rem);}
.manual-stopwatch-display{font:700 clamp(2.25rem,9vw,4rem)/1 ui-monospace,SFMono-Regular,Roboto Mono,Consolas,monospace;letter-spacing:-.04em;white-space:nowrap;font-variant-numeric:tabular-nums;}
.manual-stopwatch-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.manual-stopwatch-actions>.btn{min-height:56px;width:100%;}
.manual-stopwatch-status{margin:0;}
@media(max-width:680px){.manual-stopwatch-heading{align-items:flex-start;flex-direction:column}.manual-stopwatch-display{font-size:clamp(2.75rem,16vw,4.5rem)}.manual-stopwatch-actions{grid-template-columns:1fr 1fr}.manual-stopwatch-actions>[data-manual-stopwatch-reset]{grid-column:1/-1}}
/* V38.82.47 — Predictive Local Performance & Information Hierarchy */
.tm-coach-review-surface{display:grid;gap:16px;margin-top:18px;min-width:0}.tm-coach-review-surface>*{margin:0!important}.tm-coach-context{margin-top:0!important}.tm-results-evidence-drawer{display:block;min-width:0;margin-top:16px}.tm-results-evidence-body{display:grid;gap:16px;min-width:0}.results-filter-surface{display:grid;gap:10px;min-width:0}.results-primary-filters{margin:0}.results-more-filters{margin:0}.results-more-filters .experience-filter-bar{margin:0}.athlete-edit-panel{display:grid;gap:14px}.athlete-edit-panel>.section-head{margin:0}.tm-disclosure-chevron{display:inline-grid!important;place-items:center;font-size:18px!important;line-height:1!important;transition:transform .15s ease!important;transform:none!important}.experience-disclosure[open]>summary>.tm-disclosure-chevron,.tm-results-competitive-drawer[open]>summary>.tm-disclosure-chevron,.tm-athlete-section-group[open]>summary>.tm-disclosure-chevron,.experience-admin-details[open]>summary>.tm-disclosure-chevron,.practice-archive[open]>summary>.tm-disclosure-chevron{transform:rotate(180deg)!important}.results-filter-drawer>summary::after{content:"⌄"!important;font-size:1.05rem!important;transition:transform .15s ease}.results-filter-drawer[open]>summary::after{content:"⌄"!important;transform:rotate(180deg)}
@media(max-width:720px){.tm-coach-review-surface{gap:12px}.results-primary-filters{grid-template-columns:minmax(0,1fr)!important}.results-primary-filters>.btn{width:100%}.tm-results-evidence-body{gap:12px}}

/* V38.82.51 — Training cohorts are intrinsic-height working groups, never stretched placeholders. */
.tm-training-group-grid,
.tm-training-cohort-list { align-items: start !important; grid-auto-rows: max-content !important; }
.tm-training-family,
.tm-training-cohort-card { height: auto !important; align-self: start !important; }
.tm-training-individual-placements {
  margin-top: 14px;
  border: 1px solid var(--border, #d9e0e7);
  border-radius: 14px;
  background: var(--surface, #fff);
  padding: 14px;
}
.tm-training-individual-head { display: grid; gap: 4px; margin-bottom: 8px; }
.tm-training-individual-head small { overflow-wrap: anywhere; }
.tm-training-individual-list { display: grid; gap: 8px; }
.tm-training-individual-row {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 12px;
  align-items: start;
  padding: 9px 0;
  border-top: 1px solid color-mix(in srgb, var(--border, #d9e0e7) 70%, transparent);
  min-width: 0;
}
.tm-training-individual-row:first-child { border-top: 0; }
.tm-training-individual-row > span { min-width: 0; }

@media (max-width: 680px) {
  .tm-training-family { border-radius: 14px !important; }
  .tm-training-cohort-list { grid-template-columns: minmax(0, 1fr) !important; gap: 8px !important; padding: 8px !important; }
  .tm-training-cohort-card { padding: 10px 12px !important; gap: 8px !important; }
  .tm-training-cohort-head small { font-size: .82rem; line-height: 1.35; }
  .tm-training-athlete-row,
  .tm-training-individual-row { grid-template-columns: minmax(0, 1fr) !important; gap: 6px !important; padding: 8px 0 !important; }
  .tm-training-individual-placements { margin-top: 10px; padding: 10px 12px; }
}


/* V38.82.52 — Training Group responsive composition hardening.
   Keep identity, metadata, marks and ability rationale in explicit blocks so 320–390px phones
   never squeeze explanatory copy into a narrow side column or stretch short cards to match tall siblings. */
.tm-training-group-grid,
.tm-training-cohort-list{
  align-items:start!important;
  align-content:start!important;
  grid-auto-rows:max-content!important;
}
.tm-training-family,
.tm-training-cohort-card{
  height:auto!important;
  min-height:0!important;
  align-self:start!important;
}
.tm-training-cohort-card{align-content:start!important;}
.tm-training-athlete-list,
.tm-training-individual-list{min-width:0;}
.tm-training-athlete-row,
.tm-training-individual-row{
  min-width:0;
  max-width:100%;
  height:auto!important;
  align-items:start!important;
}
.tm-training-athlete-main{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:6px;
  min-width:0;
  max-width:100%;
}
.tm-training-athlete-meta{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:3px;
  min-width:0;
  max-width:100%;
}
.tm-training-athlete-meta small,
.tm-training-ability-note{
  display:block;
  margin:0!important;
  min-width:0;
  max-width:100%;
  line-height:1.45;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
.tm-training-athlete-summary{color:var(--text-muted,#536171);}
.tm-training-athlete-recorded,
.tm-training-athlete-focus{color:var(--text-muted,#536171);}
.tm-training-athlete-evidence{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:6px!important;
  min-width:0;
  max-width:100%;
  align-content:start!important;
  justify-items:stretch;
  text-align:left!important;
}
.tm-training-mark-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-width:0;
  max-width:100%;
}
.tm-training-mark{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  min-height:30px;
  padding:4px 8px;
  border:1px solid var(--border,#d9e0e7);
  border-radius:999px;
  background:var(--surface,#fff);
  font-weight:800;
  font-variant-numeric:tabular-nums;
  line-height:1.25;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
.tm-training-evidence-primary{
  display:block;
  min-width:0;
  overflow-wrap:break-word;
  word-break:normal;
}
.tm-training-individual-row{
  border:1px solid var(--border,#d9e0e7)!important;
  border-radius:12px;
  padding:12px!important;
  background:var(--surface-raised,#fafbfc);
}
.tm-training-individual-row+.tm-training-individual-row{margin-top:0;}
.tm-training-individual-row:first-child{border-top:1px solid var(--border,#d9e0e7)!important;}

@media (min-width: 681px){
  .tm-training-athlete-row,
  .tm-training-individual-row{
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;
    gap:16px!important;
  }
  .tm-training-athlete-evidence{justify-items:end;text-align:right!important;}
  .tm-training-mark-list{justify-content:flex-end;}
  .tm-training-ability-note{max-width:34ch;}
}

@media (max-width: 680px){
  .tm-training-family>header{padding:12px!important;}
  .tm-training-cohort-list{padding:8px!important;gap:10px!important;}
  .tm-training-cohort-card{padding:12px!important;gap:10px!important;}
  .tm-training-athlete-list{gap:0!important;}
  .tm-training-athlete-row,
  .tm-training-individual-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    padding:12px 0!important;
  }
  .tm-training-individual-row{padding:12px!important;}
  .tm-training-athlete-evidence{
    grid-template-columns:minmax(0,1fr)!important;
    justify-items:start!important;
    text-align:left!important;
  }
  .tm-training-mark-list{justify-content:flex-start;}
  .tm-training-mark{border-radius:10px;}
  .tm-training-athlete-meta{gap:4px;}
  .tm-athlete-name-link{font-size:1rem;line-height:1.3;}
}

@media (max-width: 390px){
  .tm-training-group-grid{gap:12px!important;}
  .tm-training-family{border-radius:12px!important;}
  .tm-training-cohort-list{padding:6px!important;}
  .tm-training-cohort-card{padding:10px!important;}
  .tm-training-mark-list{display:grid;grid-template-columns:minmax(0,1fr);width:100%;}
  .tm-training-mark{width:100%;justify-content:flex-start;}
  .tm-training-individual-placements{padding:10px!important;}
}

/* V38.82.53 — Training Group composition is deliberately single-column at every width.
   This removes the final evidence/right-column squeeze entirely instead of relying on viewport
   overrides to undo it. Each athlete reads: name -> facts -> comparable marks -> ability match. */
.tm-training-athlete-row,
.tm-training-individual-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
}
.tm-training-athlete-row{padding:14px 12px!important;}
.tm-training-athlete-main,
.tm-training-athlete-meta,
.tm-training-athlete-evidence{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  min-width:0!important;
  max-width:100%!important;
  text-align:left!important;
  justify-items:stretch!important;
}
.tm-training-athlete-main{gap:9px!important;}
.tm-training-athlete-meta{gap:7px!important;}
.tm-training-meta-line{
  display:grid!important;
  grid-template-columns:minmax(86px,max-content) minmax(0,1fr)!important;
  column-gap:10px!important;
  row-gap:2px!important;
  align-items:start!important;
  min-width:0!important;
}
.tm-training-meta-label,
.tm-training-evidence-label{
  display:block!important;
  color:var(--text-muted,#536171)!important;
  font-size:.72rem!important;
  font-weight:800!important;
  letter-spacing:.035em!important;
  line-height:1.3!important;
  text-transform:uppercase!important;
}
.tm-training-meta-value{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:var(--text,#17212c)!important;
  line-height:1.45!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.tm-training-athlete-evidence{
  gap:10px!important;
  padding-top:10px!important;
  border-top:1px solid var(--border,#d9e0e7)!important;
}
.tm-training-evidence-block{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:6px!important;
  min-width:0!important;
  max-width:100%!important;
}
.tm-training-ability-block{
  padding:9px 10px!important;
  border-left:3px solid var(--info,#174a7e)!important;
  border-radius:8px!important;
  background:var(--info-soft,#eaf2fa)!important;
}
.tm-training-ability-note{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  color:var(--text,#17212c)!important;
  font-size:.86rem!important;
  line-height:1.5!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.tm-training-mark-list{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
}
.tm-training-mark{
  flex:0 1 auto!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.tm-training-individual-row{
  padding:14px!important;
  background:var(--surface-raised,#fafbfc)!important;
}
@media(max-width:520px){
  .tm-training-cohort-card{padding:10px!important;}
  .tm-training-athlete-row{padding:13px 8px!important;gap:11px!important;}
  .tm-training-meta-line{grid-template-columns:minmax(0,1fr)!important;gap:2px!important;}
  .tm-training-meta-label{font-size:.68rem!important;}
  .tm-training-mark-list{display:grid!important;grid-template-columns:minmax(0,1fr)!important;}
  .tm-training-mark{width:100%!important;justify-content:flex-start!important;border-radius:9px!important;}
  .tm-training-ability-block{padding:9px!important;}
  .tm-training-individual-placements{padding:9px!important;}
}

/* V38.82.53 — cached-first mobile Home shell. The skeleton never captures pointer events and
   has no fixed height, so navigation remains usable while richer local context hydrates. */
.tm-home-deferred-shell{min-height:0!important;display:grid;gap:12px;align-content:start;}
.tm-home-deferred-bars{display:grid;gap:8px;max-width:34rem;}
.tm-home-deferred-bars span{display:block;height:10px;border-radius:999px;background:var(--surface-muted,#f0f3f6);}
.tm-home-deferred-bars span:nth-child(2){width:82%;}.tm-home-deferred-bars span:nth-child(3){width:61%;}
.boot-quick-nav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 8px}.boot-quick-nav form{margin:0}.boot-quick-nav button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid var(--border,#d9e0e7);border-radius:10px;background:var(--surface,#fff);color:var(--text,#17212c);font-weight:750;text-decoration:none}.boot-quick-nav button:focus-visible{outline:3px solid var(--action,#b63225);outline-offset:2px}
