
.banlist-page{padding:34px 0 48px}
.banlist-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
.banlist-kicker{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#4f8cff;margin-bottom:7px}
.banlist-head h1{margin:0 0 6px;font-size:34px;line-height:1.1}
.banlist-head p{margin:0;color:var(--muted,#8d99ad);max-width:760px}
.banlist-counter{min-width:112px;text-align:center;border:1px solid var(--border,#23324a);border-radius:16px;padding:12px 16px;background:var(--card,#101927)}
.banlist-counter strong{display:block;font-size:24px}.banlist-counter span{font-size:12px;color:var(--muted,#8d99ad)}

.ban-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border,#23324a);margin-bottom:18px}
.ban-tabs a{display:flex;align-items:center;gap:8px;padding:13px 18px;text-decoration:none;color:var(--muted,#9ba8bb);font-weight:800;border-bottom:3px solid transparent}
.ban-tabs a:hover{color:var(--text,#eaf0f8)}
.ban-tabs a.active{color:#4fa3ff;border-bottom-color:#3ba8ff}
.tab-icon{font-size:18px}

.ban-search{display:flex;gap:10px;margin:0 0 18px}
.ban-search input[type=search]{flex:1;min-width:0;padding:12px 14px;border-radius:12px;border:1px solid var(--border,#23324a);background:var(--input,#0b1320);color:var(--text,#eef4ff);outline:none}
.ban-search input[type=search]:focus{border-color:#4f8cff;box-shadow:0 0 0 3px rgba(79,140,255,.14)}

.ban-table-wrap{overflow-x:auto;border:1px solid var(--border,#23324a);border-radius:16px;background:var(--card,#0e1724)}
.ban-table{width:100%;min-width:1180px;border-collapse:collapse}
.ban-table th{padding:12px 14px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#8e9aaf);background:rgba(255,255,255,.018);border-bottom:1px solid var(--border,#23324a)}
.ban-table td{padding:13px 14px;vertical-align:middle;border-bottom:1px solid rgba(130,150,180,.12);font-size:14px}
.ban-table tbody tr:last-child td{border-bottom:0}
.ban-table tbody tr:hover{background:rgba(79,140,255,.035)}

.ban-id{font-weight:800;color:#9eabc0}
.ban-date{font-weight:800;white-space:nowrap}.ban-time{color:var(--muted,#8793a7);margin-top:3px;font-size:12px}
.ban-duration{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(148,163,184,.13);font-weight:800;white-space:nowrap}
.ban-table td small{display:block;color:var(--muted,#8d99ad);margin-top:5px}

.ban-person{display:flex;align-items:center;gap:10px;min-width:220px}
.ban-avatar{width:34px;height:34px;min-width:34px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#526cff,#8d5cff);display:grid;place-items:center;color:white;font-weight:900;border:1px solid rgba(255,255,255,.12)}
.ban-avatar.admin{background:linear-gradient(135deg,#1aa0ff,#3765ff)}
.ban-avatar img{width:100%;height:100%;object-fit:cover}
.ban-person-info{display:flex;align-items:flex-start;flex-direction:column;gap:4px;min-width:0}
.ban-name{font-weight:850;color:var(--text,#edf4ff);text-decoration:none;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
a.ban-name:hover{color:#69adff}
.steam-pill{display:inline-flex;padding:3px 8px;border-radius:999px;background:rgba(148,163,184,.16);color:#c9d3e2;font-weight:750;font-size:11px;white-space:nowrap}
.steam64{font-size:10px;color:var(--muted,#7e8ba0);white-space:nowrap}

.server-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(66,99,235,.13);border:1px solid rgba(79,140,255,.16);white-space:nowrap;font-weight:750}
.ban-reason{min-width:180px;max-width:320px;line-height:1.4;word-break:break-word}
.ban-status{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-weight:850;font-size:12px;white-space:nowrap}
.ban-status.active{background:rgba(129,203,47,.14);color:#92df43;border:1px solid rgba(129,203,47,.25)}
.ban-status.expired{background:rgba(148,163,184,.12);color:#a7b1c0;border:1px solid rgba(148,163,184,.18)}

.ban-pagination{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:18px}
.ban-pagination a,.ban-pagination span{min-width:36px;height:36px;padding:0 10px;border-radius:9px;display:grid;place-items:center;text-decoration:none;color:var(--text,#eaf0fa);border:1px solid transparent;font-weight:750}
.ban-pagination a:hover{background:rgba(79,140,255,.1)}
.ban-pagination a.active{background:#263447;border-color:#33445c}
.ban-pagination .page-arrow{padding:0 17px;background:var(--card,#162132);border-color:var(--border,#27364c)}
.ban-page-info{text-align:right;color:var(--muted,#8793a7);font-size:12px;margin-top:8px}

.ban-empty{text-align:center;padding:56px 20px;border:1px solid var(--border,#23324a);border-radius:16px;background:var(--card,#0f1825)}
.ban-empty-icon{margin:0 auto 12px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(129,203,47,.13);color:#91dd42;font-size:25px}
.ban-empty h2{margin:0 0 7px}.ban-empty p{margin:0;color:var(--muted,#8996aa)}

@media(max-width:768px){
  .banlist-page{padding-top:20px}
  .banlist-head{align-items:flex-start}.banlist-head h1{font-size:28px}.banlist-counter{display:none}
  .ban-tabs{overflow-x:auto}.ban-tabs a{white-space:nowrap;padding:11px 13px}
  .ban-search{flex-wrap:wrap}.ban-search input[type=search]{flex-basis:100%}
  .ban-table-wrap{overflow:visible;border:0;background:transparent}
  .ban-table{min-width:0;display:block}.ban-table thead{display:none}.ban-table tbody{display:grid;gap:12px}
  .ban-table tr{display:block;border:1px solid var(--border,#23324a);border-radius:14px;background:var(--card,#0f1825);padding:8px 12px}
  .ban-table td{display:grid;grid-template-columns:105px minmax(0,1fr);gap:10px;border-bottom:1px solid rgba(130,150,180,.1);padding:10px 0}
  .ban-table td:last-child{border-bottom:0}.ban-table td::before{content:attr(data-label);color:var(--muted,#8793a7);font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}
  .ban-person{min-width:0}.ban-name{max-width:175px}.ban-reason{min-width:0;max-width:none}
  .ban-pagination{justify-content:center;flex-wrap:wrap}.ban-page-info{text-align:center}
}