/* Zentrieren des gesamten Inhalts und Grundfarbgebung */ body { font-family: 'Segoe UI', Tahoma, Geneva, sans-serif; display: flex; justify-content: center; align-items: center; /* height: 100vh;*/ margin: 0; background-color: #e9ecef; } /* Container für zentrales Layout */ .container { text-align: center; max-width: 500px; padding: 20px; } /* Styling für die Form-Wrapper */ .form-wrapper { display: flex; justify-content: space-around; gap: 20px; } /* Formulare aufhübschen */ .form { background: #ffffff; padding: 20px; width: 75%; border-radius: 8px; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); } h1 { color: #333; font-size: 1.8rem; margin-bottom: 10px; } h2 { color: #007bff; font-size: 1.5rem; margin-bottom: 15px; } input, button { width: 80%; padding: 12px; margin: 10px 0; border-radius: 5px; border: 1px solid #ddd; font-size: 1rem; } input:focus { outline: none; border-color: #007bff; box-shadow: 0px 0px 5px rgba(0, 123, 255, 0.3); } button { background-color: #007bff; color: #ffffff; border: none; cursor: pointer; transition: background-color 0.3s; } button:hover { background-color: #0056b3; } /* Responsive Design */ @media (max-width: 600px) { .form-wrapper { flex-direction: column; align-items: center; } .form { width: 90%; } } /* Für die welcome.html Seite */ /* Grundlayout für den gesamten Body */ /* Header Layout */ .header { z-index: 10; display: flex; justify-content: space-between; align-items: center; padding: 10px 20px; background-color: #ffffff; border-bottom: 2px solid #ddd; box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1); position: fixed; top: 0; width: 100%; } /* Linksbündiger Willkommenstext */ .header-welcome { font-size: 1.5rem; color: #333; margin: 0; flex-grow: 1; text-align: left; padding: 0.5rem; } /* Benutzerinformationen (zentriert) */ .header-user-info { text-align: center; color: #007bff; margin-right: 2%; font-size: 0.9rem; } /* Header-Buttons für Admin und Logout (rechts) */ .header-buttons { display: flex; gap: 10px; padding: 0.5rem; } .header-btn { background-color: #007bff; color: #ffffff; border: none; width: auto; border-radius: 5px; padding: 8px 12px; cursor: pointer; font-size: 1rem; transition: background-color 0.3s; } .header-btn:hover { background-color: #0056b3; } /* Freier Platz für zukünftige Features */ main { flex-grow: 1; } /* Benutzerliste Styling */ .user-list { margin-top: 6rem; padding: 20px; background-color: #f8f9fa; border-radius: 8px; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); } /* Titel im Header */ .header-title { font-size: 1.5rem; color: #333; margin: 0; flex-grow: 1; text-align: left; padding: 0.5rem; } .button-delete { color: red; } /* Chat Interface Styles .chat-container { width: 100%; margin: 0 auto; display: flex; flex-direction: column; height: 100vh; background-color: #f4f6f8; border: 1px solid #ccc; border-radius: 8px; overflow: hidden; }*/ .chat-box { flex: 1; padding: 15px; display: flex; flex-direction: column-reverse; overflow-y: auto; } .chat-message { margin-bottom: 10px; padding: 10px; border-radius: 8px; max-width: 80%; word-wrap: break-word; } .chat-message.user { background-color: #007bff; color: #fff; align-self: flex-end; } .chat-message.assistant { background-color: #e0e0e0; color: #000; align-self: flex-start; } .chat-input-container { display: flex; padding: 10px; background-color: #ffffff; border-top: 1px solid #ccc; } .chat-input { flex: 1; padding: 8px; border-radius: 4px; border: 1px solid #ccc; font-size: 16px; resize: none; /* Entfernt die Möglichkeit, das Textfeld zu vergrößern */ overflow-y: auto; /* Fügt einen vertikalen Scroll hinzu, wenn nötig */ max-height: 80px; /* Maximale Höhe für das Textfeld */ } .chat-input:focus { outline: none; /* Entfernt den Standard-Fokusrahmen */ } /* Kleinere Sendetaste */ .chat-send-button { margin: 0.5rem; padding: 8px 12px; /* Kleinere Abmessungen */ background-color: #007bff; color: white; border: none; border-radius: 4px; font-size: 14px; /* Kleinere Schriftgröße */ cursor: pointer; } .chat-send-button:hover { background-color: #0056b3; } /* Haupt-Container für Layout mit Seitenleiste */ .main-container { height: 90vh; width: 100%; display: flex; transform: translate(0px, 6rem); } /* Linke Seitenleiste */ .sidebar { width: 200px; background-color: #2c3e50; color: #fff; padding: 15px; overflow-y: auto; } .sidebar h3 { margin: 0; padding-bottom: 10px; border-bottom: 1px solid #fff; font-size: 18px; } .chat-session-button { background-color: #34495e; color: #fff; padding: 10px; margin-top: 10px; border: none; border-radius: 4px; width: 100%; cursor: pointer; text-align: left; } .chat-session-button:hover { background-color: #3b5998; } /* Chatbereich Styles (wie oben beschrieben) */ .chat-container { width: 100%; flex: 1; display: flex; flex-direction: column; background-color: #f4f6f8; border-left: 1px solid #ccc; overflow: hidden; } .chat-box { flex: 1; padding: 15px; display: flex; flex-direction: column-reverse; overflow-y: auto; } #chatBox { display: flex; flex-direction: column-reverse; overflow-y: auto; } #sendButton { width: auto; } /* Hinzufügen von Lösch-Button-Stilen */ .chat-session-button-container { display: flex; align-items: center; margin-top: 10px; } .chat-session-button { flex: 1; background-color: #34495e; color: #fff; padding: 8px; border: none; border-radius: 4px; text-align: left; cursor: pointer; } .chat-session-button:hover { background-color: #3b5998; } /* Löschen-Button */ .delete-chat-button { width: auto; background-color: #e74c3c; color: #fff; border: none; border-radius: 4px; padding: 5px; margin-left: 8px; cursor: pointer; } .delete-chat-button:hover { background-color: #c0392b; } /* Neuer Chat-Button */ #newChatButton { background-color: #2ecc71; color: #fff; border: none; border-radius: 4px; padding: 10px; margin-bottom: 10px; cursor: pointer; } #newChatButton:hover { background-color: #27ae60; } /* General alert styling */ .custom-alert { display: none; /* Hide by default */ position: fixed; top: 20%; left: 50%; transform: translateX(-50%); border-radius: 8px; padding: 20px; max-width: 400px; z-index: 9999; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); font-family: Arial, sans-serif; font-size: 16px; animation: slideIn 0.3s ease-out; } /* Success-specific styling (green) */ .custom-alert.success { background-color: #d4edda; /* Light green background */ color: #155724; /* Dark green text */ border: 1px solid #c3e6cb; /* Border for success message */ } /* Error-specific styling (red) */ .custom-alert.error { background-color: #f8d7da; /* Light red background */ color: #721c24; /* Dark red text */ border: 1px solid #f5c6cb; /* Border for error message */ } /* Alert content styling */ .alert-content { display: flex; flex-direction: column; align-items: center; } #alert-message { margin-bottom: 15px; text-align: center; } /* Button styling based on alert type */ .custom-alert.success .close-btn { background-color: #4CAF50; /* Green button for success */ color: white; } .custom-alert.error .close-btn { background-color: #f44336; /* Red button for error */ color: white; } /* General alert box styling */ #custom-alert-confirm { display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); background-color: #fff; border-radius: 10px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); padding: 20px; width: 300px; z-index: 1000; text-align: center; } /* Styling the alert message */ #alert-message-confirm { margin-bottom: 15px; font-size: 16px; color: #333; } /* Styling for the buttons container */ #custom-alert-confirm button { font-size: 14px; padding: 10px 20px; border: none; border-radius: 5px; margin: 10px 5px; cursor: pointer; transition: background-color 0.3s ease; } /* Confirm button */ #confirm-alert-confirm { background-color: #4CAF50; /* Green button for confirm */ color: white; } /* Close button */ #close-alert-confirm { background-color: #f44336; /* Red button for cancel */ color: white; } /* On hover, change background color for buttons */ #confirm-alert-confirm:hover { background-color: #45a049; } #close-alert-confirm:hover { background-color: #e53935; } /* Additional success and error styling based on alert type */ #custom-alert-confirm.success { border-left: 5px solid #4CAF50; /* Green left border for success */ } #custom-alert-confirm.error { border-left: 5px solid #f44336; /* Red left border for error */ } /* Button common styles */ .close-btn { border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; font-size: 16px; transition: background-color 0.3s ease; } /* Hover effect for the button */ .close-btn:hover { opacity: 0.8; } /* Slide-in animation */ @keyframes slideIn { from { opacity: 0; transform: translateX(-50%) translateY(-20px); } to { opacity: 1; transform: translateX(-50%) translateY(0); } } /* Progress bar */ #progress-main-div { margin-top: 1rem; border: none; }