form#loan_choices {
   background-color: #ffffff;
}
div#loancalc h2, div#loancalc p, div#loancalc div {
   color: #121212;  
}

div#loancalc {
   max-width:100rem; 
   padding-top: 15px;   
}
div.loan_panel {
   margin: 0px;
   padding: 10px 20px;
}
@media(min-width:768px){
   #loan_panel_left {
      border-right: solid 1px #DBDBE1;
    }
}
@media(max-width:767px){
   #loan_panel_left {
      border-bottom: solid 1px #DBDBE1;
      padding-bottom: 30px;
    }
}

/*
  Several element in left panel hav ebeen requested to change order netween desktop
  and mobile. 
  We use a media query later, to rearrange the natural order, at mobile widths; */



div#lh_flex_container {
  display: flex;
  flex-wrap: wrap;
}

div#schedtype_container,
div#left_fotnote,
div#interest_rate_container,
div#interest_rate_addendum,
div#duration_container_left
{
   flex: 1 1 auto;
   width: 100%; 
}

div#loantype_container {
  text-align: center; 
  width: 100%;
  margin: 0 auto;
  border-bottom: 1px solid #DBDBE1;
  padding-top: 5px;
}

div#loantype_container .cell {
   width:23%; 
   margin: 0 10px 0 10px;
   text-align:center;
   display: inline-block;
}


input.loanchoice[type="radio"]  {
   display: none;

}


input.loanchoice[type="radio"]+label{
   height:92px;
   width: 92%;
   display: inline-block;
   margin: 4px 6px 4px 16px;
   padding: 0px;
   border:none;
   background-size: 36px; 
   background-position:left;
   background-repeat:no-repeat;
   cursor:pointer;
}
/*
input.loanchoice[type="radio"]:not(:checked)+label:hover{
   border: solid 1px #57bcb3;
   background-size: calc(100% - 10px);
}
*/
input#loantype_s[type="radio"]+label{
   background-image: url('../images/icon-dollar.svg');
   background-size: 214px; 
}
input#loantype_u[type="radio"]+label{
   background-image: url('../images/icon-dollar.svg');
   background-size: 21px; 
}
input#loantype_c[type="radio"]+label{
   background-image: url('../images/icon-car.svg');
}
input#loantype_h[type="radio"]+label{
   background-image: url('../images/icon-house.svg');
}
/* Just for the wording, not the icon */
input.loanchoice[type="radio"]+label div{
   padding-left: 48px;
   text-align: left;
   line-height:105%;
   display: table-cell;
   height: 92px;
   vertical-align: middle;
}

input#loantype_s[type="radio"]+label div.wide,
  input#loantype_u[type="radio"]+label div.wide {
   padding: 5px 10px 5px 30px;
   
}

.loan_choice_title {
   text-align: center;
   font-size: 20px;
   font-weight: 500;
   margin-bottom: 15px;
}
div#loantype_container div.tab_head {
   background-color: #F5F5F8;
  /* https://stackoverflow.com/questions/22307747/how-do-i-remove-the-bottom-border-of-my-selected-tab */
   position:relative;
   top:1px;
   border-bottom: 1px solid #DBDBE1;
}
div#loantype_container div.tab_head.active {
   background-color: #FFFFFF;   
   border-left: 1px solid #DBDBE1;
   border-top: 1px solid #DBDBE1;
   border-right: 1px solid #DBDBE1;
   border-bottom: 1px solid #FFFFFF;
 
}

/* Swap big & small captions */
div#loantype_container div.wide {
   display: table-cell;
}
div#loantype_container div.narrow {
   display: none;
   padding-top: 5%;
}

ul#calctype_picker {
  margin:15px 0;
  padding:5px;
  width:100%;
  background-color: #ffffff;
  border-radius:50px; 
  line-height:100%;
}
/* Jquery Tabs ui expects the tab headers to be UL-LI. So we must re-style them to overrule listiness */
ul#calctype_picker li {
  list-style-type: none;  
  float: left;
  margin: 5px 5px 5px 5px;
  padding: 10px;
}

