/* Pronto Flux — acabamento visual dos ícones do sistema.
   Escopo intencional: navegação, ações do cabeçalho, cards e menus.
   Evitar regras globais em todo SVG (logos, gráficos e comprovantes). */
:root{--pf-icon-accent:#D71920;--pf-icon-accent-hover:#E1262D}
.top-nav-icon{
  border-radius:12px;
  transition:background .17s ease,border-color .17s ease,box-shadow .17s ease,transform .17s ease;
}
.top-nav-icon:hover{
  box-shadow:0 0 0 2px rgba(215,25,32,.09);
  transform:translateY(-1px);
}
.top-nav-icon svg{
  width:18px;height:18px;
  stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;
}
.top-account-action svg{
  stroke-width:1.9!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
.side-nav>.nav-btn,.side-group-toggle,.side-footer>.nav-btn{
  transition:background .17s,border-color .17s,color .17s,box-shadow .17s;
}
.nav-btn .ico{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.nav-btn .ico svg,.side-group-toggle .ico svg{
  display:block;width:20px;height:20px;stroke-linejoin:round;stroke-linecap:round;
}
.side-nav>.nav-btn.active,.side-subnav .nav-btn.sub.active{
  box-shadow:inset 3px 0 0 rgba(255,255,255,.55);
}
.module-card .icon{
  display:grid;place-items:center;
  box-shadow:inset 0 1px rgba(255,255,255,.06);
  transition:transform .17s ease,box-shadow .17s ease;
}
.module-card .icon svg{
  stroke-linecap:round;stroke-linejoin:round;
}
.module-card:hover .icon{
  transform:translateY(-2px);
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 5px 13px rgba(0,0,0,.10);
}
.account-menu-row>span svg,.header-popover-actions svg{
  stroke-linecap:round;stroke-linejoin:round;
}
@media(prefers-reduced-motion:reduce){
  .top-nav-icon,.module-card .icon,.side-nav>.nav-btn,.side-group-toggle,.side-footer>.nav-btn{transition:none}
  .top-nav-icon:hover,.module-card:hover .icon{transform:none}
}
