/* KH Kundenbereich – Kundenbereich */
.khkb {
	--khkb-akzent: #8a6a33;
	--rc-blau: var(--khkb-akzent);
	font-family: var(--rc-text-font);
	font-size: 15px;
	line-height: 1.6;
	color: var(--rc-text);
	--khkb-breite: 1200px;
	/* Aus schmalen Theme-Spalten ausbrechen, mittig zur Spalte, mit Rand zum Fenster */
	--khkb-w: min(var(--khkb-breite), calc(100vw - 40px));
	text-align: left;
}
/* Aus schmalen Theme-Spalten ausbrechen: mittig zur Spalte, mit Rand zum Fenster (höhere Spezifität als Theme-Layouts) */
body .khkb.khkb {
	width: var(--khkb-w);
	max-width: none !important;
	margin-left: calc((100% - var(--khkb-w)) / 2) !important;
	margin-right: calc((100% - var(--khkb-w)) / 2) !important;
}
.khkb *, .khkb *::before, .khkb *::after { box-sizing: border-box; }
.khkb h2, .khkb h3, .khkb h4 { font-family: var(--rc-titel); color: var(--rc-navy); letter-spacing: -.01em; line-height: 1.25; margin: 0; }
.khkb p { margin: 0 0 12px; }
.khkb a { color: var(--rc-blau); }
.khkb :focus-visible { outline: 2px solid var(--rc-blau); outline-offset: 2px; }
.khkb-leise { color: var(--rc-leise); font-size: 13.5px; }

