@font-face {
	font-family: 'Roboto';
	src: url(../../../images/fonts/Roboto-Light.ttf) format('truetype');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Montserrat';
	src: url(../../../images/fonts/Montserrat-Bold.ttf) format('truetype');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

* { box-sizing: border-box; }

body {
	background-color: #060b14 !important;
	color: #d0dffb !important;
	margin: 0;
	font-family: 'Roboto', Tahoma, Verdana, Arial, sans-serif !important;
	font-size: 14px;
	line-height: 1.55;
	position: relative;
}
body::before {
	content: "";
	position: fixed;
	top: 0; left: 0; right: 0; bottom: 0;
	background: linear-gradient(rgba(0,3,8,0.6), rgba(0,3,8,0.92)), url(../../../images/portal-bg.jpg) center center / cover no-repeat;
	z-index: -1;
}

a:link, a:visited { color: #8fd4ff; text-decoration: none; }
a:hover, a:active { color: #00ccff; text-decoration: underline; }

#container { color: #d0dffb; min-width: 0; }
.wrapper { width: 90%; max-width: 1180px; margin: 0 auto; }

/* ================= KOPFZEILE ================= */
#logo {
	background: linear-gradient(120deg, #0a1626 0%, #12253a 55%, #0d2f3e 100%) !important;
	border-bottom: 1px solid rgba(0,204,255,0.16);
	padding: 0 !important;
}
#logo .wrapper {
	display: flex; align-items: center; flex-wrap: wrap; gap: 1.4rem;
	padding: 0.65rem 0;
	min-height: 90px;
	box-sizing: border-box;
}
@media (min-width: 761px) {
	#logo .wrapper { flex-wrap: nowrap; }
}

.gk-back-btn {
	display: inline-flex; align-items: center; gap: 0.35rem;
	padding: 0.4rem 0.85rem 0.4rem 0.7rem; border-radius: 999px;
	border: 1px solid rgba(74,222,128,0.45); background: rgba(74,222,128,0.08);
	color: #4ade80 !important; font-family: 'Montserrat', sans-serif;
	font-size: 0.72rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;
	text-decoration: none !important; white-space: nowrap; transition: box-shadow 0.2s ease;
	flex-shrink: 0;
}
.gk-back-btn:hover { box-shadow: 0 0 10px rgba(74,222,128,0.35); }
.gk-back-btn svg { width: 13px !important; height: 13px !important; flex-shrink: 0; display: block; }

.gk-logo-text {
	font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 1.35rem;
	letter-spacing: 0.16em; color: #eaf6ff !important; text-decoration: none !important;
	text-shadow: 0 0 10px rgba(0,204,255,0.4); flex-shrink: 0;
}

#logo ul.top_links {
	list-style: none; margin: 0; padding: 0;
	display: flex; align-items: center; justify-content: center; gap: 0.3rem; flex-wrap: wrap;
	flex: 1;
}
#logo ul.top_links li { display: inline; }
#logo ul.top_links a {
	display: inline-block; padding: 0.45rem 0.95rem; border-radius: 999px;
	color: #9fb4c8 !important; font-size: 0.82rem; text-decoration: none !important;
	transition: background 0.15s ease, color 0.15s ease;
}
#logo ul.top_links a:hover { background: rgba(0,204,255,0.12); color: #00ccff !important; }

.gk-userarea {
	display: flex; align-items: center; flex-shrink: 0; margin-left: auto;
	background: linear-gradient(120deg, rgba(0,204,255,0.1), rgba(0,204,255,0.04));
	border: 1px solid rgba(0,204,255,0.22);
	border-radius: 999px;
	padding: 0.25rem 0.25rem 0.25rem 1rem;
	gap: 0.8rem;
}
.gk-avatar { display: block; width: 62px; height: 62px; border-radius: 50%; overflow: hidden; border: 2px solid rgba(0,204,255,0.5); flex-shrink: 0; position: relative; box-shadow: 0 0 12px rgba(0,204,255,0.35); }
.gk-avatar, .gk-avatar:hover, .gk-avatar:link, .gk-avatar:visited, .gk-avatar:active { text-decoration: none !important; }
.gk-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gk-avatar-empty { background: linear-gradient(135deg, rgba(0,204,255,0.35), rgba(0,80,120,0.5)); display: flex; align-items: center; justify-content: center; }
.gk-avatar-empty::after {
	content: attr(data-initial);
	color: #eaf6ff; font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 1.35rem;
}
.gk-usertext { display: flex; flex-direction: column; gap: 0.25rem; padding: 0.15rem 0; }

.gk-row {
	display: flex; align-items: center; gap: 0.85rem;
}
.gk-row-top { justify-content: space-between; }
.gk-row-badges:empty { display: none; }
.gk-row-badges { gap: 0.5rem; }

