@media (max-width: 1100px) {
  .dashboard-insight-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .dashboard-insight-metrics { grid-template-columns: 1fr; }
  .dashboard-insight-metrics article { min-height: 104px; }
  .dashboard-visual-grid { grid-template-columns: 1fr !important; }
  .panel-head { align-items: flex-start; }
  .panel-head > .inline-actions { width: 100%; }
  .panel-head > .inline-actions > button { flex: 1 1 auto; }
  .input-action-row { align-items: stretch; flex-wrap: wrap; }
  .input-action-row input { flex: 1 1 100%; }
  .input-action-row button,
  .input-action-row #rotateWireguardServerKeyBtn { flex: 1 1 auto; min-width: 0; }
  .form-grid > button[type="submit"] { width: 100%; }
  .lead-whatsapp-button,
  .lead-contact-check { width: 100%; height: 44px; min-height: 44px; }

  /*
   * No celular, os leads deixam de herdar as larguras fixas usadas no tablet.
   * Cada cadastro vira um cartao vertical, com o rotulo acima do valor.
   */
  .leads-table-wrap table {
    width: 100% !important;
    table-layout: auto !important;
  }

  .leads-table-wrap tbody {
    gap: 14px;
  }

  .leads-table-wrap tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    padding: 15px 16px;
    border-radius: 18px;
  }

  .leads-table-wrap td,
  .leads-table-wrap th {
    width: 100% !important;
    min-width: 0 !important;
  }

  .leads-table-wrap .lead-table-optional {
    display: none !important;
  }

  .leads-table-wrap td {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 5px;
    padding: 11px 0 !important;
    overflow: visible !important;
    color: var(--text);
    font-size: 15px;
    line-height: 1.35;
    text-align: left;
    text-overflow: clip !important;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
  }

  .leads-table-wrap td::before {
    display: block;
    margin: 0;
    color: var(--muted);
    font-size: 10px;
    font-weight: 850;
    line-height: 1.2;
    letter-spacing: .06em;
  }

  .leads-table-wrap td:first-child {
    padding-top: 0 !important;
    font-size: 18px;
    line-height: 1.25;
  }

  .leads-table-wrap td:first-child strong {
    min-width: 0;
    overflow-wrap: break-word;
  }

  .leads-table-wrap td[data-label="Telefone"],
  .leads-table-wrap td[data-label="Criado em"] {
    white-space: nowrap;
  }

  .leads-table-wrap td.actions {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    padding-bottom: 0 !important;
  }

  .leads-table-wrap .lead-row-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr)) 44px;
    gap: 9px;
    width: 100%;
    min-width: 0;
  }

  .leads-table-wrap .lead-whatsapp-button,
  .leads-table-wrap .lead-contact-check {
    display: inline-flex;
    width: 100%;
    min-width: 0;
    height: 44px;
    min-height: 44px;
    margin: 0;
    padding-inline: 10px;
    align-items: center;
    justify-content: center;
  }

  .leads-table-wrap .lead-delete-button {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
  }

  .leads-table-wrap .lead-whatsapp-button span {
    display: inline;
  }
}

@media (max-width: 420px) {
  .content { padding-inline: 12px !important; }
  .panel { border-radius: 18px !important; }
  .topbar-actions { gap: 8px; }
}
