/* Global & Glow in the Dark Theme */ body { margin: 0; padding: 0; font-family: Arial, sans-serif; background-color: #121212; color: #e0e0e0; display: flex; flex-direction: column; height: 100vh; } /* Header dengan latar gelap dan animasi teks RGB */ header { text-align: center; padding: 10px; background: #1f1f1f; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5); } #header-title { font-size: 24px; margin: 0; animation: rgbRotate 3s linear infinite; } @keyframes rgbRotate { 0% { color: #ff0000; } 33% { color: #00ff00; } 66% { color: #0000ff; } 100% { color: #ff0000; } } /* Main area untuk chat */ main { flex: 1; overflow-y: auto; padding: 10px; background-color: #000; } #chat-container { display: flex; flex-direction: column; gap: 10px; scroll-behavior: smooth; /* Auto-scroll smooth */ } /* Style bubble chat */ .message { max-width: 80%; padding: 10px; border-radius: 15px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5); white-space: pre-wrap; /* Menampilkan newline & whitespace dengan benar */ word-wrap: break-word; } .message.user { align-self: flex-end; background-color: #0a84ff; color: #fff; } .message.bot { align-self: flex-start; background-color: #2ecc71; color: #fff; } /* Typing indicator (animasi titik) */ #typing-indicator { display: flex; align-items: center; gap: 5px; padding: 10px; } #typing-indicator.hidden { display: none; } #typing-indicator .dot { width: 8px; height: 8px; background-color: #fff; border-radius: 50%; animation: blink 1s infinite; } #typing-indicator .dot:nth-child(2) { animation-delay: 0.2s; } #typing-indicator .dot:nth-child(3) { animation-delay: 0.4s; } @keyframes blink { 0%, 100% { opacity: 0.2; } 50% { opacity: 1; } } /* Footer & input field */ footer { padding: 10px; background: #1f1f1f; box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.5); } #chat-form { display: flex; gap: 10px; } #chat-input { flex: 1; resize: none; padding: 10px; border-radius: 10px; border: none; outline: none; font-size: 16px; background-color: #333; color: #fff; } #send-button { padding: 10px 20px; border: none; border-radius: 10px; background-color: #e91e63; color: #fff; font-size: 16px; cursor: pointer; transition: background-color 0.3s ease; } #send-button:hover { background-color: #d81b60; } #send-button:disabled { background-color: #555; cursor: not-allowed; } /* Responsif untuk mobile */ @media (max-width: 600px) { #header-title { font-size: 20px; } #chat-input { font-size: 14px; } #send-button { font-size: 14px; } }