/* Elektronmods Dark Mode: Umschalter im Header (Mond und Stern unter "Log Out") und alle Farben des dunklen Themes.
   Wird nach global.css und elektronmods.css geladen. Aktiv ist das dunkle Theme, wenn <html data-theme="dark"> gesetzt ist
   (Inline-Script in headerinclude: gewähltes Theme aus dem Cookie em_theme, sonst das des Systems; Umschalten über
   jscripts/elektronmods/theme.js). Jede Regel beginnt mit html[data-theme="dark"]; das hebt die Spezifität über die
   Regeln von Dazzle, elektronmods.css und den Plugins. Die Farbtöne stehen als Variablen ganz oben. */

/* =====================================================================
   Umschalter (hell und dunkel)
   ===================================================================== */

/* Unter "Log Out" bzw. "Register", rechtsbündig mit dem Text. Absolut positioniert, damit die Zeile darüber auf Höhe
   des Logos bleibt */
#panel {
	position: relative;
}

.em-theme-toggle {
	position: absolute;
	top: calc(100% - 8px);
	right: -5px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: none;
	color: rgba(255, 255, 255, 0.85);
	font: inherit;
	line-height: 0;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	-webkit-tap-highlight-color: transparent;
	transition: background-color 0.15s, color 0.15s;
}

/* Gäste: der grüne Register-Button reicht tiefer als "Log Out"; der Mond bleibt mittig zwischen Button und Menüleiste */
#panel:has(.registerlink) .em-theme-toggle {
	top: calc(100% - 5px);
}

/* Ohne JavaScript gibt es kein data-theme und der Button hätte keine Funktion */
html:not([data-theme]) .em-theme-toggle {
	display: none;
}

.em-theme-toggle:hover {
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}

.em-theme-toggle:focus {
	outline: 0;
}

.em-theme-toggle:focus-visible {
	outline: 2px solid rgba(255, 255, 255, 0.8);
	outline-offset: 1px;
}

.em-theme-toggle svg {
	display: block;
	width: 18px;
	height: 18px;
	overflow: visible;
}

.em-theme-moon,
.em-theme-star {
	fill: transparent;
	stroke: currentColor;
	stroke-linejoin: round;
	stroke-linecap: round;
	transform-box: fill-box;
	transform-origin: center;
	transition: fill 0.35s, stroke 0.35s;
}

.em-theme-moon {
	stroke-width: 1.8;
}

.em-theme-star {
	stroke-width: 1.3;
}

.em-theme-spark {
	fill: #ffe9a8;
	opacity: 0;
	transform-box: fill-box;
	transform-origin: center;
}

/* Dunkel = eingeschaltet: Mond gefüllt in gedämpftem Gold ohne Schein, damit er nicht ins Auge springt;
   erst beim Überfahren wird er heller und leuchtet leicht */
html[data-theme="dark"] .em-theme-moon {
	fill: #c9b57e;
	stroke: #c9b57e;
}

html[data-theme="dark"] .em-theme-star {
	fill: #ddd2b0;
	stroke: #ddd2b0;
}

html[data-theme="dark"] .em-theme-toggle:hover .em-theme-moon {
	fill: #e6cd84;
	stroke: #e6cd84;
}

html[data-theme="dark"] .em-theme-toggle:hover .em-theme-star {
	fill: #f3e9c8;
	stroke: #f3e9c8;
}

html[data-theme="dark"] .em-theme-toggle:hover svg {
	filter: drop-shadow(0 0 3px rgba(230, 205, 132, 0.3));
}

/* Umschalten auf dunkel: Der Mond schwingt herein, der Stern ploppt auf und funkelt mit drei Funken */
.em-theme-anim-dark .em-theme-moon {
	animation: em-theme-moon-dark 0.75s cubic-bezier(0.3, 0.7, 0.3, 1);
}

.em-theme-anim-dark .em-theme-star {
	animation: em-theme-star-dark 0.8s cubic-bezier(0.3, 0.7, 0.3, 1);
}

.em-theme-anim-dark .em-theme-spark {
	animation: em-theme-spark 0.8s ease-out;
}

.em-theme-anim-dark .em-theme-spark2 {
	animation-delay: 0.08s;
}

.em-theme-anim-dark .em-theme-spark3 {
	animation-delay: 0.16s;
}

/* Umschalten auf hell: Der Mond dreht sich einmal und wird zur Kontur, der Stern verschwindet kurz */
.em-theme-anim-light .em-theme-moon {
	animation: em-theme-moon-light 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}

.em-theme-anim-light .em-theme-star {
	animation: em-theme-star-light 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes em-theme-moon-dark {
	0% {
		transform: rotate(-110deg) scale(0.45);
	}
	55% {
		transform: rotate(14deg) scale(1.12);
	}
	78% {
		transform: rotate(-5deg) scale(0.97);
	}
	100% {
		transform: none;
	}
}

@keyframes em-theme-star-dark {
	0%,
	30% {
		transform: scale(0) rotate(-140deg);
	}
	68% {
		transform: scale(1.55) rotate(20deg);
	}
	100% {
		transform: none;
	}
}

@keyframes em-theme-spark {
	0%,
	40% {
		opacity: 0;
		transform: scale(0);
	}
	60% {
		opacity: 1;
		transform: scale(1.3);
	}
	100% {
		opacity: 0;
		transform: scale(0);
	}
}

@keyframes em-theme-moon-light {
	0% {
		transform: none;
	}
	30% {
		transform: rotate(25deg) scale(0.82);
	}
	100% {
		transform: rotate(-360deg);
	}
}

@keyframes em-theme-star-light {
	0% {
		transform: none;
	}
	30% {
		transform: scale(0) rotate(90deg);
	}
	70% {
		transform: scale(1.25);
	}
	100% {
		transform: none;
	}
}

/* Seitenwechsel per View Transition: theme.js lässt das neue Theme als Kreis vom Button aus wachsen */
::view-transition-old(root),
::view-transition-new(root) {
	animation: none;
	mix-blend-mode: normal;
}

/* Ohne View Transitions blenden die Farben kurz über */
html.em-theme-fade,
html.em-theme-fade *,
html.em-theme-fade *::before,
html.em-theme-fade *::after {
	transition: background-color 0.35s, border-color 0.35s, color 0.35s, fill 0.35s !important;
}

@media (prefers-reduced-motion: reduce) {
	.em-theme-toggle *,
	.em-theme-moon,
	.em-theme-star {
		animation: none !important;
		transition: none;
	}
}

/* Handy: Logo und Leiste stehen untereinander; der Button sitzt dann rechts neben "Log Out" bzw. "Register" */
@media (max-width: 767px) {
	#panel {
		display: flex;
		align-items: center;
	}

	.em-theme-toggle {
		position: static;
		flex: none;
		margin-left: 6px;
		margin-right: -5px;
	}
}

/* =====================================================================
   Farben
   ===================================================================== */

