/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
* {
    -webkit-tap-highlight-color: rgba(0,0,0,0); /* make transparent link selection, adjust last value opacity 0 to 1.0 */
}

:root {
    --primary: #3EA1FF;
}

body {
    -webkit-touch-callout: none;                /* prevent callout to copy image, etc when tap to hold */
    -webkit-text-size-adjust: none;             /* prevent webkit from resizing text to fit */
    -webkit-user-select: none;                  /* prevent copy paste, to allow, change 'none' to 'text' */
    background-color:#E4E4E4;
    background-image:linear-gradient(to bottom, #A7A7A7 0%, #E4E4E4 51%);
    font-family: system-ui, -apple-system, -apple-system-font, 'Segoe UI', 'Roboto', sans-serif;
    font-size:12px;
    height:100vh;
    margin:0px;
    padding:0px;
    /* Padding to avoid the "unsafe" areas behind notches in the screen */
    padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);
    width:100%;
}

select {
    appearance: menulist !important;
    -webkit-appearance: menulist !important;
}

/* Portrait layout (default) */
.app {
    background:url(../img/png/logo.png) no-repeat center top; /* 170px x 200px */
    position:absolute;             /* position in the center of the screen */
    left:50%;
    top:50%;
    height:50px;                   /* text area height */
    width:225px;                   /* text area width */
    text-align:center;
    padding:180px 0px 0px 0px;     /* image height is 200px (bottom 20px are overlapped with text) */
    margin:-115px 0px 0px -112px;  /* offset vertical: half of image height and text area height */
                                   /* offset horizontal: half of text area width */
}

/* Landscape layout (with min-width) */
@media screen and (min-aspect-ratio: 1/1) and (min-width:400px) {
    .app {
        background-position:left center;
        padding:75px 0px 75px 170px;  /* padding-top + padding-bottom + text area = image height */
        margin:-90px 0px 0px -198px;  /* offset vertical: half of image height */
                                      /* offset horizontal: half of image width and text area width */
    }
}

h1 {
    font-size:24px;
    font-weight:normal;
    margin:0px;
    overflow:visible;
    padding:0px;
    text-align:center;
}

.event {
    border-radius:4px;
    color:#FFFFFF;
    font-size:12px;
    margin:0px 30px;
    padding:2px 0px;
}

.event.listening {
    background-color:#333333;
    display:block;
}

.event.received {
    background-color:#4B946A;
    display:none;
}

.bg-color-custom-blue{
    background-color: rgba(13,110,253,1)!important;
}

.bg-color-custom-lightgray{
    background-color: #f5f5f5 !important;
}

.margin-auto{
    margin: auto;
}

.margin-5{
    margin: 5px;
}

.margin-10{
    margin: 10px;
}

.margin-20{
    margin: 20px;
}

.margin-left-10{
    margin-left: 10px;
}

.margin-left-20{
    margin-left: 20px;
}

.margin-right-10{
    margin-right: 10px;
}

.margin-right-20{
    margin-right: 20px;
}

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

.margin-top-10{
    margin-top: 10px;
}

.margin-top-20{
    margin-top: 20px;
}

.margin-top-30{
    margin-top: 20px;
}

.margin-bottom-10{
    margin-bottom: 10px;
}

.margin-bottom-20{
    margin-bottom: 20px;
}

.padding-5{
    padding: 5px;
}

.padding-10{
    padding: 10px;
}

.padding-20{
    padding: 20px;
}

.padding-left-10{
    padding-left: 10px;
}

.padding-left-20{
    padding-left: 20px;
}

.padding-right-10{
    padding-right: 10px;
}

.padding-right-20{
    padding-right: 20px;
}

.padding-top-5{
    padding-top: 5px;
}

.padding-top-10{
    padding-top: 10px;
}

.padding-top-20{
    padding-top: 20px;
}

.padding-bottom-5{
    padding-bottom: 5px;
}

.padding-bottom-10{
    padding-bottom: 10px;
}

