/* Agenda e Saúde · Parte A no web: Central de lembretes (20), sheet 44, Documentos e datas (21/21b),
   Casa e viagens (22). Só tokens. */

/* ---------------------------------------------------------------- peças comuns */
.menu-conta { margin-left: auto; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: var(--okf-coral-strong);
  color: var(--okf-surface-raised); font: var(--okf-font-caption); line-height: 22px; text-align: center; }
.btn-pill { border-radius: var(--okf-radius-pill); min-height: 46px; padding: 0 var(--okf-space-6); font-size: 16px; white-space: nowrap; }
.btn-sol { background: var(--okf-sol); color: var(--okf-petroleo); }
:root[data-tema="escuro"] .btn-sol { color: var(--okf-on-petroleo); }
@media (prefers-color-scheme: dark) { :root:not([data-tema]) .btn-sol { color: var(--okf-on-petroleo); } }
.btn-contorno { background: transparent; color: inherit; box-shadow: inset 0 0 0 1.5px currentColor; }
.btn-secundario.btn-contorno { box-shadow: inset 0 0 0 1.5px var(--okf-line); background: var(--okf-surface-raised); }
.btn-verde-claro { background: var(--okf-verde-soft); color: var(--okf-verde-strong); }
.btn-largo { width: 100%; }
.link-discreto { display: inline-block; margin-top: var(--okf-space-2); font: var(--okf-font-caption); color: var(--okf-ink-muted); }
.rotulo-secao { margin: 0 0 var(--okf-space-3); font: var(--okf-font-label); letter-spacing: .06em; text-transform: uppercase; color: var(--okf-ink-muted); }
.ponto { flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--okf-ink-muted); }
.ponto-azul { background: var(--okf-azul); }
.ponto-coral { background: var(--okf-coral); }
.ponto-petroleo { background: var(--okf-petroleo); }
.ponto-sol { background: var(--okf-sol); }
.ponto-verde { background: var(--okf-verde); }
.ponto-neutro { background: var(--okf-ink-muted); }
.icone-quadro { flex: none; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: var(--okf-surface-sunken); color: var(--okf-ink); }
.icone-sol { background: var(--okf-sol-soft); }
.pilula { display: inline-flex; align-items: center; min-height: 30px; padding: 0 12px; border-radius: var(--okf-radius-pill);
  font: var(--okf-font-caption); font-size: 13px; white-space: nowrap; flex: none; }
.pilula-neutra { background: var(--okf-surface-sunken); color: var(--okf-ink); }
.pilula-escura { background: var(--okf-petroleo); color: var(--okf-on-petroleo); min-width: 112px; justify-content: center; }
.pilula-azul { background: var(--okf-azul-soft); color: var(--okf-azul); min-width: 112px; justify-content: center; }
.selo-vencido { background: var(--okf-vermelho-soft); color: var(--okf-vermelho); }
.chip-escolha:has(input:checked) { background: var(--okf-petroleo); color: var(--okf-on-petroleo); }
.chips-contorno .chip { background: transparent; box-shadow: inset 0 0 0 1.5px var(--okf-line); }
.chips-contorno .chip.ativo { background: var(--okf-petroleo); color: var(--okf-on-petroleo); box-shadow: none; }
.linha-chave-solta { flex-direction: row; align-items: center; gap: var(--okf-space-3); align-self: end; min-height: 50px; }
.linha-data { align-items: end; }

/* segmentado (Repetir, horas|dias, Lista de mala) */
.seg { display: flex; gap: 4px; padding: 4px; border-radius: var(--okf-radius-md); background: var(--okf-surface-sunken); }
.seg button { flex: 1; min-height: 44px; padding: 0 var(--okf-space-2); border: 0; border-radius: 12px; background: none; color: var(--okf-ink);
  font: var(--okf-font-label); cursor: pointer; }
.seg button.ativo { background: var(--okf-surface-raised); box-shadow: var(--okf-shadow-card); }
.seg button:disabled { opacity: .5; cursor: default; }
.seg-curto { flex: none; }
.seg-largo button { min-height: 56px; line-height: 1.25; }

/* linha do lembrete nos formulários (45b/46b/48) */
.linha-lembrete { display: flex; align-items: center; gap: var(--okf-space-3); width: 100%; min-height: 56px; padding: var(--okf-space-3) var(--okf-space-4);
  border: 0; border-radius: var(--okf-radius-md); background: var(--okf-sol-soft); color: var(--okf-ink); font: var(--okf-font-label);
  text-align: left; cursor: pointer; }
