@import url('https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,500,500i,700,700i&display=swap');

body,
html {
    margin: 0;
    padding: 0;
    position: fixed;
    width: 100%; 
    height: 100%;
}

html{
    overflow: hidden;
}

body{
    font-family: 'Roboto', sans-serif;
    box-sizing:border-box;
    background-color:black;
    overflow: hidden;
    font-size: calc(1em + 1vw);
}

*{
    box-sizing: border-box !important;
    -webkit-font-smoothing: antialiased;
}

*:focus {
    outline: none;
    border: 0;
}

svg{
    width:100%;
    height:100%;
}

/* > FORM */
 
label{
    font-weight:500 !important;
}

a{
    color: #75d0f2;
    text-decoration: none;
}

a:hover{
    color: white;
}
 
input[type="radio"] {
    display:none;
}

input[type="radio"] + label span {
    display:inline-block;
    width:19px;
    height:19px;
    margin:-2px 5px 0px 5px;
    vertical-align:middle;
    background:url(assets/png/check_radio_sheet.png) -38px top no-repeat;
    cursor:pointer;
}

input[type="radio"]:checked + label span {
    background:url(assets/png/check_radio_sheet.png) -57px top no-repeat;
}

input[type="checkbox"] {
    display:none;
}

input[type="checkbox"] + label{
    font-weight:normal !important;
}

input[type="checkbox"] + label span {
    display:inline-block;
    width:19px;
    height:19px;
    margin:-2px 5px 0px 5px;
    vertical-align:middle;
    background:url(assets/png/check_radio_sheet.png) -38px top no-repeat;
    cursor:pointer;
    
}

input[type="checkbox"]:checked + label span {
    background:url(assets/png/check_radio_sheet.png) -57px top no-repeat;
}
/* < FORM */

/* > LAYOUT */
.main-container{
    z-index:0;
    display:block;
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    overflow: hidden;

 }
 
.image-container {
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:0;
}

.image-container-slave {
    position: absolute;
    top:0;
    left:50%;
    display:none;
    background-color: black;
}

.move-container {
    position: absolute;
    top:0;
    left:0;
    overflow:visible;
    -moz-box-shadow: inset 0px 25px 80px 0px rgba(0,0,0,0.5);
    -webkit-box-shadow: inset 0px 25px 80px 0px rgba(0,0,0,0.5);
    box-shadow: inset 0px 25px 80px 0px rgba(0,0,0,0.5);
    transition: all 0.4s ease-in-out;
}

.fixed-elements, .fixed-elements-clone {
    position: absolute;
    top:0;
    left:0;
    overflow:visible;
    /* border : 5px solid black; */
}

.fixed-elements-control, .fixed-elements-zooms, .fixed-elements-stickers, .fixed-elements-labels{
    width:100%;
    height:100%
}

.app-main{
    width:100%;
    height:100%;
}

.app-group{
    width:100%;
    height:100%;
    filter: blur(8px) grayscale(1);
    -webkit-filter: blur(8px) grayscale(1);
}

.app.not-visible{
    width:100%;
    height:100%;
    background: url(assets/png/bg-app-not-visible.png) no-repeat center center fixed; 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.app.not-visible .warning{
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-align:center;
    color:black;
    font-size:1.2em;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.app.private{
    width:100%;
    height:100%;
    background: url(assets/png/lock_bg.png) repeat #75d0f2; 
}

.app.private .login{
    display: flex;
    flex-direction: column;
    width:350px;
    max-width:100%;
    height:450px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-align:center;
    color:white;
    border-radius: 10px;
    overflow: hidden;
    padding: 55px 55px 37px 55px;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1), 0 6px 6px rgba(0,0,0,0.1);
    background: rgba(0, 0, 0, 0.2);
}

.app.private .login .title{
    font-size: 1.2em;
    text-transform: uppercase;
    font-weight:600;
    padding-bottom:10px;
}

.app.private .login .subtitle{
    font-size: 0.6em;
    color:rgb(223, 223, 223);
    padding-bottom:20px;
    font-weight:200;
}

.app.private .login .lock{
    width:64px;
    height:64px;
    background: url(assets/png/lock.png);
    margin:auto;
}

.app.private .login .bt.access{
    height:40px;
    line-height:40px;
    margin-top: auto;
    border-radius: 5px;
    background-color: #75d0f2;
    color:white;
    font-size: 0.7em;
    position:relative;
    font-weight:200;
}

.app.private .login .bt.access:hover{
    background-color: #54c4ec;
}

/* < LAYOUT */

/* > ERROR > */
.error.loading-archive{
    width:100%;
    height: 100px;
    line-height: 100px;
    color: #D8000C;
    background-color: #FFBABA;;
    text-align:center;
    margin-top:10px;
    border: 1px solid;
    font-size:0.7em;
}

.error.noImageLoaded{
    position: absolute;
    width:100%;
    height: 100px;
    line-height: 100px;
    color: #D8000C;
    background-color: #FFBABA;;
    text-align:center;
    font-size:0.7em;
    top:50%;
    transform: translateY(-50%);
}
/* > ERROR */

/* > TOP */
.top-center{
    display:table;
    margin:auto;
    width: 100%;
}

.top-right{
    position: absolute;
    display:flex;
    flex-direction: row-reverse;
    top: 0.5em;
    right:0.5rem;
}

.logo-container{
    display:flex;
    position: absolute;
    /*max-width: 250px;
    max-height: 120px; */
    height: 5em;
    width: auto;
    top: 0.5em;
    left: 1em;
    z-index:0;
}

.logo{
    display:flex;
    max-width: 100%;
    max-height: 100%;
    height: auto;
    width:auto;
    margin: 0 0;
    align-content: center;
}

.logo img{
    max-width: 5em;
    max-height: 4em;
    height: auto;
    width:auto;
    margin: auto;
}

.mainlabel{
    display:block;
    position: fixed;
    top:0px;
    left:0px;
    padding-left:0px;
    padding-right:0px;
    width:auto;
    color:black;
    text-align: center;
    font-size: 1em;
    z-index:0;
    text-transform: uppercase;
}

.site{
    display:table;
    text-align: center;
    font-size: 0.8em;
    padding-top:10px;
    color: #fff;
    font-weight: 500;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.75);
    letter-spacing: 0.1em;
    text-transform:uppercase;
    margin:0 auto;
    max-width:50%;
}

