/* =====================================================================
   TRIADPVP · SITE
   Mesmos tokens do launcher. Preto, branco e vermelho; as únicas cores
   fora disso são as dos planos VIP e dos boosters, porque são sinal.
   ===================================================================== */
:root{
  color-scheme: light;

  --preto:#0B0B0C;  --preto2:#141416; --preto3:#1D1D20; --preto4:#2A2A2E;
  --branco:#FFFFFF; --cl:#F4F4F5;     --cl2:#EAEAEB;    --fio:#E3E3E5;  --fio2:#CBCBCE;
  --txt:#111112;    --dim:#5C5C63;    --fraco:#6E6E76;
  --txt-esc:#FAFAFA;--dim-esc:#A6A6AD;--fraco-esc:#85858D;

  --verm:#E01B22;   --verm-h:#F5333A; --verm-cl:#C2121B; --verm-fundo:#2A0C0E; --verm-suave:#FDECEC;
  --ok:#15803D;

  /* planos VIP: nome grande no tom vivo, texto pequeno no tom fechado */
  --hero:#15803D;   --hero-f:#E8F6EE;
  --elite:#1E6FD9;  --elite-f:#EAF2FE;
  --legend:#7A3BC4; --legend-f:#F3ECFC;
  --prime:#B8860B;  --prime-txt:#8A6612; --prime-f:#FBF2DC;
  --builder:#0F766E;--builder-f:#E6F4F2;

  /* títulos em Archivo 900: a Archivo Black cola o pingo do "i" em vários tamanhos e "Créditos"
     parecia "CrédItos". A Black fica só na marca TRIADPVP, que é toda maiúscula */
  --display:'Archivo','Arial Black',Arial,sans-serif;
  --marca:'Archivo Black','Arial Black',Arial,sans-serif;
  --texto:'Archivo','Helvetica Neue',Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  --larg:1200px;
  --sombra:0 10px 30px -12px rgba(11,11,12,.22);
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; background:var(--branco); color:var(--txt);
  font-family:var(--texto); font-size:16px; line-height:1.6;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
img,svg{ max-width:100%; }
a{ color:inherit; text-decoration:none; }
button{ font-family:inherit; }
[hidden]{ display:none !important; }
:focus-visible{ outline:2px solid var(--verm); outline-offset:3px; border-radius:4px; }

/* texto corrido sempre justificado; título, rótulo, botão e tabela ficam de fora */
main p{
  text-align:justify; text-justify:inter-word; hyphens:auto; -webkit-hyphens:auto;
}
.vh{
  position:absolute !important; width:1px; height:1px; margin:-1px; padding:0; border:0;
  overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap;
}
[id]{ scroll-margin-top:92px; }

/* ---------------------------------------------------------------- base */
.wrap{ width:100%; max-width:var(--larg); margin-inline:auto; padding-inline:24px; }
.sec{ padding-block:104px; }
.sec--cl{ background:var(--cl); }
.escuro{ background:var(--preto); color:var(--txt-esc); }

.rotulo{
  display:inline-flex; align-items:center; gap:8px; width:max-content; max-width:100%;
  font-size:11.5px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--verm-cl);
}
.escuro .rotulo{ color:#FF4D55; }
.rotulo::before{ content:""; width:18px; height:2px; background:currentColor; border-radius:2px; }

.cab-sec{ display:flex; flex-direction:column; gap:12px; margin-bottom:44px; }
.cab-sec h2, .h2{
  margin:0; font-family:var(--display); font-weight:900;
  font-size:clamp(30px, 3.8vw, 44px); line-height:1.04; letter-spacing:-.025em;
  text-wrap:balance;
}
.lede{ margin:0; font-size:17px; color:var(--dim); max-width:64ch; }
.escuro .lede{ color:var(--dim-esc); }
.num{ font-variant-numeric:tabular-nums; }

/* ============================================================ TOPO */
.topo{
  position:sticky; top:env(safe-area-inset-top, 0px); z-index:60;
  background:rgba(11,11,12,.9); color:var(--txt-esc);
  -webkit-backdrop-filter:saturate(1.3) blur(12px); backdrop-filter:saturate(1.3) blur(12px);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.topo-in{ display:flex; align-items:center; gap:18px; height:66px; }
.marca{ display:flex; align-items:center; gap:10px; flex:none; }
.marca svg{ width:30px; height:30px; display:block; }
.logo{ display:block; height:26px; width:auto; image-rendering:auto; }
.marca:hover .logo{ filter:drop-shadow(0 0 10px rgba(224,27,34,.45)); }
.marca:focus-visible{ outline:2px solid #fff; outline-offset:6px; border-radius:4px; }

.wordmark{
  display:inline-block; font-family:var(--marca); font-weight:400; font-size:18px; line-height:1;
  letter-spacing:.07em; color:#FFFFFF;
  text-shadow:-1.5px -1.5px 0 #0B0B0C, 1.5px -1.5px 0 #0B0B0C, -1.5px 1.5px 0 #0B0B0C, 1.5px 1.5px 0 #0B0B0C;
}
.wordmark i{ font-style:normal; color:var(--verm); }

.topo::before{
  content:""; position:absolute; left:0; right:0; top:0; height:2px;
  background:linear-gradient(90deg, transparent 0%, var(--verm) 22%, #FF5A3C 50%, var(--verm) 78%, transparent 100%); opacity:.85;
}
.nav{ display:flex; align-items:center; gap:2px; margin-left:10px; }
.nav a{
  position:relative; display:inline-flex; align-items:center; gap:7px;
  padding:7px 11px; border-radius:8px;
  font-size:14px; font-weight:600; color:var(--dim-esc); white-space:nowrap;
  transition:color .15s, background .15s;
}
.nav a svg{
  width:16px; height:16px; flex:none; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round;
  opacity:.6; transition:opacity .15s, color .15s;
}
.nav a:hover{ color:#fff; background:rgba(255,255,255,.06); }
.nav a:hover svg{ opacity:1; }
.nav a:focus-visible{ outline:2px solid #fff; outline-offset:1px; }
.nav a::after{ content:""; position:absolute; left:11px; right:11px; bottom:-15px; height:2px; border-radius:2px; background:var(--verm); transform:scaleX(0); transition:transform .2s; }
.nav a:hover::after{ transform:scaleX(.35); }
.nav a[aria-current="page"]{ color:#fff; background:none; }
.nav a[aria-current="page"]::after{ transform:scaleX(1); box-shadow:0 0 12px rgba(224,27,34,.8); }
.nav a[aria-current="page"] svg{ opacity:1; color:#FF5A5F; }

.topo-dir{ margin-left:auto; display:flex; align-items:center; gap:8px; }
.topo-redes{ display:flex; align-items:center; gap:2px; }
.topo-redes a{
  width:30px; height:32px; display:grid; place-items:center; border-radius:8px; color:#7C7C86;
  transition:color .15s, background .15s, transform .15s;
}
.topo-redes svg{ width:17px; height:17px; fill:currentColor; display:block; }
.topo-redes a:hover, .topo-redes a:focus-visible{ background:rgba(255,255,255,.07); transform:translateY(-1px); outline:none; }
.topo-redes a:focus-visible{ box-shadow:0 0 0 2px #fff; }
.topo-redes .rd-discord:hover, .topo-redes .rd-discord:focus-visible{ color:#7C8CFF; }
.topo-redes .rd-x:hover, .topo-redes .rd-x:focus-visible{ color:#FFFFFF; }
.topo-redes .rd-instagram:hover, .topo-redes .rd-instagram:focus-visible{ color:#FF5C9A; }
.topo-redes .rd-youtube:hover, .topo-redes .rd-youtube:focus-visible{ color:#FF4040; }
.topo-redes .rd-tiktok:hover, .topo-redes .rd-tiktok:focus-visible{ color:#3FE6E0; }
.topo-redes .rd-pinterest:hover, .topo-redes .rd-pinterest:focus-visible{ color:#FF4B5C; }
.topo-entrar{
  display:inline-flex; align-items:center; gap:7px; font-size:14px; font-weight:600; color:var(--dim-esc); padding:8px 10px; border-radius:8px; white-space:nowrap;
  transition:color .15s;
}
.topo-entrar svg{ flex:none; width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.topo-entrar:hover, .topo-entrar[aria-current="page"]{ color:#fff; }
/* 1.11: "Criar conta" é a ação do visitante e ganha a caixa; "Entrar" fica como texto (padrão GitHub/Discord) */
.topo-criar{
  display:inline-flex; align-items:center; height:38px; padding:0 14px; border-radius:10px; white-space:nowrap;
  border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.04); color:#fff; font-size:14px; font-weight:700;
  transition:border-color .15s, background .15s;
}
.topo-criar:hover, .topo-criar[aria-current="page"]{ border-color:rgba(255,255,255,.45); background:rgba(255,255,255,.09); }
.topo-entrar:focus-visible, .topo-criar:focus-visible{ outline:2px solid #fff; outline-offset:2px; }
.topo-jogar{ gap:8px; box-shadow:0 6px 22px -8px rgba(224,27,34,.8); }
.topo-jogar svg{ flex:none; width:13px; height:13px; fill:currentColor; }
.redes{ display:flex; align-items:center; gap:4px; }
.redes a{ position:relative; width:32px; height:32px; display:inline-block; border-radius:7px; transition:transform .15s; }
.redes img{ position:absolute; inset:0; width:100%; height:100%; display:block; transition:opacity .15s; }
.redes .r-v{ opacity:0; }
.redes a:hover, .redes a:focus-visible{ transform:translateY(-2px); }
.redes a:hover .r-v, .redes a:focus-visible .r-v{ opacity:1; }
.redes a:focus-visible{ outline:2px solid #fff; outline-offset:2px; }
/* quem entrou x visitante (o atributo vem do script do <head>) */
html[data-logado] [data-so-visitante]{ display:none !important; }
html:not([data-logado]) [data-so-logado]{ display:none !important; }
.nick-menu{ position:absolute; z-index:300; min-width:180px; padding:6px; background:#141417; border:1px solid rgba(255,255,255,.12); border-radius:12px;
  box-shadow:0 20px 44px -14px rgba(0,0,0,.7); display:flex; flex-direction:column; animation:nickMenu .12s ease-out; }
@keyframes nickMenu{ from{ opacity:0; transform:translateY(-4px); } to{ opacity:1; transform:none; } }
.nick-menu b{ padding:6px 10px 8px; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:#8A8A94; border-bottom:1px solid rgba(255,255,255,.08); margin-bottom:4px; }
.nick-menu a{ padding:9px 10px; border-radius:8px; color:#E6E6EA; font-size:14px; font-weight:600; text-decoration:none; }
.nick-menu a:hover, .nick-menu a:focus-visible{ background:rgba(255,255,255,.07); color:#fff; outline:none; }
.nick-menu .nick-menu-den{ color:#FF6B70; }
.den-assuma{ align-self:center; font-size:13.5px; color:var(--dim); font-weight:600; }
.perfil-pos{ margin-top:16px; }
.perfil-pos h3{ margin:0 0 12px; }
.pos-grade{ display:flex; flex-wrap:wrap; gap:8px; }
.pos-item{ display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:10px; border:1px solid var(--fio); background:#fff; font-size:14px; font-weight:600; color:var(--txt); }
.pos-item b{ font-variant-numeric:tabular-nums; color:var(--verm); }
.pos-item:hover{ border-color:var(--txt); }
.pos-item--1{ background:#FFF6D8; border-color:#F1D27A; } .pos-item--2{ background:#F1F3F6; border-color:#D3D8DF; } .pos-item--3{ background:#FBEADB; border-color:#E7C3A0; }
.nick-menu-sep{ border:0; height:1px; background:rgba(255,255,255,.08); margin:4px 2px; }
/* 1.11: janela "Punir" do menu do nick */
.punir-veu{ position:fixed; inset:0; z-index:400; background:rgba(8,8,10,.6); backdrop-filter:blur(3px); display:grid; place-items:center; padding:16px; }
.punir{ width:100%; max-width:440px; background:#fff; color:var(--txt); border-radius:18px; padding:24px; box-shadow:0 30px 80px -20px rgba(0,0,0,.6); display:flex; flex-direction:column; gap:8px; }
.punir h3{ margin:0 0 6px; font-family:var(--display); font-weight:900; font-size:22px; }
.punir h3 span{ color:var(--verm); }
.punir-rot{ font-size:11.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--dim); margin-top:6px; }
.punir textarea, .punir input, .punir select{ font:inherit; font-size:15px; border:1px solid var(--fio2); border-radius:10px; padding:10px 12px; background:#fff; color:var(--txt); }
.punir textarea{ resize:vertical; min-height:80px; }
.punir-tempo{ display:grid; grid-template-columns:110px minmax(0,1fr); gap:8px; }
.punir-nota{ margin:6px 0 0; font-size:13.5px; color:var(--dim); text-align:left; }
.punir-erro{ margin:0; padding:10px 12px; border-radius:10px; background:var(--verm-suave); color:#5E0B10; font-size:14px; }
.punir-acoes{ display:flex; justify-content:flex-end; gap:8px; margin-top:10px; }
.conta-menu{ position:relative; flex:none; }
.redes-menu{ position:relative; flex:none; }
.redes-btn{
  width:38px; height:38px; display:grid; place-items:center; border-radius:10px; cursor:pointer;
  border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.03); color:#A6A6B0; transition:color .15s, border-color .15s, background .15s;
}
.redes-btn svg{ width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.redes-btn:hover, .redes-btn[aria-expanded="true"]{ color:#fff; border-color:rgba(255,255,255,.35); background:rgba(255,255,255,.07); }
.redes-btn:focus-visible{ outline:2px solid #fff; outline-offset:2px; }
.redes-drop{
  position:absolute; left:calc(50% - 170px); top:calc(100% + 12px); width:340px; z-index:60; padding:14px;
  background:#141417; border:1px solid rgba(255,255,255,.1); border-radius:16px;
  box-shadow:0 28px 60px -20px rgba(0,0,0,.8); animation:nickMenu .14s ease-out;
}
.redes-drop[hidden]{ display:none; }
.rd-cab{ display:flex; flex-direction:column; gap:2px; padding:2px 4px 12px; border-bottom:1px solid rgba(255,255,255,.07); margin-bottom:10px; }
.rd-cab b{ font-size:15px; color:#fff; }
.rd-cab small{ font-size:12.5px; color:#8A8A94; }
.rd-grade{ display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.rd-item{ display:flex; align-items:center; gap:10px; padding:8px; border-radius:11px; color:#E6E6EA; transition:background .15s; }
.rd-item:hover, .rd-item:focus-visible{ background:rgba(255,255,255,.06); outline:none; }
.rd-ic{ width:34px; height:34px; flex:none; border-radius:9px; display:grid; place-items:center; background:var(--rd, #2A2A30); }
.rd-ic svg{ width:17px; height:17px; fill:#fff; }
.rd-txt{ display:flex; flex-direction:column; min-width:0; line-height:1.2; }
.rd-txt b{ font-size:13.5px; }
.rd-txt small{ font-size:11.5px; color:#8A8A94; }
.rd-discord{ --rd:#5865F2; } .rd-x{ --rd:#000; } .rd-instagram{ --rd:linear-gradient(45deg,#F58529,#DD2A7B 55%,#8134AF); }
.rd-youtube{ --rd:#FF0000; } .rd-tiktok{ --rd:#010101; } .rd-pinterest{ --rd:#E60023; }
.rd-x .rd-ic, .rd-tiktok .rd-ic{ box-shadow:inset 0 0 0 1px rgba(255,255,255,.18); }
.rd-breve{ cursor:default; } .rd-breve .rd-ic{ filter:grayscale(1); opacity:.55; } .rd-breve b{ color:#9A9AA4; }
.rd-breve:hover{ background:none; }
.conta-btn{
  flex:none; display:inline-flex; align-items:center; gap:8px; height:38px; padding:0 10px 0 4px; border-radius:999px;
  border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.04); color:#fff; cursor:pointer;
  font:inherit; font-size:14px; font-weight:700; transition:border-color .15s, background .15s;
}
.conta-btn:hover, .conta-btn[aria-expanded="true"]{ border-color:rgba(255,255,255,.4); background:rgba(255,255,255,.08); }
.conta-btn:focus-visible{ outline:2px solid #fff; outline-offset:2px; }
.conta-ini{
  width:28px; height:28px; border-radius:50%; display:grid; place-items:center; flex:none;
  background:var(--verm); color:#fff; font-family:var(--marca); font-size:14px; line-height:1;
}
.conta-ini{ position:relative; overflow:hidden; }
.conta-ini img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.conta-nick{ max-width:132px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:none; }
@media (max-width:440px){ .conta-nick{ display:none; } .conta-btn{ padding-right:8px; } }
.conta-btn svg{ width:14px; height:14px; opacity:.7; transition:transform .15s; }
.conta-btn[aria-expanded="true"] svg{ transform:rotate(180deg); }
.conta-drop{
  position:absolute; right:0; top:calc(100% + 10px); min-width:220px; z-index:60; padding:6px;
  background:#141417; border:1px solid rgba(255,255,255,.1); border-radius:14px;
  box-shadow:0 24px 48px -16px rgba(0,0,0,.7); display:flex; flex-direction:column;
}
.conta-drop[hidden]{ display:none; }
.conta-quem{ padding:8px 12px 6px; display:flex; flex-direction:column; gap:2px; min-width:0; }
.conta-quem small{ font-size:11.5px; color:#8A8A93; font-weight:600; letter-spacing:.02em; }
.conta-quem b{ font-size:15px; color:#fff; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.conta-drop hr{ border:0; height:1px; background:rgba(255,255,255,.08); margin:6px 4px; }
.conta-drop a[hidden]{ display:none; }
.conta-drop a, .conta-drop button{
  display:flex; align-items:center; gap:10px; width:100%; text-align:left; padding:9px 12px; border-radius:8px; border:0; background:none;
  font:inherit; font-size:14px; font-weight:600; color:#D9D9DE; cursor:pointer; text-decoration:none;
}
.conta-drop svg{ width:17px; height:17px; flex:none; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; opacity:.75; }
.conta-drop a:hover, .conta-drop button:hover, .conta-drop a:focus-visible, .conta-drop button:focus-visible{ background:rgba(255,255,255,.07); color:#fff; outline:none; }
.conta-drop button{ color:#FF6B70; }
.topo .sep{ width:1px; height:22px; background:rgba(255,255,255,.12); }

/* ============================================================ BOTÕES */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  height:44px; padding:0 20px; border-radius:8px; border:1px solid transparent;
  font:inherit; font-size:12.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  white-space:nowrap; cursor:pointer; text-decoration:none;
  transition:background .15s, border-color .15s, color .15s, transform .15s, box-shadow .15s;
}
.btn svg{ width:16px; height:16px; }
.btn--verm{ background:var(--verm); color:#fff; box-shadow:0 8px 22px -10px rgba(224,27,34,.7); }
.btn--verm:hover{ background:var(--verm-h); transform:translateY(-1px); }
.btn--preto{ background:var(--preto); color:#fff; }
.btn--preto:hover{ background:var(--preto3); }
.btn--linha{ background:transparent; border-color:var(--fio2); color:var(--txt); }
.btn--linha:hover{ border-color:var(--txt); }
.escuro .btn--linha{ border-color:rgba(255,255,255,.26); color:#fff; }
.escuro .btn--linha:hover{ border-color:#fff; background:rgba(255,255,255,.06); }
.btn--fio{
  background:#fff; border-color:var(--fio2); color:var(--dim);
  text-transform:none; letter-spacing:0; font-weight:600; font-size:14px;
}
.btn--fio:hover{ border-color:var(--txt); color:var(--txt); }
.btn--txt{ background:transparent; color:var(--dim-esc); text-transform:none; letter-spacing:0; font-size:14.5px; font-weight:600; padding:0 8px; }
.btn--txt:hover{ color:#fff; }
.btn--g{ height:54px; padding:0 30px; font-size:13.5px; }
.btn--p{ height:38px; padding:0 15px; font-size:12px; }
.btn--bloco{ width:100%; }
.btn[disabled], .btn.off{ background:var(--cl2); color:var(--fraco); border-color:transparent; box-shadow:none; cursor:not-allowed; transform:none; }

.pill{
  display:inline-flex; align-items:center; gap:9px; width:max-content;
  padding:7px 13px 7px 11px; border-radius:999px;
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12);
  font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#fff;
}
.pill i{ width:8px; height:8px; border-radius:999px; background:var(--verm); box-shadow:0 0 0 4px rgba(224,27,34,.22); animation:pulso 2.2s ease-in-out infinite; }
@keyframes pulso{ 0%,100%{ box-shadow:0 0 0 3px rgba(224,27,34,.25); } 50%{ box-shadow:0 0 0 7px rgba(224,27,34,.05); } }

/* ============================================================ HERO DA HOME */
.hero{ position:relative; overflow:hidden; background:var(--preto); color:var(--txt-esc); isolation:isolate; }
.hero-arte{ position:absolute; top:0; right:0; bottom:0; width:min(72%, 1240px); z-index:-1; }
.hero-arte img{ width:100%; height:100%; object-fit:cover; object-position:42% 30%; display:block; }
/* 1.11: cenas que trocam devagar (cada uma fica ~8 s; com uma só, fica parada) */
.hero-arte{ overflow:hidden; }
.hero-arte .cena{ position:absolute; inset:0; }
.hero-arte[style*="--cenas:2"] .cena, .hero-arte[style*="--cenas:3"] .cena{ opacity:0; animation:cenaTroca calc(var(--cenas) * 8s) infinite; animation-delay:calc(var(--i) * 8s); }
.hero-arte[style*="--cenas:2"] .cena:first-child, .hero-arte[style*="--cenas:3"] .cena:first-child{ opacity:1; }
@keyframes cenaTroca{ 0%{ opacity:0; transform:scale(1.04); } 6%{ opacity:1; } 33%{ opacity:1; } 40%{ opacity:0; transform:scale(1); } 100%{ opacity:0; } }
@media (prefers-reduced-motion:reduce){ .hero-arte .cena{ animation:none !important; } .hero-arte .cena:not(:first-child){ display:none; } }
/* faixa "Últimos anúncios" logo abaixo do topo: os 3 anúncios mais novos do fórum */
.faixa-anuncios{ background:#0E0E10; border-top:1px solid rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.06); }
.fa-in{ display:flex; align-items:center; gap:24px; padding-block:16px; }
.fa-rot{ flex:none; display:inline-flex; align-items:center; gap:8px; font-size:11.5px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#fff; }
.fa-rot i{ width:8px; height:8px; border-radius:50%; background:var(--verm); box-shadow:0 0 0 4px rgba(224,27,34,.2); animation:pulsa 1.8s infinite; }
@keyframes pulsa{ 50%{ box-shadow:0 0 0 7px rgba(224,27,34,0); } }
.fa-lista{ flex:1; min-width:0; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; }
.fa-item{ min-width:0; display:grid; grid-template-columns:auto minmax(0,1fr); grid-template-rows:auto auto; column-gap:10px; padding:10px 14px; border-radius:12px; background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.07); transition:border-color .15s, background .15s; }
.fa-item:hover{ border-color:rgba(224,27,34,.45); background:rgba(224,27,34,.06); }
.fa-item .fa-tag{ grid-row:1 / 3; align-self:center; font-size:10.5px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#FF6B70; background:rgba(224,27,34,.12); padding:4px 8px; border-radius:6px; }
.fa-item b{ font-size:14px; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fa-item small{ font-size:12.5px; color:#8A8A94; }
.fa-todos{ flex:none; display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#FF6B70; }
.fa-todos svg{ width:14px; height:14px; }
@media (max-width:980px){ .fa-in{ flex-wrap:wrap; gap:12px; } .fa-lista{ order:3; flex-basis:100%; grid-template-columns:minmax(0,1fr); } }
.hero-arte::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(90deg, var(--preto) 0%, rgba(11,11,12,.78) 15%, rgba(11,11,12,.22) 40%, rgba(11,11,12,0) 62%),
    linear-gradient(180deg, rgba(11,11,12,.5) 0%, rgba(11,11,12,0) 20%, rgba(11,11,12,0) 56%, rgba(11,11,12,.86) 82%, var(--preto) 100%);
}
.hero-in{ position:relative; min-height:clamp(400px, calc(78vh - 230px), 560px); padding-block:56px 40px; display:flex; flex-direction:column; justify-content:center; gap:22px; max-width:640px; }
.hero h1{
  margin:0; font-family:var(--display); font-weight:900;
  font-size:clamp(42px, 6.2vw, 80px); line-height:.94; letter-spacing:-.035em;
  text-shadow:0 4px 30px rgba(0,0,0,.5); text-wrap:balance;
}
.hero h1 em{ display:block; font-style:normal; color:var(--verm); }
.hero-lede{ margin:0; max-width:46ch; font-size:18.5px; line-height:1.55; color:#E4E4E7; text-shadow:0 2px 16px rgba(0,0,0,.7); }
.acoes{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; }

.sem-quebra{ white-space:nowrap; }
/* ===================================================== SELOS DO NICK (VIP e distintivo) */
:root{ --vip-hero:#1FB863; --vip-elite:#3D7BFF; --vip-legend:#9A63FF; --vip-prime:#E2AE2C; --vip-builder:#0F766E; }
.vip-selo{ display:inline-grid; place-items:center; width:18px; height:18px; margin-left:6px; vertical-align:-3px; flex:none;
  border-radius:6px; font:800 10.5px/1 var(--display); color:#fff; letter-spacing:0; }
.vip-selo--arte{ border-radius:0; background:none !important; }
.vip-selo img{ width:100%; height:100%; object-fit:contain; display:block; }
h1 .vip-selo, h2 .vip-selo{ width:.6em; height:.6em; margin-left:.18em; vertical-align:baseline; }
.vip-hero{ background:var(--vip-hero); } .vip-elite{ background:var(--vip-elite); } .vip-legend{ background:var(--vip-legend); }
.vip-prime{ background:#111; color:var(--vip-prime); box-shadow:inset 0 0 0 1.5px var(--vip-prime); } .vip-builder{ background:var(--vip-builder); }
[data-vip="hero"]{ color:var(--vip-hero) !important; } [data-vip="elite"]{ color:var(--vip-elite) !important; }
[data-vip="legend"]{ color:var(--vip-legend) !important; } [data-vip="prime"]{ color:var(--vip-prime) !important; }
[data-vip="builder"]{ color:var(--vip-builder) !important; }
.com-vip{ display:inline-flex !important; align-items:center; min-width:0; max-width:100%; }
.com-vip > .vip-txt{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
/* 1.12: VIP escrito nas listas: etiqueta escura com a letra e o contorno na cor do plano (lê bem no branco e no preto) */
.vip-tag{ --vt:#FFC93C; display:inline-flex; align-items:center; height:18px; padding:0 6px; margin-left:7px; border-radius:5px; flex:none; vertical-align:.1em;
  font:900 10.5px/1 var(--display); letter-spacing:.08em; color:var(--vt); white-space:nowrap; font-style:normal; text-transform:uppercase;
  background:#16130C; box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--vt) 70%, transparent); text-shadow:0 1px 0 rgba(0,0,0,.6); }
.vip-tag[data-plano="prime"]{ --vt:#FFC93C; }
.vip-tag[data-plano="hero"]{ --vt:#3BD67E; background:#0B1710; }
.vip-tag[data-plano="elite"]{ --vt:#7FA9FF; background:#0C1222; }
.vip-tag[data-plano="legend"]{ --vt:#C29BFF; background:#140E22; }
.vip-tag[data-plano="builder"]{ --vt:#2BC4B0; background:#0A1715; }
.badge-chip{ display:inline-flex; align-items:center; gap:7px; }
.badge-chip img{ width:20px; height:20px; object-fit:contain; }
.vip-chip{ display:inline-flex; align-items:center; gap:6px; height:26px; padding:0 11px; border-radius:999px;
  font:800 11.5px/1 var(--display); letter-spacing:.1em; color:#fff; background:rgba(255,255,255,.08); box-shadow:inset 0 0 0 1px currentColor; }
.vip-chip .vip-selo{ width:16px; height:16px; margin:0; }
.vip-chip[data-plano="hero"]{ color:var(--vip-hero); } .vip-chip[data-plano="elite"]{ color:var(--vip-elite); }
.vip-chip[data-plano="legend"]{ color:var(--vip-legend); } .vip-chip[data-plano="prime"]{ color:var(--vip-prime); }
.vip-chip[data-plano="builder"]{ color:var(--vip-builder); }
.conta-quem .vip-chip{ align-self:flex-start; margin-top:6px; height:22px; font-size:10.5px; }
.capa-fatos li.fato-vip{ padding:0; border:0; background:none; }
.capa-fatos .vip-chip{ height:auto; padding:7px 13px; font-size:12px; background:rgba(0,0,0,.4); backdrop-filter:blur(6px); }
.capa-vip{ margin-top:10px; height:28px; background:rgba(0,0,0,.4); align-self:flex-start; width:max-content; }
.ava-moldura{ position:relative; display:inline-flex; flex:none; vertical-align:middle; }
.badge-foto{ position:absolute; right:-10%; bottom:-10%; width:46%; height:46%; min-width:15px; min-height:15px; max-width:52px; max-height:52px;
  object-fit:contain; filter:drop-shadow(0 2px 3px rgba(0,0,0,.5)); pointer-events:auto; z-index:3; }
.fatos{
  position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  margin:0; border-top:1px solid rgba(255,255,255,.14);
}
.fatos > div{ padding:18px 22px 22px; text-align:center; }
.fatos > div + div{ border-left:1px solid rgba(255,255,255,.14); }
.fatos dt{ font-family:var(--display); font-weight:900; font-size:17px; letter-spacing:-.01em; color:#fff; margin-bottom:10px; text-align:center; }
.fatos dd{ margin:0 auto; max-width:30ch; font-size:14.5px; line-height:1.45; color:#B4B4BB; text-align:center; }

/* faixa de uma linha da loja, na home */
.faixa-loja{ display:block; background:var(--preto); color:#fff; transition:background .15s; }
.faixa-loja:hover{ background:var(--preto2); }
.faixa-loja .wrap{ display:flex; align-items:center; gap:18px; min-height:78px; padding-block:16px; }
.fl-rot{ flex:none; font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; padding:6px 10px; border-radius:6px; background:var(--verm); color:#fff; }
.fl-txt{ flex:1; min-width:0; font-size:16px; color:#E4E4E7; }
.fl-ir{ flex:none; display:inline-flex; align-items:center; gap:8px; font-size:12.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#FF4D55; }
.fl-ir svg{ width:18px; height:18px; transition:transform .16s; }
.faixa-loja:hover .fl-ir svg{ transform:translateX(4px); }

/* ============================================================ TOPO DAS PÁGINAS */
.pt{ position:relative; overflow:hidden; background:var(--preto); color:var(--txt-esc); }
.pt-arte{ position:absolute; top:0; right:0; bottom:0; width:min(58%, 820px); }
.pt-arte img{ width:100%; height:100%; object-fit:cover; object-position:50% 30%; display:block; }
.pt-arte::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, var(--preto) 0%, rgba(11,11,12,.55) 38%, rgba(11,11,12,.1) 100%); }
.pt-arte--loja img{ object-position:78% 50%; }
.pt-arte.recorte{
  width:auto; left:auto; display:flex; align-items:flex-end; justify-content:flex-end;
  padding-right:max(24px, calc((100vw - var(--larg)) / 2 + 12px));
}
.pt-arte.recorte::after{ display:none; }
.pt-arte.recorte::before{
  content:""; position:absolute; right:max(0px, calc((100vw - var(--larg)) / 2 - 40px)); bottom:-160px;
  width:620px; height:420px; border-radius:50%;
  background:radial-gradient(closest-side, rgba(224,27,34,.34), transparent);
}
.pt-arte.recorte img{ position:relative; width:auto; height:74%; object-fit:contain; filter:drop-shadow(0 16px 26px rgba(0,0,0,.6)); }
.pt-arte.recorte img:nth-child(2){ height:92%; z-index:2; margin-inline:-34px; }
.pt-in{ position:relative; box-sizing:border-box; height:360px; padding-block:40px; display:flex; flex-direction:column; justify-content:center; gap:16px; max-width:640px; }
.pt + .sec, .pt + section.sec{ padding-top:56px; }
@media (max-width:720px){ .pt-in{ height:auto; min-height:280px; padding-block:48px; } }
.pt h1{ margin:0; font-family:var(--display); font-weight:900; font-size:clamp(38px, 5.4vw, 64px); line-height:.95; letter-spacing:-.035em; text-wrap:balance; }
.pt h1 em{ display:block; font-style:normal; color:var(--verm); }
.pt-in p{ margin:0; font-size:17px; color:#D4D4D8; max-width:52ch; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; text-align:left; }

/* ============================================================ MOSAICO DO MAPA */
.mosaico{
  display:grid; gap:14px;
  grid-template-columns:1.7fr 1fr 1fr; grid-template-rows:268px 268px;
}
.mosaico .tile:first-child{ grid-row:span 2; }
.tile{ position:relative; display:block; overflow:hidden; border-radius:16px; background:var(--preto); isolation:isolate; }
.tile img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s cubic-bezier(.2,.8,.2,1); }
.tile:hover img{ transform:scale(1.045); }
.tile .leg{
  position:absolute; left:0; right:0; bottom:0; z-index:1;
  display:flex; align-items:flex-end; justify-content:space-between; gap:12px;
  padding:56px 20px 18px; color:#fff;
  background:linear-gradient(180deg, transparent, rgba(8,8,9,.86));
}
.tile .leg b{ display:block; font-family:var(--display); font-weight:900; font-size:21px; letter-spacing:-.01em; }
.tile:first-child .leg b{ font-size:28px; }
.tile .leg small{ display:block; font-size:13.5px; color:rgba(255,255,255,.72); margin-top:2px; }
.tile .leg code{
  flex:none; font-family:var(--mono); font-size:12px; color:#fff;
  padding:5px 9px; border-radius:6px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.14);
}
.mais{
  display:inline-flex; align-items:center; gap:10px; margin-top:28px;
  font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--verm-cl);
}
.mais svg{ width:18px; height:18px; transition:transform .16s; }
.mais:hover svg{ transform:translateX(4px); }

/* ============================================================ PROGRESSO */
.prog{
  background:var(--preto); color:var(--txt-esc); border-radius:18px;
  padding:34px 36px 28px; position:relative; overflow:hidden;
}
.prog::before{
  content:""; position:absolute; right:-120px; top:-160px; width:420px; height:420px; border-radius:50%;
  background:radial-gradient(circle, rgba(224,27,34,.28), transparent 65%);
}
.prog-topo{ position:relative; display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:28px; }
.prog-fase{ margin:10px 0 0; font-size:17px; color:var(--dim-esc); }
.prog-fase b{ color:#fff; font-family:var(--display); font-weight:900; }
.prog-num{ font-family:var(--display); font-weight:900; font-size:clamp(52px, 7vw, 76px); line-height:.85; letter-spacing:-.04em; display:flex; align-items:baseline; font-variant-numeric:tabular-nums; }
.prog-num em{ font-style:normal; font-size:.42em; color:var(--verm); margin-left:4px; }
.trilho{ position:relative; display:flex; gap:6px; height:12px; }
.seg{ flex:1 1 0; position:relative; overflow:hidden; background:rgba(255,255,255,.1); border-radius:999px; }
.seg .fill{ position:absolute; inset:0 auto 0 0; width:0; overflow:hidden; border-radius:999px; background:linear-gradient(90deg, var(--verm-cl), var(--verm-h)); transition:width 1.2s cubic-bezier(.22,.9,.28,1); }
.seg .fill::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(100deg, transparent 0%, rgba(255,255,255,.5) 48%, transparent 100%);
  transform:translateX(-120%); animation:brilho 3.2s ease-in-out 1.4s infinite;
}
@keyframes brilho{ 0%{ transform:translateX(-120%); } 55%,100%{ transform:translateX(220%); } }
.marcos{ position:relative; display:flex; gap:6px; list-style:none; margin:12px 0 0; padding:0; }
.marcos li{ flex:1 1 0; min-width:0; font-size:11.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--fraco-esc); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.marcos li[data-estado="feito"]{ color:#fff; }
.marcos li[data-estado="agora"]{ color:#FF5A60; }

/* ============================================================ FASES */
.fases{ margin-top:22px; display:flex; flex-direction:column; gap:10px; }
.fase{ background:#fff; border:1px solid var(--fio); border-radius:14px; transition:border-color .15s, box-shadow .15s; }
.fase:hover{ border-color:var(--fio2); }
.fase[open]{ box-shadow:var(--sombra); }
.fase[data-estado="agora"]{ border-color:var(--verm); box-shadow:0 0 0 1px var(--verm) inset; }
.fase summary{
  list-style:none; cursor:pointer; display:grid; align-items:center; gap:20px;
  grid-template-columns:86px minmax(0,1fr) 150px 128px 20px; padding:20px 22px;
}
.fase summary::-webkit-details-marker{ display:none; }
.f-rot{ font-family:var(--display); font-weight:900; font-size:15px; color:var(--fraco); }
.fase[data-estado="feito"] .f-rot{ color:var(--txt); }
.fase[data-estado="agora"] .f-rot{ color:var(--verm-cl); }
.f-nome b{ display:block; font-size:16.5px; font-weight:700; color:var(--txt); }
.f-nome small{ display:block; font-size:14px; color:var(--dim); margin-top:2px; }
.f-cont{ display:flex; flex-direction:column; gap:7px; font-size:13px; font-weight:600; color:var(--dim); font-variant-numeric:tabular-nums; }
.f-mini{ display:block; height:6px; border-radius:999px; background:var(--cl2); overflow:hidden; }
.f-mini i{ display:block; height:100%; border-radius:999px; background:var(--txt); }
.fase[data-estado="agora"] .f-mini i{ background:var(--verm); }
.estado{ justify-self:start; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; padding:6px 10px; border-radius:999px; white-space:nowrap; }
.estado--feito{ background:var(--txt); color:#fff; }
.estado--agora{ background:var(--verm); color:#fff; }
.estado--depois{ background:var(--cl); color:var(--dim); }
.f-seta{ width:20px; height:20px; color:var(--fraco); transition:transform .2s; }
.fase[open] .f-seta{ transform:rotate(180deg); }
.f-lista{ list-style:none; margin:0; padding:4px 22px 22px 128px; display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:10px 28px; }
.f-lista li{ display:flex; align-items:flex-start; gap:10px; font-size:15px; color:var(--dim); line-height:1.4; }
.f-lista li::before{
  content:""; flex:none; width:20px; height:20px; margin-top:-1px; border-radius:999px;
  border:2px solid var(--fio2); background:#fff;
}
.f-lista li.ok{ color:var(--txt); }
.f-lista li.ok::before{
  border-color:var(--txt);
  background:var(--txt) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.4l3 3 6-6.4' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat;
}

/* ============================================================ COMUNIDADE NA HOME */
.com-grid{ display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:20px; align-items:stretch; }
.lista-topicos{ background:#fff; border:1px solid var(--fio); border-radius:16px; padding:8px 8px; display:flex; flex-direction:column; }
.topico{
  display:grid; grid-template-columns:44px minmax(0,1fr) auto; gap:16px; align-items:center;
  padding:14px 14px; border-radius:11px; transition:background .15s;
}
.topico + .topico{ border-top:1px solid var(--cl2); }
.topico:hover{ background:var(--cl); }
.topico:hover .t-tit{ color:var(--verm-cl); }
.t-av{ width:44px; height:44px; border-radius:11px; background:var(--preto); display:grid; place-items:center; }
.t-av svg{ width:26px; height:26px; }
.t-tit{ display:block; font-size:16px; font-weight:700; color:var(--txt); transition:color .15s; }
.t-meta{ display:block; font-size:13.5px; color:var(--dim); margin-top:2px; }
.t-cat{ font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; padding:5px 9px; border-radius:6px; background:var(--verm-suave); color:var(--verm-cl); white-space:nowrap; }
.t-cat.oficial{ background:var(--preto); color:#fff; }
.com-card{
  position:relative; overflow:hidden; border-radius:16px; padding:32px 30px;
  display:flex; flex-direction:column; gap:16px;
}
.com-card .fundo{ position:absolute; inset:0; }
.com-card .fundo img{ width:100%; height:100%; object-fit:cover; object-position:50% 40%; opacity:.4; }
.com-card .fundo::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(11,11,12,.55), var(--preto) 78%); }
.com-card > *:not(.fundo){ position:relative; }
.com-card h3{ margin:0; font-family:var(--display); font-weight:900; font-size:28px; line-height:1.05; letter-spacing:-.02em; }
.com-card p{ margin:0; color:#D4D4D8; font-size:15.5px; }
.chips{ display:flex; flex-wrap:wrap; gap:7px; list-style:none; margin:0; padding:0; }
.chips li{ font-size:12.5px; font-weight:600; padding:6px 11px; border-radius:999px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); color:#E4E4E7; }
.com-card .acoes{ margin-top:auto; }

/* ============================================================ FÓRUM */
.forum{ display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:24px; align-items:start; }
.forum-trilha{ display:flex; align-items:center; gap:8px; font-size:14px; color:var(--dim); margin-bottom:18px; }
.forum-trilha a{ color:var(--txt); font-weight:600; }
.forum-trilha a:hover{ color:var(--verm-cl); }
.cats{ background:#fff; border:1px solid var(--fio); border-radius:16px; overflow:hidden; }
.cat-f{
  display:grid; grid-template-columns:48px minmax(0,1fr) 92px 190px; gap:18px; align-items:center;
  padding:18px 20px; transition:background .15s;
}
.cat-f + .cat-f{ border-top:1px solid var(--cl2); }
.cat-f:hover{ background:var(--cl); }
.cat-f:hover .cf-nome{ color:var(--verm-cl); }
.cf-ic{ width:48px; height:48px; border-radius:12px; display:grid; place-items:center; background:var(--cl); color:var(--txt); }
.cf-ic svg{ width:22px; height:22px; }
.cat-f[data-oficial] .cf-ic{ background:var(--preto); color:#fff; }
.cf-nome{ display:flex; align-items:center; gap:8px; font-size:16.5px; font-weight:700; color:var(--txt); transition:color .15s; }
.cf-nome .cad{ width:15px; height:15px; color:var(--fraco); }
.cf-desc{ display:block; font-size:14px; color:var(--dim); margin-top:2px; }
.cf-n{ font-size:13px; color:var(--dim); font-variant-numeric:tabular-nums; }
.cf-n b{ display:block; font-family:var(--display); font-weight:900; font-size:20px; color:var(--txt); }
.cf-ult{ font-size:13px; color:var(--dim); line-height:1.4; min-width:0; }
.cf-ult b{ display:block; color:var(--txt); font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bloco{ background:#fff; border:1px solid var(--fio); border-radius:16px; padding:24px; }
.bloco + .bloco{ margin-top:16px; }
.bloco h3{ margin:0 0 8px; font-family:var(--display); font-weight:900; font-size:21px; letter-spacing:-.01em; }
.bloco p{ margin:0 0 16px; font-size:15px; color:var(--dim); }
.bloco .acoes{ gap:10px; }
.bloco--escuro{ background:var(--preto); border-color:var(--preto); color:var(--txt-esc); }
.bloco--escuro p{ color:var(--dim-esc); }
.forum-titulo{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; margin-bottom:18px; }
.forum-titulo h2{ margin:0; font-family:var(--display); font-weight:900; font-size:28px; letter-spacing:-.02em; }
.vazio-forum{ padding:56px 32px; text-align:left; display:flex; flex-direction:column; gap:12px; align-items:flex-start; }
.vazio-forum h3{ margin:0; font-family:var(--display); font-weight:900; font-size:22px; }
.vazio-forum p{ margin:0; color:var(--dim); max-width:52ch; }
.post{ background:#fff; border:1px solid var(--fio); border-radius:16px; overflow:hidden; }
.post-cab{ display:flex; align-items:center; gap:14px; padding:22px 26px; border-bottom:1px solid var(--cl2); }
.post-cab .t-av{ width:48px; height:48px; }
.post-autor b{ display:flex; align-items:center; gap:8px; font-size:15.5px; }
.post-autor small{ display:block; font-size:13.5px; color:var(--dim); }
.selo-equipe{ font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; padding:3px 7px; border-radius:5px; background:var(--verm); color:#fff; }
.post-corpo{ padding:24px 26px 8px; }
.post-corpo h1{ margin:0 0 16px; font-family:var(--display); font-weight:900; font-size:clamp(26px, 3vw, 34px); line-height:1.08; letter-spacing:-.02em; }
.post-corpo p{ margin:0 0 16px; font-size:16.5px; color:#2E2E33; }
.post-pe{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:16px 26px 22px; border-top:1px solid var(--cl2); font-size:14px; color:var(--dim); }
.resposta-trava{
  margin-top:16px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px;
  padding:20px 24px; border-radius:14px; border:1px dashed var(--fio2); background:var(--cl);
}
.resposta-trava p{ margin:0; font-size:15px; color:var(--dim); }

/* ============================================================ FÓRUM AO VIVO */
.forum-main[aria-busy="true"]{ opacity:.6; transition:opacity .2s; }
.fr-carregando{ min-height:420px; background:linear-gradient(90deg, #fff 0%, var(--cl) 50%, #fff 100%); background-size:200% 100%; animation:brilho-esq 1.4s linear infinite; }
.fr-sep{ color:var(--fio2); }
.fr-entrar{ margin:-4px 0 16px; font-size:14.5px; color:var(--dim); }
.fr-entrar a{ color:var(--verm-cl); font-weight:700; }
.fr-ordem{ display:inline-flex; gap:4px; padding:4px; margin-bottom:14px; border-radius:11px; background:var(--cl2); }
.fr-ordem-item{ padding:7px 14px; border-radius:8px; font-size:13.5px; font-weight:700; color:var(--dim); }
.fr-ordem-item[aria-current="true"]{ background:#fff; color:var(--txt); box-shadow:0 1px 3px rgba(0,0,0,.08); }
.fr-av{ position:relative; overflow:hidden; display:grid; place-items:center; flex:none; background:linear-gradient(135deg, var(--cor), var(--cor-esc)); color:#fff; font-family:var(--marca); font-size:19px; line-height:1; }
.fr-av img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.fr-av--equipe{ background:var(--preto); }
.fr-av--equipe svg{ width:22px; height:22px; color:#fff; }
.fr-av--p{ width:40px; height:40px; border-radius:11px; font-size:16px; }
.fr-meio{ min-width:0; }
.topico .t-tit{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.fr-chip{ font-size:10.5px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; padding:3px 7px; border-radius:6px; background:var(--cl2); color:var(--dim); }
.fr-chip--fixo{ background:var(--verm-suave); color:var(--verm-cl); }
.fr-chips{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px; }
.fr-votos{ display:flex; flex-direction:column; align-items:center; min-width:52px; padding:6px 8px; border-radius:10px; background:var(--cl); line-height:1.1; }
.fr-votos b{ font-size:17px; font-variant-numeric:tabular-nums; }
.fr-votos small{ font-size:11px; color:var(--dim); font-weight:600; }
.fr-votos--meu{ background:var(--verm-suave); color:var(--verm-cl); }
.fr-autor{ display:inline-flex; align-items:center; gap:8px; flex-wrap:wrap; }
.fr-nick{ font-weight:800; color:var(--txt); }
a.fr-nick:hover{ color:var(--verm-cl); }
.fr-selo{ font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; padding:3px 7px; border-radius:6px; }
.fr-selo--admin{ color:#fff; background:linear-gradient(110deg, #2F4DFF, #7B5CFF 60%, #A88BFF); }
.fr-selo--moderador{ color:#0E7A47; background:rgba(34,197,94,.14); box-shadow:inset 0 0 0 1px rgba(20,147,90,.35); }
.fr-selo--equipe{ color:#fff; background:var(--verm); }
.fr-texto{ font-size:16px; line-height:1.65; color:#2E2E33; overflow-wrap:anywhere; }
.fr-texto p{ margin:0 0 14px; }
.fr-texto a{ color:var(--verm-cl); text-decoration:underline; text-underline-offset:2px; }
.post-corpo .fr-texto p{ font-size:16.5px; }
.fr-pe-esq{ display:flex; align-items:center; gap:10px 14px; flex-wrap:wrap; }
.fr-votar{
  display:inline-flex; align-items:center; gap:6px; height:38px; padding:0 14px 0 10px; border-radius:10px; cursor:pointer;
  border:1px solid var(--fio2); background:#fff; color:var(--txt); font:inherit; font-size:14px; font-weight:700; transition:border-color .15s, background .15s;
}
.fr-votar svg{ width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; }
.fr-votar span{ font-weight:600; color:var(--dim); }
.fr-votar:hover:not(:disabled){ border-color:var(--txt); }
.fr-votar--meu{ background:var(--verm); border-color:var(--verm); color:#fff; }
.fr-votar--meu span{ color:#FFD9DA; }
.fr-votar:disabled{ opacity:.6; cursor:default; }
.fr-acoes{ display:flex; gap:6px; flex-wrap:wrap; }
.fr-acao{ padding:6px 10px; border-radius:8px; border:0; background:none; font:inherit; font-size:13px; font-weight:700; color:var(--dim); cursor:pointer; }
.fr-acao:hover:not(:disabled){ background:var(--cl); color:var(--txt); }
.fr-acao--perigo, .fr-acao--perigo:hover:not(:disabled){ background:var(--verm-suave); color:var(--verm-cl); }
.fr-respostas{ margin-top:18px; display:flex; flex-direction:column; gap:10px; }
.fr-resp-tit{ margin:6px 0 4px; font-size:13px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--fraco); }
.fr-resposta{ display:flex; gap:14px; padding:18px 20px; border-radius:14px; background:#fff; border:1px solid var(--fio); }
.fr-resp-meio{ flex:1; min-width:0; }
.fr-resp-topo{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; margin-bottom:6px; }
.fr-resp-topo small{ font-size:13px; color:var(--dim); }
.fr-resposta .fr-texto{ font-size:15.5px; }
.fr-resposta .fr-texto p:last-child{ margin-bottom:6px; }
.fr-card{ background:#fff; }
.fr-responder{ margin-top:16px; }
.fr-responder h3{ margin:0 0 12px; }
.fr-form .campo{ margin-bottom:10px; }
.fr-form .campo > span{ font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.fr-form textarea{ font:inherit; font-size:15.5px; line-height:1.55; padding:12px 14px; border:1px solid var(--fio2); border-radius:10px; resize:vertical; min-height:110px; background:#fff; color:var(--txt); }
.fr-form textarea:focus{ outline:none; border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.fr-form-pe{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.fr-conta{ font-size:13px; color:var(--fraco); }
.fr-form .aviso:empty{ display:none; }
.fr-fmt{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.fr-fmt li{ display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:14px; }
.fr-fmt-nota{ margin:12px 0 0; font-size:13.5px; color:var(--dim); text-align:left !important; }
.fr-dica code{ font-family:var(--mono); font-size:12.5px; padding:2px 6px; border-radius:5px; background:var(--cl); color:var(--txt); }
@media (max-width:720px){
  .topico{ grid-template-columns:40px minmax(0,1fr) auto; gap:12px; }
  .fr-resposta{ padding:14px; gap:10px; }
  .post-pe{ flex-direction:column; align-items:flex-start; }
}

/* ============================================================ PAINEL: DISCORD */
.dc-topo{ display:flex; gap:16px; align-items:flex-start; }
.dc-topo h3{ margin:0 0 4px; }
.dc-topo .nota{ margin:0; }
.dc-ic{ flex:none; width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:#5865F2; }
.dc-ic svg{ width:24px; height:24px; fill:#fff; }
.dc-cartao--ok .dc-ic{ box-shadow:0 0 0 3px #fff, 0 0 0 5px #3DD68C; }
.dc-acoes{ display:flex; gap:10px; flex-wrap:wrap; margin-top:18px; }
.dc-codigo{ display:flex; align-items:center; gap:10px 14px; flex-wrap:wrap; margin-top:16px; padding:16px 18px; border-radius:12px; background:var(--cl); border:1px dashed var(--fio2); }
.dc-codigo span{ font-size:14px; color:var(--dim); flex-basis:100%; }
.dc-codigo code{ font-family:var(--mono); font-size:18px; font-weight:700; padding:8px 12px; border-radius:9px; background:#fff; border:1px solid var(--fio); letter-spacing:.04em; }
.dc-codigo small{ font-size:13px; color:var(--fraco); }
.dc-cartao .aviso:empty{ display:none; }

/* ============================================================ JOGAR: PASSOS */
.passos-grid{ display:grid; grid-template-columns:400px minmax(0,1fr); gap:48px; align-items:stretch; }
.brutus{ display:flex; flex-direction:column; justify-content:space-between; align-items:center; gap:18px; }
.brutus img{ width:100%; max-width:400px; height:auto; display:block; margin-block:auto; }
.brutus .fala{ align-self:stretch; }
/* balão de fala do Brutus, com a ponta apontando para ele */
.fala{
  position:relative; margin:0; padding:16px 18px; border-radius:14px;
  background:var(--preto); color:#E4E4E7; font-size:15px; line-height:1.55;
}
.fala::before{
  content:""; position:absolute; top:-9px; left:50%; width:18px; height:18px; margin-left:-9px;
  background:var(--preto); transform:rotate(45deg); border-radius:3px;
}
.fala b{ position:relative; display:block; font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#FF4D55; margin-bottom:4px; }
.passos{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:14px; }
.passo{ display:grid; grid-template-columns:60px minmax(0,1fr); gap:22px; padding:26px 28px; border:1px solid var(--fio); border-radius:16px; background:#fff; }
.passo .n{
  width:60px; height:60px; border-radius:14px; display:grid; place-items:center;
  font-family:var(--display); font-weight:900; font-size:26px; background:var(--preto); color:#fff;
}
.passo h3{ margin:0 0 6px; font-family:var(--display); font-weight:900; font-size:21px; letter-spacing:-.01em; }
.passo p{ margin:0; color:var(--dim); font-size:15.5px; }
.passo .obs{ display:block; margin-top:8px; font-size:13.5px; color:var(--fraco); }
.passo .obs--ok{ margin-top:14px; font-weight:600; color:#1E7A43; }
.passo .acao{ margin-top:16px; }

/* ============================================================ PILARES */
.pilares{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; }
.pilar{ background:#fff; border:1px solid var(--fio); border-radius:16px; padding:28px 28px; }
.pilar .p-ic{ width:44px; height:44px; border-radius:11px; display:grid; place-items:center; background:var(--preto); color:#fff; margin-bottom:16px; }
.pilar .p-ic svg{ width:21px; height:21px; }
.pilar h3{ margin:0 0 8px; font-family:var(--display); font-weight:900; font-size:20px; letter-spacing:-.01em; }
.pilar p{ margin:0; color:var(--dim); font-size:15.5px; }

.guarda-cab{ position:relative; }
.pilares--brutus{ position:relative; }
/* Os pés do Brutus pousam reto na borda de cima do segundo cartão (a arte tem 1,3% de sobra transparente embaixo). */
.guarda-brutus{
  position:absolute; right:40px; bottom:calc(100% - 5px); height:180px; width:auto; z-index:2;
  pointer-events:none; filter:drop-shadow(0 10px 14px rgba(0,0,0,.14));
}

/* ============================================================ CARROSSEL */
.carro{ position:relative; outline:none; }
.carro-palco{ position:relative; border-radius:18px; overflow:hidden; background:var(--preto); color:var(--txt-esc); }
.slide{ display:none; }
.slide[data-ativo="1"]{ display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); min-height:500px; animation:entra .5s ease; }
@keyframes entra{ from{ opacity:.35; } to{ opacity:1; } }
.slide-arte{ position:relative; overflow:hidden; }
.slide-arte img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.slide-txt{ padding:40px 38px; display:flex; flex-direction:column; justify-content:center; gap:14px; }
.slide-txt code{ align-self:flex-start; font-family:var(--mono); font-size:12.5px; padding:6px 10px; border-radius:7px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); color:#fff; }
.slide-txt h3{ margin:0; font-family:var(--display); font-weight:900; font-size:34px; line-height:1; letter-spacing:-.025em; }
.slide-txt p{ margin:0; font-size:16px; color:#D4D4D8; }
.carro-ctl{ display:flex; align-items:center; gap:12px; margin-top:18px; }
.carro-btn{
  width:48px; height:48px; flex:none; display:grid; place-items:center; cursor:pointer;
  background:#fff; border:1px solid var(--fio2); border-radius:12px; color:var(--txt);
  transition:border-color .15s, background .15s, color .15s;
}
.carro-btn:hover{ background:var(--preto); border-color:var(--preto); color:#fff; }
.carro-btn svg{ width:20px; height:20px; }
.carro-cont{ font-size:14px; font-weight:600; color:var(--dim); font-variant-numeric:tabular-nums; }
.pontos{ display:flex; gap:6px; margin-left:auto; }
.ponto-btn{ width:28px; height:6px; padding:0; border:0; border-radius:999px; background:var(--fio2); cursor:pointer; transition:background .15s, width .2s; }
.ponto-btn[aria-selected="true"]{ background:var(--verm); width:44px; }

/* ============================================================ EVENTOS */
.eventos{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; }
.ev{ display:flex; flex-direction:column; gap:10px; background:#fff; border:1px solid var(--fio); border-radius:16px; padding:24px 24px 20px; }
.ev-quando{
  display:inline-flex; align-items:center; gap:8px; align-self:flex-start; padding:6px 11px; border-radius:999px;
  background:var(--cl); font-size:11.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--dim);
}
.ev-quando svg{ width:15px; height:15px; flex:none; color:var(--verm); }
.ev h3{ margin:4px 0 0; font-family:var(--display); font-weight:900; font-size:22px; letter-spacing:-.01em; }
.ev p{ margin:0; font-size:15px; line-height:1.55; color:var(--dim); }
.ev-premio{ margin-top:auto; padding-top:14px; border-top:1px solid var(--cl2); display:flex; flex-direction:column; gap:4px; }
.ev-premio span{ font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--verm-cl); }
.ev-premio b{ font-size:15px; font-weight:700; line-height:1.4; color:var(--txt); }

/* ============================================================ NOVIDADES */
.novas{ list-style:none; margin:0; padding:6px 8px; background:#fff; border:1px solid var(--fio); border-radius:16px; }
.novas li + li{ border-top:1px solid var(--cl2); }
.novas a{ display:grid; grid-template-columns:96px minmax(0,1fr) 120px 16px; gap:20px; align-items:center; padding:16px 14px; border-radius:10px; transition:background .15s; }
.novas a:hover{ background:var(--cl); }
.novas a:hover .n-tit{ color:var(--verm-cl); }
.novas time{ font-size:12.5px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--fraco); font-variant-numeric:tabular-nums; }
.n-tit{ display:block; font-size:16px; font-weight:700; color:var(--txt); transition:color .15s; }
.n-sub{ display:block; font-size:14px; color:var(--dim); margin-top:2px; }
.n-tag{ justify-self:end; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--fraco); }
.n-seta{ width:16px; height:16px; color:var(--fraco); }

/* ============================================================ LOJA */
.aviso-loja{
  display:flex; flex-wrap:wrap; align-items:center; gap:14px; padding:16px 20px; margin-bottom:28px;
  border-radius:14px; background:var(--cl); border:1px solid var(--fio);
  font-size:15px; color:var(--dim);
}
.aviso-loja b{ color:var(--txt); }
.aviso-loja .pix{ display:inline-flex; align-items:center; gap:8px; font-weight:700; color:var(--txt); }
.aviso-loja .pix svg{ width:18px; height:18px; color:var(--verm); }
.aviso-loja > span:last-child{ flex:1; min-width:240px; }
.grade-cat{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:18px; }
.cat{
  display:flex; flex-direction:column; gap:6px; min-height:300px; text-align:left;
  background:#fff; border:1px solid var(--fio); border-radius:18px; padding:26px 28px 18px;
  cursor:pointer; font:inherit; color:inherit;
  transition:border-color .15s, box-shadow .15s, transform .15s;
}
.cat:hover{ border-color:var(--fio2); box-shadow:0 14px 36px -14px rgba(0,0,0,.2); transform:translateY(-3px); }
.cat .ic svg{ width:24px; height:24px; color:var(--preto); }
.cat h3{ margin:4px 0 0; font-family:var(--display); font-weight:900; font-size:24px; letter-spacing:-.01em; }
.cat p{ margin:0; font-size:15px; color:var(--dim); }
.cat .enfeite{ position:relative; flex:1; display:flex; align-items:center; justify-content:center; min-height:150px; padding-block:6px; }
.cat .enfeite::before{
  content:""; position:absolute; left:50%; top:50%; width:190px; height:190px; margin:-95px 0 0 -95px; border-radius:50%;
  background:radial-gradient(closest-side, rgba(224,27,34,.16), rgba(224,27,34,0)); opacity:0; transition:opacity .3s;
}
.cat .enfeite img{
  position:relative; height:150px; width:auto;
  filter:drop-shadow(0 10px 14px rgba(11,11,12,.16));
  transition:transform .3s cubic-bezier(.2,.8,.2,1), filter .3s;
}
.cat:hover .enfeite::before{ opacity:1; }
.cat:hover .enfeite img{ transform:translateY(-6px); filter:drop-shadow(0 18px 20px rgba(11,11,12,.22)); }
.pe-cat{ display:flex; justify-content:flex-end; padding-top:12px; border-top:1px solid var(--fio); }
.pe-cat span{ font-size:12.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--verm-cl); display:inline-flex; align-items:center; gap:8px; }
.pe-cat svg{ width:16px; height:16px; transition:transform .16s; }
.cat:hover .pe-cat svg{ transform:translateX(4px); }

.voltar{
  display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:600; color:var(--dim);
  background:none; border:0; padding:0; cursor:pointer;
}
.voltar:hover{ color:var(--txt); }
.voltar svg{ width:18px; height:18px; }
.cab-cat{ display:flex; align-items:center; gap:18px; padding-bottom:20px; margin-bottom:28px; border-bottom:1px solid var(--fio); }
.cab-cat h2{ margin:0; font-family:var(--display); font-weight:900; font-size:32px; letter-spacing:-.02em; }

.grade-vip{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:16px; }
.vip{
  position:relative; display:flex; flex-direction:column; gap:8px;
  background:#fff; border:1px solid var(--fio); border-radius:18px; padding:18px 18px 18px;
  transition:border-color .15s, box-shadow .15s, transform .15s;
}
.vip:hover{ box-shadow:0 16px 40px -18px rgba(0,0,0,.28); transform:translateY(-3px); }
.vip.popular{ border-color:var(--verm); box-shadow:0 0 0 1px var(--verm) inset; }
.selo-pop{
  position:absolute; top:-11px; left:50%; transform:translateX(-50%);
  background:var(--verm); color:#fff; font-size:10.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  padding:5px 12px; border-radius:999px; white-space:nowrap; z-index:2;
}
.arte-vip{
  height:200px; border-radius:13px; display:flex; align-items:flex-end; justify-content:center; overflow:hidden;
  background:radial-gradient(120% 90% at 50% 100%, var(--tom-f, var(--cl)) 0%, #fff 72%);
  margin-bottom:6px;
}
.arte-vip img{ height:188px; width:auto; object-fit:contain; transition:transform .3s cubic-bezier(.2,.8,.2,1); }
.vip:hover .arte-vip img{ transform:translateY(-4px); }
.arte-vazia{ align-items:center; background:var(--cl); }
.arte-vazia span{ display:flex; flex-direction:column; align-items:center; gap:10px; font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--fraco); }
.arte-vazia svg{ width:40px; height:40px; color:var(--tom, var(--fraco)); opacity:.8; }
.vip h3{ margin:0; font-family:var(--display); font-weight:900; font-size:26px; letter-spacing:.06em; color:var(--tom); }
.vip p{ margin:0; font-size:14.5px; line-height:1.5; color:var(--dim); min-height:44px; }
.vip .preco-breve, .item .preco, .item .preco-breve{ margin-top:auto; }
/* nota no topo de uma categoria da loja, como a dos extras que ainda não estão à venda */
.nota-cat{ margin:-8px 0 24px; max-width:70ch; font-size:15.5px; color:var(--dim); }
.vip .btn{ margin-top:10px; }
/* cor de cada plano: vale para cartão, aba, pacote e comparativo */
.p-hero{ --tom:var(--hero); --tom-f:var(--hero-f); }
.p-elite{ --tom:var(--elite); --tom-f:var(--elite-f); }
.p-legend{ --tom:var(--legend); --tom-f:var(--legend-f); }
.p-prime{ --tom:var(--prime); --tom-f:var(--prime-f); }
.p-builder{ --tom:var(--builder); --tom-f:var(--builder-f); }

.builder{
  margin-top:16px; display:grid; grid-template-columns:200px minmax(0,1fr) 260px; gap:24px; align-items:center;
  background:#fff; border:1px solid var(--fio); border-radius:18px; padding:18px 24px 18px 18px;
}
.builder .arte-vip{ height:150px; margin:0; align-items:center; }
.builder .arte-vip img{ height:136px; }
.builder h3{ margin:0 0 4px; font-family:var(--display); font-weight:900; font-size:26px; letter-spacing:.06em; color:var(--builder); }
.builder p{ margin:0; font-size:15px; color:var(--dim); }
.builder .lado{ display:flex; flex-direction:column; gap:10px; }

.preco{ display:flex; flex-direction:column; gap:2px; }
.preco-de{ display:flex; align-items:center; gap:8px; }
.preco-de s{ font-size:13px; color:var(--fraco); }
.off{ background:var(--verm-suave); color:var(--verm-cl); font-size:11px; font-weight:700; padding:2px 7px; border-radius:5px; }
.agora{ font-size:15px; font-weight:600; color:var(--txt); }
.agora b{ font-family:var(--display); font-weight:900; font-size:34px; letter-spacing:-.02em; }
.preco-breve{ font-size:14px; font-weight:700; color:var(--dim); padding:8px 0 2px; }
.preco-breve small{ display:block; font-size:12.5px; font-weight:500; color:var(--fraco); }

.info-vip{ margin-top:28px; display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:14px; }
.info-vip div{ padding:18px 20px; border-radius:14px; background:#fff; border:1px solid var(--fio); }
.info-vip b{ display:block; font-family:var(--display); font-weight:900; font-size:17px; margin-bottom:4px; }
.info-vip span{ font-size:14px; color:var(--dim); line-height:1.45; display:block; }
.info-vip code{ font-family:var(--mono); font-size:13px; color:var(--txt); background:#fff; padding:1px 5px; border-radius:4px; }

.bloco-comp{ margin-top:28px; background:#fff; border:1px solid var(--fio); border-radius:18px; padding:24px 26px 12px; }
.bloco-comp h3, .bloco-pac h3{ margin:0 0 16px; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--dim); }
.rolar{ position:relative; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.comparativo{ width:100%; min-width:760px; border-collapse:collapse; font-size:14.5px; }
.comparativo th, .comparativo td{ padding:11px 12px; text-align:center; }
.comparativo thead th{
  position:sticky; top:0; background:#fff; font-family:var(--display); font-weight:900; font-size:13px; letter-spacing:.1em;
  border-bottom:2px solid var(--fio);
}
.comparativo tbody th{ text-align:left; font-weight:600; color:var(--txt); border-bottom:1px solid var(--cl2); }
.comparativo tbody th, .comparativo thead th:first-child{ position:sticky; left:0; z-index:1; background:#fff; }
.comparativo thead th:first-child{ z-index:2; }
.comparativo tbody td{ color:var(--dim); border-bottom:1px solid var(--cl2); font-variant-numeric:tabular-nums; }
.comparativo tbody tr:last-child th, .comparativo tbody tr:last-child td{ border-bottom:0; }
.comparativo tbody tr:hover th, .comparativo tbody tr:hover td{ background:var(--cl); }
.comparativo td.ok svg{ width:18px; height:18px; color:var(--ok); vertical-align:middle; }
.comparativo td.nao{ color:#B4B4BB; font-size:20px; line-height:1; }
.c-hero{ color:var(--hero); } .c-elite{ color:var(--elite); } .c-legend{ color:var(--legend); } .c-prime{ color:var(--prime-txt); } .c-builder{ color:var(--builder); }

.bloco-pac{ margin-top:28px; background:#fff; border:1px solid var(--fio); border-radius:18px; padding:24px 26px 26px; }
.abas{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
.aba{
  font:inherit; font-family:var(--display); font-weight:900; font-size:13px; letter-spacing:.1em; cursor:pointer;
  padding:10px 16px; border-radius:10px; border:1px solid var(--fio); background:#fff; color:var(--dim);
  transition:background .15s, color .15s, border-color .15s;
}
.aba:hover{ border-color:var(--fio2); color:var(--txt); }
.aba[aria-selected="true"]{ background:var(--tom); border-color:var(--tom); color:#fff; }
.pacote{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; }
.pacote section{ border-radius:14px; background:var(--cl); padding:20px 22px; }
.pacote h4{ margin:0 0 12px; display:flex; align-items:center; gap:10px; font-size:15px; font-weight:700; }
.pacote h4 code{ font-family:var(--mono); font-size:12.5px; font-weight:500; color:var(--dim); }
.pacote ul{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:8px; }
.pacote li{ position:relative; padding-left:18px; font-size:15px; color:#2E2E33; line-height:1.45; }
.pacote li::before{ content:""; position:absolute; left:2px; top:8px; width:7px; height:7px; border-radius:2px; background:var(--tom, var(--verm)); }

.grade-itens{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px; }
.item{
  display:flex; flex-direction:column; gap:6px; background:#fff; border:1px solid var(--fio); border-radius:16px; padding:16px 18px 18px;
  transition:box-shadow .15s, transform .15s;
}
.item:hover{ box-shadow:0 14px 34px -16px rgba(0,0,0,.26); transform:translateY(-3px); }
.graf-caixa{ height:128px; display:flex; align-items:center; justify-content:center; background:var(--cl); border-radius:12px; margin-bottom:8px; overflow:hidden; }
.graf-caixa img{ height:116px; width:auto; max-width:92%; object-fit:contain; filter:drop-shadow(0 6px 10px rgba(11,11,12,.14)); transition:transform .3s cubic-bezier(.2,.8,.2,1), filter .3s; }
.item:hover .graf-caixa img{ transform:translateY(-4px); filter:drop-shadow(0 12px 14px rgba(11,11,12,.2)); }
.graf-caixa.vazia span{ display:flex; flex-direction:column; align-items:center; gap:8px; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--fraco); }
.graf-caixa.vazia svg{ width:30px; height:30px; }
.item h3{ margin:0; font-family:var(--display); font-weight:900; font-size:19px; letter-spacing:-.005em; }
.item p{ margin:0; font-size:14.5px; color:var(--dim); line-height:1.5; }
.item .btn{ margin-top:12px; }
.item .adicionado{ border-color:var(--ok); color:var(--ok); }

/* carrinho */
.pilula-car{
  /* Fica no alto, logo abaixo do topo: nunca cobre o rodapé nem o "Voltar ao topo". */
  position:fixed; right:24px; top:84px; z-index:70;
  display:flex; align-items:center; gap:10px; font:inherit;
  /* Branca com contorno vermelho: aparece igual em fundo claro e em fundo escuro. */
  background:#fff; color:var(--txt); border:2px solid var(--verm); border-radius:30px; padding:11px 15px 11px 14px; cursor:pointer;
  box-shadow:0 0 0 4px rgba(255,255,255,.18), 0 12px 34px rgba(0,0,0,.32); transition:transform .15s, box-shadow .15s, background .15s;
}
.pilula-car:hover{ transform:translateY(-2px); box-shadow:0 0 0 4px rgba(255,255,255,.22), 0 16px 40px rgba(0,0,0,.38); }
.pilula-car svg{ color:var(--verm); }
.pilula-car.ativo{ background:var(--verm); }
.pilula-car svg{ width:19px; height:19px; }
.pilula-car .valor{ font-size:14px; font-weight:600; }
.pilula-car .n{ min-width:22px; height:22px; padding:0 7px; border-radius:22px; display:grid; place-items:center; font-size:12px; font-weight:700; background:var(--verm); color:#fff; }
.pilula-car:not(.cheio) .n{ background:var(--cl2); color:var(--dim); }
.pilula-car.ativo{ color:#fff; }
.pilula-car.ativo svg{ color:#fff; }
.pilula-car.ativo .n{ background:#fff; color:var(--verm); }
.pilula-car.pulou{ animation:pulou .45s ease; }
@keyframes pulou{ 30%{ transform:scale(1.08); } 60%{ transform:scale(.97); } }
.veu-car{ position:fixed; inset:0; z-index:71; background:rgba(11,11,12,.42); }
.painel-car{
  position:fixed; right:0; top:0; bottom:0; z-index:72; width:min(420px, 100%);
  background:#fff; display:flex; flex-direction:column; box-shadow:-12px 0 40px rgba(0,0,0,.18);
  padding-top:env(safe-area-inset-top, 0px); padding-bottom:env(safe-area-inset-bottom, 0px);
  animation:desliza .25s ease;
}
@keyframes desliza{ from{ transform:translateX(24px); opacity:.6; } to{ transform:none; opacity:1; } }
.car-topo{ display:flex; align-items:center; padding:24px 22px 16px; border-bottom:1px solid var(--fio); }
.car-topo h2{ margin:0; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--dim); }
.car-x{ margin-left:auto; width:36px; height:36px; display:grid; place-items:center; border-radius:9px; border:0; background:none; color:var(--dim); cursor:pointer; }
.car-x:hover{ background:var(--cl); color:var(--txt); }
.car-x svg{ width:18px; height:18px; }
.itens-car{ flex:1; min-height:0; overflow-y:auto; padding:10px 22px; }
.car-vazio{ margin:40px 0 0; font-size:15px; line-height:1.6; color:var(--dim); }
.item-car{ display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:8px 12px; padding:14px 0; border-bottom:1px solid var(--cl2); align-items:center; }
.car-ic{ grid-row:span 2; width:48px; height:48px; object-fit:contain; border-radius:10px; background:var(--cl); padding:4px; align-self:start; }
.item-car .passo-q{ grid-column:2; }
.item-car:last-child{ border-bottom:0; }
.item-car .q b{ display:block; font-size:15px; color:var(--txt); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.item-car .q small{ font-size:13px; color:var(--dim); }
.item-car .sub{ font-size:15px; font-weight:700; text-align:right; font-variant-numeric:tabular-nums; }
.passo-q{ display:flex; align-items:center; border:1px solid var(--fio); border-radius:9px; width:max-content; overflow:hidden; }
.passo-q button{ width:32px; height:32px; border:0; background:none; font-size:17px; color:var(--dim); cursor:pointer; }
.passo-q button:hover{ background:var(--cl); color:var(--txt); }
.passo-q span{ min-width:26px; text-align:center; font-size:14px; font-weight:700; }
.car-pe{ padding:18px 22px 22px; border-top:1px solid var(--fio); display:flex; flex-direction:column; gap:12px; }
.car-total{ display:flex; align-items:baseline; justify-content:space-between; }
.car-total span{ font-size:14px; color:var(--dim); }
.car-total b{ font-family:var(--display); font-weight:900; font-size:28px; letter-spacing:-.02em; font-variant-numeric:tabular-nums; }
.car-nota{ margin:0; font-size:13.5px; line-height:1.5; color:var(--dim); }
.car-aviso{ margin:0; padding:12px 14px; border-radius:10px; background:var(--verm-suave); color:var(--verm-cl); font-size:14px; font-weight:600; }

/* ============================================================ REGRAS */
.grupos{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:18px; }
.grupo{ background:#fff; border:1px solid var(--fio); border-radius:18px; overflow:hidden; }
.grupo-cab{ display:flex; align-items:center; gap:14px; padding:20px 24px; border-bottom:1px solid var(--cl2); }
.grupo-cab .g-ic{ width:42px; height:42px; border-radius:11px; display:grid; place-items:center; color:#fff; background:var(--g, var(--preto)); }
.grupo-cab .g-ic svg{ width:20px; height:20px; }
.grupo-cab h2{ margin:0; font-family:var(--display); font-weight:900; font-size:21px; letter-spacing:-.01em; }
.grupo-cab small{ display:block; font-size:13.5px; color:var(--dim); }
.grupo.ban{ --g:var(--verm); } .grupo.mute{ --g:#52525B; } .grupo.livre{ --g:var(--ok); } .grupo.imp{ --g:var(--preto); }
.regra{ padding:18px 24px; }
.regra + .regra{ border-top:1px solid var(--cl2); }
.regra h3{ margin:0 0 4px; font-size:16px; font-weight:700; }
.regra p{ margin:0; font-size:15px; color:var(--dim); }
.mods{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:18px; }
.mods section{ border-radius:18px; padding:26px 28px; }
.mods .nao{ background:var(--preto); color:var(--txt-esc); }
.mods .sim{ background:var(--cl); }
.mods h3{ margin:0 0 14px; font-family:var(--display); font-weight:900; font-size:22px; }
.mods ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.mods li{ display:flex; gap:12px; align-items:flex-start; font-size:15.5px; line-height:1.45; }
.mods li svg{ flex:none; width:20px; height:20px; margin-top:1px; }
.mods .nao li svg{ color:#FF5A60; }
.mods .sim li svg{ color:var(--ok); }
.mods .nao li span{ color:#E4E4E7; }
.nota-regra{ margin-top:22px; padding:18px 22px; border-radius:14px; border:1px solid var(--fio); display:flex; flex-wrap:wrap; gap:10px; align-items:center; font-size:15px; color:var(--dim); }
.nota-regra code{ font-family:var(--mono); font-size:13.5px; color:var(--txt); background:var(--cl); padding:2px 7px; border-radius:5px; }

/* ============================================================ CONTA */
/* 1.11: cartão compacto no centro (arte | formulário), sobre a mesma arte desfocada e escura */
.conta{ position:relative; isolation:isolate; overflow:hidden; background:#0B0B0C; color:var(--txt-esc); }
.conta-fundo{ position:absolute; inset:-40px; z-index:-1; }
.conta-fundo img{ width:100%; height:100%; display:block; object-fit:cover; object-position:var(--foco, 60% 40%); filter:blur(28px) saturate(1.15); transform:scale(1.08); opacity:.55; }
.conta-fundo::after{ content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 50% 45%, rgba(11,11,12,.35) 0%, rgba(11,11,12,.88) 70%); }
.conta-in{ display:grid; place-items:center; min-height:calc(100vh - 68px); padding:32px clamp(16px, 3vw, 40px); }
.conta-cartao{
  display:grid; grid-template-columns:minmax(0, 1.08fr) minmax(0, 1fr); width:100%; max-width:980px; min-height:700px;
  border-radius:22px; overflow:hidden; background:#121215; max-height:none; border:1px solid rgba(255,255,255,.08);
  box-shadow:0 40px 90px -30px rgba(0,0,0,.85), 0 0 0 1px rgba(224,27,34,.06);
  animation:contaEntra .5s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes contaEntra{ from{ opacity:0; transform:translateY(14px) scale(.985); } to{ opacity:1; transform:none; } }
.conta-arte{ grid-column:1; grid-row:1; position:relative; min-height:100%; overflow:hidden; }
.conta-arte img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:var(--foco, 60% 40%); }
.conta-arte::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(11,11,12,0) 45%, rgba(11,11,12,.9) 100%), linear-gradient(270deg, rgba(18,18,21,.55) 0%, rgba(18,18,21,0) 22%); }
.conta-txt{ position:absolute; left:0; right:0; bottom:0; z-index:1; padding:28px 30px; display:flex; flex-direction:column; gap:8px; }
.conta-txt h2{ margin:0; font-family:var(--display); font-weight:900; font-size:clamp(26px, 2.4vw, 32px); line-height:1.05; letter-spacing:-.03em; color:#fff; text-wrap:balance; }
.conta-txt p{ margin:0; color:#D4D4D8; font-size:15px; max-width:40ch; text-align:left; }
.campos-2{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; }
.campos-2 .campo input{ min-width:0; width:100%; box-sizing:border-box; }
.campos-2 .campo label{ letter-spacing:.08em; white-space:nowrap; }
.campos-2 .campo{ margin-bottom:6px; }
.conta .dica-senha{ display:block; margin:0 0 14px; font-size:13px; color:#7C7C86; }
.conta .campo{ margin-bottom:14px; }
@media (max-width:480px){ .campos-2{ grid-template-columns:1fr; } }
.form-caixa{ grid-column:2; grid-row:1; align-self:center; width:100%; color:#fff; padding:36px 40px 30px; }
.conta .form-caixa h1{ color:#fff; font-size:30px; }
.conta .form-caixa .sub{ color:#9A9AA4; margin-bottom:24px; font-size:15px; }
.conta .campo label{ color:#9A9AA4; }
.conta .campo input{ height:46px; background:#1A1A1F; border-color:rgba(255,255,255,.1); color:#fff; }
.conta .campo input::placeholder{ color:#5E5E68; }
.conta .campo input:focus{ border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.22); background:#1D1D23; }
.conta .campo .dica{ color:#7C7C86; font-size:13px; }
.conta .check{ color:#9A9AA4; }
.conta .elo{ color:#FF5A60; }
.conta .form-rodape{ color:#8A8A94; }
.conta .aviso{ background:rgba(224,27,34,.12); border-color:rgba(224,27,34,.35); color:#FFC9CB; }
.conta .aviso .elo, .conta .aviso .elo-btn{ color:#FF8A8F; }
.conta .aviso--ok{ background:rgba(34,163,90,.12); border-color:rgba(34,163,90,.35); color:#B7F0CC; }
.conta .form-caixa .sub b{ color:#fff; }
@media (max-width:860px){
  .conta-in{ padding:20px 14px 40px; min-height:0; }
  .conta-cartao{ grid-template-columns:minmax(0,1fr); min-height:0; max-width:520px; }
  .conta-arte{ grid-row:1; height:190px; min-height:0; }
  .conta-txt{ padding:18px 20px; }
  .conta-txt p{ display:none; }
  .form-caixa{ grid-column:1; grid-row:2; padding:26px 20px 24px; }
}
.form-caixa h1{ margin:0 0 6px; font-family:var(--display); font-weight:900; font-size:32px; letter-spacing:-.03em; }
.form-caixa .sub{ margin:0 0 26px; color:var(--dim); font-size:15.5px; }
.campo{ display:flex; flex-direction:column; gap:7px; margin-bottom:16px; }
.campo label{ font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.campo input{ font:inherit; font-size:16px; height:48px; padding:0 16px; border:1px solid var(--fio2); border-radius:10px; background:#fff; color:var(--txt); transition:border-color .15s, box-shadow .15s; }
.campo input::placeholder{ color:#A9A9B0; }
.campo input:focus{ outline:none; border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.campo .dica{ font-size:13.5px; color:var(--dim); }
.linha-op{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin:2px 0 20px; }
.check{ display:flex; align-items:flex-start; gap:10px; font-size:14.5px; color:var(--dim); line-height:1.45; }
.check input{ margin:2px 0 0; width:18px; height:18px; accent-color:var(--verm); flex:none; }
.elo{ font-weight:700; color:var(--verm-cl); }
.elo:hover{ text-decoration:underline; }
.form-rodape{ margin:20px 0 0; font-size:15px; color:var(--dim); }
.aviso{ display:none; margin-top:16px; padding:14px 16px; border-radius:10px; background:var(--verm-suave); border:1px solid #F6C9CB; font-size:14.5px; color:#5E0B10; }
.aviso .elo{ color:#A50F17; text-decoration:underline; text-underline-offset:2px; }
.aviso[data-visivel="1"]{ display:block; }
.aviso--ok{ background:#EDF7F0; border-color:#BCE0C8; color:#14532D; }
.aviso .elo-btn{ color:#A50F17; font-weight:700; text-decoration:underline; text-underline-offset:2px; }
.form-rodape--p{ margin-top:8px; font-size:14px; }
.form-caixa .sub b{ color:var(--txt); overflow-wrap:anywhere; }
.form-caixa > .btn{ margin-top:6px; }
.dados-conta{ display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px 20px; margin:18px 0 24px; }
.dados-conta dt{ align-self:center; font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.dados-conta dd{ margin:0; font-size:16px; font-weight:600; overflow-wrap:anywhere; }
.dados-conta[aria-busy="true"] dd{ color:var(--fraco); }
.troca{ margin-bottom:12px; }
.troca summary{ list-style:none; cursor:pointer; }
.troca summary::-webkit-details-marker{ display:none; }
.troca[open] summary{ margin-bottom:18px; }
.painel-sair{ margin-top:4px; }

/* ============================================================ PAINEL E PERFIL DO JOGADOR */
.capa, .ava, [data-cor]{ --cor:#E01B22; --cor-esc:#7A0D12; }
[data-cor="azul"]{ --cor:#2F6FED; --cor-esc:#122F6B; }
[data-cor="dourado"], [data-cor="arte5"]{ --cor:#E0A526; --cor-esc:#6E4E0C; }
[data-cor="preto"]{ --cor:#3A3A40; --cor-esc:#000000; }
[data-cor="verde"]{ --cor:#22A35A; --cor-esc:#0B4424; }
[data-cor="roxo"]{ --cor:#8B4DE8; --cor-esc:#33145F; }
[data-cor="laranja"]{ --cor:#F07A1E; --cor-esc:#6E320A; }
[data-cor="ciano"]{ --cor:#14B8C9; --cor-esc:#074850; }
[data-cor="rosa"]{ --cor:#E8488F; --cor-esc:#5E1438; }
[data-cor="vinho"]{ --cor:#9E1B3A; --cor-esc:#3A0714; }
[data-cor="arte1"]{ --cor:#9B5CF0; --cor-esc:#3B1A6E; }
[data-cor="arte2"]{ --cor:#1FB5C9; --cor-esc:#0B4A54; }
[data-cor="arte3"]{ --cor:#E01B22; --cor-esc:#7A0D12; }
[data-cor="arte4"]{ --cor:#F07A1E; --cor-esc:#6E320A; }
[data-cor="arte6"]{ --cor:#3D9BE9; --cor-esc:#123F66; }
[data-cor="arte7"]{ --cor:#4CAF50; --cor-esc:#1B4D1E; }
[data-cor="arte8"]{ --cor:#F2A33A; --cor-esc:#6B3F0B; }
[data-cor="arte9"]{ --cor:#FF8A3D; --cor-esc:#5A2A12; }
[data-cor="arte10"]{ --cor:#E8743B; --cor-esc:#4A2214; }
[data-cor="arte11"]{ --cor:#5C7CFA; --cor-esc:#121A3D; }
[data-cor="arte12"]{ --cor:#E8613C; --cor-esc:#4A1E14; }
/* artes do Brutus como fundo da capa: só a escolhida aparece, com sombra à esquerda para o texto ler bem */
.capa-arte{ display:none; position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:50% 35%; }
.capa[data-cor="arte1"] .capa-arte[data-arte="arte1"], .capa[data-cor="arte2"] .capa-arte[data-arte="arte2"],
.capa[data-cor="arte3"] .capa-arte[data-arte="arte3"], .capa[data-cor="arte4"] .capa-arte[data-arte="arte4"],
.capa[data-cor="arte5"] .capa-arte[data-arte="arte5"], .capa[data-cor="arte6"] .capa-arte[data-arte="arte6"],
.capa[data-cor="arte7"] .capa-arte[data-arte="arte7"], .capa[data-cor="arte8"] .capa-arte[data-arte="arte8"],
.capa[data-cor="arte9"] .capa-arte[data-arte="arte9"], .capa[data-cor="arte10"] .capa-arte[data-arte="arte10"],
.capa[data-cor="arte11"] .capa-arte[data-arte="arte11"], .capa[data-cor="arte12"] .capa-arte[data-arte="arte12"]{ display:block; }
.capa[data-cor^="arte"]::before{
  background:linear-gradient(90deg, rgba(11,11,12,.9) 0%, rgba(11,11,12,.55) 42%, rgba(11,11,12,.15) 70%, rgba(11,11,12,.55) 100%),
             linear-gradient(0deg, rgba(11,11,12,.55) 0%, rgba(11,11,12,0) 45%);
}
.capa[data-cor^="arte"]::after{ display:none; }
.capa[data-cor="preto"]::before{ background:radial-gradient(120% 140% at 0% 0%, #26262B 0%, transparent 55%), linear-gradient(135deg, #18181B 0%, #000 62%); }
.cor-bola.cor-arte{ width:84px; overflow:hidden; }
.cor-arte img{ width:100%; height:100%; object-fit:cover; display:block; }
.capa{ position:relative; overflow:hidden; isolation:isolate; }
.capa::before{
  content:""; position:absolute; inset:0; z-index:-1;
  background:
    radial-gradient(120% 140% at 0% 0%, color-mix(in srgb, var(--cor) 38%, transparent) 0%, transparent 55%),
    linear-gradient(135deg, var(--cor-esc) 0%, var(--preto) 62%);
}
.capa::after{
  content:""; position:absolute; inset:0; z-index:-1; opacity:.07;
  background-image:linear-gradient(rgba(255,255,255,.9) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.9) 1px, transparent 1px);
  background-size:24px 24px; mask-image:linear-gradient(90deg, #000 0%, transparent 70%);
}
.capa-in{ display:flex; align-items:center; gap:28px; padding-block:60px 54px; min-height:312px; }
@media (max-width:640px){ .capa-in{ padding-block:44px 40px; min-height:250px; } }
.capa-foto-nota{ margin:6px 0 0; font-size:13px; font-weight:600; color:#F2C46B; }
.capa-txt{ display:flex; flex-direction:column; gap:8px; min-width:0; flex:1; }
.capa-txt .rotulo{ color:color-mix(in srgb, var(--cor) 70%, #fff); }
/* cargo no perfil: Jogador (laranja), Moderador (verde) e Desenvolvedor (azul royal ao lilás, com brilho) */
.capa-txt .rotulo.cargo-jogador{ color:#FFA24C; }
.capa-txt .rotulo.cargo-mod, .capa-txt .rotulo.cargo-dev{ display:inline-flex; align-items:center; gap:8px; align-self:flex-start;
  padding:5px 12px 5px 10px; border-radius:999px; font-size:11.5px; }
.capa-txt .rotulo.cargo-mod::before, .capa-txt .rotulo.cargo-dev::before{ display:none; }
.rotulo.cargo-mod svg, .rotulo.cargo-dev svg{ width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; flex:none; }
.capa-txt .rotulo.cargo-mod{ color:#5EF0A0; background:rgba(34,197,94,.14); box-shadow:inset 0 0 0 1px rgba(94,240,160,.45); }
.capa-txt .rotulo.cargo-dev{ color:#fff; background:linear-gradient(110deg, #2F4DFF 0%, #7B5CFF 45%, #C9A6FF 60%, #7B5CFF 75%, #2F4DFF 100%);
  background-size:220% 100%; animation:brilho-dev 4.5s linear infinite;
  box-shadow:0 0 0 1px rgba(201,166,255,.55), 0 6px 22px -6px rgba(123,92,255,.75); text-shadow:0 1px 2px rgba(20,10,60,.45); }
@keyframes brilho-dev{ from{ background-position:120% 0; } to{ background-position:-120% 0; } }
@media (prefers-reduced-motion:reduce){ .capa-txt .rotulo.cargo-dev{ animation:none; } }
/* foto com aro na cor do cargo */
.capa--cargo-dev .ava{ box-shadow:0 0 0 3px #9B7BFF, 0 0 0 7px rgba(123,92,255,.25), 0 18px 40px -12px rgba(123,92,255,.7); }
.capa--cargo-mod .ava{ box-shadow:0 0 0 3px #3DD68C, 0 0 0 7px rgba(34,197,94,.2), 0 18px 40px -14px rgba(34,197,94,.6); }
.capa-txt h1{ margin:0; font-family:var(--display); font-weight:900; font-size:clamp(32px, 4.4vw, 52px); line-height:1; letter-spacing:-.03em; overflow-wrap:anywhere; }
.capa-titulo{ margin:0; color:var(--dim-esc); font-size:17px; min-height:1px; }
.capa-titulo:empty{ display:none; }
.ava{
  flex:none; width:104px; height:104px; border-radius:22px; display:grid; place-items:center;
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,0) 60%),
    repeating-linear-gradient(0deg, rgba(0,0,0,.08) 0 13px, transparent 13px 26px),
    repeating-linear-gradient(90deg, rgba(0,0,0,.08) 0 13px, transparent 13px 26px),
    var(--cor);
  box-shadow:0 0 0 4px rgba(255,255,255,.08), 0 18px 40px -14px color-mix(in srgb, var(--cor) 80%, transparent);
}
.ava span{ font-family:var(--marca); font-size:48px; color:#fff; text-shadow:0 3px 0 rgba(0,0,0,.25); }
/* foto de perfil por cima da inicial */
.ava{ position:relative; overflow:hidden; }
.ava img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.ava--foto span{ visibility:hidden; }
.foto-linha{ display:flex; gap:24px; align-items:flex-start; margin-top:16px; }
.ava--foto-g{ width:120px; height:120px; border-radius:24px; }
.ava--foto-g span{ font-size:56px; }
.foto-info{ min-width:0; flex:1; }
.foto-situacao{ margin:0 0 14px; font-weight:600; }
.foto-situacao--analise{ color:#B7791F; }
.foto-acoes{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:12px; }
/* janela por cima da página (denúncia e ações da moderação) */
.janela{ position:fixed; inset:0; z-index:200; display:grid; place-items:center; padding:16px; background:rgba(8,8,10,.72); backdrop-filter:blur(4px); overflow-y:auto; }
.janela[hidden]{ display:none; }
.janela-caixa{ width:min(520px, 100%); background:#fff; color:var(--txt); border-radius:18px; padding:26px; box-shadow:0 30px 60px -20px rgba(0,0,0,.6); margin:auto; }
.janela-caixa h3{ margin:0 0 6px; font-family:var(--display); font-weight:900; font-size:21px; letter-spacing:-.01em; overflow-wrap:anywhere; }
.janela-caixa > .nota{ margin:0 0 18px; }
.janela-acoes{ display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-top:18px; }
.capa-denunciar{ display:inline-flex; align-items:center; gap:8px; align-self:flex-start; }
.capa-denunciar svg{ width:15px; height:15px; }
.capa-denunciar[disabled]{ opacity:.7; cursor:default; }
@media (max-width:640px){ .capa-denunciar{ align-self:auto; } }

/* moderação */
.mod-topo{ background:linear-gradient(135deg, #1C1C21 0%, #000 70%); }
.mod-topo-in{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; padding-block:34px 30px; }
.mod-topo h1{ margin:4px 0 0; font-family:var(--display); font-weight:900; font-size:clamp(28px, 4vw, 40px); letter-spacing:-.03em; }
.mod-cargo{ font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; padding:7px 12px; border-radius:999px; border:1px solid rgba(255,255,255,.22); color:#fff; }
.mod-cargo:empty{ display:none; }
.mod-negado{ padding-block:40px 96px; }
.mod-aviso{ margin:0 0 18px; padding:12px 14px; border-radius:10px; background:#FFF6E5; border:1px solid #F3DDAE; color:#6B4A0A; font-size:14px; }
.mod-aviso[hidden]{ display:none; }
.trilho-cont{ margin-left:auto; font-style:normal; font-size:12px; font-weight:700; min-width:22px; height:22px; padding:0 7px; border-radius:999px; background:var(--verm); color:#fff; display:inline-grid; place-items:center; }
.trilho-cont[hidden]{ display:none; }
.mod-barra{ display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:space-between; margin-bottom:14px; }
.mod-seg{ display:inline-flex; padding:4px; background:#fff; border:1px solid var(--fio); border-radius:12px; gap:2px; flex-wrap:wrap; }
.mod-seg-item{ border:0; background:none; font:inherit; font-size:14px; font-weight:600; color:var(--dim); padding:8px 12px; border-radius:8px; cursor:pointer; display:inline-flex; align-items:center; gap:6px; }
.mod-seg-item:hover{ color:var(--txt); }
.mod-seg-item[aria-pressed="true"]{ background:var(--preto); color:#fff; }
.mod-seg-item em{ font-style:normal; font-size:12px; opacity:.75; }
.mod-seg-item:focus-visible{ outline:2px solid var(--verm); outline-offset:2px; }
.mod-busca{ display:flex; align-items:center; gap:8px; height:42px; padding:0 12px; background:#fff; border:1px solid var(--fio2); border-radius:10px; min-width:min(260px, 100%); }
.mod-busca svg{ width:16px; height:16px; color:var(--fraco); flex:none; }
.mod-busca input{ border:0; outline:none; font:inherit; font-size:15px; width:100%; background:none; color:var(--txt); }
.mod-busca:focus-within{ border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.den-lista{ display:flex; flex-direction:column; gap:8px; min-height:60px; }
.den-linha{
  display:flex; align-items:center; gap:14px; width:100%; padding:14px 16px; background:#fff; border:1px solid var(--fio); border-radius:12px;
  font:inherit; text-align:left; color:var(--txt); cursor:pointer; transition:border-color .15s, box-shadow .15s;
}
.den-linha:hover{ border-color:var(--fio2); box-shadow:var(--sombra); }
.den-linha:focus-visible{ outline:2px solid var(--verm); outline-offset:2px; }
.den-id{ font-weight:700; color:var(--fraco); font-size:13.5px; min-width:44px; }
.den-meio{ display:flex; flex-direction:column; gap:3px; min-width:0; flex:1; }
.den-meio b{ font-size:15.5px; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.den-meio small, .den-fim small{ color:var(--dim); font-size:13px; }
.den-mais{ font-style:normal; font-size:11.5px; font-weight:700; color:var(--verm-cl); background:var(--verm-suave); padding:2px 7px; border-radius:6px; }
.den-fim{ display:flex; flex-direction:column; align-items:flex-end; gap:4px; flex:none; }
.mod-vazio{ margin:0; padding:28px 16px; text-align:center; color:var(--dim); background:#fff; border:1px dashed var(--fio2); border-radius:12px; }
.den-paginas{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:6px; margin-top:16px; color:var(--dim); font-size:14px; }
.den-paginas:empty{ display:none; }
.pilula{ display:inline-flex; align-items:center; height:24px; padding:0 9px; border-radius:999px; font-size:12px; font-weight:700; background:var(--cl2); color:var(--dim); white-space:nowrap; }
.pilula--aberta{ background:var(--verm-suave); color:var(--verm-cl); }
.pilula--em_analise{ background:#FFF3D6; color:#7A5306; }
.pilula--resolvida{ background:#E3F6E8; color:#1E6B34; }
.pilula--staff{ background:#111112; color:#fff; }
.pilula--banida{ background:var(--verm); color:#fff; letter-spacing:.04em; text-transform:uppercase; font-size:11px; }
.den-voltar{ display:inline-flex; align-items:center; gap:8px; margin:0 0 12px; padding:0; }
.den-voltar svg{ width:16px; height:16px; }
.den-faixa{ margin:0 0 12px; padding:12px 14px; border-radius:10px; background:var(--verm-suave); color:#5E0B10; font-size:14px; }
.den-faixa[hidden]{ display:none; }
.den-grade{ display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:20px; align-items:start; }
.den-cab{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:6px; }
.den-cab h3{ margin:0; }
.den-sub{ margin:0 0 16px; color:var(--dim); font-size:13.5px; }
.den-texto{ white-space:pre-wrap; overflow-wrap:anywhere; font-size:15.5px; line-height:1.6; padding:16px; background:var(--cl); border-radius:12px; }
.den-prova{ margin:12px 0 0; font-size:14.5px; overflow-wrap:anywhere; }
.den-prova span{ color:var(--dim); font-weight:600; }
.den-resolucao{ display:flex; flex-direction:column; gap:3px; margin-top:14px; padding:12px 14px; border-left:3px solid #2E8B4A; background:#F2FAF4; border-radius:0 10px 10px 0; font-size:14.5px; }
.den-acoes{ display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.den-notas{ margin-top:24px; padding-top:20px; border-top:1px solid var(--fio); }
.den-notas h4, .ficha-hist h4{ margin:0 0 12px; font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.nota-item{ display:flex; flex-direction:column; gap:2px; padding:10px 0; border-bottom:1px solid var(--fio); }
.nota-item b{ font-size:14px; }
.nota-item p{ margin:0; font-size:14.5px; white-space:pre-wrap; overflow-wrap:anywhere; }
.nota-item small{ color:var(--fraco); font-size:12px; }
.nota-item--sistema p{ color:var(--dim); font-style:italic; font-size:13.5px; }
.nota-form{ display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.nota-form textarea{ flex:1 1 260px; font:inherit; font-size:15px; padding:10px 12px; border:1px solid var(--fio2); border-radius:10px; resize:vertical; min-height:44px; }
.nota-form textarea:focus{ outline:none; border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.nota-form .btn{ align-self:flex-end; }
.nota-form .aviso{ flex-basis:100%; margin-top:0; }
.ficha{ padding:22px; }
.ficha-topo{ display:flex; gap:14px; align-items:center; margin-bottom:14px; }
.ficha-nome{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.ficha-nome h3{ margin:0; line-height:1.1; }
.ficha-pilulas{ display:flex; flex-wrap:wrap; gap:6px; }
.ficha-nome small{ line-height:1.35; }
.ficha-ava{ width:64px; height:64px; border-radius:16px; }
.ficha-ava span{ font-size:30px; }
.ficha-nome{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.ficha-nome h3{ margin:0; font-size:20px; overflow-wrap:anywhere; }
.ficha-nome h3 a:hover{ color:var(--verm); }
.ficha-nome small{ color:var(--dim); font-size:12.5px; overflow-wrap:anywhere; }
.ficha-pilulas{ display:flex; gap:6px; flex-wrap:wrap; }
.ficha-ban{ display:flex; flex-direction:column; gap:3px; padding:12px 14px; margin-bottom:14px; border-radius:10px; background:var(--verm-suave); color:#5E0B10; font-size:14px; overflow-wrap:anywhere; }
.ficha-nums{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:8px; margin-bottom:14px; }
.ficha-nums div{ display:flex; flex-direction:column; gap:2px; padding:10px; background:var(--cl); border-radius:10px; }
.ficha-nums b{ font-size:18px; }
.ficha-nums span{ font-size:11.5px; color:var(--dim); line-height:1.3; }
.ficha-perfil{ display:flex; flex-direction:column; gap:6px; padding:12px 14px; border:1px solid var(--fio); border-radius:10px; margin-bottom:14px; font-size:14px; overflow-wrap:anywhere; }
.ficha-perfil p{ margin:0; white-space:pre-wrap; color:var(--txt); max-height:9em; overflow:auto; }
.ficha-perfil small{ color:var(--dim); }
.ficha-acoes{ display:flex; flex-wrap:wrap; gap:8px; }
.ficha-nota{ font-size:13.5px; }
.ficha-hist{ margin-top:18px; padding-top:16px; border-top:1px solid var(--fio); }
.hist-item{ display:flex; flex-direction:column; gap:2px; padding:8px 0; font-size:14px; border-bottom:1px solid var(--fio); }
.hist-item:last-child{ border-bottom:0; }
.hist-item span{ color:var(--dim); font-size:12.5px; overflow-wrap:anywhere; }
.ficha-den{ margin-top:-6px; }
.mod-procurar{ padding:18px; }
.mod-procurar-linha{ display:flex; gap:10px; }
.mod-procurar-linha input{ flex:1; min-width:0; font:inherit; font-size:16px; height:48px; padding:0 16px; border:1px solid var(--fio2); border-radius:10px; }
.mod-procurar-linha input:focus{ outline:none; border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.mod-procurar-linha .btn{ height:48px; }
.equipe-lista{ display:flex; flex-direction:column; }
.equipe-item{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid var(--fio); font-weight:600; }
.equipe-item a:hover{ color:var(--verm); }
.equipe-nota{ margin-top:14px; }
.equipe-nota code{ font-size:13px; background:var(--cl); padding:2px 6px; border-radius:5px; }
/* linhas de informação da moderação: alinhadas à esquerda (justificar abre buracos em linha curta) */
.den-sub, .nota-item p, .ficha-nota, .hist-item span, .mod-aviso, .ficha-perfil p, .den-texto{ text-align:left; }
@media (max-width:980px){ .den-grade{ grid-template-columns:1fr; } }
@media (max-width:560px){
  .ficha-nums{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .den-linha{ flex-wrap:wrap; }
  .den-fim{ flex-direction:row; align-items:center; width:100%; justify-content:space-between; }
  .mod-topo-in{ align-items:flex-start; flex-direction:column; }
}

/* ajuste da foto (zoom e enquadramento) */
.foto-recorte{ position:fixed; inset:0; z-index:200; display:grid; place-items:center; padding:16px; background:rgba(8,8,10,.72); backdrop-filter:blur(4px); }
.foto-recorte[hidden]{ display:none; }
.foto-recorte-caixa{ width:min(380px, 100%); background:#fff; color:#111; border-radius:18px; padding:22px; box-shadow:0 30px 60px -20px rgba(0,0,0,.6); }
.foto-recorte-caixa h3{ margin:0 0 4px; }
.foto-recorte-caixa .nota{ margin:0 0 16px; font-size:13.5px; color:#5B5B63; }
.foto-recorte-area{
  position:relative; width:100%; aspect-ratio:1; border-radius:22%; overflow:hidden; background:#1A1A1E;
  cursor:grab; touch-action:none; user-select:none; -webkit-user-select:none;
  box-shadow:0 0 0 1px rgba(0,0,0,.1);
}
.foto-recorte-area--movendo{ cursor:grabbing; }
.foto-recorte-area:focus-visible{ outline:3px solid var(--verm); outline-offset:3px; }
.foto-recorte-area img{ position:absolute; left:0; top:0; max-width:none; transform-origin:0 0; pointer-events:none; }
.foto-recorte-zoom{ display:flex; align-items:center; gap:12px; margin:16px 0 18px; font-weight:700; color:#5B5B63; }
.foto-recorte-zoom input{ flex:1; accent-color:var(--verm); }
.foto-recorte-acoes{ display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; }
.foto-info .dica{ display:block; max-width:62ch; line-height:1.5; margin:0; text-align:left; font-size:13.5px; color:var(--dim); }
@media (max-width:560px){ .foto-linha{ flex-direction:column; } }
.btn--linha-esc{ background:transparent; border-color:rgba(255,255,255,.28); color:#fff; }
.btn--linha-esc:hover{ border-color:#fff; }
.capa-ver{
  flex:none; display:inline-flex; align-items:center; gap:9px; height:44px; padding:0 18px; border-radius:12px;
  background:#fff; color:#111112; font-size:14px; font-weight:800; letter-spacing:.02em;
  box-shadow:0 10px 30px -10px rgba(0,0,0,.7), 0 0 0 1px rgba(255,255,255,.6); transition:transform .15s, box-shadow .15s;
}
.capa-ver svg{ width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.capa-ver:hover{ transform:translateY(-1px); box-shadow:0 14px 34px -10px rgba(0,0,0,.8), 0 0 0 3px rgba(255,255,255,.25); }
.capa-ver:focus-visible{ outline:3px solid #fff; outline-offset:3px; }

.painel{ background:var(--cl); }
.painel-grid{ display:grid; grid-template-columns:240px minmax(0,1fr); gap:32px; align-items:start; padding-block:36px 96px; }
.painel-trilho{ position:sticky; top:88px; display:flex; flex-direction:column; gap:4px; }
.trilho-item{
  display:flex; align-items:center; gap:12px; width:100%; padding:12px 14px; border:0; border-radius:10px;
  background:transparent; font:inherit; font-size:15px; font-weight:600; color:var(--dim); cursor:pointer; text-align:left;
  transition:background .15s, color .15s;
}
.trilho-item svg{ width:18px; height:18px; flex:none; }
.trilho-item:hover{ background:#fff; color:var(--txt); }
.trilho-item[aria-selected="true"]{ background:#fff; color:var(--txt); box-shadow:inset 3px 0 0 var(--verm), var(--sombra); }
/* 1.10: Central de Ações (grupos no trilho, segmentos dentro do grupo) */
.trilho-oculto{ display:none !important; }
.trilho-item-g{
  display:flex; align-items:center; gap:12px; width:100%; padding:12px 14px; border:0; border-radius:10px;
  background:transparent; font:inherit; font-size:15px; font-weight:600; color:var(--dim); cursor:pointer; text-align:left;
  transition:background .15s, color .15s;
}
.trilho-item-g svg{ width:18px; height:18px; flex:none; }
.trilho-item-g:hover{ background:#fff; color:var(--txt); }
.trilho-item-g[aria-pressed="true"]{ background:#fff; color:var(--txt); box-shadow:inset 3px 0 0 var(--verm), var(--sombra); }
.trilho-item-g[hidden]{ display:none; }
.trilho-item-g:focus-visible{ outline:2px solid var(--verm); outline-offset:2px; }
.central-seg{ display:flex; gap:4px; padding:4px; margin:0 0 18px; background:#fff; border:1px solid var(--fio); border-radius:12px; width:max-content; max-width:100%; overflow-x:auto; }
.central-seg-item{ border:0; background:none; font:inherit; font-size:14.5px; font-weight:700; color:var(--dim); padding:9px 16px; border-radius:9px; cursor:pointer; display:inline-flex; align-items:center; gap:8px; white-space:nowrap; }
.central-seg-item:hover{ color:var(--txt); background:var(--cl); }
.central-seg-item[aria-current="true"]{ background:var(--preto); color:#fff; }
.central-seg-item[hidden]{ display:none; }
.seg-cont{ font-style:normal; font-size:11.5px; min-width:20px; height:20px; padding:0 6px; border-radius:999px; background:var(--verm); color:#fff; display:inline-grid; place-items:center; }
.seg-cont[hidden]{ display:none; }
.tkm-acoes{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px; }
.den-fotos-rot{ display:block; margin:14px 0 6px; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--dim); }
/* 1.10: Meus tickets e conversa */
.tk-grade{ display:grid; grid-template-columns:320px minmax(0,1fr); gap:24px; align-items:start; padding-block:32px 96px; }
.tk-lado{ position:sticky; top:88px; padding:18px; }
.tk-novo{ width:100%; justify-content:center; gap:8px; margin-bottom:14px; }
.tk-novo svg{ width:16px; height:16px; }
.tk-lista{ display:flex; flex-direction:column; gap:6px; max-height:60vh; overflow-y:auto; }
.tk-item{ display:flex; flex-direction:column; gap:4px; width:100%; padding:12px; border:1px solid var(--fio); border-radius:12px; background:#fff; font:inherit; text-align:left; cursor:pointer; color:var(--txt); transition:border-color .15s, box-shadow .15s; }
.tk-item:hover{ border-color:var(--fio2); box-shadow:var(--sombra); }
.tk-item[aria-current="true"]{ border-color:var(--verm); box-shadow:inset 3px 0 0 var(--verm); }
.tk-item-cima{ display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.tk-item-cima b{ font-size:14.5px; line-height:1.3; overflow-wrap:anywhere; }
.tk-item small{ color:var(--dim); font-size:12.5px; }
.tk-vazio{ margin:0; padding:18px 8px; text-align:center; color:var(--dim); font-size:14px; }
.tk-nota{ margin:12px 0 0; font-size:13px; }
.tk-campos{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:12px; }
.rotulo-campo{ display:block; font-weight:700; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--txt); margin-bottom:8px; }
.tk-det-cab{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:16px; }
.tk-det-cab h3{ margin:0 0 4px; overflow-wrap:anywhere; }
.tk-det-cab small{ color:var(--dim); font-size:13px; }
.tk-conversa{ display:flex; flex-direction:column; gap:12px; margin:0 0 18px; }
.tk-msg{ max-width:min(620px, 92%); padding:12px 14px; border-radius:14px; background:var(--cl); border:1px solid var(--fio); }
.tk-msg--eu{ align-self:flex-end; background:#FFF4F4; border-color:rgba(224,27,34,.22); }
.tk-msg--equipe{ background:#111114; color:#F3F3F5; border-color:#111114; }
.tk-msg--equipe.tk-msg--eu{ background:#1B1B20; }
.tk-msg-cab{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:6px; font-size:13.5px; }
.tk-msg-cab small{ color:var(--dim); font-size:12px; margin-left:auto; }
.tk-msg--equipe .tk-msg-cab small{ color:#9A9AA4; }
.tk-equipe{ font-size:11.5px; font-weight:700; padding:2px 8px; border-radius:999px; background:var(--verm); color:#fff; }
.tk-msg-txt{ white-space:pre-wrap; overflow-wrap:anywhere; font-size:15px; line-height:1.5; }
.tk-resposta{ border-top:1px solid var(--fio); padding-top:16px; }
.tk-resposta textarea{ width:100%; margin-bottom:10px; font:inherit; font-size:15px; padding:12px 14px; border:1px solid var(--fio2); border-radius:12px; background:#fff; color:var(--txt); resize:vertical; }
.tk-resposta textarea:focus{ outline:none; border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.anexo-linha .dica{ font-size:13px; color:var(--dim); }
.tk-fechado{ text-align:center; }
.pilula--fila{ background:#FFF3D6; color:#7A5306; } .pilula--ok{ background:#E3F6E8; color:#1E6B34; } .pilula--cinza{ background:var(--cl2); color:var(--dim); }
@media (max-width:900px){ .tk-grade{ grid-template-columns:minmax(0,1fr); padding-top:20px; } .tk-lado{ position:static; } .tk-lista{ max-height:none; } .tk-campos{ grid-template-columns:1fr; } }
/* fotos anexadas: miniaturas e a foto grande na própria página (sem baixar) */
.anexos-fotos{ display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.anexos-fotos[hidden]{ display:none; }
.anexos-fotos--editar{ margin:0 0 10px; }
.anexo-mini{ position:relative; width:96px; height:72px; padding:0; border-radius:10px; overflow:hidden; border:1px solid var(--fio2); background:#0E0E10; cursor:zoom-in; }
.anexo-mini img{ width:100%; height:100%; object-fit:cover; display:block; -webkit-user-drag:none; user-select:none; }
.anexo-mini--enviando img{ opacity:.35; }
.anexo-mini--vencida{ cursor:default; }
.anexo-carregando{ position:absolute; inset:0; display:grid; place-items:center; font-size:11.5px; font-weight:700; color:#fff; }
.anexo-tirar{ position:absolute; top:4px; right:4px; width:22px; height:22px; border-radius:50%; border:0; background:rgba(0,0,0,.72); color:#fff; font-size:15px; line-height:1; cursor:pointer; display:grid; place-items:center; }
.anexo-linha{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.anexo-add{ gap:8px; }
.anexo-add svg{ width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.foto-vidro{ position:fixed; inset:0; z-index:400; display:grid; place-items:center; padding:24px; background:rgba(6,6,8,.88); backdrop-filter:blur(3px); }
.foto-vidro[hidden]{ display:none; }
.foto-vidro img{ max-width:min(1400px, 100%); max-height:88vh; border-radius:12px; box-shadow:0 30px 80px -20px rgba(0,0,0,.8); user-select:none; -webkit-user-drag:none; }
.foto-vidro-x{ position:absolute; top:16px; right:16px; width:44px; height:44px; border-radius:50%; border:1px solid rgba(255,255,255,.25); background:rgba(255,255,255,.08); color:#fff; font-size:26px; line-height:1; cursor:pointer; }
/* Denunciar */
.dn-grade{ max-width:760px; padding-block:32px 96px; }
.dn-fim h1{ font-family:var(--display); font-size:26px; margin:0 0 10px; }
.painel-aba-cab{ margin-bottom:20px; }
.painel-aba-cab h2{ margin:0 0 6px; font-family:var(--display); font-weight:900; font-size:28px; letter-spacing:-.02em; }
.painel-aba-cab p{ margin:0; color:var(--dim); }
.cartao{ background:#fff; border:1px solid var(--fio); border-radius:16px; padding:28px; margin-bottom:20px; }
.cartao h3{ margin:0 0 18px; font-family:var(--display); font-weight:900; font-size:19px; letter-spacing:-.01em; }
.cartao .h3-sep{ margin-top:30px; padding-top:26px; border-top:1px solid var(--fio); }
.cartao--linha{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.cartao--linha h3{ margin-bottom:4px; }
.nota{ margin:0; color:var(--dim); font-size:14.5px; text-align:justify; }
.cartao .nota + .campo{ margin-top:18px; }
.grade-breve{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; }
.cartao-breve{ display:flex; align-items:center; gap:14px; padding:18px; border:1px dashed var(--fio2); border-radius:14px; background:rgba(255,255,255,.6); }
.cartao-breve > svg{ width:22px; height:22px; flex:none; color:var(--fraco); }
.cartao-breve div{ display:flex; flex-direction:column; gap:2px; flex:1; min-width:0; }
.cartao-breve b{ font-size:15px; }
.cartao-breve span{ font-size:13.5px; color:var(--dim); }
.cartao-breve em{ font-style:normal; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--fraco); background:var(--cl); padding:4px 8px; border-radius:6px; flex:none; }
fieldset.campo{ border:0; padding:0; margin:0 0 16px; min-width:0; }
.campo legend{ padding:0; margin-bottom:9px; font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.campo textarea, .campo select{
  font:inherit; font-size:16px; padding:12px 16px; border:1px solid var(--fio2); border-radius:10px; background:#fff; color:var(--txt);
  transition:border-color .15s, box-shadow .15s; width:100%;
}
.campo select{ height:48px; padding-block:0; }
.campo textarea{ resize:vertical; min-height:120px; line-height:1.5; }
.campo textarea:focus, .campo select:focus{ outline:none; border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.chips{ display:flex; flex-wrap:wrap; gap:8px; }
.chip{ position:relative; text-transform:none; letter-spacing:0; }
.campo .chip, .campo .cor-op{ text-transform:none; letter-spacing:0; font-size:14.5px; color:var(--dim); }
.chip input{ position:absolute; opacity:0; pointer-events:none; }
.chip span{
  display:inline-flex; align-items:center; height:38px; padding:0 16px; border:1px solid var(--fio2); border-radius:999px;
  font-size:14.5px; font-weight:600; color:var(--dim); cursor:pointer; transition:all .15s; user-select:none;
}
.chip span:hover{ border-color:var(--txt); color:var(--txt); }
.chip input:checked + span{ background:var(--preto); border-color:var(--preto); color:#fff; }
.chip input:focus-visible + span{ outline:2px solid var(--verm); outline-offset:2px; }
.cores{ display:flex; flex-wrap:wrap; gap:10px; }
.cor-op{ display:flex; flex-direction:column; align-items:center; gap:6px; cursor:pointer; }
.cor-op input{ position:absolute; opacity:0; pointer-events:none; }
.cor-bola{ width:40px; height:40px; border-radius:12px; background:var(--cor); box-shadow:inset 0 0 0 1px rgba(0,0,0,.1); transition:transform .15s, box-shadow .15s; }
.cor-op em{ font-style:normal; font-size:12.5px; color:var(--dim); }
.cor-op input:checked + .cor-bola{ box-shadow:0 0 0 3px #fff, 0 0 0 5px var(--cor); transform:scale(1.04); }
.cor-op input:focus-visible + .cor-bola{ outline:2px solid var(--verm); outline-offset:6px; }
.grade-redes{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:0 16px; }
.acoes-form{ display:flex; flex-wrap:wrap; gap:12px; margin-top:8px; }
.chaves{ display:flex; flex-direction:column; }
.chave{ display:flex; align-items:center; gap:18px; padding:16px 0; border-bottom:1px solid var(--fio); cursor:pointer; position:relative; }
.chave:last-child{ border-bottom:0; }
.chave--mestra{ padding-top:0; }
.chave--mestra b{ font-size:16.5px; }
.chave-txt{ display:flex; flex-direction:column; gap:3px; flex:1; }
.chave-txt b{ font-size:15px; }
.chave-txt span{ font-size:13.5px; color:var(--dim); }
.chave input{ position:absolute; opacity:0; pointer-events:none; }
.chave-trilho{ flex:none; width:46px; height:26px; border-radius:999px; background:var(--fio2); position:relative; transition:background .15s; }
.chave-trilho::after{ content:""; position:absolute; top:3px; left:3px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); transition:transform .15s; }
.chave input:checked ~ .chave-trilho{ background:var(--verm); }
.chave input:checked ~ .chave-trilho::after{ transform:translateX(20px); }
.chave input:focus-visible ~ .chave-trilho{ outline:2px solid var(--verm); outline-offset:3px; }
.chave--off{ opacity:.45; }

.perfil{ background:var(--cl); min-height:60vh; }
.capa-fatos{ list-style:none; margin:6px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.capa-fatos li{ font-size:13.5px; font-weight:600; color:#E4E4E7; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.1); padding:6px 12px; border-radius:999px; }
.perfil-corpo{ padding-block:0 96px; }
.perfil-abas{ display:flex; gap:4px; border-bottom:1px solid var(--fio); margin-bottom:28px; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; }
.perfil-abas::-webkit-scrollbar{ display:none; }
.perfil-aba{
  border:0; background:none; font:inherit; font-size:15px; font-weight:700; color:var(--dim); padding:18px 16px; cursor:pointer;
  border-bottom:3px solid transparent; margin-bottom:-1px; white-space:nowrap;
}
.perfil-aba:hover{ color:var(--txt); }
.perfil-aba[aria-selected="true"]{ color:var(--txt); border-bottom-color:var(--verm); }
.perfil-geral{ display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:20px; align-items:start; }
.perfil-sobre{ margin:0 0 18px; white-space:pre-line; text-align:justify; font-size:16px; line-height:1.6; overflow-wrap:anywhere; }
.perfil-sobre--vazio{ color:var(--fraco); }
.chips--ver{ gap:6px; }
.chip-ver{ display:inline-flex; height:32px; align-items:center; padding:0 14px; border-radius:999px; background:var(--cl); font-size:13.5px; font-weight:700; }
.sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.capa-fatos li a{ color:inherit; text-decoration:none; }
.capa-fatos li a:hover{ text-decoration:underline; }

/* números do jogo */
.stats{ display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:12px; }
.stat{ display:flex; flex-direction:column; gap:8px; padding:18px; border-radius:14px; background:#fff; border:1px solid var(--fio); }
.stat > span, .destaque > span{ font-size:11.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--dim); }
.stat b{ font-family:var(--display); font-weight:900; font-size:26px; letter-spacing:-.02em; color:var(--txt); }
.destaques{ display:flex; flex-direction:column; gap:10px; }
.destaque{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px 18px; border-radius:12px; background:var(--cl); }
.destaque b{ font-family:var(--display); font-weight:900; font-size:22px; letter-spacing:-.02em; }
.stat-marca small{ display:block; margin-top:2px; font-family:var(--texto); font-size:13px; font-weight:700; letter-spacing:0; color:var(--verm); }
.destaque .stat-marca{ text-align:right; }
/* Marcas do Brutus: ícone do material + nome */
.marca-tempo{ width:22px; height:22px; flex:none; display:block; }
.marca-chip{ display:inline-flex; align-items:center; gap:7px; }
.marca-tile{ display:inline-flex; align-items:center; gap:10px; font-family:var(--texto); font-size:17px; font-weight:800; letter-spacing:-.01em; }
.marca-tile .marca-tempo{ width:34px; height:34px; }
.capa-fatos li.fato-marca{ padding-left:7px; }
.capa-fatos li{ display:inline-flex; align-items:center; gap:7px; }
.capa-fatos li a{ display:inline-flex; align-items:center; gap:7px; }
.fato-ic svg{ width:15px; height:15px; display:block; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; opacity:.8; }
.fato-bandeira{ width:20px; height:15px; border-radius:3px; object-fit:cover; box-shadow:0 0 0 1px rgba(255,255,255,.25); }
.sobre-vazio{ margin:0; color:var(--fraco); font-style:italic; }
/* cartões do perfil: contorno mais leve, cabeçalho com marcador */
.perfil-geral .cartao{ border-color:var(--fio); border-radius:18px; padding:24px 26px;
  box-shadow:0 1px 2px rgba(11,11,12,.04), 0 14px 34px -24px rgba(11,11,12,.28); }
.perfil-geral .cartao h3{ display:flex; align-items:center; gap:10px; margin:0 0 18px; padding-bottom:14px; border-bottom:1px solid var(--fio);
  font-family:var(--texto); font-size:12px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--dim); }
.perfil-geral .cartao h3::before{ content:""; width:4px; height:16px; border-radius:2px; background:var(--verm); flex:none; }
.perfil-geral .perfil-sobre{ margin:0; }
/* Visão geral: Sobre e Destaques na mesma altura; embaixo, Informações e Badges na mesma altura */
.perfil-geral{ align-items:stretch; }
.perfil-geral .cartao{ margin-bottom:0; display:flex; flex-direction:column; }
.perfil-info{ margin:0; display:flex; flex-direction:column; }
.info-linha{ display:flex; justify-content:space-between; align-items:baseline; gap:16px; padding:11px 0; border-bottom:1px solid var(--fio); }
.info-linha:last-child{ border-bottom:0; padding-bottom:0; }
.info-linha:first-child{ padding-top:0; }
.info-linha dt{ font-size:11.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--dim); flex:none; }
.info-linha dd{ margin:0; font-weight:700; text-align:right; overflow-wrap:anywhere; min-width:0; }
.badge-mini-grade{ display:grid; grid-template-columns:repeat(auto-fill, minmax(96px, 1fr)); gap:10px; }
.badge-mini{ display:flex; flex-direction:column; align-items:center; gap:6px; padding:12px 6px; border-radius:12px; background:var(--cl); text-align:center; }
.badge-mini .marca-ic{ width:52px; height:52px; }
.badge-mini b{ font-size:12.5px; line-height:1.25; }

/* conquistas (estilo Steam: bloqueada fica cinza) */
.conq-cab{ display:flex; align-items:center; gap:16px; margin-bottom:18px; }
.conq-cab b{ flex:none; font-size:15px; }
.barra{ flex:1; height:8px; border-radius:99px; background:var(--cl2); overflow:hidden; }
.barra span{ display:block; height:100%; width:0; border-radius:99px; background:var(--verm); transition:width .4s; }
.conq-grade{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
.conq{ --niv:#B87333; display:flex; align-items:center; gap:16px; padding:16px; border-radius:14px; background:#fff; border:1px solid var(--fio); }
.conq--media{ --niv:#7D8799; } .conq--dificil{ --niv:#D4A017; } .conq--lendaria{ --niv:#22B8CF; }
.marca-ic{
  flex:none; width:60px; height:60px; border-radius:14px; display:grid; place-items:center; overflow:hidden;
  background:color-mix(in srgb, var(--niv, var(--verm)) 14%, #fff); color:var(--niv, var(--verm));
  box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--niv, var(--verm)) 45%, transparent);
}
.marca-ic svg{ width:30px; height:30px; }
.marca-ic img{ width:100%; height:100%; object-fit:contain; }
/* com a arte de verdade: sem a caixinha, só o desenho um pouco maior */
.marca-ic--arte{ background:none; box-shadow:none; border-radius:0; width:68px; height:68px; overflow:visible; }
.badge .marca-ic--arte{ width:72px; height:72px; border-radius:0; }
.conq-txt{ min-width:0; flex:1; display:flex; flex-direction:column; gap:3px; }
.conq-txt b{ font-size:15.5px; }
.conq-txt span{ font-size:13.5px; color:var(--dim); line-height:1.4; }
.conq-data{ margin-top:4px; font-size:12px; font-weight:600; color:var(--fraco); }
.conq-nivel{ align-self:flex-start; flex:none; font-style:normal; font-size:10.5px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--niv); }
.mini-barra{ margin-top:6px; height:5px; border-radius:99px; background:var(--cl2); overflow:hidden; }
.mini-barra span{ display:block; height:100%; border-radius:99px; background:var(--fraco); }
.conq--bloq{ background:var(--cl); border-color:transparent; }
.conq--bloq .marca-ic{ filter:grayscale(1); opacity:.5; }
.conq--bloq .conq-txt b{ color:var(--dim); }
.conq--bloq .conq-nivel{ color:var(--fraco); }

/* badges de eventos */
.badge-grade{ display:grid; grid-template-columns:repeat(auto-fill, minmax(160px,1fr)); gap:12px; }
.badge{ --niv:var(--verm); display:flex; flex-direction:column; align-items:center; text-align:center; gap:6px; padding:20px 14px; border-radius:14px; background:#fff; border:1px solid var(--fio); }
.badge .marca-ic{ width:64px; height:64px; border-radius:50%; margin-bottom:6px; }
.badge b{ font-size:14.5px; }
.badge span{ font-size:12.5px; color:var(--dim); line-height:1.4; }
.badge small{ font-size:11.5px; font-weight:600; color:var(--fraco); }
.badge--bloq{ background:var(--cl); border-color:transparent; }
.badge--bloq .marca-ic{ filter:grayscale(1); opacity:.45; }
.badge--bloq b{ color:var(--dim); }

/* redes no perfil: blocos pixelados, preto parado e vermelho no hover */
.rede-ic{ display:block; width:20px; height:20px; flex:none; border-radius:5px; }
/* redes no perfil: linha discreta embaixo dos fatos, ícone pequeno e o usuário em cinza */
.capa-redes{ display:flex; flex-wrap:wrap; gap:6px 16px; margin-top:12px; }
.capa-redes:empty{ display:none; }
.rede-bt{
  position:relative; display:inline-flex; align-items:center; gap:7px; padding:0; border:0; background:none;
  font:inherit; font-size:13px; font-weight:600; color:var(--dim-esc); text-decoration:none; cursor:pointer; opacity:.85;
  transition:opacity .15s, color .15s;
}
.rede-bt .rede-ic{ width:18px; height:18px; border-radius:4px; }
.rede-bt span{ max-width:160px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rede-bt:hover, .rede-bt:focus-visible{ opacity:1; color:#fff; outline:none; }
.rede-bt:focus-visible span{ text-decoration:underline; }
.rede-bt[data-copiado]::after{
  content:"Copiado"; position:absolute; top:calc(100% + 6px); left:0;
  padding:4px 8px; border-radius:6px; background:#fff; color:var(--txt); font-size:12px; font-weight:700; white-space:nowrap;
}
.campo-rede label{ display:flex; align-items:center; gap:8px; }
.campo-rede .rede-ic{ width:16px; height:16px; border-radius:4px; }

/* editor do "sobre mim" */
.editor{ border:1.5px solid var(--fio2); border-radius:12px; overflow:hidden; background:#fff; transition:border-color .15s; }
.editor:focus-within{ border-color:var(--txt); }
.editor-barra{ display:flex; align-items:center; gap:2px; padding:6px; border-bottom:1px solid var(--fio); background:var(--cl); }
.editor-barra button{ width:34px; height:30px; border:0; border-radius:7px; background:none; font:inherit; font-size:15px; color:var(--txt); cursor:pointer; }
.editor-barra button:hover{ background:#fff; }
.editor-barra button:focus-visible{ outline:2px solid var(--verm); outline-offset:1px; }
.editor-conta{ margin-left:auto; padding-right:6px; font-size:12.5px; color:var(--fraco); font-variant-numeric:tabular-nums; }
.campo .editor textarea{ border:0; border-radius:0; box-shadow:none; display:block; width:100%; resize:vertical; min-height:120px; }
.campo .editor textarea:focus{ outline:none; box-shadow:none; }
.editor-previa{ margin-top:10px; padding:12px 14px; border-radius:10px; background:var(--cl); font-size:15px; line-height:1.55; overflow-wrap:anywhere; }
.nota--sub{ margin:-6px 0 14px; }

/* clã (cartão no painel e no perfil) */
.cla-tag{
  /* 1.12: tag de clã sem foto é quadrada, do mesmo tamanho da foto (a tag tem 3 letras) */
  flex:none; display:inline-grid; place-items:center; width:40px; height:40px; min-width:0; padding:0; border-radius:10px;
  background:var(--preto); color:#fff; font-family:var(--mono); font-weight:700; font-size:14px; letter-spacing:.04em;
}
.cla-tag[data-cor="vermelho"]{ background:#C8161D; } .cla-tag[data-cor="laranja"]{ background:#E2660F; }
.cla-tag[data-cor="dourado"]{ background:#B98A0B; } .cla-tag[data-cor="verde"]{ background:#1E9E55; }
.cla-tag[data-cor="ciano"]{ background:#0E95A8; } .cla-tag[data-cor="azul"]{ background:#2F55E0; }
.cla-tag[data-cor="roxo"]{ background:#7446E0; } .cla-tag[data-cor="rosa"]{ background:#D9367F; }
.cla-tag[data-cor="cinza"]{ background:#5B5F68; } .cla-tag[data-cor="preto"]{ background:var(--preto); }
.sub-form{ margin:22px 0 8px; font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--fraco); }
.sub-form label{ cursor:pointer; }
#form-emblema > .dica{ margin:6px 0 0; font-size:13.5px; line-height:1.5; color:var(--dim); }
.cc-campos{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:0 16px; margin-top:18px; }
.cc-campos input[name="tag"]{ text-transform:uppercase; letter-spacing:.08em; }
@media (max-width:640px){ .cc-campos{ grid-template-columns:1fr; } }
.cc-pedido{ display:flex; flex-direction:column; gap:4px; padding:14px 16px; margin:4px 0 6px; border-radius:12px; border:1px solid var(--fio2); background:#FAFAFB; font-size:14.5px; line-height:1.5; }
.cc-pedido b{ font-weight:800; color:var(--txt); }
.cc-pedido span{ color:var(--dim); }
.cc-pedido--fila{ border-color:#E8C76A; background:#FFF9E8; }
.cc-pedido--nao{ border-color:#F0B3B5; background:#FFF3F3; }
.cc-pedido--ok{ border-color:#9ED8B4; background:#F0FBF4; }
.foto-recorte-caixa--largo{ width:min(720px, 100%); }
.foto-recorte-area--largo{ border-radius:14px; }
/* distintivo na foto */
.bd-grade{ display:flex; flex-wrap:wrap; gap:10px; margin-top:10px; }
.bd-op{ width:64px; height:64px; border-radius:14px; border:1.5px solid var(--fio2); background:#fff; display:grid; place-items:center; cursor:pointer; padding:6px; transition:border-color .12s, transform .12s, box-shadow .12s; }
.bd-op:hover{ transform:translateY(-1px); border-color:var(--txt); }
.bd-op img{ width:100%; height:100%; object-fit:contain; }
.bd-op[aria-checked="true"]{ border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.16); }
.bd-nenhum{ font-size:11.5px; font-weight:700; color:var(--dim); }
/* nome real */
.nome-sit{ display:block; font-size:13.5px; line-height:1.45; padding:8px 11px; border-radius:9px; }
.nome-sit--fila{ background:#FFF9E8; color:#7A5A06; } .nome-sit--ok{ background:#F0FBF4; color:#16703C; } .nome-sit--nao{ background:#FFF3F3; color:#A3171C; }
/* clã: prévia, imagens, sobre, cargos e membros */
.cla-previa{ position:relative; margin:16px 0 8px; }
.cla-previa-banner{ aspect-ratio:3/1; border-radius:14px; background:#1C1C20 center/cover no-repeat; }
.cla-previa-banner[data-cor]:not([style*="url"]){ background-image:linear-gradient(135deg, rgba(255,255,255,.08), rgba(0,0,0,.25)); }
.cla-previa-emb{ position:absolute; left:18px; bottom:-26px; }
.cla-previa-emb .cla-tag{ box-shadow:0 0 0 4px #fff; }
.cla-imagens{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:4px 22px; margin-top:22px; }
.cs-grade{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:0 16px; }
.cs-largo{ grid-column:1 / -1; }
.cs-grade select, .cs-grade input{ font:inherit; font-size:15px; height:46px; padding:0 14px; border:1px solid var(--fio2); border-radius:10px; background:#fff; color:var(--txt); }
.cs-foco{ border:0; padding:0; margin:0 0 6px; }
.cs-foco legend{ font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); margin-bottom:8px; }
.cs-foco legend .dica{ text-transform:none; letter-spacing:0; font-weight:500; }
.acoes-form--esq{ justify-content:space-between; }
.cg-lista{ display:flex; flex-direction:column; gap:10px; margin:14px 0 6px; }
.cg-linha{ border:1px solid var(--fio); border-radius:12px; padding:12px; background:var(--cl); }
.cg-topo{ display:grid; grid-template-columns:auto minmax(0,1fr) 120px auto; gap:8px; align-items:center; }
.cg-topo input, .cg-topo select{ font:inherit; font-size:15px; height:40px; padding:0 12px; border:1px solid var(--fio2); border-radius:9px; background:#fff; min-width:0; }
.cg-cor{ width:16px; height:16px; border-radius:5px; background:#5B5F68; }
.cg-cor[data-cor="vermelho"]{ background:#D9262D; } .cg-cor[data-cor="laranja"]{ background:#E2701B; } .cg-cor[data-cor="dourado"]{ background:#B98A0B; }
.cg-cor[data-cor="verde"]{ background:#1E9E55; } .cg-cor[data-cor="ciano"]{ background:#0E95A8; } .cg-cor[data-cor="azul"]{ background:#2F55E0; }
.cg-cor[data-cor="roxo"]{ background:#7446E0; } .cg-cor[data-cor="rosa"]{ background:#D9367F; } .cg-cor[data-cor="preto"]{ background:#111; }
.cg-acoes{ display:flex; gap:4px; }
.cg-bt{ width:34px; height:34px; border-radius:8px; border:1px solid var(--fio2); background:#fff; font-size:16px; font-weight:700; cursor:pointer; color:var(--txt); }
.cg-bt:hover:not(:disabled){ border-color:var(--txt); }
.cg-bt:disabled{ opacity:.35; cursor:default; }
.cg-poderes{ display:flex; flex-wrap:wrap; gap:6px 18px; margin-top:10px; }
.cg-poder{ display:flex; align-items:center; gap:7px; font-size:14px; color:var(--dim); cursor:pointer; }
.cg-poder input{ accent-color:var(--verm); width:16px; height:16px; }
.mc-lista{ display:flex; flex-direction:column; margin-top:10px; }
.mc-linha{ display:grid; grid-template-columns:minmax(0,1fr) auto 200px; gap:12px; align-items:center; padding:10px 0; border-bottom:1px solid var(--cl2); }
.mc-linha:last-child{ border-bottom:0; }
.mc-nick{ font-weight:700; color:var(--txt); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mc-linha select{ font:inherit; font-size:14.5px; height:38px; padding:0 10px; border:1px solid var(--fio2); border-radius:9px; background:#fff; min-width:0; }
.mc-fixo{ font-size:13.5px; color:var(--dim); text-align:right; }
@media (max-width:640px){
  .cla-imagens, .cs-grade{ grid-template-columns:1fr; }
  .cg-topo{ grid-template-columns:auto minmax(0,1fr) auto; }
  .cg-topo select{ grid-column:2; }
  .mc-linha{ grid-template-columns:minmax(0,1fr) auto; }
  .mc-linha select, .mc-fixo{ grid-column:1 / -1; text-align:left; }
}
.nome-ok{ display:inline-flex; align-items:center; gap:4px; margin-left:8px; padding:2px 8px 2px 6px; border-radius:999px; background:#E8F7EE; color:#16703C; font-size:11.5px; font-weight:700; vertical-align:1px; }
.nome-ok::before{ content:""; width:12px; height:12px; background:currentColor; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat; }
.marca--sem span{ color:#8A8A92; }
.cla-cartao--banner{ position:relative; background:linear-gradient(90deg, rgba(255,255,255,.97) 0%, rgba(255,255,255,.9) 55%, rgba(255,255,255,.55) 100%), var(--banner) center/cover no-repeat; }
/* página do clã (1.8): banner, sobre e membros por cargo */
.cla-cab{ padding:0; overflow:hidden; }
.cla-faixa{ aspect-ratio:3/1; max-height:300px; width:100%; background:#1C1C20 center/cover no-repeat; }
.cla-faixa[data-cor]:not([style*="url"]){ background-image:radial-gradient(120% 140% at 0% 0%, rgba(255,255,255,.18), transparent 60%); }
.cla-faixa[data-cor="vermelho"]{ background-color:#B5161C; } .cla-faixa[data-cor="laranja"]{ background-color:#C15A10; } .cla-faixa[data-cor="dourado"]{ background-color:#9A7208; }
.cla-faixa[data-cor="verde"]{ background-color:#167A41; } .cla-faixa[data-cor="ciano"]{ background-color:#0B7584; } .cla-faixa[data-cor="azul"]{ background-color:#2443B8; }
.cla-faixa[data-cor="roxo"]{ background-color:#5A33B8; } .cla-faixa[data-cor="rosa"]{ background-color:#B02A66; } .cla-faixa[data-cor="cinza"]{ background-color:#4A4E56; }
.cla-cab-corpo{ display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:18px; align-items:end; padding:0 26px 24px; margin-top:-42px; }
.cla-cab-corpo .cla-tag--g{ box-shadow:0 0 0 5px #fff, 0 12px 28px -10px rgba(0,0,0,.5); }
/* o nome e os números ficam sempre abaixo da faixa (só o emblema sobe por cima dela) */
.cla-cab-corpo > .cla-cab-txt, .cla-cab-corpo > .cla-nums{ padding-top:50px; }
/* sem banner: faixa baixa, na cor do clã */
.cla-faixa:not([style*="url"]){ aspect-ratio:auto; height:150px; }
.cla-faixa[data-cor="preto"]{ background-color:#141416; }
@media (max-width:640px){ .cla-faixa:not([style*="url"]){ height:110px; } .cla-cab-corpo > .cla-nums{ padding-top:0; } }
.cla-cab-txt h2{ margin:0; }
.cla-lema{ margin:4px 0 0; font-style:italic; color:var(--dim); text-align:left; }
.cla-quem{ margin:4px 0 0; font-size:14px; color:var(--dim); text-align:left; }
.cla-sobre h3{ margin-top:0; }
.cla-fichas{ display:grid; grid-template-columns:repeat(auto-fit, minmax(170px,1fr)); gap:12px; margin:14px 0 0; }
.cla-ficha{ background:var(--cl); border-radius:12px; padding:12px 14px; }
.cla-ficha dt{ font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); margin-bottom:6px; }
.cla-ficha dd{ margin:0; font-weight:700; }
.rec{ display:inline-flex; align-items:center; gap:6px; } .rec::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; }
.rec--aberto{ color:#16803F; } .rec--convite{ color:#9A6A06; } .rec--fechado{ color:#A3171C; }
.cla-focos{ display:flex; flex-wrap:wrap; gap:6px; }
.cla-foco{ font-size:12.5px; font-weight:700; padding:4px 10px; border-radius:999px; background:#fff; border:1px solid var(--fio2); }
.cla-dc{ margin-top:16px; }
.cla-grupo{ display:flex; align-items:center; gap:8px; margin:18px 0 4px; }
.cla-grupo:first-of-type{ margin-top:6px; }
.cla-grupo-nome{ font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--dim); }
.cla-grupo-nome[data-cor]{ padding:3px 10px; border-radius:999px; color:#fff; letter-spacing:.06em; }
.cla-grupo-nome[data-cor="vermelho"]{ background:#D9262D; } .cla-grupo-nome[data-cor="laranja"]{ background:#E2701B; } .cla-grupo-nome[data-cor="dourado"]{ background:#B98A0B; }
.cla-grupo-nome[data-cor="verde"]{ background:#1E9E55; } .cla-grupo-nome[data-cor="ciano"]{ background:#0E95A8; } .cla-grupo-nome[data-cor="azul"]{ background:#2F55E0; }
.cla-grupo-nome[data-cor="roxo"]{ background:#7446E0; } .cla-grupo-nome[data-cor="rosa"]{ background:#D9367F; } .cla-grupo-nome[data-cor="cinza"]{ background:#5B5F68; } .cla-grupo-nome[data-cor="preto"]{ background:#111; }
.cla-grupo small{ color:var(--fraco); font-weight:700; }
@media (max-width:640px){ .cla-cab-corpo{ grid-template-columns:auto minmax(0,1fr); } .cla-cab-corpo .cla-nums{ grid-column:1 / -1; } }
/* painel lateral (Marcas e Amigos) */
.lado-veu{ position:fixed; inset:0; z-index:90; background:rgba(11,11,12,.45); }
.lado{ position:fixed; top:0; right:0; bottom:0; z-index:91; width:min(420px, 100%); background:#fff; color:var(--txt);
  display:flex; flex-direction:column; box-shadow:-14px 0 44px rgba(0,0,0,.22); animation:desliza .22s ease; overflow:hidden;
  padding-top:env(safe-area-inset-top, 0px); padding-bottom:env(safe-area-inset-bottom, 0px); }
.lado-topo{ display:flex; align-items:center; gap:12px; padding:20px 20px 10px; }
.lado-topo h2{ margin:0; font-family:var(--display); font-size:22px; font-weight:900; letter-spacing:-.01em; }
.lado-topo small{ font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.lado-ic{ width:48px; height:48px; flex:none; } .lado-ic svg{ width:100%; height:100%; }
.lado-x{ margin-left:auto; width:38px; height:38px; display:grid; place-items:center; border:0; background:none; border-radius:10px; color:var(--dim); cursor:pointer; }
.lado-x:hover{ background:var(--cl); color:var(--txt); } .lado-x svg{ width:18px; height:18px; }
.lado-sub{ margin:0; padding:0 20px 14px; color:var(--dim); font-size:14px; border-bottom:1px solid var(--fio); text-align:left; }
.lado-lista{ list-style:none; margin:0; padding:8px 12px; overflow-y:auto; flex:1; }
.lado-pessoa{ display:flex; align-items:center; gap:12px; padding:9px 8px; border-radius:10px; color:inherit; text-decoration:none; }
.lado-pessoa:hover{ background:var(--cl); }
.lado-pessoa b{ font-size:15px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lado-pessoa small{ margin-left:auto; color:var(--dim); font-weight:600; flex:none; }
.lado-ava{ position:relative; width:38px; height:38px; flex:none; border-radius:11px; display:grid; place-items:center; overflow:hidden; color:#fff; font-weight:800; background:var(--preto); }
.lado-ava img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.lado-vazio{ padding:24px 8px; color:var(--dim); }
.lado-mais{ margin:8px 20px 18px; }
.mc-dica{ margin:-6px 0 14px; color:var(--dim); font-size:14px; text-align:left; }
.mc-cartao{ cursor:pointer; transition:transform .12s, box-shadow .12s; }
.mc-cartao:hover{ transform:translateY(-2px); box-shadow:0 14px 30px -18px rgba(0,0,0,.35); }
.mc-cartao:focus-visible{ outline:3px solid var(--verm); outline-offset:3px; }
/* moderação 1.8 */
.ficha-dados{ display:grid; grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); gap:8px; margin:14px 0; }
.ficha-dados div{ background:var(--cl); border-radius:10px; padding:9px 12px; }
.ficha-dados dt{ font-size:10.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.ficha-dados dd{ margin:3px 0 0; font-weight:600; font-size:14px; overflow-wrap:anywhere; }
.ficha-extra:empty{ display:none; }
.ficha-form{ margin:14px 0 0; padding:16px; border:1px solid var(--fio); border-radius:12px; background:#FCFCFD; }
.ficha-form h4{ margin:0 0 10px; }
.ficha-form textarea{ width:100%; font:inherit; font-size:15px; padding:10px 12px; border:1px solid var(--fio2); border-radius:10px; resize:vertical; }
.ficha-pcs{ margin-top:16px; }
.ficha-pcs h4{ margin:0 0 8px; }
.pc-linha{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; padding:8px 0; border-bottom:1px solid var(--cl2); }
.pc-linha span{ color:var(--dim); font-size:13.5px; flex:1; min-width:180px; }
.mod-filtro{ display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) auto; gap:10px; align-items:center; }
.mod-filtro input, .mod-filtro select{ font:inherit; font-size:15px; height:44px; padding:0 12px; border:1px solid var(--fio2); border-radius:10px; background:#fff; min-width:0; }
.jog-total{ color:var(--dim); font-size:13.5px; font-weight:600; white-space:nowrap; }
.jog-lista{ padding:6px; }
.jog-linha{ width:100%; display:grid; grid-template-columns:minmax(0,1.4fr) auto minmax(0,1fr); gap:12px; align-items:center; padding:11px 12px; border:0; background:none; border-radius:10px; text-align:left; font:inherit; color:inherit; cursor:pointer; }
.jog-linha:hover{ background:var(--cl); }
.jog-linha--foto{ grid-template-columns:40px minmax(0,1.4fr) auto minmax(0,1fr); }
.jog-linha--cla{ grid-template-columns:40px minmax(0,1fr) auto; }
.jog-foto{ position:relative; width:40px; height:40px; border-radius:11px; overflow:hidden; display:grid; place-items:center; background:var(--txt); color:#fff; font-weight:800; font-size:16px; }
.jog-foto img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.jog-foto--cla{ background:var(--cl2); color:var(--dim); }
.jog-nick{ display:flex; flex-direction:column; min-width:0; } .jog-nick b{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.jog-nick small{ color:var(--dim); font-size:12.5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.jog-info{ display:flex; gap:6px; flex-wrap:wrap; }
.jog-onde{ color:var(--dim); font-size:13px; text-align:right; }
.nome-item{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--cl2); }
.nome-item:last-child{ border-bottom:0; }
.nome-txt{ display:flex; flex-direction:column; } .nome-txt small{ color:var(--dim); }
.nome-acoes{ display:flex; gap:8px; align-items:center; }
.nome-motivo{ font:inherit; font-size:14px; height:38px; padding:0 10px; border:1px solid var(--fio2); border-radius:9px; width:200px; }
.nome-motivo[aria-invalid="true"]{ border-color:var(--verm); }
.ent-linha{ display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:12px; align-items:center; padding:10px 0; border-bottom:1px solid var(--cl2); }
.ent-linha div{ display:flex; flex-direction:column; min-width:0; } .ent-linha small{ color:var(--dim); font-size:12.5px; overflow-wrap:anywhere; }
.ent-quando{ color:var(--dim); font-size:13px; white-space:nowrap; }
@media (max-width:760px){
  .mod-filtro{ grid-template-columns:1fr 1fr; } .mod-filtro input{ grid-column:1 / -1; }
  .jog-linha{ grid-template-columns:1fr; } .jog-onde{ text-align:left; }
  .jog-linha--foto, .jog-linha--cla{ grid-template-columns:40px minmax(0,1fr); } .jog-linha--foto .jog-info, .jog-linha--foto .jog-onde, .jog-linha--cla .jog-onde{ grid-column:2; }
  .nome-item{ grid-template-columns:1fr; } .nome-acoes{ flex-wrap:wrap; } .nome-motivo{ width:100%; }
  .ent-linha{ grid-template-columns:1fr auto; } .ent-quando{ grid-column:1 / -1; }
}
/* amigos (1.8): botão no topo e painel com a conversa */
.topo-amigos{ position:relative; width:40px; height:40px; flex:none; display:grid; place-items:center; border-radius:11px; border:1px solid rgba(255,255,255,.18); background:none; color:#fff; cursor:pointer; transition:border-color .15s, background .15s; }
.topo-amigos:hover, .topo-amigos[aria-expanded="true"]{ border-color:rgba(255,255,255,.4); background:rgba(255,255,255,.08); }
.topo-amigos svg{ width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.topo-amigos em{ position:absolute; top:-6px; right:-6px; min-width:19px; height:19px; padding:0 5px; border-radius:999px; background:var(--verm); color:#fff; font:700 11px/19px var(--corpo, inherit); font-style:normal; text-align:center; box-shadow:0 0 0 2px var(--preto); }
html:not([data-logado]) .topo-amigos{ display:none; }
.am{ width:min(400px, 100%); }
.am-lista-visao{ display:flex; flex-direction:column; min-height:0; flex:1; }
.am-add{ display:flex; gap:8px; padding:4px 20px 12px; border-bottom:1px solid var(--fio); }
.am-add input{ flex:1; min-width:0; font:inherit; font-size:15px; height:42px; padding:0 12px; border:1px solid var(--fio2); border-radius:10px; }
.am-aviso{ margin:10px 16px 0; padding:9px 12px; border-radius:9px; background:var(--verm-suave, #FDECEC); color:var(--verm-cl, #A3171C); font-size:13.5px; font-weight:600; text-align:left; }
.am-aviso--ok{ background:#F0FBF4; color:#16703C; }
.am-corpo{ overflow-y:auto; flex:1; padding:4px 10px 18px; }
.am-sec{ display:flex; align-items:center; gap:8px; margin:16px 8px 6px; font-size:11.5px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.am-sec small{ color:var(--fraco); }
.am-linha{ position:relative; display:flex; align-items:center; gap:11px; padding:8px; border-radius:11px; }
.am-seta{ margin-left:auto; flex:none; width:30px; height:30px; display:grid; place-items:center; border:0; border-radius:8px; background:none; color:var(--fraco); cursor:pointer; }
.am-seta svg{ width:16px; height:16px; }
.am-seta:hover, .am-seta[aria-expanded="true"]{ background:var(--cl2); color:var(--txt); }
.am-novas + .am-seta{ margin-left:6px; }
.am-op-menu{ position:absolute; right:8px; top:calc(100% - 4px); z-index:5; min-width:190px; background:#fff; border:1px solid var(--fio); border-radius:12px; box-shadow:0 16px 40px -14px rgba(0,0,0,.3); padding:6px; display:flex; flex-direction:column; }
.am-busca{ display:flex; flex-direction:column; gap:2px; margin:10px 20px 6px; padding:6px; border:1px solid var(--fio); border-radius:12px; background:#fff; }
.am-busca[hidden]{ display:none; }
.am-busca-vazio{ margin:6px 8px; font-size:13.5px; color:var(--dim); }
.am-linha--amigo{ cursor:pointer; } .am-linha--amigo:hover, .am-linha--amigo:focus-visible{ background:var(--cl); outline:none; }
.am-ava{ position:relative; width:40px; height:40px; flex:none; border-radius:12px; display:grid; place-items:center; overflow:hidden; color:#fff; font-weight:800; background:var(--preto); }
.am-ava img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.am-txt{ display:flex; flex-direction:column; min-width:0; flex:1; }
.am-txt b{ font-size:15px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.am-txt small{ font-size:12.5px; color:var(--dim); }
.am-onde--jogo, .am-onde--launcher, .am-onde--site{ color:#16803F; font-weight:600; }
.am-onde--jogo::before, .am-onde--launcher::before, .am-onde--site::before{ content:""; display:inline-block; width:7px; height:7px; border-radius:50%; background:#1FB863; margin-right:5px; vertical-align:1px; }
.am-onde--jogo{ color:var(--verm); } .am-onde--jogo::before{ background:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.18); }
.am-novas{ min-width:22px; height:22px; padding:0 7px; border-radius:999px; background:var(--verm); color:#fff; font-size:12px; font-weight:800; display:grid; place-items:center; }
.am-acoes{ display:flex; gap:6px; }
.am-bt{ font:inherit; font-size:13px; font-weight:700; height:32px; padding:0 11px; border-radius:8px; border:1px solid var(--fio2); background:#fff; cursor:pointer; color:var(--txt); }
.am-bt:hover{ border-color:var(--txt); } .am-bt--sim{ background:var(--preto); border-color:var(--preto); color:#fff; }
.am-vazio{ margin:30px 10px; padding:18px; border-radius:14px; background:var(--cl); } .am-vazio p{ margin:6px 0 0; color:var(--dim); font-size:14px; line-height:1.5; }
.am-chat{ display:flex; flex-direction:column; flex:1; min-height:0; border-top:1px solid var(--fio); }
.am-chat-topo{ position:relative; display:flex; align-items:center; gap:8px; padding:10px 12px; border-bottom:1px solid var(--fio); }
.am-voltar, .am-mais{ width:36px; height:36px; flex:none; display:grid; place-items:center; border:0; background:none; border-radius:9px; color:var(--dim); cursor:pointer; }
.am-voltar:hover, .am-mais:hover{ background:var(--cl); color:var(--txt); } .am-voltar svg, .am-mais svg{ width:19px; height:19px; }
.am-chat-quem{ display:flex; align-items:center; gap:10px; flex:1; min-width:0; color:inherit; text-decoration:none; }
.am-menu{ position:absolute; right:12px; top:52px; z-index:3; min-width:210px; background:#fff; border:1px solid var(--fio); border-radius:12px; box-shadow:0 16px 40px -14px rgba(0,0,0,.3); padding:6px; display:flex; flex-direction:column; }
.am-op{ font:inherit; font-size:14px; text-align:left; padding:9px 11px; border:0; background:none; border-radius:8px; color:var(--txt); cursor:pointer; text-decoration:none; }
.am-op:hover{ background:var(--cl); } .am-op--verm{ color:var(--verm); }
.am-msgs{ list-style:none; margin:0; padding:14px 14px 6px; flex:1; overflow-y:auto; display:flex; flex-direction:column; gap:6px; background:#FAFAFB; }
.am-msg{ max-width:82%; align-self:flex-start; background:#fff; border:1px solid var(--fio); border-radius:14px 14px 14px 4px; padding:8px 11px 5px; }
.am-msg p{ margin:0; font-size:14.5px; line-height:1.45; white-space:pre-wrap; overflow-wrap:anywhere; text-align:left; }
.am-msg time{ display:block; margin-top:2px; font-size:11px; color:var(--fraco); text-align:right; }
.am-msg--minha{ align-self:flex-end; background:var(--preto); border-color:var(--preto); color:#fff; border-radius:14px 14px 4px 14px; }
.am-msg--minha time{ color:rgba(255,255,255,.55); }
.am-msg-vazio{ margin:auto; color:var(--dim); font-size:14px; text-align:center; max-width:260px; }
.am-escrever{ display:flex; gap:8px; align-items:flex-end; padding:10px 12px 12px; border-top:1px solid var(--fio); }
.am-escrever textarea{ flex:1; min-width:0; font:inherit; font-size:15px; line-height:1.4; padding:10px 12px; border:1px solid var(--fio2); border-radius:12px; resize:none; max-height:120px; }
.am-enviar{ width:42px; height:42px; flex:none; display:grid; place-items:center; border:0; border-radius:12px; background:var(--verm); color:#fff; cursor:pointer; }
.am-enviar:disabled{ opacity:.6; } .am-enviar svg{ width:19px; height:19px; }
.am-aviso--chat{ margin:8px 12px 0; }
@media (max-width:440px){ .topo-amigos{ width:36px; height:36px; } }
.cla-cores{ display:flex; flex-wrap:wrap; gap:10px; margin-top:10px; }
.cla-cor{ position:relative; cursor:pointer; }
.cla-cor input{ position:absolute; opacity:0; pointer-events:none; }
.cla-cor .cla-tag{ width:38px; height:38px; font-size:12px; transition:transform .12s, box-shadow .12s; }
.cla-cor:hover .cla-tag{ transform:translateY(-1px); }
.cla-cor input:checked + .cla-tag{ box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--txt); }
.cla-cor input:focus-visible + .cla-tag{ box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--verm); }
#cla-descricao{ width:100%; font:inherit; font-size:15px; line-height:1.5; padding:12px 14px; border:1px solid var(--fio2); border-radius:12px; resize:vertical; min-height:92px; background:#fff; }
#cla-descricao:focus{ outline:none; border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.cla-desc{ margin:10px 0 0 !important; color:var(--txt) !important; font-size:15px; line-height:1.55; max-width:62ch; overflow-wrap:anywhere; }
.cla-cartao{ display:flex; align-items:center; gap:16px; text-decoration:none; color:inherit; }
.cla-nome{ display:flex; flex-direction:column; gap:3px; min-width:0; flex:1; }
.cla-nome b{ font-size:17px; overflow-wrap:anywhere; }
.cla-nome small{ font-size:13.5px; color:var(--dim); }
.cla-ir{ flex:none; font-size:14px; font-weight:700; color:var(--verm); }
.cla-cartao:hover .cla-ir{ text-decoration:underline; }
.vazio-cla{ display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
.vazio-cla b{ font-size:16.5px; }
.vazio-cla p{ margin:0 0 6px; color:var(--dim); }
.segmento{ display:inline-flex; gap:4px; padding:4px; margin-bottom:16px; border-radius:12px; background:var(--cl2); }
.seg-item{ padding:9px 16px; border-radius:9px; font-size:14.5px; font-weight:700; color:var(--dim); text-decoration:none; }
.seg-item[aria-current="true"], .seg-item[aria-selected="true"]{ background:#fff; color:var(--txt); box-shadow:0 1px 3px rgba(0,0,0,.08); }
.fundo-abas{ margin-bottom:14px; }
.fundo-abas .seg-item{ border:0; font:inherit; font-size:14.5px; font-weight:700; padding:9px 18px; cursor:pointer; background:none; }
.fundo-abas .seg-item[aria-selected="true"]{ background:#fff; }
.cores[hidden]{ display:none; }
.grade-local{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:0 14px; }
.grade-local .campo[hidden]{ display:none; }
.pais-sel{ position:relative; }
.pais-sel img{ position:absolute; left:14px; top:50%; transform:translateY(-50%); width:24px; height:18px; border-radius:3px; object-fit:cover; box-shadow:0 0 0 1px rgba(0,0,0,.12); pointer-events:none; }
.pais-sel img:not([hidden]) + select{ padding-left:48px; }
@media (max-width:720px){ .grade-local{ grid-template-columns:1fr; } }
a.seg-item:hover{ color:var(--txt); }

/* página de clãs */
.clas-busca{ display:flex; gap:10px; margin-bottom:18px; }
.busca-campo{ flex:1; display:flex; align-items:center; gap:10px; height:50px; padding:0 16px; border-radius:12px; background:#fff; border:1.5px solid var(--fio2); }
.busca-campo:focus-within{ border-color:var(--txt); }
.busca-campo svg{ width:19px; height:19px; color:var(--fraco); flex:none; }
.busca-campo input{ flex:1; min-width:0; border:0; outline:none; background:none; font:inherit; font-size:15.5px; }
.ordem-campo select{ height:50px; padding:0 14px; border-radius:12px; border:1.5px solid var(--fio2); background:#fff; font:inherit; font-size:14.5px; font-weight:600; }
/* ============================================================ HOME: TOPS E MARCAS */
.sec-tops{ position:relative; overflow:hidden; isolation:isolate; }
.sec-tops::before{ content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(60% 80% at 85% 0%, rgba(224,27,34,.22), transparent 70%), radial-gradient(40% 60% at 0% 100%, rgba(224,27,34,.1), transparent 70%); }
.tops-cab{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px 32px; flex-wrap:wrap; }
.tops-cab .cab-sec{ margin-bottom:0; }
.mais--claro{ color:#FF6B70; margin-top:0; }
.tops-grade{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px; margin-top:16px; }
/* 1.12: faixa dos títulos (quem tem Mito do PvP, Gladiador e Magnata agora) */
.tops-titulos{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px; margin-top:36px; }
@media (max-width:760px){ .tops-titulos{ gap:8px; } .tt{ flex-direction:column; text-align:center; gap:8px; padding:12px 8px; } .tt-txt{ align-items:center; width:100%; }
  .tops-titulos .tt-trofeu{ width:48px; height:48px; } .tt-txt small{ font-size:10px; letter-spacing:.08em; } .tt-quem{ font-size:14px; max-width:100%; } }
.tt{ display:flex; align-items:center; gap:14px; padding:14px 18px; border-radius:16px; border:1px solid rgba(246,196,67,.22);
  background:linear-gradient(100deg, rgba(246,196,67,.12), rgba(255,255,255,.02) 60%); }
.tt[data-titulo="mito"]{ border-color:rgba(224,27,34,.32); background:linear-gradient(100deg, rgba(224,27,34,.16), rgba(255,255,255,.02) 60%); }
.tt[data-titulo="gladiador"]{ border-color:rgba(201,208,216,.25); background:linear-gradient(100deg, rgba(201,208,216,.12), rgba(255,255,255,.02) 60%); }
.tt-trofeu{ width:60px; height:60px; flex:none; object-fit:contain; filter:drop-shadow(0 6px 10px rgba(0,0,0,.45)); }
.tt-txt{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.tt-txt small{ font-size:11.5px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#F6C443; }
.tt[data-titulo="mito"] .tt-txt small{ color:#FF6B70; } .tt[data-titulo="gladiador"] .tt-txt small{ color:#C9D0D8; }
.tt-quem{ font-size:17px; font-weight:800; color:#fff; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
a.tt-quem:hover{ text-decoration:underline; }
.tt-vazio{ color:#8A8A94; font-weight:700; }
.top-card{ display:flex; flex-direction:column; padding:22px; border-radius:18px; background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.02)); border:1px solid rgba(255,255,255,.08); transition:border-color .2s, transform .2s; }
.top-card:hover{ border-color:rgba(255,255,255,.18); transform:translateY(-2px); }
.top-card h3{ display:flex; align-items:center; gap:10px; margin:0 0 16px; font-size:17px; color:#fff; }
.top-ic{ width:36px; height:36px; flex:none; display:block; object-fit:contain; filter:drop-shadow(0 4px 8px rgba(0,0,0,.45)); }
.top-card ol{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; flex:1; }
.top-l{ display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:12px; background:rgba(255,255,255,.035); }
.top-l--1{ background:linear-gradient(90deg, rgba(246,196,67,.16), rgba(255,255,255,.03)); box-shadow:inset 0 0 0 1px rgba(246,196,67,.28); }
.top-pos{ width:22px; flex:none; font-weight:900; color:#8A8A93; font-variant-numeric:tabular-nums; }
.top-l--1 .top-pos{ color:#F6C443; } .top-l--2 .top-pos{ color:#C9CFD8; } .top-l--3 .top-pos{ color:#D58A4E; }
.top-av{ position:relative; overflow:hidden; flex:none; width:32px; height:32px; border-radius:50%; display:grid; place-items:center; background:#26262B; color:#fff; font-family:var(--marca); font-size:14px; }
.top-av img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.top-nick{ flex:1; min-width:0; font-weight:700; color:#fff; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
a.top-nick:hover{ color:#FF6B70; }
.top-l b{ flex:none; font-size:14px; color:#E4E4E7; font-variant-numeric:tabular-nums; }
.top-esq{ height:52px; border-radius:12px; background:linear-gradient(90deg, rgba(255,255,255,.03) 0%, rgba(255,255,255,.08) 50%, rgba(255,255,255,.03) 100%); background-size:200% 100%; animation:brilho-esq 1.4s linear infinite; }
@keyframes brilho-esq{ from{ background-position:200% 0; } to{ background-position:-200% 0; } }
.top-vazio{ padding:18px 12px; border-radius:12px; border:1px dashed rgba(255,255,255,.12); font-size:14px; color:var(--dim-esc); text-align:center; }
.top-card > a{ margin-top:14px; font-size:13px; font-weight:700; color:var(--dim-esc); }
.top-card > a:hover{ color:#fff; }
.marcas-faixa{
  display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:18px 28px; margin-top:20px; padding:20px 24px; border-radius:18px;
  background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); color:#fff; transition:border-color .2s, background .2s;
}
.marcas-faixa:hover{ border-color:rgba(255,255,255,.2); background:rgba(255,255,255,.05); }
.mf-txt{ display:flex; flex-direction:column; gap:3px; }
.mf-txt b{ font-size:16px; }
.mf-txt small{ font-size:13.5px; color:var(--dim-esc); }
.mf-icones{ display:flex; align-items:center; }
.mf-icones{ gap:3px; flex:none; }
.mf-icones .marca-tempo{ width:30px; height:30px; flex:none; filter:drop-shadow(0 2px 4px rgba(0,0,0,.6)); transition:transform .2s; }
.marcas-faixa:hover .mf-icones .marca-tempo{ transform:translateY(-2px); }
.mf-ir{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#FF6B70; white-space:nowrap; }
.mf-ir svg{ width:18px; height:18px; }
@media (max-width:980px){ .tops-grade{ grid-template-columns:1fr; } .marcas-faixa{ grid-template-columns:1fr; } .mf-icones{ flex-wrap:wrap; } }

/* ============================================================ MOVIMENTO */
.topo{ transition:background .25s, box-shadow .25s; }
.topo[data-rolou]{ background:rgba(11,11,12,.97); box-shadow:0 10px 30px -12px rgba(0,0,0,.8); }
.brasas{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.brasas i{ position:absolute; bottom:-10px; width:4px; height:4px; background:#FF7A3C; box-shadow:0 0 8px 2px rgba(255,90,40,.7); opacity:0; animation:brasa 9s linear infinite; }
.brasas i:nth-child(1){ left:58%; animation-delay:0s; } .brasas i:nth-child(2){ left:66%; animation-delay:-1.6s; width:3px; height:3px; }
.brasas i:nth-child(3){ left:74%; animation-delay:-3.1s; } .brasas i:nth-child(4){ left:81%; animation-delay:-4.4s; width:5px; height:5px; }
.brasas i:nth-child(5){ left:88%; animation-delay:-5.8s; width:3px; height:3px; } .brasas i:nth-child(6){ left:94%; animation-delay:-7.2s; }
.brasas i:nth-child(7){ left:62%; animation-delay:-2.4s; width:2px; height:2px; } .brasas i:nth-child(8){ left:70%; animation-delay:-6.5s; width:3px; height:3px; }
@keyframes brasa{ 0%{ transform:translate(0,0); opacity:0; } 10%{ opacity:.9; } 70%{ opacity:.6; } 100%{ transform:translate(-60px,-640px); opacity:0; } }
[data-revelar]{ opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1); }
[data-revelar].visto{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .brasas{ display:none; } [data-revelar]{ opacity:1; transform:none; transition:none; } .top-esq{ animation:none; } }

/* ============================================================ MEMBROS */
.mb-busca{ margin-bottom:8px; }
.mb-titulo{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin:40px 0 16px; }
.mb-titulo h2{ margin:0; font-family:var(--display); font-weight:900; font-size:26px; letter-spacing:-.02em; }
.mb-titulo span{ font-size:14px; color:var(--dim); font-weight:600; }
.mb-grupo{ margin-bottom:22px; }
.mb-sub{ display:inline-flex; align-items:center; gap:8px; margin:0 0 12px; font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.mb-sub::before{ content:""; width:10px; height:10px; border-radius:3px; }
.mb-sub--dev{ color:#5B3FD9; } .mb-sub--dev::before{ background:linear-gradient(135deg, #2F4DFF, #C9A6FF); }
.mb-sub--mod{ color:#14935A; } .mb-sub--mod::before{ background:#3DD68C; }
.mb-grade{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:14px; min-height:40px; }
.mb-grade[aria-busy="true"]{ opacity:.5; }
.mb-grade > .vazio-txt{ grid-column:1 / -1; }
.mb-card{
  position:relative; display:flex; flex-direction:column; overflow:hidden; border-radius:16px; background:#fff; border:1px solid var(--fio);
  color:inherit; transition:transform .18s, box-shadow .18s, border-color .18s; min-width:0;
}
.mb-card:hover{ transform:translateY(-3px); border-color:var(--fio2); box-shadow:0 18px 36px -18px rgba(0,0,0,.35); }
.mb-card:focus-visible{ outline:2px solid var(--verm); outline-offset:3px; }
.mb-faixa{ display:none; }
/* 1.12: cartão igual para todos (sem capa, sem cor por pessoa); a equipe se diferencia só pela etiqueta do cargo */
.mb-ava{
  position:relative; overflow:hidden; width:64px; height:64px; margin:16px 0 0 16px; border-radius:16px; display:grid; place-items:center;
  background:#16161A; color:#fff; font-family:var(--marca); font-size:28px; line-height:1;
  box-shadow:0 0 0 1px var(--fio);
}
.mb-ava img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.mb-corpo{ display:flex; flex-direction:column; gap:6px; padding:12px 16px 14px; min-width:0; flex:1; }
.mb-nome{ display:flex; align-items:center; gap:8px; min-width:0; }
.mb-nome b{ font-size:17px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mb-bandeira{ width:20px; height:14px; border-radius:2px; object-fit:cover; flex:none; box-shadow:0 0 0 1px rgba(0,0,0,.08); }
.mb-cargo{ align-self:flex-start; display:inline-flex; align-items:center; gap:6px; padding:3px 9px 3px 7px; border-radius:999px; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.mb-cargo svg{ width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.mb-cargo.cargo-dev{ color:#fff; background:linear-gradient(110deg, #2F4DFF, #7B5CFF 60%, #A88BFF); }
.mb-cargo.cargo-mod{ color:#0E7A47; background:rgba(34,197,94,.14); box-shadow:inset 0 0 0 1px rgba(20,147,90,.35); }
.mb-titulo-j{ font-size:13.5px; line-height:1.35; color:var(--dim); height:2.7em; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.mb-cargo.cargo-jogador{ color:var(--dim); background:var(--cl); }
.mb-info{ min-height:28px; }
.mb-info{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:2px; }
.mb-marca{ font-size:12.5px; font-weight:700; color:var(--txt); padding:3px 8px 3px 4px; border-radius:8px; background:var(--cl); }
.mb-marca .marca-tempo{ width:20px; height:20px; }
.mb-cla{ width:24px; height:24px; padding:0; font-size:9px; border-radius:7px; }
.mb-cla.cla-tag--foto{ width:24px; }
.mb-pe{ display:flex; justify-content:space-between; gap:8px; margin-top:auto; padding-top:10px; border-top:1px solid var(--fio); font-size:12.5px; color:var(--fraco); font-weight:600; }
@media (max-width:1100px){ .mb-grade{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:820px){ .mb-grade{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width:520px){ .mb-grade{ grid-template-columns:1fr; } }

/* ============================================================ RANKINGS (1.11) */
/* menu lateral com os grupos; à direita, um palco escuro com o pódio e a lista do top 100 */
.rk-layout{ display:grid; grid-template-columns:250px minmax(0,1fr); gap:24px; align-items:start; }
.rk-menu{ position:sticky; top:92px; max-height:calc(100vh - 116px); overflow:auto; padding:10px; border-radius:18px; background:#fff; border:1px solid var(--fio); scrollbar-width:thin; }
.rk-menu-sel{ display:none; }
.rk-mg{ display:flex; flex-direction:column; gap:1px; padding:6px 0; }
.rk-mg + .rk-mg{ border-top:1px solid var(--fio); }
.rk-mg-cab{ display:flex; align-items:center; gap:8px; padding:6px 10px 6px; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--fraco); }
.rk-mg-cab svg{ width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.rk-mi{ text-align:left; padding:7px 10px 7px 33px; border:0; border-radius:9px; background:none; font:inherit; font-size:14px; font-weight:600; color:var(--dim); cursor:pointer; }
.rk-mi:hover{ background:var(--cl); color:var(--txt); }
.rk-mi[aria-current="true"]{ background:var(--txt); color:#fff; }
.rk-quadro{ min-width:0; background:#fff; border:1px solid var(--fio); border-radius:20px; overflow:hidden; }
.rk-palco{ position:relative; isolation:isolate; padding:28px 28px 0; background:#121215; color:#fff; overflow:hidden; }
.rk-palco::before{ content:""; position:absolute; left:50%; top:-120px; width:620px; height:420px; transform:translateX(-50%); background:radial-gradient(closest-side, rgba(224,27,34,.32), transparent); z-index:-1; }
/* 1.12: cada grupo tem a sua cor de brilho e uma arte dos dois lados do pódio */
.rk-palco{ --rk-acc:rgba(224,27,34,.32); }
.rk-palco[data-grupo="economia"]{ --rk-acc:rgba(242,185,43,.30); }
.rk-palco[data-grupo="titulos"]{ --rk-acc:rgba(246,196,67,.30); }
.rk-palco[data-grupo="mineracao"]{ --rk-acc:rgba(60,120,255,.30); }
.rk-palco[data-grupo="habilidades"]{ --rk-acc:rgba(140,90,255,.30); }
.rk-palco[data-grupo="pesca"]{ --rk-acc:rgba(20,170,210,.30); }
.rk-palco[data-grupo="fazendas"]{ --rk-acc:rgba(140,190,40,.28); }
.rk-palco[data-grupo="atividade"]{ --rk-acc:rgba(240,170,80,.26); }
.rk-palco[data-grupo="eventos"]{ --rk-acc:rgba(120,190,60,.26); }
.rk-palco::before{ background:radial-gradient(closest-side, var(--rk-acc), transparent) !important; }
.rk-podio{ position:relative; }
/* no pódio a etiqueta do VIP fica embaixo do nick, para o nick não ser cortado */
.rk-lugar .com-vip{ flex-direction:column; gap:5px; }
.rk-lugar .com-vip .vip-tag{ margin-left:0; }
.rk-fundo{ position:absolute; inset:0; z-index:-1; overflow:hidden; pointer-events:none; }
.rk-fundo img{ position:absolute; height:auto; opacity:.08; transform:translate(-50%, 0) rotate(var(--giro, 0deg)); animation:rkFlutua 9s ease-in-out infinite; filter:saturate(.8); }
@keyframes rkFlutua{ 0%,100%{ translate:0 0; } 50%{ translate:0 -14px; } }
@media (prefers-reduced-motion:reduce){ .rk-fundo img{ animation:none; } }
.rk-trofeu{ width:104px; height:104px; object-fit:contain; display:block; filter:drop-shadow(0 10px 16px rgba(0,0,0,.5)); }
.rk-cab{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:26px; }
.rk-grupo-nome{ display:block; font-size:11.5px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:#FF6B70; margin-bottom:6px; }
.rk-cab h2{ margin:0; font-family:var(--display); font-weight:900; font-size:30px; letter-spacing:-.02em; color:#fff; }
.rk-cab p{ margin:4px 0 0; color:#A6A6B0; font-size:15px; text-align:left; }
.rk-atual{ font-size:12.5px; color:#8A8A94; font-weight:600; }
/* pódio: 2º, 1º, 3º com degraus de alturas diferentes */
.rk-podio{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; align-items:end; min-height:40px; }
.rk-podio:empty{ display:none; }
.rk-podio[aria-busy="true"]{ opacity:.5; }
.rk-lugar{ grid-row:1; position:relative; display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center; min-width:0; }
.rk-lugar--1{ grid-column:2; } .rk-lugar--2{ grid-column:1; } .rk-lugar--3{ grid-column:3; }
.rk-coroa{ color:#F6C443; filter:drop-shadow(0 0 10px rgba(246,196,67,.6)); }
.rk-coroa svg{ width:30px; height:30px; fill:currentColor; display:block; }
.rk-ava{ position:relative; overflow:hidden; width:64px; height:64px; border-radius:18px; display:grid; place-items:center; flex:none;
  background:linear-gradient(135deg, #E01B22, #7A0D12); color:#fff; font-family:var(--marca); font-size:26px; }
.rk-ava img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.rk-lugar .rk-ava{ box-shadow:0 0 0 3px #121215, 0 0 0 5px var(--rk-cor); }
.rk-lugar--1 .rk-ava{ width:84px; height:84px; border-radius:22px; }
.rk-lugar--1{ --rk-cor:#F6C443; } .rk-lugar--2{ --rk-cor:#C9D0D8; } .rk-lugar--3{ --rk-cor:#D58A4E; }
.rk-nick{ font-weight:800; font-size:16px; color:inherit; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
a.rk-nick:hover{ color:var(--verm); }
.rk-lugar .rk-nick{ color:#fff; }
.rk-lugar .rk-valor{ font-size:20px; font-variant-numeric:tabular-nums; color:var(--rk-cor); }
.rk-base{ width:100%; margin-top:6px; border-radius:14px 14px 0 0; display:grid; place-items:start center; padding-top:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.03)); border:1px solid rgba(255,255,255,.08); border-bottom:0; }
.rk-base span{ font-family:var(--display); font-weight:900; font-size:26px; color:var(--rk-cor); }
.rk-lugar--1 .rk-base{ height:110px; background:linear-gradient(180deg, rgba(246,196,67,.28), rgba(246,196,67,.04)); }
.rk-lugar--2 .rk-base{ height:78px; } .rk-lugar--3 .rk-base{ height:58px; }
.rk-tag{ color:var(--verm); font-weight:800; }
.rk-ava--cla{ border-radius:14px; }
.rk-selo{ display:inline-flex; align-items:center; height:22px; padding:0 9px; border-radius:999px; background:linear-gradient(180deg,#F6C443,#C98E0C); color:#3A2600; font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
/* lista do 4º ao 100º */
.rk-lista{ list-style:none; margin:0; padding:8px 20px; display:flex; flex-direction:column; }
.rk-linha{ display:grid; grid-template-columns:40px 36px minmax(0,1fr) minmax(0,160px) auto; align-items:center; gap:12px; padding:9px 8px; border-radius:10px; }
.rk-linha:nth-child(odd){ background:var(--cl); }
.rk-pos{ font-weight:800; color:var(--fraco); font-variant-numeric:tabular-nums; text-align:center; }
.rk-ava.rk-ava--p{ width:36px; height:36px; border-radius:10px; font-size:15px; }
.rk-linha .rk-nick{ font-size:15px; color:var(--txt); }
.rk-barra{ height:6px; border-radius:6px; background:var(--cl2); overflow:hidden; }
.rk-barra i{ display:block; height:100%; border-radius:6px; background:linear-gradient(90deg, #E01B22, #FF6B4A); }
.rk-linha .rk-valor{ font-size:15px; font-variant-numeric:tabular-nums; text-align:right; min-width:70px; }
.rk-vazio{ display:flex; flex-direction:column; align-items:center; gap:8px; padding:30px 20px 10px; text-align:center; color:var(--dim); }
.rk-vazio img{ width:150px; height:auto; }
.rk-vazio p{ margin:0; text-align:center; }
.rk-regra{ margin:0; padding:14px 28px 18px; border-top:1px solid var(--fio); font-size:13px; color:var(--fraco); text-align:left; }
/* títulos atuais */
.rk-titulos{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; padding-bottom:28px; }
.rk-titulos[hidden]{ display:none; }
.rk-titulo{ display:flex; flex-direction:column; align-items:center; gap:10px; padding:24px 16px 20px; border-radius:16px; text-align:center;
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09); }
.rk-titulo-tag{ display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#F6C443; }
.rk-titulo-tag svg{ width:15px; height:15px; fill:currentColor; }
.rk-titulo--mito .rk-titulo-tag{ color:#FF6B70; } .rk-titulo--gladiador .rk-titulo-tag{ color:#C9D0D8; }
.rk-titulo .rk-nick{ color:#fff; }
.rk-titulo small{ font-size:13px; color:#A6A6B0; }
.rk-ava--vazio{ background:rgba(255,255,255,.08); color:#8A8A94; }
.rk-nick--vazio{ color:#8A8A94 !important; }
@media (max-width:980px){
  .rk-layout{ grid-template-columns:1fr; }
  .rk-menu{ position:static; max-height:none; padding:0; border:0; background:none; }
  .rk-menu-lista{ display:none; }
  .rk-menu-sel{ display:block; }
  .rk-menu-sel select{ width:100%; height:46px; padding:0 12px; font:inherit; font-size:15px; font-weight:700; border:1px solid var(--fio2); border-radius:12px; background:#fff; }
}
@media (max-width:720px){
  .rk-palco{ padding:20px 14px 0; }
  .rk-podio{ gap:8px; }
  .rk-ava{ width:48px; height:48px; font-size:20px; }
  .rk-lugar--1 .rk-ava{ width:60px; height:60px; }
  .rk-lugar .rk-valor{ font-size:16px; }
  .rk-titulos{ grid-template-columns:1fr; }
  .rk-lista{ padding:6px 8px; }
  .rk-linha{ grid-template-columns:30px 30px minmax(0,1fr) auto; gap:8px; }
  .rk-barra{ display:none; }
  .rk-ava.rk-ava--p{ width:30px; height:30px; font-size:13px; }
}

/* ============================================================ MARCAS */
.mc-resumo{ display:flex; align-items:center; justify-content:space-between; gap:12px 20px; flex-wrap:wrap; margin-bottom:20px; }
.mc-resumo b{ font-size:15px; }
/* 1.11: trilha das 5 fases e as Marcas agrupadas por fase */
.mc-trilha{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; align-items:center; gap:6px; counter-reset:fase; }
.mc-trilha li{ counter-increment:fase; display:inline-flex; align-items:center; gap:8px; padding:6px 12px 6px 6px; border-radius:999px; background:#fff; border:1px solid var(--fio); font-size:13.5px; font-weight:700; }
.mc-trilha li::before{ content:counter(fase); width:22px; height:22px; border-radius:50%; display:grid; place-items:center; font-size:11.5px; color:#fff; background:var(--mc-cor); }
.mc-trilha li + li{ position:relative; margin-left:14px; }
.mc-trilha li + li::after{ content:""; position:absolute; left:-17px; top:50%; width:14px; height:2px; background:var(--fio2); }
.mc-fases{ display:flex; flex-direction:column; gap:16px; min-height:120px; }
.mc-fases[aria-busy="true"]{ opacity:.5; }
.mc-fase{ display:grid; grid-template-columns:230px minmax(0,1fr); gap:16px; align-items:stretch; }
.mc-fase-cab{ position:relative; overflow:hidden; display:flex; flex-direction:column; gap:4px; padding:20px; border-radius:18px; background:#141417; color:#fff; isolation:isolate; }
.mc-fase-cab::before{ content:""; position:absolute; inset:auto -40px -60px auto; width:180px; height:180px; border-radius:50%; background:var(--mc-cor); opacity:.22; filter:blur(30px); z-index:-1; }
.mc-fase-cab small{ font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--mc-cor); }
.mc-fase-cab h3{ margin:0; font-family:var(--display); font-weight:900; font-size:24px; letter-spacing:-.02em; }
.mc-fase-mat{ font-size:13px; font-weight:700; color:#C9C9D1; }
.mc-fase-cab p{ margin:6px 0 0; font-size:14px; color:#9A9AA4; text-align:left; }
.mc-fase-horas{ margin-top:auto; padding-top:12px; font-size:13px; font-weight:800; color:#fff; font-variant-numeric:tabular-nums; }
.mc-grade{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; }
.mc-cartao{
  position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:2px;
  padding:22px 16px 16px; border-radius:18px; background:#fff; border:1px solid var(--fio); overflow:hidden; isolation:isolate;
}
.mc-cartao::before{ content:""; position:absolute; left:50%; top:-60px; width:220px; height:160px; transform:translateX(-50%); border-radius:50%; background:radial-gradient(closest-side, var(--mc-cor), transparent); opacity:.18; z-index:-1; transition:opacity .2s; }
.mc-cartao:hover::before{ opacity:.32; }
.mc-cartao--t1{ --mc-cor:#B07A45; } .mc-cartao--t2{ --mc-cor:#9AA3AE; } .mc-cartao--t3{ --mc-cor:#E0A526; }
.mc-cartao--t4{ --mc-cor:#D11A21; } .mc-cartao--t5{ --mc-cor:#B8892A; }
.mc-icone{ display:block; margin-bottom:8px; }
.mc-icone .marca-tempo{ width:84px; height:84px; filter:drop-shadow(0 8px 14px rgba(0,0,0,.18)); transition:transform .25s cubic-bezier(.2,.8,.2,1); }
.mc-cartao:hover .mc-icone .marca-tempo{ transform:translateY(-3px) scale(1.06); }
.mc-num{ font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--fraco); }
.mc-nome{ font-size:17px; line-height:1.2; }
.mc-horas{ font-size:13px; color:var(--dim); }
.mc-qtd{ width:100%; margin-top:12px; padding-top:12px; border-top:1px solid var(--cl2); display:grid; grid-template-columns:auto auto minmax(0,1fr); align-items:baseline; gap:6px; text-align:left; }
.mc-qtd b{ font-size:18px; font-variant-numeric:tabular-nums; }
.mc-qtd small{ font-size:12.5px; color:var(--dim); font-weight:600; }
.mc-barra{ align-self:center; height:6px; border-radius:6px; background:var(--cl2); overflow:hidden; margin-left:8px; display:block; }
.mc-barra i{ display:block; height:100%; border-radius:6px; background:var(--mc-cor); }
@media (max-width:980px){ .mc-fase{ grid-template-columns:1fr; } .mc-grade{ grid-template-columns:repeat(3, minmax(0,1fr)); } .mc-trilha li + li{ margin-left:0; } .mc-trilha li + li::after{ display:none; } }
@media (max-width:720px){
  .mc-grade{ grid-template-columns:1fr; }
  .mc-cartao{ flex-direction:row; text-align:left; flex-wrap:wrap; column-gap:12px; }
  .mc-icone .marca-tempo{ width:56px; height:56px; }
}
.cla-criar{
  display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) auto; align-items:center; gap:20px 28px;
  padding:24px 26px; margin-bottom:28px; border-radius:18px; color:#fff;
  background:radial-gradient(120% 140% at 0% 0%, rgba(224,27,34,.35) 0%, transparent 55%), #121214;
  border:1px solid rgba(255,255,255,.06);
}
.cla-criar .rotulo{ color:#FF6B70; }
.cla-criar h3{ margin:8px 0 0; font-size:20px; line-height:1.25; letter-spacing:-.01em; }
/* 1.12: na faixa escura, o botão de contorno fica claro (antes sumia, preto no preto) */
.cla-criar .btn--linha{ color:#fff; border-color:rgba(255,255,255,.4); background:rgba(255,255,255,.04); }
.cla-criar .btn--linha:hover{ color:#fff; border-color:#fff; background:rgba(255,255,255,.1); }
.cla-passos{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; }
.cla-passos li{ display:flex; align-items:center; gap:10px; font-size:13.5px; line-height:1.35; color:#D4D4D8; }
.cla-passos b{ flex:none; width:28px; height:28px; border-radius:8px; display:grid; place-items:center; font-size:13px; background:rgba(255,255,255,.08); color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.12); }
@media (max-width:980px){ .cla-criar{ grid-template-columns:1fr; } .cla-passos{ grid-template-columns:1fr; } .cla-criar .btn{ justify-self:start; } }
.clas-lista{ display:flex; flex-direction:column; gap:8px; min-height:120px; }
.clas-lista[aria-busy="true"]{ opacity:.5; }
.cla-linha{ display:flex; align-items:center; gap:18px; padding:14px 18px; border-radius:14px; background:#fff; border:1px solid var(--fio); text-decoration:none; color:inherit; transition:border-color .15s, transform .15s; }
.cla-linha:hover{ border-color:var(--txt); transform:translateY(-1px); }
.cla-num{ flex:none; width:96px; display:flex; flex-direction:column; align-items:flex-end; }
.cla-num b{ font-family:var(--display); font-weight:900; font-size:18px; }
.cla-num small{ font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--fraco); }
.vazio-txt{ margin:0; padding:36px 4px; color:var(--dim); font-size:16px; }
.paginacao{ display:flex; flex-wrap:wrap; justify-content:center; gap:6px; margin-top:18px; }
.paginacao:empty{ display:none; }
.pag-bt, .den-pagina{ min-width:40px; height:40px; padding:0 10px; border-radius:10px; border:1px solid var(--fio2); background:#fff; color:var(--txt); font:inherit; font-weight:700; line-height:1;
  cursor:pointer; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; font-variant-numeric:tabular-nums; }
.pag-bt:hover, .den-pagina:hover{ border-color:var(--preto); }
.den-pagina[aria-current="page"]{ background:var(--preto); border-color:var(--preto); color:#fff; }
.pag-bt[aria-current="page"]{ background:var(--preto); border-color:var(--preto); color:#fff; }
.voltar{ display:inline-flex; margin-bottom:16px; }
.cla-cab{ display:block; }
.cla-cab[data-cor="vermelho"]{ --cc:#C8161D; } .cla-cab[data-cor="laranja"]{ --cc:#E2660F; } .cla-cab[data-cor="dourado"]{ --cc:#B98A0B; }
.cla-cab[data-cor="verde"]{ --cc:#1E9E55; } .cla-cab[data-cor="ciano"]{ --cc:#0E95A8; } .cla-cab[data-cor="azul"]{ --cc:#2F55E0; }
.cla-cab[data-cor="roxo"]{ --cc:#7446E0; } .cla-cab[data-cor="rosa"]{ --cc:#D9367F; } .cla-cab[data-cor="cinza"]{ --cc:#5B5F68; }
.cla-tag--g{ width:84px; height:84px; font-size:24px; border-radius:14px; }
/* emblema do clã em miniatura (no lugar da tag) */
.cla-tag--foto{ position:relative; overflow:hidden; color:transparent !important; padding:0 !important; aspect-ratio:1; min-width:0 !important; }
.cla-tag--foto img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
/* na lista de clãs, foto e tag com a mesma altura (48 px); a foto quadrada + margem ocupa a largura da tag (64 px) */
.cla-linha .cla-tag{ width:48px; height:48px; font-size:15px; border-radius:12px; }
.emblema-linha{ display:flex; gap:20px; align-items:flex-start; }
.emblema-linha .cla-tag--g{ width:84px; height:84px; flex:none; }
@media (max-width:560px){ .emblema-linha{ flex-direction:column; } }
.cla-cab-txt{ flex:1; min-width:200px; }
.cla-cab-txt h2{ margin:0 0 4px; font-family:var(--display); font-weight:900; font-size:28px; letter-spacing:-.02em; overflow-wrap:anywhere; }
.cla-cab-txt p{ margin:0; color:var(--dim); }
.cla-nums{ display:flex; gap:8px; }
.cla-membros h3{ margin:0 0 12px; }
.cla-cab-corpo .cla-tag--g{ height:96px; width:96px; font-size:24px; border-radius:18px; }
.cla-cab-corpo .cla-tag--foto{ width:96px; }
/* 1.10: tamanho do emblema escolhido pelo líder, editor do clã na própria página e criar clã na lista */
.cla-cab[data-emb="p"] .cla-cab-corpo .cla-tag--g{ height:72px; width:72px; font-size:19px; border-radius:14px; }
.cla-cab[data-emb="p"] .cla-cab-corpo .cla-tag--foto{ width:72px; }
.cla-cab[data-emb="g"] .cla-cab-corpo .cla-tag--g{ height:128px; width:128px; font-size:30px; border-radius:22px; }
.cla-cab[data-emb="g"] .cla-cab-corpo .cla-tag--foto{ width:128px; }
.cla-cab[data-emb="g"] .cla-cab-corpo{ margin-top:-64px; }
.cla-cab{ position:relative; }
.cla-bt-editar{ position:absolute; top:14px; right:14px; z-index:2; box-shadow:0 8px 22px -8px rgba(0,0,0,.55); }
.cla-bt-editar[hidden]{ display:none; }
.cla-editor{ margin:0 0 22px; padding:20px; border-radius:20px; background:#141417; color:#fff; box-shadow:0 0 0 1px rgba(224,27,34,.35), 0 24px 50px -24px rgba(0,0,0,.6); }
.cla-editor[hidden]{ display:none; }
.cla-editor-cab{ display:flex; align-items:flex-end; justify-content:space-between; gap:14px; flex-wrap:wrap; margin:0 0 16px; }
.cla-editor-cab h2{ margin:2px 0 0; font-family:var(--display); font-size:24px; color:#fff; }
.cla-editor-cab .rotulo{ color:#FF6A6F; }
.cla-editor-cab .btn--linha{ color:#fff; border-color:rgba(255,255,255,.3); }
.cla-editor .cartao{ color:var(--txt); }
.cla-editor .cartao + .cartao{ margin-top:14px; }
.cla-tams{ margin:0 0 6px; }
.cla-ir-editar{ margin-top:16px; }
.clas-titulo{ margin:30px 0 14px; font-family:var(--display); font-size:22px; letter-spacing:-.01em; }
.janela-caixa--cc{ width:min(560px, 100%); }
.cc-janela h3{ margin-top:0; }
.membro{ display:flex; align-items:center; gap:12px; padding:10px 8px; border-radius:10px; text-decoration:none; color:inherit; }
a.membro:hover{ background:var(--cl); }
.membro + .membro{ border-top:1px solid var(--fio); }
.membro-ini{ width:34px; height:34px; border-radius:9px; display:grid; place-items:center; background:var(--cl2); font-weight:800; }
.membro b{ flex:1; font-size:15px; }
.cargo{ font-style:normal; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; padding:4px 9px; border-radius:99px; background:var(--cl2); color:var(--dim); }
.cargo--lider{ background:var(--verm-suave); color:var(--verm-cl); }

/* página "abra o launcher" */
/* ============================================================ VERIFICAÇÃO DO LAUNCHER */
.vl{ position:relative; overflow:hidden; background:#0B0B0C; padding-block:64px 56px; min-height:calc(100vh - 66px); display:flex; flex-direction:column; justify-content:center; gap:40px; }
.vl-fundo{ position:absolute; inset:0; pointer-events:none; }
.vl-fundo::before{
  content:""; position:absolute; inset:0; opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:44px 44px; mask-image:radial-gradient(ellipse 70% 60% at 65% 45%, #000 0%, transparent 75%);
}
.vl-fundo i{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.55; animation:vl-deriva 14s ease-in-out infinite alternate; }
.vl-fundo i:nth-child(1){ width:520px; height:520px; right:4%; top:6%; background:rgba(224,27,34,.45); }
.vl-fundo i:nth-child(2){ width:360px; height:360px; left:-6%; bottom:-10%; background:rgba(224,27,34,.18); animation-delay:-5s; }
.vl-fundo i:nth-child(3){ width:300px; height:300px; right:28%; bottom:-14%; background:rgba(255,140,40,.16); animation-delay:-9s; }
.vl[data-estado="pronto"] .vl-fundo i:nth-child(1){ background:rgba(61,220,132,.28); }
@keyframes vl-deriva{ from{ transform:translate(0,0) scale(1); } to{ transform:translate(-40px,30px) scale(1.12); } }
.vl-grid{ position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,460px); gap:48px; align-items:center; }
.vl-txt h1{ margin:14px 0 12px; font-family:var(--display); font-weight:900; font-size:clamp(34px, 4.6vw, 56px); line-height:1.02; letter-spacing:-.03em; color:#fff; }

.vl-lede{ margin:0; max-width:56ch; font-size:17px; line-height:1.6; color:var(--dim-esc); }
.vl-cartao{
  display:flex; align-items:center; gap:24px; margin-top:28px; padding:22px 24px; border-radius:20px; max-width:600px;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)); border:1px solid rgba(255,255,255,.09);
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
}
.vl-anel{ position:relative; flex:none; width:84px; height:84px; }
.vl-anel svg{ width:100%; height:100%; transform:rotate(-90deg); }
.vl-anel circle{ fill:none; stroke-width:5; }
.vl-trilho{ stroke:rgba(255,255,255,.08); }
.vl-giro{ stroke:var(--verm); stroke-linecap:round; stroke-dasharray:60 170; transform-origin:32px 32px; animation:vl-gira 1.1s linear infinite; transition:stroke .3s, stroke-dasharray .5s; }
.vl[data-estado="fechado"] .vl-giro{ stroke:#F5A524; animation-duration:2.4s; }
.vl[data-estado="conta"] .vl-giro{ stroke:#7C8CFF; stroke-dasharray:120 170; animation-duration:1.8s; }
.vl[data-estado="pronto"] .vl-giro{ stroke:#3DDC84; stroke-dasharray:170 0; animation:none; }
@keyframes vl-gira{ to{ transform:rotate(360deg); } }
#vl-icone{ position:absolute; inset:0; display:grid; place-items:center; }
#vl-icone::before{ content:""; width:30px; height:30px; background:#fff; opacity:.9;
  -webkit-mask:var(--vl-ic) center/contain no-repeat; mask:var(--vl-ic) center/contain no-repeat;
  --vl-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/svg%3E"); }
.vl[data-estado="pronto"] #vl-icone::before{ background:#3DDC84; opacity:1;
  --vl-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E"); animation:vl-pop .45s cubic-bezier(.2,1.6,.4,1); }
@keyframes vl-pop{ from{ transform:scale(.3); opacity:0; } to{ transform:none; opacity:1; } }
.vl-passos{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; min-width:0; flex:1; }
.vl-passo{ display:flex; align-items:center; gap:12px; min-width:0; }
.vl-passo div{ display:flex; flex-direction:column; gap:1px; min-width:0; }
.vl-passo b{ font-size:15px; color:#fff; }
.vl-passo span[data-texto]{ font-size:13.5px; color:var(--dim-esc); overflow-wrap:anywhere; }
.vl-marca{ position:relative; flex:none; width:22px; height:22px; border-radius:50%; border:2px solid rgba(255,255,255,.18); display:grid; place-items:center; transition:background .25s, border-color .25s; }
.vl-marca i{ width:10px; height:6px; border-left:2.4px solid #0B0B0C; border-bottom:2.4px solid #0B0B0C; transform:rotate(-45deg) translate(1px,-1px) scale(0); transition:transform .3s cubic-bezier(.2,1.6,.4,1); }
.vl-passo[data-estado="ok"] .vl-marca{ background:#3DDC84; border-color:#3DDC84; }
.vl-passo[data-estado="ok"] .vl-marca i{ transform:rotate(-45deg) translate(1px,-1px) scale(1); }
.vl-passo[data-estado="busca"] .vl-marca, .vl-passo[data-estado="espera"] .vl-marca{ border-color:rgba(255,255,255,.15); border-top-color:#fff; animation:vl-gira .8s linear infinite; }
.vl-passo[data-estado="erro"] .vl-marca, .vl-passo[data-estado="aviso"] .vl-marca{ border-color:#F5A524; background:rgba(245,165,36,.15); }
.vl-passo[data-estado="erro"] .vl-marca::after, .vl-passo[data-estado="aviso"] .vl-marca::after{ content:"!"; position:absolute; font-size:12px; font-weight:900; color:#F5A524; }
.vl-passo[data-estado="parado"]{ opacity:.5; }
.vl-acoes{ display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.vl-acoes .btn svg{ width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.vl-abrir{ box-shadow:0 12px 34px -10px rgba(224,27,34,.9); animation:vl-chama 2.4s ease-in-out infinite; }
@keyframes vl-chama{ 0%,100%{ box-shadow:0 12px 34px -10px rgba(224,27,34,.9); } 50%{ box-shadow:0 12px 44px -6px rgba(224,27,34,1); } }
.vl-dica{ margin:14px 0 0; max-width:56ch; font-size:14px; line-height:1.55; color:var(--dim-esc); }
.vl-arte{ position:relative; height:520px; display:flex; align-items:flex-end; justify-content:center; }
.vl-brilho{ position:absolute; left:50%; bottom:6%; width:78%; aspect-ratio:1; transform:translateX(-50%); border-radius:50%; background:radial-gradient(closest-side, rgba(255,120,40,.45), transparent 70%); filter:blur(10px); transition:background .6s; }
.vl[data-estado="pronto"] .vl-brilho{ background:radial-gradient(closest-side, rgba(255,60,60,.6), transparent 70%); }
.vl-brutus{ position:absolute; bottom:0; left:50%; width:100%; max-width:460px; height:auto; transform:translateX(-50%); transition:opacity .5s, transform .6s cubic-bezier(.2,1.2,.3,1); filter:drop-shadow(0 30px 40px rgba(0,0,0,.6)); }
.vl-brutus--espera{ animation:vl-respira 4s ease-in-out infinite; }
.vl-brutus--livre{ opacity:0; transform:translateX(-50%) scale(.94); }
.vl[data-estado="pronto"] .vl-brutus--espera{ opacity:0; }
.vl[data-estado="pronto"] .vl-brutus--livre{ opacity:1; transform:translateX(-50%) scale(1); }
@keyframes vl-respira{ 0%,100%{ transform:translateX(-50%) translateY(0); } 50%{ transform:translateX(-50%) translateY(-6px); } }
.vl-novo{
  position:relative; display:flex; align-items:center; gap:16px; padding:18px 22px; border-radius:16px; color:#fff;
  background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.09); transition:border-color .15s, background .15s, transform .15s;
}
.vl-novo:hover{ border-color:rgba(255,255,255,.25); background:rgba(255,255,255,.06); transform:translateY(-1px); }
.vl-novo:focus-visible{ outline:2px solid #fff; outline-offset:3px; }
.vl-novo-ic{ flex:none; width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:rgba(224,27,34,.18); color:#FF6B70; }
.vl-novo-ic svg, .vl-seta{ width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.vl-novo > span:nth-child(2){ display:flex; flex-direction:column; gap:2px; flex:1; min-width:0; }
.vl-novo b{ font-size:16px; }
.vl-novo small{ font-size:14px; color:var(--dim-esc); }
.vl-seta{ flex:none; color:var(--dim-esc); transition:transform .15s; }
.vl-novo:hover .vl-seta{ transform:translateX(4px); color:#fff; }
@media (prefers-reduced-motion:reduce){ .vl-fundo i, .vl-giro, .vl-brutus--espera, .vl-abrir, .vl-passo .vl-marca{ animation:none !important; } }
@media (max-width:980px){
  .vl{ min-height:0; padding-block:40px; }
  .vl-grid{ grid-template-columns:1fr; gap:8px; }
  .vl-arte{ order:-1; height:300px; }
  .vl-brutus{ max-width:290px; }
}
@media (max-width:520px){
  .vl-cartao{ flex-direction:column; align-items:flex-start; padding:18px; }
  .vl-anel{ width:64px; height:64px; }
  .vl-acoes .btn{ width:100%; }
}
.abrir-grid{ display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:56px; align-items:center; }
.abrir-passos{ list-style:none; margin:28px 0; padding:0; display:flex; flex-direction:column; gap:12px; }
.abrir-passos li{ display:flex; align-items:center; gap:16px; padding:16px 18px; border-radius:14px; background:var(--cl); }
.abrir-passos .n{ flex:none; width:36px; height:36px; border-radius:10px; display:grid; place-items:center; background:var(--verm); color:#fff; font-family:var(--display); font-weight:900; }
.abrir-passos div{ display:flex; flex-direction:column; gap:2px; }
.abrir-passos span:not(.n){ font-size:14px; color:var(--dim); }
.abrir-brutus{ width:100%; height:auto; }
.perfil-aviso{ padding-block:40px 120px; }
.perfil-aviso p{ margin:0; font-size:17px; color:var(--dim); }

@media (max-width:900px){
  .painel-grid{ grid-template-columns:minmax(0,1fr); gap:20px; padding-top:20px; }
  .painel-trilho{ position:static; min-width:0; max-width:100%; scrollbar-width:none; flex-direction:row; overflow-x:auto; gap:6px; padding-bottom:4px; }
  .trilho-item, .trilho-item-g{ width:auto; flex:none; padding:10px 14px; }
  .trilho-item[aria-selected="true"], .trilho-item-g[aria-pressed="true"]{ box-shadow:inset 0 -3px 0 var(--verm), var(--sombra); }
  .perfil-geral{ grid-template-columns:1fr; }
  .capa-in{ flex-wrap:wrap; }
  .conq-grade{ grid-template-columns:1fr; }
  .abrir-grid{ grid-template-columns:1fr; }
  .abrir-brutus{ max-width:240px; }
}
@media (max-width:640px){
  .ava{ width:76px; height:76px; border-radius:18px; }
  .ava span{ font-size:36px; }
  .capa-in{ gap:18px; padding-block:32px 28px; }
  .capa-ver{ width:100%; justify-content:center; }
  .grade-breve, .grade-redes{ grid-template-columns:1fr; }
  .stats{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .cla-linha{ flex-wrap:wrap; gap:10px 14px; }
  .cla-linha .cla-nome{ flex-basis:calc(100% - 80px); }
  .cla-num{ width:auto; flex:1; align-items:flex-start; }
  .clas-busca{ flex-direction:column; }
  .ordem-campo select{ width:100%; }
  .cartao{ padding:22px 18px; }
}

/* ============================================================ 404 */
.erro-grid{ display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:56px; align-items:center; }
.erro-num{ margin:6px 0 14px; font-family:var(--display); font-weight:900; font-size:clamp(96px, 16vw, 168px); line-height:.82; letter-spacing:-.06em; color:var(--cl2); }
.erro-brutus{ width:100%; height:auto; transform:rotate(-4deg); }

/* ============================================================ AJUSTES GERAIS */
.prog .rotulo{ color:#FF4D55; }
.elo-btn{ background:none; border:0; padding:0; font:inherit; font-size:14.5px; cursor:pointer; }
.mais--p{ margin-top:18px; font-size:12px; }
.acao .aviso{ margin-top:14px; }
.so-equipe{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:600; color:var(--dim); }
.so-equipe svg{ width:16px; height:16px; }
.trilha-sep{ width:16px; height:16px; color:var(--fraco); transform:rotate(-90deg); }
.cat-desc{ margin:-6px 0 20px; color:var(--dim); font-size:15.5px; max-width:70ch; }
.forum-main{ min-width:0; }
.forum-main .aviso{ margin:0 0 18px; }
.forum-lado{ position:sticky; top:92px; margin-top:38px; transition:margin-top .15s; }
.forum-titulo h2{ line-height:36px; }
.regras-lista{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.regras-lista li{ display:flex; gap:10px; align-items:flex-start; font-size:14.5px; color:#2E2E33; line-height:1.45; }
.regras-lista svg{ flex:none; width:18px; height:18px; margin-top:1px; color:var(--ok); }
.post-corpo h2{ margin:14px 0 18px; font-family:var(--display); font-weight:900; font-size:clamp(26px, 3vw, 34px); line-height:1.08; letter-spacing:-.02em; }
.resposta-trava p{ display:flex; align-items:center; gap:10px; }
.resposta-trava p svg{ width:18px; height:18px; flex:none; }
.nota-regra{ flex-wrap:nowrap; align-items:flex-start; gap:14px; }
.nota-regra p{ margin:0; flex:1; min-width:0; }
.nr-ic{ width:22px; height:22px; flex:none; color:var(--verm-cl); margin-top:1px; }
.cat{ color:inherit; }
.lt-pe{ margin:auto 0 0; padding:18px 14px 12px; }
.cat .ic{ display:block; }

/* ============================================================ RODAPÉ */
.rodape{ position:relative; padding-block:0 32px; overflow:hidden; border-top:1px solid rgba(255,255,255,.06); }
.rodape::before{
  content:""; position:absolute; left:50%; top:-260px; width:1100px; height:520px; transform:translateX(-50%); pointer-events:none;
  background:radial-gradient(closest-side, rgba(224,27,34,.16), transparent 70%);
}
.rodape .wrap{ position:relative; }
.rod-chamada[hidden]{ display:none; }
.rod-chamada{
  display:flex; align-items:center; justify-content:space-between; gap:20px 32px; flex-wrap:wrap;
  margin-top:56px; padding:26px 30px; border-radius:18px;
  background:linear-gradient(120deg, rgba(224,27,34,.16) 0%, rgba(255,255,255,.035) 55%, rgba(255,255,255,.02) 100%);
  border:1px solid rgba(255,255,255,.08);
}
.rod-chamada h3{ margin:10px 0 0; font-size:24px; line-height:1.2; letter-spacing:-.01em; color:#fff; }
.rod-chamada-acoes{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.rod-link-claro{ font-size:14px; font-weight:700; color:var(--dim-esc); }
.rod-link-claro:hover{ color:#fff; }
.rod-status{ display:inline-flex; align-items:center; gap:8px; font-size:12.5px; font-weight:700; letter-spacing:.04em; color:var(--dim-esc); }
.rod-status i{ width:8px; height:8px; border-radius:50%; background:#71717A; flex:none; }
.rod-status[data-estado="no-ar"] i{ background:#3DDC84; box-shadow:0 0 0 0 rgba(61,220,132,.6); animation:pulso-status 2s infinite; }
.rod-status[data-estado="no-ar"] b{ color:#BDF5D3; }
.rod-status[data-estado="fora"] i{ background:#F5A524; }
@keyframes pulso-status{ 0%{ box-shadow:0 0 0 0 rgba(61,220,132,.55); } 70%{ box-shadow:0 0 0 8px rgba(61,220,132,0); } 100%{ box-shadow:0 0 0 0 rgba(61,220,132,0); } }
@media (prefers-reduced-motion:reduce){ .rod-status i{ animation:none !important; } }
.rod-grid{ display:grid; grid-template-columns:minmax(0,1.6fr) repeat(4, minmax(0,1fr)); gap:40px; margin-top:56px; }
.logo--rod{ height:30px; }
.rod-marca p{ margin:16px 0 18px; font-size:14.5px; line-height:1.6; color:var(--dim-esc); max-width:320px; }
.rod-redes{ margin-left:-8px; }
.rod-col h4{ margin:4px 0 16px; font-size:11.5px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--fraco-esc); }
.rod-col ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.rod-col a{ position:relative; font-size:14.5px; color:#C9C9D0; transition:color .15s, padding .15s; }
.rod-col a:hover{ color:#fff; }
.rod-col a::before{ content:""; position:absolute; left:-12px; top:50%; width:5px; height:5px; margin-top:-2.5px; border-radius:1px; background:var(--verm); opacity:0; transform:translateX(-4px); transition:opacity .15s, transform .15s; }
.rod-col a:hover::before{ opacity:1; transform:none; }
.rod-col a:focus-visible, .rod-link-claro:focus-visible, .rod-subir:focus-visible{ outline:2px solid #fff; outline-offset:3px; border-radius:3px; }
.rod-fim{
  margin-top:56px; padding-top:22px; border-top:1px solid rgba(255,255,255,.07);
  display:flex; align-items:center; flex-wrap:wrap; gap:10px 24px; font-size:13px; color:var(--fraco-esc);
}
.rod-aviso{ flex:1; min-width:240px; }
.rod-subir{
  display:inline-flex; align-items:center; gap:6px; padding:7px 12px; border-radius:9px; cursor:pointer;
  border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.03); color:var(--dim-esc); font:inherit; font-size:13px; font-weight:700;
  transition:color .15s, border-color .15s;
}
.rod-subir:hover{ color:#fff; border-color:rgba(255,255,255,.3); }
.rod-subir svg{ width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }

/* ============================================================ RESPONSIVO */
/* topo: com 6 itens no menu e 6 redes, as redes saem do topo antes de faltar espaço (ficam no rodapé) */
@media (max-width:1480px){ .nav a svg{ display:none; } }
@media (max-width:1300px){ .topo .sep{ display:none; } }
@media (max-width:1100px){ .redes-menu{ display:none; } }
@media (max-width:1180px){ .nav a{ padding:7px 9px; font-size:13.5px; } .topo-in{ gap:12px; } }
@media (max-width:1320px){
  .pt-arte.recorte img{ height:64%; }
  .pt-arte.recorte img:nth-child(2){ height:80%; margin-inline:-28px; }
}
@media (max-width:1180px){
  .pt-arte.recorte{ display:none; }
}
@media (max-width:1100px){
  .topo-in{ gap:16px; }
  .topo .topo-redes, .topo .sep{ display:none; }
  .grade-vip{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .builder{ grid-template-columns:160px minmax(0,1fr); }
  .builder .lado{ grid-column:1 / -1; }
  .info-vip{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .rod-grid{ grid-template-columns:repeat(4, minmax(0,1fr)); }
  .rod-marca{ grid-column:1 / -1; }
}
@media (max-width:1100px){
}
@media (max-width:980px){
  .topo-in{ height:auto; padding-block:12px; flex-wrap:wrap; row-gap:10px; }
  .nav{ order:5; width:100%; overflow-x:auto; scrollbar-width:none; }
  .nav::-webkit-scrollbar{ display:none; }
  .hero-arte{ width:100%; height:440px; bottom:auto; }
  .hero-arte img{ object-position:50% 30%; }
  .hero-arte::after{ background:linear-gradient(180deg, rgba(11,11,12,.3) 0%, rgba(11,11,12,.1) 30%, rgba(11,11,12,.55) 62%, var(--preto) 100%); }
  .hero-in{ min-height:0; padding-block:300px 44px; max-width:none; }
  .fatos{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .fatos > div{ padding:22px 14px 26px; }
  .fatos > div:nth-child(3){ border-left:0; }
  .fatos > div:nth-child(n+3){ border-top:1px solid rgba(255,255,255,.1); }
  .pt-arte{ width:100%; opacity:.45; }
  .pt-arte::after{ background:linear-gradient(90deg, var(--preto) 0%, rgba(11,11,12,.6) 100%); }
  .pt-arte.recorte{ display:none; }
  .forum-lado{ position:static; margin-top:0; }
  .mosaico{ grid-template-columns:1fr 1fr; grid-template-rows:300px 200px 200px; }
  .mosaico .tile:first-child{ grid-column:1 / -1; grid-row:auto; }
  .com-grid, .forum{ grid-template-columns:1fr; }
  .passos-grid{ grid-template-columns:1fr; gap:28px; }
  .brutus{ flex-direction:row; align-items:center; }
  .brutus img{ width:180px; flex:none; }
  .fala::before{ top:50%; left:-9px; margin:-9px 0 0; }
  .slide[data-ativo="1"]{ grid-template-columns:1fr; min-height:0; }
  .slide-arte{ aspect-ratio:16/9; }
  .fase summary{ grid-template-columns:70px minmax(0,1fr) 20px; row-gap:12px; }
  .f-cont{ grid-column:2; grid-row:2; }
  .estado{ grid-column:2; grid-row:3; }
  .f-seta{ grid-column:3; grid-row:1; }
  .f-lista{ padding-left:22px; grid-template-columns:1fr; }

  .erro-grid{ grid-template-columns:1fr; }
  .erro-brutus{ width:200px; }
  .grupos, .mods{ grid-template-columns:1fr; }
  .eventos{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width:720px){
  .sec{ padding-block:72px; }
  .wrap{ padding-inline:18px; }
  .topo-criar{ display:none; }
  .topo-in{ gap:10px; padding-block:10px; }
  .marca svg{ width:26px; height:26px; }
  .topo-dir{ gap:8px; }
  .topo-dir .btn--p{ height:36px; padding:0 12px; letter-spacing:.1em; }
  .nav a{ padding:7px 10px; flex:1 0 auto; justify-content:center; }
  .nav a svg{ display:none; }
  .topo-entrar{ height:36px; padding:0 12px; border:1px solid rgba(255,255,255,.18); border-radius:10px; color:#fff; }
  .marcos{ display:none; }
  .hero-arte{ height:340px; }
  .hero-in{ padding-block:230px 40px; gap:20px; }
  .faixa-loja .wrap{ flex-wrap:wrap; gap:10px 14px; }
  .fl-txt{ flex-basis:100%; order:2; font-size:15px; }
  .fl-ir{ order:3; }
  .hero-lede{ font-size:17px; }
  .acoes .btn--g{ flex:1 1 auto; }
  .prog{ padding:26px 22px 22px; }
  .marcos li{ font-size:9.5px; letter-spacing:.04em; }
  .mosaico{ grid-template-columns:1fr; grid-template-rows:auto; }
  .mosaico .tile{ height:220px; }
  .mosaico .tile:first-child{ height:260px; }
  .tile .leg code{ display:none; }
  .topico{ grid-template-columns:40px minmax(0,1fr); }
  .topico .t-cat{ display:none; }
  .cat-f{ grid-template-columns:44px minmax(0,1fr) 60px; }
  .cf-ult{ display:none; }
  .novas a{ grid-template-columns:minmax(0,1fr) 16px; gap:4px 12px; }
  .novas time{ grid-column:1; }
  .n-tag{ display:none; }
  .novas .n-seta{ grid-column:2; grid-row:1 / span 2; }
  .pilares, .grade-cat, .grade-itens, .grade-vip, .pacote, .info-vip, .eventos{ grid-template-columns:1fr; }
  .builder{ grid-template-columns:1fr; }
  .brutus{ flex-direction:column; align-items:stretch; }
  .brutus img{ width:220px; margin-inline:auto; }
  .fala::before{ top:-9px; left:50%; margin:0 0 0 -9px; }
  .passo{ grid-template-columns:1fr; gap:14px; padding:22px; }
  .guarda-brutus{ height:112px; right:12px; bottom:calc(100% - 1px); }
  .slide-txt{ padding:26px 22px; }
  .carro-cont{ display:none; }
  .ponto-btn{ width:16px; }
  .ponto-btn[aria-selected="true"]{ width:28px; }
  .slide-txt h3{ font-size:28px; }
  .rod-grid{ grid-template-columns:1fr 1fr; gap:32px 20px; }
  .rod-chamada{ padding:22px 20px; margin-top:40px; }
  .rod-chamada h3{ font-size:20px; }
  .rod-chamada-acoes, .rod-chamada-acoes .btn{ width:100%; }
  .rod-chamada-acoes{ justify-content:center; }
  .logo{ height:22px; }
  .logo--rod{ height:26px; }
  .pilula-car{ right:12px; top:calc(70px + env(safe-area-inset-top, 0px)); padding:9px 12px; }
}

/* home: a notícia mais recente com banner ganha destaque no topo da lista do fórum */
.lt-destaque{ position:relative; display:block; margin:0 0 6px; border-radius:12px; overflow:hidden; aspect-ratio:21/9; background:var(--cl); }
.lt-destaque img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .4s cubic-bezier(.2,.8,.2,1); }
.lt-destaque:hover img{ transform:scale(1.03); }
.lt-destaque::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.82) 100%); }
.lt-destaque-txt{ position:absolute; left:16px; right:16px; bottom:14px; z-index:1; display:flex; flex-direction:column; gap:4px; color:#fff; }
.lt-destaque-tag{ align-self:flex-start; padding:3px 9px; border-radius:999px; background:var(--verm); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.lt-destaque-txt b{ font-family:var(--marca); font-size:20px; line-height:1.2; text-shadow:0 2px 12px rgba(0,0,0,.5); }
.lt-destaque-txt small{ font-size:12.5px; opacity:.85; }
@media (max-width:560px){ .lt-destaque{ aspect-ratio:16/9; } .lt-destaque-txt b{ font-size:17px; } }

/* reações das publicações */
.reac{ display:flex; flex-wrap:wrap; gap:6px; transition:opacity .15s; }
.reac--ocupada{ opacity:.6; pointer-events:none; }
.reac-b{ display:inline-flex; align-items:center; gap:5px; height:34px; padding:0 11px; border:1px solid var(--fio); border-radius:999px; background:#fff; font:inherit; font-size:13px; color:var(--dim); cursor:pointer; transition:transform .12s, border-color .12s, background .12s; }
.reac-b:hover:not(:disabled){ border-color:var(--fio2); transform:translateY(-1px); }
.reac-b:hover:not(:disabled) .reac-e{ transform:scale(1.2); }
.reac-b:disabled{ cursor:default; }
.reac-b--zero{ padding:0 9px; }
.reac-b--zero .reac-e{ filter:grayscale(.35); opacity:.75; }
.reac-b--minha{ border-color:var(--verm); background:var(--verm-suave); color:var(--verm-cl); }
.reac-b--minha .reac-e{ filter:none; opacity:1; }
.reac-e{ font-size:17px; line-height:1; transition:transform .15s; }
.reac-b b{ font-variant-numeric:tabular-nums; font-weight:700; }

.reac-urso{ width:20px; height:20px; object-fit:contain; }
.fr-texto--puro{ white-space:pre-line; }
/* compartilhar */
.comp{ position:relative; }
.comp-b{ display:inline-flex; align-items:center; gap:6px; }
.comp-b svg{ width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
.comp-menu{ position:absolute; bottom:calc(100% + 8px); left:0; z-index:20; min-width:210px; padding:6px; background:#fff; border:1px solid var(--fio); border-radius:14px; box-shadow:0 22px 50px -20px rgba(0,0,0,.45); }
.comp-item{ display:flex; align-items:center; gap:10px; width:100%; padding:10px 12px; border:0; border-radius:10px; background:none; font:inherit; font-size:14.5px; font-weight:600; color:var(--txt); text-align:left; cursor:pointer; text-decoration:none; }
.comp-item:hover{ background:var(--cl); }
.comp-item i{ width:10px; height:10px; border-radius:50%; flex:none; }

/* ---------- notícias: o texto (fórum, prévia e editor) */
.noticia{ font-size:16.5px; line-height:1.7; color:#2E2E33; overflow-wrap:anywhere; }
.noticia > *:first-child{ margin-top:0; }
.noticia p{ margin:0 0 14px; text-align:justify; hyphens:auto; }
.noticia h1, .noticia h2, .noticia h3{ font-family:var(--marca); color:var(--txt); line-height:1.2; margin:26px 0 10px; text-align:left; }
.noticia h1{ font-size:28px; } .noticia h2{ font-size:22px; } .noticia h3{ font-size:18px; }
.noticia ul, .noticia ol{ margin:0 0 14px; padding-left:26px; }
.noticia li{ margin:4px 0; }
.noticia li::marker{ color:var(--verm); font-weight:700; }
.noticia .enq-ops{ padding-left:0; margin:0; } .noticia .enq-ops li{ margin:0; } .noticia .enq-ops li::marker{ content:none; }
.noticia blockquote{ margin:18px 0; padding:12px 18px; border-left:4px solid var(--verm); background:var(--cl); border-radius:0 10px 10px 0; color:var(--dim); font-style:italic; }
.noticia blockquote p:last-child{ margin-bottom:0; }
.noticia hr{ border:0; height:2px; margin:26px 0; background:linear-gradient(90deg, transparent, var(--fio2) 15%, var(--verm) 50%, var(--fio2) 85%, transparent); }
.noticia a{ color:var(--verm-cl); text-decoration:underline; text-underline-offset:2px; }
.noticia img{ display:block; max-width:100%; height:auto; border-radius:12px; margin:8px auto; }
.noticia p[style*="left"] img{ margin-left:0; } .noticia p[style*="right"] img{ margin-right:0; }
.noticia strong{ color:var(--txt); }
.nt-capa{ display:block; width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:16px; margin:0 0 18px; background:var(--cl); }
.nt-etq{ display:inline-flex; align-items:center; gap:6px; padding:3px 10px; border-radius:999px; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; background:var(--verm-suave); color:var(--verm-cl); }
.nt-etq[data-etq="evento"]{ background:#FFF4E0; color:#A45A00; }
.nt-etq[data-etq="atualizacao"]{ background:#E7F1FD; color:#1458A8; }
.nt-etq[data-etq="manutencao"]{ background:#EEF0F3; color:#4A5260; }
.nt-etq[data-etq="promocao"]{ background:#EAF7EC; color:#22743A; }
.nt-etq[data-etq="aviso"]{ background:#F2ECFE; color:#5B33C7; }

/* vídeo do YouTube: só carrega o player no clique */
.nt-yt{ position:relative; display:block; width:100%; aspect-ratio:16/9; margin:18px 0; border:0; padding:0; border-radius:14px; overflow:hidden; background:#000; cursor:pointer; }
.nt-yt img{ width:100%; height:100%; object-fit:cover; margin:0; border-radius:0; opacity:.85; transition:opacity .2s; }
.nt-yt:hover img{ opacity:1; }
.nt-yt::after{ content:""; position:absolute; left:50%; top:50%; width:68px; height:48px; transform:translate(-50%,-50%); border-radius:12px; background:var(--verm) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/26px no-repeat; box-shadow:0 10px 30px -8px rgba(0,0,0,.6); }
.nt-yt iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.nt-yt--on::after{ display:none; }

/* enquete */
.enq{ margin:20px 0; padding:18px 18px 14px; border:1px solid var(--fio); border-radius:16px; background:#fff; box-shadow:0 10px 30px -22px rgba(0,0,0,.35); }
.enq-rot{ display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--verm-cl); margin:0 0 6px; }
.enq-rot svg{ width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; }
.enq h4{ margin:0 0 4px; font-size:18px; line-height:1.3; color:var(--txt); text-align:left; }
.enq-sub{ display:block; font-size:13px; color:var(--fraco); margin-bottom:12px; }
.enq-ops{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.enq-op{ position:relative; display:flex; align-items:center; gap:10px; min-height:46px; padding:10px 14px; border:1px solid var(--fio); border-radius:12px; overflow:hidden; cursor:pointer; transition:border-color .15s; }
.enq-op:hover{ border-color:var(--fio2); }
.enq-op input{ accent-color:var(--verm); width:18px; height:18px; margin:0; flex:none; position:relative; }
.enq-op span{ position:relative; flex:1; font-weight:600; color:var(--txt); }
.enq-op b{ position:relative; font-variant-numeric:tabular-nums; font-size:14px; color:var(--dim); }
.enq-barra{ position:absolute; inset:0 auto 0 0; width:0; background:var(--cl); transition:width .5s cubic-bezier(.2,.8,.2,1); }
.enq--res .enq-op{ cursor:default; }
.enq--res .enq-op input{ display:none; }
.enq-op--meu{ border-color:var(--verm); }
.enq-op--meu .enq-barra{ background:var(--verm-suave); }
.enq-op--meu span::after{ content:" ✓"; color:var(--verm); }
.enq-pe{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:12px; font-size:13.5px; color:var(--fraco); }
.enq-pe .btn{ padding:9px 16px; font-size:14px; }
.enq-pe .aviso-enq{ color:var(--verm-cl); font-weight:600; flex-basis:100%; }
.enq-pe .aviso-enq:empty{ display:none; }

/* ---------- moderação: lista de notícias */
.nt-topo{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; flex-wrap:wrap; }
.nt-lista{ padding:6px; }
.nt-item{ display:grid; grid-template-columns:128px minmax(0,1fr) auto; gap:16px; align-items:center; padding:12px; border-radius:12px; }
.nt-item + .nt-item{ border-top:1px solid var(--cl2); }
.nt-mini{ width:128px; aspect-ratio:16/9; border-radius:10px; object-fit:cover; background:var(--cl) center/40px no-repeat; display:grid; place-items:center; color:var(--fio2); }
.nt-mini svg{ width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.8; }
.nt-item b{ display:block; font-size:16px; color:var(--txt); line-height:1.3; margin:4px 0 2px; }
.nt-item small{ display:block; color:var(--fraco); font-size:13px; }
.nt-item-acoes{ display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.nt-item-acoes .btn{ padding:8px 14px; font-size:13.5px; }
.nt-fixo{ margin-left:6px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--fraco); }

/* ---------- moderação: editor */
.nt-form .campo{ margin-bottom:16px; }
.nt-banner{ position:relative; aspect-ratio:16/9; border-radius:16px; overflow:hidden; background:repeating-linear-gradient(135deg, var(--cl) 0 14px, #EFEFF1 14px 28px); border:2px dashed var(--fio2); display:grid; place-items:center; margin-bottom:18px; transition:border-color .15s; }
.nt-banner--cheio{ border-style:solid; border-color:transparent; }
.nt-banner:not(.nt-banner--cheio){ aspect-ratio:auto; min-height:220px; }
.nt-voltar{ color:var(--dim) !important; font-weight:700; }
.nt-voltar:hover{ color:var(--txt) !important; }
.nt-banner--arrastando{ border-color:var(--verm); }
.nt-banner img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.nt-banner-vazio{ text-align:center; padding:20px; color:var(--dim); }
.nt-banner-vazio svg{ width:40px; height:40px; fill:none; stroke:var(--fio2); stroke-width:1.6; margin-bottom:8px; }
.nt-banner-vazio b{ display:block; color:var(--txt); font-size:17px; }
.nt-banner-vazio small{ display:block; font-size:13px; margin-top:4px; }
.nt-banner-acoes{ position:absolute; right:12px; bottom:12px; display:flex; gap:8px; }
.nt-banner-acoes .btn{ padding:9px 14px; font-size:13.5px; background:rgba(255,255,255,.94); }
.nt-banner:not(.nt-banner--cheio) .nt-banner-acoes{ position:static; justify-content:center; margin-top:12px; }
.nt-banner-carregando{ position:absolute; inset:0; display:grid; place-items:center; background:rgba(255,255,255,.75); font-weight:700; color:var(--dim); }
.nt-titulo{ width:100%; font-family:var(--marca); font-size:26px; line-height:1.2; padding:10px 14px; border:1px solid var(--fio); border-radius:12px; }
.nt-cont{ display:block; text-align:right; font-size:12px; color:var(--fraco); margin-top:4px; }
.nt-opcoes{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:16px; }
.nt-opcoes .campo{ margin:0; }
.nt-ed{ border:1px solid var(--fio); border-radius:16px; background:#fff; }
.nt-barra{ position:sticky; top:calc(var(--topo-alt, 68px) + 6px); z-index:5; display:flex; flex-wrap:wrap; align-items:center; gap:4px; padding:8px; border-bottom:1px solid var(--fio); background:rgba(250,250,251,.97); backdrop-filter:blur(6px); border-radius:16px 16px 0 0; }
.nt-sep{ width:1px; height:24px; background:var(--fio); margin:0 4px; }
.nt-b{ position:relative; display:inline-grid; place-items:center; min-width:36px; height:36px; padding:0 8px; border:0; border-radius:8px; background:transparent; color:#34343A; font:inherit; font-size:15px; cursor:pointer; transition:background .12s, color .12s; }
.nt-b:hover{ background:var(--cl2); color:var(--txt); }
.nt-b[aria-pressed="true"]{ background:var(--txt); color:#fff; }
.nt-b svg{ width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.nt-b--txt{ font-weight:700; }
.nt-bloco{ height:36px; padding:0 30px 0 10px; border:1px solid var(--fio); border-radius:8px; font:inherit; font-size:14px; background:#fff; }
.nt-cores{ position:absolute; top:100%; left:0; z-index:6; display:grid; grid-template-columns:repeat(6, 26px); gap:6px; padding:10px; margin-top:6px; background:#fff; border:1px solid var(--fio); border-radius:12px; box-shadow:0 18px 40px -18px rgba(0,0,0,.4); }
.nt-cores button{ width:26px; height:26px; border-radius:50%; border:2px solid #fff; box-shadow:0 0 0 1px var(--fio2); cursor:pointer; }
.nt-cor-cx{ position:relative; }
.nt-cor-gota{ position:absolute; left:8px; right:8px; bottom:5px; height:3px; border-radius:2px; background:var(--verm); }
.nt-texto{ min-height:420px; padding:22px 24px; outline:none; cursor:text; }
.nt-texto:empty::before{ content:attr(data-vazio); color:var(--fraco); pointer-events:none; }
.nt-texto img{ cursor:default; }
.nt-texto img.nt-sel{ outline:3px solid var(--verm); outline-offset:2px; }
.nt-bloco-esp{ position:relative; margin:18px 0; user-select:none; }
.nt-bloco-esp .enq, .nt-bloco-esp .nt-yt{ margin:0; pointer-events:none; }
.nt-bloco-tirar{ position:absolute; top:-10px; right:-10px; z-index:2; width:30px; height:30px; border-radius:50%; border:0; background:var(--txt); color:#fff; font-size:18px; line-height:1; cursor:pointer; box-shadow:0 6px 16px -6px rgba(0,0,0,.5); }
.nt-bloco-tirar:hover{ background:var(--verm); }
.nt-pe{ display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:10px 16px; border-top:1px solid var(--fio); font-size:13px; color:var(--fraco); }
.nt-pe button{ border:0; background:none; color:var(--verm-cl); font:inherit; font-weight:600; cursor:pointer; padding:0; }
.nt-acoes{ display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-top:16px; }
.nt-previa{ border:1px solid var(--fio); border-radius:16px; background:#fff; padding:24px; }
.nt-previa h1.nt-previa-tit{ font-family:var(--marca); font-size:32px; line-height:1.15; margin:10px 0 18px; }
.enq-ed-ops{ display:grid; gap:8px; margin-bottom:8px; }
.enq-ed-op{ display:flex; gap:8px; }
.enq-ed-op input{ flex:1; }
.enq-ed-op button{ width:42px; border:1px solid var(--fio); border-radius:10px; background:#fff; cursor:pointer; font-size:18px; color:var(--dim); }
.enq-ed-op button:hover{ color:var(--verm); border-color:var(--verm); }
.enq-ed-linha{ display:flex; gap:16px; flex-wrap:wrap; align-items:center; }
@media (max-width:720px){
  .nt-item{ grid-template-columns:96px minmax(0,1fr); }
  .nt-mini{ width:96px; }
  .nt-item-acoes{ grid-column:1 / -1; justify-content:flex-start; }
  .nt-texto{ padding:16px; min-height:320px; }
  .nt-titulo{ font-size:21px; }
  .nt-barra{ top:calc(var(--topo-alt, 60px) + 4px); }
  .noticia{ font-size:16px; }
  .noticia h1{ font-size:24px; }
}

/* fórum: seta de voltar e o editor dos tópicos */
.fr-voltar{ display:inline-flex; align-items:center; gap:8px; margin:0 0 12px; font-size:14px; font-weight:700; color:var(--dim); }
.fr-voltar svg{ width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; transition:transform .15s; }
.fr-voltar:hover{ color:var(--txt); }
.fr-voltar:hover svg{ transform:translateX(-3px); }
.fr-ed-rotulo{ display:block; font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); margin:4px 0 6px; }
.fr-ed-barra{ display:flex; flex-wrap:wrap; align-items:center; gap:2px; padding:6px; border:1px solid var(--fio2); border-bottom:0; border-radius:10px 10px 0 0; background:var(--cl); position:sticky; top:calc(var(--topo-alt, 64px) + 6px); z-index:2; }
.fr-ed-bt{ width:36px; height:34px; display:grid; place-items:center; border:0; background:none; border-radius:8px; color:var(--dim); cursor:pointer; }
.fr-ed-bt svg{ width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.fr-ed-bt:hover{ background:#fff; color:var(--txt); }
.fr-ed-bt:focus-visible{ outline:2px solid var(--verm); outline-offset:1px; }
.fr-ed-bt:disabled{ opacity:.45; cursor:wait; }
.fr-ed-sep{ width:1px; height:20px; background:var(--fio2); margin:0 4px; }
.fr-editor{ min-height:220px; max-height:70vh; overflow:auto; padding:14px 16px; border:1px solid var(--fio2); border-radius:0 0 10px 10px; background:#fff; font-size:15.5px; line-height:1.6; color:var(--txt); margin-bottom:10px; text-align:left; }
.fr-editor:focus{ outline:none; border-color:var(--verm); box-shadow:0 0 0 3px rgba(224,27,34,.14); }
.fr-editor:empty::before, .fr-editor > p:only-child:has(br:only-child)::before{ content:attr(data-dica); color:var(--fraco); pointer-events:none; }
.fr-editor p{ margin:0 0 10px; }
.fr-editor h2{ font-family:var(--display); font-size:21px; margin:16px 0 8px; }
.fr-editor h3{ font-size:17px; margin:14px 0 6px; }
.fr-editor ul, .fr-editor ol{ margin:0 0 10px; padding-left:24px; }
.fr-editor blockquote{ margin:0 0 10px; padding:6px 14px; border-left:3px solid var(--verm); color:var(--dim); background:var(--cl); border-radius:0 8px 8px 0; }
.fr-editor a{ color:var(--verm); text-decoration:underline; }
.fr-editor img{ max-width:100%; height:auto; border-radius:10px; display:block; }
.fr-form--enviando .fr-editor{ opacity:.7; }

.atalho-equipe{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 14px; padding:10px 12px 10px 16px;
  border-radius:12px; background:#111112; color:#fff; }
.atalho-rot{ font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:#FF5A5F; }
.atalho-equipe .btn--preto{ background:#fff; color:#111; }
/* ===== 1.8.1: ferramentas do admin, equipe, ajustes, entregas, clãs da moderação e painel ===== */
.perfil-admin{ margin-top:22px; }
.adm{ display:flex; flex-direction:column; gap:4px; padding:20px 22px; }
.adm-topo{ display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-bottom:6px; }
.adm-topo h3{ margin:2px 0 0; font-size:19px; }
.adm-topo .rotulo{ color:var(--verm); }
.adm-status{ margin:4px 0 6px; padding:10px 12px; border-radius:10px; background:rgba(34,197,94,.1); color:#0E7A47; font-size:14px; font-weight:600; text-align:left !important; }
.adm-status--erro{ background:rgba(224,27,34,.08); color:var(--verm); }
.adm-sec{ border-top:1px solid var(--fio); }
.adm-sec > summary{ list-style:none; cursor:pointer; padding:13px 0; display:flex; align-items:center; justify-content:space-between; font-size:15px; }
.adm-sec > summary::-webkit-details-marker{ display:none; }
.adm-sec > summary::after{ content:""; width:9px; height:9px; border-right:2px solid var(--fraco); border-bottom:2px solid var(--fraco); transform:rotate(45deg); transition:transform .15s; margin-right:4px; }
.adm-sec[open] > summary::after{ transform:rotate(-135deg); }
.adm-sec > .nota{ margin:0 0 12px; text-align:left !important; }
.adm-linha{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-bottom:12px; }
.adm-linha select, .adm-linha input[type="text"], .adm-linha input[type="number"]{ height:40px; border:1px solid var(--fio2); border-radius:10px; padding:0 12px; font:inherit; font-size:14.5px; background:#fff; min-width:0; }
.adm-linha input[type="text"]{ flex:1 1 220px; }
.adm-linha input[type="number"]{ width:120px; }
.adm-dias{ display:inline-flex; align-items:center; gap:8px; font-size:14px; color:var(--dim); }
.adm-dias input{ width:90px !important; }
.adm-vip{ font-weight:700; flex:1; }
.adm-vazio{ margin:0 0 12px; color:var(--dim); font-size:14px; }
.adm-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.adm-chip{ border:1px solid var(--fio2); background:#fff; color:var(--dim); font:inherit; font-size:13.5px; font-weight:600; padding:7px 12px; border-radius:999px; cursor:pointer; }
.adm-chip:hover{ border-color:var(--txt); color:var(--txt); }
.adm-chip--tem{ background:var(--preto); border-color:var(--preto); color:#fff; }
.adm-chip--tem::before{ content:"✓ "; }
.adm-chip:disabled{ opacity:.5; cursor:wait; }
.ficha-admin{ margin-top:16px; }

.eq-grupo + .eq-grupo{ margin-top:22px; }
.eq-grupo h4{ margin:0 0 6px; font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.eq-item{ display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:14px; align-items:center; padding:12px 0; border-bottom:1px solid var(--fio); }
.eq-item:last-child{ border-bottom:0; }
.eq-ava{ width:46px; height:46px; border-radius:12px; font-size:20px; position:relative; overflow:hidden; }
.eq-ava img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.eq-cab{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.eq-cab a{ font-weight:800; font-size:15.5px; }
.eq-cab a:hover{ color:var(--verm); }
.eq-funcao{ margin:4px 0 0; font-size:14px; color:var(--txt); text-align:left !important; }
.eq-funcao--vazia{ color:var(--fraco); font-style:italic; }
.eq-form{ display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.eq-form input{ flex:1 1 240px; height:38px; border:1px solid var(--fio2); border-radius:10px; padding:0 12px; font:inherit; font-size:14px; }

.aj-item{ padding:4px 0 16px; border-bottom:1px solid var(--fio); }
.aj-item:last-child{ border-bottom:0; }
.aj-item .chave{ border-bottom:0; padding:12px 0 6px; }
.aj-expl{ margin:0; font-size:14px; color:var(--dim); line-height:1.55; max-width:72ch; }
.aj-jogo{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:10px; }
.aj-tipo{ font-size:12px; font-weight:800; letter-spacing:.06em; color:var(--fraco); font-family:var(--mono, monospace); }
.aj-fila{ font-size:12.5px; color:var(--dim); font-weight:600; }
.aj-alerta{ margin:10px 0 0; padding:10px 12px; border-radius:10px; background:rgba(224,27,34,.07); color:#9B1015; font-size:13.5px; line-height:1.5; }

.ent-abas{ margin-bottom:12px; }
.ent-txt{ min-width:0; }
.ent-txt b{ font-size:14.5px; }
.ent-txt small a{ font-weight:700; color:var(--txt); }
.ent-txt small a:hover{ color:var(--verm); }
.ent-motivo{ color:var(--verm) !important; }

.cla-mod-barra{ grid-template-columns:minmax(0,1fr) auto auto !important; }
.cla-mod-barra form input{ width:100%; height:42px; border:1px solid var(--fio2); border-radius:10px; padding:0 12px; font:inherit; }
.cla-novo{ margin-top:14px; }
.cla-novo h4{ margin:0 0 4px; }
.cla-novo-campos{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; }
.cla-fila{ margin-top:14px; }
.cla-fila h4{ margin:0 0 4px; font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
#cla-mod-lista{ margin-top:14px; }
#cla-mod{ margin-top:16px; }
.cla-ed .ficha-form{ margin-bottom:12px; }

.resumo-grade{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; }
.rs-cartao{ display:flex; flex-direction:column; gap:10px; }
.rs-largo{ grid-column:1 / -1; }
.em-grade{ display:grid; grid-template-columns:repeat(auto-fill, minmax(190px, 1fr)); gap:8px; width:100%; align-self:stretch; }
.em-op{ display:flex; align-items:center; gap:8px; min-height:48px; padding:6px 10px; border:1px solid var(--fio); border-radius:10px; background:var(--cl); color:inherit; font:inherit; font-size:.86rem; text-align:left; cursor:pointer; }
.em-op:hover{ border-color:var(--fio2); }
.em-op[aria-pressed="true"]{ border-color:var(--verm); box-shadow:inset 0 0 0 1px var(--verm); background:var(--verm-suave); }
.em-op:disabled{ opacity:.6; cursor:wait; }
.em-ic{ width:34px; height:34px; flex:none; }
.em-ic svg{ width:100%; height:100%; }
.em-nome{ line-height:1.2; }
@media (max-width:640px){ .em-grade{ grid-template-columns:1fr 1fr; } .em-op{ font-size:.8rem; padding:6px 8px; } .em-ic{ width:28px; height:28px; } }
.rs-cab{ display:flex; align-items:center; gap:10px; }
.rs-cab svg{ width:20px; height:20px; color:var(--verm); flex:none; }
.rs-cab h3{ margin:0; }
.rs-corpo{ display:flex; flex-direction:column; gap:10px; align-items:flex-start; }
.rs-corpo[aria-busy="true"]{ min-height:40px; opacity:.5; }
.rs-corpo .nota{ margin:0; text-align:left !important; }
.rs-vazio{ margin:0; color:var(--dim); font-size:14.5px; }
.rs-numero{ margin:0; font-family:var(--display); font-weight:900; font-size:34px; letter-spacing:-.02em; line-height:1; }
.rs-vip{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; }
.rs-vip b{ font-family:var(--display); font-weight:900; font-size:22px; }
.rs-vip span{ color:var(--dim); font-size:14px; }
.rs-link{ font-weight:700; font-size:14px; }
.rs-linha{ width:100%; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--cl2); }
.rs-linha:last-of-type{ border-bottom:0; }
.rs-linha div{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.rs-linha small{ color:var(--dim); font-size:12.5px; }
.rs-sit{ flex:none; font-size:12px; font-weight:800; padding:4px 9px; border-radius:999px; }
.rs-sit--ok{ background:rgba(34,197,94,.12); color:#0E7A47; }
.rs-sit--nao{ background:rgba(224,27,34,.1); color:var(--verm); }
.rs-sit--fila{ background:var(--cl2); color:var(--dim); }

/* Membros: a moldura do distintivo fica do tamanho da foto (o cartão é coluna e esticava a moldura) */
.mb-card > .ava-moldura{ align-self:flex-start; margin:16px 0 0 16px; }
.mb-card > .ava-moldura > .mb-ava{ margin:0; }
.mb-card .badge-foto{ right:-14%; bottom:-14%; width:52%; height:52%; max-width:36px; max-height:36px; }
.mb-funcao{ font-size:13px; color:var(--txt); line-height:1.45; }

@media (max-width:760px){
  .resumo-grade{ grid-template-columns:1fr; }
  .cla-novo-campos{ grid-template-columns:1fr; }
  .cla-mod-barra{ grid-template-columns:1fr auto !important; }
  .cla-mod-barra form{ grid-column:1 / -1; }
  .eq-item{ grid-template-columns:auto minmax(0,1fr); }
  .eq-item > .btn{ grid-column:2; justify-self:start; }
}

@media (prefers-reduced-motion:reduce){
  *, *::before, *::after{ animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}

/* 1.17: amigos — abas "Amigos" e "Jogadores do servidor", pedido de mensagem e a faixa da conversa */
.am-abas{ display:flex; gap:4px; padding:0 20px 10px; }
.am-abas[hidden]{ display:none; }
.am-aba{ flex:1 1 0; min-width:0; white-space:nowrap; padding:0 12px; display:inline-flex; align-items:center; justify-content:center; gap:6px; font:inherit; font-size:13px; font-weight:700; height:36px; border:1px solid var(--fio2); border-radius:10px; background:#fff; color:var(--dim); cursor:pointer; }
.am-aba[aria-selected="true"]{ background:var(--preto); border-color:var(--preto); color:#fff; }
.am-aba-n{ min-width:20px; height:20px; padding:0 6px; border-radius:999px; background:var(--verm); color:#fff; font-size:11.5px; font-style:normal; font-weight:800; display:inline-grid; place-items:center; }
.am-aba-n[hidden]{ display:none; }
.am-servidor{ display:flex; flex-direction:column; min-height:0; flex:1; border-top:1px solid var(--fio); }
.am-servidor[hidden]{ display:none; }
.am-filtro{ margin:12px 20px 0; font:inherit; font-size:15px; height:40px; padding:0 12px; border:1px solid var(--fio2); border-radius:10px; }
.am-srv-corpo{ overflow-y:auto; flex:1; padding:4px 10px 18px; }
.am-previa{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-style:italic; }
.am-faixa{ display:flex; flex-direction:column; gap:8px; padding:10px 14px; border-bottom:1px solid var(--fio); background:#FFF7F7; }
.am-faixa[hidden]{ display:none; }
.am-faixa p{ margin:0; font-size:13.5px; line-height:1.45; color:var(--txt); }
.am-faixa .am-acoes{ flex-wrap:wrap; align-items:center; }
.am-faixa small{ font-size:12.5px; color:var(--dim); }

/* Olho para mostrar a senha (js/ver-senha.js) */
.senha-caixa{ position:relative; display:block; width:100%; }
.senha-caixa input{ width:100%; box-sizing:border-box; padding-right:48px; }
.ver-senha{ position:absolute; top:50%; right:6px; transform:translateY(-50%); width:36px; height:36px; display:grid; place-items:center; padding:0; border:0; border-radius:8px; background:transparent; color:var(--dim); cursor:pointer; }
.ver-senha svg{ width:18px; height:18px; }
.ver-senha:hover{ color:var(--txt); background:rgba(0,0,0,.05); }
.conta .ver-senha{ color:#8C8C93; }
.conta .ver-senha:hover{ color:#fff; background:rgba(255,255,255,.08); }
.ver-senha:focus-visible{ outline:2px solid var(--verm); outline-offset:1px; }

/* Respostas prontas da equipe (js/respostas-prontas.js) */
.rp-painel{ margin:0 0 14px; border:1px solid var(--fio2); border-radius:12px; background:#fafafa; }
.rp-resumo{ display:flex; align-items:baseline; gap:10px; padding:12px 14px; cursor:pointer; list-style:none; }
.rp-resumo::-webkit-details-marker{ display:none; }
.rp-resumo b{ font-size:14px; }
.rp-resumo small{ font-size:12px; color:var(--dim); text-transform:uppercase; letter-spacing:.08em; }
.rp-lista{ max-height:420px; overflow:auto; padding:0 10px 10px; }
/* 28/10 (noite): respostas em pastas. Categoria > títulos > mensagem. */
.rp-cat{ border-top:1px solid var(--fio); }
.rp-cat:first-child{ border-top:0; }
.rp-cat-cab{ display:flex; align-items:center; gap:10px; width:100%; padding:11px 6px; background:none; border:0; cursor:pointer; text-align:left; font:inherit; color:inherit; }
.rp-cat-cab b{ font-size:14px; flex:1; }
.rp-cat-cab small{ font-size:12px; color:var(--dim); font-weight:700; min-width:20px; text-align:right; }
.rp-seta{ display:inline-block; width:14px; font-size:18px; line-height:1; color:var(--dim); transition:transform .15s; }
.rp-cat--aberta .rp-seta{ transform:rotate(90deg); color:var(--verm); }
.rp-chip{ font-style:normal; font-size:10.5px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--verm); border:1px solid rgba(224,27,34,.35); border-radius:999px; padding:2px 8px; }
.rp-titulos{ padding:0 0 10px 24px; }
.rp-titulo{ display:block; width:100%; padding:8px 10px; margin:0 0 4px; background:#fff; border:1px solid var(--fio); border-radius:8px; cursor:pointer; text-align:left; font:inherit; font-size:13.5px; font-weight:600; color:inherit; }
.rp-titulo:hover, .rp-titulo--lido{ border-color:rgba(224,27,34,.45); }
.rp-titulo--lido{ box-shadow:inset 3px 0 0 var(--verm); }
.rp-msg{ display:flex; gap:12px; align-items:flex-start; padding:10px 12px 12px; margin:-2px 0 8px; background:#fff; border:1px solid var(--fio); border-top:0; border-radius:0 0 8px 8px; }
.rp-msg-txt{ flex:1; min-width:0; margin:0; font-size:13px; line-height:1.5; color:var(--dim); white-space:pre-wrap; }
.rp-acoes{ display:flex; flex-direction:column; gap:6px; flex:0 0 auto; }
.rp-vazio{ font-size:13px; color:var(--dim); margin:4px 2px; }
@media (max-width:640px){ .rp-msg{ flex-direction:column; } .rp-acoes{ flex-direction:row; } .rp-titulos{ padding-left:8px; } }

/* 28/10 (noite): conta não verificada não abre ticket */
.tk-nao-verificada{ margin:0 0 16px; padding:14px 16px; border:1px solid rgba(224,27,34,.35); border-left:4px solid var(--verm); border-radius:10px; background:#fff5f5; }
.tk-nao-verificada b{ display:block; font-size:15px; margin-bottom:4px; }
.tk-nao-verificada p{ margin:0; font-size:13.5px; line-height:1.5; color:var(--dim); }
.tk-nao-verificada a{ color:var(--verm); font-weight:700; }
.tk-travado .tk-campos, .tk-travado .campo, .tk-travado .acoes-form{ opacity:.45; pointer-events:none; }
