/* *
 * Page: User Profile Public & Versus (V3.5 - SOVEREIGN SCALLER)
 * V3.5 - Suppression RESPONSIVE < 1280px, Elevation +50/+40, Aura Scale 1.4, No Glow.
 * GAUCHE = JOUEUR. GAUCHE immuable. */
/* --- BACKGROUND PUBLIC STAGE (PROGRESSIVE HYDRATION V4.1) --- */
body .jgtr-public-profile-stage { 
    position: absolute; top: 480px; left: 50%; width: 2160px; height: 1206px; 
    transform: translate(-50%, -50%) translate3d(0, 0, 0); 
    z-index: -10; pointer-events: none; opacity: 0.8; 
    transition: opacity 1.2s cubic-bezier(0.34, 1.56, 0.64, 1);
    animation: bg-cockpit-emergence 1.2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; 
    overflow: hidden;
    background: #000; /* Fond de sécurité */
}

/* Calque Mini (Flou immersif) */
body .jgtr-public-profile-stage::before {
    content: "";
    position: absolute; inset: -50px; /* Offset harmonisé pour superposition parfaite */
    background-image: var(--bg-url-mini, url("../../images/jeguesstonrank_background_profile-public.jpg")); 
    background-size: 100% 100%; background-position: center; background-repeat: no-repeat; 
    filter: blur(4px) brightness(0.8);
    z-index: 1;
    transition: opacity 0.8s ease-out;
}

/* Calque HD (Émergence nette) */
body .jgtr-public-profile-stage::after {
    content: "";
    position: absolute; inset: -50px; /* Offset identique au calque Mini */
    background-image: var(--bg-url-hd, none);
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    transition: opacity 0.8s ease-out; /* Ultra-réactif */
    z-index: 2;
    will-change: opacity;
}

body .jgtr-public-profile-stage.is-hydrated::after {
    opacity: 1;
}

