
/* bootstrap flex related classes */
.flex-1           { flex: 1; }
.flex       { display: flex; }
.flex-row         { flex-direction: row; }
.flex-column      { flex-direction: column; }
.flex-row-reverse  { flex-direction: row-reverse; }
.flex-column-reverse { flex-direction: column-reverse; }

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

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

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

.align-content-start  { align-content: flex-start; }
.align-content-end    { align-content: flex-end; }
.align-content-center { align-content: center; }
.align-content-between { align-content: space-between; }
.align-content-around  { align-content: space-around; }
.align-content-stretch { align-content: stretch; }

.align-self-auto     { align-self: auto; }
.align-self-start     { align-self: flex-start; }
.align-self-end       { align-self: flex-end; }
.align-self-center    { align-self: center; }
.align-self-baseline  { align-self: baseline; }
.align-self-stretch   { align-self: stretch; }

/* Gap classes */
.gap-0 { gap: 0; }
.gap-1 { gap: 1px; }
.gap-2 { gap: 2px; }
.gap-4 { gap: 4px; }
.gap-8 { gap: 8px; }
.gap-10 { gap: 10px; }
.gap-12 { gap: 12px; }
.gap-16 { gap: 16px; }
.gap-20 { gap: 20px; }
.gap-24 { gap: 24px; }
.gap-32 { gap: 32px; }
.gap-40 { gap: 40px; }
.gap-48 { gap: 48px; }
.gap-56 { gap: 56px; }
.gap-64 { gap: 64px; }

/* Margin classes */
.m-0 { margin: 0; }
.m-1 { margin: 1px; }
.m-2 { margin: 2px; }
.m-4 { margin: 4px; }
.m-8 { margin: 8px; }
.m-10 { margin: 10px; }
.m-12 { margin: 12px; }
.m-16 { margin: 16px; }
.m-20 { margin: 20px; }
.m-24 { margin: 24px; }
.m-32 { margin: 32px; }
.m-40 { margin: 40px; }
.m-48 { margin: 48px; }
.m-56 { margin: 56px; }
.m-64 { margin: 64px; }

/* Padding classes */
.p-0 { padding: 0 !important; }
.p-1 { padding: 1px; }
.p-2 { padding: 2px; }
.p-4 { padding: 4px; }
.p-8 { padding: 8px; }
.p-10 { padding: 10px; }
.p-12 { padding: 12px; }
.p-16 { padding: 16px; }
.p-20 { padding: 20px; }
.p-24 { padding: 24px; }
.p-32 { padding: 32px; }
.p-40 { padding: 40px; }
.p-48 { padding: 48px; }
.p-56 { padding: 56px; }
.p-64 { padding: 64px; }


/* Margin Top classes */
.mt-0 { margin-top: 0; }
.mt-1 { margin-top: 1px; }
.mt-2 { margin-top: 2px; }
.mt-4 { margin-top: 4px; }
.mt-8 { margin-top: 8px; }
.mt-10 { margin-top: 10px; }
.mt-12 { margin-top: 12px; }
.mt-16 { margin-top: 16px; }
.mt-20 { margin-top: 20px; }
.mt-24 { margin-top: 24px; }
.mt-32 { margin-top: 32px; }
.mt-40 { margin-top: 40px; }
.mt-48 { margin-top: 48px; }
.mt-56 { margin-top: 56px; }
.mt-64 { margin-top: 64px; }

/* Margin Bottom classes */
.mb-0 { margin-bottom: 0 !important;}
.mb-1 { margin-bottom: 1px; }
.mb-2 { margin-bottom: 2px; }
.mb-4 { margin-bottom: 4px; }
.mb-8 { margin-bottom: 8px; }
.mb-10 { margin-bottom: 10px; }
.mb-12 { margin-bottom: 12px; }
.mb-16 { margin-bottom: 16px; }
.mb-20 { margin-bottom: 20px; }
.mb-24 { margin-bottom: 24px; }
.mb-32 { margin-bottom: 32px; }
.mb-40 { margin-bottom: 40px; }
.mb-48 { margin-bottom: 48px; }
.mb-56 { margin-bottom: 56px; }
.mb-64 { margin-bottom: 64px; }

/* Margin Left classes */
.ml-0 { margin-left: 0; }
.ml-1 { margin-left: 1px; }
.ml-2 { margin-left: 2px; }
.ml-4 { margin-left: 4px; }
.ml-8 { margin-left: 8px; }
.ml-10 { margin-left: 10px; }
.ml-12 { margin-left: 12px; }
.ml-16 { margin-left: 16px; }
.ml-20 { margin-left: 20px; }
.ml-24 { margin-left: 24px; }
.ml-32 { margin-left: 32px; }
.ml-40 { margin-left: 40px; }
.ml-48 { margin-left: 48px; }
.ml-56 { margin-left: 56px; }
.ml-64 { margin-left: 64px; }

