@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');


@media (max-width: 499px) {
  #qr_wrapper {
    transform: scale(1);
    transform-origin: top center;
  }

  #button_wrapper_right {
    right: 0;
    left: auto;
  }

  #button_wrapper_left {
    right: auto;
    left: 0;
  }
}

@media (min-width: 500px) {
  #qr_wrapper {
    transform: scale(1);
    transform-origin: top center;
  }

  #button_wrapper_right {
    right: 0;
    left: auto;
  }

  #button_wrapper_left {
    right: auto;
    left: 0;
  }
}



body {
  font-family: 'Roboto', sans-serif;
  font-weight:700;
  display: flex;
  justify-content: center;
  
}

input,
button,
textarea,
select{
  font-family: 'Roboto', sans-serif; /* force it */
  font-weight: 400; /* normal text weight */
}


/* Links in btn-group, hover-container, and other wrappers */
[btn-group] > a,
.hover-container * {
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
}


#qr_wrapper{
   
    text-align: center;
    padding-top: 11px;
    padding-bottom: 114px;
    margin: auto;
    position: relative;
    width: 233px;
    height: 279px;
    align-items: center;
    /* border: red 3px solid; */ /* Enable if you want to see the reference dimensions (width and height) */
    text-align:center;
    
    }

    #title{
     
     /* box-shadow: 0px -3px 14px -3px #5c5c5c !important; */
      position: relative;
      background-color: #a0d468;
      border-top-right-radius: 40px;
      border-top-left-radius: 40px;
      color: white;
      width: 227px !important;
      height: 50px !important;
      margin: auto;
      padding: 0;
      margin: auto;
      text-align: center;
      z-index: 30;
      border: 3px solid #e5e5e5;
      top:-1px !important;

      
      display: flex;
      justify-content: center;
      align-items: center;
      
    }
          


#placeholderdiv
{
     
    box-shadow: 0 0 10px #5c5c5c; /* mention inset at the beginning to make the shadow inside */
    width: 227px;
    height: 263px;
    display:block;
    margin: auto;
    position: relative;
    z-index: 4;
    background-color: white;
    /* left: 0;
    right: 0; */
    /* Masking logic */
    
    
  }

#button_wrapper_right
{
margin-top:15px;
position:absolute;
left: 212px;
top: 0px;
display: flex;
flex-direction: column; /* stack items vertically */
gap: 15px; /* automatically adds spacing between all except the first */
}

#button_wrapper_left
{
margin-top:15px;
position:absolute;
left: -60px;
top: 0px;
display: flex;
flex-direction: column; /* stack items vertically */
gap: 15px; /* automatically adds spacing between all except the first */
}
.rockers{
 
  width: 75px;
  height:42px;
  transition:background-color 0.2s ease,
  box-shadow 0.1s ease;
  margin-top: 25px;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  z-index:9999;
  cursor: pointer;
  box-shadow: 0px -3px 14px -3px #5c5c5c;
}
.rockers:first-child {
  margin-top: 0px;
}
.rockers:hover{
box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);


}
 .rockers:active {
  
  
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  
}


  .rockers_right{
    
    transform: rotate(90deg);
    transform-origin: center;
    position: relative;
    border: 0;
    color:#e5e5e5;
    border: 3px solid #e5e5e5;
    


  }

  .rockers_left{
  transform: rotate(-90deg);
  transform-origin: center;
  position: relative;
  border: 0;
  color:#e5e5e5;
  border: 3px solid #e5e5e5;
  }


/* Rockers Right and Left */
#vcard, #call, #sms, #whatsapp, #location, #wifi, #resume{
transition: background-color 0.3s ease;
} 

#call{
color:#000000;
}

#placeholder{
margin:auto;
width:200px;
height:200px;
display:block;       
position: absolute;
top: 16px;
/* z-index: 5; */
right: 0;
left: 0;
}


.hover-container {
position: relative;
width: 227px;
height: 114px;
margin: auto;
margin-top:3px;
display: flex;
justify-content: center;
align-items: center;
  }

    

      
  #countdown_circle{
  position: absolute;        /* or relative, if needed */
  top: 288px;                /* vertical position */
  left: 50%;                 /* move to center */
  transform: translateX(-50%); /* shift back half its width */
  
  display: flex;
  justify-content: center;
  align-items: center;

  width: 65px;
  height: 65px;
  background-color: #ed5565;
  border-radius: 50%;
  border: 3px solid rgb(229, 229, 229);
  z-index: 5;
  transition: background-color 0.3s ease;
}

 /* red */       
#countdown_circle.lightred, #wifi{
        
  background-color:#ed5565;

}
#countdown_circle.darkred, #wifi:active{
        
  background-color:#da4453;

}                        
/* Orange */
#countdown_circle.lightorange, #vcard{
        
  background-color:#fc6e51;

}
#countdown_circle.darkorange, #vcard:active{
        
  background-color:#e9573f;

}
/* Yellow */
#countdown_circle.lightyellow, #call{
        
  background-color:#ffce54;

}
#countdown_circle.darkyellow, #call:active{
        
  background-color:#fcbb42;

}
/* Green */
#countdown_circle.lightgreen, #whatsapp{
        
  background-color:#a0d468;

}
#countdown_circle.darkgreen, #whatsapp:active{
        
  background-color:#8cc152;

}

