tr.toprow {
  border-bottom: 1px solid darkgray;
}

th, td {
  padding: 0.2em;
  margin: 0em;
  text-align: center;
  font-size: large;
}

th {
  vertical-align: bottom;
}

.leftcolumn {
  border-right: 1px solid darkgray;
  vertical-align: middle;
}

.rightcolumn {
  border-left: 1px solid darkgray;
  text-align: left;
}

.nobr {
  white-space: nowrap;
}

td.response {
  text-align: left;
  white-space: nowrap;
}

td.comment {
  text-align: left;
  white-space: nowrap;
}

td.extras {
  border-left: 1px solid darkgray;
  text-align: left;
  white-space: nowrap;
}

td.largefont {
  font-size: x-large;
}

td.comments {
  text-align: left;
  font-size: large;
}

form {
  padding: 0em;
  margin: 0em;
}

input {
  padding: 0.1em;
  margin: 0em;
}

input[type=submit] {
  padding: 1em;
  border: 0.1em solid blue;
  border-radius: 1.5em;
  background-color: lightblue;
}

input[type=radim].active {
  opacity: 0;
  position: fixed;
  width: 0;
}

label.no, label.maybe, label.yes {
  display: inline-block;
  background-color: #ddd;
  padding: 10px 20px;
  font-family: sans-serif, Arial;
  font-size: 16px;
  border: 2px solid #444;
  border-radius: 4px;
}

input[type="radio"].active:checked + label.yes {
  background-color:#bfb;
  border-color: #4c4;
}

input[type="radio"].active:checked + label.maybe {
  background-color:#fc2;
  border-color: #fb2;
}

input[type="radio"].active:checked + label.no {
  background-color:#fbb;
  border-color: #c44;
}

input[type="text"].comment {
  font-size: large;
}

input[type="number"].extras {
  width: 2em;
  font-size: large;
}

div.check {
  position: relative;
  top: 0px;
  left: 0px;
  width: min-content;
  margin: auto;
}

img.checkmark {
  padding: 0.4em;
  border-radius: 1em;
  position: relative;
  top: 0;
  left: 0;
}

img.plus {
  position: absolute;
  top: 0.1em;
  right: 0.3em;
}

img.primary_maybe {
  background-image: radial-gradient(darkorange 45%, white);
}

img.primary_yes {
  background-image: radial-gradient(green 40%, white);
}
