/* GWP Tabele – rankingi, terminarze i tabele. Fonty dziedziczone ze strony. */
.gwp-tabela{
	--gwp-bg:#ffffff; --gwp-bg2:#f6f8f4; --gwp-line:#dde3d8; --gwp-fg:#1c2a1e; --gwp-muted:#5d6b5f;
	--gwp-green:#1e4620; --gwp-green-ink:#ffffff; --gwp-green-soft:#e6efe3; --gwp-gold:#9a7b2f; --gwp-focus:#2f7a3a;
	--gwp-m-diament:#2f8aa3; --gwp-m-gold:#b8901f; --gwp-m-silver:#8a949b; --gwp-m-bronze:#a2622f;
	background:var(--gwp-bg); color:var(--gwp-fg); border:1px solid var(--gwp-line); border-radius:10px;
	font-size:15px; line-height:1.5; min-width:0; overflow:hidden; margin:0 0 16px;
}
.gwp-tabela *{box-sizing:border-box}
.gwp-tabela details, .gwp-tabela summary, .gwp-tabela .gwp-cols, .gwp-tabela .gwp-rcols{margin:0; box-shadow:none; background-image:none}
.gwp-tabela details{border:0; border-bottom:1px solid var(--gwp-line); padding:0}
.gwp-tabela summary{border:0; outline-offset:-2px}
.gwp-tabela .gwp-cols, .gwp-tabela .gwp-rcols{border:0; border-bottom:1px solid var(--gwp-line)}
.gwp-tabela :focus-visible{outline:2px solid var(--gwp-focus); outline-offset:2px}

/* Pasek narzędzi */
.gwp-t-tools{display:flex; flex-wrap:wrap; gap:10px; align-items:center; padding:12px 18px; background:var(--gwp-bg2); border-bottom:1px solid var(--gwp-line)}
.gwp-t-tools input[type=search], .gwp-t-tools select{font:inherit; font-size:14px; padding:8px 12px; border:1px solid var(--gwp-line); border-radius:8px; background:var(--gwp-bg); color:var(--gwp-fg); min-width:0; height:auto; margin:0; box-shadow:none}
.gwp-t-tools input[type=search]{flex:1 1 220px}
.gwp-t-tools select{flex:0 1 220px}
.gwp-t-tgl{display:flex; gap:8px; align-items:center; font-size:14px; cursor:pointer; margin:0}
.gwp-t-count{margin-left:auto; font-size:13px; color:var(--gwp-muted); font-variant-numeric:tabular-nums}
.gwp-t-empty{padding:24px 18px; margin:0; color:var(--gwp-muted)}
.gwp-t-loading{padding:28px 18px; margin:0; color:var(--gwp-muted); font-size:14px}
.gwp-t-foot{padding:10px 18px; font-size:12px; color:var(--gwp-muted); border-top:1px solid var(--gwp-line)}
.gwp-tabela [hidden]{display:none !important}

/* Wspólne */
.gwp-place{font-variant-numeric:tabular-nums; font-weight:600; color:var(--gwp-muted)}
.gwp-item[data-top="1"] .gwp-place{color:var(--gwp-gold)}
.gwp-name{font-weight:600; min-width:0}
.gwp-zo{color:var(--gwp-muted); font-size:14px; min-width:0}
.gwp-total{font-variant-numeric:tabular-nums; font-weight:600; text-align:right; font-size:16px}
.gwp-num{text-align:right}
.gwp-tag{display:inline-block; font-size:11px; line-height:1.6; padding:0 8px; border-radius:999px; background:var(--gwp-green-soft); color:var(--gwp-fg); font-weight:500; vertical-align:middle}
.gwp-medal{display:inline-flex; align-items:center; gap:6px; font-size:13px; white-space:nowrap}
.gwp-medal[data-m]::before{content:""; width:10px; height:10px; border-radius:50%; background:var(--gwp-mc)}
.gwp-medal[data-m="diament"]{--gwp-mc:var(--gwp-m-diament)}
.gwp-medal[data-m="zloty"]{--gwp-mc:var(--gwp-m-gold)}
.gwp-medal[data-m="srebrny"]{--gwp-mc:var(--gwp-m-silver)}
.gwp-medal[data-m="brazowy"]{--gwp-mc:var(--gwp-m-bronze)}
.gwp-medal-text{color:var(--gwp-muted)}
.gwp-btn{display:inline-flex; align-items:center; font-size:13px; font-weight:500; line-height:1.3; padding:6px 11px; border-radius:7px; border:1px solid var(--gwp-line); color:var(--gwp-fg) !important; text-decoration:none !important; background:var(--gwp-bg); white-space:nowrap}
.gwp-btn:hover{border-color:var(--gwp-green)}
.gwp-btn-primary{background:var(--gwp-green); border-color:var(--gwp-green); color:var(--gwp-green-ink) !important}

