/* Shared FVT finishing layer: white, charcoal and tour green. */
body.fvt-body { --fvt-primary:#111820; --fvt-accent:#52b600; --fvt-teal:#3d9500; --fvt-text:#17212b; --page-text:#17212b; }
body.fvt-body img { max-width:100%; }
body.fvt-body :is(.content-grid,.prospects-panel,.events-panel,.prospect-grid) { min-width:0; max-width:100%; }
body.fvt-body :is(input,select,textarea,button) { max-width:100%; }
body.fvt-body :is(.card-body,.container,.container-xl,.row > *, .college-footer-grid > *) { min-width:0; }
body.fvt-body :is(p,td,dd,.alert,.card-body) { overflow-wrap:anywhere; }
body.fvt-body .table-responsive { overflow-x:auto; overscroll-behavior-x:contain; }
body.fvt-body :is(.form-control,.form-select) { color:#17212b!important; background-color:#fff!important; border-color:#a8b3bb!important; }
body.fvt-body :is(.form-control,.form-select)::placeholder { color:#63717c!important; opacity:1; }
body.fvt-body :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #267200!important; outline-offset:3px; }
body.fvt-body :is(button,.btn):disabled { cursor:not-allowed; opacity:.55; }
body.fvt-body .college-footer .college-footer-brand p { color:#43515c!important; -webkit-text-fill-color:#43515c!important; }
body.fvt-body .college-footer :is(.college-footer-heading,.college-footer-links a) { -webkit-text-fill-color:currentColor; }
/* Keep secondary links in the document, never on top of a player's photo or a form. */
body.fvt-body .fvt-floating-results { position:static!important; transform:none!important; display:flex!important; width:max-content!important; max-width:calc(100% - 32px)!important; margin:16px auto!important; padding:12px 20px!important; gap:8px; }
body.fvt-body .whatsapp-float { position:static!important; width:max-content!important; max-width:calc(100% - 32px)!important; margin:10px 16px 10px auto!important; transform:none!important; border-radius:8px!important; }
body.fvt-body :is(.roster-player-hero,.claim-hero) { background:#111820!important; border-color:#52b600!important; }
body.fvt-body :is(.roster-player-card,.roster-player-hero) { border-top-color:#52b600!important; }
body.fvt-body :is(.roster-claim-btn,.roster-player-kicker) { background:#3d9500!important; border-color:#3d9500!important; color:#fff!important; }
@media(max-width:767px) {
  body.fvt-body .content-grid { grid-template-columns:minmax(0,1fr)!important; }
  body.fvt-body { padding-bottom:calc(76px + env(safe-area-inset-bottom))!important; }
  body.fvt-body :is(input,select,textarea) { font-size:16px!important; }
  body.fvt-body .mobile-cta-bar { padding-bottom:env(safe-area-inset-bottom); }
  body.fvt-body .mobile-cta-bar a { min-height:44px; display:flex; align-items:center; justify-content:center; }
  body.fvt-body :is(.pagination,.nav-tabs) { flex-wrap:wrap; gap:4px; }
  body.fvt-body :is(h1,h2,h3) { overflow-wrap:anywhere; }
}
@media(prefers-reduced-motion:reduce) {
  body.fvt-body *,body.fvt-body *::before,body.fvt-body *::after { scroll-behavior:auto!important; animation-duration:.01ms!important; transition-duration:.01ms!important; }
}

/* 2026-09: consistent contrast on bright green actions, including visited links. */
body.fvt-body :is(.btn-primary,.btn-success,.btn-warning,.btn-accent,.btn-fvt,.fvt-btn-green,.create-btn,.top-create,.college-footer-cta,.fvt-floating-results,.cta-primary,.contact-btn,.roster-claim-btn,.cp-button):is(a,button,input),
body.fvt-body .page-item.active .page-link {
  background:#52b600!important; border-color:#52b600!important;
  color:#111820!important; -webkit-text-fill-color:#111820!important; text-shadow:none!important;
}
body.fvt-body .college-topbar a:not(.top-create),
body.fvt-body .college-news .news-link { color:#286600!important; -webkit-text-fill-color:currentColor!important; }
body.fvt-body .cp-hero { background:#111820!important; }
body.fvt-body .cp-hero :is(h1,h2,p) { color:#f1f5f8!important; -webkit-text-fill-color:currentColor!important; }
body.fvt-body .cp-hero .cp-kicker { color:#a2dc65!important; }
body.fvt-body .cp-card h2 { color:#111820!important; }
body.fvt-body .hub-hero :is(h1,.lead) { color:#17212b!important; -webkit-text-fill-color:currentColor!important; }
body.fvt-body .hub-hero :is(.btn-primary,.btn-secondary) { color:#111820!important; -webkit-text-fill-color:#111820!important; background:#52b600!important; }
body.fvt-body .leaflet-control-attribution a { color:#215700!important; }
body.fvt-body .mobile-cta-bar a { text-shadow:none!important; }

body.fvt-body .mobile-cta-bar a.cta.cta-primary {color:#111820!important;-webkit-text-fill-color:#111820!important;background:#52b600!important}
body.fvt-body .mobile-cta-bar a.cta:not(.cta-primary) {color:#fff!important;-webkit-text-fill-color:#fff!important;background:#111820!important}

/* Match the specificity of the old #main theme rules, rather than losing to them. */
body.fvt-body main#main :is(.btn-primary,.btn-success,.btn-warning,.btn-accent,.btn-fvt,.college-btn-green,.fvt-btn-green,.contact-btn) {
  background:#52b600!important;border-color:#52b600!important;color:#111820!important;-webkit-text-fill-color:#111820!important;text-shadow:none!important;
}
body.fvt-body main#main .page-item.active .page-link {background:#52b600!important;color:#111820!important;-webkit-text-fill-color:#111820!important}
body.fvt-body main#main .hub-hero :is(h1,.lead) {color:#17212b!important;-webkit-text-fill-color:#17212b!important}
body.fvt-body main#main :is(.section-heading a,.event-row a,.hub-inline-link) {color:#286600!important;-webkit-text-fill-color:#286600!important}
body.fvt-body main#main .metric-head {background:#111820!important;color:#fff!important}
body.fvt-body main#main .metric-head :is(h2,h3) {color:#fff!important;-webkit-text-fill-color:#fff!important}
body.fvt-body main#main .region-page :is(.table a,.region-side-card h2,.region-side-card h2 span,.region-side-card h3) {color:#286600!important;-webkit-text-fill-color:#286600!important}
body.fvt-body main#main .region-page .region-btn.active {background:#52b600!important;color:#111820!important;-webkit-text-fill-color:#111820!important}
body.fvt-body main#main .profile-submitted-actions .primary {background:#52b600!important;border-color:#52b600!important;color:#111820!important;-webkit-text-fill-color:#111820!important}
body.fvt-body main#main .tv2-page .text-light {color:#52616e!important;-webkit-text-fill-color:#52616e!important}
