/* =========================================================================
   MemoQuest Atelier V3 — vitrine, habillage « Prisme »
   ========================================================================= */

:root {
	--nuit-0:#eef8f0; --nuit-1:#8ddcf8; --nuit-2:#d9f0fc; --nuit-3:#4bc3f0;
	--verre:#ffffff; --verre-fort:#ffffff;
	--arete:rgba(21,60,122,.08); --arete-vive:rgba(255,255,255,.9);
	--or-1:#16c4ce; --or-2:#2e86e0; --or-3:#1f6ac0; --or-lueur:rgba(46,134,224,.3);
	--menthe:#4cc93f; --menthe-2:#2e9e23; --menthe-lueur:rgba(76,201,63,.34);
	--violet:#8b5cf6; --violet-2:#6d3fd6; --rose:#f04438;
	--texte:#153c7a; --texte-2:#55719c; --texte-3:#93a9c6;
	--ease:cubic-bezier(.32,.72,.24,1); --sortie:cubic-bezier(.16,1,.3,1);
	--ressort:cubic-bezier(.34,1.56,.5,1);
	--gouttiere:clamp(20px,5vw,56px);
}

*, *::before, *::after { box-sizing: border-box; }

body {
	margin: 0; min-height: 100vh; color: var(--texte);
	font-family: ui-rounded, "SF Pro Rounded", "Segoe UI Variable Display",
	             "Trebuchet MS", Verdana, system-ui, sans-serif;
	font-size: 17px; font-weight: 600; line-height: 1.55;
	-webkit-font-smoothing: antialiased;
	background: linear-gradient(180deg, #4bc3f0 0%, #8ddcf8 20%, #d9f0fc 46%, #eef8f0 70%, #f6e7c9 100%);
	background-attachment: fixed;
}
body.mqa-plein-ecran { overflow: hidden; height: 100dvh; }
body.mqa-plein-ecran .mqa-principal { margin: 0; }

img { max-width: 100%; height: auto; }
a { color: var(--or-2); text-decoration-thickness: 2px; text-underline-offset: 3px; }

.mqa-conteneur { width: min(1120px,100%); margin-inline: auto; padding-inline: var(--gouttiere); }
.mqa-skip { position: absolute; left: -9999px; background: var(--or-2); color: #fff; padding: 12px 18px; border-radius: 0 0 12px 0; z-index: 99; font-weight: 900; }
.mqa-skip:focus { left: 0; top: 0; }

/* ---------- En-tête ---------- */
.mqa-entete {
	position: sticky; top: 0; z-index: 20;
	background: rgba(255,255,255,.86);
	border-bottom: 1px solid var(--arete);
	backdrop-filter: blur(18px) saturate(150%); -webkit-backdrop-filter: blur(18px) saturate(150%);
}
.mqa-entete-inner { display: flex; align-items: center; gap: 20px; min-height: 70px; }
.mqa-logo { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; color: inherit; }
.mqa-logo-mark {
	width: 36px; height: 36px; border-radius: 12px; position: relative; overflow: hidden;
	background: linear-gradient(150deg, var(--or-1), var(--or-2) 50%, var(--or-3));
	box-shadow: 0 0 20px var(--or-lueur), inset 0 1px 0 rgba(255,255,255,.6);
}
.mqa-logo-mark::before, .mqa-logo-mark::after { content: ""; position: absolute; border-radius: 3px; border: 2px solid rgba(40,16,4,.85); }
.mqa-logo-mark::before { inset: 8px 17px 10px 8px; }
.mqa-logo-mark::after { inset: 10px 8px 8px 17px; opacity: .5; }
.mqa-logo-texte { font-weight: 900; letter-spacing: -.035em; }
.mqa-logo-texte b { background: linear-gradient(120deg, var(--or-1), var(--or-2)); -webkit-background-clip: text; background-clip: text; color: transparent; }

.mqa-nav { margin-inline-start: auto; }
.mqa-menu { display: flex; gap: 24px; list-style: none; margin: 0; padding: 0; }
.mqa-menu a { text-decoration: none; color: var(--texte-2); font-weight: 800; font-size: .95rem; padding-block: 4px; position: relative; }
.mqa-menu a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 0; height: 2px; border-radius: 99px; background: linear-gradient(90deg, var(--or-1), var(--or-2)); transition: right .3s var(--ease); }
.mqa-menu a:hover { color: var(--texte); }
.mqa-menu a:hover::after { right: 0; }

/* ---------- Boutons ---------- */
.mqa-bouton {
	position: relative; overflow: hidden;
	display: inline-flex; align-items: center; justify-content: center; gap: 9px;
	padding: 14px 26px; border-radius: 18px;
	font-weight: 900; text-decoration: none; letter-spacing: -.015em; white-space: nowrap;
	color: var(--texte); background: var(--verre-fort);
	border: 1px solid var(--arete);
	box-shadow: 0 2px 4px rgba(21,60,122,.06), 0 8px 20px rgba(21,60,122,.10);
	
	transition: transform .18s var(--ressort), box-shadow .25s var(--ease), background .2s;
}
.mqa-bouton:hover { transform: translateY(-2px); background: rgba(255,255,255,.15); }
.mqa-bouton:active { transform: scale(.97); }
.mqa-bouton-plein {
	color: #fff;
	background: linear-gradient(105deg, var(--or-1) 0%, var(--or-2) 100%);
	border-color: rgba(255,233,168,.6);
	box-shadow: 0 5px 0 var(--or-3), 0 10px 24px rgba(31,106,192,.34);
}
.mqa-bouton-plein::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(104deg, transparent 36%, rgba(255,255,255,.62) 50%, transparent 64%);
	transform: translateX(-135%); animation: mqa-brillance 3.8s var(--sortie) infinite;
}
@keyframes mqa-brillance { 0%,66% { transform: translateX(-135%); } 86%,100% { transform: translateX(135%); } }
.mqa-bouton-plein:hover { box-shadow: 0 7px 0 var(--or-3), 0 16px 34px rgba(31,106,192,.4); }
.mqa-bouton-fantome { background: rgba(255,255,255,.7); box-shadow: none; color: var(--texte-2); }
.mqa-bouton-grand { padding: 18px 34px; font-size: 1.1rem; border-radius: 22px; }

