:root {
  --buttons-gap: 20px;

  --input-width: 70px;

  --gap: 2px;

  --grid-template-columns: 71px;
  --grid-template-rows: 65px;

  --border-top: 4px solid #000000;

  --dividend-bg-color: #d7ffd7;
  --quotient-bg-color: #fef2c8;
  --divisor-bg-color: #a8a8e7;

  --subtraction-sign-font-size: 1.25rem;

  --checkbox-input-height: 1.25rem;
  --checkbox-input-width: 1.25rem;
}

/* Inputs */
.inputsContainer {
  display: grid;
  grid-column: 1;
  width: 75%;
  min-width: 100%;
  height: max-content;
  grid-row: 3;
  padding-top: 1rem;
}

.answer-inputs-container {
  transition: 0.7s;
  display: grid;
  margin: 5px;
  margin-right: 0px;
  grid-template-columns: repeat(5, var(--grid-template-columns));
  grid-template-rows: 28px repeat(9, var(--grid-template-rows));
  align-items: center;
  justify-content: center;
  grid-column: 1;
  grid-row: 3;
}

.divisor-container {
  grid-column: 2;
  grid-row: 3;
  display: grid;
  margin: 5px;
  margin-left: 5px;
  align-items: center;
  position: relative;
  grid-template-columns: repeat(4, var(--grid-template-columns));
  grid-template-rows: 28px repeat(2, var(--grid-template-rows)) 50px 1fr;
}

.divisor {
  grid-area: 2;
}

.alternative-quotient-inputs-group {
  padding-top: 5px;
  grid-area: 3;
}

/* Individual Grid */
.alternative-checkboxes-section {
  grid-area: 1/2;
  justify-items: center;
}

.dividend-section {
  display: grid;
  grid-gap: var(--gap);
  grid-template-columns: repeat(4, var(--grid-template-columns));
  align-items: center;
  grid-area: 2/2;
}

.answer-inputs-row-1 {
  grid-area: 3;
}

.answer-inputs-row-2 {
  grid-area: 4/2;
}

.answer-inputs-row-3 {
  grid-area: 5/1;
}

.answer-inputs-row-4 {
  grid-area: 6/2;
}

.answer-inputs-row-5 {
  grid-area: 7/2;
}

.answer-inputs-row-6 {
  grid-area: 8/3;
}

.answer-inputs-row-7 {
  grid-area: 9/3;
}

.answer-inputs-row-8 {
  grid-area: 10/5;
}

/* Division parts */

#alternative-quotient-text {
  text-align: center;
  grid-row: 4;
  grid-column: span 4;
}

#alternative-divisor-text {
  grid-row: 2;
  grid-column: span 2;
  text-align: center;
}

#alternative-dividend-text {
  letter-spacing: 0;
  grid-area: 2/1;
  text-align: left;
}

.buttons-section {
  display: grid;
  margin: 0 auto;
  grid-row: 5;
  grid-column: span 4;
  gap: 14px;
  transition: 0.7s;
}

.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;
}

.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%);
}

/* Lines */
.line {
  border-right: 5px solid rgb(7, 7, 7);
  height: fit-content;
}

.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: var(--input-width);
}

.bordertop5 {
  border-top: var(--border-top);
  width: calc(calc(var(--input-width) + var(--gap)) * 4);
}

.subtraction-sign {
  font-weight: bolder;
  font-size: var(--subtraction-sign-font-size);
}


.checkboxgr1 {
  display: grid;
}

.checkboxgr2 {
  display: none;
}

.standard-quotient-inputs-group {
  display: none;
}

#standard-dividend-text,
#standard-divisor-text,
#standard-quotient-text {
  display: none;
}

/* Responsive */
@media all and (max-width: 767px) {
  :root {
    --input-width: 60px;

    --gap: 1px;

    --grid-template-columns: 61px;
    --grid-template-rows: 60px;

    --border-top: 3px solid #000000;

    --subtraction-sign-font-size: 1rem;
  }

}

@media all and (max-width: 650px) {
  :root {
    --input-width: 50px;

    --grid-template-columns: 51px;
    --grid-template-rows: 48px;
  }

  .buttons-section {
    grid-row: 4;
  }

  .divisor-container {
    grid-template-rows: 28px repeat(2, var(--grid-template-rows)) 1fr;
  }
}

@media all and (max-width: 500px) {
  :root {
    --buttons-gap: 16px;

    --input-width: 40px;

    --grid-template-columns: 41px;
    --grid-template-rows: 38px;

    --checkbox-input-height: 1rem;
    --checkbox-input-width: 1rem;
  }

  .line {
    border-right: 3px solid rgb(7, 7, 7);
  }
}
