body{
    margin: 0;
}

header{
    display: flex;
    width: 100%;
    height: 12vh;
    position: sticky;
    top: 0;
    background-color: #2C3E50 ;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    z-index: 1;

    & > a{
        text-decoration: none;

        & > img{
            height: 5vh;
            padding-left: 15px;
        }
    }

    & > .btnHolder{
        display: flex;
        padding-right: 15px;
        gap: 1.5rem;
        align-items: center;

        & > a{
            border: none;
            color: #BDC3C7;
            font-size: 14px;
            cursor: pointer;
            font-family: "Stack Sans Text", sans-serif;
            font-weight: 200;
            text-decoration: none;

            &:hover{
                color: #ECF0F1;
            }
        }

        & > a:nth-child(1){
            height: 33px;
            width: 7rem;
            background-color: #D2042D;
            border-radius: 20px;
            font-weight: 400;
            display: flex;
            justify-content: center;
            align-items: center;
            color: white;
        }

        & > .openChatBtn{
            height: 33px;
            width: 5rem;
            background-color: transparent;
            border-radius: 10px;
            font-weight: 400;
            display: flex;
            justify-content: center;
            align-items: center;
            border: 1px solid #BDC3C7;
            &:hover{
                background-color: rgba(178, 178, 178, 0.196);
            }
        }


        & > .dropdown-center{
            display: flex;
            align-items: center;

            & > button{
                background-color: transparent;
                border: none;
                color: #BDC3C7;
                font-size: 14px;
                cursor: pointer;
                font-family: "Stack Sans Text", sans-serif;
                padding: 0;
                margin: 0;
                font-weight: 200;

                &:hover{
                    color: #ECF0F1;
                }
            }

            & > ul{
                background-color: #BDC3C7;

                & > li{
                    background-color: transparent;

                    & > a{
                        color: black;
                        font-weight: 200;
                        font-size: 14px;
                        font-weight: 200;
                        font-family: "Stack Sans Text", sans-serif;

                        &:hover{
                            background-color: rgba(128, 128, 128, 0.178);
                        }
                    }
                }
             }
        }

        & > .bookBtn{
            border: none;
            color: #BDC3C7;
            font-size: 14px;
            cursor: pointer;
            font-family: "Stack Sans Text", sans-serif;
            font-weight: 200;
            text-decoration: none;
            width: fit-content;
        }

        & > button{
            border: 2px solid #BDC3C7;
            height: 33px;
            width: 5.5rem;
            border-radius: 10px;
            font-weight: 300;
            color: #BDC3C7;
            font-size: 14px;
            cursor: pointer;
            font-family: "Stack Sans Text", sans-serif;
            font-weight: 200;

            &:hover{
                color: #ECF0F1;
            }
        }
    }
}

.inline-flex{
    font-family: "Stack Sans Text", sans-serif;
    font-weight: 300;

    &:hover{
        font-weight: 500;
    }
}

