/*
 * StateFace — US State Outline Icon Font
 * Source: https://propublica.github.io/stateface/
 * License: ProPublica (free to use)
 *
 * Usage:
 *   Single-state icon: <span class="stateface stateface-fw stateface-co" title="Colorado" aria-hidden="true"></span>
 *   Alignment spacer:  <span class="state-icon-spacer"></span>
 *
 * Color is controlled via the CSS `color` property (like Font Awesome).
 */

@font-face {
    font-family: 'StateFaceRegular';
    src: url('../fonts/stateface/stateface-regular-webfont.eot');
    src: url('../fonts/stateface/stateface-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/stateface/stateface-regular-webfont.woff') format('woff'),
         url('../fonts/stateface/stateface-regular-webfont.ttf') format('truetype'),
         url('../fonts/stateface/stateface-regular-webfont.svg#StateFaceRegular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* Base class — applies the StateFace font family */
.stateface::before {
    font-family: 'StateFaceRegular', sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Fixed-width class — mirrors Font Awesome's fa-fw for consistent alignment */
.stateface-fw {
    display: inline-block;
    width: 1.25em;
    text-align: center;
}

/* Alignment spacer — same width as .stateface-fw, used when no icon is shown */
.state-icon-spacer {
    display: inline-block;
    width: 1.25em;
}

/* ─── State character mappings ──────────────────────────────────────────────
 * Each state's ::before content maps to a character in the StateFace font.
 * Reference: https://github.com/propublica/stateface/blob/master/reference/stateface.json
 * ─────────────────────────────────────────────────────────────────────────── */

.stateface-ak::before { content: "A"; } /* Alaska */
.stateface-al::before { content: "B"; } /* Alabama */
.stateface-ar::before { content: "C"; } /* Arkansas */
.stateface-az::before { content: "D"; } /* Arizona */
.stateface-ca::before { content: "E"; } /* California */
.stateface-co::before { content: "F"; } /* Colorado */
.stateface-ct::before { content: "G"; } /* Connecticut */
.stateface-de::before { content: "H"; } /* Delaware */
.stateface-fl::before { content: "I"; } /* Florida */
.stateface-ga::before { content: "J"; } /* Georgia */
.stateface-hi::before { content: "K"; } /* Hawaii */
.stateface-ia::before { content: "L"; } /* Iowa */
.stateface-id::before { content: "M"; } /* Idaho */
.stateface-il::before { content: "N"; } /* Illinois */
.stateface-in::before { content: "O"; } /* Indiana */
.stateface-ks::before { content: "P"; } /* Kansas */
.stateface-ky::before { content: "Q"; } /* Kentucky */
.stateface-la::before { content: "R"; } /* Louisiana */
.stateface-ma::before { content: "S"; } /* Massachusetts */
.stateface-md::before { content: "T"; } /* Maryland */
.stateface-me::before { content: "U"; } /* Maine */
.stateface-mi::before { content: "V"; } /* Michigan */
.stateface-mn::before { content: "W"; } /* Minnesota */
.stateface-mo::before { content: "X"; } /* Missouri */
.stateface-ms::before { content: "Y"; } /* Mississippi */
.stateface-mt::before { content: "Z"; } /* Montana */
.stateface-nc::before { content: "a"; } /* North Carolina */
.stateface-nd::before { content: "b"; } /* North Dakota */
.stateface-ne::before { content: "c"; } /* Nebraska */
.stateface-nh::before { content: "d"; } /* New Hampshire */
.stateface-nj::before { content: "e"; } /* New Jersey */
.stateface-nm::before { content: "f"; } /* New Mexico */
.stateface-nv::before { content: "g"; } /* Nevada */
.stateface-ny::before { content: "h"; } /* New York */
.stateface-oh::before { content: "i"; } /* Ohio */
.stateface-ok::before { content: "j"; } /* Oklahoma */
.stateface-or::before { content: "k"; } /* Oregon */
.stateface-pa::before { content: "l"; } /* Pennsylvania */
.stateface-ri::before { content: "m"; } /* Rhode Island */
.stateface-sc::before { content: "n"; } /* South Carolina */
.stateface-sd::before { content: "o"; } /* South Dakota */
.stateface-tn::before { content: "p"; } /* Tennessee */
.stateface-tx::before { content: "q"; } /* Texas */
.stateface-ut::before { content: "r"; } /* Utah */
.stateface-va::before { content: "s"; } /* Virginia */
.stateface-vt::before { content: "t"; } /* Vermont */
.stateface-wa::before { content: "u"; } /* Washington */
.stateface-wi::before { content: "v"; } /* Wisconsin */
.stateface-wv::before { content: "w"; } /* West Virginia */
.stateface-wy::before { content: "x"; } /* Wyoming */
.stateface-dc::before { content: "y"; } /* District of Columbia */
.stateface-us::before { content: "z"; } /* Continental US */