html[data-theme="dark"] {
	color-scheme: dark;
	--dm-page: #11181e;
	--dm-surface: #182129;
	--dm-surface-2: #1c262f;
	--dm-surface-3: #202b35;
	--dm-raised: #222d37;
	--dm-hover: #2a3742;
	--dm-input: #121a20;
	--dm-border: #2b3843;
	--dm-border-strong: #3a4855;
	/* Textfarben entsprechen den Stufen des hellen Themes: text = #383838/#444, text-2 = #555 (Forennamen),
	   muted = #666/#777, faint = #999/#aaa; link = gedämpftes Schieferblau wie #316180, read = Grau gelesener
	   Themen wie #687480 (nur dezent vom Link-Blau verschieden) */
	--dm-text: #c3ced7;
	--dm-text-strong: #e6ecf1;
	--dm-text-2: #b4bfc8;
	--dm-muted: #97a3ad;
	--dm-faint: #7b8893;
	--dm-link: #8aaec7;
	--dm-link-hover: #b3cde0;
	--dm-read: #8d99a4;
	--dm-accent: #4c9bf0;
	--dm-thead: linear-gradient(to bottom, #364b5c, #2b3d4c);
	--dm-thead-border: #1c2a36;
	background: var(--dm-page);
}

/* ---------------------------------------------------------------------
   Grundlagen. Element-Regeln über :where() mit derselben Spezifität wie in Dazzle (a:link, input.textbox …), damit
   speziellere Regeln (Menü, Kopfzeilen, Plugins) ihre eigenen Farben behalten
   --------------------------------------------------------------------- */

html[data-theme="dark"] body {
	background: var(--dm-page);
	color: var(--dm-text);
}

:where(html[data-theme="dark"]) table {
	color: var(--dm-text);
}

:where(html[data-theme="dark"]) a:link,
:where(html[data-theme="dark"]) a:visited {
	color: var(--dm-link);
}

:where(html[data-theme="dark"]) a:hover,
:where(html[data-theme="dark"]) a:active {
	color: var(--dm-link-hover);
}

:where(html[data-theme="dark"]) hr {
	background-color: var(--dm-border-strong);
	color: var(--dm-border-strong);
}

html[data-theme="dark"] .basicbox,
html[data-theme="dark"] fieldset {
	border-color: var(--dm-border);
}

html[data-theme="dark"] fieldset.trow1,
html[data-theme="dark"] fieldset.trow2 {
	border-color: var(--dm-border-strong);
}

html[data-theme="dark"] .avatar img,
html[data-theme="dark"] .user-avatar {
	border-color: var(--dm-border-strong);
	box-shadow: none;
}

html[data-theme="dark"] .avatar img:hover,
html[data-theme="dark"] .user-avatar:hover {
	border-color: var(--dm-muted);
}

html[data-theme="dark"] img.attachment {
	border-color: var(--dm-border-strong);
}

html[data-theme="dark"] .forumdesc,
html[data-theme="dark"] .posttime,
html[data-theme="dark"] .thread_start_datetime,
html[data-theme="dark"] .postmeta .posttime {
	color: var(--dm-faint);
}

html[data-theme="dark"] .highlight {
	background: rgba(255, 215, 107, 0.22);
	color: var(--dm-text-strong);
}

/* ---------------------------------------------------------------------
   Header, Menü, Dropdowns
   --------------------------------------------------------------------- */

html[data-theme="dark"] #header {
	background: #1b2630 linear-gradient(to bottom, #2b3946 0, #25323e 56px, #1f2b36 106px, #1b2630 149px);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06);
}

html[data-theme="dark"] .em-header-icon .pms-unread,
html[data-theme="dark"] .postlikes-unread {
	box-shadow: 0 0 0 2px #28353f;
}

html[data-theme="dark"] .search-box .textbox {
	background: var(--dm-input);
	border-color: var(--dm-border-strong);
	color: var(--dm-text);
}

html[data-theme="dark"] .search-dropdown a:link,
html[data-theme="dark"] .search-dropdown a:visited,
html[data-theme="dark"] .user-dropdown-box-inner,
html[data-theme="dark"] .postlikes-popup-inner {
	background: var(--dm-raised);
	color: var(--dm-text);
}

html[data-theme="dark"] .search-dropdown a:hover,
html[data-theme="dark"] .search-dropdown a:focus {
	background: var(--dm-hover);
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .user-dropdown-box a {
	border-top-color: var(--dm-border);
	color: var(--dm-text) !important;
}

html[data-theme="dark"] .user-dropdown-box a:hover {
	background: var(--dm-hover);
	color: var(--dm-text-strong) !important;
}

html[data-theme="dark"] #quick_login .user-dropdown-box-inner a {
	background: var(--dm-surface-3);
}

html[data-theme="dark"] #quick_login .user-dropdown-box-inner a:hover {
	background: var(--dm-hover);
}

html[data-theme="dark"] .tfoot input.textbox,
html[data-theme="dark"] .thead input.textbox,
html[data-theme="dark"] #panel input.textbox {
	border-color: var(--dm-border-strong);
}

/* Glocke (Post Likes): Popup mit Likes und Antworten */
html[data-theme="dark"] .postlikes-popup-head {
	border-bottom-color: var(--dm-border);
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .postlikes-popup-list li + li,
html[data-theme="dark"] .postlikes-popup-foot {
	border-top-color: var(--dm-border);
}

html[data-theme="dark"] #panel .postlikes-popup-list a,
html[data-theme="dark"] #panel .postlikes-popup-foot a,
html[data-theme="dark"] .postlikes-popup-meta strong {
	color: var(--dm-text);
}

html[data-theme="dark"] #panel .postlikes-popup-foot a + a {
	border-left-color: var(--dm-border);
}

html[data-theme="dark"] #panel .postlikes-popup-list a:hover,
html[data-theme="dark"] #panel .postlikes-popup-list a:focus,
html[data-theme="dark"] #panel .postlikes-popup-foot a:hover,
html[data-theme="dark"] #panel .postlikes-popup-foot a:focus {
	background: var(--dm-hover);
}

html[data-theme="dark"] .postlikes-popup-thread {
	color: var(--dm-link);
}

html[data-theme="dark"] .postlikes-popup-excerpt,
html[data-theme="dark"] .postlikes-popup-meta,
html[data-theme="dark"] .postlikes-popup-none,
html[data-theme="dark"] .postlikes-popup-status {
	color: var(--dm-muted);
}

html[data-theme="dark"] #panel .postlikes-popup-new a {
	background: rgba(76, 155, 240, 0.12);
	box-shadow: inset 3px 0 var(--dm-accent);
}

html[data-theme="dark"] #panel .postlikes-popup-new a:hover,
html[data-theme="dark"] #panel .postlikes-popup-new a:focus {
	background: rgba(76, 155, 240, 0.18);
}

/* ---------------------------------------------------------------------
   Inhaltsbereich, Pfadzeile, Footer
   --------------------------------------------------------------------- */

html[data-theme="dark"] #content {
	background: var(--dm-surface);
	border-top-color: #0d1318;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.6);
}

html[data-theme="dark"] .navigation {
	background: var(--dm-surface-2);
	border-bottom-color: var(--dm-border);
}

html[data-theme="dark"] .navigation .active {
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .navigation .nav-sep {
	color: var(--dm-faint);
}

html[data-theme="dark"] .bottommenu {
	background: var(--dm-surface-2);
	border-top-color: var(--dm-border);
	color: var(--dm-text);
}

html[data-theme="dark"] .bottommenu a {
	border-color: var(--dm-border);
	color: var(--dm-faint);
}

html[data-theme="dark"] .bottommenu a:hover {
	background: var(--dm-hover);
	color: var(--dm-text-strong);
}

html[data-theme="dark"] #copyright {
	border-top-color: var(--dm-border);
	color: var(--dm-faint);
}

