/* See https://two-wrongs.com/draw-a-tree-structure-with-only-css */

.cfr-drilldown {
  margin-bottom: 1em;
  padding-bottom: .5em;
}

.cfr-drilldown-id {
  position: relative;
  display: table;
}

.cfr-drilldown-id > .form-item {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}

.cfr-drilldown-id::after {
  /* Eat the margins. */
  display: block;
  content: '';
  margin: 300px 0 -300px;
  visibility: hidden;
}

.cfr-drilldown-id > .form-type-select > select.cfr-drilldown-select {
  width: 100%;
}

.cfrapi-child-options_ {
  padding-left: 32px;
  margin-bottom: 1em;
  position: relative;
}

.cfrapi-child-option {
  position: relative;
  margin-left: 32px;
  padding-top: 1em;
  padding-bottom: 1px;
}

.cfrapi-child-option > div:first-child {
  padding-top: 0;
}

.cfrapi-child-option > .__decoration {
  box-sizing: content-box;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -12px;
  width: 8px;
  border-left: 1px dotted #888;
}

.cfrapi-child-option:last-child > .__decoration {
  height: 8px;
  padding-top: 1em;
  bottom: auto;
}

.cfrapi-child-option > .__decoration::before {
  content: '';
  position: absolute;
  display: block;
  border-top: 1px dotted #888;
  width: 8px;
  top: 9px;
  margin-top: 1em;
}

.cfrapi-child-option::before {
  /* Eat the top margins. */
  display: block;
  content: '';
  margin: -300px 0 300px;
  visibility: hidden;
}

.cfrapi-child-option::after {
  /* Eat the bottom margins, but keep 1em. */
  display: block;
  content: '';
  margin: 1em 0 -1em;
  visibility: hidden;
}
