.socialpoll-container {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	border-radius: 1.25rem;
	margin-bottom: 1.25rem;
	overflow: hidden;
	box-shadow: 10px 10px 20px 0 rgba(0, 0, 0, 0.05);
}

.socialpoll-container.socialpoll-voted .socialpoll-options {
	@apply pointer-events-none;
}

.socialpoll-container.loading {
	pointer-events: none;
	opacity: 0.7;
	transition: opacity 0.5s ease-in-out;
}

.socialpoll-question {
	background-color: var(--socialpoll-questionBg, #f9fafb);
	color: var(--socialpoll-questionText, #111827);
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 1.25rem;
	text-align: center;
}

.socialpoll-question h3 {
	font-weight: 600;
	margin: 0 !important;
}

.socialpoll-options {
	background-color: var(--socialpoll-optionsBg, #f3f4f6);
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 1rem;
	padding: 1.25rem;
}

.socialpoll-option-label {
	background-color: var(--socialpoll-optionBg, #f3f4f6);
	color: var(--socialpoll-optionText, #111827);
	border-radius: 1.25rem;
	padding: 1.25rem;
	cursor: pointer;
	transition: background-color 0.2s ease-in-out;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	position: relative;
	overflow: hidden;
}

.socialpoll-option-input {
	display: none;
	visibility: hidden;
}

.socialpoll-option-content {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.5rem;
	position: relative;
	z-index: 10;
}

.socialpoll-option-content [data-lucide] {
	width: 1.25rem;
	height: 1.25rem;
}

.socialpoll-option-content span {
	font-size: 1.125rem;
}

.socialpoll-option-percentage {
	z-index: 10;
}

.socialpoll-option-percentage span {
	font-size: 1.125rem;
	color: inherit;
}

.socialpoll-option-percentage-overlay {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	border-radius: 0;
	transition: width 3s ease-in-out;
	width: 0%;
}

.socialpoll-option-percentage-overlay.visible {
	width: attr(data-width %);
}

.socialpoll-votes {
	display: none;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
}

.socialpoll-votes.visible {
	display: flex;
}

.socialpoll-votes span {
	font-size: 0.875rem;
	color: #6b7280;
}

.socialpoll-container.socialpoll-voted .socialpoll-option-label {
	background-color: var(--socialpoll-nonVotedOptionBg, #e5e7eb);
	color: var(--socialpoll-nonVotedOptionText, #111827);
	transition: background-color 0.2s ease-in-out;
}

.socialpoll-container.socialpoll-voted .socialpoll-option-label.socialpoll-option-voted {
	background-color: var(--socialpoll-votedOptionBg, #3b82f6);
	color: var(--socialpoll-votedOptionText, #ffffff);
	font-weight: bold;
	transition: background-color 0.2s ease-in-out;
}

.socialpoll-container .socialpoll-option-percentage-overlay.visible {
	background-color: var(--socialpoll-resultsBar, #e5e7eb);
	transition: width 1s ease-in-out;
}

.socialpoll-option-label:hover {
	background-color: var(--socialpoll-optionBgHover, #e5e7eb);
	color: var(--socialpoll-optionTextHover, #111827);
	transition: background-color 0.2s ease-in-out;
}