/* ---------- Knöpfe und Felder ---------- */
.khkb .khkb-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 24px;
	border: 1px solid var(--rc-blau);
	border-radius: 12px;
	background: var(--rc-blau);
	color: #fff;
	font-family: var(--rc-text-font);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: filter .15s;
}
.khkb .khkb-btn:hover { filter: brightness(1.12); color: #fff; }
.khkb .khkb-btn--leise { background: transparent; color: var(--rc-blau); border-color: #cfc8bb; }
.khkb .khkb-btn--leise:hover { background: var(--rc-blau-hell); color: var(--rc-blau); filter: none; }
.khkb .khkb-link { background: none; border: 0; padding: 0; font: inherit; font-size: 14px; font-weight: 500; color: var(--rc-blau); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.khkb-feld { display: block; margin: 18px 0; }
.khkb-feld span { display: block; font-size: 13.5px; font-weight: 500; color: var(--rc-leise); margin-bottom: 7px; }
.khkb .khkb-feld input {
	width: 100%;
	min-height: 52px;
	padding: 12px 16px;
	border: 1.5px solid #d6d0c4;
	border-radius: 12px;
	background: #fff;
	font-family: var(--rc-text-font);
	font-size: 16px;
	color: var(--rc-text);
	box-shadow: none;
}
.khkb .khkb-feld input:focus { border-color: var(--rc-blau); box-shadow: 0 0 0 4px rgba(201, 169, 110, .14); outline: none; }
.khkb .khkb-feld input.khkb-code { font-family: var(--rc-titel); font-size: 26px; font-weight: 700; letter-spacing: .35em; text-align: center; }
.khkb-nebenform { margin-top: 16px; }
.khkb-msg { border-radius: 12px; background: var(--rc-blau-hell); color: var(--rc-navy); padding: 13px 16px; margin: 0 0 18px; font-size: 14px; }
.khkb-msg--fehler { background: var(--rc-rot-hell); color: #8f2a1a; }

/* ---------- Anmeldung ---------- */
.khkb-login {
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	max-width: 880px;
	margin: 20px auto;
	background: #fff;
	border: 1px solid var(--rc-linie);
	border-radius: 22px;
	overflow: hidden;
	box-shadow: 0 30px 60px -40px rgba(43, 43, 43, .45);
}
.khkb-login__seite {
	position: relative;
	background: var(--rc-navy);
	color: #d4e1eb;
	padding: 40px 36px;
	overflow: hidden;
}
.khkb-login__seite::after { content: ''; position: absolute; left: -90px; bottom: -130px; width: 320px; height: 320px; border-radius: 50%; border: 48px solid rgba(201, 169, 110, .45); }
.khkb-login__logo { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; background: var(--rc-blau); color: #fff; font-family: var(--rc-titel); font-weight: 700; font-size: 22px; margin-bottom: 22px; }
.khkb-login__firma { font-size: 13px; color: #b8b1a5; margin: 0 0 6px; }
.khkb .khkb-login__seite h2 { color: #fff; font-size: 28px; font-weight: 700; margin: 0 0 12px; }
.khkb-login__schritte { position: relative; z-index: 1; list-style: none; margin: 30px 0 0; padding: 0; counter-reset: s; }
.khkb-login__schritte li { position: relative; padding: 0 0 18px 40px; margin: 0; font-size: 14px; color: #8fa8bb; counter-increment: s; }
.khkb-login__schritte li::before { content: counter(s); position: absolute; left: 0; top: -2px; width: 26px; height: 26px; border-radius: 50%; border: 2px solid #35566e; display: grid; place-items: center; font-size: 12px; font-weight: 600; }
.khkb-login__schritte li.ist-aktiv { color: #fff; font-weight: 500; }
.khkb-login__schritte li.ist-aktiv::before { background: var(--rc-bernstein); border-color: var(--rc-bernstein); color: var(--rc-navy); }
.khkb-login__schritte li.ist-erledigt::before { content: '✓'; background: var(--rc-blau); border-color: var(--rc-blau); color: #fff; }
.khkb-login__form { padding: 44px 40px; align-self: center; }
.khkb-login__form h3 { font-size: 22px; font-weight: 700; margin: 0 0 8px; }
.khkb-login__form p { color: var(--rc-leise); }
.khkb-login__form .khkb-btn { width: 100%; }

/* ---------- Kopf im Kundenbereich ---------- */
.khkb-hallo {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	background: var(--rc-navy);
	color: #c9d8e4;
	border-radius: 22px;
	padding: 30px 34px;
	margin: 0 0 18px;
	position: relative;
	overflow: hidden;
}
.khkb-hallo::after { content: ''; position: absolute; right: -70px; top: -150px; width: 260px; height: 260px; border-radius: 50%; border: 30px solid rgba(201, 169, 110, .35); pointer-events: none; }
.khkb-hallo > * { position: relative; z-index: 1; }
.khkb-hallo__gruss { font-size: 14px; margin: 0 0 4px; color: #b8b1a5; }
.khkb .khkb-hallo h2 { color: #fff; font-size: 30px; font-weight: 700; }
.khkb-hallo__frist { margin: 14px 0 0; font-size: 14px; }
.khkb-hallo__frist strong { color: var(--rc-bernstein); font-weight: 600; }
.khkb .khkb-hallo__ab { color: #fff; border-color: #456a84; min-height: 40px; padding: 0 16px; font-size: 14px; }
.khkb .khkb-hallo__ab:hover { background: rgba(255, 255, 255, .08); color: #fff; }

.khkb-tabs { display: inline-flex; gap: 4px; padding: 5px; background: #eee9e1; border-radius: 14px; margin: 0 0 22px; max-width: 100%; overflow-x: auto; }
.khkb .khkb-tabs a { padding: 9px 18px; border-radius: 10px; color: var(--rc-leise); text-decoration: none; font-weight: 500; font-size: 14px; white-space: nowrap; }
.khkb .khkb-tabs a:hover { color: var(--rc-navy); }
.khkb .khkb-tabs a.ist-aktiv { background: #fff; color: var(--rc-navy); font-weight: 600; box-shadow: 0 1px 3px rgba(43, 43, 43, .12); }

/* ---------- Verträge ---------- */
.khkb-karte { background: #fff; border: 1px solid var(--rc-linie); border-radius: 18px; padding: 26px 28px; margin: 0 0 18px; }
.khkb-karte h3 { font-size: 19px; font-weight: 700; margin: 0 0 14px; }
.khkb-vertrag__kopf { display: flex; justify-content: space-between; gap: 14px; align-items: flex-start; margin-bottom: 16px; }
.khkb .khkb-vertrag__kopf h3 { margin: 0; font-size: 21px; }
.khkb .khkb-vertrag__kopf h4 { font-size: 16px; font-weight: 700; }
.khkb-vertrag__art { margin: 0 0 4px !important; font-size: 13px; color: var(--rc-leise); }
.khkb-vertrag__art span { margin-left: 6px; padding: 1px 8px; border-radius: 6px; background: #f2efe9; font-size: 12px; font-weight: 500; }
.khkb-status { display: inline-flex; align-items: center; gap: 7px; padding: 4px 12px 4px 10px; border-radius: 999px; font-size: 12.5px; font-weight: 600; background: var(--rc-gruen-hell); color: var(--rc-gruen); white-space: nowrap; }
.khkb-status::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.khkb-status--gekuendigt { background: var(--rc-rot-hell); color: var(--rc-rot); }
.khkb-status--beendet, .khkb-status--entwurf { background: #eef1f4; color: #6b665e; }
.khkb-status--zur_unterschrift { background: var(--rc-bernstein-hell); color: #9a5b00; }
.khkb-daten { display: grid; grid-template-columns: 150px minmax(0, 1fr) 150px; gap: 14px 24px; margin: 0 0 8px; padding: 0; }
.khkb-daten > div { margin: 0; }
.khkb-daten dt { font-size: 12.5px; color: var(--rc-leise); margin: 0; }
.khkb-daten dd { margin: 0; font-weight: 500; font-size: 14.5px; }
.khkb .khkb-leiste { margin-top: 18px; }
.khkb-pdf { margin: 18px 0 0 !important; }
.khkb .khkb-pdf a { display: inline-flex; align-items: center; gap: 10px; font-weight: 500; font-size: 14px; text-decoration: none; color: var(--rc-navy); }
.khkb .khkb-pdf a span { display: grid; place-items: center; width: 36px; height: 40px; border-radius: 6px; background: var(--rc-rot-hell); color: var(--rc-rot); font-size: 10px; font-weight: 700; letter-spacing: .04em; }
.khkb .khkb-pdf a:hover { color: var(--rc-blau); text-decoration: underline; }
.khkb-anhaenge { margin: 24px -28px -26px; padding: 6px 28px 10px; background: #faf8f5; border-top: 1px solid var(--rc-linie); border-radius: 0 0 18px 18px; }
.khkb .khkb-anhaenge > h4 { font-family: var(--rc-text-font); font-size: 13px; font-weight: 500; color: var(--rc-leise); margin: 14px 0 6px; }
.khkb-anhang { padding: 18px 0; }
.khkb-anhang + .khkb-anhang { border-top: 1px solid var(--rc-linie); }
.khkb-anhang .khkb-vertrag__kopf { margin-bottom: 10px; }
.khkb-anhang__mit { color: var(--rc-leise); font-size: 14px; margin: 0 !important; }
.khkb-leer { text-align: center; padding: 40px; }

/* ---------- Ansprechpartner ---------- */
.khkb-raster { display: grid; grid-template-columns: 1fr 1.4fr; gap: 18px; align-items: start; }
.khkb-raster .khkb-karte { margin: 0; }
.khkb-wir { background: var(--rc-blau-hell); border-color: #cfe1ec; }
.khkb-personen { list-style: none; margin: 0 0 14px; padding: 0; }
.khkb-personen li { display: flex; gap: 14px; align-items: center; padding: 12px 0; margin: 0; }
.khkb-personen li + li { border-top: 1px solid #f1eee8; }
.khkb-personen__ini { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 50%; background: var(--rc-navy); color: #fff; font-family: var(--rc-titel); font-weight: 700; font-size: 14px; }
.khkb-personen div { display: flex; flex-direction: column; line-height: 1.4; }
.khkb-personen div span { font-size: 13px; color: var(--rc-leise); }

/* ---------- Sicherheit ---------- */
.khkb-sicher { max-width: 620px; }
.khkb-schritte { padding-left: 20px; margin: 0 0 14px; }
.khkb-schritte li { margin-bottom: 6px; }
.khkb-qr { margin: 16px 0; }
.khkb-qr svg { display: block; background: #fff; padding: 10px; border: 1px solid var(--rc-linie); border-radius: 14px; max-width: 100%; height: auto; }
.khkb code { word-break: break-all; font-size: 13px; background: #f2efe9; padding: 2px 6px; border-radius: 6px; }

@media (max-width: 760px) {
	.khkb-login { grid-template-columns: 1fr; border-radius: 18px; }
	.khkb-login__seite { padding: 28px 24px; }
	.khkb-login__schritte { display: none; }
	.khkb-login__form { padding: 28px 24px 32px; }
	.khkb-hallo { flex-direction: column; padding: 24px; }
	.khkb .khkb-hallo h2 { font-size: 24px; }
	.khkb-karte { padding: 20px; }
	.khkb-anhaenge { margin: 20px -20px -20px; padding: 4px 20px 8px; }
	.khkb-vertrag__kopf { flex-direction: column-reverse; }
	.khkb-daten { grid-template-columns: 1fr 1fr; }
	.khkb-daten > div:nth-child(2) { grid-column: 1 / -1; order: 3; }
	.khkb-raster { grid-template-columns: 1fr; }
	.khkb-tabs { display: flex; width: 100%; }
	.khkb .khkb-tabs a { flex: 1; text-align: center; padding: 9px 8px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) { .khkb .khkb-btn { transition: none; } }

/* ---------- Unterschrift im Kundenbereich ---------- */
.khkb-status--gegenzeichnung { background: var(--rc-blau-hell); color: var(--rc-blau); }
.khkb-zurueck { margin: 0 0 14px; font-size: 14px; }
.khkb .khkb-zurueck a { color: var(--rc-blau); text-decoration: none; font-weight: 500; }
.khkb-zeichnen { border-color: #f0c98a; background: linear-gradient(180deg, #fffaf1, #fff 70%); }
.khkb-zeichnen__kopf { display: flex; gap: 16px; align-items: flex-start; }
.khkb-zeichnen__kopf h3 { margin: 2px 0 4px !important; }
.khkb-zeichnen__kopf p { margin: 0; color: var(--rc-leise); font-size: 14px; }
.khkb-zeichnen__icon { flex: none; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: var(--rc-bernstein-hell); color: #9a5b00; font-size: 22px; }
.khkb-zeichnen__liste { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 10px; }
.khkb-zeichnen__liste li { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; padding: 14px 16px; border: 1px solid var(--rc-linie); border-radius: 12px; background: #fff; }
.khkb-zeichnen__liste strong { display: block; font-family: var(--rc-titel); font-size: 15px; color: var(--rc-navy); }
.khkb-zeichnen__liste span { font-size: 13px; color: var(--rc-leise); }
.khkb .khkb-pdf--offen a span { background: var(--rc-bernstein-hell); color: #9a5b00; font-size: 16px; }

.khkb-vertragstext__werkzeug { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 4px 0 18px; font-size: 13px; color: var(--rc-leise); }
.khkb-contract { font-size: 15px; line-height: 1.7; color: var(--rc-text); max-height: 62vh; overflow: auto; padding: 22px 26px; border: 1px solid var(--rc-linie); border-radius: 14px; background: #fbfcfd; margin: 0 0 22px; }
.khkb-contract .khkb-contract__title { font-family: var(--rc-titel); font-size: 21px; font-weight: 700; color: var(--rc-navy); margin: 0 0 14px; }
.khkb-contract h3 { font-family: var(--rc-titel); font-size: 16px; font-weight: 700; color: var(--rc-navy); margin: 22px 0 8px; }
.khkb-contract p { margin: 0 0 10px; }
.khkb-contract ul { margin: 0 0 12px 20px; padding: 0; }
.khkb-cfield { font-weight: 600; color: var(--rc-navy); background: var(--rc-blau-hell); border-radius: 4px; padding: 0 4px; }

.khkb .khkb-field { margin: 0 0 14px; }
.khkb .khkb-field label, .khkb-cchoice legend { display: block; font-weight: 600; font-size: 14px; margin: 0 0 6px; color: var(--rc-navy); }
.khkb .khkb-field input, .khkb .khkb-field textarea { width: 100%; box-sizing: border-box; border: 1.5px solid var(--rc-linie); border-radius: 10px; padding: 11px 13px; font: inherit; font-size: 15px; background: #fff; }
.khkb .khkb-field input:focus, .khkb .khkb-field textarea:focus { outline: none; border-color: var(--rc-blau); box-shadow: 0 0 0 3px rgba(201, 169, 110, .15); }
.khkb-req { color: var(--rc-rot); }
.khkb-crow { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 0 14px; }
.khkb-ccheck { display: flex; gap: 12px; align-items: flex-start; margin: 10px 0 12px; padding: 14px 16px; border-radius: 12px; background: var(--rc-flaeche); cursor: pointer; font-size: 14.5px; }
.khkb-ccheck input { width: 20px; height: 20px; margin-top: 2px; flex: none; accent-color: var(--rc-blau); }
.khkb-ccheck.is-invalid { outline: 1.5px solid var(--rc-rot); }
.khkb-cchoice { border: 0; margin: 10px 0 14px; padding: 0; }
.khkb-cchoice label { display: flex; gap: 12px; align-items: center; padding: 11px 15px; border: 1.5px solid var(--rc-linie); border-radius: 12px; margin-bottom: 8px; cursor: pointer; }
.khkb-cchoice label:has(input:checked) { border-color: var(--rc-blau); background: var(--rc-blau-hell); }
.khkb-cchoice input { accent-color: var(--rc-blau); }

.khkb-paket, .khkb-anlagen { border: 0; margin: 0 0 22px; padding: 0; }
.khkb-paket h4, .khkb-anlagen legend { font-family: var(--rc-titel); font-size: 16px; font-weight: 700; color: var(--rc-navy); margin: 0 0 10px; padding: 0; }
.khkb-anlagen p { margin: 0 0 8px; font-size: 14px; color: var(--rc-leise); }
.khkb-text { border: 1px solid var(--rc-linie); border-radius: 12px; margin: 0 0 10px; background: #fff; }
.khkb-text summary { cursor: pointer; padding: 14px 16px; display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; list-style: none; }
.khkb-text summary::-webkit-details-marker { display: none; }
.khkb-text summary::before { content: '▸'; color: var(--rc-blau); }
.khkb-text[open] summary::before { content: '▾'; }
.khkb-text summary span { font-size: 13px; color: var(--rc-leise); }
.khkb-text .khkb-contract { margin: 0 14px 10px; max-height: 50vh; }
.khkb-text p { margin: 0 16px 14px; font-size: 14px; }

.khkb-unterzeichner { display: grid; gap: 22px; margin: 0 0 18px; }
.khkb-unterzeichner--mehrere { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.khkb-signer { border: 0; margin: 0; padding: 0; min-width: 0; }
.khkb-signer legend { font-family: var(--rc-titel); font-size: 17px; font-weight: 700; color: var(--rc-navy); margin: 0 0 12px; padding: 0; }
.khkb-signer legend span { font-family: var(--rc-text-font); font-size: 14px; font-weight: 500; color: var(--rc-leise); }
.khkb-unterschrift__rechtlich { font-size: 13px; color: var(--rc-leise); line-height: 1.6; margin: 0 0 16px; }
.khkb-unterschrift__aktion { display: flex; justify-content: flex-end; }
.khkb .khkb-btn--gross { padding: 15px 28px; font-size: 16px; }
@media (max-width: 640px) {
	.khkb-contract { padding: 16px; font-size: 14.5px; }
	.khkb-unterschrift__aktion .khkb-btn { width: 100%; }
}

/* ---------- Breites Layout ---------- */
.khkb-zeichnen-raster { display: grid; gap: 28px; }
@media (min-width: 1000px) {
	.khkb-zeichnen-raster { grid-template-columns: minmax(0, 1fr) 400px; align-items: start; }
	.khkb-zeichnen-raster__text .khkb-contract { max-height: calc(100vh - 140px); overflow: auto; margin: 0; }
	.khkb-zeichnen-raster__seite { position: sticky; top: 24px; }
	.khkb-zeichnen-raster__seite .khkb-unterschrift__aktion .khkb-btn { width: 100%; }
}
.khkb-contract { max-width: none; }
.khkb-contract p, .khkb-contract li { max-width: 82ch; }
@media (max-width: 640px) {
	.khkb { --khkb-w: calc(100vw - 24px); }
}
@media (max-width: 999px) {
	.khkb-zeichnen-raster__text .khkb-contract { max-height: none; }
}

/* ---------- App: Installationshinweis und Benachrichtigungen ---------- */
.khkb-push__knoepfe { display: flex; gap: 10px; flex-wrap: wrap; }
.khkb-push__knoepfe [hidden] { display: none !important; }
.khkb-install { position: fixed; left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); z-index: 99999; display: flex; align-items: center; gap: 12px; max-width: 520px; margin: 0 auto; padding: 14px 44px 14px 16px; background: #2b2b2b; color: #fff; border-radius: 16px; box-shadow: 0 12px 34px rgba(43, 43, 43, .35); font-family: 'KHKB Poppins', 'Poppins', 'Segoe UI', sans-serif; font-size: 14px; line-height: 1.45; }
.khkb-install__body { flex: 1; display: flex; gap: 10px; align-items: flex-start; }
.khkb-install__body strong { display: block; margin-bottom: 2px; }
.khkb-install__body p { margin: 0; opacity: .85; }
.khkb-install__share { flex: none; color: #8fd0ff; margin-top: 2px; }
.khkb-install .khkb-btn { display: inline-block; border: 1px solid #fff; border-radius: 10px; background: #fff; color: #2b2b2b; padding: 8px 14px; font: inherit; font-weight: 600; cursor: pointer; white-space: nowrap; }
.khkb-install__close { position: absolute; top: 6px; right: 8px; width: 32px; height: 32px; border: 0; background: transparent; color: #fff; font-size: 22px; line-height: 1; cursor: pointer; opacity: .75; }
.khkb-install__close:hover { opacity: 1; }

/* ---------- Rechnungen ---------- */
.khkb-re-summe { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px; }
.khkb-re-summe p { margin: 0; display: flex; align-items: baseline; gap: 12px; }
.khkb-re-summe span { color: var(--rc-leise); }
.khkb-re-summe strong { font-family: var(--rc-titel); font-size: 22px; color: var(--rc-navy); }
.khkb-re-summe__warn { color: var(--rc-rot); font-weight: 600; }
.khkb-re-liste ul { list-style: none; margin: 0; padding: 0; }
.khkb-re { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 18px; padding: 14px 0; border-bottom: 1px solid var(--rc-linie); }
.khkb-re:first-child { padding-top: 0; }
.khkb-re:last-child { border-bottom: 0; padding-bottom: 0; }
.khkb-re__haupt { display: grid; gap: 2px; min-width: 0; }
.khkb-re__nr { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; color: var(--rc-navy); text-decoration: none; }
.khkb-re__nr span { flex: none; display: inline-grid; place-items: center; width: 34px; height: 22px; border-radius: 5px; background: var(--rc-rot-hell); color: var(--rc-rot); font-size: 10px; font-weight: 700; letter-spacing: .04em; }
.khkb-re__nr:hover { text-decoration: underline; }
.khkb-re__meta { color: var(--rc-leise); font-size: 13px; padding-left: 44px; }
.khkb-re__rechts { display: flex; align-items: center; gap: 12px; margin-left: auto; }
.khkb-re__betrag { font-variant-numeric: tabular-nums; white-space: nowrap; }
.khkb-re__betrag.ist-storniert { text-decoration: line-through; color: var(--rc-leise); }
.khkb-status--re-offen { background: var(--rc-blau-hell); color: var(--rc-blau); }
.khkb-status--re-ueberfaellig { background: var(--rc-rot-hell); color: var(--rc-rot); }
.khkb-status--re-bezahlt { background: var(--rc-gruen-hell); color: var(--rc-gruen); }
.khkb-status--re-storniert { background: #eef1f4; color: #6b665e; }

/* Kundenansicht für Mitarbeiter */
.khkb-ansicht { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; background: var(--rc-bernstein-hell); border: 1px solid #c9a96e; border-radius: 12px; padding: 12px 16px; margin: 0 0 18px; font-size: 14px; color: #5a3a00; }
.khkb-ansicht .khkb-btn { white-space: nowrap; }
.khkb-ansicht ~ * button[type=submit], .khkb-ansicht ~ * input[type=submit] { opacity: .45; pointer-events: none; cursor: not-allowed; }
