/* ============================================================
   OneDayQuiz — Template nativi (archivi / singoli) che sostituiscono
   i template Elementor "gusci sottili". Il contenuto lo rendono i mu-plugin;
   qui c'è solo il contenitore e il layout.
   ============================================================ */

.odq-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.odq-main {
	padding: 30px 0 60px;
}

/* ---------- Archivi con sidebar (es. Recensioni 70/30) ---------- */
.odq-archive__body {
	display: flex;
	align-items: flex-start;
	gap: 40px;
	margin-top: 20px;
}

.odq-archive__main {
	flex: 1 1 70%;
	min-width: 0;
}

.odq-archive__side {
	flex: 0 0 30%;
}

/* Il wrapper .odg-hub del mu-plugin porta un padding verticale (clamp ~48px top)
   pensato per l'uso come sezione a tutta pagina (/storie/, /migliori-giochi/).
   Dentro l'archivio con sidebar la testata .odg-archhead dà già lo spazio in alto,
   quindi quel padding-top disallinea la prima card rispetto al box ricerca:
   lo azzeriamo perché la colonna griglia parta alla stessa altezza della sidebar. */
.odq-archive__main .odg-hub--archivio {
	padding-top: 0;
}

@media (max-width: 900px) {
	.odq-archive__body {
		flex-direction: column;
	}

	.odq-archive__side {
		flex-basis: auto;
		width: 100%;
	}
}

/* ---------- Modulo di ricerca nativo (sostituisce Ajax Search Lite) ---------- */
.odq-search {
	display: flex;
	align-items: center;
	gap: 6px;
	width: 100%;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid rgba(27, 24, 48, .16);
	border-radius: 14px;
	padding: 5px 5px 5px 20px;
	transition: border-color .2s ease, box-shadow .2s ease;
}