html[data-theme="dark"] .mybb-link,
html[data-theme="dark"] #back-top {
	border-color: var(--dm-border);
}

html[data-theme="dark"] #back-top i {
	color: var(--dm-muted);
}

html[data-theme="dark"] #back-top:hover i {
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .mybb-link a,
html[data-theme="dark"] .audentio-link a {
	color: var(--dm-text-2);
}

/* ---------------------------------------------------------------------
   Tabellen (Kästen mit Kopfzeile)
   --------------------------------------------------------------------- */

html[data-theme="dark"] .tborder {
	border-color: var(--dm-border);
}

html[data-theme="dark"] .thead {
	background: #2f4252 var(--dm-thead);
	border-color: var(--dm-thead-border);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07);
	color: #f0f4f7;
}

html[data-theme="dark"] .thead .forumdesc {
	background: var(--dm-raised);
	color: var(--dm-text);
}

html[data-theme="dark"] .thead input.textbox,
html[data-theme="dark"] .thead select {
	border-color: var(--dm-border-strong);
}

html[data-theme="dark"] .tcat {
	background: var(--dm-surface-3);
	border-bottom-color: var(--dm-border);
	color: var(--dm-muted);
}

html[data-theme="dark"] .tcat a:link,
html[data-theme="dark"] .tcat a:visited {
	color: var(--dm-muted);
}

html[data-theme="dark"] .tcat a:hover,
html[data-theme="dark"] .tcat a:active {
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .trow1 {
	background: var(--dm-surface);
	border-bottom-color: var(--dm-border);
}

html[data-theme="dark"] .trow2 {
	background: var(--dm-surface-2);
	border-bottom-color: var(--dm-border);
}

html[data-theme="dark"] .tfoot {
	background: var(--dm-surface-3);
	border-top-color: var(--dm-border);
	color: var(--dm-muted);
}

html[data-theme="dark"] .tfoot a:link,
html[data-theme="dark"] .tfoot a:visited {
	color: var(--dm-text-2);
}

html[data-theme="dark"] .tfoot a:hover,
html[data-theme="dark"] .tfoot a:active {
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .trow_sep {
	background: var(--dm-surface-3);
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .trow_shaded,
html[data-theme="dark"] .post.unapproved_post {
	background: #33202a;
}

html[data-theme="dark"] .post.unapproved_post .post_author,
html[data-theme="dark"] .post.classic.unapproved_post .post_author,
html[data-theme="dark"] .post.unapproved_post .post_controls {
	border-color: #5c3443;
}

html[data-theme="dark"] .trow_deleted,
html[data-theme="dark"] .post.deleted_post {
	background: #26223a;
}

html[data-theme="dark"] .trow_selected,
html[data-theme="dark"] tr.trow_selected td,
html[data-theme="dark"] .selectall {
	background: #35321f;
}

html[data-theme="dark"] .trow_selected a:link,
html[data-theme="dark"] .trow_selected a:visited,
html[data-theme="dark"] .trow_selected a:hover,
html[data-theme="dark"] .trow_selected a:active {
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .index_boardstats,
html[data-theme="dark"] #posts .tborder {
	border-top-color: var(--dm-border) !important;
}

html[data-theme="dark"] #usercppms_e tr:first-child td,
html[data-theme="dark"] #usercpprofile_e tr:first-child td,
html[data-theme="dark"] #usercpmisc_e tr:first-child td,
html[data-theme="dark"] #usercppms_e tr:last-child td,
html[data-theme="dark"] #usercpprofile_e tr:last-child td {
	border-color: var(--dm-border);
}

/* ---------------------------------------------------------------------
   Forenliste
   --------------------------------------------------------------------- */

/* Forennamen grau wie im hellen Theme (Dazzle: #555, beim Überfahren dunkler) */
html[data-theme="dark"] .col-forumdetails a {
	color: var(--dm-text-2);
}

html[data-theme="dark"] .col-forumdetails a:hover {
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .col-postcount,
html[data-theme="dark"] .col-lastpost {
	color: var(--dm-muted);
}

html[data-theme="dark"] .forum-stat .fa {
	color: var(--dm-faint);
}

/* Drehknöpfe: neue Beiträge = heller Knopf mit weißem Ring, sonst dunkler Knopf mit grauem Ring */
html[data-theme="dark"] .forum_status.forum_on {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Ccircle cx='14' cy='14' r='14' fill='%235f7c92'/%3E%3Ccircle cx='14' cy='14' r='8.5' fill='none' stroke='%23fff' stroke-width='2.5'/%3E%3Cpath d='M15.4 12.6l2.4-2.4' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
}

html[data-theme="dark"] .forum_status.forum_off {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Ccircle cx='14' cy='14' r='14' fill='%23323f4a'/%3E%3Ccircle cx='14' cy='14' r='8.5' fill='none' stroke='%238a99a5' stroke-width='2.5'/%3E%3Cpath d='M12.6 15.4l-2.4 2.4' stroke='%238a99a5' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
}

html[data-theme="dark"] .forum_status.forum_offclose {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Ccircle cx='14' cy='14' r='14' fill='%23323f4a'/%3E%3Ccircle cx='14' cy='14' r='8.5' fill='none' stroke='%238a99a5' stroke-width='2.5'/%3E%3Crect x='10.5' y='13.5' width='7' height='5' rx='1' fill='%238a99a5'/%3E%3Cpath d='M12 13.5v-1.7a2 2 0 0 1 4 0v1.7' fill='none' stroke='%238a99a5' stroke-width='1.5'/%3E%3C/svg%3E");
}

html[data-theme="dark"] .forum_status.forum_offlink {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Ccircle cx='14' cy='14' r='14' fill='%23323f4a'/%3E%3Ccircle cx='14' cy='14' r='8.5' fill='none' stroke='%238a99a5' stroke-width='2.5'/%3E%3Cpath d='M11 17l6-6m-4.5 0h4.5v4.5' fill='none' stroke='%238a99a5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Gerätekarten und Button-Paare (Software | Hardware) */
html[data-theme="dark"] .subforum-row,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)),
html[data-theme="dark"] .subforum-row > .subforum-children,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image) > .subforum-row {
	background: var(--dm-raised);
}

html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)) .subforum-row {
	background: none;
}

html[data-theme="dark"] .subforum-image img {
	filter: drop-shadow(0 3px 5px rgba(0, 0, 0, 0.55));
}

html[data-theme="dark"] .subforumbox .subforum-link {
	color: var(--dm-link);
}

html[data-theme="dark"] .subforumbox .subforum-link:hover {
	color: var(--dm-link-hover);
}

html[data-theme="dark"] .subforum-children,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image) .subforum-row {
	border-top-color: var(--dm-border-strong);
}

html[data-theme="dark"] .subforumbox .subforum-children a + a,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)) .subforum-row + .subforum-row {
	border-left-color: var(--dm-border-strong);
}

html[data-theme="dark"] .subforumbox .subforum-children a,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)) .subforum-link {
	color: var(--dm-muted);
}

html[data-theme="dark"] .subforumbox .subforum-children a:hover,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)) .subforum-link:hover {
	background: var(--dm-hover);
	color: var(--dm-link-hover);
}

html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)) .subforum-row:hover {
	background: var(--dm-hover);
}

