/* Match archive + players index */
.asum { display: flex; gap: 36px; flex-wrap: wrap; margin-top: 8px; }
.asum div { display: flex; flex-direction: column; gap: 4px; }
.asum b { font: 800 40px/1 var(--num); font-variant-numeric: tabular-nums; }
.asum span { color: var(--muted); font-size: 13px; }
.filt { padding: 16px 18px; }
.filt__row { display: flex; align-items: flex-end; gap: 14px; flex-wrap: wrap; }
.fld { display: flex; flex-direction: column; gap: 5px; font-size: 11px; color: var(--dim); letter-spacing: .08em; text-transform: uppercase; }
.fld select, .fld input { appearance: none; -webkit-appearance: none; background: var(--surface); color: var(--text); border: 1px solid var(--line-2); border-radius: 10px; padding: 9px 12px; font: 500 14px/1.2 "Inter"; min-width: 150px; color-scheme: dark; }
.fld select { padding-right: 30px; background-image: linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);
  background-position: calc(100% - 16px) 50%, calc(100% - 11px) 50%; background-size: 5px 5px; background-repeat: no-repeat; }
.fld select:focus, .fld input:focus { outline: none; border-color: var(--accent); }
.filt__active { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.filt__active:empty { display: none; }
.fchip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 8px 5px 11px; border-radius: 999px; font-size: 12px; font-weight: 600; background: rgba(163, 230, 53, .1); border: 1px solid rgba(163, 230, 53, .3); color: var(--accent); cursor: pointer; }
.fchip svg { width: 14px; height: 14px; }

