/* GamingSecrets V31.54 — socle d’accessibilité public. */
.gs-visually-hidden{
 position:absolute!important;
 width:1px!important;
 height:1px!important;
 padding:0!important;
 margin:-1px!important;
 overflow:hidden!important;
 clip:rect(0,0,0,0)!important;
 white-space:nowrap!important;
 border:0!important;
}


:where(a,button,input,select,textarea,summary,[tabindex]:not([tabindex="-1"])):focus-visible{
 outline:3px solid #ffd166!important;
 outline-offset:3px!important;
 box-shadow:0 0 0 2px rgba(8,8,8,.92)!important;
}

/* Les textes fonctionnels restent lisibles sur les fonds noirs du Dojo et du Temple. */
.gs-dojo-champions :is(.gs-shield-note,.gs-shield-mode-note,.gs-pc-help,.gs-ev-help,.gs-pc-footer-note p,.gs-pcdex-help),
.gs-halo-temple :is(.gs-halo-section-head p,.gs-halo-section-empty,.gs-halo-localization-note){
 color:rgba(255,255,255,.76)!important;
}
.gs-dojo-champions :is(
 .gs-pc-modebar button em,
 .gs-pc-form-grid label span,
 .gs-ev-grid label span,
 .gs-pc-current small,
 .gs-stat-meta,
 .gs-surpass-head small,
 .gs-empty-result,
 .gs-shield-pick span,
 .gs-shield-control label span,
 .gs-shield-mini-card small,
 .gs-shield-list p,
 .gs-pill-note
){color:rgba(255,255,255,.74)!important;}

/* Les aides du menu mobile restent secondaires sans devenir illisibles. */
.gs-display-setting-row>div>small,
.gs-display-settings-panel>p,
.gs-mm-search small,
.gs-mm-primary-grid small,
.gs-mobile-menu .gs-mm-section-lbl,
.gs-music-launcher-copy small{
 color:rgba(255,255,255,.72)!important;
}

/* Pied de page : les anciens gris (#444/#555) étaient trop faibles sur #0a0a0a. */
.gs-footer-desc,
.gs-footer-col a,
.gs-footer-bottom,
.gs-footer-ai-note{color:#999!important;}
.gs-footer-col h2,
.gs-footer-ai-note a{color:#b0b0b0!important;}
.article-image-credit{color:#999!important;}
.gs-source-popup-label{color:#ff7f91!important;}
.gs-dojo-champions :is(input,select)::placeholder,
.gs-halo-temple :is(input,select)::placeholder{color:rgba(255,255,255,.66);opacity:1;}

.gs-pc-suggestion-active,
.pc-suggestions [role="option"][aria-selected="true"],
.gs-shield-suggestions [role="option"][aria-selected="true"]{
 background:#5b1520!important;
 color:#fff!important;
}

body.gs-modal-open{overflow:hidden!important;}

@media (prefers-reduced-motion:reduce){
 html:focus-within{scroll-behavior:auto!important;}
 *,*::before,*::after{
  animation-duration:.01ms!important;
  animation-iteration-count:1!important;
  scroll-behavior:auto!important;
  transition-duration:.01ms!important;
 }
}

@media (forced-colors:active){
 :where(a,button,input,select,textarea,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid Highlight!important;}
}


/* V31.57.14 — le lien d’évitement reste un outil clavier et ne doit pas
   persister visuellement après un tap sur mobile. */
@media (hover:none) and (pointer:coarse){
 .gs-skip-link:focus:not(:focus-visible){transform:translateY(-180%);}
}

/* V31.57.17 — le lien jaune a été retiré du header. Cette règle neutralise aussi
   une ancienne copie HTML éventuellement encore servie par un cache. */
.gs-skip-link{display:none!important}