html[data-theme="dark"] .subforum-row:hover > .subforum-children,
html[data-theme="dark"] .subforum-row > .subforum-children:has(a:focus-visible),
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image):hover > .subforum-row,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image):has(.subforum-link:focus-visible) > .subforum-row {
	background: rgba(34, 45, 55, 0.86);
}

html[data-theme="dark"] .subforumbox .subforum-row:hover > .subforum-children a,
html[data-theme="dark"] .subforumbox .subforum-row > .subforum-children:has(a:focus-visible) a,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image):hover .subforum-link,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image):has(.subforum-link:focus-visible) .subforum-link {
	color: var(--dm-link);
}

html[data-theme="dark"] .subforumbox .subforum-row:hover > .subforum-children a + a,
html[data-theme="dark"] .subforumbox .subforum-row > .subforum-children:has(a:focus-visible) a + a,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image):hover > .subforum-row + .subforum-row,
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image):has(.subforum-link:focus-visible) > .subforum-row + .subforum-row {
	border-left-color: #465664;
}

html[data-theme="dark"] .subforumbox .subforum-row > .subforum-children a:is(:hover, :focus-visible),
html[data-theme="dark"] .subforumbox:not(:has(.subforum-children)):has(> .subforum-image) .subforum-link:is(:hover, :focus-visible) {
	background: rgba(124, 180, 226, 0.14);
	color: var(--dm-link-hover);
}

/* ---------------------------------------------------------------------
   Themenlisten
   --------------------------------------------------------------------- */

html[data-theme="dark"] tr:has(> td > .thread_status) *:is(.subject_old > a, a.subject_old),
html[data-theme="dark"] td.forumdisplay_announcement > a.subject_old,
html[data-theme="dark"] .recentposts_item:not(.recentposts_new) a.recentposts_subject {
	color: var(--dm-read);
}

/* ---------------------------------------------------------------------
   Beiträge
   --------------------------------------------------------------------- */

html[data-theme="dark"] .post.classic {
	border-bottom-color: var(--dm-border);
}

html[data-theme="dark"] .post .post_author {
	background: var(--dm-surface-2);
	border-color: var(--dm-border);
}

html[data-theme="dark"] .post.classic .post_author div.author_statistics,
html[data-theme="dark"] .post .post_author div.author_statistics {
	border-top-color: var(--dm-border);
	color: var(--dm-muted);
}

html[data-theme="dark"] .post .post_author div.author_avatar img {
	border-color: var(--dm-border);
	background: var(--dm-surface);
}

html[data-theme="dark"] .post.classic .post_author div.author_avatar img {
	background: none;
}

html[data-theme="dark"] .author-stat .fa,
html[data-theme="dark"] .author-count .fa,
html[data-theme="dark"] .author_information a.postbit_pm {
	color: var(--dm-faint);
}

html[data-theme="dark"] .author_information a.postbit_pm:hover {
	color: var(--dm-accent);
}

html[data-theme="dark"] .author-count + .author-count {
	border-left-color: var(--dm-border);
}

html[data-theme="dark"] .post .post_head {
	border-bottom-color: var(--dm-border);
}

html[data-theme="dark"] .post .post_head span.post_date,
html[data-theme="dark"] .post .post_head span.edited_post a,
html[data-theme="dark"] .post .post_meta a:link,
html[data-theme="dark"] .post .post_meta a:visited {
	color: var(--dm-muted);
}

html[data-theme="dark"] .post .post_head span.edited_post,
html[data-theme="dark"] .post .post_meta {
	color: var(--dm-faint);
}

html[data-theme="dark"] .post_content .signature {
	border-top-color: var(--dm-border);
}

html[data-theme="dark"] .post_controls {
	background: var(--dm-surface-2);
	border-color: var(--dm-border);
}

html[data-theme="dark"] .post.classic .post_controls {
	background: none;
}

html[data-theme="dark"] .ignored_post,
html[data-theme="dark"] .deleted_post_collapsed {
	border-top-color: var(--dm-border-strong);
}

html[data-theme="dark"] .deleted_post_hidden {
	border-top-color: var(--dm-border);
}

/* Beitrags-Buttons (Reply, Quote, Like …) und Schnellbearbeitung (Save/Cancel) */
html[data-theme="dark"] .postbit_buttons > a:link,
html[data-theme="dark"] .postbit_buttons > a:hover,
html[data-theme="dark"] .postbit_buttons > a:visited,
html[data-theme="dark"] .postbit_buttons > a:active,
html[data-theme="dark"] .post_body > form > button {
	background: #2e4252 linear-gradient(to bottom, #36495a, #2b3d4c);
	border-color: #1c2a36;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
	color: #eef3f6 !important;
}

html[data-theme="dark"] .postbit_buttons > a:hover,
html[data-theme="dark"] .post_body > form > button:hover {
	background: #3b5266;
	border-color: #22323f;
	opacity: 1;
}

html[data-theme="dark"] .postbit_buttons > a.postbit_like.postbit_liked {
	background: #1f6fcc;
	border-color: #17569f;
}

html[data-theme="dark"] .postbit_buttons > a.postbit_like.postbit_liked:hover {
	background: #2a7ddb;
}

html[data-theme="dark"] .postbit_buttons > a.postbit_purge:hover {
	background: #b3261e;
	border-color: #8c1d17;
}

html[data-theme="dark"] .postlikes_static,
html[data-theme="dark"] .postlikes-page-excerpt:link,
html[data-theme="dark"] .postlikes-page-excerpt:visited,
html[data-theme="dark"] .modcp_nav_item.modcp_nav_purgeposts::before {
	color: var(--dm-muted);
}

html[data-theme="dark"] .postlikes-page-date {
	color: var(--dm-faint);
}

/* Zitate und Code */
:where(html[data-theme="dark"]) blockquote,
:where(html[data-theme="dark"]) .codeblock {
	background: #141c23;
	border-color: var(--dm-border-strong);
}

:where(html[data-theme="dark"]) blockquote::before,
:where(html[data-theme="dark"]) .codeblock::before {
	opacity: 0.07;
}

:where(html[data-theme="dark"]) blockquote cite,
:where(html[data-theme="dark"]) .codeblock .title {
	border-bottom-color: var(--dm-border-strong);
}

html[data-theme="dark"] blockquote cite > span {
	color: var(--dm-muted);
}

/* Inline-Schriftfarben im Inhalt (Farbwähler, aus Webseiten kopierter Text, Gruppenfarben der Benutzernamen): theme.js
   markiert Farben mit zu wenig Kontrast zum dunklen Grund. Grautöne werden zur normalen Textfarbe, Farben behalten ihren
   Farbton und werden heller (--em-color). !important schlägt den Inline-Style */
html[data-theme="dark"] .em-color-text {
	color: inherit !important;
}

html[data-theme="dark"] .em-color-light {
	color: var(--em-color) !important;
}

/* Umfragen */
html[data-theme="dark"] .pollbar {
	border-color: var(--dm-border-strong);
}

/* ---------------------------------------------------------------------
   Formulare und Buttons
   --------------------------------------------------------------------- */

:where(html[data-theme="dark"]) input.textbox,
:where(html[data-theme="dark"]) textarea,
:where(html[data-theme="dark"]) select,
:where(html[data-theme="dark"]) input[type="text"],
:where(html[data-theme="dark"]) input[type="password"],
:where(html[data-theme="dark"]) input[type="email"],
:where(html[data-theme="dark"]) input[type="number"],
:where(html[data-theme="dark"]) input[type="search"],
:where(html[data-theme="dark"]) input[type="url"],
:where(html[data-theme="dark"]) input[type="file"] {
	background-color: var(--dm-input);
	border-color: var(--dm-border-strong);
	color: var(--dm-text);
}

