body {
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
	margin: 0;
	padding: 20px;
	background: #0d1117;
	color: #e6edf3;
}

h1 {
	margin: 0 0 8px;
}

.summary {
	margin: 0 0 16px;
	font-size: 14px;
	color: #8b949e;
}

a {
	color: #58a6ff;
	text-decoration: none;

	&:hover {
		text-decoration: underline;
	}
}

#grid {
	margin-bottom: 16px;

	/* The Notes cell renderer returns a <details> element, which is block-level
	   by default and anchors to the top of the auto-height cell. Switching to
	   inline-block + vertical-align:middle lets the row's line-box centre it,
	   so the collapsed "<n> notes" summary sits on the same baseline as the
	   other (non-auto-height) cells. */
	.ag-cell[col-id='notes'] details {
		display: inline-block;
		vertical-align: middle;
	}

	details {
		line-height: 1.2;

		summary {
			cursor: pointer;

			&:hover {
				color: #58a6ff;
			}
		}

		ul {
			padding-left: 18px;
			font-size: 0.8rem;
		}

		li {
			margin: 4px 0;
		}
	}
}

#map {
	height: 600px;
	border-radius: 4px;
	overflow: hidden;

	.maplibregl-popup-content {
		background: #161b22;
		color: #e6edf3;
		border: 1px solid #21262d;
		border-radius: 4px;
		padding: 8px 10px;
		font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
		font-size: 13px;
	}

	.maplibregl-popup-tip {
		display: none;
	}

	.maplibregl-ctrl-attrib {
		background: rgba(22, 27, 34, 0.85);
		color: #e6edf3;

		a {
			color: #58a6ff;
		}
	}

	.maplibregl-ctrl-attrib-button {
		/* The button's default white background and dark "i" icon both invert,
		   yielding a dark button with a light icon that matches the page theme. */
		filter: invert(1);
	}
}