/* Ranking z rozwijanymi zawodami */
.gwp-cols, .gwp-sum{display:grid; grid-template-columns:52px minmax(0,1.6fr) minmax(0,1fr) 84px 140px 24px; gap:12px; align-items:center; padding:10px 18px}
.gwp-cols, .gwp-rcols{font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--gwp-muted); font-weight:600; border-bottom:1px solid var(--gwp-line)}
.gwp-l-grouped .gwp-item{border-bottom:1px solid var(--gwp-line)}
.gwp-sum{cursor:pointer; list-style:none; padding:12px 18px}
.gwp-sum::-webkit-details-marker{display:none}
.gwp-sum:hover{background:var(--gwp-bg2)}
.gwp-chev{width:20px; height:20px; color:var(--gwp-muted); transition:transform .2s}
details[open] > .gwp-sum .gwp-chev{transform:rotate(180deg)}
.gwp-starts{margin:0 18px 14px 82px; border-left:2px solid var(--gwp-green-soft); padding:2px 0 2px 16px}
.gwp-start{display:grid; grid-template-columns:minmax(0,1fr) 60px 130px; gap:12px; padding:6px 0; font-size:14px; align-items:center}
.gwp-start + .gwp-start{border-top:1px dashed var(--gwp-line)}
.gwp-w{text-align:right; font-variant-numeric:tabular-nums}

/* Ranking */
.gwp-rcols, .gwp-rrow{display:grid; grid-template-columns:52px minmax(0,1.4fr) minmax(0,1fr) 72px minmax(0,1.4fr); gap:12px; align-items:center; padding:10px 18px}
.gwp-rrow{border-bottom:1px solid var(--gwp-line)}
.gwp-comp{color:var(--gwp-muted); font-size:14px; min-width:0}

/* Terminarz */
.gwp-month{margin:0; padding:16px 18px 6px; font-size:18px; line-height:1.3; text-transform:capitalize; color:var(--gwp-fg)}
.gwp-ev{display:grid; grid-template-columns:62px minmax(0,1fr) auto; gap:16px; padding:12px 18px; border-top:1px solid var(--gwp-line); align-items:center}
.gwp-ev.is-past{opacity:.62}
.gwp-ev.is-past:hover{opacity:1}
.gwp-date{border:1px solid var(--gwp-line); border-radius:8px; text-align:center; padding:6px 0; background:var(--gwp-bg2)}
.gwp-date b{display:block; font-size:22px; line-height:1; font-variant-numeric:tabular-nums}
.gwp-date span{font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:var(--gwp-muted)}
.gwp-ev h4{margin:0 0 3px; font-size:15px; font-weight:600; line-height:1.35; color:var(--gwp-fg)}
.gwp-meta{font-size:13px; color:var(--gwp-muted); display:flex; flex-wrap:wrap; gap:4px 10px; align-items:center}
.gwp-dot{width:3px; height:3px; border-radius:50%; background:var(--gwp-muted)}
.gwp-acts{display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end}