/* Optionnel : On peut atténuer le mini flou une fois hydraté pour libérer du GPU */
body .jgtr-public-profile-stage.is-hydrated::before {
    opacity: 0.5;
}
/* --- CLAYOUT COCKPIT (SMART-SCALLER READY + PERSPECTIVE) --- */
body .public-profile-cockpit { position: relative; width: 100%; min-height: 850px; display: flex; align-items: center; justify-content: center; overflow: visible; perspective: 1200px; /* PRÉPARATION VFX 3D */ }
/* STUDIO CHARACTER (GAUCHE IMMUABLE) */
body .holograph-studio-scene { position: absolute; width: 800px; height: 800px; z-index: 40; /* PASSAGE DERRIÈRE LES FICHES (40 < 50) */ pointer-events: none; display: flex; align-items: center; justify-content: center; overflow: visible; }
/* GAUCHE = JOUEUR (Immuable - Légèrement rentré) */
body .public-profile-cockpit.is-versus .col-left-anchor .holograph-studio-scene { left: -450px; /* Moins d'offset pour rentrer un peu */ top: 50%; transform: translateY(-50%); }
/* DROITE = ADVERSAIRE (Miroir - Légèrement rentré) */
body .public-profile-cockpit.is-versus .col-right-anchor .holograph-studio-scene { right: -450px; /* Moins d'offset pour rentrer un peu */ top: 50%; transform: translateY(-50%) scaleX(-1); }
body .public-profile-cockpit:not(.is-versus) .holograph-studio-scene { left: -10%; /* Plus proche du bord en solo */ top: 50%; transform: translateY(-50%); }
/* PIEDESTAL & VIEWPORT (CORRECTION GROUNDING V3.9) */
/* PIEDESTAL & VIEWPORT (CORRECTION SANDWICH V4.6) */
body .holograph-aura-layer { position: absolute; bottom: 116px !important; left: 48%; transform: translateX(-50%); width: 1000px; height: 900px; z-index: 10; display: flex; align-items: flex-end; justify-content: center; zoom: 1.15; pointer-events: none; overflow: visible; }
body .holograph-pedestal-layer { position: absolute; bottom: 40px; /* REDESCENDU LE SOCLE */ left: 50%; transform: translateX(-50%); width: 460px; z-index: 20; }
body .holograph-character-viewport { position: absolute; bottom: 80px !important; /* CALAGE GÉOMÉTRIQUE FORGE (Distance 135px) */ left: 48%; transform: translateX(-50%); width: 1000px; height: 900px; /* UN PEU PLUS HAUT POUR ÉVITER LE CROP BAS */ z-index: 30; display: flex; align-items: flex-end; justify-content: center; zoom: 1.15; filter: none !important; overflow: visible; -webkit-mask-image: linear-gradient(to bottom, black 91.5%, transparent 92.5%); mask-image: linear-gradient(to bottom, black 91.5%, transparent 92.5%); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: top; mask-position: top; will-change: mask-size; /* RÉVÉLATION FINALE (Pieds nets après 0.8s) */ animation: jgtr-holograph-mask-reveal 1.2s cubic-bezier(0.33, 1, 0.68, 1) 0.8s forwards; }
/* ANIMATION FLUIDE PAR ÉTIREMENT DU MASQUE */
@keyframes jgtr-holograph-mask-reveal {
  0% { -webkit-mask-size: 100% 100%; mask-size: 100% 100%; }
  100% { -webkit-mask-size: 100% 115%; mask-size: 100% 115%; }
}
body .holograph-character-viewport .user-avatar { overflow: visible; will-change: transform, opacity; opacity: 0; width: auto !important; /* LIBÉRATION LARGEUR */ max-width: none !important; height: 420px !important; /* BOITE STANDARD FORGE */ display: flex !important; align-items: flex-end !important; /* ANCRAGE PIEDS (Zéro Remontée) */ justify-content: center !important; /* ANIMATION DE SURGISSEMENT (PORTAL-UP) */ animation: jgtr-avatar-portal-up 1.5s cubic-bezier(0.33, 1, 0.68, 1) forwards; }
@keyframes jgtr-avatar-portal-up {
  0% { transform: translate3d(0, 80px, 0); opacity: 1; }
  100% { transform: translate3d(0, -45px, 0); opacity: 1; }
}
/* SUPPRESSION DÉCOR & LUEURS (Override Total Anti-Crop) */
body .holograph-character-viewport .user-avatar__decor { display: none !important; /* SUPPRESSION DÉCOR PARASITE */ }
body .holograph-character-viewport .user-avatar__image { -webkit-mask-image: none !important; /* PIEDS NETS SANS DÉGRADÉ */ mask-image: none !important; filter: none !important; box-shadow: none !important; -webkit-filter: none !important; transform: none !important; /* NEUTRALISATION POLLUTION WIDGET (Zéro 14%) */ height: 100% !important; /* REMPLISSAGE DE LA BOITE 420PX */ max-height: none !important; width: auto !important; max-width: none !important; /* LIBÉRATION TOTALE POUR UNIFORMITÉ */ object-fit: contain; }
body .holograph-img { filter: none !important; box-shadow: none !important; }
/* Supprimer lueur au hover aussi */
body .holograph-character-viewport .user-avatar:hover .user-avatar__image { filter: brightness(1.1) !important; transform: scale(1.05) !important; }
body .holograph-character-viewport .user-avatar.order-theme-ombres .user-avatar__image { filter: grayscale(1) brightness(0.26) contrast(1.62) drop-shadow(0 18px 22px rgba(0, 0, 0, 0.95)) !important; -webkit-filter: grayscale(1) brightness(0.26) contrast(1.62) drop-shadow(0 18px 22px rgba(0, 0, 0, 0.95)) !important; opacity: 0.9; }
body .holograph-character-viewport .user-avatar.order-theme-ombres:hover .user-avatar__image { filter: grayscale(1) brightness(0.32) contrast(1.72) drop-shadow(0 20px 28px rgba(0, 0, 0, 1)) !important; -webkit-filter: grayscale(1) brightness(0.32) contrast(1.72) drop-shadow(0 20px 28px rgba(0, 0, 0, 1)) !important; transform: scale(1.03) !important; opacity: 0.96; }
/* COUCHES SPÉCIFIQUES DU SANDWICH (RESTAURATION PIXEL-PERFECT V4.6) */
body .holograph-aura-layer .user-avatar { width: 460px; height: 420px; display: flex; align-items: flex-end; justify-content: center; position: relative; }
body .holograph-aura-layer .user-avatar .user-avatar__aura { width: 170%; height: 170%; left: -45%; /* Retour à l'origine stricte */ top: calc(-35% - 35px); opacity: 0; backface-visibility: hidden; /* Nécessaire pour éviter le scintillement */ will-change: transform, opacity; animation: jgtr-aura-tactical-opening 2s cubic-bezier(0.2, 0, 0, 1) 0.1s forwards,
        jgtr-aura-pure-float 5s ease-in-out 2.1s infinite alternate; }