.section1{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    height: 88vh;
    width: 100%;
    background-color: #7F8C8D;
    flex-direction: row;

    & > img{
        height: 40vh;
        display: flex;
        align-self: flex-end;
        padding-left: 10rem;
    }

    & > .diagnostic-container{
        display: flex;
        width: 40%;
        height: 83vh;
        background-color: #BDC3C7;
        border-radius: 10px;
        justify-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
        margin-top: 2vh;
        overflow: hidden;
            box-shadow: 0px 0px 10px rgba(25, 25, 25, 0.719);

        & > p{
            font-family: "Stack Sans Headline", sans-serif;
            font-size: 14px;
            margin: 0;
            padding: 20px 20px;
            width: 100%;
            background-color: #2C3E50;
            color: #ECF0F1;
            font-weight: 300;
        }
    
        & > .step1{
            display: flex;
            justify-content: space-between;
            width: 100%;
            height: 100%;
            flex-direction: column;
            align-items: center;
            gap: 20px;

            & > .topContainer{
                display: flex;
                flex-direction: row;
                width: 95%;
                gap: 10px;
                justify-content: flex-start;
    
                & > img{
                    height: 5vh;
                    background-color: #ECF0F1;
                    border-radius: 50px;
                    align-self: flex-end;
                    transition: transform 0.3s ease;
                }

                & > .chat-area {
                    display: flex;
                    flex-direction: column;
                    width: 100%;
                    gap: 15px;
                    max-height: 60vh;
                    overflow-y: auto;
                    padding: 10px 0px;
                    display: flex;
                    flex-direction: column;
                    scroll-behavior: smooth;

                    &::-webkit-scrollbar{
                        display: none;
                    }

                    & > h1{
                        font-family: "Stack Sans Headline", sans-serif;
                        font-size: 20px;
                        margin: 0;
                        font-weight: 900;
                    }
        
                    & > .chat-text {
                        position: absolute;
                        opacity: 0;
                        transform: translateY(20px);
                        transition: opacity 0.5s ease, transform 0.5s ease;
                    }

                    & > .chat-text.show {
                        position: unset;
                        opacity: 1;
                        transform: translateY(0);
                        background-color: #ECF0F1;
                        font-family: "Stack Sans Text", sans-serif;
                        font-size: 13px;
                        margin: 0;
                        padding: 10px;
                        border-radius: 10px;
                        font-weight: 300;
                        max-width: 75%;
                    }

                    & > .chat-bubble {
                        max-width: 75%;
                        border-radius: 16px;
                        font-family: "Stack Sans Text", sans-serif;
                        font-size: 13px;
                        margin: 0;
                        padding: 10px;
                        border-radius: 10px;
                        font-weight: 300;
                    }

                    & > .bot {
                        background: #ECF0F1;
                        align-self: flex-start;
                    }

                    & > .user {
                        background: #2C3E50;
                        color: white;
                        align-self: flex-end;
                    }
                }
            }

            & > .categoryContainer {
                opacity: 0;
                transform: translateY(10px);
                transition: all 0.2s ease;
                height: 20vh;
            }

            & > .categoryContainer.show {
                opacity: 1;
                transform: translateY(0);
                display: flex;
                flex-direction: column;
                height: 40vh;
                width: 100%;
                background-color: #ECF0F1;
                overflow-y: scroll;
                border-radius: 15px 15px 0px 0px;
                justify-content: flex-start;
                align-items: center;
                box-shadow: 0px 0px 10px rgba(25, 25, 25, 0.358);
                padding-bottom: 20px;

                &::-webkit-scrollbar{
                    display: none;
                }

                & > h2{
                    font-family: "Stack Sans Headline", sans-serif;
                    font-size: 16px;
                    margin: 0;
                    padding: 10px 20px;
                    background-color: #ECF0F1;
                    position: sticky;
                    top: 0;
                    z-index:1;
                    width: 100%;
                    text-align: start;
                }

                & > button{
                    cursor: pointer;
                    text-align: start;
                    width: 100%;
                    padding: 15px 20px;
                    display: flex;
                    flex-direction: column;

                    & > b{
                        font-family: "Stack Sans Text", sans-serif;
                        font-size: 14px;
                        margin: 0;
                    }

                    & > p{
                        font-family: "Stack Sans Text", sans-serif;
                        font-size: 12px;
                        margin: 0;
                        font-weight: 200;
                    }
                }

                & > button:nth-child(odd){
                    background-color: #ECF0F1;
                }

                & > button:nth-child(even){
                    background-color: #e9eaeb;
                }
            }

            & > .answer-buttons {
                display: flex;
                flex-direction: row;
                justify-content: center ;
                align-items: flex-start ;
                gap: 20px;
                width: 100%;
                height: 15vh;
                background-color: transparent;
                padding-right: 30px;

                & > button {
                    font-size: 14px;
                    font-weight: bold;
                    border: none;
                    border-radius: 10px;
                    cursor: pointer;
                    transition: all 0.2s ease-in-out;
                    height: 2rem;
                    width: 5rem;

                    
                    &:last-child {
                        border: 2px solid #2C3E50;
                        color: white;
                        background-color: #2C3E50;
                    }

                    &:first-child {
                        border: 2px solid #2C3E50; 
                        color: #2C3E50;
                        background-color: transparent;
                    }

                    &:hover {
                        transform: scale(1.05);
                        box-shadow: 0px 5px 15px rgba(0,0,0,0.2);
                    }

                    &:active {
                        transform: scale(0.98);
                        box-shadow: 0px 3px 10px rgba(0,0,0,0.2);
                    }
                }
            }
        }
    }
}

