html {
    height: 100%;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #fafafa;
    color: #333333;
    font-family: "Lato", sans-serif;
    scroll-behavior: smooth;
}

header {
    margin-bottom: 80px;
}

h1 {
    font-size: x-large;
    text-align: center;
}

h2 {
    font-size: larger;
}

h3 {
    font-size: medium;
}

h4 {
    font-size: medium;
}

h1:hover, h2:hover, h3:hover {
    color: #44BBA4;
}


.form-wrap {
    padding: 10px 10px 10px 10px;
    overflow-wrap: break-word;
    box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.1);
    border-radius: 7px;
}

.calculate-button {
    margin: auto;
    display: block;
}

.form-validation {
    color: red;
}

.new {
    color: #fafafa;
    background: #44bba4;
    box-shadow: 0px 1px 10px 0px rgba(68, 187, 164, 0.2);
}

.new:hover {
    margin-top: -2px;
    transition-duration: 0.2s;
}

.footer {
    background: #fafafa;
    color: #333333;
    padding-bottom: 10px;
    margin: auto;
    text-align: center;
}

/* Bootstrap override */

/* Navbar */
.navbar {
    background: #fafafa;
    color: #333333;
    box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.3);
}

.navbar-brand {
    color: #44BBA4;
}

.navbar-brand:hover {
    color: #44BBA4;
}

.navbar .container {
    background: #fafafa;
    color: #333333;
}

/* Button */

.btn-green {
    --bs-btn-color: #fff;
    --bs-btn-bg: #44BBA4;
    --bs-btn-border-color: #1fb89a;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #17917a;
    --bs-btn-hover-border-color: #13806c;
    --bs-btn-focus-shadow-rgb: 59, 184, 159;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #13806c;
    --bs-btn-active-border-color: #107d69;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #13574a;
    --bs-btn-disabled-border-color: #0d4238;
}

.btn-outline-green {
    --bs-btn-color: #44BBA4;
    --bs-btn-border-color: #1fb89a;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #17917a;
    --bs-btn-hover-border-color: #13806c;
    --bs-btn-focus-shadow-rgb: 59, 184, 159;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #13806c;
    --bs-btn-active-border-color: #107d69;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #13574a;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #0d4238;
    --bs-gradient: none;
}

/* Badges */

.text-bg-green {
    background-color: RGBA(68, 187, 164, var(--bs-bg-opacity, 1)) !important;
  }

/* Forms */

.form-check-input {
    border: var(--bs-border-width) solid rgb(117, 117, 117);
}

.form-check-input:focus {
    border-color: #70e0cb;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(24, 163, 136, 0.25);
}

.form-check-input:checked {
    background-color: #70e0cb;
    border-color: #70e0cb;
}

.form-check-input[type=checkbox]:indeterminate {
    background-color: #70e0cb;
    border-color: #70e0cb;
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}

.form-control:focus { 
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    border-color: #70e0cb;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(24, 163, 136, 0.25);
}

.form-select:focus {
    border-color: #70e0cb;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(24, 163, 136, 0.25);
}

.was-validated .form-control:valid,
.form-control.is-valid {
    border-color: #44BBA4;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2344BBA4' d='M2.3 6.73 .6 4.53c-.4-1.04 .46-1.4 1.1-.8l1.1 1.4 3.4-3.8c .6-.63 1.6-.27 1.2 .7l-4 4.6c-.43 .5-.8 .4-1.1 .1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus,
.form-control.is-valid:focus {
    border-color: #44BBA4;
    box-shadow: 0px 1px 10px 0px;
    box-shadow: 0 0 0 0.2rem rgba(68, 187, 164, 0.25);
}

.was-validated .form-control:invalid:focus,
.form-control.is-invalid:focus {
    border-color: var(--bs-form-invalid-border-color);
    box-shadow: 0 0 0 0.2rem rgba(255, 0, 0, 0.25);
}

.was-validated .form-select:valid,
.form-select.is-valid {
    border-color: #44BBA4;
}

.was-validated .form-select:valid:not([multiple]):not([size]),
.was-validated .form-select:valid:not([multiple])[size="1"],
.form-select.is-valid:not([multiple]):not([size]),
.form-select.is-valid:not([multiple])[size="1"] {
    --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2344BBA4' d='M2.3 6.73 .6 4.53c-.4-1.04 .46-1.4 1.1-.8l1.1 1.4 3.4-3.8c .6-.63 1.6-.27 1.2 .7l-4 4.6c-.43 .5-.8 .4-1.1 .1z'/%3e%3c/svg%3e");
    padding-right: 4.125rem;
    background-position: right 0.75rem center, center right 2.25rem;
    background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-select:valid:focus,
.form-select.is-valid:focus {
    box-shadow: 0px 1px 10px 0px;
    box-shadow: 0 0 0 0.2rem rgba(68, 187, 164, 0.25);
}

.was-validated .form-check-input:valid,
.form-check-input.is-valid {
    border-color: #44BBA4;
}

.was-validated .form-check-input:valid:checked,
.form-check-input.is-valid:checked {
    background-color: #44BBA4;
}

.was-validated .form-check-input:valid:focus,
.form-check-input.is-valid:focus {
    box-shadow: 0 0 0 0.2rem rgba(68, 187, 164, 0.25);
}

.was-validated .form-check-input:valid~.form-check-label,
.form-check-input.is-valid~.form-check-label {
    color: #44BBA4;
}


/* nav pills */

.nav-pills {
    padding: 5px;
    background-color: #ececf1;
    border-radius: var(--bs-border-radius);
    --bs-nav-pills-border-radius: var(--bs-border-radius);
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-link-active-bg: #44BBA4;
}

.nav-link {
    display: block;
    padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
    font-size: var(--bs-nav-link-font-size);
    font-weight: var(--bs-nav-link-font-weight);
    color: #333333;
    text-decoration: none;
    background: none;
    border: 0;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.nav-link:hover,
.nav-link:focus {
    color: #44BBA4;
}

.nav-link:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(24, 163, 136, 0.25);
}
/* 
.form-range {
    width: 100%;
    height: 1.5rem;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
  }

.form-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    -webkit-appearance: none;
    appearance: none;
    background-color: #44BBA4;
    border: 0;
    border-radius: 1rem;
    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    -moz-appearance: none;
    appearance: none;
    background-color: #44BBA4;
    border: 0;
    border-radius: 1rem;
    -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.form-range:focus::-webkit-slider-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem #44BBA4;
}

.form-range:focus::-moz-range-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem #44BBA4;
}

.form-range::-webkit-slider-thumb:active {
    background-color: #44BBA4;
}

.form-range::-moz-range-thumb:active {
    background-color: #44BBA4;
} */