/* ESTILOS PERSONALIZADOS ERP & APP MÓVIL ESTOL EQUIPOS MÉDICOS */
@layer base {
  html, body {
    margin: 0;
    padding: 0;
    font-family: 'Plus Jakarta Sans', sans-serif;
  }
  body {
    overscroll-behavior: none;
  }
}

/* Scrollbars clínicos estilizados */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-thumb {
  background: #bcc9c6;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #0d9488;
}
::-webkit-scrollbar-track {
  background: transparent;
}

/* Números tabulares para finanzas e inventario */
.tabular-nums {
  font-variant-numeric: tabular-nums;
}

/* Ancho máximo del contenido: evita columnas excesivamente anchas en pantallas grandes */
#mainContent {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

/* Transiciones suaves para vistas y modales */
.view-container {
  animation: fadeIn 0.2s ease-in-out;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Canvas táctil para firma digital */
.signature-canvas {
  touch-action: none;
  background-color: #ffffff;
  border: 1px dashed #0d9488;
  border-radius: 8px;
  cursor: crosshair;
}

/* Efecto activo de navegación */
.nav-link.active {
  background-color: #0d9488 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.nav-link.active .material-symbols-outlined {
  color: #ffffff !important;
}

/* Modo chofer: interfaz limpia de pantalla completa */
body.is-chofer-mode aside {
  display: none !important;
}
body.is-chofer-mode .pl-60 {
  padding-left: 0 !important;
}
body.is-chofer-mode header {
  left: 0 !important;
}
body.is-chofer-mode main {
  padding: 4.5rem 0.5rem 1.5rem 0.5rem !important;
}
body.is-chofer-mode #mainContent {
  max-width: 640px !important;
}

/* Estilos específicos de impresión para Contrato N° 66278 */
@media print {
  aside, header, #btnOpenWhatsAppHeader, .no-print, button, nav {
    display: none !important;
  }
  body {
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 11pt !important;
  }
  .pl-60 {
    padding-left: 0 !important;
  }
  main {
    padding: 0 !important;
    margin: 0 !important;
  }
  #mainContent {
    max-width: none !important;
  }
  .contract-print-area {
    display: block !important;
    width: 100% !important;
    box-shadow: none !important;
    border: none !important;
  }
}
