body, label, input, button {
	font-family: -apple-system, sans-serif;
	font-size: 50px;
  background-color: #f6f6f6;
  padding: 0;
  margin: 0;
}

@media screen and (max-width: 640px) {
  body, label, input, button {
	  font-size: 25px;
  }
}

.page,
.colophon {
  font-size: 50%;
  max-width: 25em;
  padding: 1em;
}

.page {
  margin: 2em auto 1em;
  border-radius: 0.5em;
  background-color: white;
}

.colophon {
  margin: 0 auto 1em;
  color: #999;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

.page p,
.page li {
  line-height: 1.5em;
  margin: 1em 0;
}

.page ul,
.page ol {
  margin-left: 0.5em;
  padding-left: 1em;
}

.page a {
  color: #3cf;
}

.message {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0.25em 0;
  text-align: center;
  z-index: 10;
}

#login,
table,
.message,
.page {
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.2);
}

table {
 	border-spacing: 0;
	border-collapse: separate;
  border-radius: 0.5em;
  white-space: nowrap;
  background-color: white;
}

tr {
	height: 2em;
}

tr:last-child td:first-child,
.bottom-left {
  border-radius: 0 0 0 0.5em;
}

tr:last-child td:last-child {
  border-radius: 0 0 0.5em 0;
}

input {
	border-radius: 0.25em;
	border: 0.1em solid #eee;
  padding: 0.25em;
	outline: none;
}

input:focus {
	border-color: #3cf;
}

input::placeholder {
  color: #ccc
}

button,
.button,
input[type="checkbox"] + label {
  position: relative;
  top: 0;
	color: white;
	background-color: #3cf;
	text-align: center;
	padding: 0.25em;
	border: 0;
	border-radius: 0.25em;
	box-shadow: 0 0.1em #09c;
  text-decoration: none;
}

button:disabled {
	background-color: #999;
	box-shadow: 0 0.1em #666;
}

button:active,
.button:active,
input[type="checkbox"] + label:active,
input[type="checkbox"]:checked + label {
	top: 0.1em;
	box-shadow: none;
}

input[type="checkbox"] {
  display: none;
}

input[type="checkbox"] + label:before {
  content:  "\2713\ ";
  color: #3cf;
}

input[type="checkbox"]:checked + label:before {
  color: white;
}