.padding-bottom-20{
    padding-bottom: 20px;
}

.padding-tb-10-lr-16{
    padding: 10px 16px;
}

.width-2{
    width: 2%;
}

.width-5{
    width: 5%;
}

.width-10{
    width: 10%;
}

.width-15{
    width: 15%;
}

.width-20{
    width: 20%;
}

.width-25{
    width: 25%;
}

.width-30{
    width: 30%;
}

.width-33{
    width: 33%;
}

.width-35{
    width: 35%;
}

.width-40{
    width: 40%;
}

.width-43{
    width: 43%;
}

.width-45{
    width: 45%;
}

.width-48{
    width: 48%;
}

.width-50{
    width: 50%;
}

.width-55{
    width: 55%;
}

.width-60{
    width: 60%;
}

.width-65{
    width: 65%;
}

.width-70{
    width: 70%;
}

.width-75{
    width: 75%;
}

.width-80{
    width: 80%;
}

.width-85{
    width: 85%;
}

.width-90{
    width: 90%;
}

.width-95{
    width: 95%;
}

.width-10px{
    width: 10px;
}

.width-20px{
    width: 20px;
}

.width-30px{
    width: 30px;
}

.width-40px{
    width: 40px;
}

.width-50px{
    width: 50px;
}

.width-60px{
    width: 60px;
}

.width-70px{
    width: 70px;
}

.width-80px{
    width: 80px;
}

.width-90px{
    width: 90px;
}

.width-100px{
    width: 100px !important;
}

.width-110px{
    width: 110px;
}

.width-120px{
    width: 120px;
}

.width-130px{
    width: 130px;
}

.width-140px{
    width: 140px !important;
}

.width-150px{
    width: 150px;
}

.width-180px{
    width: 180px !important;
}

.width-200px{
    width: 200px;
}

.width-250px{
    width: 250px;
}

.width-260px{
    width: 260px;
}

.width-270px{
    width: 270px;
}

.width-280px{
    width: 280px;
}

.width-290px{
    width: 290px;
}

.width-300px{
    width: 300px;
}

.width-remain-2px{
    width: calc(100% - 2px);
    width: -webkit-calc(100% - 2px);
}

.width-remain-3px{
    width: calc(100% - 3px);
    width: -webkit-calc(100% - 3px);
}

.width-remain-4px{
    width: calc(100% - 4px);
    width: -webkit-calc(100% - 4px);
}

.width-remain-5px{
    width: calc(100% - 5px);
    width: -webkit-calc(100% - 5px);
}

.width-remain-10px{
    width: calc(100% - 10px);
    width: -webkit-calc(100% - 10px);
}

.width-remain-16px{
    width: calc(100% - 16px);
    width: -webkit-calc(100% - 16px);
}

.width-remain-20px{
    width: calc(100% - 20px);
    width: -webkit-calc(100% - 20px);
}

.width-remain-30px{
    width: calc(100% - 30px);
    width: -webkit-calc(100% - 30px);
}

.width-remain-32px{
    width: calc(100% - 32px);
    width: -webkit-calc(100% - 32px);
}

.width-remain-40px{
    width: calc(100% - 40px);
    width: -webkit-calc(100% - 40px);
}

.width-remain-40-50px{
    width: calc(60% - 50px);
    width: -webkit-calc(60% - 50px);
}

.width-remain-50px{
    width: calc(100% - 50px);
    width: -webkit-calc(100% - 50px);
}

.width-remain-60px{
    width: calc(100% - 60px);
    width: -webkit-calc(100% - 60px);
}

.width-remain-70px{
    width: calc(100% - 70px);
    width: -webkit-calc(100% - 70px);
}

.width-remain-80px{
    width: calc(100% - 80px);
    width: -webkit-calc(100% - 80px);
}

.width-remain-90px{
    width: calc(100% - 90px);
    width: -webkit-calc(100% - 90px);
}

.width-remain-100px{
    width: calc(100% - 100px);
    width: -webkit-calc(100% - 100px);
}

