body {
	font-family: sans-serif;
	margin: 2em;
	background: #f5f5f5;
}

h1 {
	margin-bottom: 0.2em;
}

h2 {
	border-bottom: 2px solid #ccc;
	padding-bottom: 0.2em;
	margin-top: 2em;
}

table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 2em;
	background: white;
}

th, td {
	padding: 0.5em;
	text-align: left;
	border-bottom: 1px solid #ddd;
	vertical-align: top;
}

.ok {
	color: green;
	font-weight: bold;
}

.fail {
	color: red;
	font-weight: bold;
}

.auth {
	color: #0077cc;
	font-weight: bold;
}

.https {
	color: #555;
	font-size: 0.9em;
}

.https.warning {
	color: orange;
	font-weight: bold;
}

.https.expired {
	color: red;
	font-weight: bold;
}

.time {
	font-size: 0.9em;
	color: #888;
	margin-top: 2em;
}

.summary {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	font-size: 1.1em;
	margin-bottom: 1em;
}

.summary .badge {
	display: inline-block;
	padding: 0.3em 0.7em;
	border-radius: 1em;
	font-weight: bold;
	color: white;
	font-size: 0.95em;
}

.badge.servers {
	background: #666;
}

.badge.ok {
	background: green;
}

.badge.fail {
	background: red;
}

.badge.auth {
	background: #0077cc;
}

/* new block: server info list */
.server-info {
	margin-bottom: 1em;
	padding: 0.5em 1em;
	border-left: 4px solid #ccc;
	background: #ffffff;
	font-size: 0.95em;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.server-info ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.server-info li {
	margin: 0.3em 0;
}

.server-info.stale {
	border-left-color: orange;
	background: #fff6e6;
}
