
/*!
 * Bootstrap 5 Compatibility Utilities for Bootstrap 3.x
 * Version: 1.0
 * Purpose: Common Bootstrap 5 utility classes without migrating from BS3.
 */

/* =========================================================
   SPACING
   ========================================================= */

:root{
  --bs-spacer:.25rem;
}

/* Margin */
.m-0{margin:0!important;}
.m-1{margin:.25rem!important;}
.m-2{margin:.5rem!important;}
.m-3{margin:1rem!important;}
.m-4{margin:1.5rem!important;}
.m-5{margin:3rem!important;}

.mt-0{margin-top:0!important;}
.mt-1{margin-top:.25rem!important;}
.mt-2{margin-top:.5rem!important;}
.mt-3{margin-top:1rem!important;}
.mt-4{margin-top:1.5rem!important;}
.mt-5{margin-top:3rem!important;}

.mb-0{margin-bottom:0!important;}
.mb-1{margin-bottom:.25rem!important;}
.mb-2{margin-bottom:.5rem!important;}
.mb-3{margin-bottom:1rem!important;}
.mb-4{margin-bottom:1.5rem!important;}
.mb-5{margin-bottom:3rem!important;}

.ms-0{margin-left:0!important;}
.ms-1{margin-left:.25rem!important;}
.ms-2{margin-left:.5rem!important;}
.ms-3{margin-left:1rem!important;}
.ms-4{margin-left:1.5rem!important;}
.ms-5{margin-left:3rem!important;}

.me-0{margin-right:0!important;}
.me-1{margin-right:.25rem!important;}
.me-2{margin-right:.5rem!important;}
.me-3{margin-right:1rem!important;}
.me-4{margin-right:1.5rem!important;}
.me-5{margin-right:3rem!important;}

.mx-auto{margin-left:auto!important;margin-right:auto!important;}
.ms-auto{margin-left:auto!important;}
.me-auto{margin-right:auto!important;}

.mx-0{margin-left:0!important;margin-right:0!important;}
.mx-1{margin-left:.25rem!important;margin-right:.25rem!important;}
.mx-2{margin-left:.5rem!important;margin-right:.5rem!important;}
.mx-3{margin-left:1rem!important;margin-right:1rem!important;}
.mx-4{margin-left:1.5rem!important;margin-right:1.5rem!important;}
.mx-5{margin-left:3rem!important;margin-right:3rem!important;}

.my-0{margin-top:0!important;margin-bottom:0!important;}
.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important;}
.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important;}
.my-3{margin-top:1rem!important;margin-bottom:1rem!important;}
.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important;}
.my-5{margin-top:3rem!important;margin-bottom:3rem!important;}

/* Padding */
.p-0{padding:0!important;}
.p-1{padding:.25rem!important;}
.p-2{padding:.5rem!important;}
.p-3{padding:1rem!important;}
.p-4{padding:1.5rem!important;}
.p-5{padding:3rem!important;}

.pt-0{padding-top:0!important;}
.pt-1{padding-top:.25rem!important;}
.pt-2{padding-top:.5rem!important;}
.pt-3{padding-top:1rem!important;}
.pt-4{padding-top:1.5rem!important;}
.pt-5{padding-top:3rem!important;}

.pb-0{padding-bottom:0!important;}
.pb-1{padding-bottom:.25rem!important;}
.pb-2{padding-bottom:.5rem!important;}
.pb-3{padding-bottom:1rem!important;}
.pb-4{padding-bottom:1.5rem!important;}
.pb-5{padding-bottom:3rem!important;}

.ps-0{padding-left:0!important;}
.ps-1{padding-left:.25rem!important;}
.ps-2{padding-left:.5rem!important;}
.ps-3{padding-left:1rem!important;}
.ps-4{padding-left:1.5rem!important;}
.ps-5{padding-left:3rem!important;}

.pe-0{padding-right:0!important;}
.pe-1{padding-right:.25rem!important;}
.pe-2{padding-right:.5rem!important;}
.pe-3{padding-right:1rem!important;}
.pe-4{padding-right:1.5rem!important;}
.pe-5{padding-right:3rem!important;}