ul#calctype_picker li  a {
  border: none;
}
ul#calctype_picker li.ui-state-active a {
  border: 2px solid #000000;
}
ul#calctype_picker a {
  color: #000000;
  background-color: #F5F5F8;
  width:100%;
  border-radius: 5px;
  font-size: 90%;
  text-align: center;
  margin:0;
  padding: 6px 10px;
  text-decoration: none;
  display: block;
  float:left;
  transition:0.3s;
}
ul#calctype_picker li:not(.ui-state-active) a:hover {
   background: #EAEAEA;
   cursor: pointer;
   transition:0.3s;
}
ul#calctype_picker a#tabs_t, ul#calctype_picker a#tabs_r {
   padding: 8px 6px 8px 34px;
   background-size:auto; 
   background-position: 10px 50%;
   background-repeat:no-repeat;
   font-size:1.2em;
   line-height: 120%;
   text-align: left;
}

ul#calctype_picker a#tabs_t{
   background-image: url('../images/icon-bag.svg');
}
ul#calctype_picker a#tabs_r {
   background-image: url('../images/icon-calendar.svg');
}



div#loanvalue_amount_container, div#interest_rate_container,
   div#duration_container_left,
   div#instalment_amount_container,
   div#daves_debug_slider_container 
   {
  margin:10px 0 20px 0;
  position: relative; /* do this so we can position the inner labels & slider */
  height: 100px;
}
div#interest_rate_container
{
  height: 80px;
}
div#duration_container_left
{
   /* We need room for the occasional addendum message */
  height: 160px;
}

div#daves_debug_slider_container 
{
  height: 160px;
  border: 2px dotted red;  /* Only for debug*/
}


div#loanvalue_amount_slider_container {
   width: 100%;
   float:left;
   margin-top:20px;
   margin-right:10px;
}
div#term_container, div#interest_rate_slider_container,
  div#instalment_slider_left_container,
  div#daves_debug_slider_inner_container
 {
   width:100%;
   position: absolute;
   top: 0px;
   left: 0;
}

div#term_slider_calctyper {
   margin-bottom: 15px;  
}

span#interest_rate_label, span#instalment_amount_left_label,
span#term_label,
input#loanvalue_amount_value,
span#loanvalue_amount_value,
span#debug_label,
input#debug_label  {
   position: absolute;
   top: 0px;
   right: 0;
   font-weight: 700;
   
}
div.ui-slider {
   width:100%;
   height:5px;
   margin:15px 30px 5px 0;
 
}
input#loanvalue_amount_value, input#instalment_amount_left_value,
   input#interest_rate_value,
   span#loanvalue_amount_value {
   width: 120px;
   height: 40px;
   float: left;
   text-align: right;
   background-color: #ffffff;
   border-radius: 10px;
   margin: 44px 0 20px 15px;
   padding: 0px 10px;
   border: none;
   color: #000;
   
}

div#loanvalue_amount_slider_container {
  position: absolute;
  top: 30px;
  left: 0px;  
}

input#instalment_amount_left_value{
   margin-top: 65px;   
}
.clearboth{
   clear:both;
}


div.ui-slider.ui-widget-content {
    background-color:#40F169;   
}

div.ui-slider.ui-slider-range-min  {
   background:none!important;
   background-color: #017afd!important;
   border-radius: 0 0 10px 10px;
}

div.ui-slider.ui-state-default, div.ui-slider.ui-widget-content .ui-state-default, div.ui-slider.ui-widget-header .ui-state-default {
   background: #006677;
}

.ui-slider {
    margin-top: 20px;
    height: 7px;
    position: relative;
    border: none;
    background: #ff5b63;
}