.placement{
    display:table;
    text-align: center;
    font-size: 1.1em;
    padding-top:10px;
    color: #fff;
    font-weight: 500;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.75);
    letter-spacing: 0.1em;
    text-transform:uppercase;
    margin:0 auto;
    max-width:50%;
    overflow-wrap: break-word;
}

.altitude{
    display:table;
    font-size: 0.8em;
    color: #fff;
    font-weight: 500;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.75);
    letter-spacing: 0.1em;
    margin:0 auto;
}

.altitude .mountains{
    width: 1.8em;
    height: 1.8em;
    float: left;
    margin-right: 0.5em;
    margin-top: -0.2em;
}

.date-label{
    display: table;
    margin: 0 auto;
}

.date-label .bg{
    width: 8em;
    height: 1.4em;
}

.date-label .txt-svg{
    font-size: 45px;
    font-weight: 500;
    text-transform:uppercase;
    line-height:2em;
}

.date-label.maintenance_color .bg svg path{
    fill:#ff8800;
}

.top-bt{
    /* display:block;
    position:absolute; */
    width:2em;
    height:2em;
    transition: all 0.1s ease-in-out;
    animation: shrink .1s ease-out;
}

.bottom-bt{
    display:block;
    position:absolute;
    width:2em;
    height:2em;
    transition: all 0.1s ease-in-out;
    animation: shrink .1s ease-out;
}

/* 
.expand-bt{
    right: 0.5em;
    top: 0.5em;
}

.share-bt{
    right: 2.5em;
    top: 0.5em;
}

.more-webcams-bt-2{
    right: 6.5em;
    top: 0.5em;
}

.weather-bt{
    right: 1.5em;
    top: 2.2em;
}

.sensor-bt{
    right: 1.5em;
    top: 2.2em;
}

.sensor-bt.empl1{
    right: 3.5em;
    top: 2.2em;
} */

.zoomIn-bt{
    right: 1.5em;
    bottom: 2.2em;
}

.zoomOut-bt{
    right: 0.5em;
    bottom: 0.5em;
}

.skipass-bt{
    display:block;
    position:absolute;
    width:8em;
    height:1.4em;
    transition: all 0.1s ease-in-out;
    animation: fade-in-right .1s ease-out;
    right: 0em;
    top: 5em;
    transform:translateX(5%);
}

.skipass-bt:hover{
    transform:translateX(0%);
}

.skipass-bt .txt-svg{
    font-size: 45px;
    font-weight: 500;
    text-transform: uppercase;
    line-height: 2em;
}

.more-webcams-bt{
    display: table;
    margin: 0 auto;
    font-size: 0.5em;
    padding-top: 10px;
    color: #333;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.more-webcams-bt div{
    display: table;
    margin: 0 auto;
    width: 1.8em;
    height: 1.8em;
    transition: all 0.1s ease-in-out;
}

.more-webcams-bt div:hover{
    width: 2em;
    height: 2em;
}

/* < TOP */

/* > OTHER UI */
.icon{
    cursor:pointer;
    transition: all 0.1s ease-in-out;
}

.icon:hover{
    transform: scale(1.1);
}


.loading{
    z-index:3;
    display:block;
    position: absolute;
    top: calc(50% - 83px);
    left: calc(50% - 83px);
    width: 166px;
    height: 166px;
}

.loading .text{
    float:left;
    width:100%;
    line-height:30px;
    height:30px;
    color:white;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    position: absolute;
    left: calc(50% - 110px);
    width: 220px;
}

.loading .percent{
    float: left;
    width: 50px;
    margin-top: 0px;
    line-height: 30px;
    margin-left: 65px;
    font-weight: 400;
    height: 30px;
    color: white;
}

.nohighlight{
  -webkit-touch-callout: none; 
    -webkit-user-select: none; 
     -khtml-user-select: none; 
       -moz-user-select: none;
        -ms-user-select: none; 
            user-select: none;
}

.rotate90{
    transform: rotateZ(90deg);
}

