/* =========================================================================
   Central de Comunicados — seletor de idioma (PT-BR / EN / ES)
   Botão flutuante empilhado acima do botão de tema. Estilo compartilhado.
   ========================================================================= */
.kbr-lang{position:fixed; right:18px; bottom:78px; z-index:80; font-family:'Segoe UI',Arial,sans-serif;}

.kbr-lang-fab{
  position:relative;
  width:48px; height:48px; border-radius:50%; border:none; cursor:pointer;
  background:var(--verde); color:#fff; display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 18px rgba(0,0,0,.28); transition:transform .15s ease, background-color .25s ease;
}
.kbr-lang-fab:hover{transform:translateY(-2px) scale(1.04);}
.kbr-lang-fab svg{width:23px; height:23px; stroke:#fff; stroke-width:2; fill:none; stroke-linecap:round; stroke-linejoin:round;}
.kbr-lang-fab .kbr-lang-code{
  position:absolute; right:-3px; bottom:-3px; min-width:19px; height:19px; padding:0 3px;
  background:var(--verde-esc); color:#fff; border:2px solid var(--surface);
  border-radius:10px; font-size:9.5px; font-weight:bold; letter-spacing:.3px;
  display:flex; align-items:center; justify-content:center;
}

.kbr-lang-pop{
  position:absolute; right:0; bottom:60px; width:200px;
  background:var(--surface); color:var(--texto); border:1px solid var(--linha);
  border-radius:14px; padding:10px; box-shadow:0 12px 34px rgba(0,0,0,.30);
  transform-origin:bottom right; transition:opacity .16s ease, transform .16s ease;
}
.kbr-lang-pop[hidden]{display:none;}
.kbr-lang-pop.closing{opacity:0; transform:scale(.94); pointer-events:none;}

.kbr-lang-label{font-size:10.5px; font-weight:bold; letter-spacing:1px; text-transform:uppercase;
  color:var(--text-soft); margin:2px 4px 8px;}

.kbr-lang-opt{
  display:flex; align-items:center; gap:10px; width:100%;
  padding:10px 12px; border:1px solid transparent; border-radius:9px; cursor:pointer;
  background:transparent; color:var(--texto); font-size:13.5px; font-weight:600; text-align:left;
  transition:border-color .15s, background-color .15s; margin-bottom:2px;
}
.kbr-lang-opt:last-child{margin-bottom:0;}
.kbr-lang-opt:hover{border-color:var(--verde);}
.kbr-lang-opt.active{border-color:var(--verde); background:var(--accent-soft); color:var(--verde-esc);}
.kbr-lang-opt .kbr-lang-tag{
  flex:0 0 auto; min-width:30px; padding:3px 6px; border-radius:6px;
  background:var(--accent-soft); color:var(--verde-esc);
  font-size:10px; font-weight:bold; letter-spacing:.5px; text-align:center;
}
.kbr-lang-opt.active .kbr-lang-tag{background:var(--verde); color:#fff;}

@media (max-width:560px){
  .kbr-lang{right:14px; bottom:68px;}
  .kbr-lang-fab{width:44px; height:44px;}
}
