/*
 * Delysium ERP 1.0.194 - Capa responsive adaptativa
 * Objetivo: mejorar adaptacion en movil/tablet sin cambiar temas, colores, fuentes ni logica.
 * Esta hoja solo usa reglas de layout, tamano, overflow y ajuste de controles.
 */

*, *::before, *::after {
  box-sizing: border-box;
}

html, body {
  max-width: 100%;
  overflow-x: hidden;
}

img, svg, video, canvas, iframe {
  max-width: 100%;
}

input, select, textarea, button {
  max-width: 100%;
}

textarea {
  resize: vertical;
}

main, .main, .content, .page-content, .container, .container-fluid,
.wrapper, .app-shell, .dashboard, .erp-page, .erp-container,
.module-shell, .module-container, .page-wrapper {
  max-width: 100%;
}

.table-responsive,
.table-wrap,
.table-wrapper,
.overflow-auto,
.overflow-x-auto {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

pre, code, .code, .token, .hash, .url, .text-break, .break-word {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.erp-header,
header,
nav,
.navbar,
.menu,
.nav,
.header-actions,
.header-right,
.user-actions,
.action-bar,
.actions,
.btn-group,
.button-group,
.toolbar,
.filters,
.filter-bar,
.card-actions,
.form-actions {
  min-width: 0;
}

.card,
.panel,
.box,
.section,
.module-card,
.stat-card,
.kpi-card,
.modal-content,
.dropdown-menu,
.toast,
.alert {
  max-width: 100%;
}

@media (max-width: 1200px) {
  .erp-header,
  header,
  nav,
  .navbar,
  .menu,
  .nav,
  .header-actions,
  .header-right,
  .user-actions,
  .action-bar,
  .actions,
  .btn-group,
  .button-group,
  .toolbar,
  .filters,
  .filter-bar,
  .card-actions,
  .form-actions {
    flex-wrap: wrap;
  }

  .row,
  .grid,
  .cards-grid,
  .stats-grid,
  .kpi-grid,
  .dashboard-grid,
  .form-grid,
  .report-grid,
  .social-grid,
  .bridge-grid,
  .ventas-grid,
  .caja-grid,
  .diagnostico-grid,
  .inventory-grid,
  .inventario-grid {
    min-width: 0;
  }
}

@media (max-width: 992px) {
  .container,
  .container-fluid,
  .main,
  main,
  .content,
  .page-content,
  .page-wrapper,
  .erp-page,
  .erp-container,
  .module-shell,
  .module-container {
    width: 100%;
    max-width: 100%;
  }

  .row,
  .grid,
  .cards-grid,
  .stats-grid,
  .kpi-grid,
  .dashboard-grid,
  .form-grid,
  .report-grid,
  .social-grid,
  .bridge-grid,
  .ventas-grid,
  .caja-grid,
  .diagnostico-grid,
  .inventory-grid,
  .inventario-grid {
    grid-template-columns: 1fr !important;
  }

  .col,
  [class*="col-"],
  .card,
  .panel,
  .box,
  .section,
  .module-card,
  .stat-card,
  .kpi-card,
  .form-group,
  .input-group,
  .field,
  .control-group {
    min-width: 0;
  }

  table {
    max-width: 100%;
  }

  .table,
  table.responsive-table,
  .data-table,
  .list-table,
  .report-table {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 768px) {
  body {
    min-width: 0;
  }

  .container,
  .container-fluid,
  .main,
  main,
  .content,
  .page-content,
  .page-wrapper,
  .erp-page,
  .erp-container,
  .module-shell,
  .module-container {
    padding-left: min(14px, 4vw);
    padding-right: min(14px, 4vw);
  }

  form,
  fieldset,
  .form,
  .form-row,
  .form-grid,
  .input-row,
  .filters,
  .filter-bar,
  .search-bar,
  .toolbar,
  .actions,
  .action-bar,
  .card-actions,
  .form-actions {
    width: 100%;
  }

  .form-row,
  .input-row,
  .filters,
  .filter-bar,
  .search-bar,
  .toolbar,
  .actions,
  .action-bar,
  .card-actions,
  .form-actions,
  .btn-group,
  .button-group,
  .header-actions,
  .header-right,
  .user-actions {
    flex-direction: column;
    align-items: stretch;
  }

  input,
  select,
  textarea,
  .form-control,
  .form-select,
  .btn,
  button,
  a.btn {
    width: 100%;
  }

  .btn-group > .btn,
  .button-group > .btn,
  .input-group > .form-control,
  .input-group > .form-select,
  .input-group > .btn {
    width: 100%;
    flex: 1 1 auto;
  }

  .modal-dialog {
    width: calc(100% - 24px);
    max-width: calc(100% - 24px);
    margin-left: auto;
    margin-right: auto;
  }

  .dropdown-menu {
    max-width: calc(100vw - 24px);
    overflow-x: auto;
  }

  .table-responsive,
  .table-wrap,
  .table-wrapper,
  .overflow-auto,
  .overflow-x-auto,
  .card,
  .panel,
  .box,
  .section,
  .module-card {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .hide-on-mobile,
  .desktop-only {
    display: none !important;
  }
}

@media (max-width: 576px) {
  h1, h2, h3, h4, h5, h6,
  .page-title,
  .module-title,
  .card-title {
    overflow-wrap: anywhere;
  }

  .container,
  .container-fluid,
  .main,
  main,
  .content,
  .page-content,
  .page-wrapper,
  .erp-page,
  .erp-container,
  .module-shell,
  .module-container {
    padding-left: min(10px, 3vw);
    padding-right: min(10px, 3vw);
  }

  .card,
  .panel,
  .box,
  .section,
  .module-card,
  .stat-card,
  .kpi-card,
  .alert,
  .modal-content {
    padding-left: min(12px, 4vw);
    padding-right: min(12px, 4vw);
  }

  .table,
  table,
  .data-table,
  .list-table,
  .report-table {
    font-size: inherit;
  }

  .pagination,
  .pager {
    flex-wrap: wrap;
  }
}

@media (orientation: landscape) and (max-height: 520px) {
  .modal-dialog,
  .dropdown-menu,
}
