:focus {
    outline: none;
}

/* necessary to give position: relative to parent. */
input[type="text"] {
    background: #fff;
    border: 1px solid #e0e6f6;
    height: 53px;
    box-shadow: none;
    padding-left: 20px;
    font-size: 16px;
    width: 100%;
}

:focus {
    outline: none;
}

.col-3 {
    float: left;
    width: 27.33%;
    margin: 40px 3%;
    position: relative;
}

.effect-1,
.effect-2,
.effect-3 {
    border: 0;
    padding: 7px 0;
    border-bottom: 1px solid #ccc;
}

    .effect-1 ~ .focus-border {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.4s;
    }

    .effect-1:focus ~ .focus-border {
        width: 100%;
        transition: 0.4s;
    }

    .effect-2 ~ .focus-border {
        position: absolute;
        bottom: 0;
        left: 50%;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.4s;
    }

    .effect-2:focus ~ .focus-border {
        width: 100%;
        transition: 0.4s;
        left: 0;
    }

    .effect-3 ~ .focus-border {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 2px;
        z-index: 99;
    }

        .effect-3 ~ .focus-border:before,
        .effect-3 ~ .focus-border:after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            width: 0;
            height: 100%;
            background-color: #4caf50;
            transition: 0.4s;
        }

        .effect-3 ~ .focus-border:after {
            left: auto;
            right: 0;
        }

    .effect-3:focus ~ .focus-border:before,
    .effect-3:focus ~ .focus-border:after {
        width: 50%;
        transition: 0.4s;
    }

.effect-4,
.effect-5,
.effect-6 {
    border: 0;
    padding: 5px 0 7px;
    border: 1px solid transparent;
    border-bottom-color: #ccc;
    transition: 0.4s;
}

    .effect-4:focus,
    .effect-5:focus,
    .effect-6:focus {
        padding: 5px 14px 7px;
        transition: 0.4s;
    }

    .effect-4 ~ .focus-border {
        position: absolute;
        height: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        transition: 0.4s;
        z-index: -1;
    }

    .effect-4:focus ~ .focus-border {
        transition: 0.4s;
        height: 36px;
        border: 2px solid #4caf50;
        z-index: 1;
    }

    .effect-5 ~ .focus-border {
        position: absolute;
        height: 36px;
        bottom: 0;
        left: 0;
        width: 0;
        transition: 0.4s;
    }

    .effect-5:focus ~ .focus-border {
        width: 100%;
        transition: 0.4s;
        border: 2px solid #4caf50;
    }

    .effect-6 ~ .focus-border {
        position: absolute;
        height: 36px;
        bottom: 0;
        right: 0;
        width: 0;
        transition: 0.4s;
    }

    .effect-6:focus ~ .focus-border {
        width: 100%;
        transition: 0.4s;
        border: 2px solid #4caf50;
    }

