.mrp-poll {
	background: var(--container-bg, #111);
	border: 1px solid var(--card-border, #333);
	border-radius: 8px;
	padding: 18px 20px;
	margin: 20px auto;
	max-width: 520px;
	color: var(--text-color, #eee);
	box-shadow: 0 2px 8px rgba(0,0,0,0.3);
	text-shadow: 0 1px 2px rgba(0,0,0,0.6);
}
.mrp-poll h3 {
	margin: 0 0 8px 0;
	color: var(--text-color, #fff);
	font-size: 1.25em;
	text-align: center;
	font-family: 'Orbitron', sans-serif;
	font-weight: 700;
	text-shadow: 0 1px 3px rgba(0,0,0,0.8);
}
.mrp-result-row {
	margin-bottom: 12px;
}
.mrp-result-row strong {
	color: var(--text-color, #fff);
	font-weight: 600;
}
.mrp-bar {
	background: rgba(255,255,255,0.08);
	height: 14px;
	margin: 5px 0;
	border-radius: 4px;
	overflow: hidden;
}
.mrp-bar span {
	display: block;
	background: var(--link-color, #1d9bf0);
	height: 100%;
	border-radius: 4px;
	transition: width 0.3s ease;
}
.mrp-vote-form label {
	display: block;
	margin: 8px 0;
	color: var(--text-color, #eee);
	cursor: pointer;
	font-weight: 500;
}
.mrp-vote-form input[type="radio"] {
	margin-right: 8px;
}
.mrp-vote-form input[type="text"] {
	width: 100%;
	max-width: 300px;
	padding: 6px 8px;
	background: var(--bg-color, #222);
	border: 1px solid var(--card-border, #444);
	color: var(--text-color, #fff);
	border-radius: 4px;
}
.mrp-vote-form button[type="submit"] {
	background: var(--button-bg, #1d9bf0);
	color: var(--button-text, #fff);
	border: none;
	padding: 8px 22px;
	font-size: 1em;
	border-radius: 4px;
	cursor: pointer;
	margin-top: 8px;
	transition: background 0.15s ease, transform 0.15s ease;
	font-family: 'Orbitron', sans-serif;
	font-weight: 600;
	text-shadow: none;
}
.mrp-vote-form button[type="submit"]:hover {
	background: var(--primary-hover-color, #1a8cd8);
	transform: translateY(-1px);
}
/* Share icons – centered + individual colors */
.mrp-share {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 14px;
	margin: 14px 0 4px 0;
	font-size: 0.9em;
}
.mrp-share a {
	opacity: 0.9;
	transition: opacity 0.15s ease;
	text-shadow: none;
}
.mrp-share a:hover {
	opacity: 1;
}
.mrp-share a[title*="X"] { color: #1d9bf0 !important; }
.mrp-share a[title*="Facebook"] { color: #1877f2 !important; }
.mrp-share a[title*="TikTok"] { color: #fe2c55 !important; }
.mrp-share a[title*="Copy"] { color: #aaa !important; }
.mrp-poll-results-list .mrp-poll-result-item {
	background: var(--container-bg, #111);
	border: 1px solid var(--card-border, #333);
	border-radius: 8px;
	padding: 16px;
	margin-bottom: 20px;
	color: var(--text-color, #ddd);
}
/* Stronger contrast on lighter themes */
[data-theme="tan"] .mrp-poll,
[data-theme="purple"] .mrp-poll,
[data-theme="moss"] .mrp-poll,
[data-theme="pink"] .mrp-poll,
[data-theme="lightblue"] .mrp-poll,
[data-theme="mint"] .mrp-poll,
[data-theme="cream"] .mrp-poll {
	background: rgba(0, 0, 0, 0.75);
	color: #f0f0f0;
}
[data-theme="tan"] .mrp-poll h3,
[data-theme="purple"] .mrp-poll h3,
[data-theme="moss"] .mrp-poll h3,
[data-theme="pink"] .mrp-poll h3,
[data-theme="lightblue"] .mrp-poll h3,
[data-theme="mint"] .mrp-poll h3,
[data-theme="cream"] .mrp-poll h3 {
	color: #ffffff;
}
/* Force high-contrast text inside the poll on every theme */
.mrp-poll,
.mrp-poll h3,
.mrp-poll label,
.mrp-poll .mrp-result-row strong,
.mrp-poll-results-list .mrp-poll-result-item,
.mrp-poll-results-list .mrp-poll-result-item h3,
.mrp-poll-results-list .mrp-poll-result-item strong {
	color: #f5f5f5 !important;
	text-shadow: 0 1px 2px rgba(0,0,0,0.7);
}
.mrp-poll h3,
.mrp-poll-results-list .mrp-poll-result-item h3 {
	color: #ffffff !important;
	font-weight: 700;
}
/* Keep the vote button text readable */
.mrp-vote-form button[type="submit"] {
	color: var(--button-text, #fff) !important;
	text-shadow: none;
}
.closed-badge {
	background: #b32d2e;
	color: #fff;
	font-size: 0.75em;
	padding: 2px 6px;
	border-radius: 3px;
	margin-left: 6px;
	font-weight: 600;
}
.mrp-locations {
	margin-top: 12px;
	padding-top: 8px;
	border-top: 1px solid rgba(255,255,255,0.1);
	font-size: 0.9em;
	color: #7eb8ff;
}
.mrp-locations strong {
	color: #aaa !important;
	font-weight: 600;
}
.mrp-locations .loc-count {
	color: #888;
	font-size: 0.85em;
}
.mrp-poll-result-item > p {
	color: #ccc;
}
.mrp-poll-result-item > p strong {
	color: #aaa;
	font-weight: 600;
}
.mrp-vote-split {
	display: inline-block;
	margin-top: 4px;
	font-size: 0.9em;
	color: #7eb8ff;
	opacity: 0.9;
}
.mrp-vote-split .vote-num {
	color: #fff;
	font-weight: 600;
}