.linha-lembrete > span { flex: 1; min-width: 0; }

/* anexar e miniaturas */
.anexar { position: relative; flex-direction: row; align-items: center; justify-content: center; gap: var(--okf-space-2); min-height: 64px;
  border: 2px solid var(--okf-line); border-radius: var(--okf-radius-md); background: var(--okf-surface-sunken); cursor: pointer; }
.anexar input { position: absolute; inset: 0; opacity: 0; cursor: pointer; min-height: 0; }
.anexar:focus-within { outline: 2px solid var(--okf-azul); outline-offset: 2px; }
.miniaturas { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: var(--okf-space-3); }
.miniaturas li { display: flex; flex-direction: column; gap: 4px; align-items: flex-start; }
.miniaturas img, .mini-pdf { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: var(--okf-radius-sm); background: var(--okf-surface-sunken); cursor: zoom-in; }
.mini-pdf { display: grid; place-items: center; align-content: center; gap: 4px; color: var(--okf-ink); text-decoration: none; font: var(--okf-font-caption); cursor: pointer; }
.miniaturas small { font: var(--okf-font-caption); color: var(--okf-ink-muted); }
.clipe-doc { color: var(--okf-ink); }

/* ---------------------------------------------------------------- web 20 · Lembretes */
.grade-lembretes { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: var(--okf-space-8); align-items: start; }
.col-filtros { display: flex; flex-direction: column; gap: var(--okf-space-4); }
.filtro-cartao { padding: var(--okf-space-6) var(--okf-space-4); }
.filtro-cartao .rotulo-secao { padding: 0 var(--okf-space-3); }
.filtro-modulos { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.filtro-modulos button { display: flex; align-items: center; gap: var(--okf-space-3); width: 100%; min-height: 46px; padding: 0 var(--okf-space-3);
  border: 0; border-radius: var(--okf-radius-md); background: none; color: var(--okf-ink); font: var(--okf-font-label); font-size: 16px; font-weight: 700;
  text-align: left; cursor: pointer; }
.filtro-modulos button span:nth-child(2) { flex: 1; }
.filtro-modulos button small { font: var(--okf-font-caption); color: var(--okf-ink-muted); }
.filtro-modulos button.ativo { background: var(--okf-surface-sunken); font-weight: 800; }
.filtro-modulos button:hover { background: var(--okf-surface-sunken); }
.filtro-prioridades { display: flex; flex-direction: column; gap: var(--okf-space-3); padding: 0 var(--okf-space-3); }
.marcar-prioridade { flex-direction: row; align-items: flex-start; gap: var(--okf-space-3); cursor: pointer; }
.marcar-prioridade .caixa { width: 32px; height: 32px; }
.marcar-prioridade .caixa > span[aria-hidden] { width: 32px; height: 32px; border-radius: 9px; }
.marcar-prioridade .caixa input:checked + span { background: var(--okf-petroleo); border-color: var(--okf-petroleo); color: var(--okf-on-petroleo); }
.marcar-prioridade strong { display: block; font: var(--okf-font-heading); }
.marcar-prioridade small { display: block; font: var(--okf-font-caption); color: var(--okf-ink-muted); }

.grupo-lembretes { display: flex; flex-direction: column; gap: var(--okf-space-3); margin-bottom: var(--okf-space-6); }
.grupo-lembretes > .rotulo-secao { margin: 0; }
.lembrete { display: flex; align-items: center; gap: var(--okf-space-4); padding: var(--okf-space-4) var(--okf-space-6);
  border-radius: var(--okf-radius-lg); background: var(--okf-surface-raised); box-shadow: var(--okf-shadow-card); color: var(--okf-ink); }
.lembrete { flex-wrap: wrap; }
.lembrete-corpo { flex: 1 1 340px; min-width: 0; }
.lembrete-acoes { margin-left: auto; }
.lembrete-corpo p { margin: 0; font: var(--okf-font-heading); font-size: 18px; font-weight: 700; line-height: 1.35; }
.lembrete-corpo b { font-weight: 900; }
.lembrete-corpo small { display: block; margin-top: 2px; font: var(--okf-font-label); font-weight: 600; color: var(--okf-ink-muted); }
.lembrete-acoes { display: flex; gap: var(--okf-space-2); flex-wrap: wrap; justify-content: flex-end; }
.lembrete-importante { background: var(--okf-petroleo); color: var(--okf-on-petroleo); }
.lembrete-importante .lembrete-corpo small { color: color-mix(in srgb, var(--okf-on-petroleo) 78%, transparent); }
.lembrete-informativo { background: transparent; box-shadow: inset 0 0 0 1.5px var(--okf-line); }
.lembrete-feito { gap: var(--okf-space-3); background: var(--okf-verde-soft); box-shadow: none; }
.lembrete-feito p { margin: 0; font: var(--okf-font-heading); }
.lembrete-feito .circulo-ok { width: 40px; height: 40px; flex: none; color: var(--okf-on-verde); box-shadow: none; }
.lembrete-feito .circulo-ok .ic { width: 22px; height: 22px; stroke-width: 3; }
.vazio-lembretes { padding-top: var(--okf-space-8); }

.lista-preferencias { list-style: none; margin: var(--okf-space-4) 0; padding: 0 var(--okf-space-4); border-radius: var(--okf-radius-lg);
  background: var(--okf-surface-sunken); }
.lista-preferencias li { display: flex; align-items: center; gap: var(--okf-space-3); padding: var(--okf-space-3) 0; border-bottom: 1px solid var(--okf-line); }
.lista-preferencias li:last-child { border-bottom: 0; }
.lista-preferencias li > span { flex: 1; min-width: 0; }
.lista-preferencias strong { display: block; font: var(--okf-font-heading); }
.lista-preferencias small { display: block; font: var(--okf-font-caption); color: var(--okf-ink-muted); }
.lista-preferencias li.silenciado strong { color: var(--okf-ink-muted); }
.nota-importante { display: flex; gap: var(--okf-space-3); align-items: flex-start; margin: 0; padding: var(--okf-space-4);
  border-radius: var(--okf-radius-md); background: var(--okf-coral-soft); font: var(--okf-font-label); }
.nota-importante .ic { color: var(--okf-coral-strong); }

/* ---------------------------------------------------------------- sheet 44 */
.sheet-lembrete .titulo { margin-bottom: var(--okf-space-4); padding-right: 48px; }
.sheet-lembrete legend { font: var(--okf-font-heading); }
.ant-pers { display: flex; align-items: center; gap: var(--okf-space-3); margin-top: var(--okf-space-2); }
.ant-pers input { width: 96px; text-align: center; font-weight: 800; }
.quem-recebe { display: flex; flex-wrap: wrap; gap: var(--okf-space-3); }
.pessoa-recebe { display: flex; flex-direction: column; align-items: center; gap: 6px; width: 76px; padding: 0; border: 0; background: none; cursor: pointer; }
.pessoa-recebe small { font: var(--okf-font-label); text-align: center; overflow-wrap: anywhere; }
.pessoa-av { position: relative; display: inline-block; }
.pessoa-av .avatar { width: 56px; height: 56px; font-size: 20px; opacity: .55; }
.pessoa-recebe.marcada .avatar { opacity: 1; box-shadow: 0 0 0 3px var(--okf-verde-strong); }
.marca-ok { position: absolute; right: -4px; bottom: -4px; display: none; place-items: center; width: 24px; height: 24px; border-radius: 50%;
  background: var(--okf-verde-strong); color: var(--okf-on-verde); box-shadow: 0 0 0 2px var(--okf-surface-raised); }
.marca-ok .ic { width: 14px; height: 14px; stroke-width: 3; vertical-align: 0; }
.pessoa-recebe.marcada .marca-ok { display: grid; }
.como-avisar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--okf-space-2); }
.opcao-aviso { display: flex; flex-direction: column; gap: 4px; padding: var(--okf-space-3); border: 0; border-radius: var(--okf-radius-md);
  background: var(--okf-surface-raised); color: var(--okf-ink); box-shadow: inset 0 0 0 1.5px var(--okf-line); text-align: left; cursor: pointer; }
