/*
 * Helios Dashboard — Dashicons → HugeIcons remap.
 *
 * Activated by the .helios-icons-hugeicons body class. Each rule rewires a
 * WordPress dashicon class to render a HugeIcons glyph instead, both by
 * swapping the font-family and by remapping the ::before content codepoint.
 *
 * Scope: the ~80 dashicons that actually appear across the default WP admin
 * (sidebar menu, admin bar, list-table actions, post-editor toolbar, common
 * meta widgets). Anything outside this set keeps its original dashicon.
 */

/* Apply the HugeIcons font wherever a dashicon class is mounted. */
body.helios-icons-hugeicons .dashicons,
body.helios-icons-hugeicons .dashicons-before::before,
body.helios-icons-hugeicons .dashicons-before:before {
	font-family: "hgi-stroke-rounded" !important;
	font-weight: 400;
	font-style: normal;
}

/* ---------- Sidebar / admin chrome ---------- */
body.helios-icons-hugeicons .dashicons-dashboard::before          { content: "\f1b15"; } /* dashboard-square-01 */
body.helios-icons-hugeicons .dashicons-admin-home::before         { content: "\f1e31"; } /* home-01 */
body.helios-icons-hugeicons .dashicons-admin-site::before,
body.helios-icons-hugeicons .dashicons-admin-site-alt::before,
body.helios-icons-hugeicons .dashicons-admin-site-alt2::before,
body.helios-icons-hugeicons .dashicons-admin-site-alt3::before,
body.helios-icons-hugeicons .dashicons-admin-multisite::before    { content: "\f1d82"; } /* globe */
body.helios-icons-hugeicons .dashicons-admin-network::before      { content: "\f1d80"; } /* globe-02 */
body.helios-icons-hugeicons .dashicons-admin-post::before         { content: "\f22f1"; } /* pencil-edit-02 */
body.helios-icons-hugeicons .dashicons-admin-page::before         { content: "\f1c6a"; } /* file-01 */
body.helios-icons-hugeicons .dashicons-admin-media::before        { content: "\f1e85"; } /* image-01 */
body.helios-icons-hugeicons .dashicons-admin-comments::before     { content: "\f1a2f"; } /* comment-01 */
body.helios-icons-hugeicons .dashicons-admin-appearance::before   { content: "\f22a4"; } /* paint-board */
body.helios-icons-hugeicons .dashicons-admin-plugins::before      { content: "\f23ce"; } /* puzzle */
body.helios-icons-hugeicons .dashicons-admin-users::before        { content: "\f292c"; } /* user-multiple-02 */
body.helios-icons-hugeicons .dashicons-admin-tools::before        { content: "\f2861"; } /* tools */
body.helios-icons-hugeicons .dashicons-admin-settings::before     { content: "\f2580"; } /* settings-02 */
body.helios-icons-hugeicons .dashicons-admin-generic::before      { content: "\f257f"; } /* settings-01 */
body.helios-icons-hugeicons .dashicons-admin-collapse::before     { content: "\f20e5"; } /* menu-collapse */
body.helios-icons-hugeicons .dashicons-admin-links::before        { content: "\f1fa8"; } /* link-04 */

/* ---------- Top toolbar / admin bar ---------- */
body.helios-icons-hugeicons .dashicons-wordpress::before,
body.helios-icons-hugeicons .dashicons-wordpress-alt::before      { content: "\f2a13"; } /* wordpress */
body.helios-icons-hugeicons .dashicons-update::before             { content: "\f244e"; } /* refresh */
body.helios-icons-hugeicons .dashicons-update-alt::before         { content: "\f2455"; } /* reload */
body.helios-icons-hugeicons .dashicons-cart::before               { content: "\f25db"; } /* shopping-cart-01 */
body.helios-icons-hugeicons .dashicons-search::before             { content: "\f2546"; } /* search-01 */
body.helios-icons-hugeicons .dashicons-bell::before               { content: "\f222f"; } /* notification-01 */

