
@media screen and (max-width:640px){

  /* ---------- Chave Lista / Cards ---------- */
  .gch-vsw{display:inline-flex;align-items:center;border:1px solid rgba(163,163,163,.28);border-radius:10px;overflow:hidden;background:rgba(255,255,255,.05);flex:0 0 auto;}
  html:not(.dark) .gch-vsw{background:#fff;border-color:#e5e5e5;}
  .gch-vsw button{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:600;line-height:1;color:#a3a3a3;background:transparent;border:0;cursor:pointer;transition:all .3s;}
  .gch-vsw button.gch-on{background:#2563EB;color:#fff;}
  #gchReceitas .gch-vsw button.gch-on{background:#10B981;}
  #gchDespesas .gch-vsw button.gch-on{background:#F43F5E;}
  .gch-vsw-host{flex-wrap:wrap!important;gap:6px 10px!important;}
  .gch-vsw-linha{flex:1 1 100%!important;display:flex!important;justify-content:flex-end!important;}

  /* seletor nativo de faturas fica oculto no celular (substituido pelo unificado) */
  html[data-gch-lanc] #invViewCards, html[data-gch-lanc] #invViewList{display:none!important;}

  /* ---------- MODO LISTA: linha compacta ---------- */
  #gchReceitas[data-gch-modo="lista"] .overflow-x-auto,
  #gchDespesas[data-gch-modo="lista"] .overflow-x-auto,
  #invoices[data-gch-modo="lista"] #invoiceList{overflow-x:visible!important;}

  #gchReceitas[data-gch-modo="lista"] table,
  #gchDespesas[data-gch-modo="lista"] table,
  #invoices[data-gch-modo="lista"] #invoiceList table{width:100%!important;display:block!important;border-collapse:separate!important;table-layout:auto!important;}

  #gchReceitas[data-gch-modo="lista"] table thead,
  #gchDespesas[data-gch-modo="lista"] table thead,
  #invoices[data-gch-modo="lista"] #invoiceList table thead{display:none!important;}

  #gchReceitas[data-gch-modo="lista"] table tbody,
  #gchDespesas[data-gch-modo="lista"] table tbody,
  #invoices[data-gch-modo="lista"] #invoiceList table tbody{display:block!important;padding:0 10px 8px!important;}

  #gchReceitas[data-gch-modo="lista"] table tbody tr,
  #gchDespesas[data-gch-modo="lista"] table tbody tr,
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr{display:grid!important;align-items:center!important;gap:1px 8px!important;padding:9px 2px!important;margin:0!important;border:0!important;border-top:1px solid rgba(163,163,163,.16)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;cursor:pointer!important;}

  #gchReceitas[data-gch-modo="lista"] table tbody tr>td,
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td,
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td{display:block!important;padding:0!important;border:0!important;min-width:0!important;width:auto!important;max-width:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}

  #gchReceitas[data-gch-modo="lista"] table tbody tr>td::before,
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td::before,
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td::before{content:none!important;display:none!important;}

  /* Receitas e Despesas: 8 colunas (checkbox, data, descricao, categoria, valor, status, anexo, acoes) */
  #gchReceitas[data-gch-modo="lista"] table tbody tr,
  #gchDespesas[data-gch-modo="lista"] table tbody tr{grid-template-columns:18px minmax(0,1fr) auto 30px!important;grid-template-areas:"sel desc val act" "sel meta status act"!important;}
  #gchReceitas[data-gch-modo="lista"] table tbody tr>td:nth-child(1),
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td:nth-child(1){grid-area:sel;}
  #gchReceitas[data-gch-modo="lista"] table tbody tr>td:nth-child(2),
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td:nth-child(2){grid-area:meta;font-size:11px!important;color:#a3a3a3!important;}
  #gchReceitas[data-gch-modo="lista"] table tbody tr>td:nth-child(3),
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td:nth-child(3){grid-area:desc;font-size:13.5px!important;font-weight:600!important;line-height:1.25!important;}
  #gchReceitas[data-gch-modo="lista"] table tbody tr>td:nth-child(4),
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td:nth-child(4),
  #gchReceitas[data-gch-modo="lista"] table tbody tr>td:nth-child(7),
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td:nth-child(7){display:none!important;}
  #gchReceitas[data-gch-modo="lista"] table tbody tr>td:nth-child(5),
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td:nth-child(5){grid-area:val;text-align:right!important;font-size:14px!important;font-weight:700!important;}
  #gchReceitas[data-gch-modo="lista"] table tbody tr>td:nth-child(6),
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td:nth-child(6){grid-area:status;text-align:right!important;}
  #gchReceitas[data-gch-modo="lista"] table tbody tr>td:nth-child(8),
  #gchDespesas[data-gch-modo="lista"] table tbody tr>td:nth-child(8){grid-area:act;text-align:right!important;}

  /* Faturas: colunas data, numero, cliente, valor, imposto, total, status, acoes.
     O seletor usa nth-last-child para nao quebrar caso o app acrescente colunas. */
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr{grid-template-columns:minmax(0,1fr) auto auto 30px!important;grid-template-areas:"desc desc val act" "meta num status act"!important;}
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td{display:none!important;}
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td:nth-child(1){display:block!important;grid-area:meta;font-size:11px!important;color:#a3a3a3!important;}
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td:nth-child(2){display:block!important;grid-area:num;font-size:11px!important;font-weight:700!important;}
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td:nth-child(3){display:block!important;grid-area:desc;font-size:13.5px!important;font-weight:600!important;line-height:1.25!important;}
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td:nth-child(4){display:block!important;grid-area:val;text-align:right!important;font-size:14px!important;font-weight:700!important;}
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td:nth-last-child(2){display:block!important;grid-area:status;text-align:right!important;}
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr>td:last-child{display:block!important;grid-area:act;text-align:right!important;}

  /* chips e caixas de selecao menores dentro da lista */
  #gchReceitas[data-gch-modo="lista"] table tbody tr span,
  #gchDespesas[data-gch-modo="lista"] table tbody tr span,
  #invoices[data-gch-modo="lista"] #invoiceList table tbody tr td:nth-last-child(2) span{font-size:10px!important;}
  #gchReceitas[data-gch-modo="lista"] table tbody tr input[type="checkbox"],
  #gchDespesas[data-gch-modo="lista"] table tbody tr input[type="checkbox"]{width:14px!important;height:14px!important;}

  /* acoes: 3 botoes originais dao lugar ao menu de tres pontos */
  #gchReceitas[data-gch-modo="lista"] .gch-act-view, #gchReceitas[data-gch-modo="lista"] .gch-act-edit, #gchReceitas[data-gch-modo="lista"] .gch-act-del,
  #gchDespesas[data-gch-modo="lista"] .gch-act-view, #gchDespesas[data-gch-modo="lista"] .gch-act-edit, #gchDespesas[data-gch-modo="lista"] .gch-act-del,
  #invoices[data-gch-modo="lista"] #invoiceList .gdm-act-wrap{display:none!important;}
  .gch-lanc-3p{display:inline-flex!important;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:1px solid rgba(163,163,163,.25);background:transparent;color:#a3a3a3;font-size:13px;line-height:1;cursor:pointer;transition:all .3s;}
  .gch-lanc-3p:hover{color:#2563EB;border-color:#2563EB;}
  /* vence a regra existente "#invoiceList tbody td:last-child button:not(.gdm-act-btn){display:none}" */
  #invoices[data-gch-modo="lista"] #invoiceList tbody td:last-child button.gch-lanc-3p{display:inline-flex!important;}

  /* ---------- MODO CARDS para Despesas (mesmo desenho ja usado em Receitas) ---------- */
  #gchDespesas[data-gch-modo="cards"] .overflow-x-auto{overflow-x:visible!important;}
  #gchDespesas[data-gch-modo="cards"] table{width:100%!important;display:block!important;border-collapse:separate!important;table-layout:auto!important;}
  #gchDespesas[data-gch-modo="cards"] table thead{display:none!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody{display:block!important;padding:0 12px 12px!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr{display:grid!important;grid-template-columns:20px minmax(0,1fr) auto!important;grid-template-areas:"sel desc val" "sel data status" "sel cat cat" "sel anexo acoes"!important;align-items:center!important;gap:6px 10px!important;border:1px solid rgba(163,163,163,.18)!important;border-radius:14px!important;padding:12px!important;margin-top:10px!important;background:rgba(255,255,255,.04)!important;}
  html:not(.dark) #gchDespesas[data-gch-modo="cards"] table tbody tr{background:#f8fafc!important;border-color:#e5e5e5!important;box-shadow:0 1px 2px rgba(17,17,17,.06)!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td{display:block!important;padding:0!important;border:0!important;min-width:0!important;overflow-wrap:anywhere!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td:nth-child(1){grid-area:sel;align-self:start;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td:nth-child(2){grid-area:data;font-size:12px!important;color:#a3a3a3!important;white-space:nowrap!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td:nth-child(3){grid-area:desc;font-size:14px!important;font-weight:600!important;line-height:1.3!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td:nth-child(4){grid-area:cat;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td:nth-child(5){grid-area:val;text-align:right!important;font-size:15px!important;font-weight:700!important;white-space:nowrap!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td:nth-child(6){grid-area:status;text-align:right!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td:nth-child(7){grid-area:anexo;font-size:12px!important;color:#a3a3a3!important;}
  #gchDespesas[data-gch-modo="cards"] table tbody tr>td:nth-child(8){grid-area:acoes;text-align:right!important;}

  /* ---------- Menu de acoes (tres pontos) ---------- */
  .gch-lanc-menu{position:fixed;z-index:2147483000;min-width:176px;padding:6px;border-radius:14px;border:1px solid rgba(163,163,163,.22);background:#111111;box-shadow:0 12px 30px rgba(0,0,0,.45);}
  html:not(.dark) .gch-lanc-menu{background:#fff;border-color:#e5e5e5;box-shadow:0 12px 30px rgba(17,17,17,.16);}
  .gch-lanc-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:#e5e5e5;font-size:13px;font-weight:600;text-align:left;cursor:pointer;transition:all .3s;}
  html:not(.dark) .gch-lanc-menu button{color:#111111;}
  .gch-lanc-menu button:hover{background:rgba(163,163,163,.14);}
  .gch-lanc-menu button i{width:16px;text-align:center;}
  .gch-lanc-menu button.gch-perigo{color:#F43F5E;}
}
