.acc-menu,
.acc-menu__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.acc-menu__row {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding-inline: 0 40px;
  cursor: pointer;
  color: var(--text-color);
  border-bottom: 1px solid #e5e5e5;
}

@media (hover:hover) {
  .js-acc-toggle:hover {
    background: #f7f7f7;
  }
}

.acc-menu__link {
  --level: 0;
  --step: 16px;

  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  margin-left: calc(var(--level) * var(--step));
  text-decoration: none;
  line-height: 1.4;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-color);
}

@media (hover: hover) {
  .acc-menu__link:hover {
    text-decoration: none;
    color: var(--accent-color);
  }
}

.js-acc-toggle::after {
  content: "";
  position: absolute;
  right: 18px;
  top: 50%;
  width: 15px;
  height: 15px;
  transform: translateY(-50%);
  transform-origin: center;
  background-color: currentColor;
  -webkit-mask: var(--chevron-icon) center / 10px 10px no-repeat;
  mask: var(--chevron-icon) center / 10px 10px no-repeat;
  transition: transform .2s ease;
}

@media (hover: hover) {
  .js-acc-toggle:hover:after {
    color: var(--accent-color);
  }
}

.js-acc-toggle[aria-expanded="true"]::after {
  transform: translateY(-50%) rotate(180deg);
}

.acc-menu__panel[hidden] {
  display: none;
}