/* ---------- Confirms / errors / common actions ---------- */
body.helios-icons-hugeicons .dashicons-yes::before,
body.helios-icons-hugeicons .dashicons-saved::before              { content: "\f282c"; } /* tick-02 */
body.helios-icons-hugeicons .dashicons-yes-alt::before            { content: "\f1971"; } /* checkmark-circle-02 */
body.helios-icons-hugeicons .dashicons-no::before                 { content: "\f18bd"; } /* cancel-02 */
body.helios-icons-hugeicons .dashicons-no-alt::before,
body.helios-icons-hugeicons .dashicons-dismiss::before            { content: "\f18bf"; } /* cancel-circle */
body.helios-icons-hugeicons .dashicons-plus::before,
body.helios-icons-hugeicons .dashicons-plus-alt2::before          { content: "\f235a"; } /* plus-sign */
body.helios-icons-hugeicons .dashicons-plus-alt::before           { content: "\f2358"; } /* plus-sign-circle */
body.helios-icons-hugeicons .dashicons-minus::before              { content: "\f2139"; } /* minus-sign */
body.helios-icons-hugeicons .dashicons-trash::before              { content: "\f1b35"; } /* delete-02 */
body.helios-icons-hugeicons .dashicons-edit::before               { content: "\f22f1"; } /* pencil-edit-02 */
body.helios-icons-hugeicons .dashicons-edit-large::before         { content: "\f1c02"; } /* edit-02 */
body.helios-icons-hugeicons .dashicons-marker::before             { content: "\f22f3"; } /* pencil */

/* ---------- Arrows (sort headers, dropdowns) ---------- */
body.helios-icons-hugeicons .dashicons-arrow-up::before,
body.helios-icons-hugeicons .dashicons-arrow-up-alt2::before      { content: "\f1632"; } /* arrow-up-01 */
body.helios-icons-hugeicons .dashicons-arrow-down::before,
body.helios-icons-hugeicons .dashicons-arrow-down-alt2::before    { content: "\f15fc"; } /* arrow-down-01 */
body.helios-icons-hugeicons .dashicons-arrow-left::before,
body.helios-icons-hugeicons .dashicons-arrow-left-alt2::before    { content: "\f1612"; } /* arrow-left-01 */
body.helios-icons-hugeicons .dashicons-arrow-right::before,
body.helios-icons-hugeicons .dashicons-arrow-right-alt2::before   { content: "\f1623"; } /* arrow-right-01 */
body.helios-icons-hugeicons .dashicons-arrow-up-alt::before       { content: "\f1633"; } /* arrow-up-02 */
body.helios-icons-hugeicons .dashicons-arrow-down-alt::before     { content: "\f15fd"; } /* arrow-down-02 */
body.helios-icons-hugeicons .dashicons-arrow-left-alt::before     { content: "\f1613"; } /* arrow-left-02 */
body.helios-icons-hugeicons .dashicons-arrow-right-alt::before    { content: "\f1624"; } /* arrow-right-02 */

/* ---------- Menus / overflow ---------- */
body.helios-icons-hugeicons .dashicons-menu::before               { content: "\f20da"; } /* menu-02 */
body.helios-icons-hugeicons .dashicons-menu-alt::before           { content: "\f20d9"; } /* menu-01 */
body.helios-icons-hugeicons .dashicons-menu-alt2::before          { content: "\f20e0"; } /* menu-08 */
body.helios-icons-hugeicons .dashicons-menu-alt3::before          { content: "\f20e1"; } /* menu-09 */
body.helios-icons-hugeicons .dashicons-ellipsis::before           { content: "\f218f"; } /* more-horizontal */

/* ---------- Notices / states ---------- */
body.helios-icons-hugeicons .dashicons-info::before,
body.helios-icons-hugeicons .dashicons-info-outline::before       { content: "\f1eb4"; } /* information-circle */
body.helios-icons-hugeicons .dashicons-warning::before            { content: "\f1584"; } /* alert-circle */
body.helios-icons-hugeicons .dashicons-visibility::before         { content: "\f1c4a"; } /* eye */
body.helios-icons-hugeicons .dashicons-hidden::before             { content: "\f296e"; } /* view-off */
body.helios-icons-hugeicons .dashicons-lock::before               { content: "\f1ff0"; } /* locked */
body.helios-icons-hugeicons .dashicons-unlock::before             { content: "\f1fef"; } /* lock (open) */

