#Calc {
  
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  
  max-width: 800px;
  min-width: 320px;
  
  margin: 0px auto;
  padding: 10px;
  
  border: 3px solid red;
  border-radius: 10px;
  background-color: whitesmoke;
  
}
.InputGRP {
  
  align-self: center;
  height: 100%;
  
}
.InputGRP h2 {
  
  margin: 10px;
  padding: 0px;
  
}

.InputBox {
  
  position: relative;
  display: flex;
  flex-direction: column;
  
  margin: 5px 10px;
  padding: 5px;
  
  border: 1px dotted gray;
  border-radius: 3px;
  
}
.InputBox label {
  
}
input[type=number]
{
  -moz-appearance: textfield;
}
.InputBox input {
  
  text-align: right;
  padding-right: 10px;
  
}
.InputBox input:disabled {
  
  background-color: white;
  
}
#DownPMTCalc {
  
  display: grid;
  grid-template-columns: auto 28%;
  grid-column-gap: 2%;
  
}
.CalcLblBox {
  
  position: relative;
  display: flex;
  
}
.CalcLblBox input{
  
  width: 100%;

  
}
.CalcLblBox .I_Currency, .CalcLblBox .I_Percent {
  
  width: 100%;
  
}
.CalcLblBox .I_Percent {
  
  justify-self: end;
  padding-right: 23px;
  
}
.I_CurrencySYM {
  
  position: absolute;
  left: 6px;
  bottom: 2px;
  
}
.I_PercentSYM {
  
  position: absolute;
  right: 10px;
  bottom: 2px;
  
}
#TimeData {
  
  grid-column-start: 1;
  grid-column-end: span 2;
  
  
  text-align: center;
  
}
#TimeData .InputBox {
  
  max-width: 300px;
  margin: 0px auto;
  
}
#CalcBtn {
  
  min-width: 200px;
  
  margin: 20px 10px 0px 10px;
  padding: 10px;
  
  grid-column-start: 1;
  grid-column-end: span 2;
  
}