/* The pale box which you slide on slider */
div.ui-slider.ui-state-default, div.ui-slider.ui-widget-content .ui-state-default, div.ui-slider.ui-widget-header .ui-state-default {
    background: #ffffff;
    border-radius: 100%;
    outline: none;
    border: 2px solid #ddd;
    position: absolute;
    top: -10px;
    width:30px;
    height: 30px;
    margin-left: -10px;
}

/*
div#loanvalue_amount_slider.ui-slider-handle {
  position: absolute;
  width: 1.0em;
  height: 1.2em;
  left:-1.0em;
  margin-left: -0.6em;
  text-align: center;
  border:none;
}
*/
/* Marker for the nominal interest rate */
.ui-slider-tick-mark{
    display:inline-block;
    width:2px;
    background:#9BC9CC;
    height:18px;
    position:absolute;
    top:-18px;
}

span.labelHolder {
  top: 10px;
  position: relative;
  border: none;
  text-align:center;
  color: #000000;
  
}

div.radio_container div.radio_inner {
  padding:5px;
  margin:10px 0 15px 0;
  background-color: #ffffff;
  border-radius:35px; 
  /* Apr 2025 provisionally remove float
  float: left; 
  */
}

input.radiosmall[type="radio"] {
   display: none;
}

input.radiosmall[type="radio"]+label {
  color: #000000;
  background-color: #F5F5F8;
  width:120px;
  border-radius: 5px;
  text-align: center;
  padding:4px 10px;
  display: inline-block;
  transition:0.3s;
}
input.radiosmall[type="radio"]:not(:checked) + label:hover {
   background: #EAEAEA;
   cursor: pointer;
   transition:0.3s;
}

input.radiosmall[type="radio"]:checked+label {
  border: 2px solid #000000;
}

button#submit {
   background-color: #75BAB3;
   color: #ffffff;
   float: right;
   padding: 8px 30px;
   border-radius: 10px 0 10px 0;
   font-weight: 600;
   border: none;
   transition:0.3s;
}
button#submit:hover{
   background:#1f3c90;
   cursor:pointer;
   transition:0.3s;
}


div#instalment_container, div#xxxterm_container {
  margin:20px 0 30px 0  
}
div#instalment_container {
   display: none;  
}
div#feedback_right {
  margin-top:6px;  
}
/* When the calculation gets extremely wrong */
div#feedback_right .warning{
  display: none;;  
}
#instalment_amount {
   font-size: 24px;
   line-height:30px;
}

#disclaimer_rh {
   display: flex;
   align-items: flex-end;
   flex-wrap: wrap;
}
div#disclaimer_rh span.asterisk  { /* Disclaimer asterisk */
   font-size:115%;
}
div#disclaimer_rh p  {
   font-size:85%;
   line-height: 150%;
}

div#disclaimer_rh #apply_container {
   width:100%;
   text-align:left;
   padding:10px;
   margin:40px 0 20px 0;
}

div#disclaimer_rh a#apply {
   background-color: #23FA66;
   color: #000000;
   padding: 10px 30px;
   border: none;
   border-radius: 5px;
   font-weight: 400;
   font-size:16px;
   transition:0.3s;
   text-decoration: none;
}
div#disclaimer_rh #apply:hover{
   background:#00D931;
   cursor:pointer;
   transition:0.3s;
}

.disabled{
    opacity: 0.0;
    cursor: not-allowed;
    pointer-events: none;
}
.greyed{
    opacity: 0.4;
}

p#term_slider_right_label {
  font-size: 90%;
  margin-top: 10px;
}

/* For the 'excess' warnings (over-reach slider limits)*/
div.subtext, div#term_slider_right_addendum {
   margin-top: 20px;
   font-size: 85%;
   border-radius: 15px;
   background-color: #F5F5F8;
   line-height: 140%;
  
}
div.subtext p {
   padding:15px 15px 10px 15px;
}
div#left_footnote {
   margin-bottom: 15px;
   font-size: 85%;
}
.hidden {display: none;}


div#disclaimer_rh a {
  text-decoration: underline;  
}