/* ---------- Social / engagement ---------- */
body.helios-icons-hugeicons .dashicons-star-filled::before        { content: "\f26d7"; } /* star */
body.helios-icons-hugeicons .dashicons-star-half::before          { content: "\f26d4"; } /* star-half */
body.helios-icons-hugeicons .dashicons-star-empty::before         { content: "\f26d2"; } /* star-circle */
body.helios-icons-hugeicons .dashicons-heart::before              { content: "\f1c60"; } /* favourite */
body.helios-icons-hugeicons .dashicons-flag::before               { content: "\f1ce3"; } /* flag-01 */
body.helios-icons-hugeicons .dashicons-share::before,
body.helios-icons-hugeicons .dashicons-share-alt::before,
body.helios-icons-hugeicons .dashicons-share-alt2::before         { content: "\f259d"; } /* share-08 */

/* ---------- Media / formats ---------- */
body.helios-icons-hugeicons .dashicons-format-image::before       { content: "\f1e86"; } /* image-02 */
body.helios-icons-hugeicons .dashicons-format-video::before       { content: "\f2964"; } /* video-01 */
body.helios-icons-hugeicons .dashicons-format-audio::before       { content: "\f1666"; } /* audio-book-02 */
body.helios-icons-hugeicons .dashicons-format-gallery::before     { content: "\f1e89"; } /* image-add-01 */
body.helios-icons-hugeicons .dashicons-camera::before             { content: "\f18a4"; } /* camera-01 */
body.helios-icons-hugeicons .dashicons-camera-alt::before         { content: "\f18a5"; } /* camera-02 */

/* ---------- Communication / data ---------- */
body.helios-icons-hugeicons .dashicons-email::before              { content: "\f205c"; } /* mail-01 */
body.helios-icons-hugeicons .dashicons-email-alt::before,
body.helios-icons-hugeicons .dashicons-email-alt2::before         { content: "\f205d"; } /* mail-02 */
body.helios-icons-hugeicons .dashicons-database::before           { content: "\f1b2d"; } /* database */

/* ---------- Security ---------- */
body.helios-icons-hugeicons .dashicons-shield::before             { content: "\f25a8"; } /* shield-01 */
body.helios-icons-hugeicons .dashicons-shield-alt::before         { content: "\f25a9"; } /* shield-02 */

/* ---------- Commerce / business ---------- */
body.helios-icons-hugeicons .dashicons-tag::before                { content: "\f279f"; } /* tag-01 */
body.helios-icons-hugeicons .dashicons-money::before              { content: "\f2151"; } /* money-bag-01 */
body.helios-icons-hugeicons .dashicons-money-alt::before          { content: "\f1ba4"; } /* dollar-01 */
body.helios-icons-hugeicons .dashicons-products::before           { content: "\f25bc"; } /* shopping-bag-01 */
body.helios-icons-hugeicons .dashicons-store::before              { content: "\f26ec"; } /* store-01 */

/* ---------- Analytics ---------- */
body.helios-icons-hugeicons .dashicons-chart-area::before         { content: "\f1926"; } /* chart-line-data-01 */
body.helios-icons-hugeicons .dashicons-chart-bar::before          { content: "\f1913"; } /* chart-bar-line */
body.helios-icons-hugeicons .dashicons-chart-line::before         { content: "\f15c1"; } /* analytics-up */
body.helios-icons-hugeicons .dashicons-chart-pie::before          { content: "\f2315"; } /* pie-chart-01 */

