body {
    font-family:  Arial, sans-serif;
    font-size: 15px;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
/*    height: 100vh;*/
/*    padding: 20px;*/
    background-color: #f4f4f9;
    background-image: url('web/background.png');
}

.floating-div {
    line-height: 20px;
    font-size: 14px;
    display: none;
    position: fixed;
    top: 20px;
    right: 20px;
    bottom: 20px;
    width: 400px;
/*    background: #566573;*/
    color: black;
/*    border: 1px solid #ccc;*/
    padding: 20px;
    z-index: 1000;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    border-radius: 20px;
    background-color: rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(20px);
/*    max-width: 300px;  Pembatasan lebar untuk menghindari terlalu lebar */
    max-height: 700px; /* Pembatasan tinggi untuk kotak */
    overflow-y: auto; /* Menambahkan scroll jika kontennya terlalu banyak */
}

.floating-link{
    text-align: right;
}

#hiddenDiv {
            display: none; /* Sembunyikan div ini secara default */
            position: fixed; /* Untuk memposisikan div di sisi kanan */
            right: 20px; /* Jarak dari kanan */
            top: 20px; /* Jarak dari atas */
            width: 200px; /* Lebar div */
            padding: 10px;
            background-color: #f0f0f0;
            border: 1px solid #ccc;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
            z-index: 1000; /* Agar div muncul di atas elemen lain */
        }

.loader {
    padding-top: 0px;
        border: 5px solid #90f2b0; /* Warna latar belakang */
        border-top: 5px solid #3498db; /* Warna spinner */
        border-radius: 20%;
        width: 7px; /* Ukuran spinner */
        height: 7px;
        animation: spin 4s linear infinite; /* Animasi spinner */
        display: inline-block;
        vertical-align: text-top;
    }

    @keyframes spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
    }


.bot-message-container {
    display: flex;
    align-items: flex-start; /* Atur agar item di dalam flex container teralign ke atas */
    margin: 5px 0; /* Berikan jarak antar pesan */
}

.robot-icon {
    width: 30px; /* Anda bisa menyesuaikan ukuran ikon sesuai kebutuhan */
    height: 30px; /* Sama seperti di atas */
    margin-right: 10px; /* Berikan jarak antara ikon dan pesan */
    margin-top: 15px;
}


.judul {
    padding-top: 10px;
    font-size: 14px;
    line-height:15px;
/*    background-color: red;*/
}

.subjudul {
    padding: 5px;
    font-size: 20px;
    line-height:15px;
/*    background-color: red;*/
}

.chat-container {
    padding-right: 10px;
    padding-left: 10px;
    margin-top: 10px;
    width: 750px; /* Lebar tetap */
    height: calc(100vh - 20px); /* Mengurangi 20 piksel dari tinggi jendela */
    display: flex;
    flex-direction: column;
    line-height: 10px;
    border: 0px solid #ccc;
    border-radius: 10px;
    box-shadow: 0 0px 8px rgba(0, 0, 0, 0.2);
/*    background-color: red;*/
    box-sizing: border-box;
}

#chat-box {
    flex: 1;
    overflow-y: auto; /* Aktifkan scrolling ketika ada overflow */
    border: 0px solid #ccc;
    border-radius: 5px;
    margin-bottom: 10px;
    padding: 10px;
    box-sizing: border-box;
/*    background-color: #f9f9f9;*/
    display: flex;
    flex-direction: column;
    padding-top: 40px;
}

.message { 
    max-width: 70%; /* Untuk prosentase lebar chat */
    margin-top:  10px;
    margin-left: 0px;
    padding: 10px;
    padding-bottom: 5px;

    padding-left: 15px;
    border-radius: 10px;
    line-height: 1.4;
    position: relative;

}

.timestamp {
    font-size: 11px;
    padding-top: 5px;
    color: grey;
    text-align: right;
}

.bot-message {
    padding-left: 13px;
    padding-right: 15px;
    color: #464a4f;
    background-color: white;
    align-self: flex-start;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid #ccc;
}

.bot-message img {
    width: 100%;
    height: 100%;
    max-height: 300px; /* Adjust as necessary for consistency */
    object-fit: cover; /* Ensures aspect ratio is maintained */
    display: block;
    margin-top: 10px;
    margin-bottom: 10px; /* jarak antara gambara dan tulisan download */
    border: 1px solid #ccc;
    }

.user-message {
    color: #7f570a;
    background-color: #feecaa; /* #f1f9a0 hijau pupus soft */
    align-self: flex-end;
    font-size: 15px;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid #f7d042; /* hijau pupus soft: 1px solid #b4df33 */
}

#user-input {
    color: #555;
    width: 98%;
    height: 40px;
    margin-left: 0px;
    padding: 10px;
    padding-bottom: 10px;
    border: 1px solid #d4f4ec;
    border-radius: 5px;
    box-sizing: border-box;
    font-size: 15px;
    

}

#send-btn {
    width: 100%;
    height: 40px;
    padding: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
    border: 1px solid #e1f4ef;
    background-color: #e1f4ef;
    color: black;
    border-radius: 5px;
    cursor: pointer;

}

#send-btn:hover {
    background-color: #6cdec6;
}

@media (max-width: 600px) {
    .chat-container {
        width: 95%;
    }
    #chat-box {
        height: 250px;
    }
}