:where(html[data-theme="dark"]) input.textbox:focus,
:where(html[data-theme="dark"]) textarea:focus,
:where(html[data-theme="dark"]) select:focus {
	border-color: #557089;
}

:where(html[data-theme="dark"]) input::placeholder,
:where(html[data-theme="dark"]) textarea::placeholder {
	color: var(--dm-faint);
}

html[data-theme="dark"] .tfoot select,
html[data-theme="dark"] .thead select {
	border-color: var(--dm-border-strong);
}

:where(html[data-theme="dark"]) .button,
:where(html[data-theme="dark"]) input[type="button"],
:where(html[data-theme="dark"]) input[type="submit"],
:where(html[data-theme="dark"]) input[type="reset"],
:where(html[data-theme="dark"]) button.button {
	background: #283440 linear-gradient(to bottom, #2c3945, #24303b);
	border-color: var(--dm-border-strong);
	box-shadow: none;
	color: var(--dm-text);
}

:where(html[data-theme="dark"]) .button:hover,
:where(html[data-theme="dark"]) input[type="button"]:hover,
:where(html[data-theme="dark"]) input[type="submit"]:hover,
:where(html[data-theme="dark"]) input[type="reset"]:hover {
	background: #313f4c;
	color: var(--dm-text-strong);
}

:where(html[data-theme="dark"]) .button:active,
:where(html[data-theme="dark"]) input[type="button"]:active,
:where(html[data-theme="dark"]) input[type="submit"]:active {
	background: #222d37;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
}

html[data-theme="dark"] .tfoot .button,
html[data-theme="dark"] .tfoot input[type="button"],
html[data-theme="dark"] #panel .button {
	border-color: var(--dm-border-strong);
}

html[data-theme="dark"] a.button:link,
html[data-theme="dark"] a.button:hover,
html[data-theme="dark"] a.button:visited,
html[data-theme="dark"] a.button:active {
	background: #2b3a47;
	border-color: #3e4f5e;
	color: #eef3f6;
}

html[data-theme="dark"] a.button:hover {
	background: #344555;
	opacity: 1;
}

html[data-theme="dark"] form input.error,
html[data-theme="dark"] input.error,
html[data-theme="dark"] textarea.error,
html[data-theme="dark"] select.error {
	background: var(--dm-input);
	border-color: #ff6a4d;
	color: #ff8a70;
}

html[data-theme="dark"] form input.valid,
html[data-theme="dark"] input.valid,
html[data-theme="dark"] textarea.valid,
html[data-theme="dark"] select.valid {
	background: var(--dm-input);
	border-color: #3fb950;
}

html[data-theme="dark"] form label.error,
html[data-theme="dark"] label.error {
	color: #ff8a70;
}

/* Anhänge: Ablagefläche (Rahmen als Inline-Style im Template post_attachments_new) */
html[data-theme="dark"] #dropzone {
	border-color: var(--dm-border-strong) !important;
}

html[data-theme="dark"] .editor {
	background: var(--dm-surface-3);
	border-color: var(--dm-border-strong);
}

html[data-theme="dark"] .editor_control_bar,
html[data-theme="dark"] .post .editor_control_bar {
	background: var(--dm-surface-3);
	border-color: var(--dm-border-strong);
	color: var(--dm-muted);
}

/* Post-Icon-Auswahl */
html[data-theme="dark"] .posticons_label img,
html[data-theme="dark"] .posticons_list > .posticons_none {
	background: var(--dm-surface-2);
	border-color: var(--dm-border-strong);
}

html[data-theme="dark"] .posticons_list > .posticons_none {
	color: var(--dm-text);
}

html[data-theme="dark"] .posticons_label:hover img,
html[data-theme="dark"] .posticons_list > .posticons_none:hover {
	background: var(--dm-hover);
	border-color: #4d5e6d;
}

html[data-theme="dark"] .posticons_label input:checked + img,
html[data-theme="dark"] .posticons_list > .posticons_none:has(input:checked) {
	background: rgba(76, 155, 240, 0.16);
	border-color: var(--dm-accent);
	box-shadow: 0 0 0 1px var(--dm-accent);
}

html[data-theme="dark"] .posticons_list > .posticons_none:has(input:checked) {
	color: var(--dm-link-hover);
}

/* Registrierung: Popup mit Regeln */
html[data-theme="dark"] .em-agreement-text h3,
html[data-theme="dark"] .em-agreement-text .em-agreement-final {
	border-top-color: var(--dm-border);
}

/* ---------------------------------------------------------------------
   Editor (SCEditor). Text im WYSIWYG-Modus färbt theme.js im iframe
   --------------------------------------------------------------------- */

html[data-theme="dark"] .sceditor-container {
	background: var(--dm-input);
	border-color: var(--dm-border-strong);
	color: var(--dm-text);
}

html[data-theme="dark"] .sceditor-container iframe,
html[data-theme="dark"] .sceditor-container textarea {
	background: var(--dm-input);
	color: var(--dm-text);
}

html[data-theme="dark"] .sceditor-container div.sceditor-toolbar {
	background: var(--dm-surface-3);
	border-bottom-color: var(--dm-border-strong);
}

html[data-theme="dark"] .sceditor-container div.sceditor-group {
	border-left-color: var(--dm-border-strong);
}

html[data-theme="dark"] .sceditor-container .sceditor-button:hover {
	background: #2d3a46;
}

html[data-theme="dark"] .sceditor-container .sceditor-button.active {
	background: #344351;
}

html[data-theme="dark"] .sceditor-container .sceditor-button:active {
	background: #3b4b5a;
}

/* Icons: die dunkelgrauen Linien (#46535c) hell, Farbpunkte behalten ihren Farbton */
html[data-theme="dark"] .sceditor-container .sceditor-button div {
	filter: invert(1) hue-rotate(180deg);
}

html[data-theme="dark"] .sceditor-container .sceditor-button.disabled div {
	opacity: 0.4;
}

html[data-theme="dark"] div.sceditor-dropdown {
	background: var(--dm-raised);
	border-color: var(--dm-border-strong);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45);
	color: var(--dm-text);
}

html[data-theme="dark"] div.sceditor-dropdown a,
html[data-theme="dark"] div.sceditor-dropdown a:link,
html[data-theme="dark"] div.sceditor-dropdown label,
html[data-theme="dark"] .sceditor-font-option,
html[data-theme="dark"] .sceditor-fontsize-option,
html[data-theme="dark"] .sceditor-format a {
	color: var(--dm-text);
}

html[data-theme="dark"] .sceditor-dropdown a:hover {
	background: var(--dm-hover);
}

html[data-theme="dark"] div.sceditor-dropdown input,
html[data-theme="dark"] div.sceditor-dropdown textarea {
	background: var(--dm-input);
	border-color: var(--dm-border-strong);
	color: var(--dm-text);
}

html[data-theme="dark"] div.sceditor-dropdown .button {
	background: #2c3945;
	border-color: var(--dm-border-strong);
	color: var(--dm-text);
}

html[data-theme="dark"] div.sceditor-dropdown .button:hover {
	background: #344351;
}