.opcao-aviso strong { font: var(--okf-font-heading); }
.opcao-aviso small { font: var(--okf-font-caption); color: var(--okf-ink-muted); }
.opcao-aviso.ativo { box-shadow: inset 0 0 0 2px var(--okf-petroleo); }
.opcao-aviso[data-pri="importante"].ativo { background: var(--okf-petroleo); color: var(--okf-on-petroleo); box-shadow: var(--okf-shadow-card); }
.opcao-aviso[data-pri="importante"].ativo small { color: inherit; }
.previa { padding: var(--okf-space-4); border-radius: var(--okf-radius-md); background: var(--okf-surface-sunken); }
.previa-quando { display: block; font: var(--okf-font-caption); letter-spacing: .06em; color: var(--okf-ink-muted); }
.previa-texto { margin: 4px 0 0; font: var(--okf-font-heading); font-weight: 700; }
.previa-texto b { font-weight: 900; }
.regras-lista { list-style: none; margin: 0 0 var(--okf-space-3); padding: 0; }
.regras-lista li + li { border-top: 1px solid var(--okf-line); }
.regras-lista button { display: flex; align-items: center; gap: var(--okf-space-3); width: 100%; min-height: 56px; padding: var(--okf-space-2) 0;
  border: 0; background: none; color: var(--okf-ink); text-align: left; cursor: pointer; }
