/**
 * Mobile Fix - Correções para responsividade em dispositivos móveis
 * Garante que o conteúdo se ajuste corretamente em telas pequenas
 */

/* ===== CORREÇÕES GLOBAIS PARA MOBILE ===== */

/* Prevenir scroll horizontal em todos os tamanhos */
html {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}

body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}

/* ===== TABLETS E MOBILE (< 992px) ===== */
@media (max-width: 991.98px) {
  /* Layout principal */
  .layout-wrapper,
  .layout-container {
    overflow-x: hidden !important;
    max-width: 100vw !important;
  }
  
  .layout-page {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }
  
  /* Content wrapper */
  .content-wrapper {
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
    padding: 0 !important;
  }
  
  /* Containers */
  .container-xxl,
  .container-fluid,
  .container,
  .semi-compact-wrapper {
    padding-left: 16px !important;
    padding-right: 16px !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }
  
  /* Cards e componentes */
  .card,
  .semi-compact-card {
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
  }
  
  /* Tabelas */
  .table-responsive {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  
  /* Navbar ajustes */
  #modern-navbar {
    padding: 0 16px !important;
  }
  
  /* Ocultar elementos não essenciais */
  .navbar-user-info,
  .navbar-user-dropdown {
    display: none !important;
  }
  
  /* Ajustar avatar do usuário */
  .navbar-user {
    padding: 4px !important;
  }
  
  .navbar-user-avatar {
    width: 32px !important;
    height: 32px !important;
    font-size: 12px !important;
  }
}

/* ===== MOBILE MÉDIO (< 768px) ===== */
@media (max-width: 767.98px) {
  /* Reduzir padding */
  .container-xxl,
  .container-fluid,
  .container,
  .semi-compact-wrapper {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  
  #modern-navbar {
    padding: 0 12px !important;
  }
  
  /* Ajustar breadcrumb */
  .semi-compact-breadcrumb {
    font-size: 11px;
    padding: 8px 0;
  }
  
  /* Ajustar título */
  .semi-compact-title {
    font-size: 1.25rem;
    margin-bottom: 16px;
  }
  
  /* Cards em tela cheia */
  .card,
  .semi-compact-card {
    border-radius: 8px;
  }
  
  /* Botões menores */
  .semi-compact-btn {
    font-size: 13px;
    padding: 8px 12px;
  }
  
  /* Grid em uma coluna */
  .row.g-3 {
    gap: 12px !important;
  }
}

/* ===== MOBILE PEQUENO (< 576px) ===== */
@media (max-width: 575.98px) {
  /* Padding mínimo */
  .container-xxl,
  .container-fluid,
  .container,
  .semi-compact-wrapper {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  
  #modern-navbar {
    padding: 0 8px !important;
  }
  
  .navbar-brand-text {
    font-size: 14px !important;
  }
  
  /* Cards ultra compactos */
  .card,
  .semi-compact-card {
    border-radius: 6px;
    margin-bottom: 8px;
  }
  
  .semi-compact-card .card-header,
  .semi-compact-card .card-body {
    padding: 12px !important;
  }
  
  /* Títulos menores */
  .semi-compact-title {
    font-size: 1.125rem;
    margin-bottom: 12px;
  }
  
  .semi-compact-section-title {
    font-size: 13px;
  }
  
  /* Botões apenas com ícone */
  .semi-compact-btn:not(.semi-compact-btn-block) {
    min-width: auto;
  }
  
  /* Forçar todas as colunas em stack */
  .row > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  
  /* Tabelas ultra compactas */
  .semi-compact-table {
    font-size: 11px;
  }
  
  .semi-compact-table th,
  .semi-compact-table td {
    padding: 6px 4px !important;
  }
  
  /* Ocultar colunas menos importantes em tabelas */
  .semi-compact-table th:nth-child(n+4),
  .semi-compact-table td:nth-child(n+4) {
    display: none;
  }
  
  /* Formulários */
  .semi-compact-form .form-label {
    font-size: 13px;
    margin-bottom: 4px;
  }
  
  .semi-compact-form .form-control,
  .semi-compact-form .form-select {
    font-size: 14px;
    padding: 8px 12px;
  }
  
  /* Stats cards em coluna */
  .semi-compact-stat-card {
    margin-bottom: 8px;
  }
  
  .semi-compact-stat-card .stat-icon {
    width: 36px;
    height: 36px;
  }
  
  .semi-compact-stat-card .stat-icon i {
    font-size: 18px;
  }
  
  .semi-compact-stat-card .stat-value {
    font-size: 20px;
  }
  
  .semi-compact-stat-card .stat-label {
    font-size: 11px;
  }
}

/* ===== CORREÇÃO DE OVERFLOW HORIZONTAL ===== */
/* Aplicado em todos os tamanhos de tela mobile */
@media (max-width: 991.98px) {
  * {
    box-sizing: border-box !important;
  }
  
  /* Prevenir overflow em elementos específicos */
  .row {
    margin-left: -8px !important;
    margin-right: -8px !important;
  }
  
  .row > * {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  
  /* Modais mobile */
  .modal-dialog {
    margin: 8px !important;
    max-width: calc(100vw - 16px) !important;
  }
  
  .modal-content {
    max-width: 100% !important;
  }
  
  /* Editor Quill no mobile */
  .ql-container,
  .ql-editor {
    max-width: 100% !important;
  }
  
  #editor-mensagem {
    max-width: 100% !important;
  }
}
