/* E8: diário (aviso, próxima refeição, lançar por refeição, medidas, repetir). */
.aviso-desfazer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem .8rem; margin: 0 0 .75rem; padding: .7rem .9rem; border-radius: 14px; background: var(--ferro); color: var(--branco); font-weight: 700; }
.aviso-desfazer p { margin: 0; }
.aviso-desfazer form { margin: 0; }
.aviso-desfazer .botao { min-height: 2.75rem; }

/* Próxima refeição (seção 7.1): ação principal acima da barra fixa na 1ª tela. */
.proxima-refeicao { margin: 0 0 1rem; }
.proxima-refeicao h2 { margin: 0 0 .6rem; }
.proxima-refeicao .sobre { display: block; color: var(--aco); font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; }
.acoes-refeicao { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .75rem; margin-top: .6rem; }
.acoes-refeicao form { margin: 0; }
.acoes-refeicao .botao, .acoes-refeicao .adicionar { min-height: 2.75rem; display: inline-flex; align-items: center; }
.refeicao-vazia .dica { margin: .25rem 0 0; }
.lancamentos .origem { display: block; color: var(--aco); font-size: .8rem; font-style: italic; }
.achado { display: inline-block; margin-left: .35rem; color: var(--aco); font-size: .8rem; font-style: italic; }

/* Página de lançar por refeição (seção 7.2). */
.folha-lancar .cartao { margin: 0 0 1rem; }
.lista-recentes { list-style: none; margin: 0; padding: 0; }
.lista-recentes li { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: .25rem .6rem; padding: .5rem 0; border-top: 1px solid var(--linha); }
.lista-recentes li:first-child { border-top: 0; }
.lista-recentes .nome { grid-column: 1; font-weight: 700; overflow-wrap: anywhere; }
.lista-recentes .info { grid-column: 1; color: var(--aco); font-size: .85rem; }
.lista-recentes form { grid-column: 2; grid-row: 1 / span 2; margin: 0; }
.lista-recentes .ajustar { grid-column: 3; grid-row: 1 / span 2; min-height: 2.75rem; min-width: 2.75rem; display: inline-flex; align-items: center; }
.botao.mais { min-width: 2.75rem; min-height: 2.75rem; padding: 0; font-size: 1.4rem; }
.chips.medidas { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 0 .75rem; }
.chip-medida { margin: 0; }
.chip-medida .chip-g { min-height: 2.75rem; }
.campo-e8 { display: flex; flex-direction: column; gap: .25rem; margin: 0 0 .6rem; }
.campo-e8 input { min-height: 2.75rem; max-width: 100%; }
.campo-e8 .erro, .folha-lancar .erro { color: var(--erro); font-weight: 700; }
.campo-e8 input[aria-invalid="true"] { border-color: var(--erro); outline: 2px solid var(--erro); }
.folha-lancar details > summary { min-height: 2.75rem; display: flex; align-items: center; cursor: pointer; font-weight: 800; }
.folha-lancar .resultados { list-style: none; margin: .5rem 0 0; padding: 0; }
.folha-lancar .resultados a { display: flex; flex-wrap: wrap; gap: .25rem .5rem; min-height: 2.75rem; align-items: center; padding: .35rem 0; overflow-wrap: anywhere; }
.folha-lancar .kcal100 { color: var(--aco); font-size: .85rem; }

/* Diálogo de lançar (com JS). */
.dialogo-lancar { width: min(40rem, calc(100vw - 1rem)); max-height: calc(100dvh - 2rem); overflow: auto; border: 0; border-radius: var(--raio); padding: 1rem; }
.dialogo-lancar .fechar { float: right; min-width: 2.75rem; min-height: 2.75rem; }

/* Confirmação de repetir (seção 8). */
.repetir-confirmar .botoes { display: flex; flex-direction: column; gap: .75rem; margin-top: 1rem; }
.repetir-confirmar form { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.estimativas { margin-top: .25rem; }
.acoes-refeicao .lancar-aqui { min-height: 2.75rem; display: inline-flex; align-items: center; color: var(--aco); }
