
    body {
      overflow: hidden;
    }
    
    /* Position for the mic button to allow absolute positioning of indicator */
    #speakButton {
      position: relative;
    }

    .mic-recording {
      background-color: #fee2e2 !important; /* red-100 */
      animation: pulse 1.5s infinite;
      color: #ef4444; /* red-500 */
    }

    .camera-overlay {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.8);
      z-index: 9999;
      flex-direction: column;
    }
    
    .camera-content {
      display: flex;
      flex-direction: column;
      height: 100%;
      width: 100%;
      padding: 20px;
      box-sizing: border-box;
    }

    #cameraStream {
      flex: 1;
      width: 100%;
      object-fit: contain;
      margin-bottom: 20px;
    }

    .camera-controls {
      display: flex;
      justify-content: center;
      gap: 20px;
      margin-bottom: 20px;
      width: 100%;
    }

    .message-image {
      max-width: 100%;
      max-height: 200px;
      object-fit: contain;
      margin: 10px;
    }
    
    .message-loading {
      max-width: 50%;
      max-height: 50px;
      object-fit: contain;
      margin: 10px;
    }
  