html[data-theme="dark"] .sceditor-more {
	border-top-color: var(--dm-border-strong);
}

html[data-theme="dark"] .sceditor-color-option {
	border-color: var(--dm-raised);
}

html[data-theme="dark"] .sceditor-color-option:hover {
	border-color: var(--dm-text);
}

html[data-theme="dark"] div.sceditor-dnd-cover {
	background: rgba(0, 0, 0, 0.35);
}

/* Media Upload: Hinweise und Fortschrittsbalken im Bild-/Video-Dropdown */
html[data-theme="dark"] div.sceditor-dropdown div.mediaupload-hint,
html[data-theme="dark"] div.sceditor-dropdown div.mediaupload-or {
	color: var(--dm-muted);
}

html[data-theme="dark"] div.sceditor-dropdown div.mediaupload-or::before,
html[data-theme="dark"] div.sceditor-dropdown div.mediaupload-or::after {
	border-top-color: var(--dm-border-strong);
}

html[data-theme="dark"] div.sceditor-dropdown div.mediaupload-progress {
	background: var(--dm-border);
}

html[data-theme="dark"] div.sceditor-dropdown div.mediaupload-progress div {
	background: var(--dm-accent);
}

html[data-theme="dark"] div.sceditor-dropdown div.mediaupload-error {
	color: #ff7b72;
}

/* Smiley-Button: Tabs Smilies/Emojis (jscripts/elektronmods/emoji.js) */
html[data-theme="dark"] div.sceditor-dropdown .em-picker button:focus-visible {
	outline-color: var(--dm-accent);
}

html[data-theme="dark"] div.sceditor-dropdown div.em-picker-tabs {
	border-bottom-color: var(--dm-border-strong);
}

html[data-theme="dark"] div.sceditor-dropdown .em-picker .em-picker-tab {
	color: var(--dm-muted);
}

html[data-theme="dark"] div.sceditor-dropdown .em-picker .em-picker-tab:hover {
	background: var(--dm-hover);
	color: var(--dm-text);
}

html[data-theme="dark"] div.sceditor-dropdown .em-picker .em-picker-tab[aria-selected="true"] {
	color: var(--dm-text-strong);
}

html[data-theme="dark"] div.sceditor-dropdown .em-picker .em-picker-tab[aria-selected="true"]::after,
html[data-theme="dark"] div.sceditor-dropdown .em-picker .em-picker-nav button.em-picker-current::after {
	background: var(--dm-accent);
}

html[data-theme="dark"] div.sceditor-dropdown .em-picker .em-picker-smilie:hover,
html[data-theme="dark"] div.sceditor-dropdown .em-picker .em-picker-emoji:hover,
html[data-theme="dark"] div.sceditor-dropdown .em-picker .em-picker-nav button:hover {
	background: var(--dm-hover);
}

html[data-theme="dark"] div.sceditor-dropdown div.em-picker-search input:focus {
	border-color: var(--dm-accent);
	box-shadow: 0 0 0 1px var(--dm-accent);
}

html[data-theme="dark"] div.sceditor-dropdown div.em-picker-nav {
	border-bottom-color: var(--dm-border);
}

html[data-theme="dark"] div.sceditor-dropdown div.em-picker-heading {
	background: var(--dm-raised);
	color: var(--dm-muted);
}

html[data-theme="dark"] div.sceditor-dropdown div.em-picker-status {
	color: var(--dm-muted);
}

/* ---------------------------------------------------------------------
   Popups, Menüs, Dialoge
   --------------------------------------------------------------------- */

html[data-theme="dark"] .popup_menu {
	background: var(--dm-raised);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.5);
}

html[data-theme="dark"] .popup_menu .popup_item {
	background: var(--dm-raised);
	color: var(--dm-text);
}

html[data-theme="dark"] .popup_menu .popup_item:hover {
	background: var(--dm-hover);
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .modal {
	background: var(--dm-surface);
	box-shadow: 0 0 20px #000;
	color: var(--dm-text);
}

html[data-theme="dark"] div.jqi {
	background-color: var(--dm-surface);
	border-color: var(--dm-border);
}

html[data-theme="dark"] div.jqi .jqistate {
	background-color: var(--dm-surface);
}

html[data-theme="dark"] div.jqi .jqititle {
	border-bottom-color: var(--dm-border);
	color: var(--dm-text-strong);
}

html[data-theme="dark"] div.jqi .jqimessage {
	color: var(--dm-text);
}

html[data-theme="dark"] div.jqi .jqiclose {
	color: var(--dm-muted);
}

html[data-theme="dark"] div.jqi .jqibuttons {
	background-color: var(--dm-surface-3);
	border-top-color: var(--dm-border);
}

html[data-theme="dark"] div.jqi .jqibuttons button {
	border-left-color: var(--dm-border);
	color: var(--dm-muted);
}

html[data-theme="dark"] div.jqi .jqibuttons button.jqidefaultbutton {
	color: var(--dm-link);
}

html[data-theme="dark"] div.jqi .jqibuttons button:hover,
html[data-theme="dark"] div.jqi .jqibuttons button:focus {
	color: var(--dm-link-hover);
}

html[data-theme="dark"] .jqi .jqiarrowtl,
html[data-theme="dark"] .jqi .jqiarrowtc,
html[data-theme="dark"] .jqi .jqiarrowtr {
	border-bottom-color: var(--dm-surface);
}

html[data-theme="dark"] .jqi .jqiarrowbl,
html[data-theme="dark"] .jqi .jqiarrowbc,
html[data-theme="dark"] .jqi .jqiarrowbr {
	border-top-color: var(--dm-surface);
}

html[data-theme="dark"] #audentio-hoverbox a {
	background: var(--dm-raised);
	border-bottom-color: var(--dm-border);
	color: var(--dm-text);
}

html[data-theme="dark"] #audentio-hoverbox a:hover {
	background: var(--dm-hover);
	color: var(--dm-text-strong);
}

/* Reiter (EasyTabs) */
html[data-theme="dark"] #tab-container .tborder,
html[data-theme="dark"] #tab-container > div {
	border-color: var(--dm-border);
}

html[data-theme="dark"] #tab-container > div {
	background: var(--dm-surface);
}

html[data-theme="dark"] #tab-container ul.etabs li a {
	background: var(--dm-surface-2);
	border-color: var(--dm-border);
	color: var(--dm-faint);
}

html[data-theme="dark"] #tab-container ul.etabs li a.active {
	background: var(--dm-surface) !important;
	color: var(--dm-text-strong);
}

html[data-theme="dark"] #tab-container ul.etabs li a:hover {
	background: var(--dm-hover);
	color: var(--dm-text-strong);
}

/* Benutzer-Auswahlfelder (select2, z. B. Empfänger privater Nachrichten) */
html[data-theme="dark"] .select2-container .select2-choice,
html[data-theme="dark"] .select2-container-multi .select2-choices,
html[data-theme="dark"] .select2-drop,
html[data-theme="dark"] .select2-search input,
html[data-theme="dark"] .select2-drop-active {
	background: var(--dm-input);
	border-color: var(--dm-border-strong);
	color: var(--dm-text);
}

/* Während der Suche setzt select2 Weiß mit Spinner per !important */
html[data-theme="dark"] .select2-search input.select2-active,
html[data-theme="dark"] .select2-container-multi .select2-choices .select2-search-field input.select2-active,
html[data-theme="dark"] .select2-more-results.select2-active {
	background-color: var(--dm-input) !important;
}