.width-remain-110px{
    width: calc(100% - 110px);
    width: -webkit-calc(100% - 110px);
}

.width-remain-120px{
    width: calc(100% - 120px);
    width: -webkit-calc(100% - 120px);
}

.width-remain-130px{
    width: calc(100% - 130px);
    width: -webkit-calc(100% - 130px);
}

.width-remain-140px{
    width: calc(100% - 140px);
    width: -webkit-calc(100% - 140px);
}

.width-remain-150px{
    width: calc(100% - 150px);
    width: -webkit-calc(100% - 150px);
}

.width-remain-160px{
    width: calc(100% - 160px);
    width: -webkit-calc(100% - 160px);
}

.width-remain-170px{
    width: calc(100% - 170px);
    width: -webkit-calc(100% - 170px);
}

.width-remain-180px{
    width: calc(100% - 180px);
    width: -webkit-calc(100% - 180px);
}

.width-remain-190px{
    width: calc(100% - 190px);
    width: -webkit-calc(100% - 190px);
}

.width-remain-200px{
    width: calc(100% - 200px);
    width: -webkit-calc(100% - 200px);
}

.width-remain-210px{
    width: calc(100% - 210px);
    width: -webkit-calc(100% - 210px);
}

.width-remain-220px{
    width: calc(100% - 220px);
    width: -webkit-calc(100% - 220px);
}

.width-remain-230px{
    width: calc(100% - 230px);
    width: -webkit-calc(100% - 230px);
}

.width-remain-240px{
    width: calc(100% - 240px);
    width: -webkit-calc(100% - 240px);
}

.width-remain-250px{
    width: calc(100% - 250px);
    width: -webkit-calc(100% - 250px);
}

.width-remain-300px{
    width: calc(100% - 300px);
    width: -webkit-calc(100% - 300px);
}

.width-remain-310px{
    width: calc(100% - 310px);
    width: -webkit-calc(100% - 310px);
}

.width-remain-320px{
    width: calc(100% - 320px);
    width: -webkit-calc(100% - 320px);
}

.width-remain-330px{
    width: calc(100% - 330px);
    width: -webkit-calc(100% - 330px);
}

.width-remain-480px{
    width: calc(100% - 480px);
    width: -webkit-calc(100% - 480px);
}

.width-remain-490px{
    width: calc(100% - 490px);
    width: -webkit-calc(100% - 490px);
}

.width-remain-500px{
    width: calc(100% - 500px);
    width: -webkit-calc(100% - 500px);
}

.width-remain-510px{
    width: calc(100% - 510px);
    width: -webkit-calc(100% - 510px);
}

.width-remain-520px{
    width: calc(100% - 520px);
    width: -webkit-calc(100% - 520px);
}

.width-remain-530px{
    width: calc(100% - 530px);
    width: -webkit-calc(100% - 530px);
}

.width-remain-540px{
    width: calc(100% - 540px);
    width: -webkit-calc(100% - 540px);
}

.width-remain-550px{
    width: calc(100% - 550px);
    width: -webkit-calc(100% - 550px);
}

.width-remain-560px{
    width: calc(100% - 560px);
    width: -webkit-calc(100% - 560px);
}

.width-remain-570px{
    width: calc(100% - 570px);
    width: -webkit-calc(100% - 570px);
}

.width-remain-580px{
    width: calc(100% - 580px);
    width: -webkit-calc(100% - 580px);
}

.width-remain-590px{
    width: calc(100% - 590px);
    width: -webkit-calc(100% - 590px);
}

.width-remain-600px{
    width: calc(100% - 600px);
    width: -webkit-calc(100% - 600px);
}

.height-50{
    height: 50% !important;
}

.height-100{
    height: 100% !important;
}

.height-5px{
    height: 5px;
}

.height-10px{
    height: 10px;
}

.height-15px{
    height: 15px;
}

.height-20px{
    height: 20px;
}

.height-28px{
    height: 28px;
}

.height-30px{
    height: 30px;
}

