/* Bootstrap 5 compatibility helpers for legacy storefront markup */

/* Legacy spacing aliases kept during BS4->BS5 transition */
.ml-0 { margin-left: 0 !important; }
.ml-1 { margin-left: .25rem !important; }
.ml-2 { margin-left: .5rem !important; }
.ml-3 { margin-left: 1rem !important; }
.ml-4 { margin-left: 1.5rem !important; }
.ml-5 { margin-left: 3rem !important; }
.ml-auto { margin-left: auto !important; }

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

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

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

.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.float-left { float: left !important; }
.float-right { float: right !important; }
.btn-block { display: block; width: 100%; }
.font-weight-normal { font-weight: 400 !important; }
.font-weight-bold { font-weight: 700 !important; }
.font-weight-light { font-weight: 300 !important; }

/* Legacy modal close button visuals */
.close {
  background: transparent;
  border: 0;
  font-size: 1.5rem;
  line-height: 1;
  color: #000;
  opacity: .6;
  padding: 0;
}

.close:hover,
.close:focus {
  opacity: 1;
}

/* Cookie banner moved out of inline style */
.alerta {
  background-color: #060d54;
  color: #fff;
  padding: 15px;
  font-family: Arial, sans-serif;
  text-align: center;
  position: fixed;
  bottom: 0;
  width: 100%;
  opacity: .8;
  z-index: 100;
}

.alerta.hide {
  display: none !important;
}

.link-alerta {
  color: #f2f2f2;
}

.link-alerta:hover {
  color: #fff;
  text-decoration: underline;
}

.botao-aceitar {
  background-color: #e3e3e3;
  color: #212529;
  padding: 7px;
  margin-left: 15px;
  border-radius: 5px;
  border: 0;
  margin-top: 3px;
}

.botao-aceitar:hover {
  background-color: #f7f7f7;
  color: #111;
}

/* Cart modal sizing without inline style */
.modal-carrinho-dialog {
  overflow-y: initial !important;
}

.modal-carrinho-content {
  max-height: min(540px, calc(100vh - 2rem));
  overflow-y: auto;
}
