/* V33 - SMART global UI controls + icon fallback, local only, no external fonts */
:root{--v33-blue:#0d47a1;--v33-border:#dbe7f3;--v33-text:#0f172a}

/* Native checkboxes/radios must stay visible even if iCheck/custom plugins fail */
input[type="checkbox"],input[type="radio"]{
  -webkit-appearance:auto!important;-moz-appearance:auto!important;appearance:auto!important;
  opacity:1!important;visibility:visible!important;display:inline-block!important;
  position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  z-index:10!important;pointer-events:auto!important;
  width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;
  margin:0 6px!important;vertical-align:middle!important;transform:none!important;
  clip:auto!important;clip-path:none!important;background:#fff!important;border:1px solid #94a3b8!important;
}
input[type="checkbox"]{border-radius:4px!important} input[type="radio"]{border-radius:50%!important}
input[type="checkbox"]:checked,input[type="radio"]:checked{accent-color:var(--v33-blue)!important}
label input[type="checkbox"],label input[type="radio"]{margin-inline-end:7px!important}

/* Disable broken iCheck wrappers/overlays globally */
.iCheck-helper,.icheck-helper,.icheckbox_square-blue .iCheck-helper,.iradio_square-blue .iCheck-helper,
.icheckbox_minimal-blue .iCheck-helper,.iradio_minimal-blue .iCheck-helper{display:none!important;opacity:0!important;pointer-events:none!important}
.icheckbox_square-blue,.iradio_square-blue,.icheckbox_minimal-blue,.iradio_minimal-blue,
.icheckbox_flat-blue,.iradio_flat-blue{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:auto!important;height:auto!important;min-width:22px!important;min-height:22px!important;
  background:none!important;border:0!important;box-shadow:none!important;vertical-align:middle!important;position:relative!important;
}
.icheckbox_square-blue input,.iradio_square-blue input,.icheckbox_minimal-blue input,.iradio_minimal-blue input,
.icheckbox_flat-blue input,.iradio_flat-blue input{position:relative!important;opacity:1!important;display:inline-block!important;pointer-events:auto!important}

/* Roles/permissions pages: keep permissions readable and clickable */
.permission-group input[type="checkbox"],.permissions input[type="checkbox"],.roles input[type="checkbox"],
form[action*="roles"] input[type="checkbox"],form[action*="permissions"] input[type="checkbox"]{display:inline-block!important;opacity:1!important;visibility:visible!important;position:relative!important}

/* Font icon fallback: avoids square glyphs when FontAwesome/Ionicons/Glyphicons files are missing */
i[class],span[class*="fa-"],i[class*="fa-"],i[class*="ion-"],i[class*="glyphicon"],i[class*="ti-"],i[class*="bx-"],i[class*="bi-"]{
  font-family:Arial,"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif!important;
  speak:none!important;text-rendering:auto!important;line-height:1!important;
}
.fa,.fas,.far,.fal,.fab,.fa-solid,.fa-regular,.fa-brands,.ion,.glyphicon,.ti,.bx,.bi{font-family:Arial,"Segoe UI Emoji","Noto Color Emoji",sans-serif!important}

/* Generic fallback */
.fa::before,.fas::before,.far::before,.fal::before,.fab::before,.fa-solid::before,.fa-regular::before,.fa-brands::before,
.glyphicon::before,.ion::before,.ti::before,.bx::before,.bi::before{font-family:Arial,"Segoe UI Emoji","Noto Color Emoji",sans-serif!important;font-weight:700!important;display:inline-block!important;min-width:1em;text-align:center}
.fa::before,.fas::before,.far::before,.fal::before,.fab::before,.fa-solid::before,.fa-regular::before,.fa-brands::before{content:"•"}

/* Common menu/action icons */
.fa-home::before,.fa-dashboard::before,.fa-tachometer-alt::before,.fa-tachometer::before{content:"⌂"!important}
.fa-users::before,.fa-user-friends::before,.fa-user-group::before{content:"👥"!important}
.fa-user::before,.fa-user-alt::before{content:"👤"!important}
.fa-cog::before,.fa-gear::before,.fa-cogs::before,.fa-gears::before{content:"⚙"!important}
.fa-box::before,.fa-boxes::before,.fa-cube::before,.fa-cubes::before,.fa-archive::before{content:"▣"!important}
.fa-shopping-cart::before,.fa-cart-shopping::before,.fa-shopping-basket::before{content:"🛒"!important}
.fa-download::before{content:"↓"!important}.fa-upload::before{content:"↑"!important}
.fa-file::before,.fa-file-alt::before,.fa-file-text::before,.fa-copy::before{content:"▤"!important}
.fa-print::before{content:"⎙"!important}.fa-search::before{content:"⌕"!important}
.fa-plus::before,.fa-add::before{content:"+"!important}.fa-edit::before,.fa-pencil::before,.fa-pencil-alt::before{content:"✎"!important}
.fa-trash::before,.fa-trash-alt::before{content:"🗑"!important}.fa-eye::before{content:"👁"!important}
.fa-check::before,.fa-check-circle::before{content:"✓"!important}.fa-times::before,.fa-close::before{content:"×"!important}
.fa-calendar::before,.fa-calendar-alt::before{content:"▦"!important}.fa-clock::before,.fa-clock-o::before{content:"◷"!important}
.fa-map-marker::before,.fa-map-marker-alt::before,.fa-location-dot::before{content:"⌖"!important}
.fa-mobile::before,.fa-mobile-alt::before,.fa-phone::before{content:"▯"!important}
.fa-list::before,.fa-bars::before{content:"☰"!important}.fa-chevron-down::before{content:"⌄"!important}.fa-chevron-left::before{content:"‹"!important}.fa-chevron-right::before{content:"›"!important}
.fa-money::before,.fa-dollar-sign::before,.fa-coins::before{content:"¤"!important}.fa-chart-bar::before,.fa-chart-line::before,.fa-chart-pie::before{content:"◔"!important}
.fa-truck::before{content:"🚚"!important}.fa-warehouse::before{content:"▥"!important}.fa-building::before{content:"▦"!important}.fa-briefcase::before{content:"▣"!important}
.fa-bell::before{content:"🔔"!important}.fa-envelope::before{content:"✉"!important}.fa-lock::before{content:"🔒"!important}.fa-unlock::before{content:"🔓"!important}

/* If a theme prints unknown unicode squares inside icon tags, hide raw text and show fallback dot */
i[class*="fa-"]{font-size:1em!important}
.sidebar i[class*="fa-"]:not([class*="fa-chevron"]),.sidebar-menu i[class*="fa-"]:not([class*="fa-chevron"]),.main-sidebar i[class*="fa-"]:not([class*="fa-chevron"]){width:20px;text-align:center;margin-inline-end:6px;color:inherit}
.sidebar i[class*="fa-"]::before,.sidebar-menu i[class*="fa-"]::before,.main-sidebar i[class*="fa-"]::before{color:inherit!important}

/* Table and page polish for broken checkbox rows */
.table input[type="checkbox"],table input[type="checkbox"]{margin-inline:auto!important;display:block!important}
.select-all,input.select-all{cursor:pointer!important}
