.source-input-row {
  grid-template-columns: minmax(220px, 1.2fr) minmax(200px, 0.8fr);
}

.source-input-row > .textbook-blank-inputs {
  display: grid;
  gap: 10px;
  margin: 0;
}

.source-input-row > .textbook-blank-inputs label {
  grid-template-columns: 48px minmax(120px, 1fr);
}

.source-input-row > .textbook-blank-inputs small {
  grid-column: 2;
}

@media (max-width: 980px) {
  .source-input-row {
    grid-template-columns: 1fr;
  }

  .source-input-row > .textbook-blank-inputs {
    margin-left: 38px;
  }
}

@media (max-width: 520px) {
  .source-input-row > .textbook-blank-inputs {
    margin-left: 0;
  }
}