.odq-search:focus-within {
	border-color: var(--brand-purple, #7a3ff2);
	box-shadow: 0 0 0 3px rgba(122, 63, 242, .12);
}

/* Etichetta accessibile, visivamente nascosta. */
.odq-search__label {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.odq-search__input {
	flex: 1 1 auto;
	min-width: 0;
	border: 0;
	outline: 0;
	background: transparent;
	font-family: "Montserrat", system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	font-size: 16px;
	color: #1b1830;
	padding: 14px 0;
}

.odq-search__input::placeholder {
	color: #9a97a8;
	opacity: 1;
}

/* Nasconde la "x" nativa dei campi type=search per un look pulito. */
.odq-search__input::-webkit-search-decoration,
.odq-search__input::-webkit-search-cancel-button {
	-webkit-appearance: none;
}

.odq-search__submit {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border: 0;
	border-radius: 10px;
	background: transparent;
	color: #6a6680;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
}

/* :focus e :active espliciti + scope .odq-search (0,2,1): battono la regola
   globale del parent hello-elementor `[type=submit]:focus{background:#c36}`
   (magenta #cc3366, 0,2,0) che altrimenti lampeggia al click del mouse —
   :focus-visible da solo non basta, il click col mouse dà :focus non :focus-visible. */
.odq-search .odq-search__submit:hover,
.odq-search .odq-search__submit:focus,
.odq-search .odq-search__submit:focus-visible,
.odq-search .odq-search__submit:active {
	background: #f3f0fb;
	color: var(--brand-purple, #7a3ff2);
}

.odq-search__icon {
	display: block;
}

/* ============================================================
   Recensione singola — design editoriale allineato agli articoli
   (token presi da mu-plugins/onedayquiz-giochi-hub/hub.css) + elementi
   distintivi da recensione (rating, Scheda, Pro e Contro, buy box).
   ============================================================ */
.odq-rec {
	--rec-purple: var(--brand-purple, #7a3ff2);
	--rec-ink: #1b1830;
	--rec-body: #2b2840;
	--rec-muted: var(--ui-muted);
	--rec-line: rgba(27, 24, 48, .1);
	--rec-gold: #e0a94a;
	--rec-serif: Georgia, 'Iowan Old Style', 'Times New Roman', serif;
	--rec-display: 'Iowan Old Style', 'Palatino Linotype', 'Palatino', 'Book Antiqua', Georgia, 'Times New Roman', serif;
	--rec-sans: "Montserrat", system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

/* ---------- Header editoriale ---------- */
.odq-rec__head {
	text-align: center;
	max-width: 760px;
	margin: 10px auto 0;
}

.odq-rec .odq-breadcrumb {
	font-family: var(--rec-sans);
	font-size: 13px;
	color: var(--rec-muted);
	margin-bottom: 14px;
}

.odq-rec .odq-breadcrumb a {
	color: var(--rec-muted);
	text-decoration: none;
}

.odq-rec .odq-breadcrumb a:hover {
	color: var(--rec-purple);
}

/* :link/:visited espliciti: batte il globale blu di kit.css `a:visited` (0,1,1),
   così l'eyebrow resta viola come gli altri anche dopo la visita. */
.odq-rec__eyebrow,
.odq-rec__eyebrow:link,
.odq-rec__eyebrow:visited {
	display: inline-block;
	font-family: var(--rec-sans);
	text-transform: uppercase;
	letter-spacing: .16em;
	font-size: 12px;
	font-weight: 700;
	color: var(--rec-purple);
	text-decoration: none;
	margin-bottom: 12px;
}
.odq-rec__eyebrow:hover,
.odq-rec__eyebrow:focus {
	color: var(--link-hover, #6a2fe0);
	text-decoration: underline;
}

.odq-rec__title {
	font-family: var(--rec-display);
	font-weight: 700;
	font-size: clamp(2rem, 5vw, 3.1rem);
	line-height: 1.06;
	letter-spacing: -.018em;
	color: var(--rec-ink);
	margin: 0 0 .7rem;
}

.odq-rec__subtitle {
	font-family: var(--rec-serif);
	font-size: clamp(1.02rem, 1.4vw, 1.18rem);
	line-height: 1.55;
	color: var(--rec-muted);
	margin: 0;
}

/* ---------- Rating hero (distintivo recensione) ---------- */
.odq-rec__rating {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-top: 20px;
	padding: 8px 18px;
	border: 1px solid var(--rec-line);
	border-radius: 999px;
}

.odq-stars {
	position: relative;
	display: inline-block;
	font-size: 22px;
	line-height: 1;
	letter-spacing: 2px;
}

.odq-stars__bg {
	color: #e3e0ea;
}

.odq-stars__fill {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	white-space: nowrap;
	color: var(--rec-gold);
}

.odq-rec__score {
	font-family: var(--rec-sans);
	font-weight: 700;
	font-size: 20px;
	color: var(--rec-ink);
}

.odq-rec__score small {
	font-weight: 500;
	font-size: 13px;
	color: var(--rec-muted);
}

.odq-rec__rating-label {
	font-family: var(--rec-sans);
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: 11px;
	font-weight: 600;
	color: var(--rec-muted);
}

.odq-rec__rule {
	border: 0;
	border-top: 1px solid var(--rec-line);
	max-width: 760px;
	margin: 28px auto 0;
}

/* ---------- Layout 65 / 35 ---------- */
.odq-rec__layout {
	display: flex;
	align-items: stretch;
	gap: 44px;
	margin-top: 34px;
}

.odq-rec__main {
	flex: 1 1 64%;
	min-width: 0;
}

.odq-rec__side {
	flex: 0 0 32%;
	min-width: 0;
}

/* CTA compatta che riappare fissa in alto quando la colonna si svuota. */
.odq-buysticky {
	position: sticky;
	top: 92px;
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px;
	border: 1px solid var(--rec-line);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 10px 30px -18px rgba(27, 24, 48, .5);
}

.odq-buysticky__img {
	flex: 0 0 auto;
}

.odq-buysticky__img img {
	width: 54px;
	height: 54px;
	object-fit: contain;
	border-radius: 8px;
	display: block;
}

.odq-buysticky__info {
	flex: 1 1 auto;
	min-width: 0;
}

.odq-buysticky__price {
	font-family: var(--rec-sans);
	font-weight: 700;
	font-size: 16px;
	color: var(--rec-ink);
	line-height: 1.2;
}

.odq-buysticky__name {
	font-family: var(--rec-sans);
	font-size: 12px;
	color: var(--rec-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.odq-buysticky .odq-btn--amazon {
	flex: 0 0 auto;
	width: auto;
	padding: 12px 18px;
	font-size: 14px;
	border-radius: 10px;
}

.odq-rec__figure {
	margin: 0 0 26px;
	text-align: center;
}

.odq-rec__figure img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

/* ---------- Grafico valutazioni (per-categoria) ---------- */
.odq-ratings {
	border: 1px solid var(--rec-line);
	border-radius: 16px;
	padding: 20px 24px;
	margin-bottom: 28px;
	background: #faf8ff;
}

.odq-ratings__title {
	font-family: var(--rec-sans);
	font-weight: 700;
	font-size: 18px;
	color: var(--rec-ink);
	margin: 0 0 14px;
}

.odq-ratings__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.odq-ratings__row {
	display: grid;
	grid-template-columns: minmax(120px, 34%) 1fr auto;
	align-items: center;
	gap: 14px;
	padding: 7px 0;
}

.odq-ratings__label {
	font-family: var(--rec-sans);
	font-size: 14px;
	font-weight: 500;
	color: var(--rec-body);
}

.odq-ratings__track {
	position: relative;
	height: 9px;
	border-radius: 999px;
	background: #e7e2f3;
	overflow: hidden;
}

.odq-ratings__fill {
	position: absolute;
	inset: 0 auto 0 0;
	border-radius: 999px;
	background: var(--rec-purple);
}

.odq-ratings__score {
	font-family: var(--rec-sans);
	font-weight: 700;
	font-size: 14px;
	color: var(--rec-ink);
	min-width: 26px;
	text-align: right;
}

/* ---------- Tipografia contenuto ---------- */
.odq-rec__content {
	font-family: var(--rec-serif);
	font-size: 18px;
	line-height: 1.75;
	color: var(--rec-body);
}

.odq-rec__content h2 {
	font-family: var(--rec-sans);
	font-weight: 700;
	font-size: 26px;
	line-height: 1.2;
	color: var(--rec-ink);
	margin: 2rem 0 .8rem;
}

.odq-rec__content h3 {
	font-family: var(--rec-sans);
	font-weight: 600;
	font-size: 20px;
	color: var(--rec-ink);
	margin: 1.6rem 0 .6rem;
}

.odq-rec__content p {
	margin: 0 0 1.1rem;
}

.odq-rec__content img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.odq-rec__content a,
.odq-rec__content a:visited {
	color: var(--rec-purple);
}

.odq-rec__disclaimer {
	margin-top: 22px;
	font-family: var(--rec-sans);
	font-size: 12px;
	color: var(--rec-muted);
}

/* ---------- Pro e Contro ---------- */
.odq-proscons {
	margin: 34px 0 10px;
}

.odq-proscons__title {
	font-family: var(--rec-sans);
	font-weight: 700;
	font-size: 24px;
	color: var(--rec-ink);
	margin: 0 0 14px;
}

.odq-proscons__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.odq-proscons__col {
	border-radius: 14px;
	padding: 16px 20px;
}

.odq-proscons__col--pro {
	background: #eaf7ef;
	border: 1px solid #bfe6cd;
}

.odq-proscons__col--contro {
	background: #fdecec;
	border: 1px solid #f3c6c6;
}

.odq-proscons__head {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--rec-sans);
	font-weight: 700;
	font-size: 15px;
	margin: 0 0 8px;
}

.odq-proscons__col--pro .odq-proscons__head {
	color: #1a7a3f;
}

.odq-proscons__col--contro .odq-proscons__head {
	color: #b23434;
}

.odq-proscons__ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	font-style: normal;
	font-weight: 700;
	color: #fff;
	font-size: 13px;
}

.odq-proscons__col--pro .odq-proscons__ico {
	background: #2fa35a;
}

.odq-proscons__col--contro .odq-proscons__ico {
	background: #d85454;
}

.odq-proscons ul {
	margin: 0;
	padding-left: 20px;
	font-family: var(--rec-sans);
	font-size: 15px;
	line-height: 1.5;
	color: var(--rec-body);
}

.odq-proscons li {
	margin-bottom: 6px;
}

/* ---------- Sidebar: card generiche ---------- */
.odq-card {
	border: 1px solid var(--rec-line);
	border-radius: 16px;
	padding: 18px 20px;
	margin-bottom: 22px;
}

.odq-card__title {
	font-family: var(--rec-sans);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--rec-ink);
	margin: 0 0 12px;
}

/* ---------- Buy box ---------- */
.odq-buybox {
	border: 1px solid var(--rec-line);
	border-radius: 16px;
	padding: 20px;
	margin-bottom: 22px;
	text-align: center;
}

.odq-buybox__img {
	display: block;
	margin: 0 auto 14px;
}

.odq-buybox__img img {
	max-width: 190px;
	height: auto;
	border-radius: 10px;
}

.odq-buybox__price,
.odq-buybox__maker {
	font-family: var(--rec-sans);
	font-size: 14px;
	color: var(--rec-body);
	margin-bottom: 12px;
}

.odq-buybox__price span,
.odq-buybox__maker span {
	display: block;
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: 11px;
	font-weight: 600;
	color: var(--rec-muted);
	margin-bottom: 2px;
}

.odq-buybox__price p,
.odq-buybox__maker p {
	margin: 0;
	font-weight: 700;
	font-size: 18px;
	color: var(--rec-ink);
}

.odq-buybox__maker {
	margin-top: 14px;
	margin-bottom: 0;
}

/* Disclosure di affiliazione sotto il pulsante Amazon (15/09/2026). */
.odq-buybox__affiliate {
	margin: .6rem 0 0;
	font-family: var(--rec-sans);
	font-size: .8rem;
	line-height: 1.35;
	color: var(--rec-body);
	opacity: .75;
}
.odq-buybox__affiliate a {
	color: inherit;
	text-decoration: underline;
}

.odq-buybox__price ul,
.odq-buybox__maker ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.odq-buybox__price li,
.odq-buybox__maker li {
	font-weight: 700;
	font-size: 18px;
	color: var(--rec-ink);
}

.odq-buybox__price a,
.odq-buybox__maker a {
	font-weight: 500;
	font-size: 13px;
	color: var(--rec-purple);
}

.odq-btn--amazon {
	display: block;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	background: #0BC024;
	font-family: var(--rec-sans);
	font-size: 16px;
	font-weight: 700;
	padding: 14px 20px;
	border: 0;
	border-radius: 10px;
	text-decoration: none;
	transition: background-color .2s ease;
}

/* Testo bianco su tutti gli stati: batte kit.css `a:hover/:visited/:focus`
   (0,1,1) che altrimenti riporterebbe il testo blu in hover. */
.odq-btn--amazon,
.odq-btn--amazon:link,
.odq-btn--amazon:visited,
.odq-btn--amazon:hover,
.odq-btn--amazon:focus { color: #fff; }

.odq-btn--amazon:hover {
	background: #09a01e;
}

/* ---------- Scheda ---------- */
.odq-scheda__list ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: var(--rec-sans);
	font-size: 14px;
	color: var(--rec-body);
}

.odq-scheda__list li {
	position: relative;
	padding: 8px 0 8px 24px;
	border-bottom: 1px solid var(--rec-line);
	line-height: 1.4;
}

.odq-scheda__list li:last-child {
	border-bottom: 0;
}

.odq-scheda__list li::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 15px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--rec-purple);
}

/* ---------- TOC ---------- */
.odq-rec__toc-list {
	margin: 0;
	padding-left: 18px;
	font-family: var(--rec-sans);
}

.odq-rec__toc-el {
	margin-bottom: 6px;
	line-height: 1.35;
	font-size: 14px;
}

.odq-rec__toc-el--h3 {
	margin-left: 12px;
	list-style: circle;
	font-size: 13px;
}

.odq-rec__toc-list a {
	color: var(--rec-body);
	text-decoration: none;
}

.odq-rec__toc-list a:hover {
	color: var(--rec-purple);
}

/* ---------- Video / search ---------- */
.odq-rec__video {
	margin-bottom: 22px;
}

.odq-rec__video iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	border: 0;
	border-radius: 10px;
}

.odq-rec__search {
	margin-bottom: 22px;
}

/* ---------- Altre recensioni ---------- */
.odq-rec__related-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.odq-rec__related-item {
	margin-bottom: 12px;
}

.odq-rec__related-item a {
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	color: var(--rec-ink);
}

.odq-rec__related-item a:hover .odq-rec__related-name {
	color: var(--rec-purple);
}

.odq-rec__related-thumb img {
	width: 54px;
	height: 54px;
	object-fit: cover;
	border-radius: 8px;
	display: block;
}

.odq-rec__related-name {
	font-family: var(--rec-sans);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
}

@media (max-width: 900px) {
	.odq-rec__layout {
		flex-direction: column;
	}

	.odq-rec__side {
		flex-basis: auto;
		width: 100%;
	}

	.odq-proscons__grid {
		grid-template-columns: 1fr;
	}
}

/* ---------- Pagina 404 ---------- */
.odq-404 {
	padding: 60px 0;
}

.odq-404__grid {
	display: flex;
	align-items: center;
	gap: 40px;
	flex-wrap: wrap;
}

.odq-404__num {
	flex: 0 0 55%;
	text-align: center;
}

.odq-404__num span {
	font-family: "Montserrat", sans-serif;
	font-size: 249px;
	font-weight: 700;
	line-height: 1;
	color: #2181C1;
}

.odq-404__text {
	flex: 1 1 40%;
	min-width: 280px;
}

.odq-404__ooops {
	margin: 0 0 4px;
	font-family: "Montserrat", sans-serif;
	font-size: 53px;
	font-weight: 600;
	line-height: 1.1;
	color: #000;
}

.odq-404__title {
	margin: 0 0 20px;
	font-family: "Montserrat", sans-serif;
	font-size: 26px;
	font-weight: 600;
	line-height: 1.2;
	color: #000;
}

.odq-404__divider {
	border: 0;
	border-top: 3px solid #e8e8e8;
	margin: 20px 0;
}

.odq-404__hint {
	margin: 0 0 12px;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	font-weight: 400;
	color: #8c8c8c;
}

@media (max-width: 768px) {
	.odq-404__num {
		flex-basis: 100%;
	}

	.odq-404__num span {
		font-size: 140px;
	}

	.odq-404__ooops {
		font-size: 40px;
	}
}

/* ---------- Pagina normale (legali, contatti, login/account, sondaggi) ---------- */
.odq-page__container {
	max-width: 880px;
}

.odq-page__head {
	margin: 8px 0 28px;
	padding-bottom: 22px;
	border-bottom: 1px solid rgba(27, 24, 48, .1);
}

.odq-page .odq-breadcrumb {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	/* var(--ui-muted) e non l'hex: #6a6680 non passava AA su questo fondo. */
	color: var(--ui-muted);
	margin-bottom: 12px;
}

.odq-page .odq-breadcrumb a { color: var(--ui-muted); text-decoration: none; }
.odq-page .odq-breadcrumb a:hover { color: var(--link); }

.odq-page__title {
	font-family: 'Iowan Old Style', 'Palatino Linotype', Georgia, 'Times New Roman', serif;
	font-size: clamp(2rem, 4vw, 2.8rem);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -.015em;
	color: #1b1830;
	margin: 0;
}

.odq-page__subtitle {
	font-family: Georgia, 'Iowan Old Style', 'Times New Roman', serif;
	font-style: italic;
	font-size: clamp(1.05rem, 2vw, 1.3rem);
	line-height: 1.4;
	color: #6a6680;
	margin: .6rem 0 0;
}

.odq-page__content {
	font-family: Georgia, 'Iowan Old Style', 'Times New Roman', serif;
	font-size: 17px;
	line-height: 1.8;
	color: #2b2840;
}

.odq-page__content h2 {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 24px;
	color: #1b1830;
	margin: 2rem 0 .7rem;
}

.odq-page__content h3 {
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
	font-size: 19px;
	color: #1b1830;
	margin: 1.6rem 0 .5rem;
}

.odq-page__content h4 {
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
	font-size: 17px;
	color: #1b1830;
	margin: 1.4rem 0 .5rem;
}

.odq-page__content p { margin: 0 0 1.1rem; }

.odq-page__content ul,
.odq-page__content ol { margin: 0 0 1.1rem; padding-left: 1.4rem; }

.odq-page__content li { margin-bottom: .4rem; }

.odq-page__content a, .odq-page__content a:visited { color: var(--link); }

.odq-page__content img { max-width: 100%; height: auto; border-radius: 8px; }

.odq-page__content table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 1.2rem;
	font-size: 15px;
}

.odq-page__content th,
.odq-page__content td {
	border: 1px solid rgba(27, 24, 48, .12);
	padding: 8px 12px;
	text-align: left;
}

/* ---------- Modulo Contatti nativo ---------- */
.odq-contatti__block {
	margin-bottom: 46px;
}

.odq-contatti__block h2 {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 24px;
	color: #1b1830;
	margin: 0 0 .5rem;
}

.odq-contatti__block > p {
	font-family: Georgia, 'Iowan Old Style', serif;
	font-size: 17px;
	line-height: 1.7;
	color: #2b2840;
	margin: 0 0 1.3rem;
}

.odq-form {
	font-family: "Montserrat", sans-serif;
}

.odq-form__hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.odq-form__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.odq-form__row {
	display: block;
	margin-bottom: 16px;
}

.odq-form__row > span {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: #1b1830;
	margin-bottom: 6px;
}

.odq-form__row b {
	color: #cc0a00;
	font-weight: 700;
}

.odq-form input[type="text"],
.odq-form input[type="email"],
.odq-form input[type="tel"],
.odq-form select,
.odq-form textarea {
	width: 100%;
	box-sizing: border-box;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	padding: 12px 14px;
	border: 1px solid #d6d3e0;
	border-radius: 10px;
	background: #fff;
	color: #1b1830;
	transition: border-color .2s ease, box-shadow .2s ease;
}

.odq-form input:focus,
.odq-form select:focus,
.odq-form textarea:focus {
	outline: none;
	border-color: #2181C1;
	box-shadow: 0 0 0 3px rgba(33, 129, 193, .15);
}

.odq-form textarea {
	resize: vertical;
}

.odq-form__check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 14px;
	line-height: 1.45;
	color: #2b2840;
	margin: 4px 0 18px;
}

