/* aba de detalhe: painel flutuante do tamanho do conteúdo */
dialog.detalhe { position: fixed; inset: 16px 16px auto auto; display: none; width: min(460px, calc(100% - 32px)); max-width: none; max-height: calc(100dvh - 32px); margin: 0; padding: 0; border: 0; border-radius: 24px; background: var(--sup); color: var(--tinta); box-shadow: var(--sombra-2); overflow: hidden; }
dialog.detalhe::backdrop { background: rgb(var(--i) / 0.22); }
dialog.detalhe[open] { display: flex; flex-direction: column; animation: detalhe-entra 380ms var(--ios); }
@keyframes detalhe-entra { from { opacity: 0; transform: translateX(28px) scale(0.98); } }
.detalhe__alca { display: none; }
.detalhe__topo { display: flex; flex: none; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 16px 16px 12px 20px; }
.detalhe__tit { min-width: 0; outline: 0; }
.detalhe__nome { font-size: 0.875rem; font-weight: 600; color: var(--suave); letter-spacing: -0.006em; }
.detalhe__valor { margin-top: 2px; font-size: 1.875rem; font-weight: 700; line-height: 1.1; letter-spacing: -0.028em; font-variant-numeric: tabular-nums; }
.detalhe__topo .redondo { width: 34px; height: 34px; border: 0; background: var(--preench); -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; }
.detalhe__topo .redondo .ic { width: 16px; height: 16px; }
.detalhe__abas { display: flex; flex: none; margin: 0 20px 4px; }
.detalhe__abas button { flex: 1; min-width: 0; padding: 0 6px; white-space: nowrap; }
.detalhe__abas:empty { display: none; }
.detalhe__corpo { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 12px 20px 20px; }
.detalhe__corpo .faixa { padding: 0; border-radius: 0; background: none; box-shadow: none; }
.detalhe__corpo .faixas { gap: 18px; }
.detalhe__corpo .linha { min-height: 50px; padding: 7px 4px; font-size: 0.9375rem; }
.detalhe__corpo .linha__ic { width: 32px; height: 32px; }
.detalhe__corpo .linha__ic .ic { width: 16px; height: 16px; }
.detalhe__corpo .barras-h { gap: 4px; }
.detalhe__corpo .barra-h { grid-template-columns: 112px minmax(0, 1fr) 62px; align-items: center; gap: 10px; min-height: 32px; margin: 0 -8px; padding: 2px 8px; border-radius: 10px; }
.detalhe__corpo .barra-h__topo { display: contents; }
.detalhe__corpo .barra-h__topo span { grid-column: 1; grid-row: 1; font-size: 0.8125rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.detalhe__corpo .barra-h__topo b { grid-column: 3; grid-row: 1; font-size: 0.8125rem; text-align: right; }
.detalhe__corpo .barra-h__fundo { grid-column: 2; grid-row: 1; }
.detalhe__sec { margin-bottom: 8px; color: var(--suave); font-size: 0.8125rem; font-weight: 500; }
.detalhe__corpo .linha-numeros { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 12px; }
.detalhe__corpo .linha-numeros > div + div { border-top: 0; padding-top: 0; border-left: 1px solid var(--linha); padding-left: 12px; }
.detalhe__corpo .linha-numeros b { font-size: 1.125rem; }
/* colunas de horário */
.colunas { display: grid; grid-template-columns: repeat(var(--n), minmax(0, 1fr)); gap: 4px; }
.coluna { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 16px 72px 16px; gap: 3px; min-width: 0; border-radius: 6px; justify-items: center; }
.coluna__v { visibility: hidden; color: var(--tinta); font-size: 0.8125rem; font-weight: 600; letter-spacing: 0; white-space: nowrap; font-variant-numeric: tabular-nums; }
.coluna--pico .coluna__v, .coluna:hover .coluna__v, .coluna:focus-visible .coluna__v { visibility: visible; }
.coluna__a { display: flex; align-items: flex-end; width: 100%; height: 100%; }
.coluna__a i { display: block; width: 100%; border-radius: 4px 4px 0 0; background: rgb(var(--c) / 0.4); transition: background-color 140ms ease; }
.coluna:hover .coluna__a i, .coluna--pico .coluna__a i { background: var(--ocean); }
.coluna__r { color: var(--suave); font-size: 0.8125rem; letter-spacing: 0; }
/* calendário compacto */
.cal-grade { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.cal-grade .painel-topo { margin-bottom: 6px; }
.cal-grade > .faixa + .faixa { padding-top: 12px; border-top: 1px solid var(--linha); }
.cal-grade .painel-topo .t2, .cal-grade [data-lista-dia] .t2 { font-size: 0.9375rem; }
.cal-grade [data-lista-dia] .painel-topo { margin-bottom: 2px; }
.cal__nav { display: flex; align-items: center; gap: 2px; margin-left: -8px; }
.cal__nav .t2::first-letter { text-transform: uppercase; }
.cal__nav .redondo { width: 32px; height: 32px; border: 0; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; color: var(--ocean); }
.cal__nav .redondo .ic { width: 16px; height: 16px; }
.cal__nav .redondo:hover:not([disabled]) { background: var(--hover); }
.cal__nav .seta-esq { rotate: 90deg; }
.cal__nav .seta-dir { rotate: -90deg; }
.cal { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 3px; }
.cal__sem { padding: 0 0 2px; color: var(--suave); font-size: 0.8125rem; font-weight: 500; text-align: center; }
.cal__dia { display: grid; align-content: center; justify-items: center; gap: 0; min-height: 44px; padding: 2px 0; border: 2px solid transparent; border-radius: 10px; background: rgb(var(--c) / var(--t, 0)); text-align: center; transition: border-color 140ms ease; }
.cal__dia b { font-size: 0.8125rem; font-weight: 500; line-height: 1.2; }
.cal__dia span { font-size: 0.8125rem; line-height: 1.1; letter-spacing: -0.01em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cal__dia:hover:not([disabled]) { border-color: rgb(var(--o) / 0.35); }
.cal__dia[disabled] { color: var(--suave); opacity: 0.5; cursor: default; }
.cal__dia--hoje b { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: var(--ocean); color: var(--sobre); font-size: 0.8125rem; }
.cal__dia[aria-pressed="true"] { border-color: var(--ocean); }
@media (pointer: coarse) { .detalhe__topo .redondo, .cal__nav .redondo { width: 44px; height: 44px; } }
@media (max-width: 640px) {
  dialog.detalhe { inset: auto 0 0 0; width: 100%; max-height: 88dvh; border-radius: 24px 24px 0 0; padding-bottom: env(safe-area-inset-bottom); }
  dialog.detalhe[open] { animation-name: folha-sobe; }
  .detalhe__alca { display: block; flex: none; width: 36px; height: 5px; margin: 8px auto 0; border-radius: 3px; background: rgb(var(--o) / 0.25); }
  .detalhe__topo { padding-top: 8px; }
  .cal__dia span { font-size: 0.8125rem; }
}
@keyframes folha-sobe { from { opacity: 0.4; transform: translateY(56px); } }

/* fila de pedidos: linha que expande */

.mais-caixa { display: flex; justify-content: center; padding-top: 12px; }
.passo__marca { display: grid; place-items: center; width: 26px; height: 26px; flex: none; border-radius: 50%; box-shadow: inset 0 0 0 2px var(--contorno); color: #fff; }
.passo__marca--ok { background: var(--ok-chave); box-shadow: none; }
.passo__marca .ic { width: 15px; height: 15px; }

/* perfil: ganhos, no formato de app de banco */
.perf { display: grid; gap: 14px; width: 100%; max-width: 1080px; margin: 0 auto; }
.perf .ed { margin-top: 18px; }
.ganho { --azul: #0F1F1A; display: grid; gap: 18px; padding: 18px 18px 22px; border-radius: var(--r-g); background: var(--heroi); color: #FFFFFF; box-shadow: var(--sombra-2); }
.ganho :focus-visible { outline-color: #FFFFFF; }
.ganho__topo { display: flex; align-items: center; gap: 11px; }
.ganho__topo > .avatar { background: #FFFFFF; color: #0F1F1A; }
.ganho__quem { display: grid; flex: 1; min-width: 0; line-height: 1.25; }
.ganho__quem span { font-size: 0.8125rem; opacity: 0.85; }
.ganho__quem b { font-size: 1.0625rem; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ganho__icones { display: flex; gap: 8px; }
.ganho__ic { position: relative; display: grid; place-items: center; width: var(--alvo); height: var(--alvo); padding: 0; border: 0; border-radius: 50%; background: rgb(255 255 255 / 0.14); color: #FFFFFF; }
.ganho__ic .sino-num { position: absolute; top: 10px; right: 11px; width: 9px; height: 9px; border-radius: 50%; background: #FF8A7A; box-shadow: 0 0 0 2px #1B2329; }
@media (min-width: 960px) { .ganho__icones { display: none; } }
.ganho__meio { display: grid; gap: 20px; }
@media (min-width: 900px) { .ganho__meio { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 28px; align-items: stretch; } }
.ganho__valor > p:first-child { font-size: 0.875rem; opacity: 0.9; }
.ganho__linha { display: flex; align-items: center; gap: 8px; }
.ganho__linha strong { font-size: clamp(2.25rem, 9vw, 3.25rem); font-weight: 700; line-height: 1.12; letter-spacing: -0.035em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ganho__olho { display: grid; place-items: center; flex: none; width: var(--alvo); height: var(--alvo); padding: 0; border: 0; border-radius: 50%; background: none; color: #FFFFFF; opacity: 0.85; }
.ganho__olho[aria-pressed="true"] { opacity: 1; background: rgb(255 255 255 / 0.14); }
.ganho__nota { min-height: 1.3em; font-size: 0.875rem; opacity: 0.95; }
.ganho__seg { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px; margin-top: 14px; padding: 3px; border-radius: 14px; background: rgb(255 255 255 / 0.14); }
.ganho__seg button { min-height: 38px; padding: 0 4px; border: 0; border-radius: 11px; background: none; color: #FFFFFF; font-size: 0.875rem; transition: background-color 180ms ease; }
.ganho__seg button[aria-pressed="true"] { background: #FFFFFF; color: #0F1F1A; font-weight: 600; }
@media (pointer: coarse) { .ganho__seg button { min-height: var(--alvo); } }
.ganho__acoes { display: grid; grid-template-columns: 1fr 1fr 52px; gap: 8px; margin-top: 12px; }
.ganho__btn { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 50px; padding: 0 8px; border: 0; border-radius: 16px; background: #FFFFFF; color: #0F1F1A; font-size: 0.9375rem; font-weight: 600; text-decoration: none; transition: transform 180ms var(--ios); }
.ganho__btn:active { transform: scale(0.97); }
.ganho__dica { display: grid; gap: 10px; align-content: start; padding: 14px; border-radius: 20px; background: #FFFFFF; color: #0F1F1A; }
.ganho__dica-tit { display: flex; align-items: center; gap: 8px; font-weight: 600; }
.ganho__dica-tit .asten { color: #0F1F1A; }
.ganho__dica-in { display: grid; gap: 12px; padding: 12px; border-radius: 14px; background: rgb(var(--c) / 0.06); font-size: 0.9375rem; line-height: 1.4; }
.ganho__dica-in b { font-weight: 600; }
.ganho__dica-btn { display: flex; align-items: center; justify-content: center; min-height: var(--alvo); border-radius: 12px; background: #FFFFFF; color: #0F1F1A; font-size: 0.9375rem; font-weight: 500; text-decoration: none; }
.ganho__dica-btn:hover { background: rgb(var(--c) / 0.3); }
.perf__chips { display: flex; gap: 6px; margin: 10px 0 4px; }
.perf__chips button { min-height: 36px; padding: 0 14px; border: 0; border-radius: 999px; background: var(--preench); color: var(--tinta); font-size: 0.875rem; }
.perf__chips button[aria-pressed="true"] { background: var(--tinta); color: var(--cream); font-weight: 500; }
@media (pointer: coarse) { .perf__chips button { min-height: var(--alvo); } }
@media (max-width: 959px) {
  .conteudo:has(.perf) .topo-app { display: none; }
  .conteudo:has(.perf) { padding-top: 0; }
  .ganho { margin: 0 calc(-1 * clamp(14px, 2.2vw, 28px)); padding-top: 16px; border-radius: 0 0 28px 28px; box-shadow: none; }
}

/* perfil: faixa de arrastar e cartão */
.pf { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; width: 100%; max-width: 1080px; margin: 0 auto; }
.pf-trilho { position: relative; display: grid; grid-template-columns: 1fr 1fr; justify-self: center; width: min(100%, 340px); padding: 3px; border-radius: 999px; background: var(--preench); touch-action: none; -webkit-user-select: none; user-select: none; cursor: grab; }
.pf-trilho.pegando { cursor: grabbing; }
.pf-trilho button { position: relative; min-height: var(--alvo); padding: 0 8px; border: 0; border-radius: 999px; background: none; color: var(--tinta); font-size: 0.9375rem; cursor: inherit; }
.pf-trilho button[aria-pressed="true"] { font-weight: 600; }
.pf-deck { position: relative; display: flex; align-items: flex-start; overflow: auto hidden; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.pf-deck::-webkit-scrollbar { display: none; }
.pf-deck.arrastando { scroll-snap-type: none; }
.pf-pag { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; flex: 0 0 100%; min-width: 0; padding-bottom: 4px; scroll-snap-align: start; scroll-snap-stop: always; }
.pf .ganho { margin: 0; padding-top: 18px; border-radius: 28px; }
.ganho__cli { margin-top: 2px; font-size: 0.875rem; font-weight: 600; }
.pf .ed__cartao { border-radius: 22px; }
.pf-col { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.pf-grupo { padding: 16px; border-radius: 22px; background: var(--sup-forte); }
.pf-grupo .ed__rot { color: var(--suave); font-size: 0.875rem; font-weight: 400; letter-spacing: 0; text-transform: none; }
.pf-grupo .ed__lista { border-top: 0; }
.pf-grupo .ed__sair { margin-top: 2px; }
@media (max-width: 959px) {
  .conteudo:has(.pf) .topo-app { display: none; }
  .conteudo:has(.pf) { padding-top: 12px; }
}

/* perfil: tela editorial */
.ed { display: grid; gap: 28px; width: 100%; max-width: 1080px; margin: 0 auto; padding-bottom: 20px; }
@media (min-width: 1000px) { .ed { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: start; } }
.ed__col { display: grid; gap: 22px; align-content: start; min-width: 0; }
.ed__rot { color: var(--tinta); font-size: 0.8125rem; font-weight: 500; letter-spacing: 0.09em; line-height: 1.3; }
.ed__topo { display: flex; justify-content: space-between; padding-bottom: 10px; border-bottom: 1px solid var(--linha); font-size: 0.8125rem; font-weight: 500; letter-spacing: 0.09em; }
.ed__alto { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.ed__foto { position: relative; display: block; aspect-ratio: 1 / 1.05; background: var(--beige); overflow: hidden; cursor: pointer; }
.ed__foto:focus-within { outline: 2px solid var(--ocean); outline-offset: 2px; }
.ed__foto img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.05); transition: filter 240ms ease; }
.ed__foto:hover img { filter: none; }
.ed__foto input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.ed__iniciais { display: grid; place-items: center; height: 100%; color: var(--tinta); font-size: clamp(2.75rem, 8vw, 4.5rem); font-weight: 300; letter-spacing: -0.04em; }
.ed__foto-acao { position: absolute; right: 6px; bottom: 6px; display: grid; place-items: center; width: var(--alvo); height: var(--alvo); border-radius: 50%; background: rgb(255 255 255 / 0.9); color: #0F1F1A; }
.ed__num-caixa { display: grid; justify-items: end; gap: 2px; width: 100%; padding: 0; border: 0; background: none; color: inherit; text-align: right; text-decoration: none; transition: opacity 160ms ease; }
.ed__num-caixa:hover { opacity: 0.7; }
.ed__num { font-size: clamp(4.75rem, 11vw, 7.25rem); font-weight: 300; line-height: 0.92; letter-spacing: -0.05em; font-variant-numeric: lining-nums tabular-nums; }
.ed__status { display: inline-flex; align-items: center; gap: 8px; min-height: var(--alvo); padding: 0; border: 0; background: none; color: inherit; font-size: 0.8125rem; font-weight: 500; letter-spacing: 0.09em; }
.ed__status i { width: 10px; height: 10px; flex: none; border-radius: 50%; background: var(--st); }
.ed__nome { font-size: clamp(2.75rem, 6vw, 3.75rem); font-weight: 400; line-height: 1.02; letter-spacing: -0.035em; overflow-wrap: anywhere; }
.ed__onde { display: inline-flex; align-items: center; gap: 12px; width: max-content; max-width: 100%; margin-top: -12px; color: inherit; text-decoration: none; }
.ed__onde:hover .ed__seta { transform: translate(2px, -2px); }
.ed__col > .ed__rot { margin-top: -14px; }
.ed__seta { width: 14px; height: 14px; flex: none; stroke-width: 1.3; transition: transform 200ms var(--ios); }
.ed__cartao { --pt: 255 253 247; display: grid; gap: 16px; padding: 22px; background: var(--heroi); color: #FFFFFF; text-decoration: none; transition: transform 220ms var(--ios); }
.ed__cartao .ed__rot { color: #FFFFFF; }
.ed__cartao:hover { transform: translateY(-2px); }
.ed__cartao:hover .ed__seta { transform: translate(2px, -2px); }
.ed__cartao-topo { display: flex; justify-content: space-between; }
.ed__cartao-meio { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: 18px; align-items: center; }
.ed__cartao-txt { font-size: 1.0625rem; line-height: 1.32; }
.ed__pontos { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 5px; justify-items: center; }
.ed__pontos i { width: 6px; height: 6px; border-radius: 50%; background: rgb(var(--pt) / 0.25); }
.ed__pontos i.cheio { background: #FFFFFF; }
.ed__cartao-fim { display: inline-flex; align-items: center; gap: 12px; }
.ed__lista { margin-top: 8px; border-top: 1px solid var(--linha); }
.ed__linha { display: flex; justify-content: space-between; align-items: center; gap: 14px; width: 100%; min-height: 50px; padding: 8px 0; border: 0; border-bottom: 1px solid var(--linha); background: none; color: inherit; font-size: 0.9375rem; text-align: left; text-decoration: none; }
a.ed__linha:hover .ed__seta, button.ed__linha:hover .ed__seta { transform: translate(2px, -2px); }
.ed__valor { display: inline-flex; align-items: center; gap: 12px; min-width: 0; color: var(--suave); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ed__sair { width: 100%; min-height: 50px; margin-top: 10px; padding: 0; border: 0; background: none; color: var(--cai); font-weight: 500; text-align: left; }

/* seção de abas do painel */
.secao-abas { display: grid; gap: 12px; scroll-margin-top: 72px; }
.abas2 { position: relative; display: inline-grid; grid-auto-flow: column; grid-auto-columns: 1fr; justify-self: start; padding: 4px; border-radius: 16px; background: var(--preench); }
.abas2__pilula { position: absolute; left: 0; top: 4px; bottom: 4px; border-radius: 12px; background: var(--ocean); box-shadow: 0 4px 14px rgb(var(--s) / 0.22); transition: transform 420ms var(--ios), width 420ms var(--ios); will-change: transform; }
.abas2 button { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 22px; border: 0; border-radius: 12px; background: none; color: var(--tinta); font-size: 1rem; font-weight: 500; white-space: nowrap; transition: color 220ms ease; }
.abas2 button[aria-selected="true"] { color: var(--sobre); }
.abas2 button:not([aria-selected="true"]):hover { color: var(--slate); }
.abas2 b { min-width: 22px; padding: 1px 7px; border-radius: 11px; background: var(--slate); color: #FFFFFF; font-size: 0.8125rem; font-weight: 600; text-align: center; }
@media (max-width: 560px) { .abas2 { display: grid; justify-self: stretch; } .abas2 button { padding: 0 8px; font-size: 0.9375rem; } }
.painel-abas2 { --dir: 1; padding: clamp(18px, 2.2vw, 28px); overflow: hidden; }
.anima .entra-lista > * { animation: lista-entra 540ms var(--suave-sai) backwards; animation-delay: calc(var(--i, 0) * 45ms); }
@keyframes lista-entra { from { opacity: 0; transform: translate3d(calc(var(--dir, 1) * 22px), 8px, 0); } }

/* pedidos a confirmar */
.fila2 { display: grid; gap: 20px; }
.fila2__topo { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 14px; }
.fila2__total { font-size: clamp(2.25rem, 4vw, 3rem); font-weight: 700; line-height: 1.12; letter-spacing: -0.035em; font-variant-numeric: tabular-nums; }
.fila2__lista { display: grid; gap: 10px; }
.fila2__item { border-radius: 20px; background: var(--preench); transition: background-color 240ms ease, box-shadow 320ms ease; }
.fila2__item:hover { background: var(--hover); }
.fila2__item.aberto { background: var(--sup-forte); box-shadow: 0 0 0 1px var(--linha), var(--sombra-2); }
.fila2__linha { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto auto 20px; gap: 16px; align-items: center; width: 100%; min-height: 88px; padding: 12px 18px 12px 12px; border: 0; border-radius: 20px; background: none; color: inherit; text-align: left; }
.fila2__mini { position: relative; display: block; width: 64px; height: 64px; overflow: hidden; border-radius: 14px; background: var(--slate); transition: transform 320ms var(--ios); }
.fila2__mini img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.fila2__linha:hover .fila2__mini { transform: scale(1.05) rotate(-2deg); }
.fila2__quem { display: grid; gap: 2px; min-width: 0; }
.fila2__quem b { font-size: 1.125rem; font-weight: 600; letter-spacing: -0.015em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fila2__quem span { color: var(--suave); font-size: 0.9375rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fila2__situacao { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; background: var(--beige); font-size: 0.8125rem; font-weight: 500; white-space: nowrap; }
.fila2__pulso { position: relative; width: 8px; height: 8px; border-radius: 50%; background: #D9A400; }
.fila2__pulso::after { content: ""; position: absolute; inset: 0; border-radius: 50%; background: #D9A400; animation: pulso 1.9s ease-out infinite; }
@keyframes pulso { 0% { transform: scale(1); opacity: 0.8; } 70%, 100% { transform: scale(3); opacity: 0; } }
.sit-curto { display: none; }
@media (max-width: 760px) { .sit-longo { display: none; } .sit-curto { display: inline; } }
@media (max-width: 359px) { .sit-curto { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); } .fila2__item .fila2__situacao { padding: 0 0 0 4px; background: none; } }
.fila2__valor { font-size: 1.25rem; font-weight: 700; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.fila2__seta { color: var(--suave); transition: transform 380ms var(--ios); }
.aberto .fila2__seta { transform: rotate(180deg); }
.fila2__corpo { display: grid; grid-template-rows: 0fr; transition: grid-template-rows 460ms var(--ios); }
.aberto .fila2__corpo { grid-template-rows: 1fr; }
.fila2__dentro { min-height: 0; overflow: hidden; visibility: hidden; transition: visibility 460ms; }
.aberto .fila2__dentro { visibility: visible; }
.fila2__conteudo { display: grid; grid-template-columns: minmax(150px, 210px) minmax(0, 1fr); gap: 22px; padding: 4px 18px 20px 12px; opacity: 0; transform: translate3d(0, -8px, 0); transition: opacity 240ms ease, transform 420ms var(--ios); }
.aberto .fila2__conteudo { opacity: 1; transform: none; transition-delay: 70ms; }
.fila2__dados { display: grid; gap: 16px; align-content: start; min-width: 0; }
.fila2__motivo { display: flex; gap: 10px; align-items: flex-start; font-size: 1rem; line-height: 1.4; }
.fila2__motivo .ic { color: #A87F00; margin-top: 2px; }
.fila2__campos { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; }
.fila2__campos > div { padding: 10px 12px; border-radius: 12px; background: var(--preench); }
.fila2__campos dt { color: var(--suave); font-size: 0.8125rem; }
.fila2__campos dd { font-size: 1rem; font-weight: 500; overflow-wrap: anywhere; }
.fila2__campos .duvida { background: var(--beige); box-shadow: inset 0 0 0 1.5px #D9A400; }
.fila2__vazia { display: grid; justify-items: center; gap: 10px; padding: 34px 12px; text-align: center; }
.fila2__vazia h3 { font-size: 1.375rem; font-weight: 700; letter-spacing: -0.02em; }
.fila2__ok { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--ok-chave); color: #fff; }
@media (max-width: 760px) {
  .fila2__topo .btn { width: 100%; }
  .fila2__linha { grid-template-columns: 52px minmax(0, 1fr) auto 18px; gap: 4px 12px; min-height: 84px; padding: 10px 12px 10px 10px; }
  .fila2__mini { grid-row: 1 / 3; width: 52px; height: 60px; }
  .fila2__quem { grid-column: 2 / 4; grid-row: 1; }
  .fila2__valor { grid-column: 3; grid-row: 2; font-size: 1.0625rem; justify-self: end; }
  .fila2__situacao { grid-column: 2; grid-row: 2; justify-self: start; gap: 6px; padding: 3px 9px; font-size: 0.8125rem; }
  .fila2__seta { grid-column: 4; grid-row: 1 / 3; }
  .fila2__conteudo { grid-template-columns: minmax(0, 1fr); padding: 2px 12px 14px; }
  .fila2__dados .acoes .btn { flex: 1 1 100%; }
}

/* entradas agrupadas por dia */
.dias { display: grid; gap: 22px; }
.dia__topo { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding-bottom: 6px; border-bottom: 1px solid var(--linha); }
.dia__topo h3 { font-size: 1.0625rem; font-weight: 600; letter-spacing: -0.012em; }
.dia__topo b { color: var(--suave); font-size: 0.9375rem; font-weight: 500; font-variant-numeric: tabular-nums; }
.painel-abas2 .dia .linha { min-height: 72px; padding: 10px; font-size: 1rem; transition: background-color 160ms ease, transform 260ms var(--ios); }
.painel-abas2 .dia .linha:hover { transform: translate3d(4px, 0, 0); }
.painel-abas2 .linha__ic { width: 46px; height: 46px; }
.painel-abas2 .linha__txt b, .painel-abas2 .linha__fim b { font-size: 1.0625rem; }
.painel-abas2 .linha__txt span, .painel-abas2 .linha__fim span { font-size: 0.875rem; }

/* principais clientes */
@keyframes barra-cresce { from { transform: scaleX(0); } }

/* atalhos do painel */
.atalhos { display: flex; gap: 8px; margin: -4px 0 16px; overflow-x: auto; scrollbar-width: none; }
.atalho { display: inline-flex; align-items: center; gap: 8px; flex: none; min-height: var(--alvo); padding: 0 16px 0 12px; border: 1px solid rgb(255 255 255 / 0.5); border-radius: 999px; background: var(--sup); box-shadow: var(--sombra-1); font-size: 0.9375rem; font-weight: 500; transition: background-color 160ms ease, transform 180ms var(--ios); }
.atalho:hover { background: var(--sup-forte); transform: translate3d(0, -1px, 0); }
.atalho:active { transform: scale(0.97); }
.atalho .ic { width: 17px; height: 17px; }
/* agenda e alertas */
.agenda__hora { display: grid; flex: none; min-width: 52px; line-height: 1.2; }
.agenda__hora b { font-weight: 600; font-variant-numeric: tabular-nums; }
.agenda__hora span { color: var(--suave); font-size: 0.8125rem; }
.etq--confirmado { background: var(--ok-fundo); color: var(--ok); }
.etq--cancelado, .etq--faltou { background: var(--cai-fundo); color: var(--cai); }
.semana { display: flex; align-items: center; gap: 6px; }

/* menu lateral no estilo do Mac: grupos que abrem e fecham */
.menu2 { display: grid; gap: 1px; }
.menu2__topo { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 36px; padding: 0 8px; border: 0; border-radius: 9px; background: none; color: var(--tinta); font-size: 0.875rem; font-weight: 500; text-align: left; text-decoration: none; transition: background-color 140ms ease; }
.menu2__topo:hover { background: var(--hover); }
.menu2__topo .ic:first-child { width: 18px; height: 18px; color: var(--slate); }
.menu2__topo span { flex: 1; }
a.menu2__topo[aria-current="page"], .menu2__grupo.ativo:not(.aberto) > .menu2__topo { background: var(--hover-forte); font-weight: 600; }
.menu2__seta { width: 13px; height: 13px; color: var(--suave); rotate: -90deg; transition: rotate 300ms var(--ios); }
.aberto > .menu2__topo .menu2__seta { rotate: 0deg; }
.menu2__sub { display: grid; grid-template-rows: 0fr; transition: grid-template-rows 320ms var(--ios); }
.aberto > .menu2__sub { grid-template-rows: 1fr; }
.menu2__dentro { min-height: 0; overflow: hidden; visibility: hidden; margin-left: 16px; border-left: 1px solid var(--linha); transition: visibility 320ms; }
.aberto > .menu2__sub > .menu2__dentro { visibility: visible; }
.menu2__dentro a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 32px; margin: 1px 0 1px 10px; padding: 0 8px; border-radius: 8px; color: var(--tinta); font-size: 0.8125rem; text-decoration: none; transition: background-color 140ms ease; }
.menu2__dentro a:hover { background: var(--hover); }
.menu2__dentro a[aria-current="page"] { background: var(--hover-forte); font-weight: 600; }
.menu2__dentro b { color: var(--suave); font-size: 0.8125rem; font-weight: 500; font-variant-numeric: tabular-nums; }
@media (pointer: coarse) { .menu2__topo { min-height: 44px; } .menu2__dentro a { min-height: 44px; } }
.ilha__grp { margin: 10px 8px 2px; color: var(--suave); font-size: 0.8125rem; font-weight: 600; }
.ilha__painel .ilha__grp:first-child { margin-top: 2px; }
/* botão + */
.novo { position: relative; }
.novo__menu { position: absolute; right: 0; top: calc(100% + 8px); z-index: 40; width: 230px; padding: 6px; border-radius: 16px; background: var(--vidro); -webkit-backdrop-filter: blur(28px) saturate(1.8); backdrop-filter: blur(28px) saturate(1.8); box-shadow: var(--sombra-2); animation: novo-abre 220ms var(--ios); transform-origin: top right; }
.novo__menu[hidden] { display: none; }
@keyframes novo-abre { from { opacity: 0; transform: scale(0.92); } }
.novo__menu button { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 42px; padding: 0 10px; border: 0; border-radius: 10px; background: none; color: var(--tinta); font-size: 0.9375rem; text-align: left; }
.novo__menu button:hover { background: var(--ocean); color: var(--sobre); }
.novo__menu .ic { width: 17px; height: 17px; }
/* indicadores em cartões, como os widgets do iPhone */

/* agenda: semana que abre no mês, dia fechado e clientes embaixo */
.ag { --laranja: #B85A00; --verde: var(--ok); --vermelho: var(--cai); display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; width: 100%; max-width: 920px; margin: 0 auto; }
:root[data-tema="escuro"] .ag { --laranja: #FFA94D; }
.ag__titulo { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.casca:has(.ag) .lateral__cartao--mini { display: none; }
.ag-cal { padding: 14px 16px 10px; overflow: hidden; border: 8px solid var(--sup-forte); border-radius: 30px; background: var(--sup); box-shadow: var(--sombra-1); }
.ag-cal__topo { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 6px; }
.ag-cal__topo h2 { font-size: 1rem; font-weight: 500; color: var(--suave); }
.ag-cal__topo h2::first-letter { text-transform: uppercase; }
.ag-seta { display: grid; place-items: center; flex: none; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--tinta); transition: background-color 150ms ease, transform 200ms var(--ios); }
.ag-seta:hover { background: var(--hover); }
.ag-seta:active { transform: scale(0.92); }
.ag-seta .ic { width: 17px; height: 17px; }
.ag-seta .seta-esq { rotate: 90deg; }
.ag-seta .seta-dir { rotate: -90deg; }
.ag-seta--branca { width: var(--alvo); height: var(--alvo); background: var(--sup-forte); box-shadow: 0 1px 3px rgb(var(--s) / 0.1); }
.ag-cal__grade { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); row-gap: 2px; text-align: center; }
.ag-cal__grade > span { padding: 2px 0 6px; color: var(--suave); font-size: 0.8125rem; }
.ag-dia { --cor: var(--tinta); display: grid; justify-items: center; gap: 3px; min-height: 52px; padding: 2px 0; border: 0; background: none; color: var(--cor); }
.ag-dia b { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; font-size: 1rem; font-weight: 500; font-variant-numeric: tabular-nums; transition: background-color 200ms ease, color 200ms ease, transform 260ms cubic-bezier(0.34, 1.56, 0.64, 1); }
@media (hover: hover) { .ag-dia:hover b { background: var(--hover-forte); } }
.ag-dia i { width: 5px; height: 5px; border-radius: 50%; }
.ag-dia--positivo { --cor: var(--verde); }
.ag-dia--negativo { --cor: var(--vermelho); }
.ag-dia--ativo { --cor: var(--laranja); }
.ag-dia--positivo b, .ag-dia--negativo b, .ag-dia--ativo b { font-weight: 700; }
.ag-dia--positivo i, .ag-dia--negativo i, .ag-dia--ativo i { background: var(--cor); }
.ag-dia--hoje b { box-shadow: inset 0 0 0 1.5px currentColor; }
.ag-dia--faixa b { background: var(--preench); }
.ag-dia[aria-pressed="true"] b { background: var(--cor); box-shadow: none; color: var(--sup-forte); transform: scale(1.08); }
.ag-cal__fim { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 4px 12px; margin-top: 4px; padding-top: 6px; border-top: 1px solid var(--linha); }
.ag-legenda { display: flex; flex-wrap: wrap; gap: 2px 12px; color: var(--suave); font-size: 0.8125rem; }
.ag-legenda li { display: inline-flex; align-items: center; gap: 5px; }
.ag-legenda li::before { content: ""; width: 8px; height: 8px; border-radius: 50%; }
.ag-legenda .positivo::before { background: var(--verde); }
.ag-legenda .negativo::before { background: var(--vermelho); }
.ag-legenda .ativo::before { background: var(--laranja); }
.ag-abrir { display: inline-flex; align-items: center; gap: 4px; min-height: var(--alvo); margin-left: auto; padding: 0 8px; border: 0; border-radius: 12px; background: none; color: var(--tinta); font-size: 0.875rem; font-weight: 500; }
.ag-abrir:hover { background: var(--hover); }
.ag-abrir .ic { width: 16px; height: 16px; transition: rotate 320ms var(--ios); }
.ag-abrir[aria-expanded="true"] .ic { rotate: 180deg; }
.ag-lista { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 14px; border-radius: 30px; background: var(--sup-forte); box-shadow: var(--sombra-1); scroll-margin-top: 12px; }
.ag-lista__topo { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; padding: 2px 4px; }
.ag-lista__topo h2 { font-size: 1.375rem; font-weight: 700; letter-spacing: -0.02em; }
.ag-saldo { --cor: var(--tinta); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 12px 4px; border-radius: 18px; background: var(--preench); transition: background-color 280ms ease; }
.ag-saldo > div { display: grid; gap: 1px; padding: 0 12px; }
.ag-saldo > div + div { border-left: 1px solid var(--linha); }
.ag-saldo span { color: var(--suave); font-size: 0.8125rem; }
.ag-saldo b { font-size: 1.1875rem; font-weight: 600; letter-spacing: -0.015em; font-variant-numeric: tabular-nums; }
.ag-saldo__fim b { color: var(--cor); font-weight: 700; }
.ag-saldo--positivo { --cor: var(--ok); background: var(--ok-fundo); }
.ag-saldo--negativo { --cor: var(--cai); background: var(--cai-fundo); }
.ag-filtros { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.ag-filtros > .campo:first-child { grid-column: 1 / -1; }
@media (min-width: 720px) { .ag-filtros { grid-template-columns: repeat(5, minmax(0, 1fr)); } .ag-filtros > .campo:first-child { grid-column: auto; } }
.ag-conta { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; padding: 0 4px; color: var(--suave); font-size: 0.875rem; }
.ag-mais { display: flex; justify-content: center; margin-top: 12px; }
.ag-per-tit { display: flex; align-items: center; gap: 4px; min-width: 0; }
@media (max-width: 500px) { .ag-conta .btn { width: 100%; } }
.ag-conta .link { margin-left: 8px; }
.ag-lista__cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; margin-top: 8px; }
.ag-card { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 14px; border-radius: 22px; background: var(--preench); }
.anima .entra-lista > .ag-card { animation: lista-entra 460ms var(--suave-sai) backwards; animation-delay: calc(var(--i, 0) * 45ms); }
.ag-card__topo { display: flex; align-items: center; gap: 12px; }
.ag-card__foto { display: grid; place-items: center; flex: none; width: 52px; height: 52px; border-radius: 50%; background: var(--slate); color: #FFFFFF; font-size: 0.9375rem; font-weight: 600; }
.ag-card__quem { flex: 1; min-width: 0; }
.ag-card__quem h3 { font-size: 1.0625rem; font-weight: 600; letter-spacing: -0.012em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ag-card__quem p { color: var(--suave); font-size: 0.875rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ag-card__dados { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; padding: 12px 2px 0; border-top: 1px solid var(--linha); }
@media (min-width: 720px) { .ag-card__dados { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ag-card__dados .inteiro { grid-column: 1 / -1; }
.ag-card__dados dt { margin-bottom: 2px; color: var(--suave); font-size: 0.8125rem; }
.ag-card__dados dd { font-size: 0.9375rem; font-weight: 500; overflow-wrap: anywhere; }
.ag-card__acoes { display: flex; flex-wrap: wrap; gap: 8px; }
.ag-card__acoes .btn { min-height: 40px; padding: 0 14px; font-size: 0.875rem; }
.ag-vazio { display: grid; justify-items: center; gap: 8px; padding: 30px 16px; color: var(--suave); text-align: center; }
.fechar-dia { display: grid; gap: 2px; }
.fechar-dia > div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--linha); font-size: 1rem; }
.fechar-dia dd { font-weight: 600; font-variant-numeric: tabular-nums; }
.fechar-dia__saldo { border-bottom: 0 !important; font-size: 1.125rem !important; font-weight: 700; }
.fechar-dia__saldo.positivo dd { color: var(--ok); }
.fechar-dia__saldo.negativo dd { color: var(--cai); }
.fechar-dia__aviso { display: flex; gap: 10px; margin-top: 10px; padding: 12px; border-radius: 14px; background: rgb(217 164 0 / 0.16); font-size: 0.9375rem; line-height: 1.4; }
@media (pointer: coarse) { .ag-card__acoes .btn { min-height: var(--alvo); } .ag-seta { width: var(--alvo); height: var(--alvo); } }
@media (max-width: 500px) { .ag-dia b { width: 34px; height: 34px; } .ag-cal { padding: 10px 6px 8px; } .ag-card__acoes .btn { flex: 1 1 auto; } .ag-saldo > div { padding: 0 8px; } .ag-saldo b { font-size: 1.0625rem; } .ag-lista { padding: 10px; } .ag-lista__topo .acoes { width: 100%; } .ag-lista__topo .btn { flex: 1; } }

/* menu de escolha */
.sel { position: relative; display: block; width: 100%; }
.sel__nativo { position: absolute; left: 0; bottom: 0; width: 1px !important; height: 1px !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; opacity: 0; pointer-events: none; }
.sel__btn { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; min-height: var(--alvo); padding: 8px 10px 8px 14px; border: 1px solid var(--contorno); border-radius: var(--r-p); background: var(--sup-forte); color: var(--tinta); font-size: 1rem; font-weight: 400; text-align: left; transition: background-color 150ms ease, transform 180ms var(--ios); }
.sel__btn:hover { background: var(--sup); }
.sel__btn:active { transform: scale(0.985); }
.sel__txt { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sel__ic { flex: none; width: 18px; height: 18px; fill: none; stroke: var(--suave); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.sel__menu { position: absolute; left: 0; top: calc(100% + 6px); z-index: 60; display: none; min-width: 180px; max-height: min(60dvh, 340px); margin: 0; padding: 5px; overflow-y: auto; border: 0; border-radius: 14px; background: var(--vidro); -webkit-backdrop-filter: blur(30px) saturate(1.9); backdrop-filter: blur(30px) saturate(1.9); box-shadow: 0 0 0 0.5px rgb(var(--s) / 0.14), 0 12px 38px rgb(var(--s) / 0.24); color: var(--tinta); }
.sel__menu[popover] { position: fixed; right: auto; bottom: auto; inset-inline: auto; }
.sel__menu:popover-open, .sel__menu.aberto { display: block; animation: sel-abre 200ms var(--ios); }
@keyframes sel-abre { from { opacity: 0; transform: scale(0.94); } }
.sel__menu button { display: grid; grid-template-columns: 16px minmax(0, 1fr); align-items: center; gap: 7px; width: 100%; min-height: 38px; padding: 5px 12px 5px 7px; border: 0; border-radius: 9px; background: none; color: inherit; font-size: 0.9375rem; text-align: left; }
.sel__menu button svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; visibility: hidden; }
.sel__menu button[aria-selected="true"] { font-weight: 600; }
.sel__menu button[aria-selected="true"] svg { visibility: visible; }
.sel__menu button:hover, .sel__menu button:focus-visible { background: var(--ocean); color: var(--sobre); outline: 0; }
@media (pointer: coarse) { .sel__menu button { min-height: var(--alvo); } }
/* variantes do Financeiro */
.sel--titulo { width: max-content; }
.sel--titulo .sel__btn { width: auto; min-height: 40px; gap: 3px; padding: 0 6px 0 10px; border: 0; background: none; font-size: 1.0625rem; font-weight: 500; }
.sel--titulo .sel__btn:hover { background: var(--hover); }
.sel--titulo .sel__ic { width: 15px; height: 15px; stroke: var(--tinta); }
.sel--mes { width: max-content; margin: 0 auto; }
.sel--mes .sel__btn { width: auto; min-height: 30px; padding: 0 8px; border: 0; background: none; color: var(--suave); font-size: 1.0625rem; }
.sel--mes .sel__btn:hover { background: var(--hover); }

/* financeiro: exatamente como a referência */
body:has(.fin) { background: var(--cream); }
:root[data-tema="escuro"] body:has(.fin) { background: #000000; }
@media (prefers-color-scheme: dark) { :root:not([data-tema="claro"]) body:has(.fin) { background: #000000; } }
.fin { width: 100%; max-width: 560px; margin: 0 auto; padding-bottom: 8px; }
.fin__topo { position: relative; display: flex; justify-content: center; align-items: center; min-height: 44px; }
.fin__resumo { margin-top: 28px; text-align: center; }
.fin__mes { color: var(--suave); font-size: 1.0625rem; line-height: 30px; }
.fin__total { margin-top: 4px; font-size: clamp(2.875rem, 11vw, 3.5rem); font-weight: 700; line-height: 1.08; letter-spacing: -0.04em; font-variant-numeric: tabular-nums; }
.fin__delta { display: flex; justify-content: center; align-items: center; gap: 7px; min-height: 26px; margin-top: 6px; color: var(--suave); font-size: 1.0625rem; font-variant-numeric: tabular-nums; }
.fin__seta { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: var(--slate); color: #fff; }
.fin__seta .ic { width: 13px; height: 13px; stroke-width: 2.6; }
.fin__para-cima { rotate: 180deg; }
.fin__graf { position: relative; height: 190px; margin-top: 34px; touch-action: pan-y; cursor: crosshair; -webkit-user-select: none; user-select: none; }
.fin__graf svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.fin__prev, .fin__cur { fill: none; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.fin__prev { stroke: rgb(var(--o) / 0.2); stroke-width: 3; }
.fin__cur { stroke: var(--tinta); stroke-width: 3.5; animation: fin-traca 900ms var(--suave-sai) backwards; }
@keyframes fin-traca { from { clip-path: inset(0 100% 0 0); } to { clip-path: inset(0 0 0 0); } }
.fin__marca { position: absolute; top: 0; bottom: -14px; width: 0; border-left: 1px dashed rgb(var(--o) / 0.4); pointer-events: none; }
.fin__eixo { position: relative; display: flex; justify-content: space-between; height: 32px; margin-top: 10px; }
.fin__eixo i { width: 2px; height: 2px; border-radius: 50%; background: rgb(var(--o) / 0.35); }
.fin__eixo b { position: absolute; top: 8px; translate: -50% 0; color: var(--suave); font-size: 0.8125rem; font-weight: 400; font-variant-numeric: tabular-nums; }
.fin__lista { display: grid; gap: 22px; margin-top: 22px; }
.fin-grupo { animation: seq-entra 480ms var(--suave-sai) backwards; animation-delay: calc(var(--i, 0) * 45ms + 120ms); }
.fin-grupo header { display: flex; justify-content: space-between; gap: 12px; padding: 0 14px 7px; color: var(--suave); font-size: 0.9375rem; font-variant-numeric: tabular-nums; }
.fin-grupo ul { overflow: hidden; border-radius: 14px; background: var(--sup-forte); }
.fin-linha { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 50px; padding: 8px 14px; border: 0; background: none; color: var(--tinta); font-size: 1rem; text-align: left; transition: background-color 130ms ease; }
.fin-grupo li + li .fin-linha { box-shadow: inset 0 1px 0 var(--linha); }
.fin-linha:hover { background: var(--hover); }
.fin-linha__ic { flex: none; width: 24px; font-size: 1.1875rem; line-height: 1; text-align: center; }
.fin-linha__nome { flex: 1; min-width: 0; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fin-linha__val { flex: none; font-variant-numeric: tabular-nums; }
.fin__vazio { padding: 26px 0; color: var(--suave); text-align: center; }
@media (max-width: 959px) {
  .conteudo:has(.fin) { padding-top: 10px; }
}