/* Margin Right classes */
.mr-0 { margin-right: 0; }
.mr-1 { margin-right: 1px; }
.mr-2 { margin-right: 2px; }
.mr-4 { margin-right: 4px; }
.mr-8 { margin-right: 8px; }
.mr-10 { margin-right: 10px; }
.mr-12 { margin-right: 12px; }
.mr-16 { margin-right: 16px; }
.mr-20 { margin-right: 20px; }
.mr-24 { margin-right: 24px; }
.mr-32 { margin-right: 32px; }
.mr-40 { margin-right: 40px; }
.mr-48 { margin-right: 48px; }
.mr-56 { margin-right: 56px; }
.mr-64 { margin-right: 64px; }

/* Padding Top classes */
.pt-0 { padding-top: 0; }
.pt-1 { padding-top: 1px; }
.pt-2 { padding-top: 2px; }
.pt-4 { padding-top: 4px; }
.pt-8 { padding-top: 8px; }
.pt-10 { padding-top: 10px; }
.pt-12 { padding-top: 12px; }
.pt-16 { padding-top: 16px; }
.pt-20 { padding-top: 20px; }
.pt-24 { padding-top: 24px; }
.pt-32 { padding-top: 32px; }
.pt-40 { padding-top: 40px; }
.pt-48 { padding-top: 48px; }
.pt-56 { padding-top: 56px; }
.pt-64 { padding-top: 64px; }

/* Padding Bottom classes */
.pb-0 { padding-bottom: 0; }
.pb-1 { padding-bottom: 1px; }
.pb-2 { padding-bottom: 2px; }
.pb-4 { padding-bottom: 4px; }
.pb-8 { padding-bottom: 8px; }
.pb-10 { padding-bottom: 10px; }
.pb-12 { padding-bottom: 12px; }
.pb-16 { padding-bottom: 16px; }
.pb-20 { padding-bottom: 20px; }
.pb-24 { padding-bottom: 24px; }
.pb-32 { padding-bottom: 32px; }
.pb-40 { padding-bottom: 40px; }
.pb-48 { padding-bottom: 48px; }
.pb-56 { padding-bottom: 56px; }
.pb-64 { padding-bottom: 64px; }

/* Padding Left classes */
.pl-0 { padding-left: 0; }
.pl-1 { padding-left: 1px; }
.pl-2 { padding-left: 2px; }
.pl-4 { padding-left: 4px; }
.pl-8 { padding-left: 8px; }
.pl-10 { padding-left: 10px; }
.pl-12 { padding-left: 12px; }
.pl-16 { padding-left: 16px; }
.pl-20 { padding-left: 20px; }
.pl-24 { padding-left: 24px; }
.pl-32 { padding-left: 32px; }
.pl-40 { padding-left: 40px; }
.pl-48 { padding-left: 48px; }
.pl-56 { padding-left: 56px; }
.pl-64 { padding-left: 64px; }

/* Padding Right classes */
.pr-0 { padding-right: 0; }
.pr-1 { padding-right: 1px; }
.pr-2 { padding-right: 2px; }
.pr-4 { padding-right: 4px; }
.pr-8 { padding-right: 8px; }
.pr-10 { padding-right: 10px; }
.pr-12 { padding-right: 12px; }
.pr-16 { padding-right: 16px; }
.pr-20 { padding-right: 20px; }
.pr-24 { padding-right: 24px; }
.pr-32 { padding-right: 32px; }
.pr-40 { padding-right: 40px; }
.pr-48 { padding-right: 48px; }
.pr-56 { padding-right: 56px; }
.pr-64 { padding-right: 64px; }


/* Width classes */
.w-0 { width: 0; }
.w-full { width: 100%; }

/* Text Align classes */
.text-left   { text-align: left; }
.text-center { text-align: center; }
.text-right  { text-align: right; }

/* Text Overflow classes */
.text-ellipsis { text-overflow: ellipsis; }
.text-nowrap   { white-space: nowrap; }

/* Text Truncate classes */
.text-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.text-truncate-2-lines {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* Text Decoration classes */
.text-decoration-none { text-decoration: none; }
.text-decoration-underline { text-decoration: underline; }
.text-decoration-line-through { text-decoration: line-through; }

/* utils classes */
.cursor-pointer { cursor: pointer; }
.cursor-not-allowed { cursor: not-allowed; }