/* Mint */
#countdown_circle.lightmint{
        
  background-color:#48cfad;

}
#countdown_circle.darkmint{
        
  background-color:#37bc9b;

}

/* Aqua */
#countdown_circle.lightaqua{
        
  background-color:#4fc1e9;

}
#countdown_circle.darkaqua{
        
  background-color:#3bafda;

}

/* Blue */
#countdown_circle.lightblue, #location{
        
  background-color:#5d9cec;

}
#countdown_circle.darkblue, #location:active{
        
  background-color:#4a89dc;

}

/*Lavender*/

#countdown_circle.lightlavender, #sms{
        
  background-color:#ac92ec;

}
#countdown_circle.darklavender, #sms:active{
        
  background-color:#967adc;

}

/* Pink */
#countdown_circle.lightpink{
        
  background-color:#ec87c0;

}
#countdown_circle.darkpink{
        
  background-color:#d770ad;

}

/* light Variant of Gray light and dark*/
#countdown_circle.light_lightgray{
        
  background-color:#f5f7fa;

}
#countdown_circle.light_darkgray{
        
  background-color:#e6e9ed;

}

/* Medium Variant of Gray light and dark*/
#countdown_circle.medium_lightgray{
        
  background-color:#ccd1d9;

}
#countdown_circle.medium_darkgray{
        
  background-color:#aab2bd;

}


/* Dark Variant of Gray light and dark*/
#countdown_circle.dark_lightgray, #resume{
        
  background-color:#656d78;

}
#countdown_circle.dark_darkgray, #resume:active{
        
  background-color:#434a54;

}


    
   

   
#countdown_circle_text{
color: white;
font-size: 11px;
margin: 0;
padding: 0;           
}

    
           
      #hover_board {
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: rgba(205, 198, 198, 1);
        box-shadow: inset 0 0 10px #5c5c5c;
        text-align: center;
        z-index: 2;
        transition: opacity 0.5s ease-in, filter 0.5s ease-in;
      
        /* Flexbox for centering */
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 10px; /* Optional: prevents text from hugging edges */
        box-sizing: border-box;
        /* masking logic */
        
       
   
      }

    
      
      #hover_board.disabled {
        opacity: 0.4;
        filter: grayscale(1);
        pointer-events: none;
      }
      
 
 
      #hover_text {
        font-size: 13px;
        font-weight: bold;
        color: #333;
        margin: 0;
        padding: 0;
        text-align: center;
       
      }
      
      #hover_text,#countdown_circle_text{
        opacity: 1;
        transition: opacity 0.4s ease-in-out;
      }
      
      /* For fade-out effect */
      #hover_text.fade-out, #countdown_circle_text.fade-out{
        opacity: 0;
      }

      
      
      
      #activate-btn {
        z-index: 3;
        color: white;
        font-size: 1.1em;
        font-weight: 500;
        padding: 12px 28px;
        border: none;
        border-radius: 8px;
        background-color: #0070f3;
        cursor: pointer;
        white-space: nowrap;
        box-shadow: 0 4px 14px 0 rgba(0, 118, 255, 0.39);
        transition: opacity 0.4s ease-out, transform 0.4s ease-out;
        opacity: 1;
        transform: scale(1);
      }
      
      #activate-btn:hover {
        background: rgba(0, 118, 255, 0.9);
        box-shadow: 0 6px 20px rgba(0, 118, 255, 0.23);
      }
      
      #activate-btn.disappear {
        opacity: 0;
        transform: scale(0.95);
        pointer-events: none;
      }
      
      #activate-btn.show {
          display: block;
          opacity: 1;
          transform: scale(1);
          transition: opacity 0.4s ease-in, transform 0.4s ease-in;
      }


      #qr {
        filter: hue-rotate(0deg);
        transition: filter 1.5s ease;
        margin: auto;
        position: absolute;
        top: 16px;
        z-index: 5;
        right: 0;
        left: 0;
      }
      
    
  
    
    #thanksTxt{
        display:block;
        color: white;
        font-size: 11px;
        font-weight: 900;
        padding: 7px;
        background-color: green;
        border-radius: 9px;
        width:213px;
        margin: auto;
        position: absolute;
        transition: top .6s linear 0s;
        top: 357px;
        z-index: 3;
        left: 0;
        right: 0;
    
    }
    
    
    
   
    /* QR Scan Status SVG Animation element's position and animation CSS starts below */
    
    lottie-player{

           
        margin: auto;
        position: absolute;
        z-index: 5;
        top: -3px;
        left: 0;
        right: 0;
        width: 300px;
        height: 300px;

               }
    
    
