/*!
 * ROSE CRM App – Ersatz für die WordPress-Grundstile, auf denen die Fachseiten des Plugins aufbauen
 * (widefat, form-table, regular-text, button-link …). Nur innerhalb von .rcrm-app. Danach folgt crm.css.
 * (c) 2026 ROSE IT Management UG (haftungsbeschränkt). Alle Rechte vorbehalten.
 */
.k-main .rcrm-app { padding: 0; max-width: none; }
:where(.rcrm-app) *, :where(.rcrm-app) *::before, :where(.rcrm-app) *::after { box-sizing: border-box; }
:where(.rcrm-app) p { margin: 0 0 12px; }
:where(.rcrm-app) a:hover { text-decoration: underline; }
:where(.rcrm-app) a.rcrm-knopf:hover, :where(.rcrm-app) a.button:hover { text-decoration: none; }
:where(.rcrm-app) .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Grundstile mit :where(.rcrm-app): so schwach gewichtet wie die WordPress-Standards, damit die Klassen aus
   crm.css (Plugin) gewinnen – z. B. Abstände von .rcrm-zform__fuss. Eigene Korrekturen weiter unten mit .rcrm-app. */

/* Tabellen */
:where(.rcrm-app) fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
:where(.rcrm-app) table.widefat { width: 100%; border-spacing: 0; border-collapse: separate; background: #fff; border: 1px solid var(--rc-linie); border-radius: 12px; overflow: hidden; }
:where(.rcrm-app) table.widefat th, :where(.rcrm-app) table.widefat td { padding: 10px 14px; text-align: left; vertical-align: top; font-size: 13.5px; line-height: 1.5; }
:where(.rcrm-app) table.widefat thead th { background: #f7f9fb; border-bottom: 1px solid var(--rc-linie); color: var(--rc-leise); font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
:where(.rcrm-app) table.widefat tbody tr + tr td, :where(.rcrm-app) table.widefat tbody tr + tr th { border-top: 1px solid #edf1f5; }
:where(.rcrm-app) table.striped > tbody > tr:nth-child(odd) { background: #fbfcfd; }
:where(.rcrm-app) table.widefat tbody tr:hover td { background: #f6f9fc; }
:where(.rcrm-app) .row-title { font-weight: 600; font-size: 14px; color: var(--rc-navy); }

/* Formulare */
:where(.rcrm-app) .form-table { width: 100%; border-collapse: collapse; }
:where(.rcrm-app) .form-table th { text-align: left; vertical-align: top; }
:where(.rcrm-app) .form-table td { vertical-align: top; }
:where(.rcrm-app) .form-table td input + input, :where(.rcrm-app) .form-table td input + select, :where(.rcrm-app) .form-table td select + input { margin-left: 6px; }
:where(.rcrm-app) .form-table td br + input { margin-top: 8px; }
:where(.rcrm-app) .form-table .description { margin: 6px 0 0; }
:where(.rcrm-app) .regular-text { width: 25em; max-width: 100%; }
:where(.rcrm-app) .large-text { width: 100%; }
:where(.rcrm-app) input[type=checkbox], :where(.rcrm-app) input[type=radio] { width: 17px; height: 17px; margin: 0 6px 0 0; vertical-align: -3px; appearance: none; -webkit-appearance: none; border: 1px solid #9fb3c2; border-radius: 4px; background: #fff; cursor: pointer; }
:where(.rcrm-app) input[type=radio] { border-radius: 50%; }
:where(.rcrm-app) input[type=radio]:checked { box-shadow: inset 0 0 0 4px var(--rc-blau); border-color: var(--rc-blau); }
:where(.rcrm-app) input[type=checkbox]:checked::after { margin-top: 1px; }
:where(.rcrm-app) label { cursor: pointer; }
:where(.rcrm-app) .button-link { padding: 0; border: 0; background: none; color: var(--rc-blau); font: inherit; font-size: 13.5px; cursor: pointer; text-decoration: none; }
:where(.rcrm-app) .button-link:hover { text-decoration: underline; }
:where(.rcrm-app) .rcrm-rot, :where(.rcrm-app) .button-link.rcrm-rot { color: var(--rc-rot); }
:where(.rcrm-app) form.rcrm-inline { display: inline; margin: 0; }
.rcrm-app .rcrm-aktionen:not(td):not(.rcrm-aktionen--spalte) { display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: flex-end; align-items: center; }
:where(.rcrm-app) details > summary { cursor: pointer; }

/* Meldungen wie WordPress „notice“ */
:where(.rcrm-app) .notice { padding: 10px 14px; border: 1px solid var(--rc-linie); border-left: 4px solid var(--rc-blau); border-radius: 10px; background: #fff; margin: 0 0 16px; }
:where(.rcrm-app) .notice-success { border-left-color: var(--rc-gruen); }
:where(.rcrm-app) .notice-error { border-left-color: var(--rc-rot); }
:where(.rcrm-app) .notice-warning { border-left-color: #d48612; }

/* Felder ohne eigene Breite (Vorname, Nachname, Ort …) wie im WordPress-Backend etwa 20 Zeichen breit */
/* :where() hält die Spezifität niedrig, damit Regeln aus crm.css (z. B. .rcrm-editor, .rcrm-stapel) gewinnen. */
.rcrm-app :where(input:not([type]):not([class]):not([size]), input[type=text]:not([class]):not([size]), input[type=email]:not([class]):not([size])) { width: 13.5em; max-width: 100%; }

/* Ränder-Tabelle (Einstellungen → Vertrags-PDF): innere Tabelle nicht wie die Formulartabelle strecken */
.rcrm-app .rcrm-raender table { width: auto; border-collapse: collapse; }
.rcrm-app .rcrm-raender table th, .rcrm-app .rcrm-raender table td { width: auto; border-top: 0; padding: 3px 8px 3px 0; }

/* WordPress „button-link-delete“ (z. B. „Ausgewählte Tickets löschen“, „Projekt löschen“): rote Schrift wie .button.delete. */
.rcrm-app .button.button-link-delete { background: #fff; color: var(--rc-rot) !important; border-color: #e8b5ac; }
.rcrm-app .button.button-link-delete:hover { background: #fdf3f1; border-color: var(--rc-rot); }

/* Plugin-Bausteine innerhalb der Einstellungen (z. B. Ticket-Regeln) */
.rcrm-app.rcrm-app--eingebettet { padding: 0; max-width: none; }

/* Zeiterfassung: Formular und Stoppuhr nebeneinander (im Plugin steht die Uhr in der Werkzeugleiste) */
.rcrm-zoben { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 18px; align-items: start; margin-bottom: 18px; }
.rcrm-zoben > .rcrm-karte { margin: 0; }
.rcrm-zuhr .widefat { width: 100%; box-sizing: border-box; }
@media (max-width: 1100px) { .rcrm-zoben { grid-template-columns: 1fr; } }
.rcrm-app input[type=checkbox], .rcrm-app input[type=radio] { flex: none; }
@media (max-width: 600px) {
	.rcrm-app .rcrm-zsum { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rcrm-app .rcrm-zkopf { flex-wrap: wrap; gap: 8px; }
	.rcrm-zwoche { gap: 4px; }
	.rcrm-app .rcrm-zkopf__nav { flex-wrap: wrap; row-gap: 6px; }
	.rcrm-zkopf__nav strong { font-size: 14px; }
	.rcrm-zoben, .rcrm-zoben > .rcrm-karte, .rcrm-zform__grid > * { min-width: 0; }
}

/* Abstand unter Tabellen in Karten (z. B. Hinweis unter den Zeiten eines Einsatzes) */
.rcrm-app .rcrm-karte > .rcrm-tabelle + p, .rcrm-app .rcrm-karte > .rcrm-tabelle + form { margin-top: 12px; }

/* Formulartabellen auf dem Handy untereinander – wie WordPress (≤ 782 px). crm-wp.css lädt vor crm.css → table.form-table */
@media (max-width: 782px) {
	.rcrm-app table.form-table, .rcrm-app table.form-table > tbody, .rcrm-app table.form-table > tbody > tr, .rcrm-app table.form-table > tbody > tr > th, .rcrm-app table.form-table > tbody > tr > td { display: block; width: auto; }
	.rcrm-app table.form-table > tbody > tr > th { padding: 14px 0 6px; border: 0; }
	.rcrm-app table.form-table > tbody > tr > td { padding: 0 0 12px; border: 0; }
	.rcrm-app table.form-table > tbody > tr + tr { border-top: 1px solid #edf1f5; }
	.rcrm-app table.form-table td select, .rcrm-app table.form-table td input:not([type=checkbox]):not([type=radio]), .rcrm-app table.form-table td textarea { max-width: 100%; }
	.rcrm-app table.form-table td input + input, .rcrm-app table.form-table td input + select, .rcrm-app table.form-table td select + input { margin-left: 0; }
}

/* Datum mit Uhrzeit und Monat – in WordPress vom Admin-Stil gesetzt, in crm.css nicht enthalten (wie input[type=date]) */
.rcrm-app input[type=datetime-local], .rcrm-app input[type=month], .rcrm-app input[type=time] { font-family: var(--rc-text-font); font-size: 14px; box-sizing: border-box; height: 40px; min-height: 40px; padding: 6px 12px; border: 1px solid #c3d1dc; border-radius: 9px; background-color: #fff; color: var(--rc-text); box-shadow: none; vertical-align: middle; }

/* Budget-Auswahl: Feldhöhe 40 px (crm.css 0.36.3) braucht etwas mehr Breite, sonst wird „insgesamt“ abgeschnitten. */
.rcrm-app .rcrm-budget select:not([multiple]):not([size]) { width: 136px; }
/* Liste „Erstellte Abrechnungen“ ohne Aufzählungspunkte (in WordPress vom Admin-Stil: ul { list-style: none }). */
.rcrm-app ul.rcrm-zab { list-style: none; padding: 0; }
/* Bericht-Formular: auf dem Handy einspaltig, sonst werden Auswahllisten abgeschnitten. */
@media (max-width: 600px) { .rcrm-app .rcrm-bericht-form__grid { grid-template-columns: minmax(0, 1fr); } .rcrm-app .rcrm-bericht-form .rcrm-karte__kopf { flex-wrap: wrap; } .rcrm-app .rcrm-bericht-form__grid > .rcrm-bericht-form__breit { grid-column: 1 / -1; } }
/* Angebote: Schlusstext mit Abstand zur Positionstabelle (im Plugin per style="margin-top:12px"), Statusknöpfe mit Abstand. */
.rcrm-app .rcrm-an__schluss { margin-top: 14px; }
.rcrm-app .rcrm-an__st { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; margin: 14px 0 0; }
.rcrm-app .rcrm-an__st .rcrm-inline { margin: 0; }
/* Angebote und laufende Leistungen auf dem Handy: nichts über den Kartenrand hinaus. */
.rcrm-app .rcrm-abos-k li b { white-space: nowrap; }
@media (max-width: 782px) {
	.rcrm-app .rcrm-an .rcrm-karte__kopf { align-items: stretch; }
	.rcrm-app .rcrm-an__katalog { flex-wrap: wrap; width: 100%; }
	.rcrm-app .rcrm-an__katalog select { min-width: 0; flex: 1 1 100%; width: 100%; }
	.rcrm-app .rcrm-an__pos td:first-child input { display: block; width: 100%; max-width: none; box-sizing: border-box; }
	.rcrm-app .rcrm-abos .rcrm-aktionen > form { margin-left: 0; }
	.rcrm-app .rcrm-abos-monat .rcrm-karte__kopf { flex-wrap: wrap; gap: 10px; }
	.rcrm-app .rcrm-abos-monat__nav h2 { min-width: 0; font-size: 17px; }
	.rcrm-app .rcrm-abos-k__kopf { flex-wrap: wrap; gap: 4px 12px; }
	.rcrm-app .rcrm-abos-k__kopf a { flex: 1 1 100%; }
	.rcrm-app .rcrm-abos-k__kopf span { margin-left: 0; }
	.rcrm-app .rcrm-abos-k__kopf .rcrm-inline { margin-left: auto; }
}
/* Hinweis-Banner in der Kundenakte: Thema, darunter Text, darunter Zeitraum/Status und Aktionen. */
.rcrm-app .rcrm-banner-mini-z__text { margin: 6px 0 4px; line-height: 1.45; }
.rcrm-app .rcrm-banner-mini-z__fuss { margin: 0; line-height: 1.6; }
.rcrm-app .rcrm-banner-mini-z__fuss .description { margin-right: 6px; }
/* Datenschutz (Kundenakte): Liste „Wird sofort gelöscht“ bündig (in WordPress ohne Einzug). */
.rcrm-app ul.rcrm-dsgvo__liste { padding-left: 0; list-style: none; }

/* Nachrichten und Bewertungen (0.20.0): keine Pillenform – Datumstrenner als Marke (5 px), Balken leicht gerundet. */
.rcrm-app .rcrm-chat__tag span { border-radius: 5px; }
.rcrm-app .rcrm-bew-stat__z i { border-radius: 3px; }
.rcrm-app .rcrm-chat__blase .rcrm-inline { display: inline; }
.rcrm-app .rcrm-tabelle td.rcrm-bew-sterne { color: #f5a623; }
.rcrm-app .rcrm-tabelle td.rcrm-bew-sterne.ist-warn { color: #1e8fd5; }
.rcrm-chat__datei small { white-space: nowrap; }
/* Checklisten-Vorlagen: Schritte wie im WordPress-Admin ohne Browser-Einzug (ol { padding: 0 }), Einzug kommt aus crm.css. */
.rcrm-app ol.rcrm-cl-v__schritte { padding-left: 0; }

/* IT-Quartalsbericht: Quartal „(laufend)“ passt in die Auswahl. */
.rcrm-app .rcrm-qb__form { grid-template-columns: 250px 1fr; }
@media (max-width: 782px) { .rcrm-app .rcrm-qb__form { grid-template-columns: 1fr; } }

/* Zeiten → Berichte: Zusammenfassung farbig wie der Leistungsnachweis (Wunsch Matt, ab 0.33.0). */
.rcrm-app .rcrm-bk__zahlen { display: grid; grid-template-columns: 1.3fr repeat(3, 1fr); gap: 14px; margin: 16px 0 16px; }
.rcrm-app .rcrm-bk__zahl { border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 12px; padding: 14px 18px; background: #fff; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.rcrm-app .rcrm-bk__zahl small { font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #6a7a8b; }
.rcrm-app .rcrm-bk__zahl b { font-size: 26px; line-height: 1.15; font-weight: 700; color: #10273a; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rcrm-app .rcrm-bk__zahl b i { font-style: normal; font-size: 13px; font-weight: 500; color: #6a7a8b; margin-left: 5px; }
.rcrm-app .rcrm-bk__zahl span { font-size: 12px; color: #6a7a8b; }
.rcrm-app .rcrm-bk__zahl.ist-haupt { background: linear-gradient(120deg, #0d2233, #165f85); border-color: transparent; }
.rcrm-app .rcrm-bk__zahl.ist-haupt small, .rcrm-app .rcrm-bk__zahl.ist-haupt span, .rcrm-app .rcrm-bk__zahl.ist-haupt b i { color: rgba(255,255,255,.72); }
.rcrm-app .rcrm-bk__zahl.ist-haupt b { color: #fff; font-size: 30px; }
.rcrm-app .rcrm-bk__gruppen { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 14px; margin: 0 0 20px; }
.rcrm-app .rcrm-bk__gruppe { border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 12px; padding: 14px 18px 8px; background: #fbfcfd; }
.rcrm-app .rcrm-bk__gruppe h3 { display: flex; align-items: center; gap: 9px; margin: 0 0 10px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #3d4f60; }
.rcrm-app .rcrm-bk__gruppe h3 > span:not(.rcrm-ic) { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rcrm-app .rcrm-bk__gruppe h3 > .rcrm-ic { flex: none; width: 30px; height: 30px; }
.rcrm-app .rcrm-bk__gruppe h3 em { font-style: normal; font-size: 11px; font-weight: 600; letter-spacing: 0; color: #6a7a8b; background: #eef2f6; border-radius: 5px; padding: 1px 7px; }
.rcrm-app .rcrm-bk__gruppe ul { list-style: none; margin: 0; padding: 0; }
.rcrm-app .rcrm-bk__gruppe li { margin: 0 0 10px; }
.rcrm-app .rcrm-bk__zeile { display: flex; align-items: baseline; gap: 10px; font-size: 13px; }
.rcrm-app .rcrm-bk__name { flex: 1; min-width: 0; display: flex; align-items: center; gap: 8px; color: #1b2a38; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rcrm-app .rcrm-bk__name i { flex: none; width: 9px; height: 9px; border-radius: 50%; background: var(--c); }
.rcrm-app .rcrm-bk__zeile b { font-variant-numeric: tabular-nums; color: #10273a; }
.rcrm-app .rcrm-bk__zeile small { width: 38px; text-align: right; font-size: 11.5px; color: #6a7a8b; font-variant-numeric: tabular-nums; }
.rcrm-app .rcrm-bk__balken { height: 6px; margin: 5px 0 0 17px; background: #e9eef3; border-radius: 3px; overflow: hidden; }
.rcrm-app .rcrm-bk__balken span { display: block; height: 100%; background: var(--c); border-radius: 3px; }
@media (max-width: 960px) { .rcrm-app .rcrm-bk__zahlen { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .rcrm-app .rcrm-bk__zahlen { grid-template-columns: 1fr; } }

/* Rechnungen: „Bezahlt“ mit Datum und Kundeninfo (ab 0.33.4). */
.rcrm-app .rcrm-re-bez { display: inline-block; vertical-align: middle; }
.rcrm-app td.rcrm-aktionen > details.rcrm-re-bez { margin-left: 14px; }
.rcrm-app td.rcrm-aktionen > details.rcrm-re-bez:first-child { margin-left: 0; }
.rcrm-app .rcrm-re-bez > summary { font-size: 13px; }
.rcrm-app .rcrm-re-bez > summary { list-style: none; cursor: pointer; color: var(--rc-blau, #165f85); font-weight: 500; }
.rcrm-app .rcrm-re-bez > summary::-webkit-details-marker { display: none; }
.rcrm-app .rcrm-re-bez__panel { margin-top: 8px; width: 240px; display: grid; gap: 10px; padding: 14px; background: #fff; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 10px; box-shadow: 0 6px 18px rgba(16,39,58,.10); text-align: left; white-space: normal; }
.rcrm-app .rcrm-re-bez__panel label { display: grid; gap: 4px; font-size: 12.5px; }
.rcrm-app .rcrm-re-bez__panel label > span { font-weight: 600; color: #3d4f60; }
.rcrm-app .rcrm-re-bez__panel input[type=date] { width: 100%; }
.rcrm-app .rcrm-re-bez__panel .rcrm-re-bez__info { display: flex; align-items: flex-start; gap: 8px; font-weight: 400; }
.rcrm-app .rcrm-re-bez__panel .button { justify-self: start; }

/* Auswertung: Team als eigene Zeile mit Kacheln (ab 0.33.9, Wunsch Matt). */
.rcrm-aw__team .rcrm-aw__stapel { margin-bottom: 14px; }
.rcrm-aw__team-raster { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.rcrm-aw__team-k { display: flex; gap: 10px; align-items: center; min-width: 0; padding: 10px 12px; border: 1px solid #e3eaf0; border-radius: 10px; background: #fbfcfd; }
.rcrm-aw__team-k > div { flex: 1; min-width: 0; }
.rcrm-aw__team-k strong { display: block; font-size: 13px; color: #10273a; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rcrm-aw__team-k small { font-size: 12px; color: #6b7c8c; }
.rcrm-aw__team-k i { display: block; height: 5px; margin-top: 6px; background: #e9eef3; border-radius: 3px; overflow: hidden; }
.rcrm-aw__team-k i b { display: block; height: 100%; background: var(--f); }
.rcrm-aw__team-av { flex: none; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: 700; color: #fff; background: var(--f); }
@media (min-width: 1100px) { .rcrm-aw__raster.rcrm-aw__raster--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* Kundenliste mit Kennzahlen, Liste/Karten (ab 0.34.0). Kennzahlen nutzen .rcrm-bk__zahl (Berichte). */
.rcrm-app .rcrm-kl__zahlen { margin-top: 4px; grid-template-columns: 1.25fr repeat(var(--n, 3), 1fr); }
@media (max-width: 960px) { .rcrm-app .rcrm-kl__zahlen { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .rcrm-app .rcrm-kl__zahlen { grid-template-columns: 1fr; } }
.rcrm-app .rcrm-kl__zahlen .rcrm-bk__zahl b.rcrm-kl__rot { color: #c2412d; }
.rcrm-app .rcrm-kl__zahlen .rcrm-bk__zahl span.rcrm-kl__warn { color: #b8730c; }
.rcrm-app .rcrm-kl__zahlen .rcrm-bk__zahl span.rcrm-kl__rot { color: #c2412d; }
.rcrm-app .rcrm-kl__rot { color: #c2412d !important; }
.rcrm-app .rcrm-kl__warn { color: #b8730c !important; }
.rcrm-app .rcrm-kl__ok { color: #16955a; font-size: 13px; font-weight: 500; }
.rcrm-app .rcrm-kl__leiste { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 0 0 14px; }
.rcrm-app .rcrm-kl__leiste .rcrm-suche, .rcrm-app .rcrm-kl__leiste .rcrm-filterzeile { margin: 0; }
.rcrm-app .rcrm-kl__filter a { padding: 6px 12px; }
.rcrm-app .rcrm-kl__n { display: inline-block; margin-left: 3px; font-weight: 600; opacity: .7; }
.rcrm-app .rcrm-kl__ansicht { margin-left: auto; display: inline-flex; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 8px; overflow: hidden; background: #fff; }
.rcrm-app .rcrm-kl__ansicht a { padding: 6px 12px; font-size: 13px; color: #5b6e7f; text-decoration: none; }
.rcrm-app .rcrm-kl__ansicht a + a { border-left: 1px solid var(--rc-linie, #e3e9ef); }
.rcrm-app .rcrm-kl__ansicht a.ist-aktiv { background: var(--rc-navy, #10273a); color: #fff; }
.rcrm-app table.rcrm-kl__tabelle { border-radius: 12px; overflow: hidden; }
.rcrm-app table.rcrm-kl__tabelle td { vertical-align: middle; padding-top: 12px; padding-bottom: 12px; }
.rcrm-app table.rcrm-kl__tabelle > tbody > tr:hover > td { background: #f8fbfd; }
.rcrm-app .rcrm-kl__kunde { display: flex; align-items: center; gap: 12px; }
.rcrm-app .rcrm-kl__kunde > div { min-width: 0; }
.rcrm-app .rcrm-kl__kunde .row-title { font-size: 14.5px; }
.rcrm-app .rcrm-kl__kunde .description { display: block; margin-top: 1px; }
.rcrm-app .rcrm-kl__av { flex: none; width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: var(--f); color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .02em; }
.rcrm-app .rcrm-kl__marken { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 5px; }
.rcrm-app .rcrm-kl__marken .rcrm-dsgvo-marke { margin-left: 0; border-radius: 5px; }
.rcrm-app .rcrm-kl__marke { display: inline-block; padding: 2px 7px; border-radius: 5px; font-size: 11px; font-weight: 600; line-height: 1.5; white-space: nowrap; max-width: 220px; overflow: hidden; text-overflow: ellipsis; }
.rcrm-app .rcrm-kl__marke--v { background: #e6f0f7; color: #165f85; }
.rcrm-app .rcrm-kl__marke--s { background: #eef0fd; color: #5b49c9; }
.rcrm-app .rcrm-kl__marke--o { background: #f1f3f5; color: #7b8a98; }
.rcrm-app .rcrm-kl__marke--gek { background: #fcf1e2; color: #a8660a; }
.rcrm-app .rcrm-kl__zahl { display: inline-grid; place-items: center; min-width: 28px; height: 24px; padding: 0 6px; border-radius: 5px; background: #eef3f7; color: #10273a; font-weight: 600; text-decoration: none; }
.rcrm-app .rcrm-kl__zahl--neu { background: #fcf1e2; color: #a8660a; }
.rcrm-app .rcrm-kl__zelle { display: grid; gap: 1px; }
.rcrm-app .rcrm-kl__zelle strong { font-weight: 600; color: #10273a; }
.rcrm-app .rcrm-kl__zelle strong.rcrm-leise { color: #8a9aa8; font-weight: 500; }
.rcrm-app .rcrm-kl__zelle small { font-size: 12px; color: #6a7a8b; }
.rcrm-app .rcrm-kl__balken { display: block; width: 120px; max-width: 100%; height: 6px; margin: 3px 0 4px; background: #e9eef3; border-radius: 3px; overflow: hidden; }
.rcrm-app .rcrm-kl__balken i { display: block; height: 100%; }
.rcrm-app .rcrm-kl__wann { color: #5b6e7f; font-size: 13px; }
.rcrm-app .rcrm-kl__akte { text-align: right; white-space: nowrap; }
.rcrm-app .rcrm-kl__akte a { font-weight: 600; text-decoration: none; }
.rcrm-app .rcrm-kl__raster { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 14px; margin-bottom: 20px; }
.rcrm-app .rcrm-kl__karte { position: relative; display: flex; flex-direction: column; gap: 12px; padding: 16px 18px; background: #fff; border: 1px solid var(--rc-linie, #e3e9ef); border-top: 3px solid var(--f); border-radius: 12px; transition: box-shadow .15s, transform .15s; }
.rcrm-app .rcrm-kl__karte:hover { box-shadow: 0 8px 22px rgba(16,39,58,.10); transform: translateY(-1px); }
.rcrm-app .rcrm-kl__karte .rcrm-kl__marken { margin-top: 0; }
.rcrm-app .rcrm-kl__kopf { display: flex; align-items: center; gap: 12px; }
.rcrm-app .rcrm-kl__kopf > div { flex: 1; min-width: 0; }
.rcrm-app .rcrm-kl__name { display: block; font-size: 15px; font-weight: 600; color: #10273a; text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rcrm-app .rcrm-kl__name::after { content: ""; position: absolute; inset: 0; border-radius: 12px; } /* ganze Karte klickbar */
.rcrm-app .rcrm-kl__kopf small { display: block; font-size: 12px; color: #6a7a8b; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rcrm-app .rcrm-kl__ring { flex: none; width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(var(--c) calc(var(--p) * 1%), #e9eef3 0); }
.rcrm-app .rcrm-kl__ring span { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; background: #fff; font-size: 10.5px; font-weight: 600; color: #10273a; }
.rcrm-app .rcrm-kl__zahlen3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 8px; padding: 10px 12px; background: #f7f9fb; border-radius: 10px; }
.rcrm-app .rcrm-kl__zahlen3 > div { min-width: 0; }
.rcrm-app .rcrm-kl__zahlen3 b { display: block; font-size: 17px; font-weight: 700; color: #10273a; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rcrm-app .rcrm-kl__zahlen3 b.rcrm-kl__ok { font-size: 17px; }
.rcrm-app .rcrm-kl__zahlen3 small { display: block; font-size: 11.5px; color: #6a7a8b; }
.rcrm-app .rcrm-kl__fuss { display: flex; justify-content: space-between; gap: 10px; margin-top: auto; font-size: 12.5px; color: #3d4f60; }
@media (max-width: 782px) {
	.rcrm-app .rcrm-kl__ansicht { margin-left: 0; }
	.rcrm-app .rcrm-kl__raster { grid-template-columns: 1fr; }
	.rcrm-app .rcrm-kl__zahl { justify-self: start; }
}

/* Zeiterfassung: bunte Kennzahlen, Kundenanteile, Monatskalender, Kundenkacheln (ab 0.37.0, Abweichung vom Plugin). */
.rcrm-app .rcrm-zk { display: grid; grid-template-columns: minmax(0, 1.3fr) repeat(3, minmax(0, 1fr)); gap: 12px; margin: 4px 0 14px; }
.rcrm-app .rcrm-zk__k { position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 2px; min-width: 0; padding: 14px 16px; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 14px; background: #fff; }
.rcrm-app .rcrm-zk__k small { display: flex; align-items: center; gap: 7px; font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #6a7a8b; }
.rcrm-app .rcrm-zk__k small i { width: 9px; height: 9px; border-radius: 50%; background: var(--c); }
.rcrm-app .rcrm-zk__k b { font-size: 27px; line-height: 1.15; font-weight: 700; color: #10273a; white-space: nowrap; }
.rcrm-app .rcrm-zk__k b i { font-style: normal; font-size: 13px; font-weight: 500; color: #6a7a8b; margin-left: 4px; }
.rcrm-app .rcrm-zk__k > span { font-size: 12px; color: #6a7a8b; }
.rcrm-app .rcrm-zk__k.ist-haupt { background: linear-gradient(120deg, #0d2233, #165f85); border-color: transparent; }
.rcrm-app .rcrm-zk__k.ist-haupt small, .rcrm-app .rcrm-zk__k.ist-haupt > span, .rcrm-app .rcrm-zk__k.ist-haupt b i { color: rgba(255,255,255,.75); }
.rcrm-app .rcrm-zk__k.ist-haupt b { color: #fff; }
.rcrm-app .rcrm-zk__spark { display: flex; align-items: flex-end; gap: 2px; height: 30px; margin-top: 8px; }
.rcrm-app .rcrm-zk__spark i { flex: 1; min-width: 0; border-radius: 2px 2px 0 0; background: rgba(255,255,255,.5); }
.rcrm-app .rcrm-zk__spark i.ist-heute { background: #7ee2b8; }
.rcrm-app .rcrm-zk__k.ist-blau { --c: #1e8fd5; border-top: 3px solid var(--c); padding-right: 80px; }
.rcrm-app .rcrm-zk__k.ist-orange { --c: #d48612; border-top: 3px solid var(--c); background: #fffaf2; }
.rcrm-app .rcrm-zk__k.ist-lila { --c: #6d4fd8; border-top: 3px solid var(--c); }
.rcrm-app .rcrm-zk__ring { position: absolute; right: 14px; top: 16px; width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(#1e8fd5 calc(var(--p) * 1%), #e9eef3 0); }
.rcrm-app .rcrm-zk__ring span { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: #fff; font-size: 11px; font-weight: 600; color: #10273a; }
.rcrm-app .rcrm-zk__los { margin-top: 6px; font-size: 12.5px; font-weight: 700; color: #b8730c !important; text-decoration: none; }
.rcrm-app .rcrm-zk__los:hover { text-decoration: underline; }
.rcrm-app .rcrm-zk__bar, .rcrm-app .rcrm-zk__anteil { display: flex; height: 8px; margin-top: 10px; border-radius: 4px; overflow: hidden; background: #e9eef3; }
.rcrm-app .rcrm-zk__bar i, .rcrm-app .rcrm-zk__anteil i, .rcrm-app .rcrm-zt__bar i { display: block; height: 100%; }
.rcrm-app .rcrm-zk__anteil { height: 10px; margin: 0 0 8px; }
.rcrm-app .rcrm-zk__legende { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0 0 16px; font-size: 12.5px; color: #3d4f60; }
.rcrm-app .rcrm-zk__legende span { display: inline-flex; align-items: center; gap: 6px; }
.rcrm-app .rcrm-zk__legende i { width: 9px; height: 9px; border-radius: 50%; }
/* Monatskalender */
.rcrm-app .rcrm-zkal { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; margin: 0 0 18px; }
.rcrm-app .rcrm-zkal__wt { font-size: 11px; font-weight: 600; color: #8a9aa8; text-align: center; }
.rcrm-app .rcrm-zkal__d { display: flex; flex-direction: column; justify-content: space-between; min-height: 58px; padding: 7px 9px; border-radius: 10px; background: #f5f8fb; font-size: 11.5px; color: #6a7a8b; text-decoration: none; }
.rcrm-app .rcrm-zkal__d b { font-size: 15px; font-weight: 700; color: #10273a; line-height: 1.2; }
.rcrm-app .rcrm-zkal__d.ist-we { background: #fafbfc; }
.rcrm-app .rcrm-zkal__d.ist-leer { background: transparent; }
.rcrm-app .rcrm-zkal__d.l1 { background: #e3f2fb; } .rcrm-app .rcrm-zkal__d.l2 { background: #bfe0f5; }
.rcrm-app .rcrm-zkal__d.l3 { background: #7cc0eb; color: #fff; } .rcrm-app .rcrm-zkal__d.l4 { background: #1e8fd5; color: #fff; }
.rcrm-app .rcrm-zkal__d.l3 b, .rcrm-app .rcrm-zkal__d.l4 b { color: #fff; }
.rcrm-app a.rcrm-zkal__d:hover { box-shadow: 0 0 0 2px #10273a inset; }
.rcrm-app .rcrm-zkal__d.ist-heute { box-shadow: 0 0 0 2px #10273a inset; }
.rcrm-app .rcrm-zkal__pt { display: flex; gap: 3px; min-height: 7px; }
.rcrm-app .rcrm-zkal__pt i { width: 7px; height: 7px; border-radius: 50%; box-shadow: 0 0 0 1.5px rgba(255,255,255,.8); }
/* Liste: Tageskopf mit Balken, Zeile mit Kundenfarbe und Kürzel */
.rcrm-app .rcrm-zt__tag { display: flex; align-items: center; gap: 14px; }
.rcrm-app .rcrm-zt__tag > span:first-child { flex: none; }
.rcrm-app .rcrm-zt__bar { flex: 1; display: flex; height: 6px; border-radius: 3px; overflow: hidden; background: #e4ebf1; max-width: 520px; }
.rcrm-app tr.rcrm-zt__zeile > td:first-child { box-shadow: inset 4px 0 0 var(--f); padding-left: 14px; }
.rcrm-app .rcrm-zt__k { display: inline-flex; align-items: center; gap: 10px; }
.rcrm-app .rcrm-zt__av { flex: none; width: 32px; height: 32px; border-radius: 50%; display: inline-grid; place-items: center; background: var(--f); color: #fff; font-size: 11px; font-weight: 700; }
/* Abrechenbar je Kunde */
.rcrm-app .rcrm-zjk { display: grid; grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)); gap: 12px; }
.rcrm-app .rcrm-zjk__k { display: flex; align-items: center; gap: 14px; padding: 13px 16px; border: 1px solid var(--rc-linie, #e3e9ef); border-left: 4px solid var(--f); border-radius: 12px; background: #fff; }
.rcrm-app .rcrm-zjk__m { flex: 1; min-width: 0; }
.rcrm-app .rcrm-zjk__kopf { display: flex; justify-content: space-between; gap: 10px; }
.rcrm-app .rcrm-zjk__kopf a { font-weight: 600; color: #10273a; text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rcrm-app .rcrm-zjk__kopf a:hover { color: #165f85; }
.rcrm-app .rcrm-zjk__kopf b { flex: none; font-size: 15px; color: #10273a; }
.rcrm-app .rcrm-zjk__bar { position: relative; display: block; height: 8px; margin: 7px 0 5px; border-radius: 4px; overflow: hidden; background: #eef2f5; }
.rcrm-app .rcrm-zjk__bar i { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 4px; background: var(--f); }
.rcrm-app .rcrm-zjk__bar i.ist-offen { background: repeating-linear-gradient(45deg, #d48612 0 4px, #f2b134 4px 8px); }
.rcrm-app .rcrm-zjk__k small { font-size: 12px; color: #6a7a8b; }
.rcrm-app .rcrm-zjk__k small b { color: #b8730c; }
.rcrm-app .rcrm-zjk__los { flex: none; padding: 6px 10px; border: 1px solid #cfe0ec; border-radius: 8px; font-size: 12.5px; font-weight: 600; color: #165f85 !important; text-decoration: none; }
.rcrm-app .rcrm-zjk__los:hover { background: #f4f9fd; }
@media (max-width: 1100px) { .rcrm-app .rcrm-zk { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
@media (max-width: 640px) {
	.rcrm-app .rcrm-zk { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
	.rcrm-app .rcrm-zk__k { padding: 11px 12px; }
	.rcrm-app .rcrm-zk__k b { font-size: 21px; }
	.rcrm-app .rcrm-zk__k.ist-haupt, .rcrm-app .rcrm-zk__k.ist-lila { grid-column: 1 / -1; }
	.rcrm-app .rcrm-zk__k.ist-blau { padding-right: 12px; }
	.rcrm-app .rcrm-zk__ring { display: none; }
	.rcrm-app .rcrm-zkal { gap: 3px; } .rcrm-app .rcrm-zkal__d { min-height: 44px; padding: 4px 5px; } .rcrm-app .rcrm-zkal__d b { font-size: 12px; }
	.rcrm-app .rcrm-zjk { grid-template-columns: minmax(0, 1fr); }
}

/* Zeiterfassung: Kopf mit Reitern als Umschalter, „Zeit erfassen“ als Fenster (ab 0.38.0). */
.rcrm-app .rcrm-titel__aktionen:has(.rcrm-zseg) { flex: 1; display: flex; align-items: center; gap: 10px; margin-left: 28px; }
.rcrm-app .rcrm-zseg { display: inline-flex; gap: 2px; padding: 3px; background: #fff; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 10px; }
.rcrm-app .rcrm-zseg a { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border-radius: 8px; font-size: 13.5px; font-weight: 500; color: #3d4f60; text-decoration: none; white-space: nowrap; }
.rcrm-app .rcrm-zseg a:hover { background: #f4f7fa; color: #10273a; }
.rcrm-app .rcrm-zseg a.ist-aktiv { background: var(--rc-navy, #10273a); color: #fff; }
.rcrm-app .rcrm-zseg em { font-style: normal; font-size: 11px; font-weight: 600; padding: 1px 6px; border-radius: 5px; background: #fcf1e2; color: #a8660a; }
.rcrm-app .rcrm-zseg a.ist-aktiv em { background: rgba(255,255,255,.18); color: #fff; }
.rcrm-app .rcrm-zkopf-rechts { margin-left: auto; display: inline-flex; gap: 8px; align-items: center; }
.rcrm-app .rcrm-zneu { background: #2f8a5b !important; border-color: #2f8a5b !important; color: #fff !important; cursor: pointer; font: inherit; font-weight: 600; }
.rcrm-app .rcrm-zneu:hover { background: #26784e !important; }
.rcrm-app .rcrm-zneu kbd { margin-left: 6px; padding: 0 5px; border: 1px solid rgba(255,255,255,.45); border-radius: 4px; font: 600 11px/16px inherit; background: transparent; color: #fff; }
.rcrm-zdlg { width: min(1100px, calc(100vw - 32px)); max-height: calc(100vh - 48px); padding: 22px 24px 14px; border: 0; border-radius: 18px; box-shadow: 0 30px 80px rgba(13,34,51,.35); overflow: hidden auto; }
/* Fenster breit genug ohne waagerechtes Scrollen (0.39.0): sechs gleiche Spalten, nichts darf breiter werden als seine Zelle. */
.rcrm-zdlg .rcrm-zform__grid > * { min-width: 0; }
@media (min-width: 1101px) { .rcrm-zdlg .rcrm-zform__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.rcrm-zdlg .rcrm-fuer__zeile { flex-wrap: wrap; }
.rcrm-zdlg .rcrm-fuer__wahl { display: flex; max-width: 100%; }
.rcrm-zdlg .rcrm-fuer__wahl label { flex: 1 1 auto; min-width: 0; }
.rcrm-zdlg .rcrm-fuer__wahl label span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rcrm-zdlg .rcrm-fuer__zeile input[name="person"] { flex: 1 1 100%; min-width: 0; }
.rcrm-zdlg .rcrm-artwahl { flex-wrap: wrap; }
.rcrm-zdlg::backdrop { background: rgba(13,34,51,.45); }
.rcrm-zdlg__zu { position: absolute; right: 14px; top: 12px; width: 34px; height: 34px; border: 0; border-radius: 8px; background: transparent; color: #8a9aa8; font-size: 24px; line-height: 1; cursor: pointer; }
.rcrm-zdlg__zu:hover { background: #eef3f7; color: #10273a; }
.rcrm-app .rcrm-zdlg .rcrm-zform { margin: 0; padding: 0; border: 0; box-shadow: none; }
.rcrm-app .rcrm-zdlg .rcrm-zform .rcrm-karte__kopf { padding-right: 44px; }
.rcrm-zdlg__uhr { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin: 0 40px 14px 0; padding: 10px 14px; border: 1px solid #cfe9db; border-radius: 12px; background: #f2f9f5; font-size: 13px; }
.rcrm-zdlg__uhr b { font-size: 20px; font-weight: 700; color: #1f7a4d; font-variant-numeric: tabular-nums; }
.rcrm-zdlg__uhr small { color: #6a7a8b; }
.rcrm-zdlg__uhr form { margin: 0 0 0 auto; }
.rcrm-zdlg__punkt { width: 9px; height: 9px; border-radius: 50%; background: #16955a; box-shadow: 0 0 0 4px rgba(22,149,90,.18); }
.rcrm-zdlg__tipp { margin: 10px 0 0; font-size: 11.5px; color: #8a9aa8; text-align: right; }
@media (max-width: 900px) {
	.rcrm-app .rcrm-titel__aktionen:has(.rcrm-zseg) { margin-left: 0; flex-wrap: wrap; }
	.rcrm-app .rcrm-zneu kbd { display: none; }
}

/* Zeit erfassen: Beschriftungen oben bündig (0.39.0). */
.rcrm-zdlg .rcrm-zform__grid > label { align-content: start; }

/* Zeiterfassung auf dem Handy (ab 0.39.0): Reiter über die volle Breite, „+ Zeit erfassen“ fest unten,
   Fenster als Blatt von unten, Einträge als kompakte Karten. */
@media (max-width: 640px) {
	.rcrm-app .rcrm-titel__aktionen:has(.rcrm-zseg) { width: 100%; gap: 8px; }
	.rcrm-app .rcrm-zseg { display: flex; width: 100%; }
	.rcrm-app .rcrm-zseg a { flex: 1 1 0; justify-content: center; padding: 9px 6px; }
	.rcrm-app .rcrm-zkopf-rechts { width: 100%; margin-left: 0; }
	.rcrm-app .rcrm-zkopf-rechts > a { flex: 1 1 0; justify-content: center; white-space: nowrap; text-align: center; }
	.rcrm-app .rcrm-zneu { position: fixed; z-index: 60; left: 16px; right: 16px; bottom: calc(52px + env(safe-area-inset-bottom)); display: flex; align-items: center; justify-content: center; min-height: 50px; border-radius: 12px; font-size: 16px; box-shadow: 0 10px 28px rgba(31, 122, 77, .35); }
	.rcrm-body:has(.rcrm-zneu) .k-main, .rcrm-body:has(.rcrm-zneu) main { padding-bottom: 130px; }

	/* Einträge als Karten */
	.rcrm-app table.widefat tr.rcrm-zt__zeile { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; padding: 12px 12px 10px 16px; box-shadow: inset 4px 0 0 var(--f); border-bottom: 1px solid #e3e9ef; }
	.rcrm-app table.widefat tr.rcrm-zt__zeile > td { display: block !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; width: auto !important; min-width: 0; background: none; }
	.rcrm-app table.widefat tr.rcrm-zt__zeile > td::before { display: none !important; }
	.rcrm-app tr.rcrm-zt__zeile > td:nth-child(1) { grid-column: 1; grid-row: 1; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-zliste__std { grid-column: 2; grid-row: 1 / span 2; text-align: right; line-height: 1.35; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-zliste__std strong { font-size: 18px; color: var(--rc-navy, #10273a); }
	.rcrm-app tr.rcrm-zt__zeile > td:nth-child(2) { grid-column: 1; grid-row: 2; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-zliste__text { grid-column: 1; grid-row: 3; font-size: 14px; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-zliste__text:empty { display: none !important; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-zliste__status { grid-column: 2; grid-row: 3; justify-self: end; align-self: start; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-aktionen { grid-column: 1 / -1; grid-row: 4; justify-self: end; align-self: center; text-align: right; white-space: nowrap; font-size: 13px; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-aktionen:empty { display: none !important; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-aktionen a, .rcrm-app tr.rcrm-zt__zeile > td.rcrm-aktionen button { margin-left: 10px; }
	.rcrm-app tr.rcrm-zt__zeile > td.rcrm-aktionen form { display: inline; }

	/* Fenster als Blatt von unten */
	.rcrm-zdlg { width: 100vw; max-width: 100vw; max-height: 94vh; max-height: 94dvh; margin: auto 0 0; padding: 18px 16px calc(12px + env(safe-area-inset-bottom)); border-radius: 18px 18px 0 0; }
	.rcrm-zdlg[open] { animation: rcrm-blatt .22s ease-out; }
	.rcrm-zdlg .rcrm-zform__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
	.rcrm-zdlg .rcrm-zform__grid > label:has(input[name="datum"]) { grid-column: 1 / -1; }
	.rcrm-zdlg input, .rcrm-zdlg select, .rcrm-zdlg textarea { font-size: 16px !important; min-width: 0; max-width: 100%; }
	.rcrm-zdlg input[type="date"] { width: 100%; }
	.rcrm-zdlg .rcrm-zform__fuss { position: sticky; bottom: calc(-12px - env(safe-area-inset-bottom)); margin: 12px -16px 0; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid #e3e9ef; }
	.rcrm-zdlg .rcrm-zform__fuss button[type="submit"] { flex: 1 1 100%; min-height: 48px; font-size: 16px; justify-content: center; text-align: center; }
	.rcrm-zdlg__tipp { display: none; }
	.rcrm-zdlg .rcrm-zform__mehr { font-size: 12.5px; }
}
@keyframes rcrm-blatt { from { transform: translateY(40px); opacity: .4; } to { transform: none; opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .rcrm-zdlg[open] { animation: none; } }

/* Kundenstandorte in der Kundenakte (ab 0.39.0). */
.rcrm-app .rcrm-ort h3 { margin-bottom: 8px; }
.rcrm-app .rcrm-ort__zeile { display: flex; align-items: center; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--rc-linie, #e3e9ef); }
.rcrm-app .rcrm-ort__zeile > div { flex: 1; min-width: 0; }
.rcrm-app .rcrm-ort__zeile strong { display: block; font-size: 13.5px; }
.rcrm-app .rcrm-ort__zeile small { display: block; font-size: 12px; color: #6a7a8b; }
.rcrm-app .rcrm-ort__zeile.ist-aus { opacity: .55; }
.rcrm-app .rcrm-ort__zeile form { margin: 0; }
.rcrm-app .rcrm-ort__navi { font-size: 12.5px; font-weight: 600; text-decoration: none; }
.rcrm-app .rcrm-ort__weg { width: 28px; height: 28px; border: 0; border-radius: 8px; background: transparent; color: #b32d2e; font-size: 18px; line-height: 1; cursor: pointer; }
.rcrm-app .rcrm-ort__weg:hover { background: #fbeaea; }
.rcrm-app .rcrm-ort__gps { margin: 12px 0 0; }
.rcrm-app .rcrm-ort__hier { width: 100%; justify-content: center; background: #16955a !important; border-color: #16955a !important; color: #fff !important; }
.rcrm-app .rcrm-ort__info { display: block; margin-top: 6px; font-size: 12.5px; color: #3d4f60; }
.rcrm-app .rcrm-ort__mehr { margin-top: 10px; font-size: 13px; }
.rcrm-app .rcrm-ort__mehr summary { cursor: pointer; color: #165f85; font-weight: 600; }
.rcrm-app .rcrm-ort__mehr form { display: grid; gap: 8px; margin: 10px 0 0; }
.rcrm-app .rcrm-ort__mehr label span { display: block; font-size: 12px; font-weight: 600; color: #6a7a8b; margin-bottom: 3px; }
.rcrm-app .rcrm-ort__mehr label small { display: block; font-size: 11.5px; color: #8a9aa8; margin-top: 3px; }
.rcrm-app .rcrm-ort__mehr input[type="text"] { width: 100%; }
.rcrm-app .rcrm-ort__einheit input { width: 90px; }
.rcrm-app .rcrm-ort__adr { padding-top: 10px; border-top: 1px dashed var(--rc-linie, #e3e9ef); }

/* Vor-Ort-Ansicht (ab 0.39.0) */
.rcrm-app .rcrm-vo { display: grid; gap: 16px; }
.rcrm-app .rcrm-vo__leiste { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.rcrm-app .rcrm-vo__leiste form { margin: 0; }
.rcrm-app .rcrm-vo__start { min-height: 46px; padding: 0 22px; background: #16955a !important; border-color: #16955a !important; color: #fff !important; font-size: 15px; font-weight: 600; }
.rcrm-app .rcrm-vo__start small { font-weight: 500; opacity: .85; margin-left: 4px; }
.rcrm-app .rcrm-vo__klein { border: 0; background: none; color: #165f85; font: inherit; font-size: 12.5px; text-decoration: underline; cursor: pointer; }
.rcrm-app .rcrm-vo__lauf { flex: 1 1 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; align-items: end; padding: 12px 14px; border: 1px solid #cfe9db; border-radius: 12px; background: #f2f9f5; }
.rcrm-app .rcrm-vo__uhr { grid-column: 1 / -1; display: flex; align-items: center; gap: 10px; font-size: 13.5px; }
.rcrm-app .rcrm-vo__uhr b { font-size: 20px; color: #1f7a4d; font-variant-numeric: tabular-nums; }
.rcrm-app .rcrm-vo__punkt { width: 9px; height: 9px; border-radius: 50%; background: #16955a; box-shadow: 0 0 0 4px rgba(22,149,90,.18); }
.rcrm-app .rcrm-vo__was span { display: block; font-size: 12px; font-weight: 600; color: #6a7a8b; margin-bottom: 3px; }
.rcrm-app .rcrm-vo__was textarea { width: 100%; font: inherit; }
.rcrm-app .rcrm-vo__stopp { min-height: 44px; background: #c2412d !important; border-color: #c2412d !important; color: #fff !important; font-weight: 600; }
.rcrm-app .rcrm-vo__hinweis { flex: 1 1 100%; margin: 0; padding: 9px 12px; border-radius: 8px; background: #fdf6e9; font-size: 13px; }
.rcrm-app .rcrm-vo__da { margin: -6px 0 0; font-size: 13px; color: #1f5f3f; }
.rcrm-app .rcrm-vo__neu { border: 1px dashed #b9dcc8; background: #f7fbf9; }
.rcrm-app .rcrm-vo__neu p { margin: 0 0 10px; font-size: 13.5px; }
.rcrm-app .rcrm-vo__neu [data-ort-hier] { background: #16955a !important; border-color: #16955a !important; color: #fff !important; }
.rcrm-app .rcrm-vo__raster { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 16px; align-items: start; }
.rcrm-app .rcrm-vo__karte { margin: 0; }
.rcrm-app .rcrm-vo__karte .rcrm-karte__kopf h2 { font-size: 16px; }
.rcrm-app .rcrm-vo__zeile { display: flex; align-items: flex-start; gap: 10px; padding: 9px 0; border-top: 1px solid var(--rc-linie, #e3e9ef); color: inherit; text-decoration: none; }
.rcrm-app .rcrm-vo__zeile:first-of-type { border-top: 0; }
.rcrm-app a.rcrm-vo__zeile:hover b { color: #165f85; }
.rcrm-app .rcrm-vo__zeile > span:last-child { min-width: 0; }
.rcrm-app .rcrm-vo__zeile b { display: block; font-size: 14px; font-weight: 600; color: var(--rc-navy, #10273a); }
.rcrm-app .rcrm-vo__zeile small { display: block; font-size: 12px; color: #6a7a8b; margin-top: 2px; }
.rcrm-app .rcrm-vo__zeile small.ist-ueber { color: #b32d2e; font-weight: 600; }
.rcrm-app .rcrm-vo__art { flex: none; width: 62px; margin-top: 2px; padding: 2px 0; border-radius: 5px; background: #efeafd; color: #5b3fc4; font-size: 11px; font-weight: 700; text-align: center; }
.rcrm-app .rcrm-vo__art--einsatz { background: #e3f4f4; color: #0b6f71; }
.rcrm-app .rcrm-vo__art--aufgabe { background: #e8f4ec; color: #2a7a50; }
.rcrm-app .rcrm-vo__datum { flex: none; width: 62px; margin-top: 2px; font-size: 12px; font-weight: 600; color: #6a7a8b; }
.rcrm-app .rcrm-vo__person { display: flex; align-items: center; gap: 10px; padding: 8px 0; border-top: 1px solid var(--rc-linie, #e3e9ef); }
.rcrm-app .rcrm-vo__person:first-of-type { border-top: 0; }
.rcrm-app .rcrm-vo__person > span:nth-child(2) { flex: 1; min-width: 0; }
.rcrm-app .rcrm-vo__person b { display: block; font-size: 14px; }
.rcrm-app .rcrm-vo__person small { display: block; font-size: 12px; color: #6a7a8b; }
.rcrm-app .rcrm-vo__av { flex: none; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: #165f85; color: #fff; font-size: 12px; font-weight: 700; }
.rcrm-app .rcrm-vo__rund { flex: none; width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: #eef4f9; text-decoration: none; font-size: 16px; }
.rcrm-app .rcrm-vo__rund:hover { background: #dfeaf3; }
.rcrm-app .rcrm-vo__notiz { margin-top: 10px; padding: 9px 12px; border-radius: 8px; background: #fdf6e9; font-size: 13px; }
.rcrm-app .rcrm-vo__notiz p { margin: 4px 0 0; }
.rcrm-app .rcrm-vo__knoepfe { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 0; }
.rcrm-app .rcrm-vo__finden h2 { margin-top: 0; }
.rcrm-app .rcrm-vo__status { margin: 0 0 10px; color: #3d4f60; }
.rcrm-app .rcrm-vo__liste { display: grid; gap: 8px; margin-bottom: 12px; }
.rcrm-app .rcrm-vo__wahl { display: block; padding: 12px 14px; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 10px; color: inherit; text-decoration: none; }
.rcrm-app .rcrm-vo__wahl.ist-treffer { border-color: #16955a; background: #f2f9f5; }
.rcrm-app .rcrm-vo__wahl strong { display: block; font-size: 15px; }
.rcrm-app .rcrm-vo__wahl small { color: #6a7a8b; }
.rcrm-app .rcrm-vo__wahlform { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; }
.rcrm-app .rcrm-vo__wahlform label { flex: 1 1 260px; }
.rcrm-app .rcrm-vo__wahlform label span { display: block; font-size: 12px; font-weight: 600; color: #6a7a8b; margin-bottom: 4px; }
.rcrm-app .rcrm-vo__wahlform select { width: 100%; }
.rcrm-app .rcrm-vo__ot { display: block; text-decoration: none; color: inherit; border-left: 4px solid #16955a; }
.rcrm-app .rcrm-vo__ot b { display: block; font-size: 15px; color: var(--rc-navy, #10273a); }
.rcrm-app .rcrm-vo__ot span { font-size: 13px; color: #6a7a8b; }
.rcrm-app .rcrm-ot { max-width: 820px; }
.rcrm-app .rcrm-ot__schritte { margin: 0 0 12px; padding-left: 20px; display: grid; gap: 8px; font-size: 14px; }
.rcrm-app .rcrm-ot__schutz { margin: 0; padding: 10px 12px; border-radius: 8px; background: #eef4f9; font-size: 13px; }
.rcrm-app .rcrm-ot__liste { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 8px; font-size: 14px; }
.rcrm-app .rcrm-ot__liste li { display: flex; gap: 10px; align-items: baseline; }
.rcrm-app .rcrm-ot__p { flex: none; width: 9px; height: 9px; border-radius: 50%; background: #d48612; }
.rcrm-app .rcrm-ot__p.ist-ok { background: #16955a; }
.rcrm-app .rcrm-ot__einr { margin: 14px 0; padding: 14px 16px; border: 1px solid #cfe9db; border-radius: 12px; background: #f7fbf9; }
.rcrm-app .rcrm-ot__einr h3 { margin: 0 0 8px; }
.rcrm-app .rcrm-ot__qr svg { display: block; width: 200px; height: 200px; background: #fff; border-radius: 8px; }
.rcrm-app .rcrm-ot__hand { margin-top: 10px; font-size: 13px; }
.rcrm-app .rcrm-ot__hand summary { cursor: pointer; color: #165f85; font-weight: 600; }
.rcrm-app .rcrm-ot__hand dl { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 4px 10px; margin: 8px 0 0; }
.rcrm-app .rcrm-ot__hand dt { color: #6a7a8b; }
.rcrm-app .rcrm-ot__hand dd { margin: 0; word-break: break-all; }
.rcrm-app .rcrm-ot__knoepfe { display: flex; flex-wrap: wrap; gap: 8px; }
.rcrm-app .rcrm-ot__knoepfe form { margin: 0; }
.rcrm-app .rcrm-ot__aus { color: #b32d2e !important; }
@media (max-width: 640px) {
	.rcrm-app .rcrm-vo__leiste > a, .rcrm-app .rcrm-vo__leiste > form:not(.rcrm-vo__lauf):not(.rcrm-vo__jetzt) { flex: 1 1 calc(50% - 10px); }
	.rcrm-app .rcrm-vo__leiste > form:first-child, .rcrm-app .rcrm-vo__start { flex-basis: 100% !important; width: 100%; justify-content: center; }
	.rcrm-app .rcrm-vo__leiste > a { justify-content: center; text-align: center; }
	.rcrm-app .rcrm-vo__lauf { grid-template-columns: minmax(0, 1fr); }
	.rcrm-app .rcrm-vo__raster { grid-template-columns: minmax(0, 1fr); }
}

/* Reiter „IT“: Unterreiter, Übersicht, Netzwerk aufklappbar, Zugangsdaten, Passwortfeld (ab 0.43.0, Abweichung vom Plugin). */
.rcrm-app .rcrm-itr__seg { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; margin: 0 0 14px; padding: 4px; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 10px; background: #fff; width: fit-content; max-width: 100%; scroll-margin-top: 110px; }
.rcrm-app .rcrm-itr__seg a { display: inline-flex; align-items: center; gap: 7px; padding: 7px 13px; border-radius: 7px; color: var(--rc-navy, #10273a); font-weight: 600; font-size: 13.5px; text-decoration: none; }
.rcrm-app .rcrm-itr__seg a:hover { background: #f1f5f9; }
.rcrm-app .rcrm-itr__seg a b { font-size: 11px; font-weight: 700; padding: 1px 6px; border-radius: 5px; background: #e8eef4; color: #6a7a8b; }
.rcrm-app .rcrm-itr__seg a.ist-aktiv { background: var(--rc-navy, #10273a); color: #fff; }
.rcrm-app .rcrm-itr__seg a.ist-aktiv b { background: rgba(255,255,255,.18); color: #fff; }
.rcrm-app .rcrm-itr__seg a.rcrm-itr__ab { margin-left: 8px; font-weight: 500; font-size: 12.5px; color: var(--rc-blau, #165f85); }
.rcrm-app .rcrm-itr__kacheln { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.rcrm-app .rcrm-itr__kachel { display: block; padding: 14px 16px; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 12px; color: inherit; text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.rcrm-app .rcrm-itr__kachel:hover { border-color: #b9cddd; box-shadow: 0 4px 14px rgba(16,39,58,.07); }
.rcrm-app .rcrm-itr__kachel span { display: block; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #6a7a8b; }
.rcrm-app .rcrm-itr__kachel b { display: block; margin: 4px 0 2px; font-size: 26px; line-height: 1.15; color: var(--rc-navy, #10273a); }
.rcrm-app .rcrm-itr__kachel small { display: block; font-size: 12px; color: #6a7a8b; }
.rcrm-app .rcrm-itr__kachel em { font-style: normal; color: #b56a00; font-weight: 600; }
.rcrm-app .rcrm-itr__kachel.ist-hero { border: 0; background: linear-gradient(120deg, #10273a, #165f85); }
.rcrm-app .rcrm-itr__kachel.ist-hero span, .rcrm-app .rcrm-itr__kachel.ist-hero small { color: #b9d3e4; }
.rcrm-app .rcrm-itr__kachel.ist-hero b { color: #fff; }
.rcrm-app .rcrm-itr__kachel.ist-hero em { color: #ffd38a; }
.rcrm-app .rcrm-itr__zw { margin: 18px 0 8px; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #6a7a8b; }
.rcrm-app .rcrm-itr__oft { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 6px; }
.rcrm-app .rcrm-itr__oftz { display: flex; align-items: center; gap: 8px; padding: 7px 8px 7px 12px; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 10px; }
.rcrm-app .rcrm-itr__oftz i { font-style: normal; }
.rcrm-app .rcrm-itr__oftz b { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
@media (max-width: 900px) { .rcrm-app .rcrm-itr__kacheln, .rcrm-app .rcrm-itr__oft { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Netzwerk & Geräte: auf-/zuklappen */
.rcrm-app .rcrm-nd__klapp { flex: none; width: 30px; height: 30px; margin: 4px -6px 0 -6px; border: 0; border-radius: 7px; background: transparent; color: var(--rc-blau, #165f85); font-size: 14px; cursor: pointer; }
.rcrm-app .rcrm-nd__klapp:hover { background: #eef4f9; }
.rcrm-app .rcrm-nd__klapp span { display: inline-block; transition: transform .15s; transform: rotate(90deg); }
.rcrm-app .rcrm-nd.ist-zu .rcrm-nd__klapp span { transform: none; }
.rcrm-app .rcrm-nd__titel[data-rcrm-nd-klapp-titel] { flex: 1; cursor: pointer; }
.rcrm-app .rcrm-nd__chips { display: none; flex-wrap: wrap; gap: 6px; margin: 8px 0 0; }
.rcrm-app .rcrm-nd.ist-zu .rcrm-nd__chips { display: flex; }
.rcrm-app .rcrm-nd__chip { padding: 2px 8px; border-radius: 5px; background: #eef4f9; color: var(--rc-navy, #10273a); font-size: 11.5px; font-weight: 600; }
.rcrm-app .rcrm-nd__chip.ist-warn { background: #fdf0dc; color: #9a5b00; }
.rcrm-app .rcrm-nd.ist-zu { padding-bottom: 14px; }
.rcrm-app .rcrm-nd.ist-zu > :not(header) { display: none !important; }

/* Zugangsdaten */
.rcrm-app .rcrm-tre__suche { margin: 0 0 10px; }
.rcrm-app .rcrm-tre__suche input { width: 280px; max-width: 100%; }
.rcrm-app .rcrm-tre__zeile { display: grid; grid-template-columns: 42px minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1.1fr) 180px 34px; align-items: center; gap: 6px 12px; padding: 11px 4px; border-top: 1px solid var(--rc-linie, #e3e9ef); }
.rcrm-app .rcrm-tre__zeile:first-child { border-top: 0; }
.rcrm-app .rcrm-tre__zeile[hidden] { display: none; }
.rcrm-app .rcrm-tre__sym { width: 38px; height: 38px; border-radius: 10px; display: grid; place-items: center; background: #eef4f9; font-style: normal; font-size: 17px; }
.rcrm-app .rcrm-tre__titel { min-width: 0; }
.rcrm-app .rcrm-tre__titel b { display: block; font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rcrm-app .rcrm-tre__titel a { font-size: 12px; text-decoration: none; }
.rcrm-app .rcrm-tre__feld { display: flex; align-items: center; gap: 4px; min-width: 0; padding: 5px 6px 5px 10px; border-radius: 8px; background: #f4f7fa; }
.rcrm-app .rcrm-tre__feld code { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 0; background: none; font: 600 12.5px/1.4 ui-monospace, "Cascadia Mono", Consolas, monospace; color: var(--rc-navy, #10273a); }
.rcrm-app .rcrm-tre__feld code.rcrm-tre__leer { font-weight: 400; color: #8a9aa8; font-family: inherit; }
.rcrm-app .rcrm-tre__zeile.ist-offen .rcrm-tre__pw code { color: #0b6f71; user-select: all; }
.rcrm-app .rcrm-tre__uhr { font-size: 10.5px; font-weight: 700; color: #d48612; font-variant-numeric: tabular-nums; }
.rcrm-app .rcrm-tre__ib { flex: none; width: 28px; height: 28px; border: 0; border-radius: 6px; background: transparent; color: var(--rc-blau, #165f85); font-size: 14px; line-height: 1; cursor: pointer; }
.rcrm-app .rcrm-tre__ib:hover { background: #dfeaf3; }
.rcrm-app .rcrm-tre__ib.ist-ok { color: #1f7a4d; font-weight: 700; }
.rcrm-app .rcrm-tre__zul { font-size: 11.5px; line-height: 1.35; color: #6a7a8b; }
.rcrm-app .rcrm-tre__mehr details { position: relative; }
.rcrm-app .rcrm-tre__mehr summary { list-style: none; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 7px; color: #6a7a8b; font-size: 18px; cursor: pointer; }
.rcrm-app .rcrm-tre__mehr summary::-webkit-details-marker { display: none; }
.rcrm-app .rcrm-tre__mehr summary:hover { background: #eef4f9; }
.rcrm-app .rcrm-tre__mehr details > div { position: absolute; right: 0; top: 34px; z-index: 5; display: grid; gap: 2px; min-width: 140px; padding: 6px; border: 1px solid var(--rc-linie, #e3e9ef); border-radius: 10px; background: #fff; box-shadow: 0 10px 28px rgba(16,39,58,.14); }
.rcrm-app .rcrm-tre__mehr details > div a, .rcrm-app .rcrm-tre__mehr details > div button { display: block; width: 100%; padding: 6px 10px; border-radius: 6px; text-align: left; text-decoration: none; font-size: 13px; }
.rcrm-app .rcrm-tre__mehr details > div form { margin: 0; }
.rcrm-app .rcrm-tre__mehr details > div a:hover, .rcrm-app .rcrm-tre__mehr details > div button:hover { background: #f1f5f9; }
.rcrm-app .rcrm-tre__notiz { grid-column: 2 / -1; padding: 8px 10px; border-radius: 8px; background: #fdf6e9; font-size: 13px; white-space: pre-wrap; }
.rcrm-app .rcrm-tre__notiz[hidden] { display: none; }
.rcrm-app .rcrm-tre__hinweis { margin-top: 12px; }
@media (max-width: 900px) {
	.rcrm-app .rcrm-tre__zeile { grid-template-columns: 38px minmax(0, 1fr) 34px; }
	.rcrm-app .rcrm-tre__sym { grid-row: 1; }
	.rcrm-app .rcrm-tre__titel { grid-column: 2; grid-row: 1; }
	.rcrm-app .rcrm-tre__mehr { grid-column: 3; grid-row: 1; }
	.rcrm-app .rcrm-tre__feld, .rcrm-app .rcrm-tre__zul { grid-column: 1 / -1; }
}

/* Passwortfeld mit Generator */
.rcrm-app .rcrm-pwf > span:first-child { display: block; }
.rcrm-app .rcrm-it__raster .rcrm-pwf { grid-column: 1 / -1; }
.rcrm-app .rcrm-pwf__feld, .rcrm-app .rcrm-pwf__staerke, .rcrm-app .rcrm-pwf__gen { max-width: 860px; }
.rcrm-app .rcrm-pwf__feld { display: flex; align-items: stretch; border: 1px solid #c7d3de; border-radius: 8px; background: #fff; overflow: hidden; }
.rcrm-app .rcrm-pwf__feld:focus-within { border-color: var(--rc-blau, #165f85); box-shadow: 0 0 0 3px rgba(22,95,133,.12); }
.rcrm-app .rcrm-pwf__feld input { flex: 1; min-width: 0; border: 0 !important; box-shadow: none !important; border-radius: 0; padding: 9px 12px; font: 600 15px/1.3 ui-monospace, "Cascadia Mono", Consolas, monospace; letter-spacing: .03em; }
.rcrm-app .rcrm-pwf__feld button { flex: none; display: inline-flex; align-items: center; gap: 5px; padding: 0 12px; border: 0; border-left: 1px solid #e3e9ef; background: #fff; color: var(--rc-blau, #165f85); font: 600 13px/1 inherit; cursor: pointer; white-space: nowrap; }
.rcrm-app .rcrm-pwf__feld button:hover { background: #f4f7fa; }
.rcrm-app .rcrm-pwf__feld button.ist-ok { color: #1f7a4d; }
.rcrm-app .rcrm-pwf__staerke { display: flex; align-items: center; gap: 10px; margin-top: 7px; }
.rcrm-app .rcrm-pwf__staerke[hidden] { display: none; }
.rcrm-app .rcrm-pwf__staerke > span { flex: 1; height: 6px; border-radius: 3px; background: #e8eef4; overflow: hidden; }
.rcrm-app .rcrm-pwf__staerke i { display: block; height: 100%; width: 0; transition: width .2s; }
.rcrm-app .rcrm-pwf__staerke b { font-size: 12px; white-space: nowrap; }
.rcrm-app .rcrm-pwf__gen { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-top: 8px; padding: 8px 12px; border-radius: 8px; background: #f4f7fa; font-size: 12.5px; color: #6a7a8b; }
.rcrm-app .rcrm-pwf__gen label { display: inline-flex; align-items: center; gap: 8px; margin: 0 6px 0 0; font-weight: 400; color: inherit; }
.rcrm-app .rcrm-pwf__gen input[type="range"] { width: 130px; padding: 0; border: 0; box-shadow: none; accent-color: var(--rc-blau, #165f85); }
.rcrm-app .rcrm-pwf__gen label b { min-width: 18px; color: var(--rc-navy, #10273a); }
.rcrm-app .rcrm-pwf__chip { padding: 3px 9px; border: 1px solid #c9d6e2; border-radius: 6px; background: #fff; color: var(--rc-navy, #10273a); font-size: 12px; white-space: nowrap; cursor: pointer; }
.rcrm-app .rcrm-pwf__chip.ist-an { background: var(--rc-navy, #10273a); border-color: var(--rc-navy, #10273a); color: #fff; }

/* Adressfelder (type=url, type=tel) wie die übrigen Eingabefelder – fehlten in crm.css (0.43.0). */
.rcrm-app input[type=url], .rcrm-app input[type=tel] { font-family: var(--rc-text-font); font-size: 14px; min-height: 40px; padding: 6px 12px; border: 1px solid #c3d1dc; border-radius: 9px; background-color: #fff; color: var(--rc-text); box-shadow: none; }
.rcrm-app input[type=url]:focus, .rcrm-app input[type=tel]:focus { border-color: var(--rc-blau); box-shadow: 0 0 0 3px rgba(22, 95, 133, .12); outline: 0; }

/* =====================================================================
 * Wissen (ab 0.44.0): Liste, Editor, Datenschutz-Prüfung
 * ===================================================================== */
.rcrm-app .rcrm-wi__zahlen { display: grid; grid-template-columns: repeat( 5, minmax( 0, 1fr ) ); gap: 12px; margin: 0 0 16px; }
.rcrm-app .rcrm-wi__zahl { display: block; background: #fff; border: 1px solid #e3e9ef; border-top: 3px solid #165f85; border-radius: 12px; padding: 14px 16px; color: inherit; text-decoration: none; }
.rcrm-app .rcrm-wi__zahl:hover { box-shadow: 0 4px 14px rgba( 16, 39, 58, .08 ); }
.rcrm-app .rcrm-wi__zahl b { display: block; font-size: 24px; line-height: 1.15; }
.rcrm-app .rcrm-wi__zahl span { font-size: 12.5px; color: #6a7a8b; }
.rcrm-app .rcrm-wi__zahl--gelb { border-top-color: #d48612; } .rcrm-app .rcrm-wi__zahl--gelb b { color: #b26a00; }
.rcrm-app .rcrm-wi__zahl--rot { border-top-color: #c0392b; } .rcrm-app .rcrm-wi__zahl--rot b { color: #c0392b; }
.rcrm-app .rcrm-wi__zahl--gruen { border-top-color: #1d9a54; }
.rcrm-app .rcrm-wi__zahl--grau { border-top-color: #c9d3dc; }
.rcrm-app .rcrm-wi__filter { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0 0 12px; }
.rcrm-app .rcrm-wi__filter input[type=search] { width: 280px; max-width: 100%; }
.rcrm-app .rcrm-wi__filter select { width: auto; }
.rcrm-app .rcrm-wi__seg { display: inline-flex; flex-wrap: wrap; gap: 4px; padding: 4px; border: 1px solid #e3e9ef; border-radius: 10px; background: #fff; }
.rcrm-app .rcrm-wi__seg a { padding: 6px 11px; border-radius: 7px; color: #1b2a38; text-decoration: none; font-weight: 600; font-size: 13px; }
.rcrm-app .rcrm-wi__seg a i { font-style: normal; font-size: 11px; background: #e8eef4; color: #6a7a8b; border-radius: 5px; padding: 1px 6px; margin-left: 5px; }
.rcrm-app .rcrm-wi__seg a.ist-an { background: #10273a; color: #fff; } .rcrm-app .rcrm-wi__seg a.ist-an i { background: rgba( 255, 255, 255, .18 ); color: #fff; }
.rcrm-app .rcrm-wi__tab td { vertical-align: middle; }
.rcrm-app .rcrm-wi__titel { font-weight: 600; color: #1b2a38; text-decoration: none; font-size: 14.5px; }
.rcrm-app .rcrm-wi__titel:hover { color: #165f85; text-decoration: underline; }
.rcrm-app .rcrm-wi__unter { font-size: 12px; color: #6a7a8b; margin-top: 2px; }
.rcrm-app .rcrm-wi__mk { display: inline-flex; align-items: center; gap: 4px; font-size: 11.5px; font-weight: 600; border-radius: 5px; padding: 2px 7px; white-space: nowrap; margin: 1px 0; }
.rcrm-app .rcrm-wi__mk--grau { background: #eceff3; color: #45525f; }
.rcrm-app .rcrm-wi__mk--blau { background: #e3f0f8; color: #165f85; }
.rcrm-app .rcrm-wi__mk--lila { background: #efe9fa; color: #6b4bb8; }
.rcrm-app .rcrm-wi__mk--gruen { background: #e4f4ea; color: #1f7a4d; }
.rcrm-app .rcrm-wi__mk--gelb { background: #fff3df; color: #b26a00; }
.rcrm-app .rcrm-wi__mk--rot { background: #fdeaea; color: #b32d2e; }
.rcrm-app .rcrm-wi__mk--plus { background: #f4f7fa; color: #6a7a8b; border: 1px dashed #c9d6e2; }
.rcrm-app .rcrm-wi__quote { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; white-space: nowrap; }
.rcrm-app .rcrm-wi__quote i { display: inline-block; width: 56px; height: 6px; border-radius: 3px; background: #e8eef4; overflow: hidden; }
.rcrm-app .rcrm-wi__quote i b { display: block; height: 100%; background: #1d9a54; }
.rcrm-app .rcrm-wi__leer { text-align: center; padding: 36px 16px; color: #6a7a8b; }
.rcrm-app .rcrm-wi__leer b { color: #1b2a38; font-size: 16px; }

/* Editor */
.rcrm-app .rcrm-wi__ed { display: grid; grid-template-columns: minmax( 0, 1fr ) 340px; gap: 16px; align-items: start; }
.rcrm-app .rcrm-wi__haupt { margin: 0; }
.rcrm-app .rcrm-wi__zeile { display: grid; grid-template-columns: minmax( 0, 1fr ) 240px; gap: 12px; }
.rcrm-app .rcrm-wi__feld { display: block; margin: 0 0 12px; }
.rcrm-app .rcrm-wi__feld > span { display: block; font-size: 12px; font-weight: 600; color: #6a7a8b; margin-bottom: 5px; }
.rcrm-app .rcrm-wi__feld input, .rcrm-app .rcrm-wi__feld select { width: 100%; max-width: none; }
.rcrm-app .rcrm-wi__feld--gross input { font-size: 16px; font-weight: 600; }
.rcrm-app .rcrm-wi__werkzeug { display: flex; flex-wrap: wrap; gap: 4px; border: 1px solid #cfd9e3; border-bottom: 0; border-radius: 8px 8px 0 0; padding: 6px; background: #f4f7fa; }
.rcrm-app .rcrm-wi__werkzeug button { border: 1px solid #e3e9ef; background: #fff; border-radius: 6px; padding: 5px 9px; font: 600 12.5px/1.2 inherit; color: #45525f; cursor: pointer; }
.rcrm-app .rcrm-wi__werkzeug button:hover { border-color: #165f85; color: #165f85; }
.rcrm-app .rcrm-wi__text { border: 1px solid #cfd9e3; border-radius: 0 0 8px 8px; padding: 16px 18px; min-height: 360px; background: #fff; outline: none; }
.rcrm-app .rcrm-wi__text:focus { border-color: #165f85; box-shadow: 0 0 0 3px rgba( 22, 95, 133, .12 ); }
.rcrm-app .rcrm-wi__text:empty::before { content: attr( data-platzhalter ); color: #9aa9b7; }
.rcrm-app .rcrm-wi__text .wi-lade { color: #6a7a8b; font-style: italic; }
.rcrm-app .rcrm-wi__ergs { margin-top: 14px; border-top: 1px solid #e3e9ef; padding-top: 12px; }
.rcrm-app .rcrm-wi__ergs summary { cursor: pointer; }
.rcrm-app .rcrm-wi__erg { display: grid; grid-template-columns: 220px minmax( 0, 1fr ) auto; gap: 8px; align-items: start; margin: 10px 0; }
.rcrm-app .rcrm-wi__erg textarea { width: 100%; }
.rcrm-app .rcrm-wi__seite { display: flex; flex-direction: column; gap: 12px; }
.rcrm-app .rcrm-wi__box { margin: 0; padding: 14px 16px; }
.rcrm-app .rcrm-wi__box h3 { margin: 0 0 10px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: #6a7a8b; }
.rcrm-app .rcrm-wi__wahl { display: flex; gap: 10px; align-items: flex-start; padding: 8px 10px; border: 1px solid #e3e9ef; border-radius: 8px; margin: 0 0 6px; cursor: pointer; }
.rcrm-app .rcrm-wi__wahl input { margin: 3px 0 0; }
.rcrm-app .rcrm-wi__wahl b { display: block; font-size: 13px; }
.rcrm-app .rcrm-wi__wahl small { display: block; font-size: 12px; color: #6a7a8b; line-height: 1.35; }
.rcrm-app .rcrm-wi__wahl.ist-an { border-color: #165f85; background: #f2f8fc; }
.rcrm-app .rcrm-wi__wahl--firmen.ist-an { border-color: #6b4bb8; background: #faf8fe; }
.rcrm-app .rcrm-wi__wahl--oeffentlich.ist-an { border-color: #1f7a4d; background: #f2faf5; }
.rcrm-app .rcrm-wi__firmen { margin: -2px 0 8px 26px; }
.rcrm-app .rcrm-wi__firmen select { width: 100%; max-width: none; margin-top: 6px; }
.rcrm-app .rcrm-wi__rollen { margin-top: 8px; font-size: 12.5px; }
.rcrm-app .rcrm-wi__chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.rcrm-app .rcrm-wi__chip { display: inline-flex; align-items: center; gap: 5px; border: 1px solid #c9d6e2; border-radius: 6px; padding: 3px 8px; font-size: 12px; background: #fff; }
.rcrm-app .rcrm-wi__chip--firma { background: #efe9fa; border-color: #d8ccf2; color: #6b4bb8; font-weight: 600; }
.rcrm-app .rcrm-wi__chip--firma button { border: 0; background: none; color: inherit; cursor: pointer; padding: 0 0 0 2px; }
.rcrm-app .rcrm-wi__chip--wahl { cursor: pointer; }
.rcrm-app .rcrm-wi__chip--wahl input { position: absolute; opacity: 0; pointer-events: none; }
.rcrm-app .rcrm-wi__chip--wahl:has( input:checked ) { background: #10273a; border-color: #10273a; color: #fff; }
.rcrm-app .rcrm-wi__chip--wahl:has( input:focus-visible ) { outline: 2px solid #165f85; outline-offset: 1px; }
.rcrm-app .rcrm-wi__pruefung:has( ul ) { border-color: #f0c97a; background: #fffaf0; }
.rcrm-app .rcrm-wi__pruefung ul { margin: 0; padding: 0; list-style: none; }
.rcrm-app .rcrm-wi__pruefung li { font-size: 12.5px; padding: 6px 0; border-bottom: 1px dashed #f0dcb0; }
.rcrm-app .rcrm-wi__pruefung li label { display: block; color: #6a7a8b; margin-top: 2px; }
.rcrm-app .rcrm-wi__pruefung li.ist-ok b, .rcrm-app .rcrm-wi__pruefung li.ist-ok .rcrm-wi__fund { opacity: .55; text-decoration: line-through; }
.rcrm-app .rcrm-wi__fund { border: 0; background: none; padding: 0; color: #165f85; text-decoration: underline; cursor: pointer; font: inherit; text-align: left; }
.rcrm-app .rcrm-wi__ok { color: #1f7a4d; font-weight: 600; }
.rcrm-app .rcrm-wi__knoepfe { display: flex; flex-wrap: wrap; gap: 8px; }
.rcrm-app .rcrm-wi__abbruch { flex-basis: 100%; margin-top: 4px; font-size: 13px; color: #6a7a8b !important; text-decoration: none; }
.rcrm-app .rcrm-wi__abbruch:hover { color: #165f85 !important; text-decoration: underline; }
.rcrm-app .rcrm-wi__unten { display: flex; gap: 18px; margin: 14px 0 0; }
.rcrm-app .rcrm-wi__als { position: relative; }
.rcrm-app .rcrm-wi__als summary { list-style: none; cursor: pointer; }
.rcrm-app .rcrm-wi__als summary::-webkit-details-marker { display: none; }
.rcrm-app .rcrm-wi__als > div { position: absolute; right: 0; top: calc( 100% + 6px ); z-index: 20; width: 300px; background: #fff; border: 1px solid #e3e9ef; border-radius: 10px; box-shadow: 0 12px 30px rgba( 16, 39, 58, .14 ); padding: 10px; display: flex; flex-direction: column; gap: 8px; }
.rcrm-app .rcrm-wi__als form { display: flex; flex-direction: column; gap: 6px; border-top: 1px solid #e3e9ef; padding-top: 8px; }
.rcrm-app .rcrm-wi__als select { width: 100%; max-width: none; }
.rcrm-app .rcrm-wi__kats input { width: 100%; }
.rcrm-app .rcrm-wi__kats .rcrm-wi__sym { width: 64px; text-align: center; font-size: 18px; }

/* Inhalt (Editor und Ansicht im CRM) */
.rcrm-app .wi-inhalt { font-size: 14.5px; line-height: 1.6; }
.rcrm-app .wi-inhalt h2 { font-size: 19px; margin: 18px 0 8px; }
.rcrm-app .wi-inhalt h3 { font-size: 16px; margin: 16px 0 6px; }
.rcrm-app .wi-inhalt h4 { font-size: 14.5px; margin: 14px 0 4px; }
.rcrm-app .wi-inhalt > :first-child { margin-top: 0; }
.rcrm-app .wi-inhalt img { max-width: 100%; height: auto; border: 1px solid #e3e9ef; border-radius: 8px; display: block; margin: 6px 0; }
.rcrm-app .wi-inhalt ol.wi-schritte { counter-reset: wi; list-style: none; padding-left: 0; }
.rcrm-app .wi-inhalt ol.wi-schritte > li { counter-increment: wi; position: relative; padding-left: 40px; margin: 0 0 12px; min-height: 28px; }
.rcrm-app .wi-inhalt ol.wi-schritte > li::before { content: counter( wi ); position: absolute; left: 0; top: 0; width: 28px; height: 28px; border-radius: 50%; background: #10273a; color: #fff; font-weight: 700; font-size: 13px; display: flex; align-items: center; justify-content: center; }
.rcrm-app .wi-inhalt .wi-tipp, .rcrm-app .wi-inhalt .wi-warn { border-left: 4px solid #d48612; background: #fff8ec; border-radius: 0 10px 10px 0; padding: 10px 14px; margin: 10px 0; }
.rcrm-app .wi-inhalt .wi-warn { border-left-color: #c0392b; background: #fdf1f0; }
.rcrm-app .wi-inhalt .wi-tipp > :first-child, .rcrm-app .wi-inhalt .wi-warn > :first-child { margin-top: 0; }
.rcrm-app .wi-inhalt .wi-tipp > :last-child, .rcrm-app .wi-inhalt .wi-warn > :last-child { margin-bottom: 0; }
.rcrm-app .wi-inhalt .wi-erg { border: 2px dashed #d8ccf2; background: #faf8fe; border-radius: 10px; padding: 10px 14px; margin: 10px 0; min-height: 20px; }
.rcrm-app .wi-inhalt .wi-erg::before { content: "◆ Hier steht die Ergänzung der jeweiligen Firma"; color: #6b4bb8; font-size: 12.5px; font-weight: 600; }
.rcrm-app .wi-inhalt pre { background: #f4f7fa; border-radius: 8px; padding: 10px 12px; overflow-x: auto; }

@media ( max-width: 1100px ) {
	.rcrm-app .rcrm-wi__zahlen { grid-template-columns: repeat( 3, minmax( 0, 1fr ) ); }
	.rcrm-app .rcrm-wi__ed { grid-template-columns: minmax( 0, 1fr ); }
}
@media ( max-width: 700px ) {
	.rcrm-app .rcrm-wi__zahlen { grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); }
	.rcrm-app .rcrm-wi__zeile, .rcrm-app .rcrm-wi__erg { grid-template-columns: minmax( 0, 1fr ); }
	.rcrm-app .rcrm-wi__tab thead { display: none; }
	.rcrm-app .rcrm-wi__tab tr { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 10px; padding: 10px 0; border-bottom: 1px solid #e3e9ef; }
	.rcrm-app .rcrm-wi__tab td { display: block; border: 0; padding: 2px 8px; }
	.rcrm-app .rcrm-wi__tab td:first-child { grid-column: 1 / -1; }
}
.rcrm-app .rcrm-wi__ki { border: 1px solid #d8ccf2; background: #fbf9ff; border-radius: 10px; padding: 10px 14px; margin: 0 0 14px; }
.rcrm-app .rcrm-wi__ki summary, .rcrm-app .rcrm-wi__ideenbox summary { cursor: pointer; }
.rcrm-app .rcrm-wi__ki[open] summary { margin-bottom: 10px; }
.rcrm-app .rcrm-wi__ki textarea { width: 100%; }
.rcrm-app .rcrm-wi__ki-zeile { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; margin: 4px 0 8px; }
.rcrm-app .rcrm-wi__ki-zeile label span { display: block; font-size: 12px; font-weight: 600; color: #6a7a8b; margin-bottom: 4px; }
.rcrm-app .rcrm-wi__ki-zeile input { flex: 1; min-width: 240px; }
.rcrm-app .rcrm-wi__ki-status { font-size: 13px; color: #6b4bb8; }
.rcrm-app .rcrm-wi__ideenbox { margin: 0 0 16px; }
.rcrm-app .rcrm-wi__ideenbox[open] summary { margin-bottom: 10px; }
.rcrm-app .rcrm-wi__ideen { list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); gap: 8px 16px; }
.rcrm-app .rcrm-wi__ideen li { display: flex; gap: 10px; align-items: center; justify-content: space-between; border: 1px solid #e3e9ef; border-radius: 10px; padding: 10px 12px; }
.rcrm-app .rcrm-wi__ideen b { display: block; font-size: 14px; }
.rcrm-app .rcrm-wi__ideen small { display: block; color: #6a7a8b; font-size: 12px; line-height: 1.4; }
.rcrm-app .rcrm-wi__ideen .rcrm-knopf { flex: none; }
@media ( max-width: 900px ) { .rcrm-app .rcrm-wi__ideen { grid-template-columns: minmax( 0, 1fr ); } }

/* =====================================================================
 * Kundenakte (ab 0.45.0): Kopf mit Kennzahlen, Stammdaten als Themen-Karten, automatisch speichern
 * ===================================================================== */
.rcrm-app .rcrm-ka { background: linear-gradient( 110deg, #0d2233 0%, #133f5c 55%, #1a6690 100% ); color: #fff; border-radius: 16px; padding: 12px 24px 20px; margin: 0 0 16px; }
.rcrm-app .rcrm-ka__zurueck { display: inline-block; color: #9fbcd0 !important; font-size: 12.5px; text-decoration: none; }
.rcrm-app .rcrm-ka__zurueck:hover { color: #fff !important; }
.rcrm-app .rcrm-ka__haupt { display: flex; align-items: center; gap: 18px; margin-top: 8px; }
.rcrm-app .rcrm-ka__av { flex: none; width: 60px; height: 60px; border-radius: 50%; display: grid; place-items: center; background: var( --f ); color: #fff; font-size: 20px; font-weight: 700; box-shadow: 0 0 0 3px rgba( 255, 255, 255, .22 ); }
.rcrm-app .rcrm-ka__text { min-width: 0; flex: 1 1 220px; }
.rcrm-app .rcrm-ka h1 { margin: 0; padding: 0; color: #fff; font-size: 25px; line-height: 1.2; font-weight: 700; }
.rcrm-app .rcrm-ka p { margin: 3px 0 0; color: #b7cddd; font-size: 13.5px; }
.rcrm-app .rcrm-ka__marken { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px !important; }
.rcrm-app .rcrm-ka__mk { display: inline-flex; font-size: 12px; font-weight: 600; border-radius: 5px; padding: 3px 9px; background: rgba( 255, 255, 255, .14 ); color: #fff; white-space: nowrap; }
.rcrm-app .rcrm-ka__mk.ist-gek { background: rgba( 232, 116, 98, .32 ); }
.rcrm-app .rcrm-ka__zahlen { flex: none; display: flex; gap: 10px; }
.rcrm-app .rcrm-ka__zahlen a { display: block; min-width: 118px; background: rgba( 255, 255, 255, .09 ); border: 1px solid rgba( 255, 255, 255, .1 ); border-radius: 10px; padding: 9px 16px 10px; color: #fff !important; text-decoration: none; transition: background .15s; }
.rcrm-app .rcrm-ka__zahlen a:hover { background: rgba( 255, 255, 255, .16 ); }
.rcrm-app .rcrm-ka__zahlen b { display: block; font-size: 20px; line-height: 1.3; font-weight: 700; white-space: nowrap; }
.rcrm-app .rcrm-ka__zahlen span { display: block; font-size: 12px; color: #b7cddd; white-space: nowrap; }
.rcrm-app .rcrm-ka__zahlen a.ist-warn b { color: #ffd38a; }
.rcrm-app .rcrm-ka__zahlen a.ist-rot b { color: #ffb3a7; }
@media ( max-width: 1180px ) {
	.rcrm-app .rcrm-ka__haupt { flex-wrap: wrap; }
	.rcrm-app .rcrm-ka__zahlen { flex: 1 1 100%; display: grid; grid-template-columns: repeat( auto-fit, minmax( 140px, 1fr ) ); }
}

.rcrm-app .rcrm-sd [hidden] { display: none !important; }
.rcrm-app .rcrm-sd__raster { display: grid; grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); gap: 14px; align-items: start; }
.rcrm-app .rcrm-sd__sp { display: grid; gap: 14px; min-width: 0; }
.rcrm-app .rcrm-sd__karte { background: #fff; border: 1px solid #e3e9ef; border-radius: 14px; padding: 14px 16px 16px; }
.rcrm-app .rcrm-sd__voll { grid-column: 1 / -1; }
.rcrm-app .rcrm-sd__karte h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font-size: 12.5px; letter-spacing: .08em; text-transform: uppercase; color: #6a7a8b; }
.rcrm-app .rcrm-sd__ic { flex: none; width: 28px; height: 28px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; }
.rcrm-app .rcrm-sd__svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.rcrm-app .rcrm-sd__ic--blau { background: #e3f0f8; color: #165f85; }
.rcrm-app .rcrm-sd__ic--gruen { background: #e4f4ea; color: #1f7a4d; }
.rcrm-app .rcrm-sd__ic--lila { background: #efe9fa; color: #6a4bb5; }
.rcrm-app .rcrm-sd__ic--gelb { background: #fff3df; color: #b26a00; }
.rcrm-app .rcrm-sd__ic--rot { background: #fdeaea; color: #b32d2e; }
.rcrm-app .rcrm-sd__ic--grau { background: #eef2f6; color: #4a5a6b; }
.rcrm-app .rcrm-sd__nur { font-size: 12px; letter-spacing: 0; text-transform: none; font-weight: 400; }
.rcrm-app .rcrm-sd__st { margin-left: auto; font-size: 11.5px; letter-spacing: 0; text-transform: none; font-weight: 600; white-space: nowrap; }
.rcrm-app .rcrm-sd__st.ist-ok { color: #1f7a4d; }
.rcrm-app .rcrm-sd__st.ist-laeuft { color: #6a7a8b; }
.rcrm-app .rcrm-sd__st.ist-warn { color: #b26a00; white-space: normal; text-align: right; }
.rcrm-app .rcrm-sd__st.ist-fehler { color: #b32d2e; white-space: normal; text-align: right; }
.rcrm-app .rcrm-sd__felder { display: grid; grid-template-columns: repeat( 12, minmax( 0, 1fr ) ); gap: 12px 10px; }
.rcrm-app .rcrm-sd__f { display: block; min-width: 0; margin: 0; }
.rcrm-app .rcrm-sd__f > span { display: flex; align-items: center; gap: 5px; white-space: nowrap; min-height: 18px; font-size: 12px; font-weight: 600; color: #6a7a8b; margin-bottom: 4px; }
.rcrm-app .rcrm-sd__f input, .rcrm-app .rcrm-sd__f select { width: 100%; max-width: none; min-width: 0; }
.rcrm-app .rcrm-sd__karte textarea { width: 100%; max-width: none; }
.rcrm-app .rcrm-sd__c2 { grid-column: span 4; } .rcrm-app .rcrm-sd__c3 { grid-column: span 6; } .rcrm-app .rcrm-sd__c4 { grid-column: span 8; } .rcrm-app .rcrm-sd__c6 { grid-column: span 12; }
.rcrm-app .rcrm-sd__plz { grid-column: span 2; } .rcrm-app .rcrm-sd__ort { grid-column: span 5; } .rcrm-app .rcrm-sd__land { grid-column: span 5; }
.rcrm-app .rcrm-sd__plz input { padding: 0 8px !important; }
.rcrm-app .rcrm-sd__f input:not([type=checkbox]), .rcrm-app .rcrm-sd__f select { height: 38px; min-height: 38px; font-size: 14px; line-height: 1.3; border-radius: 9px; }
.rcrm-app .rcrm-sd__karte textarea { font-size: 14px; line-height: 1.5; border-radius: 9px; }
.rcrm-app .rcrm-sd__f input:not([type=checkbox]) { padding: 0 11px; }
.rcrm-app .rcrm-sd__f select { padding: 0 26px 0 11px; background-position: right 7px top 55%; }
.rcrm-app .rcrm-sd__i { display: inline-flex; width: 15px; height: 15px; border-radius: 50%; background: #e3e9ef; color: #6a7a8b; font: 700 10px/1 system-ui, sans-serif; font-style: normal; align-items: center; justify-content: center; cursor: help; }
.rcrm-app .rcrm-sd__wirkt { display: block; font-size: 11.5px; color: #6a7a8b; margin-top: 3px; }
.rcrm-app .rcrm-sd__wirkt b { color: #165f85; font-weight: 600; }
.rcrm-app .rcrm-sd__schalter { display: flex; gap: 10px; align-items: flex-start; padding: 10px 0 2px; cursor: pointer; }
.rcrm-app .rcrm-sd__schalter input { position: absolute; opacity: 0; pointer-events: none; }
.rcrm-app .rcrm-sd__schalter > i { flex: none; width: 36px; height: 20px; border-radius: 10px; background: #c9d3dc; position: relative; margin-top: 2px; transition: background .15s; }
.rcrm-app .rcrm-sd__schalter > i::after { content: ""; position: absolute; left: 2px; top: 2px; width: 16px; height: 16px; border-radius: 50%; background: #fff; transition: left .15s; }
.rcrm-app .rcrm-sd__schalter input:checked + i { background: #1d9a54; }
.rcrm-app .rcrm-sd__schalter input:checked + i::after { left: 18px; }
.rcrm-app .rcrm-sd__schalter input:focus-visible + i { outline: 2px solid #165f85; outline-offset: 2px; }
.rcrm-app .rcrm-sd__schalter b { display: block; font-size: 13.5px; }
.rcrm-app .rcrm-sd__schalter small { display: block; font-size: 12px; color: #6a7a8b; line-height: 1.4; }
.rcrm-app .rcrm-sd__fuss { position: sticky; bottom: 56px; z-index: 40; display: flex; align-items: center; gap: 10px; justify-content: flex-end; margin-top: 16px; pointer-events: none; }
.rcrm-app .rcrm-sd__fuss > * { pointer-events: auto; }
.rcrm-app .rcrm-sd__fuss .rcrm-knopf { box-shadow: 0 6px 18px rgba( 16, 39, 58, .22 ); }
.rcrm-app .rcrm-sd__fuss .rcrm-knopf--zweit { background: #fff; }
.rcrm-app .rcrm-sd__gesamt { font-size: 12.5px; color: #6a7a8b; background: #fff; border: 1px solid #e3e9ef; border-radius: 8px; padding: 7px 12px; box-shadow: 0 6px 18px rgba( 16, 39, 58, .12 ); }
.rcrm-app .rcrm-sd__gesamt.ist-ok { color: #1f7a4d; font-weight: 600; }
.rcrm-app .rcrm-sd__gesamt.ist-fehler { color: #b32d2e; font-weight: 600; }
@media ( max-width: 1250px ) {
	.rcrm-app .rcrm-sd__raster { grid-template-columns: minmax( 0, 1fr ); }
	.rcrm-app .rcrm-sd__sp { display: contents; }
	.rcrm-app .rcrm-sd__o1 { order: 1; } .rcrm-app .rcrm-sd__o2 { order: 2; } .rcrm-app .rcrm-sd__o3 { order: 3; } .rcrm-app .rcrm-sd__o4 { order: 4; }
	.rcrm-app .rcrm-sd__o5 { order: 5; } .rcrm-app .rcrm-sd__o6 { order: 6; } .rcrm-app .rcrm-sd__o7 { order: 7; }
}
.rcrm-app .rcrm-ka--neu { padding-bottom: 18px; }
.rcrm-app .rcrm-ka--neu .rcrm-ka__av { font-size: 28px; font-weight: 400; }
@media ( max-width: 700px ) {
	.rcrm-app .rcrm-ka { padding: 10px 14px 14px; border-radius: 14px; }
	.rcrm-app .rcrm-ka h1 { font-size: 20px; }
	.rcrm-app .rcrm-ka__av { width: 46px; height: 46px; font-size: 16px; }
	.rcrm-app .rcrm-ka__haupt { gap: 12px; align-items: flex-start; }
	.rcrm-app .rcrm-ka__zahlen { grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); gap: 8px; }
	.rcrm-app .rcrm-ka__zahlen a { min-width: 0; padding: 8px 12px; }
	.rcrm-app .rcrm-ka__zahlen span { white-space: normal; }
	.rcrm-app .rcrm-sd__karte { padding: 12px 12px 14px; }
	.rcrm-app .rcrm-sd__f input:not([type=checkbox]), .rcrm-app .rcrm-sd__f select, .rcrm-app .rcrm-sd__karte textarea { font-size: 16px; }
	.rcrm-app .rcrm-sd__c2, .rcrm-app .rcrm-sd__land { grid-column: span 6; }
	.rcrm-app .rcrm-sd__plz { grid-column: span 4; } .rcrm-app .rcrm-sd__ort { grid-column: span 8 !important; }
	.rcrm-app .rcrm-sd__c3, .rcrm-app .rcrm-sd__c4, .rcrm-app .rcrm-sd__c6, .rcrm-app .rcrm-sd__ort { grid-column: 1 / -1; }
}

/* Karte „Wissen“ am Ticket (ab 0.46.0) */
.rcrm-app .rcrm-wtk h3 { display: flex; align-items: center; gap: 7px; }
.rcrm-app .rcrm-wtk__ic { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; color: #165f85; }
.rcrm-app .rcrm-wtk__unter { margin: 0 0 4px; font-size: 11.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: #6a7a8b; }
.rcrm-app .rcrm-wtk__liste { list-style: none; margin: 0 0 10px; padding: 0; }
.rcrm-app .rcrm-wtk__liste li { padding: 8px 0; border-bottom: 1px solid #edf1f5; margin: 0; }
.rcrm-app .rcrm-wtk__liste li:last-child { border-bottom: 0; }
.rcrm-app .rcrm-wtk__liste a { display: block; font-weight: 600; font-size: 13.5px; line-height: 1.35; color: #133f5c; text-decoration: none; }
.rcrm-app .rcrm-wtk__liste a:hover { color: #165f85; text-decoration: underline; }
.rcrm-app .rcrm-wtk__zeile { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 4px; }
.rcrm-app .rcrm-wtk__zeile .button-link { font-size: 12.5px; font-weight: 600; color: #165f85; white-space: nowrap; }
.rcrm-app .rcrm-wtk__suche { width: 100%; max-width: none; height: 34px; min-height: 34px; font-size: 13px; padding: 0 10px; border-radius: 8px; }
.rcrm-app .rcrm-wtk__aus { margin: 0 0 10px; padding: 8px 10px; background: #eef6fb; border-radius: 8px; font-size: 13px; }
.rcrm-app .rcrm-wtk__neu { margin-top: 12px; padding: 12px; border: 1px solid #cfe3f0; background: linear-gradient( 180deg, #f4f9fd, #eaf3fa ); border-radius: 10px; display: grid; gap: 6px; }
.rcrm-app .rcrm-wtk__neu b { font-size: 13.5px; color: #133f5c; }
.rcrm-app .rcrm-wtk__neu span { font-size: 12.5px; color: #4a5a6b; line-height: 1.45; }
.rcrm-app .rcrm-wtk__neu .rcrm-knopf { justify-self: start; margin-top: 2px; }
.rcrm-app .rcrm-wtk__mehr { margin: 10px 0 0; font-size: 13px; }
.rcrm-app .rcrm-wtk__hinweis { margin: 10px 0 0; font-size: 12px; color: #6a7a8b; line-height: 1.45; }

/* Kennzahl-Kacheln aller Seiten (ab 0.47.0, Ui::zahlen) – wie die Kundenliste */
.rcrm-app .rcrm-ui__zahlen { margin-top: 4px; grid-template-columns: 1.25fr repeat( var( --n, 3 ), 1fr ); }
.rcrm-app a.rcrm-bk__zahl { text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.rcrm-app a.rcrm-bk__zahl:hover { border-color: #b9cfdf; box-shadow: 0 4px 14px rgba( 16, 39, 58, .07 ); }
.rcrm-app .rcrm-bk__zahl.ist-rot b, .rcrm-app .rcrm-bk__zahl.ist-rot span { color: #b32d2e; }
.rcrm-app .rcrm-bk__zahl.ist-warn b { color: #b26a00; }
.rcrm-app .rcrm-bk__zahl.ist-gruen b { color: #1f7a4d; }
.rcrm-app .rcrm-ui__zahlen .rcrm-bk__balken { display: block; height: 6px; border-radius: 3px; background: #e6edf3; margin: 8px 0 0; overflow: hidden; }
.rcrm-app .rcrm-ui__zahlen .rcrm-bk__balken > i { display: block; height: 100%; background: #1d9a54; border-radius: 3px; }
@media ( max-width: 960px ) { .rcrm-app .rcrm-ui__zahlen { grid-template-columns: 1fr 1fr; } }
@media ( max-width: 560px ) { .rcrm-app .rcrm-ui__zahlen { grid-template-columns: 1fr 1fr; gap: 8px; } .rcrm-app .rcrm-ui__zahlen .rcrm-bk__zahl { padding: 11px 13px; } .rcrm-app .rcrm-ui__zahlen .rcrm-bk__zahl b { font-size: 20px; } }

/* Wissen → Kategorien & Aussehen: Wahl des Hilfe-Center-Layouts (ab 0.47.0) */
.rcrm-app .rcrm-wi__lay { display: grid; grid-template-columns: repeat( 2, minmax( 0, 260px ) ) 1fr; gap: 14px; align-items: start; }
.rcrm-app .rcrm-wi__lay > p { grid-column: 1 / -1; margin: 4px 0 0; }
.rcrm-app .rcrm-wi__lay-k { display: block; border: 1px solid #dbe4ec; border-radius: 12px; padding: 12px; cursor: pointer; position: relative; }
.rcrm-app .rcrm-wi__lay-k.ist-an, .rcrm-app .rcrm-wi__lay-k:has( input:checked ) { border-color: #165f85; box-shadow: 0 0 0 2px rgba( 22, 95, 133, .18 ); }
.rcrm-app .rcrm-wi__lay-k input { position: absolute; top: 12px; right: 12px; margin: 0; }
.rcrm-app .rcrm-wi__lay-k b { display: block; font-size: 14px; margin-top: 10px; }
.rcrm-app .rcrm-wi__lay-k small { display: block; font-size: 12.5px; color: #6a7a8b; line-height: 1.45; }
.rcrm-app .rcrm-wi__lay-bild { display: block; height: 92px; border-radius: 8px; background: #f4f7fa; position: relative; overflow: hidden; }
.rcrm-app .rcrm-wi__lay-bild i { position: absolute; display: block; }
.rcrm-app .rcrm-wi__lay-bild--suche i:nth-child( 1 ) { left: 0; right: 0; top: 0; height: 46px; background: linear-gradient( 135deg, #10273a, #2a8bc4 ); }
.rcrm-app .rcrm-wi__lay-bild--suche i:nth-child( 2 ) { left: 30%; right: 30%; top: 16px; height: 9px; border-radius: 3px; background: #fff; }
.rcrm-app .rcrm-wi__lay-bild--suche i:nth-child( 3 ) { left: 10%; right: 10%; top: 36px; height: 40px; border-radius: 6px; background: #fff; box-shadow: 0 3px 8px rgba( 16, 39, 58, .18 ); }
.rcrm-app .rcrm-wi__lay-bild--band i:nth-child( 1 ) { left: 0; right: 0; top: 0; height: 52px; background: linear-gradient( 120deg, #0d2233, #1a6690 ); }
.rcrm-app .rcrm-wi__lay-bild--band i:nth-child( 2 ) { left: 9%; top: 14px; width: 22px; height: 22px; border-radius: 6px; background: rgba( 255, 255, 255, .25 ); }
.rcrm-app .rcrm-wi__lay-bild--band i:nth-child( 3 ) { left: 27%; top: 18px; width: 40%; height: 9px; border-radius: 3px; background: #fff; }
@media ( max-width: 700px ) { .rcrm-app .rcrm-wi__lay { grid-template-columns: 1fr; } }

/* Seitenspalte (Ticket, Einsatz, Kundenakte): Hauptknöpfe über die ganze Breite, Text mittig (ab 0.47.1) */
.rcrm-app .rcrm-seite .rcrm-karte :is( .button-primary, a.button, summary.button, .rcrm-knopf ):not( .button-small ):not( .rcrm-tk-zform__fuss * ):not( .rcrm-ki__knoepfe * ):not( .rcrm-cl__add * ):not( .rcrm-titel__aktionen * ) {
	display: flex; width: 100%; max-width: none; justify-content: center; text-align: center; box-sizing: border-box;
}
.rcrm-app .rcrm-seite .rcrm-karte p:has( > :is( .button-primary, a.button, .rcrm-knopf ):only-child ) { margin-left: 0; margin-right: 0; }
.rcrm-app .rcrm-seite .rcrm-ki__knoepfe { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.rcrm-app .rcrm-seite .rcrm-ki__knoepfe .button { justify-content: center; text-align: center; }
.rcrm-app .rcrm-seite .rcrm-tk-zform__fuss { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.rcrm-app .rcrm-seite .rcrm-tk-zform__fuss .button-primary { flex: 1 1 auto; justify-content: center; text-align: center; display: flex; }
.rcrm-app .rcrm-seite .rcrm-tk-zform__fuss label { flex: none; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; margin: 0; }
.rcrm-app .rcrm-tk-zform input[type=checkbox] { flex: none; width: 17px !important; height: 17px; margin: 0; }

/* Import und Export – sevdesk (ab 0.48.0) */
.rcrm-app .rcrm-sd-tausch .rcrm-check { display: flex; gap: 8px; align-items: flex-start; font-size: 13.5px; line-height: 1.45; }
.rcrm-app .rcrm-sd-tausch .rcrm-check input { margin-top: 3px; }
.rcrm-app .rcrm-sd-tausch .rcrm-inline { display: inline-block; margin: 0 6px 6px 0; }
.rcrm-app .rcrm-sd-vor td { vertical-align: top; }
.rcrm-app .rcrm-sd-vor__hinweis { color: #b26a00 !important; }
.rcrm-app .rcrm-sd-vor__fuss { display: flex; gap: 10px; align-items: center; margin-top: 16px; }

/* Wissen – Ideen auswählen und gesammelt schreiben (ab 0.48.0) */
.rcrm-app .rcrm-wi__ideen-leiste { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 16px; margin: 12px 0 2px; }
.rcrm-app .rcrm-wi__ideen-alle { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; cursor: pointer; }
.rcrm-app .rcrm-wi__ideen li > input[type=checkbox] { flex: none; margin: 0; }
.rcrm-app .rcrm-wi__ideen li > div { flex: 1 1 auto; min-width: 0; }
.rcrm-app .rcrm-wi__ideen li.ist-fertig { background: #f3faf6; border-color: #cfe9da; }
.rcrm-app .rcrm-wi__idee-ok { flex: none; width: 20px; height: 20px; border-radius: 50%; background: #1d9a54; color: #fff; display: grid; place-items: center; font-size: 12px; font-weight: 700; }
.rcrm-app .rcrm-wi__ideen li.ist-wartet { opacity: .6; }
.rcrm-app .rcrm-wi__ideen li.ist-laeuft { border-color: #165f85; box-shadow: 0 0 0 2px rgba( 22, 95, 133, .15 ); background: linear-gradient( 90deg, #f4f9fd, #fff, #f4f9fd ); background-size: 200% 100%; animation: rcrm-wi-lauf 1.4s linear infinite; }
.rcrm-app .rcrm-wi__ideen li.ist-fehler { border-color: #e8b4b4; background: #fdf3f3; }
@keyframes rcrm-wi-lauf { from { background-position: 200% 0; } to { background-position: 0 0; } }
.rcrm-app .rcrm-wi__ideen-leiste .rcrm-knopf[disabled] { opacity: .45; cursor: not-allowed; box-shadow: none; }
