/*
	genuinePG frontend

	Styles applicable on multiple pages

    @file         global.css
    @copyright    P&G

*/


:root {
	--tF-gray: #C6C6C6;
	--tF-darkGray:#595959;
	--tF-blue: #00468C;
	--tF-orange: #FF6A00;
	--tF-red: #cc0000;
	--PG-blue:#003da7;
	--PG-gray:#f6f6f6;
	--PG-fontBlack:#000;
	--bg-gray: #eee;
	--txt-gray: #999;
	--txt-black: #222;
	--max-width: 600px;
	--min-width: 340px;
}

/* normalize behaviour */
* {box-sizing: border-box; outline: none; text-decoration: none; margin: 0; padding: 0; }
*:focus {outline: none; text-decoration: none;}
:focus:not(:focus-visible){outline: none;}
:focus-visible {outline: 2px solid blue;}

html, body {
	position: relative;
	width: 100%;
	height: 100%;
	border: none;
	user-select: none;
	padding: 0px;
	margin: 0px;
	text-align: center;
}
body {
	max-width: var(--max-width);
	min-width: var(--min-width);
	margin: auto;
}
input, select, textarea, button{font-family:inherit;}


@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 200;
	src: local(''),
		 url('/fonts/Montserrat-ExtraLight.woff2') format('woff2');
}
  
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 300;
	src: local(''),
		 url('/fonts/Montserrat-Light.woff2') format('woff2');
}

@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 400;
	src: local(''),
		 url('/fonts/Montserrat-Regular.woff2') format('woff2');
}

@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 600;
	src: local(''),
		 url('/fonts/Montserrat-SemiBold.woff2') format('woff2');
}


/* ==================== Message modal ==================== */

.message {
	white-space: pre-wrap;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(211, 214, 218, 0.8);
	z-index: 50;
}
.message-box {
	padding: 2.5em;
	max-width: 60%;
	border: solid 1px var(--PG-blue);
	border-radius: 6px 6px 6px 6px;
	background-color:var(--bg-gray);
}



/* ==================== Application specific ==================== */





body{
	text-align: center;
	margin: auto;

	background-color: var(--bg-gray);
	color: var(--PG-fontBlack);
	font-family: Montserrat, Verdana, Geneva, Tahoma, sans-serif;
	font-weight: 400;
	font-size: 15px; /*basis for all `em`*/

}

/* Responsive design, issue with e.e.g scan button on Page_check */
@media only screen and (min-width: 380px){
	body{
		font-size: 16px;
	}
}
@media only screen and (min-width: 410px){
	body{
		font-size: 18px;
	}
}
    

h1 {
	font-family: Montserrat, Verdana, Geneva, Tahoma, sans-serif;
	/* color: var(--PG-blue); */
	font-size: 2em;
	font-weight: 600;
}

h2 {
	font-family: Montserrat, Verdana, Geneva, Tahoma, sans-serif;
	/* color: var(--PG-blue); */  
	font-size: 1.5em;
	font-weight: 400;
	width: 100%;
	border-bottom: 1px solid var(--txt-gray);
	margin-top: 1em;
	margin-bottom: 1em;
}

h3 {
	font-family: Montserrat, Verdana, Geneva, Tahoma, sans-serif;
	/* color: var(--PG-blue); */
	font-size: 1.2em;
	font-weight: 400;
	margin: 0.5em 0em 0.3em 0em;
}

h4 {
	font-family: Montserrat, Verdana, Geneva, Tahoma, sans-serif;
	/* color: var(--PG-blue); */
	font-size: 1em;
	font-weight: 400;
	margin: 0.5em 0em 0.1em 0em;
}

/* Container for items shown on desk */
.page {
	width: 100%;
	padding: 2em;
	padding-top: 6em;
	text-align: left;
	display: flex;
	flex-direction: column;
	overflow-x: hidden;
	overflow-y: auto;
	/*overscroll-behavior-x: contain;  TODO check if behaving as desired? */
}


.cont-row{
	display: flex;
	flex-direction: row;
	align-items: center;
	width: 100%;
}



.btn{
	flex: 1;
	font-size: 1em;
	border-radius: 50vh;
	border: 1px solid var(--PG-blue);
	background-color: white;
	color: var(--PG-blue);
	padding: 0.6em 0.5em 0.5em 0.5em;
	/* height: 41px; */
	height: 2.5em;  /*TODO for responsive hight, change text input fileds*/
}
.btn:not(:last-child) {
	margin-right: 0.5em;
}
.btn-gray {
	background-color:#747272;
	color: white;
	border: none;
	transition: 500ms;
}
.btn-blue {
	background-color: var(--PG-blue);
	color: white;
}

