/* FPS Rankings Carousel — estilos blindados contra o CSS do tema */
.fpsrc{position:relative;--fpsrc-gap:16px;--fpsrc-bg:#1a1a1a;--fpsrc-row:#111;--fpsrc-accent:#ff7ad9;--fpsrc-text:#fff;--fpsrc-muted:#a8a8a8;max-width:100%;font-size:16px;line-height:1.2;text-align:left}
.fpsrc,.fpsrc *{box-sizing:border-box}

/* Carrossel */
.fpsrc .fpsrc-track{display:flex;gap:var(--fpsrc-gap);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab;padding:4px 0;margin:0}
.fpsrc .fpsrc-track::-webkit-scrollbar{display:none}
.fpsrc .fpsrc-track.is-dragging{cursor:grabbing;scroll-behavior:auto;scroll-snap-type:none;user-select:none}
.fpsrc .fpsrc-card{flex:0 0 calc((100% - (var(--fpsrc-visible) - 1) * var(--fpsrc-gap)) / var(--fpsrc-visible));min-width:280px;scroll-snap-align:start;background:var(--fpsrc-bg);color:var(--fpsrc-text);border-radius:14px;padding:16px 12px 14px;margin:0;display:flex;flex-direction:column}

/* Título do ranking */
.fpsrc .fpsrc-card .fpsrc-title{margin:0 0 12px!important;padding:0!important;min-height:2.3em;font-size:15px!important;line-height:1.15!important;font-weight:700!important;letter-spacing:.01em!important;text-transform:uppercase!important;text-align:left!important;color:var(--fpsrc-title,var(--fpsrc-text))!important;background:none!important;border:0!important}

/* Lista de jogadores */
.fpsrc .fpsrc-card .fpsrc-list{flex:1;list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:6px}
.fpsrc .fpsrc-card .fpsrc-item{list-style:none!important;margin:0!important;padding:0 10px 0 0!important;display:grid;grid-template-columns:28px 44px minmax(0,1fr) auto;align-items:center;column-gap:8px;min-height:54px;background:var(--fpsrc-row);border-radius:9px;overflow:hidden;color:var(--fpsrc-text)}
.fpsrc .fpsrc-item::before,.fpsrc .fpsrc-item::after{content:none!important;display:none!important}
.fpsrc .fpsrc-pos{align-self:stretch;display:flex;align-items:center;justify-content:center;background:var(--fpsrc-pos-bg,var(--fpsrc-accent));color:var(--fpsrc-pos-text,#fff);font-size:13px;font-weight:700;line-height:1}
.fpsrc .fpsrc-photo{align-self:end;height:54px;display:flex;align-items:flex-end;justify-content:center}
.fpsrc .fpsrc-photo img{display:block;width:auto!important;height:auto!important;max-width:44px!important;max-height:54px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;object-fit:contain;pointer-events:none}
.fpsrc .fpsrc-name{display:flex;flex-direction:column;justify-content:center;min-width:0;line-height:1.1}
.fpsrc .fpsrc-name small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--fpsrc-muted)}
.fpsrc .fpsrc-name strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;text-transform:uppercase;color:var(--fpsrc-text)}
.fpsrc .fpsrc-values{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15;white-space:nowrap}
.fpsrc .fpsrc-prize{font-size:14px;font-weight:700;color:var(--fpsrc-text)}
.fpsrc .fpsrc-points{font-size:11px;color:var(--fpsrc-muted)}
.fpsrc .fpsrc-empty{padding:16px;color:var(--fpsrc-muted);text-align:center;list-style:none!important}

/* Botão "Ranking completo" */
.fpsrc .fpsrc-card a.fpsrc-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;align-self:center;margin:14px 0 0!important;padding:8px 16px!important;border:0!important;border-radius:8px;background:var(--fpsrc-btn-bg,#d90f3a)!important;color:var(--fpsrc-btn-text,#fff)!important;font-size:13px!important;font-weight:700!important;line-height:1.2!important;text-decoration:none!important;box-shadow:none!important;transition:filter .15s}
.fpsrc .fpsrc-card a.fpsrc-btn:hover,.fpsrc .fpsrc-card a.fpsrc-btn:focus{filter:brightness(1.12);color:var(--fpsrc-btn-text,#fff)!important;text-decoration:none!important}
.fpsrc .fpsrc-btn span{color:inherit!important}
.fpsrc .fpsrc-btn svg{width:18px!important;height:18px!important;flex:none;display:block;fill:none!important;stroke:currentColor!important;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Setas */
.fpsrc .fpsrc-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:38px;height:38px;border:0;border-radius:50%;background:#000c;color:#fff;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;margin:0}
.fpsrc .fpsrc-nav:hover{background:var(--fpsrc-accent);color:#fff}
.fpsrc .fpsrc-prev{left:-10px}.fpsrc .fpsrc-next{right:-10px}
.fpsrc .fpsrc-nav[disabled]{opacity:.3;pointer-events:none}

@media(max-width:1024px){.fpsrc .fpsrc-card{flex-basis:calc((100% - var(--fpsrc-gap)) / 2)}}
@media(max-width:640px){.fpsrc .fpsrc-card{flex-basis:86%}.fpsrc .fpsrc-nav{display:none}}
