.madrg {
	--madrg-accent: #1a73e8;
	--madrg-star: #fbbc04;
	--madrg-bg: #fff;
	--madrg-border: #e5e7eb;
	--madrg-text: #1f2937;
	--madrg-muted: #6b7280;
	color: var(--madrg-text);
	font-size: 15px;
	line-height: 1.55;
	margin: 2em 0;
}
.madrg-head {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
.madrg-g { width: 40px; height: 40px; flex: none; }
.madrg-score { display: flex; align-items: center; gap: 8px; }
.madrg-score strong { font-size: 26px; line-height: 1; }
.madrg-count { color: var(--madrg-muted); font-size: 13px; }
.madrg-btn {
	margin-left: auto;
	background: var(--madrg-accent);
	color: #fff !important;
	text-decoration: none !important;
	padding: 9px 18px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
}
.madrg-btn:hover { filter: brightness(1.08); }

/* Stelle */
.madrg-stars { display: inline-flex; gap: 2px; vertical-align: middle; }
.madrg-star {
	position: relative;
	width: 16px; height: 16px;
	background: #d1d5db;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.8 5.8 21l1.2-6.9-5-4.9 6.9-1z'/%3E%3C/svg%3E") center/contain no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.8 5.8 21l1.2-6.9-5-4.9 6.9-1z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.madrg-star span { position: absolute; inset: 0 auto 0 0; background: var(--madrg-star); }

/* Layout griglia */
.madrg--griglia .madrg-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 16px;
}
/* Layout slider (scroll orizzontale, swipe su mobile) */
.madrg--slider .madrg-list {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding-bottom: 8px;
}
.madrg--slider .madrg-card { flex: 0 0 min(320px, 85%); scroll-snap-align: start; }

/* Card */
.madrg-card {
	background: var(--madrg-bg);
	border: 1px solid var(--madrg-border);
	border-radius: 12px;
	padding: 18px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.madrg-author { display: flex; align-items: center; gap: 10px; }
.madrg-author img, .madrg-avatar {
	width: 40px; height: 40px; border-radius: 50%; flex: none; object-fit: cover;
}
.madrg-avatar {
	display: grid; place-items: center;
	background: var(--madrg-accent); color: #fff; font-weight: 700;
}
.madrg-author a, .madrg-author span { font-weight: 600; color: inherit; text-decoration: none; display: block; }
.madrg-author small { color: var(--madrg-muted); font-size: 12px; }
.madrg-text {
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 6;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.madrg-card.is-open .madrg-text { -webkit-line-clamp: unset; display: block; }
.madrg-more {
	align-self: flex-start;
	background: none; border: 0; padding: 0;
	color: var(--madrg-accent); font-size: 13px; font-weight: 600; cursor: pointer;
}
.madrg-powered { color: var(--madrg-muted); font-size: 12px; margin-top: 12px; text-align: right; }
.madrg-error { color: #b91c1c; }

@media (max-width: 600px) {
	.madrg-btn { margin-left: 0; width: 100%; text-align: center; }
}
