<template><svg aria-hidden="true" :fill="color" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path d="M18.02 4.5q.054 0 .11.006l.023.002q.009 0 .018.002l.042.004.05.01.06.012.041.009 24 6A1.5 1.5 0 0 1 43.5 12v4a1.5 1.5 0 0 1-1.5 1.5h-4v3.674A2.998 2.998 0 0 1 37 27a3 3 0 0 1-3-3 1 1 0 0 1 1.995-.103l.01.205a1 1 0 1 0 1.098-1.097l-.206-.01a1 1 0 0 1-.093-.016l-.032-.007-.069-.017-.015-.005-.07-.025-.055-.026-.023-.012a1 1 0 0 1-.087-.05l-.032-.023-.05-.038-.017-.014-.048-.044-.032-.033-.024-.025a1 1 0 0 1-.093-.123l-.02-.033-.023-.04-.018-.04A1 1 0 0 1 36 22v-4.5H19.5v23H30V38h-1a1 1 0 0 1 0-2h1v-2h-1a1 1 0 0 1 0-2h1v-1a1 1 0 0 1 2 0v1h2v-1a1 1 0 0 1 2 0v1h2v-1a1 1 0 0 1 2 0v1h1a1 1 0 0 1 0 2h-1v2h1a1 1 0 0 1 0 2h-1v2.5h2a1.5 1.5 0 0 1 0 3H6a1.5 1.5 0 0 1 0-3h4.5v-23H6a1.5 1.5 0 0 1-1.286-2.272L10.732 5.2q.017-.027.037-.054l.03-.045a1.5 1.5 0 0 1 .644-.493l.019-.008q.098-.037.202-.06.022-.006.046-.01l.066-.012.069-.01.06-.003q.034-.003.07-.004h6.045Zm-4.52 36h1.586L13.5 38.914zm18.5 0h2V38h-2zm4 0h2V38h-2zm-22.5-4.586v.172l3 3v-6.172zM32 36h2v-2h-2zm4 0h2v-2h-2zm-22.5-2.914 3-3v-.172l-3-3zm0-9.172v.172l3 3v-6.172zm0-2.828 3-3V17.5h-3zM8.65 14.5h1.85v-3.085zm4.85 0h3v-7h-3zm6 0h21v-1.33l-21-5.25z"/></svg></template>
<script setup lang="ts">
/**
 * ConstructionSite48 is an SVG icon wrapped in a Vue component to make it easier to use.
 */
withDefaults(
  defineProps<{
    /**
     * Define the color of the icon.
     */
    color?: string;
  }>(),
  {
    color: 'currentColor',
  },
);
</script>