.modal{
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.78);
    justify-content: center;
    align-items: center;
    z-index: 100;

    & > .modal-content{
        display: flex;
        flex-direction: column;
        width: 40%;
        height: 70vh;
        align-items: center;
        color: black;
        background-color: #2C3E50 ;
        justify-content: center;
        transition:  0.1s ease;
        
        & > span {
            display: flex;
            align-self: end;
            color: rgb(184, 184, 184);
            font-size: 2rem;
            float: right;
            cursor: pointer;
            padding-right: 10px;

            &:hover{
                color: whitesmoke;
            }
        }

        & > .loginContent{
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            height: 100%;
            width: 100%;
            gap: 1rem;

            & > .top{
                display: flex;
                width: 100%;
                flex-direction: column;
                justify-content: center;
                align-items: center;
                gap: 10px;
                
                & > img{
                    height: 9vh;
                }
                & > p{
                    font-size: 1rem;
                    color: #BDC3C7;
                    font-family: "Stack Sans Text", sans-serif;
                    font-weight: 200;
                }
            }

            & > form{
                display: flex;
                align-items: center;
                flex-direction: column;
                color: black;
                font-size: 14px;
                width: 16rem;
                height: 90%;
                gap: 1rem;

                & > .input-holder {
                    display: flex;
                    line-height: 30px;
                    align-items: center;
                    position: relative;
                    width: 16rem;
                    height: 45px;

                    & > i {
                        position: absolute;
                        left: 1rem;
                        width: 1rem;
                        height: 1rem;
                        color: #BDC3C7;
                        z-index: 1;
                    }

                    & > input {
                        width: 100%;
                        height: 100%;
                        line-height: 30px;
                        padding-left: 3rem;
                        border: 2px solid #7F8C8D;
                        border-radius: 6px;
                        outline: none;
                        transition: .5s ease;
                        background: transparent;
                        backdrop-filter: blur(4.7px);
                        -webkit-backdrop-filter: blur(3.1px);
                        color: #ECF0F1;

                        &::placeholder{
                            color: #BDC3C7;
                            font-size: 14px;
                        }

                        &:focus, &:hover {
                            outline: none;
                            border: 2px solid #BDC3C7 ;
                            box-shadow: 0 0 0 3px rgba(194, 194, 194, 0.27);

                            &::placeholder{
                                color: #ECF0F1 ;
                            }
                        }
                    }

                    & > .toggle-btn {
                            position: absolute;
                            right: 1rem;
                            cursor: pointer;
                            user-select: none;
                            color: #BDC3C7;
                            font-size: 14px;

                            &:hover{
                                color: #9ea3a6;
                            }
                        }
                }

                & > .error{
                    font-size: 14px;
                    padding-top: 0;
                    margin: 0;
                    width: 15.5rem;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-weight: 200;
                    font-family: "Stack Sans Text", sans-serif;
                    color: rgb(255, 20, 20);
                }

                & > button{
                    display: flex;
                    border: 2px solid #BDC3C7;
                    background-color: #7F8C8D;
                    justify-self: center;
                    height: 45px;
                    width: 16rem;
                    align-items: center;
                    justify-content: center;
                    border-radius: 6px;
                    color: white;
                    font-size: 14px;
                    cursor: pointer;

                    &:hover{
                        border: 2px solid #BDC3C7 ;
                        background-color: #697474;
                    }
                }

                & > a{
                    display: flex;
                    align-self: flex-start;
                    color: rgb(167, 167, 167);
                    padding-left: 3px;
                    cursor: pointer;
                }
                
                & > .registerBtn{
                    display: flex;
                    flex-direction: row;
                    justify-content: center;
                    align-items: center;

                    & > p{
                        color: white;
                        font-size: 14px;
                        margin: 0;
                    }

                    & > button{
                        background-color: transparent;
                        border: none;
                        font-size: 14px;
                        color: white;
                        font-weight: 600;
                        cursor: pointer;
                        padding-left: 4px;

                        &:hover{
                            color: rgb(174, 174, 174);
                        }
                    }
                }
            }
        }

        & > .registerContent{
            display: none;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            height: 100%;
            width: 100%;
            gap: 1rem;
            
            & > .top{
                display: flex;
                width: 100%;
                flex-direction: column;
                justify-content: center;
                align-items: center;
                
                & > img{
                    height: 9vh;
                }
                & > p{
                    font-size: 1rem;
                    color: #BDC3C7;
                    font-family: "Stack Sans Text", sans-serif;
                    padding-top: 10px;
                    font-weight: 200;
                }
            }
            
            & > form{
                display: flex;
                align-items: center;
                flex-direction: column;
                color: black;
                font-size: 14px;
                width: 16rem;
                height: 90%;
                gap: 1rem;

                & > .name{
                    display: flex;
                    flex-direction: row;
                    gap: 10px;
                
                    & > input {
                        width: 10.2rem;
                        height: 45px;
                        line-height: 30px;
                        padding: 0 1rem;
                        border-radius: 6px;
                        outline: none;
                        border: 2px solid #7F8C8D;
                        transition: .5s ease;
                        background: rgba(255, 255, 255, 0.05);
                        backdrop-filter: blur(8.7px);
                        -webkit-backdrop-filter: blur(3.1px);
                        color: #ECF0F1;

        
                        &::placeholder{
                            color: #BDC3C7;
                            font-size: 14px;
                        }
                    
                        &:focus, &:hover {
                            outline: none;
                            border: 2px solid #BDC3C7 ;
                            box-shadow: 0 0 0 3px rgba(194, 194, 194, 0.27);
            
                            &::placeholder{
                                color: #ECF0F1 ;
                            }
                        }
                    }
                }
                
                & > .input-holder {
                    display: flex;
                    line-height: 30px;
                    align-items: center;
                    position: relative;
                    width: 21rem;
                    height: 45px;

                    & > i {
                        position: absolute;
                        left: 1rem;
                        fill: none;
                        width: 1rem;
                        height: 1rem;
                        color: #BDC3C7;
                        z-index: 1;
                    }

                    & > input {
                        width: 100%;
                        height: 100%;
                        line-height: 30px;
                        padding: 0 1rem;
                        padding-left: 3rem;
                        border: 2px solid #7F8C8D;
                        border-radius: 6px;
                        outline: none;
                        transition: .5s ease;
                        background: rgba(255, 255, 255, 0.05);
                        backdrop-filter: blur(4.7px);
                        -webkit-backdrop-filter: blur(3.1px);
                        color: #ECF0F1;
        
                        &::placeholder{
                            color: #BDC3C7;
                            font-size: 14px;
                        }
                    
                        &:focus, &:hover {
                            outline: none;
                            border: 2px solid #BDC3C7 ;
                            box-shadow: 0 0 0 3px rgba(194, 194, 194, 0.27);
            
                            &::placeholder{
                                color: #ECF0F1 ;
                            }
                        }
                    }

                    & > .toggle-btn {
                        position: absolute;
                        right: 1rem;
                        cursor: pointer;
                        user-select: none;
                        color: #BDC3C7;
                        font-size: 14px;
                    }
                }

                & > button{
                    display: flex;
                    border: 2px solid #BDC3C7;
                    background-color: #7F8C8D;
                    justify-self: center;
                    height: 2.8rem;
                    width: 21rem;
                    align-items: center;
                    justify-content: center;
                    border-radius: 6px;
                    color: white;
                    font-size: 14px;
                    margin-top: 1rem;
                    cursor: pointer;

                    &:hover{
                        border: 2px solid #BDC3C7 ;
                        background-color: #697474;
                    }
                }

                & > button:last-child{
                    border: none;
                    border-radius: 0;
                    background-color: rgba(87, 87, 87, 0.569);
                    margin-top: 0;
                    cursor: pointer;

                    &:hover{
                        background-color: rgba(74, 73, 73, 0.569);
                    }
                }

                & > .error{
                    font-size: 14px;
                    padding-top: 0;
                    margin: 0;
                    width: 21rem;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-weight: 200;
                    font-family: "Stack Sans Text", sans-serif;
                    color: rgb(255, 20, 20);
                }
            }
        }
    }
}