input[type=number] {
  text-align: center;
}

.logo-brand {
  height: 65px !important;
}

.logo {
  font-family: 'Open Sans';
  color: white;
}

.logo:hover {
  color: white;
  text-decoration: none;
}

.avatar {
  width: 128px;
  height: 128px;
}

.sidebar-expand-lg {
  border-radius: .5rem;
  margin-right: 0;
}

.nav-item {
  padding: 2px 8px 2px 8px;
}

.nav-link,
.dropdown-item {
  border-radius: .5rem;
}

.nav-tabs .nav-link {
  border-bottom-left-radius: unset;
  border-bottom-right-radius: unset;
}

.nav-tabs .nav-item {
  padding: unset;
}

.sidebar-light .nav-sidebar>.nav-item-open>.nav-link:not(.disabled) {
  background-color: unset;
}

.sidebar-light .nav-sidebar .nav-link:not(.disabled):hover {
  color: #333;
  background-color: #f5f5f5;
}

.sidebar-light .nav-sidebar>.nav-item>.nav-link.active {
  /*background-color: rgba(84, 160, 255, 0.25);*/
  background-color: #f5f5f5;
  color: #333;
}

.sidebar-light .nav-sidebar .nav-item>.nav-link.active {
  background-color: #f5f5f5;
  color: #333;
}

.nav-group-sub .nav-link {
  padding: .75rem 1.25rem;
}

.card {
  margin-bottom: .625rem;
}

.btn-bizum {
  line-height: 2rem;
  background-color: #05C0C7;
  font-weight: 500;
  color: var(--white);
}

.btn-bizum:hover {
  background-color: #04acb3;
  color: var(--white);
}

.btn-bizum img {
  height: 2rem;
}

.btn-card {
  line-height: 2rem;
  background-color: #8395a7;
  font-weight: 500;
  color: var(--white);
}

.btn-card:hover {
  background-color: #687785;
  color: var(--white);
}

.btn-card img {
  height: 2rem;
}

.icon-size-xs {
  font-size: .75rem !important;
}

.icon-size-sm {
  font-size: 1.25rem !important;
}

.icon-size-md {
  font-size: 2.5rem !important;
}

.icon-size-lg {
  font-size: 5rem !important;
}

.icon-size-xl {
  font-size: 7.5rem !important;
}

.icon-size-xxl {
  font-size: 10rem !important;
}

.icon-checkmark-xxl {
  font-size: 1.8rem !important;
}

.icon-x-xxl {
  font-size: 5rem !important;
}

.icon-info-xxl {
  font-size: 3rem !important;
}

.download-item {
  background-image: url(../images/backgrounds/downloads/download_item.png);
  background-size: contain;
}

.swal-modal.swal-text-justify .swal-text {
  text-align: justify !important;
}

.swal-btn-primary-hov:hover {
  color: #fff !important;
  background-color: #0d8aee !important;
  border-color: #0d8aee !important;
}

.swal-btn-light-hov:hover {
  color: #333 !important;
  background-color: #e1e5eb !important;
  border-color: #bac4d1 !important;
}

.swal-button:focus {
  outline: none !important;
  box-shadow: none !important;
}

.wmax-100 {
  max-width: 100px !important;
}

.wmax-125 {
  max-width: 125px !important;
}

.wmax-150 {
  max-width: 150px !important;
}

.wmax-175 {
  max-width: 175px !important;
}

.wmax-200 {
  max-width: 200px !important;
}

.wmax-250 {
  max-width: 250px !important;
}

.wmax-275 {
  max-width: 275px !important;
}

.wmax-300 {
  max-width: 300px !important;
}

.wmax-400 {
  max-width: 400px !important;
}

.hmax-22 {
  max-height: 22px !important;
}

.hmax-100 {
  max-height: 100px !important;
}

.hmax-150 {
  max-height: 150px !important;
}

.hmax-200 {
  max-height: 200px !important;
}

.hmax-250 {
  max-height: 250px !important;
}

.hmax-300 {
  max-height: 300px !important;
}

.dataTables_scrollBody {
  /*min-height: 300px;*/
  min-height: 0px;
}

#form_show_contract .dataTables_scrollBody {
  min-height: inherit;
}

#modal_create_pack .dataTables_scrollBody {
  min-height: inherit;
}

#form_create_shipment .dataTables_scrollBody {
  min-height: inherit;
}