.gk-name { color: #eaf6ff !important; font-size: 1.15rem; font-weight: 700; text-decoration: none !important; font-family: 'Montserrat', sans-serif; white-space: nowrap; max-width: 170px; overflow: hidden; text-overflow: ellipsis; display: inline-block; vertical-align: middle; }
.gk-icons { display: flex; align-items: center; gap: 0.7rem; }
.gk-icon { color: #9fc3d8 !important; text-decoration: none !important; display: inline-flex; align-items: center; }
.gk-icon svg { width: 21px; height: 21px; display: block; }
.gk-icon:hover { color: #00ccff !important; }
.gk-logout { margin-left: 1.5rem; }
.gk-logout:hover { color: #ff8f8f !important; }

.gk-row-badges li { list-style: none; display: inline-flex; }
.gk-row-badges li a {
	display: inline-flex; align-items: center; gap: 0.3rem;
	padding: 0.22rem 0.6rem 0.22rem 0.5rem; border-radius: 999px;
	background: rgba(0,204,255,0.14); border: 1px solid rgba(0,204,255,0.35);
	color: #a8dcf0 !important; font-family: 'Montserrat', sans-serif; font-weight: 700;
	font-size: 0.6rem; letter-spacing: 0.06em; text-transform: uppercase;
	text-decoration: none !important; white-space: nowrap;
	transition: background 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}
.gk-row-badges li a:hover {
	background: rgba(0,204,255,0.26); border-color: #00ccff; color: #eaf6ff !important;
	box-shadow: 0 0 8px rgba(0,204,255,0.35);
}
.gk-row-badges li a::before {
	content: "";
	display: inline-block; width: 12px; height: 12px; flex-shrink: 0;
	background-repeat: no-repeat; background-position: center; background-size: contain;
}
.gk-row-badges li a[href*="modcp.php"]::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300ccff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7.5' cy='15.5' r='5.5'/%3E%3Cpath d='M21 2l-9.6 9.6'/%3E%3Cpath d='M15.5 7.5l3 3L22 7l-3-3'/%3E%3C/svg%3E");
}
.gk-row-badges li a[href*="/admin"]::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300ccff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l8 4v6c0 5-3.5 8.5-8 10-4.5-1.5-8-5-8-10V6z'/%3E%3C/svg%3E");
}
.gk-userarea-guest {
	background: none !important; border: none !important; padding: 0 !important; gap: 0.6rem;
}
.gk-guest-link {
	padding: 0.4rem 0.9rem; border-radius: 999px; font-size: 0.78rem;
	border: 1px solid rgba(0,204,255,0.35); color: #8fd4ff !important; text-decoration: none !important;
}
.gk-guest-link.gk-register { background: rgba(0,204,255,0.14); border-color: rgba(0,204,255,0.5); color: #eaf6ff !important; }


/* ================= INHALT ================= */
#content { padding: 1.8rem 0 3rem !important; width: auto !important; }

.tborder {
	background: rgba(10,18,28,0.9) !important; backdrop-filter: blur(2px);
	border: 1px solid rgba(255,255,255,0.07) !important;
	border-radius: 10px !important;
	width: 100% !important; margin: 0 0 1.2rem !important; padding: 0 !important; overflow: hidden;
	border-collapse: collapse !important; border-spacing: 0 !important;
}
.gk-catbox { border-radius: 10px !important; margin: 0 0 0.7rem !important; }
#content .wrapper > table.tborder > thead > tr > td.thead { border-top: 3px solid #00ccff !important; }
.tfixed { table-layout: fixed; word-wrap: break-word; }

.thead {
	background: rgba(0,204,255,0.07) !important; color: #cfe4f5 !important;
	border-bottom: 1px solid rgba(255,255,255,0.07) !important;
	padding: 0.85rem 1rem !important; font-family: 'Montserrat', sans-serif !important;
	font-size: 0.72rem !important; letter-spacing: 0.1em; text-transform: uppercase;
}
.thead a:link, .thead a:visited { color: #cfe4f5 !important; text-decoration: none; }
.thead a:hover { color: #00ccff !important; }
.thead img { display: none !important; }

.tcat {
	background: rgba(255,255,255,0.025) !important; color: #8fa2b8 !important;
	border-top: 1px solid rgba(255,255,255,0.05) !important; border-bottom: 1px solid rgba(255,255,255,0.05) !important;
	padding: 0.6rem 1rem !important; font-size: 0.66rem !important; font-family: 'Montserrat', sans-serif !important;
	letter-spacing: 0.2em; text-transform: uppercase;
}
.tcat a:link, .tcat a:visited { color: #8fa2b8 !important; }

.thead .desc { display: block; font-family: 'Roboto', sans-serif; font-size: 0.72rem; letter-spacing: normal; text-transform: none; color: #7a95ad; margin-top: 0.2rem; font-weight: normal; }
.expcolimage { display: none !important; }
.trowstat { color: #7a95ad !important; font-size: 0.78rem; }
.gk-stat { display: flex; align-items: center; justify-content: center; gap: 0.3rem; white-space: nowrap; }
.gk-stat + .gk-stat { margin-top: 0.3rem; }
.gk-stat svg { width: 13px; height: 13px; flex-shrink: 0; opacity: 0.8; }

.gk-forum-icon { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; background: none !important; position: relative; }
.gk-forum-icon svg { width: 34px; height: 34px; color: #5a6b80; }
.gk-forum-icon.forum_offclose svg { color: #ff6677; }
.gk-forum-icon.forum_offlink svg { color: #00ff88; }
.gk-forum-icon.forum_on::after {
	content: '';
	position: absolute;
	top: 1px; right: 1px;
	width: 10px; height: 10px;
	border-radius: 50%;
	background: #00ccff;
	border: 2px solid #060b14;
	box-shadow: 0 0 6px rgba(0,204,255,0.85);
}

.trow1, .trow2 { background: rgba(255,255,255,0.015) !important; border-bottom: 1px solid rgba(255,255,255,0.09) !important; color: #d0dffb !important; padding: 0.2rem; }
.trow1 td, .trow2 td { padding-top: 0.7rem !important; padding-bottom: 0.7rem !important; }

.subject_editable a {
	font-size: 1.08rem !important; font-weight: 700 !important; color: #7dd8ff !important;
}
.trow1 .smalltext, .trow2 .smalltext,
.trow1 .smalltext a, .trow2 .smalltext a {
	font-size: 0.76rem !important; font-weight: normal !important; color: #8fa2b8 !important;
}

.trow_shaded { background: rgba(232,196,119,0.06) !important; }

.tfoot {
	background: rgba(10,16,26,0.85) !important; backdrop-filter: blur(2px);
	color: #a3adc0 !important; padding: 0.85rem 1.1rem !important; border-top: 1px solid rgba(255,255,255,0.06) !important;
	font-size: 0.74rem !important;
}
.tfoot a:link, .tfoot a:visited { color: #cfe4f5 !important; text-decoration: none; }
.tfoot a:hover { color: #00ccff !important; }

/* ================= FUSSZEILE ================= */
#footer { background: rgba(8,13,20,0.82) !important; backdrop-filter: blur(2px); color: #57647a !important; }
#footer .upper, #footer .lower { padding: 0.8rem 0 !important; font-size: 0.74rem !important; border: none !important; background: transparent !important; }
#footer .upper .wrapper, #footer .lower .wrapper { width: 90%; max-width: 1180px; margin: 0 auto; }
#footer a:link, #footer a:visited { color: #8fa2b8 !important; }
#footer a:hover { color: #00ccff !important; }
#footer ul.menu { list-style: none; margin: 0; padding: 0; }
#footer ul.menu li { display: inline; margin-right: 0.9rem; }

/* ================= FORMULARE / BUTTONS ================= */
input.textbox, textarea, select {
	background: rgba(0,3,10,0.6) !important; color: #d0dffb !important;
	border: 1px solid rgba(0,204,255,0.3) !important; border-radius: 4px; padding: 7px;
	font-family: 'Roboto', Tahoma, Verdana, Arial, sans-serif; font-size: 14px; outline: 0;
}
input.textbox:focus, textarea:focus { border-color: #00ccff !important; box-shadow: 0 0 8px rgba(0,204,255,0.25); }

button, input.button, a.button:link, a.button:visited {
	display: inline-block; padding: 7px 18px; cursor: pointer;
	font-family: 'Montserrat', sans-serif; font-size: 12px; letter-spacing: 0.04em; text-transform: uppercase;
	background: linear-gradient(135deg, rgba(0,204,255,0.22), rgba(0,150,255,0.12)) !important;
	border: 1px solid rgba(0,204,255,0.45) !important; border-radius: 999px !important; color: #eaf8ff !important; text-decoration: none;
	transition: box-shadow 0.2s ease;
}
button:hover, input.button:hover, a.button:hover { box-shadow: 0 0 12px rgba(0,204,255,0.3); }

.pagination a { padding: 5px 10px; border-radius: 4px; background: rgba(0,204,255,0.07) !important; border: 1px solid rgba(0,204,255,0.18) !important; color: #8fd4ff !important; }
.pagination .pagination_current { color: #eaf6ff !important; font-weight: bold; }

/* ================= BEITRAEGE ================= */
.post .post_author { background: rgba(255,255,255,0.02) !important; border-bottom: 1px solid rgba(255,255,255,0.05) !important; }
.post_content { color: #d0dffb !important; }
blockquote { background: rgba(0,3,10,0.4) !important; border-left: 3px solid rgba(0,204,255,0.35) !important; border-radius: 0 6px 6px 0; padding: 10px 14px; }
.codeblock { background: rgba(0,3,10,0.55) !important; border: 1px solid rgba(0,204,255,0.16) !important; border-radius: 6px; padding: 10px; }

/* ================= LEGENDE ================= */
.forum_legend, .thread_legend { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1.4rem; margin: 0.3rem 0 !important; padding: 0 !important; }
.forum_legend dt, .thread_legend dt { margin: 0 !important; float: none !important; display: flex; align-items: center; }
.forum_legend dd, .thread_legend dd { margin: 0 !important; float: none !important; display: flex; align-items: center; color: #a3adc0 !important; font-size: 0.8rem; white-space: nowrap; }
.forum_legend img, .thread_legend img { margin-right: 0.5rem; }
.forum_legend .thread_status, .thread_legend .thread_status { margin-right: 0.5rem; }

.forum_legend .forum_status, .thread_legend .forum_status {
	display: inline-block; width: 18px; height: 18px; margin-right: 0.5rem;
	background-repeat: no-repeat; background-position: center; background-size: contain;
}
.forum_legend .forum_status.forum_on, .thread_legend .forum_status.forum_on {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h16v11H8l-4 4V5z' fill='none' stroke='%235a6b80' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='19' cy='5' r='4.2' fill='%230a1420'/%3E%3Ccircle cx='19' cy='5' r='3' fill='%2300ccff'/%3E%3C/svg%3E");
}
.forum_legend .forum_status.forum_off, .thread_legend .forum_status.forum_off {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a6478' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H8l-4 4V5z'/%3E%3C/svg%3E");
}
.forum_legend .forum_status.forum_offclose, .thread_legend .forum_status.forum_offclose {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='6' y='11' width='14' height='9' rx='2' fill='none' stroke='%23c17a7a' stroke-width='1.8'/%3E%3Cpath d='M9 11V8a4 4 0 0 1 8 0v3' fill='none' stroke='%23c17a7a' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");
}
.forum_legend .forum_status.forum_offlink, .thread_legend .forum_status.forum_offlink {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300ff88' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
}

/* ================= MOBIL ================= */
@media (max-width: 760px) {
	.wrapper { width: 94%; }
	#logo .wrapper { gap: 0.7rem; padding: 0.8rem 0; }
	#logo ul.top_links { order: 3; width: 100%; justify-content: center; gap: 0; }
	.gk-userarea { order: 2; }
	.gk-row-badges { display: none; }
	.post.classic .post_author { flex-basis: 100%; width: 100%; border-right: none; border-bottom: 1px solid rgba(255,255,255,0.07); }
	.post.classic .post_content { flex-basis: 100%; }
}

/* ================= FOOTER ================= */
.gk-footer { background: rgba(8,13,20,0.9) !important; backdrop-filter: blur(2px); border-top: 1px solid rgba(0,204,255,0.12); }
.gk-footer-inner { padding: 1.1rem 0; text-align: center; }
.gk-datetime-tag { display: block; font-size: 0.72rem; color: #a3adc0; margin-bottom: 0.3rem; }
.gk-footer-copy {
	font-family: 'Roboto', sans-serif; font-size: 0.72rem; color: #a3adc0;
}
.gk-edition-badge {
	display: inline-block; font-family: 'Montserrat', sans-serif; font-size: 0.6rem; line-height: 1.3;
	letter-spacing: 0.2em; color: #000011; background: #00ccff; padding: 0.1rem 0.5rem;
	border-radius: 2px; text-transform: uppercase; margin-left: 0.5rem; vertical-align: middle; font-weight: 700;
}
.gk-version-tag { font-size: 0.62rem; color: #a3adc0; margin-left: 0.6rem; vertical-align: middle; }
.gk-footer-links { list-style: none; margin: 0.5rem 0 0; padding: 0; display: flex; justify-content: center; flex-wrap: wrap; }
.gk-footer-links li { display: inline; font-size: 0.78rem; }
.gk-footer-links li:not(:last-child)::after { content: "|"; margin: 0 0.6rem; color: #3a4658; }
.gk-footer-links a { color: #8fa2b8 !important; text-decoration: none !important; }
.gk-footer-links a:hover { color: #00ccff !important; }

/* ================= FOOTER IMMER UNTEN (Sticky Footer) ================= */
html, body { height: 100%; }
#container { display: flex; flex-direction: column; min-height: 100vh; box-sizing: border-box; }
#header { flex-shrink: 0; }
#content { flex: 1 0 auto; }
.gk-footer { flex-shrink: 0; }

/* ================= WEITERLEITUNGS-SEITE (Login/Logout erfolgreich) ================= */
#gkRedirectPage {
	min-height: 100vh; margin: 0;
	display: flex; align-items: center; justify-content: center;
	padding: 1.5rem;
	box-sizing: border-box;
}
.gk-redirect-box { width: 100%; max-width: 480px; margin: 0 !important; }
.gk-redirect-table.tborder { margin: 0 !important; }
.gk-redirect-msg { text-align: center !important; padding: 1.6rem 1.6rem 1.1rem !important; }
.gk-redirect-msg p { margin: 0 !important; }
.gk-redirect-linkrow { text-align: center !important; padding: 0 1.6rem 1.4rem !important; }
.gk-redirect-link {
	display: inline-block; padding: 0.45rem 1.1rem; border-radius: 999px;
	border: 1px solid rgba(0,204,255,0.35); background: rgba(0,204,255,0.08);
	color: #8fd4ff !important; text-decoration: none !important; transition: box-shadow 0.2s ease;
}
.gk-redirect-link:hover { box-shadow: 0 0 10px rgba(0,204,255,0.3); color: #eaf6ff !important; }
.gk-redirect-link .smalltext { font-size: 0.8rem; }

/* ================= BEITRAG: CLASSIC-LAYOUT (komplettes Redesign, Flexbox statt Floats) ================= */
.post.classic {
	display: flex; flex-wrap: wrap; align-items: stretch;
	background: rgba(10,18,28,0.55);
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 10px;
	overflow: hidden;
	margin-bottom: 0.8rem;
	padding-top: 0;
}

.post.classic .post_author {
	flex: 0 0 155px;
	width: 155px;
	background: rgba(255,255,255,0.02);
	border-right: 1px solid rgba(255,255,255,0.07);
	padding: 1rem 0.8rem;
	text-align: center;
	box-sizing: border-box;
}
.post.classic .post_author .author_avatar { margin: 0 0 0.85rem; }
.post.classic .post_author .author_avatar img {
	width: 100%; max-width: 90px; height: auto;
	border-radius: 10px; border: 1px solid rgba(255,255,255,0.12);
}
.post.classic .post_author .author_information { text-align: center; }
.post.classic .post_author .author_information .largetext a {
	color: #eaf6ff !important; font-family: 'Montserrat', sans-serif; font-weight: 700;
	font-size: 0.85rem; text-decoration: none !important;
}
.post.classic .post_author .author_information .smalltext {
	display: block; color: #8fa2b8 !important; font-size: 0.76rem; margin-top: 0.35rem; line-height: 1.5;
}
.post.classic .post_author .author_statistics {
	margin-top: 0.7rem; padding-top: 0.7rem;
	border-top: 1px dotted rgba(255,255,255,0.1);
	color: #8fa2b8 !important; font-size: 0.68rem; text-align: left; line-height: 1.55;
}

.post.classic .post_content {
	flex: 1 1 0%; min-width: 0;
	padding: 0.9rem 1.1rem;
	box-sizing: border-box;
}
.post.classic .post_head {
	display: flex; align-items: center; flex-wrap: wrap; gap: 0.7rem;
	font-size: 0.76rem; color: #7a95ad !important;
	margin-bottom: 0.6rem; padding-bottom: 0.5rem;
	border-bottom: 1px dotted rgba(255,255,255,0.08);
}
.post.classic .post_head a { color: #7a95ad !important; }
.post.classic .post_head .post_date { color: #7a95ad !important; }
.post.classic .post_body {
	font-size: 0.88rem; line-height: 1.55; color: #d0dffb !important;
}
.post.classic .post_meta {
	margin-top: 0.6rem; padding-top: 0.4rem;
	border-top: 1px dotted rgba(255,255,255,0.06);
	font-size: 0.72rem; color: #5f7086 !important;
}

.post.classic .post_controls {
	flex: 1 0 100%;
	width: 100%;
	display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
	gap: 0.5rem 1rem;
	padding: 0.45rem 1.1rem;
	background: rgba(255,255,255,0.015);
	border-top: 1px solid rgba(255,255,255,0.06);
	box-sizing: border-box;
}
.post.classic .postbit_buttons {
	float: none !important;
	display: flex; align-items: center; gap: 0.9rem; flex-wrap: wrap;
}
.post.classic .postbit_buttons > a {
	background: none !important; border: none !important; padding: 0 !important; margin: 0 !important;
	color: #8fa2b8 !important; font-size: 0.76rem; text-decoration: none !important;
	transition: color 0.15s ease;
}
.post.classic .postbit_buttons > a:hover { color: #00ccff !important; }
.post.classic .postbit_buttons a span { display: none; }

.gk-thread-back-button { margin-right: 0.6rem; }

.float_left { float: left; }
.float_right { float: right; }
.clear { clear: both; }

.pagination { color: #8fa2b8; margin-top: 1.1rem; margin-bottom: 0.2rem; display: block; }

/* Untere Zurück/Antworten-Zeile: naeher ans Thread-Ende, Antworten auf Hoehe von Zurueck */
.gk-thread-back-button { margin-right: 0.6rem; }
.float_right .pagination { margin: 0; }

.gk-subforum-back { margin-bottom: 0.8rem; }

/* ================= FEHLERSEITE (z.B. Forum geschlossen) ================= */
.gk-error-box { max-width: 560px; margin: 3rem auto; }
.gk-error-table.tborder { margin: 0 !important; }
.gk-error-body { padding: 1.4rem 1.6rem !important; line-height: 1.6; }

.gk-closed-reason.blockquote,
blockquote.gk-closed-reason {
	display: flex; align-items: flex-start; gap: 0.9rem;
	background: rgba(193,122,122,0.08) !important;
	border: 1px solid rgba(193,122,122,0.35) !important;
	border-left: 3px solid #c17a7a !important;
	border-radius: 0 8px 8px 0;
	padding: 0.9rem 1.1rem !important;
	margin: 0.9rem 0 0 !important;
	color: #d9a3a3 !important;
}
.gk-closed-icon { flex-shrink: 0; color: #c17a7a; margin-top: 0.1rem; }
.gk-closed-icon svg { width: 26px; height: 26px; display: block; }

.gk-error-body blockquote {
	margin: 0.9rem 0 0 !important;
}

.gk-closed-notice {
	display: flex; align-items: center; gap: 0.9rem;
	background: rgba(193,122,122,0.08);
	border: 1px solid rgba(193,122,122,0.35);
	border-radius: 8px;
	padding: 0.9rem 1.1rem;
	margin: 0.8rem 0;
	color: #d9a3a3;
}
.gk-closed-notice .gk-closed-icon { flex-shrink: 0; color: #c17a7a; margin-top: 0; }
.gk-closed-notice .gk-closed-icon svg { width: 28px; height: 28px; display: block; }

/* ================= FORENUEBERSICHT: LETZTE 2 THEMEN JE FORUM ================= */

/* ================= THEMENLISTE (FORUMDISPLAY): FEINSCHLIFF ================= */
table.tborder.clear {
	border-radius: 12px !important;
	overflow: hidden;
}
.trow_sep {
	background: rgba(0,204,255,0.05) !important;
	color: #7dd8ff !important;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.72rem !important;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 0.5rem 1rem !important;
	border-top: 1px solid rgba(255,255,255,0.05);
	border-bottom: 1px solid rgba(255,255,255,0.05);
}
.gk-thread-row, .gk-lastpost-row {
	padding: 0.2rem 0;
}
.gk-thread-row .gk-thread-avatar,
.gk-lastpost-row .gk-thread-avatar {
	box-shadow: 0 0 10px rgba(0,204,255,0.12);
	transition: box-shadow 0.2s ease;
}
tr.inline_row:hover .gk-thread-avatar {
	box-shadow: 0 0 14px rgba(0,204,255,0.3);
}
.gk-thread-row span > a,
.subject_editable a {
	font-size: 1.02rem !important;
}
tr.inline_row td {
	padding-top: 0.85rem !important;
	padding-bottom: 0.85rem !important;
}
/* ================= BREADCRUMB-NAVIGATION (ersetzt Zurück/Übersicht-Buttons) ================= */
.gk-breadcrumb-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin-bottom: 1.1rem;
}
.gk-breadcrumb-row .gk-breadcrumb {
	margin-bottom: 0;
}
.gk-breadcrumb-row-actions {
	display: flex;
	align-items: center;
	gap: 0.8rem;
}
.gk-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin-bottom: 1.1rem;
}
.gk-breadcrumb-link,
.gk-breadcrumb-current {
	display: inline-flex;
	align-items: center;
	padding: 0.45rem 1rem;
	border-radius: 999px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.1);
	color: #9fb4c8 !important;
	font-size: 0.8rem;
	font-family: 'Montserrat', sans-serif;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.gk-breadcrumb-link:hover {
	background: rgba(0,204,255,0.1);
	border-color: rgba(0,204,255,0.35);
	color: #00ccff !important;
}
.gk-breadcrumb-current {
	color: #eaf6ff !important;
	border-color: rgba(0,204,255,0.4);
	background: rgba(0,204,255,0.08);
	font-weight: 700;
	cursor: pointer;
}
.gk-breadcrumb-current:hover {
	background: rgba(0,204,255,0.16);
	border-color: #00ccff;
}
.gk-breadcrumb-sep {
	position: relative;
	width: 22px;
	height: 2px;
	flex-shrink: 0;
	background: linear-gradient(90deg, rgba(0,204,255,0.6), rgba(0,204,255,0.1));
}
.gk-breadcrumb-sep::after {
	content: "";
	position: absolute;
	right: -2px;
	top: -2px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #00ccff;
	box-shadow: 0 0 6px rgba(0,204,255,0.9);
	animation: gk-breadcrumb-pulse 1.8s ease-in-out infinite;
}
@keyframes gk-breadcrumb-pulse {
	0%, 100% { opacity: 0.5; }
	50% { opacity: 1; }
}
/* Erstes Element (Board-Index) wird zum Haus-Icon */
.gk-breadcrumb-link:first-child {
	font-size: 0;
	width: 48px;
	height: 48px;
	padding: 0;
	justify-content: center;
	border-radius: 50%;
	animation: gk-home-pulse 3s ease-in-out infinite;
}
@keyframes gk-home-pulse {
	0%, 100% { box-shadow: 0 0 0 rgba(0,204,255,0); }
	50% { box-shadow: 0 0 10px rgba(0,204,255,0.5); }
}
.gk-breadcrumb-link:first-child::before {
	content: "";
	display: block;
	width: 26px;
	height: 26px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239fb4c8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3C/svg%3E");
}
.gk-breadcrumb-link:first-child:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300ccff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3C/svg%3E");
}

.gk-clickable-card {
	cursor: pointer;
}

/* ================= JQUERY-MODAL-POPUP (z.B. "mehr" bei Smilies, Loeschen-Bestaetigung) ================= */
.blocker {
	position: fixed;
	top: 0; left: 0; right: 0; bottom: 0;
	width: 100%; height: 100%;
	background: rgba(0,3,10,0.75);
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.5rem;
	box-sizing: border-box;
}
.blocker .modal {
	position: relative;
	z-index: 10000;
	max-width: 560px;
	width: 100%;
	max-height: 85vh;
	overflow: auto;
	background: #0a1420;
	border: 1px solid rgba(0,204,255,0.35);
	border-radius: 12px;
	box-shadow: 0 0 40px rgba(0,204,255,0.15);
	padding: 0;
}
.blocker .modal .tborder {
	margin: 0 !important;
	border: none !important;
	border-radius: 0 !important;
}
.blocker .modal .tborder > thead > tr > td.thead,
.blocker .modal .tborder > tr > td.thead {
	border-radius: 12px 12px 0 0 !important;
	padding-right: 3rem !important;
}
.blocker .close-modal {
	position: absolute;
	top: 0.7rem;
	right: 1.4rem;
	z-index: 10001;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255,255,255,0.05);
	border: 1px solid rgba(255,255,255,0.15);
	color: #9fb4c8 !important;
	font-size: 0 !important;
	line-height: 1;
	text-decoration: none !important;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.blocker .close-modal::before {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239fb4c8' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E");
}
.blocker .close-modal:hover {
	background: rgba(255,90,90,0.15);
	border-color: rgba(255,90,90,0.45);
	color: #ff6b6b !important;
}
.blocker .close-modal:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff6b6b' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E");
}

/* Smilie-Liste im Popup: kleine Karten-Optik statt nackter Liste */
.blocker .smilie_option {
	transition: background 0.15s ease, border-color 0.15s ease;
}
.blocker table.tborder td.trow1,
.blocker table.tborder td.trow2 {
	padding: 0.6rem 0.9rem !important;
}
.blocker table.tborder td.trow1:hover,
.blocker table.tborder td.trow2:hover {
	background: rgba(0,204,255,0.05) !important;
}
.blocker table.tborder img {
	vertical-align: middle;
	margin-right: 0.5rem;
}
.gk-smilies-more-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.4rem 1rem;
	border-radius: 999px;
	background: rgba(0,204,255,0.08);
	border: 1px solid rgba(0,204,255,0.3);
	color: #8fd4ff !important;
	font-size: 0.76rem;
	font-family: 'Montserrat', sans-serif;
	text-decoration: none !important;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.gk-smilies-more-btn:hover {
	background: rgba(0,204,255,0.16);
	border-color: #00ccff;
	color: #00ccff !important;
}

/* ================= THREAD-WERKZEUGE (Drucken/Versenden/Abonnieren/Umfrage) ================= */
ul.thread_tools {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.thread_tools li {
	background-image: none !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none;
}
ul.thread_tools li a {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.45rem 0.9rem;
	border-radius: 999px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.1);
	color: #9fb4c8 !important;
	font-size: 0.78rem;
	text-decoration: none !important;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
ul.thread_tools li a:hover {
	background: rgba(0,204,255,0.1);
	border-color: rgba(0,204,255,0.35);
	color: #00ccff !important;
}
ul.thread_tools li.sendthread a::before {
	content: "";
	display: inline-flex;
	width: 20px; height: 20px;
	flex-shrink: 0;
	border-radius: 50%;
	background-color: rgba(0,204,255,0.1);
	border: 1px solid rgba(0,204,255,0.3);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 11px 11px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300ccff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='13 6 19 12 13 18'/%3E%3C/svg%3E");
	transition: border-color 0.15s ease, background-color 0.15s ease;
}
ul.thread_tools li.sendthread a:hover::before {
	background-color: rgba(0,204,255,0.2);
	border-color: #00ccff;
}
.gk-threadgrid-splitheads {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 1rem;
	padding-bottom: 0.7rem;
	border-bottom: 1px solid rgba(255,255,255,0.07);
}
.gk-threadgrid-splitheads > div {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.85rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #cfe4f5;
}
.gk-threadgrid-split {
	display: flex;
	gap: 1.3rem;
	align-items: flex-start;
}
.gk-threadgrid-col-left {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.9rem;
}
.gk-threadgrid-col-left .gk-thread-card:nth-child(n+3) {
	display: none;
}
.gk-threadgrid-col-left.gk-expanded .gk-thread-card:nth-child(n+3) {
	display: flex;
}
.gk-threadgrid-divider {
	width: 1px;
	background: rgba(255,255,255,0.08);
	flex-shrink: 0;
	align-self: stretch;
}
.gk-threadgrid-col-right.gk-threadgrid {
	flex: 1 1 0;
	min-width: 0;
	margin-bottom: 0;
}
.gk-thread-card-empty {
	color: #5f7086;
	font-size: 0.82rem;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 80px;
}
.gk-statsbox-head {
	display: flex;
	align-items: center;
	gap: 0.7rem;
}
.gk-catlabel-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex-shrink: 0;
	border-radius: 50%;
	background: rgba(0,204,255,0.14);
	border: 1px solid rgba(0,204,255,0.4);
	color: #00ccff;
	vertical-align: middle;
}
.gk-catlabel-icon svg { width: 14px; height: 14px; display: block; }

/* ================= FOREN-STATISTIKEN: ZWEI KARTEN NEBENEINANDER ================= */
#boardstats_e {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: auto auto;
	grid-auto-flow: column;
	gap: 0 1rem;
	padding: 0.9rem;
}
#boardstats_e tr { display: contents; }
#boardstats_e td.tcat,
#boardstats_e td.trow1 {
	border-left: 1px solid rgba(255,255,255,0.07) !important;
	border-right: 1px solid rgba(255,255,255,0.07) !important;
	border-top: none !important;
	border-bottom: none !important;
	background: rgba(255,255,255,0.02) !important;
}
#boardstats_e td.tcat {
	border-top: 1px solid rgba(255,255,255,0.07) !important;
	border-radius: 10px 10px 0 0 !important;
	background: rgba(0,204,255,0.05) !important;
}
#boardstats_e td.trow1 {
	border-bottom: 1px solid rgba(255,255,255,0.07) !important;
	border-radius: 0 0 10px 10px !important;
	line-height: 1.7;
}
#boardstats_e td.tfoot {
	grid-row: 3 !important;
	grid-column: 1 / -1 !important;
	border-radius: 8px !important;
	margin-top: 0.4rem;
}
#content .wrapper > table.tborder:has(.gk-statsbox-head) {
	border-radius: 12px !important;
	overflow: hidden;
	border-collapse: separate !important;
}
#content .wrapper > table.tborder:has(#boardstats_e) > thead > tr > td.thead {
	border-radius: 12px 12px 0 0 !important;
	background: rgba(10,18,28,0.6) !important;
}
.gk-forum-recent { display: flex; flex-direction: column; gap: 0.5rem; text-align: left; padding-left: 8px; }
.gk-forum-recent-item {
	display: flex; align-items: center; gap: 0.6rem;
	text-decoration: none !important;
	cursor: pointer;
}
.gk-forum-recent-avatar {
	display: block; width: 44px; height: 44px; border-radius: 50%; overflow: hidden;
	flex-shrink: 0; border: 1px solid rgba(255,255,255,0.15); position: relative;
}
.gk-forum-recent-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gk-forum-recent-avatar .gk-avatar-empty {
	width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;
	background: linear-gradient(135deg, rgba(0,204,255,0.35), rgba(0,80,120,0.5));
}
.gk-forum-recent-avatar .gk-avatar-empty::after {
	content: attr(data-initial);
	color: #eaf6ff; font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 1rem;
}
.gk-forum-recent-text { display: flex; flex-direction: column; min-width: 0; }
.gk-forum-recent-subject {
	color: #7dd8ff; font-size: 0.92rem; font-weight: 600;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 220px;
}
.gk-forum-recent-item:hover .gk-forum-recent-subject { color: #00ccff; }
.gk-forum-recent-meta { color: #7a95ad; font-size: 0.79rem; margin-top: 0.1rem; }
.gk-forum-recent-meta a { text-decoration: none; }
.gk-forum-recent-meta a:hover { text-decoration: underline; }

.gk-forum-name-cell strong a { font-size: 1.02rem; }



.gk-catbox { table-layout: fixed; }

/* Farbe kommt jetzt ueber Admin-CP -> Gruppen -> "Benutzername-Stil" je Gruppe,
   nicht mehr per CSS erzwungen - wirkt dadurch ueberall, nicht nur hier. */

/* ================= FORENANZEIGE: ABSTAND UEBERSICHT/THEMA-ERSTELLEN-BUTTONS ================= */
.gk-thread-back-button,
.new_thread_button {
	margin-bottom: 14px;
}

/* ================= THEMENLISTE: ERSTELLER-/LETZTER-POSTER-AVATAR ================= */
.gk-thread-row {
	display: flex;
	align-items: center;
	gap: 0.7rem;
}
.gk-lastpost-row {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.6rem;
}
.gk-thread-avatar {
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
	border: 1px solid rgba(255,255,255,0.15);
	position: relative;
}
.gk-thread-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gk-thread-avatar .gk-avatar-empty {
	width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;
	background: linear-gradient(135deg, rgba(0,204,255,0.35), rgba(0,80,120,0.5));
}
.gk-thread-avatar .gk-avatar-empty::after {
	content: attr(data-initial);
	color: #eaf6ff; font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 0.95rem;
}
/* GK: Post-Buttons (Antworten, Zitieren, Bearbeiten, Melden usw.) waren
   unsichtbar, weil ihr Text per CSS ausgeblendet war, obwohl es dafuer
   keine Icons gibt. Wieder sichtbar machen. */
.post.classic .postbit_buttons a span { display: inline !important; }

/* GK: Eigener, immer sichtbarer Bearbeiten-Link (umgeht MyBBs "Mirage"
   Anti-Scraper-Mechanismus, der den Original-Button unsichtbar machen
   kann, wenn dessen JavaScript nicht greift). */
.gk-post-edit-link {
	color: #8fa2b8 !important;
	font-size: 0.76rem;
	text-decoration: none !important;
	margin-right: 0.9rem;
	transition: color 0.15s ease;
}
.gk-post-edit-link:hover { color: #00ccff !important; }

/* GK: Portal-Ankuendigungen - Beitragstext etwas weiter vom Avatar-Bild
   weg ruecken (betrifft nur die Portal-Ankuendigungs-Tabelle, nicht die
   normalen Forenbeitraege). */
td.trow1.scaleimages,
td.trow2.scaleimages {
	padding-left: 1.1rem !important;
}

/* ================= REGISTRIERUNGSFORMULAR ================= */
#registration_form fieldset {
	border: 1px solid rgba(0,204,255,0.22) !important;
	border-radius: 10px !important;
	background: rgba(10,18,28,0.55) !important;
	padding: 1.1rem 1.3rem 1.3rem !important;
	margin: 0 !important;
}
#registration_form fieldset legend {
	padding: 0 0.6rem;
	margin-left: 0.4rem;
	color: #7dd8ff;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.78rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	background: transparent;
}
#registration_form fieldset legend strong { font-weight: 700; }
#registration_form fieldset table { width: 100%; }
#registration_form fieldset td { padding: 0.35rem 0.4rem !important; }
#registration_form > table.tborder > tr > td.trow1 { background: transparent !important; padding: 1.1rem !important; }
#registration_form .textbox { margin-top: 0.2rem; }
#registration_form input[type="checkbox"] { margin-top: 0.15rem; }

/* GK: Registrierungs-Validierungsmeldungen (falsches Captcha, Pflichtfeld
   leer usw.) auffaellig rot statt im gedaempften Standard-Grauton. */
#registration_form label.error,
#registration_form .error {
	color: #ff3b3b !important;
	font-weight: 700 !important;
}

/* ================= HEADER: KATEGORIE-BUTTON + NAV-PILLS ================= */
.gk-category-btn {
	display: inline-flex; align-items: center;
	padding: 0.5rem 1.1rem; border-radius: 999px;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.22);
	font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 1.05rem;
	letter-spacing: 0.14em; color: #eaf6ff !important; text-decoration: none !important;
	text-shadow: none;
	box-shadow: none;
	transition: box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease;
	flex-shrink: 1;
	min-width: 0;
	max-width: 260px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.gk-category-btn:hover {
	border-color: rgba(255,255,255,0.35);
}

.gk-toplinks-pills {
	list-style: none; margin: 0; padding: 0;
	display: flex; align-items: center; justify-content: center; gap: 0.5rem; flex-wrap: wrap;
	flex: 1;
}
.gk-toplinks-pills li { display: inline; }
.gk-toplinks-pills a {
	display: inline-block; padding: 0.45rem 0.95rem; border-radius: 999px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.1);
	color: #9fb4c8 !important; font-size: 0.8rem; font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.03em; text-decoration: none !important;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
	white-space: nowrap;
}
.gk-toplinks-pills a:hover {
	background: rgba(0,204,255,0.1); border-color: rgba(0,204,255,0.35); color: #00ccff !important;
}

/* ================= SELECT2 3.5.x (Benutzer-Autovervollstaendigung) DUNKEL ================= */
.select2-container .select2-choice {
	background: rgba(0,3,10,0.6) !important;
	background-image: none !important;
	border: 1px solid rgba(0,204,255,0.3) !important;
	border-radius: 4px !important;
	color: #d0dffb !important;
	height: 34px !important;
	line-height: 32px !important;
}
.select2-container .select2-choice .select2-chosen {
	color: #d0dffb !important;
}
.select2-container .select2-choice abbr {
	filter: invert(1) brightness(1.6);
}
.select2-container .select2-choice .select2-arrow {
	background: transparent !important;
	border-left: 1px solid rgba(0,204,255,0.25) !important;
}
.select2-container .select2-choice .select2-arrow b {
	filter: invert(1) brightness(1.6);
}
.select2-container.select2-dropdown-open .select2-choice {
	border-color: #00ccff !important;
}
.select2-drop {
	background: #0a0f1a !important;
	border: 1px solid rgba(0,204,255,0.35) !important;
	color: #d0dffb !important;
	box-shadow: 0 4px 16px rgba(0,0,0,0.4) !important;
}
.select2-drop-active {
	border-color: rgba(0,204,255,0.35) !important;
}
.select2-search input {
	background: rgba(0,3,10,0.6) !important;
	border: 1px solid rgba(0,204,255,0.3) !important;
	color: #d0dffb !important;
}
.select2-results {
	background: #0a0f1a !important;
}
.select2-results .select2-result-label {
	color: #d0dffb !important;
}
.select2-results .select2-highlighted {
	background: rgba(0,204,255,0.25) !important;
	color: #eaf6ff !important;
}
.select2-results .select2-no-results,
.select2-results .select2-searching {
	background: #0a0f1a !important;
	color: #7a95ad !important;
}
.select2-container-multi .select2-choices {
	background: rgba(0,3,10,0.6) !important;
	border: 1px solid rgba(0,204,255,0.3) !important;
}
.select2-container-multi .select2-choices .select2-search-field input {
	color: #d0dffb !important;
}

/* ================= HEADER: AKTIV-ZUSTAND NAV-PILLS + KATEGORIE-BUTTON ================= */
#logo ul.top_links a.gk-nav-active,
#logo .gk-toplinks-pills a.gk-nav-active {
	background: rgba(0,204,255,0.16) !important;
	border-color: rgba(0,204,255,0.55) !important;
	color: #eaf6ff !important;
	box-shadow: 0 0 12px rgba(0,204,255,0.4);
}
.gk-category-btn.gk-category-current {
	background: linear-gradient(120deg, rgba(0,204,255,0.22), rgba(0,150,255,0.1));
	border-color: rgba(0,204,255,0.55);
	box-shadow: 0 0 16px rgba(0,204,255,0.4);
	text-shadow: 0 0 10px rgba(0,204,255,0.4);
}
.gk-category-btn.gk-category-current:hover {
	border-color: #00ccff;
	box-shadow: 0 0 22px rgba(0,204,255,0.5);
}

/* ================= PORTAL: SENDE-ICON ERSETZEN ================= */
.gk-portal-actions img[alt*="Sende diesen Beitrag"] {
	display: none;
}
.gk-portal-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px; height: 26px;
	border-radius: 50%;
	background: rgba(0,204,255,0.1);
	border: 1px solid rgba(0,204,255,0.3);
	vertical-align: middle;
	transition: background 0.15s ease, border-color 0.15s ease;
}
.gk-portal-actions a:hover {
	background: rgba(0,204,255,0.2);
	border-color: #00ccff;
}
.gk-portal-actions a::after {
	content: "";
	display: block;
	width: 14px; height: 14px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300ccff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='13 6 19 12 13 18'/%3E%3C/svg%3E");
}

/* ================= SUCHE-SEITE: ALLGEMEINE AUFLOCKERUNG ================= */
form[action="search.php"] td.trow1 {
	padding: 1rem !important;
}
form[action="search.php"] table td {
	padding: 0.3rem 0.4rem;
}
form[action="search.php"] .smalltext input.radio,
form[action="search.php"] input.checkbox {
	margin-right: 0.4rem;
	vertical-align: middle;
}
form[action="search.php"] select[multiple] {
	width: 100%;
	min-width: 180px;
}
form[action="search.php"] select:not([multiple]) {
	margin-bottom: 0.5rem;
}
form[action="search.php"] br + br {
	display: none;
}

/* GK: Ausgewaehlte Optionen in Mehrfachauswahl-Listboxen (z.B. "Suche in
   allen Foren") - Browser rendern das markierte Element normalerweise mit
   eigenem hellgrauem/weissem Standard-Look, den simples background-color
   nicht ueberschreibt. Gradient-Trick umgeht das. */
select[multiple] option:checked {
	background: linear-gradient(0deg, rgba(0,204,255,0.22) 0%, rgba(0,204,255,0.22) 100%) !important;
	color: #eaf6ff !important;
}

/* GK: Eigener, dunkler Scrollbalken - global fuer die ganze Seite (Haupt-
   Scrollbalken) UND fuer einzelne scrollbare Bereiche (z.B. die
   Mehrfachauswahl-Liste), damit das auch passt wenn das Board waechst und
   irgendwo neue Scrollbereiche dazukommen. Chromium (Chrome/Brave/Edge)
   ueber ::-webkit-, Firefox ueber scrollbar-color/-width. */
html {
	scrollbar-width: auto;
	scrollbar-color: rgba(0,204,255,0.22) rgba(10,15,26,0.6);
}
* {
	scrollbar-width: thin;
	scrollbar-color: rgba(0,204,255,0.22) rgba(10,15,26,0.6);
}
::-webkit-scrollbar {
	width: 11px;
	height: 11px;
}
::-webkit-scrollbar-track {
	background: rgba(10,15,26,0.6);
}
::-webkit-scrollbar-thumb {
	background: rgba(0,204,255,0.22);
	border-radius: 6px;
	border: 2px solid rgba(10,15,26,0.6);
}
::-webkit-scrollbar-thumb:hover {
	background: rgba(0,204,255,0.4);
}
::-webkit-scrollbar-button {
	display: none;
	height: 0;
	width: 0;
}
::-webkit-scrollbar-corner {
	background: rgba(10,15,26,0.6);
}

/* ================= PORTAL: MEHR-ANZEIGEN-BUTTON (AKTIVE THEMEN) ================= */
.gk-latestthreads-more {
	padding: 0.8rem !important;
}
.gk-latestthreads-more .button {
	font-size: 0.7rem;
	padding: 0.4rem 1rem;
}
/* Admin-Einstellung "Anzahl der neuesten Themen" auf 10 stellen - hier
   werden ab Position 6 alle Zeilen versteckt, bis auf Klick die Klasse
   gk-expanded gesetzt wird. */
.gk-latestthreads-table tr:nth-child(n+7):not(.gk-latestthreads-more-row) {
	display: none;
}
.gk-latestthreads-table.gk-expanded tr:nth-child(n+7) {
	display: table-row;
}

/* ================= PORTAL REDESIGN ================= */
.gk-portal-wrap {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0;
}

/* ---- Utility-Leiste (Hallo/PN/Suche zusammengefasst) ---- */
.gk-utility-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 0.9rem;
	margin-bottom: 1.4rem;
}
.gk-util-box {
	flex: 1 1 220px;
	background: rgba(10,18,28,0.9);
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 10px;
	overflow: hidden;
}
.gk-util-box-welcome {
	position: relative;
	overflow: visible;
}
.gk-util-avatar {
	position: absolute;
	top: -22px;
	right: 16px;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid rgba(0,204,255,0.6);
	box-shadow: 0 0 12px rgba(0,204,255,0.35);
	background: #0a0f1a;
	z-index: 2;
}
.gk-util-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gk-util-avatar.gk-avatar-empty { display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #1a5a75, #0d3a52); }
.gk-util-avatar.gk-avatar-empty::after {
	content: attr(data-initial);
	color: #eaf6ff; font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 1rem;
}
.gk-util-head {
	background: rgba(0,204,255,0.07);
	color: #cfe4f5;
	border-bottom: 1px solid rgba(255,255,255,0.07);
	border-top: 3px solid #00ccff;
	border-radius: 9px 9px 0 0;
	padding: 0.7rem 1rem;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.72rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.gk-util-head a { color: #cfe4f5; text-decoration: none; }
.gk-util-head a:hover { color: #00ccff; }
.gk-util-body {
	padding: 0.9rem 1rem;
	font-size: 0.82rem;
	color: #b8c6d8;
	line-height: 1.6;
}
.gk-util-body strong { color: #eaf6ff; }
.gk-cp-summary .gk-util-body strong { color: inherit !important; }
.gk-util-sub { margin-top: 0.5rem; font-size: 0.76rem; }
.gk-util-sub a { color: #8fd4ff; }
.gk-util-search-form { display: flex; gap: 0.5rem; }
.gk-util-search-form input.textbox { flex: 1; }

/* ---- Ankuendigungen: Hero + Karten-Grid ---- */
.gk-announcements {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 1rem;
	margin-bottom: 1.6rem;
}
.gk-announce-card {
	grid-column: span 1;
	display: flex;
	flex-direction: column;
	background: rgba(10,18,28,0.9);
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 12px;
	overflow: hidden;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.gk-announce-card:hover {
	border-color: rgba(0,204,255,0.3);
	box-shadow: 0 0 20px rgba(0,204,255,0.1);
}
/* Erste Ankuendigung (neuester Song/News) = grosse Hero-Kachel */
.gk-announcements > .gk-announce-card:first-of-type {
	grid-column: 1 / -1;
	flex-direction: row;
	border-color: rgba(0,204,255,0.4);
	box-shadow: 0 0 30px rgba(0,204,255,0.15);
}
.gk-announce-media {
	flex-shrink: 0;
}
.gk-announce-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.gk-announce-card:not(:first-of-type) .gk-announce-media {
	width: 100%;
	height: 90px;
}
.gk-announcements > .gk-announce-card:first-of-type .gk-announce-media {
	width: 150px;
	min-height: 0;
}
.gk-announce-body {
	padding: 0.7rem 0.8rem;
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
}
.gk-announcements > .gk-announce-card:first-of-type .gk-announce-body {
	padding: 0.6rem 1rem;
}
.gk-announce-head {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0.4rem;
}
.gk-announce-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 0.88rem;
	color: #7dd8ff !important;
	text-decoration: none !important;
}
.gk-announcements > .gk-announce-card:first-of-type .gk-announce-title {
	font-size: 1.05rem;
	color: #eaf6ff !important;
	text-shadow: 0 0 14px rgba(0,204,255,0.4);
}
.gk-announce-meta {
	font-size: 0.74rem;
	color: #7a95ad;
	margin-bottom: 0.7rem;
}
.gk-announce-meta a { color: #8fa2b8; }
.gk-announce-text {
	font-size: 0.85rem;
	line-height: 1.55;
	color: #c3d2e2;
	flex: 1;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.gk-announcements > .gk-announce-card:first-of-type .gk-announce-text {
	-webkit-line-clamp: 2;
	font-size: 0.85rem;
}
.gk-announce-actions {
	margin-top: 0.8rem;
	text-align: right;
}

/* ---- Seitenwechsel unter den Ankuendigungen (eigene Zeile, kein Grid-Item) ---- */
.gk-announcements-pagination {
	margin: -0.6rem 0 1.6rem;
	text-align: center;
}
.gk-announcements-pagination:empty {
	display: none;
}

/* ---- Themenliste als Karten-Grid ---- */
.gk-threadgrid-wrap {
	background: rgba(10,18,28,0.9);
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 12px;
	padding: 1.3rem;
	margin-bottom: 1.5rem;
}
.gk-threadgrid-head {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.85rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #cfe4f5;
	margin-bottom: 1rem;
	padding-bottom: 0.7rem;
	border-bottom: 1px solid rgba(255,255,255,0.07);
}
.gk-threadgrid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 0.9rem;
}
.gk-thread-card {
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 8px;
	padding: 0.9rem 1rem;
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	cursor: pointer;
	transition: border-color 0.2s ease, background 0.2s ease;
}
.gk-thread-card:hover {
	border-color: rgba(0,204,255,0.3);
	background: rgba(0,204,255,0.03);
}
.gk-thread-card-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 0.92rem;
	color: #7dd8ff !important;
	text-decoration: none !important;
	margin-bottom: 0.15rem;
}
.gk-thread-card-meta {
	font-size: 0.72rem;
	color: #7a95ad;
}
.gk-thread-card-meta a { color: #8fa2b8; }
.gk-thread-card-stats {
	font-size: 0.7rem;
	color: #5f7086;
	margin-top: 0.2rem;
}
.gk-threadgrid .gk-thread-card:nth-child(n+5) {
	display: none;
}
.gk-threadgrid.gk-expanded .gk-thread-card:nth-child(n+5) {
	display: flex;
}
.gk-threadgrid-more {
	text-align: center;
	margin-top: 1rem;
}
.gk-threadgrid-more .button {
	font-size: 0.7rem;
	padding: 0.4rem 1rem;
}

/* ---- Mobil ---- */
@media (max-width: 760px) {
	.gk-announcements { grid-template-columns: 1fr; }
	.gk-announcements > .gk-announce-card:first-of-type { flex-direction: column; }
	.gk-announcements > .gk-announce-card:first-of-type .gk-announce-media { width: 100%; min-height: 180px; }
	.gk-utility-bar { flex-direction: column; }
	.gk-cp-navbar { flex-direction: column; }
	.gk-cp-navcard-home { align-self: auto; }
}

/* ================= USER-CP / MODERATOR-CP REDESIGN ================= */

/* ---- Navigation: grosse Farb-Kategorie-Kacheln ---- */
.gk-cp-wrap {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0;
}
.gk-cp-navbar {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 1.6rem;
	align-items: stretch;
}

/* Farbdefinitionen je Kategorie */
.gk-cp-cat-cyan   { --cat-color: #00ccff; --cat-glow: rgba(0,204,255,0.35); --cat-bg: rgba(0,204,255,0.12); }
.gk-cp-cat-violet { --cat-color: #c084fc; --cat-glow: rgba(192,132,252,0.35); --cat-bg: rgba(192,132,252,0.12); }
.gk-cp-cat-orange { --cat-color: #f0a63e; --cat-glow: rgba(240,166,62,0.35); --cat-bg: rgba(240,166,62,0.12); }
.gk-cp-cat-pink   { --cat-color: #ff6b81; --cat-glow: rgba(255,107,129,0.35); --cat-bg: rgba(255,107,129,0.12); }

.gk-cp-navcard {
	background: rgba(10,18,28,0.92);
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 14px;
	overflow: hidden;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

/* Navigation: eigenstaendige horizontale Kategorie-Kacheln, funktioniert
   auf JEDER Unterseite von usercp.php (nicht nur der Startseite) */
.gk-cp-navbar {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 1.6rem;
	align-items: stretch;
}
.gk-cp-navcard-home {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	padding: 1rem 1.4rem;
	text-decoration: none !important;
	color: #eaf6ff !important;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 0.9rem;
	letter-spacing: 0.04em;
	flex: 1 1 220px;
	background: linear-gradient(135deg, var(--cat-bg), transparent);
	border-color: color-mix(in srgb, var(--cat-color) 35%, rgba(255,255,255,0.07));
}
.gk-cp-navcard-home:hover {
	box-shadow: 0 0 24px var(--cat-glow);
	transform: translateY(-2px);
}

.gk-cp-summary {
	margin-bottom: 1.2rem;
	border-top: 3px solid var(--cat-color, #00ccff);
}

/* Nur auf der usercp.php-Startseite: .gk-cp-grid umschliesst Nav + Account-
   Box gemeinsam. "display: contents" macht den Navbar-Container fuer das
   Grid "unsichtbar", seine Kinder (Home-Kachel + 3 Kategorie-Karten) werden
   dadurch direkte Grid-Elemente - ohne dass usercp_nav.html selbst
   veraendert werden muss (bleibt dadurch auf allen anderen Unterseiten
   unveraendert funktionsfaehig). */
.gk-cp-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: auto auto;
	gap: 0.9rem;
	margin-bottom: 1.6rem;
}
.gk-cp-grid .gk-cp-navbar {
	display: contents;
}
.gk-cp-grid .gk-cp-navcard-home {
	grid-column: 1 / -1;
	grid-row: 1;
	width: 100%;
	padding: 0.4rem 1.4rem;
	justify-content: center;
}
.gk-cp-grid .gk-cp-navcard-group {
	grid-row: 2;
}
.gk-cp-grid .gk-cp-summary {
	grid-column: 1;
	grid-row: 2;
	margin: 0;
}

/* Avatar in der Account-Karte: zentriert im freien Bereich statt oben
   rechts ueberlappend (wie beim Portal), da die Karte hier schmaler ist */
.gk-cp-summary-avatarwrap {
	text-align: center;
	padding: 0.9rem 0 0.5rem;
}
.gk-cp-summary-avatar {
	position: static !important;
	display: inline-flex;
	top: auto;
	right: auto;
	width: 72px;
	height: 72px;
	border-width: 2px;
}
.gk-cp-summary-name {
	margin-top: 0.5rem;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 1rem;
	/* Farbe kommt bewusst NICHT von hier - {$username} liefert die
	   Gruppenfarbe (Benutzername-Stil) bereits per Inline-Style mit. */
}
.gk-cp-summary-stats {
	font-size: 0.78rem;
	line-height: 1.4;
	padding-top: 0.1rem !important;
}
.gk-cp-summary .gk-util-body {
	text-align: center;
}
.gk-cp-summary-row {
	padding: 0.32rem 0;
	border-bottom: 1px solid rgba(255,255,255,0.05);
	text-align: center;
}
.gk-cp-summary-row:last-child {
	border-bottom: none;
}
.gk-cp-summary-row .gk-cp-summary-label {
	color: #7a95ad;
	font-weight: 600;
	font-size: 0.66rem;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	margin-right: 0.3rem;
}

/* Gruppen-Kacheln (Nachrichten/Profil/Sonstiges bzw. Foren/Benutzer) */
.gk-cp-navcard-group {
	flex: 1 1 240px;
	border-top: 3px solid var(--cat-color);
}
.gk-cp-navcard-group:hover {
	box-shadow: 0 0 26px var(--cat-glow);
	transform: translateY(-2px);
}
.gk-cp-navcard-head {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	background: linear-gradient(120deg, var(--cat-bg), transparent);
	border-bottom: 1px solid rgba(255,255,255,0.07);
	padding: 0.8rem 1.1rem;
}
.gk-cp-navcard-headtext {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 0.86rem;
	letter-spacing: 0.03em;
	color: #eaf6ff;
}

/* Grosse, farbige Icon-Badges statt kleiner Strichsymbole */
.gk-cp-navcard-icon-badge {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	flex-shrink: 0;
	border-radius: 50%;
	background: var(--cat-bg);
	border: 1px solid color-mix(in srgb, var(--cat-color) 45%, transparent);
	color: var(--cat-color);
	box-shadow: 0 0 14px var(--cat-glow);
}
.gk-cp-navcard-home .gk-cp-navcard-icon-badge {
	width: 34px;
	height: 34px;
}
.gk-cp-navcard-icon-badge svg {
	width: 19px;
	height: 19px;
	display: block;
}

.gk-cp-navcard-body {
	padding: 0.8rem 0.9rem;
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}
.gk-cp-navcard-sub {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	padding-left: 0.4rem;
	border-left: 2px solid var(--cat-bg);
	margin: 0.15rem 0;
}

.usercp_nav_item,
.modcp_nav_item {
	display: block;
	padding: 0.5rem 0.7rem !important;
	border-radius: 6px;
	background-color: rgba(255,255,255,0.02);
	background-image: none !important;
	color: #b8c6d8 !important;
	font-size: 0.78rem;
	text-decoration: none !important;
	transition: background 0.15s ease, color 0.15s ease;
}
.gk-cp-navcard-group .usercp_nav_item:hover,
.gk-cp-navcard-group .modcp_nav_item:hover {
	background: var(--cat-bg);
	color: var(--cat-color) !important;
}

/* ---- CP-Karten-Bausteine (nutzen bereits bestehende .gk-util-box etc.) ---- */
.gk-cp-notepad { margin: 1.2rem 0 0; }
.gk-cp-notepad textarea { width: 100%; }
.gk-cp-notepad-submit { margin: 0.9rem 0 1.2rem; }
.gk-cp-bans { margin: 1.2rem 0; }
.gk-cp-modactions { margin: 1.2rem 0; }
.gk-cp-notes-sub { font-size: 0.76rem; color: #7a95ad; margin-bottom: 0.5rem; }

/* ---- Schlichte Tabelle innerhalb einer Karte (Bans/Mod-Log) ---- */
.gk-cp-plaintable { border-collapse: collapse; font-size: 0.8rem; }
.gk-cp-plaintable tr:first-child td {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.68rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #7a95ad;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid rgba(255,255,255,0.07);
}
.gk-cp-plaintable tr:not(:first-child) td {
	padding: 0.5rem 0.6rem 0.5rem 0;
	border-bottom: 1px solid rgba(255,255,255,0.04);
	color: #c3d2e2;
}
.gk-cp-plaintable tr:last-child td { border-bottom: none; }

/* ---- Statleiste (z.B. "Erwarten Moderation") ---- */
.gk-cp-statbar {
	background: rgba(10,18,28,0.9);
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 12px;
	padding: 1.1rem 1.3rem;
	margin-bottom: 1.2rem;
}
.gk-cp-statbar-head {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.78rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #cfe4f5;
	margin-bottom: 0.9rem;
}
.gk-cp-statbar-row {
	display: flex;
	gap: 0.9rem;
	flex-wrap: wrap;
}
.gk-cp-stat-card {
	flex: 1 1 140px;
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 8px;
	padding: 0.8rem 1rem;
	text-align: center;
}
.gk-cp-stat-label {
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #7a95ad;
	margin-bottom: 0.3rem;
}
.gk-cp-stat-number {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 1.5rem;
	color: #00ccff;
}
.gk-cp-stat-sub {
	font-size: 0.7rem;
	color: #5f7086;
	margin-top: 0.3rem;
}

/* ================= FIX: BUCHSTABE IM LEEREN AVATAR (BENUTZER-CP) ZENTRIEREN ================= */
.gk-cp-summary-avatar.gk-avatar-empty {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}
.gk-avatar-initial-letter {
	display: block;
	color: #eaf6ff;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 1.1rem;
	line-height: 1;
}

/* ================= FIX: USERCP-ICONS + KATEGORIE-KACHEL DAUERHAFT HERVORHEBEN ================= */
.gk-icon-active {
	color: #00ccff !important;
	animation: gk-icon-breathe 3.4s cubic-bezier(0.45,0,0.55,1) infinite;
}
@keyframes gk-icon-breathe {
	0%, 100% { filter: drop-shadow(0 0 3px rgba(0,204,255,0.5)); }
	50% { filter: drop-shadow(0 0 7px rgba(0,204,255,0.9)); }
}

.gk-cp-navcard-active {
	border-color: var(--cat-color) !important;
	transform: translateY(-2px);
	animation: gk-cp-navcard-breathe 3.4s cubic-bezier(0.45,0,0.55,1) infinite;
	will-change: box-shadow;
}
@keyframes gk-cp-navcard-breathe {
	0%, 100% { box-shadow: 0 0 20px var(--cat-glow); }
	50% { box-shadow: 0 0 34px var(--cat-glow); }
}

#logo ul.top_links a.gk-nav-active,
#logo .gk-toplinks-pills a.gk-nav-active {
	animation: gk-pill-breathe 3.4s cubic-bezier(0.45,0,0.55,1) infinite;
	will-change: box-shadow;
}
@keyframes gk-pill-breathe {
	0%, 100% { box-shadow: 0 0 8px rgba(0,204,255,0.3); }
	50% { box-shadow: 0 0 16px rgba(0,204,255,0.55); }
}

.gk-category-btn.gk-category-current {
	animation: gk-category-breathe 3.4s cubic-bezier(0.45,0,0.55,1) infinite;
	will-change: box-shadow, text-shadow;
}
@keyframes gk-category-breathe {
	0%, 100% { box-shadow: 0 0 16px rgba(0,204,255,0.4); text-shadow: 0 0 10px rgba(0,204,255,0.4); }
	50% { box-shadow: 0 0 26px rgba(0,204,255,0.65); text-shadow: 0 0 16px rgba(0,204,255,0.6); }
}

.gk-cp-navcard-home {
	animation: gk-category-breathe-soft 3.4s cubic-bezier(0.45,0,0.55,1) infinite;
}
@keyframes gk-category-breathe-soft {
	0%, 100% { box-shadow: 0 0 8px rgba(0,204,255,0.2); }
	50% { box-shadow: 0 0 14px rgba(0,204,255,0.35); }
}

.gk-cp-navcard-home-active {
	border-color: #00ccff !important;
	animation: gk-category-breathe 3.4s cubic-bezier(0.45,0,0.55,1) infinite;
	will-change: box-shadow, text-shadow;
}

.usercp_nav_item.usercp_nav_item_active,
.modcp_nav_item.usercp_nav_item_active {
	background: var(--cat-bg) !important;
	color: var(--cat-color) !important;
}

/* ================= GENERISCHE FORMULAR-ELEMENTE (Profil aendern, Optionen, Freundesliste, Avatar, PN-Ordner etc.) ================= */
fieldset {
	border: 1px solid rgba(0,204,255,0.22) !important;
	border-radius: 10px !important;
	background: rgba(10,18,28,0.55) !important;
	padding: 1.1rem 1.3rem 1.3rem !important;
	margin: 0 0 1rem !important;
}
legend {
	padding: 0 0.6rem;
	margin-left: 0.4rem;
	color: #7dd8ff !important;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.78rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	background: transparent !important;
}
legend strong { font-weight: 700; }
fieldset table { width: 100%; }
fieldset td { padding: 0.35rem 0.4rem !important; }

hr {
	border: none;
	border-top: 1px solid rgba(255,255,255,0.08);
	margin: 1rem 0;
}

/* Datei-Upload-Button (z.B. Avatar aendern) - Browser-eigener weisser Button */
input[type="file"] {
	color: #b8c6d8;
	font-size: 0.82rem;
}
input[type="file"]::file-selector-button,
input[type="file"]::-webkit-file-upload-button {
	background: linear-gradient(135deg, rgba(0,204,255,0.22), rgba(0,150,255,0.12));
	border: 1px solid rgba(0,204,255,0.45);
	border-radius: 999px;
	color: #eaf8ff;
	padding: 6px 14px;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	cursor: pointer;
	margin-right: 0.6rem;
}

/* Speicherplatz-/Quota-Balken (z.B. "Speicherplatzverbrauch" bei PNs) - MyBB
   setzt hier teilweise noch alte bgcolor-Attribute statt CSS-Klassen */
td[bgcolor="#FFFFFF"],
td[bgcolor="#ffffff"],
table[width] td[bgcolor] {
	background: rgba(10,18,28,0.6) !important;
	border-radius: 4px;
}

/* ================= SPEICHERPLATZBALKEN BEI PRIVATEN NACHRICHTEN (pmspace) ================= */
.pmspace_container {
	display: inline-flex !important;
	height: 12px !important;
	border-radius: 999px !important;
	overflow: hidden !important;
	border: 1px solid rgba(0,204,255,0.25) !important;
	background: rgba(0,3,10,0.6) !important;
	vertical-align: middle !important;
	margin-right: 0.4rem !important;
}
.pmspace_used {
	display: block !important;
	height: 100% !important;
	background: linear-gradient(135deg, rgba(0,204,255,0.85), rgba(0,150,255,0.65)) !important;
}
.pmspace_used.pmspace_severity2 {
	background: linear-gradient(135deg, rgba(240,166,62,0.9), rgba(200,120,30,0.7)) !important;
}
.pmspace_used.pmspace_severity3 {
	background: linear-gradient(135deg, rgba(255,90,90,0.9), rgba(200,40,40,0.7)) !important;
}
.pmspace_unused {
	display: block !important;
	height: 100% !important;
	background: rgba(0,3,10,0.6) !important;
}
.pmspace_text {
	display: none !important;
}

/* ================= FORENUEBERSICHT: KATEGORIE AUSGEBLENDET, 4-ER-RASTER MIT AUTO-ZENTRIERUNG, FARBWECHSEL ================= */
.gk-catlabel { display: none; }

.gk-catlabel-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
	margin-bottom: 1.8rem;
}
.gk-forum-tile {
	flex: 0 1 calc(25% - 0.75rem);
	min-width: 250px;
}
@media (max-width: 1100px) {
	.gk-forum-tile { flex-basis: calc(33.333% - 0.7rem); }
}
@media (max-width: 760px) {
	.gk-forum-tile { flex-basis: 100%; }
}

/* Einheitlich Cyan fuer alle Foren-Kacheln, kein Farbwechsel mehr */
.gk-forum-tile { --ft-color: #00ccff; --ft-glow: rgba(0,204,255,0.18); --ft-bg: rgba(0,204,255,0.08); }

.gk-forum-tile {
	position: relative;
	cursor: pointer;
	background: rgba(9,15,24,0.94) !important;
	backdrop-filter: blur(4px);
	border: 1px solid rgba(255,255,255,0.08);
	border-top: 3px solid var(--ft-color, #00ccff);
	border-radius: 12px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 0 10px var(--ft-glow, rgba(0,204,255,0.06));
	animation: gk-tile-breathe 4s ease-in-out infinite;
	transition: border-color 0.2s ease, transform 0.2s ease, background 0.2s ease;
}
.gk-catlabel-grid:has(.gk-forum-tile:hover) .gk-forum-tile {
	animation-play-state: paused;
	box-shadow: 0 0 10px var(--ft-glow, rgba(0,204,255,0.06));
}
.gk-forum-tile.trow1:hover, .gk-forum-tile.trow2:hover, .gk-forum-tile:hover {
	background: rgba(9,15,24,0.94) !important;
	border-color: var(--ft-color, #00ccff);
	box-shadow: 0 12px 32px var(--ft-glow, rgba(0,204,255,0.2)), 0 0 22px var(--ft-glow, rgba(0,204,255,0.18));
	transform: translateY(-4px);
}
@keyframes gk-tile-breathe {
	0%, 100% { box-shadow: 0 0 10px var(--ft-glow, rgba(0,204,255,0.06)); }
	50% { box-shadow: 0 0 24px var(--ft-glow, rgba(0,204,255,0.32)); }
}
.gk-forum-tile:nth-child(4n+1) { animation-delay: 0s; }
.gk-forum-tile:nth-child(4n+2) { animation-delay: 1s; }
.gk-forum-tile:nth-child(4n+3) { animation-delay: 2s; }
.gk-forum-tile:nth-child(4n+4) { animation-delay: 3s; }
.gk-forum-tile:nth-child(4n+4) { animation-delay: 2.25s; }
.gk-forum-tile-link {
	display: block;
	padding: 1.1rem 1.2rem;
	text-decoration: none !important;
	background: linear-gradient(160deg, var(--ft-glow, rgba(0,204,255,0.28)), transparent 80%);
	border-bottom: 1px solid rgba(255,255,255,0.05);
	transition: background 0.15s ease;
}
.gk-forum-tile-link:hover {
	background: linear-gradient(160deg, var(--ft-glow, rgba(0,204,255,0.28)), var(--ft-bg, rgba(0,204,255,0.08)) 85%);
}
.gk-forum-tile-head { display: flex; align-items: center; gap: 0.7rem; }
.gk-forum-icon { width: 34px; height: 34px; flex-shrink: 0; color: var(--ft-color, #5a6b80); }
.gk-forum-icon svg { width: 30px; height: 30px; }
.gk-forum-icon.forum_on { color: var(--ft-color, #00ccff); }
.gk-forum-icon.forum_on::after {
	background: var(--ft-color, #00ccff);
	box-shadow: 0 0 6px var(--ft-glow, rgba(0,204,255,0.85));
	animation: gk-forum-unread-pulse 2.4s ease-in-out infinite;
}
@keyframes gk-forum-unread-pulse {
	0%, 100% { opacity: 0.85; }
	50% { opacity: 1; }
}
.gk-forum-tile-name { min-width: 0; }
.gk-forum-tile-name strong {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 1rem;
	color: #7dd8ff;
}
.gk-forum-tile:hover .gk-forum-tile-name strong { color: var(--ft-color, #00ccff); }
.gk-forum-tile-name .gk-forum-count {
	display: block;
	color: #5f7086;
	font-size: 0.7rem;
	margin-top: 0.15rem;
}
.gk-forum-desc {
	font-size: 0.82rem !important;
	color: #a3b4c6 !important;
	line-height: 1.5;
	margin-top: 0.6rem;
}
.gk-forum-tile-activity {
	padding: 0.7rem 1.2rem 1rem;
	border-top: 1px solid rgba(255,255,255,0.06);
}
.gk-forum-tile-activity-label {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.62rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #5f7086;
	text-align: center;
	margin-bottom: 0.6rem;
}
.gk-forum-tile-activity .gk-forum-recent-avatar { width: 32px; height: 32px; border-color: var(--ft-color, rgba(255,255,255,0.15)); }
.gk-forum-tile-activity .gk-forum-recent-subject { font-size: 0.82rem; max-width: 180px; }
.gk-forum-tile-activity .gk-forum-recent-item + .gk-forum-recent-item {
	margin-top: 0.3rem;
	border-top: 1px solid rgba(255,255,255,0.06);
	padding-top: 0.55rem;
}
.gk-forum-tile-activity .gk-forum-recent-item {
	margin: 0 -0.5rem;
	padding: 0.35rem 0.5rem;
	border-radius: 8px;
	transition: background 0.15s ease;
}
.gk-forum-tile-activity .gk-forum-recent-item:hover {
	background: var(--ft-bg, rgba(0,204,255,0.08));
}

/* ================= THEMENLISTE (FORUMDISPLAY): DEZENTE HOVER-AKZENTE ================= */
.trow1:hover, .trow2:hover {
	background: rgba(0,204,255,0.025) !important;
	transition: background 0.15s ease;
}

/* ================= BEITRAG (POSTBIT_CLASSIC): DAUERHAFT SICHTBARE POLITUR ================= */
.post.classic {
	border-top: 4px solid rgba(0,204,255,0.75) !important;
	box-shadow: 0 6px 24px rgba(0,0,0,0.3), 0 0 18px rgba(0,204,255,0.08) !important;
	background: rgba(13,22,34,0.75) !important;
}
.post.classic .post_author {
	background: linear-gradient(160deg, rgba(0,204,255,0.1), transparent 65%) !important;
}
.post.classic .author_avatar img {
	box-shadow: 0 0 14px rgba(0,204,255,0.3) !important;
	border-color: rgba(0,204,255,0.35) !important;
}
.post.classic .author_information .largetext a {
	text-shadow: 0 0 12px rgba(0,204,255,0.25) !important;
}

/* ================= PROFIL-KOPFBOX (Name, Avatar, Sterne, Status) ================= */
.gk-profile-header {
	border-color: rgba(0,204,255,0.4) !important;
	animation: gk-profile-header-breathe 4s cubic-bezier(0.45,0,0.55,1) infinite;
	will-change: box-shadow;
}
@keyframes gk-profile-header-breathe {
	0%, 100% { box-shadow: 0 0 18px rgba(0,204,255,0.25); }
	50% { box-shadow: 0 0 32px rgba(0,204,255,0.45); }
}
/* ================= EDITOR: Hinweis "Feld ist per Ziehpunkt vergroesserbar" ================= */
.gk-editor-resize-hint {
	display: block;
	width: 100%;
	text-align: right;
	margin-top: 0.35rem;
	font-family: 'Roboto', sans-serif;
	font-size: 0.72rem;
	color: #7a95ad;
}
.gk-editor-resize-hint svg {
	width: 13px;
	height: 13px;
	vertical-align: middle;
	margin-left: 0.1rem;
	opacity: 0.8;
}

/* ================= UNGELESENE-PN-BENACHRICHTIGUNG (pm_alert) ================= */
.pm_alert {
	position: relative;
	z-index: 10;
	max-width: 640px;
	margin: 0 auto 2rem;
	padding: 0.9rem 2.6rem;
	background: rgba(9,15,24,0.94);
	border: 1px solid rgba(0,204,255,0.4);
	border-radius: 12px;
	text-align: center;
	box-sizing: border-box;
	cursor: pointer;
	animation: gk-pm-alert-pulse 1s ease-in-out 5;
}
@keyframes gk-pm-alert-pulse {
	0%, 100% { box-shadow: 0 0 10px rgba(0,204,255,0.25); border-color: rgba(0,204,255,0.4); }
	50% { box-shadow: 0 0 28px rgba(0,204,255,0.8); border-color: #00ccff; }
}
.pm_alert-close {
	position: absolute;
	top: 0.6rem;
	right: 0.7rem;
}
.pm_alert-close img {
	opacity: 0.55;
	filter: invert(1) brightness(1.6);
}
.pm_alert-close:hover img { opacity: 1; }
.pm_alert-text {
	color: #d0dffb;
	font-family: 'Roboto', sans-serif;
	font-size: 0.88rem;
	line-height: 1.5;
}
.pm_alert-text a { color: #8fd4ff; font-weight: 700; text-decoration: none; }
.pm_alert-text a:hover { color: #00ccff; text-decoration: underline; }

/* ================= UNGELESENE-PN BADGE AM MAIL-ICON (Header) ================= */
.gk-icon-pm { position: relative; }
.gk-icon-pm svg { width: 23px; height: 23px; }
.gk-badge-count {
	position: absolute;
	top: -6px;
	right: -8px;
	min-width: 16px;
	height: 16px;
	padding: 0 3px;
	border-radius: 999px;
	background: #ff3b5c;
	color: #fff !important;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.62rem;
	font-weight: 700;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 6px rgba(255,59,92,0.6);
}
.gk-badge-count[data-count="0"] { display: none; }

/* ================= PN-LISTE (private.php): STAERKERES HOVER + GANZE ZEILE KLICKBAR ================= */
.gk-pm-list tr.gk-clickable-card {
	cursor: pointer;
}
.gk-pm-list tr.gk-clickable-card:hover td {
	background: rgba(0,204,255,0.1) !important;
	transition: background 0.15s ease;
}

/* ================= FEHLERMELDUNGEN (error_inline) ================= */
.error {
	background: rgba(255,59,92,0.07);
	border: 1px solid rgba(255,59,92,0.4);
	border-radius: 10px;
	padding: 0.9rem 1.3rem;
	margin-bottom: 1rem;
	color: #d0dffb;
}
.error p {
	margin: 0 0 0.5rem;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-style: normal;
	color: #ff6b81;
	font-size: 0.82rem;
	letter-spacing: 0.03em;
}
.error ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.error li {
	position: relative;
	padding-left: 1.1rem;
	font-size: 0.84rem;
	line-height: 1.5;
	color: #d0dffb;
}
.error li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55rem;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #ff6b81;
}

/* ================= PN-VERLAUF (private_read): KOMPAKTE CHAT-HISTORIE ================= */
.gk-pmc-wrap {
	margin-top: 1.2rem;
	background: rgba(9,15,24,0.9);
	border: 1px solid rgba(0,204,255,0.2);
	border-radius: 12px;
	padding: 1rem 1.2rem 1.2rem;
}
.gk-pmc-head {
	font-family: 'Montserrat', sans-serif;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #7a95ad;
	margin-bottom: 0.9rem;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid rgba(255,255,255,0.07);
}
.gk-pmc-list {
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	max-height: 560px;
	overflow-y: auto;
}
.gk-pmc-item {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
}
.gk-pmc-item.gk-pmc-me {
	flex-direction: row-reverse;
}
.gk-pmc-avatar {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
	border: 1px solid rgba(0,204,255,0.35);
}
.gk-pmc-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gk-pmc-avatar-empty {
	width: 100%; height: 100%;
	display: flex; align-items: center; justify-content: center;
	background: linear-gradient(135deg, rgba(0,204,255,0.35), rgba(0,80,120,0.5));
}
.gk-pmc-avatar-empty::after {
	content: attr(data-initial);
	color: #eaf6ff; font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 0.7rem;
}
.gk-pmc-bubble {
	max-width: 72%;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 12px;
	padding: 0.5rem 0.8rem;
}
.gk-pmc-me .gk-pmc-bubble {
	background: rgba(0,204,255,0.1);
	border-color: rgba(0,204,255,0.3);
}
.gk-pmc-item.gk-pmc-current .gk-pmc-bubble {
	border-color: #00ccff;
	box-shadow: 0 0 10px rgba(0,204,255,0.35);
}
.gk-pmc-meta {
	font-size: 0.68rem;
	color: #7a95ad;
	margin-bottom: 0.2rem;
	display: flex;
	gap: 0.4rem;
	white-space: nowrap;
}
.gk-pmc-meta strong { color: #cfe4f5; font-family: 'Montserrat', sans-serif; }
.gk-pmc-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
}
.gk-pmc-meta-info { display: flex; align-items: baseline; gap: 0.35rem; min-width: 0; }
.gk-pmc-menu-trigger {
	color: #7a95ad !important;
	text-decoration: none !important;
	font-size: 1rem;
	line-height: 1;
	padding: 0.1rem 0.4rem;
	border-radius: 4px;
	cursor: pointer;
	flex-shrink: 0;
}
.gk-pmc-menu-trigger:hover {
	color: #00ccff !important;
	background: rgba(0,204,255,0.1);
}
.gk-pmc-text {
	font-size: 0.82rem;
	line-height: 1.5;
	color: #d0dffb;
	word-break: break-word;
}

/* ================= PN-AKTIONEN (Antworten/Weiterleiten/Loeschen) ALS ECHTE BUTTONS ================= */
/* Spezifischer als ".post.classic .postbit_buttons > a", damit die
   pauschale "nackt machen"-Regel hier nicht mehr greift. */
.post.classic .postbit_buttons > a.button {
	background: linear-gradient(135deg, rgba(0,204,255,0.22), rgba(0,150,255,0.12)) !important;
	border: 1px solid rgba(0,204,255,0.45) !important;
	border-radius: 999px !important;
	padding: 6px 16px !important;
	color: #eaf8ff !important;
	font-size: 0.72rem !important;
}
.post.classic .postbit_buttons > a.button:hover {
	color: #eaf8ff !important;
	box-shadow: 0 0 12px rgba(0,204,255,0.3);
}

/* ================= PN-UEBERSICHT: EIN EINTRAG PRO PERSON, KOMPAKT ================= */
.gk-pmconv-panel {
	background: rgba(9,15,24,0.9);
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 12px;
	overflow: hidden;
}
.gk-pmconv-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 0.6rem;
	padding: 0.8rem 1.1rem;
	background: rgba(0,204,255,0.07);
	border-bottom: 1px solid rgba(255,255,255,0.07);
	border-top: 3px solid #00ccff;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.78rem;
	letter-spacing: 0.04em;
	color: #cfe4f5;
}
.gk-pmconv-search { display: flex; align-items: center; gap: 0.5rem; font-family: 'Roboto', sans-serif; font-weight: normal; }
.gk-pmconv-search a { color: #8fd4ff; font-size: 0.74rem; text-decoration: none; white-space: nowrap; }
.gk-pmconv-search a:hover { color: #00ccff; text-decoration: underline; }
.gk-pmconv-search input.textbox { font-size: 0.78rem; padding: 4px 8px; }

.gk-pmconv-empty {
	padding: 1.4rem;
	text-align: center;
	color: #7a95ad;
	font-size: 0.85rem;
}

.gk-pmconv-list { display: flex; flex-direction: column; }
.gk-pmconv-row {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	padding: 0.7rem 1.1rem;
	border-bottom: 1px solid rgba(255,255,255,0.05);
	cursor: pointer;
	transition: background 0.15s ease;
}
.gk-pmconv-row:last-child { border-bottom: none; }
.gk-pmconv-row:hover { background: rgba(0,204,255,0.08); }

.gk-pmconv-avatar {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
	border: 1px solid rgba(0,204,255,0.35);
}
.gk-pmconv-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }

.gk-pmconv-main { flex: 1 1 auto; min-width: 0; }
.gk-pmconv-top {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.6rem;
}
.gk-pmconv-name {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 0.86rem;
	color: #eaf6ff;
}
.gk-pmconv-row-unread .gk-pmconv-name { color: #00ccff; }
.gk-pmconv-date {
	font-size: 0.7rem;
	color: #7a95ad;
	white-space: nowrap;
	flex-shrink: 0;
}
.gk-pmconv-subject {
	font-size: 0.8rem;
	color: #9fb4c8;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-top: 0.15rem;
}
.gk-pmconv-row-unread .gk-pmconv-subject { color: #d0dffb; font-weight: 700; }

.gk-pmconv-unread {
	flex-shrink: 0;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 999px;
	background: #ff3b5c;
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.68rem;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 6px rgba(255,59,92,0.6);
}

/* ================= AUTOR-KARTE BEI PN-LESEANSICHT: NUR AVATAR + NAME + TITEL ================= */
.gk-pm-view .author_statistics { display: none; }
.gk-postbit-stars { display: inline-block; margin-top: 6px; }
.gk-postbit-gruppe { margin-top: 6px; }
.gk-pm-view .gk-postbit-stars { display: none; }

/* ================= PN-LESEANSICHT: AKTIONS-LEISTE OBERHALB DER CHAT-HISTORIE ================= */
.gk-pm-actions-bar {
	display: flex;
	gap: 0.6rem;
	flex-wrap: wrap;
	margin: 0.9rem 0 1.1rem;
}

/* ================= PN-VERLAUF: ARCHIV-BUTTON ================= */
.gk-pmc-archive {
	text-align: center;
	margin-top: 0.9rem;
	padding-top: 0.9rem;
	border-top: 1px solid rgba(255,255,255,0.07);
}

/* ================= POPUP-MENUES (z.B. Weiterleiten/Loeschen bei PN-Verlauf) ================= */
.popup_menu {
	background: rgba(9,15,24,0.98);
	border: 1px solid rgba(0,204,255,0.35);
	border-radius: 8px;
	padding: 0.4rem;
	box-shadow: 0 6px 20px rgba(0,0,0,0.5), 0 0 14px rgba(0,204,255,0.12);
	min-width: 140px;
}
.popup_item_container { display: block; }
.popup_item {
	display: block;
	padding: 0.45rem 0.7rem;
	border-radius: 6px;
	color: #d0dffb !important;
	font-family: 'Roboto', sans-serif;
	font-size: 0.82rem;
	text-decoration: none !important;
	transition: background 0.15s ease, color 0.15s ease;
}
.popup_item:hover {
	background: rgba(0,204,255,0.14);
	color: #00ccff !important;
}

/* ================= POST-BUTTONS ALS ICONS (Zitieren, Multi-Zitat, Melden, etc.) ================= */
.gk-icon-btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 6px;
	transition: background 0.15s ease, color 0.15s ease;
}
.gk-icon-btn svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}
.gk-icon-btn span {
	/* Text bleibt für Screenreader/Titel-Tooltip vorhanden, optisch aber unsichtbar */
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}
.gk-icon-btn:hover {
	background: rgba(0,204,255,0.14);
	color: #00ccff !important;
}

/* GK: sichtbare Rueckmeldung wenn ein Beitrag zur Multi-Zitat-Liste
   hinzugefuegt wurde (MyBB toggelt diese Klasse selbst per JS,
   brauchte bisher aber keine sichtbare Optik dafuer). */
.postbit_multiquote_on {
	background: rgba(255,193,7,0.28) !important;
	color: #ffc107 !important;
	box-shadow: 0 0 0 1px rgba(255,193,7,0.6), 0 0 12px rgba(255,193,7,0.7);
}

/* ================= GLOBALE GESTYLTE TOOLTIPS (ersetzen Browser-Standard) ================= */
.gk-tooltip-box {
	display: none;
	position: fixed;
	z-index: 100000;
	background: rgba(9,15,24,0.97);
	color: #d0dffb;
	border: 1px solid rgba(0,204,255,0.4);
	border-radius: 6px;
	padding: 0.35rem 0.65rem;
	font-family: 'Roboto', sans-serif;
	font-size: 0.72rem;
	line-height: 1.3;
	max-width: 280px;
	white-space: normal;
	pointer-events: none;
	box-shadow: 0 4px 14px rgba(0,0,0,0.4), 0 0 10px rgba(0,204,255,0.15);
}
.gk-cp-stars-row {
	margin-top: 6px;
}