:root {
  --buttons-gap: 14px;

  --input-width: 70px;

  --gap: 2px;

  --grid-template-columns: 71px;
  --grid-template-rows: 65px;

  --border-top: 4px solid #000000;

  --subtraction-sign-font-size: 1.25rem;

  --inputs-container-grid-template-column: 250px 1fr;
  --inputs-container-grid-template-rows: 28px var(--grid-template-rows) 650px;

  --checkbox-input-height: 1.25rem;
  --checkbox-input-width: 1.25rem;
}

.inputsContainer {
  display: grid;
  grid-column: 1;
  grid-row: 3;
  min-width: 100%;
  grid-template-columns: var(--inputs-container-grid-template-column);
  grid-template-rows: var(--inputs-container-grid-template-rows);
  height: max-content;
  padding-top: 1rem;
}

/* Individual Grid */
.standard-checkboxes-section {
  grid-column: 2;
  grid-row: 1;
  justify-items: center;
  margin-left: calc(var(--grid-template-columns) + 4px);
  align-items: center;
}

.dividend-section {
  display: grid;
  grid-gap: var(--gap);
  grid-template-columns: repeat(4, var(--grid-template-columns)) 100px;
  align-items: center;
  grid-area: 1/2;
}

.answer-inputs-row-1 {
  grid-area: 2;
}

.answer-inputs-row-2 {
  grid-area: 3/2;
}

.answer-inputs-row-3 {
  grid-area: 4/1;
}

.answer-inputs-row-4 {
  grid-area: 5/2;
}

.answer-inputs-row-5 {
  grid-area: 6/2;
}

.answer-inputs-row-6 {
  grid-area: 7/3;
}

.answer-inputs-row-7 {
  grid-area: 8/3;
}

.answer-inputs-row-8 {
  grid-area: 9/5;
}

.answer-inputs-container {
  transition: 0.7s;
  display: grid;
  padding-top: 5px;
  grid-column: 2;
  grid-row: 3;
  grid-template-columns: repeat(5, var(--grid-template-columns));
  grid-template-rows: repeat(9, var(--grid-template-rows));
  margin-right: auto;
}

.divisor-container {
  margin-left: auto;
  grid-column: 1;
  grid-row: 3;
  display: grid;
  padding-top: 5px;
  padding-right: 5px;
  align-items: center;
  justify-items: end;
  position: relative;
  grid-template-columns: 100px;
  grid-template-rows: var(--grid-template-rows) 1fr;
}

.divisor {
  grid-column: 2;
  grid-row: 1;
  position: relative;
}

.standard-quotient-inputs-group {
  display: grid;
  grid-column: 2;
  grid-row: 2;
  grid-gap: var(--gap);
  margin-left: calc(var(--grid-template-columns) + 4px);
  grid-template-columns: repeat(4, var(--grid-template-columns)) 100px;
  align-items: center;
}

#standard-quotient-text,
#standard-dividend-text {
  text-align: right;
}

#alternative-quotient-text,
#alternative-divisor-text,
#alternative-dividend-text {
  display: none;
}

.buttons-section {
  display: grid;
  grid-row: 2;
  grid-column: span 2;
  gap: var(--buttons-gap);
  transition: 0.7s;
}

.checkbox-input {
  width: var(--checkbox-input-width);
  height: var(--checkbox-input-height);
  background-color: rgb(255, 255, 255);
  border-radius: 50%;
  vertical-align: middle;
  border: 1px solid #070707;
  appearance: none;
  -webkit-appearance: none;
  outline: violet;
  cursor: pointer;
}

.checkbox-input:checked {
  appearance: auto;
  clip-path: circle(50% at 50% 50%);
}

.grid {
  display: grid;
  grid-gap: var(--gap);
  grid-template-columns: repeat(4, var(--grid-template-columns));
  transition: 0.7s;
  justify-items: center;
  align-items: center;
}

/* Lines */
.line {
  border-top: 5px solid rgb(7, 7, 7);
  border-left: 5px solid rgb(7, 7, 7);
  border-start-start-radius: 17px;
  border-right: none;
  height: calc(55px * 2);
}

.bordertop {
  border-top: var(--border-top);
  width: calc(calc(var(--input-width) + var(--gap)) * 2);
}

.bordertop2 {
  border-top: var(--border-top);
  width: calc(calc(var(--input-width) + var(--gap)) * 3);
}

.bordertop4 {
  border-top: var(--border-top);
  width: calc(calc(var(--input-width) + var(--gap)) * 3);
}

.bordertop7 {
  border-top: var(--border-top);
  width: calc(var(--input-width) + var(--gap));
}

.subtraction-sign {
  font-size: var(--subtraction-sign-font-size);
}

/* Checkboxes */
.checkboxgr2 {
  display: grid;
}

.checkboxgr1 {
  display: none;
}

.alternative-quotient-inputs-group {
  display: none;
}

/* Responsive */
@media all and (max-width: 767px) {
  :root {

    --input-width: 60px;

    --gap: 1px;

    --grid-template-columns: 61px;
    --grid-template-rows: 60px;

    --inputs-container-grid-template-column: 170px 1fr;
    --inputs-container-grid-template-rows: 25px var(--grid-template-rows) 600px;
  }

  .standard-quotient-inputs-group {
    grid-template-columns: repeat(4, var(--grid-template-columns));
  }
}

@media all and (max-width: 650px) {
  :root {
    --buttons-gap: 10px;

    --input-width: 50px;

    --grid-template-columns: 51px;
    --grid-template-rows: 48px;

    --border-top: 3px solid #000000;

    --subtraction-sign-font-size: 1rem;

    --inputs-container-grid-template-rows: 20px var(--grid-template-rows) 500px;
    --inputs-container-grid-template-column: 1fr calc(var(--input-width) * 6);
  }

  .line {
    border-top: 3px solid rgb(7, 7, 7);
    border-left: 3px solid rgb(7, 7, 7);
  }
}

@media all and (max-width: 500px) {
  :root {
    --input-width: 40px;

    --grid-template-columns: 41px;
    --grid-template-rows: 38px;

    --inputs-container-grid-template-rows: 20px var(--grid-template-rows) 400px;

    --checkbox-input-height: 1rem;
    --checkbox-input-width: 1rem;
  }

  .divisor-container {
    grid-template-columns: 45px 41px;
  }
}