/* ---------- Typographie ---------- */
.mqa-surtitre {
	font-size: .74rem; font-weight: 900; letter-spacing: .24em; text-transform: uppercase; margin: 0 0 12px;
	background: linear-gradient(100deg, var(--or-1), var(--or-2));
	-webkit-background-clip: text; background-clip: text; color: transparent;
}
.mqa-titre-hero { font-size: clamp(2.4rem,6.6vw,4.4rem); line-height: 1; letter-spacing: -.05em; font-weight: 900; margin: 0 0 20px; text-wrap: balance; }
.mqa-titre-section { font-size: clamp(1.6rem,3.8vw,2.6rem); line-height: 1.08; letter-spacing: -.04em; font-weight: 900; margin: 0 0 28px; max-width: 22ch; text-wrap: balance; }
.mqa-titre { font-size: clamp(1.7rem,4vw,2.6rem); letter-spacing: -.04em; font-weight: 900; margin: 0 0 18px; }
.mqa-lede { font-size: clamp(1rem,1.6vw,1.16rem); color: var(--texte-2); margin: 0 0 30px; max-width: 54ch; }
.mqa-prose { color: var(--texte-2); margin: 0 0 18px; max-width: 60ch; }

/* ---------- Hero ---------- */
.mqa-hero { padding: clamp(48px,9vh,104px) 0 clamp(40px,7vh,88px); }
.mqa-hero-inner { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(28px,5vw,64px); align-items: center; }
.mqa-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 36px; }

.mqa-faits { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; }
.mqa-faits div {
	margin: 0; padding: 13px 22px; border-radius: 18px; text-align: center;
	background: var(--verre); border: 1px solid var(--arete);
	box-shadow: inset 0 1px 0 var(--arete-vive);
}
.mqa-faits dt {
	font-size: clamp(1.6rem,3.2vw,2.2rem); font-weight: 900; letter-spacing: -.045em; font-variant-numeric: tabular-nums;
	background: linear-gradient(120deg, var(--or-1), var(--or-2));
	-webkit-background-clip: text; background-clip: text; color: transparent;
}
.mqa-faits dd { margin: 0; font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; color: var(--texte-3); font-weight: 900; }