span#instalment_amount_1, span#principal_1 {
   font-size:3.1em;  
   font-family: Times, Georgia;
}
.emphasise {
   font-size:112%;  
   font-weight: 700;
}
p.rh_major {
   margin-bottom: 15px;
}
div#loan_panel_right hr {
   border-bottom: 1px solid #DBDBE1;
   margin: 25px 0 25px 0;
}
div#calctype_container h4 {
  margin-top: 13px;  
}

.panel_caption {
   font-size: 1.5em;
   margin: 10px 5px;
}
/*
 For sliders, we show the dtynamic value at right of static label. At small screen widths,
 we have to avoid them clashing.
 
*/
label.slider_label {
   display: inline-block;
   max-width: 72%;  
}
@media(max-width:1080px){
   /*  This size should arrange 3 icons side by side  */
   div#loantype_container {
     width:96%;
     text-align: left;
   }
}
@media(max-width:880px){
   /* this will make them stack one on top of others */
   div#loantype_container .cell {
      width:51%; 
      font-size: 110%;
   }
   div#loantype_container div.tab_head {
      /* At narrower widths, don't style like tabs */
      margin: 10px 5px;
      border: none;
   }
   div#loantype_container div.tab_head.active {
      /* At narrower widths, don't style like tabs */
      margin: 10px 5px;
      border: 3px solid #000000;
   }
   div#loantype_container {
      border-bottom: none;  
   }   
   input.loanchoice[type="radio"]+label{
      height:52px;
   }
   input.loanchoice[type="radio"]+label div{
      padding-left: 60px;
   }
   ul#calctype_picker li {
     min-width: 60%;
     max-width: 80%;  
   }
   ul#calctype_picker a#tabs_t, ul#calctype_picker a#tabs_r {
      /*font-size:0.9em;*/
   }

   /* Swap big & small captions */
   div#loantype_container div.wide {
      display: none;
   }
   div#loantype_container div.narrow {
      display: block;
   }


   div#loan_panel_right {
      background-color: #F5F5F8;
   }
   
   div#schedtype_container {
      order: 4;
   }
   div#left_footnote {
      order: 5;  
   }
}

@media(max-width:680px){
   form#loan_choices ul#calctype_picker {
     font-size:82%;  
   }
   div#loantype_container .cell {
      max-width:90%; 
   }

}

/* At narrow widths the two loan panels have become
   one above the other, not side by side. So we can remove some of the empty spacing.
*/
@media(max-width:500px){
   
 
   div.loan_panel {
      padding: 0 5px !important;
   }
   div#instalment_container, div#term_container {
      margin:20px 15px 30px 0  
   }
   
   div#loantype_container .cell {
     width:90%; 
   }
   
   input.loanchoice[type="radio"]+label{
      font-size: 110%;
      width:140px;
      height:50px; 
      margin: 5px 10px 20px 5px;
   }
   input.loanchoice[type="radio"]+label span{
      padding-top: 70px;
   }

   div#loanvalue_amount_container, div#loanvalue_amount_slider_container, div#instalment_amount_container,
      div#interest_rate_container {
      margin-top:5px;
   }
   input#loanvalue_amount_value, input#instalment_amount_left_value,
   input.radiosmall[type="radio"]+label {
      width:auto;
   }
   div.radio_container div.radio_inner {
      margin-bottom:10px;
   }
   div#left_footnote {
      margin-top: 5px;
      margin-bottom: 5px;
   }
   div.subtext p {
      padding:5px 5px 10px 10px;
   }
   input#loanvalue_amount_value, input#instalment_amount_left_value,
   input#interest_rate_value {
      width: 110px;
      height: 30px;
      margin: 15px 0 15px 10px;
      padding: 0px 10px;
   }

   ul#calctype_picker {
      margin-top:5px;
      margin-bottom: 5px;  
   }

   div.ui-slider.ui-state-default, div.ui-slider.ui-widget-content .ui-state-default, div.ui-slider.ui-widget-header .ui-state-default {
      width:30px;
   }
}