.effect-7,
.effect-8,
.effect-9 {
    border: 1px solid #ccc;
    padding: 7px 14px 9px;
    transition: 0.4s;
}

    .effect-7 ~ .focus-border:before,
    .effect-7 ~ .focus-border:after {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.4s;
    }

    .effect-7 ~ .focus-border:after {
        top: auto;
        bottom: 0;
    }

    .effect-7 ~ .focus-border i:before,
    .effect-7 ~ .focus-border i:after {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 2px;
        height: 0;
        background-color: #4caf50;
        transition: 0.6s;
    }

    .effect-7 ~ .focus-border i:after {
        left: auto;
        right: 0;
    }

    .effect-7:focus ~ .focus-border:before,
    .effect-7:focus ~ .focus-border:after {
        left: 0;
        width: 100%;
        transition: 0.4s;
    }

    .effect-7:focus ~ .focus-border i:before,
    .effect-7:focus ~ .focus-border i:after {
        top: 0;
        height: 100%;
        transition: 0.6s;
    }

    .effect-8 ~ .focus-border:before,
    .effect-8 ~ .focus-border:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.3s;
    }

    .effect-8 ~ .focus-border:after {
        top: auto;
        bottom: 0;
        left: auto;
        right: 0;
    }

    .effect-8 ~ .focus-border i:before,
    .effect-8 ~ .focus-border i:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 2px;
        height: 0;
        background-color: #4caf50;
        transition: 0.4s;
    }

    .effect-8 ~ .focus-border i:after {
        left: auto;
        right: 0;
        top: auto;
        bottom: 0;
    }

    .effect-8:focus ~ .focus-border:before,
    .effect-8:focus ~ .focus-border:after {
        width: 100%;
        transition: 0.3s;
    }

    .effect-8:focus ~ .focus-border i:before,
    .effect-8:focus ~ .focus-border i:after {
        height: 100%;
        transition: 0.4s;
    }

    .effect-9 ~ .focus-border:before,
    .effect-9 ~ .focus-border:after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.2s;
        transition-delay: 0.2s;
    }

    .effect-9 ~ .focus-border:after {
        top: auto;
        bottom: 0;
        right: auto;
        left: 0;
        transition-delay: 0.6s;
    }

    .effect-9 ~ .focus-border i:before,
    .effect-9 ~ .focus-border i:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 2px;
        height: 0;
        background-color: #4caf50;
        transition: 0.2s;
    }

    .effect-9 ~ .focus-border i:after {
        left: auto;
        right: 0;
        top: auto;
        bottom: 0;
        transition-delay: 0.4s;
    }

    .effect-9:focus ~ .focus-border:before,
    .effect-9:focus ~ .focus-border:after {
        width: 100%;
        transition: 0.2s;
        transition-delay: 0.6s;
    }

    .effect-9:focus ~ .focus-border:after {
        transition-delay: 0.2s;
    }

    .effect-9:focus ~ .focus-border i:before,
    .effect-9:focus ~ .focus-border i:after {
        height: 100%;
        transition: 0.2s;
    }

    .effect-9:focus ~ .focus-border i:after {
        transition-delay: 0.4s;
    }

.effect-10,
.effect-11,
.effect-12,
.effect-13,
.effect-14,
.effect-15 {
    border: 0;
    padding: 7px 15px;
    border: 1px solid #ccc;
    position: relative;
    background: transparent;
}

    .effect-10 ~ .focus-bg {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: #ededed;
        opacity: 0;
        transition: 0.5s;
        z-index: -1;
    }

    .effect-10:focus ~ .focus-bg {
        transition: 0.5s;
        opacity: 1;
    }

    .effect-11 ~ .focus-bg {
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        height: 100%;
        background-color: #ededed;
        transition: 0.3s;
        z-index: -1;
    }

    .effect-11:focus ~ .focus-bg {
        transition: 0.3s;
        width: 100%;
    }

    .effect-12 ~ .focus-bg {
        position: absolute;
        left: 50%;
        top: 0;
        width: 0;
        height: 100%;
        background-color: #ededed;
        transition: 0.3s;
        z-index: -1;
    }

    .effect-12:focus ~ .focus-bg {
        transition: 0.3s;
        width: 100%;
        left: 0;
    }

    .effect-13 ~ .focus-bg:before,
    .effect-13 ~ .focus-bg:after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        height: 100%;
        background-color: #ededed;
        transition: 0.3s;
        z-index: -1;
    }

    .effect-13:focus ~ .focus-bg:before {
        transition: 0.3s;
        width: 50%;
    }

    .effect-13 ~ .focus-bg:after {
        left: auto;
        right: 0;
    }

    .effect-13:focus ~ .focus-bg:after {
        transition: 0.3s;
        width: 50%;
    }

    .effect-14 ~ .focus-bg:before,
    .effect-14 ~ .focus-bg:after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        height: 0;
        background-color: #ededed;
        transition: 0.3s;
        z-index: -1;
    }

    .effect-14:focus ~ .focus-bg:before {
        transition: 0.3s;
        width: 50%;
        height: 100%;
    }

    .effect-14 ~ .focus-bg:after {
        left: auto;
        right: 0;
        top: auto;
        bottom: 0;
    }

    .effect-14:focus ~ .focus-bg:after {
        transition: 0.3s;
        width: 50%;
        height: 100%;
    }

    .effect-15 ~ .focus-bg:before,
    .effect-15 ~ .focus-bg:after {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        width: 0;
        height: 0;
        background-color: #ededed;
        transition: 0.3s;
        z-index: -1;
    }

    .effect-15:focus ~ .focus-bg:before {
        transition: 0.3s;
        width: 50%;
        left: 0;
        top: 0;
        height: 100%;
    }

    .effect-15 ~ .focus-bg:after {
        left: auto;
        right: 50%;
        top: auto;
        bottom: 50%;
    }

    .effect-15:focus ~ .focus-bg:after {
        transition: 0.3s;
        width: 50%;
        height: 100%;
        bottom: 0;
        right: 0;
    }


