/* GEO Databron – tabelstijl */

.geo-databron-wrapper {
	margin: 20px 0;
	font-family: inherit;
	font-size: 14px;
}

/* Zoekbalk */
.geo-search-bar {
	margin-bottom: 12px;
}

.geo-search-input {
	width: 100%;
	max-width: 400px;
	padding: 8px 12px;
	border: 1px solid #ccc;
	border-radius: 4px;
	font-size: 14px;
	box-sizing: border-box;
	outline-offset: 2px;
}

.geo-search-input:focus {
	border-color: #2c3e50;
	outline: 2px solid rgba(44, 62, 80, 0.25);
}

/* Tabel container */
.geo-table-container {
	overflow-x: auto;
	border: 1px solid #dce1e7;
	border-radius: 4px;
}

.geo-tabel {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
}

/* Koptekst */
.geo-tabel thead tr {
	background-color: #2c3e50;
	color: #fff;
}

.geo-tabel th {
	padding: 10px 14px;
	text-align: left;
	font-weight: 600;
	white-space: nowrap;
	cursor: pointer;
	user-select: none;
	border-right: 1px solid #3d5166;
	transition: background-color 0.15s;
}

.geo-tabel th:last-child {
	border-right: none;
}

.geo-tabel th:hover,
.geo-tabel th:focus {
	background-color: #3d5166;
	outline: none;
}

.geo-sort-icon {
	display: inline-block;
	min-width: 14px;
	font-size: 11px;
}

/* Tabelrijen */
.geo-tabel tbody tr {
	border-bottom: 1px solid #eee;
	transition: background-color 0.1s;
}

.geo-tabel tbody tr:nth-child(even) {
	background-color: #f7f8fa;
}

.geo-tabel tbody tr:hover {
	background-color: #e8f4fd;
}

.geo-tabel td {
	padding: 8px 14px;
	border-right: 1px solid #eee;
	vertical-align: top;
	word-break: break-word;
}

.geo-tabel td:last-child {
	border-right: none;
}

/* Footer: teller + paginering */
.geo-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
}

.geo-count-info {
	font-size: 12px;
	color: #888;
}

.geo-pagination {
	display: flex;
	align-items: center;
	gap: 10px;
}

.geo-page-info {
	font-size: 13px;
	color: #555;
}

.geo-prev-btn,
.geo-next-btn {
	padding: 5px 14px;
	cursor: pointer;
	border: 1px solid #ccc;
	background: #fff;
	border-radius: 3px;
	font-size: 13px;
	transition: background-color 0.15s, color 0.15s;
}

.geo-prev-btn:hover:not(:disabled),
.geo-next-btn:hover:not(:disabled) {
	background-color: #2c3e50;
	color: #fff;
	border-color: #2c3e50;
}

.geo-prev-btn:disabled,
.geo-next-btn:disabled {
	opacity: 0.4;
	cursor: default;
}

/* Fout- en infomeldingen */
.geo-error,
.geo-notice {
	padding: 10px 14px;
	border-radius: 4px;
	font-size: 14px;
	margin: 10px 0;
}

.geo-error {
	background: #fff5f5;
	border: 1px solid #f5c6cb;
	color: #c00;
}

.geo-notice {
	background: #f0f8ff;
	border: 1px solid #bee5eb;
	color: #0c5460;
}
