    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    html, body {
      height: 100%;
      margin: 0;
      padding: 0;
    }

    body {
      font-family: Arial, sans-serif;
      display: flex;
      flex-direction: column;
      background: transparent;
      min-height: 100vh;
    }
    
    #chat-widget {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    height: 100vh;
    width: 100%; 
    max-width: 100%; 
    background: white;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    overflow: hidden;
    margin: 0;
    }
    
    #chat-header {
    background-color: #d8e2ec;
    background-image: url('/static/images/Header_BG.jpg');
    background-size: cover;
    background-position: left center;
    background-repeat: no-repeat;
    color: white;
    padding: 0 15px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-shrink: 0;
    width: 100%;
    aspect-ratio: 17 / 1;
    min-height: 60px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    }
    
    .header-buttons {
    display: flex;
    align-items: center;
    }
    
    #reset-button, #close-button {
    color: #fe8810;
    font-size: 24px;
    cursor: pointer;
    transition: color 0.3s ease;
    margin-left: 15px;
    }
    
    #reset-button:hover, #close-button:hover {
    color: #b06519;
    }
    
    @media (min-width: 2040px) {
    #chat-header {
    max-height: 199px;
    }
    }

    #header-text {
    color: #ec8934;
    font-weight: bold;
    font-size: 1.1em;
    margin-left: 15px;
    }

    #close-button {
    color: #fe8810;
    font-size: 24px;
    cursor: pointer;
    padding: 0 10px;
    transition: color 0.3s ease;
    }

    #close-button:hover {
      color: #b06519;
    }
    
    #chat-container {
    flex: 1;
    padding: 15px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background-color: #f8f9fa;
    height: auto;
    }

    .message {
      max-width: 85%;
      padding: 12px 16px;
      border-radius: 15px;
      line-height: 1.4;
      font-size: 14px;
    }

    .message strong {
      font-weight: bold;
    }

    .message em {
      font-style: italic;
    }

    .message a {
      color: #ec8934;
      text-decoration: none;
    }

    .message a:hover {
      text-decoration: underline;
    }

    .message br {
      margin-bottom: 5px;
    }

    .user-message {
      background-color: #ec8934;
      color: white;
      margin-left: auto;
      border-bottom-right-radius: 5px;
    }
    .user-message .message-text-container {
    background: transparent;
    box-shadow: none;
    }

    .assistant-message {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      background-color: white;
      color: #252730;
      margin-right: auto;
      border-bottom-left-radius: 5px;
      box-shadow: 0 2px 5px rgba(0,0,0,0.05);
      max-width: 85%;
      padding: 12px;
    }

    .message-wrapper {
      display: flex;
      align-items: flex-start;
      gap: 10px;
    }

    .avatar-container {
    margin-top: 10px;  
    flex-shrink: 0;
    }

    .assistant-avatar {
      width: 40px;
      height: 40px;
      border-radius: 50%;
    }

    .message-text-container {
      background: white;
      padding: 12px;
      border-radius: 10px;
      box-shadow: 0 2px 5px rgba(0,0,0,0.05);
      max-width: 100%;
      word-wrap: break-word;
    }
    
    #input-container {
    padding: 15px;
    background: white;
    border-top: 1px solid #eee;
    display: flex;
    gap: 10px;
    height: 60px;
    width: 100%;
    position: sticky;
    bottom: 0; 
    }


    #user-input {
      flex: 1;
      min-width: 0;
      padding: 12px;
      border: 2px solid #e0e0e0;
      border-radius: 25px;
      outline: none;
      font-size: 14px;
      transition: border-color 0.3s ease;
    }

    #user-input:focus {
      border-color: #ec8934;
    }
    
    #send-button {
    background-color: #ec8934;
    color: white;
    border: none;
    border-radius: 25px;
    padding: 0 24px;
    cursor: pointer;
    font-weight: bold;
    transition: background-color 0.3s ease;
    min-width: 80px;
    white-space: nowrap;
    height: 40px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    }

    #send-button:hover {
      background-color: #d67822;
    }
    
    /* Neue Animation für den Streaming-Effekt */
    @keyframes blinkCursor {
      0%, 100% { border-right: 2px solid transparent; }
      50% { border-right: 2px solid #ec8934; }
    }

    .streaming-text {
      border-right: 2px solid #ec8934;
      animation: blinkCursor 1s infinite;
      padding-right: 2px;
    }
    
    @media screen and (max-width: 768px) {
    #chat-widget {
    height: 100vh;
    width: 100%;
    max-width: 100%;
    margin: 0;
    border-radius: 0;
    }
    
    #input-container {
    padding: 10px;
    height: auto;
    min-height: 60px;
    }
    
    #user-input {
    height: 40px;
    padding: 8px 12px;
    font-size: 16px;
    }
    
    #send-button {
    padding: 8px 16px;
    min-width: 80px;
    height: 40px;
    font-size: 14px;
    }
    
    .message {
    max-width: 90%;
    padding: 8px 12px;
    font-size: 13px;
    }
}
    
    @media screen and (max-width: 480px) {
    #input-container {
    padding: 8px;
    }
    
    #user-input {
    font-size: 16px;
    }
    
    #send-button {
    min-width: 70px;
    padding: 8px 12px;
    }
}

    .feedback-container {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      margin-top: 10px;
      padding-top: 5px;
      border-top: 1px solid #eee;
    }

    .feedback-question {
      font-size: 12px;
      color: #666;
      margin-bottom: 4px;
    }

    .feedback-buttons {
      display: flex;
      gap: 8px;
    }

    .feedback-btn {
      padding: 4px 12px;
      border: 1px solid #eee;
      border-radius: 15px;
      background: white;
      cursor: pointer;
      display: flex;
      align-items: center;
      gap: 4px;
      transition: all 0.2s ease;
    }

    .feedback-btn:hover {
      background: #f5f5f5;
    }

    .feedback-modal {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0,0,0,0.5);
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 1000;
    }

    .modal-content {
      background: white;
      padding: 20px;
      border-radius: 10px;
      width: 90%;
      max-width: 500px;
      box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    }

    .modal-buttons {
      display: flex;
      justify-content: flex-end;
      gap: 10px;
      margin-top: 15px;
    }

    .modal-buttons button {
      padding: 8px 16px;
      border-radius: 5px;
      cursor: pointer;
      border: none;
    }

    .modal-buttons button:first-child {
      background: #ec8934;
      color: white;
    }

    .modal-buttons button:last-child {
      background: #eee;
    }

    #feedback-comment {
      width: 100%;
      min-height: 100px;
      margin: 10px 0;
      padding: 8px;
      border: 1px solid #ddd;
      border-radius: 5px;
      resize: vertical;
    }

.privacy-notice {
  font-size: 0.7em;
  color: #6c757d;
  display: block;
  margin-top: 10px;
}

.message ul, .message ol {
  margin-left: 20px;  /* Einrückung der gesamten Liste */
  padding-left: 10px; /* Zusätzlicher Abstand für die Listenpunkte */
}

.message li {
  margin-bottom: 5px; /* Abstand zwischen den Listenpunkten */
}