.effect-16,
.effect-17,
.effect-18 {
    border: 0;
    font-family: Arial;
    padding: 4px 0;
    border-bottom: 1px solid #ccc;
    background-color: transparent;
}

    .effect-16 ~ .focus-border {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.4s;
    }

    .effect-16:focus ~ .focus-border,
    .has-content.effect-16 ~ .focus-border {
        width: 100%;
        transition: 0.4s;
    }

    .effect-16 ~ label {
        position: absolute;
        left: 0;
        width: 100%;
        top: 9px;
        color: #aaa;
        transition: 0.3s;
        z-index: -1;
        letter-spacing: 0.5px;
    }

    .effect-16:focus ~ label, .has-content.effect-16 ~ label {
        top: -16px;
        font-size: 12px;
        color: #4caf50;
        transition: 0.3s;
    }


    .effect-18 ~ .focus-border {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 2px;
        z-index: 99;
    }

        .effect-18 ~ .focus-border:before,
        .effect-18 ~ .focus-border:after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            width: 0;
            height: 100%;
            background-color: #4caf50;
            transition: 0.4s;
        }

        .effect-18 ~ .focus-border:after {
            left: auto;
            right: 0;
        }

    .effect-18:focus ~ .focus-border:before,
    .effect-18:focus ~ .focus-border:after,
    .has-content.effect-18 ~ .focus-border:before,
    .has-content.effect-18 ~ .focus-border:after {
        width: 50%;
        transition: 0.4s;
    }

    .effect-18 ~ label {
        position: absolute;
        left: 0;
        width: 100%;
        top: 9px;
        color: #aaa;
        transition: 0.3s;
        z-index: -1;
        letter-spacing: 0.5px;
    }

    .effect-18:focus ~ label, .has-content.effect-18 ~ label {
        top: -16px;
        font-size: 12px;
        color: #4caf50;
        transition: 0.3s;
    }

