/**/

.app-version {
color: gray;
opacity: 0.5; /* Adjust the transparency */
}

.responsive_container {
display: flex;
flex-direction: column;
align-items: center;
width: 100%;
margin: 10px auto;
background-color: #ffffff;
border-radius: 15px;
padding: 10px;
box-sizing: border-box;
box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3);
overflow: hidden; /* Prevent overflow */
}

.tbl_devices {
width: 95%;
max-width: 95%;
border-collapse: collapse;
margin: 20px 0;
font-size: 18px;
text-align: left;
}

.tbl_devices th, .tbl_devices td {
padding: 12px 15px;
border: 1px solid #020030;
word-wrap: break-word; /* Ensure content wraps within cells */
text-align: center; /* Center align text and buttons */
vertical-align: middle; /* Vertically center content */
box-sizing: border-box; /* Include padding and border in the element's total width and height */
font-size: clamp(12px, 2vw, 18px); /* Responsive font size */
}

.tbl_devices th {
background-color: #eff6fc;
color: #333;
}

.tbl_devices tr:nth-child(even) {
background-color: #eff6fc;
}

/* Input styles */
.tbl_devices input[type="text"] {
width: 100%; /* Make input take full width of the cell */
box-sizing: border-box; /* Include padding and border in the element's total width and height */
padding: 8px; /* Add some padding for better appearance */
border: 1px solid #ccc; /* Add border to match table cells */
border-radius: 4px; /* Optional: add rounded corners */
}

/* Button styles */
button.connect {
background-color: #0077b6;
color: white;
border: none;
padding: 10px 20px; /* Specify exact padding values */
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
margin: 4px 2px;
cursor: pointer;
border-radius: 4px;
}

/* Ensure the container takes the full width of its parent */
.container_div {
width: 100%; /* Ensure the container takes the full width */
margin: 10px auto; 
background-color: #ffffff; 
border-radius: 15px; 
padding: 10px;
box-sizing: border-box;
box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3); 
}




/*ui*/
/*colours
#020030
#0077b6
#00b3d8
#90e0ef
#caf0f8
#eff6fc
*/
.fullscreen-overlay {
    display: none; /* Initially hide the div */
    position: fixed; /* Cover the entire screen */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 119, 182, 0.5); /* 50% transparent background color */
    z-index: 1000; /* Ensure it is on top of other elements */
    justify-content: center;
    align-items: center;
}

.popup {
    display: none;
    width: calc(100% - 10px);
    margin: 10px auto;
    background-color: #ffffff;
    border-radius: 15px;
    padding: 10px;
    box-sizing: border-box;
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3);
}

.editbox {
    width: calc(22% - 10px); /* Adjust width to fit 4 edit boxes in a row */
    margin: 0 2px; /* Reduce margin to fit within the container */
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box;
    font-size: 16px;
}

.editbox_error {
    width: calc(22% - 10px); /* Adjust width to fit 4 edit boxes in a row */
    margin: 0 2px; /* Reduce margin to fit within the container */
    padding: 10px;
    border: 1px solid #ff0000; /* Red border to indicate error */
    border-radius: 5px;
    box-sizing: border-box;
    font-size: 16px;
    background-color: #ffe6e6; /* Light red background to highlight error */
}

.dot-separator {
    font-size: 24px;
    margin: 0 2px;
    color: #000;
}


.two_containers_wrapper{
    display: flex;
    justify-content: space-between; 
    gap: 20px; 
    padding: 10px; 
}

.connected_module_span {
    flex: 1;
    background-color: inherit; 
    border-radius: inherit; 
    padding: 10px;
    box-sizing: border-box;
    text-align: center; 
}

.status_div {
display: flex;
justify-content: space-between; 
align-items: center; /* Center items vertically */
width: calc(100% - 10px);
margin: 10px auto; 
background-color: #ffffff; 
border-radius: 15px; 
padding: 10px;
box-sizing: border-box;
box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3); 
gap: auto; 
}

.status_span {
flex: 1;
background-color: inherit; 
border-radius: inherit; 
padding: 10px ;
box-sizing: border-box;
text-align: center; 
padding-left: 1px;
}