html[data-theme="dark"] .select2-container .select2-choice .select2-arrow {
	background: var(--dm-surface-3);
	border-left-color: var(--dm-border-strong);
}

html[data-theme="dark"] .select2-container-multi .select2-choices .select2-search-choice {
	background: var(--dm-hover);
	border-color: var(--dm-border-strong);
	box-shadow: none;
	color: var(--dm-text);
}

html[data-theme="dark"] .select2-container-multi .select2-choices .select2-search-field input {
	color: var(--dm-text);
}

html[data-theme="dark"] .select2-results {
	color: var(--dm-text);
}

html[data-theme="dark"] .select2-results .select2-no-results,
html[data-theme="dark"] .select2-results .select2-searching,
html[data-theme="dark"] .select2-results .select2-selection-limit {
	background: var(--dm-surface-3);
}

html[data-theme="dark"] .select2-results .select2-highlighted {
	background: #2f6db5;
	color: #fff;
}

/* ---------------------------------------------------------------------
   Hinweise, Fehler, Reputation, Warnstufen
   --------------------------------------------------------------------- */

html[data-theme="dark"] .pm_alert,
html[data-theme="dark"] div.error {
	background: #322b17;
	border-color: #7a6219;
	color: #ecdcae;
}

html[data-theme="dark"] div.error p {
	color: #ecdcae;
}

html[data-theme="dark"] div.error p em {
	color: #ff8a80;
}

html[data-theme="dark"] .red_alert {
	background: #3a1d22;
	border-color: #8c3a42;
	color: #f2b8bd;
}

html[data-theme="dark"] .red_alert a:link,
html[data-theme="dark"] .red_alert a:visited,
html[data-theme="dark"] .red_alert a:hover,
html[data-theme="dark"] .red_alert a:active {
	color: #ffd0d4;
}

html[data-theme="dark"] .success_message,
html[data-theme="dark"] .star_rating_success {
	color: #5fcf6d;
}

html[data-theme="dark"] .error_message,
html[data-theme="dark"] .high_warning,
html[data-theme="dark"] .imminent_banned,
html[data-theme="dark"] .high_banned {
	color: #ff7b72;
}

html[data-theme="dark"] .moderate_warning,
html[data-theme="dark"] .moderate_banned {
	color: #ff9a57;
}

html[data-theme="dark"] .low_warning {
	color: #e0a35a;
}

html[data-theme="dark"] .low_banned {
	color: #5fcf6d;
}

html[data-theme="dark"] .offline {
	color: var(--dm-faint);
}

html[data-theme="dark"] .trow_reputation_positive {
	background: #1d3324;
}

html[data-theme="dark"] .trow_reputation_negative {
	background: #3a1d22;
}

html[data-theme="dark"] .reputation_positive {
	color: #5fcf6d;
}

html[data-theme="dark"] .reputation_neutral {
	color: var(--dm-muted);
}

html[data-theme="dark"] .reputation_negative {
	color: #ff7b72;
}

html[data-theme="dark"] ._neutral {
	background-color: var(--dm-surface-2);
	border-color: var(--dm-border-strong);
	color: var(--dm-muted);
}

html[data-theme="dark"] ._minus {
	background-color: #3a1d22;
	border-color: #8c3a42;
	color: #ff8a80;
}

html[data-theme="dark"] ._plus {
	background-color: #1d3324;
	border-color: #2f7a43;
	color: #6fd08a;
}

/* ---------------------------------------------------------------------
   Seitenleisten und Seiten
   --------------------------------------------------------------------- */

html[data-theme="dark"] .pagination a {
	background: var(--dm-surface-3);
	border-color: var(--dm-border-strong);
	box-shadow: none;
	color: var(--dm-muted);
}

html[data-theme="dark"] .pagination a:hover {
	background: var(--dm-hover);
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .pagination .pagination_current {
	background: #2f4252 var(--dm-thead);
	border-color: var(--dm-thead-border);
}

html[data-theme="dark"] .drop_go_page {
	background: var(--dm-surface-3);
}

html[data-theme="dark"] .pagination_breadcrumb {
	background-color: var(--dm-surface-3);
	border-color: var(--dm-surface);
	outline-color: var(--dm-border-strong);
}

html[data-theme="dark"] #page-memberprofile .member-info-box {
	background: var(--dm-surface);
	border-top-color: var(--dm-border);
}

html[data-theme="dark"] .usercp_container,
html[data-theme="dark"] .modqueue_controls {
	background: var(--dm-surface);
	border-color: var(--dm-border-strong);
}

html[data-theme="dark"] .pmspace_container {
	background: var(--dm-input);
	border-color: var(--dm-border-strong);
}

html[data-theme="dark"] .modqueue_meta {
	color: var(--dm-muted);
}

html[data-theme="dark"] .modqueue_mass li a:hover {
	background: var(--dm-hover);
	border-color: var(--dm-border-strong);
}

/* Altes Dazzle-Postbit (Tabelle) */
html[data-theme="dark"] #posts td.author-info,
html[data-theme="dark"] #posts td.postcontrols {
	background: var(--dm-surface-2);
	border-right-color: var(--dm-border);
}

html[data-theme="dark"] #posts td.message {
	background: var(--dm-surface);
}

html[data-theme="dark"] #posts div.postmeta {
	background: var(--dm-surface-3);
	border-bottom-color: var(--dm-border);
}

/* =====================================================================
   Plugins
   ===================================================================== */

/* Shoutbox: Menü am Avatar */
html[data-theme="dark"] .shoutbox_menu {
	background: var(--dm-raised);
	border-color: rgba(255, 255, 255, 0.08);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.5);
	color: var(--dm-text);
}

html[data-theme="dark"] .shoutbox_menu_title {
	border-bottom-color: rgba(255, 255, 255, 0.08);
}

html[data-theme="dark"] .shoutbox_menu a,
html[data-theme="dark"] .shoutbox_menu a:link,
html[data-theme="dark"] .shoutbox_menu a:visited {
	color: var(--dm-text);
}

html[data-theme="dark"] .shoutbox_menu a:hover,
html[data-theme="dark"] .shoutbox_menu a:focus {
	background: rgba(255, 255, 255, 0.06);
	color: var(--dm-text-strong);
}

html[data-theme="dark"] .shoutbox_error,
html[data-theme="dark"] .shoutbox_action_delete:hover {
	color: #ff7b72;
}

/* Social Login: Google und Apple in ihrer Variante für dunklen Grund, GitHub mit Rahmen */
html[data-theme="dark"] .sociallogin a.sociallogin_google {
	background: #131314 !important;
	border-color: #8e918f !important;
	color: #e3e3e3 !important;
}

html[data-theme="dark"] .sociallogin a.sociallogin_google:hover {
	background: #1f1f21 !important;
	color: #e3e3e3 !important;
}

html[data-theme="dark"] .sociallogin a.sociallogin_apple {
	background: #fff !important;
	color: #000 !important;
}

html[data-theme="dark"] .sociallogin a.sociallogin_apple:hover {
	background: #e8e8ed !important;
	color: #000 !important;
}

html[data-theme="dark"] .sociallogin a.sociallogin_github {
	border-color: #3d444d !important;
}