.effect-19,
.effect-20,
.effect-21 {
    border: 1px solid #ccc;
    padding: 7px 14px;
    transition: 0.4s;
    background: transparent;
}

    .effect-19 ~ .focus-border:before,
    .effect-19 ~ .focus-border:after {
        content: "";
        position: absolute;
        top: -1px;
        left: 50%;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.4s;
    }

    .effect-19 ~ .focus-border:after {
        top: auto;
        bottom: 0;
    }

    .effect-19 ~ .focus-border i:before,
    .effect-19 ~ .focus-border i:after {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 2px;
        height: 0;
        background-color: #4caf50;
        transition: 0.6s;
    }

    .effect-19 ~ .focus-border i:after {
        left: auto;
        right: 0;
    }

    .effect-19:focus ~ .focus-border:before,
    .effect-19:focus ~ .focus-border:after,
    .has-content.effect-19 ~ .focus-border:before,
    .has-content.effect-19 ~ .focus-border:after {
        left: 0;
        width: 100%;
        transition: 0.4s;
    }

    .effect-19:focus ~ .focus-border i:before,
    .effect-19:focus ~ .focus-border i:after,
    .has-content.effect-19 ~ .focus-border i:before,
    .has-content.effect-19 ~ .focus-border i:after {
        top: -1px;
        height: 100%;
        transition: 0.6s;
    }

    .effect-19 ~ label {
        position: absolute;
        left: 14px;
        width: 100%;
        top: 10px;
        color: #aaa;
        transition: 0.3s;
        z-index: -1;
        letter-spacing: 0.5px;
    }

    .effect-19:focus ~ label, .has-content.effect-19 ~ label {
        top: -18px;
        left: 0;
        font-size: 12px;
        color: #4caf50;
        transition: 0.3s;
    }

    .effect-20 ~ .focus-border:before,
    .effect-20 ~ .focus-border:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.3s;
    }

    .effect-20 ~ .focus-border:after {
        top: auto;
        bottom: 0;
        left: auto;
        right: 0;
    }

    .effect-20 ~ .focus-border i:before,
    .effect-20 ~ .focus-border i:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 2px;
        height: 0;
        background-color: #4caf50;
        transition: 0.4s;
    }

    .effect-20 ~ .focus-border i:after {
        left: auto;
        right: 0;
        top: auto;
        bottom: 0;
    }

    .effect-20:focus ~ .focus-border:before,
    .effect-20:focus ~ .focus-border:after,
    .has-content.effect-20 ~ .focus-border:before,
    .has-content.effect-20 ~ .focus-border:after {
        width: 100%;
        transition: 0.3s;
    }

    .effect-20:focus ~ .focus-border i:before,
    .effect-20:focus ~ .focus-border i:after,
    .has-content.effect-20 ~ .focus-border i:before,
    .has-content.effect-20 ~ .focus-border i:after {
        height: 100%;
        transition: 0.4s;
    }

    .effect-20 ~ label {
        position: absolute;
        left: 14px;
        width: 100%;
        top: 10px;
        color: #aaa;
        transition: 0.3s;
        z-index: -1;
        letter-spacing: 0.5px;
    }

    .effect-20:focus ~ label, .has-content.effect-20 ~ label {
        top: -18px;
        left: 0;
        font-size: 12px;
        color: #4caf50;
        transition: 0.3s;
    }

    .effect-21 ~ .focus-border:before,
    .effect-21 ~ .focus-border:after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 0;
        height: 2px;
        background-color: #4caf50;
        transition: 0.2s;
        transition-delay: 0.2s;
    }

    .effect-21 ~ .focus-border:after {
        top: auto;
        bottom: 0;
        right: auto;
        left: 0;
        transition-delay: 0.6s;
    }

    .effect-21 ~ .focus-border i:before,
    .effect-21 ~ .focus-border i:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 2px;
        height: 0;
        background-color: #4caf50;
        transition: 0.2s;
    }

    .effect-21 ~ .focus-border i:after {
        left: auto;
        right: 0;
        top: auto;
        bottom: 0;
        transition-delay: 0.4s;
    }

    .effect-21:focus ~ .focus-border:before,
    .effect-21:focus ~ .focus-border:after,
    .has-content.effect-21 ~ .focus-border:before,
    .has-content.effect-21 ~ .focus-border:after {
        width: 100%;
        transition: 0.2s;
        transition-delay: 0.6s;
    }

    .effect-21:focus ~ .focus-border:after,
    .has-content.effect-21 ~ .focus-border:after {
        transition-delay: 0.2s;
    }

    .effect-21:focus ~ .focus-border i:before,
    .effect-21:focus ~ .focus-border i:after,
    .has-content.effect-21 ~ .focus-border i:before,
    .has-content.effect-21 ~ .focus-border i:after {
        height: 100%;
        transition: 0.2s;
    }

    .effect-21:focus ~ .focus-border i:after,
    .has-conten.effect-21 ~ .focus-border i:after {
        transition-delay: 0.4s;
    }

    .effect-21 ~ label {
        position: absolute;
        left: 14px;
        width: 100%;
        top: 10px;
        color: #aaa;
        transition: 0.3s;
        z-index: -1;
        letter-spacing: 0.5px;
    }

    .effect-21:focus ~ label, .has-content.effect-21 ~ label {
        top: -18px;
        left: 0;
        font-size: 12px;
        color: #4caf50;
        transition: 0.3s;
    }