.height-36px{
    height: 36px;
}

.height-40px{
    height: 40px;
}

.height-50px{
    height: 50px;
}

.height-60px{
    height: 60px;
}

.height-70px{
    height: 70px;
}

.height-80px{
    height: 80px;
}

.height-90px{
    height: 90px;
}

.height-100px{
    height: 100px;
}

.height-remain-5px{
    height: calc(100% - 5px);
    height: -webkit-calc(100% - 5px);
}

.height-remain-10px{
    height: calc(100% - 10px);
    height: -webkit-calc(100% - 10px);
}

.height-remain-20px{
    height: calc(100% - 20px);
    height: -webkit-calc(100% - 20px);
}

.height-remain-30px{
    height: calc(100% - 30px);
    height: -webkit-calc(100% - 30px);
}

.height-remain-31px{
    height: calc(100% - 31px);
    height: -webkit-calc(100% - 31px);
}

.height-remain-32px{
    height: calc(100% - 32px);
    height: -webkit-calc(100% - 32px);
}

.height-remain-35px{
    height: calc(100% - 35px);
    height: -webkit-calc(100% - 35px);
}

.height-remain-36px{
    height: calc(100% - 36px);
    height: -webkit-calc(100% - 36px);
}

.height-remain-40px{
    height: calc(100% - 40px);
    height: -webkit-calc(100% - 40px);
}

.height-remain-50px{
    height: calc(100% - 50px);
    height: -webkit-calc(100% - 50px);
}

.height-remain-60px{
    height: calc(100% - 60px);
    height: -webkit-calc(100% - 60px);
}

.height-remain-60px{
    height: calc(100% - 60px);
    height: -webkit-calc(100% - 60px);
}

.height-remain-61px{
    height: calc(100% - 61px);
    height: -webkit-calc(100% - 61px);
}

.height-remain-62px{
    height: calc(100% - 62px);
    height: -webkit-calc(100% - 62px);
}

.height-remain-63px{
    height: calc(100% - 63px);
    height: -webkit-calc(100% - 63px);
}

.height-remain-64px{
    height: calc(100% - 64px);
    height: -webkit-calc(100% - 64px);
}

.height-remain-65px{
    height: calc(100% - 65px);
    height: -webkit-calc(100% - 65px);
}

.height-remain-66px{
    height: calc(100% - 66px);
    height: -webkit-calc(100% - 66px);
}

.height-remain-70px{
    height: calc(100% - 70px);
    height: -webkit-calc(100% - 70px);
}

.height-remain-75px{
    height: calc(100% - 75px);
    height: -webkit-calc(100% - 75px);
}

.height-remain-80px{
    height: calc(100% - 80px);
    height: -webkit-calc(100% - 80px);
}

.height-remain-90px{
    height: calc(100% - 90px);
    height: -webkit-calc(100% - 90px);
}

.height-remain-95px{
    height: calc(100% - 95px);
    height: -webkit-calc(100% - 95px);
}

.height-remain-100px{
    height: calc(100% - 100px);
    height: -webkit-calc(100% - 100px);
}

.height-remain-110px{
    height: calc(100% - 110px);
    height: -webkit-calc(100% - 110px);
}

.height-remain-120px{
    height: calc(100% - 120px);
    height: -webkit-calc(100% - 120px);
}

.height-remain-125px{
    height: calc(100% - 125px);
    height: -webkit-calc(100% - 125px);
}

.height-remain-130px{
    height: calc(100% - 130px);
    height: -webkit-calc(100% - 130px);
}

.height-remain-140px{
    height: calc(100% - 140px);
    height: -webkit-calc(100% - 140px);
}

.height-remain-150px{
    height: calc(100% - 150px);
    height: -webkit-calc(100% - 150px);
}

.height-remain-160px{
    height: calc(100% - 160px);
    height: -webkit-calc(100% - 160px);
}

.height-remain-170px{
    height: calc(100% - 170px);
    height: -webkit-calc(100% - 170px);
}

