.layout {
  min-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.layout.has-sidebar {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}

.layout .header {
  -webkit-transition: width, 0.3s;
  transition: width, 0.3s;
  height: 64px;
  min-height: 64px;
  position: relative;
}

.layout .sidebar {
  width: 280px;
  min-width: 280px;
  transition: all 0.3s ease;
  background-color: var(--bs-body-bg);
}

.layout .sidebar.collapsed,
.sidebar-is-collapsed #sidebar.sidebar {
  width: 80px;
  min-width: 80px;
}

/* Força a ocultação imediata de textos quando o HTML tem a classe de estado */
.sidebar-is-collapsed #sidebar.sidebar .menu-title,
.sidebar-is-collapsed #sidebar.sidebar .menu-header,
.sidebar-is-collapsed #sidebar.sidebar .sidebar-header h5,
.sidebar-is-collapsed #sidebar.sidebar .sidebar-search {
  display: none !important;
}

/* Remove animação inicial para carregar instantâneo */
.sidebar-is-collapsed #sidebar.sidebar {
  transition: none !important;
}

@media (max-width: 480px) {
  .layout .sidebar.break-point-xs {
    position: fixed;
    left: -280px;
    height: 100%;
    top: 0;
    z-index: 100;
  }

  .layout .sidebar.break-point-xs.collapsed {
    left: -80px;
  }

  .layout .sidebar.break-point-xs.toggled {
    left: 0;
  }

  .layout .sidebar.break-point-xs.toggled~.overlay {
    display: block;
  }

  .layout .sidebar.break-point-xs~.layout .header {
    width: 100% !important;
    -webkit-transition: none;
    transition: none;
  }
}

@media (max-width: 576px) {
  .layout .sidebar.break-point-sm {
    position: fixed;
    left: -280px;
    height: 100%;
    top: 0;
    z-index: 100;
  }

  .layout .sidebar.break-point-sm.collapsed {
    left: -280px;
    width: 280px;
    min-width: 280px;
  }

  .layout .sidebar.break-point-sm.toggled {
    left: 0;
  }

  .layout .sidebar.break-point-sm.toggled~.overlay {
    display: block;
  }

  .layout .sidebar.break-point-sm~.layout .header {
    width: 100% !important;
    -webkit-transition: none;
    transition: none;
  }
}

@media (max-width: 768px) {
  .layout .sidebar.break-point-md {
    position: fixed;
    left: -280px;
    height: 100%;
    top: 0;
    z-index: 100;
  }

  .layout .sidebar.break-point-md.collapsed {
    left: -80px;
  }

  .layout .sidebar.break-point-md.toggled {
    left: 0;
  }

  .layout .sidebar.break-point-md.toggled~.overlay {
    display: block;
  }

  .layout .sidebar.break-point-md~.layout .header {
    width: 100% !important;
    -webkit-transition: none;
    transition: none;
  }
}

@media (max-width: 992px) {
  .layout .sidebar.break-point-lg {
    position: fixed;
    left: -280px;
    height: 100%;
    top: 0;
    z-index: 100;
  }

  .layout .sidebar.break-point-lg.collapsed {
    left: -80px;
  }

  .layout .sidebar.break-point-lg.toggled {
    left: 0;
  }

  .layout .sidebar.break-point-lg.toggled~.overlay {
    display: block;
  }

  .layout .sidebar.break-point-lg~.layout .header {
    width: 100% !important;
    -webkit-transition: none;
    transition: none;
  }
}

@media (max-width: 1200px) {
  .layout .sidebar.break-point-xl {
    position: fixed;
    left: -280px;
    height: 100%;
    top: 0;
    z-index: 100;
  }

  .layout .sidebar.break-point-xl.collapsed {
    left: -80px;
  }

  .layout .sidebar.break-point-xl.toggled {
    left: 0;
  }

  .layout .sidebar.break-point-xl.toggled~.overlay {
    display: block;
  }

  .layout .sidebar.break-point-xl~.layout .header {
    width: 100% !important;
    -webkit-transition: none;
    transition: none;
  }
}

@media (max-width: 1600px) {
  .layout .sidebar.break-point-xxl {
    position: fixed;
    left: -280px;
    height: 100%;
    top: 0;
    z-index: 100;
  }

  .layout .sidebar.break-point-xxl.collapsed {
    left: -80px;
  }

  .layout .sidebar.break-point-xxl.toggled {
    left: 0;
  }

  .layout .sidebar.break-point-xxl.toggled~.overlay {
    display: block;
  }

  .layout .sidebar.break-point-xxl~.layout .header {
    width: 100% !important;
    -webkit-transition: none;
    transition: none;
  }
}

.layout .footer {
  height: 64px;
  min-height: 64px;
}

.layout .content {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.layout .overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 99;
  display: none;
}

