.body-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}

.body-card {
  min-height: 86px;
  padding: 11px 9px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fbfcf9;
  text-align: center;
  transition: border-color .18s, background .18s, transform .18s;
}

.body-card:hover,
.body-card.selected {
  border-color: var(--ink);
  background: #fff;
  transform: translateY(-1px);
}

.body-card .icon {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  margin: 0 auto 8px;
  border: 1px solid #bdc8bb;
  border-radius: 50%;
  background: #f2f5ed;
}

.line-icon {
  width: 19px;
  height: 19px;
  stroke: var(--ink);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
}

.card-label {
  font-size: 13px;
  font-weight: 700;
}

.action-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}

.action-card {
  position: relative;
  width: 100%;
  min-width: 0;
  height: 100%;
  min-height: 78px;
  padding: 11px 10px 9px;
  border-radius: 14px;
  border-color: var(--line);
  background: #fbfcf9;
  transition: border-color .18s, background .18s, transform .18s;
}

.action-card:hover {
  border-color: var(--ink);
  background: #fff;
  transform: translateY(-1px);
}

.action-card .action-icon {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  margin-bottom: 7px;
  border-radius: 8px;
  background: #e8eee1;
}

.action-card .line-icon {
  width: 15px;
  height: 15px;
}

.action-line-icon {
  width: 17px;
  height: 17px;
  stroke: var(--ink);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.65;
}

.more-actions .action-icon {
  background: #f0f4ea;
}

.more-actions .action-line-icon {
  stroke: #647d4d;
}

.action-card .action-name {
  display: block;
  font-size: 13px;
  line-height: 1.25;
}

.action-card small {
  margin-top: 4px;
  font-size: 10px;
}

.other-action .plus-icon {
  color: var(--ink);
  font-size: 19px;
  font-weight: 400;
}

@media (max-width: 560px) {
  .body-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .action-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 390px) {
  .body-card {
    min-height: 80px;
  }
}