.alist { display: flex; flex-direction: column; }
.ar { display: grid; grid-template-columns: 96px 1.2fr 2fr 70px 110px; gap: 16px; align-items: center; padding: 10px 8px; border-top: 1px solid var(--line); border-radius: 10px; transition: background .15s; }
.ar:first-child { border-top: 0; }
.ar:hover { background: var(--surface-3); }
.ar__thumb { width: 96px; height: 50px; border-radius: 8px; background: #0d1014 center / cover no-repeat; border: 1px solid var(--line); }
.ar__thumb--none { background-image: repeating-linear-gradient(45deg, #111418 0 8px, #0e1115 8px 16px); }
.ar__map { font-weight: 600; min-width: 0; }
.ar__map small { display: block; color: var(--muted); font-weight: 400; font-size: 12px; margin-top: 2px; }
.ar__len, .ar__when { color: var(--muted); font-size: 13px; text-align: right; font-variant-numeric: tabular-nums; }
.ar__when small { display: block; color: var(--dim); font-size: 11px; }
.pager { display: flex; justify-content: center; align-items: center; gap: 6px; margin-top: 16px; flex-wrap: wrap; }
.pager button { min-width: 38px; height: 38px; padding: 0 10px; border-radius: 10px; border: 1px solid var(--line-2); background: var(--surface); color: var(--muted); font: 600 13px/1 "Inter"; cursor: pointer; transition: color .15s, border-color .15s; }
.pager button:hover { color: var(--text); border-color: var(--muted); }
.pager button.is-on { color: #08090c; background: var(--accent); border-color: var(--accent); }
.pager button:disabled { opacity: .35; cursor: default; }
.pager span { color: var(--dim); padding: 0 4px; }

/* players index */
.ptable { width: 100%; border-collapse: collapse; font-size: 14px; }
.ptable th { text-align: right; font: 600 11px/1 "Inter"; letter-spacing: .08em; text-transform: uppercase; color: var(--dim); padding: 10px 10px; border-bottom: 1px solid var(--line-2); cursor: pointer; white-space: nowrap; user-select: none; }
.ptable th:first-child, .ptable th:nth-child(2) { text-align: left; }
.ptable th.is-on { color: var(--accent); }
.ptable th.is-on::after { content: " ↓"; }
.ptable td { text-align: right; padding: 11px 10px; border-bottom: 1px solid var(--line); font-variant-numeric: tabular-nums; }
.ptable td:first-child { text-align: left; color: var(--dim); width: 44px; }
.ptable td:nth-child(2) { text-align: left; font-weight: 600; }
.ptable tr:hover td { background: var(--surface-3); }
.ptable .pn { display: inline-flex; align-items: center; gap: 10px; }
.ptable .pn i { width: 26px; height: 26px; border-radius: 8px; display: grid; place-items: center; font: 800 13px/1 var(--num); font-style: normal; color: #08090c; background: #4b5563; }
.ptable .pn i.a { background: var(--a); } .ptable .pn i.b { background: var(--b); }
.ptable .num { font: 700 17px/1 var(--num); }
.twrap { overflow-x: auto; margin: 0 -6px; padding: 0 6px; }
.prv { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.prc { display: flex; align-items: center; gap: 18px; padding: 20px; border-radius: var(--radius); background: linear-gradient(180deg, var(--surface-2), var(--surface)); border: 1px solid var(--line); transition: border-color .2s; }
.prc:hover { border-color: var(--line-2); }
.prc__ava { width: 64px; height: 64px; border-radius: 18px; display: grid; place-items: center; font: 800 34px/1 var(--num); color: #08090c; flex-shrink: 0; }
.prc--a .prc__ava { background: linear-gradient(135deg, #fff, var(--a)); } .prc--b .prc__ava { background: linear-gradient(135deg, #fff, var(--b)); }
.prc__n { font: 800 30px/1 var(--num); text-transform: uppercase; }
.prc--a .prc__n { color: var(--a); } .prc--b .prc__n { color: var(--b); }
.prc__s { color: var(--muted); font-size: 13px; margin-top: 6px; }
.prc__go { margin-left: auto; color: var(--muted); }

@media (max-width: 900px) { .ar { grid-template-columns: 80px 1fr auto; } .ar__thumb { width: 80px; height: 44px; } .ar > .mrow__pl { grid-column: 1 / -1; } .ar__len { display: none; } .prv { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .fld { flex: 1 1 140px; } .fld select, .fld input { min-width: 0; width: 100%; } .asum b { font-size: 30px; } .asum { gap: 22px; } }
.ptable td, .ptable th { white-space: nowrap; }
@media (max-width: 760px) { .ptable { min-width: 720px; } }

/* v2o — archive rows, pager, rival cards: phone layouts */
.alist { transition: opacity .2s; }
.alist.is-busy { opacity: .35; pointer-events: none; }
.ar__lenm { display: none; }
.ar__mn { overflow: hidden; text-overflow: ellipsis; }
.prc__body { min-width: 0; }
.prc__s { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.prc__s b { color: var(--text); font-weight: 600; font-variant-numeric: tabular-nums; }
.prc__go { display: inline-flex; align-items: center; gap: 4px; flex-shrink: 0; font-size: 13px; }
.prc__go svg { flex-shrink: 0; }
.prc:hover .prc__go { color: var(--text); }
@media (max-width: 900px) {
  .ar { grid-template-columns: 64px minmax(0, 1fr) auto; grid-template-areas: "t m w" "p p p"; gap: 10px 12px; align-items: center; padding: 14px 4px; }
  .ar__thumb { grid-area: t; width: 64px; height: 44px; }
  .ar__map { grid-area: m; display: flex; align-items: center; flex-wrap: wrap; gap: 0 6px; font-size: 15px; line-height: 1.25; }
  .ar__map .h2h { margin: 0; }
  .ar__map small { flex-basis: 100%; margin-top: 3px; }
  .ar__lenm { display: inline; }
  .ar > .mrow__pl { grid-area: p; gap: 4px 8px; font-size: 13px; }
  .ar .pl b { font-size: 17px; }
  .ar > .mrow__pl { padding: 8px 10px; border-radius: 8px; background: rgba(255,255,255,.025); }
  .ar__when { grid-area: w; align-self: start; white-space: nowrap; font-size: 12px; line-height: 1.3; }
  .pager { margin-top: 20px; gap: 8px; }
  .pager button { min-width: 44px; height: 44px; }
}
@media (max-width: 560px) {
  .prc { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 14px; padding: 16px; align-items: center; }
  .prc__ava { width: 52px; height: 52px; font-size: 28px; border-radius: 15px; }
  .prc__n { font-size: 24px; }
  .prc__s { font-size: 12px; gap: 3px 12px; margin-top: 7px; }
  .prc__go { margin: 0; width: 34px; height: 34px; justify-content: center; border-radius: 10px; border: 1px solid var(--line-2); }
  .prc__gt { display: none; }
}
/* v2p — rankings: newcomers (< 5 matches) listed below the ranked table */
.ptable tr.ptable__sep td { text-align: left; padding: 18px 10px 8px; color: var(--dim); font-size: 12px; border-bottom: 1px solid var(--line-2); background: none; }
.ptable tr.ptable__sep span { color: var(--muted); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; margin-right: 8px; }
.ptable tr.ptable__sep:hover td { background: none; }
.ptable tr.is-new td { opacity: .72; }
