#benefits-calculator-wrapper {
  background: #fff;
  border-radius: 5px;
  padding: 20px;
}

#benefits-calculator-wrapper *.mobileonlyblock {
  display: none;
}

#benefits-calculator-wrapper *.exceptmobileblock {
  display: block;
}

#benefits-calculator-wrapper h2 {
  margin: 24px 0 4px 0;
  font-size: 150%;
}

#benefits-calculator-wrapper p {
  margin-top: 8px;
}

#benefits-calculator-wrapper div.row_wrapper {
  width: 90%;
  margin: 10px auto;
  padding: 0px;
  clear: both;
  border: 1px solid #ccc;
}

#benefits-calculator-wrapper div.row_wrapper:after {
  /* Clear floated contents */
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

#benefits-calculator-wrapper div.question {
  width: 73%;
  float: left;
  padding: 4px 2%;
}

#benefits-calculator-wrapper div.answer {
  width: 23%;
  float: right;
  padding: 2px 2%;
  margin: 4px 2% 4px 0;
  background: #eee;
  text-align: center;
}

#benefits-calculator-wrapper div.answer select {
  border: 1px solid #ccc;
}

#benefits-calculator-wrapper div.ndepQ {
  width: 36%;
  float: left;
  padding: 4px;
  margin: 0 1%;
}

#benefits-calculator-wrapper div.ndepQ.newline {
  clear: both;
}

#benefits-calculator-wrapper div.ansndep {
  width: 10%;
  float: left;
  padding: 4px 0;
  margin: 4px 1% 0 1%;
  background: #eee;
  text-align: center;
}

#benefits-calculator-wrapper div.genQ {
  width: 50%;
  float: left;
  padding: 4px 2%;
}

#benefits-calculator-wrapper div.genQ.newline {
  clear: both;
}

#benefits-calculator-wrapper div.ansgen {
  width: 45%;
  float: right;
  margin: 4px 2% 4px 0;
  background: #eee;
  text-align: center;
}

#benefits-calculator-wrapper div.ernieQ {
  width: 58%;
  float: left;
  padding: 4px 2%;
  clear: both;
}

#benefits-calculator-wrapper div.ansernie {
  width: 18%;
  float: right;
  margin: 4px 2% 4px 0;
  background: #eee;
  text-align: center;
}

#benefits-calculator-wrapper div.esaQ {
  float: left;
  width: 100%;
  padding: 4px 2%;
}

#benefits-calculator-wrapper div.ansesa {
  width: 27%;
  float: left;
  margin: 4px 0 4px 4.25%;
  background: #eee;
  text-align: center;
}

#benefits-calculator-wrapper .finalbox {
  border: 1px solid #C0C0C0;
  background-color: #FFFF99;
  color: black;
  font-weight: bold;
}

#benefits-calculator-wrapper .cyanbox {
  border: 1px solid #C0C0C0;
  background-color: #CCFFFF;
  color: black;
  font-weight: bold;
}

#benefits-calculator-wrapper input.autocalc {
  border-width: 2px 8px;
  border-style: solid;
  border-color: white;
}

#benefits-calculator-wrapper input.autocalc:focus {
  border-color: lime;
}

#benefits-calculator-wrapper .lgfont {
  color: lightgrey
}

/* Tweak layout to look OK on small screens (eg: mobile phones) */
@media screen and (max-width: 650px) {
  #benefits-calculator-wrapper *.mobileonlyblock {
    display: block;
    float: left;
  }

  #benefits-calculator-wrapper *.exceptmobileblock {
    display: none;
  }

  #benefits-calculator-wrapper *.mobileonlyclear {
    clear: both;
  }

  #benefits-calculator-wrapper div.question {
    width: 100%;
  }

  #benefits-calculator-wrapper div.answer {
    width: auto;
    float: left;
    margin-left: 10%;
  }

  #benefits-calculator-wrapper div.ndepQ {
    width: 100%;
    clear: both;
  }

  #benefits-calculator-wrapper div.ansndep {
    float: left;
    margin: 0 0 16px 10%;
    width: auto;
  }

  #benefits-calculator-wrapper div.genQ {
    width: 100%;
  }

  #benefits-calculator-wrapper div.ansgen {
    float: left;
    margin-left: 10%;
  }

  #benefits-calculator-wrapper div.ernieQ {
    width: 100%;
  }

  #benefits-calculator-wrapper div.ansernie {
    float: left;
    width: 30%;
  }

  #benefits-calculator-wrapper div.ansernie+div.ansernie {
    margin-left: 2%;
  }

  #benefits-calculator-wrapper div.ansernie.mobileonlyblock {
    float: left;
    margin-left: 10%;
  }

  #benefits-calculator-wrapper div.ansernie.mobileonlyblock+div.ansernie.mobileonlyblock {
    margin-left: 2%;
  }

  #benefits-calculator-wrapper div.ansernie+div.ansernie.mobileonlyclear {
    margin-left: 10%;
  }

  #benefits-calculator-wrapper div.ansernie+div.ernieQ {
    margin-top: 24px;
  }

  #benefits-calculator-wrapper div.ansesa {
    width: 40%;
    float: left;
    margin-left: 10%;
    clear: both;
  }
}

#benefits-calculator-wrapper input[type="date"],
#benefits-calculator-wrapper input[type="datetime-local"],
#benefits-calculator-wrapper input[type="email"],
#benefits-calculator-wrapper input[type="number"],
#benefits-calculator-wrapper input[type="password"],
#benefits-calculator-wrapper input[type="search"],
#benefits-calculator-wrapper input[type="tel"],
#benefits-calculator-wrapper input[type="text"],
#benefits-calculator-wrapper input[type="url"],
#benefits-calculator-wrapper textarea,
#benefits-calculator-wrapper select,
#benefits-calculator-wrapper .select2-container--default .select2-search--dropdown .select2-search__field {
  width: auto;
  padding: 0;
}

#benefits-calculator-wrapper label {
  display: inline;
}


#benefits-calculator-wrapper .btn.btn-success {
  background: #00bf00;
  color: white;
}

#benefits-calculator-wrapper .btn.btn-danger {
  background: #840000;
  color: white;
  padding: var(--button-padding-vertical) var(--button-padding-horizontal) var(--button-padding-vertical) var(--button-padding-horizontal);
}
