/* ══════════════════════════════════════════════════════════════
   MOBILE.CSS — Conecta Arquitetura
   Apenas adições para responsivo — não altera nada do desktop
   ══════════════════════════════════════════════════════════════ */

/* ── Tablet (até 1024px) ─────────────────────────────────────── */
@media (max-width: 1024px) {
  .container, .container-sm { padding: 0 32px; }
  .admin-stats { grid-template-columns: repeat(2,1fr); }
}

/* ── Mobile (até 768px) ──────────────────────────────────────── */
@media (max-width: 768px) {

  /* Overflow horizontal global */
  html, body { overflow-x: hidden; }

  /* Nav */
  .nav-links    { display: none !important; }
  .nav-menu-btn { display: flex !important; }
  .nav          { padding: 0 20px !important; height: 56px !important; }
  .nav-logo img { height: 18px !important; }
  #nav-frase    { display: none !important; }

  /* Hamburguer: área de toque ≥ 44×44px (original: 24×20px)
     padding: 13px vertical × 10px lateral mantém os spans em 24×18px visualmente */
  .nav-menu-btn {
    width: 44px !important;
    height: 44px !important;
    padding: 13px 10px !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  /* Filtros pill: área de toque mínima 44px (original padding:6px → ~23px) */
  .filtro-pill {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  /* Seções internas: padding:80px 0 inline → 48px no mobile */
  div[style*="padding:80px 0"] { padding: 48px 0 !important; }

  /* Container */
  .container, .container-sm { padding: 0 20px !important; }

  /* Footer */
  #footer-main > div {
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
    padding: 32px 20px !important;
    text-align: center !important;
  }
  #fc-social  { position: static !important; transform: none !important; }
  #fc-end     { text-align: center !important; }
  #fc-end a   { align-items: center !important; }

  /* Portfólio */
  .portfolio-grid   { grid-template-columns: 1fr 1fr !important; gap: 2px !important; }
  .proj-card        { grid-column: span 1 !important; aspect-ratio: 1/1 !important; }

  /* Blog */
  .blog-grid        { grid-template-columns: 1fr !important; }
  .blog-card-titulo { font-size: 18px !important; }

  /* Equipe */
  .equipe-grid { grid-template-columns: 1fr 1fr !important; gap: 2px !important; }
  .membro-card { padding: 20px !important; }

  /* Contato — empilhar */
  .contato-grid { grid-template-columns: 1fr !important; }

  /* Financeiro */
  .financeiro-table { font-size: 12px !important; }
  .financeiro-table thead th,
  .financeiro-table tbody td { padding: 12px 8px !important; }

  /* Cards resumo financeiro */
  div[style*="grid-template-columns:repeat(3,1fr)"] {
    grid-template-columns: 1fr !important;
  }

  /* Área do cliente */
  .cliente-layout  { grid-template-columns: 1fr !important; }
  .cliente-sidebar {
    position: static !important;
    height: auto !important;
    border-right: none !important;
    border-bottom: 1px solid var(--borda) !important;
    padding: 16px 0 !important;
  }
  .cliente-nav {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    padding: 0 20px !important;
  }
  .cliente-nav a {
    padding: 8px 14px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  .cliente-conteudo { padding: 24px 20px !important; }

  /* Imagens do cliente */
  div[style*="grid-template-columns:repeat(auto-fill,minmax(150px"] {
    grid-template-columns: repeat(2,1fr) !important;
  }

  /* Arquivos — área de toque mínima */
  .arquivo-item { min-height: 44px !important; }

  /* Info grid do projeto */
  .info-grid { grid-template-columns: 1fr 1fr !important; gap: 20px !important; }

  /* Galeria portfólio */
  .galeria-grid { grid-template-columns: 1fr 1fr !important; }

  /* Admin */
  .admin-layout  { grid-template-columns: 1fr !important; }
  .admin-sidebar { display: none !important; }
  .admin-stats   { grid-template-columns: repeat(2,1fr) !important; }
  .modal-box     { width: 95vw !important; max-height: 90vh !important; overflow-y: auto !important; }

  /* Ferramentas */
  .ferramentas-grid { grid-template-columns: 1fr !important; }

  /* Lightbox */
  .lightbox img { max-width: 98vw !important; max-height: 80vh !important; }
}

/* ── Small mobile (até 480px) ────────────────────────────────── */
@media (max-width: 480px) {
  .portfolio-grid { grid-template-columns: 1fr !important; }
  .equipe-grid    { grid-template-columns: 1fr !important; }
  .galeria-grid   { grid-template-columns: 1fr !important; }
  .info-grid      { grid-template-columns: 1fr !important; }
  .blog-card-body { padding: 20px !important; }
  .financeiro-table thead th:nth-child(3),
  .financeiro-table tbody td:nth-child(3),
  .financeiro-table thead th:nth-child(4),
  .financeiro-table tbody td:nth-child(4) { display: none !important; }
}
