/* =====================================================================
   My-GameZone.de - breites Layout, Kopf mit Radio, Menue, Fuss
   Farben: Sonnengelb #FCEE4B | Hellgelb #FCF58B | Creme #FFFADC
           Rot #F00000 | Rose #D80C0C | Koralle #F06054 | Pink #E45490
           Blattgruen #C0F018 / #6E9E12 | Weinrot #8F2017
   ===================================================================== */

body.mgz {
	margin: 0;
	background: #FFFADC url(images/bggg.png) repeat-x;
	color: #4A1A12;
}
#mgz-wrap {
	max-width: 1600px;
	margin: 0 auto;
	background: #FFFDF0;
	box-shadow: 0 0 30px rgba(143, 32, 23, .18);
}

/* ---------- Kopf ---------- */
#mgz-kopf {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 180px;
	background:
		radial-gradient(circle at 50% 120%, rgba(240, 96, 84, .18), transparent 55%),
		linear-gradient(90deg, #FDF4B0 0%, #FFF8C4 35%, #FFF6B0 65%, #FCEB7E 100%);
	overflow: hidden;
	position: relative;
}
#mgz-kopf-links img, #mgz-kopf-rechts img { display: block; height: 180px; width: auto; }
#mgz-kopf-links { flex: 0 0 auto; }
#mgz-kopf-rechts { flex: 0 0 auto; }

