/* FH-CONSOLE login stylesheet fhc47 (light+dark via prefers-color-scheme). Managed by fh-cwp-theme-reconcile. */
:root {
    color-scheme: light;
    --fh-bg: #f4f4f2;
    --fh-ground: radial-gradient(1600px 720px at 50% 0, #fbfbfa 0%, #f4f4f2 55%, #f4f4f2 100%);
    --fh-side: #fafaf9;
    --fh-side-edge: #e4e4e7;
    --fh-surface: #fafaf9;
    --fh-card: linear-gradient(180deg, #fcfcfb 0%, #fafaf9 100%);
    --fh-card-flat: #fafaf9;
    --fh-menu-bg: #fcfcfb;
    --fh-raise: #efefec;
    --fh-elev: #e7e7e4;
    --fh-edge: #e4e4e7;
    --fh-edge-top: #e4e4e7;
    --fh-edge-strong: #d4d4d8;
    --fh-heading: #18181b;
    --fh-text: #3f3f46;
    --fh-soft: #27272a;
    --fh-muted: #52525b;
    --fh-input: #fff;
    --fh-input-hover: #efefec;
    --fh-input-edge: #71717a;
    --fh-input-edge-focus: #52525b;
    --fh-placeholder: #71717a;
    --fh-hdr-bg: rgba(244,244,242,.88);
    --fh-tint-1: rgba(24,24,27,.02);
    --fh-tint-2: rgba(24,24,27,.04);
    --fh-tint-3: rgba(24,24,27,.07);
    --fh-hi-bg: #18181b;
    --fh-hi-fg: #fafaf9;
    --fh-focus: #18181b;
    --fh-chrome: linear-gradient(180deg, #2a2a2e 0%, #18181b 100%);
    --fh-primary-fg: #fafaf9;
    --fh-primary-edge: #18181b;
    --fh-primary-edge-top: #3f3f46;
    --fh-primary-shadow: 0 1px 2px rgba(24,24,27,.25);
    --fh-card-shadow: 0 1px 2px rgba(24,24,27,.04), 0 12px 28px -22px rgba(24,24,27,.25);
    --fh-menu-shadow: 0 16px 36px -16px rgba(24,24,27,.3);
    --fh-veil: rgba(250,250,249,.78);
    --fh-scrim: rgba(24,24,27,.35);
    --fh-ok: #166534;  --fh-ok-bg: rgba(21,128,61,.08);  --fh-ok-edge: rgba(21,128,61,.3);
    --fh-warn: #a14b07; --fh-warn-bg: rgba(180,83,9,.08); --fh-warn-edge: rgba(180,83,9,.3);
    --fh-bad: #b91c1c;  --fh-bad-bg: rgba(185,28,28,.07); --fh-bad-edge: rgba(185,28,28,.3);
    --fh-info: #1d4ed8; --fh-info-bg: rgba(37,99,235,.07); --fh-info-edge: rgba(37,99,235,.3);
    --fh-danger-bg: #b91c1c; --fh-danger-hover: #991b1b; --fh-danger-edge: #991b1b;
    /* metrics / charts (edit these to restyle every chart and usage bar) */
    --fh-chart-bg: #fafaf9;
    --fh-chart-line: #2563eb;
    --fh-chart-fill-op: .18;
    --fh-chart-grid: #e4e4e7;
    --fh-chart-label: #52525b;
    --fh-chart-series2: #71717a;
    --fh-chart-series3: #a1a1aa;
    --fh-chart-limit: #b91c1c;
    --fh-chart-track: #e4e4e7;
    --fh-font: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --fh-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    --fh-select-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2352525b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    --fh-login-logo: url("/login/cwp_theme/original/img/logoc_fh_negro.svg");
}
@media (prefers-color-scheme: dark) {
:root:not([data-theme="light"]) {
    color-scheme: dark;
    --fh-bg: #000;
    --fh-ground: radial-gradient(1600px 720px at 50% 0, #1c1c1c 0%, #0b0b0b 48%, #000 100%);
    --fh-side: #0b0b0c;
    --fh-side-edge: #1f1f22;
    --fh-surface: #111113;
    --fh-card: linear-gradient(180deg, #161618 0%, #111113 100%);
    --fh-card-flat: #111113;
    --fh-menu-bg: #141416;
    --fh-raise: #1a1a1c;
    --fh-elev: #242526;
    --fh-edge: #262626;
    --fh-edge-top: #363636;
    --fh-edge-strong: #3e4042;
    --fh-heading: #fff;
    --fh-text: #a8a8a8;
    --fh-soft: #d4d4d4;
    --fh-muted: #9a9a9a;
    --fh-input: #1c1c1f;
    --fh-input-hover: #2a2a2d;
    --fh-input-edge: #71717a;
    --fh-input-edge-focus: #a0a0a0;
    --fh-placeholder: #8a8a8a;
    --fh-hdr-bg: rgba(0,0,0,.72);
    --fh-tint-1: rgba(255,255,255,.02);
    --fh-tint-2: rgba(255,255,255,.05);
    --fh-tint-3: rgba(255,255,255,.08);
    --fh-hi-bg: #fff;
    --fh-hi-fg: #000;
    --fh-focus: #fafafa;
    --fh-chrome: linear-gradient(180deg, #fff 0%, #dcdcdc 52%, #bfbfbf 100%);
    --fh-primary-fg: #0a0a0a;
    --fh-primary-edge: #9c9c9c;
    --fh-primary-edge-top: #fff;
    --fh-primary-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 rgba(0,0,0,.18), 0 3px 10px rgba(0,0,0,.65);
    --fh-card-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 16px 36px -24px rgba(0,0,0,.95);
    --fh-menu-shadow: 0 16px 36px -12px rgba(0,0,0,.9);
    --fh-veil: rgba(17,17,19,.78);
    --fh-scrim: rgba(0,0,0,.6);
    --fh-ok: #05df72;  --fh-ok-bg: rgba(5,223,114,.08);  --fh-ok-edge: rgba(5,223,114,.28);
    --fh-warn: #ffb900; --fh-warn-bg: rgba(255,185,0,.08); --fh-warn-edge: rgba(255,185,0,.28);
    --fh-bad: #ff6467;  --fh-bad-bg: rgba(255,100,103,.08); --fh-bad-edge: rgba(255,100,103,.28);
    --fh-info: #8ab4f8; --fh-info-bg: rgba(138,180,248,.08); --fh-info-edge: rgba(138,180,248,.28);
    --fh-danger-bg: #7a1214; --fh-danger-hover: #8f1a1d; --fh-danger-edge: #a3282b;
    /* metrics / charts (edit these to restyle every chart and usage bar) */
    --fh-chart-bg: #111113;
    --fh-chart-line: #8ab4f8;
    --fh-chart-fill-op: .28;
    --fh-chart-grid: #2a2a2e;
    --fh-chart-label: #a1a1aa;
    --fh-chart-series2: #a1a1aa;
    --fh-chart-series3: #71717a;
    --fh-chart-limit: #ff6467;
    --fh-chart-track: #27272a;
    --fh-font: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --fh-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    --fh-select-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d4d4d4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    --fh-login-logo: url("/login/cwp_theme/original/img/logoc_fh_blanco.svg");
}
}
:root[data-theme="dark"] {
    color-scheme: dark;
    --fh-bg: #000;
    --fh-ground: radial-gradient(1600px 720px at 50% 0, #1c1c1c 0%, #0b0b0b 48%, #000 100%);
    --fh-side: #0b0b0c;
    --fh-side-edge: #1f1f22;
    --fh-surface: #111113;
    --fh-card: linear-gradient(180deg, #161618 0%, #111113 100%);
    --fh-card-flat: #111113;
    --fh-menu-bg: #141416;
    --fh-raise: #1a1a1c;
    --fh-elev: #242526;
    --fh-edge: #262626;
    --fh-edge-top: #363636;
    --fh-edge-strong: #3e4042;
    --fh-heading: #fff;
    --fh-text: #a8a8a8;
    --fh-soft: #d4d4d4;
    --fh-muted: #9a9a9a;
    --fh-input: #1c1c1f;
    --fh-input-hover: #2a2a2d;
    --fh-input-edge: #71717a;
    --fh-input-edge-focus: #a0a0a0;
    --fh-placeholder: #8a8a8a;
    --fh-hdr-bg: rgba(0,0,0,.72);
    --fh-tint-1: rgba(255,255,255,.02);
    --fh-tint-2: rgba(255,255,255,.05);
    --fh-tint-3: rgba(255,255,255,.08);
    --fh-hi-bg: #fff;
    --fh-hi-fg: #000;
    --fh-focus: #fafafa;
    --fh-chrome: linear-gradient(180deg, #fff 0%, #dcdcdc 52%, #bfbfbf 100%);
    --fh-primary-fg: #0a0a0a;
    --fh-primary-edge: #9c9c9c;
    --fh-primary-edge-top: #fff;
    --fh-primary-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 rgba(0,0,0,.18), 0 3px 10px rgba(0,0,0,.65);
    --fh-card-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 16px 36px -24px rgba(0,0,0,.95);
    --fh-menu-shadow: 0 16px 36px -12px rgba(0,0,0,.9);
    --fh-veil: rgba(17,17,19,.78);
    --fh-scrim: rgba(0,0,0,.6);
    --fh-ok: #05df72;  --fh-ok-bg: rgba(5,223,114,.08);  --fh-ok-edge: rgba(5,223,114,.28);
    --fh-warn: #ffb900; --fh-warn-bg: rgba(255,185,0,.08); --fh-warn-edge: rgba(255,185,0,.28);
    --fh-bad: #ff6467;  --fh-bad-bg: rgba(255,100,103,.08); --fh-bad-edge: rgba(255,100,103,.28);
    --fh-info: #8ab4f8; --fh-info-bg: rgba(138,180,248,.08); --fh-info-edge: rgba(138,180,248,.28);
    --fh-danger-bg: #7a1214; --fh-danger-hover: #8f1a1d; --fh-danger-edge: #a3282b;
    /* metrics / charts (edit these to restyle every chart and usage bar) */
    --fh-chart-bg: #111113;
    --fh-chart-line: #8ab4f8;
    --fh-chart-fill-op: .28;
    --fh-chart-grid: #2a2a2e;
    --fh-chart-label: #a1a1aa;
    --fh-chart-series2: #a1a1aa;
    --fh-chart-series3: #71717a;
    --fh-chart-limit: #ff6467;
    --fh-chart-track: #27272a;
    --fh-font: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --fh-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    --fh-select-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d4d4d4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    --fh-login-logo: url("/login/cwp_theme/original/img/logoc_fh_blanco.svg");
}
/* ---------- font (Inter, variable; system stack fallback) ---------- */
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400 800; font-display: swap;
  src: local('Inter'), url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400 800; font-display: swap;
  src: local('Inter'), url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* ---------- base ---------- */
html, html body:not(#fh):not(#fh0) { background: var(--fh-bg) !important; }
html body:not(#fh):not(#fh0) { color: var(--fh-text) !important; font-family: var(--fh-font) !important; font-size: 14px; line-height: 1.5;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; }
html body:not(#fh):not(#fh0) h1, html body:not(#fh):not(#fh0) h2, html body:not(#fh):not(#fh0) h3, html body:not(#fh):not(#fh0) h4, html body:not(#fh):not(#fh0) h5, html body:not(#fh):not(#fh0) h6,
html body:not(#fh):not(#fh0) p, html body:not(#fh):not(#fh0) a, html body:not(#fh):not(#fh0) li, html body:not(#fh):not(#fh0) td, html body:not(#fh):not(#fh0) th, html body:not(#fh):not(#fh0) label, html body:not(#fh):not(#fh0) small, html body:not(#fh):not(#fh0) strong,
html body:not(#fh):not(#fh0) .btn, html body:not(#fh):not(#fh0) button, html body:not(#fh):not(#fh0) input, html body:not(#fh):not(#fh0) select, html body:not(#fh):not(#fh0) textarea, html body:not(#fh):not(#fh0) .form-control,
html body:not(#fh):not(#fh0) .nav-label, html body:not(#fh):not(#fh0) .modal-title, html body:not(#fh):not(#fh0) .popover, html body:not(#fh):not(#fh0) .tooltip { font-family: var(--fh-font) !important; }
html body:not(#fh):not(#fh0) h1, html body:not(#fh):not(#fh0) h2, html body:not(#fh):not(#fh0) h3, html body:not(#fh):not(#fh0) h4, html body:not(#fh):not(#fh0) h5, html body:not(#fh):not(#fh0) h6,
html body:not(#fh):not(#fh0) .h1, html body:not(#fh):not(#fh0) .h2, html body:not(#fh):not(#fh0) .h3, html body:not(#fh):not(#fh0) .h4, html body:not(#fh):not(#fh0) .h5, html body:not(#fh):not(#fh0) .h6 { color: var(--fh-heading) !important; letter-spacing: -.01em; }
html body:not(#fh):not(#fh0) h5 { font-size: 14px; font-weight: 600; }
html body:not(#fh):not(#fh0) a { color: var(--fh-heading); text-underline-offset: 3px; }
html body:not(#fh):not(#fh0) a:hover, html body:not(#fh):not(#fh0) a:focus { color: var(--fh-soft); }
html body:not(#fh):not(#fh0) .text-muted, html body:not(#fh):not(#fh0) .help-block, html body:not(#fh):not(#fh0) small, html body:not(#fh):not(#fh0) .small { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .text-navy, html body:not(#fh):not(#fh0) .text-primary, html body:not(#fh):not(#fh0) .text-info { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .text-success { color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .text-warning { color: var(--fh-warn) !important; }
html body:not(#fh):not(#fh0) .text-danger { color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) code, html body:not(#fh):not(#fh0) pre, html body:not(#fh):not(#fh0) kbd { background: var(--fh-raise) !important; color: var(--fh-soft) !important; border: 1px solid var(--fh-edge); border-radius: 6px; font-family: var(--fh-mono) !important; }
html body:not(#fh):not(#fh0) hr { border-color: var(--fh-edge); }
html body:not(#fh):not(#fh0) ::selection { background: var(--fh-hi-bg); color: var(--fh-hi-fg); }
html body:not(#fh):not(#fh0) *:focus-visible:not(input):not(textarea):not(select) { outline: 2px solid var(--fh-focus) !important; outline-offset: 2px !important; box-shadow: none !important; }
html body:not(#fh):not(#fh0) .gray-bg, html body:not(#fh):not(#fh0) .white-bg, html body:not(#fh):not(#fh0) .bg-muted, html body:not(#fh):not(#fh0) .bg-white, html body:not(#fh):not(#fh0) .dashbard-1 { background: transparent !important; }
html body:not(#fh):not(#fh0) #wrapper { background: var(--fh-bg) !important; }
html body:not(#fh):not(#fh0) #page-wrapper { background: var(--fh-ground) !important; background-color: var(--fh-bg) !important; min-height: 100vh; }
html body:not(#fh):not(#fh0) .wrapper-content, html body:not(#fh):not(#fh0) .wrapper, html body:not(#fh):not(#fh0) .dashboard-wrapper { background: transparent !important; color: var(--fh-text); }

/* ---------- sidebar ---------- */
html body:not(#fh):not(#fh0) .navbar-static-side, html body:not(#fh):not(#fh0) nav.navbar-default.navbar-static-side { background: var(--fh-side) !important; border-right: 1px solid var(--fh-side-edge) !important; box-shadow: none !important; }
html body:not(#fh):not(#fh0) .sidebar-collapse, html body:not(#fh):not(#fh0) #side-menu, html body:not(#fh):not(#fh0) .navbar-default .nav { background: transparent !important; }
html body:not(#fh):not(#fh0) #side-menu .nav-header { background: transparent !important; background-image: none !important; padding: 22px 18px 18px !important; border-bottom: 1px solid var(--fh-side-edge); }
html body:not(#fh):not(#fh0) #side-menu .nav-header .profile-element img#logomenu,
html body:not(#fh):not(#fh0) #logomenu-wrapper img { width: 168px !important; max-width: 100%; height: auto; margin: 0 !important; display: block; }
html body:not(#fh):not(#fh0) #logomenu-wrapper img:first-child { display: block !important; visibility: visible !important; opacity: 1 !important; }
html body:not(#fh):not(#fh0) #logomenu-wrapper img + img { display: none !important; }
html body:not(#fh):not(#fh0) #side-menu .logo-element { background: transparent !important; color: var(--fh-heading) !important; font-weight: 800; }
html body:not(#fh):not(#fh0) #side-menu > li { border-left: 0 !important; background: transparent !important; margin: 2px 10px; border-radius: 8px; width: auto !important; float: none !important; }
html body:not(#fh):not(#fh0) #side-menu > li.nav-header { margin: 0 0 10px; border-radius: 0; }
html body:not(#fh):not(#fh0) #side-menu > li > a { color: var(--fh-text) !important; font-weight: 500 !important; font-size: 14px !important; padding: 10px 12px !important; border-radius: 8px; min-height: 40px;
  display: flex !important; align-items: center; gap: 10px; background: transparent !important; text-shadow: none !important; border: 0 !important; }
html body:not(#fh):not(#fh0) #side-menu > li > a .nav-label, html body:not(#fh):not(#fh0) #side-menu > li > a > span:not(.fa):not(.label) { color: inherit !important; opacity: 1 !important; }
html body:not(#fh):not(#fh0) #side-menu > li > a > .fa:first-child, html body:not(#fh):not(#fh0) #side-menu > li > a > i:first-child { width: 18px; text-align: center; margin: 0 !important; color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) #side-menu > li > a .fa.arrow { margin-left: auto; color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) #side-menu > li > a:hover, html body:not(#fh):not(#fh0) #side-menu > li > a:focus { background: var(--fh-tint-2) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) #side-menu > li.active, html body:not(#fh):not(#fh0) #side-menu > li.active > a { background: var(--fh-tint-3) !important; color: var(--fh-heading) !important; border-radius: 8px; }
html body:not(#fh):not(#fh0) #side-menu > li.active > a > i:first-child { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) #side-menu .nav-second-level, html body:not(#fh):not(#fh0) #side-menu .nav-third-level { background: transparent !important; padding: 2px 0 6px !important; }
html body:not(#fh):not(#fh0) #side-menu .nav-second-level li a { color: var(--fh-muted) !important; padding: 8px 12px 8px 40px !important; font-size: 13.5px !important; font-weight: 500; border-radius: 8px; min-height: 36px; display: block; }
html body:not(#fh):not(#fh0) #side-menu .nav-second-level li a:hover, html body:not(#fh):not(#fh0) #side-menu .nav-second-level li a:focus { color: var(--fh-heading) !important; background: var(--fh-tint-2) !important; }
html body:not(#fh):not(#fh0) #side-menu .nav-second-level li.active a { color: var(--fh-heading) !important; font-weight: 600; }
/* sidebar usage block (Usage / Bandwidth / More) */
html body:not(#fh):not(#fh0) #side-menu li.menugrande { margin: 10px 10px 2px; }
html body:not(#fh):not(#fh0) #side-menu li.menugrande > .ibox, html body:not(#fh):not(#fh0) #side-menu li.menugrande .ibox-content2, html body:not(#fh):not(#fh0) #side-menu #divstorage,
html body:not(#fh):not(#fh0) #side-menu li.menugrande .ibox-content { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 4px 2px !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) #side-menu li.active2.menugrande, html body:not(#fh):not(#fh0) #side-menu li.active2.menugrande > a { background: transparent !important; }
html body:not(#fh):not(#fh0) #side-menu li.menugrande h5, html body:not(#fh):not(#fh0) #side-menu li.menugrande h5[style] { color: var(--fh-muted) !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .08em; text-transform: uppercase; margin: 12px 0 4px !important; }
html body:not(#fh):not(#fh0) #side-menu li.menugrande h3, html body:not(#fh):not(#fh0) #side-menu li.menugrande .info-left-item { color: var(--fh-heading) !important; font-size: 14px !important; font-weight: 600 !important; margin: 0 0 6px !important; }
html body:not(#fh):not(#fh0) #side-menu li.menugrande h3.info-left-item { font-size: 18px !important; font-weight: 700 !important; }
html body:not(#fh):not(#fh0) #side-menu li.menugrande hr, html body:not(#fh):not(#fh0) #side-menu li.menugrande .menu-left-storage { border-color: var(--fh-side-edge) !important; }
html body:not(#fh):not(#fh0) #side-menu li.menugrande .stat, html body:not(#fh):not(#fh0) #side-menu li.menugrande .stat * { color: var(--fh-muted) !important; font-size: 12px !important; text-align: left !important; }
html body:not(#fh):not(#fh0) #side-menu li.menugrande a, html body:not(#fh):not(#fh0) #side-menu li.menugrande .btn { color: var(--fh-text) !important; background: transparent !important; box-shadow: none !important; }
html body:not(#fh):not(#fh0) #side-menu li.menugrande .menu-left-storage, html body:not(#fh):not(#fh0) #side-menu li.menugrande .menu-left-storage-btn { color: var(--fh-muted) !important; background: transparent !important; }

/* ---------- top bar ---------- */
html body:not(#fh):not(#fh0) .row.border-bottom { border-bottom: 0 !important; background: transparent !important; margin: 0 !important; }
html body:not(#fh):not(#fh0) .navbar-static-top, html body:not(#fh):not(#fh0) nav.navbar.navbar-static-top { background: var(--fh-hdr-bg) !important; border: 0 !important; border-bottom: 1px solid var(--fh-edge) !important;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); min-height: 60px; box-shadow: none !important; }
html body:not(#fh):not(#fh0) .navbar-minimalize, html body:not(#fh):not(#fh0) .minimalize-styl-2 { background: var(--fh-input) !important; border: 1px solid var(--fh-edge-strong) !important; color: var(--fh-heading) !important;
  border-radius: 10px !important; min-width: 40px; min-height: 40px; padding: 8px 10px !important; margin: 10px 8px 10px 16px !important; box-shadow: none !important; display: inline-flex !important; align-items: center; justify-content: center; }
html body:not(#fh):not(#fh0) .navbar-minimalize .fa { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .navbar-form-custom { width: auto; max-width: 340px; padding-top: 10px; }
html body:not(#fh):not(#fh0) .navbar-form-custom .form-control, html body:not(#fh):not(#fh0) #top-search { height: 40px !important; min-height: 40px; border-radius: 10px !important; background: var(--fh-input) !important;
  border: 1px solid var(--fh-edge-strong) !important; color: var(--fh-heading) !important; font-size: 14px !important; padding: 8px 12px !important; width: 100%; box-shadow: none !important; }
html body:not(#fh):not(#fh0) .navbar-top-links { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 2px; min-height: 60px; margin: 0 !important; padding-right: 10px; }
html body:not(#fh):not(#fh0) .navbar-top-links > li { float: none !important; display: flex; align-items: center; }
html body:not(#fh):not(#fh0) .navbar-top-links > li > a, html body:not(#fh):not(#fh0) .navbar-top-links .welcome-message { color: var(--fh-text) !important; padding: 10px 10px !important; min-height: 40px; display: inline-flex !important; align-items: center; gap: 6px; border-radius: 8px; font-size: 14px; }
html body:not(#fh):not(#fh0) .navbar-top-links > li > a:hover, html body:not(#fh):not(#fh0) .navbar-top-links > li > a:focus, html body:not(#fh):not(#fh0) .navbar-top-links .welcome-message:hover { background: var(--fh-tint-2) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .navbar-top-links .fa, html body:not(#fh):not(#fh0) .navbar-top-links .glyphicon, html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links li a i.fa, html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links li a > i { color: inherit !important; background: transparent !important; }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links #imglock.label-warning { color: var(--fh-warn) !important; background: var(--fh-warn-bg) !important; border-color: var(--fh-warn-edge) !important; }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links #imglock.label-success { color: var(--fh-ok) !important; background: var(--fh-ok-bg) !important; border-color: var(--fh-ok-edge) !important; }
html body:not(#fh):not(#fh0) .navbar-top-links img { margin-right: 0 !important; border-radius: 2px; }

/* ---------- page heading / breadcrumb ---------- */
html body:not(#fh):not(#fh0) .dashboard-header, html body:not(#fh):not(#fh0) .row.border-bottom.white-bg.dashboard-header { background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--fh-edge) !important; padding: 22px 16px 16px !important; margin: 0 0 20px !important; }
html body:not(#fh):not(#fh0) .dashboard-header h2 { font-size: 26px !important; font-weight: 800 !important; letter-spacing: -.025em; margin: 0 0 6px !important; color: var(--fh-heading) !important; overflow-wrap: anywhere; }
html body:not(#fh):not(#fh0) .mail-contracted, html body:not(#fh):not(#fh0) .autoresp-contracted, html body:not(#fh):not(#fh0) .mysql-contracted { position: static !important; top: auto !important; right: auto !important; width: auto !important; max-width: 360px; margin: 0 0 16px auto !important; box-shadow: none !important; z-index: auto !important; }
html body:not(#fh):not(#fh0) .stats-module { position: static !important; top: auto !important; right: auto !important; margin: 0 0 16px; z-index: auto !important; }
html body:not(#fh):not(#fh0) .stats-module-items { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
html body:not(#fh):not(#fh0) .stats-module-items-display { margin: 0 !important; }
html body:not(#fh):not(#fh0) .mail-contracted .ibox-content, html body:not(#fh):not(#fh0) .autoresp-contracted .ibox-content { background: var(--fh-card-flat) !important; border: 1px solid var(--fh-edge) !important; border-radius: 12px !important; padding: 12px 14px !important; }
html body:not(#fh):not(#fh0) .stats-module-items-display { box-shadow: none !important; }
html body:not(#fh):not(#fh0) .stats-module-items-display .ibox-content, html body:not(#fh):not(#fh0) .mysql-contracted .ibox-content { background: var(--fh-card-flat) !important; border: 1px solid var(--fh-edge) !important; border-radius: 12px !important; padding: 12px 14px !important; min-width: 220px; }
html body:not(#fh):not(#fh0) .new-backup-btns { flex-wrap: wrap !important; gap: 8px; }
html body:not(#fh):not(#fh0) .new-backup-btns .btn { margin: 0 !important; }
html body:not(#fh):not(#fh0) .stat-list h2, html body:not(#fh):not(#fh0) .stat-list .no-margins { font-size: 18px !important; font-weight: 700 !important; }
html body:not(#fh):not(#fh0) .stat-percent { color: var(--fh-muted) !important; font-size: 12.5px; }
html body:not(#fh):not(#fh0) .stat-list small, html body:not(#fh):not(#fh0) .stat-list .small { font-size: 12.5px !important; }
html body:not(#fh):not(#fh0) .page-heading, html body:not(#fh):not(#fh0) .row.wrapper.page-heading { background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--fh-edge) !important; padding: 20px 16px 16px !important; }
html body:not(#fh):not(#fh0) .page-heading h2 { font-size: 26px !important; font-weight: 800 !important; letter-spacing: -.025em; margin: 0 0 6px; color: var(--fh-heading) !important; overflow-wrap: anywhere; }
html body:not(#fh):not(#fh0) .breadcrumb { background: transparent !important; padding: 0 !important; margin: 0; font-size: 13px; }
html body:not(#fh):not(#fh0) .breadcrumb > li, html body:not(#fh):not(#fh0) .breadcrumb > li a, html body:not(#fh):not(#fh0) .breadcrumb > .active { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .breadcrumb > li a:hover { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .breadcrumb > li + li:before { color: var(--fh-muted) !important; }

/* ---------- cards (ibox / panel / well) ---------- */
html body:not(#fh):not(#fh0) .ibox, html body:not(#fh):not(#fh0) .panel, html body:not(#fh):not(#fh0) .well, html body:not(#fh):not(#fh0) .widget, html body:not(#fh):not(#fh0) .float-e-margins > .ibox { background: var(--fh-card) !important; background-color: var(--fh-card-flat) !important;
  border: 1px solid var(--fh-edge) !important; border-top-color: var(--fh-edge-top) !important; border-radius: 16px !important; box-shadow: var(--fh-card-shadow) !important; color: var(--fh-text) !important; overflow: visible; }
html body:not(#fh):not(#fh0) .ibox { margin-bottom: 20px; }
html body:not(#fh):not(#fh0) .ibox-title, html body:not(#fh):not(#fh0) .panel-heading, html body:not(#fh):not(#fh0) .panel-default > .panel-heading { background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--fh-edge) !important;
  color: var(--fh-heading) !important; min-height: 52px; padding: 14px 18px !important; border-radius: 16px 16px 0 0 !important; }
html body:not(#fh):not(#fh0) .ibox-title h5, html body:not(#fh):not(#fh0) .panel-heading h4, html body:not(#fh):not(#fh0) .panel-title, html body:not(#fh):not(#fh0) .panel-title a { color: var(--fh-heading) !important; font-size: 14px !important; font-weight: 700 !important; letter-spacing: 0; text-transform: none !important; margin: 0; float: none; }
html body:not(#fh):not(#fh0) .ibox-title h5 .fa, html body:not(#fh):not(#fh0) .ibox-title h5 i { color: var(--fh-muted) !important; margin-right: 6px; }
html body:not(#fh):not(#fh0) .ibox-tools a, html body:not(#fh):not(#fh0) .ibox-tools .fa { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .ibox-content, html body:not(#fh):not(#fh0) .panel-body, html body:not(#fh):not(#fh0) .ibox-footer, html body:not(#fh):not(#fh0) .panel-footer { background: transparent !important; border: 0 !important; color: var(--fh-text) !important; padding: 18px !important; }
html body:not(#fh):not(#fh0) .ibox-footer, html body:not(#fh):not(#fh0) .panel-footer { border-top: 1px solid var(--fh-edge) !important; border-radius: 0 0 16px 16px; }
html body:not(#fh):not(#fh0) .ibox-content h1, html body:not(#fh):not(#fh0) .ibox-content h2, html body:not(#fh):not(#fh0) .ibox-content h3 { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .panel-group .panel + .panel { margin-top: 10px; }
html body:not(#fh):not(#fh0) .list-group-item { background: transparent !important; border-color: var(--fh-edge) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .list-group.clear-list .list-group-item { border-left: 0 !important; border-right: 0 !important; }
html body:not(#fh):not(#fh0) .jumbotron { background: var(--fh-raise) !important; color: var(--fh-text) !important; border-radius: 16px; }

/* dashboard tool grid (CWP Settings / Domains / ... icon tiles) */
html body:not(#fh):not(#fh0) .float-e-margins .ibox-content a, html body:not(#fh):not(#fh0) .dashboard-wrapper .ibox-content a { color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .float-e-margins .ibox-content a:hover, html body:not(#fh):not(#fh0) .dashboard-wrapper .ibox-content a:hover { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .float-e-margins .ibox-content img, html body:not(#fh):not(#fh0) .dashboard-wrapper .col-md-3 img { filter: grayscale(1) contrast(1.05); }
html body:not(#fh):not(#fh0) .graph-nodata { color: var(--fh-muted) !important; font-size: 15px !important; font-weight: 500 !important; padding: 56px 12px !important; text-align: center; }
html body:not(#fh):not(#fh0) .band-graph-title { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
html body:not(#fh):not(#fh0) .band-graph-title .band-graph-select { width: auto !important; min-width: 180px; max-width: 100%; margin: 0 !important; }

/* ---------- forms ---------- */
html body:not(#fh):not(#fh0) .form-control, html body:not(#fh):not(#fh0) select, html body:not(#fh):not(#fh0) textarea, html body:not(#fh):not(#fh0) input[type="text"], html body:not(#fh):not(#fh0) input[type="password"], html body:not(#fh):not(#fh0) input[type="email"],
html body:not(#fh):not(#fh0) input[type="number"], html body:not(#fh):not(#fh0) input[type="search"], html body:not(#fh):not(#fh0) input[type="url"], html body:not(#fh):not(#fh0) input[type="tel"], html body:not(#fh):not(#fh0) .select2-container .select2-selection,
html body:not(#fh):not(#fh0) .bootstrap-tagsinput, html body:not(#fh):not(#fh0) .dataTables_filter input, html body:not(#fh):not(#fh0) .dataTables_length select {
  background-color: var(--fh-input) !important; color: var(--fh-heading) !important; border: 1px solid var(--fh-input-edge) !important; border-radius: 8px !important;
  min-height: 40px; font-size: 14px !important; box-shadow: none !important; background-image: none; }
html body:not(#fh):not(#fh0) select.form-control, html body:not(#fh):not(#fh0) .dataTables_length select, html body:not(#fh):not(#fh0) select:not([multiple]) { -webkit-appearance: none; appearance: none; background-image: var(--fh-select-arrow) !important;
  background-repeat: no-repeat !important; background-position: right 10px center !important; background-size: 16px !important; padding-right: 34px !important; }
html body:not(#fh):not(#fh0) textarea.form-control { min-height: 96px; }
html body:not(#fh):not(#fh0) .form-control:hover, html body:not(#fh):not(#fh0) select:hover { border-color: var(--fh-input-edge-focus) !important; }
html body:not(#fh):not(#fh0) .form-control:focus, html body:not(#fh):not(#fh0) select:focus, html body:not(#fh):not(#fh0) textarea:focus, html body:not(#fh):not(#fh0) input:focus { border-color: var(--fh-input-edge-focus) !important; outline: none !important; box-shadow: 0 0 0 3px var(--fh-tint-3), 0 0 0 1px var(--fh-input-edge-focus) inset !important; }
html body:not(#fh):not(#fh0) .form-control::placeholder, html body:not(#fh):not(#fh0) input::placeholder, html body:not(#fh):not(#fh0) textarea::placeholder { color: var(--fh-placeholder) !important; opacity: 1; }
html body:not(#fh):not(#fh0) .form-control[disabled], html body:not(#fh):not(#fh0) .form-control[readonly], html body:not(#fh):not(#fh0) fieldset[disabled] .form-control { background-color: var(--fh-raise) !important; color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) label, html body:not(#fh):not(#fh0) .control-label { color: var(--fh-soft) !important; font-weight: 600; }
html body:not(#fh):not(#fh0) .input-group-addon { background: var(--fh-raise) !important; border: 1px solid var(--fh-input-edge) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .input-group .form-control:first-child, html body:not(#fh):not(#fh0) .input-group-addon:first-child { border-radius: 8px 0 0 8px !important; }
html body:not(#fh):not(#fh0) .input-group .form-control:last-child, html body:not(#fh):not(#fh0) .input-group-addon:last-child { border-radius: 0 8px 8px 0 !important; }
html body:not(#fh):not(#fh0) .input-group .form-control:not(:first-child):not(:last-child) { border-radius: 0 !important; }
html body:not(#fh):not(#fh0) .has-error .form-control { border-color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .has-error .help-block, html body:not(#fh):not(#fh0) .has-error .control-label { color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .has-success .form-control { border-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) input[type="checkbox"], html body:not(#fh):not(#fh0) input[type="radio"] { accent-color: var(--fh-heading); }
html body:not(#fh):not(#fh0) .onoffswitch-inner:before { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .onoffswitch-inner:after { background: var(--fh-raise) !important; color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .onoffswitch-switch, html body:not(#fh):not(#fh0) .onoffswitch-label { border-color: var(--fh-edge-strong) !important; }
html body:not(#fh):not(#fh0) .onoffswitch-switch { background: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .switchery { background-color: var(--fh-raise) !important; border-color: var(--fh-edge-strong) !important; }
html body:not(#fh):not(#fh0) .switchery > small { background: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .checkbox label::before, html body:not(#fh):not(#fh0) .radio label::before { background: var(--fh-input) !important; border-color: var(--fh-input-edge) !important; }
html body:not(#fh):not(#fh0) .checkbox-primary input[type="checkbox"]:checked + label::before, html body:not(#fh):not(#fh0) .checkbox-success input[type="checkbox"]:checked + label::before,
html body:not(#fh):not(#fh0) .radio-primary input[type="radio"]:checked + label::before { background: var(--fh-hi-bg) !important; border-color: var(--fh-hi-bg) !important; }
html body:not(#fh):not(#fh0) .checkbox-primary input[type="checkbox"]:checked + label::after, html body:not(#fh):not(#fh0) .checkbox-success input[type="checkbox"]:checked + label::after { color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .radio-primary input[type="radio"] + label::after { background: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .icheckbox_square-green, html body:not(#fh):not(#fh0) .iradio_square-green { filter: grayscale(1); }

/* ---------- buttons ---------- */
html body:not(#fh):not(#fh0) .btn { min-height: 40px; padding: 9px 16px; border-radius: 10px !important; font-size: 14px !important; font-weight: 600 !important; line-height: 20px;
  text-transform: none !important; letter-spacing: 0; text-shadow: none !important; box-shadow: none !important; transform: none !important; transition: background-color .15s, filter .15s, border-color .15s;
  background: var(--fh-input) !important; color: var(--fh-heading) !important; border: 1px solid var(--fh-edge-strong) !important; background-image: none; }
html body:not(#fh):not(#fh0) .btn:hover, html body:not(#fh):not(#fh0) .btn:focus { background: var(--fh-input-hover) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .btn-sm, html body:not(#fh):not(#fh0) .btn-group-sm > .btn { min-height: 36px; padding: 7px 12px; font-size: 13px !important; }
html body:not(#fh):not(#fh0) .btn-xs, html body:not(#fh):not(#fh0) .btn-group-xs > .btn { min-height: 32px; min-width: 32px; padding: 5px 9px; font-size: 12px !important; border-radius: 8px !important; }
html body:not(#fh):not(#fh0) .btn-lg { min-height: 48px; padding: 12px 22px; font-size: 15px !important; }
html body:not(#fh):not(#fh0) .btn-primary, html body:not(#fh):not(#fh0) .btn-success, html body:not(#fh):not(#fh0) .btn-info, html body:not(#fh):not(#fh0) input[type="submit"].btn, html body:not(#fh):not(#fh0) .btn-primary.btn-outline:hover,
html body:not(#fh):not(#fh0) .ladda-button.btn-primary, html body:not(#fh):not(#fh0) .navbar-minimalize.btn-primary:hover {
  background: var(--fh-chrome) !important; color: var(--fh-primary-fg) !important; border: 1px solid var(--fh-primary-edge) !important; border-top-color: var(--fh-primary-edge-top) !important; box-shadow: var(--fh-primary-shadow) !important; }
html body:not(#fh):not(#fh0) .btn-primary *, html body:not(#fh):not(#fh0) .btn-success *, html body:not(#fh):not(#fh0) .btn-info * { color: var(--fh-primary-fg) !important; }
html body:not(#fh):not(#fh0) .btn-primary:hover, html body:not(#fh):not(#fh0) .btn-success:hover, html body:not(#fh):not(#fh0) .btn-info:hover, html body:not(#fh):not(#fh0) .btn-primary:focus, html body:not(#fh):not(#fh0) .btn-success:focus, html body:not(#fh):not(#fh0) .btn-info:focus,
html body:not(#fh):not(#fh0) .btn-primary:active, html body:not(#fh):not(#fh0) .btn-primary.active { background: var(--fh-chrome) !important; color: var(--fh-primary-fg) !important; filter: brightness(.94); }
html body:not(#fh):not(#fh0) .navbar-minimalize.btn-primary { background: var(--fh-input) !important; color: var(--fh-heading) !important; border-color: var(--fh-edge-strong) !important; box-shadow: none !important; }
html body:not(#fh):not(#fh0) .navbar-minimalize.btn-primary * { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .btn-default, html body:not(#fh):not(#fh0) .btn-white, html body:not(#fh):not(#fh0) .btn-warning, html body:not(#fh):not(#fh0) .btn-secondary { background: var(--fh-input) !important; color: var(--fh-heading) !important; border: 1px solid var(--fh-edge-strong) !important; }
html body:not(#fh):not(#fh0) .btn-default *, html body:not(#fh):not(#fh0) .btn-white *, html body:not(#fh):not(#fh0) .btn-warning * { color: inherit !important; }
html body:not(#fh):not(#fh0) .btn-danger { background: var(--fh-danger-bg) !important; color: #fff !important; border: 1px solid var(--fh-danger-edge) !important; }
html body:not(#fh):not(#fh0) .btn-danger * { color: #fff !important; }
html body:not(#fh):not(#fh0) .btn-danger:hover, html body:not(#fh):not(#fh0) .btn-danger:focus { background: var(--fh-danger-hover) !important; color: #fff !important; }
html body:not(#fh):not(#fh0) .btn-outline { background: transparent !important; }
html body:not(#fh):not(#fh0) .btn-link { background: transparent !important; border-color: transparent !important; color: var(--fh-heading) !important; text-decoration: underline; }
html body:not(#fh):not(#fh0) .btn[disabled], html body:not(#fh):not(#fh0) .btn.disabled { opacity: .55; }
html body:not(#fh):not(#fh0) .btn-group > .btn:not(:first-child):not(:last-child) { border-radius: 0 !important; }
html body:not(#fh):not(#fh0) .btn-group > .btn:first-child:not(:last-child) { border-radius: 10px 0 0 10px !important; }
html body:not(#fh):not(#fh0) .btn-group > .btn:last-child:not(:first-child), html body:not(#fh):not(#fh0) .btn-group > .dropdown-toggle:not(:first-child) { border-radius: 0 10px 10px 0 !important; }
html body:not(#fh):not(#fh0) .btn-circle { border-radius: 50% !important; }

/* ---------- labels / badges ---------- */
html body:not(#fh):not(#fh0) .label, html body:not(#fh):not(#fh0) .badge { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px !important; border-radius: 999px !important; font-size: 12px !important; font-weight: 600 !important;
  line-height: 1.4; text-shadow: none; color: var(--fh-soft) !important; background: var(--fh-tint-2) !important; border: 1px solid var(--fh-edge-strong) !important; text-transform: none; letter-spacing: 0; vertical-align: middle; }
html body:not(#fh):not(#fh0) .label-success, html body:not(#fh):not(#fh0) .badge-success, html body:not(#fh):not(#fh0) .label-primary, html body:not(#fh):not(#fh0) .badge-primary { color: var(--fh-ok) !important; background: var(--fh-ok-bg) !important; border-color: var(--fh-ok-edge) !important; }
html body:not(#fh):not(#fh0) .label-warning, html body:not(#fh):not(#fh0) .badge-warning { color: var(--fh-warn) !important; background: var(--fh-warn-bg) !important; border-color: var(--fh-warn-edge) !important; }
html body:not(#fh):not(#fh0) .label-danger, html body:not(#fh):not(#fh0) .badge-danger { color: var(--fh-bad) !important; background: var(--fh-bad-bg) !important; border-color: var(--fh-bad-edge) !important; }
html body:not(#fh):not(#fh0) .label-info, html body:not(#fh):not(#fh0) .badge-info { color: var(--fh-info) !important; background: var(--fh-info-bg) !important; border-color: var(--fh-info-edge) !important; }
html body:not(#fh):not(#fh0) .label *, html body:not(#fh):not(#fh0) .badge * { color: inherit !important; }
html body:not(#fh):not(#fh0) .label img { margin: 0 !important; float: none !important; }
html body:not(#fh):not(#fh0) .navbar-top-links .label, html body:not(#fh):not(#fh0) .newtost { font-size: 12px !important; padding: 2px 8px !important; }

/* ---------- alerts ---------- */
html body:not(#fh):not(#fh0) .alert { border-radius: 12px !important; border: 1px solid var(--fh-edge-strong) !important; background: var(--fh-raise) !important; color: var(--fh-soft) !important; text-shadow: none; }
html body:not(#fh):not(#fh0) .alert-success { background: var(--fh-ok-bg) !important; border-color: var(--fh-ok-edge) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .alert-warning { background: var(--fh-warn-bg) !important; border-color: var(--fh-warn-edge) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .alert-danger { background: var(--fh-bad-bg) !important; border-color: var(--fh-bad-edge) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .alert-info { background: var(--fh-info-bg) !important; border-color: var(--fh-info-edge) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .alert a, html body:not(#fh):not(#fh0) .alert .alert-link { color: var(--fh-heading) !important; text-decoration: underline; }
html body:not(#fh):not(#fh0) .alert .close { color: var(--fh-heading) !important; opacity: .7; text-shadow: none; }

/* ---------- tables / datatables / pagination ---------- */
html body:not(#fh):not(#fh0) .table, html body:not(#fh):not(#fh0) table.dataTable { background: transparent !important; color: var(--fh-text) !important; border-color: var(--fh-edge) !important; margin-bottom: 12px; }
html body:not(#fh):not(#fh0) .table > thead > tr > th, html body:not(#fh):not(#fh0) table.dataTable thead th, html body:not(#fh):not(#fh0) table.dataTable thead td, html body:not(#fh):not(#fh0) .table > thead > tr > td {
  background: transparent !important; color: var(--fh-muted) !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .06em; text-transform: uppercase;
  border-bottom: 1px solid var(--fh-edge-strong) !important; border-top: 0 !important; padding: 10px 12px !important; white-space: nowrap; }
html body:not(#fh):not(#fh0) .table > tbody > tr > td, html body:not(#fh):not(#fh0) .table > tbody > tr > th, html body:not(#fh):not(#fh0) .table > tfoot > tr > td, html body:not(#fh):not(#fh0) table.dataTable tbody td {
  border-top: 1px solid var(--fh-edge) !important; color: var(--fh-text) !important; padding: 10px 12px !important; vertical-align: middle !important; background: transparent !important; }
html body:not(#fh):not(#fh0) .table-bordered, html body:not(#fh):not(#fh0) .table-bordered > thead > tr > th, html body:not(#fh):not(#fh0) .table-bordered > tbody > tr > td { border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .table-striped > tbody > tr:nth-of-type(odd), html body:not(#fh):not(#fh0) table.dataTable.stripe tbody tr.odd, html body:not(#fh):not(#fh0) table.dataTable.display tbody tr.odd { background: var(--fh-tint-1) !important; }
html body:not(#fh):not(#fh0) .table-hover > tbody > tr:hover, html body:not(#fh):not(#fh0) table.dataTable.hover tbody tr:hover, html body:not(#fh):not(#fh0) table.dataTable.display tbody tr:hover { background: var(--fh-tint-2) !important; }
html body:not(#fh):not(#fh0) table.dataTable tbody tr, html body:not(#fh):not(#fh0) table.dataTable tbody tr.even { background: transparent !important; }
html body:not(#fh):not(#fh0) table.dataTable tbody tr.selected { background: var(--fh-tint-3) !important; }
html body:not(#fh):not(#fh0) table.dataTable.no-footer { border-bottom: 1px solid var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .dataTables_wrapper { color: var(--fh-muted) !important; max-width: 100%; }
html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_info, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_length, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_filter, html body:not(#fh):not(#fh0) .dataTables_wrapper label { color: var(--fh-muted) !important; font-weight: 500; }
html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_filter input { margin-left: 8px; }
html body:not(#fh):not(#fh0) .pagination > li > a, html body:not(#fh):not(#fh0) .pagination > li > span, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate .paginate_button {
  background: var(--fh-input) !important; color: var(--fh-heading) !important; border: 1px solid var(--fh-edge-strong) !important; border-radius: 8px !important; margin: 0 3px !important;
  min-width: 40px; min-height: 40px; padding: 9px 12px !important; line-height: 20px; text-align: center; box-shadow: none !important; background-image: none !important; }
html body:not(#fh):not(#fh0) .pagination > li > a:hover, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate .paginate_button:hover { background: var(--fh-input-hover) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .pagination > .active > a, html body:not(#fh):not(#fh0) .pagination > .active > span, html body:not(#fh):not(#fh0) .pagination > .active > a:hover,
html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate .paginate_button.current, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; border-color: var(--fh-hi-bg) !important; }
html body:not(#fh):not(#fh0) .pagination > .disabled > a, html body:not(#fh):not(#fh0) .pagination > .disabled > span, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover { color: var(--fh-muted) !important; background: transparent !important; opacity: .7; cursor: default; }
html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate li.paginate_button, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate li.paginate_button:hover { background: none !important; border: 0 !important; padding: 0 !important; margin: 0 !important; min-width: 0; min-height: 0; box-shadow: none !important; }
html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate li.paginate_button.disabled > a { color: var(--fh-muted) !important; background: transparent !important; }
html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate li.paginate_button.active > a { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; border-color: var(--fh-hi-bg) !important; }
html body:not(#fh):not(#fh0) .pager li > a, html body:not(#fh):not(#fh0) .pager li > span { background: var(--fh-input) !important; border-color: var(--fh-edge-strong) !important; color: var(--fh-heading) !important; border-radius: 999px; }
html body:not(#fh):not(#fh0) table.dataTable thead th.sorting, html body:not(#fh):not(#fh0) table.dataTable thead th.sorting_asc, html body:not(#fh):not(#fh0) table.dataTable thead th.sorting_desc { padding-right: 28px !important; }
html body:not(#fh):not(#fh0) table.dataTable thead .sorting:after, html body:not(#fh):not(#fh0) table.dataTable thead .sorting_asc:after, html body:not(#fh):not(#fh0) table.dataTable thead .sorting_desc:after { opacity: .5; color: var(--fh-muted); }

/* ---------- nav tabs / pills ---------- */
html body:not(#fh):not(#fh0) .nav-tabs { border-bottom: 1px solid var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .nav-tabs > li > a { color: var(--fh-muted) !important; background: transparent !important; border: 0 !important; border-bottom: 2px solid transparent !important; border-radius: 0 !important; font-weight: 600; min-height: 44px; }
html body:not(#fh):not(#fh0) .nav-tabs > li > a:hover { color: var(--fh-heading) !important; background: var(--fh-tint-2) !important; }
html body:not(#fh):not(#fh0) .nav-tabs > li.active > a, html body:not(#fh):not(#fh0) .nav-tabs > li.active > a:hover, html body:not(#fh):not(#fh0) .nav-tabs > li.active > a:focus { color: var(--fh-heading) !important; background: transparent !important; border-bottom-color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .tab-content, html body:not(#fh):not(#fh0) .tabs-container .panel-body { background: transparent !important; border-color: var(--fh-edge) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .nav-pills > li > a { color: var(--fh-text) !important; border-radius: 8px; }
html body:not(#fh):not(#fh0) .nav-pills > li.active > a { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; }

/* ---------- dropdowns / modals / popovers / tooltips / toasts ---------- */
html body:not(#fh):not(#fh0) .dropdown-menu { background: var(--fh-menu-bg) !important; border: 1px solid var(--fh-edge-strong) !important; border-radius: 12px !important; box-shadow: var(--fh-menu-shadow) !important; padding: 6px !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .dropdown-menu > li > a, html body:not(#fh):not(#fh0) .dropdown-menu > li > span { color: var(--fh-text) !important; border-radius: 8px; padding: 9px 12px !important; min-height: 40px; display: flex; align-items: center; gap: 8px; line-height: 1.4; }
html body:not(#fh):not(#fh0) .dropdown-menu > li > a:hover, html body:not(#fh):not(#fh0) .dropdown-menu > li > a:focus { background: var(--fh-tint-3) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .dropdown-menu > .active > a { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .dropdown-menu .divider { background: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .dropdown-alerts li, html body:not(#fh):not(#fh0) .dropdown-messages li { color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .modal-backdrop.in { opacity: 1 !important; background: var(--fh-scrim) !important; }
html body:not(#fh):not(#fh0) .modal-content { background: var(--fh-menu-bg) !important; border: 1px solid var(--fh-edge-strong) !important; border-radius: 16px !important; box-shadow: var(--fh-menu-shadow) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .modal-header, html body:not(#fh):not(#fh0) .inmodal .modal-header { background: transparent !important; border-bottom: 1px solid var(--fh-edge) !important; padding: 18px 20px !important; text-align: left; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .inmodal .modal-header .fa, html body:not(#fh):not(#fh0) .inmodal .modal-icon { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .modal-title, html body:not(#fh):not(#fh0) .inmodal .modal-title { color: var(--fh-heading) !important; font-size: 18px !important; font-weight: 700 !important; }
html body:not(#fh):not(#fh0) .modal-body, html body:not(#fh):not(#fh0) .inmodal .modal-body { background: transparent !important; color: var(--fh-text) !important; padding: 18px 20px !important; }
html body:not(#fh):not(#fh0) .modal-footer { background: transparent !important; border-top: 1px solid var(--fh-edge) !important; padding: 14px 20px !important; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
html body:not(#fh):not(#fh0) .modal-footer .btn + .btn { margin-left: 0 !important; }
html body:not(#fh):not(#fh0) .modal-footer:before, html body:not(#fh):not(#fh0) .modal-footer:after { display: none !important; }
html body:not(#fh):not(#fh0) .modal .close, html body:not(#fh):not(#fh0) .close { color: var(--fh-heading) !important; text-shadow: none !important; opacity: .7; min-width: 32px; min-height: 32px; }
html body:not(#fh):not(#fh0) .modal .close:hover { opacity: 1; }
html body:not(#fh):not(#fh0) .modal-dialog { max-width: calc(100vw - 24px); }
html body:not(#fh):not(#fh0) .modal-dialog .modal-content { max-height: none; }
html body:not(#fh):not(#fh0) .popover { background: var(--fh-menu-bg) !important; border: 1px solid var(--fh-edge-strong) !important; border-radius: 12px !important; color: var(--fh-text) !important; box-shadow: var(--fh-menu-shadow) !important; }
html body:not(#fh):not(#fh0) .popover-title { background: transparent !important; border-bottom: 1px solid var(--fh-edge) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .popover.top > .arrow:after { border-top-color: var(--fh-menu-bg) !important; }
html body:not(#fh):not(#fh0) .popover.bottom > .arrow:after { border-bottom-color: var(--fh-menu-bg) !important; }
html body:not(#fh):not(#fh0) .tooltip-inner { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; border-radius: 8px !important; font-size: 12px !important; font-weight: 600; padding: 6px 10px !important; max-width: 260px; }
html body:not(#fh):not(#fh0) .tooltip.top .tooltip-arrow { border-top-color: var(--fh-hi-bg) !important; }
html body:not(#fh):not(#fh0) .tooltip.bottom .tooltip-arrow { border-bottom-color: var(--fh-hi-bg) !important; }
html body:not(#fh):not(#fh0) .tooltip.left .tooltip-arrow { border-left-color: var(--fh-hi-bg) !important; }
html body:not(#fh):not(#fh0) .tooltip.right .tooltip-arrow { border-right-color: var(--fh-hi-bg) !important; }
html body:not(#fh):not(#fh0) .tooltip.in { opacity: 1 !important; }
html body:not(#fh):not(#fh0) #toast-container > div, html body:not(#fh):not(#fh0) #toast-container > .toast { background-color: var(--fh-menu-bg) !important; background-image: none !important; color: var(--fh-heading) !important; opacity: 1 !important;
  border: 1px solid var(--fh-edge-strong) !important; border-left: 4px solid var(--fh-edge-strong) !important; border-radius: 12px !important; box-shadow: var(--fh-menu-shadow) !important; padding: 14px 16px 14px 18px !important; width: min(360px, calc(100vw - 24px)) !important; }
html body:not(#fh):not(#fh0) #toast-container > .toast-success { border-left-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) #toast-container > .toast-error { border-left-color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) #toast-container > .toast-warning { border-left-color: var(--fh-warn) !important; }
html body:not(#fh):not(#fh0) #toast-container > .toast-info { border-left-color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) #toast-container .toast-title { color: var(--fh-heading) !important; font-weight: 700; }
html body:not(#fh):not(#fh0) #toast-container .toast-message, html body:not(#fh):not(#fh0) #toast-container .toast-message a { color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .toast-progress { background: var(--fh-heading) !important; opacity: .25 !important; }
html body:not(#fh):not(#fh0) .toast-close-button { color: var(--fh-heading) !important; text-shadow: none !important; }
html body:not(#fh):not(#fh0) .gritter-item-wrapper, html body:not(#fh):not(#fh0) .gritter-top, html body:not(#fh):not(#fh0) .gritter-item, html body:not(#fh):not(#fh0) .gritter-bottom { background: var(--fh-menu-bg) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .sweet-alert { background: var(--fh-menu-bg) !important; border: 1px solid var(--fh-edge-strong); border-radius: 16px !important; }
html body:not(#fh):not(#fh0) .sweet-alert h2 { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .sweet-alert p { color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .sweet-overlay { background: var(--fh-scrim) !important; }
html body:not(#fh):not(#fh0) .select2-dropdown, html body:not(#fh):not(#fh0) .select2-container--default .select2-results__option { background: var(--fh-menu-bg) !important; color: var(--fh-text) !important; border-color: var(--fh-edge-strong) !important; }
html body:not(#fh):not(#fh0) .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--fh-tint-3) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--fh-heading) !important; line-height: 38px; }
html body:not(#fh):not(#fh0) .bootstrap-tagsinput .tag { background: var(--fh-tint-3) !important; color: var(--fh-heading) !important; border-radius: 999px; }
html body:not(#fh):not(#fh0) .pace .pace-progress { background: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .pace .pace-activity { display: none; }
html body:not(#fh):not(#fh0) .spiner-example, html body:not(#fh):not(#fh0) .sk-spinner .sk-rect1 { background: transparent; }
html body:not(#fh):not(#fh0) .sk-spinner-wave div, html body:not(#fh):not(#fh0) .sk-spinner-rotating-plane, html body:not(#fh):not(#fh0) .sk-spinner-double-bounce .sk-double-bounce1, html body:not(#fh):not(#fh0) .sk-spinner-double-bounce .sk-double-bounce2 { background-color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .table_cron_loader, html body:not(#fh):not(#fh0) .table_cron_loader .fa { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .ladda-button .ladda-spinner div div div { background: var(--fh-primary-fg) !important; }

/* ---------- metrics: usage bars + charts (driven by --fh-chart-*) ---------- */
html body:not(#fh):not(#fh0) .progress, html body:not(#fh):not(#fh0) .progress-mini, html body:not(#fh):not(#fh0) .progress-small { background: var(--fh-chart-track) !important; border-radius: 999px !important; box-shadow: none !important; height: 6px !important; overflow: hidden; margin: 6px 0 !important; border: 0 !important; }
html body:not(#fh):not(#fh0) .progress.progress-striped, html body:not(#fh):not(#fh0) .progress-bar-striped { background-image: none !important; }
html body:not(#fh):not(#fh0) .progress-bar, html body:not(#fh):not(#fh0) .progress-bar-success, html body:not(#fh):not(#fh0) .progress-bar-info, html body:not(#fh):not(#fh0) .progress-bar-primary { background: var(--fh-chart-line) !important; background-image: none !important; box-shadow: none !important; border-radius: 999px; color: transparent; }
html body:not(#fh):not(#fh0) .progress-bar-warning { background: var(--fh-warn) !important; }
html body:not(#fh):not(#fh0) .progress-bar-danger { background: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .progress:not(.progress-mini):not(.progress-small) { height: 8px !important; }
html body:not(#fh):not(#fh0) #bandwidth-graph, html body:not(#fh):not(#fh0) #bandwidth-line-chart { background: transparent !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart { min-height: 260px; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg text, html body:not(#fh):not(#fh0) .fh-chart-label { fill: var(--fh-chart-label) !important; font-family: var(--fh-font) !important; font-size: 11.5px !important; font-weight: 500 !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg path.fh-chart-grid { stroke: var(--fh-chart-grid) !important; stroke-width: 1px !important; stroke-dasharray: 4 4; shape-rendering: crispEdges; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg path.fh-chart-line { fill: none !important; stroke-width: 1.75px !important; stroke-linejoin: round; stroke-linecap: round; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg path.fh-s0 { stroke: var(--fh-chart-line) !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg path.fh-s1 { stroke: var(--fh-chart-series2) !important; stroke-width: 1.5px !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg path.fh-s2 { stroke: var(--fh-chart-series3) !important; stroke-width: 1.5px !important; stroke-dasharray: 5 5; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg path.fh-s3 { stroke: var(--fh-chart-limit) !important; stroke-width: 1.25px !important; stroke-dasharray: 2 4; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg path.fh-chart-area { fill: url(#fhChartFill) !important; stroke: none !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg .fh-stop-top { stop-color: var(--fh-chart-line); stop-opacity: var(--fh-chart-fill-op); }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg .fh-stop-bottom { stop-color: var(--fh-chart-line); stop-opacity: 0; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg circle.fh-chart-point { stroke: var(--fh-chart-bg) !important; stroke-width: 1.5px !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg circle.fh-s0 { fill: var(--fh-chart-line) !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg circle.fh-s1 { fill: var(--fh-chart-series2) !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg circle.fh-s2 { fill: var(--fh-chart-series3) !important; }
html body:not(#fh):not(#fh0) #bandwidth-line-chart svg circle.fh-s3 { fill: var(--fh-chart-limit) !important; }
html body:not(#fh):not(#fh0) .morris-hover.morris-default-style { background: var(--fh-menu-bg) !important; border: 1px solid var(--fh-edge-strong) !important; border-radius: 10px !important; color: var(--fh-text) !important;
  box-shadow: var(--fh-menu-shadow); font-family: var(--fh-font) !important; font-size: 12px !important; padding: 8px 10px !important; opacity: 1 !important; }
html body:not(#fh):not(#fh0) .morris-hover.morris-default-style .morris-hover-row-label { color: var(--fh-heading) !important; font-weight: 700; margin-bottom: 2px; }
html body:not(#fh):not(#fh0) .morris-hover.morris-default-style .morris-hover-point { color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .morris-hover .morris-hover-point.fh-s0 { color: var(--fh-chart-line) !important; }
html body:not(#fh):not(#fh0) #legend { display: flex; flex-wrap: wrap; gap: 6px 18px; justify-content: center; margin-top: 8px; }
html body:not(#fh):not(#fh0) #legend .mbox { display: inline-flex; align-items: center; gap: 8px; color: var(--fh-muted) !important; font-size: 12px; }
html body:not(#fh):not(#fh0) #legend .color_box { display: inline-block; width: 14px !important; height: 2px !important; border-radius: 2px; padding: 0 !important; font-size: 0 !important; background: var(--fh-chart-series2) !important; }
html body:not(#fh):not(#fh0) #legend .color_box.fh-s0 { background: var(--fh-chart-line) !important; height: 3px !important; }
html body:not(#fh):not(#fh0) #legend .color_box.fh-s2 { background: repeating-linear-gradient(90deg, var(--fh-chart-series3) 0 4px, transparent 4px 7px) !important; }
html body:not(#fh):not(#fh0) #legend .color_box.fh-s3, html body:not(#fh):not(#fh0) #legend .color_box.fh-limit { background: repeating-linear-gradient(90deg, var(--fh-chart-limit) 0 2px, transparent 2px 5px) !important; }
html body:not(#fh):not(#fh0) #legend .legendera, html body:not(#fh):not(#fh0) #legend .legendera b { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .graph-stats-wrapper h5, html body:not(#fh):not(#fh0) .statistic-box h5 { color: var(--fh-muted) !important; font-size: 12.5px !important; font-weight: 600 !important; }
html body:not(#fh):not(#fh0) .graph-stats-wrapper canvas { max-width: 80px; }
html body:not(#fh):not(#fh0) .infinite-sign { color: var(--fh-heading) !important; }

/* ---------- dashboard bits ---------- */
html body:not(#fh):not(#fh0) .last-access-date { color: var(--fh-muted) !important; font-size: 13px; }
html body:not(#fh):not(#fh0) .list-group.clear-list .list-group-item { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 10px 0 !important; }
html body:not(#fh):not(#fh0) .list-group.clear-list .label img { display: none; }
html body:not(#fh):not(#fh0) .footer { background: transparent !important; border-top: 1px solid var(--fh-edge) !important; color: var(--fh-muted) !important; font-size: 12.5px; position: relative !important; clear: both !important; float: none !important; z-index: 0; }
html body:not(#fh):not(#fh0) #page-wrapper .wrapper-content::after, html body:not(#fh):not(#fh0) #page-wrapper > .row::after, html body:not(#fh):not(#fh0) #page-wrapper .dashboard-wrapper::after { content: ""; display: table; clear: both; }
html body:not(#fh):not(#fh0) .footer * { color: var(--fh-muted) !important; }

/* ---------- misc widgets ---------- */
html body:not(#fh):not(#fh0) .CodeMirror { background: var(--fh-input) !important; color: var(--fh-heading) !important; border: 1px solid var(--fh-input-edge) !important; border-radius: 8px; }
html body:not(#fh):not(#fh0) .CodeMirror-gutters { background: var(--fh-raise) !important; border-right: 1px solid var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .note-editor, html body:not(#fh):not(#fh0) .note-toolbar { background: var(--fh-raise) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .datepicker, html body:not(#fh):not(#fh0) .daterangepicker, html body:not(#fh):not(#fh0) .clockpicker-popover { background: var(--fh-menu-bg) !important; color: var(--fh-text) !important; border-color: var(--fh-edge-strong) !important; }
html body:not(#fh):not(#fh0) .daterangepicker td.active, html body:not(#fh):not(#fh0) .datepicker table tr td.active { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .timeline-item .date, html body:not(#fh):not(#fh0) .vertical-timeline-content { background: var(--fh-raise) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .widget.style1, html body:not(#fh):not(#fh0) .navy-bg, html body:not(#fh):not(#fh0) .lazur-bg, html body:not(#fh):not(#fh0) .yellow-bg, html body:not(#fh):not(#fh0) .red-bg, html body:not(#fh):not(#fh0) .blue-bg { background: var(--fh-raise) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .navy-bg *, html body:not(#fh):not(#fh0) .lazur-bg *, html body:not(#fh):not(#fh0) .yellow-bg *, html body:not(#fh):not(#fh0) .red-bg *, html body:not(#fh):not(#fh0) .blue-bg * { color: var(--fh-heading) !important; }

/* ---------- desktop collapsed sidebar (mini-navbar, >= 769px) ---------- */
html body:not(#fh):not(#fh0).mini-navbar:not(.body-small) .navbar-static-side { width: 72px !important; }
html body:not(#fh):not(#fh0).mini-navbar:not(.body-small) #side-menu > li { margin: 2px 8px; }
html body:not(#fh):not(#fh0).mini-navbar:not(.body-small) #side-menu > li > a { justify-content: center; padding: 10px !important; }
html body:not(#fh):not(#fh0).mini-navbar:not(.body-small) #side-menu .nav-second-level { background: var(--fh-menu-bg) !important; border: 1px solid var(--fh-edge-strong); border-radius: 12px; box-shadow: var(--fh-menu-shadow); }

/* ---------- tablet + phone (INSPINIA adds body.body-small below 769px) ---------- */
@media (max-width: 768px) {
  html body:not(#fh):not(#fh0) .btn, html body:not(#fh):not(#fh0) .form-control, html body:not(#fh):not(#fh0) select, html body:not(#fh):not(#fh0) .pagination > li > a, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate .paginate_button,
  html body:not(#fh):not(#fh0) .navbar-top-links > li > a, html body:not(#fh):not(#fh0) .navbar-top-links .welcome-message, html body:not(#fh):not(#fh0) .dropdown-menu > li > a, html body:not(#fh):not(#fh0) .nav-tabs > li > a { min-height: 44px; }
  html body:not(#fh):not(#fh0) .btn-xs { min-height: 36px; min-width: 36px; }
  html body:not(#fh):not(#fh0) #page-wrapper { margin: 0 !important; padding: 0 12px !important; width: 100% !important; min-width: 0 !important; }
  html body:not(#fh):not(#fh0) .wrapper-content, html body:not(#fh):not(#fh0) .wrapper { padding: 14px 0 !important; }
  html body:not(#fh):not(#fh0) .row { margin-left: -6px !important; margin-right: -6px !important; }
  html body:not(#fh):not(#fh0) [class*="col-"] { padding-left: 6px !important; padding-right: 6px !important; }
  html body:not(#fh):not(#fh0) .ibox-content, html body:not(#fh):not(#fh0) .panel-body, html body:not(#fh):not(#fh0) .modal-body { padding: 14px !important; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  html body:not(#fh):not(#fh0) .ibox-title, html body:not(#fh):not(#fh0) .panel-heading { padding: 12px 14px !important; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  html body:not(#fh):not(#fh0) .ibox-title .ibox-tools { position: static !important; margin-left: auto; }
  html body:not(#fh):not(#fh0) .dataTables_wrapper { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  html body:not(#fh):not(#fh0) .dataTables_wrapper .row { margin: 0 !important; }
  html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_length, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_filter, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_info, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate { text-align: left !important; float: none !important; }
  html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_filter label { display: flex; flex-direction: column; align-items: stretch; width: 100%; }
  html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_filter input { width: 100% !important; margin: 6px 0 0 !important; }
  html body:not(#fh):not(#fh0) .stats-module-items { flex-direction: column; }
  html body:not(#fh):not(#fh0) .mail-contracted, html body:not(#fh):not(#fh0) .autoresp-contracted, html body:not(#fh):not(#fh0) .mysql-contracted { max-width: none; }
  html body:not(#fh):not(#fh0) .stats-module-items-display { margin: 0 !important; }
  html body:not(#fh):not(#fh0) .mail-contracted, html body:not(#fh):not(#fh0) .autoresp-contracted, html body:not(#fh):not(#fh0) .mysql-contracted { position: static !important; width: auto !important; top: auto !important; right: auto !important; margin: 0 0 14px !important; }
  html body:not(#fh):not(#fh0) .dashboard-header { padding: 16px 4px 12px !important; margin-bottom: 14px !important; }
  html body:not(#fh):not(#fh0) .dashboard-header h2 { font-size: 22px !important; }
  html body:not(#fh):not(#fh0) .dashboard-header [class*="col-"] { width: 100% !important; float: none !important; }
  html body:not(#fh):not(#fh0) .dataTables_paginate .pagination { display: flex; flex-wrap: wrap; gap: 4px; margin: 10px 0 !important; }
  html body:not(#fh):not(#fh0) .page-heading { padding: 16px 4px 12px !important; }
  html body:not(#fh):not(#fh0) .page-heading h2 { font-size: 22px !important; }
  html body:not(#fh):not(#fh0) .page-heading [class*="col-"] { width: 100% !important; float: none !important; }
  html body:not(#fh):not(#fh0) .modal-dialog { margin: 12px auto !important; width: auto !important; }
  html body:not(#fh):not(#fh0) .table { min-width: 0; }
  html body:not(#fh):not(#fh0) .table > tbody > tr > td, html body:not(#fh):not(#fh0) .table > thead > tr > th { white-space: nowrap; }
  /* top bar: toggle | search on one row, actions wrap below */
  html body:not(#fh):not(#fh0) #page-wrapper > .row.border-bottom { margin: 0 -12px !important; }
  html body:not(#fh):not(#fh0) .navbar-static-top { display: flex; flex-wrap: wrap; align-items: center; padding: 0 !important; margin: 0 !important; width: auto; }
  html body:not(#fh):not(#fh0) .navbar-header { display: flex; align-items: center; flex: 0 1 auto; min-width: 0; float: none !important; }
  html body:not(#fh):not(#fh0) .navbar-minimalize { margin: 10px 8px 10px 12px !important; flex: none; }
  html body:not(#fh):not(#fh0) .navbar-form-custom { flex: 1 1 auto; min-width: 0; max-width: none; padding: 10px 12px 10px 0 !important; margin: 0 !important; float: none !important; width: auto !important; }
  html body:not(#fh):not(#fh0) .navbar-form-custom .form-group { margin: 0 !important; }
  html body:not(#fh):not(#fh0) .navbar-top-links { flex: 1 1 0; min-width: 0; justify-content: flex-end; min-height: 60px; padding: 0 6px 0 0 !important; float: none !important; gap: 0; }
  html body:not(#fh):not(#fh0) .navbar-top-links > li > a, html body:not(#fh):not(#fh0) .navbar-top-links .welcome-message { padding: 8px 9px !important; font-size: 13.5px; }
  html body:not(#fh):not(#fh0) .navbar-top-links .dropdown-menu { position: absolute !important; left: auto; right: 0; max-width: calc(100vw - 24px); }
  html body:not(#fh):not(#fh0) .navbar-top-links .dropdown-alerts, html body:not(#fh):not(#fh0) .navbar-top-links .lang-items-wrapper { width: min(320px, calc(100vw - 24px)) !important; }
  /* keep every top-bar action visible (older FH rules hid some on phones) */
  html body:not(#fh):not(#fh0) #page-wrapper .nav.navbar-top-links > li { display: flex !important; padding: 0 !important; margin: 0 !important; }
  html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links .files_system_lock, html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links .reseller { display: inline-flex !important; }
  html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links .label:not(.newtost) { display: inline-flex !important; }
  html body:not(#fh):not(#fh0) #page-wrapper .nav.navbar-top-links > li > a > img, html body:not(#fh):not(#fh0) #page-wrapper .nav.navbar-top-links > li > a > i.fa { display: inline-block !important; }
  /* off-canvas sidebar */
  html body:not(#fh):not(#fh0).body-small .navbar-static-side { display: none; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar .navbar-static-side { display: block !important; position: fixed !important; top: 0; bottom: 0; left: 0; width: 272px !important; max-width: 86vw; z-index: 2050 !important;
    overflow-y: auto; -webkit-overflow-scrolling: touch; box-shadow: 0 0 0 100vmax var(--fh-scrim) !important; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar .navbar-static-side .sidebar-collapse { height: auto !important; overflow: visible !important; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu { display: block !important; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu .nav-label, html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu .fa.arrow,
  html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu > li > a > span { display: inline !important; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu .nav-header .profile-element { display: block !important; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu .logo-element { display: none !important; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu .nav-second-level { position: static !important; left: auto !important; width: auto !important; box-shadow: none !important; border: 0 !important; background: transparent !important; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu .nav-second-level.collapse:not(.in) { display: none; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar #side-menu li:hover > .nav-second-level.collapse:not(.in) { display: none !important; }
  html body:not(#fh):not(#fh0).body-small .navbar-minimalize { position: relative; z-index: 2060; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar .navbar-minimalize { position: fixed !important; top: 12px; left: min(284px, calc(86vw + 12px)); margin: 0 !important; z-index: 2060 !important;
    background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; border-color: var(--fh-hi-bg) !important; min-width: 44px; min-height: 44px; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar .navbar-minimalize .fa, html body:not(#fh):not(#fh0).body-small.mini-navbar .navbar-minimalize * { color: var(--fh-hi-fg) !important; }
  html body:not(#fh):not(#fh0).body-small.mini-navbar .navbar-minimalize .fa-bars:before { content: "\f00d"; }
  html body:not(#fh):not(#fh0) #toast-container { left: 12px !important; right: 12px !important; }
  html body:not(#fh):not(#fh0) #toast-container > div { width: auto !important; }
  html body:not(#fh):not(#fh0) #legend { justify-content: flex-start; }
}
@media (max-width: 480px) {
  html body:not(#fh):not(#fh0) .navbar-top-links > li:last-child > a { font-size: 0 !important; gap: 0; min-width: 44px; justify-content: center; }
  html body:not(#fh):not(#fh0) .navbar-top-links > li:last-child > a .fa { font-size: 17px !important; }
  html body:not(#fh):not(#fh0) .navbar-top-links .newtost { display: none !important; }
  html body:not(#fh):not(#fh0) .navbar-top-links .welcome-message, html body:not(#fh):not(#fh0) .navbar-top-links > li > a { padding: 8px 7px !important; }
  html body:not(#fh):not(#fh0) .graph-stats-wrapper .col-lg-4 { width: 50%; float: left; }
  html body:not(#fh):not(#fh0) .band-graph-title .band-graph-select { min-width: 0; width: 100% !important; }
}
@media (prefers-reduced-motion: reduce) { html body:not(#fh):not(#fh0) *, html body:not(#fh):not(#fh0) *::before, html body:not(#fh):not(#fh0) *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
html body:not(#fh):not(#fh0) .ibox-content small, html body:not(#fh):not(#fh0) .ibox-content .small { font-size: 12.5px !important; }

/* ---------- table row actions: one row of ghost icon buttons ---------- */
html body:not(#fh):not(#fh0) table td:has(> .btn-xs), html body:not(#fh):not(#fh0) table td:has(> a > .btn-xs), html body:not(#fh):not(#fh0) table td.actions-td { white-space: nowrap !important; }
html body:not(#fh):not(#fh0) table td .btn-xs, html body:not(#fh):not(#fh0) table td .btn-xs.mr5, html body:not(#fh):not(#fh0) table td .btn-xs.mb10 {
  min-width: 34px !important; min-height: 34px !important; height: 34px; padding: 0 9px !important; margin: 0 2px !important; display: inline-flex !important; align-items: center; justify-content: center; gap: 6px;
  background: transparent !important; color: var(--fh-text) !important; border: 1px solid var(--fh-edge-strong) !important; border-radius: 8px !important; box-shadow: none !important; filter: none !important; vertical-align: middle; float: none !important; }
html body:not(#fh):not(#fh0) table td .btn-xs * { color: inherit !important; }
html body:not(#fh):not(#fh0) table td .btn-xs .fa { font-size: 14px !important; }
html body:not(#fh):not(#fh0) table td .btn-xs:hover, html body:not(#fh):not(#fh0) table td .btn-xs:focus-visible { background: var(--fh-tint-3) !important; color: var(--fh-heading) !important; border-color: var(--fh-input-edge) !important; }
html body:not(#fh):not(#fh0) table td .btn-xs.btn-danger:hover, html body:not(#fh):not(#fh0) table td .btn-xs.btn-danger:focus-visible { background: var(--fh-bad-bg) !important; color: var(--fh-bad) !important; border-color: var(--fh-bad-edge) !important; }
html body:not(#fh):not(#fh0) table td .btn-xs.btn-warning:not(:hover) .fa-check, html body:not(#fh):not(#fh0) table td .btn-xs.btn-success:not(:hover) .fa-check { color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) table td br + .btn-xs { margin-top: 0 !important; }
html body:not(#fh):not(#fh0) .dataTables_wrapper table td:not(:has(button, input, select, textarea, .dropdown, .btn)) { white-space: nowrap; max-width: 320px; overflow: hidden; text-overflow: ellipsis; }
/* top bar: lock badge neutral, flag small */
html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links #imglock.label-warning, html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links #imglock.label-success {
  color: var(--fh-muted) !important; background: transparent !important; border-color: var(--fh-edge-strong) !important; font-weight: 500 !important; text-transform: none !important; letter-spacing: 0 !important; }
html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links #imglock::before { background: var(--fh-muted); }
html body:not(#fh):not(#fh0) .navbar-top-links .count-info > img, html body:not(#fh):not(#fh0) .navbar-top-links img[src*="/img/"] { width: 18px !important; height: auto; opacity: .85; border-radius: 3px; filter: saturate(.6); }
/* plan-status rings */
html body:not(#fh):not(#fh0) .graph-stats-wrapper canvas.fh-ring-zero { border: 2px dashed var(--fh-edge-strong); border-radius: 50%; box-sizing: border-box; }
html body:not(#fh):not(#fh0) .graph-stats-wrapper .fh-ring-limit { display: inline-block; margin-left: 6px; padding: 1px 7px; border-radius: 999px; font-size: 12px !important; font-weight: 700; color: var(--fh-bad) !important; background: var(--fh-bad-bg); border: 1px solid var(--fh-bad-edge); vertical-align: middle; }
/* bandwidth legend follows the series order (stock legend uses inline colours) */
html body:not(#fh):not(#fh0) #legend .mbox:nth-child(1) .color_box { background: var(--fh-chart-line) !important; height: 3px !important; }
html body:not(#fh):not(#fh0) #legend .mbox:nth-child(2) .color_box { background: var(--fh-chart-series2) !important; }
html body:not(#fh):not(#fh0) #legend .mbox:nth-child(3) .color_box { background: repeating-linear-gradient(90deg, var(--fh-chart-series3) 0 4px, transparent 4px 7px) !important; }
html body:not(#fh):not(#fh0) #legend .mbox:nth-child(4) .color_box { background: repeating-linear-gradient(90deg, var(--fh-chart-limit) 0 2px, transparent 2px 5px) !important; }
@media (max-width: 480px) {
  html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links { flex-wrap: nowrap !important; overflow: hidden; }
  html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links > li > a, html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links .welcome-message { padding: 8px 5px !important; min-width: 0; }
  html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links #imglock { font-size: 12px !important; padding: 2px 7px !important; }
  html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links .welcome-message { max-width: 92px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: inline-block !important; }
}
/* round 3: header artefacts, lock pill, usage strips, sidebar one-line labels */
html body:not(#fh):not(#fh0) .navbar-form-custom, html body:not(#fh):not(#fh0) .navbar-form-custom .form-group { background: transparent !important; box-shadow: none !important; border: 0 !important; }
html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links #imglock, html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links .label { box-shadow: none !important; text-shadow: none !important; }
html body:not(#fh):not(#fh0) .mail-contracted, html body:not(#fh):not(#fh0) .autoresp-contracted { max-width: none !important; width: 100% !important; margin: 0 0 16px !important; }
html body:not(#fh):not(#fh0) .mysql-contracted { display: inline-block !important; width: calc(50% - 8px) !important; vertical-align: top; margin: 0 0 16px !important; }
html body:not(#fh):not(#fh0) .mysql-contracted + .mysql-contracted { margin-left: 12px !important; }
html body:not(#fh):not(#fh0) .mail-contracted .stat-list, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list, html body:not(#fh):not(#fh0) .stats-module .stat-list { margin: 0 !important; padding: 0 !important; list-style: none; }
html body:not(#fh):not(#fh0) .mail-contracted .stat-list > li, html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list > li, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list > li, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list > li, html body:not(#fh):not(#fh0) .stats-module .stat-list > li {
  display: grid !important; grid-template-columns: max-content minmax(80px, 1fr) max-content; grid-template-rows: auto auto; column-gap: 18px; row-gap: 2px; align-items: center; }
html body:not(#fh):not(#fh0) .mail-contracted .stat-list > li > h2, html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list > li > h2, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list > li > h2, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list > li > h2, html body:not(#fh):not(#fh0) .stats-module .stat-list > li > h2 { grid-column: 1; grid-row: 1; margin: 0 !important; }
html body:not(#fh):not(#fh0) .mail-contracted .stat-list > li > small, html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list > li > small, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list > li > small, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list > li > small, html body:not(#fh):not(#fh0) .stats-module .stat-list > li > small { grid-column: 1; grid-row: 2; }
html body:not(#fh):not(#fh0) .mail-contracted .stat-list > li > .progress, html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list > li > .progress, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list > li > .progress, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list > li > .progress, html body:not(#fh):not(#fh0) .stats-module .stat-list > li > .progress { grid-column: 2; grid-row: 1 / span 2; margin: 0 !important; }
html body:not(#fh):not(#fh0) .mail-contracted .stat-list > li > .stat-percent, html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list > li > .stat-percent, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list > li > .stat-percent, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list > li > .stat-percent, html body:not(#fh):not(#fh0) .stats-module .stat-list > li > .stat-percent { grid-column: 3; grid-row: 1 / span 2; float: none !important; }
html body:not(#fh):not(#fh0) .stats-module-items { justify-content: stretch !important; }
html body:not(#fh):not(#fh0) .stats-module-items-display { flex: 1 1 300px; }
html body:not(#fh):not(#fh0) #side-menu > li > a .nav-label { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; flex: 1 1 auto; }
html body:not(#fh):not(#fh0) #side-menu > li > a .fa.arrow { flex: none; width: 12px; text-align: center; }
@media (max-width: 768px) {
  html body:not(#fh):not(#fh0) .mysql-contracted { display: block !important; width: 100% !important; }
  html body:not(#fh):not(#fh0) .mysql-contracted + .mysql-contracted { margin-left: 0 !important; }
  html body:not(#fh):not(#fh0) .mail-contracted .stat-list > li, html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list > li, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list > li, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list > li, html body:not(#fh):not(#fh0) .stats-module .stat-list > li { grid-template-columns: 1fr max-content; }
  html body:not(#fh):not(#fh0) .mail-contracted .stat-list > li > .progress, html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list > li > .progress, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list > li > .progress, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list > li > .progress, html body:not(#fh):not(#fh0) .stats-module .stat-list > li > .progress { grid-column: 1 / span 2; grid-row: 3; margin-top: 6px !important; }
  html body:not(#fh):not(#fh0) .mail-contracted .stat-list > li > .stat-percent, html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list > li > .stat-percent, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list > li > .stat-percent, html body:not(#fh):not(#fh0) .autoresp-contracted .stat-list > li > .stat-percent, html body:not(#fh):not(#fh0) .stats-module .stat-list > li > .stat-percent { grid-column: 2; grid-row: 1 / span 2; }
}
/* desktop: sidebar stays in place and scrolls on its own; top bar sticks */
@media (min-width: 769px) {
  html body:not(#fh):not(#fh0):not(.body-small) .navbar-static-side { position: fixed !important; top: 0; bottom: 0; left: 0; height: 100vh !important; overflow-y: auto; overflow-x: hidden; z-index: 101; scrollbar-width: thin; scrollbar-color: var(--fh-edge-strong) transparent; }
  html body:not(#fh):not(#fh0):not(.body-small) .navbar-static-side .sidebar-collapse { height: auto !important; overflow: visible !important; }
  html body:not(#fh):not(#fh0):not(.body-small) .navbar-static-side .slimScrollDiv { height: auto !important; overflow: visible !important; }
  html body:not(#fh):not(#fh0):not(.body-small) #wrapper { overflow: visible !important; overflow-x: clip !important; }
  html body:not(#fh):not(#fh0):not(.body-small) #page-wrapper > .row.border-bottom { position: sticky; top: 0; z-index: 100; }
}
html body:not(#fh):not(#fh0) .pgresql-quota-wrapper, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper { position: static !important; top: auto !important; right: auto !important; width: 100% !important; max-width: none !important; margin: 0 0 16px !important; z-index: auto !important; box-shadow: none !important; }
html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .ibox-content, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .ibox-content { background: var(--fh-card-flat) !important; border: 1px solid var(--fh-edge) !important; border-radius: 12px !important; padding: 12px 14px !important; }
html body:not(#fh):not(#fh0) .pgresql-quota-wrapper .stat-list, html body:not(#fh):not(#fh0) .mongodb-quota-wrapper .stat-list { margin: 0 !important; padding: 0 !important; list-style: none; }
/* MongoDB is not offered on sv1 (owner decision 2026-10-04): hide every panel entry point (menu, tool grid, quick links). The stock Mongo tile links to nodejs_manager with a database icon. The search box toggles menu items with inline styles, so !important is required. */
html body:not(#fh):not(#fh0) #side-menu li:has(> a[href*="module=mongodb_manager"]), html body:not(#fh):not(#fh0) .dashboard-item:has(> a[href*="module=mongodb_manager"]),
html body:not(#fh):not(#fh0) .dashboard-item:has(> a[href*="module=nodejs_manager"] > i.fa-database),
html body:not(#fh):not(#fh0) a[href*="module=mongodb_manager"], html body:not(#fh):not(#fh0) li.fh-hide-mongo, html body:not(#fh):not(#fh0) .fh-hide-mongo { display: none !important; }
/* sidebar "Versión de la aplicación" block only lists server software versions (Apache/PHP/MySQL): hidden for clients */
html body:not(#fh):not(#fh0) #side-menu li.menugrande:has(> a > i.fa-tint), html body:not(#fh):not(#fh0) #side-menu li.menugrande:has(> a > i.fa-tint) + li.menugrande, html body:not(#fh):not(#fh0) #side-menu li.fh-hide-versions { display: none !important; }
/* Tomcat: only for accounts enabled in CWP's Tomcat availability list (html.fh-tomcat-ok set server-side per user) */
html:not(.fh-tomcat-ok) body #side-menu li:has(> a[href*="module=tomcat_manager"]), html:not(.fh-tomcat-ok) body .dashboard-item:has(> a[href*="module=tomcat_manager"]) { display: none !important; }
/* light/dark toggle (was CWP's brush dropdown): one icon button, sun in dark mode / moon in light mode */
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links li.fh-style-toggle > .dropdown-menu { display: none !important; }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links li.fh-style-toggle > a { min-width: 40px; justify-content: center; cursor: pointer; }
@media (max-width: 768px) { html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links li.fh-style-toggle > a { min-width: 44px; min-height: 44px; } }
@media (max-width: 480px) { html body:not(#fh):not(#fh0):not(#fh):not(#fh0) #page-wrapper .navbar-top-links li.fh-style-toggle > a { min-width: 44px !important; min-height: 44px !important; padding: 8px !important; } }
/* Cloudflare, Spam Annihilator, Git Manager and Site.pro are not offered (owner decisions 2026-10-06): hide menu items, tiles and quick links */
html body:not(#fh):not(#fh0) #side-menu li:has(> a[href*="module=cloudflare"]), html body:not(#fh):not(#fh0) .dashboard-item:has(> a[href*="module=cloudflare"]),
html body:not(#fh):not(#fh0) #side-menu li:has(> a[href*="module=spam_annihilator"]), html body:not(#fh):not(#fh0) .dashboard-item:has(> a[href*="module=spam_annihilator"]),
html body:not(#fh):not(#fh0) #side-menu li:has(> a[href*="module=git_manager"]), html body:not(#fh):not(#fh0) .dashboard-item:has(> a[href*="module=git_manager"]),
html body:not(#fh):not(#fh0) #side-menu li:has(> a[href*="module=siteprobuilder"]), html body:not(#fh):not(#fh0) .dashboard-item:has(> a[href*="module=siteprobuilder"]),
html body:not(#fh):not(#fh0) li.fh-hide-mod, html body:not(#fh):not(#fh0) .dashboard-item.fh-hide-mod { display: none !important; }
/* dashboard tool grid: light stroke icons in 40px tiles (icon per module, CSS masks) */
html body:not(#fh):not(#fh0) .dashboard-item { margin-bottom: 6px !important; }
html body:not(#fh):not(#fh0) .dashboard-item > a { display: flex !important; align-items: center; gap: 12px; min-height: 52px; padding: 6px 8px !important; border-radius: 12px; background: transparent !important; border: 0 !important; box-shadow: none !important; text-decoration: none !important; }
html body:not(#fh):not(#fh0) .dashboard-item > a:hover, html body:not(#fh):not(#fh0) .dashboard-item > a:focus-visible { background: var(--fh-tint-2) !important; }
html body:not(#fh):not(#fh0) .dashboard-item > a > i, html body:not(#fh):not(#fh0) .dashboard-item > a > img { flex: none; width: 40px !important; height: 40px !important; min-width: 40px; margin: 0 !important; padding: 0 !important; border-radius: 10px !important; border: 1px solid var(--fh-edge) !important; background: var(--fh-tint-1) !important; box-shadow: none !important; }
html body:not(#fh):not(#fh0) .dashboard-item > a > img { padding: 8px !important; object-fit: contain; filter: grayscale(1); }
html body:not(#fh):not(#fh0) .dashboard-item > a > i { position: relative; display: inline-block !important; font-size: 0 !important; line-height: 0 !important; color: var(--fh-heading) !important; --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%223%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a > i::before { content: "" !important; position: absolute; inset: 10px; background: currentColor; -webkit-mask: var(--fh-ico) center / contain no-repeat; mask: var(--fh-ico) center / contain no-repeat; }
html body:not(#fh):not(#fh0) .dashboard-item > a > span { color: var(--fh-text) !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.3; margin: 0 !important; }
html body:not(#fh):not(#fh0) .dashboard-item > a:hover > span { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .dashboard-item > a.mod_process_list > i, html body:not(#fh):not(#fh0) .dashboard-item > a.mysql_processes > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2012h-4l-3%208L9%204l-3%208H2%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href*="roundcube"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m3%207%209%206%209-6%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[data-target="#modal-settings"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M19.4%2015a1.7%201.7%200%200%200%20.3%201.8l.1.1a2%202%200%201%201-2.8%202.8l-.1-.1a1.7%201.7%200%200%200-1.8-.3%201.7%201.7%200%200%200-1%201.5V21a2%202%200%201%201-4%200v-.1a1.7%201.7%200%200%200-1.1-1.5%201.7%201.7%200%200%200-1.8.3l-.1.1a2%202%200%201%201-2.8-2.8l.1-.1a1.7%201.7%200%200%200%20.3-1.8%201.7%201.7%200%200%200-1.5-1H3a2%202%200%201%201%200-4h.1a1.7%201.7%200%200%200%201.5-1.1%201.7%201.7%200%200%200-.3-1.8l-.1-.1a2%202%200%201%201%202.8-2.8l.1.1a1.7%201.7%200%200%200%201.8.3H9a1.7%201.7%200%200%200%201-1.5V3a2%202%200%201%201%204%200v.1a1.7%201.7%200%200%200%201%201.5%201.7%201.7%200%200%200%201.8-.3l.1-.1a2%202%200%201%201%202.8%202.8l-.1.1a1.7%201.7%200%200%200-.3%201.8V9a1.7%201.7%200%200%200%201.5%201H21a2%202%200%201%201%200%204h-.1a1.7%201.7%200%200%200-1.5%201z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=addons&acc=installed"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19.4%2014.6a2%202%200%201%200%200-3.2V8a2%202%200%200%200-2-2h-3.4a2%202%200%201%200-3.2%200H7.4a2%202%200%200%200-2%202v3.4a2%202%200%201%201%200%203.2V18a2%202%200%200%200%202%202h3.4a2%202%200%201%201%203.2%200h3.4a2%202%200%200%200%202-2z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href*="fileManager"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%2014%201.4-2.8A2%202%200%200%201%209.2%2010H20a2%202%200%200%201%201.9%202.6l-1.5%205A2%202%200%200%201%2018.5%2019H4a2%202%200%200%201-2-2V6a2%202%200%200%201%202-2h4l2%202h7a2%202%200%200%201%202%202v2%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href*="files_system_lock"] > i, html body:not(#fh):not(#fh0) .dashboard-item > a.files_system_lock > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%2211%22%20width%3D%2216%22%20height%3D%2210%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2011V7a4%204%200%200%201%208%200v4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=crontab"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=phpini_editor"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%203H7a2%202%200%200%200-2%202v14a2%202%200%200%200%202%202h10a2%202%200%200%200%202-2V8z%22%2F%3E%3Cpath%20d%3D%22M14%203v5h5%22%2F%3E%3Cpath%20d%3D%22m10%2013-2%202%202%202%22%2F%3E%3Cpath%20d%3D%22m14%2017%202-2-2-2%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=php_selector"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%203%209%204.5-9%204.5-9-4.5z%22%2F%3E%3Cpath%20d%3D%22m3%2016.5%209%204.5%209-4.5%22%2F%3E%3Cpath%20d%3D%22m3%2012%209%204.5%209-4.5%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=phpselector"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%203%209%204.5-9%204.5-9-4.5z%22%2F%3E%3Cpath%20d%3D%22m3%2016.5%209%204.5%209-4.5%22%2F%3E%3Cpath%20d%3D%22m3%2012%209%204.5%209-4.5%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=notification_center"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%209a6%206%200%200%201%2012%200c0%206%202.5%208%202.5%208h-17S6%2015%206%209%22%2F%3E%3Cpath%20d%3D%22M10.3%2021a2%202%200%200%200%203.4%200%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=mod_security"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2021s7.5-3.5%207.5-9.5V5.5L12%203%204.5%205.5v6C4.5%2017.5%2012%2021%2012%2021z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=statistics"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%204v16h16%22%2F%3E%3Cpath%20d%3D%22M8%2016v-4%22%2F%3E%3Cpath%20d%3D%22M12%2016V8%22%2F%3E%3Cpath%20d%3D%22M16%2016v-6%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=clam"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%207V5a2%202%200%200%201%202-2h2%22%2F%3E%3Cpath%20d%3D%22M17%203h2a2%202%200%200%201%202%202v2%22%2F%3E%3Cpath%20d%3D%22M21%2017v2a2%202%200%200%201-2%202h-2%22%2F%3E%3Cpath%20d%3D%22M7%2021H5a2%202%200%200%201-2-2v-2%22%2F%3E%3Cpath%20d%3D%22m8%2012%203%203%205-6%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=ftp_accounts"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2015V3%22%2F%3E%3Cpath%20d%3D%22m7%208%205-5%205%205%22%2F%3E%3Cpath%20d%3D%22M20%2015v4a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2v-4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=backups"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2012a9%209%200%201%200%202.6-6.4L3%208%22%2F%3E%3Cpath%20d%3D%22M3%203v5h5%22%2F%3E%3Cpath%20d%3D%22M12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=protected_directory"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%228%22%20cy%3D%2215%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22m10.8%2012.2%208.7-8.7%22%2F%3E%3Cpath%20d%3D%22m16%207%203%203%22%2F%3E%3Cpath%20d%3D%22m18.5%204.5%202%202%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=disk_usage"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2012H2%22%2F%3E%3Cpath%20d%3D%22M5.5%205.1%202%2012v6a2%202%200%200%200%202%202h16a2%202%200%200%200%202-2v-6l-3.5-6.9A2%202%200%200%200%2016.8%204H7.2a2%202%200%200%200-1.7%201.1z%22%2F%3E%3Cpath%20d%3D%22M6%2016h.01%22%2F%3E%3Cpath%20d%3D%22M10%2016h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=error_log"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%206h12%22%2F%3E%3Cpath%20d%3D%22M9%2012h12%22%2F%3E%3Cpath%20d%3D%22M9%2018h12%22%2F%3E%3Cpath%20d%3D%22M4%206h.01%22%2F%3E%3Cpath%20d%3D%22M4%2012h.01%22%2F%3E%3Cpath%20d%3D%22M4%2018h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=fix_acc_perm"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14.7%206.3a1%201%200%200%200%200%201.4l1.6%201.6a1%201%200%200%200%201.4%200l3.8-3.8a6%206%200%200%201-7.9%207.9l-6.9%206.9a2.1%202.1%200%200%201-3-3l6.9-6.9a6%206%200%200%201%207.9-7.9z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=domains"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M3%2012h18%22%2F%3E%3Cpath%20d%3D%22M12%203a14%2014%200%200%201%200%2018%2014%2014%200%200%201%200-18%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=subdomains"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%229%22%20y%3D%223%22%20width%3D%226%22%20height%3D%225%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%225%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2215%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%225%22%20rx%3D%221%22%2F%3E%3Cpath%20d%3D%22M6%2016v-2a1%201%200%200%201%201-1h10a1%201%200%200%201%201%201v2%22%2F%3E%3Cpath%20d%3D%22M12%208v5%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=letsencrypt"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2021s7.5-3.5%207.5-9.5V5.5L12%203%204.5%205.5v6C4.5%2017.5%2012%2021%2012%2021z%22%2F%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=sslwizard"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%2211%22%20width%3D%2216%22%20height%3D%2210%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2011V7a4%204%200%200%201%208%200v4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=redirect"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%2014%205-5-5-5%22%2F%3E%3Cpath%20d%3D%22M4%2020v-7a4%204%200%200%201%204-4h12%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=vdomaincache"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%2012a9%209%200%201%201-2.6-6.4L21%208%22%2F%3E%3Cpath%20d%3D%22M21%203v5h-5%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=cloudflare"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M17.5%2019H8a6%206%200%201%201%205.7-8h1.3a4.5%204.5%200%201%201%202.5%208z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=nodejs_manager"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m16%2018%206-6-6-6%22%2F%3E%3Cpath%20d%3D%22m8%206-6%206%206%206%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=tomcat_manager"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%228%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2213%22%20width%3D%2218%22%20height%3D%228%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M7%207h.01%22%2F%3E%3Cpath%20d%3D%22M7%2017h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=pma"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%225%22%20rx%3D%228%22%20ry%3D%223%22%2F%3E%3Cpath%20d%3D%22M4%205v14c0%201.7%203.6%203%208%203s8-1.3%208-3V5%22%2F%3E%3Cpath%20d%3D%22M4%2012c0%201.7%203.6%203%208%203s8-1.3%208-3%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=mysql_manager"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%225%22%20rx%3D%228%22%20ry%3D%223%22%2F%3E%3Cpath%20d%3D%22M4%205v14c0%201.7%203.6%203%208%203s8-1.3%208-3V5%22%2F%3E%3Cpath%20d%3D%22M4%2012c0%201.7%203.6%203%208%203s8-1.3%208-3%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=postgresql_manager"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%225%22%20rx%3D%228%22%20ry%3D%223%22%2F%3E%3Cpath%20d%3D%22M4%205v14c0%201.7%203.6%203%208%203s8-1.3%208-3V5%22%2F%3E%3Cpath%20d%3D%22M4%2012c0%201.7%203.6%203%208%203s8-1.3%208-3%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=mongodb_manager"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%225%22%20rx%3D%228%22%20ry%3D%223%22%2F%3E%3Cpath%20d%3D%22M4%205v14c0%201.7%203.6%203%208%203s8-1.3%208-3V5%22%2F%3E%3Cpath%20d%3D%22M4%2012c0%201.7%203.6%203%208%203s8-1.3%208-3%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=email_accounts"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M16%208v5a3%203%200%200%200%206%200v-1a10%2010%200%201%200-4%208%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=forwarders_email"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%2017%205-5-5-5%22%2F%3E%3Cpath%20d%3D%22M4%2018v-2a4%204%200%200%201%204-4h12%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=mail_autoreply"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m9%2017-5-5%205-5%22%2F%3E%3Cpath%20d%3D%22M20%2018v-2a4%204%200%200%200-4-4H4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=email_filters"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%203H2l8%209.5V19l4%202v-8.5z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=mail_routing"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%226%22%20cy%3D%2219%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M9%2019h8.5a3.5%203.5%200%200%200%200-7h-11a3.5%203.5%200%200%201%200-7H15%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%225%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=email_importer"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v12%22%2F%3E%3Cpath%20d%3D%22m7%2010%205%205%205-5%22%2F%3E%3Cpath%20d%3D%22M20%2015v4a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2v-4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=spam_annihilator"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%203H2l8%209.5V19l4%202v-8.5z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=spamexperts"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%203H2l8%209.5V19l4%202v-8.5z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=dns_zone_editor"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%2012h-8%22%2F%3E%3Cpath%20d%3D%22M21%206H8%22%2F%3E%3Cpath%20d%3D%22M21%2018h-8%22%2F%3E%3Cpath%20d%3D%22M3%206v4a2%202%200%200%200%202%202h3%22%2F%3E%3Cpath%20d%3D%22M3%2010v6a2%202%200%200%200%202%202h3%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=addons"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19.4%2014.6a2%202%200%201%200%200-3.2V8a2%202%200%200%200-2-2h-3.4a2%202%200%201%200-3.2%200H7.4a2%202%200%200%200-2%202v3.4a2%202%200%201%201%200%203.2V18a2%202%200%200%200%202%202h3.4a2%202%200%201%201%203.2%200h3.4a2%202%200%200%200%202-2z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=siteprobuilder"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M3%209h18%22%2F%3E%3Cpath%20d%3D%22M9%2021V9%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=wordpress_manager"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22m5.5%208%204%2011%202.5-7%202.5%207%204-11%22%2F%3E%3Cpath%20d%3D%22M4%208h4%22%2F%3E%3Cpath%20d%3D%22M11%208h4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=git_manager"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%226%22%20cy%3D%2218%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%226%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M6%203v12%22%2F%3E%3Cpath%20d%3D%22M18%209a9%209%200%200%201-9%209%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=reseller"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M20%2021a8%208%200%200%200-16%200%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=servercast"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%229%22%20y%3D%223%22%20width%3D%226%22%20height%3D%2211%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M19%2011a7%207%200%200%201-14%200%22%2F%3E%3Cpath%20d%3D%22M12%2018v3%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=sitepad"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M3%209h18%22%2F%3E%3Cpath%20d%3D%22M9%2021V9%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .dashboard-item > a[href="?module=softaculous"] > i { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19.4%2014.6a2%202%200%201%200%200-3.2V8a2%202%200%200%200-2-2h-3.4a2%202%200%201%200-3.2%200H7.4a2%202%200%200%200-2%202v3.4a2%202%200%201%201%200%203.2V18a2%202%200%200%200%202%202h3.4a2%202%200%201%201%203.2%200h3.4a2%202%200%200%200%202-2z%22%2F%3E%3C%2Fsvg%3E"); }
/* top bar icons: one size, line style */
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links li > a > i.fa, html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links .welcome-message > i.fa { position: relative; display: inline-block !important; width: 18px !important; height: 18px !important; font-size: 0 !important; line-height: 0 !important; color: inherit !important; vertical-align: middle; margin: 0 !important; }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links li > a > i.fa::before, html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links .welcome-message > i.fa::before { content: "" !important; position: absolute; inset: 0; background: currentColor; -webkit-mask: var(--fh-ico) center / contain no-repeat; mask: var(--fh-ico) center / contain no-repeat; }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links i.fa-question-circle { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M9.1%209a3%203%200%200%201%205.8%201c0%202-3%203-3%203%22%2F%3E%3Cpath%20d%3D%22M12%2017h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links i.fa-paint-brush { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203a6%206%200%200%200%209%209%209%209%200%201%201-9-9z%22%2F%3E%3C%2Fsvg%3E"); }
html.fh-is-dark body #page-wrapper .navbar-top-links i.fa-paint-brush { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M12%202v2%22%2F%3E%3Cpath%20d%3D%22M12%2020v2%22%2F%3E%3Cpath%20d%3D%22m4.9%204.9%201.4%201.4%22%2F%3E%3Cpath%20d%3D%22m17.7%2017.7%201.4%201.4%22%2F%3E%3Cpath%20d%3D%22M2%2012h2%22%2F%3E%3Cpath%20d%3D%22M20%2012h2%22%2F%3E%3Cpath%20d%3D%22m6.3%2017.7-1.4%201.4%22%2F%3E%3Cpath%20d%3D%22m19.1%204.9-1.4%201.4%22%2F%3E%3C%2Fsvg%3E") !important; }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links i.fa-power-off { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202v10%22%2F%3E%3Cpath%20d%3D%22M18.4%206.6a9%209%200%201%201-12.8%200%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links i.fa-user { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M20%2021a8%208%200%200%200-16%200%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links i.fa-bell { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%209a6%206%200%200%201%2012%200c0%206%202.5%208%202.5%208h-17S6%2015%206%209%22%2F%3E%3Cpath%20d%3D%22M10.3%2021a2%202%200%200%200%203.4%200%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links i.fa-gears, html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links i.fa-cog { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M19.4%2015a1.7%201.7%200%200%200%20.3%201.8l.1.1a2%202%200%201%201-2.8%202.8l-.1-.1a1.7%201.7%200%200%200-1.8-.3%201.7%201.7%200%200%200-1%201.5V21a2%202%200%201%201-4%200v-.1a1.7%201.7%200%200%200-1.1-1.5%201.7%201.7%200%200%200-1.8.3l-.1.1a2%202%200%201%201-2.8-2.8l.1-.1a1.7%201.7%200%200%200%20.3-1.8%201.7%201.7%200%200%200-1.5-1H3a2%202%200%201%201%200-4h.1a1.7%201.7%200%200%200%201.5-1.1%201.7%201.7%200%200%200-.3-1.8l-.1-.1a2%202%200%201%201%202.8-2.8l.1.1a1.7%201.7%200%200%200%201.8.3H9a1.7%201.7%200%200%200%201-1.5V3a2%202%200%201%201%204%200v.1a1.7%201.7%200%200%200%201%201.5%201.7%201.7%200%200%200%201.8-.3l.1-.1a2%202%200%201%201%202.8%202.8l-.1.1a1.7%201.7%200%200%200-.3%201.8V9a1.7%201.7%200%200%200%201.5%201H21a2%202%200%201%201%200%204h-.1a1.7%201.7%200%200%200-1.5%201z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links i.fa-envelope { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m3%207%209%206%209-6%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #page-wrapper .navbar-top-links .label i.fa { width: 12px !important; height: 12px !important; }
/* sidebar icons: same line style as the tool grid */
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa:first-child { position: relative; display: inline-block !important; width: 18px !important; height: 18px !important; min-width: 18px; font-size: 0 !important; line-height: 0 !important; color: var(--fh-muted) !important; --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%223%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa:first-child::before { content: "" !important; position: absolute; inset: 0; background: currentColor; -webkit-mask: var(--fh-ico) center / contain no-repeat; mask: var(--fh-ico) center / contain no-repeat; }
html body:not(#fh):not(#fh0) #side-menu > li.active > a > i.fa:first-child, html body:not(#fh):not(#fh0) #side-menu > li > a:hover > i.fa:first-child { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa { position: relative; display: inline-block !important; width: 16px !important; height: 16px !important; font-size: 0 !important; line-height: 0 !important; vertical-align: -2px; margin-right: 8px !important; color: var(--fh-muted) !important; --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%223%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa::before { content: "" !important; position: absolute; inset: 0; background: currentColor; -webkit-mask: var(--fh-ico) center / contain no-repeat; mask: var(--fh-ico) center / contain no-repeat; }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-th-large:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-th-large { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%227%22%20height%3D%229%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%223%22%20width%3D%227%22%20height%3D%225%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%2212%22%20width%3D%227%22%20height%3D%229%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2216%22%20width%3D%227%22%20height%3D%225%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-bar-chart-o:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-bar-chart-o { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2021v-7%22%2F%3E%3Cpath%20d%3D%22M4%2010V3%22%2F%3E%3Cpath%20d%3D%22M12%2021v-9%22%2F%3E%3Cpath%20d%3D%22M12%208V3%22%2F%3E%3Cpath%20d%3D%22M20%2021v-5%22%2F%3E%3Cpath%20d%3D%22M20%2012V3%22%2F%3E%3Cpath%20d%3D%22M2%2014h4%22%2F%3E%3Cpath%20d%3D%22M10%208h4%22%2F%3E%3Cpath%20d%3D%22M18%2016h4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-edit:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-edit { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2020a2%202%200%200%200%202-2V8a2%202%200%200%200-2-2h-7.9a2%202%200%200%201-1.7-.9l-.8-1.2A2%202%200%200%200%207.9%203H4a2%202%200%200%200-2%202v13a2%202%200%200%200%202%202z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-globe:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-globe { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M3%2012h18%22%2F%3E%3Cpath%20d%3D%22M12%203a14%2014%200%200%201%200%2018%2014%2014%200%200%201%200-18%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-database:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-database { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%225%22%20rx%3D%228%22%20ry%3D%223%22%2F%3E%3Cpath%20d%3D%22M4%205v14c0%201.7%203.6%203%208%203s8-1.3%208-3V5%22%2F%3E%3Cpath%20d%3D%22M4%2012c0%201.7%203.6%203%208%203s8-1.3%208-3%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-envelope:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-envelope { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m3%207%209%206%209-6%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-bank:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-bank { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19.4%2014.6a2%202%200%201%200%200-3.2V8a2%202%200%200%200-2-2h-3.4a2%202%200%201%200-3.2%200H7.4a2%202%200%200%200-2%202v3.4a2%202%200%201%201%200%203.2V18a2%202%200%200%200%202%202h3.4a2%202%200%201%201%203.2%200h3.4a2%202%200%200%200%202-2z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-university:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-university { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19.4%2014.6a2%202%200%201%200%200-3.2V8a2%202%200%200%200-2-2h-3.4a2%202%200%201%200-3.2%200H7.4a2%202%200%200%200-2%202v3.4a2%202%200%201%201%200%203.2V18a2%202%200%200%200%202%202h3.4a2%202%200%201%201%203.2%200h3.4a2%202%200%200%200%202-2z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-tasks:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-tasks { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2012H2%22%2F%3E%3Cpath%20d%3D%22M5.5%205.1%202%2012v6a2%202%200%200%200%202%202h16a2%202%200%200%200%202-2v-6l-3.5-6.9A2%202%200%200%200%2016.8%204H7.2a2%202%200%200%200-1.7%201.1z%22%2F%3E%3Cpath%20d%3D%22M6%2016h.01%22%2F%3E%3Cpath%20d%3D%22M10%2016h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-tint:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-tint { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%228%22%20rx%3D%222%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2213%22%20width%3D%2218%22%20height%3D%228%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M7%207h.01%22%2F%3E%3Cpath%20d%3D%22M7%2017h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-download:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-download { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19.4%2014.6a2%202%200%201%200%200-3.2V8a2%202%200%200%200-2-2h-3.4a2%202%200%201%200-3.2%200H7.4a2%202%200%200%200-2%202v3.4a2%202%200%201%201%200%203.2V18a2%202%200%200%200%202%202h3.4a2%202%200%201%201%203.2%200h3.4a2%202%200%200%200%202-2z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-cog:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-cog { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M19.4%2015a1.7%201.7%200%200%200%20.3%201.8l.1.1a2%202%200%201%201-2.8%202.8l-.1-.1a1.7%201.7%200%200%200-1.8-.3%201.7%201.7%200%200%200-1%201.5V21a2%202%200%201%201-4%200v-.1a1.7%201.7%200%200%200-1.1-1.5%201.7%201.7%200%200%200-1.8.3l-.1.1a2%202%200%201%201-2.8-2.8l.1-.1a1.7%201.7%200%200%200%20.3-1.8%201.7%201.7%200%200%200-1.5-1H3a2%202%200%201%201%200-4h.1a1.7%201.7%200%200%200%201.5-1.1%201.7%201.7%200%200%200-.3-1.8l-.1-.1a2%202%200%201%201%202.8-2.8l.1.1a1.7%201.7%200%200%200%201.8.3H9a1.7%201.7%200%200%200%201-1.5V3a2%202%200%201%201%204%200v.1a1.7%201.7%200%200%200%201%201.5%201.7%201.7%200%200%200%201.8-.3l.1-.1a2%202%200%201%201%202.8%202.8l-.1.1a1.7%201.7%200%200%200-.3%201.8V9a1.7%201.7%200%200%200%201.5%201H21a2%202%200%201%201%200%204h-.1a1.7%201.7%200%200%200-1.5%201z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-recycle:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-recycle { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M20%2021a8%208%200%200%200-16%200%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-users:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-users { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M20%2021a8%208%200%200%200-16%200%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-line-chart:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-line-chart { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2012h-4l-3%208L9%204l-3%208H2%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li > a > i.fa.fa-info:first-child, html body:not(#fh):not(#fh0) .ibox-title h5 > i.fa.fa-info { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%2016v-4%22%2F%3E%3Cpath%20d%3D%22M12%208h.01%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .ibox:has(a[href*="module=dns_zone_editor"]) .ibox-title h5 > i.fa { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%2216%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%222%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%229%22%20y%3D%222%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Cpath%20d%3D%22M5%2016v-3a1%201%200%200%201%201-1h12a1%201%200%200%201%201%201v3%22%2F%3E%3Cpath%20d%3D%22M12%2012V8%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) .ibox:has(#bandwidth-graph, #bandwidth-line-chart) .ibox-title h5 > i.fa { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%204v16h16%22%2F%3E%3Cpath%20d%3D%22M8%2016v-4%22%2F%3E%3Cpath%20d%3D%22M12%2016V8%22%2F%3E%3Cpath%20d%3D%22M16%2016v-6%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li:has(a[href*="module=crontab"], a[href*="module=phpini_editor"], a[href*="module=notification_center"]) > a > i.fa:first-child { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2021v-7%22%2F%3E%3Cpath%20d%3D%22M4%2010V3%22%2F%3E%3Cpath%20d%3D%22M12%2021v-9%22%2F%3E%3Cpath%20d%3D%22M12%208V3%22%2F%3E%3Cpath%20d%3D%22M20%2021v-5%22%2F%3E%3Cpath%20d%3D%22M20%2012V3%22%2F%3E%3Cpath%20d%3D%22M2%2014h4%22%2F%3E%3Cpath%20d%3D%22M10%208h4%22%2F%3E%3Cpath%20d%3D%22M18%2016h4%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li:has(a[href*="fileManager"], a[href*="module=ftp_accounts"], a[href*="module=backups"]) > a > i.fa:first-child { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2020a2%202%200%200%200%202-2V8a2%202%200%200%200-2-2h-7.9a2%202%200%200%201-1.7-.9l-.8-1.2A2%202%200%200%200%207.9%203H4a2%202%200%200%200-2%202v13a2%202%200%200%200%202%202z%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li:has(a[href*="module=domains"], a[href*="module=subdomains"]) > a > i.fa:first-child { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M3%2012h18%22%2F%3E%3Cpath%20d%3D%22M12%203a14%2014%200%200%201%200%2018%2014%2014%200%200%201%200-18%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li:has(a[href*="module=mysql_manager"], a[href*="module=pma"]) > a > i.fa:first-child { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%225%22%20rx%3D%228%22%20ry%3D%223%22%2F%3E%3Cpath%20d%3D%22M4%205v14c0%201.7%203.6%203%208%203s8-1.3%208-3V5%22%2F%3E%3Cpath%20d%3D%22M4%2012c0%201.7%203.6%203%208%203s8-1.3%208-3%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li:has(a[href*="module=email_accounts"], a[href*="module=forwarders_email"]) > a > i.fa:first-child { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m3%207%209%206%209-6%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li:has(a[href*="module=dns_zone_editor"]) > a > i.fa:first-child { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%2216%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%222%22%20y%3D%2216%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%229%22%20y%3D%222%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Cpath%20d%3D%22M5%2016v-3a1%201%200%200%201%201-1h12a1%201%200%200%201%201%201v3%22%2F%3E%3Cpath%20d%3D%22M12%2012V8%22%2F%3E%3C%2Fsvg%3E"); }
html body:not(#fh):not(#fh0) #side-menu > li:has(a[href*="module=addons"], a[href*="softaculous"], a[href*="module=wordpress_manager"]) > a > i.fa:first-child { --fh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19.4%2014.6a2%202%200%201%200%200-3.2V8a2%202%200%200%200-2-2h-3.4a2%202%200%201%200-3.2%200H7.4a2%202%200%200%200-2%202v3.4a2%202%200%201%201%200%203.2V18a2%202%200%200%200%202%202h3.4a2%202%200%201%201%203.2%200h3.4a2%202%200%200%200%202-2z%22%2F%3E%3C%2Fsvg%3E"); }

/* ---------- module-specific light surfaces (CWP inline <style>) -> theme tokens, both modes ---------- */
html body:not(#fh):not(#fh0) .ex1 { border-color: var(--fh-edge-strong) !important; background: transparent !important; }
html body:not(#fh):not(#fh0) .ex1 li { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .ex1 .dir_exploret_item, html body:not(#fh):not(#fh0) .ex1 li .dir_exploret_item { background: transparent !important; border-bottom-color: var(--fh-edge) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .ex1 li:nth-child(even) .dir_exploret_item,
html body:not(#fh):not(#fh0) #dir_explorer_domain .dir-item:nth-child(even), html body:not(#fh):not(#fh0) #modal_file_explorer .dir-item:nth-child(even),
html body:not(#fh):not(#fh0) .scan-result-line:nth-child(odd), html body:not(#fh):not(#fh0) .clam-config-item:nth-child(odd), html body:not(#fh):not(#fh0) .scan-results-general .row:nth-child(odd),
html body:not(#fh):not(#fh0) .mail-scan-config-list li:nth-child(odd), html body:not(#fh):not(#fh0) .web-scan-config-list li:nth-child(odd),
html body:not(#fh):not(#fh0) .custom-scan-dir-list li:nth-child(odd), html body:not(#fh):not(#fh0) .domain-result-list .domain-result-item:nth-child(odd),
html body:not(#fh):not(#fh0) .sets-account-list .set-item:nth-child(odd), html body:not(#fh):not(#fh0) .importer-result-item:nth-child(odd),
html body:not(#fh):not(#fh0) #rules_list_wrapper .rules-editor-line:nth-child(even), html body:not(#fh):not(#fh0) .panel-body .form-group:nth-child(odd) { background: var(--fh-tint-2) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) #dir_explorer_domain .dir-item, html body:not(#fh):not(#fh0) #modal_file_explorer .dir-item, html body:not(#fh):not(#fh0) .web-scan-config-list li:nth-child(even),
html body:not(#fh):not(#fh0) .custom-scan-dir-list li, html body:not(#fh):not(#fh0) .domain-result-list .domain-result-item { color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) #dir_explorer_domain .dir-item:not(:nth-child(even)), html body:not(#fh):not(#fh0) #modal_file_explorer .dir-item:not(:nth-child(even)), html body:not(#fh):not(#fh0) .web-scan-config-list li:nth-child(even) { background: transparent !important; }
html body:not(#fh):not(#fh0) #dir_explorer_domain .dir-item:hover, html body:not(#fh):not(#fh0) #modal_file_explorer .dir-item:hover, html body:not(#fh):not(#fh0) .custom-scan-dir-list li:hover,
html body:not(#fh):not(#fh0) .file-selector.active-file, html body:not(#fh):not(#fh0) .set-item.current-viewing, html body:not(#fh):not(#fh0) .sample-file-container li:hover { background: var(--fh-tint-3) !important; color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .scan-result-header, html body:not(#fh):not(#fh0) .scan-results-title, html body:not(#fh):not(#fh0) .importer-result-row, html body:not(#fh):not(#fh0) .priviliges-title, html body:not(#fh):not(#fh0) .empty-set-filter,
html body:not(#fh):not(#fh0) .directory-item.normal-item.opened, html body:not(#fh):not(#fh0) .themely .panel-body, html body:not(#fh):not(#fh0) .clam-scan-option, html body:not(#fh):not(#fh0) .importer-step1-option,
html body:not(#fh):not(#fh0) .reseller-tab-container .nav-tabs > li > a, html body:not(#fh):not(#fh0) #_importer_results_tabs_ li a, html body:not(#fh):not(#fh0) .siteprobuilder_container, html body:not(#fh):not(#fh0) .music_media {
  background: var(--fh-raise) !important; color: var(--fh-text) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .clam-not-installed, html body:not(#fh):not(#fh0) .details-scan-window, html body:not(#fh):not(#fh0) .details-scan-window .close-detail, html body:not(#fh):not(#fh0) .cf-zones-container,
html body:not(#fh):not(#fh0) #accounts_loader, html body:not(#fh):not(#fh0) .accounts_loader, html body:not(#fh):not(#fh0) #preset_form_loader, html body:not(#fh):not(#fh0) .editor-loader-wrapper,
html body:not(#fh):not(#fh0) #nodejs_loader_window .table_cron_loader, html body:not(#fh):not(#fh0) #tomcat_loader_window .table_cron_loader, html body:not(#fh):not(#fh0) #preinstall_info_body,
html body:not(#fh):not(#fh0) .reseller-tab-container, html body:not(#fh):not(#fh0) .maintabs-scrollers, html body:not(#fh):not(#fh0) .themely .thumbnail, html body:not(#fh):not(#fh0) .general-password-generator-options,
html body:not(#fh):not(#fh0) .dir-sel-btn, html body:not(#fh):not(#fh0) #_importer_results_tabs_ li.active a {
  background: var(--fh-card-flat) !important; color: var(--fh-text) !important; border-color: var(--fh-edge-strong) !important; }
html body:not(#fh):not(#fh0) .autobackup-configurations::before, html body:not(#fh):not(#fh0) .autobackup-panel.not-pro::before, html body:not(#fh):not(#fh0) .noti-items::before { background: var(--fh-veil) !important; }
html body:not(#fh):not(#fh0) .deleting_tr, html body:not(#fh):not(#fh0) .deleting_tr td, html body:not(#fh):not(#fh0) .deleting_row, html body:not(#fh):not(#fh0) .deleting_row td { background: var(--fh-tint-2) !important; color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .deleting_tr .new-file, html body:not(#fh):not(#fh0) .deleting_row .badge-primary, html body:not(#fh):not(#fh0) .deleting_row .badge-success { background: var(--fh-tint-3) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .cf-token-status.valid { background: var(--fh-ok-bg) !important; color: var(--fh-ok) !important; border-color: var(--fh-ok-edge) !important; }
html body:not(#fh):not(#fh0) .cf-token-status.invalid { background: var(--fh-bad-bg) !important; color: var(--fh-bad) !important; border-color: var(--fh-bad-edge) !important; }
/* postgres / mongo module tabs */
html body:not(#fh):not(#fh0) .pgresql-module .nav-tabs > li > a, html body:not(#fh):not(#fh0) .mongodb-module .nav-tabs > li > a { background: transparent !important; }
/* disabled controls: readable muted text instead of a faded (low-contrast) element */
html body:not(#fh):not(#fh0) .btn[disabled], html body:not(#fh):not(#fh0) .btn.disabled, html body:not(#fh):not(#fh0) fieldset[disabled] .btn { opacity: 1 !important; color: var(--fh-muted) !important; background: var(--fh-tint-1) !important; border-color: var(--fh-edge) !important; box-shadow: none !important; filter: none !important; }
html body:not(#fh):not(#fh0) .btn[disabled] *, html body:not(#fh):not(#fh0) .btn.disabled * { color: inherit !important; }
html body:not(#fh):not(#fh0) .pagination > .disabled > a, html body:not(#fh):not(#fh0) .pagination > .disabled > span, html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate li.paginate_button.disabled > a { opacity: 1 !important; color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .form-control[disabled], html body:not(#fh):not(#fh0) select[disabled], html body:not(#fh):not(#fh0) input[disabled] { opacity: 1 !important; }
html body:not(#fh):not(#fh0) .dataTables_wrapper .dataTables_paginate .paginate_button.disabled, html body:not(#fh):not(#fh0) .pagination > .disabled { opacity: 1 !important; }
html body:not(#fh):not(#fh0) .navbar-form-custom .form-control, html body:not(#fh):not(#fh0) #top-search { border-color: var(--fh-input-edge) !important; }
/* clam / mail routing / addons / file manager search */
html body:not(#fh):not(#fh0) .text-muted-scan { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .clam-scan-option.optactive, html body:not(#fh):not(#fh0) .clam-scan-option.optactive .text-muted-scan { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .bg-info, html body:not(#fh):not(#fh0) .bg-warning, html body:not(#fh):not(#fh0) .bg-success, html body:not(#fh):not(#fh0) .bg-danger, html body:not(#fh):not(#fh0) .bg-primary { color: var(--fh-heading) !important; border: 1px solid var(--fh-edge-strong); }
html body:not(#fh):not(#fh0) .bg-info { background: var(--fh-info-bg) !important; border-color: var(--fh-info-edge) !important; }
html body:not(#fh):not(#fh0) .bg-warning { background: var(--fh-warn-bg) !important; border-color: var(--fh-warn-edge) !important; }
html body:not(#fh):not(#fh0) .bg-success { background: var(--fh-ok-bg) !important; border-color: var(--fh-ok-edge) !important; }
html body:not(#fh):not(#fh0) .bg-danger { background: var(--fh-bad-bg) !important; border-color: var(--fh-bad-edge) !important; }
html body:not(#fh):not(#fh0) .bg-primary { background: var(--fh-tint-3) !important; }
html body:not(#fh):not(#fh0) .bg-info *, html body:not(#fh):not(#fh0) .bg-warning *, html body:not(#fh):not(#fh0) .bg-success *, html body:not(#fh):not(#fh0) .bg-danger *, html body:not(#fh):not(#fh0) .bg-primary * { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .fm-search-box, html body:not(#fh):not(#fh0) .fm-search-box:focus-within, html body:not(#fh):not(#fh0) .fm-search-select select.form-control { border-color: var(--fh-input-edge) !important; }
html body:not(#fh):not(#fh0) .clam-scan-option.optactive *, html body:not(#fh):not(#fh0) .clam-scan-option.optactive a { color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .clam-scan-option.optactive a { text-decoration: underline !important; }
html body:not(#fh):not(#fh0) .text-muted-scan a { color: var(--fh-heading) !important; text-decoration: underline; text-underline-offset: 3px; }
/* inline style="color:#337ab7" (bootstrap link blue) used by some module templates */
html body:not(#fh):not(#fh0) [style*="color:#337ab7"], html body:not(#fh):not(#fh0) [style*="color: #337ab7"] { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .dashboard-item, html body:not(#fh):not(#fh0) [class*="col-"][style*="box-shadow: 2px 3px 11px"] { box-shadow: none !important; }
html body:not(#fh):not(#fh0) [class*="col-"][style*="border:1px solid #dddddd"] { border-color: var(--fh-edge) !important; background: var(--fh-card-flat) !important; }
/* generated by gen_modcolors.py: CWP module stylesheet colours -> theme tokens */
html body:not(#fh):not(#fh0) [id^="wpm-modal-"] .modal-header { border-bottom-color: var(--fh-edge) !important; background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) [id^="wpm-modal-"] .modal-footer { border-top-color: var(--fh-edge) !important; background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-stats-bar-modern { background: var(--fh-raise) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-card { background: var(--fh-card-flat) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-icon.wpm-stat-installations { background: var(--fh-raise) !important; color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-icon.wpm-stat-updates { background: var(--fh-raise) !important; color: var(--fh-warn) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-icon.wpm-stat-cli { background: var(--fh-raise) !important; color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-icon.wpm-stat-vulnerabilities { background: var(--fh-raise) !important; color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-icon.wpm-stat-plugins { background: var(--fh-raise) !important; color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-icon.wpm-stat-themes { background: var(--fh-raise) !important; color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-icon.wpm-stat-status { background: var(--fh-raise) !important; color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-num { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-label { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-card-divider { background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-card-activity { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-card-activity small { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card { background: var(--fh-card-flat) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card-title { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card-title i { color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card select.form-control, html body:not(#fh):not(#fh0) .wpm-filter-card .btn-default { border-color: var(--fh-edge) !important; color: var(--fh-info) !important; background: var(--fh-card-flat) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card select.form-control:hover, html body:not(#fh):not(#fh0) .wpm-filter-card .btn-default:hover { border-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card select.form-control:focus, html body:not(#fh):not(#fh0) .wpm-filter-card .btn-default:focus { border-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card .wpm-search-wrap { background: var(--fh-card-flat) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card .wpm-search-wrap:hover { border-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card .wpm-search-wrap:focus-within { border-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card .wpm-search-icon { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-filter-card .wpm-search-wrap .form-control { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-card { background: var(--fh-card-flat) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card:hover { border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card.active { border-left-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-card.broken { border-left-color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-card.inactive { border-left-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card-preview { background: var(--fh-raise) !important; border-right-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card-preview-placeholder { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-card-icon { background: var(--fh-card-flat) !important; }
html body:not(#fh):not(#fh0) .wpm-icon-wordpress { color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-icon-broken { color: var(--fh-bad) !important; background: var(--fh-card-flat) !important; }
html body:not(#fh):not(#fh0) .wpm-card-name { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-card-domain { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-card-domain:hover { color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-card-path { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-meta-item { color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .wpm-meta-item strong { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-meta-sep { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .wpm-card-stats { border-left-color: var(--fh-edge) !important; background: var(--fh-card-flat) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-mini:hover { background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-mini:active { background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-mini-num { color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-stat-mini-label { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-card-toolbar { border-left-color: var(--fh-edge) !important; background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-toolbar-separator { background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-btn-icon { border-color: var(--fh-edge) !important; background: var(--fh-card-flat) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .wpm-btn-icon:hover { background: var(--fh-hi-bg) !important; border-color: var(--fh-ok) !important; color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-menu { background: var(--fh-card-flat) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-menu > li > a { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-menu > li > a:hover { background: var(--fh-raise) !important; color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-menu > li > a i { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-menu > li > a:hover i { color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-danger { color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-danger:hover { background: var(--fh-raise) !important; color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-danger i { color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-dropdown-divider { background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-empty-state { background: var(--fh-card-flat) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-empty-state i { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) [data-tooltip]:hover::after { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .wpm-sort-btn { border-color: var(--fh-edge) !important; background: var(--fh-card-flat) !important; }
html body:not(#fh):not(#fh0) .wpm-sort-btn:hover { background: var(--fh-raise) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-sort-btn.active { background: var(--fh-hi-bg) !important; border-color: var(--fh-ok) !important; color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .wpm-sort-btn.active i { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .wpm-card-identity { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card-stats { border-left-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card-toolbar { border-top-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card-preview { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card-identity { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card-stats { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-card-toolbar { border-top-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-security-score { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-security-score .score-label { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-security-check { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-modal-actions { border-top-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-install-steps { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-step { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-step span { background: var(--fh-raise) !important; color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-step.active { color: var(--fh-info) !important; border-bottom-color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-step.active span { background: var(--fh-hi-bg) !important; color: var(--fh-hi-fg) !important; }
html body:not(#fh):not(#fh0) .wpm-spinner { border-color: var(--fh-edge) !important; border-top-color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-backup-item { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-backup-list th { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-step-content .form-group.has-error .form-control { border-color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-step-content .form-group.has-error .help-block { color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-vuln-summary { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-vuln-critical { background: var(--fh-raise) !important; color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-vuln-high { background: var(--fh-raise) !important; color: var(--fh-warn) !important; }
html body:not(#fh):not(#fh0) .wpm-vuln-medium { background: var(--fh-raise) !important; color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-vuln-low { background: var(--fh-raise) !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .wpm-vuln-sev-critical td { background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-vuln-sev-high td { background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-info { background: var(--fh-raise) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-info .wpm-info-label { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-info .wpm-info-value { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-actions { border-top-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-status-enabled { background: var(--fh-raise) !important; color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-status-disabled { background: var(--fh-raise) !important; color: var(--fh-bad) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-last-run { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-form .form-group label { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-schedule-form .help-block { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-no-schedule i { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) .wpm-modal-tabs { border-bottom-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-modal-tabs > li > a { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-modal-tabs > li > a:hover { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-modal-tabs > li.active > a { color: var(--fh-ok) !important; border-bottom-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-item-card { background: var(--fh-raise) !important; border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-item-card:hover { background: var(--fh-card-flat) !important; border-color: var(--fh-ok) !important; }
html body:not(#fh):not(#fh0) .wpm-item-card.wpm-item-active { border-left-color: var(--fh-ok) !important; background: var(--fh-raise) !important; }
html body:not(#fh):not(#fh0) .wpm-item-name { color: var(--fh-info) !important; }
html body:not(#fh):not(#fh0) .wpm-item-meta { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) .wpm-search-bar .form-control { border-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .wpm-search-bar .form-control:focus { border-color: var(--fh-ok) !important; }
/* form controls inside module markup keep a >= 3:1 boundary */
html body:not(#fh):not(#fh0) #page-wrapper [class*="wpm-"] .form-control, html body:not(#fh):not(#fh0) #page-wrapper .form-control[class*="wpm-"], html body:not(#fh):not(#fh0) #page-wrapper [class*="wpm-"] select.form-control, html body:not(#fh):not(#fh0) #page-wrapper [class*="wpm-"] select, html body:not(#fh):not(#fh0) .modal [class*="wpm-"] .form-control, html body:not(#fh):not(#fh0) #page-wrapper [class*="wpm-"] input:not([type=checkbox]):not([type=radio]) { border-color: var(--fh-input-edge) !important; }
html body:not(#fh):not(#fh0) [style*="color:#718096"], html body:not(#fh):not(#fh0) [style*="color: #718096"], html body:not(#fh):not(#fh0) [style*="color:#7f8c8d"], html body:not(#fh):not(#fh0) [style*="color: #7f8c8d"], html body:not(#fh):not(#fh0) [style*="color:#999"], html body:not(#fh):not(#fh0) [style*="color: #999"] { color: var(--fh-muted) !important; }
html body:not(#fh):not(#fh0) #page-wrapper .clam-scan-option a, html body:not(#fh):not(#fh0) #page-wrapper .text-muted-scan a { color: var(--fh-heading) !important; }
html body:not(#fh):not(#fh0) #page-wrapper .clam-scan-option.optactive a { color: var(--fh-hi-fg) !important; }
/* ---------- user-panel login page (original/login.html; follows the OS light/dark preference) ---------- */
html body:not(#fh):not(#fh0).gray-bg { background: var(--fh-ground) !important; background-color: var(--fh-bg) !important; min-height: 100vh; overflow-x: hidden; }
html body:not(#fh):not(#fh0) #login.loginColumns { max-width: 960px; margin: 0 auto; padding: 72px 20px 32px; }
html body:not(#fh):not(#fh0) #login > .row:first-child { display: flex; flex-wrap: wrap; align-items: center; row-gap: 28px; }
html body:not(#fh):not(#fh0) #login img[src*="new_logo_small"], html body:not(#fh):not(#fh0) #lost-pass img[src*="new_logo_small"], html body:not(#fh):not(#fh0) .logged-message-wrapper img[src*="new_logo_small"] {
  content: var(--fh-login-logo); width: 260px !important; max-width: 78%; height: auto; }
html body:not(#fh):not(#fh0) #login .col-md-12.text-center { margin-top: 0 !important; text-align: left; float: none; }
html body:not(#fh):not(#fh0) #login p { color: var(--fh-text) !important; font-size: 15px; line-height: 1.6; }
html body:not(#fh):not(#fh0) #login p[style*="margin-top"] { margin: 28px 0 6px !important; color: var(--fh-heading) !important; font-size: 26px; font-weight: 600; line-height: 1.25; letter-spacing: -.02em; }
html body:not(#fh):not(#fh0) #login p[style*="margin-top"] + p { margin: 0; color: var(--fh-muted) !important; font-size: 16px; line-height: 1.5; }
html body:not(#fh):not(#fh0) #formlogin.ibox-content, html body:not(#fh):not(#fh0) #twofa.ibox-content, html body:not(#fh):not(#fh0) #lost-pass .ibox-content, html body:not(#fh):not(#fh0) .logged-message {
  background: var(--fh-card) !important; background-color: var(--fh-card-flat) !important; border: 1px solid var(--fh-edge) !important; border-top-color: var(--fh-edge-top) !important;
  border-radius: 16px !important; box-shadow: var(--fh-card-shadow) !important; padding: 28px !important; color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) #formlogin .form-control, html body:not(#fh):not(#fh0) #lost-pass .form-control, html body:not(#fh):not(#fh0) #twofa .form-control { min-height: 44px; font-size: 16px !important; }
html body:not(#fh):not(#fh0) #formlogin .form-group .row > div:first-child { color: var(--fh-soft); font-weight: 600; }
html body:not(#fh):not(#fh0) #formlogin .form-group, html body:not(#fh):not(#fh0) #formlogin .form-group > div:not(.row) { color: var(--fh-soft) !important; opacity: 1 !important; }
html body:not(#fh):not(#fh0) #login hr ~ .row, html body:not(#fh):not(#fh0) #login hr ~ .row > div, html body:not(#fh):not(#fh0) #login hr ~ .row a, html body:not(#fh):not(#fh0) #login hr ~ .row small { color: var(--fh-muted) !important; opacity: 1 !important; }
html body:not(#fh):not(#fh0) #sessioning { width: 18px; height: 18px; vertical-align: -3px; margin-right: 6px; accent-color: var(--fh-heading); }
html body:not(#fh):not(#fh0) #btnsubmit, html body:not(#fh):not(#fh0) #btnsendcode, html body:not(#fh):not(#fh0) #btn-f2acode { min-height: 46px; font-size: 15px !important; margin: 8px 0 14px; }
html body:not(#fh):not(#fh0) #login hr { border-color: var(--fh-edge) !important; margin: 32px 0 18px; }
html body:not(#fh):not(#fh0) #login > .row:last-child, html body:not(#fh):not(#fh0) #login > .row:last-child a, html body:not(#fh):not(#fh0) #login > .row:last-child small { color: var(--fh-muted) !important; font-size: 12.5px; }
html body:not(#fh):not(#fh0) .logged-message-wrapper { color: var(--fh-text) !important; }
html body:not(#fh):not(#fh0) .logged-message [style*="border-left"] { border-left-color: var(--fh-edge) !important; }
html body:not(#fh):not(#fh0) .logged-message-alert h2, html body:not(#fh):not(#fh0) .logged-message-alert .fa { color: var(--fh-ok) !important; }
@media (max-width: 768px) {
  html body:not(#fh):not(#fh0) #login.loginColumns { padding: 32px 16px 24px; }
  html body:not(#fh):not(#fh0) #login .col-md-6 { width: 100%; }
  html body:not(#fh):not(#fh0) #login p[style*="margin-top"] { margin-top: 20px !important; font-size: 22px; }
  html body:not(#fh):not(#fh0) #login p[style*="margin-top"] + p { font-size: 15px; }
  html body:not(#fh):not(#fh0) #login > .row:last-child .text-right { text-align: left !important; margin-top: 6px; }
}
