/* Estoque e Fornecedores: só o que o gem.css não tem. Apenas tokens (zero cor literal). O prefixo .app vence as regras provisórias do portal.css. */
.app [hidden] { display: none !important; }
.app .btn, .app .entrada { margin: 0; }
.app .campo > label { margin: 0; }
.app .tabela { margin: 0; }
.app .tabela td.dir, .app .tabela th.dir { text-align: right; }

/* Diálogo nativo (<dialog>): o .modal do gem.css é só o corpo; aqui entra a camada de fundo e o limite de altura */
dialog.modal { border: 0; margin: auto; width: calc(100% - 2rem); max-height: calc(100dvh - 2rem); overflow-y: auto; }
dialog.modal:not([open]) { display: none; }
dialog.modal::backdrop { background: var(--veu); }
.msg-erro .ic { margin-top: .15rem; }
.app .lista-cartoes > li.linha-aviso { background: var(--aviso-suave); border-style: dashed; border-color: var(--aviso-borda); }
.app a.voltar { display: inline-flex; align-items: center; min-height: var(--alvo); }
.app .lista-cartoes > li .selo { align-self: flex-start; }
