<meta name='viewport' content='width=device-width, initial-scale=1.0'><style>@font-face {
    font-family: 'Palanquin Dark';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(pictures/atlantus.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
  }
body
{
    overflow: hidden;
    position: fixed;
    font-family: 'Palanquin Dark', sans-serif;
    background: linear-gradient(
250deg
, #0a1621, #074b9c);
    color: white;
    margin: 0px;
    left: 0px;
    top: 0px;
    height: 100%;
    width: 100%;
}

.notification
{
    width: 90%;
    text-align: center;
    position: relative;
    background: linear-gradient( 
45deg
 , #000000, #2c2a49);
    border-radius: 5px;
    position: absolute;
    left: 50%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 35px;
    padding-top: 5px;
    display: none;
    z-index: 2;
    top: 303%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

#logsview
{
	    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    top: 83%;
    left: 50%;
    height: 40px;
    font-size: 11px;
    width: 200px;
    text-align: center;
    color: #ccc;
    overflow:scroll;
}
#connecting
{   
  display:  none;
    margin-left: 7px;
    color: #75a2c5;
}
#connected
{
	display:none;
    color: #26fc0a;
}
.lds-ring {
 display: inline-block;
    position: absolute;
    display:none;
    top: -13px;
    left: -13px;
}
.lds-ring div {
      box-sizing: border-box;
    display: block;
    position: absolute;
    width: 160px;
    height: 161px;
    margin: 8px;
    border: 8px solid #1f312f;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #cddc39 #cddc3999 #cddc3940 #00968830;
}
.lds-ring div:nth-child(1) {
  animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
  animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes lds-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.lds-dual-ring {
 display: inline-block;
    width: 80px;
    height: 80px;
    position: absolute;
    margin-left: -35px;
    margin-top: 1px;
}
.lds-dual-ring:after {
  content: " ";
    display: block;
    width: 17px;
    height: 17px;
    margin: 8px;
    border-radius: 50%;
    border: 2px solid #fff;
    border-color: #fff #fff5f536 #fff white;
    animation: lds-dual-ring 1.2s linear infinite;
}
@keyframes lds-dual-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.flagserver
{
    height: 38px;
    position: absolute;
    left: 11px;
    top: 10px;
}
.substatus
{
    display: inline-block;
    font-size: 12px;
    position: relative;
    left: 50px;
    top: -4px;
    width: 100%;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    padding: 4px;
    z-index: 0;
    text-align: center;
    opacity: 0.9;
}
.statusserver
{
    position: absolute;
    width: 100%;
    top: 161px;
    text-align: left;
    font-size: 15px;
    color: #ffffff;
    display: inline-block;
    left: -51px;
}
.arrowserver
{
	position: absolute;
    right: 13px;
    height: 18px;
    top: 21px;
    filter: invert(1);
}
.descserver
{
    width: 59%;
    text-align: left;
    height: 22px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    position: absolute;
    top: 28px;
    font-size: 12px;
    left: 67px;
    color: #ccc;
}
.inputmax
{
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    left: 50%;
    top: 42%;
    padding: 13px;
    background: #ffffffcf;
    font-size: 18px;
    z-index: 7;
    border: 0px;
    color: black;
    border-radius: 30px;
    border-bottom: 2px solid #38394e;
    width: 85%;
}
.rocket {
    position: absolute;
    top: 28%;
    display:none;
    margin-left: 20px;
    width: 80px;
    left: calc(50% - 60px);
    z-index: 10;
  }
  .rocket .rocket-body {
    width: 80px;
    left: calc(50% - 50px);
    animation: bounce 0.5s infinite;
  }
  .rocket .rocket-body .body {
    background-color: #dadada;
    height: 180px;
    left: calc(50% - 50px);
    border-top-right-radius: 100%;
    border-top-left-radius: 100%;
    border-bottom-left-radius: 50%;
    border-bottom-right-radius: 50%;
    border-top: 5px solid #f5f5f5;
  }
  .rocket .rocket-body:before {
    content: "";
    position: absolute;
    left: calc(50% - 24px);
    width: 48px;
    height: 13px;
    background-color: #554842;
    bottom: -13px;
    border-bottom-right-radius: 60%;
    border-bottom-left-radius: 60%;
  }
  .rocket .window {
    position: absolute;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    background-color: #a75248;
    left: calc(50% - 25px);
    top: 40px;
    border: 5px solid #b4b2b2;
  }
  .rocket .fin {
    position: absolute;
    z-index: -100;
    height: 55px;
    width: 50px;
    background-color: #a75248;
  }
  .rocket .fin-left {
    left: -30px;
    top: calc(100% - 55px);
    border-top-left-radius: 80%;
    border-bottom-left-radius: 20%;
  }
  .rocket .fin-right {
    right: -30px;
    top: calc(100% - 55px);
    border-top-right-radius: 80%;
    border-bottom-right-radius: 20%;
  }
  .rocket .exhaust-flame {
    position: absolute;
    top: 90%;
    width: 28px;
    background: linear-gradient(to bottom, transparent 10%, #f5f5f5 100%);
    height: 150px;
    left: calc(50% - 14px);
    animation: exhaust 0.2s infinite;
  }
  .rocket .exhaust-fumes li {
    width: 60px;
    height: 60px;
    background-color: #f5f5f5;
    list-style: none;
    position: absolute;
    border-radius: 100%;
  }
  .rocket .exhaust-fumes li:first-child {
    width: 200px;
    height: 200px;
    bottom: -300px;
    animation: fumes 5s infinite;
  }
  .rocket .exhaust-fumes li:nth-child(2) {
    width: 150px;
    height: 150px;
    left: -120px;
    top: 260px;
    animation: fumes 3.2s infinite;
  }
  .rocket .exhaust-fumes li:nth-child(3) {
    width: 120px;
    height: 120px;
    left: -40px;
    top: 330px;
    animation: fumes 3s 1s infinite;
  }
  .rocket .exhaust-fumes li:nth-child(4) {
    width: 100px;
    height: 100px;
    left: -170px;
    animation: fumes 4s 2s infinite;
    top: 380px;
  }
  .rocket .exhaust-fumes li:nth-child(5) {
    width: 130px;
    height: 130px;
    left: -120px;
    top: 350px;
    animation: fumes 5s infinite;
  }
  .rocket .exhaust-fumes li:nth-child(6) {
    width: 200px;
    height: 200px;
    left: -60px;
    top: 280px;
    animation: fumes2 10s infinite;
  }
  .rocket .exhaust-fumes li:nth-child(7) {
    width: 100px;
    height: 100px;
    left: -100px;
    top: 320px;
  }
  .rocket .exhaust-fumes li:nth-child(8) {
    width: 110px;
    height: 110px;
    left: 70px;
    top: 340px;
  }
  .rocket .exhaust-fumes li:nth-child(9) {
    width: 90px;
    height: 90px;
    left: 200px;
    top: 380px;
    animation: fumes 20s infinite;
  }
  .star li {
    list-style: none;
    position: absolute;
  }
  .star li:before, .star li:after {
    content: "";
    position: absolute;
    background-color: #f5f5f5;
  }
  .star li:before {
    width: 10px;
    height: 2px;
    border-radius: 50%;
  }
  .star li:after {
    height: 8px;
    width: 2px;
    left: 4px;
    top: -3px;
  }
  .star li:first-child {
    top: -30px;
    left: -210px;
    animation: twinkle 0.4s infinite;
  }
  .star li:nth-child(2) {
    top: 0;
    left: 60px;
    animation: twinkle 0.5s infinite;
  }
  .star li:nth-child(2):before {
    height: 1px;
    width: 5px;
  }
  .star li:nth-child(2):after {
    width: 1px;
    height: 5px;
    top: -2px;
    left: 2px;
  }
  .star li:nth-child(3) {
    left: 120px;
    top: 220px;
    animation: twinkle 1s infinite;
  }
  .star li:nth-child(4) {
    left: -100px;
    top: 200px;
    animation: twinkle 0.5s ease infinite;
  }
  .star li:nth-child(5) {
    left: 170px;
    top: 100px;
    animation: twinkle 0.4s ease infinite;
  }
  .star li:nth-child(6) {
    top: 87px;
    left: -79px;
    animation: twinkle 0.2s infinite;
  }
  .star li:nth-child(6):before {
    height: 1px;
    width: 5px;
  }
  .star li:nth-child(6):after {
    width: 1px;
    height: 5px;
    top: -2px;
    left: 2px;
  }
  
  @keyframes fumes {
    50% {
      transform: scale(1.5);
      background-color: transparent;
    }
    51% {
      transform: scale(0.8);
    }
    100% {
      background-color: #f5f5f5;
      transform: scale(1);
    }
  }
  @keyframes bounce {
    0% {
      transform: translate3d(0px, 0px, 0);
    }
    50% {
      transform: translate3d(0px, -4px, 0);
    }
    100% {
      transform: translate3d(0px, 0px, 0);
    }
  }
  @keyframes exhaust {
    0% {
      background: linear-gradient(to bottom, transparent 10%, #f5f5f5 100%);
    }
    50% {
      background: linear-gradient(to bottom, transparent 8%, #f5f5f5 100%);
    }
    75% {
      background: linear-gradient(to bottom, transparent 12%, #f5f5f5 100%);
    }
  }
  @keyframes fumes2 {
    50% {
      transform: scale(1.1);
    }
  }
  @keyframes twinkle {
    80% {
      transform: scale(1.1);
      opacity: 0.7;
    }
  }
.nameserver
{
    position: absolute;
    top: 5px;
    font-size: 15px;
    width: 64%;
    text-align: left;
    left: 67px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.selectedserver
{   
    background: #38394ecf;
    width: 81%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
    height: 40px;
    top: 34%;
    border-bottom: 2px solid #ffffff;
    border-radius: 30px;
    padding: 7px;
    position: absolute;
    z-index: 1;
}
#menuexpand
{
	    position: absolute;
    left: 0px;
    height: 100%;
    bottom: 0px;
    display: none;
    width: 300px;
    background: linear-gradient(
45deg
, black, #250200ed, #560400d4);
    z-index: 4;
    border-bottom-right-radius: 20px;
    border-top-right-radius: 20px;
}
.presshere
{
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    top: 77%;
    left: 50%;
    font-size: 20px;
    width: 330px;
    text-align: center;
}
.teste
{
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    bottom: 4%;
    left: 25%;
    font-size: 15px;
    width: 40%;
    text-align: center;
}
.termos
{
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    bottom: 4%;
    left: 75%;
    font-size: 15px;
    width: 40%;
    text-align: center;
}
.connectbt
{
    height: 120px;
    width: 120px;
    background: #ffffff url(pictures/power.svg);
    BORDER-RADIUS: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    background-size: 53px !important;
    background-repeat: no-repeat;
    background-position: 34px !important;
    filter: invert(1);
    top: 63%;
    left: 50%;
    z-index: 1;
}
.freeimg
{
	height: 40px;
    width: 40px;
    background: #ffffff4d url(pictures/crown.png);
    background-repeat: no-repeat;
    background-position: 5px;
    border-radius: 60px;
    position: absolute;
    top: 9px;
    left: 6px;
}
.freetxtsmall
{
	    position: absolute;
    left: 58px;
    top: 26px;
    color: #ccc;
    font-size: 12px;
}
.freetxt
{
	position: absolute;
    left: 58px;
    top: 4px;
    font-size: 17px;
}
.header
{
	position: fixed;
    top: 57px;
	 left: 0px; 
	 width: 100%;
	 z-index:3;
	 text-align: center;
}
.startfree
{
    width: 300px;
    height: 60px;
    background: #4b0e79;
    position: absolute;
    left: 50%;
    bottom: 27px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 10px;
}
.centerbody
{
    position: absolute;
    opacity: 0.1;
    height: 495px;
    width: 100%;
    z-index: 1;
    left: 50%;
    background-size: 200% 100%;
    background-position-x: -120px;
    top: 49%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
#application
{
}
.menuiconx
{
	    position: absolute;
    right: 19px;
    filter: invert(1);
    top: 44px;
    height: 24px;
}
#appname
{
    font-size: 26px;
    color: #03a9f4;
    text-transform: uppercase;
}
.pingserver
{
	 position: absolute;
    right: 14px;
    font-size: 13px;
    color: #ccc;
}
.premiumserver
{
	display:none;
}
.bronzeserver
{
	display: none;
}
.freeserver
{
}
.goldserver
{
	display: none;
}
.recommendserver
{
	display: none;
}
.greenping
{
	  background: #49ff50;
    width: 5px;
    height: 13px;
    position: absolute;
    right: -8px;
    border-radius: 55px;
    top: 7px;
}
.svbubble
{
    background: #5e4b5fcf;
    width: 88%;
    transform: translate(-50%, 0%);
    left: 45%;
    height: 50px;
    border-bottom: 2px solid #ffffff;
    border-radius: 10px;
    top: 6px;
    margin-bottom: 7px;
    padding: 4px;
    position: relative;
}
.typeserver
{
    position: relative;
    width: 100%;
    text-align: left;
    padding-left: 20px;
    top: 20px;

}
.userprofile
{
	    background: url(pictures/149071.png);
    position: relative;
    height: 80px;
    width: 220px;
    background-size: 80px 80px;
    border-bottom: 1px solid #2b3548;
    background-repeat: no-repeat;
    left: 40px;
    top: 100px;
    padding-bottom: 50px;
    background-position-x: 65px;
}
#serverlist
{
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 51%;
    border-radius: 5px;
    left: 50%;
    display: none;
    overflow-x: hidden;
    overflow-y: scroll;
    width: 98%;
    padding-bottom: 8px;
    padding-top: 8px;
    height: 450px;
}
.userid
{
	    position: absolute;
    bottom: 8px;
    width: 100%;
    text-align: center;
    font-size: 12px;
    color: #909090;
}
.userexp
{
	    position: absolute;
        bottom: 23px;
    color: #8e8e8e;
    width: 100%;
    text-align: center;
    font-size: 12px;
}
.menulist
{
	position: absolute;
    color: #adadaf;
    top: 275px;
    left: 52px;
}
.menuicon
{
	position: absolute;
    left: 19px;
    filter: invert(1);
    top: 11px;
    height: 24px;
}
.menutxt
{
	    position: relative;
    margin-bottom: 30px;
}
.rightbt
{
	 position: absolute;
    right: 5px;
    padding: 7px;
    border-radius: 5px;
    width: 62px;
    top: 5px;
    padding-right: 8px;

}
.menuicond
{
	 position: absolute;
    height: 18px;
    left: -27px;
    top: 6px;
    filter: invert(1);
    opacity: 0.77;
}
.crowimg
{
    height: 18px;
    position: absolute;
    left: 5px;
    top: 9px;
}
.activebt
{
    position: relative;
    top: 14px;
    padding: 5px;
    background: #fe9a01;
    width: 100px;
    left: 106px;
    border-radius: 5px;
}
.textboost
{
    font-size: 14px;
        color: #e6e6e6;
}
.titleboost
{
    margin-top: -59px;
        font-size: 24px;
        color: #ffa382;
}
.bodyboost
{
    position: absolute;
    left: 50%;
    top: 46%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: #0a87fb;
    height: 350px;
    width: 330px;
    border-radius: 5px;
    text-align: center;
}
.atlantusoverlay
{
    display: none;
    position: absolute;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.76);
    z-index: 10;
}
#boostmode
{
    display:none;
    position: absolute; height: 100%;
     width: 100%; background: rgba(0, 0, 0, 0.76); z-index: 5;
}
#storagemode
{
    display:none;
    position: absolute; height: 100%;
     width: 100%; background: rgba(0, 0, 0, 0.76); z-index: 5;
}
.protxt
{
    position: relative;
    left: 9px;
    color: #fbc14d;
    font-weight: 100;
    text-shadow: 0px 0px 20px yellow;
    letter-spacing: 1.5px;
    font-size: 13px;
    top: -1px;
}</style><script>

function startatlantusrocket()
{
    sendcore("vibrate########100");
    $(".rocket").fadeIn()
    .css({top:600,position:'absolute'})
    .animate({top:-275}, 700, function() {
        //callback
        $(".rocket").fadeOut(0);
    });
    startatlantus();
}

function serverchangex()
{
	$(".boxlistsv").animate({height: 'toggle'});
	atlantusdropserver();
}
</script>

<script>

	(function(){
	    var tId = setInterval(function() {
	        if (document.readyState == "complete") onComplete()
	    }, 11);
	    function onComplete(){
              //sshplus
              setInterval( async function(){ sshpluscore(); }, 200);
	    };
	})()

  async function sshpluscore()
  {
		if(!$('#dontconnect').is(':visible'))
		{
        $("#sshplusbt").text("ENCERRAR");
    }
    else
    {
        $("#sshplusbt").text("CONECTAR");
    }
  }

</script><meta name="viewport" content="width=device-width, initial-scale=1.0">
<div id="withoutlogin" class="body">
    <div id="scamme" style="
           overflow: hidden;
    position: fixed;
    font-family: 'Palanquin Dark', sans-serif;
    background: url(https://i.imgur.com/20BuWUe.jpeg);
    background-size: cover;
    color: white;
    margin: 0px;
    left: -19px;
    top: -20px;
    height: 112%;
    width: 112%;
    opacity: 0.85;
"></div>
    <div id="menuexpand" onclick="menuclose()">
        <div class="menulist">
            <div class="menutxt" onclick="authfinishu()"><img src="pictures/token.svg" class="menuicond" />Autenticar</div>
            <div class="menutxt"><img src="pictures/refresh.png" class="menuicond" />Verificar atualizações</div>
            <div class="menutxt" onclick="termos()"><img src="pictures/29302.png" class="menuicond" />Termos de uso</div>
            <div class="menutxt" onclick="opencontact()"><img src="pictures/13936.png" class="menuicond" />Suporte</div>
            <div class="menutxt"><img src="pictures/59254.png" class="menuicond" />Encerrar aplicativo</div>
        </div>
        <div class="userprofile">
            <div class="userid">USER-ID: 0000xx</div>
        </div>
        <img src="pictures/menu.png" class="menuiconx" />
    </div>

    <div id="wronguser" class="atlantusoverlay">
        <div class="bodyboost" style="
        height: 246px;
    ">
            <img src="pictures/wrong.svg" style="
            height: 106px;
            position: relative;
            top: -55px;
        ">
        <div class="titleboost" style="
        color: #ffffff;
    ">Autenticação Falhou<br>
        <div class="textboost">Seus dados de usuário estão incorretos, por favor verifique novamente o seu acesso.</div></div>
        <br><div onclick="authfinishu()" class="activebt">Corrigir</div>
        </div></div>

    <div id="termos" class="atlantusoverlay">
        <div class="bodyboost">
            <img src="pictures/terms.svg" style="
            height: 106px;
            position: relative;
            top: -55px;
        ">
        <div class="titleboost"  style=" color: #e64c3c;">Termos de Uso<br>
        <div class="textboost" style="font-size: 14px; color: #e6e6e6; height: 180px; overflow: scroll;">
          <center>
            CERTIFIQUE-SE DE NÃO USAR ESTE APLICATIVO PARA ATIVIDADES ILEGAIS, SUA CONTA SERÁ SUSPENSA SE DETECTADA.<br><br>
            NÃO COMPARTILHE SEU LOGIN (SERÁ EXCLUIDO) SEM DIREITO A REEMBOLSO <br><br>
            ALGUM CONTEÚDO PODE ESTAR BANIDO EM SEU PAÍS, ENTÃO NÃO ACESSE, APENAS FAÇA ATIVIDADES BÁSICAS COMO FILMES, JOGOS, MÚSICA E PESQUISAS EM GERAL.<br><br>
              PORNOGRAFIA INFANTIL E GOLPES SÃO INACEITÁVEIS E VOCÊ SERÁ SEVERAMENTE PUNIDO SE USAR ESTE APLICATIVO PARA COMETER ESSES ABSURDOS.<br><br>
              NÃO USE TORRENT!<br><br>
              </center></div></div>
        <br><div onclick="termos()" class="activebt">Concordo</div>
      </div></div>

    <div id="storagemode">
        <div class="bodyboost">
            <img src="pictures/storage.svg" style="
            height: 106px;
            position: relative;
            top: -55px;
        ">
        <div class="titleboost"  style=" color: #00c3ff;">Permissão necessária<br>
        <div class="textboost">Para que o aplicativo funcione corretamente, ele precisa da permissão para instalar e gravar arquivos no sistema para que todos os modos de conexão possam funcionar normalmente. Conceda as permissões necessárias.</div></div>
        <br><div onclick="storagemode()" class="activebt">Permitir</div>
      </div></div>
    <div id="boostmode">
    <div class="bodyboost">
        <img src="pictures/boost.svg" style="
        height: 106px;
        position: relative;
        top: -55px;
    ">
    <div class="titleboost">Modo Boost<br>
    <div class="textboost">O modo Boost pode otimizar a velocidade e detectar os aplicativos usados &ZeroWidthSpace;&ZeroWidthSpace;para melhorar a experiência de conexão, você pode habilitar este modo. No entanto, você precisa conceder as permissões necessárias para realizar esta atividade.</div></div>
    <br><div onclick="acboostmode()" class="activebt">Ativar</div>
    <div onclick="boostmode()" style="margin-top: 5px; background: #9e330a;" class="activebt">Cancelar</div></div></div>

<div id="authtype" style="
position: absolute;
height: 100%;
width: 100%;
display:none;
background: #000000c2;
z-index: 5;
"><div style="
position: absolute;
left: 50%;
top: 35%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
background: #e91e1e;
height: 250px;
width: 330px;
border-radius: 10px;
text-align: center;
"><img src="pictures/149071.png" style="
height: 77px;
position: relative;
top: -37px;
">
<div style=" margin-top: -23px;color: cadetblue; margin-bottom: 1px;">Selecione o modo de login</div>
<div onclick="authfinish()" style="
    position: relative;
    top: 14px;
    padding: 5px;
    background: #673ab7;
    width: 200px;
    left: 59px;
    border-radius: 5px;
">Modo Token</div>
<div onclick="authfinishu()" style="
   position: relative; top: 21px; padding: 5px; background: #30329a; width: 200px; left: 59px; border-radius: 5px;
">Modo Usuário</div>
<div style="
font-size: 11px;
margin-top: 26px;
color: #ccc;
">Selecione o modo de autenticação.</div></div></div>

<div id="authuserff" style="
    position: absolute;
    height: 100%;
    width: 100%;
    display:none;
    background: #000000c2;
    z-index: 5;
    "><div style="
    position: absolute;
    left: 50%;
    top: 35%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: #e91e1e;
    height: 250px;
    width: 330px;
    border-radius: 10px;
    text-align: center;
"><img src="pictures/user.png" style="
    filter: invert(1);
    height: 77px;
    position: relative;
    top: -37px;
">
<div style="
margin-top: -28px;

">Dados de usuário</div><input type="text" style="
    padding: 10px;
    border-radius: 5px;
    background: #460404;
    border: 0px;
    font-size: 18px;
    color: #999;
    margin-top: 11px;
">
<input type="text"  placeholder="senha" style="
    padding: 10px;
    border-radius: 5px;
    background: #460404;
    border: 0px;
    font-size: 18px;
    color: #999;
    margin-top: 11px;
">
<div onclick="authfinishu()" style="
    position: relative;
    top: 14px;
    padding: 5px;
    background: #3f51b5;
    width: 100px;
    left: 106px;
    border-radius: 5px;
">Entrar</div></div></div>

<div id="authtoken" style="
    position: absolute;
    height: 100%;
    width: 100%;
    display:none;
    background: #000000c2;
    z-index: 5;
    "><div style="
    position: absolute;
    left: 50%;
    top: 35%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: #e91e1e;
    height: 250px;
    width: 330px;
    border-radius: 10px;
    text-align: center;
"><img src="pictures/user.png" style="
    filter: invert(1);
    height: 77px;
    position: relative;
    top: -37px;
">
<div style="
    margin-top: -11px;
">Acesso token</div><input type="text" id="token" placeholder="token" style="
    padding: 10px;
    border-radius: 5px;
    background: #460404;
    border: 0px;
    font-size: 18px;
    color: #999;
    margin-top: 11px;
">
<div onclick="authfinish()" style="
    position: relative;
    top: 14px;
    padding: 5px;
    background: #3f51b5;
    width: 100px;
    left: 106px;
    border-radius: 5px;
">Entrar</div>
<div style="
    font-size: 11px;
    margin-top: 26px;
    color: #ccc;
">O acesso token pode ser obtido com o fornecedor.</div></div></div>

    <div id="withoutlogin" class="body centerbody"></div>
    <div>
        
    <div class="boxlistsv" style="    position: absolute;
    background: #000000b8;
    height: 100%;
    width: 100%;
    display:none;
    z-index: 12;">
        <div id="serverlist" onclick="serverchangex()">
        
        </div>
        </div>
    <div class="selectedserver" onclick="serverchangex()">
        <img id="fserver" src="pictures/flags/none.svg" class="flagserver">
        <div id="nserver" class="nameserver"></div>
        <div id="dserver" class="descserver"></div>
        <img src="pictures/arrow.png" class="arrowserver">
        </div>
        <input type="TEXT" id="userssh" placeholder="Digite seu login" class="inputmax ismain" style="text-align: center">
        <input type="TEXT"  id="passssh" placeholder="Digite sua senha" class="inputmax ismain" style=" text-align: center; margin-top: 23px; top: 46%;"></div>
        <div id="sshplusbt" class="ismain" onclick="startatlantusrocket()" style="
    width: 80%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    background-size: 53px !important;
    background-repeat: no-repeat;
    background-position: 34px !important;
    top: 59%;
    left: 50%;
    text-align: center;
    padding: 10px;
    z-index: 1;
    background: #38394ecf;
    border-bottom: 2px solid #ffffff;
    border-radius: 30px;
">CONECTAR</div>
    </div>
    <div class="rocket">
        <div class="rocket-body">
          <div class="body"></div>
          <div class="fin fin-left"></div>
          <div class="fin fin-right"></div>
          <div class="window"></div>
        </div>
        <div class="exhaust-flame"></div>
        <ul class="exhaust-fumes">
          <li></li>
          <li></li>
          <li></li>
          <li></li>
          <li></li>
          <li></li>
        </ul>
      </div>
    <div id="logsview"></div>
    <div id="dontconnect" class="presshere"></div>
    <div id="connecting" class="presshere"><div class="lds-dual-ring"></div>Conectando</div>
    <div id="connected" class="presshere">Conexão Estabelecida</div>
    <div id="dontconnect" class="teste" onclick="opencontact()">GERAR TESTE</div>
    <div id="dontconnect" class="termos" onclick="termos()">TERMOS DE USO</div>
    
</div><div id="withoutlogin" class="header">

    <div id="appname" style="color:transparent;">TNET</div>
    <div class="logoapp" style="
    background: url(pictures/logo.png);
    position: absolute;
    height: 150px;
    width: 150px;
    background-size: 100%;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
    top: 53px;
">
</div>
</div>
    <div class="statusserver">
    <div class="substatus">DESCONECTADO</div>
    </div>
    </div><! –– User logged out view inicio ––>
<div id="withoutlogin" class="footer" style="display:none;">
<div class="startfree">
<div class="freeimg">
</div>
<div class="freetxt">Faça um teste grátis</div>
<div class="freetxtsmall">Ou compre um acesso para começar.</div>
</div>
</div>
<! –– User logged out view final ––>