.info_icon {
flex: 1;
max-width: 80%; /* Adjust as needed */
max-height: 80%; /* Adjust as needed */
height: 32px; /* Set a fixed height */
padding: 5px ;
}

.field_div {
    margin-bottom: 10px;
}

.label_span {
    font-weight: bold;
    margin-right: 10px;
}

.value_span {
    color: #0077b6;
}


.container_div {
    width: calc(100% - 10px);
    margin: 10px auto; 
    background-color: #ffffff; 
    border-radius: 15px; 
    padding: 10px;
    box-sizing: border-box;
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3); 
}

.scan_buttons_container_div {
    width: calc(100% - 10px);
    margin: 10px auto; 
    background-color: #ffffff; 
    border-radius: 15px; 
    padding: 10px;
    box-sizing: border-box;
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3); 
    display: flex;
    justify-content: center; /* Center the buttons horizontally */
    gap: 10px; /* Optional: Add some space between the buttons */
}

.error_div {
    display: none;
    width: calc(100% - 10px);
    margin: 10px auto;
    background-color: #ffdddd; /* Light red background to indicate error */
    border-radius: 15px;
    padding: 10px;
    box-sizing: border-box;
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3);
    border: 1px solid #ff0000; /* Red border to highlight the error */
}

.success_div {
    display: none;
    width: calc(100% - 10px);
    margin: 10px auto;
    background-color: #caf0f8; /* Light blue background to indicate success */
    border-radius: 15px;
    padding: 10px;
    box-sizing: border-box;
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3);
    border: 1px solid #0077b6; /* Blue border to highlight success */
}

.error_span {
    color: #ff0000; /* Red text color to indicate error */
    font-weight: bold; /* Bold text for emphasis */
}

.success_span {
    color: #0077b6; /* Blue text color to indicate success */
    font-weight: bold; /* Bold text for emphasis */
}

.button_wrapper{
display: flex;
justify-content: space-between;
margin-bottom: 20px; 
}

.gauge_wrapper {
display: flex;
justify-content: space-between;
margin-bottom: 1px; 
}

.button_wrapper_low {
display: flex;
justify-content: space-between;
margin-bottom: 1px; 
}

.round_button {
flex: 1; 
margin: 0 5px;
aspect-ratio: 1;
background-color: #eff6fc; 
border: none; 
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); 
color: #0077b6; /* Text color */
font-weight: bold; /* Make text bold */
}

.round_button_inactive {
    flex: 1; 
    margin: 0 5px;
    aspect-ratio: 1;
    background-color: #d3d3d3; /* Lighter color to indicate inactivity */
    border: none; 
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: not-allowed; /* Change cursor to indicate it's not clickable */
    box-shadow: none; /* Remove box shadow */
    opacity: 0.6; /* Make it slightly transparent */
    font-weight: bold; /* Make text bold */
}

.round_button_active {
    flex: 1; 
    margin: 0 5px;
    aspect-ratio: 1;
    background-color: #d0e1f9; /* Slightly darker background color */
    border: none; 
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: inset 2px 2px 5px rgba(0, 0, 0, 0.3); /* Inset shadow to create pressed effect */
    transform: translateY(2px); /* Slightly move the button down */
}

.square_button {
flex: 1; 
margin: 0 5px;
padding: 15px;
background-color: #eff6fc; 
border: none; 
border-radius: 15px; 
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); 
position: relative; /* Add this for positioning the spinner */
}

.square_button.loading {
cursor: wait; /* Change cursor to indicate loading */
background-color: #d3e2f1; /* Optional: change background color to indicate loading */
}

.square_button .spinner {
display: none; /* Hide spinner by default */
width: 20px;
height: 20px;
border: 3px solid #f3f3f3; /* Light grey */
border-top: 3px solid #0077b6; /* Blue */
border-radius: 50%;
animation: spin 1s linear infinite;
position: absolute; /* Position it in the center */
right: 10px; /* Position it to the right */
}

