/* GamingSecrets V31.44 — Mode 4K automatique sur écran UHD, avec commande manuelle prioritaire.
 * La détection de l’écran reste locale ; seuls les choix manuels sont conservés dans localStorage.
 * Sous 1600px, il n'altère pas la mise en page afin de protéger mobile/tablette.
 */
.gs-4k-toggle{display:none}
.gs-4k-only-rail{display:none!important}
.gs-context-4k-extra{display:none!important}

@media (min-width:1600px){
 .gs-4k-toggle{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:32px;
  padding:4px 8px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:rgba(255,255,255,.62);
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none;
  transition:border-color .16s ease,background .16s ease,color .16s ease;
 }
 .gs-4k-toggle:hover{border-color:rgba(196,18,48,.42);background:rgba(196,18,48,.07);color:#fff}
 .gs-4k-toggle input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
 .gs-4k-toggle-track{
  position:relative;
  width:28px;
  height:16px;
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:#17171a;
  box-shadow:inset 0 1px 5px rgba(0,0,0,.38);
  transition:background .16s ease,border-color .16s ease;
 }
 .gs-4k-toggle-thumb{
  position:absolute;
  left:2px;
  top:2px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#83838a;
  transition:transform .16s ease,background .16s ease,box-shadow .16s ease;
 }
 .gs-4k-toggle-label{font-size:10px;font-weight:900;letter-spacing:.1em;line-height:1;text-transform:uppercase}
 .gs-4k-toggle input:focus-visible + .gs-4k-toggle-track{outline:2px solid var(--gs-brand-red,#c41230);outline-offset:3px}
 .gs-4k-toggle input:checked + .gs-4k-toggle-track{border-color:rgba(255,72,94,.72);background:rgba(196,18,48,.46)}
 .gs-4k-toggle input:checked + .gs-4k-toggle-track .gs-4k-toggle-thumb{transform:translateX(12px);background:#fff;box-shadow:0 0 10px rgba(255,65,88,.75)}
 .gs-4k-toggle:has(input:checked){border-color:rgba(196,18,48,.44);background:rgba(196,18,48,.10);color:#fff}

 html.gs-4k-mode body{
  --gs-4k-shell:min(94vw,1680px);
  --gs-4k-reading:940px;
  --gs-4k-side:270px;
  --gs-4k-gap:26px;
 }

 /* Le header s'agrandit, mais reste plus mesuré qu'un simple zoom 2x. */
 html.gs-4k-mode .gs-header-main{height:68px;padding:0 30px;gap:8px}
 html.gs-4k-mode .gs-logo{margin-right:24px}
 html.gs-4k-mode .gs-logo-img{height:46px;max-width:275px}
 html.gs-4k-mode .gs-nav-edit a{font-size:15.5px;padding:8px 12px}
 html.gs-4k-mode .gs-dock{gap:6px}
 html.gs-4k-mode .gs-tool{font-size:13.5px;padding:6px 12px}
 html.gs-4k-mode .gs-header-right{gap:9px}
 html.gs-4k-mode .gs-ticker{height:33px;padding-inline:24px}
 html.gs-4k-mode .gs-ticker-lbl{font-size:10.5px}
 html.gs-4k-mode .gs-ticker-item,
 html.gs-4k-mode .gs-ticker-dot{font-size:13px}

 /* Coquilles principales : plus d'espace utile sans étirer la lecture à l'infini. */
 html.gs-4k-mode :is(.gs-hero,.gs-cat-bar,.gs-main-grid,.gs-footer-inner,.gs-premium-hero,.gs-brand-hero-v2749,.gs-brand-pillars,.gs-home-hub,.gs-home-calendar-premium,.gs-featured-article-compact,.gs-home-catalogue-search,.gs-home-live-previews,.gs-ai-home-note){
  width:min(94vw,var(--gs-4k-shell));
  max-width:var(--gs-4k-shell);
 }
 html.gs-4k-mode :is(.gs-app-wrap,.gs-archive-wrapper,.gs-secret-page-wrap,.gs-secret-search-page,.gs-outils-wrap,.gs-calendar-wrap,.gs-trickgs-page,.gs-pc-hub,.gs-page-wrapper,.gs-halo-temple,.pc-builder-page,.gpc-wrap){
  width:min(94vw,var(--gs-4k-shell));
  max-width:var(--gs-4k-shell);
 }
 html.gs-4k-mode .gpc-wrap{max-width:min(92vw,980px)}
 html.gs-4k-mode .pc-builder-page{max-width:min(94vw,1780px)}
 html.gs-4k-mode .builder-wrapper{grid-template-columns:minmax(0,1fr) 430px;gap:26px}
 html.gs-4k-mode .gs-main-grid{grid-template-columns:minmax(0,1fr) 360px;gap:28px;padding:28px}
 html.gs-4k-mode .gs-hero{grid-template-columns:minmax(0,1fr) 430px}
 html.gs-4k-mode .gs-footer-inner{padding-inline:28px}

 /* Articles / guides : colonne lisible + vrais rails latéraux. */
 html.gs-4k-mode .single-article-wrapper.gs-single-4k-capable{
  width:min(96vw,calc(var(--gs-4k-reading) + (2 * var(--gs-4k-side)) + (2 * var(--gs-4k-gap))));
  max-width:none;
  display:grid;
  grid-template-columns:minmax(220px,var(--gs-4k-side)) minmax(0,var(--gs-4k-reading)) minmax(220px,var(--gs-4k-side));
  column-gap:var(--gs-4k-gap);
  align-items:start;
  padding:28px 0 56px;
 }
 html.gs-4k-mode .single-article-wrapper.gs-single-4k-capable>.single-article{grid-column:2;grid-row:1;min-width:0}
 html.gs-4k-mode .single-article-wrapper.gs-single-4k-capable>.gs-context-rail--left,
 html.gs-4k-mode .single-article-wrapper.gs-single-4k-capable>.gs-pc-side-tool--shield{grid-column:1;grid-row:1}
 html.gs-4k-mode .single-article-wrapper.gs-single-4k-capable>.gs-context-rail--right,
 html.gs-4k-mode .single-article-wrapper.gs-single-4k-capable>.gs-pc-side-tool--stat{grid-column:3;grid-row:1}
 html.gs-4k-mode .gs-context-rail{top:124px}
 html.gs-4k-mode .gs-4k-only-rail{display:block!important}
 html:not(.gs-4k-mode) .gs-4k-only-rail{display:none!important}

 html.gs-4k-mode .article-title-main{font-size:clamp(38px,2.15vw,48px);line-height:1.16}
 html.gs-4k-mode .article-excerpt{font-size:19px;line-height:1.65}
 html.gs-4k-mode .article-body{font-size:18px;line-height:1.82}
 html.gs-4k-mode .article-body h2{font-size:29px;margin-top:2.25rem}
 html.gs-4k-mode .article-body h3{font-size:22px}
 html.gs-4k-mode .article-featured-image img{max-height:560px}

 /* Cartes secondaires propres au mode 4K. */
 html.gs-4k-mode .gs-context-4k-extra{display:block!important;margin-top:15px}
 .gs-context-4k-toc{padding:4px 12px 12px}
 .gs-context-4k-toc a{
  display:block;
  padding:8px 3px;
  border-top:1px solid rgba(255,255,255,.065);
  color:#c9c9ce!important;
  font-size:11px;
  line-height:1.35;
  text-decoration:none;
 }
 .gs-context-4k-toc a:first-child{border-top:0}
 .gs-context-4k-toc a[data-level="3"]{padding-left:13px;color:#929299!important;font-size:10.5px}
 .gs-context-4k-toc a:hover,.gs-context-4k-toc a:focus-visible{color:#fff!important}
 .gs-context-4k-related{padding:4px 12px 10px}
 .gs-context-4k-related a{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:9px;
  align-items:center;
  padding:9px 2px;
  border-top:1px solid rgba(255,255,255,.065);
  color:#ddd!important;
  text-decoration:none;
 }
 .gs-context-4k-related a:first-child{border-top:0}
 .gs-context-4k-related img{width:40px;height:40px;border-radius:8px;object-fit:cover;background:#111}
 .gs-context-4k-related span{font-size:10.8px;line-height:1.3;font-weight:750}
 .gs-context-4k-links{display:grid;gap:7px;padding:0 12px 12px}
 .gs-context-4k-links a{padding:8px 9px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.025);color:#bdbdc3!important;font-size:10px;font-weight:800;text-decoration:none}
 .gs-context-4k-links a:hover{border-color:rgba(255,82,103,.38);color:#fff!important}
}

@media (min-width:2200px){
 html.gs-4k-mode body{
  --gs-4k-shell:min(92vw,2040px);
  --gs-4k-reading:1000px;
  --gs-4k-side:320px;
  --gs-4k-gap:32px;
 }
 html.gs-4k-mode .gs-header-main{height:78px;padding-inline:36px}
 html.gs-4k-mode .gs-logo-img{height:54px;max-width:320px}
 html.gs-4k-mode .gs-nav-edit a{font-size:17px;padding:9px 14px}
 html.gs-4k-mode .gs-tool{font-size:15px;padding:7px 14px}
 html.gs-4k-mode .gs-ticker{height:38px}
 html.gs-4k-mode .gs-ticker-item,
 html.gs-4k-mode .gs-ticker-dot{font-size:14.5px}
 html.gs-4k-mode .article-body{font-size:19px}
 html.gs-4k-mode .article-body h2{font-size:31px}
 html.gs-4k-mode .gs-context-eyebrow{font-size:10px}
 html.gs-4k-mode .gs-context-title{font-size:19px}
 html.gs-4k-mode .gs-context-secret-list a{font-size:12px}
 html.gs-4k-mode .gs-context-meta,
 html.gs-4k-mode .gs-context-reviews blockquote{font-size:11.5px}
}

@media (min-width:3200px){
 html.gs-4k-mode body{
  --gs-4k-shell:min(88vw,2440px);
  --gs-4k-reading:1080px;
  --gs-4k-side:390px;
  --gs-4k-gap:40px;
 }
 html.gs-4k-mode .gs-header-main{height:90px;padding-inline:46px}
 html.gs-4k-mode .gs-logo-img{height:62px;max-width:370px}
 html.gs-4k-mode .gs-nav-edit a{font-size:19px;padding:10px 15px}
 html.gs-4k-mode .gs-tool{font-size:17px;padding:8px 16px}
 html.gs-4k-mode .gs-btn-compte{font-size:16px;padding:10px 20px}
 html.gs-4k-mode .gs-search-btn{width:46px;height:46px}
 html.gs-4k-mode .gs-ticker{height:42px}
 html.gs-4k-mode .gs-ticker-lbl{font-size:13px}
 html.gs-4k-mode .gs-ticker-item,
 html.gs-4k-mode .gs-ticker-dot{font-size:16px}
 html.gs-4k-mode .article-title-main{font-size:52px}
 html.gs-4k-mode .article-excerpt{font-size:21px}
 html.gs-4k-mode .article-body{font-size:20px;line-height:1.85}
 html.gs-4k-mode .article-body h2{font-size:34px}
 html.gs-4k-mode .article-body h3{font-size:25px}
}

@media (prefers-reduced-motion:reduce){
 .gs-4k-toggle,.gs-4k-toggle-track,.gs-4k-toggle-thumb{transition:none}
}

@media (min-width:1600px){
 .gs-context-4k-toc-empty{margin-top:0!important;padding-top:0}
 .gs-context-4k-related-fallback{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,82,103,.2);
  border-radius:8px;
  background:rgba(196,18,48,.08);
  color:#ff5368!important;
  font:900 15px/1 'Bebas Neue',Impact,sans-serif!important;
  letter-spacing:.06em;
 }
}

@media (min-width:1600px){
 html.gs-4k-mode body.gs-pokemon-champions-article .single-article-wrapper.gs-single-has-pc-rails{
  width:min(96vw,calc(var(--gs-4k-reading) + (2 * var(--gs-4k-side)) + (2 * var(--gs-4k-gap))));
  max-width:none;
  grid-template-columns:minmax(220px,var(--gs-4k-side)) minmax(0,var(--gs-4k-reading)) minmax(220px,var(--gs-4k-side));
  column-gap:var(--gs-4k-gap);
  padding:28px 0 56px;
 }
 html.gs-4k-mode body.gs-pokemon-champions-article .gs-pc-side-tool{top:124px}
}

@media (min-width:1600px){
 html.gs-4k-mode .article-body :is(h2,h3)[id]{scroll-margin-top:132px}
}
@media (min-width:2200px){
 .gs-4k-toggle{min-height:36px;padding:5px 10px;gap:8px}
 .gs-4k-toggle-track{width:32px;height:18px}
 .gs-4k-toggle-thumb{width:12px;height:12px}
 .gs-4k-toggle input:checked + .gs-4k-toggle-track .gs-4k-toggle-thumb{transform:translateX(14px)}
 .gs-4k-toggle-label{font-size:11.5px}
}
@media (min-width:3200px){
 .gs-4k-toggle{min-height:40px;padding:6px 12px}
 .gs-4k-toggle-track{width:36px;height:20px}
 .gs-4k-toggle-thumb{width:14px;height:14px}
 .gs-4k-toggle input:checked + .gs-4k-toggle-track .gs-4k-toggle-thumb{transform:translateX(16px)}
 .gs-4k-toggle-label{font-size:13px}
}

/* V31.44.1 — découvrabilité du Mode 4K dans le menu mobile. */
.gs-mm-4k{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:14px;
 margin:0 12px 8px;
 padding:12px 13px;
 border:1px solid rgba(255,255,255,.08);
 border-radius:12px;
 background:linear-gradient(135deg,rgba(196,18,48,.09),rgba(255,255,255,.025));
 box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.gs-mm-4k-copy{display:grid;gap:3px;min-width:0}
.gs-mm-4k-copy strong{font-size:13px;line-height:1.2;color:#f4f4f6;font-weight:900}
.gs-mm-4k-copy small{font-size:10.5px;line-height:1.35;color:rgba(255,255,255,.42)}
.gs-mm-4k-switch{position:relative;display:inline-flex;align-items:center;flex:0 0 auto;cursor:pointer}
.gs-mm-4k-switch input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.gs-mm-4k-track{
 position:relative;
 width:42px;
 height:24px;
 border-radius:999px;
 border:1px solid rgba(255,255,255,.16);
 background:#18181c;
 box-shadow:inset 0 1px 6px rgba(0,0,0,.45);
 transition:background .16s ease,border-color .16s ease,opacity .16s ease;
}
.gs-mm-4k-thumb{
 position:absolute;
 left:3px;
 top:3px;
 width:16px;
 height:16px;
 border-radius:50%;
 background:#777981;
 transition:transform .16s ease,background .16s ease,box-shadow .16s ease;
}
.gs-mm-4k-switch input:focus-visible + .gs-mm-4k-track{outline:2px solid var(--gs-brand-red,#c41230);outline-offset:3px}
.gs-mm-4k-switch input:checked + .gs-mm-4k-track{border-color:rgba(255,72,94,.72);background:rgba(196,18,48,.48)}
.gs-mm-4k-switch input:checked + .gs-mm-4k-track .gs-mm-4k-thumb{transform:translateX(18px);background:#fff;box-shadow:0 0 11px rgba(255,65,88,.72)}
.gs-mm-4k.is-unavailable{opacity:.62}
.gs-mm-4k.is-unavailable .gs-mm-4k-switch{cursor:not-allowed}
.gs-mm-4k.is-unavailable .gs-mm-4k-track{opacity:.62}

@media (min-width:901px){
 /* Le menu mobile est fermé sur desktop ; le switch principal reste dans le bandeau. */
 .gs-mm-4k{display:none}
}

@media (prefers-reduced-motion:reduce){
 .gs-mm-4k-track,.gs-mm-4k-thumb{transition:none}
}
