/**
 * Obra — ajustes responsivos globales (breakpoints alineados con Bootstrap 5: md 768, lg 992).
 */

:root {
  --obra-bp-sm: 576px;
  --obra-bp-md: 768px;
  --obra-bp-lg: 992px;
  --obra-bp-plan-tablet: 1024px;
  --obra-admin-navbar-height: 56px;
}

/* Contenido admin: padding cómodo en pantallas pequeñas */
@media (max-width: 575.98px) {
  .admin-main .container-fluid {
    padding-left: max(0.75rem, env(safe-area-inset-left, 0px));
    padding-right: max(0.75rem, env(safe-area-inset-right, 0px));
  }

  .admin-main .card-body {
    padding: 0.85rem;
  }

  .admin-main .table {
    font-size: 0.875rem;
  }
}

/* Módulos canvas: lienzo a pantalla completa bajo el navbar */
@media (max-width: 991.98px) {
  body.admin-app--canvas-layout .admin-main .container-fluid {
    padding: 0;
    max-width: none;
  }

  body.admin-app--canvas-layout .admin-main {
    background: #1a1d21;
  }
}

/* Dashboard: gráficas y mapa en móvil */
@media (max-width: 767.98px) {
  .dashboard-chart-wrap {
    min-height: 200px;
  }

  .dashboard-chart-wrap canvas {
    max-height: 240px;
  }

  .dashboard-charts__panel-body--map {
    min-height: 240px;
  }

  .dashboard-accordion .accordion-button {
    padding: 0.65rem 0.85rem;
    font-size: 0.9rem;
  }

  .visor-barras-card__marca {
    font-size: 0.9rem;
    line-height: 1.25;
  }
}

/* Catálogos de configuración: tablas legibles en móvil */
@media (max-width: 767.98px) {
  .config-catalog-table .btn-sm {
    min-height: 2.5rem;
    padding: 0.35rem 0.65rem;
  }

  .config-catalog-table th,
  .config-catalog-table td {
    vertical-align: middle;
  }
}

/* Formularios de configuración / correo */
@media (max-width: 575.98px) {
  .correo-config-form .card-body {
    padding: 0.85rem;
  }

  .correo-config-form .btn {
    min-height: 2.75rem;
  }
}

/* Tablas visor: ocultar columnas secundarias en móvil */
@media (max-width: 767.98px) {
  .visor-projects-table-wrap {
    margin-left: -0.25rem;
    margin-right: -0.25rem;
  }

  .visor-val-pill {
    min-width: 2rem;
    padding: 0.2rem 0.45rem;
    font-size: 0.8rem;
  }
}