.regras-lista button > span { flex: 1; min-width: 0; }
.regras-lista strong { font: var(--okf-font-heading); }
.regras-lista small { font: var(--okf-font-label); color: var(--okf-ink-muted); font-weight: 700; }
.sheet-lembrete .regras-lista small { display: block; }

/* ---------------------------------------------------------------- web 21 / 21b · Documentos e datas */
.abas-org { display: inline-flex; gap: 4px; padding: 6px; margin-bottom: var(--okf-space-6); border-radius: var(--okf-radius-pill); background: var(--okf-surface-sunken); }
.abas-org button { min-height: 46px; padding: 0 var(--okf-space-6); border: 0; border-radius: var(--okf-radius-pill); background: none;
  color: var(--okf-ink); font: var(--okf-font-heading); cursor: pointer; }
.abas-org button.ativo { background: var(--okf-surface-raised); box-shadow: var(--okf-shadow-card); }
.tabela-cartao { padding: var(--okf-space-4) var(--okf-space-6); }
.tabela-docs { width: 100%; min-width: 720px; border-collapse: collapse; }
.tabela-docs thead th { padding: var(--okf-space-3) var(--okf-space-2); font: var(--okf-font-caption); letter-spacing: .06em; text-transform: uppercase;
  color: var(--okf-ink-muted); text-align: left; border-bottom: 1px solid var(--okf-line); }
.tabela-docs tbody th, .tabela-docs td { padding: var(--okf-space-3) var(--okf-space-2); border-bottom: 1px solid var(--okf-line); text-align: left;
  font: var(--okf-font-body); font-weight: 600; }
.tabela-docs tbody tr:last-child > * { border-bottom: 0; }
.tabela-docs tbody tr[data-doc] { cursor: pointer; }
.tabela-docs tbody tr[data-doc]:hover { background: var(--okf-surface-sunken); }
.tabela-docs .selo { cursor: inherit; }
.tabela-docs .num { font-variant-numeric: tabular-nums; }
.doc-nome { display: flex; align-items: center; gap: var(--okf-space-3); }
.doc-nome strong { font: var(--okf-font-heading); }
.grade-datas { display: grid; grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)); gap: var(--okf-space-4); }
.cartao-data { display: flex; align-items: center; gap: var(--okf-space-4); width: 100%; border: 0; text-align: left; color: var(--okf-ink); cursor: pointer; font: inherit; }
.cartao-data:disabled { cursor: default; }
.data-corpo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.data-corpo strong { font: var(--okf-font-heading); font-size: 19px; }
.data-corpo small { font: var(--okf-font-body); color: var(--okf-ink-muted); }
.data-corpo em { font: var(--okf-font-caption); font-style: normal; font-weight: 800; }
.contagem { display: flex; flex-direction: column; align-items: flex-end; flex: none; }
.contagem b { font-family: var(--okf-family-display); font-size: 34px; font-weight: 600; line-height: 1; }
.contagem small { font: var(--okf-font-caption); color: var(--okf-ink-muted); }

/* ---------------------------------------------------------------- web 22 · Casa e viagens */
.grade-casa { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--okf-space-6); align-items: start; }
.cartao-casa .secao-cabeca { margin-bottom: var(--okf-space-2); padding-bottom: var(--okf-space-4); border-bottom: 1px solid var(--okf-line); }
.lista-casa { list-style: none; margin: 0; padding: 0; }
.lista-casa > li { display: flex; align-items: center; gap: var(--okf-space-2); border-bottom: 1px solid var(--okf-line); }
.lista-casa > li:last-child { border-bottom: 0; }
.linha-casa { flex: 1; min-width: 0; display: flex; align-items: center; gap: var(--okf-space-3); padding: var(--okf-space-4) 0; border: 0; background: none;
  color: var(--okf-ink); text-align: left; cursor: pointer; font: inherit; flex-wrap: wrap; row-gap: var(--okf-space-2); }
