:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#172b45;background:#f3f7fb}*{box-sizing:border-box}main{max-width:1100px;margin:35px auto;padding:0 18px}header{background:linear-gradient(110deg,#0b2443,#1b6a9a);color:white;padding:30px;border-radius:16px}header h1{margin:0}header p{opacity:.85}section{background:white;padding:20px;margin:20px 0;border-radius:12px;display:flex;flex-wrap:wrap;gap:16px;align-items:end}label{display:flex;flex-direction:column;gap:6px;font-weight:600}input,select,button{padding:11px;border:1px solid #bdcad8;border-radius:8px;font:inherit}button{background:#1765a4;color:white;border:0;cursor:pointer}button:hover{background:#104b7d}form{display:flex;gap:14px;flex-wrap:wrap;align-items:end}.tablewrap{overflow:auto;background:white;border-radius:12px}table{border-collapse:collapse;width:100%}th{background:#163d67;color:white;text-align:left}td,th{padding:11px;border-bottom:1px solid #dfe7ef}tr:nth-child(even){background:#edf5fc}td.num{text-align:right;font-variant-numeric:tabular-nums}footer{font-size:13px;color:#63758a;margin:30px 0}#status{white-space:pre-wrap;color:#254d6e}#list>div{background:white;margin:10px 0;padding:15px;border-radius:10px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0}.tab{background:#e0eaf4;color:#173b60;border:1px solid #c8d8e8;border-radius:9px 9px 0 0}.tab.active{background:#163d67;color:#fff}.filters{margin:12px 0}.description{color:#526c86}.thsort{background:transparent;border:0;color:inherit;padding:0;text-align:left;font-weight:700;white-space:nowrap}.thsort:hover{background:transparent;text-decoration:underline}.highlight{background:#fff0b4;font-weight:700}.tablewrap{margin-top:10px}#contestFilterWrap[hidden]{display:none}@media(max-width:650px){main{margin:12px auto}header{padding:20px}td,th{padding:8px}.tab{font-size:13px;padding:9px}}

