/* Font Awesome 7 compatibility - FA7 uses viewBox scaling which makes icons smaller */
svg.svg-inline--fa {
  display: inline-block !important;
  font-size: 1.25em !important;
  height: 1em !important;
  overflow: visible !important;
  vertical-align: -0.125em !important;
  width: auto !important;
  line-height: 1 !important;
}

/* Size classes */
.fa-xs svg.svg-inline--fa,
svg.svg-inline--fa.fa-xs {
  font-size: 0.75em !important;
}
.fa-sm svg.svg-inline--fa,
svg.svg-inline--fa.fa-sm {
  font-size: 0.875em !important;
}
.fa-lg svg.svg-inline--fa,
svg.svg-inline--fa.fa-lg {
  font-size: 1.5em !important;
}
.fa-1x svg.svg-inline--fa {
  font-size: 1.25em !important;
}
.fa-2x svg.svg-inline--fa {
  font-size: 2.5em !important;
}
.fa-3x svg.svg-inline--fa {
  font-size: 3.75em !important;
}
.fa-4x svg.svg-inline--fa {
  font-size: 5em !important;
}
.fa-5x svg.svg-inline--fa {
  font-size: 6.25em !important;
}
.fa-6x svg.svg-inline--fa {
  font-size: 7.5em !important;
}
.fa-7x svg.svg-inline--fa {
  font-size: 8.75em !important;
}
.fa-8x svg.svg-inline--fa {
  font-size: 10em !important;
}
.fa-9x svg.svg-inline--fa {
  font-size: 11.25em !important;
}
.fa-10x svg.svg-inline--fa {
  font-size: 12.5em !important;
}

/* Alerts */
.alert svg.svg-inline--fa,
.alert-app svg.svg-inline--fa {
  vertical-align: middle !important;
  align-self: center !important;
  margin-right: 0.5em;
  flex-shrink: 0 !important;
}

.alert-app {
  align-items: center !important;
}

/* Text contexts */
p svg.svg-inline--fa,
span svg.svg-inline--fa,
a svg.svg-inline--fa,
label svg.svg-inline--fa,
div svg.svg-inline--fa {
  vertical-align: middle !important;
  position: relative;
  top: -0.0625em;
}

/* Buttons - default 1em */
button svg.svg-inline--fa,
.btn svg.svg-inline--fa,
input svg.svg-inline--fa {
  font-size: 1em !important;
  vertical-align: middle !important;
  top: -0.1em;
  position: relative;
}

/* Tables */
td svg.svg-inline--fa,
th svg.svg-inline--fa {
  vertical-align: middle !important;
}

/* Lists */
li svg.svg-inline--fa {
  vertical-align: middle !important;
  position: relative;
  top: -0.0625em;
}

/* Flexbox */
.flex svg.svg-inline--fa,
.d-flex svg.svg-inline--fa,
[style*='display: flex'] svg.svg-inline--fa,
[style*='display:flex'] svg.svg-inline--fa {
  align-self: center !important;
  flex-shrink: 0 !important;
}

svg.svg-inline--fa {
  transform: none !important;
  max-width: 100%;
}

.fa-fw svg.svg-inline--fa {
  width: 1.25em !important;
  text-align: center;
}

/* Navigation menus */
.icon-fa svg.svg-inline--fa {
  font-size: 1.3em !important;
}

.icon-svg svg.svg-inline--fa {
  font-size: 1.5em !important;
}

ul.sub_menu li a svg.svg-inline--fa {
  font-size: 1em !important;
  vertical-align: middle !important;
  position: relative;
  top: 0.1em;
  margin-right: 0.5em;
}

.nav_bottom svg.svg-inline--fa,
footer ul.nav_bottom svg.svg-inline--fa {
  font-size: 1em !important;
}