.height-remain-180px{
    height: calc(100% - 180px);
    height: -webkit-calc(100% - 180px);
}

.height-remain-190px{
    height: calc(100% - 190px);
    height: -webkit-calc(100% - 190px);
}

.height-remain-195px{
    height: calc(100% - 195px);
    height: -webkit-calc(100% - 195px);
}

.height-remain-200px{
    height: calc(100% - 200px);
    height: -webkit-calc(100% - 200px);
}

.height-remain-210px{
    height: calc(100% - 210px);
    height: -webkit-calc(100% - 210px);
}

.height-remain-220px{
    height: calc(100% - 220px);
    height: -webkit-calc(100% - 220px);
}

.height-remain-230px{
    height: calc(100% - 230px);
    height: -webkit-calc(100% - 230px);
}

.height-remain-240px{
    height: calc(100% - 240px);
    height: -webkit-calc(100% - 240px);
}

.height-remain-250px{
    height: calc(100% - 250px);
    height: -webkit-calc(100% - 250px);
}

.height-remain-260px{
    height: calc(100% - 260px);
    height: -webkit-calc(100% - 260px);
}

.height-remain-270px{
    height: calc(100% - 270px);
    height: -webkit-calc(100% - 270px);
}

.height-remain-280px{
    height: calc(100% - 280px);
    height: -webkit-calc(100% - 280px);
}

.height-remain-290px{
    height: calc(100% - 290px);
    height: -webkit-calc(100% - 290px);
}

.height-remain-300px{
    height: calc(100% - 300px);
    height: -webkit-calc(100% - 300px);
}

.text-color-white{
    color: white !important;
}

.text-color-black{
    color: black !important;
}

.text-color-lightgray{
    color: lightgray !important;
}

.text-color-gray{
    color: gray !important;
}

.text-color-green{
    color: #009b00 !important;
}

.text-color-red{
    color: red !important;
}

.text-bold{
    font-weight: bold;
}

.text-size-0-8em{
    font-size: 0.8em !important;
}

.text-size-0-9em{
    font-size: 0.9em !important;
}

.text-size-1em{
    font-size: 1em !important;
}

.text-size-1-1em{
    font-size: 1.1em !important;
}

.text-size-1-2em{
    font-size: 1.2em !important;
}

.text-size-1-3em{
    font-size: 1.3em !important;
}

.text-size-1-4em{
    font-size: 1.4em !important;
}

.text-size-1-5em{
    font-size: 1.5em !important;
}

.text-size-1-6em{
    font-size: 1.6em !important;
}

.text-size-2em{
    font-size: 2em !important;
}

.text-style-italic{
    font-style: italic;
}

.line-height-28{
    line-height: 28px;
}

.line-height-30{
    line-height: 30px;
}

.line-height-40{
    line-height: 40px;
}

