/* ============= БАЗОВОЕ ============= */
:root{
  --card-radius: 1px;
  --gap: 20px;         /* отступ между TOP‑3 карточками */
  --font-main: "Segoe UI","Roboto","Arial",sans-serif;
  --thin-maxw: 900px;  /* ширина контейнера списка рангов */
  --top-w: 260px;      /* ширина TOP‑3 карточки (поуже) */
}

.top-ranks-cards,
.all-ranks-cards { font-family: var(--font-main); }

/* ============= TOP-3 ============= */
.top-ranks-cards{
  display:flex;
  gap: var(--gap);
  justify-content:center;
  flex-wrap:wrap;
  margin: 0 auto 24px;
  max-width: calc(var(--top-w) * 3 + var(--gap) * 2);
}

.top-card{
  position:relative; overflow:hidden; flex-shrink:0;
  width: var(--top-w); max-height:330px; padding:16px;
  background-color:transparent!important; border:1px solid rgba(255,255,255,.1);
  border-radius:var(--card-radius); box-shadow:0 0 12px #00000055; text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:8px;
  transition: box-shadow .2s ease, filter .2s ease;
}
.top-card:hover{ filter:brightness(1.05); }

/* фон из /public/glory_ru/images/fam_job через style="--bg:url(...)" */
.top-card::before{
  content:""; position:absolute; inset:0; z-index:0;
  background-image:var(--bg); background-size:cover; background-position:center;
  opacity:.4; transform: scale(1.22) translateX(70px) translateY(4px);
  transition: transform .25s ease, opacity .25s ease;
}
.top-card-overlay{ position:absolute; inset:0; background:rgba(0,0,0,.28); z-index:1; }
.top-card>*{ position:relative; z-index:2; }

