/* ============================================================
   painel-admin.css — Painel do Sistema
   ============================================================ */

/* Selo de cargo */
.pa-cargo {
  display: flex; align-items: center; gap: .8rem; flex-wrap: wrap;
  padding: .7rem 1rem;
  margin-bottom: 1rem;
  border-radius: 12px;
  background: linear-gradient(100deg, rgba(56,189,248,.07), transparent);
  border: 1px solid rgba(56,189,248,.25);
}
.pa-cargo-selo {
  font-family: var(--font-section);
  font-size: .68rem; font-weight: 700; letter-spacing: .16em;
  padding: .3rem .8rem; border-radius: 100px;
  color: #7dd3fc; border: 1px solid rgba(56,189,248,.5); background: rgba(56,189,248,.1);
  white-space: nowrap;
}
.pa-cargo-selo.arq {
  color: var(--gold-bright); border-color: rgba(251,191,36,.55); background: rgba(251,191,36,.1);
  text-shadow: 0 0 10px rgba(251,191,36,.6);
  animation: dg-pulse-txt 2.8s ease-in-out infinite;
}
.pa-cargo-txt { font-family: var(--font-section); font-size: .74rem; color: var(--text-muted); }

/* Abas */
.pa-abas { display: flex; gap: .5rem; flex-wrap: wrap; margin-bottom: 1.2rem; }
.pa-aba {
  font-family: var(--font-section); font-size: .78rem; font-weight: 700;
  letter-spacing: .06em;
  padding: .55rem 1.1rem; border-radius: 10px; cursor: pointer;
  color: var(--text-secondary);
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(148,163,184,.16);
  transition: all .2s;
}
.pa-aba:hover { color: #fff; border-color: var(--purple-glow); }
.pa-aba.on {
  color: #fff;
  background: linear-gradient(100deg, rgba(124,58,237,.3), rgba(56,189,248,.15));
  border-color: var(--purple-glow);
  box-shadow: 0 0 16px rgba(124,58,237,.3);
}

/* Estatísticas */
.pa-stats { display: flex; gap: .7rem; flex-wrap: wrap; margin-bottom: 1rem; }
.pa-stat {
  flex: 1; min-width: 100px; text-align: center;
  padding: .7rem .5rem; border-radius: 12px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(148,163,184,.14);
}
.pa-stat .v { font-family: 'Orbitron', monospace; font-size: 1.5rem; font-weight: 700; color: var(--text-primary); }
.pa-stat .k {
  font-family: var(--font-section); font-size: .58rem;
  letter-spacing: .14em; text-transform: uppercase; color: var(--text-muted); margin-top: .15rem;
}

/* Lista de hunters */
.pa-lista { display: flex; flex-direction: column; gap: .6rem; }
.pa-hunter {
  display: flex; align-items: center; gap: .9rem;
  padding: .8rem 1rem; border-radius: 13px;
  background: linear-gradient(150deg, rgba(255,255,255,.03), rgba(0,0,0,.2));
  border: 1px solid rgba(148,163,184,.12);
  transition: all .2s;
}
.pa-hunter:hover { border-color: rgba(124,58,237,.4); transform: translateY(-1px); }
.pa-hunter-av {
  width: 46px; height: 46px; flex-shrink: 0;
  border-radius: 50%; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem;
  background: linear-gradient(135deg, var(--purple-main), var(--blue-mana));
  border: 2px solid rgba(168,85,247,.4);
}
.pa-hunter-av img { width: 100%; height: 100%; object-fit: cover; }
.pa-hunter-info { flex: 1; min-width: 0; }
.pa-hunter-nome {
  display: flex; align-items: center; gap: .45rem; flex-wrap: wrap;
  font-family: var(--font-section); font-size: .95rem; font-weight: 700;
  color: var(--text-primary);
}
.pa-nivel {
  font-family: var(--font-section); font-size: .55rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  padding: .12rem .5rem; border-radius: 100px; border: 1px solid;
}
.pa-hunter-sub { font-size: .68rem; color: var(--text-muted); margin-top: .15rem; }
.pa-hunter-stats {
  display: flex; gap: .8rem; flex-wrap: wrap; margin-top: .3rem;
  font-family: 'Orbitron', monospace; font-size: .62rem; color: var(--text-secondary);
}
.pa-hunter-badges {
  display: flex; gap: .4rem; flex-wrap: wrap;
  margin-top: .45rem; font-size: 1rem;
}
.pa-badge-chip {
  position: relative; display: inline-flex; align-items: center;
  padding: 2px; border-radius: 50%;
  transition: transform .2s;
}
.pa-badge-chip:hover { transform: scale(1.1); }
/* Conquistada pelo hunter: fica à mostra, mas sem alça para o Arquiteto */
.pa-badge-chip.ganha { opacity: .8; }
.pa-badge-chip.pend  { opacity: .5; filter: grayscale(.5); }
.pa-badge-x {
  position: absolute; top: -5px; right: -5px;
  width: 16px; height: 16px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: .55rem; line-height: 1; cursor: pointer;
  color: #fff; background: #b91c1c;
  border: 1px solid rgba(248,113,113,.8);
  opacity: 0; transform: scale(.5);
  transition: opacity .18s, transform .18s;
}
.pa-badge-chip:hover .pa-badge-x { opacity: 1; transform: scale(1); }
.pa-badge-x:hover { background: #ef4444; box-shadow: 0 0 10px rgba(239,68,68,.7); }
.pa-badge-x:disabled { opacity: .5; cursor: wait; }
.pa-btn-mini {
  flex-shrink: 0; font-size: 1rem;
  padding: .5rem .7rem; border-radius: 9px; cursor: pointer;
  color: var(--gold-bright);
  background: rgba(251,191,36,.08);
  border: 1px solid rgba(251,191,36,.3);
  transition: all .2s;
}
.pa-btn-mini:hover { background: rgba(251,191,36,.22); box-shadow: 0 0 12px rgba(251,191,36,.35); }

/* Envio de emblemas */
.pa-nota {
  font-family: var(--font-section); font-size: .74rem; line-height: 1.6;
  color: var(--text-muted);
  padding: .7rem .9rem; margin-bottom: 1rem;
  border-radius: 10px;
  background: rgba(56,189,248,.05);
  border: 1px dashed rgba(56,189,248,.25);
}
.pa-secao-lbl {
  font-family: var(--font-section); font-size: .62rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--text-muted);
  margin: 1.1rem 0 .5rem;
}
.pa-emblemas {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: .6rem;
}
.pa-emblema {
  text-align: center; padding: .9rem .7rem; border-radius: 13px; cursor: pointer;
  background: linear-gradient(165deg, rgba(255,255,255,.03), rgba(0,0,0,.25));
  border: 1px solid rgba(148,163,184,.14);
  transition: all .2s;
}
.pa-emblema:hover { transform: translateY(-2px); border-color: rgba(251,191,36,.45); }
.pa-emblema.on {
  border-color: var(--gold-bright);
  background: linear-gradient(165deg, rgba(251,191,36,.14), rgba(0,0,0,.3));
  box-shadow: 0 0 22px rgba(251,191,36,.3);
}
.pa-emblema-ico { font-size: 2rem; }
.pa-emblema-nome {
  font-family: var(--font-section); font-size: .82rem; font-weight: 700;
  color: var(--text-primary); margin-top: .3rem;
}
.pa-emblema-desc { font-size: .64rem; color: var(--text-muted); margin-top: .2rem; min-height: 2.4em; }
.pa-emblema-bonus {
  font-family: 'Orbitron', monospace; font-size: .62rem;
  color: var(--gold-bright); margin-top: .3rem;
}

/* Modo recolher: a seleção é vermelha, não dourada — o gesto é o oposto */
.pa-emblema-med {
  height: 64px; display: flex; align-items: center; justify-content: center;
}
.pa-emblema-rev:hover { border-color: rgba(239,68,68,.5); }
.pa-emblema-rev.on {
  border-color: #ef4444;
  background: linear-gradient(165deg, rgba(239,68,68,.16), rgba(0,0,0,.32));
  box-shadow: 0 0 22px rgba(239,68,68,.3);
}
.pa-emblema-rev.on .pa-emblema-bonus { color: #fca5a5; }
.pa-nota-alerta {
  background: rgba(239,68,68,.06);
  border-color: rgba(239,68,68,.3);
}
.pa-hunter-chip.travado { opacity: .55; }
.pa-btn-recolher {
  width: 100%; margin-top: 1.2rem;
  font-family: var(--font-section); font-size: .85rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  padding: .75rem 1.2rem; border-radius: 11px; cursor: pointer;
  color: #fff;
  background: linear-gradient(100deg, #7f1d1d, #b91c1c);
  border: 1px solid rgba(239,68,68,.7);
  box-shadow: 0 0 20px rgba(239,68,68,.25);
  transition: all .2s;
}
.pa-btn-recolher:hover:not(:disabled) {
  transform: translateY(-2px); box-shadow: 0 0 32px rgba(239,68,68,.5);
}
.pa-btn-recolher:disabled {
  opacity: .4; cursor: not-allowed;
  background: rgba(255,255,255,.05); border-color: rgba(148,163,184,.2);
  box-shadow: none;
}

.pa-hunters-sel { display: flex; gap: .45rem; flex-wrap: wrap; }
.pa-hunter-chip {
  display: flex; align-items: center; gap: .4rem;
  padding: .35rem .75rem; border-radius: 100px; cursor: pointer;
  font-family: var(--font-section); font-size: .74rem;
  color: var(--text-secondary);
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(148,163,184,.18);
  transition: all .2s;
}
.pa-hunter-chip img { width: 20px; height: 20px; border-radius: 50%; object-fit: cover; }
.pa-hunter-chip.on {
  color: #fff; border-color: var(--purple-glow);
  background: rgba(124,58,237,.25);
  box-shadow: 0 0 14px rgba(124,58,237,.35);
}
.pa-input {
  width: 100%; padding: .6rem .8rem; border-radius: 9px;
  background: rgba(0,0,0,.45);
  border: 1px solid rgba(148,163,184,.18);
  color: var(--text-primary);
  font-family: var(--font-section); font-size: .85rem;
}
.pa-input:focus { outline: none; border-color: var(--gold-bright); }
.pa-btn-enviar {
  width: 100%; margin-top: 1.2rem;
  font-family: var(--font-section); font-size: .85rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  padding: .75rem 1.2rem; border-radius: 11px; cursor: pointer;
  color: #fff;
  background: linear-gradient(100deg, #92400e, #d97706);
  border: 1px solid var(--gold-bright);
  box-shadow: 0 0 20px rgba(251,191,36,.3);
  transition: all .2s;
}
.pa-btn-enviar:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 0 32px rgba(251,191,36,.55); }
.pa-btn-enviar:disabled { opacity: .4; cursor: not-allowed; }

/* Cascas do Sistema */
.pa-grid-cascas { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: .7rem; }
.pa-casca {
  display: flex; align-items: center; gap: .8rem;
  padding: .9rem 1rem; border-radius: 13px;
  background: rgba(255,255,255,.02);
  border: 1px dashed rgba(148,163,184,.2);
  opacity: .75;
}
.pa-casca-ico { font-size: 1.5rem; }
.pa-casca-titulo { font-family: var(--font-section); font-size: .85rem; font-weight: 700; color: var(--text-secondary); }
.pa-casca-desc { font-size: .64rem; color: var(--text-dim); margin-top: .1rem; }
.pa-casca-tag {
  margin-left: auto; font-family: var(--font-section); font-size: .55rem;
  letter-spacing: .1em; text-transform: uppercase; color: var(--text-dim);
  padding: .15rem .5rem; border-radius: 100px; border: 1px solid rgba(148,163,184,.2);
  white-space: nowrap;
}

/* Catálogo de materiais */
.pa-cat-med { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 46px; }
.pa-toggle {
  flex-shrink: 0; position: relative;
  width: 46px; height: 25px; border-radius: 100px; cursor: pointer;
  background: rgba(0,0,0,.5);
  border: 1px solid rgba(148,163,184,.25);
  transition: all .25s;
}
.pa-toggle:disabled { opacity: .5; cursor: wait; }
.pa-toggle-bola {
  position: absolute; top: 2px; left: 2px;
  width: 19px; height: 19px; border-radius: 50%;
  background: #64748b;
  transition: transform .25s cubic-bezier(.34,1.4,.64,1), background .25s;
}
.pa-toggle.on {
  background: rgba(251,191,36,.22);
  border-color: var(--gold-bright);
  box-shadow: 0 0 14px rgba(251,191,36,.35);
}
.pa-toggle.on .pa-toggle-bola {
  transform: translateX(21px);
  background: var(--gold-bright);
  box-shadow: 0 0 8px rgba(251,191,36,.8);
}
.pa-cat-presos { display: flex; flex-wrap: wrap; gap: .35rem; }
.pa-cat-chip {
  font-family: var(--font-section); font-size: .68rem;
  color: var(--text-dim);
  padding: .28rem .6rem; border-radius: 100px;
  background: rgba(255,255,255,.02);
  border: 1px dashed rgba(148,163,184,.18);
}

.pa-vazio {
  text-align: center; padding: 2.5rem 1rem;
  font-family: var(--font-section); font-size: .85rem; color: var(--text-muted);
}

@media (max-width: 620px) {
  .pa-hunter { flex-wrap: wrap; }
  .pa-stats .pa-stat { min-width: 80px; }
}
