/* BARMO DRE Mobile V6 — carregamento direto pelo HTML. */
#panel-receitas,
#dre-sales-products { display: none !important; }

@media (max-width: 760px) {
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow-x: hidden !important;
    background: #fff !important;
  }

  body.barmo-dre-v2 { background: #fff !important; }

  main.page {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px 12px calc(88px + env(safe-area-inset-bottom)) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  main.page > header {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
    padding: 42px 0 12px !important;
    align-items: stretch !important;
  }

  main.page > header h1 {
    font-size: 22px !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere !important;
  }

  main.page > header .subtitle,
  .barmo-dre-v2 header .subtitle {
    display: block !important;
    margin-top: 5px !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  main.page > header .actions,
  main.page > header .files-group {
    width: 100% !important;
    min-width: 0 !important;
  }

  main.page > header .files-group {
    padding: 0 !important;
    border-left: 0 !important;
  }

  main.page > header .files-group > button {
    width: 100% !important;
    min-height: 44px !important;
  }

  .files-menu {
    position: fixed !important;
    left: 10px !important;
    right: 10px !important;
    top: auto !important;
    bottom: calc(76px + env(safe-area-inset-bottom)) !important;
    width: auto !important;
    min-width: 0 !important;
    max-height: 65vh !important;
    overflow-y: auto !important;
    border-radius: 16px !important;
  }

  main.page > nav.nav { display: none !important; }

  .panel,
  .panel.active {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .panel > h2 {
    margin-bottom: 10px !important;
    font-size: 19px !important;
    line-height: 1.2 !important;
  }

  .panel > .hint {
    margin-bottom: 12px !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .barmo-dre-v2 #panel-dashboard .executive-header,
  #panel-dashboard .executive-header {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .barmo-dre-v2 #panel-dashboard .executive-title p,
  #panel-dashboard .executive-title p {
    display: block !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .barmo-dre-v2 #panel-dashboard .trust-strip,
  #panel-dashboard .trust-strip {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    width: 100% !important;
    overflow-x: auto !important;
    padding: 2px 0 5px !important;
    scrollbar-width: none !important;
  }

  #panel-dashboard .trust-strip::-webkit-scrollbar { display: none !important; }

  #panel-dashboard .trust-item {
    flex: 0 0 auto !important;
    padding: 6px 8px !important;
    font-size: 10px !important;
  }

  .barmo-dre-v2 #panel-dashboard .executive-grid,
  #panel-dashboard .executive-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .box,
  .executive-section {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-top: 10px !important;
    padding: 12px !important;
    border-radius: 14px !important;
  }

  #panel-dashboard .controls,
  .account-form,
  .cash-config,
  .dre-f3-toolbar,
  .dre-filter {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 9px !important;
    width: 100% !important;
  }

  #panel-dashboard .field,
  .account-form .field,
  .cash-config .field,
  .dre-filter .dre-filter-label {
    width: 100% !important;
    min-width: 0 !important;
    grid-column: auto !important;
  }

  .period-actions,
  .dre-f3-filters {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;
    width: 100% !important;
    overflow-x: auto !important;
    padding-bottom: 5px !important;
    scrollbar-width: none !important;
  }

  .period-actions::-webkit-scrollbar,
  .dre-f3-filters::-webkit-scrollbar { display: none !important; }

  .period-actions button,
  .dre-f3-filters button {
    flex: 0 0 auto !important;
    min-height: 40px !important;
    white-space: nowrap !important;
  }

  input,
  select,
  textarea {
    min-height: 44px !important;
    font-size: 16px !important;
  }

  .executive-cards,
  .cards,
  #cards-vendas,
  #contas-cards,
  #estoque-fin-cards,
  #recebiveis-cards,
  #caixa-v3-cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
    width: 100% !important;
    overflow: visible !important;
    margin: 11px 0 15px !important;
  }

  .executive-card,
  .card {
    min-width: 0 !important;
    min-height: 92px !important;
    padding: 12px !important;
    border-radius: 14px !important;
  }

  .executive-card .value,
  .card .value {
    font-size: 18px !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere !important;
  }

  .table-wrap {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    max-height: 62vh !important;
    border-radius: 12px !important;
  }

  .product-sticky {
    position: static !important;
    left: auto !important;
    box-shadow: none !important;
  }

  .finance-table th,
  .finance-table td,
  .compact-table th,
  .compact-table td {
    padding: 9px 8px !important;
    font-size: 11px !important;
  }

  .finance-table th,
  .compact-table th {
    position: sticky !important;
    top: 0 !important;
    z-index: 20 !important;
  }

  .recebiveis-v3-table { min-width: 1120px !important; }
  .caixa-v3-table { min-width: 820px !important; }
  .dre-table { min-width: 610px !important; max-width: none !important; }

  .mobile-tabbar {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 1000 !important;
    padding: 7px 6px calc(7px + env(safe-area-inset-bottom)) !important;
    background: rgba(255,255,255,.98) !important;
    border-top: 1px solid #d9e2ec !important;
    box-shadow: 0 -8px 22px rgba(16,42,67,.12) !important;
  }

  .mobile-tabbar button {
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 5px 2px !important;
    border-radius: 10px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
    box-shadow: none !important;
  }

  .mobile-more-sheet { z-index: 1100 !important; }
  .mobile-sheet-panel {
    max-height: 78vh !important;
    overflow-y: auto !important;
    padding-bottom: calc(16px + env(safe-area-inset-bottom)) !important;
  }
}

@media (max-width: 390px) {
  .executive-cards,
  .cards,
  #cards-vendas,
  #contas-cards,
  #estoque-fin-cards,
  #recebiveis-cards,
  #caixa-v3-cards {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
