.toast{
  display: none;
  min-width: 20vw
}
.toast.show {
    display: block;
    opacity: 1;
    position: fixed;
    z-index: 99999999;
    margin: 20px;
    right: 0;
    top: 3.5rem;
}
.swal2-container{
    z-index: 99999999;
}

/* Verdana font — application-wide */
:root {
  --hrm-font: Verdana, Geneva, Tahoma, sans-serif;
  --font-family-sans-serif: var(--hrm-font);
  --font-family-base: var(--hrm-font);
}

*,
*::before,
*::after {
  font-family: inherit;
}

html {
  font-family: var(--hrm-font) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body,
.main-sidebar,
.content-wrapper,
.main-header,
.main-footer,
.navbar,
.card,
.card-title,
.table,
.form-control,
.custom-select,
.btn,
.badge,
.nav-link,
.dropdown-menu,
.dropdown-item,
.modal,
.modal-title,
.alert,
.toast,
.breadcrumb,
.pagination,
.page-link,
.list-group-item,
.info-box,
.info-box-text,
.info-box-number,
.small-box,
.small-box-footer,
.callout,
label,
legend,
.input-group-text,
.select2-container,
.select2-container--bootstrap4 .select2-selection,
.select2-container--bootstrap4 .select2-results__option,
.select2-container--bootstrap4 .select2-search__field,
.dataTables_wrapper,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate,
.swal2-popup,
.swal2-title,
.swal2-html-container,
.swal2-input,
.swal2-textarea,
.swal2-select,
.note-editor,
.note-editable,
.note-toolbar,
.xdsoft_datetimepicker,
.xdsoft_datetimepicker *,
.login-box,
.login-box-msg,
.register-box,
h1, h2, h3, h4, h5, h6,
p, span, a, li, td, th, div,
input, button, select, textarea {
  font-family: var(--hrm-font) !important;
}

/* Preserve monospace for code / serial numbers */
code, kbd, pre, samp,
.font-monospace,
.table code {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

/* Font Awesome icons must keep icon font */
.fa, .fas, .far, .fal, .fab,
[class*=" fa-"], [class^="fa-"],
.note-icon:before {
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands" !important;
}

.note-icon:before {
  font-family: summernote !important;
}

/* Fix success/green color across the app */
:root {
  --green: #28a745;
  --success: #28a745;
}
.bg-success,
span.bg-success,
.info-box-icon.bg-success {
  background-color: #28a745 !important;
  color: #fff !important;
}
.badge-success,
span.badge.badge-success {
  background-color: #28a745 !important;
  color: #fff !important;
}
.btn-success,
a.btn.btn-success,
button.btn.btn-success {
  background-color: #28a745 !important;
  border-color: #28a745 !important;
  color: #fff !important;
}
.btn-success:hover,
.btn-success:focus,
a.btn.btn-success:hover,
a.btn.btn-success:focus {
  background-color: #218838 !important;
  border-color: #1e7e34 !important;
}
.alert-success {
  background-color: #d4edda !important;
  border-color: #c3e6cb !important;
  color: #155724 !important;
}
.swal2-icon.swal2-success {
  border-color: #28a745 !important;
  color: #28a745 !important;
}
.swal2-icon.swal2-success [class^='swal2-success-line'] {
  background-color: #28a745 !important;
}
.swal2-icon.swal2-success .swal2-success-ring {
  border-color: rgba(40, 167, 69, 0.3) !important;
}
#preloader2 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  overflow: hidden;
  background: #ffffff82;
}

#preloader2:before {
  content: "";
  position: fixed;
  top: calc(50% - 30px);
  left: calc(50% - 30px);
  border: 6px solid #1977cc;
  border-top-color: #d1e6f9;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  -webkit-animation: animate-preloader 1s linear infinite;
  animation: animate-preloader 1s linear infinite;
}
@-webkit-keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    font-size: smaller;
    color: #000000cf;
    font-style: italic;
}
 .modal-dialog.large {
    width: 80% !important;
    max-width: unset;
  }
  .modal-dialog.mid-large {
    width: 50% !important;
    max-width: unset;
  }
  #viewer_modal .btn-close {
    position: absolute;
    z-index: 999999;
    /*right: -4.5em;*/
    background: unset;
    color: white;
    border: unset;
    font-size: 27px;
    top: 0;
}
#viewer_modal .modal-dialog {
        width: 80%;
    max-width: unset;
    height: calc(90%);
    max-height: unset;
}
  #viewer_modal .modal-content {
       background: black;
    border: unset;
    height: calc(100%);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #viewer_modal img,#viewer_modal video{
    max-height: calc(100%);
    max-width: calc(100%);
  }

/* ========================================
   HRM SYSTEM - MINIMAL CUSTOM STYLES
   Using Pure AdminLTE Components
   ======================================== */

/* ---- Login page logo icon ---- */
.login-page .hrm-login-logo {
  font-size: 2.5rem;
  color: #007bff;
  margin-bottom: 0.5rem;
}

/* ---- Section Headings ---- */
.hrm-section-heading {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #007bff;
}

/* ---- Quick Actions Flex Layout ---- */
.hrm-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

/* ---- Filter Form Background ---- */
.hrm-filter-form {
  background: #f4f6f9;
  padding: 1rem;
  border-radius: 0.25rem;
  margin-bottom: 1rem;
}

/* ---- User Chip in Navbar ---- */
.hrm-user-chip {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.5rem;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 1.5rem;
}

.hrm-avatar {
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 0.75rem;
  color: #fff;
  margin-right: 0.5rem;
}

.hrm-user-name {
  color: #fff;
}

/* ---- Sidebar brand link (AdminLTE + icon logo) ---- */
.main-sidebar .brand-link {
  display: flex;
  align-items: center;
  white-space: nowrap;
  overflow: hidden;
}

.main-sidebar .brand-link .brand-image {
  float: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 33px;
  height: 33px;
  max-height: 33px;
  margin-left: 0.5rem;
  margin-right: 0.625rem;
  margin-top: 0;
  font-size: 1.25rem;
  line-height: 1;
  flex-shrink: 0;
}

.main-sidebar .brand-link .brand-text {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Sidebar submenu — prevent label wrap (Verdana is wider than default font) */
.sidebar-dark-primary .nav-treeview > .nav-item > .nav-link > p {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 10rem;
}

/* ---- Sidebar User Avatar ---- */
.sidebar .user-panel .user-avatar {
  width: 2.1rem;
  height: 2.1rem;
  font-size: 1rem;
  color: #fff;
}

/* ---- Responsive Utilities ---- */
@media (max-width: 768px) {
  .hrm-quick-actions {
    flex-direction: column;
  }
  
  .hrm-quick-actions .btn {
    width: 100%;
  }
  
  .hrm-user-chip .hrm-user-name {
    display: none;
  }
}