.odq-form__check input {
	margin-top: 3px;
	flex: 0 0 auto;
}

.odq-form__check a {
	color: #7a3ff2;
}

.odq-form__submit {
	background: #2181C1;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 16px;
	padding: 13px 30px;
	border: 0;
	border-radius: 999px;
	cursor: pointer;
	transition: background-color .2s ease;
}

.odq-form__submit:hover {
	background: #1a6ba0;
}

.odq-form__msg {
	padding: 12px 16px;
	border-radius: 10px;
	font-size: 15px;
	margin: 0 0 18px;
}

.odq-form__msg--ok {
	background: #eaf7ef;
	border: 1px solid #bfe6cd;
	color: #1a7a3f;
}

.odq-form__msg--err {
	background: #fdecec;
	border: 1px solid #f3c6c6;
	color: #b23434;
}

@media (max-width: 600px) {
	.odq-form__grid {
		grid-template-columns: 1fr;
	}
}

/* ---------- Quiz: tipologie (shortcode [odq_tipologie]) ---------- */
.odq-tipologie {
	margin: 34px 0;
}

.odq-tipologie__title {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 26px;
	text-align: center;
	color: #1b1830;
	margin: 0 0 26px;
}

.odq-tipologie__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
	max-width: 920px;
	margin: 0 auto;
}