/* ===============================================Managed Device ================================== */
.header {
    margin-top: 3.5rem;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 0 0.1rem;
  }
  .main-body {
    padding: 1.5rem;
  }
  .mainheading {
    text-align: left;
    font-size: x-large;
    color: var(--PG-blue);
    padding-bottom: 0.2rem;
    border-bottom: 0.1rem solid gray;
  }
  .this-device {
    color: black;
    font-weight: 700;
    text-align: left;
    font-size: 1.2rem;
    padding: 0.5rem 0;
  }
  .this-device-container {
    display: flex;
    flex-direction: row;
    padding: 0.2rem 0.5rem;
    background-color: white;
    border-radius: 10px;
    margin-bottom: 0.5rem;
  }
  .device-code {
    text-align: left;
  }
  .sub-desc {
    text-align: left;
  }
  .device-icon {
    padding-right: 0.5rem;
  }
  
  .generated-code {
    padding: 0.5rem 0;
    font-size: 1rem;
    letter-spacing: 0.1rem;
    font-weight: bold;
  }


  /*  =================================loader================================= */
 

  .loader {
    display: flex;
    position: relative;
    top: 30%;
    left: 45%;
    transform: translate(-50%, -50%);
    border: 8px solid #f3f3f3;
    border-radius: 50%;
    border-top: 8px solid var(--PG-blue);
    width: 40px;
    height: 40px;
    -webkit-animation: spin 1.5s linear infinite; /* Safari */
    animation: spin 1.5s linear infinite;
  }

  /* Safari */
  @-webkit-keyframes spin {
    0% {
      -webkit-transform: rotate(0deg);
    }
    100% {
      -webkit-transform: rotate(360deg);
    }
  }

  @keyframes spin {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  .input-txt {
    margin-top: 2em;
    width: 100%;
    text-align: left;
    color: var(--PG-blue);
  }
  .input-txt label {
    margin-left: 10px;
    line-height: 30px;
  }
  .input-txt input {
    line-height: 1.4em;
    width: 100%;
    font-size: 1.4em;
    padding: 0.2em 0.6em 0.2em 0.6em;
    border-radius: 50vh;
    border: 1px solid var(--PG-blue);
  }
  #txt-ean {
    border-radius: 50vh 0px 0px 50vh;
    flex: 2;
  }
  #btn-scanEAN {
    color: white;
    font-size: 1em;
    /* background-color: var(--PG-blue); */
    width: 25%;
    min-width: 90px;
    border-radius: 0px 50vh 50vh 0px;
    height: 2.65em;
    margin-left: -1px;
    border: none;
  }

  #btn-scanEAN.disabled {
    background-color: #747272;
  }

  #btn-scanEAN.enabled {
    background-color: var(--PG-blue);
  }

  .input-info {
    margin-top: 0.4em;
    font-size: 0.9em;
    color: #6d6969;
  }

  #start-buttons {
    margin-top: 3em;
    margin-bottom: 1em;
  }

  #btn-resetSearch {
    color: var(--PG-blue);
    margin-right: 0.5em;
    border: none;
  }

  #box-badlist h2 {
    margin-top: 2em;
    font-size: 1.3em;
  }

  .box-badlistMatch {
    margin-top: 2em;
    display: flex;
    flex-direction: row;
  }

  .box-bl-img {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 5.7em;
    width: 5.7em;
    height: 5.7em;
    padding: none;
    border: 1px solid var(--txt-gray);
    margin-right: 1em;
    overflow: hidden;
  }

  .box-bl-img img {
    width: 105%;
    object-fit: contain;
    margin: -1px;
  }
  .box-bl-text {
    flex: 3;
    overflow-x: auto;
  }
  .bl-text-line {
    display: flex;
    flex-direction: row;
  }
  .bl-comment {
    margin-top: 0.5em;
    font-size: 0.9em;
    font-style: italic;
  }
  .box-bl-text .btn {
    font-size: 0.7em;
    float: right;
    margin: 0.5em 0px 0.5em 0px;
    padding: 0.2em 0.5em;
  }
  .bl-text-label {
    flex: 0 0 4em;
    color: var(--PG-blue);
    font-size: 0.8em;
  }

  footer {
    display: flex;
    flex-direction: row;
    justify-content: center;
    margin-top: 3em;
    font-size: 0.8em;
    color: #6d6969;
    border-top: 1px solid #bbb;
    padding: 0.5em;
    flex-wrap: wrap;
  }
  .btn-footer {
    color: var(--PG-blue);
    /* margin-right: 0.5em; */
    border: none;
    background: none;
  }
  .loading-text {
    font-size: 18px;
  }
  #btn-camera {
    color: white;
    border: none;
    background: none;
    /* margin-right: 8%;
    float: right; */
  }
  .file-picker{
	display: none;
  }

  /* back button common css */
  #btn-back {
    position: absolute;
    margin-top: -8%;
    margin-left: -8px;
    border: none;
    background: none;
    color: var(--PG-blue);
  }