/* Zwarty, spójny układ tabel publicznych — nagłówki dokładnie nad wartościami. */
main{max-width:1440px}
.tablewrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.results-table{width:100%;border-collapse:collapse;table-layout:auto;font-size:13px}
.results-table th,.results-table td{padding:9px 7px;vertical-align:middle;border-bottom:1px solid #dfe7ef}
.results-table th{white-space:normal;text-align:center}
.results-table td{text-align:center;font-variant-numeric:tabular-nums}
.results-table .thsort{display:block;width:100%;padding:3px 1px;line-height:1.2;text-align:center;white-space:normal;overflow-wrap:normal;hyphens:auto;border-radius:5px;font-size:12px}
.results-table th:first-child,.results-table td:first-child{width:35px;min-width:35px;text-align:center}
.results-table .col-name{text-align:left;width:175px;min-width:140px;overflow-wrap:break-word}
.results-table th.col-name .thsort{text-align:left}
.results-table .col-country{width:55px;min-width:45px}
.results-table .col-type{width:85px;min-width:65px}
.results-table .col-series{width:85px;min-width:65px}
.results-table .col-speed{width:80px;min-width:67px}
.results-table .col-distance{width:82px;min-width:70px}
.results-table .col-gate{width:52px;min-width:44px}
.results-table .col-wind{width:68px;min-width:58px}
.results-table .col-windcomp{width:86px;min-width:75px}
.results-table .col-style{width:67px;min-width:58px}
.results-table .col-points{width:94px;min-width:78px;font-weight:650}
.results-table .col-average,.results-table .col-total{min-width:105px}
.results-table.view-jumps{table-layout:fixed;min-width:990px}
.results-table.view-jumps .col-name{width:17%}
.results-table.view-jumps .col-country{width:5%}
.results-table.view-jumps .col-type{width:8%}
.results-table.view-jumps .col-series{width:8%}
.results-table.view-jumps .col-speed{width:8%}
.results-table.view-jumps .col-distance{width:8%}
.results-table.view-jumps .col-gate{width:5%}
.results-table.view-jumps .col-wind{width:7%}
.results-table.view-jumps .col-windcomp{width:9%}
.results-table.view-jumps .col-style{width:7%}
.results-table.view-jumps .col-points{width:8%}
@media(max-width:700px){.results-table{font-size:12px}.results-table th,.results-table td{padding:8px 5px}.results-table .thsort{font-size:11px}}

/* Wyszukiwarka bezpośrednio nad tabelą, we wszystkich widokach. */
.search-above-table{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:14px 0 8px;padding:12px 16px;background:#fff;border-radius:10px}
.search-above-table label{font-weight:650;white-space:nowrap}
.search-above-table input{flex:1 1 240px;max-width:480px;min-width:180px}
@media(max-width:650px){.search-above-table{align-items:stretch;flex-direction:column;gap:7px}.search-above-table input{flex:auto;max-width:none;width:100%}}

/* Szerokie zestawienia konkursowe: komplet danych każdej serii, bez ucinania. */
.results-table.view-contests{width:max-content;min-width:100%;table-layout:auto}
.results-table.view-contests th,.results-table.view-contests td{min-width:68px;padding:8px 7px;text-align:center}
.results-table.view-contests .col-name{min-width:165px;text-align:left}
.results-table.view-contests .col-country{min-width:48px}
.results-table.view-contests th[class*="_rank"],.results-table.view-contests td[class*="_rank"]{background:#e3f1e7;font-weight:650}
.results-table.view-contests th[class*="_points"],.results-table.view-contests td[class*="_points"]{background:#e3f1e7;font-weight:650}
.results-table.view-contests .col-total{background:#fff0b4;font-weight:750}
.results-table.view-contests .thsort{max-width:110px;white-space:normal}

/* Konkursy: maksymalnie czytelny, zwarty układ; miejsce i Points kończą każdą serię. */
main{max-width:1800px;width:calc(100% - 20px);padding:0 8px}
.results-table.view-contests{width:100%;min-width:1120px;table-layout:fixed;font-size:12px}
.results-table.view-contests th,.results-table.view-contests td{min-width:0;padding:7px 3px;line-height:1.15;white-space:nowrap;text-align:center}
.results-table.view-contests .thsort{max-width:none;font-size:11px;line-height:1.15;padding:2px 0;white-space:normal;overflow-wrap:normal}
.results-table.view-contests th:first-child,.results-table.view-contests td:first-child{width:28px;min-width:28px}
.results-table.view-contests .col-name{width:150px;min-width:135px;text-align:left;white-space:normal;overflow-wrap:anywhere}
.results-table.view-contests .col-country{width:43px;min-width:43px}
.results-table.view-contests th[class*="_speed"],.results-table.view-contests td[class*="_speed"]{width:67px}
.results-table.view-contests th[class*="_distance"],.results-table.view-contests td[class*="_distance"]{width:70px}
.results-table.view-contests th[class*="_gate"],.results-table.view-contests td[class*="_gate"]{width:49px}
.results-table.view-contests th[class*="_windcomp"],.results-table.view-contests td[class*="_windcomp"]{width:79px}
.results-table.view-contests th[class*="_style"],.results-table.view-contests td[class*="_style"]{width:52px}
.results-table.view-contests th[class*="_rank"],.results-table.view-contests td[class*="_rank"]{width:58px}
.results-table.view-contests th[class*="_points"],.results-table.view-contests td[class*="_points"]{width:60px}
.results-table.view-contests .col-total{width:79px;min-width:79px}
@media(max-width:1250px){.results-table.view-contests{width:max-content;min-width:1120px}}

/* Poprawka: usunięcie ograniczeń szerokości odziedziczonych po wcześniejszych wersjach. */
body:has(.view-contests) main{max-width:none;width:100%;margin:12px auto;padding:0 10px}
.results-table.view-contests{width:100%;min-width:0;table-layout:fixed;font-size:11px}
.results-table.view-contests th,.results-table.view-contests td{padding:6px 1px;min-width:0!important;max-width:none;line-height:1.15;overflow:hidden;text-overflow:clip}
.results-table.view-contests .thsort{font-size:10px;line-height:1.15;white-space:normal;overflow-wrap:anywhere;padding:1px 0}
.results-table.view-contests th:first-child,.results-table.view-contests td:first-child{width:2.5%!important;min-width:0!important}
.results-table.view-contests .col-name{width:12%!important;min-width:0!important;white-space:normal;text-align:left;overflow-wrap:break-word}
.results-table.view-contests .col-country{width:4%!important;min-width:0!important}
.results-table.view-contests th[class*="_speed"],.results-table.view-contests td[class*="_speed"]{width:5.4%!important}
.results-table.view-contests th[class*="_distance"],.results-table.view-contests td[class*="_distance"]{width:5.4%!important}
.results-table.view-contests th[class*="_gate"],.results-table.view-contests td[class*="_gate"]{width:4.2%!important}
.results-table.view-contests th[class*="_windcomp"],.results-table.view-contests td[class*="_windcomp"]{width:6.3%!important}
.results-table.view-contests th[class*="_style"],.results-table.view-contests td[class*="_style"]{width:4.5%!important}
.results-table.view-contests th[class*="_rank"],.results-table.view-contests td[class*="_rank"]{width:4.5%!important}
.results-table.view-contests th[class*="_points"],.results-table.view-contests td[class*="_points"]{width:5.4%!important}
.results-table.view-contests .col-total{width:6%!important;min-width:0!important}
/* Trzy serie wymagają przewijania; dwie serie mieszczą się na szerokości okna. */
.results-table.view-contests.three-rounds{min-width:1500px;width:1500px}
.results-table.view-contests.three-rounds th[class*="_"],.results-table.view-contests.three-rounds td[class*="_"]{min-width:0}
@media(max-width:800px){.results-table.view-contests{min-width:950px}}

/* Porównanie pozycji: zwięzłe kolumny i czytelny awans. */
.results-table.view-king{width:100%;table-layout:auto;min-width:820px}
.results-table.view-king th,.results-table.view-king td{padding:8px 5px}
.results-table.view-king td.col-difference{font-weight:750}
.results-table.view-king td.difference-positive{background:#daf4e2;color:#126632}
.results-table.view-king td.difference-negative{background:#ffe0e0;color:#a1212b}
.results-table.view-king td.difference-zero{background:#dff1ff;color:#17618c}
.results-table.view-king th.col-difference{background:#163d67;color:#fff}
.results-table.view-king .col-name{min-width:150px}
/* Podgląd importu i kontrola belek */
.import-file{border:1px solid #c9d4e2;border-radius:10px;padding:14px;margin:12px 0}
.import-file h3{margin:0 0 12px}
.import-series-row{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #e1e7ee}
.import-series-row strong{min-width:125px;align-self:center}
.import-series-row label{display:flex;flex-direction:column;gap:4px}
.import-series-row input{width:145px;max-width:100%}
.import-series-row small{color:#57697c;align-self:center}
#import-files,#preview-files{max-width:100%}
#preview button{margin:8px 8px 8px 0}

/* Sortowanie jednej wybranej kolumny w rankingu skoków */
[hidden]{display:none!important}
.jumps-sort-panel{display:flex;flex-wrap:wrap;align-items:end;gap:12px 18px;background:#e9f3fc;border:1px solid #c7dff2;border-radius:12px;padding:14px 18px;margin:12px 0 6px}
.jumps-sort-title{width:100%;font-weight:750;color:#163d67}
.jumps-sort-panel label{min-width:210px;flex:1 1 220px}
.jumps-sort-panel select{width:100%;background:#fff}
.jumps-sort-reset{background:#fff;color:#163d67;border:1px solid #a9c9e4;font-weight:600}
.jumps-sort-reset:hover{background:#d9ebfa}

.jumps-event-panel{display:flex;flex-wrap:wrap;align-items:end;gap:12px;background:#eaf3fb;border:1px solid #c7daed;border-radius:10px;padding:12px;margin:12px 0 8px}.jumps-event-panel[hidden]{display:none}.jumps-event-panel label{min-width:170px;flex:1}.jumps-event-panel label:first-of-type{flex:2}.jumps-event-panel select{width:100%;max-width:100%}

/* Eksport aktualnie widocznej tabeli przez systemowy wydruk do PDF. */
.export-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:16px 0}
#exportPdf{background:#163d67;color:white;font-weight:700;border:0;border-radius:8px;padding:10px 16px;cursor:pointer}
#exportPdf:hover{background:#245783}
#printReport{display:none}
@page{size:A4 landscape;margin:10mm}
@media print{
  @page{size:A3 landscape;margin:9mm}
  html,body{background:#fff!important;margin:0!important;padding:0!important;color:#17283b!important}
  body>main{display:none!important}
  #printReport{display:block!important;width:100%!important;font-family:Arial,sans-serif;font-size:9pt;color:#17283b}
  #printReport h1{font-size:17pt;margin:0 0 5mm;color:#163d67}
  #printReport h2{font-size:12pt;margin:0 0 3mm;color:#163d67}
  #printReport .print-filters{font-size:9pt;margin:0 0 2mm;overflow-wrap:anywhere}
  #printReport .print-count{font-size:8pt;color:#444;margin:0 0 4mm}
  #printReport table,#printReport table.results-table{display:table!important;width:100%!important;min-width:0!important;max-width:100%!important;table-layout:auto!important;border-collapse:collapse!important;font-size:8pt!important}
  #printReport th,#printReport td{box-sizing:border-box!important;width:auto!important;min-width:0!important;max-width:none!important;padding:3px 4px!important;border:1px solid #b5c1cc!important;white-space:normal!important;overflow-wrap:anywhere!important;overflow:visible!important;text-overflow:clip!important;text-align:center!important;line-height:1.2!important}
  #printReport th{background:#163d67!important;color:white!important;font-weight:700!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #printReport td.col-name,#printReport th.col-name{text-align:left!important}
  #printReport thead{display:table-header-group!important}
  #printReport tr{break-inside:avoid;page-break-inside:avoid}
  #printReport td.difference-positive{background:#daf4e2!important;color:#126632!important;print-color-adjust:exact}
  #printReport td.difference-negative{background:#ffe0e0!important;color:#a1212b!important;print-color-adjust:exact}
  #printReport td.difference-zero{background:#dff1ff!important;color:#17618c!important;print-color-adjust:exact}
  #printReport td.highlight{background:#fff0c5!important;print-color-adjust:exact}
  #printReport .print-footer{margin-top:5mm;font-size:8pt;color:#555}
  body.print-wide #printReport table{font-size:6pt!important}
  body.print-wide #printReport th,body.print-wide #printReport td{padding:2px 2px!important;font-size:6pt!important}
}

/* Widoczny raport przyjętych i odrzuconych plików PDF */
.import-alert{display:block;border:2px solid #d97706;border-left:8px solid #d97706;background:#fff7ed;color:#7c2d12;border-radius:12px;padding:16px 20px;margin:16px 0;white-space:normal}
.import-alert[hidden]{display:none!important}.import-alert h2{margin:0 0 8px;color:#9a3412}.import-alert ul{margin:8px 0;padding-left:24px}.import-alert li{margin:6px 0;overflow-wrap:anywhere}

.danger-button{border-color:#b42318!important;color:#b42318!important;background:#fff5f4!important}.danger-button:hover{background:#fee4e2!important}

/* Sortowanie rankingów historycznych */
.history-sort-header{width:100%;padding:4px 2px;background:transparent;border:0;color:inherit;font:inherit;font-weight:inherit;cursor:pointer;text-align:inherit;white-space:normal;}
.history-sort-header:hover,.history-sort-header:focus-visible{text-decoration:underline;outline-offset:2px;}
.history-sort-header span{font-size:.75em;opacity:.85;white-space:nowrap;}

/* PDF rankingów historycznych: wydruk aktualnie przefiltrowanej tabeli. */
.history-export-actions{display:flex;justify-content:flex-end;margin:12px 0}
#exportHistoryPdf{background:#163d67;color:#fff;font-weight:700;border:0;border-radius:8px;padding:10px 16px;cursor:pointer}
#exportHistoryPdf:hover{background:#245783}
#historyPrintReport{display:none}
@media print{
 @page{size:A4 landscape;margin:12mm}
 body>main{display:none!important}
 #historyPrintReport{display:block!important;width:100%!important;font:10pt Arial,sans-serif;color:#17283b!important}
 #historyPrintReport h1{font-size:17pt;margin:0 0 5mm;color:#163d67}
 #historyPrintReport h2{font-size:12pt;margin:0 0 4mm;color:#163d67}
 #historyPrintReport .history-print-filters{font-size:9pt;margin:0 0 2mm}
 #historyPrintReport .history-print-count{font-size:9pt;margin:0 0 4mm}
 #historyPrintReport table{display:table!important;width:100%!important;min-width:0!important;table-layout:auto!important;border-collapse:collapse!important;font-size:9pt!important}
 #historyPrintReport th,#historyPrintReport td{border:1px solid #b5c1cc!important;padding:5px 6px!important;text-align:center!important;white-space:normal!important;overflow-wrap:anywhere!important}
 #historyPrintReport th{background:#163d67!important;color:white!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 #historyPrintReport th:nth-child(2),#historyPrintReport td:nth-child(2){text-align:left!important}
 #historyPrintReport thead{display:table-header-group!important}
 #historyPrintReport tr{break-inside:avoid;page-break-inside:avoid}
 #historyPrintReport .history-print-weekends{font-size:8pt;margin-top:5mm;overflow-wrap:anywhere}
 #historyPrintReport .history-print-footer{font-size:8pt;color:#555;margin-top:3mm}
}

/* Czytelne nagłówki na jasnych polach — ciemne nagłówki pozostają białe. */
.results-table.view-contests th[class*="_rank"],
.results-table.view-contests th[class*="_points"],
.results-table.view-contests th.col-total {
  color:#17324d;
}
.results-table.view-contests th[class*="_rank"] .thsort,
.results-table.view-contests th[class*="_points"] .thsort,
.results-table.view-contests th.col-total .thsort {
  color:#17324d;
}
/* Przycisk sortowania przejmuje kontrastowy kolor komórki nagłówka. */
.results-table th .thsort,
.results-table th .history-sort-header,
th .history-sort-header { color:inherit; }


/* Kalkulator miejsca skoku */
.jump-calculator{margin:18px 0;padding:18px;border:1px solid #bed2e4;border-radius:12px;background:#eef5fb;color:#17324d}
.jump-calculator[hidden]{display:none!important}
.jump-calculator h2{margin:0 0 8px;color:#17324d;font-size:1.15rem}
.jump-calculator p{color:#263f56;margin:8px 0 12px}
.jump-calculator-fields{display:flex;flex-wrap:wrap;align-items:end;gap:12px}
.jump-calculator-fields label{display:flex;flex-direction:column;gap:5px;color:#17324d;font-weight:600}
.jump-calculator-fields input{padding:10px;border:1px solid #9fb5c9;border-radius:7px;background:white;color:#17324d;max-width:180px}
.jump-calculator-fields button{padding:11px 16px;border-radius:7px;background:#163d67;color:white;border:0;cursor:pointer;font-weight:700}
#calcResult{font-weight:700;color:#17324d}

/* Wyeksponowany wynik kalkulatora bez szczegółów obliczeń */
.calc-result:not(:empty){margin-top:16px;padding:16px 20px;border-radius:10px;background:#fff;border:2px solid #2466a0;text-align:center}
.calc-result-score{display:block;font-size:clamp(1.7rem,4vw,2.5rem);font-weight:800;color:#123e6b;line-height:1.2}
.calc-result-place{display:block;margin-top:8px;font-size:1.2rem;font-weight:750;color:#17324d}
