/**
 * Google Maps Autocomplete Styles
 * Styles for the Google Places Autocomplete dropdown
 */

/* Override Google's default autocomplete styles */
.pac-container {
    background: #FFFFFF !important;
    border: 4px solid #82AFD5 !important;
    border-radius: 10px !important;
    font-family: inherit !important;
    font-size: 14px !important;
    margin-top: 2px !important;
    max-height: 300px !important;
    overflow-y: auto !important;
    z-index: 999999 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
}

/* Ensure pac-container can be properly hidden */
.pac-container[style*="display: none"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}



.pac-container .pac-item { padding: 10px 10px !important; }
.pac-container .pac-item:hover { background: #EBF1F4 !important;}
.pac-item-query { color: #005CAB !important; font-weight: 600 !important; }



/* Hide pac-container when it has the hidden class */
.pac-container.hidden {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

.pac-item {
    border-top: 1px solid #f0f0f0 !important;
    cursor: pointer;
    padding: 12px 16px;
    transition: background-color 0.2s ease;
}

.pac-item:first-child {
    border-top: none;
}

.pac-item:hover,
.pac-item-selected {
    background-color: #f8f9fa;
}

.pac-item-query {
    color: #002342;
    font-weight: 500;
    margin-bottom: 2px;
}

.pac-item-query .pac-matched {
    font-weight: 600;
}

.pac-item-description {
    color: #002342;
    font-size: 12px;
    line-height: 1.4;
}

/* Loading state for search input */
.acf-google-map .search:focus {
    border-color: #007cba;
    box-shadow: 0 0 0 1px #007cba;
}

/* Ensure autocomplete appears above other elements */
.acf-google-map {
    position: relative;
    z-index: 1;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .pac-container {
        font-size: 16px; /* Prevent zoom on iOS */
    }
    
    .pac-item {
        padding: 14px 16px;
    }
}

/* Dark mode support (if your theme supports it) */
@media (prefers-color-scheme: dark) {
    .pac-container {
        background-color: #2c2c2c;
        border-color: #444;
        color: #fff;
    }
    
    .pac-item {
        border-top-color: #444;
    }
    
    .pac-item:hover,
    .pac-item-selected {
        background-color: #3c3c3c;
    }
    
    .pac-item-query {
        color: #fff;
    }
    
    .pac-item-description {
        color: #ccc;
    }
}