body.page-compare_profiles .holograph-aura-layer .user-avatar .user-avatar__aura:not(.is-aura-mini-ready) { animation-play-state: paused; }
body.page-user_profile .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura, body.page-compare_profiles .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura { background-color: transparent !important; background-image: none !important; -webkit-mask-image: none !important; mask-image: none !important; mix-blend-mode: screen !important; filter: brightness(1.55) saturate(0.86) contrast(1.08); -webkit-filter: brightness(1.55) saturate(0.86) contrast(1.08); }
body.page-user_profile .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura::before, body.page-compare_profiles .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura::before { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; opacity: 1; transition: opacity 1.2s ease-out; background-color: var(--aura-color, var(--order-color)) !important; background-image: var(--aura-image) !important; background-size: contain !important; background-repeat: no-repeat !important; background-position: center !important; background-blend-mode: luminosity !important; -webkit-mask-image: var(--aura-image) !important; mask-image: var(--aura-image) !important; -webkit-mask-size: contain !important; mask-size: contain !important; -webkit-mask-repeat: no-repeat !important; mask-repeat: no-repeat !important; -webkit-mask-position: center !important; mask-position: center !important; will-change: opacity; }
body.page-user_profile .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura::after, body.page-compare_profiles .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura::after { background-color: var(--aura-color, var(--order-color)) !important; background-image: var(--aura-image-hd, var(--aura-image)) !important; background-size: contain !important; background-repeat: no-repeat !important; background-position: center !important; background-blend-mode: luminosity !important; -webkit-mask-image: var(--aura-image-hd, var(--aura-image)) !important; mask-image: var(--aura-image-hd, var(--aura-image)) !important; -webkit-mask-size: contain !important; mask-size: contain !important; -webkit-mask-repeat: no-repeat !important; mask-repeat: no-repeat !important; -webkit-mask-position: center !important; mask-position: center !important; opacity: 0; transition: opacity 1.2s ease-out; will-change: opacity; }
body.page-user_profile .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura.is-hydrated::before, body.page-compare_profiles .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura.is-hydrated::before { opacity: 0.02; }
body.page-user_profile .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura.is-hydrated::after, body.page-compare_profiles .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura.is-hydrated::after { opacity: 1; }
body.page-compare_profiles .holograph-aura-layer .user-avatar:not(.is-neutral-state-active):not(.order-theme-ombres) .user-avatar__aura.is-hydrated::before { transition-delay: 0.3s; }
body .holograph-aura-layer .user-avatar.order-theme-ombres .user-avatar__aura { background-color: #0b0b0f !important; opacity: 0.42 !important; mix-blend-mode: multiply !important; filter: grayscale(1) brightness(0.36) contrast(1.55) !important; -webkit-filter: grayscale(1) brightness(0.36) contrast(1.55) !important; }
/* ANIMATION D'OUVERTURE TACTIQUE (2D NETTE - PIXEL PERFECT) */
@keyframes jgtr-aura-tactical-opening {
  0% { opacity: 0; transform: translate3d(0, -20px, 0) scale(0.8); /* Pure 2D */ clip-path: ellipse(2% 40% at 50% 50%); }
  100% { opacity: 0.7; transform: translate3d(0, -45px, 0) scale(1); /* Pure 2D */ clip-path: ellipse(150% 150% at 50% 50%); }
}
@keyframes jgtr-aura-pure-float {
  0% { transform: translate3d(0, -45px, 0); }
  100% { transform: translate3d(0, -60px, 0); }
}
/* --- FICHE IDENTITÉ : PURETÉ 3D V4.7 --- */
body .public-profile-identity-anchor, body .versus-identity-fiche, body .profile-v2-id-guess-wrapper { background-color: rgba(13, 14, 23, 0.55); background-image: linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px), 
        linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px) !important; background-size: 20px 20px !important; backdrop-filter: blur(4px) !important; -webkit-backdrop-filter: blur(4px) !important; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 20px; overflow: hidden !important; position: relative; box-shadow: 0 60px 200px rgba(0, 0, 0, 1); z-index: 50; transform-style: preserve-3d; backface-visibility: hidden; will-change: transform, opacity; /* GPU:SHARP */ contain: layout paint; /* LAYOUT:STABLE */ animation: jgtr-panel-open 1.2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; flex-shrink: 0; /* FLEX:ANTI-SQUISH */ }
