/* =====================================================================
   SALÃO DOS PATRONOS (10/10, SQL 1380) — o selo PATRONO (chat, rankings,
   Loja) e a aba Patronos dos Rankings com o botão ADORAR. Só CSS, sem arte
   nova: o metal de cada nível (Bronze, Prata, Ouro) é um degradê.
   ===================================================================== */
.col-patrono-selo{display:inline-flex;align-items:center;flex:0 0 auto;margin-left:5px;padding:0 6px;height:15px;vertical-align:-3px;border-radius:999px;
  white-space:nowrap;line-height:1;border:1px solid rgba(255,255,255,.25);box-shadow:0 1px 3px rgba(0,0,0,.55);position:relative;overflow:hidden;isolation:isolate}
/* BRILHO (autor 10/10: "um brilho maneiro, algo que chama um pouco a atenção"): uma luz passa pelo selo de tempos
   em tempos (só transform, leve); o Ouro também pulsa um halo dourado. Nada anda com "reduzir movimento". */
.col-patrono-selo::after{content:"";position:absolute;inset:-2px auto -2px 0;width:45%;pointer-events:none;z-index:1;
  background:linear-gradient(100deg,transparent 0,rgba(255,255,255,.0) 20%,rgba(255,255,255,.85) 50%,rgba(255,255,255,0) 80%,transparent 100%);
  transform:translateX(-120%) skewX(-18deg);animation:col-patrono-luz 4.2s ease-in-out infinite}
