/* Handball Spielplan – HSG Spradow / Else-Wiehen-Wölfe
 * Drei Paletten in einer Datei: .hsg-sp--hsg (blau),
 * .hsg-sp--woelfe.hsg-sp--hell und .hsg-sp--woelfe.hsg-sp--dunkel
 * (Türkis #28bec8 und Limette #a0be00; Limette = Heim, Türkis = Auswärts).
 */

.hsg-sp{
	font-family:"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
	font-size:16px;
	line-height:1.5;
	color:var(--hsg-ink);
}

/* =====================================================================
 * Farbpaletten – eine je Verein
 * ================================================================== */

/* --- HSG Spradow: blau, wie bisher --- */
.hsg-sp--hsg{
	--hsg-marke:#0d6cbf;
	--hsg-blue:#0d6cbf;
	--hsg-akz:#0d6cbf;
	--hsg-akz-ink:#ffffff;
	--hsg-akz2:#81d742;
	--hsg-akz2-ink:#ffffff;
	--hsg-green:#81d742;
	--hsg-ink:#444444;
	--hsg-head:#333333;
	--hsg-mute:#777777;
	--hsg-mute2:#999999;
	--hsg-line:#e2e2e2;
	--hsg-soft:#f5f5f5;
	--hsg-card:#ffffff;
	--hsg-zebra:#fafbfc;
	--hsg-feld:#ffffff;
	--hsg-own:#e9f3fb;
	--hsg-sieg-bg:#e4f5d4;   --hsg-sieg-ink:#3f6b16;
	--hsg-nied-bg:#f6e4e4;   --hsg-nied-ink:#8c2f2f;
	--hsg-remis-bg:#eef0f2;  --hsg-remis-ink:#555555;
	--hsg-neutral-bg:#eef0f2;--hsg-neutral-ink:#7b8794;
	--hsg-heim:#0d6cbf;      --hsg-heim-ink:#ffffff;
	--hsg-gast:#8b949c;      --hsg-gast-ink:#ffffff;
	--hsg-aus-bg:#ffffff;    --hsg-aus-ink:#8a8a8a;   --hsg-aus-line:#d5d5d5;
	--hsg-titel-fett:400;
	--hsg-straf:#9a5b2c;
	--hsg-live:#c8102e;
}

/* --- Else-Wiehen-Wölfe, hell: Türkis und Limette auf hellem Grund --- */
.hsg-sp--woelfe.hsg-sp--hell{
	--hsg-marke:#28bec8;
	--hsg-blue:#12868f;
	--hsg-akz:#12868f;          /* dunkler als die Markenfarbe, damit weisse Schrift lesbar bleibt */
	--hsg-akz-ink:#ffffff;
	--hsg-akz2:#6f8300;
	--hsg-akz2-ink:#ffffff;
	--hsg-green:#a0be00;
	--hsg-ink:#2d3748;
	--hsg-head:#1a202c;
	--hsg-mute:#6b7684;
	--hsg-mute2:#8c96a3;
	--hsg-line:#e1e7ee;
	--hsg-soft:#f2f6f8;
	--hsg-card:#ffffff;
	--hsg-zebra:#f8fafb;
	--hsg-feld:#ffffff;
	--hsg-own:#f0f9fa;
	--hsg-sieg-bg:#e8f3d2;   --hsg-sieg-ink:#43600b;
	--hsg-nied-bg:#f6e4e4;   --hsg-nied-ink:#8c2f2f;
	--hsg-remis-bg:#eceff2;  --hsg-remis-ink:#555f6b;
	--hsg-neutral-bg:#eceff2;--hsg-neutral-ink:#6b7684;
	--hsg-heim:#a0be00;      --hsg-heim-ink:#1d2200;
	--hsg-gast:#12868f;      --hsg-gast-ink:#ffffff;
	--hsg-aus-bg:transparent;--hsg-aus-ink:#6b7684;   --hsg-aus-line:#28bec8;
	--hsg-titel-fett:700;
	--hsg-straf:#9a5b2c;
	--hsg-live:#c8102e;
}

