@font-face { font-family: "Roboto"; font-weight: 700; font-style: normal; font-display: swap; src: url(../fonts/roboto-latin-700-normal.woff2) format("woff2"); }
/* interner Bereich /intern/ (AP4) – nur auf der Seite mit der Vorlage „interner Bereich“ geladen. */
.c17-intern > .c17-mitglieder { max-width: var(--c17-content-max) !important; width: 100%; }
.c17-mitglieder p { margin: 0; }

/* Formularteile, gemeinsam für alle Bereiche */
.c17-feld { display: flex; flex-direction: column; gap: 6px; }
.c17-feld label { font-weight: 600; font-size: 15px; }
.c17-feld :is(input:not([type="checkbox"]), textarea, select) {
	font: 400 17px/1.5 var(--wp--preset--font-family--barlow); color: var(--c17-text); background: var(--c17-surface-raised);
	border: 1px solid var(--c17-grau-500); border-radius: 0; padding: 10px 12px; min-height: 44px; width: 100%; box-sizing: border-box;
}
.c17-feld :is(input, textarea, select):focus-visible { outline-offset: 0; border-color: var(--c17-focus); }
.c17-feld--haken { flex-direction: row; align-items: center; gap: 10px; min-height: 44px; }
.c17-feld--haken input { width: 22px; height: 22px; margin: 0; accent-color: var(--c17-brand); }
.c17-feld--haken label { font-weight: 400; font-size: 16px; }
.c17-knopf {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 12px 22px;
	font: 600 16px/1.2 var(--wp--preset--font-family--barlow); border: 2px solid transparent; border-radius: 0; cursor: pointer;
	background: var(--c17-action); color: var(--c17-on-action); text-decoration: none;
}
.c17-knopf:hover { background: var(--c17-action-hover); color: var(--c17-on-action); }
.c17-knopf--umriss { background: transparent; color: var(--c17-text); border-color: currentColor; }
.c17-knopf--umriss:hover { background: transparent; color: var(--c17-accent-text); }
.c17-knopf--breit { width: 100%; }
.c17-daten { font-family: var(--wp--preset--font-family--ibm-plex-mono); font-size: 15px; font-weight: 500; }

