* { box-sizing: border-box; }
html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
img, video, canvas, svg { max-width: 100%; }
input, select, textarea, button { max-width: 100%; }
.drawer-open { overflow: hidden; }

@media (max-width: 768px) {
  body { min-width: 0; }
  .content-wrapper,
  .anuncios-main,
  .dashboard-container,
  .main-content,
  main { max-width: 100%; }

  .admin-header,
  .loja-header,
  .app-header {
    width: 100%;
    max-width: 100%;
  }

  .metric-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  .metric-card {
    min-width: 0;
    min-height: 82px;
    padding: 8px 4px;
  }

  .metric-card .icon-label i { font-size: 17px; }
  .metric-card .label { font-size: 10px; line-height: 1.05; }
  .metric-card .value { font-size: 23px; }

  .table-wrapper,
  .orders-table-wrapper,
  .products-table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .modal,
  .bottom-sheet,
  .ad-bottom-sheet {
    max-width: 100vw;
  }
}

@media (max-width: 380px) {
  .metric-grid { gap: 5px !important; }
  .metric-card { min-height: 78px; padding: 7px 3px; }
  .metric-card .label { font-size: 9px; }
  .metric-card .value { font-size: 21px; }
}