.custom-icon-color-blue{
    width: 1em !important;
    height: 1em !important;
    background-color: #2878d2;
    -webkit-mask-image: url("../img/svg/icon_box_empty.svg");
    mask-image: url("../img/svg/icon_box_empty.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
    margin: 10px;
}

.custom-icon-color-red{
    width: 1em !important;
    height: 1em !important;
    background-color: #e62474;
    -webkit-mask-image: url("../img/svg/icon_box_empty.svg");
    mask-image: url("../img/svg/icon_box_empty.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
    margin: 10px;
}

.custom-icon-color-green{
    width: 1em !important;
    height: 1em !important;
    background-color: #1ebc21;
    -webkit-mask-image: url("../img/svg/icon_box_empty.svg");
    mask-image: url("../img/svg/icon_box_empty.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
    margin: 10px;
}

.divHide{
    display: none !important;
}

.border-bottom-line-lightgray{
    border-bottom: 1px solid lightgray;
}

.border-bottom-line-gray{
    border-bottom: 1px solid gray;
}

.border-line-lightgray{
    border: 1px solid lightgray;
}

.border-line-customgray{
    border: 1px solid #818181;
}

.border-line-line-lightgray{
    border: 2px solid lightgray;
}

.border-line-lrb-lightgray{
    border-left: 1px solid lightgray;
    border-right: 1px solid lightgray;
    border-bottom: 1px solid lightgray;
}

.border-radius-10px{
    border-radius: 10px;
}

.border-radius-25px{
    border-radius: 25px;
}

.border-radius-10px-25px{
    border-radius: 10px 25px;
}

.border-color-red{
    border-color: red !important;
}

.divCenterContainer{
    text-align: center;
    text-shadow: 0 1px 0 #fff;
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    vertical-align: middle;
    align-items: center;
    justify-content: center;
}

.divCenterContainer span{
    font-size: 2em;
    color: #bbbbbb;
}

.row{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start;
}

.textAreaClass{
    resize: none;
    width: 100%;
    height: 80px;
    border: 1px solid #818181;
    border-radius: 10px;
    font-size: 1em;
    padding: 5px;
}

.inputSmallClass{
    width: 100%;
    border: 1px solid #818181 !Important;
    border-radius: 10px !Important;
    font-size: 1em;
    padding: 3px 6px !Important;
}

.inputClass{
    width: 100%;
    border: 1px solid #818181 !Important;
    border-radius: 10px !Important;
    font-size: 1em;
    padding: 5px !Important;
}

.overflow-y-auto{
    overflow-y: auto;
}

.overflow-y-hidden{
    overflow-y: hidden;
}

.position-relative{
    position: relative !important;
}

.position-absolute{
    position: absolute !important;
}

.position-fixed{
    position: fixed !important;
}

.bottom-10{
    bottom: 10px;
}

.bottom-20{
    bottom: 20px;
}

.left-10{
    left: 10px;
}

.left-20{
    left: 20px;
}

.left-30{
    left: 30px;
}

.left-40{
    left: 40px;
}

.left-50{
    left: 50px;
}

.left-60{
    left: 60px;
}

.left-70{
    left: 70px;
}

.left-80{
    left: 80px;
}

.left-90{
    left: 90px;
}

.left-100{
    left: 100px;
}

.left-180{
    left: 180px;
}

.right-10{
    right: 10px;
}

.right-20{
    right: 20px;
}

.top-10{
    top: 10px;
}

.top-20{
    top: 20px;
}

.disable-touch-action {
    -ms-touch-action: none;
    touch-action: none;
}

i.icon.icon-section-drag{
    width: 1em;
    height: 1em;
    background-color: #000;
    -webkit-mask-image: url("../img/svg/icon_section_drag.svg");
    mask-image: url("../img/svg/icon_section_drag.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
}

i.icon.icon-move-item{
    width: 1em;
    height: 1em;
    background-color: #000;
    -webkit-mask-image: url("../img/svg/icon_move_item.svg");
    mask-image: url("../img/svg/icon_move_item.svg");
    -webkit-mask-size: cover;
    mask-size: cover;
}

.textAreaClass{
    resize: none;
    width: 100%;
    height: 60px;
}

#deviceready.ready .event.listening { display: none; }
#deviceready.ready .event.received { display: block; }

@keyframes fade {
    from { opacity: 1.0; }
    50% { opacity: 0.4; }
    to { opacity: 1.0; }
}

@keyframes popup-appear {
    0% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(0.6);
    }
    50% {
        transform: translate(-50%, -50%) scale(1.1); /* Slight overshoot for a bounce effect */
    }
    100% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
    }
}

@keyframes popup-disappear {
    0% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
    }
    50% {
        transform: translate(-50%, -50%) scale(1.1); /* Slight overshoot for a bounce effect */
    }
    100% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(0.6);
    }
}

.blink {
    animation:fade 3000ms infinite;
    -webkit-animation:fade 3000ms infinite;
}


@media screen and (prefers-color-scheme: dark) {
    body {
        background-image:linear-gradient(to bottom, #585858 0%, #1B1B1B 51%);
    }
}