.square_button.loading .spinner {
display: block; /* Show spinner when loading */
}

@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
.start_scan_button {
    width: 45%; /* Each button takes 45% of the container's width */
    background-color: #90ee90; /* Light green */
    border: none;
    color: black; /* Black text */
    padding: 10px 20px;
    height: 75px; /* Increased height */
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 5px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); /* Box shadow */
}

.stop_scan_button {
    width: 45%; /* Each button takes 45% of the container's width */
    background-color: #ff4c4c; /* Bright red */
    border: none;
    color: black; /* Black text */
    padding: 10px 20px;
    height: 75px; /* Increased height */
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 5px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); /* Box shadow */
}

.scan_button {
    width: 45%; /* Each button takes 45% of the container's width */
    background-color: #eff6fc; /* Light blue */
    border: none;
    color: black; /* Black text */
    padding: 10px 20px;
    height: 75px; /* Increased height */
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 5px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); /* Box shadow */
}

.button_icon {
max-width: 80%; /* Adjust as needed */
max-height: 80%; /* Adjust as needed */
width: auto;
height: auto;
}

.chart_canvas{
width: 100%;
height: auto; 
}

/*onsen ui classes*/
.ons_page_theme_toolbar
{
    background-color: #eff6fc;
}

.ons_page_theme
{
    background-color: #eff6fc;
    border: none;
    height: 100vh;
    width: 100%;
}

.dropdown_select {
width: 100%;
padding: 10px;
border: 1px solid #ccc;
border-radius: 15px;
background-color: #ffffff;
box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3);
box-sizing: border-box;
appearance: none; 
-webkit-appearance: none; 
-moz-appearance: none; 
background-image: url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 10 10"><polygon fill="%23ccc" points="0,0 10,0 5,5"/></svg>');
background-repeat: no-repeat;
background-position: right 10px center;
background-size: 10px;
}


/*  gauges  */
.gauge-container {
  width: auto;
  height: auto;
  padding: auto;
  background-color: #ffffff;
  margin: auto;
  border-radius: 3px;
  position: relative;
  display: flex;
  align-items: center;
}
.gauge-container > .label {
  position: absolute;
  right: 0;
  top: 0;
  display: inline-block;
  background: rgba(0,0,0,0.5);
  font-family: monospace;
  font-size: 10px;
}
.gauge-container > .gauge .dial {
  stroke: #334455;
  stroke-width: 4;
  fill: rgba(0,0,0,0);
}
.gauge-container > .gauge .value {
  stroke: #0077b6;
  stroke-width: 40;
  stroke-linecap: round;
  fill: rgba(0,0,0,0);
}
.gauge-container > .gauge .value-text {
  fill: #0077b6;
  font-family: sans-serif;
  font-weight: bold;
  font-size: 10em;
}

/* ----- Alternate Style 4----- */
.gauge-container.four > .gauge .dial {
  stroke: #eff6fc;
  stroke-width: 80;
}
.gauge-container.four > .gauge .value {
  stroke: #0077b6;
  stroke-dasharray: none;
  stroke-width: 80;
}
.gauge-container.four > .gauge .value-text {
  fill: #0077b6;
  transform: translate3d(26%, 20%, 0);
  display: inline-block;
}
.gauge-container.four .value-text {
  color: #0077b6;
  position: absolute;
  bottom: 18%;
  right: 10%;
  display: inline-block;
  font-family: sans-serif;
  font-weight: bold;
  font-size: 6em;
} 


/* ------- Alternate Style 2------- */
.wrapper {
  height: 100px;
  float: left;
  margin: 7px;
  overflow: hidden;
}
.wrapper > .gauge-container {
  margin: 0;
}
.gauge-container.two {
}
.gauge-container.two > .gauge .dial {
  stroke: #eff6fc;
  stroke-width: 80;
}
.gauge-container.two > .gauge .value {
  stroke: #0077b6;
  stroke-dasharray: none;
  stroke-width: 80;
}
.gauge-container.two > .gauge .value-text {
  fill: #0077b6;
  font-weight: 100;
  font-size: 10em;
}

