@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Arsenal');
/*
@import url('https://fonts.googleapis.com/css?family=Arimo');
@import url('https://fonts.googleapis.com/css2?family=Roboto');
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans");
*/

/* bd.css */

body {
	overflow: hidden;
	padding: 0; margin: 0; 
	top:0; bottom:0; left:0; right:0; 
	background: gray;
}

body, td, center, p, div, .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
    font-family: 'Arsenal', Arial narrow, Arial, Verdana, Helvetica, sans-serif !important;	
}

body, td, center, p, div {
    font-size: 9pt;
}

a         {text-decoration: none;}
a:link    {color: #5050BB;}
a:hover   {color: #FF5050; text-decoration: underline;}
a:visited {color: #5050BB;}

input, select, textarea, select {
    color: #000080;
    background: #E0E0FF;
    border: 1px solid gray;
    border-radius: 3px;
}

*, *::before, *::after {
    box-sizing: border-box;
}
		
.spaScreen {
/*	flex: 1;*/
	display: flex; flex-direction: column; justify-content: flex-start; align-content: stretch;
	margin: 0 auto; padding: 0;
	bottom: 10px; 
	height: 100vh;
	min-width: 180px;
/*	width: 100vw;*/
	width: 100%;
/*	width: 320px;*/
	max-width: 480px;
/*	max-width: 600px;*/
/*	overflow: hidden;*/
	background: white;
}


/* correct ui */
.ui-button .ui-button-text {line-height: 1.0;}


.subTitle {
   font-size: 12pt;
   font-weight: bold;
   color: #C0C0FF;
   filter: shadow(Direction=120, Strength=1, color=000000);
   width: 100%;
 }
.shadow {
   filter: shadow(Direction=120, Strength=1, color=000000);
   width: 100%;
 }
.scrollToTop {
	float: left;
	width: 48px; height: 46px;
	padding: 0px;
	background: #fff url(img/blue_up.gif) no-repeat scroll center center;
	box-shadow: 0px 0px 3px #888;
	border-radius: 15px;
	position: fixed; right:5px; bottom:5px; 
	display: none;
	z-index: 8000;
	transition: all 0.2s linear 0s;
	text-align:center; vertical-align: middle;
}

.bg-default {background: lightGray;}
.bg-primary {background: lightBlue;}
.bg-success {background: lightGreen;}
.bg-warning {background: lightYellow;}
.bg-danger  {background: lightPink;}


/* local menu button */
.localMenuBtn {
	flex: 0;
	border: 1px solid darkGray;	
	border-radius: 3px;
	background: lightGray;
	padding: 1px 2px; 
  margin: 1px;
	cursor: pointer;
	font-size: larger;
/*  overflow: hidden;*/
	vertical-align: middle;
}
.localMenuBtn:hover {
	background: white;
  transform: scale(1.05);
}
.localMenuBtn:focus {	
	border: 1px solid lightblue; 
	background: white;
}
.localMenuBtn:active {
/* transform: translate(0.1em, 0.2em);*/
/*  transform: translate(2px, 2px);*/
  transform: scale(1);
}


.badgeTop {
	position: absolute; top: 2px; right: 2px;
	min-width: 7px; border-radius: 3px; padding: 1px 4px;
	background: pink; color: navy; border: lightGray 1px solid; 
	text-align: center; font-weight: bold; font-size: 12px; line-height: 12px;
}

.blinky {
  animation: blinker 2s linear infinite;
}
@keyframes blinker {
  50% {
    opacity: 0;
  }
}


/* loaders */
.loader {
  border: 8px solid #f3f3f3; /* Light grey */
  border-top: 8px solid #3498db; /* Blue */
  border-radius: 50%;
  width: 64px;
  height: 64px;
  animation: spin 2s linear infinite;
	position: absolute;
	top: 40%;
	left: 50%;    
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.combLoader {	
	flex: 0 1 auto;
	position: absolute;
	top: 30%;
	left: 10%; right: 10%; 
  background-color: none;
	color: red;
	z-index: 99999;
	display: none; flex-direction: column; align-items: stretch; justify-content: flex-start;
	text-align: center;
}
.combSpin {
	border: 6px solid #f3f3f3;
  border-top: 6px solid blue;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  animation: spin 2s linear infinite;
	margin-left: 45%;
}
.combText {
	text-align: center;
	font-size: 1em;
	color: blue;
	font-weight: bold;
	text-shadow: 2px 2px 6px white;
	margin-top: 5px;
}


/* from html */
@media print {
	a[href]:after {
		content: none !important;
	}
}

#divLocMenu {
  display: none; flex-direction: row; align-items: stretch; justify-content: flex-start;  
	position: absolute;
	z-index: 99990;  
  border: 1px solid gray; 
  border-radius: 3px;
  background-color: yellow;
	color: red;  
	top: 30%;
  padding: 0;
}


/* panels */
.titleBar {
	flex: 0;
	position: sticky; 
	top:0; left:0; right:0;
	text-align: left;
	background: navy;
  color: white;
	padding: 2px;
}
.pageTitle {
  font-size: larger;
  font-weight: bold;
  color: white;
  padding-top: 3px;
 }
.infoLine {
	flex: 0;
	padding: 1px 5px; 
	background: lightgray;
	color: black;
  border-top: solid white 1px;
  border-bottom: double darkgray 3px;
}
.connStatus {
	flex: 0; 
  color: white; 
  background: red;
  font-size: smaller;
  padding: 1px 6px;
  text-align: left;
  display: none;
}

.edBar {
	flex: 1;
  display: flex; flex-direction: row; align-items: stretch;  justify-content: flex-start;
	padding: 3px; 
	color: white;
	background: navy; 
}

#tableBd {
  width: 99%;
}

#tableBd row:hover {
  color: white;
  background-color: darkBlue;
}

.dayInfo {
  color: navy;
  font-weight: bold;
}

/* checkbox */ 
.checkbox {
  appearance: none;
  width: 24px;
  aspect-ratio: 1;
  border-radius: 5px;
  border: 2px solid black;
  position: relative;
  transition: all 0.2s ease-in-out;
  display:inline-block;
  vertical-align: middle;
  margin-right: 6px;
}

.checkbox::before {
  font-family: "Quicksand", sans-serif;
  position: absolute;
  bottom: -5px;
  left: 1px;
  content: "✔";
  font-size: 30px;
/*  color: rgb(255, 153, 0);*/
  color: rgb(64, 72, 255);
  transform: scale(0);
  transition: all 0.2s ease-in-out;
}

.checkbox:checked::before {
  animation: zoom 0.5s ease-in-out;
  transform: scale(1);
}

@keyframes zoom {
  0% { transform: scale(0); }
  20% { transform: scale(1.5); }
  40% { transform: scale(0.5); }
  50% { transform: scale(1); }
  70% { transform: scale(1.2); }
  90% { transform: scale(0.8); }
  100% { transform: scale(1); }
}