.keyword-search {
    margin-bottom: 10px;
    padding: 5px;
    width: 100%;
    max-width: 300px; /* Adjust as needed */
    border: 1px solid #ccc;
    border-radius: 4px;
}

.limited-keywords {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    max-height: 300px;
    overflow: hidden;
    padding: 10px 0;
}

.limited-keywords label {
    display: flex;
    align-items: center;
    min-width: 200px;
    margin: 5px 0;
    overflow: hidden;
}

.limited-keywords label .keyword-text {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

input[type="checkbox"] {
    margin-right: 5px;
    flex-shrink: 0; /* Prevent checkbox from shrinking */
}

.button-container {
    display: flex;             /* Arrange buttons horizontally */
    gap: 10px;                 /* Add space between buttons */
    margin-top: 10px;          /* Add space above the button container */
    align-items: center;       /* Vertically center buttons if they have different heights */
}

.show-more-button {
    margin-top: 10px;
    background-color: #2b4b5d;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    display: block;
    width: 100px;
    border-radius: 4px;
}

.show-more-button:hover {
    background-color: #1e3644;
}

.generate-keywords-button {
    margin-top: 10px;
    background-color: #74aa9c;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    display: block;
    width: 100px;
    border-radius: 4px;
}

.generate-keywords-button:hover {
    background-color: #619889;
}

.button-text {
    color: white;
}

.chatgpt-icon {
    width: 38px;            /* Slightly larger for better visibility (optional) */
    height: 22px;
    margin-right: 6px;      /* Add space between the icon and the text */
    vertical-align: middle; /* Align the icon vertically with the text */
}

/* Style for the search container */
.search-container {
    display: flex;
    align-items: center;
    gap: 10px; /* Space between input and button */
    margin-bottom: 10px;
}

/* Adjust the search input width when next to the button */
.keyword-search {
    flex: 1; /* Take up remaining space */
    max-width: none; /* Override max-width if necessary */
}

/* Style for the "Add Keyword" button */
.add-keyword-button {
    background-color: #2b4b5d;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    border-radius: 4px;
}

.add-keyword-button:hover {
    background-color: #1e3644;
}

/* Custom CSS for better alignment of file input fields */
.file-input-container {
    margin-bottom: 15px;
}

.custom-file-input {
    border: 1px solid #555; /* Darker border for visibility in dark mode */
    padding: 15px;
    font-size: 12px;
    width: 100%;
    box-sizing: border-box;
    border-radius: 8px;  /* Add rounded corners */
    transition: background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    cursor: pointer;
}

.custom-file-input:hover,
.custom-file-input:focus {
    border-color: #888;
    background-color: #aaaaaa33;
}

.file-input-label {
    font-weight: bold;
    margin-bottom: 5px;
    display: block;
    color: #ddd;  /* Light text color for labels in dark mode */
}

.current_file_path {
    margin-top: 10px;
    font-size: 14px;
}