/* Tabela uniwersalna */
.gwp-tw{overflow-x:auto}
.gwp-t{width:100%; border-collapse:collapse; margin:0; font-size:14px; border:0}
.gwp-t th{background:var(--gwp-bg2); text-align:left; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--gwp-muted); font-weight:600; padding:10px 14px; border:0; border-bottom:1px solid var(--gwp-line)}
.gwp-t td{padding:10px 14px; border:0; border-bottom:1px solid var(--gwp-line); vertical-align:top; color:var(--gwp-fg); background:transparent}
.gwp-t tr:hover td{background:var(--gwp-bg2)}

/* Telefon */
@media (max-width:640px){
	.gwp-t-tools{padding:12px 14px}
	.gwp-t-count{margin-left:0; width:100%}
	.gwp-cols, .gwp-rcols{display:none}
	.gwp-sum{grid-template-columns:38px minmax(0,1fr) auto 20px; grid-template-areas:"p n s c" "p z m c"; row-gap:2px; padding:12px 14px}
	.gwp-sum .gwp-place{grid-area:p}.gwp-sum .gwp-name{grid-area:n}.gwp-sum .gwp-zo{grid-area:z}.gwp-sum .gwp-total{grid-area:s}.gwp-sum .gwp-medal{grid-area:m; justify-self:end}.gwp-sum .gwp-chev{grid-area:c}
	.gwp-starts{margin:0 14px 12px 52px}
	.gwp-start{grid-template-columns:minmax(0,1fr) 44px}
	.gwp-start .gwp-medal{display:none}
	.gwp-rrow{grid-template-columns:38px minmax(0,1fr) auto; grid-template-areas:"p n s" "p z s" "p c c"; row-gap:2px; padding:11px 14px}
	.gwp-rrow .gwp-place{grid-area:p}.gwp-rrow .gwp-name{grid-area:n}.gwp-rrow .gwp-zo{grid-area:z}.gwp-rrow .gwp-total{grid-area:s}.gwp-rrow .gwp-comp{grid-area:c}
	.gwp-ev{grid-template-columns:52px minmax(0,1fr); padding:12px 14px}
	.gwp-acts{grid-column:1 / -1; justify-content:flex-start}
	.gwp-month{padding-left:14px}
	.gwp-t thead{display:none}
	.gwp-t, .gwp-t tbody, .gwp-t tr, .gwp-t td{display:block; width:100%}
	.gwp-t tr{padding:10px 14px; border-bottom:1px solid var(--gwp-line)}
	.gwp-t td{border:0; padding:3px 0; display:grid; grid-template-columns:minmax(90px,38%) minmax(0,1fr); gap:10px}
	.gwp-t td::before{content:attr(data-label); font-size:12px; color:var(--gwp-muted)}
	.gwp-t td.gwp-blank{display:none}
	.gwp-t tr:hover td{background:transparent}
}
@media (prefers-reduced-motion:reduce){.gwp-chev{transition:none}}
.gwp-tabela button.gwp-more{display:flex !important; align-items:center; justify-content:center; gap:8px; width:calc(100% - 36px) !important; margin:14px 18px !important; padding:10px 16px !important;
	font:inherit !important; font-size:14px !important; font-weight:600 !important; line-height:1.3 !important; letter-spacing:0 !important; text-transform:none !important;
	color:var(--gwp-green) !important; background:var(--gwp-green-soft) !important; border:1px solid transparent !important; border-radius:8px !important; box-shadow:none !important; cursor:pointer; transition:background .15s, color .15s}
.gwp-tabela button.gwp-more::after{content:""; width:7px; height:7px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-2px) rotate(45deg)}
.gwp-tabela button.gwp-more:hover, .gwp-tabela button.gwp-more:focus-visible{background:var(--gwp-green) !important; color:var(--gwp-green-ink) !important; border-color:var(--gwp-green) !important}
.gwp-tabela button.gwp-more:disabled{opacity:.6; cursor:wait}
.gwp-tabela button.gwp-more[hidden]{display:none !important}
