/**
 * CSS specifico per il componente AnagraficaForm
 * Assicura il corretto posizionamento delle Material Icons nei campi input
 */

/* Stili specifici per il form anagrafica */

.anagrafica-form .material-icons {
    font-family: "Material Icons";
    font-weight: normal;
    font-style: normal;
    font-size: 1.125rem; /* 18px */
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: 'liga';
}

/* Assicura che le icone nei campi input siano centrate verticalmente */

.anagrafica-form .relative input + .material-icons {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 10;
}

/* Stili specifici per icone a sinistra */

.anagrafica-form .relative input + .material-icons:not([id]) {
    left: 0.75rem; /* 12px */
}

/* Stili specifici per icone a destra (con ID) */

.anagrafica-form .relative input + .material-icons[id] {
    right: 0.75rem; /* 12px */
}

/* Override per icone con ID specifici (search, loading) */

.anagrafica-form #city-search-loading,
.anagrafica-form #city-search-icon,
.anagrafica-form #resid-city-search-loading,
.anagrafica-form #resid-city-search-icon {
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
}

/* Assicura che gli input abbiano abbastanza padding per le icone */

.anagrafica-form .relative input[class*="pl-10"] {
    padding-left: 2.5rem; /* 40px per fare spazio all'icona */
}

.anagrafica-form .relative input[class*="pr-10"] {
    padding-right: 2.5rem; /* 40px per fare spazio all'icona */
}

/* Stili per il bottone genera codice fiscale */

.anagrafica-form #generateCF .material-icons {
    font-size: 1rem; /* 16px per i bottoni */
}

/* Animazione per il loading spinner */

.anagrafica-form .animate-spin {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

/* Fix per browser che potrebbero non supportare transform correttamente */

.anagrafica-form .material-icons.absolute {
    position: absolute !important;
}