.vibecheck-wrap { margin-bottom: 12px; }

.vibecheck-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 6px;
}

.vibecheck-title {
  font-size: 10.5px;
  color: var(--colour-text-muted);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.6px;
}

.vibecheck-label {
  font-size: 12px;
  font-weight: 600;
}

.vibecheck-bar-bg {
  height: 5px;
  background: var(--colour-surface2);
  border-radius: var(--radius-pill);
  overflow: hidden;
}

.vibecheck-bar-fill {
  height: 100%;
  border-radius: var(--radius-pill);
  transition: width 1s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Capacity bands */
.vc-quiet  .vibecheck-bar-fill  { background: var(--colour-quiet); }
.vc-quiet  .vibecheck-label     { color: var(--colour-quiet); }

.vc-busy   .vibecheck-bar-fill  { background: var(--colour-busy); }
.vc-busy   .vibecheck-label     { color: var(--colour-busy); }

.vc-lively .vibecheck-bar-fill  { background: var(--colour-lively); }
.vc-lively .vibecheck-label     { color: var(--colour-lively); }

.vc-packed .vibecheck-bar-fill  { background: var(--colour-packed); }
.vc-packed .vibecheck-label     { color: var(--colour-packed); }

.vc-nodata .vibecheck-bar-fill  { background: var(--colour-surface2); }
.vc-nodata .vibecheck-label     { color: var(--colour-text-faint); }

/* Larger bar on detail page */
.vibecheck-lg .vibecheck-bar-bg  { height: 7px; }
.vibecheck-lg .vibecheck-title   { font-size: 12px; }
.vibecheck-lg .vibecheck-label   { font-size: 14px; }
