/* GTGF v17.29 — Cascade Authority
 * One focused current layer. Older component-specific rules remain authoritative when
 * they already express a correct light/dark contract; this file only owns known weak spots.
 */
body.gtgf-v14.gtgf-v1729-cascade{
  --ca29-dark:#f5f4f0;
  --ca29-dark-copy:#d7ddd7;
  --ca29-dark-soft:#c3cac4;
  --ca29-light:#111214;
  --ca29-light-copy:#4f4a43;
  --ca29-orange-ink:#963600;
  --ca29-orange-button:#111412;
}

/* ORANGE ACTIONS — only controls that actually use the bright orange action surface. */
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(
  .v14-btn--orange,.button--orange,.button--primary,
  .planner-readiness__actions button,
  .v1563-detail-placeholder button,
  .v1569-form-foot button:not(:disabled),
  .planner-live.is-running .planner-live__controls button.is-primary,
  .planner-live__rpe button.is-selected,
  .gtgf-community-compose__bottom button,
  .gtgf-week-checkin button,
  .gtgf-sharing-form button
){color:var(--ca29-orange-button)!important;-webkit-text-fill-color:var(--ca29-orange-button)!important;opacity:1!important}

/* HOME — explicit surfaces only; no generic section--paper / section--black takeover. */
html body.home.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-home13__pillars :is(h2,h3,strong),
html body.home.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-home13__discover .gtgf-home13__head :is(h2,h3,strong){color:var(--ca29-light)!important;-webkit-text-fill-color:var(--ca29-light)!important}
html body.home.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-home13__pillars :is(span,small),
html body.home.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-home13__discover .gtgf-home13__head>span{color:#55514b!important;-webkit-text-fill-color:#55514b!important;opacity:1!important}
html body.home.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-home13__head>p{color:#a43b08!important;-webkit-text-fill-color:#a43b08!important}
html body.home.gtgf-v14.gtgf-v1729-cascade #main-content :is(.gtgf-home13__flow-copy>span,.gtgf-home13__steps small,.gtgf-home13__resume-inner p){color:var(--ca29-dark-copy)!important;-webkit-text-fill-color:var(--ca29-dark-copy)!important;opacity:1!important}

/* TRAINING / LIVE WORKOUT. */
html body.gtgf-v14.gtgf-v1729-cascade #main-content .planner-live__controls button.is-quiet{color:#665f59!important;-webkit-text-fill-color:#665f59!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.planner-live.is-running .planner-live__controls button.is-primary,.planner-live__rpe button.is-selected,.gtgf-term-help:hover,.gtgf-term-help:focus-visible){color:var(--ca29-orange-button)!important;-webkit-text-fill-color:var(--ca29-orange-button)!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content .planner-form :is(input,select,textarea):disabled{color:#47433e!important;-webkit-text-fill-color:#47433e!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.planner-live__metrics small,.planner-live-step>small,.planner-live__privacy,.planner-workout-focus-strip small,.planner-workout-depth__grid span){color:#5e5953!important;-webkit-text-fill-color:#5e5953!important;opacity:1!important}

/* EVENTS — exact dark event-browser contract. */
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.v1587-events-head__meta,.v1587-filter-count span,.v1587-map-disclosure>summary small,.v1587-event-date small,.v1587-detail-grid small,.v1587-detail-actions small){color:#bfc6bf!important;-webkit-text-fill-color:#bfc6bf!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.v1587-sport-filter button small,.v1587-filter-bar input::placeholder){color:#aeb6af!important;-webkit-text-fill-color:#aeb6af!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.v1587-event-meta,.v1587-event-more>summary,.v1587-reset){color:#c7cdc7!important;-webkit-text-fill-color:#c7cdc7!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content .v1587-event-details .event-community :is(p,li,small,span),
html body.gtgf-v14.gtgf-v1729-cascade #main-content .v1587-event-details>p,
html body.gtgf-v14.gtgf-v1729-cascade #main-content .v1587-event-details .event-card__summary{color:#d9ded8!important;-webkit-text-fill-color:#d9ded8!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content .v1587-event-details :is(.v1587-detail-actions small,.v1587-detail-grid small){color:#c5cbc4!important;-webkit-text-fill-color:#c5cbc4!important;opacity:1!important}

/* KNOWLEDGE — exact current command/editorial surfaces, high enough to beat old version chains. */
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1705-knowledge #main-content.v1696-knowledge .v159975-editorial-pick__main>small{color:#d2d5d0!important;-webkit-text-fill-color:#d2d5d0!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content.v1696-knowledge .v169600-now__session span{color:#c6cbc5!important;-webkit-text-fill-color:#c6cbc5!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content.v1696-knowledge :is(.v169600-now__session small,.v169600-now__article>small,.v169600-now>footer){color:#c9cec8!important;-webkit-text-fill-color:#c9cec8!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content.v1696-knowledge :is(.v169600-questions span,.v169600-recent__grid b){color:#9d3908!important;-webkit-text-fill-color:#9d3908!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content.v1696-knowledge .v156-library-head>p{color:#4f4a43!important;-webkit-text-fill-color:#4f4a43!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.v159975-editorial-pick__label small,.v159975-editorial-pick__quick i,.v159975-article-page .v159975-article-breadcrumb a,.v159975-read-intro span,.v159975-read-intro small,.v159975-article-page details>summary){color:#c6ccc6!important;-webkit-text-fill-color:#c6ccc6!important;opacity:1!important}

/* PARTNERS. */
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__position :is(h2,h3,strong),
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__models :is(h2,h3,strong),
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__example :is(h2,h3,strong),
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__process :is(h2,h3,strong){color:#0b0c0d!important;-webkit-text-fill-color:#0b0c0d!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__position :is(p,li),
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__models :is(p,li),
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__example :is(p,li),
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__process :is(p,li){color:#55514b!important;-webkit-text-fill-color:#55514b!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content .gtgf-partners14__value-grid article>span{color:#6a645c!important;-webkit-text-fill-color:#6a645c!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.gtgf-partners14__contact-copy>small,.gtgf-partners14__form>small){color:#bfc4bd!important;-webkit-text-fill-color:#bfc4bd!important;opacity:1!important}

/* MIJN GTGF / ANALYSIS. */
html body.gtgf-v14.gtgf-v1729-cascade #main-content .v159965-dashboard-nav a{color:#b9c0ba!important;-webkit-text-fill-color:#b9c0ba!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content .v159965-dashboard-nav a.is-active{color:#fff!important;-webkit-text-fill-color:#fff!important}
body.gtgf-v14.gtgf-v1729-cascade .v14-member-app{--v1582-muted-2:#adb5ae!important}
body.gtgf-v14.gtgf-v1729-cascade .v159942-hub{--hub-muted-2:#adb5ae!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-mijn-gtgf-app #main-content :is(.v159964-nav-label,.v159964-nav-icon,.v159964-nav-usercopy small,.v159964-nav-chevron){color:#a9b0aa!important;-webkit-text-fill-color:#a9b0aa!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-mijn-gtgf-app #main-content .v159964-nav-link{color:#b8beb8!important;-webkit-text-fill-color:#b8beb8!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.v171600-rail span,.v171600-progress span){color:#aeb5af!important;-webkit-text-fill-color:#aeb5af!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.v171600-rail small,.v171600-progress small){color:#c2c8c1!important;-webkit-text-fill-color:#c2c8c1!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1709-curves #main-content :is(.v170900-axis,.v170900-chart-card header small,.v170900-series-card>header span,.v170900-series-card__facts small,.v170900-series-card>footer,.v170900-capacity>header small,.v170900-capacity-grid small,.v170900-capacity-note,.v170900-note,.v170900-keyline>header small,.v170900-keyline-grid time,.v170900-keyline-grid small){color:#aab4ac!important;-webkit-text-fill-color:#aab4ac!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1708-analysis #main-content :is(.v170800-fitfacts small,.v170800-note){color:#aab4ac!important;-webkit-text-fill-color:#aab4ac!important}

/* NEW WEEK / MIDWEEK. */
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1722-new-week-start #main-content :is(.v172200-start__head>div:first-child>span,.v172200-start__focus>span){color:#9d3908!important;-webkit-text-fill-color:#9d3908!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1722-new-week-start #main-content :is(.v172200-start__focus>small,.v172200-start__metrics span,.v172200-start__metrics small,.v172200-start__keys a>span,.v172200-start__keys small,.v172200-start__keys em,.v172200-start__foot span){color:#535a55!important;-webkit-text-fill-color:#535a55!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1723-midweek-reality #main-content :is(.v172300-reality__decision>span,.v172300-reality__key-grid a>span){color:#9d3908!important;-webkit-text-fill-color:#9d3908!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1723-midweek-reality #main-content :is(.v172300-reality__metrics span,.v172300-reality__metrics small,.v172300-reality__keys-head small,.v172300-reality__key-grid small,.v172300-reality__foot p){color:#555d57!important;-webkit-text-fill-color:#555d57!important}

/* RACE JOURNEY. */
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1724-race-event-journey #main-content :is(.v172400-event-journey__shell>header span,.v172400-result-form header span){color:#963600!important;-webkit-text-fill-color:#963600!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1724-race-event-journey #main-content :is(.v172400-event-action a,.v172400-post-race footer a,.v172400-dashboard-journey a,.v172400-result-form footer button){color:#111412!important;-webkit-text-fill-color:#111412!important}
html body.gtgf-v14.gtgf-v1729-cascade.gtgf-v1724-race-event-journey #main-content :is(.v172400-guardrail,.v172400-time label small,.v172400-time b,.v172400-result-form footer small){color:#59615b!important;-webkit-text-fill-color:#59615b!important}

/* EARN THE START LINE. */
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.v1591-story-arc__chapters .is-active p,.v1591-story-arc__chapters .is-active small,.v1591-partner-direct,.v1591-partner-status span,.v1591-current-partner__copy>span,.v1591-current-partner__text,.v1591-open-partners__intro p,.v1591-open-partners__grid p,.v1591-partner-value__list small,.v1591-partner-cta p){color:#c7ccc6!important;-webkit-text-fill-color:#c7ccc6!important;opacity:1!important}
html body.gtgf-v14.gtgf-v1729-cascade #main-content .v1591-open-partners__grid span{color:#aeb4ae!important;-webkit-text-fill-color:#aeb4ae!important;opacity:1!important}

/* PERFORMANCE WEEK — do not compete with the existing v16.54 calendar surface contract.
 * Only non-calendar support copy is owned here. */
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.booking-season-state.is-closed,.gtgf-private-strava-sync__policy,.v1584-club-onboarding__steps span){color:#56514b!important;-webkit-text-fill-color:#56514b!important;opacity:1!important}

/* SESSION / RACE MEMORY. */
html body.gtgf-v14.gtgf-v1729-cascade #main-content :is(.v1569-race-review-mini span,.v1569-race-memory>p){color:#aeb5ae!important;-webkit-text-fill-color:#aeb5ae!important;opacity:1!important}