/* Signature : la paire qui se scelle. */
.mqa-hero-scene { position: relative; display: flex; align-items: center; justify-content: center; gap: clamp(16px,2.8vw,32px); min-height: 340px; perspective: 1200px; }
.mqa-carte { width: clamp(124px,15.5vw,184px); aspect-ratio: 3/4; position: relative; transform-style: preserve-3d; border-radius: 26px; animation: mqa-tourne 6s var(--ease) infinite; filter: drop-shadow(0 24px 34px rgba(0,0,0,.6)); }
.mqa-carte:nth-of-type(2) { animation-delay: .45s; }
.mqa-carte-face { position: absolute; inset: 0; border-radius: inherit; overflow: hidden; backface-visibility: hidden; -webkit-backface-visibility: hidden; display: grid; place-items: center; }
.mqa-carte-dos {
	background:
		conic-gradient(from 210deg at 50% 50%, rgba(255,255,255,.16) 0deg, transparent 42deg,
			rgba(255,255,255,.09) 96deg, transparent 148deg, rgba(255,255,255,.14) 214deg,
			transparent 268deg, rgba(255,255,255,.07) 316deg, transparent 360deg),
		linear-gradient(168deg, #62e0da 0%, #35b8ea 52%, #2e86e0 100%);
	border: 3px solid #fff;
	box-shadow: inset 0 -14px 28px rgba(21,60,122,.18);
}
.mqa-carte-dos::before {
	content: ""; position: absolute; inset: 0;
	background: no-repeat center / 46% auto
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 2.4c.4 0 .8.25 1 .63l2.5 5.06 5.6.82c.9.13 1.26 1.24.6 1.87l-4.05 3.94.96 5.57c.15.9-.8 1.58-1.6 1.15L12 18.82l-5 2.63c-.8.43-1.75-.25-1.6-1.15l.96-5.57-4.05-3.94c-.66-.63-.3-1.74.6-1.87l5.6-.82L11 3.03c.2-.38.6-.63 1-.63Z'/%3E%3C/svg%3E");
	filter: drop-shadow(0 3px 4px rgba(21,60,122,.3));
}
.mqa-carte-dos::after {
	content: ""; position: absolute; width: 30%; aspect-ratio: 1;
	background: none;
}
.mqa-carte-avant {
	transform: rotateY(180deg); padding: 13%;
	background: linear-gradient(165deg, #fffdf8 0%, #f6ecf8 62%, #e9dcf2 100%);
	border: 3px solid #fff;
	box-shadow: inset 0 -14px 26px rgba(21,60,122,.1);
}
.mqa-carte-avant img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 5px 8px rgba(60,30,90,.26)); }
@keyframes mqa-tourne { 0%,10% { transform: rotateY(0deg); } 30%,74% { transform: rotateY(180deg); } 92%,100% { transform: rotateY(0deg); } }
.mqa-sceau {
	position: absolute; width: clamp(58px,6.8vw,80px); aspect-ratio: 1; border-radius: 50%;
	display: grid; place-items: center; color: #06301f; opacity: 0;
	background: radial-gradient(circle at 36% 28%, #d6ffef, var(--menthe) 42%, var(--menthe-2));
	box-shadow: 0 0 0 7px rgba(78,232,176,.14), 0 0 48px var(--menthe-lueur), 0 12px 28px rgba(0,0,0,.6);
	animation: mqa-sceau 6s var(--ease) infinite;
}
.mqa-sceau svg { width: 50%; height: 50%; }
@keyframes mqa-sceau {
	0%,38% { opacity: 0; transform: scale(2.2); }
	45% { opacity: 1; transform: scale(.84) rotate(6deg); }
	50%,70% { opacity: 1; transform: scale(1) rotate(0); }
	80%,100% { opacity: 0; transform: scale(.82); }
}

/* ---------- Sections ---------- */
.mqa-section { padding: clamp(44px,8vh,96px) 0; }
.mqa-section-alt { background: linear-gradient(180deg, transparent, rgba(255,255,255,.035) 12%, rgba(255,255,255,.035) 88%, transparent); border-block: 1px solid var(--arete); }

.mqa-grille-facons { display: grid; grid-template-columns: repeat(auto-fit,minmax(212px,1fr)); gap: 14px; }
.mqa-facon {
	padding: 26px 24px; border-radius: 24px;
	background: var(--verre); border: 1px solid var(--arete);
	box-shadow: inset 0 1px 0 var(--arete-vive), 0 10px 30px rgba(0,0,0,.3);
	
	transition: transform .28s var(--sortie), background .22s, box-shadow .28s;
}
.mqa-facon:hover { transform: translateY(-5px); background: rgba(255,255,255,.12); box-shadow: 0 20px 44px rgba(0,0,0,.4); }
.mqa-facon-index {
	display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: 13px; margin-bottom: 15px;
	background: linear-gradient(148deg, var(--or-1), var(--or-2) 55%, var(--or-3));
	color: #fff; font-weight: 900; font-size: .92rem; font-variant-numeric: tabular-nums;
	box-shadow: 0 0 20px var(--or-lueur), inset 0 1px 0 rgba(255,255,255,.65);
}
.mqa-facon h3 { margin: 0 0 7px; font-size: 1.12rem; letter-spacing: -.025em; font-weight: 900; }
.mqa-facon p { margin: 0; color: var(--texte-2); font-size: .92rem; }

.mqa-grille-univers { display: grid; grid-template-columns: repeat(auto-fit,minmax(262px,1fr)); gap: 18px; }
.mqa-univers {
	padding: 28px; border-radius: 28px; text-align: center;
	background: #ffffff;
	border: 1px solid var(--arete);
	box-shadow: inset 0 1px 0 var(--arete-vive), 0 14px 36px rgba(0,0,0,.36);
	
	transition: transform .28s var(--sortie), box-shadow .28s;
}
.mqa-univers:hover { transform: translateY(-6px); box-shadow: 0 26px 56px rgba(0,0,0,.45); }
.mqa-univers figure {
	margin: 0 auto 18px; width: 112px; height: 112px; display: grid; place-items: center;
	border-radius: 26px; padding: 14px;
	background: linear-gradient(165deg, #fffdf8, #eee0f6);
	box-shadow: 0 12px 28px rgba(0,0,0,.4), inset 0 -10px 20px rgba(109,63,214,.14);
}
.mqa-univers figure img { width: 100%; height: 100%; object-fit: contain; }
.mqa-univers h3 { margin: 0 0 9px; font-size: 1.24rem; letter-spacing: -.03em; font-weight: 900; }
.mqa-univers p { margin: 0 0 20px; color: var(--texte-2); font-size: .9rem; }
.mqa-compteurs { display: flex; justify-content: center; gap: 18px; list-style: none; margin: 0; padding: 0; font-size: .66rem; letter-spacing: .1em; text-transform: uppercase; color: var(--texte-3); font-weight: 900; }
.mqa-compteurs b { display: block; font-size: 1.24rem; letter-spacing: -.035em; font-variant-numeric: tabular-nums; background: linear-gradient(120deg, var(--or-1), var(--or-2)); -webkit-background-clip: text; background-clip: text; color: transparent; }

.mqa-deux-colonnes { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(26px,5vw,60px); align-items: start; }
.mqa-bareme {
	position: relative; overflow: hidden; padding: 28px; border-radius: 28px;
	background: #ffffff;
	border: 1px solid var(--arete);
	box-shadow: inset 0 1px 0 var(--arete-vive), 0 24px 56px rgba(0,0,0,.5);
}
.mqa-bareme::before { content: ""; position: absolute; left: 12%; right: 12%; top: 0; height: 2px; border-radius: 99px; background: linear-gradient(90deg, transparent, var(--or-2), transparent); }
.mqa-bareme h3 { margin: 0 0 16px; font-size: 1.15rem; letter-spacing: -.025em; font-weight: 900; }
.mqa-bareme table { width: 100%; border-collapse: collapse; font-size: .93rem; }
.mqa-bareme th, .mqa-bareme td { padding: 12px 0; text-align: left; border-bottom: 1px solid var(--arete); }
.mqa-bareme th { font-weight: 700; color: var(--texte-2); }
.mqa-bareme td { text-align: right; font-weight: 900; color: var(--or-1); font-variant-numeric: tabular-nums; }
.mqa-bareme tr:last-child th, .mqa-bareme tr:last-child td { border-bottom: 0; }

.mqa-appel {
	position: relative; overflow: hidden; text-align: center; padding: clamp(52px,9vh,104px) 0;
	background: linear-gradient(160deg, #16c4ce 0%, #2e86e0 100%); color: #fff;
	border-block: 1px solid var(--arete);
}
.mqa-appel h2 { font-size: clamp(1.9rem,4.4vw,3rem); letter-spacing: -.045em; margin: 0 0 12px; font-weight: 900; }
.mqa-appel p { margin: 0 0 28px; color: var(--texte-2); }

/* ---------- Pages internes ---------- */
.mqa-page { padding: clamp(40px,7vh,80px) 0; }
.mqa-article { max-width: 720px; }
.mqa-404 { text-align: center; max-width: 620px; margin-inline: auto; }
.mqa-alerte {
	margin: 40px auto; max-width: 620px; padding: 24px 26px; border-radius: 22px;
	background: var(--verre); border: 1px solid var(--arete);
	box-shadow: inset 0 1px 0 var(--arete-vive); font-weight: 700;
}

/* ---------- Pied ---------- */
.mqa-pied { border-top: 1px solid var(--arete); padding: 32px 0; }
.mqa-pied-inner { display: flex; flex-wrap: wrap; gap: 10px 26px; justify-content: space-between; }
.mqa-pied p { margin: 0; color: var(--texte-3); font-size: .86rem; }

/* ---------- Révélation au défilement ---------- */
.mqa-apparait { opacity: 0; transform: translateY(22px) scale(.97); }
.mqa-apparait.est-visible {
	opacity: 1; transform: none;
	transition: opacity .55s var(--sortie) var(--mqa-retard,0ms), transform .72s var(--ressort) var(--mqa-retard,0ms);
}

/* ---------- Adaptations ---------- */
@media (max-width: 880px) {
	.mqa-hero-inner, .mqa-deux-colonnes { grid-template-columns: 1fr; }
	.mqa-hero-scene { min-height: 260px; order: -1; }
	.mqa-menu { display: none; }
}
@media (max-width: 480px) {
	.mqa-faits div { flex: 1 1 40%; padding: 11px 14px; }
	.mqa-bouton-grand { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	.mqa-apparait { opacity: 1; transform: none; }
}

/* =========================================================================
   Entrée de jeu plein écran
   ========================================================================= */
.mqa-splash {
	position: relative;
	min-height: 100svh; min-height: 100vh;
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	padding: 90px 0 70px;
}
.mqa-splash-inner { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; }

.mqa-splash .mqa-hero-scene { min-height: 0; margin-bottom: 8px; }
.mqa-splash .mqa-carte { width: clamp(96px, 22vw, 150px); }

.mqa-wordmark {
	margin: 0; line-height: 1; letter-spacing: -.05em; font-weight: 900;
	font-size: clamp(2.6rem, 13vw, 5.4rem);
}
.mqa-wordmark span { color: #16c4ce; }
.mqa-wordmark b { color: #1b3a86; font-weight: 900; }
.mqa-tagline {
	margin: 2px 0 26px; font-weight: 900; color: #55719c;
	font-size: clamp(.95rem, 3.4vw, 1.25rem); letter-spacing: -.01em;
}

.mqa-jouer {
	position: relative; overflow: hidden;
	display: inline-flex; align-items: center; justify-content: center; gap: 14px;
	width: min(420px, 84vw); min-height: clamp(60px, 11vw, 78px);
	border-radius: 999px; text-decoration: none;
	font-size: clamp(1.3rem, 5.4vw, 1.9rem); font-weight: 900; letter-spacing: .05em;
	color: #fff;
	background-color: #2287dd;
	background-image: linear-gradient(105deg, #16c4ce 0%, #2e86e0 100%);
	box-shadow: 0 6px 0 #1f6ac0, 0 14px 30px rgba(31, 106, 192, .38);
	transition: transform .14s cubic-bezier(.32,.72,.24,1), box-shadow .2s;
}
.mqa-jouer svg { width: 1.05em; height: 1.05em; }
.mqa-jouer::after {
	content: ""; position: absolute; left: 4px; right: 4px; top: 4px; height: 40%;
	border-radius: 999px; background: linear-gradient(180deg, rgba(255,255,255,.36), transparent);
}
.mqa-jouer:active { transform: translateY(5px); box-shadow: 0 1px 0 #1f6ac0; }

.mqa-splash .mqa-faits { margin-top: 26px; justify-content: center; }
.mqa-splash .mqa-faits div {
	padding: 10px 18px; border-radius: 18px; background: rgba(255, 255, 255, .78);
	box-shadow: 0 2px 4px rgba(21,60,122,.06), 0 6px 16px rgba(21,60,122,.10);
}
.mqa-splash .mqa-faits dt { font-size: clamp(1.3rem, 4.6vw, 1.9rem); }

.mqa-defiler {
	position: absolute; left: 50%; bottom: 22px; transform: translateX(-50%);
	width: 46px; height: 46px; border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	color: #2e86e0; background: rgba(255, 255, 255, .82);
	box-shadow: 0 6px 16px rgba(21,60,122,.14);
	animation: mqa-invite 2.2s cubic-bezier(.32,.72,.24,1) infinite;
}
.mqa-defiler svg { width: 22px; height: 22px; }
@keyframes mqa-invite { 0%, 100% { transform: translate(-50%, 0); } 50% { transform: translate(-50%, 7px); } }

@media (max-height: 700px) {
	.mqa-splash { padding: 76px 0 56px; }
	.mqa-splash .mqa-carte { width: clamp(78px, 18vw, 118px); }
	.mqa-splash .mqa-faits { margin-top: 16px; }
	.mqa-tagline { margin-bottom: 18px; }
}


/* MemoQuest Atelier 6.2.0 — intégration des résultats plein écran. */
body.mqa-plein-ecran.mqa-resultats-premium,
body.mqa-plein-ecran.mqa-resultats-premium .mqa-principal,
body.mqa-plein-ecran.mqa-resultats-premium .mqa-contenu-jeu {
	width:100%;
	height:100dvh;
	min-height:100dvh;
	margin:0;
	padding:0;
	overflow:hidden;
}
body.mqa-plein-ecran.mqa-resultats-premium .mq-shell[data-result-screen] {
	width:100%;
	height:100dvh;
	min-height:100dvh;
	max-width:none;
	margin:0;
}
@supports not (height:100dvh) {
	body.mqa-plein-ecran.mqa-resultats-premium,
	body.mqa-plein-ecran.mqa-resultats-premium .mq-shell[data-result-screen] { height:100vh;min-height:100vh; }
}

/* MemoQuest 6.2.2 : empêcher le navigateur mobile de grossir automatiquement les polices du jeu. */
body.mqa-plein-ecran, body.mqa-plein-ecran .mq-shell { -webkit-text-size-adjust:100%; text-size-adjust:100%; }

/* MemoQuest Atelier 6.2.7 — support du tableau de bord Profil partagé. */
body.mqa-plein-ecran.mqa-profil-joueur .mq-shell[data-screen="profil"] {
	width:100%;
	height:100dvh;
	min-height:100dvh;
	max-height:100dvh;
	overflow:hidden;
	-webkit-text-size-adjust:100%;
	text-size-adjust:100%;
}
body.mqa-plein-ecran.mqa-profil-joueur .mq-shell[data-screen="profil"] .mq-profile-scroll {
	overscroll-behavior:contain;
	-webkit-overflow-scrolling:touch;
}
@supports not (height:100dvh) {
	body.mqa-plein-ecran.mqa-profil-joueur .mq-shell[data-screen="profil"] {
		height:100vh;
		min-height:100vh;
		max-height:100vh;
	}
}
