html,body{font-family: 'Roboto', sans-serif;background:#efefef;color:#000;margin:0}
html{box-sizing:border-box;}*,*:before,*:after{box-sizing:inherit}
html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}
p{margin:0.15em auto;}
html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}
#bgimg{background-image:url('rtu.jpg');height:100vh;margin:0;background-size:cover;background-repeat:no-repeat;-webkit-filter: blur(3px);filter:blur(3px);overflow:hidden;}
#clock{font-size:24pt;padding:0px;margin:0px;color:#999;}
#bgblock{background-image:linear-gradient(rgba(51,113,255,0.65),rgba(17,30,55,0.75));height:100vh;width:100%;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;overflow:hidden;}
#frame{padding:1em 0px;z-index:51;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);width:80%;max-width:680px;overflow:hidden;overflow:auto;background-color:rgba(255,255,255, 0.45);border-radius:15px;}
.whole{clear:both;float:none;margin:0px auto; padding:1em;}
.object{background:rgba(255, 255, 255,1);box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);margin:0px 1em;position:relative;border-radius:9px;vertical-align: middle;}
.fixcenter{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);z-index:5;}

.input,.klik,.klikmapel{width:380px;max-width:66.666%;border:0px solid transparent;letter-spacing:2px;font-size:14pt;margin:0.5em auto;padding:0.75em;text-align:center;float:none;clear:both;}
.input{color:#0066CC;border-bottom:0.75px solid #0066CC;background-color:rgba(255,255,255,0.50);}
.klik{background:#0066CC;color:#fff;border-radius:0.25em;cursor:pointer;}
.klikmapel{border:2px solid #003366;border-radius:0.5em;background-color:rgba(0,51,102,1);color:#fff;cursor:pointer;}
.input:focus{background-color:rgba(255,255,255,1);color:#000;}
.klikmapel:hover{background-color:rgba(0,51,102,0.1);color:#333366;}
.klik:hover{background:#6699CC;color:#222;}
.hover:hover{opacity:0.65;cursor:pointer;}
#seepass{cursor:pointer;position:absolute;right:0.5em;top:0.75em;font-size:13pt;}
#blank{background:rgba(51, 51, 51, 0.55);display:none;position:fixed;top:0;left:0;height:100%;width:100%;z-index:50;overflow:hidden;margin:0;}
.spin{z-index:106;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);text-align:center;color:#fff;}
#proses{background:rgba(51, 51, 51, 0.75);display:none;position:fixed;top:0;bottom:0;left:0;right:0;z-index:53;overflow:hidden;margin:0;}
a{text-decoration:none;clear:both;color:#333;}
#qris{display:block;height:42px;width:auto;margin:0px auto;}
.alert{width:100%;text-align:center;padding:1.5em 1em;z-index:52;position:fixed;top:2em;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);overflow:hidden;background:#fff;color:#333;box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);}
.popup{z-index:106;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);text-align:center;background:#fff;}

   .calendar {
      width: 350px;
      background: white;
      border-radius: 10px;
      box-shadow: 0 4px 8px rgba(0,0,0,0.1);
      padding: 20px;
	  z-index:55;
    }
    .calendar header {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    .calendar header h2 {
      margin: 0;
    }
    .calendar button {
      background: #007bff;
      color: white;
      border: none;
      padding: 5px 10px;
      border-radius: 5px;
      cursor: pointer;
    }
    .days {
      display: grid;
      grid-template-columns: repeat(7, 1fr);
      gap: 5px;
      margin-top: 10px;
    }
    .day {
      text-align: center;
      padding: 10px 0;
    }
    .day.today {
      background: #007bff;
      color: white;
      border-radius: 50%;
    }
    .day-header {
      font-weight: bold;
      color: #555;
    }

.loader {
  width: 50px;
  aspect-ratio: 1;
  display: grid;
  border-radius: 50%;
  background:
    linear-gradient(0deg ,rgb(0 0 0/50%) 30%,#0000 0 70%,rgb(0 0 0/100%) 0) 50%/8% 100%,
    linear-gradient(90deg,rgb(0 0 0/25%) 30%,#0000 0 70%,rgb(0 0 0/75% ) 0) 50%/100% 8%;
  background-repeat: no-repeat;
  animation: l23 1s infinite steps(12);
}
.loader::before,
.loader::after {
   content: "";
   grid-area: 1/1;
   border-radius: 50%;
   background: inherit;
   opacity: 0.915;
   transform: rotate(30deg);
}
.loader::after {
   opacity: 0.83;
   transform: rotate(60deg);
}
@keyframes l23 {
  100% {transform: rotate(1turn)}
}

@media screen and (max-width:720px) {
body{background:#aaa;color:#fff;}
#bgblock{background-image:linear-gradient(rgba(0,0,0,0.75),rgba(0,0,0,0.85));}
#frame{padding:0px;width:100%;max-width:100%;background-color:rgba(255,255,255,0);}
.klikmapel,.input{border:2px solid #fff;background:transparent;color:#fff;}
.klikmapel:hover{background:#fff;color:#000;}
a{color:#efefef}
.loader{
  background:
    linear-gradient(0deg ,rgb(255 255 255/50%) 30%,#fff 0 70%,rgb(255 255 255/90%) 0) 50%/8% 100%,
    linear-gradient(90deg,rgb(255 255 255/25%) 30%,#0000 0 70%,rgb(255 255 255/75% ) 0) 50%/90% 8%;
  background-repeat: no-repeat;
}