.step-container {
    background-color: rgba(0,0,0,0.1);
    width: 100%;
    position: absolute;
    z-index: 99;
    left: 0;
    top: 0;
    display: none;
}
.step-explained {
    width: 250px;
    background-color: #FFF;
    border-radius: 4px;
    padding: 10px;
    position: absolute;
    -webkit-box-shadow: 0 2px 10px rgba(0,0,0,.3);
    box-shadow: 0 2px 10px rgba(0,0,0,.3);
}
.step-explained.animate {
    -webkit-transition: all 0.25s ease-in-out;
}
.step-explained .caret {
    content: "";
    width: 0; 
    height: 0; 
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid white;
    position: absolute; 
    top: -5px;
}
.step-explained .caret.bottom {
	border-top: 5px solid #3498db;
	border-bottom: none;
    top: initial;
    bottom: -5px;
}
.step-data {
    width: 100%;
}
.step-footer {
    margin-top: 15px;
    width: 100%;
}
.step-footer .step-controls {
    width: 100%;
    text-align: right;
}
.step-footer .step-controls .step-counter {
    float: left;
    display: inline-block;
    vertical-align: middle;
    padding: 5px 0;
    color: rgba(255,255,255,0.3);
}
.step-footer .step-controls .step-button {
    outline: none;
    border: none;
    background: none;
    color: #FFF;
    padding: 5px 10px;
    display: inline-block;
    vertical-align: middle;;
}
.step-footer .step-controls .step-button:disabled {
    display: none;
}
.step-footer .step-controls .step-button:hover {
    cursor: pointer;
    background: rgba(0,0,0,0.1);
}