html[data-theme="dark"] .sociallogin_agreement {
	border-color: rgba(255, 255, 255, 0.12);
}

html[data-theme="dark"] .usercp_nav_sociallogin {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23a5b2bd' d='M7.775 3.275a.75.75 0 0 0 1.06 1.06l1.25-1.25a2 2 0 1 1 2.83 2.83l-2.5 2.5a2 2 0 0 1-2.83 0 .75.75 0 0 0-1.06 1.06 3.5 3.5 0 0 0 4.95 0l2.5-2.5a3.5 3.5 0 0 0-4.95-4.95l-1.25 1.25Zm-4.69 9.64a2 2 0 0 1 0-2.83l2.5-2.5a2 2 0 0 1 2.83 0 .75.75 0 0 0 1.06-1.06 3.5 3.5 0 0 0-4.95 0l-2.5 2.5a3.5 3.5 0 0 0 4.95 4.95l1.25-1.25a.75.75 0 0 0-1.06-1.06l-1.25 1.25a2 2 0 0 1-2.83 0Z'/%3E%3C/svg%3E");
}

/* Link Embeds: X im "Dim"-Stil, Instagram dunkel */
html[data-theme="dark"] .linkembed {
	--le-text: #e7ecf0;
	--le-muted: #8b98a5;
	--le-link: #1d9bf0;
	--le-border: #38444d;
	--le-bg: #15202b;
	--le-hover: #1e2732;
}

html[data-theme="dark"] .linkembed_instagram {
	background: #121212;
	border-color: #363636;
	color: #f5f5f5;
}

html[data-theme="dark"] .linkembed a.linkembed_ig_author,
html[data-theme="dark"] .linkembed a.linkembed_ig_logo,
html[data-theme="dark"] .linkembed a.linkembed_ig_captionuser,
html[data-theme="dark"] .linkembed a.linkembed_ig_placeholder {
	color: #f5f5f5;
}

html[data-theme="dark"] .linkembed_instagram a {
	color: #e0f1ff;
}

html[data-theme="dark"] .linkembed .linkembed_ig_avatar {
	background: #262626;
}

html[data-theme="dark"] .linkembed a.linkembed_ig_placeholder {
	background: #1c1c1c;
}

html[data-theme="dark"] .linkembed .linkembed_ig_foot a {
	color: #0095f6;
}

/* GitHub Repo: Farben von GitHubs dunklem Theme, Grundflächen passend zum Forum */
html[data-theme="dark"] .githubrepo {
	--gr-text: #d6dee5;
	--gr-muted: #8e9ba7;
	--gr-link: #58a6ff;
	--gr-border: #33414d;
	--gr-bg: #1c262f;
	--gr-subtle: #212c36;
	--gr-hover: #283541;
	--gr-button: #e6edf3;
	--gr-button-hover: #c9d4dd;
	--gr-button-text: #1f2328;
	--gr-success: #56d364;
	--gr-success-bg: rgba(46, 160, 67, 0.15);
	--gr-success-border: #2ea043;
	--gr-accent-bg: rgba(56, 139, 253, 0.15);
	--gr-accent-border: #1f6feb;
	--gr-border-hover: #4a5a68;
}

html[data-theme="dark"] .githubrepo_lang_dot {
	border-color: rgba(240, 246, 252, 0.12);
}

html[data-theme="dark"] .githubrepo_badge {
	border-color: #9e6a03;
	color: #d29922;
}

html[data-theme="dark"] .githubrepo_md code,
html[data-theme="dark"] .githubrepo_md tt {
	background: rgba(110, 118, 129, 0.4);
}

html[data-theme="dark"] .githubrepo_md kbd {
	border-bottom-color: #3d444d;
	box-shadow: inset 0 -1px 0 #3d444d;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-note {
	border-left-color: #4493f8;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-note .markdown-alert-title {
	color: #4493f8;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-tip {
	border-left-color: #3fb950;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-tip .markdown-alert-title {
	color: #3fb950;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-important {
	border-left-color: #ab7df8;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-important .markdown-alert-title {
	color: #ab7df8;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-warning {
	border-left-color: #d29922;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-warning .markdown-alert-title {
	color: #d29922;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-caution {
	border-left-color: #f85149;
}

html[data-theme="dark"] .githubrepo_md .markdown-alert-caution .markdown-alert-title {
	color: #f85149;
}

/* Syntax-Hervorhebung (GitHub dark) */
html[data-theme="dark"] .githubrepo_md .pl-c {
	color: #9198a1;
}

html[data-theme="dark"] .githubrepo_md .pl-c1,
html[data-theme="dark"] .githubrepo_md .pl-s .pl-v {
	color: #79c0ff;
}

html[data-theme="dark"] .githubrepo_md .pl-e,
html[data-theme="dark"] .githubrepo_md .pl-en {
	color: #d2a8ff;
}

html[data-theme="dark"] .githubrepo_md .pl-smi,
html[data-theme="dark"] .githubrepo_md .pl-s .pl-s1,
html[data-theme="dark"] .githubrepo_md .pl-mi,
html[data-theme="dark"] .githubrepo_md .pl-mb {
	color: #e6edf3;
}

html[data-theme="dark"] .githubrepo_md .pl-ent {
	color: #7ee787;
}

html[data-theme="dark"] .githubrepo_md .pl-k {
	color: #ff7b72;
}

html[data-theme="dark"] .githubrepo_md .pl-s,
html[data-theme="dark"] .githubrepo_md .pl-pds,
html[data-theme="dark"] .githubrepo_md .pl-s .pl-pse .pl-s1,
html[data-theme="dark"] .githubrepo_md .pl-sr,
html[data-theme="dark"] .githubrepo_md .pl-sr .pl-cce,
html[data-theme="dark"] .githubrepo_md .pl-sr .pl-sre,
html[data-theme="dark"] .githubrepo_md .pl-sr .pl-sra {
	color: #a5d6ff;
}

html[data-theme="dark"] .githubrepo_md .pl-v,
html[data-theme="dark"] .githubrepo_md .pl-smw {
	color: #ffa657;
}

html[data-theme="dark"] .githubrepo_md .pl-bu {
	color: #f85149;
}

html[data-theme="dark"] .githubrepo_md .pl-ii {
	background: #8e1519;
	color: #f0f6fc;
}

html[data-theme="dark"] .githubrepo_md .pl-c2 {
	background: #b62324;
	color: #f0f6fc;
}

html[data-theme="dark"] .githubrepo_md .pl-sr .pl-cce {
	color: #7ee787;
}

html[data-theme="dark"] .githubrepo_md .pl-ml {
	color: #f2cc60;
}

html[data-theme="dark"] .githubrepo_md .pl-mh,
html[data-theme="dark"] .githubrepo_md .pl-mh .pl-en,
html[data-theme="dark"] .githubrepo_md .pl-ms {
	color: #1f6feb;
}

html[data-theme="dark"] .githubrepo_md .pl-md {
	background: #67060c;
	color: #ffdcd7;
}

html[data-theme="dark"] .githubrepo_md .pl-mi1 {
	background: #033a16;
	color: #aff5b4;
}

html[data-theme="dark"] .githubrepo_md .pl-mc {
	background: #5a1e02;
	color: #ffdfb6;
}

html[data-theme="dark"] .githubrepo_md .pl-mi2 {
	background: #1158c7;
	color: #f0f6fc;
}