body .profile-v2-id-guess-wrapper.is-premium-glow { border: 1px solid rgba(108, 99, 255, 0.6) !important; box-shadow: 0 0 30px rgba(108, 99, 255, 0.3), 0 0 60px rgba(108, 99, 255, 0.14), 0 60px 200px rgba(0, 0, 0, 1), inset 0 0 18px rgba(108, 99, 255, 0.08) !important; animation: jgtr-panel-open 1.2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards, jgtr-idg-premium-pulse 3s ease-in-out infinite; }
/* DÉLAI ASYNCHRONE ID-GUESS */
body .profile-v2-id-guess-wrapper { animation-delay: 0.1s; opacity: 0; /* Pour éviter le flash avant animation */ animation-fill-mode: forwards; }
body .public-profile-identity-anchor { position: relative; /* PASSAGE EN FLEX (FIX BLUR) */ width: 715px; /* Rendu 709px (Clone VS) */ min-width: 715px; transform-origin: center right; /* CLONE DROITE (ADVERSAIRE) */ zoom: 0.82; z-index: 100; animation-name: jgtr-panel-open-right; /* HARMONISATION SOLO = VERSUS OPPONENT */ }
@media (min-width: 1280px) {
  body.page-user_profile .public-profile-center-col { z-index: 420 !important; }
  body.page-user_profile .profile-id-guess-stage { perspective: 1200px; overflow: visible !important; z-index: 430 !important; }
  body.page-user_profile .profile-v2-id-guess-wrapper, body.page-compare_profiles .profile-v2-id-guess-wrapper { --idg-card-bg: rgba(0, 0, 0, 0.95); --idg-card-radius: 16px; --idg-card-border: 1px solid rgba(255, 255, 255, 0.15); --idg-card-shadow: 0 24px 56px rgba(0, 0, 0, 0.8); --idg-player-info-gap: 0; --idg-player-info-top: 28px; --idg-player-info-right: 30px; --idg-player-name-font: 36px; --idg-title-row-gap: 8px; --idg-title-row-margin-top: 11px; --idg-title-row-badge-offset: -2px; --idg-title-row-no-badge-margin-top: 14px; --idg-title-font: 15px; --idg-title-height: 28px; --idg-title-padding-x: 16px; --idg-title-border: 2px; --idg-title-border-color: rgba(255, 255, 255, 0.4); --idg-title-bg: rgba(0, 0, 0, 0.9); --idg-title-radius: 4px; --idg-title-letter-spacing: 0; --idg-rank-size: 110px; --idg-rank-bottom: 15px; --idg-rank-right: 25px; --idg-favorite-size: 40px; width: 584px !important; max-width: 584px !important; position: relative; z-index: 520; isolation: isolate; contain: layout style !important; backface-visibility: hidden; -webkit-font-smoothing: antialiased; text-rendering: geometricPrecision; transition: opacity 0.12s ease; }
  body.page-user_profile .profile-v2-id-guess-wrapper > .id-guess--mini, body.page-compare_profiles .profile-v2-id-guess-wrapper > .id-guess--mini { width: 100% !important; max-width: none !important; }
  body.page-user_profile .profile-id-guess-stage, body.page-compare_profiles .profile-id-guess-stage { position: relative; isolation: isolate; z-index: 520; }
  body .profile-id-guess-stage.is-idg-native-placeholder { min-height: var(--idg-placeholder-height); }
  body.page-user_profile .public-profile-identity-anchor, body.page-user_profile .profile-actions-external { transition: opacity 0.12s ease; }
  body.page-user_profile.is-idg-scene-focused .public-profile-identity-anchor, body.page-user_profile.is-idg-scene-focused .profile-actions-external, body.is-idg-scene-focused .public-profile-identity-anchor, body.is-idg-scene-focused .widget-user-profile-info.profile-v2-fiche { opacity: 0 !important; pointer-events: none; }
  body .idg-native-backdrop { position: fixed; inset: 0; z-index: 29990; background: transparent; cursor: zoom-out; pointer-events: auto; }
  body.page-user_profile .profile-v2-id-guess-wrapper.is-idg-native-zooming, body.page-user_profile .profile-v2-id-guess-wrapper.is-idg-native-zoomed, body.page-user_profile .profile-v2-id-guess-wrapper.is-idg-native-closing, body.page-compare_profiles .profile-v2-id-guess-wrapper.is-idg-native-zooming, body.page-compare_profiles .profile-v2-id-guess-wrapper.is-idg-native-zoomed, body.page-compare_profiles .profile-v2-id-guess-wrapper.is-idg-native-closing { position: fixed !important; left: var(--idg-native-left) !important; top: var(--idg-native-top) !important; width: var(--idg-native-width, 892px) !important; max-width: none !important; margin: 0 !important; opacity: 1 !important; z-index: 30000 !important; cursor: zoom-out !important; animation: none !important; pointer-events: auto !important; contain: layout style paint !important; transform: none !important; zoom: var(--idg-native-zoom, 1) !important; will-change: zoom, left, top, width; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; box-shadow: none !important; transition: none !important; }
  body.page-user_profile .profile-v2-id-guess-wrapper.is-idg-native-zooming > .id-guess--mini, body.page-user_profile .profile-v2-id-guess-wrapper.is-idg-native-zoomed > .id-guess--mini, body.page-user_profile .profile-v2-id-guess-wrapper.is-idg-native-closing > .id-guess--mini, body.page-compare_profiles .profile-v2-id-guess-wrapper.is-idg-native-zooming > .id-guess--mini, body.page-compare_profiles .profile-v2-id-guess-wrapper.is-idg-native-zoomed > .id-guess--mini, body.page-compare_profiles .profile-v2-id-guess-wrapper.is-idg-native-closing > .id-guess--mini { width: 100% !important; max-width: none !important; }
  body.page-user_profile .profile-v2-id-guess-wrapper .id-guess__fused-image, body.page-compare_profiles .profile-v2-id-guess-wrapper .id-guess__fused-image { image-rendering: auto; transform: none !important; backface-visibility: visible !important; will-change: auto !important; }
}
/* VERSUS SPECIFIC : MIROIR DES VOLETS (Charnières Extérieures) */
body .public-profile-cockpit.is-versus .versus-column:first-child .versus-identity-fiche { transform-origin: center left; animation-name: jgtr-panel-open-left; }
body .public-profile-cockpit.is-versus .versus-column:last-child .versus-identity-fiche { transform-origin: center right; animation-name: jgtr-panel-open-right; }
/* TEXTURE ANIMÉE (WING-SWITCHER) */
body .public-profile-identity-anchor::before, body .versus-identity-fiche::before { content: ""; position: absolute; inset: -241%; background-image: url("../../images/header/jeguesstonrank_header_wing-switcher_bg-on.png"); background-size: contain; background-position: center; background-repeat: no-repeat; transform: rotate(110deg) scaleX(1); pointer-events: none; z-index: 1; opacity: 0.4; /* VISIBILITÉ ÉLÉGANTE */ display: block !important; filter: grayscale(0.8) contrast(1.8); /* ANIMATION DE REMONTÉE (SETTLE) + DRIFT LENT */ animation: jgtr-texture-settle 1.5s cubic-bezier(0.4, 0, 0.2, 1) forwards,
        jgtr-texture-drift 45s ease-in-out 1.5s infinite alternate; }
