﻿.lockable-autocomplete-wrapper {
    margin-bottom: 15px;
}

    .lockable-autocomplete-wrapper .smallLabel {
        display: block;
        margin-bottom: 5px;
        font-size: 0.85em;
        color: #666;
    }

.lockable-autocomplete-container {
    position: relative;
    display: flex;
    align-items: center;
    gap: 5px;
}

.lockable-autocomplete-input {
    flex: 1;
    padding: 8px 35px 8px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
    transition: border-color 0.3s;
    max-width: 100%;
    background: #ecf2f8;
    border: none;
    border-radius: 0;
    height: 58px;
    border-bottom: 2px solid #c8ccd4;
}

    .lockable-autocomplete-input:focus {
        outline: none;
        border-color: #007bff;
    }

    .lockable-autocomplete-input.locked {
        background-color: #f8f9fa;
        border-color: #6c757d;
        color: #495057;
    }

.lockable-autocomplete-dropdown-btn,
.lockable-autocomplete-edit-btn,
.lockable-autocomplete-clear-btn {
    position: absolute;
    right: 5px;
    background: transparent;
    border: none;
    padding: 5px 8px;
    cursor: pointer;
    color: #6c757d;
    transition: color 0.2s;
    z-index: 2;
    top: 0px;
    right: -8px;

}

.lockable-autocomplete-edit-btn,
.lockable-autocomplete-clear-btn {
    margin-right: -11px;
}

    .lockable-autocomplete-dropdown-btn:hover,
    .lockable-autocomplete-edit-btn:hover,
    .lockable-autocomplete-clear-btn:hover {
        color: #007bff;
    }

    .lockable-autocomplete-actions {
        position: absolute;
        right: 5px;
        display: flex;
        gap: 5px;
    }

    .lockable-autocomplete-edit-btn {
        position: static;
    }

    .lockable-autocomplete-clear-btn {
        position: static;
        color: #dc3545;
    }

        .lockable-autocomplete-clear-btn:hover {
            color: #c82333;
        }

    .lockable-autocomplete-suggestions {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        max-height: 250px;
        overflow-y: auto;
        background: white;
        border: 1px solid #ccc;
        border-top: none;
        border-radius: 0 0 4px 4px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        z-index: 1000;
        margin-top: 2px;
    }

    .suggestion-item {
        padding: 10px;
        cursor: pointer;
        border-bottom: 1px solid #f0f0f0;
        transition: background-color 0.2s;
    }

        .suggestion-item:last-child {
            border-bottom: none;
        }

        .suggestion-item:hover,
        .suggestion-item.active {
            background-color: #007bff;
            color: white;
        }

    .suggestion-empty {
        padding: 10px;
        color: #999;
        font-style: italic;
        text-align: center;
    }
    /* Responsive */
    @media (max-width: 768px) {
        .lockable-autocomplete-input {
            font-size: 16px; /* Prevents zoom on iOS */
        }
    }
