.entry-content {
	color: var(--theme-text);
}

.entry-content a:not([href^="https://dl"]):not([href*="/dl"]) {
	color: var(--theme-primary);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

[data-theme="dark"] .entry-content a:not([href^="https://dl"]):not([href*="/dl"]),
.theme-dark .entry-content a:not([href^="https://dl"]):not([href*="/dl"]) {
	color: #c4b5fd;
}

[data-theme="dark"] .entry-content a:not([href^="https://dl"]):not([href*="/dl"]):hover,
.theme-dark .entry-content a:not([href^="https://dl"]):not([href*="/dl"]):hover {
	color: #ddd6fe;
}

.entry-content img,
.single-content img {
	border-radius: 8px;
	max-width: 100%;
	height: auto;
}

.entry-content a[href^="https://dl"],
.entry-content a[href*="/dl"],
.single-content a[href^="https://dl"],
.single-content a[href*="/dl"] {
	background: var(--theme-download-bg, #9b9b9b);
	border: 1px solid var(--theme-download-border, #eeeeee);
	color: var(--theme-download-text, #ffffff);
	text-decoration: none;
	padding: .6em 1.4em;
	display: inline-flex;
	border-radius: 1em;
	margin: .5em 0 0;
	align-items: center;
	gap: 8px;
	line-height: 1.8;
	transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.entry-content a[href^="https://dl"]:hover,
.entry-content a[href*="/dl"]:hover,
.single-content a[href^="https://dl"]:hover,
.single-content a[href*="/dl"]:hover {
	background: var(--theme-download-hover-bg, var(--theme-primary, #e34d4d));
	color: var(--theme-download-text, #ffffff);
	transform: translateY(-1px);
}

[data-theme="dark"] .entry-content a[href^="https://dl"],
[data-theme="dark"] .entry-content a[href*="/dl"],
[data-theme="dark"] .single-content a[href^="https://dl"],
[data-theme="dark"] .single-content a[href*="/dl"],
.theme-dark .entry-content a[href^="https://dl"],
.theme-dark .entry-content a[href*="/dl"],
.theme-dark .single-content a[href^="https://dl"],
.theme-dark .single-content a[href*="/dl"] {
	background: rgba(124, 58, 237, 0.24);
	border-color: rgba(196, 181, 253, 0.34);
	color: #f4f0ff;
}

[data-theme="dark"] .entry-content a[href^="https://dl"]:hover,
[data-theme="dark"] .entry-content a[href*="/dl"]:hover,
[data-theme="dark"] .single-content a[href^="https://dl"]:hover,
[data-theme="dark"] .single-content a[href*="/dl"]:hover,
.theme-dark .entry-content a[href^="https://dl"]:hover,
.theme-dark .entry-content a[href*="/dl"]:hover,
.theme-dark .single-content a[href^="https://dl"]:hover,
.theme-dark .single-content a[href*="/dl"]:hover {
	background: #8b5cf6;
	border-color: #a78bfa;
	color: #ffffff;
}

.entry-content a[href^="https://dl"]::before,
.entry-content a[href*="/dl"]::before,
.single-content a[href^="https://dl"]::before,
.single-content a[href*="/dl"]::before {
	content: "";
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	background-image: var(--theme-download-icon);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex-shrink: 0;
}

.entry-content p.has-background,
.single-content p.has-background {
	display: flex;
	align-items: center;
	gap: 14px;
	border-radius: 16px;
	padding: 14px 20px;
	margin: 20px 0;
	box-shadow: var(--theme-soft-shadow, 0 2px 8px rgba(0, 0, 0, 0.05));
	color: var(--theme-text, #1a1a1a);
	background-color: var(--theme-card-2) !important;
}

[data-theme="dark"] .entry-content p.has-background,
[data-theme="dark"] .single-content p.has-background,
.theme-dark .entry-content p.has-background,
.theme-dark .single-content p.has-background {
	background: rgba(124, 58, 237, 0.18) !important;
	border: 1px solid rgba(196, 181, 253, 0.28);
	color: #f4f6fb;
}

.entry-content p.has-background::before,
.single-content p.has-background::before {
	content: "";
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	background-image: var(--theme-music-note-icon);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.entry-content p.has-background a,
.single-content p.has-background a {
	text-decoration: none;
	font-weight: 500;
	color: var(--theme-content-link, #1a1a1a);
}

[data-theme="dark"] .entry-content p.has-background a,
[data-theme="dark"] .single-content p.has-background a,
.theme-dark .entry-content p.has-background a,
.theme-dark .single-content p.has-background a {
	color: #ddd6fe;
}

.entry-content p.has-background a:hover,
.single-content p.has-background a:hover {
	color: var(--theme-primary, #e34d4d);
}

.entry-content .wp-block-separator.has-alpha-channel-opacity,
.single-content .wp-block-separator.has-alpha-channel-opacity {
	border: none;
	height: 2px;
	background: linear-gradient(90deg, transparent, var(--theme-separator-start, #888), var(--theme-separator-center, #ccc), var(--theme-separator-start, #888), transparent);
	width: 80%;
	margin: 2rem auto;
}

.entry-content table {
	width: 100%;
	border-collapse: collapse;
}

.entry-content th,
.entry-content td {
	border: 1px solid var(--theme-border);
	padding: 10px;
}

.entry-content blockquote {
	margin: 20px 0;
	padding: 14px 18px;
	border-right: 3px solid var(--theme-primary);
	background: var(--theme-card-2);
	border-radius: 8px;
}