.ellipsize {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.gap-1 {
  gap: .3125rem !important;
}

.gap-2 {
  gap: .625rem !important;
}

.gap-3 {
  gap: 1.25rem !important;
}

.gap-4 {
  gap: 1.875rem !important;
}

.gap-5 {
  gap: 3.75rem !important;
}

.scrolling-wrapper {
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
}

@keyframes fadein-animate {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeout-animate {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes append-animate {
  from {
    -webkit-box-shadow: inset 0px 0px 10px 5px rgba(33, 150, 243, 1);
    -moz-box-shadow: inset 0px 0px 10px 5px rgba(33, 150, 243, 1);
    box-shadow: inset 0px 0px 10px 5px rgba(33, 150, 243, 1);
  }

  to {
    -webkit-box-shadow: unset;
    -moz-box-shadow: unset;
    box-shadow: unset;
  }
}

#teachers_target_container .card {
  width: 400px !important;
}

#teachers_target_container .card.transition {
  animation: append-animate 1s ease-out;
}

.scrolling-wrapper .card {
  display: inline-block !important;
}

.scrolling-wrapper-flexbox {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
}

.scrolling-wrapper-flexbox .card {
  flex: 0 0 auto;
}

.is-dragging {
  opacity: 0.5;
}

.custom-file-label::after {
	content: "Seleccionar";
}

.photo-preview {
  display: inline-block;
  background-image: url("/assets/images/no_image.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.photo-preview-40 {
  width: 40px;
  height: 40px;
}

.photo-preview-80 {
  width: 80px;
  height: 80px;
}

.photo-preview-128 {
  width: 128px;
  height: 128px;
}

.custom-file-image {
  position: relative;
  display: block;
  margin-bottom: 0px;
  cursor: pointer;
}

.custom-file-image.custom-file-image-80 {
  width: 80px;
  height: 80px;
}

.custom-file-image.custom-file-image-128 {
  width: 128px;
  height: 128px;
}

.custom-file-image .custom-file-image-input {
  position: relative;
  z-index: 3;
  width: 100%;
  height: 100%;
  margin: 0px;
  overflow: hidden;
  opacity: 0;
  cursor: pointer;
}

.custom-file-image .custom-file-image-plus {
  position: absolute;
  z-index: 2;
  font-size: 1.5rem;
  color: #2196f3;
  cursor: pointer;
}

.custom-file-image.custom-file-image-80 .custom-file-image-plus {
  right: -4px;
  top: 61px;
}

.custom-file-image.custom-file-image-128 .custom-file-image-plus {
  right: 5px;
  top: 99px;
}

.custom-file-image .custom-file-image-thumb {
  position: absolute;
  top: 0px;
  right: 0px;
  left: 0px;
  z-index: 1;
  overflow: hidden;
  cursor: pointer;
}

#modal_create_session .daterangepicker .drp-buttons {
  display: none;
}

.squared_background {
  background-image: repeating-conic-gradient(#ccc 0 25%,#fff 0 50%);
  background-size: 1rem 1rem;
}

/* Estilos para cinta diagonal sobre un elemento */
.op-ribbon {
  position: absolute;
  box-shadow: 0 0 0 999px;
  clip-path: inset(0 -100%);
}

.op-ribbon::after {
  content: attr(data-ribbon-content);
}

:has(> .op-ribbon) {
  position: relative;
  overflow: hidden;
}

.op-ribbon-right {
  inset: 0 0 auto auto;
  transform-origin: 0 0;
  transform: translate(29.3%) rotate(45deg);
}


.op-ribbon-left {
  inset: 0 auto auto 0;
  transform-origin: 100% 0;
  transform: translate(-29.3%) rotate(-45deg);
}

.op-ribbon-danger {
  color: #ef5350 !important;
  background-color: #ef5350 !important;
}

.op-ribbon-danger::after {
  color: #fff;
}

/* === Magic Motion Modal (order-item) === */
.mmodal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:1050;}
.mmodal.is-open{display:flex;}
.mmodal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45);}
.mmodal__dialog{
  position:relative; z-index:1; width:min(640px, 92vw);
  background:#fff; border-radius:.5rem; box-shadow:0 10px 30px rgba(0,0,0,.25);
  display:flex; flex-direction:column; overflow:hidden;
}
.mmodal__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #eee;}
.mmodal__body{padding:1rem 1.25rem;max-height:65vh;overflow:auto;}
.mmodal__footer{display:flex;gap:.5rem;justify-content:flex-end;padding:1rem 1.25rem;border-top:1px solid #eee;}
.mmodal__close{background:transparent;border:0;font-size:1.5rem;line-height:1;color:#666;cursor:pointer;padding:.25rem .5rem;}
/* Botón destacado */
.btn.btn-primary.btn-lg.mm-open-modal{padding:.85rem 1.25rem;font-weight:600;border-radius:.6rem;}
/* === End Magic Motion Modal (order-item) === */
/* Reset de alineación dentro del modal */
.mmodal { text-align: left; }