/* --- Else-Wiehen-Wölfe, dunkel: wie die Mannschaftsgrafiken --- */
.hsg-sp--woelfe.hsg-sp--dunkel{
	--hsg-marke:#28bec8;
	--hsg-blue:#28bec8;
	--hsg-akz:#28bec8;
	--hsg-akz-ink:#10312f;
	--hsg-akz2:#a0be00;
	--hsg-akz2-ink:#1d2200;
	--hsg-green:#a0be00;
	--hsg-ink:#dfe3e2;
	--hsg-head:#fcfcfc;
	--hsg-mute:#9c9c9c;
	--hsg-mute2:#6f7573;
	--hsg-line:rgba(255,255,255,.14);
	--hsg-soft:rgba(255,255,255,.06);
	--hsg-card:rgba(255,255,255,.045);
	--hsg-zebra:rgba(255,255,255,.03);
	--hsg-feld:rgba(255,255,255,.07);
	--hsg-own:rgba(160,190,0,.10);
	--hsg-sieg-bg:rgba(160,190,0,.20);     --hsg-sieg-ink:#c6e02e;
	--hsg-nied-bg:rgba(255,255,255,.10);   --hsg-nied-ink:#e5928f;
	--hsg-remis-bg:rgba(255,255,255,.10);  --hsg-remis-ink:#c9cdcc;
	--hsg-neutral-bg:rgba(255,255,255,.08);--hsg-neutral-ink:#9c9c9c;
	--hsg-heim:#a0be00;      --hsg-heim-ink:#1d2200;
	--hsg-gast:#28bec8;      --hsg-gast-ink:#10312f;
	--hsg-aus-bg:transparent;--hsg-aus-ink:#9c9c9c;   --hsg-aus-line:#28bec8;
	--hsg-titel-fett:700;
	--hsg-straf:#e0a06a;
	--hsg-live:#ff4d63;

	background:#242424;
	background-image:
		radial-gradient(760px 420px at 12% -4%, rgba(40,190,200,.20), transparent 64%),
		radial-gradient(760px 420px at 78% -6%, rgba(160,190,0,.18), transparent 64%),
		linear-gradient(180deg,#2b2b2b 0%,#242424 42%,#1c1c1c 100%);
	padding:28px 26px 24px;
	border-radius:6px;
	margin-bottom:28px;
}
/* Ohne Design-Klasse (aeltere Einbindung) gilt das blaue Layout */
.hsg-sp:not(.hsg-sp--hsg):not(.hsg-sp--woelfe){
	--hsg-marke:#0d6cbf;--hsg-blue:#0d6cbf;--hsg-akz:#0d6cbf;--hsg-akz-ink:#fff;
	--hsg-akz2:#81d742;--hsg-akz2-ink:#fff;--hsg-green:#81d742;
	--hsg-ink:#444;--hsg-head:#333;--hsg-mute:#777;--hsg-mute2:#999;
	--hsg-line:#e2e2e2;--hsg-soft:#f5f5f5;--hsg-card:#fff;--hsg-zebra:#fafbfc;
	--hsg-feld:#fff;--hsg-own:#e9f3fb;
	--hsg-sieg-bg:#e4f5d4;--hsg-sieg-ink:#3f6b16;
	--hsg-nied-bg:#f6e4e4;--hsg-nied-ink:#8c2f2f;
	--hsg-remis-bg:#eef0f2;--hsg-remis-ink:#555;
	--hsg-neutral-bg:#eef0f2;--hsg-neutral-ink:#7b8794;
	--hsg-heim:#0d6cbf;--hsg-heim-ink:#fff;--hsg-gast:#8b949c;--hsg-gast-ink:#fff;
	--hsg-aus-bg:#fff;--hsg-aus-ink:#8a8a8a;--hsg-aus-line:#d5d5d5;--hsg-titel-fett:400;
	--hsg-straf:#9a5b2c;--hsg-live:#c8102e;
}

.hsg-sp *,.hsg-sp *::before,.hsg-sp *::after{box-sizing:border-box}
/* Muss nach den display-Regeln greifen: sonst ueberschreibt display:grid das
   HTML-Attribut hidden und gefilterte Zeilen blieben sichtbar. */
.hsg-sp [hidden]{display:none!important}

.hsg-sp__title{
	font-family:inherit;
	font-size:32px;
	font-weight:var(--hsg-titel-fett);
	color:var(--hsg-head);
	margin:0 0 4px;
	padding:0 0 12px;
	line-height:1.25;
	border-bottom:3px solid var(--hsg-marke);
}
.hsg-sp__sub{font-size:14px;color:var(--hsg-mute);margin:0 0 20px}

/* ---- Filter ---- */
.hsg-sp__controls{
	display:flex;flex-wrap:wrap;gap:8px;align-items:center;
	padding:12px;background:var(--hsg-soft);
	border:1px solid var(--hsg-line);margin-bottom:22px;
}
.hsg-sp__chips{display:flex;flex-wrap:wrap;gap:4px}
.hsg-sp__chip{
	font-family:inherit;font-size:13px;font-weight:600;text-transform:uppercase;
	letter-spacing:.03em;cursor:pointer;padding:7px 14px;
	border:1px solid var(--hsg-line);background:var(--hsg-feld);color:var(--hsg-ink);
	border-radius:3px;line-height:1.2;
}
.hsg-sp__chip:hover{border-color:var(--hsg-marke);color:var(--hsg-akz)}
.hsg-sp--dunkel .hsg-sp__chip:hover{color:var(--hsg-marke)}
.hsg-sp__chip[aria-pressed="true"]{background:var(--hsg-akz);border-color:var(--hsg-akz);color:var(--hsg-akz-ink)}
.hsg-sp__sel{
	font-family:inherit;font-size:14px;padding:6px 8px;
	border:1px solid var(--hsg-line);border-radius:3px;background:var(--hsg-feld);
	color:var(--hsg-ink);max-width:100%;
}
.hsg-sp--dunkel .hsg-sp__sel option{background:#2b2b2b;color:#e8eae9}
/* Zweite Knopfreihe: Altersklassen */
.hsg-sp__chips--ak{flex-basis:100%}
.hsg-sp__chips--ak .hsg-sp__chip{font-size:12px;padding:5px 11px;text-transform:none;letter-spacing:0}
/* ---- Auswahlfeld mit Häkchen (Mehrfachauswahl) ---- */
.hsg-sp__multi{position:relative}
.hsg-sp__multi-btn{
	cursor:pointer;text-align:left;padding-right:26px;min-width:170px;max-width:100%;
	white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.hsg-sp__multi-btn::after{
	content:"";position:absolute;right:10px;top:50%;margin-top:-2px;
	border:4px solid transparent;border-top-color:currentColor;opacity:.6;
}
.hsg-sp__multi-btn--aktiv{
	border-color:var(--hsg-marke);color:var(--hsg-akz);font-weight:700;
}
.hsg-sp--dunkel .hsg-sp__multi-btn--aktiv{color:var(--hsg-marke)}
.hsg-sp__multi-btn:disabled{opacity:.5;cursor:default}
.hsg-sp__multi-liste{
	position:absolute;z-index:30;top:calc(100% + 3px);left:0;min-width:100%;
	max-height:290px;overflow-y:auto;padding:6px;border-radius:3px;
	background:var(--hsg-feld);border:1px solid var(--hsg-line);
	box-shadow:0 6px 20px rgba(0,0,0,.14);
}
.hsg-sp--dunkel .hsg-sp__multi-liste{background:#2b2b2b;box-shadow:0 6px 20px rgba(0,0,0,.5)}
.hsg-sp__multi-zeile{
	display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:3px;
	font-size:13.5px;color:var(--hsg-ink);cursor:pointer;white-space:nowrap;
}
.hsg-sp__multi-zeile:hover{background:var(--hsg-soft)}
.hsg-sp--dunkel .hsg-sp__multi-zeile:hover{background:rgba(255,255,255,.07)}
.hsg-sp__multi-zeile input{accent-color:var(--hsg-akz);margin:0;flex:0 0 auto}
.hsg-sp__multi-leeren{
	display:block;width:100%;margin-top:4px;padding:6px 8px;cursor:pointer;
	font-family:inherit;font-size:12px;color:var(--hsg-mute);
	background:none;border:0;border-top:1px solid var(--hsg-line);text-align:left;
}
.hsg-sp__multi-leeren:hover{color:var(--hsg-akz)}
.hsg-sp--dunkel .hsg-sp__multi-leeren:hover{color:var(--hsg-marke)}

.hsg-sp__toggle{
	display:inline-flex;align-items:center;gap:6px;font-size:13px;
	color:var(--hsg-mute);cursor:pointer;margin-left:auto;
}
.hsg-sp__toggle input{accent-color:var(--hsg-akz);margin:0}

/* ---- Kalender ---- */
/* Im Spielplan sitzt die Zeile direkt unter der Filterleiste */
.hsg-sp__kalbox{margin:-10px 0 20px}
.hsg-sp--kalender .hsg-sp__kalbox{margin:0}

.hsg-sp--kalender{margin-bottom:28px}
.hsg-sp--kal-klein{margin-bottom:18px}

/* ---- Kalender, kompakt: eine unaufdringliche Zeile ---- */
.hsg-sp__kalz{
	display:flex;flex-wrap:wrap;align-items:baseline;gap:7px;
	margin:0;font-size:13px;color:var(--hsg-mute);line-height:1.6;
}
.hsg-sp__kalz-titel{
	font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;
	color:var(--hsg-mute2);
}
.hsg-sp__kalz-titel::before{content:"\1F4C5";margin-right:5px;font-weight:400;letter-spacing:0}
.hsg-sp__kalz-tr{color:var(--hsg-mute2);opacity:.55}
.hsg-sp__kalz-link{
	font-family:inherit;font-size:13px;color:var(--hsg-akz);
	text-decoration:none;border-bottom:1px solid transparent;
}
.hsg-sp--dunkel .hsg-sp__kalz-link{color:var(--hsg-marke)}
.hsg-sp__kalz-link:hover{border-bottom-color:currentColor}
.hsg-sp__kalz-btn{
	background:none;border:0;padding:0;cursor:pointer;line-height:inherit;
}
.hsg-sp__kalz-btn.hsg-sp__kal-btn--ok{color:var(--hsg-sieg-ink);font-weight:700}
.hsg-sp__kalz-mehr{margin-top:5px;font-size:12.5px}
.hsg-sp__kalz-mehr summary{
	cursor:pointer;color:var(--hsg-mute2);font-size:12px;
	list-style:none;display:inline-block;
}
.hsg-sp__kalz-mehr summary::-webkit-details-marker{display:none}
.hsg-sp__kalz-mehr summary::before{content:"\25B8";margin-right:5px;display:inline-block}
.hsg-sp__kalz-mehr[open] summary::before{transform:rotate(90deg)}
.hsg-sp__kalz-mehr summary:hover{color:var(--hsg-akz)}
.hsg-sp--dunkel .hsg-sp__kalz-mehr summary:hover{color:var(--hsg-marke)}
.hsg-sp__kalz-inhalt{
	margin-top:9px;padding:12px 14px;border-radius:4px;
	background:var(--hsg-soft);border:1px solid var(--hsg-line);
}
.hsg-sp__kalz-inhalt .hsg-sp__kal-hinweis{margin-top:0}
.hsg-sp__kal{
	padding:18px 20px;background:var(--hsg-soft);
	border:1px solid var(--hsg-line);border-left:3px solid var(--hsg-marke);border-radius:4px;
}
.hsg-sp--dunkel .hsg-sp__kal{background:var(--hsg-card)}
.hsg-sp__kal-titel{
	font-family:inherit;font-size:17px;font-weight:700;color:var(--hsg-head);
	margin:0 0 5px;padding:0;line-height:1.3;
}
.hsg-sp__kal-text{font-size:14px;color:var(--hsg-mute);margin:0 0 13px}
.hsg-sp__kal-links{display:flex;flex-wrap:wrap;gap:9px;margin:0}
.hsg-sp__kal-btn{
	display:inline-block;font-family:inherit;font-size:13px;font-weight:700;letter-spacing:.02em;
	padding:9px 17px;border-radius:3px;text-decoration:none;cursor:pointer;line-height:1.4;
	background:var(--hsg-akz);color:var(--hsg-akz-ink);border:1px solid var(--hsg-akz);
}
.hsg-sp__kal-btn:hover{opacity:.88;color:var(--hsg-akz-ink)}
.hsg-sp__kal-btn--zweit{background:transparent;color:var(--hsg-akz);border-color:var(--hsg-marke)}
.hsg-sp--dunkel .hsg-sp__kal-btn--zweit{color:var(--hsg-marke)}
.hsg-sp__kal-btn--zweit:hover{background:var(--hsg-akz);color:var(--hsg-akz-ink)}
.hsg-sp__kal-btn--ok{background:var(--hsg-heim);border-color:var(--hsg-heim);color:var(--hsg-heim-ink)}
.hsg-sp__kal-klick{font-size:12.5px;color:var(--hsg-mute);margin:10px 0 0;line-height:1.5}
.hsg-sp__kal-klick a{color:var(--hsg-akz);font-weight:700}
.hsg-sp--dunkel .hsg-sp__kal-klick a{color:var(--hsg-marke)}
.hsg-sp__kal-hinweis{font-size:12.5px;color:var(--hsg-mute);margin:16px 0 8px;line-height:1.5}
.hsg-sp__kal-liste{margin:0;font-size:12.5px}
.hsg-sp__kal-liste dt{
	font-weight:700;color:var(--hsg-head);margin:0 0 3px;
	font-size:11px;text-transform:uppercase;letter-spacing:.05em;
}
.hsg-sp__kal-liste dt+dt{margin-top:10px}
.hsg-sp__kal-liste dd{margin:0 0 10px;overflow-wrap:anywhere}
.hsg-sp__kal-liste code,.hsg-sp__kal-adresse code{
	font-size:12px;background:var(--hsg-card);border:1px solid var(--hsg-line);
	border-radius:3px;padding:4px 8px;color:var(--hsg-ink);display:inline-block;
	line-height:1.45;
}
.hsg-sp__kal-fuss{font-size:12px;color:var(--hsg-mute2);margin:2px 0 0;line-height:1.5}
.hsg-sp__kal-fuss code{font-size:11.5px;background:none;border:0;padding:0;color:inherit}
.hsg-sp__kal-adresse{margin:0;overflow-wrap:anywhere}

/* ---- Spieltag ---- */
.hsg-sp__group{margin-bottom:26px}
.hsg-sp__day{
	background:var(--hsg-akz);color:var(--hsg-akz-ink);font-size:14px;font-weight:700;
	text-transform:uppercase;letter-spacing:.04em;padding:9px 14px;
	display:flex;flex-wrap:wrap;align-items:center;gap:10px;
}
.hsg-sp__next,.hsg-sp__last{
	font-size:11px;font-weight:600;text-transform:uppercase;
	letter-spacing:.03em;padding:3px 10px;border-radius:3px;
}
.hsg-sp__next{background:var(--hsg-green);color:var(--hsg-akz2-ink)}
.hsg-sp__last{background:rgba(0,0,0,.18);color:var(--hsg-akz-ink)}

/* ---- Zeile ---- */
.hsg-sp__row{
	display:grid;grid-template-columns:82px 1fr auto;gap:2px 16px;
	align-items:baseline;padding:12px 14px;
	border-bottom:1px solid var(--hsg-line);background:var(--hsg-card);
}
.hsg-sp__when{display:block}
.hsg-sp__time{
	display:block;font-size:17px;font-weight:700;color:var(--hsg-head);
	font-variant-numeric:tabular-nums;
}
.hsg-sp__ort{
	display:inline-block;margin-top:4px;font-size:10px;font-weight:700;
	text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:3px;
}
.hsg-sp__ort--heim{background:var(--hsg-heim);color:var(--hsg-heim-ink)}
.hsg-sp__ort--aus{background:var(--hsg-aus-bg);color:var(--hsg-aus-ink);border:1px solid var(--hsg-aus-line)}
.hsg-sp__time--open{font-size:12px;font-weight:600;color:var(--hsg-mute);text-transform:uppercase}
.hsg-sp__match{min-width:0}
.hsg-sp__team{
	display:inline-block;background:var(--hsg-akz2);color:var(--hsg-akz2-ink);font-size:12px;
	font-weight:700;padding:3px 10px;border-radius:3px;margin-right:8px;line-height:1.6;
}
.hsg-sp__wo{font-size:14px;color:var(--hsg-mute2);margin-right:5px}
.hsg-sp__opp{font-size:17px;color:var(--hsg-head)}
.hsg-sp__liga{display:block;font-size:13px;color:var(--hsg-mute);margin-top:3px}
.hsg-sp__hall{text-align:right;font-size:13px;color:var(--hsg-mute);white-space:nowrap}
.hsg-sp__hall a{color:var(--hsg-akz);text-decoration:none}
.hsg-sp--dunkel .hsg-sp__hall a{color:var(--hsg-marke)}
.hsg-sp__hall a:hover{text-decoration:underline}
.hsg-sp__city{display:block;color:var(--hsg-mute2)}

.hsg-sp__empty{
	padding:30px;text-align:center;color:var(--hsg-mute);
	border:1px dashed var(--hsg-line);background:var(--hsg-card);border-radius:4px;
}
.hsg-sp__foot{
	margin-top:20px;padding-top:14px;border-top:1px solid var(--hsg-line);
	font-size:13px;color:var(--hsg-mute);
}

/* ---- Spielstatus ---- */
.hsg-sp__stat{
	display:inline-block;margin-top:4px;margin-left:5px;font-size:10px;font-weight:700;
	text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:3px;
	background:var(--hsg-neutral-bg);color:var(--hsg-neutral-ink);
}
.hsg-sp__stat--beendet{background:var(--hsg-sieg-bg);color:var(--hsg-sieg-ink)}
.hsg-sp__stat--live{background:var(--hsg-live);color:#fff}
.hsg-sp__row--live{box-shadow:inset 0 0 0 1px var(--hsg-live)}

/* ---- Spielverlauf ---- */
.hsg-sp__mehr{
	display:block;margin-top:7px;font-family:inherit;font-size:12px;font-weight:600;
	letter-spacing:.03em;cursor:pointer;padding:4px 11px;border-radius:3px;
	border:1px solid var(--hsg-line);background:var(--hsg-feld);color:var(--hsg-akz);
}
.hsg-sp--dunkel .hsg-sp__mehr{color:var(--hsg-marke)}
.hsg-sp__mehr:hover{border-color:var(--hsg-marke);background:var(--hsg-own)}
.hsg-sp__detail{
	grid-column:1 / -1;margin-top:12px;padding:16px 18px;
	background:var(--hsg-soft);border:1px solid var(--hsg-line);border-radius:4px;
}
.hsg-sp__laedt{font-size:14px;color:var(--hsg-mute);margin:0}
.hsg-sp__schuetzen{display:flex;flex-wrap:wrap;gap:26px;margin-bottom:18px}
.hsg-sp__sp-block{flex:1 1 220px;min-width:0}
.hsg-sp__sp-block h4{
	font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;
	color:var(--hsg-akz);margin:0 0 7px;padding-bottom:4px;border-bottom:1px solid var(--hsg-line);
}
.hsg-sp--dunkel .hsg-sp__sp-block h4{color:var(--hsg-marke)}
.hsg-sp__sp-block ul{list-style:none;margin:0;padding:0}
.hsg-sp__sp-block li{
	display:flex;justify-content:space-between;gap:12px;
	font-size:14px;padding:3px 0;color:var(--hsg-ink);
}
.hsg-sp__sp-block li{align-items:center}
.hsg-sp__sp-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hsg-sp__sp-tore{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.hsg-sp__sp-tore em{font-weight:400;font-style:normal;color:var(--hsg-mute);font-size:12px}
/* Trikotnummer */
.hsg-sp__nr{
	display:inline-block;flex:0 0 auto;min-width:22px;padding:1px 4px;
	font-size:11px;font-weight:700;line-height:1.45;text-align:center;
	font-variant-numeric:tabular-nums;border-radius:3px;
	background:var(--hsg-heim);color:var(--hsg-heim-ink);
}
.hsg-sp__ev--gast .hsg-sp__nr{background:var(--hsg-gast);color:var(--hsg-gast-ink)}
.hsg-sp__ev--straf .hsg-sp__nr{background:var(--hsg-straf);color:#fff}
.hsg-sp--dunkel .hsg-sp__ev--straf .hsg-sp__nr{color:#2a1a0c}

.hsg-sp__verlauf{list-style:none;margin:0;padding:0;max-height:340px;overflow-y:auto}
.hsg-sp__hz{
	font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
	color:var(--hsg-mute);margin:12px 0 6px;padding-top:8px;border-top:1px solid var(--hsg-line);
}
.hsg-sp__hz:first-child{margin-top:0;padding-top:0;border-top:0}
.hsg-sp__ev{
	display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:baseline;
	font-size:13px;color:var(--hsg-mute);padding:3px 0;border-left:3px solid transparent;padding-left:9px;
}
.hsg-sp__ev--heim{border-left-color:var(--hsg-line)}
.hsg-sp__ev--gast{background:var(--hsg-zebra)}
.hsg-sp__ev--tor{color:var(--hsg-ink)}
.hsg-sp__ev--tor.hsg-sp__ev--heim{border-left-color:var(--hsg-heim)}
.hsg-sp__ev--tor.hsg-sp__ev--gast{border-left-color:var(--hsg-gast)}
.hsg-sp__ev--straf{color:var(--hsg-straf)}
.hsg-sp__ev-min{font-variant-numeric:tabular-nums;color:var(--hsg-mute2);font-size:12px}
.hsg-sp__ev-txt{min-width:0}
.hsg-sp__ev-team{color:var(--hsg-mute2);font-size:12px;white-space:nowrap}
.hsg-sp__ev-stand{font-weight:700;font-variant-numeric:tabular-nums;color:var(--hsg-head)}

/* ---- Ergebnis ---- */
.hsg-sp__res{
	display:inline-block;margin-left:9px;font-size:14px;font-weight:700;
	padding:2px 9px;border-radius:3px;font-variant-numeric:tabular-nums;
	background:var(--hsg-neutral-bg);color:var(--hsg-head);
}
.hsg-sp__res--s{background:var(--hsg-sieg-bg);color:var(--hsg-sieg-ink)}
.hsg-sp__res--n{background:var(--hsg-nied-bg);color:var(--hsg-nied-ink)}
.hsg-sp__res--u{background:var(--hsg-remis-bg);color:var(--hsg-remis-ink)}

/* ---- Tabelle ---- */
.hsg-sp--tabelle{margin-bottom:34px}
.hsg-sp__hinweis{
	background:var(--hsg-soft);border-left:3px solid var(--hsg-green);
	padding:9px 12px;font-size:13px;color:var(--hsg-mute);margin:0 0 14px;
}
.hsg-sp__tabwrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.hsg-sp__tab{
	width:100%;border-collapse:collapse;font-size:14px;
	background:var(--hsg-card);min-width:520px;
}
.hsg-sp__tab th{
	background:var(--hsg-akz);color:var(--hsg-akz-ink);text-align:left;font-weight:700;
	font-size:12px;text-transform:uppercase;letter-spacing:.04em;
	padding:9px 8px;white-space:nowrap;
}
.hsg-sp__tab td{
	padding:8px;border-bottom:1px solid var(--hsg-line);
	color:var(--hsg-ink);white-space:nowrap;
}
.hsg-sp__tab tbody tr:nth-child(even) td{background:var(--hsg-zebra)}
.hsg-sp__tc{text-align:center;font-variant-numeric:tabular-nums}
.hsg-sp__tp{font-weight:700;color:var(--hsg-head)}
.hsg-sp__tr--own td{background:var(--hsg-own)!important;font-weight:700;color:var(--hsg-head)}
.hsg-sp__tr--own td:first-child{box-shadow:inset 3px 0 0 var(--hsg-green)}

/* ---- Kompletter Ligaspielplan ---- */
.hsg-sp--liga .hsg-sp__row{grid-template-columns:70px 1fr auto}
.hsg-sp__paar{font-size:16px;color:var(--hsg-head);display:inline-block}
.hsg-sp__paar .hsg-sp__vs{color:var(--hsg-mute2);padding:0 8px}
.hsg-sp__paar .hsg-sp__res{margin:0 8px;font-size:14px}
.hsg-sp__mine{font-weight:700;color:var(--hsg-akz)}
.hsg-sp--dunkel .hsg-sp__mine{color:var(--hsg-marke)}
.hsg-sp__row--own{background:var(--hsg-own)}
.hsg-sp__row--own .hsg-sp__when{box-shadow:inset 3px 0 0 var(--hsg-green);padding-left:8px;margin-left:-11px}

/* ---- Kompakte Variante (limit="5") ---- */
.hsg-sp--kompakt .hsg-sp__title{font-size:22px;padding-bottom:8px}
.hsg-sp--kompakt .hsg-sp__group{margin-bottom:14px}
.hsg-sp--kompakt .hsg-sp__day{font-size:12px;padding:6px 10px}
.hsg-sp--kompakt .hsg-sp__row{grid-template-columns:70px 1fr;padding:9px 10px}
.hsg-sp--kompakt .hsg-sp__time{font-size:15px}
.hsg-sp--kompakt .hsg-sp__opp{font-size:15px}
.hsg-sp--kompakt .hsg-sp__hall{grid-column:2;text-align:left;white-space:normal;font-size:12px}
.hsg-sp--kompakt .hsg-sp__city{display:inline}
.hsg-sp--kompakt .hsg-sp__city::before{content:", "}
.hsg-sp--kompakt.hsg-sp--dunkel{padding:20px 18px 16px}

@media (max-width:640px){
	.hsg-sp--dunkel{padding:20px 16px 16px}
	.hsg-sp__title{font-size:26px}
	.hsg-sp__row{grid-template-columns:74px 1fr}
	.hsg-sp__hall{grid-column:2;text-align:left;white-space:normal;margin-top:4px}
	.hsg-sp__city{display:inline}
	.hsg-sp__city::before{content:", "}
	.hsg-sp__toggle{margin-left:0;width:100%}
	.hsg-sp__opp{font-size:16px}
	.hsg-sp__team{display:block;width:-moz-fit-content;width:fit-content;margin:0 0 5px}
	.hsg-sp__res{margin-left:0;display:inline-block;margin-top:4px}
	.hsg-sp__stat{margin-left:0}
	.hsg-sp__ev{grid-template-columns:46px 1fr auto;gap:8px;font-size:12.5px}
	.hsg-sp__ev-team{display:block;white-space:normal}
	.hsg-sp__kal-links{flex-direction:column}
	.hsg-sp__kalz-tr{display:none}
	.hsg-sp__multi{flex:1 1 100%}
	.hsg-sp__multi-btn{width:100%;min-width:0}
	.hsg-sp__multi-liste{max-height:240px}
	.hsg-sp__kalz{gap:4px 12px}
	.hsg-sp__kal-btn{text-align:center}
	.hsg-sp__schuetzen{gap:16px}
	.hsg-sp__tab{font-size:13px;min-width:480px}
	.hsg-sp--liga .hsg-sp__row{grid-template-columns:62px 1fr}
	.hsg-sp__paar{font-size:15px}
}

@media print{
	.hsg-sp--dunkel{background:none!important;background-image:none!important;padding:0;
		--hsg-ink:#333;--hsg-head:#000;--hsg-mute:#666;--hsg-mute2:#888;
		--hsg-line:#ddd;--hsg-card:#fff;--hsg-soft:#f5f5f5;--hsg-zebra:#fafafa;--hsg-feld:#fff}
	.hsg-sp__controls,.hsg-sp__mehr,.hsg-sp--kalender,.hsg-sp__kalbox{display:none}
	.hsg-sp__detail{display:none}
	.hsg-sp__row{break-inside:avoid}
	.hsg-sp__day{background:#eee!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
	.hsg-sp__tab{min-width:0}
	.hsg-sp__tab th{background:#eee!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