/* свечение рамки */
.gold-glow{   box-shadow:0 0 6px 2px #FFD700!important; }
.silver-glow{ box-shadow:0 0 6px 2px #C0C0C0!important; }
.bronze-glow{ box-shadow:0 0 6px 2px #cd7f32!important; }

/* медаль и подпись */
.medal-wrap{ width:100%; height:33%; display:flex; justify-content:center; align-items:center; }
.medal-img{ max-height:100%; max-width:60%; object-fit:contain; }
.medal-label{ font-weight:700; font-size:1rem; color:#fff; text-transform:uppercase; margin-top:2px; text-shadow:1px 1px 2px #000; }

/* полоса с ником/гильдией */
.nick-strip{
  width: calc(100% + 32px); margin-left:0px;
  background:rgba(0,0,0,.78); padding:6px 8px; line-height:1.1;
}
.nick-strip .nick-text{
  display:block; color:#fff; font-weight:700; font-size:1.05rem;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.nick-strip .guild-small{
  display:block; color:#6C757D; font-size:.9rem; margin-top:2px;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-height:1em;
}

/* убийства и икон-ряд */
.kills-big{ color:#fdd835; font-weight:700; font-size:1.05rem; margin-top:2px; }
.icon-row{ display:flex; justify-content:center; align-items:center; gap:10px; margin-top:6px; }
.icon-row .faction-icon,.icon-row .job-icon{ width:22px; height:22px; object-fit:contain; display:inline-block; }
.icon-row .rank-icon{ width:40px; height:24px; object-fit:contain; display:inline-block; }

.playtime-small{ color:#c8c8c8; font-size:.8rem; margin-top:4px; }

/* ============= СПИСОК С 4 МЕСТА ============= */
.all-ranks-cards{
  display:flex; flex-direction:column; gap:10px; margin-top:24px;
  max-width: var(--thin-maxw); margin-left:auto; margin-right:auto;
}

/* базовая тонкая карточка + фоновое изображение из fam_job через --bg */
.rank-card.thin-wide{
  position:relative; overflow:hidden;
  background:transparent; border:1px solid rgba(255,255,255,.15);
  border-radius:var(--card-radius); box-shadow:none;
  width:100%; padding:12px 16px;
}
.rank-card.thin-wide::before{
  content:""; position:absolute; inset:0; z-index:0;
  background-image:var(--bg); background-repeat:no-repeat;
  background-position: center center; /* фон по центру */
    background-size: auto 100%; /* подогнать по высоте, без обрезки */
  opacity:.2; transform: scale(6) translateX(-40px) translateY(15px);
}
.rank-card.thin-wide>*{ position:relative; z-index:1; }

/* ОДНА ЛИНИЯ: место · фракция · класс · ник · гильдия · время · ранг · убийства (ровная таблица) */
.rank-card.thin-wide.one-line{
  display:grid; align-items:center; column-gap:14px;
  grid-template-columns:
    max-content        /* № */
    max-content        /* фракция */
    max-content        /* класс */
    minmax(0, 2fr)     /* НИК — основная гибкая колонка */
    minmax(0, 1.5fr)   /* ГИЛЬДИЯ — вторая гибкая колонка */
    max-content        /* время */
    max-content        /* ранг-иконка */
    max-content;       /* убийства */
}

/* базовые ячейки */
.rank-card.thin-wide.one-line .rc-col{
  min-width:0;
  display:flex; align-items:center;
  gap:6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

/* Выравнивания по колонкам */
.rank-card.thin-wide.one-line > :nth-child(1),
.rank-card.thin-wide.one-line > :nth-child(2),
.rank-card.thin-wide.one-line > :nth-child(3),
.rank-card.thin-wide.one-line > :nth-child(4),
.rank-card.thin-wide.one-line > :nth-child(5){
  justify-self: start;  text-align: left;   /* №, фракция, класс, ник, гильдия — слева */
}
.rank-card.thin-wide.one-line > :nth-child(6){
  justify-self: center; text-align: center; /* время — по центру */
}
.rank-card.thin-wide.one-line > :nth-child(7){
  justify-self: center; text-align: center; /* ранг — по центру */
}
.rank-card.thin-wide.one-line > :nth-child(8){
  justify-self: end;    text-align: right;  /* убийства — по правому краю */
}

/* текстовые */
.rc-nick,.rc-guild{ color:#fff; font-size:1rem; }
.rc-guild:empty::before{ content:"\00A0"; }
.rc-time{ color:#c8c8c8; font-size:.95rem; }

/* выделения */
.rc-pos{ color:#aaa; font-weight:700; font-size:.95rem; }
.rc-kills{ color:#0D6DFE; font-weight:700; font-size:.95rem; }

/* иконки */
.rc-faction,.rc-class{ width:20px; height:20px; object-fit:contain; }
.rc-rank{ width:28px; height:20px; object-fit:contain; }

.rank-icon{
  display:inline-block; background-repeat:no-repeat; background-position:center; background-size:contain;
}
.top-card .rank-icon{ width:40px; height:24px; }
.rank-card .rank-icon{ width:32px; height:32px; }

/* ============= АДАПТИВ ============= */
@media (max-width: 900px){
  .rank-card.thin-wide.one-line{
    grid-template-columns:
      max-content max-content max-content
      minmax(0,1.8fr) minmax(0,1.2fr)
      max-content max-content max-content;
    column-gap:12px;
  }
}
@media (max-width: 680px){
  .rank-card.thin-wide.one-line{
    grid-template-columns:
      max-content max-content max-content
      minmax(0,1.4fr) minmax(0,1fr)
      max-content max-content max-content;
    column-gap:10px;
  }
}
@media (max-width: 768px){
  .top-ranks-cards{ flex-direction:column; align-items:center; }
  .top-card{ width:90%; max-width:320px; }
  .medal-img{ max-width:70%; }
  .nick-strip .nick-text{ font-size:1rem; }
  .guild-small{ font-size:.9rem; }
  .kills-big{ font-size:1rem; }
}
.rank-card.thin-wide.one-line{
  display:grid;
  align-items:center;
  grid-template-columns:
    max-content        /* № */
    max-content        /* фракция */
    max-content        /* класс */
    minmax(0, 2fr)     /* ник */
    minmax(0, 1.5fr)   /* гильдия */
    max-content        /* время */
    max-content        /* ранг-иконка */
    max-content;       /* убийства */
  
  /* основной отступ */
  column-gap: 12px;
}

/* увеличиваем только между № и фракцией, и между классом и ником */
.rank-card.thin-wide.one-line > :nth-child(1) { margin-right: 26px; } /* № → фракция */
.rank-card.thin-wide.one-line > :nth-child(3) { margin-right: 80px; } /* класс → ник */


.rank-card.thin-wide{ min-height: 64px; } /* чтобы фон не схлопывался совсем */
/* Эффект яркости + цветная рамка при наведении */
.top-card,
.rank-card.thin-wide {
  transition: filter 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.top-card:hover,
.rank-card.thin-wide:hover {
  filter: brightness(1.5); /* ярче */
  border-color: rgba(255, 255, 255, 0.6); /* подсветка рамки */
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.4); /* лёгкое свечение */
}





















/* ================= Player profile card ================= */

.p-back{
  display:inline-flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  color:#fff;
  opacity:.9;
  margin: 6px 0 14px;
  user-select:none;
}
.p-back:hover{ opacity:1; }
.p-back__arr{
  width:28px; height:28px;
  display:grid; place-items:center;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.35);
}
.p-back__txt{ font-weight:600; }

.player-profile{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius: var(--card-radius);
  box-shadow: 0 0 12px #00000055;
  padding: 18px 18px 16px;
}

.player-profile__bg{
  position:absolute;
  inset:0;
  background-image: var(--bg);
  background-size: cover;
  background-position: center;
  opacity:.35;
  transform: scale(1.12) translateX(120px);
  pointer-events:none;
  z-index:0;
}

/* затемнение, чтобы текст читался */
.player-profile::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35));
  pointer-events:none;
  z-index:1;
}

.player-profile > *{ position:relative; z-index:2; }

.player-profile__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.player-profile__name{
  font-size: 1.55rem;
  font-weight: 800;
  color:#fff;
  text-shadow: 1px 1px 2px #000;
  display:flex;
  align-items:center;
  gap:10px;
}

.p-online{
  font-size:.85rem;
  font-weight:700;
  padding: 3px 8px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.35);
  text-transform: lowercase;
}

.player-profile__meta{
  margin-top:6px;
  color:#c8c8c8;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.p-chip{
  padding: 4px 10px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.35);
  font-weight:700;
  color:#fff;
}

.p-dot{ opacity:.8; }

.p-guild{
  color:#6C757D;
  font-weight:600;
  max-width: 520px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.player-profile__icons{
  display:flex;
  gap:10px;
  align-items:center;
}
.p-ico{
  width:28px;
  height:28px;
  object-fit:contain;
  filter: drop-shadow(0 0 6px rgba(0,0,0,.55));
}

.player-profile__stats{
  margin-top: 16px;
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p-stat{
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.35);
  padding: 10px 12px;
  min-height: 62px;
}

.p-stat__label{
  font-size:.85rem;
  color:#c8c8c8;
}

.p-stat__value{
  margin-top:4px;
  font-size: 1.05rem;
  font-weight: 800;
  color:#fff;
}

.player-profile__divider{
  margin: 14px 0 12px;
  height:1px;
  background: rgba(255,255,255,.12);
}

.p-subtitle{
  font-weight:800;
  color:#fff;
  margin-bottom: 8px;
}

.p-kbreak{
  display:flex;
  gap: 14px;
  flex-wrap:wrap;
  color:#c8c8c8;
}
.p-kbreak__item b{ color:#fff; }

/* Адаптив */
@media (max-width: 900px){
  .player-profile__stats{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .player-profile__bg{ transform: scale(1.15) translateX(60px); }
}
@media (max-width: 520px){
  .player-profile__top{ flex-direction:column; align-items:flex-start; }
  .player-profile__icons{ margin-top:8px; }
}


















/* ===== Account characters list ===== */
.p-chars{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.p-char{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.28);
  padding: 10px 12px;
  text-decoration:none;
  color:#fff;
  min-height: 62px;
}

.p-char__bg{
  position:absolute;
  inset:0;
  background-image: var(--bg);
  background-size: cover;
  background-position: center;
  opacity:.22;
  transform: scale(1.15) translateX(60px);
  pointer-events:none;
}

.p-char::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(90deg, rgba(0,0,0,.70), rgba(0,0,0,.25));
  pointer-events:none;
}

.p-char > *{ position:relative; z-index:2; }

.p-char__name{
  font-weight:800;
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.p-char__meta{
  display:block;
  margin-top: 3px;
  font-size:.85rem;
  color:#c8c8c8;
}

.p-char.is-current{
  border-color: rgba(255,255,255,.45);
  box-shadow: 0 0 10px rgba(255,255,255,.18);
}

@media (max-width: 900px){
  .p-chars{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px){
  .p-chars{ grid-template-columns: 1fr; }
}























/* ===== Users_Statistics block ===== */
.p-ustats{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.p-ustat{
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.35);
  padding: 10px 12px;
  min-height: 62px;
}

.p-ustat__label{
  font-size:.85rem;
  color:#c8c8c8;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.p-ustat__value{
  margin-top:4px;
  font-size: 1.05rem;
  font-weight: 800;
  color:#fff;
}

@media (max-width: 900px){
  .p-ustats{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px){
  .p-ustats{ grid-template-columns: 1fr; }
}

















/* ===== Account characters (profile) ===== */
.p-chars{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.p-char{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.28);
  padding: 10px 12px;
  min-height: 72px;
  user-select: none;
}

/* фон fam_job */
.p-char__bg{
  position:absolute;
  inset:0;
  background-image: var(--bg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 100%;   /* ← КЛЮЧЕВО */
  opacity: .28;
  pointer-events:none;
}


/* водяной знак класса (иконка job) */
.p-char__jobmark{
  position:absolute;
  right:-6px;
  bottom:-8px;
  width:72px;
  height:72px;
  background-image: var(--jobico);
  background-repeat:no-repeat;
  background-position:center;
  background-size: contain;
  opacity:.12;
  pointer-events:none;
}


/* затемнение для читаемости */
.p-char::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(
    90deg,
    rgba(0,0,0,.55),
    rgba(0,0,0,.25)
  );
  pointer-events:none;
}


.p-char > *{ position:relative; z-index:2; }

.p-char__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 10px;
}

.p-char__name{
  font-weight: 800;
  color:#fff;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width: 100%;
  display:flex;
  align-items:center;
  gap:8px;
}

.p-mini-online{
  font-size:.72rem;
  font-weight:800;
  padding: 2px 6px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.35);
}

.p-char__icons{
  display:flex;
  gap:8px;
  align-items:center;
  flex-shrink:0;
}

.p-mini-ico{
  width:20px;
  height:20px;
  object-fit:contain;
  filter: drop-shadow(0 0 6px rgba(0,0,0,.55));
}

.p-char__meta{
  margin-top: 6px;
  font-size:.85rem;
  color:#c8c8c8;
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}

.p-mini-chip{
  padding: 3px 8px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.30);
  color:#fff;
  font-weight:800;
}

.p-mini-dot{ opacity:.75; }

.p-mini-guild{
  color:#6C757D;
  font-weight:600;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.p-char.is-current{
  border-color: rgba(255,255,255,.45);
  box-shadow: 0 0 10px rgba(255,255,255,.18);
}

@media (max-width: 900px){
  .p-chars{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px){
  .p-chars{ grid-template-columns: 1fr; }
  .p-char__jobmark{ width:80px; height:80px; }
}


/* =========================================================
   FIX: Account characters background (override)
   Вставить В КОНЕЦ файла rank.css
   ========================================================= */

.p-chars{
  display:grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

/* Фон рисуем на .p-char (всегда видно даже в узких карточках) */
.p-char{
  position:relative !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.12) !important;
  padding: 10px 12px !important;
  min-height: 72px !important;
  user-select:none !important;

  background-image:
    linear-gradient(90deg, rgba(0,0,0,.60), rgba(0,0,0,.20)),
    var(--bg) !important;
  background-repeat: no-repeat, no-repeat !important;
  background-position: left center, 78% 27% !important;
  background-size: cover, 45% !important;
}

/* если у тебя в HTML остался <span class="p-char__bg"> — прячем его */
.p-char__bg{
  display:none !important;
}

/* водяной знак класса */
.p-char__jobmark{
  position:absolute !important;
  right:-6px !important;
  bottom:-8px !important;
  width:72px !important;
  height:72px !important;
  background-image: var(--jobico) !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:contain !important;
  opacity:.12 !important;
  pointer-events:none !important;
  z-index:1 !important;
}

.p-char > *{
  position:relative !important;
  z-index:2 !important;
}

.p-char.is-current{
  border-color: rgba(255,255,255,.45) !important;
  box-shadow: 0 0 10px rgba(255,255,255,.18) !important;
}

/* адаптив */
@media (max-width: 900px){
  .p-chars{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 560px){
  .p-chars{ grid-template-columns: 1fr !important; }
  .p-char__jobmark{ width:80px !important; height:80px !important; }
}






/* ===========================
   Tabs: Ранги / Гильдии / Последние убийства
   =========================== */

.rank-tabs{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 14px 0 14px;
}

.rank-tab{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;

  padding: 14px 14px;
  border-radius: var(--card-radius);
  text-decoration:none;

  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.30);
  box-shadow: 0 0 12px rgba(0,0,0,.25);
  color:#fff;

  transition: transform .14s ease, filter .14s ease, border-color .14s ease;
  overflow:hidden;
}

.rank-tab:hover{
  transform: translateY(-1px);
  filter: brightness(1.06);
  border-color: rgba(255,255,255,.26);
}

/* тонкая внутренняя подсветка */
.rank-tab::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.75;
  background: linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,0));
}

/* активная вкладка */
.rank-tab.is-active{
  border-color: rgba(255,255,255,.45);
  box-shadow: 0 0 14px rgba(255,255,255,.10);
  background: rgba(0,0,0,.42);
}

.rank-tab b{
  font-size: 1.05rem;
  font-weight: 800;
  display:block;
  line-height: 1.1;
}

.rank-tab-sub{
  margin-top: 4px;
  font-size: .88rem;
  color:#c8c8c8;
  opacity:.95;
}

/* маленькая метка справа (иконка) */
.rank-tab::after{
  content:"";
  position:absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 34px;
  height: 34px;
  opacity: .18;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  filter: drop-shadow(0 0 8px rgba(0,0,0,.55));
}

/* разные иконки для табов по href */
.rank-tab[href*="tab=ranks"]::after{
  background-image: url("/public/glory_ru/images/rank/top1.png");
}
.rank-tab[href*="tab=guilds"]::after{
  background-image: url("/public/glory_ru/images/menu/guild.png");
}
.rank-tab[href*="tab=kills"]::after{
  background-image: url("/public/glory_ru/images/menu/sword.png");
}

/* если у тебя нет этих иконок — просто закомментируй 3 блока выше */


/* ===========================
   Modes: Общее / Неделя / и т.д.
   =========================== */

.rank-modes{
  display:flex;
  flex-wrap:wrap;
  gap: 10px;
  margin: 8px 0 16px;
}

.rank-mode{
  text-decoration:none;
  color:#fff;
  font-weight: 800;
  font-size: .92rem;

  padding: 8px 12px;
  border-radius: var(--card-radius);

  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.26);

  transition: filter .14s ease, border-color .14s ease, transform .14s ease;
}

.rank-mode:hover{
  transform: translateY(-1px);
  filter: brightness(1.06);
  border-color: rgba(255,255,255,.24);
}

.rank-mode.is-active{
  background: rgba(0,0,0,.46);
  border-color: rgba(255,255,255,.45);
  box-shadow: 0 0 10px rgba(255,255,255,.10);
}

/* адаптив */
@media (max-width: 900px){
  .rank-tabs{ grid-template-columns: 1fr; }
  .rank-tab::after{ opacity: .12; }
}





/* плавная смена контента */
#ranksContent{
  transition: opacity .18s ease, transform .18s ease;
}

#ranksContent.ranks-is-loading{
  opacity: .65;
  transform: translateY(2px);
  pointer-events: none;
}





/* ===== Guilds (таблица) ===== */

/* 6 колонок: # | фракция | гильдия | лидер | участники | очки */
.guild-line{
  display:grid;
  align-items:center;
  column-gap:14px;
  grid-template-columns:
    max-content
    max-content
    minmax(0, 2fr)
    minmax(0, 1.7fr)
    max-content
    max-content;
}

/* Строка-шапка */
.guild-header{
  position: sticky;
  top: 0;
  z-index: 5;

  background: rgba(0,0,0,.75);
  backdrop-filter: blur(4px);

  border: 1px solid rgba(255,255,255,.25);
  min-height: 52px;
}

.guild-header .rc-col{
  color:#c8c8c8;
  text-transform: uppercase;
  font-weight: 800;
  font-size: .85rem;
}

/* Строки гильдий */
.guild-card{
  min-height: 56px;
}

.guild-card .rc-nick{
  font-size: 1rem;
  font-weight: 800;
}

.guild-card .rc-guild{
  color:#c8c8c8;
}

/* Центруем “лидера/участников/очки” */
.guild-card .rc-guild,
.guild-card .rc-time,
.guild-card .rc-kills{
  justify-content: center; /* т.к. .rc-col display:flex */
  text-align: center;
}

/* Очки */
.guild-card .rc-kills{
  font-weight: 800;
  color:#fdd835; /* если хочешь синий — поменяй на #0D6DFE */
}



/* ===== Guilds: force grid (override ranks one-line) ===== */
.rank-card.thin-wide.guild-line{
  display:grid;
  align-items:center;
  grid-template-columns: 60px 60px minmax(0, 2.2fr) minmax(0, 1.6fr) 120px 140px;
  column-gap: 14px;
}

.rank-card.thin-wide.guild-line .rc-col{
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}

/* на всякий — отменяем твои отступы из one-line */
.rank-card.thin-wide.guild-line > :nth-child(1),
.rank-card.thin-wide.guild-line > :nth-child(3){
  margin-right: 0 !important;
}





















  /* ===== Last Kills table ===== */

.kill-line{
  display:grid !important;
  align-items:center;
  grid-template-columns:
    max-content      /* # */
    max-content      /* время */
    max-content      /* фракция/класс убийцы */
    minmax(0, 1.4fr) /* имя убийцы */
    max-content      /* класс умершего */
    minmax(0, 1.4fr) /* имя умершего */
    max-content;     /* карта */
  column-gap: 12px;
}

.kill-icons{
  display:flex;
  align-items:center;
  gap: 8px;
}

/* шапка */
.kill-header{
  position: sticky;
  top: 0;
  z-index: 5;
  background: rgba(0,0,0,.75);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255,255,255,.25);
  min-height: 52px;
}
.kill-header .rc-col{
  color:#c8c8c8;
  text-transform: uppercase;
  font-weight: 800;
  font-size: .85rem;
}

/* чуть компактнее время/карта */
.kill-map{ color:#c8c8c8; }








/* ===== Last Kills: strict table ===== */

.kill-line{
  display:grid !important;
  align-items:center;
  column-gap: 14px;

  /* # | time | icons | killer | dead job | dead | map */
    grid-template-columns:
      60px        /* # */
      170px       /* время */
      90px        /* иконки */
      1.2fr       /* убийца */
      70px        /* класс умер */
      1.2fr       /* имя умер */
      1.6fr;      /* карта */
}

.kill-header{
  position: sticky;
  top: 0;
  z-index: 5;
  background: rgba(0,0,0,.75);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255,255,255,.25);
  min-height: 52px;
}

.kill-header .rc-col{
  color:#c8c8c8;
  text-transform: uppercase;
  font-weight: 800;
  font-size: .85rem;
}

/* выравнивание по колонкам */
.kill-line > :nth-child(1){ justify-self:start; }   /* # */
.kill-line > :nth-child(2){ justify-self:start; }   /* время */
.kill-line > :nth-child(3){ justify-self:center; }  /* иконки */
.kill-line > :nth-child(4){ justify-self:start; }   /* убийца */
.kill-line > :nth-child(5){ justify-self:center; }  /* класс умер */
.kill-line > :nth-child(6){ justify-self:start; }   /* имя умер */
.kill-line > :nth-child(7){ justify-self:end; }     /* карта */

.kill-icons{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
}

/* чтобы карта красиво укорачивалась */
.kill-map{
  color:#c8c8c8;
  white-space: normal;
}






.rank-modes{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin:20px 0;
}




























/* ===== GUILD TABLE ===== */

.guild-line{
    display:grid;
    grid-template-columns: 60px 60px 340px 240px 120px 140px;
    align-items:center;
    gap:10px;
}

.guild-line .rc-col{
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}

/* гильдия */
.guild-line .rc-nick{
    font-weight:700;
    font-size:15px;
}

/* лидер */
.guild-line .rc-guild{
    color:#cfcfcf;
}

/* участники */
.guild-line .rc-time{
    text-align:center;
}

/* очки */
.guild-line .rc-kills{
    color:#ffd44a;
    font-weight:800;
    text-align:right;
}

/* иконка фракции */
.guild-line .faction-icon{
    width:22px;
    height:22px;
}

.guild-card:hover{
    background:rgba(255,255,255,0.04);
    border-color:rgba(255,255,255,0.12);
    transition:0.2s;
}






.guild-header{
font-weight:800;
color:#cfcfcf;
text-transform:uppercase;
letter-spacing:.5px;
}

.guild-line{
display:grid;
grid-template-columns:
70px
90px
1fr
150px;

align-items:center;
gap:16px;
}

.guild-line img{
width:22px;
height:22px;
}


/* ===== Guild page: stats cards ===== */
.guild-stats{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.guild-stat{
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.35);
  padding: 10px 12px;
  min-height: 58px;
}

.guild-stat__label{
  font-size:.85rem;
  color:#c8c8c8;
  font-weight:800;
}

.guild-stat__value{
  margin-top:4px;
  font-size: 1.05rem;
  font-weight: 900;
  color:#fff;
}

/* ===== Guild members grid (header and rows одинаковые!) ===== */
.guild-members-grid{
  display:grid;
  align-items:center;
  column-gap: 16px;
  grid-template-columns: 90px 140px 70px minmax(0, 1fr);
}

.guild-header .rc-col{
  color:#c8c8c8;
  text-transform: uppercase;
  font-weight: 900;
  font-size: .85rem;
}

/* чтобы иконка класса была аккуратной */
.guild-members-grid .job-icon{
  width:22px;
  height:22px;
  object-fit:contain;
}

/* адаптив */
@media (max-width: 900px){
  .guild-stats{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .guild-members-grid{
    grid-template-columns: 80px 120px 60px minmax(0,1fr);
  }
}
@media (max-width: 520px){
  .guild-stats{ grid-template-columns: 1fr; }
}


/* ===== Guild title ===== */

.guild-title-card{
padding:18px 20px;
margin-bottom:14px;
}

.guild-title{
font-size:28px;
font-weight:900;
color:#fff;
letter-spacing:1px;
}

/* ===== Guild stats ===== */

.guild-stats{
display:grid;
grid-template-columns: repeat(4, 1fr);
gap:10px;
margin-bottom:16px;
}

.guild-stat{
border:1px solid rgba(255,255,255,.12);
background:rgba(0,0,0,.35);
padding:12px 14px;
}

.guild-stat-label{
font-size:13px;
color:#9e9e9e;
font-weight:700;
}

.guild-stat-value{
margin-top:4px;
font-size:18px;
font-weight:900;
color:#fff;
}

/* ===== Members card ===== */

.guild-members-card{
padding:12px 16px;
margin-bottom:10px;
}

.guild-members-title{
font-size:16px;
font-weight:900;
letter-spacing:1px;
text-transform:uppercase;
color:#cfcfcf;
}

.guild-title{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    font-size:26px;
    font-weight:900;
    letter-spacing:1px;
}

.guild-title img{
    width:30px;
    height:30px;
}


/* ===== Guild page members table ===== */
.guild-members-line{
  display:grid;
  align-items:center;
  column-gap:14px;
  grid-template-columns:
    60px   /* # */
    70px   /* GuildLevel */
    60px   /* faction */
    60px   /* class */
    minmax(0, 2fr) /* nick */
    140px  /* kills */
    140px; /* time */
}

.guild-member-row .rc-col{
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.guild-member-row:hover{
  filter: brightness(1.06);
  border-color: rgba(255,255,255,.22);
}