/* Estimate form enhancements: date picker + address autocomplete
   Styled to match existing brand colors (--tj-theme-primary / --tj-theme-secondary)
   Does not alter existing form-control appearance, only adds picker/dropdown UI */

.flatpickr-calendar {
    font-family: inherit;
    box-shadow: 0 10px 30px rgba(16, 32, 57, 0.18);
    border-radius: 8px;
    border: 1px solid #eee;
}

.flatpickr-day.selected,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
    background: #FF9800;
    border-color: #FF9800;
}

.flatpickr-day.today {
    border-color: #FF9800;
}

.flatpickr-day:hover {
    background: #fff1f1;
}

.flatpickr-months .flatpickr-month,
.flatpickr-current-month .flatpickr-monthDropdown-months {
    color: #102039;
}

.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg {
    fill: #FF9800;
}

span.flatpickr-weekday {
    color: #102039;
    font-weight: 600;
}

/* Address autocomplete dropdown */
.tj-address-autocomplete-wrap {
    position: relative;
}

.tj-address-suggestions {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 999;
    background: #fff;
    border: 1px solid #eee;
    border-top: none;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 10px 30px rgba(16, 32, 57, 0.18);
    max-height: 220px;
    overflow-y: auto;
    display: none;
}

.tj-address-suggestions.active {
    display: block;
}

.tj-address-suggestion-item {
    padding: 10px 15px;
    cursor: pointer;
    font-size: 14px;
    color: #102039;
    border-bottom: 1px solid #f5f5f5;
    display: flex;
    align-items: center;
    gap: 8px;
}

.tj-address-suggestion-item:last-child {
    border-bottom: none;
}

.tj-address-suggestion-item:hover,
.tj-address-suggestion-item.active {
    background: #fff1f1;
    color: #FF9800;
}

.tj-address-suggestion-item i {
    color: #FF9800;
    font-size: 12px;
    flex-shrink: 0;
}

.tj-address-loading {
    padding: 10px 15px;
    font-size: 13px;
    color: #999;
}
