/**
 * Spacing utilities driven by design tokens (--ws-space-*).
 */
.ws-m-xs { margin: var(--ws-space-xs); }
.ws-m-s { margin: var(--ws-space-s); }
.ws-m-m { margin: var(--ws-space-m); }
.ws-m-l { margin: var(--ws-space-l); }
.ws-m-xl { margin: var(--ws-space-xl); }
.ws-m-xxl { margin: var(--ws-space-xxl); }

.ws-mt-xs { margin-top: var(--ws-space-xs); }
.ws-mt-s { margin-top: var(--ws-space-s); }
.ws-mt-m { margin-top: var(--ws-space-m); }
.ws-mt-l { margin-top: var(--ws-space-l); }
.ws-mt-xl { margin-top: var(--ws-space-xl); }
.ws-mt-xxl { margin-top: var(--ws-space-xxl); }

.ws-mb-xs { margin-bottom: var(--ws-space-xs); }
.ws-mb-s { margin-bottom: var(--ws-space-s); }
.ws-mb-m { margin-bottom: var(--ws-space-m); }
.ws-mb-l { margin-bottom: var(--ws-space-l); }
.ws-mb-xl { margin-bottom: var(--ws-space-xl); }
.ws-mb-xxl { margin-bottom: var(--ws-space-xxl); }

.ws-p-xs { padding: var(--ws-space-xs); }
.ws-p-s { padding: var(--ws-space-s); }
.ws-p-m { padding: var(--ws-space-m); }
.ws-p-l { padding: var(--ws-space-l); }
.ws-p-xl { padding: var(--ws-space-xl); }
.ws-p-xxl { padding: var(--ws-space-xxl); }

.ws-gap-xs { gap: var(--ws-space-xs); }
.ws-gap-s { gap: var(--ws-space-s); }
.ws-gap-m { gap: var(--ws-space-m); }
.ws-gap-l { gap: var(--ws-space-l); }
.ws-gap-xl { gap: var(--ws-space-xl); }
.ws-gap-xxl { gap: var(--ws-space-xxl); }