/* Center the container on the screen */
#success-checkmark-div {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 227px;
  height: 263px;
  z-index: 6;
  display:none;
  /* background: #f8f8f8; optional for debugging */
  border-radius: 12px; /* optional */
}
    
    
      
    
#checkmark {
    
    
    width: 50px;
    height: 50px;
    border-radius: 50%;
    /* display: block; */
    stroke-width: 4px;
    stroke: #0070f3;
    stroke-miterlimit: 10;
    box-shadow: inset 0px 0px 0px rgba(0, 118, 255, 0.9);
    animation: fill .4s ease-in-out .4s forwards, scale .3s ease-in-out .9s both;
    /* margin:auto; */

}

#success-lottie {
  position: absolute;
  top: 50%;
  left: 50%;
  /* transform: translate(-50%, -50%); */
  /* max-width: 100%;
  max-height: 100%; */
  /* width: auto;
  height: auto; */
  z-index: 1;
  pointer-events: none;
  /* background: rgba(0, 0, 255, 0.1); light blue */
}


/* Center both elements inside it */
#checkmark,
#success-lottie {
  position: absolute;
  top: 36%;
  left: 40%;
  transform: translate(-36%, -40%);
}

    
    
    /* SVG Tick Animation Starts here */
    
    
    
    #checkmark__circle {
        stroke-dasharray: 166;
        stroke-dashoffset: 166;
        stroke-width: 2;
        stroke-miterlimit: 10;
        stroke: #0070f3;
        fill: #fff;
        animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
     
    }
    
    #checkmark__check {
        transform-origin: 50% 50%;
        stroke-dasharray: 48;
        stroke-dashoffset: 48;
        animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
    }
    
    @keyframes stroke {
        100% {
            stroke-dashoffset: 0;
        }
    }
    
    @keyframes scale {
        0%, 100% {
            transform: none;
        }
    
        50% {
            transform: scale3d(1.1, 1.1, 1);
        }
    }
    
    @keyframes fill {
        100% {
            box-shadow: inset 0px 0px 0px 30px rgba(0, 118, 255, 0.9);
        }
    }
    
    
    
    
    
    /* QR Scan Status SVG Animation CSS Ends Here */
    
    /* Loader */
  
    #loader {
      width: 48px;
      height: 48px;
      border: 3px solid #FFF;
      border-radius: 50%;
      display: inline-block;
      position: absolute;
      box-sizing: border-box;
      opacity: 0;
      animation: rotation 1s linear infinite;
      transition: opacity 0.5s ease-in, filter 0.5s ease-in;
      
    }
    #loader::after {
      content: '';  
      box-sizing: border-box;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      width: 40px;
      height: 40px;
      border-radius: 50%;
      border: 3px solid;
      border-color: #ffffff transparent;
    }
    
    @keyframes rotation {
      0% {
        transform: rotate(0deg);
      }
      100% {
        transform: rotate(360deg);
      }
    } 
    
    /* For Fade-IN effect */
    #loader.fade-in{
       
      opacity:1;

    }
    
/*hover board button for website and payments [Development Stage]*/
[btn-group] {
  position: relative;
  display: inline-block;
  margin: 10px 0;
  z-index:3;
}

[btn-group]:before {
  content: attr(data-grouptype);
  color: #999;
  display: block;
  font-size: 0.8125em;
  width: 19px;
  height: 19px;
  padding: 5px;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  left: 51%;
  top: 6px;
  margin-left: -18px;
  line-height: 19px;
  z-index:4;
}

[btn-group] > a + a {
  margin-left: 5px;
}

[btn-group] > a {
  display: inline-block;
  padding: 6px 14px;
  background: #f2f2f2;
  border-radius: 3px;
  font-size: 0.8125em;
  color: #b9bcbc;
  transition: background 0.3s ease, color 0.3s ease;
  text-decoration: none;
  transition: color 0.3s ease;
  padding: 12px 28px;
  text-transform: uppercase;
  text-align: center;   
}

[btn-group] > a:nth-of-type(1) {
  background: #a1d36e;
  color: #fff;
  width:45px;
}

[btn-group] > a:nth-of-type(1):hover {
  background: #94cd5a;
}

[btn-group] > a:nth-of-type(2) {
  background: #6ad1dd;
  color: #fff;
  width:45px;
}

[btn-group] > a:nth-of-type(2):hover {
  background: #55cbd8;
}


/* logo and footer */
/* Logo styling: same width as #title, just below it */
/* Logo wrapper: dark background and match #title width */
#logo-wrapper {
  width: 60px; /* same as #title */
  margin: 3px auto; /* center it */
  background-color: #333; /* dark background */
  padding: 5px; /* optional: some spacing around logo */
  box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5); /* inner shadow */
}

/* Logo itself: control size */
#logo {
  display: block;
  width: 100%; /* use wrapper’s width */
  height: auto; /* keeps aspect ratio */
}



/* Footer text: same width as .hover-container, centered */
#footer-text {
  width: 227px;   /* Match .hover-container width */
  margin: 10px auto 0 auto;
  text-align: center;
  font-size: 12px;
  color: #555;
}

#footer-text a {
  color: inherit;         /* Inherit the parent text color */
  text-decoration: none;  /* Remove underline */
}