/* ---------- Calendar / time / location ---------- */
body.helios-icons-hugeicons .dashicons-calendar::before           { content: "\f1853"; } /* calendar-03 */
body.helios-icons-hugeicons .dashicons-calendar-alt::before       { content: "\f1852"; } /* calendar-02 */
body.helios-icons-hugeicons .dashicons-clock::before              { content: "\f19e3"; } /* clock-01 */
body.helios-icons-hugeicons .dashicons-location::before           { content: "\f1fca"; } /* location-01 */
body.helios-icons-hugeicons .dashicons-location-alt::before       { content: "\f2328"; } /* pin-location-01 */

/* ---------- Transfer ---------- */
body.helios-icons-hugeicons .dashicons-download::before           { content: "\f1bb4"; } /* download-01 */
body.helios-icons-hugeicons .dashicons-upload::before             { content: "\f28fb"; } /* upload-01 */

/* ---------- Misc UI ---------- */
body.helios-icons-hugeicons .dashicons-screenoptions::before      { content: "\f2391"; } /* preference-horizontal */
body.helios-icons-hugeicons .dashicons-image-rotate::before       { content: "\f24a1"; } /* rotate-01 */
body.helios-icons-hugeicons .dashicons-image-flip-vertical::before    { content: "\f1cf3"; } /* flip-vertical */
body.helios-icons-hugeicons .dashicons-image-flip-horizontal::before  { content: "\f1cee"; } /* flip-horizontal */
body.helios-icons-hugeicons .dashicons-smartphone::before         { content: "\f2623"; } /* smart-phone-01 */

/* ---------- Admin bar (top toolbar) ---------- */
/* The admin bar doesn't use plain .dashicons-<name> classes — each slot
   has an ID-scoped .ab-icon pseudo (e.g. #wp-admin-bar-updates .ab-icon:before)
   with the codepoint hard-coded by WP core. We override per-slot. The
   font-family rule below covers them all in one place. */
body.helios-icons-hugeicons #wpadminbar .ab-icon::before,
body.helios-icons-hugeicons #wpadminbar .ab-icon:before,
body.helios-icons-hugeicons #wpadminbar .ab-item::before,
body.helios-icons-hugeicons #wpadminbar .ab-item:before {
	font-family: "hgi-stroke-rounded" !important;
	font-weight: 400;
}

/* WP logo / help menu */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon::before { content: "\f2a13"; } /* wordpress */

/* Site visit / edit */
body.helios-icons-hugeicons #wpadminbar .ab-icon.dashicons-admin-site::before,
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-site-name > .ab-item .ab-icon::before { content: "\f1d82"; } /* globe */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-view-site > .ab-item .ab-icon::before,
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-view > .ab-item .ab-icon::before    { content: "\f1d82"; } /* globe */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-edit-site > .ab-item .ab-icon::before { content: "\f22f1"; } /* pencil-edit-02 */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-customize > .ab-item .ab-icon::before { content: "\f22a4"; } /* paint-board */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-edit > .ab-item .ab-icon::before    { content: "\f22f1"; } /* pencil-edit-02 */

/* Updates */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-updates .ab-icon::before { content: "\f244e"; } /* refresh */

/* Comments */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-comments .ab-icon::before { content: "\f1a2f"; } /* comment-01 */

/* + New menu */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-new-content .ab-icon::before { content: "\f2358"; } /* plus-sign-circle */

/* Search */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-search .ab-icon::before { content: "\f2546"; } /* search-01 */

/* Top-level menupop chevron. WP renders this via .menupop > .ab-item:after
   (DIRECT child, not descendant). The earlier descendant selector also
   matched .ab-items inside the dropdown itself — i.e. the "Post / Media /
   Page" links under "+ New" — leaving every submenu link with an
   unwanted chevron. Direct child only. */
body.helios-icons-hugeicons #wpadminbar .menupop > .ab-item::after,
body.helios-icons-hugeicons #wpadminbar .menupop > .ab-item:after {
	font-family: "hgi-stroke-rounded" !important;
	content: "\f15fc" !important; /* arrow-down-01 */
}

/* My Sites (multisite) */
body.helios-icons-hugeicons #wpadminbar #wp-admin-bar-my-sites > .ab-item .ab-icon::before { content: "\f1d80"; } /* globe-02 */