.linha-casa:disabled { cursor: default; }
.casa-corpo { flex: 1 1 200px; min-width: 0; }
.casa-corpo strong { display: block; font: var(--okf-font-heading); font-size: 18px; }
.casa-corpo small { display: block; font: var(--okf-font-body); color: var(--okf-ink-muted); }
.btn-fone { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border-radius: 50%; background: var(--okf-verde-soft); color: var(--okf-verde-strong); }
.vazio-casa { padding: var(--okf-space-4) 0; }
.a-cada { display: flex; align-items: center; gap: var(--okf-space-2); margin-top: var(--okf-space-2); }
.a-cada input { width: 90px; }
.a-cada select { width: auto; }
.col-viagens { display: flex; flex-direction: column; gap: var(--okf-space-4); }
.col-viagens > .secao-cabeca { margin: 0; }
.titulo-viagens { font: var(--okf-font-title); }
#viagens { display: flex; flex-direction: column; gap: var(--okf-space-4); }
.cartao-viagem-22 { padding: 0; overflow: hidden; }
.viagem-topo { display: flex; align-items: center; gap: var(--okf-space-6); padding: var(--okf-space-4) var(--okf-space-6) var(--okf-space-4);
  background: var(--okf-verde-strong); color: var(--okf-on-verde); }
