/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Apr 10 2025 | 13:09:02 */
    form {
      max-width: 100%;
      background: #0b3b5b;
      color: #fff;
      padding: 15px;
      border-radius: 8px;
      box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.2); 
    }

    .form-group {
      margin-bottom: 10px;
    }

    .form-group label {
      font-weight: bold;
      margin-bottom: 5px;
      display: block; 
    }

    .form-group input[type="text"],
    .form-group input[type="number"] {
    display: block;
    width: 100%;
    padding: 0.8rem;       
    border: 0.0625rem solid #ccc;      
    border-radius: 0.25rem;  
    }
    
    .form-group input[type="text"]:focus,
    .form-group input[type="number"]:focus {
      background-color: #f1f1f1 !important; 
	}

    .form-group input[type="checkbox"] {
      margin-right: 5px;
      transform: scale(1.2);
      vertical-align: middle;
      cursor: pointer;
    }
    
    .form-group input[type="checkbox"]:hover {
      transform: scale(1.4);
    }

    .button-container {
        padding-top: 10px !important;
        margin-bottom: 25px !important;
    }
    
    #calculate-btn {
      width: 100%;
      background: #f90;
      color: #fff;
      font-size: 1.3rem;
      line-height: 1.5rem;
      padding: 1.25rem 1.5rem;
      border: none;
      border-radius: 0.375rem; 
      cursor: pointer;
    }

    #calculate-btn:hover {
      background: #E68A00;
    }

    .error-message {
    color: #f90;
    font-size: 0.8125rem;               
    display: block;
    }

    .tooltip {
      position: relative;
      display: inline-block;
      margin-left: 0.25rem;
      width: 1.125rem; 
      height: 1.125rem; 
      text-align: center;
      color: #667;
      line-height: 1.125rem;
      border-radius: 50%;
      background-color: #fff;
      border: 0.0625rem #fff;
      font-size: 0.75rem;
      cursor: pointer;
    }

    .tooltip::before {
      content: "?";
    }

    .tooltiptext {
      visibility: hidden;
      width: 12.5rem;
      background-color: #0b3b5b;
      color: #fff;
      text-align: left;
      border-radius: 0.375rem;
      border: solid;
      border-width: thin;
      border-color: #fff;
      padding: 0.5rem;
      position: absolute;
      z-index: 1;
      top: 50%;
      left: 105%;
      transform: translateY(-50%);
      opacity: 0;
      transition: opacity 0.2s;
	}	

    .tooltip:hover .tooltiptext {
      visibility: visible;
      opacity: 1;
    }

    .hidden-section {
      display: none;
      background: #0b3b5b;
      padding: 5px;
      border-radius: 4px;
      margin-top: 5px;
      margin-bottom: -15px;
    }
    
	.results-container {
	  background: #fff;
	  border-radius: 8px;
	  padding: 1rem;
	  margin-top: 1.5rem;
	  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.2);
	}

	.results-container h3 {
	  margin-bottom: 1rem;
	}

	.results-container p {
	  margin: 0.75rem 0;
	  font-size: 1rem;
	}

	.years-retirement, .monthly-target, .required-capital, .missing-capital, .congrats {
	  color: #0b3b5b; 
	  font-weight: bold;
	  font-size: 1.2rem;
	}

	.monthly-savings {
	  color: #f90; 
	  font-weight: bold;
	  font-size: 1.2rem;
	}

@media (max-width: 600px) {
  .years-retirement, .monthly-target, .required-capital, .missing-capital, .monthly-savings, .congrats {
    display: block;
    margin-top: 4px;
  }
}

    #disclaimer {
      font-size: 0.9em;
      margin-top: 20px;
      color: #666;
      max-width: 100%;
    }

    #myChart {
      max-width: 100%;
      height: auto;
      margin-top: 20px;
    }
