/* Advoke CV — Cluster Layout (Horizontal Groups) */

.cluster {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--cluster-gap, var(--space-3));
}

.cluster--tight    { --cluster-gap: var(--space-1); }
.cluster--snug     { --cluster-gap: var(--space-2); }
.cluster--normal   { --cluster-gap: var(--space-3); }
.cluster--relaxed  { --cluster-gap: var(--space-4); }
.cluster--loose    { --cluster-gap: var(--space-6); }
.cluster--airy     { --cluster-gap: var(--space-8); }

.cluster--nowrap   { flex-wrap: nowrap; }
.cluster--wrap     { flex-wrap: wrap; }

.cluster--start    { justify-content: flex-start; }
.cluster--center   { justify-content: center; }
.cluster--end      { justify-content: flex-end; }
.cluster--between  { justify-content: space-between; }
.cluster--around   { justify-content: space-around; }
.cluster--evenly   { justify-content: space-evenly; }

.cluster--items-start   { align-items: flex-start; }
.cluster--items-center  { align-items: center; }
.cluster--items-end     { align-items: flex-end; }
.cluster--items-stretch { align-items: stretch; }
.cluster--items-baseline{ align-items: baseline; }

.cluster--full > * {
  flex: 1 1 auto;
}

.cluster--gap-0  { --cluster-gap: 0; }
.cluster--gap-1  { --cluster-gap: var(--space-1); }
.cluster--gap-2  { --cluster-gap: var(--space-2); }
.cluster--gap-3  { --cluster-gap: var(--space-3); }
.cluster--gap-4  { --cluster-gap: var(--space-4); }
.cluster--gap-5  { --cluster-gap: var(--space-5); }
.cluster--gap-6  { --cluster-gap: var(--space-6); }

.chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  width: 100%;
}

@media (min-width: 768px) {
  .chip-row {
    gap: var(--space-3);
  }
}

.toolbar-cluster {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  width: 100%;
}

@media (min-width: 768px) {
  .toolbar-cluster {
    gap: var(--space-4);
  }
}