main .insights.home-acessos {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}
main .home-acessos .home-acesso {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
  min-width: 0;
  min-height: 170px;
  padding: 1.25rem;
  border-radius: var(--card-border-radius);
  color: var(--clr-dark);
  text-align: left;
  cursor: pointer;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
main .home-acessos .home-acesso > img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}
main .home-acessos .home-acesso-titulo {
  margin: 0;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  overflow-wrap: anywhere;
}
main .home-acessos .home-acesso-acao {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: auto;
  color: var(--clr-dark-variant);
  font-size: 0.8rem;
  font-weight: 500;
}
main .home-acessos .home-acesso-acao .material-symbols-outlined {
  font-size: 17px;
}
main .home-acessos .home-acesso:focus-visible {
  outline: 3px solid var(--clr-primary);
  outline-offset: 3px;
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  main .home-acessos .home-acesso:hover {
    transform: translateY(-2px);
    box-shadow: var(--glass-shadow);
  }
}
@media (max-width: 1200px) {
  main .insights.home-acessos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  main .insights.home-acessos { gap: 0.75rem; }
  main .home-acessos .home-acesso { padding: 1rem; min-height: 160px; }
  main .home-acessos .home-acesso-titulo { font-size: 0.95rem; }
}
@media (max-width: 360px) {
  main .insights.home-acessos { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  main .home-acessos .home-acesso { transition: none; }
}

/* Dashboard: atalhos em trilho horizontal com navegação acessível. */
.home-dashboard-topo { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:1.2rem; align-items:end; margin-top:1rem; }
.home-atalhos-area { min-width:0; min-height:0; position:relative; display:flex; flex-direction:column; }
.home-atalhos-navegacao { position:static; display:flex; justify-content:flex-end; gap:.35rem; min-height:2rem; margin-bottom:.55rem; }
.home-atalhos-seta { display:inline-grid; place-items:center; width:2rem; height:2rem; border:1px solid var(--clr-border); border-radius:50%; color:var(--clr-dark); background:var(--clr-color-background); cursor:pointer; }
.home-atalhos-seta:disabled { opacity:.3; cursor:default; }
.home-atalhos-seta:focus-visible { outline:2px solid var(--clr-primary); outline-offset:2px; }
main .insights.home-acessos { display:flex; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:x mandatory; scroll-behavior:smooth; gap:1rem; margin:0; padding:.15rem .1rem .6rem; scrollbar-width:thin; flex:0 0 auto; height:clamp(230px, 29vw, 300px); min-height:0; align-items:stretch; }
main .home-acessos .home-acesso { flex:0 0 clamp(185px, 47%, 265px); scroll-snap-align:start; min-height:0; height:auto; }
@media(max-width:900px) { .home-dashboard-topo { grid-template-columns:minmax(0,1fr); } }
@media(max-width:540px) { main .home-acessos .home-acesso { flex-basis:min(78%,240px); } }
@media(prefers-reduced-motion:reduce) { main .insights.home-acessos { scroll-behavior:auto; } }

/* Centraliza o conteúdo dos cards sem alterar o trilho ou suas dimensões. */
.home-dashboard-topo .home-acessos .home-acesso {
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: .9rem;
}
.home-dashboard-topo .home-acessos .home-acesso-acao {
  margin-top: 0;
  justify-content: center;
}

/* Ícones vetoriais originais no estilo outline, sem imagens de aplicativos proprietários. */
.home-dashboard-topo .home-acesso-icone-fundo {
  display:grid; place-items:center; flex:0 0 auto;
  width:56px; height:56px; border-radius:16px;
  background:color-mix(in srgb, var(--atalho-cor) 13%, transparent);
  color:var(--atalho-cor);
}
.home-dashboard-topo .home-acesso-icone { width:30px; height:30px; }
.home-dashboard-topo .home-acesso.documentos { --atalho-cor:#007aff; }
.home-dashboard-topo .home-acesso.contracheques { --atalho-cor:#af52de; }
.home-dashboard-topo .home-acesso.email { --atalho-cor:#ff9500; }
.home-dashboard-topo .home-acesso.digital { --atalho-cor:#34c759; }

/* Corrige estilos globais que atingem os SVGs dentro dos atalhos. */
.home-dashboard-topo .home-acessos .home-acesso > .home-acesso-icone-fundo {
  display:grid !important;
  place-items:center;
  flex:0 0 56px;
  width:56px;
  height:56px;
  min-width:56px;
  min-height:56px;
  margin:0;
  padding:0;
  border-radius:16px;
  background:color-mix(in srgb, var(--atalho-cor) 13%, transparent);
  color:var(--atalho-cor);
}
.home-dashboard-topo .home-acessos .home-acesso .home-acesso-icone-fundo > svg.home-acesso-icone {
  display:block;
  position:static;
  flex:none;
  width:30px;
  height:30px;
  min-width:30px;
  min-height:30px;
  margin:0;
  padding:0;
  background:none;
  color:inherit;
}

/* Acabamento: título integrado, setas à direita e rolagem invisível. */
.home-dashboard-topo .home-atalhos-cabecalho {
  display:flex; align-items:center; justify-content:space-between;
  gap:.75rem; min-height:2rem; margin-bottom:.65rem;
}
.home-dashboard-topo .home-atalhos-titulo {
  margin:0; font-size:1rem; font-weight:600; line-height:1.4;
  color:var(--clr-dark);
}
.home-dashboard-topo .home-atalhos-navegacao {
  display:flex; align-items:center; gap:.4rem; margin:0; min-height:0;
}
.home-dashboard-topo .insights.home-acessos {
  scrollbar-width:none;
  -ms-overflow-style:none;
  height:clamp(220px, 25vw, 270px);
  padding:0;
}
.home-dashboard-topo .insights.home-acessos::-webkit-scrollbar {
  display:none;
}
@media(max-width:540px) {
  .home-dashboard-topo .insights.home-acessos { height:220px; }
}

/* Prévia do próximo acesso, especialmente em telas pequenas. */
@media(max-width:540px) {
  main .home-dashboard-topo .home-acessos .home-acesso {
    flex:0 0 82%;
    scroll-snap-align:start;
  }
  main .home-dashboard-topo .home-acessos .home-acesso:last-child {
    scroll-snap-align:end;
  }
}

/* Peek restrito ao celular; no desktop, cards inteiros. */
@media(min-width:541px) {
  main .home-dashboard-topo .home-acessos .home-acesso {
    flex:0 0 clamp(185px, 47%, 265px);
  }
}
@media(max-width:540px) {
  main .home-dashboard-topo .home-acessos .home-acesso {
    flex:0 0 82%;
    width:82%;
    max-width:82%;
  }
}


/* Reserva espaço para a elevação no hover sem cortar o topo do card. */
main .home-dashboard-topo .insights.home-acessos {
  box-sizing:border-box;
  padding-top:4px;
}
main .home-dashboard-topo .home-acessos .home-acesso {
  box-sizing:border-box;
}

/* Atalhos: preservar o mosaico sem molduras adicionais. */
.portal-refinado main .home-dashboard-topo .home-acessos .home-acesso {
  border: 0;
  box-shadow: none;
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .portal-refinado main .home-dashboard-topo .home-acessos .home-acesso:hover {
    box-shadow: 0 4px 12px rgba(30, 49, 74, 0.07);
  }
}
