﻿* {
  margin:0;
  padding:0;
  box-sizing:border-box;
    font-family: Consolas;
}
body {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: #ffffff;
}
.scan{
   position:relative;
   display:flex;
   align-items:center;
   flex-direction:column;
}
    .scan .qrcode 
    { position: relative;
        width: 290px;
        height:290px;
        background: url(..//images/QR_Code01.png);
        background-size:290px;
    }
        .scan .qrcode::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            background: url(..//images/QR_Code02.png);
            background-size: 290px;
            overflow:hidden;
         animation:animate 4s ease-in-out infinite;
        }
@keyframes animate
{
    0%,100% {
        height: 0;
    }
    50% {
        height: calc(100% - 20px);
    }
   
}
.scan .qrcode::after {
    content: '';
    position: absolute;
    inset: 20px;
    width: calc(100% - 40px);
    height: 2px;
    background: #e34a37;
    filter: drop-shadow(0 0 20px #e34a37)drop-shadow(0 0 60px #e34a37);
    animation: animateLine 4s ease-in-out infinite;
}
@keyframes animateLine
{
    0%
    {
        top:20px;
    }
    50%
    {
        top:calc(100% - 20px);
    }
}
.borderccolor {
    position: absolute;
    inset: 0;
    background: url(..//images/border2.png);
    background-size: 290px;
    background-repeat: no-repeat;
}
.scanner-container {
    position: relative;
    width: 290px;
    height: 290px;
    display: flex;
    justify-content: center;
    align-items: center;
}
    .scanner-container img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        filter: drop-shadow(0 0 10px #0f0);
    }
.scanner-line {
    position: absolute;
    width: 100%;
    height: 2px;
    background: #ffffff;
    animation: scan 2s infinite;
}
@keyframes scan {
    0% {
        top: 0;
    }

    50% {
        top: 100%;
    }

    100% {
        top: 0;
    }
}
.scanner-border {
    position: absolute;
    width: 100%;
    height: 100%;
    border: 4px solid transparent;
    display: flex;
    justify-content: space-between;
    align-items: space-between;
}
    .scanner-border div {
        width: 30px;
        height: 30px;
        background: #fff;
        animation: border-pulse 1.5s infinite;
    }
@keyframes border-pulse {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }
}
.scanner-border .top-left {
    position: absolute;
    top: -2px;
    left: -2px;
}
.scanner-border .top-right {
    position: absolute;
    top: -2px;
    right: -2px;

}
.scanner-border .bottom-left {
    position: absolute;
    bottom: -2px;
    left: -2px;
}
.scanner-border .bottom-right {
    position: absolute;
    bottom: -2px;
    right: -2px;
}
.scanner-text {
    margin-top: 20px;
    font-size: 1.2rem;
    text-align: center;
    animation: text-blink 1s infinite;
}
@keyframes text-blink {
    0%,100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }
}