/* ---------- Radio-Player ---------- */
#mgz-player {
	position: relative;
	flex: 1 1 520px;
	max-width: 720px;
	margin: 22px 0 12px;
	background: #FFFFFF;
	border: 3px solid #FCF58B;
	border-radius: 40px;
	box-shadow: 0 6px 18px rgba(216, 12, 12, .12), inset 0 0 0 1px #fff;
	padding: 16px 26px 12px;
	font-family: Poppins, Verdana, Arial, sans-serif;
}
.mgz-onair {
	position: absolute; top: -16px; left: 50%; transform: translateX(-50%);
	background: linear-gradient(90deg, #D80C0C, #E45490);
	color: #fff; font-weight: bold; font-size: 13px; letter-spacing: 1px;
	padding: 5px 16px; border-radius: 20px; white-space: nowrap;
	opacity: .45; transition: opacity .3s;
}
.mgz-onair span { font-size: 10px; margin-left: 4px; }
#mgz-player.spielt .mgz-onair { opacity: 1; }
#mgz-player.spielt .mgz-onair span { animation: mgzblink 1.2s infinite; }
@keyframes mgzblink { 50% { opacity: .2; } }

.mgz-p-oben { display: flex; align-items: center; gap: 14px; }
.mgz-p-gross {
	flex: 0 0 auto; width: 64px; height: 64px; border-radius: 50%;
	border: 6px solid #FCF58B; background: #fff; color: #D80C0C;
	font-size: 22px; cursor: pointer; box-shadow: 0 0 0 2px #FCEE4B inset;
}
.mgz-p-info { flex: 1 1 auto; min-width: 0; }
.mgz-p-name { font-size: 21px; font-weight: bold; color: #D80C0C; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mgz-p-slogan { font-size: 12px; font-style: italic; color: #8F2017; }
.mgz-p-slogan b { color: #E45490; }
.mgz-p-jetzt { flex: 0 1 165px; font-size: 14px; font-weight: bold; color: #8F2017; }
.mgz-p-jetzt small { display: block; font-size: 10px; letter-spacing: 1px; color: #4A1A12; }

.mgz-p-unten { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 8px; }
.mgz-p-knopf {
	width: 38px; height: 38px; border-radius: 50%;
	border: 2px solid #F06054; background: #FFFADC; color: #D80C0C;
	font-size: 14px; cursor: pointer; line-height: 1;
}
.mgz-p-knopf.mgz-p-mitte {
	width: 50px; height: 50px; border: 0; color: #fff; font-size: 18px;
	background: linear-gradient(#F06054, #D80C0C); box-shadow: 0 3px 8px rgba(216, 12, 12, .35);
}
.mgz-p-knopf:hover, .mgz-p-gross:hover { filter: brightness(1.08); transform: scale(1.04); }
#mgz-p-laut { width: 130px; accent-color: #FCEE4B; }
#mgz-player.leer .mgz-p-knopf, #mgz-player.leer .mgz-p-gross { opacity: .5; cursor: default; }
#mgz-player.hinweis .mgz-p-gross { animation: mgzpuls 1s infinite; }
@keyframes mgzpuls { 50% { box-shadow: 0 0 0 8px rgba(252, 238, 75, .7); } }

/* ---------- Hauptmenue ---------- */
#mgz-nav {
	display: flex; flex-wrap: wrap;
	background: linear-gradient(90deg, #D80C0C 0%, #F06054 60%, #E45490 100%);
	border-top: 4px solid #C0F018; border-bottom: 4px solid #FCEE4B;
}
#mgz-nav a {
	flex: 1 1 auto;
	display: flex; align-items: center; justify-content: center; gap: 7px;
	padding: 15px 10px;
	color: #fff; text-decoration: none;
	font: bold 15px Poppins, Verdana, Arial, sans-serif;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .3);
	border-right: 1px solid rgba(255, 255, 255, .28);
	white-space: nowrap;
}
#mgz-nav a:last-child { border-right: 0; }
#mgz-nav a i { font-style: normal; font-size: 16px; }
#mgz-nav a:hover { background: rgba(255, 255, 255, .15); color: #fff; }
#mgz-nav a.aktiv { background: #FCEE4B; color: #D80C0C; text-shadow: none; }

/* ---------- Seite ---------- */
.mgz-rahmen { border-collapse: collapse; }
.mgz-links { padding: 14px 6px 14px 14px; }
.mgz-inhalt { padding: 14px 16px 20px 10px; }

/* Alte Seiten etwas groesser darstellen (Schrift war 10-11px) */
.mgz-links > * { zoom: 1.18; }
.mgz-inhalt > * { zoom: var(--mgz-z, 1.18); }
.mgz-links { width: 236px; }

/* Alte feste Breiten auf volle Breite ziehen */
.mgz-inhalt > table,
.mgz-inhalt > div > table,
.mgz-inhalt > center > table,
.mgz-inhalt > form > table { width: 100% !important; }
.mgz-inhalt table:has(> tbody > tr > td > img[src*="tablevote_01"]),
.mgz-links table:has(> tbody > tr > td > img[src*="tablevote_01"]) { width: 100% !important; }
td:has(> img[src*="tablevote_01"]), td:has(> img[src*="tablevote_03"]),
td:has(> img[src*="tablevote_04"]), td:has(> img[src*="tablevote_06"]),
td:has(> img[src*="tablevote_07"]), td:has(> img[src*="tablevote_09"]) { width: 8px !important; min-width: 8px; max-width: 8px; padding: 0 !important; }
img[src*="tablevote_02"], img[src*="tablevote_08"] { width: 100% !important; }
img[src*="tablevote_04"], img[src*="tablevote_06"] { height: 100% !important; }
.mgz-inhalt hr { width: 100% !important; }
.mgz-links > table, .mgz-links > br + table { width: 100% !important; }

/* Kaesten fuer neue Seiten */
.mgz-box {
	background: #fff; border: 2px solid #F2D23C; border-radius: 14px;
	padding: 12px 14px; margin: 0 0 14px; box-shadow: 0 3px 0 #FCEE4B;
}
.mgz-raster { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; }
.mgz-karte {
	background: #fff; border: 2px solid #F2D23C; border-radius: 14px; padding: 14px;
	text-align: center; box-shadow: 0 3px 0 #FCEE4B; transition: transform .15s;
}
.mgz-karte:hover { transform: translateY(-3px); }
.mgz-karte h3 { margin: 6px 0; color: #D80C0C; font: bold 17px Poppins, Verdana, sans-serif; }
.mgz-karte p { margin: 6px 0; font: 12px Verdana, sans-serif; color: #4A1A12; }
.mgz-knopf {
	display: inline-block; background: linear-gradient(#F06054, #D80C0C); color: #fff !important;
	border-radius: 18px; padding: 7px 16px; font: bold 13px Verdana, sans-serif; text-decoration: none;
	border: 0; cursor: pointer;
}
.mgz-knopf:hover { background: #FCEE4B; color: #D80C0C !important; }
.mgz-knopf.gruen { background: linear-gradient(#C0F018, #6E9E12); color: #2d3d05 !important; }
.mgz-titel { font: bold 22px Lora, Georgia, serif; font-style: italic; color: #F00000; margin: 0 0 6px; }
.mgz-titel:after { content: " \2665"; color: #E45490; font-size: 17px; }

/* Mitgliederfotos nicht riesig strecken */
.mgz-inhalt img[src*="fotos/"], .mgz-inhalt img[src*="unbekannt"] { max-width: 260px; height: auto !important; }

/* ---------- Fuss ---------- */
#mgz-fuss {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px;
	background: linear-gradient(90deg, #8F2017, #D80C0C);
	border-top: 4px solid #C0F018;
	color: #FFF59A; padding: 14px 22px; font: 12px Verdana, sans-serif;
}
#mgz-fuss b { color: #fff; }
.mgz-fuss-zahlen span { margin-right: 16px; }
.mgz-fuss-links a { color: #FFF59A !important; text-decoration: none; margin: 0 7px; font-weight: bold; }
.mgz-fuss-links a:hover { color: #fff !important; text-decoration: underline; }

/* ---------- Kleinere Bildschirme ---------- */
@media (max-width: 1250px) {
	#mgz-kopf-rechts { display: none; }
}
@media (max-width: 900px) {
	#mgz-kopf { flex-wrap: wrap; justify-content: center; }
	#mgz-kopf-links img { height: 130px; }
	#mgz-player { flex-basis: 100%; margin: 18px 12px 12px; }
	.mgz-p-jetzt { display: none; }
	#mgz-nav a { flex: 1 1 30%; font-size: 13px; padding: 11px 6px; }
	.mgz-rahmen, .mgz-rahmen > tbody, .mgz-rahmen > tbody > tr, .mgz-rahmen > tbody > tr > td { display: block; width: auto !important; }
	.mgz-rahmen > tbody > tr > td.mgz-links { order: 2; }
	.mgz-rahmen > tbody > tr { display: flex; flex-direction: column; }
	.mgz-links > * { zoom: 1; }
	.mgz-inhalt > * { zoom: var(--mgz-zm, 1); }
	.mgz-inhalt { padding: 10px; overflow-x: auto; }
}

/* Radio-Seite */
.mgz-radio-tabs { text-align: center; margin: 8px 0 4px; line-height: 2.6; }
.mgz-radio-kat { font: bold 19px Poppins, Verdana, sans-serif; color: #D80C0C; margin: 14px 0 4px; border-bottom: 2px dotted #6E9E12; padding-bottom: 4px; text-align: left; }
.mgz-radio-karte h3 { font-size: 15px; }
.mgz-radio-karte p { min-height: 30px; }
.mgz-radio-karte.spielt { border-color: #D80C0C; background: #FFF6F0; }

/* Ein-Klick ins Programmierer-Panel (nur fuer Admins sichtbar) */
.mgz-pk-knopf {
	display: block; margin: 10px 4px 4px; padding: 10px 12px; border-radius: 12px; text-align: center;
	background: linear-gradient(90deg, #D80C0C, #E45490); color: #fff !important; font: bold 13px Poppins, Verdana, sans-serif !important;
	text-decoration: none; box-shadow: 0 3px 0 #8F2017;
}
.mgz-pk-knopf:hover { background: #FCEE4B; color: #D80C0C !important; }

/* ---------- Shop ---------- */
.mgz-shop-hero {
	display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 14px;
	background: linear-gradient(110deg, #D80C0C, #F06054 55%, #E45490); color: #fff; border-radius: 18px;
	padding: 20px 24px; margin-bottom: 14px; box-shadow: 0 4px 0 #8F2017; font: 14px Poppins, Verdana, sans-serif;
}
.mgz-shop-konto { text-align: right; }
.mgz-shop-muenzen { font-size: 18px; } .mgz-shop-muenzen b { font-size: 34px; color: #FCEE4B; }
.mgz-shop-konto form { margin-top: 8px; }
.mgz-shop-klein { font-size: 12px; opacity: .9; margin-top: 6px; }
.mgz-shop-puls { animation: mgzpuls 1.3s infinite; }
.mgz-shop-ok, .mgz-shop-fehler { padding: 10px 14px; border-radius: 12px; margin: 0 0 12px; font: bold 14px Verdana, sans-serif; }
.mgz-shop-ok { background: #F4FCD9; border: 2px solid #C0F018; color: #3d5a05; }
.mgz-shop-fehler { background: #FFE9E6; border: 2px solid #F06054; color: #8F2017; }
.mgz-shop-paket { position: relative; overflow: hidden; }
.mgz-shop-paket.top { border-color: #D80C0C; box-shadow: 0 4px 0 #D80C0C; transform: scale(1.03); }
.mgz-shop-band { position: absolute; top: 14px; right: -34px; transform: rotate(35deg); background: #D80C0C; color: #fff; font: bold 11px Verdana, sans-serif; padding: 3px 38px; }
.mgz-shop-band.gruen { background: #6E9E12; }
.mgz-shop-bonus { display: inline-block; background: #C0F018; color: #2d3d05; border-radius: 12px; padding: 2px 10px; font: bold 12px Verdana, sans-serif; }
.mgz-shop-bonus.leer { background: none; }
.mgz-shop-preis { font: bold 19px Poppins, Verdana, sans-serif !important; color: #8F2017 !important; }
.mgz-shop-abz { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 6px 0; }
.mgz-shop-abz label { cursor: pointer; }
.mgz-shop-abz input { display: none; }
.mgz-shop-abz span { display: inline-block; font-size: 24px; width: 40px; height: 40px; line-height: 40px; border-radius: 50%; border: 2px solid #F2D23C; background: #FFFDF0; }
.mgz-shop-abz input:checked + span { border-color: #D80C0C; background: #FFE9E6; transform: scale(1.12); }
.mgz-abzeichen { font-size: 1.1em; margin-left: 4px; }

/* ---------- Rampenlicht (Startseite) ---------- */
.mgz-rampenlicht { background: linear-gradient(110deg, #FFF8C4, #FFFFFF 50%, #FDE7EF); border: 2px solid #E45490; border-radius: 16px; padding: 12px 16px; margin: 0 0 14px; text-align: left; box-shadow: 0 3px 0 #E45490; }
.mgz-rampenlicht h3 { margin: 0 0 10px; font: bold 18px Poppins, Verdana, sans-serif; color: #D80C0C; }
.mgz-rampenlicht-liste { display: flex; flex-wrap: wrap; gap: 14px; }
.mgz-rampenlicht a.person { display: block; width: 120px; text-align: center; text-decoration: none; color: #8F2017; font: bold 13px Verdana, sans-serif; }
.mgz-rampenlicht a.person img { width: 110px; height: 140px; object-fit: cover; border-radius: 12px; border: 3px solid #FCEE4B; box-shadow: 0 0 0 3px #E45490; }
.mgz-rampenlicht .leer { font: 13px Verdana, sans-serif; color: #8F2017; }

/* ===================== Profilseite (show_profil.php) ===================== */
.mgz-pr { font-family: Verdana, Arial, sans-serif; color: #4A1A12; text-align: left; }
.mgz-pr-hinweis { padding: 22px; font: 14px Verdana, sans-serif; color: #8F2017; text-align: center; }
.mgz-pr-kopf {
	display: flex; gap: 22px; align-items: flex-start; padding: 18px;
	background: linear-gradient(135deg, #FFFDF0 0%, #FFF3B8 60%, #FDE1E6 100%);
	border: 2px solid #F2D23C; border-radius: 20px; box-shadow: 0 6px 18px rgba(216, 12, 12, .10);
	position: relative; overflow: hidden;
}
.mgz-pr-kopf:before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: linear-gradient(90deg, #D80C0C, #E2457A, #F2D23C); }
.mgz-pr-kopf.vip { border-color: #E5B800; box-shadow: 0 0 0 3px rgba(242, 210, 60, .35), 0 6px 18px rgba(216, 12, 12, .12); }
.mgz-pr-bild { position: relative; flex: 0 0 auto; }
.mgz-pr-bild img { width: 240px; height: 300px; object-fit: cover; border-radius: 16px; border: 4px solid #fff; box-shadow: 0 4px 14px rgba(74, 26, 18, .25); cursor: zoom-in; display: block; background: #FFFADC; }
.mgz-pr-onl { position: absolute; left: 12px; bottom: 12px; background: #6BBF1A; color: #fff; font: bold 11px Verdana, sans-serif; padding: 3px 10px; border-radius: 12px; box-shadow: 0 2px 6px rgba(0,0,0,.25); }
.mgz-pr-daten { flex: 1; min-width: 0; }
.mgz-pr-daten h1 { margin: 4px 0 4px; font: bold 28px/1.2 Verdana, Arial, sans-serif; color: #D80C0C; word-break: break-word; }
.mgz-pr-sex { font-size: 22px; vertical-align: 2px; }
.mgz-pr-sex.s2 { color: #2F6FD6; } .mgz-pr-sex.s1 { color: #E2457A; }
.mgz-pr-daten .mgz-abzeichen { font-size: 24px; margin-left: 4px; }
.mgz-pr-kurz { font-size: 13px; color: #8F2017; margin-bottom: 6px; }
.mgz-pr-status { font-size: 12px; color: #6B4A3A; margin-bottom: 10px; }
.mgz-pr-punkt { display: inline-block; width: 9px; height: 9px; border-radius: 50%; background: #C9B7A8; margin-right: 3px; }
.mgz-pr-punkt.an { background: #6BBF1A; box-shadow: 0 0 0 3px rgba(107, 191, 26, .25); }
.mgz-pr-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.mgz-pr-chip { font: bold 12px Verdana, sans-serif; padding: 4px 11px; border-radius: 20px; background: #fff; border: 1px solid #F2D23C; color: #8F2017; white-space: nowrap; }
.mgz-pr-chip.admin { background: linear-gradient(#F06054, #D80C0C); color: #fff; border-color: #B00808; }
.mgz-pr-chip.team  { background: #FFE9EF; border-color: #F59AB5; color: #B0124E; }
.mgz-pr-chip.vip   { background: linear-gradient(#FFF2A0, #F2C200); border-color: #D4A000; color: #6A4A00; }
.mgz-pr-chip.echt  { background: #EEF9DD; border-color: #A8D84A; color: #3F6E0B; }
.mgz-pr-chip.licht { background: #FDE7EF; border-color: #F59AB5; color: #D80C0C; }
.mgz-pr-rang { font-size: 12px; color: #6B4A3A; display: flex; align-items: center; gap: 4px; flex-wrap: wrap; margin-bottom: 14px; }
.mgz-pr-rang span { font-weight: bold; color: #8F2017; margin-right: 2px; }
.mgz-pr-rang img { width: 20px; height: 20px; }
.mgz-pr-knoepfe { display: flex; flex-wrap: wrap; gap: 8px; }
.mgz-pr-btn, .mgz-pr-btn:link, .mgz-pr-btn:visited {
	display: inline-block; padding: 8px 14px; border-radius: 22px; text-decoration: none !important;
	font: bold 12px Verdana, sans-serif; color: #8F2017 !important; background: #fff; border: 1px solid #F2D23C;
	box-shadow: 0 2px 0 #E0B000; transition: transform .12s, box-shadow .12s;
}
.mgz-pr-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 0 #E0B000; }
.mgz-pr-btn.haupt { background: linear-gradient(#F06054, #D80C0C); color: #fff !important; border-color: #B00808; box-shadow: 0 2px 0 #8F2017; }
.mgz-pr-btn.gold { background: linear-gradient(#FFF2A0, #F2C200); border-color: #D4A000; }
.mgz-pr-btn.klein { padding: 4px 10px; font-size: 11px; float: right; }

.mgz-pr-zahlen { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 14px 0; }
.mgz-pr-zahlen div { background: #fff; border: 2px solid #F2D23C; border-radius: 16px; padding: 10px 6px; text-align: center; }
.mgz-pr-zahlen b { display: block; font: bold 22px Verdana, sans-serif; color: #D80C0C; }
.mgz-pr-zahlen span { font-size: 11px; color: #8F2017; }

.mgz-pr-raster { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 14px; align-items: start; }
.mgz-pr-karte { background: #FFFDF0; border: 2px solid #F2D23C; border-radius: 18px; padding: 14px 16px; margin-bottom: 14px; }
.mgz-pr-karte h2 { margin: 0 0 10px; padding-bottom: 8px; border-bottom: 2px dotted #F2D23C; font: bold 15px Verdana, sans-serif; color: #D80C0C; }
.mgz-pr-karte h2 small { background: #FEF9BE; color: #8F2017; border-radius: 10px; padding: 1px 8px; font-size: 11px; vertical-align: 2px; }
.mgz-pr-text { font-size: 13px; line-height: 1.6; }
.mgz-pr-leer { color: #8F6A5A; font-size: 12px; font-style: italic; margin: 4px 0; }
.mgz-pr-leer a { color: #D80C0C; font-weight: bold; font-style: normal; }
.mgz-pr-grau { color: #C9B7A8; }

.mgz-pr-fotos { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; }
.mgz-pr-fotos img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 12px; border: 3px solid #fff; box-shadow: 0 2px 6px rgba(74, 26, 18, .18); cursor: pointer; transition: transform .15s; }
.mgz-pr-fotos img:hover { transform: scale(1.04); }
.mgz-pr-fotos img.aktiv { border-color: #E2457A; }
.mgz-pr-videos { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 8px; }
.mgz-pr-videos video { width: 100%; border-radius: 12px; border: 2px solid #F2D23C; background: #000; }

.mgz-pr-gb { display: flex; gap: 10px; padding: 10px; margin-bottom: 8px; background: #fff; border: 1px solid #F6E59A; border-radius: 14px; }
.mgz-pr-gb-bild img, .mgz-pr-gb-bild span, .mgz-pr-besucher img, .mgz-pr-besucher span {
	width: 44px; height: 44px; border-radius: 50%; object-fit: cover; display: flex; align-items: center; justify-content: center;
	background: linear-gradient(135deg, #F06054, #E2457A); color: #fff; font: bold 18px Verdana, sans-serif; border: 2px solid #F2D23C;
}
.mgz-pr-gb-text { flex: 1; min-width: 0; font-size: 12px; line-height: 1.5; word-wrap: break-word; }
.mgz-pr-gb-kopf { margin-bottom: 3px; }
.mgz-pr-gb-kopf a { color: #D80C0C; font-weight: bold; text-decoration: none; }
.mgz-pr-gb-kopf small { color: #A08070; margin-left: 4px; }
.mgz-pr-gb-weg { float: right; color: #C9B7A8 !important; }
.mgz-pr-gb-weg:hover { color: #D80C0C !important; }
.mgz-pr-seiten { text-align: center; margin-top: 8px; }
.mgz-pr-seiten a, .mgz-pr-seiten b { display: inline-block; min-width: 26px; padding: 3px 6px; margin: 2px; border-radius: 13px; font-size: 12px; text-decoration: none; }
.mgz-pr-seiten a { background: #fff; border: 1px solid #F2D23C; color: #8F2017; }
.mgz-pr-seiten b { background: #D80C0C; color: #fff; }

.mgz-pr-steck { display: grid; grid-template-columns: auto 1fr; gap: 0; margin: 0; font-size: 12px; }
.mgz-pr-steck dt, .mgz-pr-steck dd { padding: 6px 4px; border-bottom: 1px dashed #F6E59A; margin: 0; }
.mgz-pr-steck dt { color: #8F2017; font-weight: bold; white-space: nowrap; padding-right: 10px; }
.mgz-pr-steck dd { word-break: break-word; }
.mgz-pr-besucher { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.mgz-pr-besucher a { text-align: center; text-decoration: none; }
.mgz-pr-besucher img, .mgz-pr-besucher span { margin: 0 auto; width: 52px; height: 52px; }
.mgz-pr-besucher small { display: block; font-size: 10px; color: #8F2017; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-top: 2px; }
.mgz-pr-werbung { text-align: center; overflow: hidden; }

#mgz-pr-zoom { display: none; position: fixed; inset: 0; z-index: 9999; background: rgba(40, 10, 5, .82); align-items: center; justify-content: center; cursor: zoom-out; }
#mgz-pr-zoom img { max-width: 92vw; max-height: 90vh; border-radius: 14px; border: 4px solid #fff; box-shadow: 0 10px 40px rgba(0,0,0,.5); }

@media (max-width: 1150px) { .mgz-pr-raster { grid-template-columns: 1fr; } }
@media (max-width: 700px) {
	.mgz-pr-kopf { flex-direction: column; align-items: center; text-align: center; }
	.mgz-pr-chips, .mgz-pr-knoepfe, .mgz-pr-rang { justify-content: center; }
	.mgz-pr-zahlen { grid-template-columns: repeat(2, 1fr); }
}
.mgz-pr-fertig { background: #fff; border: 1px solid #F2D23C; border-radius: 14px; padding: 9px 12px; margin-bottom: 12px; max-width: 520px; }
.mgz-pr-fertig-kopf { display: flex; justify-content: space-between; font-size: 12px; color: #8F2017; margin-bottom: 5px; }
.mgz-pr-fertig-kopf span { font-weight: bold; color: #D80C0C; }
.mgz-pr-balken { height: 10px; border-radius: 6px; background: #FDF3C4; overflow: hidden; }
.mgz-pr-balken i { display: block; height: 100%; border-radius: 6px; background: linear-gradient(90deg, #F2D23C, #F06054, #E2457A); }
.mgz-pr-fertig small { display: block; margin-top: 6px; font-size: 11px; color: #6B4A3A; }
.mgz-pr-fertig small a { color: #D80C0C; font-weight: bold; }
@media (max-width: 700px) { .mgz-pr-fertig { margin-left: auto; margin-right: auto; text-align: left; } }


/* ===================== Seitenleiste links (menu.php) ===================== */
.mgz-links > .mgz-sb, .mgz-links > .mgz-sb-werbung { zoom: 1; }
.mgz-sb { background: #FFFDF0; border: 2px solid #F2D23C; border-radius: 18px; margin: 0 0 14px; overflow: hidden; text-align: left;
	font-family: Verdana, Arial, sans-serif; box-shadow: 0 3px 10px rgba(216, 12, 12, .07); }
.mgz-sb-kopf { padding: 9px 14px; background: linear-gradient(90deg, #D80C0C, #E2457A); color: #fff; font: bold 13px Verdana, sans-serif; letter-spacing: .2px; }
.mgz-sb-ich { display: flex; align-items: center; gap: 10px; padding: 12px; text-decoration: none !important;
	background: linear-gradient(135deg, #FFF3B8, #FDE1E6); border-bottom: 2px dotted #F2D23C; }
.mgz-sb-ich img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; border: 3px solid #fff; box-shadow: 0 2px 6px rgba(74, 26, 18, .25); flex: 0 0 auto; }
.mgz-sb-ich span { min-width: 0; }
.mgz-sb-ich b { display: block; color: #D80C0C; font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mgz-sb-ich small { color: #8F2017; font-size: 11px; }
.mgz-sb-menu { padding: 6px 8px 8px; }
.mgz-sb-gruppe { margin: 10px 6px 3px; font: bold 10px Verdana, sans-serif; text-transform: uppercase; letter-spacing: .8px; color: #C08A3E; }
.mgz-sb-menu a, .mgz-sb-liste a {
	display: flex; align-items: center; gap: 8px; padding: 6px 8px; border-radius: 10px;
	font: bold 12px Verdana, sans-serif; color: #8F2017 !important; text-decoration: none !important; transition: background .15s, transform .15s;
}
.mgz-sb-menu a i { font-style: normal; width: 20px; text-align: center; font-size: 14px; flex: 0 0 auto; }
.mgz-sb-menu a span { flex: 1; min-width: 0; }
.mgz-sb-menu a:hover, .mgz-sb-liste a:hover { background: #FEF3B0; color: #D80C0C !important; transform: translateX(2px); }
.mgz-sb-menu a.aktiv { background: linear-gradient(90deg, #FCEE4B, #FFF6B8); color: #D80C0C !important; }
.mgz-sb-menu a em { font-style: normal; background: #D80C0C; color: #fff; border-radius: 10px; padding: 1px 7px; font-size: 10px; }
.mgz-sb-menu a em.neu { background: linear-gradient(90deg, #E2457A, #F06054); }
.mgz-sb-menu a.logout { color: #B00808 !important; }
.mgz-sb-trenner { height: 0; border-top: 2px dotted #F2D23C; margin: 8px 6px; }
.mgz-sb-liste { padding: 6px 8px 2px; }
.mgz-sb-liste a { font-weight: normal; }
.mgz-sb-liste p.leer { margin: 4px 8px 8px; color: #8F6A5A; font: italic 11px Verdana, sans-serif; }
.mgz-sb-dot { width: 9px; height: 9px; border-radius: 50%; background: #D3C4B6; flex: 0 0 auto; }
.mgz-sb-dot.an { background: #6BBF1A; box-shadow: 0 0 0 3px rgba(107, 191, 26, .22); }
.mgz-sb-sex { width: 18px; text-align: center; font-weight: bold; }
.mgz-sb-sex.s2 { color: #2F6FD6; } .mgz-sb-sex.s1 { color: #E2457A; }
.mgz-sb-mehr { display: block; text-align: right; padding: 2px 14px 10px; font: bold 11px Verdana, sans-serif; color: #D80C0C !important; text-decoration: none !important; }
.mgz-sb-zufall { display: block; position: relative; margin: 10px; border-radius: 14px; overflow: hidden; }
.mgz-sb-zufall img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; transition: transform .3s; }
.mgz-sb-zufall:hover img { transform: scale(1.05); }
.mgz-sb-zufall span { position: absolute; left: 0; right: 0; bottom: 0; padding: 18px 10px 8px; background: linear-gradient(transparent, rgba(74, 10, 5, .75)); color: #fff; font: bold 12px Verdana, sans-serif; }
.mgz-sb-login { padding: 12px 14px 6px; }
.mgz-sb-login p { margin: 0 0 8px; font-size: 11px; color: #8F2017; }
.mgz-sb-login input { width: 100%; box-sizing: border-box; margin-bottom: 8px; padding: 8px 12px; border: 2px solid #F2D23C; border-radius: 12px; background: #fff; font: 12px Verdana, sans-serif; }
.mgz-sb-login input:focus { outline: none; border-color: #E2457A; }
.mgz-sb-login button { width: 100%; padding: 9px; border: 0; border-radius: 12px; background: linear-gradient(#F06054, #D80C0C); color: #fff; font: bold 13px Verdana, sans-serif; cursor: pointer; box-shadow: 0 3px 0 #8F2017; }
.mgz-sb-login .klein { display: block; text-align: center; margin: 8px 0 2px; font-size: 11px; color: #8F2017 !important; }
.mgz-sb-cta { display: block; margin: 6px 14px 14px; padding: 9px; text-align: center; border-radius: 12px; background: linear-gradient(#FFF2A0, #F2C200); color: #8F2017 !important; font: bold 12px Verdana, sans-serif; text-decoration: none !important; box-shadow: 0 3px 0 #D4A000; }
.mgz-sb-werbung { display: block; text-align: center; padding: 8px; font: bold 12px Verdana, sans-serif; color: #8F2017 !important; text-decoration: none !important; border: 2px dashed #F2D23C; border-radius: 14px; }

/* ---------- Seitenleiste kompakt (v7) ---------- */
.mgz-sb { margin-bottom: 10px; border-radius: 16px; }
.mgz-sb-kopf { padding: 7px 12px; font-size: 12px; }
.mgz-sb-menu { padding: 4px 6px 6px; }
.mgz-sb-menu a, .mgz-sb-liste a { padding: 5px 8px; }
.mgz-sb-gruppe { margin: 8px 6px 2px; }
.mgz-sb-ich { padding: 10px; }
.mgz-sb-tabs { display: flex; gap: 2px; padding: 4px 4px 0; background: linear-gradient(90deg, #D80C0C, #E2457A); }
.mgz-sb-tabs button { flex: 1; min-width: 0; padding: 6px 4px; border: 0; border-radius: 10px 10px 0 0; background: transparent; color: #fff; font: bold 11px Verdana, sans-serif; cursor: pointer; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mgz-sb-tabs button:hover { background: rgba(255, 255, 255, .15); }
.mgz-sb-tabs button.an { background: #FFFDF0; color: #D80C0C; }
.mgz-sb-reiter .mgz-sb-liste { padding: 6px 6px 4px; max-height: 230px; overflow: auto; }
.mgz-sb-titel { font: bold 10px Verdana, sans-serif; text-transform: uppercase; letter-spacing: .7px; color: #C08A3E; margin: 2px 8px 2px; }
.mgz-sb-reiter .mgz-sb-mehr { padding: 2px 8px 4px; text-align: right; justify-content: flex-end; font-weight: bold; color: #D80C0C !important; }
.mgz-sb-tipp { display: flex !important; align-items: center; gap: 8px; padding: 10px 12px; font: 12px Verdana, sans-serif; color: #8F2017 !important; text-decoration: none !important; }
.mgz-sb-tipp b { color: #D80C0C; }
a.mgz-sb.mgz-sb-zufall { display: block; position: relative; margin: 0 0 10px; padding: 0; border-radius: 16px; overflow: hidden; }
.mgz-sb-zufall img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: center 25%; }
.mgz-sb-zufall span { position: absolute; left: 0; right: 0; bottom: 0; padding: 18px 10px 7px; background: linear-gradient(transparent, rgba(74, 10, 5, .78)); color: #fff; font: bold 12px Verdana, sans-serif; }
.mgz-sb-werbung { padding: 6px; font-size: 11px; }
#mgz-nav a em { font-style: normal; margin-left: 4px; background: #FCEE4B; color: #D80C0C; border-radius: 10px; padding: 0 7px; font-size: 11px; line-height: 18px; text-shadow: none; }
#mgz-nav a.aktiv em { background: #D80C0C; color: #fff; }