.odq-tipologie__item {
	display: block;
	transition: transform .2s ease;
}

.odq-tipologie__item:hover {
	transform: translateY(-3px);
}

.odq-tipologie__item img {
	width: 100%;
	height: auto;
	display: block;
}

.odq-tipologie__more {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 19px;
	line-height: 1.3;
	text-align: center;
	color: #9900CC;
}

@media (max-width: 600px) {
	.odq-tipologie__grid { grid-template-columns: repeat(2, 1fr); }
}

/* ---------- Quiz: box icona materia (shortcode [odq_materia_icona]) ---------- */
.odq-materia {
	display: block;
	max-width: 360px;
	margin: 0 auto;
	text-decoration: none;
}

.odq-materia__outer {
	display: block;
	padding: 15px;
	border-radius: 20px;
	background: linear-gradient(135deg, #2181C1 0%, #005A96 100%);
	transition: background .3s ease;
}

.odq-materia:hover .odq-materia__outer {
	background: linear-gradient(135deg, #9900CC 0%, #7903A1 100%);
}

.odq-materia__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	padding: 28px 24px 24px;
	border-radius: 14px;
	background: rgba(255, 255, 255, .79);
}

.odq-materia__icon {
	width: clamp(140px, 40vw, 200px);
	height: auto;
	object-fit: contain;
}

.odq-materia__title {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.2;
	text-align: center;
	color: #2181C1;
	transition: color .3s ease;
}

.odq-materia:hover .odq-materia__title {
	color: #9900CC;
}

/* ---------- Single articolo (contenuto 65% + sidebar 35%) ---------- */
.odq-article__body {
	display: flex;
	align-items: stretch;
	gap: 40px;
	margin-top: 20px;
}

.odq-article__content {
	flex: 1 1 65%;
	min-width: 0;
}

.odq-article__side {
	flex: 0 0 34%;
}

@media (max-width: 900px) {
	.odq-article__body {
		flex-direction: column;
	}

	.odq-article__side {
		flex-basis: auto;
		width: 100%;
	}
}

/* ------------------------------------------------------------
   Blocco "Dettagli" (core/details) dentro un articolo: è il
   contenitore delle soluzioni negli articoli sugli enigmi.
   Il core non gli dà margine, quindi il paragrafo successivo
   restava attaccato al riepilogo. Qui gli si dà respiro e si
   rende evidente che il riepilogo è cliccabile. Niente colore
   nuovo: il tema ha già conflitti noti su link e :visited.
   ------------------------------------------------------------ */
.odq-article__content .wp-block-details {
	margin: 0 0 1.8em;
}

.odq-article__content .wp-block-details > summary {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	cursor: pointer;
	margin: 0;
	padding: .45rem 1rem;
	font-size: .8rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--brand-purple, #7a3ff2);
	background: rgba(122, 63, 242, .08);
	border: 1px solid rgba(122, 63, 242, .25);
	border-radius: 999px;
	list-style: none;
	user-select: none;
	-webkit-user-select: none;
	transition: background .15s ease, color .15s ease;
}

/* Via il triangolino di default: il verso lo dà la freccia qui sotto. */
.odq-article__content .wp-block-details > summary::-webkit-details-marker { display: none; }
.odq-article__content .wp-block-details > summary::marker { content: ''; }

.odq-article__content .wp-block-details > summary::after {
	content: '';
	width: .5em;
	height: .5em;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-2px);
	transition: transform .2s ease;
}

