## 2 Materials and Methods  
Monodispersed PS microspheres were prepared in aqueous alcohol systems following procedures previously developed by [PERSON] et al. [28]. Briefly, styrene was emulsion polymerized in a solution of sodium lauryl sulfate, potassium persulfate, and aqueous ethanol, which serve as the emulsifier, initiator, and dispersion medium, respectively. Controlled amounts of sodium lauryl sulfate and potassium persulfate were dissolved in 7 mL aqueous ethanol (volumetric ratio of deionised (DI) water to ethanol was 2/5, _v/v_). The solution was kept in a small glass vial, thoroughly mixed, and temperature controlled by a magnetic stirrer/hot plate. A measured amount of styrene was injected into the solution, and then the whole system was quickly heated up to 70 \({}^{\circ}\)C and kept constant at this temperature for polymerization for 6 h. After the polymerization reaction was completed, the PS bead dispersion was centrifuged and washed with ethanol three times to remove the coagulate, incompletely reacted styrene, and soluble impurities. PS beads of different sizes were synthesized. SEM image analysis of 100 PS beads of each size showed that the prepared PS beads had a spherical shape and size distribution deviation of less than 5%. PS beads with diameters of 212 \(\pm\) 3, 477 \(\pm\) 7, 574 \(\pm\) 10, 684 \(\pm\) 20, and 812 \(\pm\) 24 nm were used to test the proposed method. The close-packed monolayer of the PS microspheres was trapped and self-assembled on the air/water interface, then transferred onto clean glass, quartz, or silicon substrates by the fishing technique. This approach is an undemanding, high-yield method to prepare a relatively high-quality, large-area, close-packed monolayer of PS microspheres [29]. After synthesis, the solution containing PS beads was centrifuged and re-dispersed in aqueous ethanol (1/1, _v/v_) to 10% _w/v_ concentration. The prepared solution was used as such to assemble monolayers of PS beads. This solution was slowly dispensed using a pipette onto a clean glass slide placed against the wall of a glass container half-filled with DI water. The glass slide made an angle of 45\({}^{\circ}\) with the wall of the container. PS beads went down the inclined plane; a small part of them sank in the water, while the rest became trapped at the interface, spread out on the water surface, and formed a monolayer of PS beads. To further consolidate the particles, a small amount of 2% SDS (sodium dodecyl sulfate) was added to change the water surface tension. This monolayer was then transferred onto clean 1 \(\times\) 2.5 cm\({}^{2}\) glass, quartz, or silicon substrates for transmission spectra and SEM measurements. Figure 1 shows SEM images of the self-assembled monolayer of PS beads mentioned above. Some of the area of the film--shown in the inset of Figure 1d, for example--is close-packed and has the symmetry of a hexagonal lattice. There are still holes and boundaries in the films and no long-range order. However, one of the advantages of this method is that it is not necessary to have perfect 2D crystalline structures. Figure 1: Trapping a monolayer of polystyrene (PS) sub-microspheres on the water/air interface (left panel), and SEM images of the close-packed monolayers of PS beads with diameters of (**a**) 477 nm, (**b**) 574 nm, (**c**) 684 nm, and (**d**) 812 nm after transferring them onto substrates. For simulations, we employed the finite-difference time-domain (FDTD) solver in CST Microwave Studio software to simulate the transmission spectra of the structures. A model consisting of a monolayer of hexagonal close-packed dielectric microspheres with dielectric constant \(\varepsilon_{\mathrm{sphere}}\) on a dielectric substrate with dielectric constant \(\varepsilon_{\mathrm{sub}}\) was studied. As shown in Figure 2, the first layer of the unit cell is a sphere of diameter \(d\) in contact with four quarters of a sphere at each corner, and the second layer is a dielectric substrate of thickness \(t_{\mathrm{d}}\). A periodic boundary condition was applied.