
.zoom {
    position: fixed;
    bottom: 55px;
    right: 20px;
    height: 25px;
    z-index: 9999;
}

    .zoom.alt {
        bottom: 120px;
    }

.zoom-fab {
    border: white 3px solid;
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    background-color: #1f6fe2;
    vertical-align: middle;
    text-decoration: none;
    text-align: center;
    transition: 0.2s ease-out;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    color: #FFF;
    font-size: 23px;
}

    .zoom-fab.alt {
        background-color: #1f6fe2;
        opacity: 0.7;
        outline: none;
    }

        .zoom-fab.alt:hover {
            background-color: #1f6fe2;
            opacity: 1;
        }

    .zoom-fab:hover {
        background-color: #0d3a79;
        color: #FFF;
        box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
    }

.zoom-btn-large {
    width: 60px;
    height: 60px;
    line-height: 60px;
}

.zoom-btn-person {
    background-color: #F44336;
}

    .zoom-btn-person:hover {
        background-color: #e57373;
    }

.zoom-btn-doc {
    background-color: #ffeb3b;
}

    .zoom-btn-doc:hover {
        background-color: #fff176;
    }

.zoom-btn-tangram {
    background-color: #4CAF50;
}

    .zoom-btn-tangram:hover {
        background-color: #81c784;
    }

.zoom-btn-report {
    background-color: #2196F3;
}

    .zoom-btn-report:hover {
        background-color: #64b5f6;
    }

.zoom-btn-feedback {
    background-color: #9c27b0;
}

    .zoom-btn-feedback:hover {
        background-color: #ba68c8;
    }

.zoom-menu {
    position: absolute;
    right: 70px;
    left: auto;
    top: 50%;
    transform: translateY(-50%);
    height: 100%;
    width: 500px;
    list-style: none;
    text-align: right;
}

    .zoom-menu li {
        display: inline-block;
        margin-right: 10px;
    }

.zoom-card {
    position: absolute;
    right: 150px;
    bottom: 70px;
    transition: box-shadow 0.25s;
    padding: 24px;
    border-radius: 2px;
    background-color: #009688;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
    color: #FFF;
}

    .zoom-card ul {
        -webkit-padding-start: 0;
        list-style: none;
        text-align: left;
    }

.scale-transition {
    transition: transform 0.3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important;
}

    .scale-transition.scale-out {
        transform: scale(0);
        transition: transform 0.2s !important;
    }

    .scale-transition.scale-in {
        transform: scale(1);
    }