.col-patrono-selo>b{position:relative;z-index:2}
.col-patrono-selo.col-patrono-n1::after{opacity:.55;animation-duration:5.4s}
.col-patrono-selo.col-patrono-n2::after{opacity:.8;animation-duration:4.6s;animation-delay:.6s}
.col-patrono-selo.col-patrono-n3::after{animation-duration:3.6s;animation-delay:1.1s}
.col-patrono-selo.col-patrono-n3{animation:col-patrono-halo 2.4s ease-in-out infinite}
@keyframes col-patrono-luz{0%,62%{transform:translateX(-120%) skewX(-18deg)}88%,100%{transform:translateX(330%) skewX(-18deg)}}
@keyframes col-patrono-halo{0%,100%{box-shadow:0 0 6px rgba(255,214,106,.35),0 1px 3px rgba(0,0,0,.55)}50%{box-shadow:0 0 14px rgba(255,214,106,.8),0 1px 3px rgba(0,0,0,.55)}}
@media (prefers-reduced-motion:reduce){.col-patrono-selo::after{animation:none;display:none}.col-patrono-selo.col-patrono-n3{animation:none}}
.col-patrono-selo>b{background:none!important;-webkit-text-fill-color:currentColor;font-weight:900;font-size:calc(8.5px * var(--text-scale,1));letter-spacing:.06em}
.col-patrono-selo.col-patrono-n1{background:linear-gradient(90deg,#6b3f1f,#b97a45);color:#fff1de;border-color:#c98d55}
.col-patrono-selo.col-patrono-n2{background:linear-gradient(90deg,#6c7482,#d9dee6);color:#16181d;border-color:#eef2f7}
.col-patrono-selo.col-patrono-n3{background:linear-gradient(90deg,#d9a83a,#ffe9a0);color:#2a1c02;border-color:#ffe9a8;box-shadow:0 0 8px rgba(255,214,106,.45),0 1px 3px rgba(0,0,0,.55)}
#colChatPanel .col-chat-msg-head .col-patrono-selo{box-sizing:border-box;height:auto;min-height:calc(15px*var(--text-scale,1));padding:2px 7px;align-self:center}
/* No nome do pódio e das listas o selo não pode cortar o nome: fica do lado e encolhe junto. */
.rk-podio-nome .col-patrono-selo,.rk-destaque-nome .col-patrono-selo,.rankings-nome .col-patrono-selo{margin-left:4px;vertical-align:-2px}

/* ---------- a aba ---------- */
.pt-meses{display:flex;gap:6px;margin:0 0 8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.pt-meses::-webkit-scrollbar{display:none}
.pt-meses button{flex:0 0 auto;padding:5px 12px;border:1px solid #3a3222;border-radius:999px;background:#12141a;color:#9aa3b5;font-weight:800;font-size:calc(11px * var(--text-scale,1))}
.pt-meses button.active{background:var(--botao-ouro-fundo);color:var(--botao-ouro-texto);border-color:var(--botao-ouro-borda)}
.pt-faixa{display:flex;align-items:center;gap:10px;margin:0 0 6px;padding:8px 12px;border:1px solid rgba(255,207,74,.45);border-radius:12px;
  background:linear-gradient(90deg,rgba(64,46,10,.85),rgba(20,18,12,.9))}
.pt-faixa.feito{border-color:rgba(120,200,140,.45);background:linear-gradient(90deg,rgba(18,48,30,.85),rgba(14,20,16,.9))}
.pt-faixa-txt{display:grid;gap:2px;min-width:0;flex:1 1 auto;line-height:1.25}
.pt-faixa-txt b{color:#ffe08a;font-size:calc(12.5px * var(--text-scale,1))}
.pt-faixa-txt span{color:#e7dcc2;font-size:calc(11px * var(--text-scale,1))}
.pt-faixa-estado{flex:0 0 auto;padding:4px 10px;border-radius:999px;background:rgba(0,0,0,.45);color:#ffd56a;font-weight:900;font-size:calc(10.5px * var(--text-scale,1));white-space:nowrap}
.pt-faixa.feito .pt-faixa-estado{color:#9fe3b0}
.pt-aviso{margin:0 0 8px;padding:6px 12px;border-radius:10px;background:rgba(80,20,20,.6);color:#ffd0c8;font-size:calc(11px * var(--text-scale,1))}
.pt-aviso.bom{background:rgba(20,60,34,.7);color:#c9f5d3;font-weight:700}
.pt-nivel{margin:10px 0 4px}
.pt-cab{position:relative;z-index:7;display:flex;align-items:center;gap:8px;margin:0 0 6px;color:#e9dfc6;font-weight:900;font-size:calc(12.5px * var(--text-scale,1))}
.pt-cab .col-patrono-selo{margin-left:0}
.pt-cab small{color:#8e95a5;font-weight:700}
.pt-cab::after{content:"";flex:1 1 auto;height:1px;background:linear-gradient(90deg,rgba(255,255,255,.18),transparent)}
.pt-n3 .pt-cab>span{color:#ffe08a}.pt-n2 .pt-cab>span{color:#e4e9f0}.pt-n1 .pt-cab>span{color:#e2a873}
/* Ouro: o herói de corpo inteiro, como no pódio, um ao lado do outro. */
/* 12/10 (print do Begins): com um patrono só o herói ficava encostado à esquerda e a águia/asa do DL subia por cima do
   selo PATRONO do cabeçalho. Agora os cartões ficam no meio e o palco tem folga em cima para asa, corvo e arma. */
.pt-ouro-grade{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:58px 4px 4px;border-radius:14px;
  background:radial-gradient(ellipse at 50% 75%,rgba(255,207,74,.13),transparent 65%)}
.pt-ouro-item{position:relative;flex:0 1 210px;min-width:150px;grid-column:auto!important;grid-row:auto!important}
.pt-ouro-item .rk-palco{order:1}.pt-ouro-item .pt-placa{order:3;padding-top:12px}
/* A fita do mais adorado sai de cima da cabeça (tampava asa e rosto) e fica na borda de cima da placa. */
.pt-ouro-item>.pt-fita{top:200px;left:50%;right:auto;transform:translateX(-50%)}
.pt-ouro-item .rk-palco{height:200px}
.pt-ouro-item .rk-lutador{transform:scale(1.1)}
.pt-placa{position:relative;z-index:5;display:grid;justify-items:center;gap:5px;width:100%;margin-top:10px;padding:7px 8px 8px;border-radius:12px;
  background:rgba(8,9,13,.88);border:1px solid rgba(255,207,74,.45)}
.pt-placa .rk-podio-nome{max-width:100%}
/* 2051 (29/10): quando a fileira quebra (celular, tela estreita), a asa de baixo subia por cima da placa de cima.
   Espaço entre as fileiras do tamanho da folga do palco; e os Ouro além dos 5 do palco viram cartões com rosto. */
.pt-ouro-grade{row-gap:110px}   /* a asa grande sobe até ~105 px acima do palco */
/* A fita do mais adorado fica presa na borda de cima da placa (com texto grande a placa desce e a fita, em px fixos, caía no contador). */
.pt-ouro-item .pt-placa>.pt-fita{top:-10px;left:50%;right:auto;transform:translateX(-50%)}
.pt-ouro-resto{margin-top:12px}
.pt-prata-item.pt-ouro-mini{border-color:rgba(255,207,74,.55);background:linear-gradient(180deg,rgba(52,42,18,.9),rgba(18,16,12,.94))}
.pt-prata-item.pt-ouro-mini .rk-destaque-nome{color:#ffe7a6}
.pt-prata-grade{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.pt-prata-grade>.pt-prata-item{flex:0 1 180px;min-width:136px}
.pt-prata-item{position:relative;display:grid;justify-items:center;gap:4px;min-width:0;padding:10px 8px;border-radius:12px;text-align:center;
  background:linear-gradient(180deg,rgba(40,44,54,.9),rgba(16,18,24,.92));border:1px solid rgba(217,222,230,.35)}
.pt-prata-item .rk-destaque-nome{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#eef2f7}
.pt-bronze-lista{display:grid;gap:5px}
.pt-bronze-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:5px 8px;border-radius:10px;
  background:rgba(30,22,16,.75);border:1px solid rgba(201,141,85,.3)}
.pt-bronze-nome{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#f1e3d3}
.voce.pt-prata-item,.voce.pt-bronze-item,.voce .pt-placa{box-shadow:0 0 0 1px #ffcf4a inset}
/* O contador de adorações do mês e a fita do mais adorado. */
.pt-contador{display:inline-flex;align-items:center;gap:4px;color:#ffd98a;font-size:calc(11px * var(--text-scale,1));white-space:nowrap}
.pt-contador b{font-weight:900;font-size:calc(12.5px * var(--text-scale,1))}
.pt-contador small{color:#b9ad92;font-size:calc(10px * var(--text-scale,1))}
.pt-ic{width:13px;height:13px;fill:#ffcf4a;filter:drop-shadow(0 0 3px rgba(255,207,74,.7))}
.pt-mais .pt-ic{animation:pt-brilho 2.4s ease-in-out infinite}
@keyframes pt-brilho{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.25) rotate(45deg)}}
.pt-fita{position:absolute;top:4px;right:4px;z-index:6;padding:2px 7px;border-radius:999px;background:linear-gradient(90deg,#c0392b,#ff7a59);color:#fff;
  font-weight:900;font-size:calc(9px * var(--text-scale,1));letter-spacing:.04em;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.5)}
.pt-bronze-item .pt-fita{position:static}
/* O botão ADORAR: dourado e grande o bastante para o dedo (44 px de altura útil no celular). */
.pt-adorar{min-width:96px;min-height:30px;padding:6px 14px;border:1px solid var(--botao-ouro-borda);border-radius:999px;cursor:var(--cur-mao,pointer);
  background:var(--botao-ouro-fundo);color:var(--botao-ouro-texto);font-weight:900;font-size:calc(11.5px * var(--text-scale,1));letter-spacing:.05em;
  box-shadow:0 0 10px rgba(255,207,74,.35),0 2px 4px rgba(0,0,0,.5)}
.pt-adorar:hover:not(:disabled){filter:brightness(1.1)}
.pt-adorar:disabled{cursor:var(--cur-seta,default);opacity:.75}
.pt-adorar.pt-adorado{background:linear-gradient(180deg,#5fd38a,#2f8f55);border-color:#9fe3b0;color:#06210f;opacity:1}
.pt-adorar.pt-amanha{background:#1c1f27;border-color:#3a3f4c;color:#8e95a5;box-shadow:none}
.pt-bronze-item .pt-adorar{min-width:84px;min-height:28px;padding:4px 10px}
.pt-apoiar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 4px;padding:8px 12px;border-radius:12px;
  border:1px dashed rgba(255,207,74,.45);color:#d8ccb0;font-size:calc(11px * var(--text-scale,1))}
.pt-apoiar button{flex:0 0 auto;padding:6px 12px;border:1px solid #e3b65a;border-radius:999px;background:#1b1610;color:#ffd56a;font-weight:900}
.pt-vazio{margin-top:8px}
@media (max-width:640px){
  .pt-faixa{flex-wrap:wrap}
  .pt-ouro-grade{gap:6px;row-gap:52px;padding-top:52px}
  .pt-ouro-item{flex-basis:150px;min-width:136px}
  .pt-ouro-item .rk-palco{height:170px}
  .pt-ouro-item>.pt-fita{top:170px}
  .pt-ouro-item .rk-lutador{transform:scale(.95)}
  .pt-prata-grade>.pt-prata-item{flex-basis:150px}
  .pt-bronze-item{grid-template-columns:auto minmax(0,1fr) auto;row-gap:4px}
  .pt-bronze-item .pt-contador{grid-column:2}
  .pt-bronze-item .pt-adorar{grid-column:3;grid-row:1 / span 2}
  .pt-bronze-item .pt-fita{grid-column:2;justify-self:start}
  .pt-adorar{min-height:34px}
  .pt-apoiar{flex-wrap:wrap}
}

/* ---------- a Loja ---------- */
/* Cartão da Loja, compacto (10/10): selos à esquerda, frase curta, 3 botões numa linha. */
.loja-patronos{display:grid;gap:10px;padding:12px 14px;border:1px solid #6b5426;border-radius:10px;background:linear-gradient(180deg,#241b0d,#17120a);min-width:0}
.loja-patronos .lp-topo{display:flex;gap:12px;align-items:center;min-width:0}
.loja-patronos .lp-selos{display:grid;gap:4px;justify-items:center;flex:0 0 auto}
.loja-patronos .lp-selos .col-patrono-selo{margin:0;height:auto;padding:2px 9px}
.loja-patronos .lp-selos .col-patrono-selo>b{font-size:calc(9.5px * var(--text-scale,1));letter-spacing:.1em}
.loja-patronos .lp-txt{display:grid;gap:2px;min-width:0}
.loja-patronos .lp-txt .loja-etapa{margin:0}
.loja-patronos h3{margin:0;font-size:calc(17px * var(--text-scale,1));line-height:1.2}
.loja-patronos p{margin:0;font-size:calc(12.5px * var(--text-scale,1));line-height:1.35;color:#d9c9a8}
.loja-patronos .lp-pe{font-size:calc(11px * var(--text-scale,1));color:#b9a785;text-align:center}
.loja-patronos-niveis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}
.loja-patrono-btn{min-width:0!important;width:auto!important;white-space:normal!important;display:grid!important;gap:2px;justify-items:center;min-height:44px;padding:5px!important;border-radius:12px!important;line-height:1.15}
.loja-patrono-btn b{font-weight:900;font-size:calc(13px * var(--text-scale,1))}
.loja-patrono-btn span{font-size:calc(11px * var(--text-scale,1))}
/* 1966: o Cartão do Patrono em cada botão ("60 + 8/dia" com a arte da Jewel of Dark) e a linha de quem já tem. */
.loja-patrono-nivel .lp-jod,.loja-patrono-btn .lp-jod{display:inline-flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1px 3px;max-width:100%;font-weight:800;font-size:calc(10.5px * var(--text-scale,1));line-height:1.1;white-space:normal;overflow-wrap:anywhere}
/* 2228: o +Gold no farm embaixo do cartão, mesmo tamanho, em dourado. */
.loja-patrono-nivel .lp-gold,.loja-patrono-btn .lp-gold{display:inline-flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1px 3px;max-width:100%;font-weight:800;font-size:calc(10.5px * var(--text-scale,1));line-height:1.1;white-space:normal;overflow-wrap:anywhere}
.loja-patrono-nivel .lp-jod-ic,.loja-patrono-btn .lp-jod-ic{width:calc(13px * var(--text-scale,1));height:calc(13px * var(--text-scale,1));flex:0 0 auto;object-fit:contain}
.loja-patronos .lp-meu{display:block;margin-top:2px;color:#9fe3a8;font-weight:700;font-size:calc(11.5px * var(--text-scale,1));line-height:1.3}
.pt-cartao-linha{text-align:center}
.loja-patrono-btn.n1{background:linear-gradient(180deg,#b97a45,#6b3f1f)!important;color:#fff1de!important}
.loja-patrono-btn.n2{background:linear-gradient(180deg,#e9edf3,#8a93a2)!important;color:#16181d!important}
.loja-patrono-btn.n3{background:var(--botao-ouro-fundo)!important;color:var(--botao-ouro-texto)!important}
/* A cor da letra do selo é do metal, mesmo dentro de listas que pintam o primeiro <span> (Loja). */
.col-patrono-selo.col-patrono-n1>b{color:#fff1de!important}
.col-patrono-selo.col-patrono-n2>b{color:#16181d!important}
.col-patrono-selo.col-patrono-n3>b{color:#2a1c02!important}
.loja-pack-novo .loja-conteudo li>span.col-patrono-selo:first-child{min-width:0;font-size:inherit}

/* ---------- o prêmio na hora do ADORAR ---------- */
.pt-premio-veu{position:fixed;inset:0;z-index:9000;display:grid;place-items:center;padding:16px;background:rgba(4,5,8,.55);cursor:var(--cur-mao,pointer);animation:pt-veu .2s ease-out}
.pt-premio-veu.saindo{animation:pt-veu-sai .25s ease-in forwards}
@keyframes pt-veu{from{opacity:0}}
@keyframes pt-veu-sai{to{opacity:0}}
.pt-premio-cartao{position:relative;overflow:hidden;display:grid;justify-items:center;gap:6px;width:min(420px,100%);padding:18px 16px 14px;border-radius:18px;text-align:center;
  border:1px solid #ffe08a;background:linear-gradient(180deg,#2a2008,#0d0b06 70%);box-shadow:0 0 40px rgba(255,207,74,.35),0 12px 30px rgba(0,0,0,.7);
  animation:pt-pula .45s cubic-bezier(.2,1.6,.4,1)}
@keyframes pt-pula{from{transform:scale(.6);opacity:0}}
.pt-premio-raios{position:absolute;left:50%;top:-130px;width:360px;height:360px;margin-left:-180px;pointer-events:none;opacity:.35;
  background:repeating-conic-gradient(from 0deg,rgba(255,224,138,.55) 0 8deg,transparent 8deg 22deg);border-radius:50%;
  -webkit-mask:radial-gradient(circle,#000 20%,transparent 68%);mask:radial-gradient(circle,#000 20%,transparent 68%);animation:pt-gira 9s linear infinite}
@keyframes pt-gira{to{transform:rotate(360deg)}}
.pt-premio-cartao>small{position:relative;color:#e7dcc2;font-size:calc(12px * var(--text-scale,1))}
.pt-premio-tit{position:relative;color:#ffe08a;font-size:calc(19px * var(--text-scale,1));font-weight:900;text-shadow:0 2px 8px rgba(0,0,0,.8)}
.pt-premio-itens{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:6px 0 4px}
.pt-premio-item{display:grid;justify-items:center;gap:2px;min-width:96px;padding:10px 8px 8px;border-radius:14px;border:1px solid rgba(255,224,138,.45);
  background:radial-gradient(circle at 50% 30%,rgba(255,207,74,.18),rgba(0,0,0,.55) 70%);animation:pt-item .5s calc(.12s + var(--i) * .12s) both cubic-bezier(.2,1.5,.4,1)}
@keyframes pt-item{from{transform:translateY(14px) scale(.7);opacity:0}}
.pt-premio-arte{display:grid;place-items:center;width:52px;height:52px}
.pt-premio-arte img,.pt-premio-arte .col-icone img{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255,207,74,.55))}
.pt-premio-arte .col-icone{font-size:40px;font-style:normal}
.pt-premio-item>b{color:#fff3c4;font-size:calc(18px * var(--text-scale,1));font-weight:900}
.pt-premio-item>small{color:#d8ccb0;font-size:calc(10.5px * var(--text-scale,1))}
.pt-premio-item.joia{border-color:#9fd8ff;background:radial-gradient(circle at 50% 30%,rgba(140,200,255,.3),rgba(0,0,0,.55) 70%);box-shadow:0 0 18px rgba(140,200,255,.45)}
.pt-premio-sorte .pt-premio-cartao{box-shadow:0 0 60px rgba(255,224,138,.6),0 12px 30px rgba(0,0,0,.7)}
.pt-premio-pe{position:relative;color:#9aa1b1;font-size:calc(10.5px * var(--text-scale,1))}
@media (prefers-reduced-motion:reduce){.pt-premio-raios,.pt-premio-cartao,.pt-premio-item{animation:none}}

/* 28/10: o nível é um cartãozinho (nome, o que dá, selo VIP) e o botão embaixo só com o preço. */
.loja-patrono-nivel{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:8px 6px 6px;border:1px solid #6b5426;border-radius:12px;background:rgba(0,0,0,.28);text-align:center;color:#eadfc4}
.loja-patrono-nivel>b{font-weight:900;font-size:calc(14px * var(--text-scale,1));line-height:1.15}
.loja-patrono-nivel.n1{border-color:#9a6236}.loja-patrono-nivel.n1>b{color:#e6a874}
.loja-patrono-nivel.n2{border-color:#a9b1bf}.loja-patrono-nivel.n2>b{color:#e9edf3}
.loja-patrono-nivel.n3{border-color:#d8ad45}.loja-patrono-nivel.n3>b{color:#ffe08a}
.loja-patrono-nivel .loja-patrono-btn{width:100%!important;margin-top:auto;font-weight:900;font-size:calc(13px * var(--text-scale,1))}
.loja-patrono-nivel .vip-da-compra.lp-vip{margin:1px 0 3px}