/* Karten und Meldungen */
.c17-intern-karte { background: var(--c17-surface); border-top: var(--c17-accent-line) solid var(--c17-brand); padding: 28px; display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-intern-karte--flaeche { border-top: 0; padding: 20px 24px; gap: 4px; }
.c17-mitglieder .c17-intern-karte__titel { margin: 0; font-size: var(--wp--preset--font-size--x-large); line-height: 1.1; }
.c17-intern-meldung { padding: 12px 16px; font-size: 15px; font-weight: 600; }
.c17-intern-meldung--ok { background: var(--c17-success); color: var(--c17-on-success); }
.c17-intern-meldung--fehler { background: var(--c17-danger); color: var(--c17-on-danger); }
.c17-intern-meldung--hinweis { background: var(--c17-info); color: var(--c17-on-info); }

/* Abgemeldet: Einleitung und Anmeldeformular */
.c17-intern-anmelden { display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: var(--c17-space-64); align-items: start; }
.c17-intern-anmelden__text { display: flex; flex-direction: column; gap: var(--c17-space-24); }
.c17-intern-anmelden__text > * { margin-block: 0; }

/* Seitenkopf (E83, Mockup 1b): „Intern / Bereich“ in einer Zeile, Reiter am unteren Rand des Bands */
.c17-seitenkopf.c17-seitenkopf--intern { padding-block: var(--c17-space-24); }
.c17-seitenkopf--intern:has(.hat-reiter) { padding-bottom: 0; }
.c17-intern-band { display: flex; flex-direction: column; gap: 6px; }
.c17-intern-band__zeile { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 14px; }
.c17-intern-band__kicker { font: 500 12px/1 var(--wp--preset--font-family--ibm-plex-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--c17-grau-400); }
.c17-intern-band__strich { font-family: var(--wp--preset--font-family--barlow-condensed); font-weight: 800; font-size: 34px; line-height: 1; color: var(--c17-brand); }
.c17-seitenkopf .c17-intern-band__titel { margin: 0; font-size: clamp(30px, 3.2vw, 40px); line-height: 1; color: var(--c17-weiss); }
.c17-intern-reiter { display: flex; flex-wrap: wrap; gap: 0 32px; }
.c17-seitenkopf .c17-intern-reiter a {
	display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 12px 0 10px; font-weight: 600;
	color: var(--c17-grau-300); text-decoration: none; border-bottom: 4px solid transparent;
}
.c17-seitenkopf .c17-intern-reiter a:hover { color: var(--c17-weiss); }
.c17-seitenkopf .c17-intern-reiter a[aria-current="page"] { color: var(--c17-weiss); border-bottom-color: var(--c17-brand); }
.c17-intern-auswahl { display: none; }
.c17-intern-inhalt > .c17-intern-titel:first-child { margin-top: 0; }
.c17-intern-zaehler { background: var(--c17-brand); color: var(--c17-on-brand); font: 500 12px/1.4 var(--wp--preset--font-family--ibm-plex-mono); padding: 1px 7px; }
.c17-mitglieder .c17-intern-titel { margin: 0 0 var(--c17-space-32); }
.c17-intern-start { display: flex; flex-direction: column; gap: var(--c17-space-48); }
.c17-intern-kacheln { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: var(--c17-space-24); }
.c17-intern-hinweis { display: flex; flex-direction: column; gap: 6px; }

/* Profil */
.c17-intern-profil { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: var(--c17-space-24); align-items: start; }
.c17-intern-profil > .c17-intern-meldung { grid-column: 1 / -1; }
.c17-intern-daten { margin: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; }
.c17-intern-daten dd + dt { margin-top: 10px; }
.c17-intern-daten dt { font: 500 12px/1.6 var(--wp--preset--font-family--ibm-plex-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--c17-text-muted); }
.c17-intern-daten dd { margin: 0; overflow-wrap: anywhere; }

@media (max-width: 820px) {
	.c17-intern-anmelden { grid-template-columns: minmax(0, 1fr); gap: var(--c17-space-32); }
	.c17-intern-anmelden__formular { order: -1; }
	.c17-seitenkopf--intern:has(.hat-reiter) { padding-bottom: var(--c17-space-24); }
	.c17-intern-reiter { display: none; }
	.c17-intern-auswahl { display: flex; align-items: center; gap: 10px; margin: 12px 0 0; }
	.c17-intern-auswahl label { font: 500 12px/1 var(--wp--preset--font-family--ibm-plex-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--c17-grau-400); }
	.c17-intern-auswahl select {
		flex: 1; min-height: 48px; padding: 0 40px 0 14px; border: 1px solid var(--c17-grau-600); border-radius: var(--c17-radius);
		background: var(--c17-grau-800) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center / 18px;
		color: var(--c17-weiss); font: 600 17px/1.2 var(--wp--preset--font-family--barlow); appearance: none;
	}
	.c17-intern-karte { padding: 20px; }
}

/* Kacheln der Übersicht */
.c17-intern-kachel { background: var(--c17-surface); border-top: var(--c17-accent-line) solid var(--c17-brand); padding: 28px; display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-mitglieder .c17-intern-kachel__titel { margin: 0; font-size: var(--c17-h3-size); }
.c17-intern-kachel__liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.c17-intern-kachel__liste li { display: flex; flex-direction: column; gap: 2px; padding: 12px 0; border-bottom: 1px solid var(--c17-line); }
.c17-intern-kachel__liste li:first-child { padding-top: 0; }
.c17-intern-kachel__liste a { font-weight: 600; }
.c17-intern-kachel__liste .c17-daten { font-size: 14px; }
.c17-intern-kachel__mehr { margin-top: auto !important; font-weight: 600; }
.c17-knopf-text { background: none; border: 0; padding: 10px 0; min-height: 44px; font: 600 16px/1.2 var(--wp--preset--font-family--barlow); color: var(--c17-accent-text); text-decoration: underline; cursor: pointer; }
.c17-knopf-text--gefahr { color: var(--c17-danger-text); }

/* Dokumente */
.c17-dok { display: flex; flex-direction: column; gap: var(--c17-space-24); }
.c17-dok-werkzeuge { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--c17-space-16); flex-wrap: wrap; }
.c17-dok-suche { flex: 1 1 320px; max-width: 520px; }
.c17-dok-suche__zeile { display: flex; gap: 8px; }
.c17-dok-suche__zeile input { flex: 1 1 auto; }
.c17-dok-kategorien { display: flex; flex-wrap: wrap; gap: 8px; }
.c17-dok-kategorien a {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border: 1px solid var(--c17-grau-300);
	color: var(--c17-text); background: var(--c17-surface-raised); font-weight: 600; font-size: 15px; text-decoration: none;
}
.c17-dok-kategorien a:hover { border-color: var(--c17-text); }
.c17-dok-kategorien a[aria-current] { background: var(--c17-text); color: var(--c17-bg); border-color: var(--c17-text); }
.c17-dok-formular { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-dok-zweispaltig { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--c17-space-16); }
.c17-dok-knoepfe { display: flex; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
.c17-dok-liste { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--c17-text); }
.c17-dok-eintrag { border-bottom: 1px solid var(--c17-line); }
.c17-dok-eintrag summary {
	display: grid; grid-template-columns: minmax(0, 1fr) 210px 110px 90px; gap: 6px 16px; align-items: baseline;
	padding: 16px 16px 16px 40px; cursor: pointer; list-style: none; position: relative;
}
.c17-dok-eintrag summary::-webkit-details-marker { display: none; }
.c17-dok-eintrag summary::before {
	content: ""; position: absolute; left: 14px; top: 24px; width: 8px; height: 8px;
	border-right: 2px solid var(--c17-text); border-bottom: 2px solid var(--c17-text); transform: rotate(-45deg); transition: transform .15s;
}
.c17-dok-eintrag details[open] > summary::before { transform: rotate(45deg); }
.c17-dok-eintrag details[open] > summary { background: var(--c17-surface); }
.c17-dok-eintrag summary:hover .c17-dok-eintrag__titel { color: var(--c17-accent-text); }
.c17-dok-eintrag__titel { font-weight: 600; }
.c17-dok-eintrag__kat, .c17-dok-eintrag__stand, .c17-dok-eintrag__version { color: var(--c17-text-muted); }
.c17-dok-oeffentlich { font: 500 12px/1.4 var(--wp--preset--font-family--ibm-plex-mono); letter-spacing: .12em; text-transform: uppercase; background: var(--c17-info); color: var(--c17-on-info); padding: 1px 6px; margin-left: 6px; }
.c17-dok-details { background: var(--c17-surface); padding: 4px 16px 24px 40px; display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-dok-details__aktionen { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
.c17-dok-versionen { list-style: none; margin: 0; padding: 16px 20px; background: var(--c17-surface-raised); border: 1px solid var(--c17-line); display: flex; flex-direction: column; gap: 8px; }
.c17-dok-versionen li { display: grid; grid-template-columns: 100px 100px minmax(0, 1fr) auto; gap: 4px 16px; align-items: baseline; }
.c17-dok-aktuell { font: 500 12px/1.4 var(--wp--preset--font-family--ibm-plex-mono); letter-spacing: .12em; text-transform: uppercase; background: var(--c17-success); color: var(--c17-on-success); padding: 2px 8px; }
.c17-dok-hinweis { font-size: 15px; }
.c17-dok-formular--version { border-top: 1px solid var(--c17-line); padding-top: var(--c17-space-16); }
.c17-mitglieder .c17-dok-formular__titel { margin: 0; font-size: var(--c17-h4-size); font-family: var(--wp--preset--font-family--barlow); text-transform: none; letter-spacing: normal; font-weight: 600; }
.c17-dok-loeschen { align-self: flex-start; }
.c17-feld input[type="file"] { padding: 8px; }

@media (max-width: 820px) {
	.c17-dok-eintrag summary { grid-template-columns: minmax(0, 1fr) auto; padding-left: 32px; }
	.c17-dok-eintrag__kat { grid-column: 1 / -1; order: 3; font-size: 15px; }
	.c17-dok-eintrag summary::before { left: 8px; }
	.c17-dok-details { padding: 4px 12px 20px; }
	.c17-dok-versionen li { grid-template-columns: auto minmax(0, 1fr); }
	.c17-dok-versionen li > :nth-child(3) { grid-column: 1 / -1; }
}

/* Interne Fotos */
.c17-fotos { display: flex; flex-direction: column; gap: var(--c17-space-32); }
.c17-fotos-werkzeuge { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--c17-space-16); flex-wrap: wrap; }
.c17-foto-gruppe { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-foto-gruppe__kopf { display: flex; justify-content: space-between; align-items: baseline; gap: 8px 16px; flex-wrap: wrap; border-bottom: 2px solid var(--c17-text); padding-bottom: 8px; }
.c17-mitglieder .c17-foto-gruppe__titel { margin: 0; font-size: var(--c17-h3-size); }
.c17-foto-raster { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--c17-space-24) 18px; }
.c17-foto { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.c17-foto > a { display: block; position: relative; }
.c17-foto img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; display: block; background: var(--c17-surface); }
.c17-foto figcaption { display: flex; flex-direction: column; }
.c17-foto__titel { font-weight: 600; overflow-wrap: anywhere; }
.c17-foto .c17-daten { font-size: 13px; }
.c17-foto-blaettern { display: flex; gap: 20px; align-items: center; font-weight: 600; }
.c17-foto-mini { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.c17-foto-mini img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; display: block; }
.c17-foto-kachel-knoepfe { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }

/* Hochladen */
.c17-foto-upload { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: var(--c17-space-48); align-items: start; }
.c17-foto-upload__dateien, .c17-foto-upload__angaben { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-foto-ablage { border: 2px solid var(--c17-text); background: var(--c17-surface); padding: 32px 24px; display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.c17-foto-ablage.ist-aktiv { background: var(--c17-tint); border-color: var(--c17-brand); }
.c17-foto-ablage__titel { font-weight: 600; font-size: var(--c17-body-lg-size); }
.c17-foto-ablage .c17-feld { align-items: center; }
.c17-foto-ablage input[type="file"] { max-width: 100%; }
.c17-foto-warteschlange { list-style: none; margin: 0; padding: 0; }
.c17-foto-datei { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto 44px; gap: 14px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--c17-line); }
.c17-foto-datei img { width: 72px; height: 48px; object-fit: cover; display: block; }
.c17-foto-datei__mitte { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.c17-foto-datei__name { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.c17-foto-datei__balken { height: 6px; background: var(--c17-line); display: block; }
.c17-foto-datei__balken span { display: block; height: 6px; background: var(--c17-brand); }
.c17-foto-datei__balken span.ist-fertig { background: var(--c17-success); }
.c17-foto-datei__balken span.ist-fehler { background: var(--c17-danger); }
.c17-foto-datei__status { font-size: 13px; max-width: 220px; }
.c17-foto-datei__weg { width: 44px; height: 44px; border: 0; background: transparent; color: var(--c17-text); cursor: pointer; display: flex; align-items: center; justify-content: center; }
.c17-feld--oben { align-items: flex-start; }
.c17-feld--oben input { margin-top: 2px; }
[data-c17-anlass-neu][hidden] { display: none; }

/* Einzelansicht */
.c17-foto-einzeln { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: var(--c17-space-48); align-items: start; }
.c17-foto-einzeln__bild { margin: 0; display: flex; flex-direction: column; gap: 8px; }
.c17-foto-einzeln__bild img { width: 100%; height: auto; display: block; background: var(--c17-surface); }
.c17-foto-einzeln__bild figcaption { font-size: 13px; }
.c17-foto-einzeln__info { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-mitglieder .c17-foto-einzeln__titel { margin: 0; font-size: var(--c17-h2-size); line-height: 1; }
.c17-foto-einzeln__knoepfe { display: flex; gap: 10px; flex-wrap: wrap; }
.c17-foto-bearbeiten { border-top: 1px solid var(--c17-line); padding-top: var(--c17-space-12); }
.c17-foto-bearbeiten summary { cursor: pointer; font-weight: 600; min-height: 44px; display: flex; align-items: center; color: var(--c17-accent-text); }
.c17-foto-bearbeiten[open] { display: flex; flex-direction: column; gap: var(--c17-space-16); }

@media (max-width: 1000px) { .c17-foto-raster { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 820px) {
	.c17-foto-raster { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--c17-space-16) 10px; }
	.c17-foto-upload, .c17-foto-einzeln { grid-template-columns: minmax(0, 1fr); gap: var(--c17-space-32); }
	.c17-foto-datei { grid-template-columns: 56px minmax(0, 1fr) 44px; }
	.c17-foto-datei img { width: 56px; height: 40px; }
	.c17-foto-datei__status { grid-column: 2; grid-row: 2; }
}

/* Freigabe und Verwendung (4.4) */
.c17-marken { position: absolute; left: 8px; top: 8px; display: flex; gap: 6px; flex-wrap: wrap; }
.c17-marken--statisch { position: static; }
.c17-marke { font: 500 12px/1.4 var(--wp--preset--font-family--ibm-plex-mono); letter-spacing: .12em; text-transform: uppercase; padding: 3px 8px; }
.c17-marke--web { background: var(--c17-brand); color: var(--c17-on-brand); }
.c17-marke--insta { background: var(--c17-info); color: var(--c17-on-info); }
.c17-foto-moderation { border-top: 1px solid var(--c17-line); padding-top: var(--c17-space-12); display: flex; flex-direction: column; gap: 10px; }
.c17-aufklapp > summary { list-style: none; width: fit-content; }
.c17-aufklapp > summary::-webkit-details-marker { display: none; }
.c17-aufklapp[open] { display: flex; flex-direction: column; gap: var(--c17-space-16); background: var(--c17-surface); padding: 16px; }
.c17-aufklapp--web[open] { border-top: var(--c17-accent-line) solid var(--c17-brand); }
.c17-aufklapp--insta[open] { border-top: var(--c17-accent-line) solid var(--c17-info-line); }
.c17-knopf--insta { background: transparent; color: var(--c17-info-line); border-color: var(--c17-info-line); }
.c17-knopf--insta:hover { background: transparent; color: var(--c17-text); border-color: var(--c17-text); }
.c17-insta-formular .c17-knopf--insta, .c17-aufklapp--insta[open] > summary { background: var(--c17-info); color: var(--c17-on-info); border-color: var(--c17-info); }
.c17-haken-liste { border: 1px solid var(--c17-line); margin: 0; padding: 14px 16px; display: flex; flex-direction: column; gap: 8px; }
.c17-haken-liste legend { padding: 0 6px; }
.c17-haken-liste .c17-feld--haken label { font-size: 15px; }
.c17-foto-verwendung { border-top: 2px solid var(--c17-text); padding-top: var(--c17-space-16); display: flex; flex-direction: column; gap: var(--c17-space-16); margin-top: var(--c17-space-16); }
.c17-foto-verwendung__karten { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--c17-space-24); }
.c17-verwendung-karte { background: var(--c17-surface); padding: 20px 22px; display: flex; flex-direction: column; gap: 10px; }
.c17-verwendung-karte--web { border-top: var(--c17-accent-line) solid var(--c17-brand); }
.c17-verwendung-karte--insta { border-top: var(--c17-accent-line) solid var(--c17-info-line); }
.c17-verwendung-karte__kopf { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-weight: 600; font-size: var(--c17-body-lg-size); }
.c17-verwendung-liste { margin: 0; padding-left: 18px; }

/* Moderation (4.5) */
.c17-mod { display: flex; flex-direction: column; gap: var(--c17-space-64); }
.c17-mod-abschnitt { display: flex; flex-direction: column; gap: var(--c17-space-24); }
.c17-mod-abschnitt__kopf { display: flex; justify-content: space-between; align-items: baseline; gap: 8px 16px; flex-wrap: wrap; }
.c17-mitglieder .c17-mod-abschnitt__titel { margin: 0; font-size: var(--c17-h2-size); border-top: var(--c17-accent-line) solid var(--c17-brand); padding-top: 10px; }
.c17-mod-eintrag { border: 1px solid var(--c17-line); padding: 22px 24px; display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-mod-eintrag__kopf { display: flex; gap: 14px; align-items: center; }
.c17-mod-initial { width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; background: var(--c17-text); color: var(--c17-bg); font: 800 22px/1 var(--wp--preset--font-family--barlow-condensed); flex: none; }
.c17-mod-eintrag__name { font-weight: 600; }
.c17-mod-eintrag__text { max-width: 820px; }
.c17-mod-eintrag__text p + p { margin-top: 8px; }
.c17-mod-formular { display: flex; flex-direction: column; gap: 12px; background: var(--c17-surface); padding: 16px; }
.c17-mod-formular textarea { min-height: 72px; resize: vertical; }
.c17-mod-knoepfe { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.c17-mod-frei { display: flex; flex-direction: column; gap: 8px; margin-top: var(--c17-space-16); }
.c17-mod-frei__eintrag { border-bottom: 1px solid var(--c17-line); }
.c17-mod-frei__eintrag summary { cursor: pointer; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 16px; padding: 12px 0; list-style: none; }
.c17-mod-frei__eintrag summary::-webkit-details-marker { display: none; }
.c17-mod-frei__name { font-weight: 600; }
.c17-mod-frei__eintrag summary:hover .c17-mod-frei__name { color: var(--c17-accent-text); }
.c17-mod-frei__auszug { grid-column: 1 / -1; font-size: 15px; }
.c17-mod-frei__inhalt { display: flex; flex-direction: column; gap: 12px; padding-bottom: 16px; }
.c17-mod-kz { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: var(--c17-space-48); align-items: start; }
.c17-mod-kz__laufend { border-top: var(--c17-accent-line) solid var(--c17-brand) !important; }
.c17-mod-kz__vorjahre { display: flex; flex-direction: column; gap: 12px; }
.c17-mod-jahre { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.c17-mod-jahre li { display: grid; grid-template-columns: 64px 160px 44px; gap: 10px; align-items: center; }
.c17-mod-jahre input, .c17-mod-jahr-neu input { font: 500 15px/1.4 var(--wp--preset--font-family--ibm-plex-mono); text-align: right; min-height: 44px; padding: 0 10px; border: 1px solid var(--c17-grau-500); background: var(--c17-surface-raised); color: var(--c17-text); width: 100%; box-sizing: border-box; }
.c17-mod-entfernen { width: 44px; height: 44px; border: 1px solid var(--c17-grau-300); background: var(--c17-surface-raised); color: var(--c17-danger-text); cursor: pointer; display: flex; align-items: center; justify-content: center; }
.c17-mod-jahr-neu { display: grid; grid-template-columns: 90px 160px auto; gap: 10px; align-items: end; border-top: 1px solid var(--c17-line); padding-top: 12px; }
@media (max-width: 820px) {
	.c17-mod-jahr-neu { grid-template-columns: 1fr 1fr; }
	.c17-mod-jahr-neu > p:last-child { grid-column: 1 / -1; }
	.c17-mod-frei__eintrag summary { grid-template-columns: minmax(0, 1fr); }
}

/* ---------- E-Mail (4.7) ---------- */
.c17-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; }
.c17-email p { margin: 0; }
.c17-email__adresse { display: flex; flex-direction: column; gap: 4px; }
.c17-email__adresse .c17-daten { font-size: 16px; overflow-wrap: anywhere; }
.c17-email__daten summary { cursor: pointer; font-weight: 600; color: var(--c17-accent-text); min-height: 44px; display: flex; align-items: center; }
.c17-email__daten dl { margin: 8px 0 0; }
.c17-email__daten dt { font-weight: 600; }
.c17-email__daten dd { margin: 2px 0 12px; overflow-wrap: anywhere; }
.c17-email__hinweis { font-size: 15px; }

/* ---------- Dienstplan (AP11) ---------- */
.c17-dp { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-dp__kopf { display: flex; align-items: center; justify-content: space-between; gap: var(--c17-space-16); flex-wrap: wrap; }
.c17-mitglieder .c17-dp__monat { margin: 0; font-size: var(--c17-h2-size); text-transform: uppercase; }
.c17-dp__blaettern { font: 500 12px/1.3 var(--c17-font-mono); letter-spacing: .12em; text-transform: uppercase; text-decoration: none; min-height: 44px; display: inline-flex; align-items: center; gap: 6px; }
.c17-dp__rahmen { position: relative; overflow-x: auto; border-top: 1px solid var(--c17-line); }
.c17-dp__tabelle { border-collapse: collapse; font-size: 15px; }
.c17-dp__tabelle th, .c17-dp__tabelle td { padding: 0; border-bottom: 1px solid var(--c17-line); text-align: center; }
.c17-dp__tabelle thead th { padding: 6px 0; min-width: 36px; font-weight: 400; }
.c17-dp__tag { display: block; font: 500 13px var(--c17-font-mono); }
.c17-dp__wt { display: block; font-size: 11px; }
.c17-dp__we { background: var(--c17-surface); }
.c17-dp__name { position: sticky; left: 0; z-index: 1; background: var(--c17-bg); text-align: left !important; padding: 0 10px !important; white-space: nowrap; font-weight: 400; min-width: 150px; }
.c17-dp__ich .c17-dp__name { font-weight: 600; }
.c17-dp__z { height: 34px; min-width: 36px; font: 500 14px var(--c17-font-mono); }
.c17-dp__z--plus { background: var(--c17-brand); color: var(--c17-on-brand); font-weight: 700; }
.c17-dp__z--x { background: #fff2ea; color: #0e161e; }
.c17-dp__z--n { color: var(--c17-text-muted); }
.c17-dp__z--k { background: #f7f8f9; color: #0e161e; }
.c17-dp__z--u { background: #f3f8fd; color: #003b62; }
.c17-dp__termin { font: 700 11px var(--c17-font-mono); color: var(--c17-info-line, #003b62); height: 30px; }
/* Bearbeitbare Tabelle (11.2) */
.c17-dp__app { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-dp__legende { display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 15px; }
.c17-dp__legende-eintrag { display: inline-flex; align-items: center; gap: 8px; }
.c17-dp__muster { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 24px; font: 600 13px var(--c17-font-mono); border: 1px solid var(--c17-line); }
.c17-dp__z--offen-marke { background: var(--c17-danger); color: var(--c17-on-danger, #fff); border-color: var(--c17-danger); font-weight: 700; }
.c17-dp__z--doppelt { background: var(--c17-warning); color: #0e161e; border-color: var(--c17-warning); }
.c17-dp__tabelle--app td.c17-dp__zelle { padding: 1px; height: auto; }
.c17-dp__f { display: flex; align-items: center; justify-content: center; width: 100%; min-width: 34px; height: 32px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--c17-text); font: 500 14px var(--c17-font-mono); cursor: pointer; }
.c17-dp__f:hover { outline: 2px solid var(--c17-text); outline-offset: -2px; filter: brightness(.93); }
.c17-dp__f:focus-visible, .c17-dp__f.c17-dp__sel { outline: 3px solid var(--c17-focus); outline-offset: -3px; }
.c17-dp__f.c17-dp__z--we, .c17-dp__f.c17-dp__z--leer.c17-dp__z--we { background: var(--c17-surface); }
.c17-dp__f.c17-dp__z--plus { background: var(--c17-brand); color: var(--c17-on-brand); font-weight: 700; font-size: 16px; }
.c17-dp__f.c17-dp__z--x { background: #fff2ea; color: #0e161e; }
.c17-dp__f.c17-dp__z--n { color: var(--c17-text-muted); }
.c17-dp__f.c17-dp__z--k { background: #f7f8f9; color: #0e161e; }
.c17-dp__f.c17-dp__z--u { background: #f3f8fd; color: #003b62; }
.c17-dp__f.c17-dp__z--offen.c17-dp__z--offen { background: rgba(176, 16, 58, .14); }
.c17-dp__f.c17-dp__z--offen.c17-dp__z--n { color: var(--c17-text-muted); }
.c17-dp__f.c17-dp__z--geteilt, .c17-dp__muster.c17-dp__z--geteilt { font-family: Roboto, Arial, sans-serif; font-weight: 700; font-size: 18px; }
.c17-dp__muster.c17-dp__z--plus { background: var(--c17-brand); color: var(--c17-on-brand); border-color: var(--c17-brand); }
.c17-dp__muster.c17-dp__z--x { background: #fff2ea; color: #0e161e; border-color: #fff2ea; }
.c17-dp__muster.c17-dp__z--n { color: var(--c17-text-muted); }
.c17-dp__muster.c17-dp__z--k { background: #f7f8f9; color: #0e161e; }
.c17-dp__muster.c17-dp__z--u { background: #f3f8fd; color: #003b62; }
.c17-dp__tabelle--app thead th.c17-dp__offen-kopf { background: var(--c17-danger); color: #ffffff; font-weight: 700; }
.c17-dp__tabelle--app thead th.c17-dp__sel-kopf { box-shadow: inset 0 -4px 0 var(--c17-focus); }
.c17-dp__tabelle--app .c17-dp__hover { background: var(--c17-orange-90); color: #0e161e; }
.c17-dp__summe th, .c17-dp__summe td { font: 500 14px var(--c17-font-mono); }
.c17-dp__summe .c17-dp__name { font: 600 15px var(--c17-font-sans); }
.c17-dp__tabelle--app tfoot tr:first-child > * { border-top: 2px solid var(--c17-text); }
.c17-dp__besetzt { height: 32px; color: var(--c17-success-text, #1e7b47); }
.c17-dp__besetzt--offen { background: var(--c17-danger); color: #ffffff !important; font-weight: 700; }
.c17-dp__besetzt--doppelt { background: var(--c17-warning); color: #0e161e !important; }
.c17-dp__ausweich { color: var(--c17-text-muted); height: 32px; }
.c17-dp__f--termin { font-size: 11px; font-weight: 700; }
.c17-dp__termin--qm { background: #003b62; color: #ffffff; }
.c17-dp__termin--bw { background: #1e7b47; color: #ffffff; }
.c17-dp__termin--fb { background: #ffbd99; color: #0e161e; }
.c17-dp__termin--s { background: #e8ebed; color: #0e161e; }
.c17-dp__termin--wt { background: #ffe3b8; color: #0e161e; }
.c17-dp__meldung { margin: 0; min-height: 1.4em; font-size: 15px; color: var(--c17-text-muted); }
.c17-dp__meldung--fehler { color: var(--c17-danger-text, #b0103a); font-weight: 600; }
.c17-dp__panel { background: var(--c17-surface); border-top: var(--c17-accent-line) solid var(--c17-brand); padding: 24px 28px; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 32px; }
.c17-dp__links, .c17-dp__rechts { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.c17-dp__rechts { align-items: flex-end; text-align: right; }
.c17-mitglieder .c17-dp__datum { margin: 0; font-family: var(--c17-font-condensed); font-weight: 700; font-size: 26px; text-transform: uppercase; }
.c17-dp__info { list-style: none; margin: 0; padding: 0; }
.c17-dp__info li { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--c17-line); }
.c17-dp__geteilt { align-self: stretch; display: flex; flex-direction: column; gap: 6px; }
.c17-dp__balken { display: flex; gap: 3px; }
.c17-dp__balken > div { flex: 1; background: var(--c17-orange-90); color: #0e161e; padding: 10px 12px; display: flex; flex-direction: column; gap: 2px; text-align: left; }
.c17-dp__teilen { display: flex; flex-direction: column; gap: 8px; align-items: flex-end; }
.c17-dp__teilen-titel { font-weight: 600; }
.c17-dp__zeiten { display: flex; gap: 16px; justify-content: flex-end; flex-wrap: wrap; }
.c17-dp__zeiten label, .c17-dp__beschreibung { display: flex; flex-direction: column; gap: 4px; font-size: 15px; }
.c17-dp__zeiten label { align-items: flex-end; }
.c17-dp__zeiten input, .c17-dp__beschreibung input { min-height: 44px; border: 1px solid var(--c17-grau-300, #bcc4ca); border-radius: 0; padding: 0 10px; font: 500 15px var(--c17-font-mono); background: var(--c17-bg); color: var(--c17-text); }
.c17-dp__beschreibung { max-width: 420px; font-weight: 600; }
.c17-dp__klein { font-size: 15px; }
.c17-dp__arten { display: flex; gap: 8px; flex-wrap: wrap; }
.c17-dp__art { min-height: 44px; padding: 0 16px; border: 2px solid var(--c17-text); border-radius: 0; background: var(--c17-bg); color: var(--c17-text); font: 600 16px var(--c17-font-sans); cursor: pointer; }
.c17-dp__art[aria-pressed="true"] { background: var(--c17-brand); border-color: var(--c17-brand); color: var(--c17-on-brand); }
@media (max-width: 820px) {
	.c17-dp__panel { grid-template-columns: minmax(0, 1fr); padding: 18px 16px; }
	.c17-dp__rechts { align-items: flex-start; text-align: left; }
}
/* Feiertage, Ferien, Export, Verlauf (11.3) */
.c17-dp__ferienzeile td { height: 6px; padding: 0 !important; border-bottom: 0 !important; }
.c17-dp__ferienzeile .c17-dp__ferien-titel { height: auto; font-size: 12px; color: var(--c17-text-muted); padding: 2px 10px !important; }
.c17-dp__ferien-an { background: var(--c17-navy-hell, #7db2e0); cursor: help; }
.c17-dp__tabelle thead th.c17-dp__ferien { box-shadow: inset 0 4px 0 var(--c17-navy-hell, #7db2e0); }
.c17-dp__tabelle--app thead th.c17-dp__feiertag { font-weight: 700; text-decoration: underline dotted; cursor: help; }
.c17-dp__export { margin: 0; display: flex; gap: 20px; justify-content: flex-end; flex-wrap: wrap; font-weight: 600; }
.c17-dp__verlauf-link { font-weight: 600; }
.c17-dp__kalender { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; font-size: 14px; }
.c17-dp-verlauf { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-dp-verlauf__filter { display: flex; gap: 16px; align-items: flex-end; flex-wrap: wrap; }
.c17-dp-verlauf__filter p { margin: 0; }
.c17-dp-verlauf__filter select { min-height: 44px; min-width: 180px; }
.c17-dp-verlauf__tabelle { border-collapse: collapse; width: 100%; font-size: 15px; }
.c17-dp-verlauf__tabelle th, .c17-dp-verlauf__tabelle td { text-align: left; padding: 10px 12px 10px 0; border-bottom: 1px solid var(--c17-line); vertical-align: middle; }
.c17-dp-verlauf__tabelle thead th { font: 500 12px var(--c17-font-mono); letter-spacing: .12em; text-transform: uppercase; border-bottom: 2px solid var(--c17-text); }
.c17-dp-wert { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; height: 24px; padding: 0 4px; font: 600 14px var(--c17-font-mono); }
.c17-dp-wert--plus { background: var(--c17-brand); color: var(--c17-on-brand); }
.c17-dp-wert--x { background: #fff2ea; color: #0e161e; }
.c17-dp-wert--n { color: var(--c17-text-muted); border: 1px solid var(--c17-line); }
.c17-dp-wert--k { background: #f7f8f9; color: #0e161e; }
.c17-dp-wert--u { background: #f3f8fd; color: #003b62; }
.c17-dp-wert--leer { color: var(--c17-text-muted); border: 1px solid var(--c17-line); font-weight: 500; }
/* Handy: Variante C „ganzer Plan“ (11.4) */
.c17-dp__name-kurz, .c17-dp__nur-handy.c17-dp__nur-handy, .c17-dp__eingabe { display: none; }
.c17-dp__zuletzt { display: flex; flex-direction: column; gap: 12px; align-items: inherit; }
.c17-dp__kopfzeile { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.c17-dp__tagart { font-size: 14px; color: var(--c17-text-muted); }
.c17-dp__eingabe { gap: 6px; }
.c17-dp__w { flex: 1; min-width: 0; height: 48px; padding: 0; border: 1px solid var(--c17-grau-300, #bcc4ca); border-radius: 0; background: var(--c17-bg); color: var(--c17-text); font: 600 17px var(--c17-font-mono); cursor: pointer; }
.c17-dp__w[aria-pressed="false"] { background: var(--c17-bg); color: var(--c17-text); }
.c17-dp__w[aria-pressed="true"] { border: 2px solid var(--c17-text); }
.c17-dp__w.c17-dp__z--plus[aria-pressed="true"] { background: var(--c17-brand); color: var(--c17-on-brand); }
.c17-dp__w.c17-dp__z--x[aria-pressed="true"] { background: #fff2ea; color: #0e161e; }
.c17-dp__w.c17-dp__z--k[aria-pressed="true"] { background: #f7f8f9; color: #0e161e; }
.c17-dp__w.c17-dp__z--u[aria-pressed="true"] { background: #f3f8fd; color: #003b62; }
.c17-dp__w:focus-visible { outline: 3px solid var(--c17-focus); outline-offset: 2px; }
.c17-dp__wischen { margin: -8px 0 0; font-size: 13px; color: var(--c17-text-muted); }
@media (pointer: coarse) {
	.c17-dp__eingabe { display: flex; }
}
@media (max-width: 820px) {
	.c17-dp__eingabe { display: flex; }
	.c17-dp__nur-handy.c17-dp__nur-handy { display: block; }
	h3 .c17-dp__nur-handy.c17-dp__nur-handy { display: inline; }
	.c17-dp__nur-gross, .c17-dp__name-lang, .c17-dp__ausweich-zeile, .c17-dp__tabelle--app .c17-dp__ferienzeile { display: none; }
	.c17-dp__name-kurz { display: inline; }
	.c17-dp__tabelle--app .c17-dp__name { box-sizing: border-box; width: 92px; min-width: 92px; max-width: 92px; overflow: hidden; font-size: 13px; padding: 0 6px !important; border-right: 1px solid var(--c17-line); }
	.c17-dp__tabelle--app .c17-dp__ich .c17-dp__name { background: color-mix(in srgb, var(--c17-brand) 8%, var(--c17-bg)); }
	.c17-dp__tabelle--app .c17-dp__summe .c17-dp__name { font-size: 13px; }
	.c17-dp__tabelle--app thead th { padding: 4px 0; border-top: 4px solid transparent; }
	.c17-dp__tabelle--app thead th.c17-dp__ferien-kopf { border-top-color: var(--c17-navy-hell, #7db2e0); }
	.c17-dp__tabelle--app .c17-dp__f { height: 36px; }
	/* Feld unten bleibt beim Blättern sichtbar */
	.c17-dp__panel { position: sticky; bottom: 0; z-index: 3; gap: 10px; padding: 14px 16px 16px; box-shadow: 0 -6px 16px rgba(14, 22, 30, .12); }
	.c17-dp__links, .c17-dp__rechts { gap: 10px; }
	.c17-dp__info, .c17-dp__zuletzt, .c17-dp__geteilt { display: none; }
	.c17-dp__rechts { align-items: flex-end; text-align: right; }
	.c17-dp__rechts:empty { display: none; }
	.c17-mitglieder .c17-dp__datum { font-size: 22px; }
	.c17-dp__wer { font-size: 13px; color: var(--c17-text-muted); text-align: right; }
	.c17-dp__teilen-knopf { min-height: 40px; padding: 0 14px; }
	.c17-dp__arten { gap: 6px; }
	.c17-dp__art { padding: 0 12px; font-size: 15px; }
}

/* Bestellungen abarbeiten (6.3c, Mockup 16/17) */
.c17-bst { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-bst-suche { display: flex; flex-direction: column; gap: 4px; font-weight: 600; font-size: 15px; max-width: 420px; }
.c17-bst-suche__zeile { display: flex; gap: 8px; }
.c17-bst-suche input[type=search] { flex: 1; min-width: 0; min-height: 44px; padding: 0 12px; border: 1px solid var(--c17-grau-400); border-radius: 0; background: var(--c17-bg); color: var(--c17-text); font: 400 16px var(--wp--preset--font-family--barlow); }
.c17-bst-reiter { display: flex; gap: 8px; flex-wrap: wrap; margin-top: var(--c17-space-8); }
.c17-bst-reiter a { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 18px; border: 2px solid var(--c17-text); color: var(--c17-text); font-weight: 600; text-decoration: none; }
.c17-bst-reiter a[aria-current="page"] { background: var(--c17-brand); border-color: var(--c17-brand); color: var(--c17-on-brand); }
.c17-bst-reiter a:hover:not([aria-current]) { color: var(--c17-accent-text); }
.c17-bst-erklaerung { margin: 0; font-size: 15px; color: var(--c17-text-muted); }
.c17-bst-leer { margin: 0; padding: 24px; background: var(--c17-surface); text-align: center; }
.c17-bst-liste { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-bst-karte { display: grid; grid-template-columns: minmax(0, 1fr) 300px; border: 2px solid var(--c17-line); }
.c17-bst-karte__inhalt { padding: 20px 24px; display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.c17-bst-karte__kopf { display: flex; align-items: baseline; gap: 6px 12px; flex-wrap: wrap; }
.c17-mitglieder .c17-bst-karte__titel { margin: 0; font: 800 24px/1.1 var(--wp--preset--font-family--barlow-condensed); text-transform: uppercase; }
.c17-bst-warnung { background: var(--c17-warning); color: var(--c17-on-warning); padding: 2px 8px; font-size: 14px; font-weight: 600; }
.c17-bst-posten { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.c17-bst-posten li { display: flex; align-items: center; gap: 12px; }
.c17-bst-posten img, .c17-bst-posten__leer { width: 44px; height: 44px; object-fit: cover; flex: none; background: var(--c17-surface); }
.c17-bst-daten { display: flex; gap: 8px 32px; flex-wrap: wrap; margin: 0; font-size: 15px; }
.c17-bst-daten dt { font-weight: 600; }
.c17-bst-daten dd { margin: 0; }
.c17-bst-verlauf { margin: 0; font-size: 14px; color: var(--c17-text-muted); }
.c17-bst-karte__aktionen { background: var(--c17-surface); padding: 20px; display: flex; flex-direction: column; gap: 10px; justify-content: center; }
.c17-bst-karte__aktionen form { margin: 0; }
.c17-bst-versand { display: flex; flex-direction: column; gap: 4px; font-size: 14px; font-weight: 600; }
.c17-bst-versand input { min-height: 44px; padding: 0 10px; border: 1px solid var(--c17-grau-400); border-radius: 0; background: var(--c17-bg); color: var(--c17-text); font: 500 15px var(--wp--preset--font-family--ibm-plex-mono); margin-bottom: 6px; }
.c17-bst-storno { text-align: center; }
.c17-bst-fertig { margin: 0; font-weight: 600; color: var(--c17-success-text); text-align: center; }
@media (max-width: 820px) {
	.c17-bst-karte { grid-template-columns: minmax(0, 1fr); }
	.c17-bst-karte__inhalt { padding: 16px; }
	.c17-bst-karte__aktionen { padding: 12px 16px; }
	.c17-bst-reiter { flex-wrap: nowrap; overflow-x: auto; margin-inline: calc(-1 * var(--c17-gutter, 16px)); padding: 0 var(--c17-gutter, 16px) 4px; }
	.c17-bst-reiter a { flex: none; min-height: 44px; padding: 0 12px; }
	.c17-bst-suche { max-width: none; }
}

/* ---------- Lager und Inventur (6.8, Mockup 18–22) ---------- */
.c17-lager { display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-lager__kopf { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.c17-mitglieder .c17-lager__titel { margin: 0; font: 800 34px/1.05 var(--wp--preset--font-family--barlow-condensed); text-transform: uppercase; }
.c17-mitglieder .c17-lager__titel--klein { font-size: 26px; margin-top: var(--c17-space-16); }
.c17-lager__knoepfe { display: flex; gap: 8px; flex-wrap: wrap; }
.c17-lager__knoepfe form { margin: 0; }
.c17-lager__hinweis { margin: 0; padding: 12px 16px; background: var(--c17-surface); border-left: 4px solid var(--c17-brand); font-size: 15px; }
.c17-lager__zurueck { margin: 0; }
.c17-lager__tabelle, .c17-lager__buchtabelle { width: 100%; border-collapse: collapse; }
.c17-lager__tabelle th, .c17-lager__buchtabelle th { text-align: left; font-size: 14px; font-weight: 600; padding: 8px 10px; border-bottom: 2px solid var(--c17-text); }
.c17-lager__tabelle td { padding: 10px; border-bottom: 1px solid var(--c17-line); vertical-align: middle; }
.c17-lager__buchtabelle td { padding: 8px 10px; border-bottom: 1px solid var(--c17-line); font-size: 15px; vertical-align: top; }
.c17-lager__zahl { text-align: right; white-space: nowrap; }
.c17-lager__tabelle th.c17-lager__zahl { text-align: right; }
.c17-lager__artikel { display: flex; align-items: center; gap: 12px; min-width: 0; }
.c17-lager__artikel img, .c17-lager__artikel .c17-bst-posten__leer { width: 48px; height: 48px; object-fit: cover; flex: none; background: var(--c17-surface); }
.c17-lager__artikel strong { display: block; font-weight: 600; line-height: 1.25; }
.c17-lager__info { display: block; font-size: 14px; color: var(--c17-text-muted); }
.c17-lager__bestand { font: 500 20px var(--wp--preset--font-family--ibm-plex-mono); }
.c17-lager__pille { display: inline-block; margin-left: 6px; padding: 2px 8px; font-size: 13px; font-weight: 600; vertical-align: middle; }
.c17-lager__pille--knapp { background: var(--c17-warning); color: var(--c17-on-warning); }
.c17-lager__pille--leer { background: var(--c17-danger); color: var(--c17-on-danger); }
.c17-lager__pille--ohne { background: var(--c17-surface); color: var(--c17-text); }
.c17-lager__knapp { font: 500 15px var(--wp--preset--font-family--ibm-plex-mono); }
.c17-lager__mobil-label { display: none; }
.c17-lager__aktion { text-align: right; width: 1%; white-space: nowrap; }
.c17-lager__formzeile td { background: var(--c17-surface); padding: 16px; }
.c17-lager__form { display: flex; flex-direction: column; gap: 12px; margin: 0; }
.c17-lager__formtitel { margin: 0; font-weight: 600; }
.c17-lager__arten { display: flex; gap: 8px; flex-wrap: wrap; margin: 0; padding: 0; border: 0; }
.c17-lager__art { position: relative; display: inline-flex; }
.c17-lager__art input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.c17-lager__art span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border: 2px solid var(--c17-text); background: var(--c17-bg); color: var(--c17-text); font-weight: 600; font-size: 15px; }
.c17-lager__art input:checked + span { background: var(--c17-brand); border-color: var(--c17-brand); color: var(--c17-on-brand); }
.c17-lager__art input:focus-visible + span { outline: 3px solid var(--c17-focus); outline-offset: 2px; }
.c17-lager__felder { display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap; }
.c17-lager__feld { display: flex; flex-direction: column; gap: 4px; font-size: 14px; font-weight: 600; }
.c17-lager__feld--breit { flex: 1; min-width: 200px; }
.c17-lager__feld input, .c17-inventur__ist { box-sizing: border-box; min-height: 44px; padding: 0 12px; border: 1px solid var(--c17-grau-400); border-radius: 0; background: var(--c17-bg); color: var(--c17-text); font: 400 16px var(--wp--preset--font-family--barlow); }
.c17-lager__feld input[type=number], .c17-inventur__ist { width: 110px; font: 500 18px var(--wp--preset--font-family--ibm-plex-mono); }
.c17-lager__vorschau { margin: 0 0 10px; font-size: 17px; }
.c17-lager__formknoepfe { display: flex; gap: 8px; flex-wrap: wrap; }
.c17-lager__export { margin: 0; font-size: 15px; }
.c17-link-knopf { padding: 0; border: 0; background: none; color: var(--c17-accent-text); font: inherit; font-size: 15px; text-decoration: underline; cursor: pointer; min-height: 44px; }
.c17-inventur__fortschritt { display: flex; flex-direction: column; gap: 8px; }
.c17-inventur__zahl { margin: 0; font-weight: 600; }
.c17-inventur__balken { height: 10px; background: var(--c17-surface); border: 1px solid var(--c17-line); }
.c17-inventur__balken span { display: block; height: 100%; background: var(--c17-brand); }
.c17-inventur__blind { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 15px; }
.c17-inventur__blind input { width: 20px; height: 20px; accent-color: var(--c17-brand); }
.c17-inventur--blind .c17-inventur__soll { visibility: hidden; }
.c17-inventur__form { margin: 0; display: flex; flex-direction: column; gap: var(--c17-space-16); }
.c17-inventur__ende { display: flex; flex-direction: column; gap: 10px; padding-top: 8px; }
.c17-inventur__zusammenfassung { margin: 0; font-weight: 600; }
.c17-inventur__verwerfen { margin: 0; }
.c17-inventur--gespeichert .c17-inventur__ist { border-color: var(--c17-success-text); }
.c17-inventur--fehler .c17-inventur__ist { border: 2px solid var(--c17-danger-text); }
.c17-inventur--handy .c17-inventur__tabelle { display: none; }
.c17-inventur__handy { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 16px; border: 2px solid var(--c17-line); text-align: center; }
.c17-inventur__position { margin: 0; align-self: flex-end; }
.c17-inventur__bild { width: 160px; height: 160px; background: var(--c17-surface); }
.c17-inventur__bild img { width: 100%; height: 100%; object-fit: cover; }
.c17-mitglieder .c17-inventur__name { margin: 0; font: 800 26px/1.1 var(--wp--preset--font-family--barlow-condensed); text-transform: uppercase; }
.c17-inventur__zaehler { display: flex; align-items: center; gap: 16px; }
.c17-inventur__pm { width: 64px; height: 64px; border: 2px solid var(--c17-text); background: var(--c17-bg); color: var(--c17-text); font-size: 32px; line-height: 1; cursor: pointer; }
.c17-inventur__wert { min-width: 80px; font: 500 40px var(--wp--preset--font-family--ibm-plex-mono); }
.c17-inventur__diff { margin: 0; font-weight: 600; }
.c17-inventur__diff--ok { color: var(--c17-success-text); }
.c17-inventur__diff--ab { color: var(--c17-danger-text); }
.c17-inventur__nav { display: flex; gap: 8px; width: 100%; }
.c17-inventur__nav .c17-knopf { flex: 1; }
@media (max-width: 700px) {
	.c17-lager__tabelle thead { display: none; }
	.c17-lager__tabelle, .c17-lager__tabelle tbody { display: block; }
	.c17-lager__zeile { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; padding: 12px 0; border-bottom: 1px solid var(--c17-line); }
	.c17-lager__zeile td { display: block; padding: 0; border: 0; }
	.c17-lager__zeile td:first-child { grid-column: 1 / -1; }
	.c17-lager__zeile .c17-lager__zahl { text-align: left; }
	.c17-lager__zeile .c17-lager__knapp { grid-column: 1; font-size: 14px; color: var(--c17-text-muted); }
	.c17-lager__mobil-label { display: inline; font-family: var(--wp--preset--font-family--barlow); }
	.c17-lager__zeile .c17-lager__aktion { grid-column: 2; grid-row: 2 / span 2; align-self: center; }
	/* „Bestand ändern“ als Fläche von unten */
	.c17-lager__formzeile:not([hidden]) { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 10001; max-height: 85vh; overflow-y: auto; box-shadow: 0 -4px 24px rgba(0, 0, 0, .3); }
	.c17-lager__formzeile td { display: block; background: var(--c17-bg); border-top: 3px solid var(--c17-brand); padding: 16px 16px 24px; }
	body.c17-lager-blatt-offen::after { content: ""; position: fixed; inset: 0; z-index: 10000; background: rgba(14, 22, 30, .5); }
	.c17-lager__arten { flex-direction: column; }
	.c17-lager__art span { width: 100%; }
	.c17-lager__formknoepfe .c17-knopf { flex: 1; }
	.c17-lager__buchtabelle thead { display: none; }
	.c17-lager__buchtabelle, .c17-lager__buchtabelle tbody, .c17-lager__buchtabelle tr { display: block; }
	.c17-lager__buchtabelle tr { padding: 8px 0; border-bottom: 1px solid var(--c17-line); }
	.c17-lager__buchtabelle td { display: inline; padding: 0; border: 0; font-size: 14px; }
	.c17-lager__buchtabelle td:nth-child(3) { display: block; font-weight: 600; font-size: 15px; }
	.c17-lager__buchtabelle td:nth-child(1)::after { content: " · "; }
	.c17-lager__buchtabelle td:nth-child(5) { display: block; color: var(--c17-text-muted); }
	.c17-mitglieder .c17-lager__titel { font-size: 28px; }
}
.c17-inventur__name:focus { outline: none; }

/* ---------- Shop-Auswertung (6.7, Mockup 12/13) ---------- */
.c17-auswertung .c17-lager__kopf .c17-bst-reiter { margin-top: 0; }
.c17-auswertung__filter { display: flex; gap: 10px 12px; align-items: flex-end; flex-wrap: wrap; margin: 0; }
.c17-auswertung__filter select, .c17-auswertung__filter input[type=date] { box-sizing: border-box; min-height: 44px; padding: 0 10px; border: 1px solid var(--c17-grau-400); border-radius: 0; background: var(--c17-bg); color: var(--c17-text); font: 400 16px var(--wp--preset--font-family--barlow); max-width: 100%; }
.c17-auswertung__summe { display: flex; justify-content: space-between; align-items: baseline; gap: 8px 16px; flex-wrap: wrap; padding: 12px 16px; background: var(--c17-surface); }
.c17-auswertung__summe p { margin: 0; }
.c17-auswertung__kasten { padding: 12px 16px; border: 2px solid var(--c17-line); font-size: 15px; }
.c17-auswertung__kasten p { margin: 0 0 4px; }
.c17-auswertung__nachtrag { display: inline-block; margin-left: 4px; padding: 0 6px; font-size: 12px; font-weight: 600; background: var(--c17-warning); color: var(--c17-on-warning); }
.c17-auswertung__kacheln { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.c17-auswertung__kachel { display: flex; flex-direction: column; gap: 2px; padding: 14px 16px; background: var(--c17-surface); }
.c17-auswertung__kachel span { font-size: 14px; color: var(--c17-text-muted); }
.c17-auswertung__kachel strong { font-size: 24px; }
.c17-auswertung__kachel small { font-size: 13px; color: var(--c17-text-muted); }
.c17-auswertung__spalten { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.c17-mitglieder .c17-auswertung h3 { margin: 12px 0 8px; font: 800 22px/1.1 var(--wp--preset--font-family--barlow-condensed); text-transform: uppercase; }
.c17-auswertung__zeilen { margin: 0; }
.c17-auswertung__zeilen div { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px solid var(--c17-line); }
.c17-auswertung__zeilen div:last-child { font-weight: 600; }
.c17-auswertung__zeilen dd { margin: 0; white-space: nowrap; }
.c17-auswertung__bestseller, .c17-auswertung__personen { margin: 0; padding-left: 1.4em; }
.c17-auswertung__warnung { padding: 8px 12px; background: var(--c17-warning); color: var(--c17-on-warning); font-weight: 600; }
@media (max-width: 820px) {
	.c17-auswertung__kacheln { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.c17-auswertung__spalten { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.c17-auswertung__filter .c17-lager__feld { flex: 1 1 140px; }
	.c17-auswertung__filter select, .c17-auswertung__filter input[type=date] { width: 100%; }
	.c17-auswertung__artikel thead { display: table-header-group; }
	.c17-auswertung__artikel, .c17-auswertung__artikel tbody { display: table; width: 100%; }
	.c17-auswertung__artikel tr { display: table-row; padding: 0; }
	.c17-auswertung__artikel td { display: table-cell; padding: 6px 4px; border-bottom: 1px solid var(--c17-line); font-size: 13px; }
	.c17-auswertung__artikel td:nth-child(n)::after { content: none; }
	.c17-auswertung__artikel td:nth-child(3), .c17-auswertung__artikel td:nth-child(5) { display: table-cell; font-weight: 400; color: inherit; font-size: 13px; }
}
@media (max-width: 700px) {
	.c17-auswertung__liste td { display: inline; font-size: 14px; color: inherit; font-weight: 400; }
	.c17-auswertung__liste td:nth-child(1)::after, .c17-auswertung__liste td:nth-child(4)::after, .c17-auswertung__liste td:nth-child(6)::after { content: " · "; }
	.c17-auswertung__liste td:nth-child(3), .c17-auswertung__liste td:nth-child(5) { display: block; }
	.c17-auswertung__liste td:nth-child(3) { font-weight: 600; font-size: 15px; }
	.c17-auswertung__liste td:nth-child(5) { color: var(--c17-text-muted); }
	.c17-auswertung__liste td:nth-child(7) { font-weight: 600; }
}
.c17-lager__buchtabelle th.c17-lager__zahl { text-align: right; }

/* Dienstplan ab 960 px Breite: der ganze Monat passt in die Box, kein seitliches Scrollen – die Tage teilen sich die Breite. */
@media (min-width: 960px) {
	.c17-dp__tabelle { width: 100%; table-layout: fixed; }
	.c17-dp__tabelle .c17-dp__name { box-sizing: border-box; width: 140px; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
	.c17-dp__tabelle thead th, .c17-dp__tabelle .c17-dp__z, .c17-dp__tabelle .c17-dp__f { min-width: 0; }
}
@media (min-width: 960px) and (max-width: 1100px) {
	.c17-dp__tabelle .c17-dp__name { width: 112px; font-size: 13px; padding: 0 6px !important; }
	.c17-dp__wt { font-size: 10px; }
	.c17-dp__tabelle .c17-dp__f, .c17-dp__tabelle .c17-dp__z { font-size: 13px; }
}

/* Dienstplan 11.7 (E92): TS (Traunstein), W (Windenübung), eingesprungen / abgegeben, Wochenenden im leeren Plan */
.c17-dp__z--t, .c17-dp__f.c17-dp__z--t, .c17-dp__muster.c17-dp__z--t, .c17-dp__w.c17-dp__z--t { background: var(--c17-info); color: var(--c17-on-info); border-color: var(--c17-info); font-weight: 600; font-size: 12px; }
.c17-dp__w.c17-dp__z--t { font-size: 15px; }
.c17-dp__z--w, .c17-dp__f.c17-dp__z--w, .c17-dp__muster.c17-dp__z--w, .c17-dp__w.c17-dp__z--w { background: #ffe3b8; color: #0e161e; border-color: #ffe3b8; font-weight: 600; }
.c17-dp__z--ein, .c17-dp__f.c17-dp__z--ein { background-image: linear-gradient(225deg, #0e161e 0 8px, transparent 8px); }
.c17-dp__z--ab, .c17-dp__f.c17-dp__z--ab { background-image: linear-gradient(45deg, var(--c17-danger) 0 8px, transparent 8px); }
.c17-dp__muster.c17-dp__z--ab { background-color: var(--c17-bg); }
.c17-dp__f.c17-dp__z--offen.c17-dp__z--we, .c17-dp__f.c17-dp__z--leer.c17-dp__z--offen.c17-dp__z--we { background-color: rgba(176, 16, 58, .32); }
.c17-dp__tabelle--app thead th.c17-dp__offen-kopf.c17-dp__we { background: #6e0820; }
.c17-dp__ein { display: flex; flex-direction: column; gap: 8px; }
.c17-dp__ein-haken { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; }
.c17-dp__ein-haken input { width: 22px; height: 22px; accent-color: var(--c17-text); }
.c17-dp__ein-fuer { display: flex; flex-direction: column; gap: 4px; }
.c17-dp__ein-fuer select { min-height: 44px; max-width: 320px; font: inherit; border: 1px solid var(--c17-line); background: var(--c17-bg); color: var(--c17-text); }
.c17-dp__ab-hinweis { margin: 0; padding: 8px 12px; border-left: 4px solid var(--c17-danger); background: var(--c17-surface); }
.c17-dp-wert--t { background: var(--c17-info); color: var(--c17-on-info); }
.c17-dp-wert--w { background: #ffe3b8; color: #0e161e; }

/* Dienstplan 11.8 (E92): Gastzeilen, Personen im Dienstplan */
.c17-dp__gast .c17-dp__name, .c17-dp__tabelle .c17-dp__gast th { background: color-mix(in srgb, var(--c17-info) 10%, var(--c17-bg)); color: var(--c17-text); font-weight: 600; }
.c17-dp__gast td.c17-dp__zelle, .c17-dp__gast td.c17-dp__z { box-shadow: inset 0 0 0 9999px color-mix(in srgb, var(--c17-info) 6%, transparent); }
.c17-dp__gast-marke { display: inline-block; margin-left: 6px; padding: 1px 5px; font: 600 10px var(--c17-font-mono); letter-spacing: .08em; text-transform: uppercase; background: var(--c17-info); color: var(--c17-on-info); vertical-align: 1px; }
.c17-dp__gast-neu { display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.c17-dp__gast-form { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.c17-dp__gast-form[hidden] { display: none; }
.c17-dp__gast-form label { display: flex; flex-direction: column; gap: 4px; }
.c17-dp__gast-form input { min-height: 44px; padding: 0 10px; font: inherit; border: 1px solid var(--c17-line); background: var(--c17-bg); color: var(--c17-text); }
.c17-dp__gast-form .c17-dp__klein { flex-basis: 100%; }
.c17-dp__admin-link { margin: 0; }
.c17-dp-personen__rahmen { overflow-x: auto; }
.c17-dp-personen__tabelle { border-collapse: collapse; width: 100%; font-size: 16px; }
.c17-dp-personen__tabelle th, .c17-dp-personen__tabelle td { padding: 8px; border-bottom: 1px solid var(--c17-line); text-align: left; vertical-align: middle; }
.c17-dp-personen__tabelle thead th { background: var(--c17-nacht, #0e161e); color: #ffffff; font: 500 11px var(--c17-font-mono); letter-spacing: .1em; text-transform: uppercase; }
.c17-dp-personen__tabelle select { min-height: 44px; min-width: 170px; font: inherit; border: 1px solid var(--c17-line); background: var(--c17-bg); color: var(--c17-text); }
.c17-dp-personen__aus { display: inline-flex; gap: 8px; align-items: center; min-height: 44px; }
.c17-dp-personen--aus th { color: var(--c17-text-muted); }

/* Dienstplan 11.9 (E92): Leiste, Archiv */
.c17-dp__nav ul { display: flex; flex-wrap: wrap; gap: 4px 24px; margin: 0 0 8px; padding: 0; list-style: none; border-bottom: 1px solid var(--c17-line); }
.c17-dp__nav a { display: inline-flex; align-items: center; min-height: 44px; color: var(--c17-text-muted); text-decoration: none; font-weight: 500; border-bottom: 4px solid transparent; margin-bottom: -1px; }
.c17-dp__nav a:hover { color: var(--c17-text); }
.c17-dp__nav a[aria-current="page"] { color: var(--c17-text); font-weight: 600; border-bottom-color: var(--c17-brand); }
.c17-dp__archiv-leiste { margin: 0; padding: 10px 14px; background: var(--c17-surface); border-top: 4px solid var(--c17-text-muted); }
.c17-dp--archiv .c17-dp__tabelle { filter: saturate(.55); }
.c17-dp-archiv__jahr { margin-top: 16px; }
.c17-dp-archiv__jahr h3 { margin: 0 0 10px; }
.c17-dp-archiv__jahr summary { display: flex; justify-content: space-between; align-items: center; min-height: 48px; padding: 0 16px; border: 1px solid var(--c17-line); cursor: pointer; font: 800 22px var(--c17-font-display, inherit); }
.c17-dp-archiv__anzahl { font: 500 12px var(--c17-font-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--c17-text-muted); }
.c17-dp-archiv__jahr details[open] summary, details.c17-dp-archiv__jahr[open] > summary { margin-bottom: 10px; }
.c17-dp-archiv__monate { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.c17-dp-archiv__monate a, .c17-dp-archiv__leer { display: flex; align-items: center; justify-content: center; min-height: 44px; border: 1px solid var(--c17-line); text-decoration: none; color: var(--c17-text); }
.c17-dp-archiv__monate a:hover { border-color: var(--c17-text); }
.c17-dp-archiv__leer { color: var(--c17-text-muted); border-style: dashed; }
.c17-dp-personen__weg { margin-top: 24px; padding: 14px 18px; background: var(--c17-surface); }
.c17-dp-personen__weg h3 { margin: 0 0 6px; }
@media (max-width: 820px) { .c17-dp-archiv__monate { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Dienstplan 11.10 (E92): Statistik */
.c17-dp-statistik__kopf { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; }
.c17-dp-statistik__filter { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.c17-dp-statistik__filter label { display: flex; flex-direction: column; gap: 4px; font-size: 14px; }
.c17-dp-statistik__filter select { min-height: 44px; min-width: 110px; font: inherit; border: 1px solid var(--c17-line); background: var(--c17-bg); color: var(--c17-text); }
.c17-dp-statistik__excel { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; }
.c17-dp-statistik__kacheln { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; margin: 8px 0; padding: 0; list-style: none; }
.c17-dp-statistik__kacheln li { display: flex; flex-direction: column; gap: 4px; padding-top: 10px; border-top: 4px solid var(--c17-brand); }
.c17-dp-statistik__kacheln li.c17-dp-statistik__ts { border-top-color: var(--c17-info); }
.c17-dp-statistik__zahl { font: 800 40px/1 var(--c17-font-display, inherit); }
.c17-dp-statistik__offen .c17-dp-statistik__zahl { color: var(--c17-danger-text, var(--c17-danger)); }
.c17-dp-statistik__rahmen { overflow-x: auto; }
.c17-dp-statistik__tabelle { border-collapse: collapse; width: 100%; font-size: 15px; }
.c17-dp-statistik__tabelle th, .c17-dp-statistik__tabelle td { padding: 8px; border-bottom: 1px solid var(--c17-line); text-align: right; font-family: var(--c17-font-mono); }
.c17-dp-statistik__tabelle th:first-child { text-align: left; font-family: inherit; font-weight: 400; }
.c17-dp-statistik__tabelle thead th { background: var(--c17-nacht, #0e161e); padding: 0 8px; }
.c17-dp-statistik__tabelle thead button { all: unset; display: inline-flex; align-items: center; gap: 6px; min-height: 44px; cursor: pointer; color: #ffffff; font: 500 11px var(--c17-font-mono); letter-spacing: .1em; text-transform: uppercase; }
.c17-dp-statistik__tabelle thead button:focus-visible { outline: 3px solid var(--c17-focus); outline-offset: 2px; }
.c17-dp-statistik__tabelle thead th:not([aria-sort="none"]) button { box-shadow: inset 0 -3px 0 var(--c17-brand); }
.c17-dp-statistik__tabelle tfoot td, .c17-dp-statistik__tabelle tfoot th { border-top: 2px solid var(--c17-text); font-weight: 600; }
@media (max-width: 820px) { .c17-dp-statistik__kacheln { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Ecken auch an Wochenenden/Feiertagen und in leeren Feldern sichtbar (Wochenend-Regeln setzen „background“ zurück). */
.c17-dp__tabelle .c17-dp__f.c17-dp__z--ein.c17-dp__z--ein, .c17-dp__tabelle td.c17-dp__z--ein.c17-dp__z--ein { background-image: linear-gradient(225deg, #0e161e 0 8px, transparent 8px); }
.c17-dp__tabelle .c17-dp__f.c17-dp__z--ab.c17-dp__z--ab, .c17-dp__tabelle td.c17-dp__z--ab.c17-dp__z--ab { background-image: linear-gradient(45deg, var(--c17-danger) 0 8px, transparent 8px); }

/* Dienstplan (E95): senkrechte Gitterlinien, kräftigere Linie vor jedem Montag, Spalte/Zeile mitführen */
.c17-dp__tabelle th:not(.c17-dp__name), .c17-dp__tabelle td:not(.c17-dp__name) { border-left: 1px solid var(--c17-line); }
.c17-dp__tabelle th.c17-dp__wo, .c17-dp__tabelle td.c17-dp__wo { border-left: 2px solid var(--c17-text-muted); }
.c17-dp__tabelle--app .c17-dp__spalte .c17-dp__f, .c17-dp__tabelle--app td.c17-dp__spalte:not(.c17-dp__zelle) { box-shadow: inset 0 0 0 999px rgba(0, 59, 98, .10); }
.c17-dp__tabelle--app .c17-dp__zeile-an td .c17-dp__f { box-shadow: inset 0 0 0 999px rgba(0, 59, 98, .06); }
.c17-dp__tabelle--app .c17-dp__zeile-an td.c17-dp__spalte .c17-dp__f { box-shadow: inset 0 0 0 999px rgba(0, 59, 98, .16); }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .c17-dp__tabelle--app .c17-dp__spalte .c17-dp__f, :root:not([data-theme="light"]) .c17-dp__tabelle--app td.c17-dp__spalte:not(.c17-dp__zelle) { box-shadow: inset 0 0 0 999px rgba(125, 178, 224, .16); }
	:root:not([data-theme="light"]) .c17-dp__tabelle--app .c17-dp__zeile-an td .c17-dp__f { box-shadow: inset 0 0 0 999px rgba(125, 178, 224, .09); }
}
:root[data-theme="dark"] .c17-dp__tabelle--app .c17-dp__spalte .c17-dp__f, :root[data-theme="dark"] .c17-dp__tabelle--app td.c17-dp__spalte:not(.c17-dp__zelle) { box-shadow: inset 0 0 0 999px rgba(125, 178, 224, .16); }
:root[data-theme="dark"] .c17-dp__tabelle--app .c17-dp__zeile-an td .c17-dp__f { box-shadow: inset 0 0 0 999px rgba(125, 178, 224, .09); }