.svg-container {
    display: inline-block;
    position: relative;
    width: 100%;
    padding-bottom: 100%;
    vertical-align: middle;
    overflow: hidden;
}

.cl-banner{
    font-size: 0.6em;
    background-color: rgba(0,0,0,0.6);
}

.cl-banner a{
    font-size:0.8em;
}

/* > THEMING */ 
.txt-grey{
    color: white;
    background: -webkit-linear-gradient(#ffffff, #d3d3d3);
    -webkit-background-clip: text;
    background-clip: text;  
}

.nidtop{
    position: absolute;
    width: 10em;
    height: 7.5em;
    top: 0px;
    left: 0px;
    fill:#FFFFFF;
    opacity:0.2;
}


/* .nidbottom{
    position: absolute;
    bottom: 0px;
    right: 0px;
    width: 10em;
    height: 7.5em;
    fill:#FFFFFF;
    opacity:0.2;
} */

.hexagon{
    position: absolute;
    width: 1.1em;
    height: 1.1em;
} 

.hexagon.top-left1{
    left: 6.9em;
    top: 1em;
}

.hexagon.top-left2{
    left: 3em;
    top: 6em;
}

.hexagon.bottom1{
    left: 5.5em;
    bottom: 2.5em;
}

.hexagon.bottom2{
    left: 10em;
    bottom: 1.2em;
}

.hexagon.top-right1{
    right: 5em;
    top: 0.5em;
}

.hexagon.top-right2{
    right: 2.5em;
    top: 4em;
}

.hexagon.top-right1, .hexagon.top-right2 {
    display:none;
}
/* < THEMING */


/* > MENU */
.menu-container{
    width: 200px;
    display: block;
    height: auto;
    max-height: 350px;
    max-width: 200px;
    position: absolute;
    right: -120px;
    top: -moz-calc(50% - 135px);
    top: -webkit-calc(50% - 135px);
    top: calc(50% - 135px);
}

.menu-bt{
    display: inline-block;
    width: 4em;
    height: 4.4em;
    position:absolute;
    left:0.5em;
    bottom:0.8em;
    animation: shrink 0.1s ease-out
}

.menu-bt .menu-center{
    /* animation: heartbeat infinite 2s 4s ease-in-out; */
    transition: all .1s ease-in-out;
    transform-origin: center;
}

.menu-bt .menu-center.scaleL{
    transform: scale(1.2) !important;
}

.menu-bt .menu-center.scale{
    transform: scale(1) !important;
}

.menu-main .disabled{
    cursor:default;
    opacity:0.8;
}

.feature-bt{
    display:block;
    width: 3.2em;
    height: 3.5em;
    position:absolute;
}

.archive-bt{
    left: 2.9em;
    bottom: 4.6em;
    transition: all 0.1s ease-in-out;
    animation: shrink 0.1s ease-out;
}

.archive-bt.exit{
    animation: shrink-out 0.1s ease-out forwards;
}

.live-bt{
    left: 1.1em;
    bottom: 7.7em;
    transition: all 0.1s ease-in-out;
    animation: shrink 0.1s ease-out;
}

.live-bt.exit{
    animation: shrink-out 0.1s ease-out forwards;
}


.switch-bt{
    right: 0.5em;
    bottom: 0.8em;
    transition: all 0.1s ease-in-out;
    animation: shrink 0.1s ease-out;
}

.switch-bt.exit{
    animation: shrink-out 0.1s ease-out forwards;
}


.compare-bt{
    left: 2.8em;
    bottom: 10.8em;
    transition: all 0.1s ease-in-out;
    animation: shrink 0.1s ease-out;
}


.compare-bt.exit{
    animation: shrink-out 0.1s ease-out forwards;
}

.timelapse-bt{
    left: 4.6em;
    bottom: 7.7em;
    transition: all 0.1s ease-in-out;
    animation: shrink 0.1s ease-out;
}

.timelapse-bt.exit{
    animation: shrink-out 0.1s ease-out forwards;
}

.download-bt.bottom-bt{
    left:6.4em;
    bottom: 4.6em;
    transition: all 0.1s ease-in-out;
    animation: shrink 0.1s ease-out;
}

.download-bt.top-bt{
    right: 4.5em !important;
    top: 0.5em !important;
}

.download-bt.exit{
    animation: shrink-out 0.1s ease-out forwards;
}

/* < MENU */

/* > ARCHIVE */
.archive-container{
    position:absolute;
    max-width:70%;
    width:70%;
    height:auto;
    max-height: 70%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    padding:30px;
}

.archive-main{
    border-left: 3px solid;
    padding-left:5px;
    padding-right:5px;
}

.archive-main .month{
    margin-top: auto;
}

.archive-main .flex{
    display: flex;
    justify-content: space-between;
}

.archive-main .day{
    margin-top: auto;
    padding-bottom:5px
}

.archive-main .hour{
    margin-top: auto;
}

.archive-main .sides{
    margin-bottom:10px;
}

.archive-main .compare-side{
    display: inline-table;
    width:49%;
    height: 2em;
    text-transform: uppercase;
    font-size: 0.7em;
    line-height: 2em;
    font-weight: 500;
    text-align:center;
    border-radius:2em;
    cursor:pointer;
}

.archive-main .compare-side.selected{
    color: white;
}

.archive-backtolive{
    display:block;
    width: 1.8em;
    height: 1.8em;
    margin: 0 auto;
    z-index: -1;
    transition: all 0.1s ease-in-out;
}

.archive-backtolive:hover {  
    transform:scale(1.1);
}

.date-label .prev-image{
    display:block;
    width: 1.6em;
    height: 2.2em;
    margin-top: -0.23em;
    margin-left: -1.2em;
    position: absolute;
    z-index: -1;
    transition: all 0.1s ease-in-out;
}


.date-label .next-image{
    display:block;
    width: 1.6em;
    height: 2.2em;
    margin-top: -0.23em;
    margin-left: 7.45em;
    position: absolute;
    z-index: -1;
    transition: all 0.1s ease-in-out;
}

.date-label .prev-image:hover, 
.date-label .next-image:hover {  
    transform:scale(1.1);
}

.list-months{
    text-transform: uppercase;
    font-size:0.7em;
    font-weight: 400;
    font-family: 'Roboto', sans-serif;
    margin-bottom: 15px;
    padding-bottom: 10px;
    max-width:100%;
    width:100%;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}

.month .yearn1{
    text-align: right;
    padding-right: 10px;
}

.month .year{
    text-align: left;
    padding-left: 10px;
}


.month .selector{
    padding-left: 10px;
    padding-right: 10px;
    border-radius: 2em;
}

.month .selector.current{
    background: linear-gradient(to right,#333, #000);
    padding-left: 10px;
    padding-right: 10px;
    color: white;
}

.month .selector:hover, .month .selected{
    color: white;
}

.month.last{
    padding-right: 10px;
    border-width: 0;
    border-right: 1px solid;
    border-image: linear-gradient(to bottom, #fff,#d3d3d3) 0 100%;
    -moz-border-image:  -moz-linear-gradient(to bottom, #fff,#d3d3d3) 0 100%;
    -webkit-border-image:  -webkit-linear-gradient(to bottom, #fff,#d3d3d3) 0 100%;
    -o-border-image: -olinear-gradient(to bottom, #fff,#d3d3d3) 0 100%;
}

.month.first{
    padding-left: 10px;
}

.list-days{
    text-transform: uppercase;
    font-size: 0.7em;
    font-weight: 400;
    font-family: 'Roboto', sans-serif;
    padding-bottom: 10px;
    max-width:100%;
    width:100%;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}

.day .selector:hover, .day .selected{
    color: white;
}

.day .selector{
    padding-left: 8px;
    padding-right: 8px; 
    text-align: center;
    border-radius: 2em;
}

.day .disabled{
    background-image:none;
    text-shadow: 0 0 2px #fff;
    cursor: default;
    opacity:0.5;
}
.day .selector.disabled:hover{
    background-image:none !important;
    color: transparent;
}

.hours .list-hours-container{
    height:115px;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    width:100%;
}

.list-hours{
    margin-top:42px;
    padding-left: 5px;
}

.list-hours > div{
    display:flex;
    /* justify-content: space-evenly; */
}

.prev-day, .next-day, .prev-hour, .next-hour{
    height: auto;
    width: 2.2%;
    justify-content: center;
    display: flex;
}

.prev-day, .next-day{
    align-self: flex-end;
}

.blur-container{
    display:block;
    width:48px;
    height:40px;
    background:transparent;
    -webkit-filter: blur(5px);
    -moz-filter: blur(5px);
    -o-filter: blur(5px);
    -ms-filter: blur(5px);
    filter: blur(5px);
    position:absolute;
}

.hour{
    position: relative;
    height: 60px;
    width: calc(100% / 25);
    min-width: 48px;
}

.hour:nth-child(25){
    width: 30px;
    min-width: 30px;
}

.selector .available {
    width:100%;
    height: 30px;
}


.hour .sun{
    display:block;
    width:48px;
    height:32px;
    margin-top:-35px;
    margin-left:2px;
    transform:translateX(-50%);
    position:absolute;
    background-repeat: no-repeat;
    background-position: center;
}

.hour .sun.sunrise{
    background-image: url("assets/svg/sunup.svg");
}

.hour .sun.sunset{
    background-image: url("assets/svg/sundown.svg");
}

.hour-border{
    height:15px;
    width:2px;
    margin-top:30px;
    border-left:1px solid;
    border-image: linear-gradient(to bottom, #FFFFFF, #D3D3D3) 1 100%;
    -webkit-border-image: -webkit-linear-gradient(to bottom,#FFFFFF, #D3D3D3) 1 100%;
    -moz-border-image: -moz-webkit-linear-gradient(to bottom,#FFFFFF, #D3D3D3) 1 100%;
    -o-border-image: -olinear-gradient(to bottom,#FFFFFF, #D3D3D3) 1 100%; 
}

.hour-alone{
    font-size:0.6em;
    text-align: center;
    margin-left:-3px;
    margin-top:35px;
    width:20px;
    position:absolute;
}

.hour-alone > div{
    font-size:0.7em;
    margin-left:3px;
    opacity: 0.5;
}

.hour > div{
    display:flex;
    /* justify-content: space-evenly; */
}

.hour .nodata{
    min-height:30px;
}

.minutes{
    height: 30px;
    position:absolute;
    min-width:5px !important;
}

/* .minutes.border{
    border-width:0;
    border-left: 1px solid;
    border-image: linear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8;

    border-width:0;
    border-left:1px solid;
    border-image: linear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8 100%;
    -webkit-border-image: -webkit-linear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8 100%;
    -moz-border-image: -moz-webkit-linear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8 100%;
    -o-border-image: -olinear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8 100%;
} */

.minutes .available{
    border-width:0;
    border-left:1px solid;
    border-image: linear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8 100%;
    -webkit-border-image: -webkit-linear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8 100%;
    -moz-border-image: -moz-webkit-linear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8 100%;
    -o-border-image: -olinear-gradient(to top, rgba(255,255,255,0.2), rgba(211,211,211, 0.5)) 0.8 100%;
}

.minutes .indicator{
    display : block;
    height : 0;
    width : 0;
    border-right : 8px solid transparent;
    border-bottom : 13px solid white;
    border-left : 8px solid transparent;
    margin-left: -6px;
    margin-top: 30px
}

.minutes .selected{
    background: white !important;
}

.day .moon{
    display:block;
    width:100%;
    height:20px;
    margin-bottom: 5px;
    background-repeat: no-repeat;
    background-position: center;
}


.day .moon.fullmoon{
    background-image: url("assets/svg/full-moon.svg");
}

.day .moon.firstquarter{
    background-image: url("assets/svg/first-moon.svg");
}

.day .moon.lastquarter{
    background-image: url("assets/svg/last-moon.svg");
}

.day .moon.newmoon{
    background-image: url("assets/svg/new-moon.svg");
}

.day.firstDay{
    border-width: 0;
    border-left: 1px solid;
    border-image: linear-gradient(to bottom, #fff,#d3d3d3) 0 100%;
    -moz-border-image:  -moz-linear-gradient(to bottom, #fff,#d3d3d3) 0 100%;
    -webkit-border-image:  -webkit-linear-gradient(to bottom, #fff,#d3d3d3) 0 100%;
    -o-border-image: -olinear-gradient(to bottom, #fff,#d3d3d3) 0 100%;
}

.image-preview{
   max-height:200px;
   justify-content: space-evenly !important;
}

.image-preview img{
    width: auto;
    max-height: 100%;
    margin-top: 10px;
    max-width: 100%;
}

.image-preview .hour-label{
    position:absolute;
    margin-top:20px;
    margin-left: 10px;
    text-align: center;
    border-radius: 2em;
    padding-left: 8px;
    padding-right: 8px;
    color: white;
    font-size: 0.7em;
}

/* < ARCHIVE */
/* > ZOOM */
.zoom{
    display:block;
    position: fixed;
    height:80%;
    width:80%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    text-align:center;
    background-color:black;
    border: 2px solid;
}

.zoom .zoom-container{
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.zoom .zoom-container img{
    height:auto;
}

.zoom .zoomIn{
    cursor: -webkit-move;
    cursor: move;
}

.zoom .help-zoomIn{
    position:absolute;
    top: 50%;
    left:50%;
    background:white url(assets/png/mouse_click_wheel.png) no-repeat center 10px;
    opacity:0.8;
    text-align:center;
    height:220px;
    width:300px;
    padding:5px;
    border-radius:5px;
    font-size: 0.5em;
    transform: translate(-50%, -50%);
    cursor: pointer;
}

.zoom .help-zoomIn p{
    margin-top:150px;
}

.zoom .title{
    position:absolute;
    text-align:center;
    height:auto;
    overflow:hidden;
    width:13em;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index:1;
}

.zoom .txt-svg{
    font-size: 16px;
    font-weight: 500;
    text-transform:uppercase;
    line-height:2em;
}

.zoom .desc{
    position:absolute;
    bottom: 10px;
    background:white;
    opacity:0.8;
    text-align:center;
    height:100px;
    max-height:100px;
    overflow:auto;
    line-height:30px;
    padding:5px;
    width:60%;
    top:calc(100% - 120px);
    top:-webkit-calc(100% - 120px);
    top:-moz-calc(100% - 120px);
    margin-left:20%;
    border-radius:5px;
    font-size: 0.7em;
}

zoom .icon.arrow{
    height: 5em;
    width: 2.5em;
    display:block;
    z-index: 1;
}

zoom .icon.arrow.left{
    position:absolute;
    left:0px;
    top: calc(50% - 2.2em);
    top:-webkit-calc(50% - 2.2em);
    top:-moz-calc(50% - 2.2em);
}

zoom .icon.arrow.right{
    position:absolute;
    right:0px;
    top: calc(50% - 2.2em);
    top:-webkit-calc(50% - 2.2em);
    top:-moz-calc(50% - 2.2em);
}

.zoom-preview{
    display:block;
    position:absolute;
    width:13em;
    height:auto;
    border: 2px solid;
    z-index:1;
}

.zoom-preview .title{
    position:absolute;
    margin-top: -0.8em;
    margin-left:50%;
    transform:translateX(-50%);
    overflow:hidden;
    width:11em;
}

.zoom-preview .txt-svg{
    font-size: 16px;
    font-weight: 500;
    text-transform:uppercase;
    line-height:2em;
}


.zoom-preview .mini-icon.arrow{
    display:block;
    width:20px;
    height:20px;
    position:absolute;
    margin-left:-20px;
    background-image: url("assets/png/mini-left-arrow.png");
}

.zoom-preview img{
    width:100%;
}

.zooms{
    position:absolute;
    /*width: 0.9rem;
    height: 1.8rem;
    width: 2.5em;
    height: 2.5em;*/ 
    width: 0.6%;
    height: 5%;
    min-width: 30px;
    cursor:pointer;
    z-index:0;
    transform: translateY(-50%);
}

.zoom .simplebar-track.simplebar-horizontal{
    height:16px !important;
}

.zoom .simplebar-track.simplebar-vertical{
    width:19px !important;
}

.zoom .simplebar-track.simplebar-horizontal .simplebar-scrollbar{
    height:12px !important;
}
.zoom .simplebar-track.simplebar-vertical .simplebar-scrollbar{
    width:12px !important;
}

.simplebar-track .simplebar-scrollbar.simplebar-visible::before{
    opacity: 0.8;
}

/* < ZOOM */


/* > STICKER / LABEL */
.stickers{
    position:absolute;
    width:100%;
    height:100%;
}

.stickers .info,  .stickers .webcam, .stickers .warning, .stickers .map-marker{
    width: auto;
    height: 100%;
}

.sticker.normal {
    height: 6%;
}

.sticker.normal .picto {
    width: auto;
    height: 100%;
    float:left;
}

.sticker.image{
    width:100%;
    height:100%;
}

.sticker.image img{
    width:100%;
    height:100%;
}

.sticker.normal .title.rounded{
    width:15%;
    height: 1.5%;
    padding-left:0.5em;
    background: -moz-linear-gradient(left, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%); 
    background: -webkit-linear-gradient(left, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0) 100%); 
    background: linear-gradient(to right, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=1 );
    color:white;
    border-radius:25px 0px 0px 25px;
    font-family: 'Roboto', sans-serif;
    font-size:0.7em;
    line-height:2em;
}

.sticker.normal .title.gradient{
    width:100%;
    height: 100%;
    padding-left:0.5em;
    background: -moz-linear-gradient(left,rgba(0,0,0,0) 0%, rgba(0,0,0,0.3) 1%,rgba(0,0,0,0.5) 5%, rgba(0,0,0,0) 100%); 
    background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.3) 1%,rgba(0,0,0,0.5) 5%, rgba(0,0,0,0) 100%);
    background: linear-gradient(to right,rgba(0,0,0,0) 0%, rgba(0,0,0,0.3) 1%,rgba(0,0,0,0.5) 5%, rgba(0,0,0,0) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=1 );
    font-family: 'Roboto', sans-serif;
    font-size:0.7em;
    line-height:2em;
    color:white;
}

/* < STICKER */

/* > LAYER */
.layers{
    position:absolute;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
    display:block;
}
/* < LAYER */

/* > ADVERTISE */
.advertise{
    position:absolute;
    display:block;
}

.advertise.bottom-center{
    bottom:0px;
    left:calc(50%);
    transform:translateX(-50%);
}

.advertise.bottom-right{
    bottom:0px;
    right:0px;
    transform:translateX(0);
}

.advertise.center-right{
    right:0px;
    top:calc(50%);
    transform:translateY(-50%);
}

.advertise.center-center{
    left:calc(50%);
    top:calc(50%);
    transform:translate(-50%, -50%);
}

.advertise img{
    width:100%;
    height:100%;
    max-width:100%;
    max-height:100%;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    transition: all 0.3s cubic-bezier(.25,.8,.25,1);
}

/* .advertise img:hover {
    box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
    transform:scale(1.1) translateY(-10px);
} */

.advertise-close{
    position:absolute;
    display:block;
    top:10px;
    right:10px;
    width:28px;
    height:28px;
    background: black url(assets/png/close-sm.png) no-repeat center;
} 

/* < ADVERTISE */

/* > WEATHER */
.weather iframe{
    width: 100%;
    margin-top: -33px;
}

footer{
    border-top:none !important;
}

/* < WEATHER */

/* > FEATURE */
.blocked{
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: rgba(0,0,0,0.6);
    overflow:hidden;
}

.blocked.dark{
    background-color: rgba(0,0,0,0.8);
}

.close-bt{
    display:block;
    width:3em;
    height:3em;
    position:absolute;
    right:0.5em;
    top:0.5em;
    transition: all 0.1s ease-in-out;
}

.close-bt:hover {  
    transform:scale(1.1);
}

.half-side{
    display:flex;
    width: 50%;
    padding:20px;
    color:white;
}

.side-content{
    width:100%;
}

.content{
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    max-height: 100%;
}

.side-content form label a{
    color: white;
    text-decoration: underline;
}

.side-content form .msg{
    height:60px;
}

.side-content form label{
    font-size:0.8em;
}

.side-content .title {
    font-size:3em;
    font-weight:500;
}

.side-content .subtitle {
    font-size:0.7em;
    font-weight:300;
}

.side-content .bt{
    border-radius:5px;
}

.side-content input{
    margin-bottom:5px;
} 
    

/* < FEATURE */

/* > COMPARE */
.archive-bt-compare{
    bottom:2em;
    left:-webkit-calc(50% - 1.6em);
    left:-moz-calc(50% - 1.6em);
    left:calc(50% - 1.6em);
    transition: all 0.1s ease-in-out;
    animation: shrink 0.1s ease-out;
}

.compare{
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: block;
}

.compare-arrows{
    width: 3.5em;
    height: 1.5em;
    position:absolute;
    top:-webkit-calc(50% - 0.5em);
    top:-moz-calc(50% - 0.5em);
    top:calc(50% - 0.5em);
    left:-webkit-calc(50% - 1.8em);
    left:-moz-calc(50% - 1.8em);
    left:calc(50% - 1.8em);
    cursor:w-resize;
}

.compare-separator{
    width:4px;
    height:100%;
    background-color:#666666;
    position:absolute;
    top:0;
    left:-webkit-calc(50% - 2px);
    left:-moz-calc(50% - 2px);
    left:calc(50% - 2px);
}


.compare .date-label.main{
    position:absolute;
    bottom: 3.2em;
    left:-webkit-calc(50% + 1.6em);
    left:-moz-calc(50% + 1.6em);
    left:calc(50% + 1.6em);
    cursor:pointer;
}

.compare .date-label.slave{
    position:absolute;
    bottom: 3.2em;
    left:-webkit-calc(50% - 8em - 1.6em);
    left:-moz-calc(50% - 8em - 1.6em);
    left:calc(50% - 8em - 1.6em);
    cursor:pointer;
}

.compare .date-label{
    transition: all 0.1s ease-in-out;
    animation: shrink .1s ease-in-out 
}

/* < COMPARE */

/* > LIVE */
.live{
    display:block;
    position: fixed;
    height:80%;
    width:80%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    text-align:center;
}

.live .player{
    max-height:100%;
    max-width:100%;
    width:100%;
    height: 100%;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 2px solid;
}

/* < LIVE */
/* > DOWNLOAD */

.download:after{
    content: "";
    display: table;
    clear:both;
}

.download .bt{
    font-size: 20px;
    font-weight: 400;
    width: 100%;
    height: 64px;
    line-height: 64px;
    cursor: pointer;
    text-align: center;
    margin-top: 5px;
    float: left;
    margin-right: 5px;
}

.download .bt:hover{
   -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    -webkit-transition: all .2s ease-in;
    transition: all .2s ease-in;
    border-radius: 50px;
    background:none;
    background-image: url("assets/png/send.png")!important;
    color:white !important;
}

.download form{
    margin-top:20px;
}

.download .msg{
    height:52px;
    font-size:0.7em;
}

.download-legal .content{
    position:absolute;
    width:80%;
    height:auto;
    overflow-y:auto;
    color:white;
    background-color:black;
    left: 50%;
    top: 50%;
    padding:1em;
    transform: translate(-50%, -50%);
}

/* < DOWNLOAD */

/* >TIMELAPSE */
.timelapse .bt{
    font-size: 20px;
    font-weight: 400;
    width: calc(50% - 5px);
    height: 96px;
    line-height: 96px;
    cursor: pointer;
    text-align: center;
    margin-top: 5px;
    float: left;
    margin-right: 2.5px;
    margin-left: 2.5px;
    color:black;
}

.timelapse .bt:hover{
   -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    -webkit-transition: all .2s ease-in;
    transition: all .2s ease-in;
    border-radius: 50px;
    background:none;
    background-image: url("assets/png/play-bl.png")!important;
    color:white !important;
}

.timelapse-controls {
    display: table;
    margin-left: 50%;
    transform:translateX(-50%);
    bottom:20px;
    position:absolute;
    text-align: center;
}

.timelapse-controls .controls{
    width:160px;
    height:70px;
}

.timelapse-controls .bg{
    width:100%;
    height:100%;
    position:absolute;
}

.timelapse-controls .bt{
    position: relative;
    height:70px;
}

.timelapse-controls .icon{
    display:inline-block;
    width:50px;
    height:70px;
    vertical-align:middle;
    cursor:pointer;
}

.timelapse-controls .play_pause{
    background: url(assets/png/play_pause.png) -50px top no-repeat;
}

.timelapse-controls .stop{
    background: url(assets/png/play_pause.png) -100px top no-repeat;
}

.timelapse.content video{
    width:100%;
    height:100%;
}

.timelapse.content .controls{
    display:none;
    opacity:0;
    position:absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 0;
    background: transparent;
    box-sizing: border-box;
    width: 0;
    height: 74px;
    border-color: transparent transparent transparent #fff;
    transition: 100ms all ease;
    cursor: pointer;
    border-style: solid;
    border-width: 37px 0 37px 60px;
}

.timelapse.content .controls.paused {
    border-style: double;
    border-width: 0px 0 0px 60px;
}
.timelapse.content .controls:hover {
    border-color: transparent transparent transparent rgb(211, 211, 211);
}

timelapse .progressbar {
    display:none;
    position:absolute;
    bottom:0;
    width: 100%;
    background-color: #e0e0e0;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2);
    cursor:pointer;
}

timelapse .progressbar-fill {
    display: block;
    height: 0.5em;
    transition: width 500ms ease-in-out;
}

timelapse .download-mp4{
    display:none;
    position: absolute;
    right: 0.5em;
    bottom: 1em;
    width:3em;
    height: 3em;
}

/* < TIMELAPSE */

/* > SHARE */
.sharing .bt{
    font-size: 20px;
    font-weight: 400;
    width: calc(50% - 5px);
    height: 96px;
    line-height: 96px;
    cursor: pointer;
    text-align: center;
    margin-top: 5px;
    float: left;
    margin-right: 2.5px;
    margin-left: 2.5px;
}

.sharing .bt:hover{
   -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    -webkit-transition: all .2s ease-in;
    transition: all .2s ease-in;
    border-radius: 50px;
    background:none;
}

.sharing .bt.copy-link{
    background-color:#ffab0f;
}

.sharing .bt.copy-link:hover{
    background-image: url("assets/png/copy.png");
}

.sharing .bt.facebook{
    background-color:#3a5897;
}

.sharing .bt.facebook:hover{
    background-image: url("assets/png/facebook-logo-bleu.png");
}

.sharing .bt.twitter{
    background-color:#1da1f2;
}

.sharing .bt.twitter:hover{
    background-image: url("assets/png/twitter-logo-bleu.png");
}

.sharing .bt.email{
    background-color:#dc4a38;
}

.sharing .bt.email:hover{
    background-image: url("assets/png/email.png");
}

/* < SHARE */

/* < SENSOR */
.sensor .info {
    font-size: 3em;
    font-weight: 500;
    width: calc(100%);
    text-align: center;
    border-radius: 5px;
    border: 1px dashed white;
}
/* < SENSOR */

/* < POLICY */
.policy .half-side{
    width:100%;
}

.policy .left-half .side-content .title{
    font-size:1.5em;
}

.policy .right-half .side-content{
    font-size:0.5em;
}
/* < POLICY */

/* > MAINTENANCE */
.maintenance{
    display: table;
    font-size: 0.6em;
    color: #fff;
    font-weight: 500;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.75);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-align:center;
    margin: 0 auto;
    padding:1em;
    margin-top:15px;
    border-top:1px solid #ff8800;
}
/* < MAINTENANCE */

/* > MOREWEBCAMS */
.morewebcams-container{
    position:absolute;
    max-width:100%;
    width:100%;
    height:auto;
    max-height: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    padding:30px;
    text-align:center;
}

.other-webcams .title{
    color: #fff;
    font-weight: 400;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.75);
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.other-webcams .thumb img{
    width:auto;
    max-width:70%;
    height:auto;
    max-height:250px;
}

.other-webcams .date{
    width: 100%;
    margin:auto;
    margin-bottom:20px;
    color: #fff;
    font-weight: 400;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.75);
    letter-spacing: 0.1em;
    font-size: 0.8em;
}

.other-webcams span{
    padding:10px;
    background-color: rgba(0, 0, 0, 0.2);
}

/* < MOREWEBCAMS */

/* > VIDEO */
.video-container {
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:0;
}

.video-container .progressbar {
    display:none;
    position:absolute;
    bottom:0;
    width: 100%;
    background-color: #e0e0e0;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2);
    cursor:pointer;
}

.video-container .progressbar-fill {
    display: block;
    height: 0.5em;
    transition: width 500ms ease-in-out;
}
.video-container video{
    width:100%;
    height:100%;
}

.video-container .controls{
    display:none;
    opacity:0;
    position:absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 0;
    background: transparent;
    box-sizing: border-box;
    width: 0;
    height: 74px;
    border-color: transparent transparent transparent #fff;
    transition: 100ms all ease;
    cursor: pointer;
    border-style: solid;
    border-width: 37px 0 37px 60px;
}

.video-container .controls.paused {
    border-style: double;
    border-width: 0px 0 0px 60px;
}
.video-container .controls:hover {
    border-color: transparent transparent transparent rgb(211, 211, 211);
}

/* < VIDEO */

/* RESPONSIVE */
@media (max-width: 1800px) 
{
    .archive-container{
        max-width: 90%;
        width: 90%;
    }
}

/* Landscape phones and down */
@media (max-width: 425px) {

    .archive-main .flex {
        justify-content: unset;
    }

    .nidbottom, .nidtop, .hexagon.top-left1, .hexagon.top-left2{
        display:none;
    }

    .zoom .desc{
        width: 100%;
        margin-left:0;
    }

    .archive-container{
        font-size:1.6em;
    }

    .hour{
        min-width: 80px;
    }

    .morewebcams-container{
        max-width: 100%;
        width: 100%;
    }

    .prev-day, .next-day{
        width: 15%;
    }
}

/* Landscape phone to portrait tablet */
@media (max-width: 767px) {
    .half-side{
        width:100%;
    }
}
/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 979px) {

}

/* Large desktop */
@media (max-width: 1100px) {

    .archive-container{
        max-width: 100%;
        width: 100%;
        padding:0;
    }

    .archive-main{
        border: none !important;
        padding: none;
    }

    .image-preview{
        height: auto;
    }

    .hexagon.top-right1, .hexagon.top-right2 {
        display:none;
    }
}