/* SHIMMER SWEEP 2.0 (ACCÉLÉRATION GPU TOTALE - 60 FPS) */
body .public-profile-identity-anchor::after, body .versus-identity-fiche::after { content: ""; position: absolute; top: 0; bottom: 0; left: -150%; /* DÉPART HORS-CHAMP */ width: 150%; background: linear-gradient(110deg,
            transparent 0%,
            rgba(255, 255, 255, 0) 40%,
            rgba(255, 255, 255, 0.20) 50%,
            /* LUMINOSITÉ ÉQUILIBRÉE (ENTRE-DEUX) */
            rgba(255, 255, 255, 0) 60%,
            transparent 100%); pointer-events: none; z-index: 10; display: block !important; opacity: 1; will-change: transform; transform: translate3d(0, 0, 0); /* ACCÉLÉRATION MATÉRIELLE */ animation: jgtr-shimmer-sweep 2.4s cubic-bezier(0.33, 1, 0.68, 1) forwards; animation-delay: 0s; }
/* --- KEYFRAMES VFX V4.9 (PRECISION & VISIBILITY) --- */
@keyframes jgtr-panel-open {
  0% { transform: perspective(1200px) rotateY(-22deg); opacity: 0; }
  100% { transform: perspective(1200px) rotateY(0); opacity: 1; }
}
@keyframes jgtr-fade-in {
  0% { opacity: 0; }
  100% { opacity: 0.8; }
}
@keyframes bg-cockpit-emergence {
  0% { opacity: 0; filter: brightness(0.4) contrast(1.2); }
  100% { opacity: 0.8; filter: brightness(1) contrast(1); }
}
@keyframes jgtr-panel-open-left {
  0% { transform: perspective(1200px) rotateY(22deg); opacity: 0; }
  100% { transform: perspective(1200px) rotateY(0); opacity: 1; }
}
@keyframes jgtr-panel-open-right {
  0% { transform: perspective(1200px) rotateY(-22deg); opacity: 0; }
  100% { transform: perspective(1200px) rotateY(0); opacity: 1; }
}
@keyframes jgtr-texture-settle {
  0% { transform: rotate(110deg) scaleX(1) translate(0, 50px); }
  /* DÉPART BAS PUR */
  100% { transform: rotate(110deg) scaleX(1) translate(0, 0); }
  /* STABILISATION */
}
@keyframes jgtr-texture-drift {
  0% { transform: rotate(110deg) scaleX(1) translate(0, 0); }
  100% { transform: rotate(110deg) scaleX(1) translate(30px, 20px); }
}
@keyframes jgtr-shimmer-sweep {
  0% { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(250%, 0, 0); }
  /* BALAYAGE SANS REPAINT */
}
@keyframes jgtr-idg-premium-pulse {
  0%, 100% { box-shadow: 0 0 30px rgba(108, 99, 255, 0.3), 0 0 60px rgba(108, 99, 255, 0.14), 0 60px 200px rgba(0, 0, 0, 1), inset 0 0 18px rgba(108, 99, 255, 0.08); }
  50% { box-shadow: 0 0 40px rgba(108, 99, 255, 0.45), 0 0 75px rgba(108, 99, 255, 0.2), 0 60px 200px rgba(0, 0, 0, 1), inset 0 0 24px rgba(108, 99, 255, 0.12); }
}
/* WIDGET INTERNE */
body .widget-user-profile-info.profile-v2-fiche { background: transparent; box-shadow: none; border: none; padding: 1rem; position: relative; z-index: 10; }
/* --- VERSUS SPECIFIC --- */
body .public-profile-cockpit.is-versus .public-profile-identity-anchor { display: none; }
body .versus-grid-container { display: flex; justify-content: center; align-items: center; gap: 5rem; width: 100%; }
body .versus-column { flex: 0 0 584px; position: relative; z-index: 50; perspective: 1200px; /* PERSPECTIVE LOCALE ANTI-SQUISH */ }
body .versus-identity-fiche { zoom: 0.82; }
/* LOGO VS & TITRE */
body .versus-logo-center { position: absolute; top: 40%; left: 50%; transform: translate(-50%, -50%) translate3d(0, 0, 0); /* ACCÉLÉRATION GPU + NETTETÉ */ backface-visibility: hidden; z-index: 600; pointer-events: auto; margin-top: -60px; }
body .versus-logo-center .vs-image-glow { width: 240px; /* PLUS GRAND */ filter: none !important; pointer-events: none; }
body .versus-logo-center > span { display: block; color: #fff; font-size: 1rem; /* Harmonisation */ font-weight: 800; text-transform: uppercase; letter-spacing: 0.02em; margin-top: -5px; line-height: 1.1; /* INTERLIGNE RESSERRÉ (PURETÉ GRAPHIQUE) */ text-align: center; max-width: 140px; margin-left: auto; margin-right: auto; text-shadow: 0 0 20px rgba(255, 255, 255, 0.5); pointer-events: none; }
body .versus-logo-center > span .gradient-text { font-size: 1.4rem; /* STATS PLUS GRAND */ display: block; margin-top: 2px; }
/* TERMINAL ACTIVITY SOLO */
body .public-profile-cockpit .terminal-activity-anchor { position: absolute; right: 2%; top: 30%; transform: translateY(-50%); width: 480px; z-index: 150; }
body .public-profile-cockpit.is-versus .terminal-activity-anchor { display: none; }
/* INTERDICTION DU RESPONSIVE < 1280px */
@media (max-width: 1279.98px) {
  body .public-profile-cockpit { padding-top: 60px; flex-direction: column; min-height: auto; }
  body .holograph-studio-scene { position: relative; left: auto; right: auto; top: auto; transform: none; margin: 2rem 0; }
  body .public-profile-identity-anchor { position: relative; left: auto; top: auto; transform: none; width: 100%; min-width: 0; }
  body .versus-grid-container { flex-direction: column; gap: 2rem; }
  body .versus-column { flex: 0 0 auto; width: 100%; }
  /* USER_PROFILE MOBILE OVERRIDES (page-user_profile uniquement) */
  body.page-user_profile .jgtr-public-profile-stage { display: none !important; }
  body.page-user_profile::before { content: ""; position: fixed; inset: 0; z-index: -1; background-image: url("../../images/jeguesstonrank_background_profile.jpg"); background-size: cover; background-position: center; background-repeat: no-repeat; background-attachment: fixed; opacity: 1 !important; filter: none !important; pointer-events: none; }
  /* RÉDUCTION ENSEMBLE AVATAR (scale à ~15%) */
  body.page-user_profile .holograph-studio-scene { display: none !important; }
  body.page-user_profile .holograph-aura-layer { display: none !important; }
  body.page-user_profile .holograph-character-viewport { display: none !important; }
  body.page-user_profile .holograph-pedestal-layer { display: none !important; }
  /* REMONTÉE EXTRÊME DU PANNEAU D'INFO (chevauche fortement le bas de l'avatar) */
  body.page-user_profile .public-profile-cockpit { flex-direction: column-reverse; }
  body.page-user_profile .public-profile-center-col { margin-top: 0; width: 100%; z-index: 50; padding-bottom: 0; }
  body.page-user_profile .profile-id-guess-stage { margin-bottom: 0.5rem; margin-top: 0; }
  body.page-user_profile .profile-v2-id-guess-wrapper { z-index: 60; }
  body.page-user_profile .public-profile-identity-anchor { margin-top: 0; width: 100%; max-width: 584px; margin-left: auto; margin-right: auto; z-index: 50; position: relative; }
  body.page-user_profile .public-profile-identity-anchor, body.page-user_profile .profile-v2-id-guess-wrapper { box-shadow: 0 40px 120px rgba(0, 0, 0, 0.65); }
  /* BOUTON VS MOBILE - CSS PUR (Tailwind max-xl: ne fonctionne pas bien) */
  body.page-user_profile .player-card__compare-btn.xl\:hidden { position: fixed !important; bottom: 275px !important; right: 20px !important; left: auto !important; top: auto !important; z-index: 9999 !important; display: flex !important; }
  /* CACHER TOPBAR SUR MOBILE */
  body.page-user_profile .jgtr-hud-topbar { display: none !important; }
  /* CACHER HUD-ANALYSIS-DECK SUR MOBILE */
  body.page-user_profile #hud-analysis-deck { display: none !important; }
}
/* MARGIN-BOTTOM DESKTOP POUR ID-GUESS */
body.page-user_profile .profile-id-guess-stage { margin-bottom: 0.5rem; }
/* --- [JGTR] CLONAGE PIXEL-PERFECT FORGE (SOURCE: DASHBOARD.CSS) --- */
.btn-forge-quicklink { text-decoration: none !important; display: block; height: 79px; transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); z-index: 2700; }
.forge-link-content { display: flex; align-items: center; justify-content: center; background: transparent; border: 1px solid transparent; border-radius: 8px; padding: 5px; transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); position: relative; overflow: visible !important; }
.forge-link-content::after { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px); background-size: 20px 20px; pointer-events: none; z-index: 0; opacity: 0; transition: opacity 0.4s ease; border-radius: 8px; }
.forge-link-content::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent); background-size: 200% 100%; background-position: -100% 0; border-radius: 8px; z-index: 2; pointer-events: none; opacity: 0; transition: opacity 0.4s ease; }
.forge-link-icon { width: 70px; height: 70px; object-fit: contain; opacity: 0.8; transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); filter: drop-shadow(0 0 5px rgba(0,0,0,0.5)); position: relative; z-index: 1; animation: forge-icon-pulse 10s infinite; animation-delay: 15s; }
@keyframes forge-icon-pulse {
  0%, 100% { filter: drop-shadow(0 0 5px rgba(0,0,0,0.5)) brightness(1); }
  10%, 30% { filter: drop-shadow(0 0 25px rgba(108, 99, 255, 0.9)) brightness(1.5); }
}
.forge-link-text-group { max-width: 0; overflow: hidden; display: flex; flex-direction: column; justify-content: center; line-height: 1; opacity: 0; transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1); position: relative; z-index: 1; font-family: "Kanit", sans-serif; }
.forge-link-text-large { font-size: 28px; font-weight: 900; letter-spacing: -0.02em; }
.forge-link-text-small { font-size: 11px; font-weight: 600; letter-spacing: 0.15em; margin-top: -2px; }
.btn-forge-quicklink:hover .forge-link-content { background: rgba(15, 17, 25, 0.6); border: 1px solid rgba(115, 104, 254, 0.47); padding: 5px 25px 5px 10px; box-shadow: 0 0 20px rgba(115, 104, 254, 0.2); }
.btn-forge-quicklink:hover .forge-link-content::after { opacity: 1; }
.btn-forge-quicklink:hover .forge-link-content::before { opacity: 1; animation: forge-shimmer-sweep 1.5s infinite linear; }
@keyframes forge-shimmer-sweep {
  0% { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}
.btn-forge-quicklink:hover .forge-link-icon { opacity: 1; filter: brightness(1.2) drop-shadow(0 0 10px rgba(108, 99, 255, 0.6)); animation: none !important; }
.btn-forge-quicklink:hover .forge-link-text-group { max-width: 300px; opacity: 1; padding-left: 15px; }
/* --- [JGTR] ANIMATION ÉMERGENCE BOUTON FORGE --- */
.animate-button-emergence { animation: forge-button-emergence 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; }
@keyframes forge-button-emergence {
  0% { opacity: 0; transform: scale(0.8); }
  100% { opacity: 1; transform: scale(1); }
}
.player-card__compare-btn { position: relative; display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; background: rgba(108, 99, 255, 0.1); border: 1px solid rgba(108, 99, 255, 0.3); border-radius: 6px; transition: all 0.2s; flex-shrink: 0; }
.player-card__compare-btn:hover { background: rgba(108, 99, 255, 0.25); border-color: rgba(108, 99, 255, 0.6); transform: scale(1.1) rotate(5deg); z-index: 10002; }
.player-card__compare-icon { width: 44px; height: 44px; object-fit: contain; }
@media (min-width: 1024px) {
  .public-profile-cockpit .tactical-tooltip { display: none !important; }
}
.btn-forge-quicklink--profile { transform-origin: left center !important; }
.btn-forge-quicklink--profile .forge-link-content { flex-direction: row; }
.btn-forge-quicklink--profile .forge-icon-offset { transform: translateX(6px) !important; }
.btn-forge-quicklink--profile:hover .forge-icon-offset { transform: translateX(0) !important; }
.public-profile-center-col .btn-forge-quicklink--profile, .public-profile-center-col .player-card__compare-btn { position: relative; z-index: 170; }
.profile-id-guess-stage, .profile-actions-external { overflow: visible !important; }
.profile-actions-external { min-width: 256px; }
@keyframes btnBackEntrance {
  0% { opacity: 0; transform: translate3d(24px, -8px, 0) scale(0.92); filter: blur(2px); }
  100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }
}
.btn-back-floating-wrapper { position: absolute; top: 25px; right: 30px; z-index: 1000; animation: btnBackEntrance 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.3s both; }
/* Sur mobile, on ajuste un peu */
@media (max-width: 1024px) {
  .btn-back-floating-wrapper { top: 15px; right: 15px; }
}
