/* Tom Select — stile AutoPro (Tailwind-compatible, no @apply) */

.ts-wrapper.ap-select {
    width: 100%;
}

.ts-wrapper.ap-select .ts-control {
    min-height: 2.5rem;
    padding: 0.5rem 2.25rem 0.5rem 0.75rem;
    border: 1px solid rgba(108, 117, 125, 0.3);
    border-radius: 0.5rem;
    background-color: #FFFFFF;
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: #212529;
    box-shadow: none;
}

.ts-wrapper.ap-select.focus .ts-control,
.ts-wrapper.ap-select .ts-control:focus {
    border-color: #1A5A36;
    box-shadow: 0 0 0 1px #1A5A36;
}

.ts-wrapper.ap-select.single .ts-control {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236C757D' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 0.5rem center;
    background-repeat: no-repeat;
    background-size: 1.25em 1.25em;
}

.ts-wrapper.ap-select .ts-control input {
    font-size: 0.875rem;
    color: #212529;
}

.ts-wrapper.ap-select .ts-dropdown {
    margin-top: 0.25rem;
    border: 1px solid rgba(108, 117, 125, 0.2);
    border-radius: 0.5rem;
    background: #FFFFFF;
    box-shadow: 0 10px 25px -5px rgba(33, 37, 41, 0.12);
    overflow: hidden;
}

.ts-wrapper.ap-select .ts-dropdown .option {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    color: #212529;
}

.ts-wrapper.ap-select .ts-dropdown .option.active,
.ts-wrapper.ap-select .ts-dropdown .option:hover {
    background-color: rgba(26, 90, 54, 0.08);
    color: #1A5A36;
}

.ts-wrapper.ap-select .ts-dropdown .no-results {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    color: #6C757D;
}

/* Flatpickr — stile AutoPro */

.flatpickr-calendar {
    border: 1px solid rgba(108, 117, 125, 0.2);
    border-radius: 0.75rem;
    box-shadow: 0 10px 25px -5px rgba(33, 37, 41, 0.12);
    font-family: 'DM Sans', system-ui, sans-serif;
}

.flatpickr-months .flatpickr-month {
    color: #212529;
}

.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
    font-weight: 600;
    color: #212529;
}

.flatpickr-weekdays {
    background: #F8F9FA;
}

span.flatpickr-weekday {
    color: #6C757D;
    font-weight: 500;
}

.flatpickr-day {
    color: #212529;
    border-radius: 0.375rem;
}

.flatpickr-day:hover,
.flatpickr-day:focus {
    background: rgba(26, 90, 54, 0.08);
    border-color: transparent;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
    background: #1A5A36;
    border-color: #1A5A36;
    color: #FFFFFF;
}

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

.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
    background: #8BC34A;
    border-color: #8BC34A;
    color: #FFFFFF;
}

.flatpickr-time input,
.flatpickr-time .flatpickr-am-pm {
    color: #212529;
}

.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover {
    background: rgba(26, 90, 54, 0.08);
}

input.ap-date,
input.ap-datetime,
input.ap-date-year,
input.ap-flatpickr-alt {
    cursor: pointer;
}

input.ap-flatpickr-alt {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid rgba(108, 117, 125, 0.3);
    border-radius: 0.5rem;
    background-color: #FFFFFF;
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: #212529;
}

input.ap-flatpickr-alt::placeholder {
    color: rgba(108, 117, 125, 0.6);
}

input.ap-flatpickr-alt:focus {
    border-color: #1A5A36;
    outline: none;
    box-shadow: 0 0 0 1px #1A5A36;
}