.odq-article__content .wp-block-details[open] > summary::after {
	transform: rotate(-135deg) translateY(-2px);
}

.odq-article__content .wp-block-details > summary:hover,
.odq-article__content .wp-block-details > summary:focus-visible {
	background: rgba(122, 63, 242, .16);
	color: var(--link-hover, #6a2fe0);
}

/* Da aperto, la risposta non deve toccare il riepilogo. */
.odq-article__content .wp-block-details[open] > summary {
	margin-bottom: .7em;
}

.odq-article__content .wp-block-details > :not(summary):first-of-type {
	margin-top: 0;
}

.odq-article__content .wp-block-details > :not(summary):last-child {
	margin-bottom: 0;
}

/* ============================================================
   Sondaggi — archivio [loop_sondaggi] e singolo [single_sondaggi].
   Redesign nativo "this-or-that" allineato allo stile del sito.
   I nomi di classe legacy (.sondaggi-option, .sondaggi-vote,
   .sondaggi-counter, .percent-N) sono conservati: il voto AJAX
   (js/o-ajax.js + o-onload.js) vi si aggancia.
   ============================================================ */
/* Palette e font del modulo: stanno su entrambi i contenitori perché il singolo
   stampa anche testo FUORI dalla lista .odq-polls (intro sopra le card, corpo sotto). */
.odq-polls,
.odq-poll-single {
	--p-blu: #2181c1;
	--p-corallo: #e0733a;
	--p-ink: #1b1830;
	--p-body: #3a3652;
	--p-muted: #6a6680;
	--p-line: rgba(27, 24, 48, .1);
	--p-serif: 'Iowan Old Style', 'Palatino Linotype', Georgia, 'Times New Roman', serif;
	--p-sans: "Montserrat", system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

.odq-polls {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 26px;
}

/* ---------- Card sondaggio ---------- */
.odq-poll {
	background: #fff;
	border: 1px solid var(--p-line);
	border-radius: 18px;
	padding: 22px 22px 24px;
	box-shadow: 0 18px 40px -30px rgba(27, 24, 48, .5);
}

.odq-poll__q {
	font-family: var(--p-serif);
	font-size: clamp(1.2rem, 2.4vw, 1.5rem);
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 18px;
	text-align: center;
}

.odq-poll__q a {
	color: var(--p-ink);
	text-decoration: none;
}

.odq-poll__q a:hover { color: var(--p-blu); }

/* ---------- Griglia "VS" ---------- */
.odq-poll__grid {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: stretch;
	gap: 10px;
}

.odq-poll__side {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 14px 12px;
	border-radius: 14px;
	background: #fafafc;
	border: 1px solid var(--p-line);
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.odq-poll__side.is-leading {
	background: #fff;
	box-shadow: 0 10px 26px -18px rgba(33, 129, 193, .55);
}

/* Accenti per lato: 1 = blu, 2 = corallo */
.sondaggi-option-1 { --p-accent: var(--p-blu); }
.sondaggi-option-2 { --p-accent: var(--p-corallo); }
.odq-poll__side.is-leading { border-color: var(--p-accent); }

.odq-poll__medialink,
.odq-poll__media {
	display: block;
	width: 100%;
}

.odq-poll__media {
	border-radius: 12px;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #eee;
}

.odq-poll__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .3s ease;
}

.odq-poll__medialink:hover .odq-poll__media img { transform: scale(1.04); }

.odq-poll__label {
	font-family: var(--p-sans);
	font-weight: 700;
	font-size: 18px;
	color: var(--p-ink);
	text-align: center;
	line-height: 1.2;
}

/* Barra percentuale */
.odq-poll__bar {
	width: 100%;
	height: 8px;
	border-radius: 999px;
	background: rgba(27, 24, 48, .08);
	overflow: hidden;
}

.odq-poll__fill {
	display: block;
	height: 100%;
	border-radius: 999px;
	background: var(--p-accent);
	transition: width .5s ease;
}

.odq-poll__meta {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 8px;
	font-family: var(--p-sans);
}

.odq-poll__meta .sondaggi-vote-percent {
	font-size: 20px;
	font-weight: 800;
	color: var(--p-accent);
}

.odq-poll__votes {
	font-size: 12px;
	color: var(--p-muted);
	font-weight: 600;
}

/* Bottone Vota / stato Votato */
.odq-poll__votelink { text-decoration: none; width: 100%; margin-top: auto; }
.odq-poll__votelink .odq-poll__vote { margin-top: 0; }

.odq-poll__vote,
.odq-poll__voted {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	width: 100%;
	margin-top: auto;
	padding: 10px 16px;
	border-radius: 999px;
	font-family: var(--p-sans);
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	user-select: none;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

.odq-poll__vote {
	color: var(--p-accent);
	background: transparent;
	border: 2px solid var(--p-accent);
}

.odq-poll__vote:hover {
	background: var(--p-accent);
	color: #fff;
}

.odq-poll__voted {
	color: #fff;
	background: var(--p-accent);
	border: 2px solid var(--p-accent);
	cursor: default;
}

.odq-heart {
	flex: 0 0 auto;
	font-size: 15px;
}

.odq-heart--fill { fill: currentColor; }

.odq-heart--line {
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linejoin: round;
}

/* Pastiglia VS centrale */
.odq-poll__vs {
	align-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--p-ink);
	color: #fff;
	font-family: var(--p-sans);
	font-weight: 800;
	font-size: 14px;
	letter-spacing: .04em;
	box-shadow: 0 6px 16px -6px rgba(27, 24, 48, .6);
}

/* ---------- Hub dei sondaggi (page-sondaggi-divertenti.php) ---------- */
/* Il paragrafo che apre il contenuto è la descrizione della sezione: fa da
   seguito alla testata, che è centrata, quindi lo impaginiamo allo stesso modo
   invece di lasciarlo prosa allineata a sinistra. Solo il PRIMO: il testo che
   sta sotto le card (le idee per le storie) resta prosa da leggere. */
.odq-page--hub .odq-page__content > p:first-child {
	max-width: 720px;
	margin: 0 auto 30px;
	text-align: center;
}

/* ---------- Singolo sondaggio (card ingrandita) ---------- */
.odq-poll-single__container { max-width: 820px; }

.odq-poll-single__head {
	text-align: center;
	margin: 6px 0 26px;
}

.odq-poll-single .odq-breadcrumb {
	font-family: var(--p-sans, "Montserrat", sans-serif);
	font-size: 13px;
	color: var(--ui-muted);
	margin-bottom: 12px;
}

.odq-poll-single .odq-breadcrumb a { color: var(--ui-muted); text-decoration: none; }
.odq-poll-single .odq-breadcrumb a:hover { color: var(--ui-accent); }

.odq-poll-single__eyebrow {
	display: inline-block;
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .12em;
	color: #e0733a;
	margin-bottom: 8px;
}

.odq-poll-single__title {
	font-family: 'Iowan Old Style', 'Palatino Linotype', Georgia, 'Times New Roman', serif;
	font-size: clamp(2rem, 4.4vw, 3rem);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -.015em;
	color: #1b1830;
	margin: 0;
}

/* Testo introduttivo dell'editor: centrato come l'H1, largo quanto una riga
   leggibile (le card sotto restano a tutta larghezza del contenitore). */
.odq-poll-single__intro {
	max-width: 640px;
	margin: -10px auto 28px;
	text-align: center;
	font-family: var(--p-serif);
	font-size: 17px;
	line-height: 1.65;
	color: var(--p-body);
}

.odq-poll-single__intro > :first-child { margin-top: 0; }
.odq-poll-single__intro > :last-child { margin-bottom: 0; }
.odq-poll-single__intro p { margin: 0 0 .9rem; }
.odq-poll-single__intro a { color: var(--p-blu); }

/* Seguito del testo quando è lungo: sotto le card, impaginato come le pagine
   native (.odq-page__content porta font, titoli, liste e link). */
.odq-poll-single__body {
	margin: 34px auto 0;
	padding-top: 28px;
	border-top: 1px solid var(--p-line);
}

.odq-poll-single__body > :first-child { margin-top: 0; }
.odq-poll-single__body > :last-child { margin-bottom: 0; }

.odq-poll--single { padding: 26px 26px 30px; }
.odq-poll--single .odq-poll__label { font-size: 22px; }
.odq-poll--single .odq-poll__media { aspect-ratio: 1 / 1; }
.odq-poll--single .odq-poll__meta .sondaggi-vote-percent { font-size: 26px; }
.odq-poll--single .odq-poll__vs { width: 54px; height: 54px; font-size: 16px; }

/* ---------- Altri sondaggi ---------- */
.odq-poll-single__more {
	margin-top: 46px;
	padding-top: 30px;
	border-top: 1px solid rgba(27, 24, 48, .1);
}

.odq-poll-single__moretitle {
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 20px;
	color: #1b1830;
	margin: 0 0 18px;
	text-align: center;
}

.odq-pollmini {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 16px;
}

.odq-pollmini__link {
	display: block;
	text-decoration: none;
	background: #fff;
	border: 1px solid rgba(27, 24, 48, .1);
	border-radius: 14px;
	overflow: hidden;
	transition: transform .2s ease, box-shadow .2s ease;
}

.odq-pollmini__link:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 30px -20px rgba(27, 24, 48, .5);
}

.odq-pollmini__media {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #eee;
}

.odq-pollmini__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.odq-pollmini__q {
	display: block;
	padding: 12px 14px;
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.25;
	color: #1b1830;
}

.odq-poll-single__all { text-align: center; margin: 30px 0 0; }

/* Bottone CTA (replica quello della home, che carica il CSS solo in front-page) */
.odq-poll-single .odq-btn-cta {
	display: inline-block;
	background: #2181c1;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-weight: 700;
	font-size: 16px;
	padding: 14px 32px;
	border-radius: 999px;
	text-decoration: none;
	transition: background-color .2s ease, transform .2s ease;
}

.odq-poll-single .odq-btn-cta:hover { background: #1a6ba0; transform: translateY(-2px); }

/* ---------- Responsive: impila i due lati, VS diventa divisore ---------- */
@media (max-width: 560px) {
	.odq-poll__grid {
		grid-template-columns: 1fr;
	}

	.odq-poll__vs {
		width: 38px;
		height: 38px;
		font-size: 12px;
		margin: 2px auto;
	}
}



/* ---------- Download istruzioni (sotto Pro e Contro) ---------- */
.odq-rec__download {
	margin-top: 40px;
}

.odq-rec__download-title {
	margin-bottom: 12px;
}

.odq-btn--download {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: auto;
	padding: 12px 18px;
	font-size: 14px;
	border-radius: 10px;
}

.odq-btn__icon {
	width: 16px;
	height: 16px;
	flex: 0 0 auto;
}

/* --- Firma autore nelle recensioni --- */
.odq-rec__byline{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.6rem;margin:1.1rem 0 0;font-size:.95rem;line-height:1.3;text-align:center}
.odq-rec__byline-avatar{border-radius:50%;width:40px;height:40px;flex:0 0 40px}
.odq-rec__byline a{font-weight:600;text-decoration:none}
.odq-rec__byline a:hover{text-decoration:underline}
.odq-rec__byline-sep{opacity:.5;margin:0 .15rem}
.odq-rec__byline time{opacity:.7}

/* --- Pagina autore --- */
.odq-author__head{display:flex;gap:1.5rem;align-items:flex-start;flex-wrap:wrap;margin:2rem 0 2.5rem}
.odq-author__avatar img{border-radius:50%;width:128px;height:128px}
.odq-author__intro{flex:1 1 320px;min-width:0}
.odq-author__name{margin:0 0 .5rem}
.odq-author__bio{margin:0 0 .75rem;max-width:60ch;line-height:1.55}
.odq-author__links{margin:0;font-size:.95rem}
.odq-author__subtitle{margin:0 0 1rem}
.odq-author__list{list-style:none;margin:0;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.odq-author__item-link{display:flex;flex-direction:column;gap:.5rem;text-decoration:none;height:100%}
.odq-author__thumb{display:block;aspect-ratio:16/9;overflow:hidden;border-radius:10px;background:rgba(0,0,0,.06)}
.odq-author__thumb img{width:100%;height:100%;object-fit:cover;display:block}
/* Recensioni: le scatole dei giochi hanno proporzioni diverse, e col cover su 16:9
   restavano tagliate. Immagine intera su fondo bianco (le foto prodotto sono già
   scontornate su bianco), con un filo di bordo che tiene la griglia allineata.
   Le storie restano in cover: le copertine sono pensate per il 16:9. */
.odq-author__item--recensioni .odq-author__thumb{aspect-ratio:1/1;background:#fff;border:1px solid rgba(27,24,48,.1);box-sizing:border-box}
.odq-author__item--recensioni .odq-author__thumb img{object-fit:contain}
.odq-author__kicker{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#1b1830}
.odq-author__item-title{display:block;font-weight:600;line-height:1.3}
.odq-author__date{display:block;font-size:.85rem;color:#1b1830}
.odq-author__pager{margin:2rem 0}

@media (max-width:600px){
  .odq-author__avatar img{width:88px;height:88px}
  /* Card orizzontali: con il riquadro quadrato a colonna unica ogni recensione
     era alta quanto lo schermo è largo. */
  .odq-author__list{grid-template-columns:1fr;gap:.75rem}
  .odq-author__item-link{flex-direction:row;align-items:center;gap:.9rem}
  .odq-author__thumb{flex:0 0 112px;width:112px}
  .odq-author__text{flex:1 1 auto;min-width:0}
  .odq-rec__byline{font-size:.9rem}
}


/* ---------- Pagina di un gioco online: gioco + sidebar (page-gioco-online.php) ---------- */
.odq-page__container--gioco { max-width: 1200px; }
.odq-gioco__body { display: flex; align-items: flex-start; gap: 40px; }
.odq-gioco__main { flex: 1 1 0; min-width: 0; }
.odq-gioco__side { flex: 0 0 300px; display: flex; flex-direction: column; gap: 1.6rem; position: sticky; top: calc(80px + 1.5rem); }
.odq-gioco__body--solo .odq-gioco__main { max-width: 880px; }
.odq-gioco-side__title {
	font-family: system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .12em;
	color: #6a6680; margin: 0 0 .8rem; line-height: 1.2;
}
.odq-gioco-side__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .7rem; }
.odq-gioco-side__item,
.odq-gioco-side__item:visited,
.odq-gioco-side__item:focus {
	display: flex; align-items: center; gap: .8rem; padding: .5rem; border: 1px solid rgba(27, 24, 48, .1);
	border-radius: 12px; background: #fff; text-decoration: none; color: #1b1830;
}
.odq-gioco-side__item:hover { border-color: #7a3ff2; }
.odq-gioco-side__thumb { flex: 0 0 72px; aspect-ratio: 16 / 10; border-radius: 8px; overflow: hidden; background: #ece9f6; display: block; }
.odq-gioco-side__img { width: 100%; height: 100%; object-fit: cover !important; display: block; padding: 0 !important; margin: 0; }
.odq-gioco-side__name { font-family: 'Iowan Old Style', 'Palatino Linotype', Georgia, serif; font-weight: 700; font-size: 1rem; line-height: 1.25; }
/* Il box prodotto è pensato per la colonna dell'articolo: in 300 px si impila. */
.odq-gioco-side__block--prodotto .odg-prodotto { flex-direction: column; align-items: stretch; margin: 0; }
.odq-gioco-side__block--prodotto .odg-prodotto__media { width: 100%; max-width: none; }
.odq-gioco-side__block--prodotto .odg-prodotto__img { max-height: 150px; width: auto; max-width: 100%; margin: 0 auto; }
@media (max-width: 900px) {
	.odq-gioco__body { flex-direction: column; gap: 2rem; }
	.odq-gioco__side { flex-basis: auto; width: 100%; position: static; }
}

/* Pulsanti Contorno: lo stile globale di WP porta il testo a #fff su
   :visited, ma lo sfondo resta trasparente (testo invisibile dopo il clic).
   Hover/focus/active hanno già lo sfondo scuro: lì il bianco resta. */
.wp-block-button.is-style-outline .wp-block-button__link:visited {
	color: #000;
}

.wp-block-button.is-style-outline .wp-block-button__link:visited:hover,
.wp-block-button.is-style-outline .wp-block-button__link:visited:focus,
.wp-block-button.is-style-outline .wp-block-button__link:visited:active {
	color: #fff;
}

/* --- Recensione → versione online del gioco (card in sidebar) --- */
.odq-gioco-card__link, .odq-gioco-card__link:visited, .odq-gioco-card__link:focus { display: block; text-decoration: none; color: #1b1830; }
.odq-gioco-card__thumb { display: block; aspect-ratio: 16 / 10; border-radius: 10px; overflow: hidden; background: #ece9f6; }
.odq-gioco-card__img { width: 100%; height: 100%; object-fit: cover !important; display: block; padding: 0 !important; margin: 0; }
.odq-gioco-card__name { display: block; margin-top: .6rem; font-family: 'Iowan Old Style', 'Palatino Linotype', Georgia, serif; font-weight: 700; font-size: 1.05rem; line-height: 1.25; }
.odq-gioco-card__txt { margin: .4rem 0 .8rem; font-size: .92rem; line-height: 1.4; opacity: .8; }
.odq-gioco-card__btn, .odq-gioco-card__btn:link, .odq-gioco-card__btn:visited, .odq-gioco-card__btn:hover, .odq-gioco-card__btn:focus {
	display: block; text-align: center; padding: 12px 18px; border-radius: 10px; background: #7a3ff2; color: #fff; font-weight: 700; text-decoration: none; box-shadow: none;
}
.odq-gioco-card__btn:hover { background: #6428d6; }
