@import '/styles/quixx/quixx.css';

svg.defs-only {
  display: block;
  position: absolute;
  height: 0;
  width: 0;
  margin: 0;
  padding: 0;
  border: none;
  overflow: hidden;
}

svg {
  stroke: black;
  fill: black;
}

table#rows {
  width: 100vw;
}

table#penalty {
  width: 33.33vw;
}

.score {
  width: 60vw;
}

table#rows span, table#penalty span {
  background-color: white;
  opacity: 0.9;
}

table#rows, table#penalty, .score {
  text-align: center;
  border-spacing: 0;
  table-layout: fixed;
}

table#rows td, table#penalty td, .score td {
  padding: 0;
}

table#rows tbody td, table#penalty td, .score td {
  height: 15vh;
}

table#rows span, table#penalty span, .score span {
  margin: 0.5vw;
  display: block;
  font-size: 5vw;
  font-weight: bold;
  border-radius: 1vmax;
  line-height: 11vh;
}

table#rows svg {
  width: 6vw;
  height: 11vh;
}

table#rows td#lockGroup {
  border: 1px solid black;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
}

table#rows tr td:last-child span {
  border-radius: 15vh;
}

table#penalty td {
  background-color: var(--penalty);
  color: var(--penalty);
}

table#penalty span:before {
  content: "-5";
}

td.red, .red label {
  background-color: var(--red);
  color: var(--red);
}

.red svg {
  fill: var(--red);
}

td.yellow, .yellow label {
  background-color: var(--yellow);
  color: var(--yellow);
}

.yellow svg {
  fill: var(--yellow);
}

td.green, .green label {
  background-color: var(--green);
  color: var(--green);
}

.green svg {
  fill: var(--green);
}

td.blue, .blue label {
  background-color: var(--blue);
  color: var(--blue);
}

.blue svg {
  fill: var(--blue);
}

/* Turn entire label into checkbox. */

.inputContainer {
  display: block;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide default checkbox */

.inputContainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Show selection when checked */

.inputContainer input:checked~span:after {
  display: block;
}

/* Style selection indicator */

.inputContainer span:after {
  display: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: "\D7";
  color: black;
  font-size: 7vw;
}

.inputContainer input:disabled~span {
  background-image: repeating-linear-gradient(45deg, #eee, #eee 0.5vw, #fff 0.5vw, #fff 1vw);
}

/* Handle visibility of locked/unlocked icons */

.inputContainer input:checked~span svg.locked {
  display: inline;
}

.inputContainer input:checked~span svg.unlocked {
  display: none;
}

.inputContainer span svg.locked {
  display: none;
}

.inputContainer span svg.unlocked {
  display: inline;
}

.score span {
  font-size: 3vw;
  line-height: 5.5vh;
}

.score span .header {
  font-size: 2vw;
}

.score__row {
  background-color: lightgray;
}

.score__row span {
  color: white;
  opacity: 0.9;
}

.score__row--red span {
  background-color: var(--red);
}

.score__row--yellow span {
  background-color: var(--yellow);
}

.score__row--green span {
  background-color: var(--green);
}

.score__row--blue span {
  background-color: var(--blue);
}

.score__row--penalty span {
  background-color: var(--penalty);
}

.score__row--total span {
  line-height: 11vh;
  background-color: white;
  color: black;
  font-size: 4vw;
}

table#penalty {
  float: right;
}

button#reset, select {
  width: 16.3vw;
  margin: 0.3vw;
  height: 7.5vh;
  font-size: 2vw;
}