Vorlage:Infobox Kreisverkehr/styles.css

Aus Hist. Verein Herne / Wanne-Eickel
/* ===========================================================
   TemplateStyles für Vorlage:Infobox Kreisverkehr
   Speichern unter:  Vorlage:Infobox Kreisverkehr/styles.css
   Aufgerufen aus:   Vorlage:Infobox Kreisverkehr
   =========================================================== */

.ibkrv {
	float: right;
	clear: right;
	width: 420px;
	max-width: 100%;
	margin: 0 0 1.2em 1.2em;
	background: #ffffff;
	border: 1px solid #e0e0d8;
	border-radius: 12px;
	box-shadow: 0 2px 8px rgba( 0, 0, 0, 0.06 );
	overflow: hidden;
	font-size: 15px;
	line-height: 1.55;
	font-family: sans-serif;
}

/* ---------- Kopfzeile in Hellblau (Verkehrs-Familie) ---------- */
.ibkrv__header {
	background: #d8e8ff;
	color: #1f3d6b;
	font-weight: 500;
	text-align: center;
	padding: 10px 12px;
	font-size: 16px;
	letter-spacing: 0.02em;
}

/* ---------- Hero-Bild ---------- */
.ibkrv__hero {
	background: #f6f4ec;
	padding: 0;
	margin: 0;
	text-align: center;
}
.ibkrv__hero a,
.ibkrv__hero img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}
.ibkrv__caption {
	padding: 8px 16px;
	font-size: 13px;
	color: #6b6b66;
	font-style: italic;
	background: #faf8f1;
	border-bottom: 1px solid #f1efe8;
}

/* ---------- Body ---------- */
.ibkrv__body {
	padding: 14px 16px 12px;
}

.ibkrv__lead {
	font-size: 14px;
	color: #5f5e5a;
	margin: 0 0 12px;
	line-height: 1.55;
}

/* ---------- Badges (Bezirk / Ortsteil / PLZ) ---------- */
.ibkrv__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 14px;
}
.ibkrv__badge {
	display: inline-block;
	font-size: 13px;
	font-weight: 500;
	padding: 3px 11px;
	border-radius: 999px;
	line-height: 1.4;
	white-space: nowrap;
	cursor: help;
}
.ibkrv__badge a,
.ibkrv__badge a:visited {
	color: inherit !important;
	text-decoration: none;
}
.ibkrv__badge--bezirk {
	background: #e1f5ee;
	color: #085041;
}
.ibkrv__badge--ortsteil {
	background: #f1efe8;
	color: #444441;
}
.ibkrv__badge--plz {
	background: #faeeda;
	color: #633806;
}

/* ---------- Datenzeilen ---------- */
.ibkrv__data {
	border-top: 1px solid #f1efe8;
	padding-top: 8px;
	margin-top: 4px;
}
.ibkrv__row {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	padding: 7px 0;
	border-bottom: 1px solid #f7f5ee;
}
.ibkrv__row:last-child {
	border-bottom: none;
}
.ibkrv__icon {
	flex: 0 0 22px;
	font-size: 15px;
	line-height: 1.5;
	text-align: center;
	color: #888780;
	user-select: none;
}
.ibkrv__field {
	flex: 1 1 auto;
	min-width: 0;
}
.ibkrv__label {
	display: block;
	color: #888780;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 1px;
}
.ibkrv__value {
	font-weight: 500;
	color: #2c2c2a;
	font-size: 15px;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.ibkrv__hint {
	font-size: 13px;
	color: #888780;
	margin-top: 2px;
	line-height: 1.45;
	font-weight: 400;
}

/* ---------- Karte ---------- */
.ibkrv__map {
	margin: 14px 0 0;
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid #f1efe8;
}
.ibkrv__map .maps-leaflet,
.ibkrv__map .maps-googlemaps3 {
	border-radius: 8px;
}

/* ---------- Farb-Legende ---------- */
.ibkrv__legend {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 12px;
	padding-top: 8px;
	border-top: 1px solid #f1efe8;
	font-size: 12px;
	color: #888780;
}
.ibkrv__legend-item {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap;
}
.ibkrv__legend-dot {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	flex: 0 0 10px;
}
.ibkrv__legend-dot--bezirk { background: #5DCAA5; }
.ibkrv__legend-dot--ortsteil { background: #B4B2A9; }
.ibkrv__legend-dot--plz { background: #EF9F27; }

/* ---------- Footer ---------- */
.ibkrv__footer {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 10px;
	padding-top: 8px;
	border-top: 1px solid #f1efe8;
	font-size: 12px;
	color: #aaa9a3;
}
.ibkrv__footer a,
.ibkrv__footer a:visited {
	color: #888780;
}
.ibkrv__coords {
	font-variant-numeric: tabular-nums;
}

/* ---------- Responsive ---------- */
@media ( max-width: 720px ) {
	.ibkrv {
		float: none;
		width: 100%;
		margin: 0 0 1em 0;
	}
}

/* ---------- Druckansicht ---------- */
@media print {
	.ibkrv {
		box-shadow: none;
		border: 1px solid #ccc;
		break-inside: avoid;
	}
	.ibkrv__map,
	.ibkrv__footer {
		display: none;
	}
}

/* ---------- Dunkler Modus ---------- */
@media ( prefers-color-scheme: dark ) {
	.ibkrv {
		background: #2c2c2a;
		border-color: #444441;
		box-shadow: none;
	}
	.ibkrv__header { background: #1f3d6b; color: #d8e8ff; }
	.ibkrv__hero { background: #1f1f1d; }
	.ibkrv__caption { background: #232321; color: #b4b2a9; border-color: #444441; }
	.ibkrv__lead { color: #d3d1c7; }
	.ibkrv__value { color: #f1efe8; }
	.ibkrv__hint,
	.ibkrv__label,
	.ibkrv__legend { color: #b4b2a9; }
	.ibkrv__data,
	.ibkrv__map,
	.ibkrv__footer,
	.ibkrv__legend { border-color: #444441; }
	.ibkrv__row { border-bottom-color: #38383640; }
	.ibkrv__badge--bezirk { background: #0f6e56; color: #e1f5ee; }
	.ibkrv__badge--ortsteil { background: #444441; color: #f1efe8; }
	.ibkrv__badge--plz { background: #854f0b; color: #faeeda; }
}