/* Zebra striping for table rows */
tbody tr:nth-child(even) td {
	background-color: rgba(0,0,0,0.05);
}
input[type="date"] {
	padding: 0.5rem;
	border: 1.5px solid #4a90e2;
	border-radius: 0.4rem;
	background: #f8fbff;
	color: #234;
	font-size: 1rem;
	font-family: sans-serif;
	box-shadow: 0 1px 4px rgba(50, 90, 150, 0.07);
	transition: border 0.2s, box-shadow 0.2s;
}

input[type="date"]:hover {
	border-color: #357ab8;
	background: #f0f6ff;
}

input[type="date"]:focus {
	border-color: #285a8c;
	background: #eaf2fb;
	outline: none;
	box-shadow: 0 0 0 2px #4a90e233;
}
body {
font-family:sans-serif;
text-align:center;
margin: 0;
padding:0;
}

h1 {
	margin-top:2em;
}


h2 {
	margin-bottom:.3em;
}

h2.inline {
	display:inline;
}
thead {
		position: sticky;
			top: 0;
			z-index: 1;
		background: #b2d2c9;
}
th {
padding:.5rem 0;}

td {
	padding:.25rem;
}


footer {
font-size:12px;color:#777;
}

table {
	width:100%;
	border-collapse: collapse;
}

tbody {
	position: relative;
}

br.mobile {
	display: none;
}

@media (max-width:600px) {
	h1 {
		font-size:1.3rem;
	}
	h2 {
		font-size:1rem;
		margin-bottom: .5rem;
	}
	h3 {
				font-size: .9rem;
	}

	table {
		font-size:10px;
	}
		.modal-content p {
			font-size:.8rem;
		}

}
.buttons {
	display: flex;
	justify-content: center;
	gap: 3px;
}

.buttons button {
	font-size: 12px;
	font-weight: bold;
	padding: 0.4rem .7rem;
	color: #fff;
	background: linear-gradient(180deg, #4a90e2 0%, #357ab8 100%);
	border: none;
	border-radius: 0.2rem;
	box-shadow: 0 2px 6px rgba(50, 90, 150, 0.10);
	letter-spacing: 0.03em;
	transition: background 0.2s, box-shadow 0.2s, transform 0.1s;
	cursor: pointer;
}

.buttons button:disabled,
.buttons button[disabled] {
	opacity: .5;
	pointer-events: none;
}

.buttons button:hover, .buttons button:focus {
	background: linear-gradient(180deg, #357ab8 0%, #4a90e2 100%);
	box-shadow: 0 4px 12px rgba(50, 90, 150, 0.18);
	outline: none;
	transform: translateY(-2px) scale(1.03);
}

.buttons button:active {
	background: #285a8c;
	box-shadow: 0 1px 3px rgba(50, 90, 150, 0.10);
	transform: translateY(1px) scale(0.98);
}

.alert {
background-color:rgb(197, 67, 67); color:#fff;padding:8px;text-align:center;margin-bottom:12px;
font-size:10px;
}

.container {
	padding:0 .5rem;
}

.row {
	display:flex;
	margin-top:1rem;
	justify-content: center;
	gap:.5rem;
}

		    .modal {
		    	display: none;
		    	justify-content:flex-end;
		    	position: fixed;
		    	z-index: 10;
		    	left: 0;
		    	top: 0;
		    	width: 100vw;
		    	height: 100vh;
		    	overflow: auto;
		    	background: rgba(0, 0, 0, 0.4);
		    }
.modal-content {
	background: #fff;
	margin: 01em;
	padding: 1em;
	border-radius: 8px;
	max-width: 500px;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.18);
	position: relative;
	text-align: left;;
}

.modal-content p {
	margin-bottom: .5rem;
	margin-top: 0;
}

.modal-content a {
	color:#3b488c;
}

#infoBtn {
	z-index:100;
}