/* Common utility icons */
svg.svg-inline--fa.fa-message,
svg.svg-inline--fa.fa-receipt,
svg.svg-inline--fa.fa-lock,
svg.svg-inline--fa.fa-bell,
svg.svg-inline--fa.fa-circle-info,
svg.svg-inline--fa.fa-upload,
svg.svg-inline--fa.fa-plus,
svg.svg-inline--fa.fa-puzzle-piece,
svg.svg-inline--fa.fa-trash,
svg.svg-inline--fa.fa-trash-alt,
svg.svg-inline--fa.fa-plug,
svg.svg-inline--fa.fa-power-off,
svg.svg-inline--fa.fa-square-plus,
svg.svg-inline--fa.fa-circle,
svg.svg-inline--fa.fa-thumbtack,
svg.svg-inline--fa.fa-envelope-open-text,
svg.svg-inline--fa.fa-inbox,
svg.svg-inline--fa.fa-user-tie,
svg.svg-inline--fa.fa-paper-plane,
svg.svg-inline--fa.fa-stopwatch,
svg.svg-inline--fa.fa-arrows-rotate,
svg.svg-inline--fa.fa-building-columns,
svg.svg-inline--fa.fa-up-right-from-square {
  font-size: 1em !important;
}

/* Share icons */
svg.svg-inline--fa.fa-share-nodes,
svg.svg-inline--fa.fa-share-alt {
  font-size: 1em !important;
}

/* Layout icons */
svg.svg-inline--fa.fa-table-columns,
svg.svg-inline--fa.fa-columns {
  font-size: 1em !important;
}

/* Settings icons */
svg.svg-inline--fa.fa-gear,
svg.svg-inline--fa.fa-cog,
svg.svg-inline--fa.fa-gears,
svg.svg-inline--fa.fa-cogs {
  font-size: 1em !important;
}

/* User management icons */
svg.svg-inline--fa.fa-users,
svg.svg-inline--fa.fa-users-gear,
svg.svg-inline--fa.fa-users-cog {
  font-size: 1em !important;
}

/* Money icons */
svg.svg-inline--fa.fa-coins,
svg.svg-inline--fa.fa-money-bill-1,
svg.svg-inline--fa.fa-money-bill-alt {
  font-size: 1em !important;
}

/* Transform icons */
svg.svg-inline--fa.fa-right-left,
svg.svg-inline--fa.fa-exchange-alt {
  font-size: 1em !important;
}

/* Navigation chevrons */
svg.svg-inline--fa.fa-angle-down,
svg.svg-inline--fa.fa-chevron-down,
svg.svg-inline--fa.fa-chevron-left,
svg.svg-inline--fa.fa-chevron-right {
  font-size: 0.875em !important;
}

/* Context-specific: building icon */
svg.svg-inline--fa.fa-building {
  font-size: 1em !important;
}
.icon-fa svg.svg-inline--fa.fa-building {
  font-size: 1.3em !important;
}

/* Context-specific: file-invoice */
svg.svg-inline--fa.fa-file-invoice {
  font-size: 1em !important;
}
.menu-categories svg.svg-inline--fa.fa-file-invoice {
  font-size: 1.3em !important;
}

/* Context-specific: briefcase */
svg.svg-inline--fa.fa-briefcase {
  font-size: 1em !important;
}
.cartola svg.svg-inline--fa.fa-briefcase {
  font-size: 1.3em !important;
}

/* Context-specific: lightbulb */
.icon-fa.bulb svg.svg-inline--fa.fa-lightbulb {
  font-size: 1.3em !important;
}
#tournav .icon-fa.bulb svg.svg-inline--fa.fa-lightbulb {
  font-size: 1.5em !important;
  vertical-align: middle !important;
  display: inline-block;
}

/* Context-specific: user icon */
svg.svg-inline--fa.fa-user:not(.fa-lg) {
  font-size: 1em !important;
}
svg.svg-inline--fa.fa-user.fa-lg {
  font-size: 1.3em !important;
}

h2 svg.svg-inline--fa.fa-piggy-bank {
  font-size: 1.1em !important;
  margin-right: 0.5em;
}

/* Timer dropdown */
a.dropdown-button.timer svg.svg-inline--fa {
  font-size: 1.125em !important;
  vertical-align: middle !important;
  position: relative;
  top: 0.2em;
  height: 1em !important;
}

