/* Medidas do navbar-vertical/navbar-expand-xl do Phoenix v1.24.0.
   Fonte local e regras limitadas ao menu para manter as páginas existentes. */
@font-face {
  font-family: 'Khor Menu Nunito Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/nunito-sans-600.ttf') format('truetype');
}
@font-face {
  font-family: 'Khor Menu Nunito Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/nunito-sans-700.ttf') format('truetype');
}
.sidebar {
  width: 15.875rem;
  padding: 0;
  font-family: 'Khor Menu Nunito Sans', sans-serif;
  color: var(--phoenix-navbar-vertical-link-color);
}
.sidebar .brand {
  flex-shrink: 0;
  height: 5rem;
  width: auto;
  margin: 0;
  padding: 1rem 2rem;
}
.sidebar .brand-image {max-height: 3rem; width: auto; max-width: 100%;}
.sidebar nav {padding-bottom: 1rem;}
.sidebar .nav-caption {
  font-size: .64rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: normal;
  text-transform: uppercase;
  color: var(--phoenix-navbar-vertical-label-color);
  margin: 1.5rem 0 .5rem;
  padding-left: 2rem;
}
.sidebar .nav-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: .625rem;
  margin: 0 .75rem;
  padding: .35rem .5rem .35rem 1.75rem;
  border-radius: .5rem;
  font-size: .8rem;
  font-weight: 600;
  line-height: 1.188rem;
  white-space: nowrap;
  color: var(--phoenix-navbar-vertical-link-color);
  background: transparent;
  text-decoration: none;
}
.sidebar .nav-item > svg.feather {width: 16px; height: 16px; stroke-width: 2;}
.sidebar .nav-label {padding-top: .125rem;}
.sidebar .nav-item:hover {
  color: var(--phoenix-navbar-vertical-link-hover-color);
  background: var(--phoenix-navbar-vertical-link-hover-bg);
}
.sidebar .nav-item.active {color: var(--phoenix-navbar-vertical-link-active-color);}
.sidebar .nav-item:focus-visible {outline-offset: -2px;}
.sidebar .nav-catalogs summary {padding-left: 1.75rem;}
.sidebar .catalog-chevron {
  position: absolute;
  left: .75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  margin: 0;
  color: var(--phoenix-navbar-vertical-dropdown-indicator-color);
  transform: none;
}
.sidebar .catalog-chevron svg {width: .8rem; height: .8rem; transition: transform .2s;}
.sidebar .nav-catalogs[open] .catalog-chevron svg {transform: rotate(90deg);}
.sidebar .nav-catalogs:not([open]):has(.active) summary {color: var(--phoenix-navbar-vertical-link-active-color);}
.sidebar .catalog-submenu {padding: 0;}
.sidebar .catalog-submenu .nav-item {padding-left: 3.3125rem; font-size: .8125rem;}
.sidebar .catalog-submenu .nav-label {padding-left: 15px;}
.sidebar .catalog-submenu .nav-item > svg {display: none;}
.sidebar .sidebar-collapse {
  flex-shrink: 0;
  min-height: 4rem;
  margin-top: auto;
  padding: 0 2rem;
  justify-content: flex-start;
  gap: 1rem;
  border: 0;
  border-top: 1px solid var(--phoenix-navbar-vertical-border-color);
  border-radius: 0;
  font-size: .8rem;
  font-weight: 600;
  color: var(--phoenix-navbar-vertical-link-color);
}
.sidebar .sidebar-collapse:hover {background: var(--phoenix-navbar-vertical-link-hover-bg);}
.sidebar .sidebar-collapse svg {width: 16px; height: 16px;}
@media (min-width: 801px) {
  .app-shell {margin-left: 15.875rem;}
  .sidebar-collapsed .sidebar {width: 4rem; padding: 0;}
  .sidebar-collapsed .app-shell {margin-left: 4rem;}
  .sidebar-collapsed .sidebar .brand {padding: .75rem; margin: 0 0 1rem;}
  .sidebar-collapsed .sidebar .nav-item {margin: 0 .5rem; padding: .5rem 0; justify-content: center;}
  .sidebar-collapsed .sidebar .catalog-chevron {display: none;}
  .sidebar-collapsed .sidebar .catalog-submenu .nav-item > svg {display: block;}
  .sidebar-collapsed .sidebar .sidebar-collapse {padding: 0; justify-content: center;}
}
@media (max-width: 800px) {
  .sidebar {max-width: calc(100vw - 3rem);}
}
.sidebar .nav-catalogs[open] .catalog-chevron {transform: none;}
