/* 本地 font-awesome 兜底样式（零依赖，替代外部 CDN 的 all.min.css）
 * 无外网环境下使用，将常用 fa-* 类映射为 Unicode 字符，保证不空白、不挂起。
 */
.fas, .far, .fab { display: inline-block; font-style: normal; line-height: 1; }
.fa-home::before { content: "\2302"; }
.fa-th-large::before { content: "\229E"; }
.fa-images::before { content: "\1F5BC"; }
.fa-folder::before { content: "\1F4C1"; }
.fa-user::before { content: "\1F464"; }
.fa-users::before { content: "\1F465"; }
.fa-lock::before { content: "\1F512"; }
.fa-unlock::before { content: "\1F513"; }
.fa-cog::before, .fa-gear::before { content: "\2699"; }
.fa-search::before { content: "\1F50D"; }
.fa-times::before { content: "\2715"; }
.fa-times-circle::before { content: "\2297"; }
.fa-check::before { content: "\2713"; }
.fa-check-circle::before { content: "\2714"; }
.fa-plus::before { content: "\002B"; }
.fa-minus::before { content: "\2212"; }
.fa-edit::before, .fa-pen::before { content: "\270F"; }
.fa-trash::before { content: "\1F5D1"; }
.fa-share::before, .fa-share-alt::before { content: "\1F4E4"; }
.fa-qrcode::before { content: "\1F4F2"; }
.fa-heart::before { content: "\2665"; }
.fa-heart-broken::before { content: "\1F494"; }
.fa-download::before { content: "\1F4E5"; }
.fa-upload::before { content: "\1F4E4"; }
.fa-arrow-left::before { content: "\2190"; }
.fa-arrow-right::before { content: "\2192"; }
.fa-chevron-left::before { content: "\2039"; }
.fa-chevron-right::before { content: "\203A"; }
.fa-chevron-down::before { content: "\2304"; }
.fa-chevron-up::before { content: "\2303"; }
.fa-bars::before { content: "\2630"; }
.fa-star::before { content: "\2605"; }
.fa-spinner::before { content: "\21BB"; }
.fa-play::before { content: "\25B6"; }
.fa-pause::before { content: "\23F8"; }
.fa-eye::before { content: "\1F441"; }
.fa-camera::before { content: "\1F4F7"; }
.fa-tag::before { content: "\1F3F7"; }
.fa-clock::before { content: "\231B"; }
.fa-calendar::before { content: "\1F4C5"; }
.fa-envelope::before { content: "\2709"; }
.fa-phone::before { content: "\260E"; }
.fa-comment::before { content: "\1F4AC"; }
.fa-info-circle::before { content: "\2139"; }
.fa-exclamation-circle::before { content: "\26A0"; }
.fa-exclamation-triangle::before { content: "\26A0"; }
.fa-question-circle::before { content: "\2753"; }
.fa-sign-out-alt::before, .fa-sign-out::before { content: "\21B0"; }
.fa-sign-in-alt::before, .fa-sign-in::before { content: "\21B3"; }
.fa-user-plus::before { content: "\1F464+"; }
.fa-user-shield::before { content: "\1F464\1F6E1"; }
.fa-crown::before { content: "\1F451"; }
.fa-gem::before { content: "\1F48E"; }
.fa-fire::before { content: "\1F525"; }
.fa-bolt::before { content: "\26A1"; }
.fa-moon::before { content: "\1F319"; }
.fa-sun::before { content: "\2600"; }
.fa-th::before { content: "\25A6"; }
.fa-list::before { content: "\2630"; }
.fa-grid::before { content: "\25A6"; }
.fa-bookmark::before { content: "\1F516"; }
.fa-flag::before { content: "\2691"; }
.fa-link::before { content: "\1F517"; }
.fa-copy::before { content: "\1F4CB"; }
.fa-sync::before, .fa-refresh::before { content: "\21BB"; }
.fa-filter::before { content: "\1F3F7"; }
.fa-sliders-h::before { content: "\2630"; }
.fa-chart-bar::before { content: "\1F4CA"; }
.fa-database::before { content: "\1F4E6"; }
.fa-server::before { content: "\1F4BB"; }
.fa-key::before { content: "\1F511"; }
.fa-shield-alt::before, .fa-shield::before { content: "\1F6E1"; }
.fa-ban::before { content: "\26D4"; }
.fa-eye-slash::before { content: "\1F576"; }
.fa-thumbtack::before { content: "\1F4CC"; }
.fa-paper-plane::before { content: "\1F4E5"; }
.fa-comments::before { content: "\1F4AC"; }
.fa-image::before { content: "\1F5BC"; }
.fa-film::before { content: "\1F39E"; }
.fa-music::before { content: "\1F3B5"; }
.fa-video::before { content: "\1F4F9"; }
.fa-map-marker-alt::before, .fa-map-marker::before { content: "\1F4CD"; }
.fa-globe::before { content: "\1F310"; }
.fa-wifi::before { content: "\1F4F6"; }
.fa-mobile-alt::before, .fa-mobile::before { content: "\1F4F1"; }
.fa-desktop::before { content: "\1F5A5"; }
.fa-tablet-alt::before, .fa-tablet::before { content: "\1F4DF"; }
.fa-volume-up::before { content: "\1F50A"; }
.fa-volume-mute::before, .fa-volume-off::before { content: "\1F507"; }
.fa-expand::before { content: "\26F6"; }
.fa-compress::before { content: "\1F4F6"; }
.fa-redo::before { content: "\21BB"; }
.fa-undo::before { content: "\21BA"; }
.fa-thumbs-up::before { content: "\1F44D"; }
.fa-thumbs-down::before { content: "\1F44E"; }
.fa-smile::before { content: "\1F642"; }
.fa-meh::before { content: "\1F610"; }
.fa-frown::before { content: "\2639"; }
.fa-grin::before { content: "\1F600"; }
.fa-laugh::before { content: "\1F606"; }
.fa-angry::before { content: "\1F620"; }
.fa-sad-tear::before { content: "\1F622"; }
.fa-surprise::before { content: "\1F62E"; }
.fa-flushed::before { content: "\1F633"; }
.fa-dizzy::before { content: "\1F635"; }
.fa-tired::before { content: "\1F634"; }
.fa-grin-stars::before { content: "\1F638"; }
.fa-grin-hearts::before { content: "\1F63B"; }
.fa-grin-beam::before { content: "\1F601"; }
.fa-grin-tongue::before { content: "\1F61B"; }
.fa-grin-wink::before { content: "\1F609"; }
.fa-hand-point-right::before { content: "\1F449"; }
.fa-hand-point-left::before { content: "\1F448"; }
.fa-hand-point-up::before { content: "\261D"; }
.fa-hand-point-down::before { content: "\1F447"; }
.fa-thumbs-up::before { content: "\1F44D"; }
.fa-certificate::before { content: "\1F3C5"; }
.fa-award::before { content: "\1F3C5"; }
.fa-trophy::before { content: "\1F3C6"; }
.fa-medal::before { content: "\1F3C5"; }
.fa-ribbon::before { content: "\1F397"; }
.fa-scroll::before { content: "\1F4DC"; }
.fa-file::before { content: "\1F4C4"; }
.fa-file-alt::before, .fa-file-text::before { content: "\1F4C4"; }
.fa-folder-open::before { content: "\1F4C2"; }
.fa-inbox::before { content: "\1F4E4"; }
.fa-outbox::before { content: "\1F4E5"; }
.fa-archive::before { content: "\1F4E6"; }
.fa-box::before { content: "\1F4E6"; }
.fa-cubes::before { content: "\1F4E6"; }
.fa-layer-group::before { content: "\1F4E6"; }
.fa-object-group::before { content: "\1F4E6"; }
.fa-object-ungroup::before { content: "\1F4E6"; }
.fa-palette::before { content: "\1F3A8"; }
.fa-paint-brush::before { content: "\1F58C"; }
.fa-brush::before { content: "\1F58C"; }
.fa-magic::before { content: "\2728"; }
.fa-wand-magic::before { content: "\1F984"; }
.fa-lightbulb::before { content: "\1F4A1"; }
.fa-bug::before { content: "\1F41B"; }
.fa-wrench::before { content: "\1F527"; }
.fa-tools::before { content: "\1F6E0"; }
.fa-cogs::before { content: "\2699"; }
.fa-tasks::before { content: "\1F4C5"; }
.fa-clipboard::before { content: "\1F4CB"; }
.fa-clipboard-check::before { content: "\1F4CB"; }
.fa-clipboard-list::before { content: "\1F4CB"; }
.fa-address-book::before { content: "\1F4D7"; }
.fa-id-card::before { content: "\1F4C7"; }
.fa-credit-card::before { content: "\1F4B3"; }
.fa-money-bill::before { content: "\1F4B5"; }
.fa-coins::before { content: "\1F4B0"; }
.fa-wallet::before { content: "\1F4B0"; }
.fa-shopping-cart::before { content: "\1F6D2"; }
.fa-tags::before { content: "\1F3F7"; }
.fa-percent::before { content: "\25B1"; }
.fa-receipt::before { content: "\1F9FE"; }
.fa-chart-line::before { content: "\1F4C8"; }
.fa-chart-pie::before { content: "\1F4CA"; }
.fa-chart-area::before { content: "\1F4CA"; }
.fa-signal::before { content: "\1F4F6"; }
.fa-wifi::before { content: "\1F4F6"; }
.fa-battery-full::before { content: "\1F50B"; }
.fa-plug::before { content: "\1F50C"; }
.fa-power-off::before { content: "\23FB"; }
.fa-circle::before { content: "\25CF"; }
.fa-dot-circle::before { content: "\25C9"; }
.fa-square::before { content: "\25A0"; }
.fa-check-square::before { content: "\2611"; }
.fa-window-close::before { content: "\2715"; }
.fa-window-maximize::before { content: "\25A1"; }
.fa-window-minimize::before { content: "\25A1"; }
.fa-window-restore::before { content: "\25A1"; }
.fa-external-link-alt::before, .fa-external-link::before { content: "\2197"; }
.fa-sticky-note::before { content: "\1F4CC"; }
.fa-comment-dots::before { content: "\1F4AC"; }
.fa-comment-slash::before { content: "\1F4AC"; }
.fa-paperclip::before { content: "\1F4CE"; }
.fa-at::before { content: "\0040"; }
.fa-hashtag::before { content: "\0023"; }
.fa-quote-left::before { content: "\201C"; }
.fa-quote-right::before { content: "\201D"; }
.fa-asterisk::before { content: "\002A"; }
.fa-circle-notch::before { content: "\25CC"; }
.fa-ring::before { content: "\1F48D"; }
.fa-crown::before { content: "\1F451"; }
.fa-horse::before { content: "\1F40E"; }
.fa-paw::before { content: "\1F43E"; }
.fa-feather::before { content: "\1FAB6"; }
.fa-leaf::before { content: "\1F343"; }
.fa-tree::before { content: "\1F333"; }
.fa-snowflake::before { content: "\2744"; }
.fa-sun::before { content: "\2600"; }
.fa-cloud::before { content: "\2601"; }
.fa-rain::before { content: "\1F327"; }
.fa-wind::before { content: "\1F32C"; }
.fa-umbrella::before { content: "\2602"; }
.fa-temperature-high::before { content: "\1F321"; }
.fa-temperature-low::before { content: "\1F321"; }
.fa-compass::before { content: "\1F9ED"; }
.fa-location-arrow::before { content: "\1F4CD"; }
.fa-route::before { content: "\1F4CD"; }
.fa-map::before { content: "\1F5FA"; }
.fa-map-signs::before { content: "\1F6A9"; }
.fa-traffic-light::before { content: "\1F6A6"; }
.fa-bus::before { content: "\1F68C"; }
.fa-car::before { content: "\1F697"; }
.fa-train::before { content: "\1F687"; }
.fa-plane::before { content: "\2708"; }
.fa-ship::before { content: "\26F5"; }
.fa-rocket::before { content: "\1F680"; }
.fa-space-shuttle::before { content: "\1F680"; }
.fa-microchip::before { content: "\1F4BC"; }
.fa-memory::before { content: "\1F4BE"; }
.fa-hdd::before { content: "\1F4BE"; }
.fa-microphone::before { content: "\1F3A4"; }
.fa-headphones::before { content: "\1F3A7"; }
.fa-camera-retro::before { content: "\1F4F7"; }
.fa-video::before { content: "\1F4F9"; }
.fa-film::before { content: "\1F39E"; }
.fa-photo-video::before { content: "\1F5BC"; }
.fa-images::before { content: "\1F5BC"; }
.fa-portrait::before { content: "\1F464"; }
.fa-user-tie::before { content: "\1F454"; }
.fa-user-graduate::before { content: "\1F393"; }
.fa-user-md::before { content: "\1F3E5"; }
.fa-user-nurse::before { content: "\1F3E5"; }
.fa-user-cog::before { content: "\1F464"; }
.fa-user-secret::before { content: "\1F464"; }
.fa-user-check::before { content: "\1F464"; }
.fa-user-times::before { content: "\1F464"; }
.fa-user-friends::before { content: "\1F465"; }
.fa-user-alt::before { content: "\1F464"; }
.fa-user-circle::before { content: "\1F464"; }
.fa-id-badge::before { content: "\1F4C7"; }
.fa-address-card::before { content: "\1F4C7"; }
.fa-envelope-open::before { content: "\1F4E7"; }
.fa-envelope-open-text::before { content: "\1F4E7"; }
.fa-paper-plane::before { content: "\1F4E5"; }
.fa-send::before { content: "\1F4E5"; }
.fa-reply::before { content: "\21A9"; }
.fa-reply-all::before { content: "\21A9"; }
.fa-forward::before { content: "\21AA"; }
.fa-share::before { content: "\1F4E4"; }
.fa-share-square::before { content: "\1F4E4"; }
.fa-share-alt-square::before { content: "\1F4E4"; }
.fa-book::before { content: "\1F4D5"; }
.fa-book-open::before { content: "\1F4D6"; }
.fa-graduation-cap::before { content: "\1F393"; }
.fa-school::before { content: "\1F3EB"; }
.fa-university::before { content: "\1F3E2"; }
.fa-briefcase::before { content: "\1F4BC"; }
.fa-building::before { content: "\1F3E2"; }
.fa-industry::before { content: "\1F3ED"; }
.fa-warehouse::before { content: "\1F4E6"; }
.fa-store::before { content: "\1F3EC"; }
.fa-shopping-bag::before { content: "\1F6CD"; }
.fa-shopping-basket::before { content: "\1F6D2"; }
.fa-cash-register::before { content: "\1F4B0"; }
.fa-truck::before { content: "\1F69A"; }
.fa-box-open::before { content: "\1F4E6"; }
.fa-dolly::before { content: "\1F4E6"; }
.fa-pallet::before { content: "\1F4E6"; }
.fa-conveyor-belt::before { content: "\1F4E6"; }
.fa-warehouse::before { content: "\1F4E6"; }
.fa-clock::before { content: "\231B"; }
.fa-hourglass::before { content: "\231B"; }
.fa-stopwatch::before { content: "\23F1"; }
.fa-calendar-alt::before, .fa-calendar-days::before { content: "\1F4C5"; }
.fa-calendar-check::before { content: "\1F4C5"; }
.fa-calendar-plus::before { content: "\1F4C5"; }
.fa-calendar-times::before { content: "\1F4C5"; }
.fa-calendar-week::before { content: "\1F4C5"; }
.fa-clock::before { content: "\231B"; }
.fa-history::before { content: "\1F550"; }
.fa-trash-alt::before { content: "\1F5D1"; }
.fa-trash-restore::before { content: "\1F5D1"; }
.fa-eraser::before { content: "\1F4D0"; }
.fa-cut::before { content: "\2702"; }
.fa-copy::before { content: "\1F4CB"; }
.fa-paste::before { content: "\1F4CB"; }
.fa-save::before { content: "\1F4BE"; }
.fa-print::before { content: "\1F5A8"; }
.fa-fax::before { content: "\1F4E0"; }
.fa-phone-alt::before { content: "\260E"; }
.fa-phone-slash::before { content: "\260E"; }
.fa-phone-volume::before { content: "\260E"; }
.fa-voicemail::before { content: "\1F4F2"; }
.fa-mail-bulk::before { content: "\1F4E7"; }
.fa-inbox::before { content: "\1F4E4"; }
.fa-sort::before { content: "\2195"; }
.fa-sort-up::before, .fa-sort-amount-up::before { content: "\2191"; }
.fa-sort-down::before, .fa-sort-amount-down::before { content: "\2193"; }
.fa-sort-alpha-up::before { content: "\2191"; }
.fa-sort-alpha-down::before { content: "\2193"; }
.fa-sort-numeric-up::before { content: "\2191"; }
.fa-sort-numeric-down::before { content: "\2193"; }
.fa-filter::before { content: "\1F3F7"; }
.fa-search-plus::before { content: "\1F50D+"; }
.fa-search-minus::before { content: "\1F50D-"; }
.fa-adjust::before { content: "\25D1"; }
.fa-tint::before { content: "\1F4A7"; }
.fa-droplet::before { content: "\1F4A7"; }
.fa-snowflake::before { content: "\2744"; }
.fa-fire-alt::before { content: "\1F525"; }
.fa-burn::before { content: "\1F525"; }
.fa-recycle::before { content: "\2672"; }
.fa-leaf::before { content: "\1F343"; }
.fa-seedling::before { content: "\1F331"; }
.fa-tree::before { content: "\1F333"; }
.fa-mountain::before { content: "\26F0"; }
.fa-water::before { content: "\1F4A7"; }
.fa-wind::before { content: "\1F32C"; }
.fa-sun::before { content: "\2600"; }
.fa-cloud-sun::before { content: "\26C5"; }
.fa-cloud-moon::before { content: "\1F325"; }
.fa-bolt::before { content: "\26A1"; }
.fa-cloud-showers-heavy::before { content: "\1F327"; }
.fa-cloud-rain::before { content: "\1F327"; }
.fa-cloud::before { content: "\2601"; }
.fa-smog::before { content: "\1F32B"; }
.fa-wind::before { content: "\1F32C"; }
.fa-temperature-high::before { content: "\1F321"; }
.fa-temperature-low::before { content: "\1F321"; }
.fa-compass::before { content: "\1F9ED"; }
.fa-location::before { content: "\1F4CD"; }
.fa-location-arrow::before { content: "\1F4CD"; }
.fa-location-dot::before { content: "\1F4CD"; }
.fa-crosshairs::before { content: "\1F4CD"; }
.fa-map-pin::before { content: "\1F4CD"; }
.fa-thumbtack::before { content: "\1F4CC"; }
.fa-route::before { content: "\1F4CD"; }
.fa-signpost::before { content: "\1F6A9"; }
.fa-directions::before { content: "\1F4CD"; }
.fa-traffic-light::before { content: "\1F6A6"; }
.fa-bus::before { content: "\1F68C"; }
.fa-subway::before { content: "\1F687"; }
.fa-train::before { content: "\1F687"; }
.fa-tram::before { content: "\1F68A"; }
.fa-car::before { content: "\1F697"; }
.fa-taxi::before { content: "\1F695"; }
.fa-truck::before { content: "\1F69A"; }
.fa-bicycle::before { content: "\1F6B2"; }
.fa-motorcycle::before { content: "\1F3CD"; }
.fa-plane::before { content: "\2708"; }
.fa-helicopter::before { content: "\1F681"; }
.fa-rocket::before { content: "\1F680"; }
.fa-satellite::before { content: "\1F6F0"; }
.fa-satellite-dish::before { content: "\1F4E1"; }
.fa-space-shuttle::before { content: "\1F680"; }
.fa-microchip::before { content: "\1F4BC"; }
.fa-memory::before { content: "\1F4BE"; }
.fa-microprocessor::before { content: "\1F4BC"; }
.fa-server::before { content: "\1F4BB"; }
.fa-database::before { content: "\1F4E6"; }
.fa-hdd::before { content: "\1F4BE"; }
.fa-ssd::before { content: "\1F4BE"; }
.fa-keyboard::before { content: "\2328"; }
.fa-mouse::before { content: "\1F5B1"; }
.fa-desktop::before { content: "\1F5A5"; }
.fa-laptop::before { content: "\1F4BB"; }
.fa-tablet::before { content: "\1F4DF"; }
.fa-mobile::before { content: "\1F4F1"; }
.fa-tv::before { content: "\1F4FA"; }
.fa-calculator::before { content: "\1F5A9"; }
.fa-printer::before { content: "\1F5A8"; }
.fa-scanner::before { content: "\1F5A8"; }
.fa-fax::before { content: "\1F4E0"; }
.fa-robot::before { content: "\1F916"; }
.fa-microphone::before { content: "\1F3A4"; }
.fa-microphone-alt::before { content: "\1F3A4"; }
.fa-headphones::before { content: "\1F3A7"; }
.fa-volume-up::before { content: "\1F50A"; }
.fa-volume-down::before { content: "\1F509"; }
.fa-volume-off::before { content: "\1F507"; }
.fa-volume-mute::before { content: "\1F507"; }
.fa-pause::before { content: "\23F8"; }
.fa-play::before { content: "\25B6"; }
.fa-stop::before { content: "\23F9"; }
.fa-forward::before { content: "\23ED"; }
.fa-backward::before { content: "\23EE"; }
.fa-step-forward::before { content: "\23EF"; }
.fa-step-backward::before { content: "\23EE"; }
.fa-eject::before { content: "\23CF"; }
.fa-random::before { content: "\1F500"; }
.fa-repeat::before { content: "\1F501"; }
.fa-redo::before { content: "\21BB"; }
.fa-undo::before { content: "\21BA"; }
.fa-sync::before { content: "\21BB"; }
.fa-sync-alt::before { content: "\21BB"; }
.fa-spinner::before { content: "\21BB"; }
.fa-circle-notch::before { content: "\25CC"; }
.fa-hourglass::before { content: "\231B"; }
.fa-hourglass-start::before { content: "\231B"; }
.fa-hourglass-half::before { content: "\231B"; }
.fa-hourglass-end::before { content: "\231B"; }
.fa-stopwatch::before { content: "\23F1"; }
.fa-tachometer-alt::before { content: "\1F4CA"; }
.fa-gauge::before { content: "\1F4CA"; }
.fa-battery-full::before { content: "\1F50B"; }
.fa-battery-three-quarters::before { content: "\1F50B"; }
.fa-battery-half::before { content: "\1F50B"; }
.fa-battery-quarter::before { content: "\1F50B"; }
.fa-battery-empty::before { content: "\1F50B"; }
.fa-plug::before { content: "\1F50C"; }
.fa-power-off::before { content: "\23FB"; }
.fa-toggle-on::before { content: "\1F507"; }
.fa-toggle-off::before { content: "\1F507"; }
.fa-wifi::before { content: "\1F4F6"; }
.fa-signal::before { content: "\1F4F6"; }
.fa-rss::before { content: "\1F4E3"; }
.fa-rss-square::before { content: "\1F4E3"; }
.fa-feed::before { content: "\1F4E3"; }
.fa-newspaper::before { content: "\1F4F0"; }
.fa-bookmark::before { content: "\1F516"; }
.fa-tag::before { content: "\1F3F7"; }
.fa-tags::before { content: "\1F3F7"; }
.fa-flag::before { content: "\2691"; }
.fa-flag-checkered::before { content: "\2691"; }
.fa-thumbtack::before { content: "\1F4CC"; }
.fa-award::before { content: "\1F3C5"; }
.fa-certificate::before { content: "\1F3C5"; }
.fa-medal::before { content: "\1F3C5"; }
.fa-trophy::before { content: "\1F3C6"; }
.fa-crown::before { content: "\1F451"; }
.fa-gem::before { content: "\1F48E"; }
.fa-diamond::before { content: "\1F48E"; }
.fa-star::before { content: "\2605"; }
.fa-star-half::before { content: "\2BE3"; }
.fa-star-half-alt::before { content: "\2BE3"; }
.fa-heart::before { content: "\2665"; }
.fa-heart-broken::before { content: "\1F494"; }
.fa-heartbeat::before { content: "\2665"; }
.fa-comment::before { content: "\1F4AC"; }
.fa-comments::before { content: "\1F4AC"; }
.fa-comment-dots::before { content: "\1F4AC"; }
.fa-comment-slash::before { content: "\1F4AC"; }
.fa-paper-plane::before { content: "\1F4E5"; }
.fa-envelope::before { content: "\2709"; }
.fa-envelope-open::before { content: "\1F4E7"; }
.fa-inbox::before { content: "\1F4E4"; }
.fa-reply::before { content: "\21A9"; }
.fa-share::before { content: "\1F4E4"; }
.fa-share-alt::before { content: "\1F4E4"; }
.fa-user::before { content: "\1F464"; }
.fa-users::before { content: "\1F465"; }
.fa-user-plus::before { content: "\1F464+"; }
.fa-user-times::before { content: "\1F464-"; }
.fa-user-check::before { content: "\1F464"; }
.fa-user-shield::before { content: "\1F464\1F6E1"; }
.fa-lock::before { content: "\1F512"; }
.fa-unlock::before { content: "\1F513"; }
.fa-key::before { content: "\1F511"; }
.fa-cog::before { content: "\2699"; }
.fa-cogs::before { content: "\2699"; }
.fa-wrench::before { content: "\1F527"; }
.fa-tools::before { content: "\1F6E0"; }
.fa-hammer::before { content: "\1F528"; }
.fa-screwdriver::before { content: "\1F527"; }
.fa-bug::before { content: "\1F41B"; }
.fa-tasks::before { content: "\1F4C5"; }
.fa-list::before { content: "\2630"; }
.fa-list-ul::before { content: "\2630"; }
.fa-list-ol::before { content: "\2630"; }
.fa-th-list::before { content: "\2630"; }
.fa-th::before { content: "\25A6"; }
.fa-th-large::before { content: "\229E"; }
.fa-thumbtack::before { content: "\1F4CC"; }
.fa-map-marker::before { content: "\1F4CD"; }
.fa-qrcode::before { content: "\1F4F2"; }
.fa-bars::before { content: "\2630"; }
.bars::before { content: "\2630"; }
