/* Tipografia global del sistema: Manrope (C7c / website) */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap');

:root {
  --font-sistema: 'Manrope', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  /* x-height Manrope ~0.506 (website --hs-x-height); mantiene tamano optico al salir de Inter. */
  --ajuste-optico: 0.506;
}

html,
body,
button,
input,
select,
textarea,
optgroup,
option,
label,
h1, h2, h3, h4, h5, h6,
.navbar-brand,
.nombre_producto,
.btn,
.form-control,
.select2-container,
.modal-title,
.dataTables_wrapper,
.tooltip,
.popover,
.editable-container {
  font-family: var(--font-sistema) !important;
}

/* Se aplica al body y se hereda: no se tocan los tamanos en px de
   Bootstrap/AdminLTE, por lo que las proporciones originales se mantienen. */
body {
  font-size-adjust: var(--ajuste-optico);
  letter-spacing: -0.006em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'cv05', 'ss01';
}

h1, h2, h3, h4, h5, h6,
.nombre_producto,
.navbar-brand {
  letter-spacing: -0.018em;
}

b, strong, .bold {
  font-weight: 600;
}

/* Los iconos conservan la fuente que les asignan sus propias hojas de estilo
   (Font Awesome 4 y 5, Glyphicons, Ionicons); aca solo se los excluye del
   ajuste optico para que no cambien de tamano. */
.fa, .fas, .far, .fab, .fal, .fad,
.glyphicon,
.ion, [class^="ion-"], [class*=" ion-"] {
  font-size-adjust: none;
}

.main-footer {
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  padding: 0 15px !important;
  margin-bottom: 0 !important;
  line-height: normal !important;
  text-align: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.main-footer:before,
.main-footer:after {
  display: none !important;
  content: none !important;
}

.main-footer .hs-footer-copy {
  display: block;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.3 !important;
  text-align: center !important;
}

.table .badge,
table .badge {
  display: inline-block;
  line-height: 1.3;
}

@media only screen and (max-width: 767px) {
  .main-footer {
    height: auto !important;
    min-height: 52px !important;
    max-height: none !important;
    padding: 14px 16px !important;
    padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px)) !important;
    overflow: visible !important;
  }
  .main-footer .hs-footer-copy {
    font-size: 13px !important;
    line-height: 1.4 !important;
    white-space: normal !important;
  }
}

/* Placeholders más claros que el valor ingresado (todos los formularios) */
.form-control::placeholder,
input.form-control::placeholder,
textarea.form-control::placeholder,
input::placeholder,
textarea::placeholder {
  color: #cfd5db !important;
  opacity: 1;
}
.form-control::-webkit-input-placeholder,
input.form-control::-webkit-input-placeholder,
textarea.form-control::-webkit-input-placeholder,
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #cfd5db !important;
}
.form-control::-moz-placeholder,
input.form-control::-moz-placeholder,
textarea.form-control::-moz-placeholder,
input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #cfd5db !important;
  opacity: 1;
}
.form-control:-ms-input-placeholder,
input.form-control:-ms-input-placeholder,
textarea.form-control:-ms-input-placeholder,
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #cfd5db !important;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder,
.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
  color: #cfd5db !important;
}
