/* ------------------------------------------------------------------
   Ankauf: Angebot (ankauf_angebot.php) und Verkaufsformular (ankauf_formular.php)
   Alle Klassen beginnen mit "rbk-", damit nichts anderes auf der Seite betroffen ist.
   ------------------------------------------------------------------ */

.rbk-schritte {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 22px;
	list-style: none;
	margin: 0 0 22px 0;
	padding: 0;
	font-size: 13px;
	color: #8a8a8a;
}
.rbk-schritte li { display: flex; align-items: center; gap: 7px; }
.rbk-schritte span {
	display: inline-flex; align-items: center; justify-content: center;
	width: 22px; height: 22px; border-radius: 50%;
	border: 1.5px solid #c8c8c8; font-size: 12px; font-weight: bold;
}
.rbk-schritte .rbk-erledigt { color: #1B8BE0; }
.rbk-schritte .rbk-erledigt span { border-color: #1B8BE0; }
.rbk-schritte .rbk-aktiv { color: #222; font-weight: bold; }
.rbk-schritte .rbk-aktiv span { background: #1B8BE0; border-color: #1B8BE0; color: #fff; }

.rbk-karte {
	border: 1px solid #e1e5ea;
	border-radius: 8px;
	padding: 18px 20px 6px 20px;
	margin: 16px 0 18px 0;
	background: #fff;
	min-width: 0;
}
.rbk-karte-titel {
	font-size: 15px !important;
	font-weight: bold;
	color: #1B8BE0;
	margin: 0 0 12px 0 !important;
	padding: 0 6px;
	width: auto;
	border: 0;
}
fieldset.rbk-karte { padding-top: 10px; }
.rbk-karte h2.rbk-karte-titel { padding: 0; }

.rbk-buchliste { margin: 0 0 12px 0; padding-left: 22px; }
.rbk-buchliste li { padding: 8px 0 10px 4px; border-bottom: 1px solid #f0f2f4; }
.rbk-buchliste li:last-child { border-bottom: 0; }
.rbk-buchtitel { font-weight: bold; font-size: 13.5px; color: #222; line-height: 1.4; }
.rbk-buchinfo { font-size: 12.5px; color: #666; line-height: 1.5; margin-top: 2px; }

.rbk-angebot {
	display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 6px 16px;
	background: #1B8BE0; color: #fff;
	border-radius: 8px; padding: 16px 20px; margin: 0 0 12px 0;
}
.rbk-angebot-label { font-size: 15px; }
.rbk-angebot-betrag { font-size: 26px; font-weight: bold; white-space: nowrap; }

.rbk-versand {
	display: flex; gap: 14px; align-items: flex-start;
	background: #eef6fd; border-radius: 8px; padding: 16px 20px; margin: 0 0 24px 0;
	font-size: 13.5px; line-height: 1.5; color: #333;
}
.rbk-versand p { margin: 4px 0 0 0; }
.rbk-versand-icon { width: 28px; height: 28px; flex: 0 0 28px; color: #1B8BE0; margin-top: 2px; }
.rbk-versand-titel { font-weight: bold; font-size: 14.5px; color: #1B8BE0; }

.rbk-klein { font-size: 12.5px; color: #666; }

.rbk-hinweis {
	border-left: 4px solid #1B8BE0; background: #eef6fd;
	padding: 12px 16px; margin: 16px 0; font-size: 13.5px; line-height: 1.5; border-radius: 0 6px 6px 0;
}
.rbk-hinweis-fehler { border-left-color: #d9534f; background: #fdf0ef; }

.rbk-buttons {
	display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px;
	margin: 8px 0 10px 0;
}
.rbk-buttons form { margin: 0; }
.rbk-button,
a.rbk-button, a.rbk-button:visited {
	display: inline-block;
	background: #1B8BE0; color: #fff; border: 2px solid #1B8BE0;
	border-radius: 6px; padding: 10px 22px;
	font-size: 14px; font-weight: bold; line-height: 1.3; text-align: center;
	text-decoration: none; cursor: pointer; font-family: arial, sans-serif;
}
.rbk-button:hover, a.rbk-button:hover { background: #1576c0; border-color: #1576c0; color: #fff; text-decoration: none; }
.rbk-button-zweit, a.rbk-button-zweit, a.rbk-button-zweit:visited { background: #fff; color: #1B8BE0; }
.rbk-button-zweit:hover, a.rbk-button-zweit:hover { background: #eef6fd; color: #1576c0; }

/* Formular */
.rbk-formular fieldset { display: block; }
.rbk-feld { margin: 0 0 14px 0; }
.rbk-feld label { display: block; font-size: 13px; font-weight: bold; color: #333; margin: 0 0 5px 0; }
.rbk-feld input[type="text"],
.rbk-feld input[type="email"] {
	display: block; width: 100%; box-sizing: border-box;
	font-size: 14px; font-family: arial, sans-serif; color: #222;
	padding: 9px 11px; border: 1px solid #c9ced4; border-radius: 6px; background: #fff;
	transition: border-color .15s, box-shadow .15s;
}
.rbk-feld input::placeholder { color: #a8adb3; opacity: 1; }
.rbk-feld input:focus { outline: none; border-color: #1B8BE0; box-shadow: 0 0 0 3px rgba(27,139,224,.18); }
.rbk-feldhinweis { font-size: 12px; color: #777; margin-top: 4px; }

.rbk-zeile { display: flex; gap: 12px; }
.rbk-zeile .rbk-breit { flex: 3 1 0; min-width: 0; }
.rbk-zeile .rbk-schmal { flex: 1 1 0; min-width: 0; }

.rbk-option {
	display: flex !important; gap: 10px; align-items: flex-start;
	border: 1px solid #c9ced4; border-radius: 6px; padding: 11px 14px; margin: 0 0 10px 0;
	cursor: pointer; font-weight: normal !important; font-size: 13.5px; line-height: 1.45;
}
.rbk-option input { margin: 3px 0 0 0; flex: 0 0 auto; }
.rbk-option .rbk-klein { display: block; margin-top: 2px; }
.rbk-option:has(input:checked) { border-color: #1B8BE0; background: #eef6fd; }
.rbk-adresse-intro { margin: 6px 0 10px 0; }

.rbk-zusammenfassung {
	border: 1px solid #e1e5ea; border-radius: 8px; margin: 16px 0 0 0; background: #fafbfc;
}
.rbk-zusammenfassung summary {
	display: flex; justify-content: space-between; gap: 12px; cursor: pointer;
	padding: 12px 18px; font-size: 13.5px; font-weight: bold; color: #333; list-style: none;
}
.rbk-zusammenfassung summary::-webkit-details-marker { display: none; }
.rbk-zusammenfassung summary > span:first-child::before { content: "\25B8"; color: #1B8BE0; margin-right: 8px; }
.rbk-zusammenfassung[open] summary > span:first-child::before { content: "\25BE"; }
.rbk-zusammenfassung-betrag { color: #1B8BE0; white-space: nowrap; }
.rbk-zusammenfassung .rbk-buchliste { padding: 0 18px 8px 40px; }

.rbk-rechtliches { line-height: 1.5; margin: 4px 0 16px 0; }
.rbk-rechtliches a { color: #1B8BE0; text-decoration: underline; }

@media screen and (max-width: 520px) {
	.rbk-zeile { flex-direction: column; gap: 0; }
	.rbk-buttons { flex-direction: column-reverse; align-items: stretch; }
	.rbk-buttons form, .rbk-buttons .rbk-button { width: 100%; }
	.rbk-angebot-betrag { font-size: 22px; }
	.rbk-karte { padding: 14px 14px 4px 14px; }
}

/* Startseite Ankauf (ankauf.php) */
.rbk-einleitung { font-size: 14px; line-height: 1.6; color: #333; margin: 10px 0 14px 0; text-align: left; }
.rbk-vorteile { list-style: none; margin: 0 0 12px 0; padding: 0; }
.rbk-vorteile li {
	position: relative; padding: 5px 0 5px 28px;
	font-size: 13.5px; line-height: 1.5; color: #333;
}
.rbk-vorteile li::before {
	content: ""; position: absolute; left: 2px; top: 9px;
	width: 16px; height: 16px; border-radius: 50%; background: #1B8BE0;
}
.rbk-vorteile li::after {
	content: ""; position: absolute; left: 7px; top: 12px;
	width: 5px; height: 8px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg);
}

.rbk-feld select {
	display: block; width: 100%; max-width: 100%; box-sizing: border-box;
	font-size: 13.5px; font-family: arial, sans-serif; color: #222;
	padding: 9px 11px; border: 1px solid #c9ced4; border-radius: 6px; background-color: #fff;
	transition: border-color .15s, box-shadow .15s;
}
.rbk-feld select:focus { outline: none; border-color: #1B8BE0; box-shadow: 0 0 0 3px rgba(27,139,224,.18); }
.rbk-buchkarte { margin-bottom: 12px; }

a.rbk-weiteres-buch, a.rbk-weiteres-buch:visited {
	display: block; text-align: center;
	border: 2px dashed #9cc9ef; border-radius: 8px; padding: 12px 16px; margin: 0 0 18px 0;
	color: #1B8BE0; font-size: 14px; font-weight: bold; text-decoration: none; cursor: pointer;
	transition: background .15s, border-color .15s;
}
a.rbk-weiteres-buch:hover { background: #eef6fd; border-color: #1B8BE0; color: #1576c0; text-decoration: none; }

.rbk-buttons-rechts { justify-content: flex-end; }

/* Bestätigungsseite (ankauf_absenden.php) */
.rbk-erfolg { display: flex; gap: 16px; align-items: center; margin: 4px 0 8px 0; }
.rbk-erfolg-icon {
	flex: 0 0 48px; width: 48px; height: 48px; border-radius: 50%;
	background: #2e9d4f; color: #fff; font-size: 26px; font-weight: bold;
	display: flex; align-items: center; justify-content: center;
}
.rbk-erfolg p { margin: 2px 0 0 0; font-size: 14px; color: #333; }
.rbk-erfolg .sonderseiten_haupt_ueberschrift { margin: 0; padding: 0; }
.rbk-label { display: flex; gap: 24px; flex-wrap: wrap; margin-bottom: 6px; }
.rbk-label-teil { flex: 1 1 240px; min-width: 0; }
.rbk-label-titel { font-weight: bold; font-size: 14px; color: #222; }
.rbk-label-teil p { margin: 4px 0 12px 0; line-height: 1.5; }
.rbk-qr { width: 180px; max-width: 100%; height: auto; border: 1px solid #e1e5ea; border-radius: 6px; padding: 6px; background: #fff; }
.rbk-sendungsnr { border-top: 1px solid #f0f2f4; padding-top: 10px; margin: 8px 0 12px 0; }
.rbk-ablauf { margin: 0 0 14px 0; padding-left: 22px; }
.rbk-ablauf li { padding: 5px 0 5px 4px; font-size: 13.5px; line-height: 1.55; color: #333; }
.rbk-adresse { display: inline-block; margin-top: 6px; padding: 8px 12px; background: #f5f7f9; border-radius: 6px; line-height: 1.5; }

/* IBAN-Prüfung */
.rbk-feldfehler { font-size: 12.5px; color: #c9302c; margin-top: 5px; }
.rbk-feld input.rbk-ungueltig { border-color: #d9534f; }
.rbk-feld input.rbk-ungueltig:focus { box-shadow: 0 0 0 3px rgba(217,83,79,.18); }
