*{
	box-sizing: border-box;
}
img{
	max-width: 100%;
	max-height: 100%;
}
h1, h2, h3, h4, h5{
	margin: 0;
}
table tr:nth-child(2n){
	background: #f0f0ff;
}

body{
	background: #fafaff;
}
header{
	display: flex;
  justify-content: space-between;
  background: black;
  padding: 10px;
  height: 50px;
	margin-bottom: 10px;
}
#header-logos{
	height: 100%;
}
#header-logos > img{
	margin-right: 10px;
}
.img-invert{
	filter: invert(1);
}

header a.btn{
  display: flex;
  align-items: center;
}

.max{
	margin: auto;
	width: 100%;
	max-width: 500px;
}
dim{
	color: #666;
}


.student-card{
	padding: 20px;
	border: 1px solid #999;
	border-radius: 4px;
	margin-bottom: 40px;
	background: white;
}
.student-card-top{
	display: grid;
	grid-template-columns: 200px 1fr 300px;
	gap: 20px;
}
.student-card-top > img{
	width: 100%;
}
.student-card-top > :last-child{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.student-card-top > :last-child h2{
	font-size: 40px;
}

.cols-2{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
}

.student-credential{
	border: 1px solid #ccc;
	padding: 10px;
	border-radius: 4px;
	/* background-image: linear-gradient(-45deg, #efefff 10%, #efefff 20%, #dde 30%, #f5f5ff 40%, #f5f5ff 50%, #fff 70%); */
	background-size: 200%;
	background-position: 60%;
	margin-bottom: 10px;
	background: #fafafa;
	transition: background-position 250ms ease-in-out;
}


#sign-page{
	max-width: 900px;
	margin: auto;
}
#sign-page h1{
	text-align: center;
}
.signatures-list{

}
.signature{
	border: 1px solid #ccc;
}

.qr-code{
	position: relative;
	display: inline-block;
}
.qr-code canvas{
	display: block;
}
.qr-code-update{
	position: absolute;
	top:0; left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	background: rgba(255, 255, 255, 0.7);
	backdrop-filter: blur(2px);
}
.qr-code:not(.expired) .qr-code-update{
	display: none;
}

.qr-code a{
	position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