.effect-22,
.effect-23,
.effect-24 {
    border: 0;
    padding: 7px 15px;
    border: 1px solid #ccc;
    position: relative;
    background: transparent;
}

    .effect-22 ~ .focus-bg {
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        height: 100%;
        background-color: transparent;
        transition: 0.4s;
        z-index: -1;
    }

    .effect-22:focus ~ .focus-bg,
    .has-content.effect-22 ~ .focus-bg {
        transition: 0.4s;
        width: 100%;
        background-color: #ededed;
    }

    .effect-22 ~ label {
        position: absolute;
        left: 14px;
        width: 100%;
        top: 10px;
        color: #aaa;
        transition: 0.3s;
        z-index: -1;
        letter-spacing: 0.5px;
    }

    .effect-22:focus ~ label, .has-content.effect-22 ~ label {
        top: -18px;
        left: 0;
        font-size: 12px;
        color: #333;
        transition: 0.3s;
    }

    .effect-23 ~ .focus-bg:before,
    .effect-23 ~ .focus-bg:after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        height: 0;
        background-color: #ededed;
        transition: 0.3s;
        z-index: -1;
    }

    .effect-23:focus ~ .focus-bg:before,
    .has-content.effect-23 ~ .focus-bg:before {
        transition: 0.3s;
        width: 50%;
        height: 100%;
    }

    .effect-23 ~ .focus-bg:after {
        left: auto;
        right: 0;
        top: auto;
        bottom: 0;
    }

    .effect-23:focus ~ .focus-bg:after,
    .has-content.effect-23 ~ .focus-bg:after {
        transition: 0.3s;
        width: 50%;
        height: 100%;
    }

    .effect-23 ~ label {
        position: absolute;
        left: 14px;
        width: 100%;
        top: 10px;
        color: #aaa;
        transition: 0.3s;
        z-index: -1;
        letter-spacing: 0.5px;
    }

    .effect-23:focus ~ label, .has-content.effect-23 ~ label {
        top: -18px;
        left: 0;
        font-size: 12px;
        color: #333;
        transition: 0.3s;
    }

    .effect-24 ~ .focus-bg:before,
    .effect-24 ~ .focus-bg:after {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        width: 0;
        height: 0;
        background-color: #ededed;
        transition: 0.3s;
        z-index: -1;
    }

    .effect-24:focus ~ .focus-bg:before,
    .has-content.effect-24 ~ .focus-bg:before {
        transition: 0.3s;
        width: 50%;
        left: 0;
        top: 0;
        height: 100%;
    }

    .effect-24 ~ .focus-bg:after {
        left: auto;
        right: 50%;
        top: auto;
        bottom: 50%;
    }

    .effect-24:focus ~ .focus-bg:after,
    .has-content.effect-24 ~ .focus-bg:after {
        transition: 0.3s;
        width: 50%;
        height: 100%;
        bottom: 0;
        right: 0;
    }

    .effect-24 ~ label {
        position: absolute;
        left: 14px;
        width: 100%;
        top: 10px;
        color: #aaa;
        transition: 0.3s;
        z-index: -1;
        letter-spacing: 0.5px;
    }

    .effect-24:focus ~ label, .has-content.effect-24 ~ label {
        top: -18px;
        left: 0;
        font-size: 12px;
        color: #333;
        transition: 0.3s;
    }

.box_selected {
    box-shadow: 2px 2px 8px 2px rgba(0,0,0,0.4);
}

.float_panel {
    width: 60px;
    z-index: 1;
    position: absolute;
    top: 50% !important;
    right: -80px;
}

.title,
.title label {
    word-break: break-word;
}

.body--main .main--content {
    width: 88%;
}

@media (max-width: 480px) {
    .title,
    .title label {
        font-size: 24px;
    }

    .body--main .main--content {
        width: 100%;
    }
}

.img-form {
    margin: -35px -35px 0 -35px;
}

.body {
    padding: 0;
}

/**
*   TuanVN4 fix bug select mobile width 12/06/2020
*/
.mdc-select {
    height: 42px;
}

.mdc-select__dropdown-icon {
    bottom: 6px;
}

.mdc-select__native-control, .mdc-select__selected-text {
    height: 42px;
    padding-top: 10px;
}

@media screen and (max-width: 768px) {
    .question-final {
        width: 100% !important;
    }
}


.uploadFile--Btn {
    border: 1px #dadce0 solid;
    color: #1a73e8;
    line-height: 40px;
    padding: 0 15px 0 11px;
    border-radius: 4px;
    cursor: pointer;
}

    .uploadFile--Btn:hover {
        border-color: #d2e3fc;
        background-color: #f8faff;
    }