a.dropdown-button.timer svg.svg-inline--fa.fa-sm {
  font-size: 1.125em !important;
  height: 1em !important;
  vertical-align: middle !important;
  position: relative;
  top: 0.2em;
}

a.dropdown-button.timer svg.svg-inline--fa.fa-angle-down {
  font-size: 0.875em !important;
  top: 0.2em;
}

a.dropdown-button.timer svg.svg-inline--fa.fa-clock-rotate-left {
  font-size: 1em !important;
  vertical-align: middle !important;
  position: relative;
  top: 0.25em;
  height: 1em !important;
}

/* Compress/expand icons */
svg.svg-inline--fa.compress_bank,
svg.svg-inline--fa.menu-compress_group_manual {
  font-size: 1.1em !important;
}

.bankAccountsList svg.svg-inline--fa,
.acciones svg.svg-inline--fa,
.title-bank svg.svg-inline--fa {
  font-size: 1em !important;
}

#loopedin-help svg.svg-inline--fa.fa-gift {
  font-size: 1em !important;
}

li.hide-on-med-and-down svg.svg-inline--fa.fa-table-cells-large {
  font-size: 1.1em !important;
}

.btn svg.svg-inline--fa.fa-eye,
button svg.svg-inline--fa.fa-eye {
  font-size: 1em !important;
}

.nofile svg.svg-inline--fa.fa-eye-slash {
  font-size: 1em !important;
}

.export-temp .nofile svg.svg-inline--fa.fa-clock-rotate-left {
  font-size: 1em !important;
}

.icon_date svg.svg-inline--fa.fa-calendar-days {
  font-size: 1em !important;
}

.btn-dropdown-filter svg.svg-inline--fa {
  font-size: 1.3em !important;
}

.tooltipped svg.svg-inline--fa.fa-circle-question {
  font-size: 1em !important;
}

/* Trash icon in shortcuts - very small */
li.shortcut svg.svg-inline--fa.fa-trash.deleteShortCut,
.dropdown-content-accountant li.shortcut svg.svg-inline--fa.fa-trash.deleteShortCut,
ul.shortcuts li.shortcut svg.svg-inline--fa.fa-trash {
  font-size: 0.85em !important;
  vertical-align: middle !important;
  width: auto !important;
  height: auto !important;
}

svg.deleteShortCut.fa-trash.svg-inline--fa,
.shortcut svg.deleteShortCut.fa-trash,
li.shortcut > svg.fa-trash {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  vertical-align: middle !important;
  position: relative;
  top: 2px;
}

.page-select svg.svg-inline--fa.fa-chevron-left,
.page-select svg.svg-inline--fa.fa-chevron-right {
  font-size: 1em !important;
}

.btn svg.svg-inline--fa.fa-layer-group,
button svg.svg-inline--fa.fa-layer-group {
  font-size: 1em !important;
}

/* Size modifiers */
svg.svg-inline--fa.fa-download {
  font-size: 1em !important;
}
.icon-svg svg.svg-inline--fa.fa-download {
  font-size: 1.25em !important;
}
svg.svg-inline--fa.fa-download.fa-2x {
  font-size: 2.5em !important;
}

svg.svg-inline--fa.fa-hand-pointer.fa-2x {
  font-size: 2em !important;
}

svg.svg-inline--fa.fa-circle-exclamation.fa-2x {
  font-size: 2em !important;
}

svg.svg-inline--fa.fa-circle-info.fa-lg {
  font-size: 1.3em !important;
}

/* Font fixes */
.chosen-container .chosen-single,
.chosen-container .chosen-results li {
  font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  font-weight: 400 !important;
}

.btn-secondary,
a.btn-secondary {
  font-weight: 600 !important;
}

.btn-principal,
a.btn-principal {
  font-weight: 700 !important;
}

.btn-help i.material-icons {
  vertical-align: middle !important;
  position: relative;
  top: -2px;
}