.py-0{padding-top:0!important;padding-bottom:0!important;}
.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important;}
.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important;}
.py-3{padding-top:1rem!important;padding-bottom:1rem!important;}
.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important;}
.py-5{padding-top:3rem!important;padding-bottom:3rem!important;}

.px-0{padding-left:0!important;padding-right:0!important;}
.px-1{padding-left:.25rem!important;padding-right:.25rem!important;}
.px-2{padding-left:.5rem!important;padding-right:.5rem!important;}
.px-3{padding-left:1rem!important;padding-right:1rem!important;}
.px-4{padding-left:1.5rem!important;padding-right:1.5rem!important;}
.px-5{padding-left:3rem!important;padding-right:3rem!important;}

/* Display */
.d-none{display:none!important;}
.d-block{display:block!important;}
.d-inline{display:inline!important;}
.d-inline-block{display:inline-block!important;}
.d-flex{display:flex!important;}
.d-inline-flex{display:inline-flex!important;}

/* Flex */
.flex-row{flex-direction:row!important;}
.flex-column{flex-direction:column!important;}
.flex-wrap{flex-wrap:wrap!important;}
.flex-nowrap{flex-wrap:nowrap!important;}

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

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

.gap-0{gap:0!important;}
.gap-1{gap:.25rem!important;}
.gap-2{gap:.5rem!important;}
.gap-3{gap:1rem!important;}
.gap-4{gap:1.5rem!important;}
.gap-5{gap:3rem!important;}

/* Width / Height */
.w-25{width:25%!important;}
.w-50{width:50%!important;}
.w-75{width:75%!important;}
.w-100{width:100%!important;}
.h-25{height:25%!important;}
.h-50{height:50%!important;}
.h-75{height:75%!important;}
.h-100{height:100%!important;}
.vh-100{height:100vh!important;}

/* Text */
.text-start{text-align:left!important;}
.text-center{text-align:center!important;}
.text-end{text-align:right!important;}
.text-nowrap{white-space:nowrap!important;}
.text-break{word-break:break-word!important;}

/* Font weight */
.fw-light{font-weight:300!important;}
.fw-normal{font-weight:400!important;}
.fw-semibold{font-weight:600!important;}
.fw-bold{font-weight:700!important;}

/* Rounded */
.rounded{border-radius:.375rem!important;}
.rounded-0{border-radius:0!important;}
.rounded-1{border-radius:.25rem!important;}
.rounded-2{border-radius:.5rem!important;}
.rounded-3{border-radius:1rem!important;}
.rounded-circle{border-radius:50%!important;}
.rounded-pill{border-radius:50rem!important;}

/* Shadows */
.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important;}
.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important;}
.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.25)!important;}
.shadow-none{box-shadow:none!important;}

/* Position */
.position-static{position:static!important;}
.position-relative{position:relative!important;}
.position-absolute{position:absolute!important;}
.position-fixed{position:fixed!important;}

.top-0{top:0!important;}
.bottom-0{bottom:0!important;}
.start-0{left:0!important;}
.end-0{right:0!important;}

/* Overflow */
.overflow-hidden{overflow:hidden!important;}
.overflow-auto{overflow:auto!important;}
.overflow-visible{overflow:visible!important;}

/* Cursor */
.cursor-pointer{cursor:pointer!important;}

/* Opacity */
.opacity-0{opacity:0!important;}
.opacity-25{opacity:.25!important;}
.opacity-50{opacity:.5!important;}
.opacity-75{opacity:.75!important;}
.opacity-100{opacity:1!important;}

/* Z-index */
.z-0{z-index:0!important;}
.z-1{z-index:1!important;}
.z-10{z-index:10!important;}
.z-100{z-index:100!important;}
.z-1000{z-index:1000!important;}

/* Responsive display helpers */
@media (max-width:767px){
 .d-xs-none{display:none!important;}
 .d-xs-block{display:block!important;}
}
@media (min-width:768px){
 .d-sm-none{display:none!important;}
 .d-sm-block{display:block!important;}
}
@media (min-width:992px){
 .d-md-none{display:none!important;}
 .d-md-block{display:block!important;}
}
@media (min-width:1200px){
 .d-lg-none{display:none!important;}
 .d-lg-block{display:block!important;}
}