.layout .sidebar-toggler {
  display: none;
}

@media (max-width: 480px) {
  .layout .sidebar-toggler.break-point-xs {
    display: initial;
  }
}

@media (max-width: 576px) {
  .layout .sidebar-toggler.break-point-sm {
    display: initial;
  }
}

@media (max-width: 768px) {
  .layout .sidebar-toggler.break-point-md {
    display: initial;
  }
}

@media (max-width: 992px) {
  .layout .sidebar-toggler.break-point-lg {
    display: initial;
  }
}

@media (max-width: 1200px) {
  .layout .sidebar-toggler.break-point-xl {
    display: initial;
  }
}

@media (max-width: 1600px) {
  .layout .sidebar-toggler.break-point-xxl {
    display: initial;
  }
}

.layout.fixed-sidebar {
  height: 100%;
}

.layout.fixed-sidebar .sidebar {
  height: 100%;
  overflow: auto;
}

.layout.fixed-sidebar .sidebar~.layout {
  height: 100%;
  overflow: auto;
}

.layout.fixed-header .header {
  position: fixed;
  width: 100%;
  z-index: 2;
}

.layout.fixed-header .header~.layout,
.layout.fixed-header .header~.content {
  margin-top: 64px;
}

.layout.fixed-header.fixed-sidebar .header {
  width: calc(100% - 280px);
  background-color: var(--bs-body-bg);
  border-bottom: 1px solid var(--bs-border-color);
  backdrop-filter: blur(8px);
}

.layout.fixed-header.fixed-sidebar .sidebar.collapsed~.layout .header,
.sidebar-is-collapsed .layout.fixed-header.fixed-sidebar .sidebar~.layout .header {
  width: calc(100% - 80px);
  transition: none !important;
}

.layout.rtl {
  direction: rtl;
}

@media (max-width: 480px) {
  .layout.rtl .sidebar.break-point-xs {
    left: auto;
    right: -280px;
  }

  .layout.rtl .sidebar.break-point-xs.collapsed {
    left: auto;
    right: -80px;
  }

  .layout.rtl .sidebar.break-point-xs.toggled {
    left: auto;
    right: 0;
  }
}

@media (max-width: 576px) {
  .layout.rtl .sidebar.break-point-sm {
    left: auto;
    right: -280px;
  }

  .layout.rtl .sidebar.break-point-sm.collapsed {
    left: auto;
    right: -80px;
  }

  .layout.rtl .sidebar.break-point-sm.toggled {
    left: auto;
    right: 0;
  }
}

@media (max-width: 768px) {
  .layout.rtl .sidebar.break-point-md {
    left: auto;
    right: -280px;
  }

  .layout.rtl .sidebar.break-point-md.collapsed {
    left: auto;
    right: -80px;
  }

  .layout.rtl .sidebar.break-point-md.toggled {
    left: auto;
    right: 0;
  }
}

@media (max-width: 992px) {
  .layout.rtl .sidebar.break-point-lg {
    left: auto;
    right: -280px;
  }

  .layout.rtl .sidebar.break-point-lg.collapsed {
    left: auto;
    right: -80px;
  }

  .layout.rtl .sidebar.break-point-lg.toggled {
    left: auto;
    right: 0;
  }
}

@media (max-width: 1200px) {
  .layout.rtl .sidebar.break-point-xl {
    left: auto;
    right: -280px;
  }

  .layout.rtl .sidebar.break-point-xl.collapsed {
    left: auto;
    right: -80px;
  }

  .layout.rtl .sidebar.break-point-xl.toggled {
    left: auto;
    right: 0;
  }
}

@media (max-width: 1600px) {
  .layout.rtl .sidebar.break-point-xxl {
    left: auto;
    right: -280px;
  }

  .layout.rtl .sidebar.break-point-xxl.collapsed {
    left: auto;
    right: -80px;
  }

  .layout.rtl .sidebar.break-point-xxl.toggled {
    left: auto;
    right: 0;
  }
}

.ri-menu-unfold-4-line{
  font-size: small;
}

/* -- Sidebar Search Box -- */
.sidebar-search .input-group {
  background: rgba(255, 255, 255, 0.15) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(var(--bs-body-color-rgb), 0.15) !important;
  border-radius: 50px !important;
  overflow: hidden;
  box-shadow: none !important;
  min-height: 32px; /* Altura reduzida */
}

.sidebar-search .input-group-text {
  background-color: transparent !important;
  border: none !important;
  padding-left: 12px !important;
  padding-right: 4px !important;
  font-size: 0.9rem;
}

.sidebar-search .form-control {
  background-color: transparent !important;
  border: none !important;
  font-size: 0.85rem !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  height: 32px !important;
}

.sidebar-search .form-control:focus {
  outline: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
}
