/**
 * Consentement Promptique — palette de la marque, indépendante du thème.
 * Le sélecteur reste préfixé pour ne rien emprunter au thème Gridlove.
 */
.pqc {
	position: fixed;
	inset: auto 0 0;
	z-index: 99999;
	display: grid;
	justify-items: center;
	padding: 16px;
	pointer-events: none;
	font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.pqc[hidden] { display: none; }

.pqc__card {
	width: min(100%, 720px);
	padding: 22px 24px;
	background: #fff;
	border: 1px solid #deddd7;
	border-radius: 18px;
	box-shadow: 0 24px 54px rgb(24 24 30 / 14%), 0 4px 16px rgb(24 24 30 / 6%);
	pointer-events: auto;
}

.pqc__card h2 {
	margin: 0 0 8px;
	color: #18181d;
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.3;
}

.pqc__card > p {
	margin: 0 0 16px;
	color: #44454f;
	font-size: 13.5px;
	line-height: 1.6;
}

.pqc__list {
	display: grid;
	gap: 10px;
	max-height: 38vh;
	margin: 0 0 18px;
	padding: 0;
	overflow: auto;
	list-style: none;
}

.pqc__list[hidden] { display: none; }

.pqc__list label {
	display: flex;
	gap: 11px;
	align-items: flex-start;
	padding: 12px;
	background: #f7f6f2;
	border: 1px solid #deddd7;
	border-radius: 9px;
	cursor: pointer;
}

.pqc__list input {
	width: 17px;
	height: 17px;
	flex: none;
	margin: 3px 0 0;
	accent-color: #5b58dc;
}

.pqc__list span { display: grid; gap: 3px; min-width: 0; }
.pqc__list strong { color: #18181d; font-size: 14px; }
.pqc__list small { color: #44454f; font-size: 12.5px; }
.pqc__list em { color: #73747e; font-size: 11.5px; font-style: normal; }

.pqc__actions { display: flex; flex-wrap: wrap; gap: 8px; }

.pqc__button {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 10px 18px;
	color: #fff;
	background: #5b58dc;
	border: 1px solid #5b58dc;
	border-radius: 9px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 620;
	cursor: pointer;
}

.pqc__button:hover { background: #4441ba; border-color: #4441ba; }
.pqc__button[hidden] { display: none; }

.pqc__button--secondary { color: #18181d; background: transparent; border-color: #deddd7; }
.pqc__button--secondary:hover { background: #f7f6f2; border-color: #c8c6ee; }

.pqc__button--quiet { color: #4441ba; background: transparent; border-color: transparent; }
.pqc__button--quiet:hover { background: #efefff; border-color: transparent; }

.pqc__button:focus-visible { outline: 2px solid #5b58dc; outline-offset: 2px; }

.pqc-registry { width: 100%; margin: 16px 0; border-collapse: collapse; font-size: 14px; }
.pqc-registry th,
.pqc-registry td { padding: 9px 10px; border: 1px solid #deddd7; text-align: left; vertical-align: top; }
.pqc-registry th { background: #f7f6f2; font-weight: 660; }

@media (max-width: 560px) {
	.pqc__actions .pqc__button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.pqc * { transition: none !important; animation: none !important; }
}
