@import url('https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic,900');

body {
    margin:0;
    font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif !important;
    font-size:15px !important;
    line-height:22px !important;
    color:#444;
    background-color:#fff;
}

h1, h2, h3 {
    font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif !important;
}

/* Override Bootstrap 5 font sizes to match original appearance */
*, *::before, *::after {
    font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif !important;
}

/* Ensure ALL form controls and inputs use the same font size as body text */
.form-control, .btn, input, select, textarea, button, 
.form-select, .form-check-input, .form-check-label {
    font-size: 15px !important;
    font-family:"Lato","Helvetica Neue",Helvetica,Arial,sans-serif !important;
}

/* Override Bootstrap's default form control sizing */
.form-control {
    font-size: 15px !important;
    padding: 0.375rem 0.75rem !important;
}

/* Ensure labels have consistent sizing */
label, .form-label {
    font-size: 15px !important;
}

/*input[title] {
    cursor: help; 
}
*/
.navbar-brand {
    font-size: 20px;
    font-weight: 900;
}

.xs {
	font-size: 1.0rem;
}

.sm {
	font-size: 1.2rem;
}

.md {
	font-size: 1.4rem;
}

.lg {
	font-size: 1.6rem;
}

/* Wrapping element */
/* Set some basic padding to keep content from hitting the edges */
.body-content {
  padding-left: 15px;
  padding-right: 15px;
}

.form-customise {
    padding-left: 20px;
    padding-top: 20px;
}

.tab-content {
    padding-left: 0px;
    padding-top: 25px;
    padding-bottom: 5px;
    background-color: #f0f0f0;
}

/* Wrapper for individual tab content with grey background and margins */
.tab-content-wrapper {
    background-color: #f0f0f0;
    margin: 10px;
    padding: 10px;
    border-radius: 5px;
}

/* Tab images styling */
.tab-image {
    display: block;
    margin: 0 auto 20px auto;
    max-width: 100%;
}

/* Table section styling */
.table-section {
    margin-top: 20px;
}

/* Table titles styling */
.table-title {
    text-align: center;
    margin: 20px 0 15px 0;
    font-weight: bold;
}

.btn-graph {
    margin: 20px;
    display: inline-block;
    width: auto;
}

.please-wait {
    font-size:2em;
    padding: 20px;
}

.checkbox {
    margin-left: 20px;
}

.checkboxtop{
    margin-top: -5px;
}

.please-wait > img {
    margin: 20px;
}

.img-flux {
    margin-top: 1em;
    margin-bottom: 2em;
}

.img-ppi {
    margin-top: 1em;
    margin-bottom: 2em;
}

.img-spec {
    margin-top: 1em;
    margin-bottom: 2em;
}

.table-flux th, .table-flux td {
    font-size: 0.9em;
    text-align: center;
}

.table-ppi th, .table-ppi td {
    font-size: 0.9em;
    text-align: center;
}

.table-spec th, .table-spec td {
    font-size: 0.9em;
    text-align: center;
}

.padding20 {
    padding: 20px;
}

.checkbox {
    margin-left: 20px;
}

.footer {
    border-top: 1px solid #e7e7e7;
    background-color: #f8f8f8;
    margin-top: 40px;
}

.footer .container {
    //text-align:center;
    padding: 20px;
    color: #666;
    font-size: 14px;
    line-height: 18px;
}

.textbox {
    width: 90px;
    padding: 2px;
    margin: 4px;
    color: #444;
}
div.stats-details  {
    display: inline-block;
    text-decoration: underline;
    margin: 0; 
    padding: 0; 
}

/* Killing arrows in input fields */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type='number'] {
    -moz-appearance: textfield;
}

/* Bootstrap 5 form layout fixes */
.form-customise {
    padding-left: 20px;
    padding-top: 20px;
}

.form-group {
    margin-bottom: 1rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    clear: both;
}

.form-group > [class*="col-"] {
    flex: 0 0 auto;
    padding-right: 0.75rem;
    padding-left: 0.25rem;
    margin-bottom: 0.5rem;
}

.form-group .form-label {
    text-align: right;
    padding-top: 0.375rem;
    margin-bottom: 0;
    font-weight: 500;
}

.form-group .col-lg-1 {
    width: 8.33333333%;
    text-align: center;
}

.form-group .col-lg-2 {
    width: 16.66666667%;
}

.form-group .col-lg-3 {
    width: 25%;
}

.form-group .col-lg-4 {
    width: 33.33333333%;
}

.form-group .col-lg-5 {
    width: 41.66666667%;
}

.form-group .col-lg-10 {
    width: 83.33333333%;
}

.form-group .col-lg-12 {
    width: 100%;
}

.form-group .offset-lg-1 {
    margin-left: 8.33333333%;
}

/* Fix specific layout issues */
.form-group .checkbox {
    display: flex;
    align-items: center;
    padding-top: 0.375rem;
}

.form-group .checkbox input[type="checkbox"] {
    margin-right: 0.5rem;
}

/* Ensure form controls have proper spacing */
.form-control {
    width: 100%;
}
