/* --- Variables de base --- */
:root {
  --spacer: 1rem;
}

/* --- MARGINS (m-) --- */
.m-0 { margin: 0 !important; }
.m-1 { margin: calc(var(--spacer) * 0.25) !important; }
.m-2 { margin: calc(var(--spacer) * 0.5) !important; }
.m-3 { margin: var(--spacer) !important; }
.m-4 { margin: calc(var(--spacer) * 1.5) !important; }
.m-5 { margin: calc(var(--spacer) * 3) !important; }
.m-auto { margin: auto !important; }

/* Marges Axes (x, y) */
.mx-0 { margin-right: 0 !important; margin-left: 0 !important; }
.mx-1 { margin-right: calc(var(--spacer) * 0.25) !important; margin-left: calc(var(--spacer) * 0.25) !important; }
.mx-2 { margin-right: calc(var(--spacer) * 0.5) !important; margin-left: calc(var(--spacer) * 0.5) !important; }
.mx-3 { margin-right: var(--spacer) !important; margin-left: var(--spacer) !important; }
.mx-4 { margin-right: calc(var(--spacer) * 1.5) !important; margin-left: calc(var(--spacer) * 1.5) !important; }
.mx-5 { margin-right: calc(var(--spacer) * 3) !important; margin-left: calc(var(--spacer) * 3) !important; }
.mx-auto { margin-right: auto !important; margin-left: auto !important; }

.my-0 { margin-top: 0 !important; margin-bottom: 0 !important; }
.my-1 { margin-top: calc(var(--spacer) * 0.25) !important; margin-bottom: calc(var(--spacer) * 0.25) !important; }
.my-2 { margin-top: calc(var(--spacer) * 0.5) !important; margin-bottom: calc(var(--spacer) * 0.5) !important; }
.my-3 { margin-top: var(--spacer) !important; margin-bottom: var(--spacer) !important; }
.my-4 { margin-top: calc(var(--spacer) * 1.5) !important; margin-bottom: calc(var(--spacer) * 1.5) !important; }
.my-5 { margin-top: calc(var(--spacer) * 3) !important; margin-bottom: calc(var(--spacer) * 3) !important; }

/* Marges Côtés (t, b, s, e) */
.mt-0 { margin-top: 0 !important; } .mt-1 { margin-top: calc(var(--spacer) * 0.25) !important; } .mt-2 { margin-top: calc(var(--spacer) * 0.5) !important; } .mt-3 { margin-top: var(--spacer) !important; } .mt-4 { margin-top: calc(var(--spacer) * 1.5) !important; } .mt-5 { margin-top: calc(var(--spacer) * 3) !important; }
.mb-0 { margin-bottom: 0 !important; } .mb-1 { margin-bottom: calc(var(--spacer) * 0.25) !important; } .mb-2 { margin-bottom: calc(var(--spacer) * 0.5) !important; } .mb-3 { margin-bottom: var(--spacer) !important; } .mb-4 { margin-bottom: calc(var(--spacer) * 1.5) !important; } .mb-5 { margin-bottom: calc(var(--spacer) * 3) !important; }
.ms-0 { margin-left: 0 !important; } .ms-1 { margin-left: calc(var(--spacer) * 0.25) !important; } .ms-2 { margin-left: calc(var(--spacer) * 0.5) !important; } .ms-3 { margin-left: var(--spacer) !important; } .ms-4 { margin-left: calc(var(--spacer) * 1.5) !important; } .ms-5 { margin-left: calc(var(--spacer) * 3) !important; }
.me-0 { margin-right: 0 !important; } .me-1 { margin-right: calc(var(--spacer) * 0.25) !important; } .me-2 { margin-right: calc(var(--spacer) * 0.5) !important; } .me-3 { margin-right: var(--spacer) !important; } .me-4 { margin-right: calc(var(--spacer) * 1.5) !important; } .me-5 { margin-right: calc(var(--spacer) * 3) !important; }

/* --- PADDING (p-) --- */
.p-0 { padding: 0 !important; }
.p-1 { padding: calc(var(--spacer) * 0.25) !important; }
.p-2 { padding: calc(var(--spacer) * 0.5) !important; }
.p-3 { padding: var(--spacer) !important; }
.p-4 { padding: calc(var(--spacer) * 1.5) !important; }
.p-5 { padding: calc(var(--spacer) * 3) !important; }

/* Padding Axes (x, y) */
.px-0 { padding-right: 0 !important; padding-left: 0 !important; }
.px-1 { padding-right: calc(var(--spacer) * 0.25) !important; padding-left: calc(var(--spacer) * 0.25) !important; }
.px-2 { padding-right: calc(var(--spacer) * 0.5) !important; padding-left: calc(var(--spacer) * 0.5) !important; }
.px-3 { padding-right: var(--spacer) !important; padding-left: var(--spacer) !important; }
.px-4 { padding-right: calc(var(--spacer) * 1.5) !important; padding-left: calc(var(--spacer) * 1.5) !important; }
.px-5 { padding-right: calc(var(--spacer) * 3) !important; padding-left: calc(var(--spacer) * 3) !important; }

.py-0 { padding-top: 0 !important; padding-bottom: 0 !important; }
.py-1 { padding-top: calc(var(--spacer) * 0.25) !important; padding-bottom: calc(var(--spacer) * 0.25) !important; }
.py-2 { padding-top: calc(var(--spacer) * 0.5) !important; padding-bottom: calc(var(--spacer) * 0.5) !important; }
.py-3 { padding-top: var(--spacer) !important; padding-bottom: var(--spacer) !important; }
.py-4 { padding-top: calc(var(--spacer) * 1.5) !important; padding-bottom: calc(var(--spacer) * 1.5) !important; }
.py-5 { padding-top: calc(var(--spacer) * 3) !important; padding-bottom: calc(var(--spacer) * 3) !important; }

/* Padding Côtés (t, b, s, e) */
.pt-0 { padding-top: 0 !important; } .pt-1 { padding-top: calc(var(--spacer) * 0.25) !important; } .pt-2 { padding-top: calc(var(--spacer) * 0.5) !important; } .pt-3 { padding-top: var(--spacer) !important; } .pt-4 { padding-top: calc(var(--spacer) * 1.5) !important; } .pt-5 { padding-top: calc(var(--spacer) * 3) !important; }
.pb-0 { padding-bottom: 0 !important; } .pb-1 { padding-bottom: calc(var(--spacer) * 0.25) !important; } .pb-2 { padding-bottom: calc(var(--spacer) * 0.5) !important; } .pb-3 { padding-bottom: var(--spacer) !important; } .pb-4 { padding-bottom: calc(var(--spacer) * 1.5) !important; } .pb-5 { padding-bottom: calc(var(--spacer) * 3) !important; }
.ps-0 { padding-left: 0 !important; } .ps-1 { padding-left: calc(var(--spacer) * 0.25) !important; } .ps-2 { padding-left: calc(var(--spacer) * 0.5) !important; } .ps-3 { padding-left: var(--spacer) !important; } .ps-4 { padding-left: calc(var(--spacer) * 1.5) !important; } .ps-5 { padding-left: calc(var(--spacer) * 3) !important; }
.pe-0 { padding-right: 0 !important; } .pe-1 { padding-right: calc(var(--spacer) * 0.25) !important; } .pe-2 { padding-right: calc(var(--spacer) * 0.5) !important; } .pe-3 { padding-right: var(--spacer) !important; } .pe-4 { padding-right: calc(var(--spacer) * 1.5) !important; } .pe-5 { padding-right: calc(var(--spacer) * 3) !important; }