.cartao-viagem-22.so-topo { border-radius: var(--okf-radius-lg); margin-bottom: var(--okf-space-4); }
.faltam { display: flex; flex-direction: column; align-items: center; flex: none; min-width: 72px; }
.faltam-rotulo { align-self: flex-start; font: var(--okf-font-caption); letter-spacing: .06em; text-transform: uppercase; }
.faltam b { font-family: var(--okf-family-display); font-size: 56px; font-weight: 600; line-height: 1; }
.faltam small { font: var(--okf-font-heading); }
.faltam .faltam-palavra { font-size: 30px; }
.viagem-topo.grande .faltam b { font-size: 72px; }
.viagem-titulo { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.viagem-titulo strong { font: var(--okf-font-title); font-size: 28px; }
.viagem-titulo small { font: var(--okf-font-label); }
.quem-vai { display: flex; align-items: center; gap: var(--okf-space-2); margin-top: var(--okf-space-2); font: var(--okf-font-label); }
.quem-vai .avatar + .avatar { margin-left: -10px; }
.viagem-mala { display: flex; flex-direction: column; gap: var(--okf-space-3); padding: var(--okf-space-6); }
.mala-linha { display: flex; justify-content: space-between; align-items: baseline; gap: var(--okf-space-3); flex-wrap: wrap; }
.mala-linha strong { font: var(--okf-font-heading); font-size: 19px; }
.mala-linha small { font: var(--okf-font-label); color: var(--okf-ink-muted); }
.mala-linha small b, .mala-detalhe .pct { color: var(--okf-verde-strong); }
.mala-detalhe .mala-linha small { display: block; }
.mala-detalhe .pct { font-family: var(--okf-family-display); font-size: 34px; font-weight: 600; }
.barra-mala { height: 14px; border-radius: var(--okf-radius-pill); background: var(--okf-verde-soft); overflow: hidden; }
.barra-mala span { display: block; height: 100%; border-radius: inherit; background: var(--okf-verde); transition: width .2s; }
.falta-chips { gap: var(--okf-space-2); }
.viagem-botoes { display: flex; gap: var(--okf-space-3); flex-wrap: wrap; }
.vazio-viagem { padding: var(--okf-space-6); }
.nota-viagens { display: flex; align-items: flex-start; gap: var(--okf-space-3); padding: var(--okf-space-4) var(--okf-space-6);
  border-radius: var(--okf-radius-lg); box-shadow: inset 0 0 0 1.5px var(--okf-line); color: var(--okf-ink-muted); }
.nota-viagens p { margin: 0; font: var(--okf-font-label); }
.lista-passadas { list-style: none; margin: var(--okf-space-3) 0 0; padding: 0; }
.lista-passadas button { display: flex; align-items: center; gap: var(--okf-space-3); width: 100%; padding: var(--okf-space-3) var(--okf-space-2);
  border: 0; border-bottom: 1px solid var(--okf-line); background: none; color: var(--okf-ink); text-align: left; cursor: pointer; font: inherit; flex-wrap: wrap; }
.lista-passadas strong { font: var(--okf-font-heading); }
.lista-passadas small { flex: 1; font: var(--okf-font-caption); color: var(--okf-ink-muted); }
.detalhe-viagem .modal-cabeca { justify-content: space-between; margin-bottom: var(--okf-space-4); }
.detalhe-viagem .modal-cabeca .titulo { margin: 0; }
.mala-detalhe { display: flex; flex-direction: column; gap: var(--okf-space-3); margin-bottom: var(--okf-space-6); }
.mala-detalhe .item-corpo-lista { cursor: default; }
.quem-item { font: var(--okf-font-label); color: var(--okf-ink-muted); }
.detalhe-viagem > .rotulo-secao { margin-top: var(--okf-space-2); }
.caixa-mala { display: flex; flex-direction: column; gap: var(--okf-space-3); padding: var(--okf-space-4); border-radius: var(--okf-radius-lg);
  background: var(--okf-surface-sunken); }
.caixa-mala h3 { display: flex; align-items: center; gap: var(--okf-space-2); font: var(--okf-font-heading); }
.caixa-mala h3 .ic { color: var(--okf-verde-strong); }
.caixa-mala .seg { background: var(--okf-surface); }
.opcao-lista { flex-direction: row; align-items: center; gap: var(--okf-space-3); padding: var(--okf-space-3) var(--okf-space-4); margin-bottom: var(--okf-space-2);
  border-radius: var(--okf-radius-md); background: var(--okf-surface-raised); cursor: pointer; }
.opcao-lista:has(input:checked) { background: var(--okf-verde-soft); box-shadow: inset 0 0 0 2px var(--okf-verde-strong); }
.opcao-lista input { width: 22px; min-height: 22px; height: 22px; flex: none; accent-color: var(--okf-verde-strong); }
.opcao-lista strong { display: block; font: var(--okf-font-heading); }
.opcao-lista small { display: block; font: var(--okf-font-caption); color: var(--okf-ink-muted); }
.chip-crianca { display: inline-flex; align-items: center; gap: var(--okf-space-2); min-height: 48px; padding: 0 var(--okf-space-4) 0 6px;
  border: 0; border-radius: var(--okf-radius-pill); background: var(--okf-surface-raised); color: var(--okf-ink); font: var(--okf-font-heading);
  box-shadow: inset 0 0 0 1.5px var(--okf-line); cursor: pointer; }
.chip-crianca.marcada { box-shadow: inset 0 0 0 2.5px var(--okf-verde-strong); }

/* ---------------------------------------------------------------- telas estreitas */
@media (max-width: 1100px) {
  .grade-lembretes { grid-template-columns: minmax(0, 1fr); gap: var(--okf-space-4); }
  .col-filtros { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
  .grade-casa { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 700px) {
  .lembrete { flex-direction: column; align-items: stretch; gap: var(--okf-space-3); padding: var(--okf-space-4); }
  .lembrete > .ponto { display: none; }
  .lembrete-corpo { flex: none; }
  .lembrete-acoes { margin-left: 0; }
  .lembrete-acoes { justify-content: flex-start; }
  .btn-pill { padding: 0 var(--okf-space-4); white-space: normal; }
  .como-avisar { grid-template-columns: 1fr; }
  .seg { flex-wrap: wrap; }
  .seg button { flex: 1 0 30%; }
  .grade-datas { grid-template-columns: minmax(0, 1fr); }
  .cabeca-hoje > div:first-child { min-width: 0; }
  .abas-org { display: flex; }
  .abas-org button { flex: 1; padding: 0 var(--okf-space-3); }
  .viagem-topo { gap: var(--okf-space-4); padding: var(--okf-space-4); }
  .viagem-mala { padding: var(--okf-space-4); }
  .pilula-escura, .pilula-azul { min-width: 0; }
  .tabela-cartao { padding: var(--okf-space-2) var(--okf-space-3); }
  .linha-casa { flex-wrap: wrap; }
  .casa-corpo { flex-basis: calc(100% - 64px); }
}

/* Exame com o selo NOVO (Novo compromisso de saúde) */
.chip-novo { position: relative; }
.chip-novo .selo-novo { position: absolute; top: -9px; right: -6px; padding: 1px 7px; border-radius: var(--okf-radius-pill); background: var(--okf-azul);
  color: var(--okf-surface-raised); font: var(--okf-font-caption); font-size: 10px; letter-spacing: .06em; }

/* Agenda: evento da família no mês e no dia */
.cal-item.cal-familia { background: var(--okf-coral-soft); color: var(--okf-coral-strong); }
.item-familia button { width: 100%; }
