/* UXUI-02 — menu administrativo (escopo: .sgs-shell sem .sgs-public)
 * Carregado somente via adm/topo.php. Nao altera area publica.
 * Seletores derivados de adm/menu.php: .sgs-sidebar, .sgs-group, .sgs-sub,
 * .sgs-label, .sgs-chevron, .sgs-menu-item, a.sgs-active
 */
.sgs-shell:not(.sgs-public) .sgs-sidebar {
  --sgs-admin-menu-bg: #252a30;
  --sgs-admin-menu-text: #dcdcde;
  --sgs-admin-menu-text-strong: #ffffff;
  --sgs-admin-menu-hover: #32373c;
  --sgs-admin-menu-active: #2271b1;
  --sgs-admin-menu-active-bar: #72aee6;
  --sgs-admin-sub-bg: #f0f0f1;
  --sgs-admin-sub-text: #1d2327;
  --sgs-admin-sub-hover: #e2e4e7;
  --sgs-admin-sub-border: #dcdcde;
  --sgs-admin-focus: #ffc107;

  background: var(--sgs-admin-menu-bg);
  color: var(--sgs-admin-menu-text);
  border-right: 1px solid #1d2327;
  padding: 10px 8px 28px;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar > a,
.sgs-shell:not(.sgs-public) .sgs-sidebar > .sgs-group > summary {
  color: var(--sgs-admin-menu-text);
  font-weight: 600;
  padding: 10px 12px;
  margin: 2px 0;
  border-radius: 4px;
  gap: 12px;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar > a:link,
.sgs-shell:not(.sgs-public) .sgs-sidebar > a:visited {
  color: var(--sgs-admin-menu-text);
}

.sgs-shell:not(.sgs-public) .sgs-sidebar > a:hover,
.sgs-shell:not(.sgs-public) .sgs-sidebar > .sgs-group > summary:hover {
  background: var(--sgs-admin-menu-hover);
  color: var(--sgs-admin-menu-text-strong);
}

.sgs-shell:not(.sgs-public) .sgs-sidebar > a:focus-visible,
.sgs-shell:not(.sgs-public) .sgs-sidebar > .sgs-group > summary:focus-visible,
.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub a:focus-visible,
.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub summary:focus-visible {
  outline: 2px solid var(--sgs-admin-focus);
  outline-offset: 2px;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar a.sgs-active {
  background: var(--sgs-admin-menu-active);
  color: var(--sgs-admin-menu-text-strong);
  font-weight: 700;
  box-shadow: inset 4px 0 0 var(--sgs-admin-menu-active-bar);
}

.sgs-shell:not(.sgs-public) .sgs-sidebar > a img,
.sgs-shell:not(.sgs-public) .sgs-sidebar > .sgs-group > summary > img {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  filter: brightness(0) invert(1);
  opacity: 0.95;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar > .sgs-group > summary .sgs-chevron {
  border-color: var(--sgs-admin-menu-text);
  opacity: 0.85;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-group {
  margin: 0 0 4px;
}

/* Submenus: painel claro distinto do menu principal */
.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub {
  display: flex;
  flex-direction: column;
  background: var(--sgs-admin-sub-bg);
  color: var(--sgs-admin-sub-text);
  margin: 4px 4px 10px 8px;
  padding: 8px 6px 10px;
  border-radius: 4px;
  border: 1px solid var(--sgs-admin-sub-border);
  gap: 2px;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub > a,
.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub > .sgs-group-nested > summary {
  color: var(--sgs-admin-sub-text);
  font-weight: 500;
  padding: 10px 10px 10px 12px;
  margin: 0;
  border-radius: 3px;
  border-bottom: 1px solid transparent;
  gap: 10px;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub > a:link,
.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub > a:visited {
  color: var(--sgs-admin-sub-text);
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub > a:hover,
.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub > .sgs-group-nested > summary:hover {
  background: var(--sgs-admin-sub-hover);
  color: #000;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub > a.sgs-active {
  background: #dbeafe;
  color: #0a4b78;
  font-weight: 700;
  box-shadow: inset 3px 0 0 var(--sgs-admin-menu-active);
  border-bottom-color: transparent;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub img {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  filter: none;
  opacity: 0.9;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub .sgs-chevron {
  border-color: #50575e;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub .sgs-group-nested {
  margin: 4px 0;
  padding-top: 2px;
  border-top: 1px solid var(--sgs-admin-sub-border);
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-sub .sgs-group-nested > .sgs-sub {
  margin-left: 8px;
  background: #ffffff;
  border-color: #e0e0e0;
}

.sgs-shell:not(.sgs-public) .sgs-sidebar .sgs-label {
  color: inherit;
}

/* Colapsado: manter contraste dos icones no rail */
html.sgs-is-collapsed .sgs-shell:not(.sgs-public) .sgs-sidebar > a,
html.sgs-is-collapsed .sgs-shell:not(.sgs-public) .sgs-sidebar > .sgs-group > summary {
  justify-content: center;
  padding-left: 8px;
  padding-right: 8px;
}
