.et-color-0{color:#8d9098;text-shadow:none}
.country-flag{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:11px;color:var(--dim)}.country-flag img{display:block;object-fit:cover;width:20px;height:15px;border:1px solid #ffffff20}.server-tags{display:flex;gap:5px;margin-top:4px;align-items:center}.game-tag{font-size:10px;color:#9de2b9}.info-tag{font-size:9px;color:var(--dim);border-left:1px solid var(--line);padding-left:5px}.gametype{font-size:11px;color:var(--dim)}.ping{font-size:11px;color:var(--accent)}
.et-color-1{color:#ff0000}
.et-color-2{color:#00ff00}
.et-color-3{color:#ffff00}
.et-color-4{color:#0000ff}
.et-color-5{color:#00ffff}
.et-color-6{color:#ff00ff}
.et-color-7{color:#ffffff}
.et-color-8{color:#ff8000}
.et-color-9{color:#808080}
.et-color-10{color:#bfbfbf}
.et-color-11{color:#bfbfbf}
.et-color-12{color:#008000}
.et-color-13{color:#808000}
.et-color-14{color:#000080}
.et-color-15{color:#800000}
.et-color-16{color:#804000}
.et-color-17{color:#ff991a}
.et-color-18{color:#008080}
.et-color-19{color:#800080}
.et-color-20{color:#0080ff}
.et-color-21{color:#8000ff}
.et-color-22{color:#3399cc}
.et-color-23{color:#ccffcc}
.et-color-24{color:#006633}
.et-color-25{color:#ff0033}
.et-color-26{color:#b31a1a}
.et-color-27{color:#993300}
.et-color-28{color:#cc9933}
.et-color-29{color:#999933}
.et-color-30{color:#ffffbf}
.et-color-31{color:#ffff80}
/* Keep the server header visible while its roster or history scrolls. */
#detail .player-table{display:table}
.scoreboard td.number{white-space:normal;overflow-wrap:anywhere}
#detail{width:min(1120px,calc(100% - 32px))}
.scoreboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 26px}.scoreboard-team{min-width:0}.team-heading{margin:0;font-size:15px;padding:9px 10px;background:var(--surface-raised);border-block:1px solid var(--line);text-transform:uppercase}.scoreboard-spectators{grid-column:1/-1}.scoreboard .player-table th:nth-child(n+2){width:78px}.scoreboard .with-kd th:nth-child(2){width:60px}.scoreboard .player-table td{padding:7px 5px}.scoreboard .player-table .server-link{font-size:13px}.scoreboard .player-table tbody tr:nth-child(odd){background:#303136}.scoreboard .player-table td:first-child{padding-left:8px}.scoreboard .player-table td:last-child{padding-right:8px}.player-class{display:inline-block;color:var(--dim);font-size:9px;width:27px;text-decoration:none;vertical-align:middle}.kd{font-size:12px}.kills{color:#8beb9c}.deaths{color:#ff8e85}
@media(max-width:900px){.scoreboard{grid-template-columns:minmax(0,1fr)}.scoreboard-spectators{grid-column:auto}}
@media(max-width:480px){.scoreboard .player-table th:nth-child(n+2){width:62px}.scoreboard .with-kd th:nth-child(2){width:46px}.scoreboard .player-table{font-size:12px}.scoreboard .player-table .server-link{font-size:12px}.player-class{width:24px;font-size:8px}.kd{font-size:11px}.scoreboard{gap:16px}}
#detail{padding:0;overflow:hidden}#detail[open]{display:flex;flex-direction:column}#detail .dialog-head{padding:18px 22px;margin:0;flex-shrink:0}#detail-body{padding:0 22px 20px;overflow:auto;min-height:0}.detail-tabs{margin-top:16px;gap:24px}.detail-panel{padding-top:16px;min-height:160px}.detail-controls{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;align-items:end;gap:14px;margin-bottom:16px}.detail-controls .check{grid-column:auto;min-height:36px}.history-filter{max-width:350px;margin-bottom:16px}.player-table{display:table;margin:0;list-style:revert;table-layout:fixed}.player-table th:nth-child(n+2){width:95px}.player-table td{padding:10px 12px}.player-table .server-link{font-size:14px;font-weight:600}.player-bot{margin-left:8px;font-size:10px;color:var(--dim)}.detail-history{table-layout:fixed;font-size:12px}.detail-history th:first-child{width:38%}.detail-history th:last-child{width:70px}.detail-history td{padding:9px 8px}.detail-history .server-link{font-size:13px}.detail-history td:nth-child(2),.detail-history td:nth-child(3){color:var(--dim)}.detail-panel .pagination{margin:14px 0}.detail-panel .section-heading{margin-top:0}
@media(max-width:600px){.detail-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.detail-controls .check{grid-column:1/-1;min-height:24px}.detail-history th:first-child{width:35%}.detail-history th:last-child{width:52px}.detail-history th{white-space:normal;font-size:10px}.detail-history td{padding:9px 5px;font-size:11px}.detail-history .server-link{font-size:12px}}
@media(max-width:480px){#detail .dialog-head{padding:14px}#detail-body{padding:0 14px 14px}.detail-tabs{gap:16px}.detail-tabs button{font-size:13px}.detail-controls{grid-template-columns:minmax(0,1fr)}.detail-controls .check{grid-column:auto}.player-table th:nth-child(n+2){width:62px}.player-table th,.player-table td{padding:9px 4px}.player-table .server-link{font-size:13px}.detail-history th:first-child{width:31%}.detail-history th:last-child{width:45px}}
@media(max-width:480px){.directory th:nth-child(n+5){display:none}.directory td:nth-child(6){grid-column:1;grid-row:3}.directory td:nth-child(7){grid-column:1;grid-row:4}.directory td:nth-child(8){grid-column:2;grid-row:4}.directory td:nth-child(9){grid-column:1/-1;grid-row:5}.directory .gametype{font-size:11px}}
.ranking-notice{margin:4px 0 0;padding:10px 12px;border-left:3px solid var(--gold);background:#242321;color:#e5d4aa;font-size:12px}.ranking-filters{display:grid;grid-template-columns:minmax(220px,2fr) minmax(130px,1fr) minmax(150px,1fr);gap:12px;padding:18px 0 14px;border-bottom:1px solid var(--line)}.ranking-table td:nth-child(2){min-width:250px}.ranking-table .rank-place{font-size:15px;color:var(--dim)}.ranking-table .rank-score{font-size:15px;font-weight:700;color:var(--accent)}.ranking-server{font-weight:700;overflow-wrap:anywhere}.ranking-method{border-top:1px solid var(--line);margin-top:22px;padding-top:18px;max-width:820px}.ranking-method h2{font:700 17px RobotoSlab,serif;margin:0 0 8px}.ranking-method p{color:var(--dim);font-size:12px;margin:5px 0}.ranking-table .observed{color:var(--dim)}
@media(max-width:700px){.ranking-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-filters .search{grid-column:1/-1}.ranking-table{min-width:760px}.ranking-page nav{gap:16px}}
@media(max-width:420px){.ranking-filters{grid-template-columns:minmax(0,1fr)}.ranking-filters .search{grid-column:auto}.ranking-page .brand img:last-child{width:82px}.ranking-page nav{gap:14px}.ranking-page nav a{white-space:nowrap}}
@font-face{font-family:RobotoSlab;src:url('/fonts/robotoslab-1.woff2') format('woff2');font-weight:400 800;font-display:swap}
:root{color-scheme:dark;--bg:#242427;--surface:#2b2c30;--surface-raised:#37383d;--line:#4b4c53;--txt:#f2f1ee;--dim:#bab8bf;--accent:#79d8b0;--gold:#e7bf68;--brand:#c49aff}
*{box-sizing:border-box;letter-spacing:0}body{margin:0;background:var(--bg);color:var(--txt);font:14px/1.5 system-ui,-apple-system,'Segoe UI',sans-serif}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{border:1px solid var(--line);background:#292a2e;color:var(--txt);border-radius:4px;min-height:36px;padding:6px 13px;cursor:pointer}button:hover{background:#35363b}button:disabled{opacity:.4;cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.wrap{max-width:1260px;margin:auto;padding:0 24px}header{background:#141415;border-bottom:1px solid var(--line)}.header-row{min-height:76px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.brand img{object-fit:contain}.brand span{height:30px;width:1px;background:var(--line)}nav{display:flex;gap:22px;flex:1;align-items:center}nav a{color:var(--dim);font-weight:600}nav [aria-current]{color:var(--brand)}.languages{display:flex;gap:4px}.languages button{padding:4px 8px;min-height:30px;background:transparent;font-size:12px}.languages [aria-pressed=true]{color:var(--brand);border-color:var(--brand)}main{padding-top:28px!important}.heading{display:flex;justify-content:space-between;align-items:center;gap:14px}.eyebrow{font-size:11px;font-weight:700;color:var(--dim);margin:0 0 5px}h1{font-family:RobotoSlab,serif;font-size:26px;line-height:1.25;margin:0;overflow-wrap:anywhere}.refresh{flex-shrink:0}.summary{display:flex;flex-wrap:wrap;gap:8px 24px;min-height:48px;align-items:center;color:var(--dim);font-variant-numeric:tabular-nums}.summary strong{color:var(--txt);font-size:17px;margin-right:5px}.summary .live{color:var(--accent)}.tabs{display:flex;border-bottom:1px solid var(--line);gap:24px;margin-top:10px}.tabs button{border:0;border-radius:0;background:transparent;padding:12px 0;color:var(--dim);border-bottom:2px solid transparent}.tabs [aria-selected=true]{color:var(--txt);border-bottom-color:var(--accent)}.filters{display:grid;grid-template-columns:minmax(180px,2fr) minmax(110px,1fr) minmax(110px,1fr) minmax(120px,1fr) minmax(145px,1.3fr);gap:12px;padding:20px 0 14px;border-bottom:1px solid var(--line)}label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--dim)}input,select{width:100%;min-width:0;height:36px;border:1px solid #484950;border-radius:4px;background:#18191c;color:var(--txt);padding:5px 9px}.check{grid-column:1/-1;flex-direction:row;align-items:center;gap:7px}.check input{width:15px;height:15px;accent-color:var(--accent);margin:0}.table-top{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--dim);padding:12px 0}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{color:var(--dim);font-weight:500;font-size:11px;text-transform:uppercase;border-bottom:1px solid var(--line);padding:9px 12px;white-space:nowrap}td{padding:11px 12px;border-bottom:1px solid #303137;vertical-align:middle;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}th:first-child,td:first-child{padding-left:0}th:last-child,td:last-child{padding-right:0}.directory td:first-child{width:42%;min-width:225px}.directory td:nth-child(2){max-width:170px}.directory td:nth-child(3){max-width:110px}.directory td:last-child{min-width:100px}.number{text-align:right;white-space:nowrap}.server-link{border:0;border-radius:0;padding:0;min-height:24px;background:none!important;text-align:left;color:var(--txt);font-weight:600;line-height:1.35;overflow-wrap:anywhere}.server-link:hover{color:var(--accent)}.address{display:block;color:var(--dim);font-size:11px;margin-top:3px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#74757e;margin-right:7px}.status-dot.online{background:var(--accent)}.status-dot.stale{background:var(--gold)}.mod{font-size:12px;color:var(--gold)}.age{font-size:12px;color:var(--dim)}.bot-count{color:var(--dim)}.occupancy{font-size:14px;font-weight:600}.occupancy small{color:var(--dim);font-weight:400}.directory tbody tr:hover{background:#242528}.empty{padding:25px 0;color:var(--dim);text-align:center}.pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin:20px 0}.pagination span{min-width:55px;text-align:center;color:var(--dim);font-size:12px}.player-search{display:flex;gap:10px;align-items:flex-end;max-width:480px;padding-top:22px}.player-search label{flex:1}.notice{color:var(--dim);font-size:13px;max-width:780px;margin:16px 0}#history-message{color:var(--accent)}footer{border-top:1px solid var(--line);margin:26px 0 0;padding:14px 0 24px;color:var(--dim);font-size:11px}footer p{margin:5px 0}footer a{color:var(--dim)}dialog{width:min(860px,calc(100% - 32px));max-height:90dvh;padding:22px;background:#1c1d20;color:var(--txt);border:1px solid #51525a;border-radius:6px;overflow:auto}dialog::backdrop{background:#000b}.dialog-head{display:flex;align-items:flex-start;gap:14px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:16px}.dialog-head>div{flex:1;min-width:0}.dialog-head h2{font-size:20px;line-height:1.4;margin:0;overflow-wrap:anywhere}.dialog-head button{width:34px;height:34px;min-height:34px;padding:0;font-size:24px}.detail-meta{display:flex;flex-wrap:wrap;gap:10px 22px;color:var(--dim);font-size:12px;margin:12px 0}.connect{display:flex;gap:8px}.connect code{padding:8px 10px;background:#111214;border:1px solid var(--line);flex:1;overflow-wrap:anywhere;font-size:12px}.connect button{flex-shrink:0}.section-heading{font-size:14px;margin:22px 0 8px}.chart{display:block;width:100%;height:150px;background:#17181a;border:1px solid var(--line)}.chart-labels{display:flex;justify-content:space-between;color:var(--dim);font-size:11px;margin-top:4px}.roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px;margin:0;padding:0;list-style:none}.roster li{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:34px;border-bottom:1px solid var(--line);min-width:0}.roster button{font-size:12px;font-weight:400;overflow-wrap:anywhere;min-width:0}.roster small{color:var(--dim);font-size:10px;white-space:nowrap}.detail-note{color:var(--dim);font-size:11px}.error{color:#ffab9f!important}
@media(max-width:800px){.header-row{gap:15px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}nav{order:3;flex-basis:100%;gap:20px;overflow:auto;font-size:12px}.languages{margin-left:auto}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.filters .search{grid-column:1/-1}.filters .check{grid-column:auto;align-self:end;min-height:36px}.directory td:first-child{min-width:210px}.roster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:801px){.directory td:first-child{width:33%;min-width:260px}.directory td{padding:9px 8px}.directory .country-cell{min-width:58px}.directory .gametype{min-width:90px}}
@media(max-width:480px){.wrap{padding:0 14px}.heading{align-items:flex-start}h1{font-size:22px}.refresh{padding:6px 9px;font-size:12px}.summary{gap:5px 14px;padding:12px 0}.summary strong{font-size:16px}.table-top{flex-direction:column;gap:3px}.directory{min-width:0}.directory tr{display:grid;grid-template-columns:minmax(0,1fr) 76px;border-bottom:1px solid var(--line);padding:10px 0;gap:3px 8px}.directory th{border:0;padding:0}.directory th:nth-child(2),.directory th:nth-child(3),.directory th:nth-child(5),.directory th:nth-child(6){display:none}.directory td{border:0;padding:0;min-width:0!important;max-width:none!important}.directory td:first-child{width:auto;grid-column:1;grid-row:1}.directory td:nth-child(2){grid-column:1;grid-row:2;font-size:12px;color:var(--dim)}.directory td:nth-child(3){grid-column:2;grid-row:2;text-align:right}.directory td:nth-child(4){grid-column:2;grid-row:1;align-self:center}.directory td:nth-child(5){grid-column:2;grid-row:3;font-size:11px}.directory td:nth-child(5)::before{content:attr(data-label) ': ';}.directory td:nth-child(6){grid-column:1;grid-row:3;font-size:11px}.roster{grid-template-columns:minmax(0,1fr)}dialog{padding:15px}.dialog-head h2{font-size:17px}.connect{flex-wrap:wrap}.connect code{flex-basis:100%}.player-search button{font-size:12px}#players-view table{min-width:650px}}

/* Higher-luminance charcoal surfaces keep the dense directory readable without
   turning ET color 0 into a bright halo. */
header{background:#1b1b1e}
button{background:var(--surface-raised)}
button:hover{background:#424349}
input,select{background:#202125;border-color:#55565e}
.directory tbody tr:hover{background:#303136}
dialog{background:var(--surface);border-color:#5c5d65}
.connect code{background:#202125}
.chart{background:#242529}

/* ETPS wspolna powloka (11.10.2026): pasek, menu, tlo i iskry jak na stronie glownej. */
@font-face{font-family:'Roboto Slab';src:url('/fonts/robotoslab-1.woff2') format('woff2');font-weight:400 800;font-display:swap;font-style:normal}
:root{--bg:#1c1c1c;--bg2:#161616;--surface:#232227;--surface-raised:#2c2a31;--line:#39343f;--txt:#ececf3;--dim:#a29daa;--brand:#b88cff;--vio:#b88cff;--vio2:#894aad}
body{background:var(--bg);font-family:'Roboto Slab',Georgia,'Times New Roman',serif}
h1,h2,h3,.team-heading{font-family:'Roboto Slab',Georgia,'Times New Roman',serif}
a{color:var(--vio)}
header{position:sticky;top:0;z-index:50;background:rgba(22,22,22,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
header,main,footer{position:relative}
main,footer{z-index:1}
header .wrap.hrow{max-width:1160px;padding:9px 0;display:flex;align-items:center;gap:14px;min-height:0;flex-wrap:nowrap}
@media(max-width:1200px){header .wrap.hrow{padding:9px 14px}}
.brand{display:flex;align-items:center;gap:0;flex:0 0 auto}
.brand img.et{height:32px;width:auto;display:block}
.brand .sep{width:1px;height:30px;background:var(--line);margin:0 13px}
.brand img.ps,.brand img:last-child{height:42px;width:auto;display:block}
nav{display:flex;gap:2px;flex-wrap:wrap;flex:1;justify-content:space-between;align-items:center;margin-left:18px;order:0;flex-basis:auto;overflow:visible;font-size:13px}
nav a{padding:8px 11px;border-radius:6px;color:var(--dim);font-size:13px;font-weight:700;white-space:nowrap;letter-spacing:.3px;text-decoration:none}
nav a:hover{color:var(--txt);background:rgba(184,140,255,.10)}
nav a.on,nav a[aria-current]{color:#fff;background:linear-gradient(180deg,var(--vio2),#5d2f76)}
.langsw{display:flex;gap:2px;margin-left:10px;align-items:center}
.langsw button{padding:5px 8px;min-height:0;border:0;border-radius:6px;background:transparent;font:800 12px 'Roboto Slab',Georgia,serif;color:var(--dim);letter-spacing:.5px;cursor:pointer}
.langsw button[aria-pressed=true]{background:rgba(184,140,255,.18);color:#fff}
.langsw button:hover{color:#fff;background:rgba(184,140,255,.10)}
#bgfx{position:fixed;inset:0;z-index:3;pointer-events:none;opacity:0;transition:opacity 1.2s ease}
#bgfx.on{opacity:1}
button{background:var(--surface);border-color:var(--line)}
button:hover{background:var(--surface-raised)}
input,select{background:#141216;border-color:var(--line)}
input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--vio);outline-offset:2px}
dialog{background:var(--surface);border-color:var(--line)}
.tabs .tablink,.tabs .tabcur{padding:12px 0;color:var(--dim);border-bottom:2px solid transparent;font-size:13px;text-decoration:none}
.tabs .tablink{margin-left:auto}
.tabs .tablink.first{margin-left:0}
.tabs .tablink:hover{color:var(--txt)}
.tabs .tablink::after{content:" \203A"}
.tabs .tablink.first::after{content:""}
.tabs .tablink.first::before{content:"\2039  "}
.tabs .tabcur{color:var(--txt);border-bottom-color:var(--accent)}
footer.site-footer{border-top:1px solid var(--line);color:var(--dim);font-size:12.5px;padding:22px 0;margin-top:40px;background:var(--bg2)}
footer.site-footer a{color:var(--dim);text-decoration:none}
footer.site-footer a:hover{color:var(--vio)}
main>footer{background:transparent}
@media(max-width:900px){.brand img.et,.brand .sep{display:none}}
@media(max-width:760px){
  header .wrap.hrow{flex-wrap:wrap;gap:10px}
  nav{margin-left:0;width:100%;justify-content:flex-start;order:3}
  nav a{padding:7px 10px;font-size:13px}
  .brand img.ps,.brand img:last-child{height:38px}
  .langsw{margin-left:auto}
}
body{min-height:100vh;display:flex;flex-direction:column}
body>main{flex:1 0 auto;width:100%}
/* Ranking serwerow jako zwykla zakladka obok pozostalych (wlasciciel nie mogl go znalezc, 11.10.2026). */
.tabs .tablink{margin-left:0;font-size:inherit;color:var(--brand)}
.tabs .tablink::after,.tabs .tablink.first::before{content:""}
.tabs .tablink:hover{color:var(--txt)}
.tabs .tablink.first{color:var(--dim)}
