/* centrum zawodow Pucharu Swiata - dodatki do menu.css */
.top-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.btn.light { color: #fff; border-color: rgba(255,255,255,0.5); }
.panel { margin-top: 22px; }
.comp-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.comp-head .sub { color: var(--ink-soft); font-weight: 600; }
.stage { display: grid; grid-template-columns: 1fr 340px; gap: 18px; margin-top: 14px; align-items: start; }
@media (max-width: 900px) { .stage { grid-template-columns: 1fr; } }
.next-box { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.next-box .who { font-size: 20px; font-weight: 800; color: var(--navy); display: flex; align-items: center; gap: 8px; }
.next-box.mine { border: 2px solid var(--red); box-shadow: 0 0 0 4px rgba(230,57,70,0.12); }
.next-box .btn { width: 100%; }
/* ostatnie skoki: cala lista bez przewijania; nazwisko zawija sie w swojej kolumnie, metry i punkty zawsze w jednej linii */
.feed { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.feed li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 10px; font-size: 13px; line-height: 1.35;
    padding: 5px 8px; border-radius: 6px; background: #f3f6f9; }
.feed .fd-name { min-width: 0; overflow-wrap: anywhere; }
.feed .fd-name .flag { vertical-align: -2px; }
.feed .fd-res { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.feed .fd-pts { min-width: 62px; text-align: right; color: var(--ink-soft); font-weight: 600; }
.feed li.me .fd-pts, .feed li.fall .fd-pts { color: inherit; }
.feed li.fall { color: var(--red); }
.feed li.me { background: rgba(255,209,102,0.35); font-weight: 700; }
.rec-table tr.me td { background: rgba(255, 209, 102, 0.3); font-weight: 700; }
.rec-table tr.cut td { border-bottom: 2px dashed var(--red); }
.tabs { display: flex; gap: 6px; border-bottom: 2px solid var(--line); margin: 16px 0 8px; flex-wrap: wrap; }
.tabs button { border: 0; background: transparent; padding: 9px 12px; font-weight: 700; font-size: 14px; color: var(--ink-soft); cursor: pointer; border-bottom: 3px solid transparent; margin-bottom: -2px; }
.tabs button.active { color: var(--navy); border-bottom-color: var(--red); }
.podium { display: flex; gap: 10px; justify-content: center; align-items: flex-end; margin: 16px 0; }
.podium div { background: #fff; border: 1px solid var(--line); border-radius: 10px 10px 0 0; padding: 10px 14px; text-align: center; min-width: 150px; }
.podium .p1 { height: 150px; background: #fff4cc; } .podium .p2 { height: 120px; } .podium .p3 { height: 100px; }
.podium b { display: block; font-size: 26px; color: var(--navy); }
.toast { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); background: var(--navy); color: #fff; padding: 10px 18px; border-radius: 999px; font-weight: 700; opacity: 0; transition: opacity 0.2s; pointer-events: none; }
.toast.show { opacity: 1; }

/* --- podium --- */
.podium-stage {
    position: relative; overflow: hidden;
    margin: 16px 0; padding: 18px 12px 0;
    border-radius: 14px;
    background: radial-gradient(ellipse at 50% 0%, #ffffff 0%, #dcebf7 45%, #a9c9e6 100%);
    box-shadow: inset 0 -30px 40px -20px rgba(16,35,58,0.25);
}
.podium-title { text-align: center; font: italic 900 22px/1.2 "Segoe UI Black", "Arial Black", Arial, sans-serif; color: var(--navy); margin-bottom: 4px; }
.podium-row { position: relative; z-index: 1; display: flex; justify-content: center; align-items: flex-end; gap: 6px; }
.pod { display: flex; flex-direction: column; align-items: center; flex: var(--n, 1) 1 0; max-width: calc(var(--n, 1) * 210px); min-width: 0; }
.pod-tops { display: flex; justify-content: center; align-items: flex-end; width: 100%; }
.pod-one { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; }
.pod-names { display: flex; justify-content: center; gap: 4px 14px; flex-wrap: wrap; width: 100%; }
.pod-who { display: flex; flex-direction: column; align-items: center; gap: 2px; flex: 1 1 0; min-width: 0; }
.pod.multi .pod-name { font-size: 13.5px; }
.pod-trophy { height: 132px; display: flex; align-items: flex-end; justify-content: center; filter: drop-shadow(0 6px 8px rgba(0,0,0,0.25)); }
.pod1 .pod-trophy { position: relative; z-index: 0; height: 170px; }
.pod-trophy .trophy { animation: shine 3s ease-in-out infinite; }
@keyframes shine { 50% { transform: translateY(-4px); filter: brightness(1.12); } }
.pod-fig { width: 100%; max-width: 150px; height: auto; aspect-ratio: 300 / 380; margin-bottom: -2px; }
.pod1 .pod-one { position: relative; height: 383px; }
.pod1 .pod-fig { position: absolute; z-index: 2; left: 50%; bottom: 0; transform: translateX(-50%); max-width: 168px; aspect-ratio: 300 / 560; margin-bottom: 0; }
.pod-step {
    width: 100%; display: flex; flex-direction: column; align-items: center; gap: 4px;
    padding: 10px 8px 14px; border-radius: 10px 10px 0 0; color: #fff;
    box-shadow: inset 0 3px 0 rgba(255,255,255,0.45), 0 -2px 10px rgba(16,35,58,0.15);
}
.pod1 .pod-step { min-height: 170px; background: linear-gradient(#f7d046, #d4a017 60%, #a87c0c); }
.pod2 .pod-step { min-height: 130px; background: linear-gradient(#eef1f4, #aab3bd 60%, #858f9a); }
.pod3 .pod-step { min-height: 100px; background: linear-gradient(#f0b47a, #c47a3a 60%, #97561f); }
.pod-num { font: italic 900 46px/1 "Segoe UI Black", "Arial Black", Arial, sans-serif; text-shadow: 0 3px 0 rgba(0,0,0,0.2); }
.pod-name { font-weight: 800; font-size: 15px; text-align: center; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; justify-content: center; text-shadow: 0 1px 2px rgba(0,0,0,0.35); }
.pod-pts { font-size: 13px; font-weight: 700; opacity: 0.95; }
.confetti { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.confetti i { position: absolute; top: -12px; width: 8px; height: 13px; border-radius: 2px; opacity: 0.85; animation: fall 4.2s linear infinite; }
@keyframes fall { 0% { transform: translateY(-20px) rotate(0); } 100% { transform: translateY(520px) rotate(540deg); } }
@media (prefers-reduced-motion: reduce) { .confetti, .pod-trophy .trophy { animation: none; display: none; } .pod-trophy .trophy { display: inline; } }
.my-trophy { text-align: center; font-size: 18px; font-weight: 800; color: #8a6508; background: #fff6c2; border-radius: 10px; padding: 10px; }
.cabinet { margin: 12px 0; padding: 12px; border-radius: 12px; background: linear-gradient(#5b3a1e, #3e2712); color: #fff; }
.cab-title { font-weight: 800; margin-bottom: 6px; }
.cab-row { display: flex; gap: 18px; align-items: flex-end; flex-wrap: wrap; }
.cab-item { display: flex; align-items: flex-end; gap: 6px; }
.cab-item b { font-size: 16px; }

.rec-table small.sp { color: var(--ink-soft); font-weight: 600; margin-left: 4px; }
.pod.me:not(.multi) .pod-step { box-shadow: inset 0 0 0 3px #ffd166, inset 0 3px 0 rgba(255,255,255,0.45); }
.pod.multi .pod-who.me .pod-name { text-decoration: underline; text-decoration-color: #ffd166; text-decoration-thickness: 3px; text-underline-offset: 3px; }

/* etap konkursu: Kwalifikacje / 1. seria / Seria finalowa */
.stage-badge {
    display: inline-block; margin-bottom: 6px; padding: 5px 12px; border-radius: 999px;
    background: var(--red); color: #fff; font: italic 900 15px/1 "Segoe UI Black", "Arial Black", Arial, sans-serif;
    letter-spacing: 0.04em; text-transform: uppercase;
}

/* menu etapow zawodow */
.stage-tabs button:disabled { opacity: 0.4; cursor: default; }
.stage-tabs button.live { color: var(--navy); }
.live-dot { display: inline-block; width: 8px; height: 8px; margin-left: 6px; border-radius: 50%; background: var(--red); vertical-align: middle; animation: livepulse 1.2s ease-in-out infinite; }
@keyframes livepulse { 50% { opacity: 0.3; } }

/* typografia jak w menu (Inter) */
.stage-badge { font: 700 12px/1 var(--font); font-style: normal; letter-spacing: 0.08em; padding: 6px 12px; }
.podium-title { font: 700 20px/1.2 var(--font); font-style: normal; letter-spacing: -0.02em; }
.pod-num { font: 800 40px/1 var(--font); font-style: normal; letter-spacing: -0.03em; }
.pod-name { font-weight: 650; }
.next-box .who { font-weight: 700; letter-spacing: -0.015em; }
.tabs button { font-weight: 600; }

.rec-table tr.waiting td { color: #8a9aab; }          /* jeszcze nie skakal w finale */
.rec-table tr.waiting td b { color: #6b7d90; }

/* baner konca Pucharu w wynikach konkursu */
.final-banner {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    margin: 14px 0; padding: 14px 18px; border-radius: 12px;
    background: linear-gradient(120deg, #1d3557, #2c5282); color: #fff;
    box-shadow: 0 6px 18px rgba(16, 35, 58, 0.25);
}
.final-banner b { display: block; font-size: 18px; }
.final-banner span { font-size: 13px; color: #c9d6e2; }
.final-banner .btn { background: var(--gold); color: var(--navy); }
.final-banner .fb-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.final-banner .btn.ghost { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.5); }
.rec-table td.gap { color: #8a6b6b; font-weight: 600; white-space: nowrap; }

/* dyskwalifikacja w tabelach */
.dsq { display: inline-block; padding: 1px 7px; border-radius: 4px; background: #e63946; color: #fff; font-size: 11.5px; font-weight: 800; letter-spacing: 0.04em; }

/* belka i wiatr pod odlegloscia (seria finalowa, wyniki konkursu) */
.rec-table small.det { display: block; font-size: 11px; font-weight: 500; color: var(--ink-soft); white-space: nowrap; margin-top: 1px; }

/* --- tabele wynikow: najwazniejsze duzo (metry, punkty), reszta w oknie szczegolow --- */
.rec-table.res b.big { font-size: 16px; font-weight: 800; }
.rec-table.res b.m { font-size: 15px; font-weight: 700; }
.rec-table.res tr[data-jid] { cursor: pointer; }
.rec-table.res tr[data-jid]:hover td { background: rgba(80, 160, 255, 0.08); }
.rec-table td.info { width: 34px; text-align: center; padding-left: 0; padding-right: 4px; }
.info-btn { width: 26px; height: 26px; border-radius: 50%; border: 1px solid #c9d6e2; background: #fff; color: #1d3557; font-size: 15px; line-height: 1; cursor: pointer; }
.info-btn:hover { background: #1d3557; color: #fff; }
.jd-bg { position: fixed; inset: 0; z-index: 100; background: rgba(10, 20, 35, 0.55); display: flex; align-items: center; justify-content: center; padding: 16px; }
.jd-modal { position: relative; width: min(560px, 100%); max-height: calc(100vh - 32px); overflow: auto; background: #f4f8fb; border-radius: 14px; padding: 18px 20px; box-shadow: 0 18px 50px rgba(0,0,0,0.35); }
.jd-modal h3 { margin: 0 34px 12px 0; display: flex; align-items: center; gap: 8px; }
.jd-close { position: absolute; top: 12px; right: 12px; width: 32px; height: 32px; border-radius: 50%; border: 0; background: #e3e9ef; font-size: 15px; cursor: pointer; }
.jd-close:hover { background: #1d3557; color: #fff; }
.jd-card { background: #fff; border-radius: 10px; padding: 10px 12px; margin-bottom: 10px; box-shadow: 0 1px 3px rgba(0,0,0,0.08); }
.jd-card h4 { margin: 0 0 6px; font-size: 12px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--ink-soft); }
.jd-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.jd-table td { padding: 4px 4px; border-top: 1px solid #edf1f5; }
.jd-table tr:first-child td { border-top: 0; }
.jd-table td.num { text-align: right; }
.jd-table td.pts { width: 64px; font-variant-numeric: tabular-nums; font-weight: 700; }
.jd-table tr.sum td { border-top: 2px solid #d5dee7; font-weight: 800; font-size: 15px; }
.jd-table small { color: var(--ink-soft); }
.jd-notes { display: inline-flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.jd-notes i { font-style: normal; font-variant-numeric: tabular-nums; }
.jd-notes i.out { text-decoration: line-through; color: #9aa7b3; }
.jd-fall { color: #e63946; font-weight: 700; font-size: 12px; }
.jd-total { text-align: right; font-size: 15px; padding: 4px 2px; }

/* znaczki ladowania: czerwony X = upadek, zolte dwie kreski = na dwie nogi */
.land { display: inline-flex; align-items: center; justify-content: center; width: 17px; height: 17px; border-radius: 50%; margin-left: 5px; vertical-align: -3px; }
.land svg { width: 13px; height: 13px; fill: none; stroke-width: 2.6; stroke-linecap: round; }
.land.crash { background: #e63946; }
.land.crash svg { stroke: #fff; }
.land.two { background: #ffc300; }
.land.two svg { stroke: #5c4300; }
.land-legend { font-size: 12px; color: var(--ink-soft); margin: 6px 2px 0; }
.land-legend .land { margin-left: 0; margin-right: 3px; }
.jd-two { color: #a67c00; font-weight: 700; font-size: 12px; }
.land.none { visibility: hidden; }

/* --- kalendarz Pucharu: przegladanie konkursow do tylu i do przodu --- */
.comp-nav { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; }
.cn-arrow { flex-shrink: 0; width: 34px; height: 34px; border-radius: 50%; border: 1px solid #c9d6e2; background: #fff; color: #1d3557; cursor: pointer; font-size: 13px; }
.cn-arrow:hover:not(:disabled) { background: #1d3557; color: #fff; }
.cn-arrow:disabled { opacity: 0.35; cursor: default; }
.cn-chips { display: flex; gap: 6px; overflow-x: auto; padding: 2px; scrollbar-width: thin; flex: 1; }
.cn-chip { flex-shrink: 0; display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; border: 1px solid #c9d6e2; background: #fff; color: #1d3557; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.cn-chip i { font-style: normal; font-size: 11px; }
.cn-chip.done i { color: #1e8a44; }
.cn-chip.live i { color: #e63946; }
.cn-chip.future { color: #7d8b98; }
.cn-chip:hover { border-color: #1d3557; }
.cn-chip.sel { background: #1d3557; border-color: #1d3557; color: #fff; }
.cn-chip.sel i { color: #ffd166; }
.cn-chip.tcs { border-color: #c9d8e6; background: #eef4fa; }   /* konkurs Turnieju Noworocznego w kalendarzu PS */
.cn-chip.tcs.sel { background: #1d3557; border-color: #1d3557; color: #fff; }
.stage-badge.done { background: #1e8a44; }
.stage-badge.future { background: #7d8b98; }

/* --- Puchar Druzynowy: wiersz druzyny + sklad --- */
.team-table tr.team-row td { border-top: 2px solid #d5dee7; background: #f6f9fc; }
.team-table tr.team-row.mine td { background: rgba(255, 209, 102, 0.28); }
.team-table tr.team-row.out td { opacity: 0.55; }
.team-table tr.member td { font-size: 13px; color: var(--ink-soft); padding-top: 3px; padding-bottom: 3px; border-top: 0; }
.team-table tr.member td:nth-child(2) { padding-left: 34px; }
.team-table tr.member.me td { color: #1d3557; font-weight: 700; }

/* lider klasyfikacji - zolty plastron */
.leader-chip { display: inline-block; margin-left: 6px; padding: 1px 7px; border-radius: 4px; background: #ffd200; color: #4a3b00; font-size: 10.5px; font-weight: 800; letter-spacing: 0.02em; vertical-align: 1px; white-space: nowrap; }
.leader-chip.red { background: #d81e2a; color: #fff; }
.cab-none { font-size: 14px; color: #f3e6d4; }

/* przycisk muzyki na podium */
.pod-sound {
    position: absolute; top: 8px; right: 8px; z-index: 2; width: 36px; height: 36px; border-radius: 50%; border: 0;
    background: rgba(16, 35, 58, 0.55); color: #fff; font-size: 17px; cursor: pointer; line-height: 36px; padding: 0;
}
.pod-sound:hover { background: rgba(16, 35, 58, 0.8); }
.pod-trophy img.globe { height: 160px; width: auto; }
.pod1 .pod-trophy img.globe { height: 168px; }
.pod-trophy img.falcon { width: auto; height: 168px; }   /* Zloty Jastrzab - zwyciezca Turnieju Noworocznego */
.pod.multi .pod-trophy img.falcon { height: 140px; }
.pod-trophy img.cup-img { width: auto; height: 124px; }
.pod1 .pod-trophy img.cup-img { height: 160px; }
.pod.multi .pod-trophy img.cup-img { height: 108px; }
.pod1.multi .pod-trophy img.cup-img { height: 130px; }
/* podium druzynowe: czterech skoczkow obok siebie na jednym stopniu, jeden puchar nad nimi */
.pod.team { max-width: calc(var(--n, 1) * 300px); min-width: 0; overflow: visible; }
.pod.team .pod-one { height: auto; }
.pod.team .pod-four { min-width: 0; display: flex; justify-content: center; align-items: flex-end; width: 100%; gap: 0; }
.pod.team .pod-fig { position: static; transform: none; flex: 0 1 25%; min-width: 0; width: 25%; max-width: 92px; height: auto; aspect-ratio: 300 / 380; margin: 0 -3% -2px; }
.pod.team .pod-trophy { height: auto; margin-bottom: 4px; }
.pod1.team .pod-trophy { height: auto; }
.pod-members { font-size: 11.5px; line-height: 1.25; opacity: 0.9; text-align: center; padding: 0 4px; }
@media (max-width: 560px) { .pod-members { font-size: 10px; } .pod.team .pod-name { font-size: 12.5px; } .pod.team .pod-trophy img.cup-img { height: 88px; } .pod1.team .pod-trophy img.cup-img { height: 112px; } }
.my-standing { margin-bottom: 10px; padding: 8px 12px; border-radius: 10px; background: #fff; border: 1px solid #d5e1ec; font-size: 14px; color: var(--navy); }
.my-standing b.lead { color: #1e8a43; }
.team-table tr.member[data-jid] { cursor: pointer; } .team-table tr.member[data-jid]:hover td { background: rgba(29,53,87,0.05); } .jd-team { font-weight: 600; color: var(--ink-soft); font-size: 14px; }
.autosave { align-self: center; font-size: 13px; font-weight: 600; color: #e8f3ea; background: rgba(30, 140, 70, 0.35); border: 1px solid rgba(160, 230, 180, 0.35); padding: 6px 12px; border-radius: 999px; white-space: nowrap; }
.autosave:empty { display: none; }
/* reczny zapis: brak zapisu albo zmiany od zapisu - bursztynowy opis, przycisk Zapisz podswietlony */
.autosave:has(.sp-none), .autosave:has(.sp-dirty) { color: #fff4d6; background: rgba(214, 140, 20, 0.38); border-color: rgba(255, 210, 120, 0.45); }
.sp-save.dirty { box-shadow: 0 0 0 2px rgba(255, 200, 80, 0.85); }
.sp-back:disabled, .sp-save:disabled { opacity: 0.45; cursor: default; }
/* telefon: dlugi napis (np. "· zaloguj sie, aby zapisac na koncie") zawija sie zamiast wychodzic poza ekran */
@media (max-width: 600px) { .autosave { white-space: normal; max-width: 100%; border-radius: 12px; line-height: 1.35; } }

/* Telefon / waski ekran: okienko "Na belce / Nastepny skok" (i stan druzyny) NA GORZE, nad tabela wynikow -
   bez przewijania calej tabeli w dol, zeby kliknac kolejny skok. Lista "Ostatnie skoki" zostaje pod tabela. */
@media (max-width: 900px) {
    .stage { display: flex; flex-direction: column; gap: 12px; }
    .stage > div:last-child:not(.next-box) { display: contents; }
    .stage .my-standing { order: -2; margin-bottom: 0; }
    .stage .next-box { order: -1; padding: 12px; gap: 8px; }
    .stage .next-box .who { font-size: 18px; }
    .stage > div:first-child > h3:first-child { margin-top: 4px; }
}
/* telefon: przycisk "dalej" przeniesiony przez puchar.js / druzyna.js pod zakladki (klasa m-top) */
@media (max-width: 900px) {
    .toolbar.m-top { margin: 10px 0 14px; }
    .toolbar.m-top .btn { flex: 1 1 auto; text-align: center; }
    .final-banner.m-top { margin: 10px 0 14px; }
}

/* Turniej Noworoczny: 1. seria w parach KO, szczesliwi przegrani, Zloty Jastrzab */
.pairs td.vs, .pairs th.vs { width: 28px; text-align: center; color: #8a97a3; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.pairs td[data-jid] { cursor: pointer; }
.pairs .seed { display: inline-block; min-width: 22px; color: #8a97a3; font-weight: 700; }
.pairs .pair-win { font-weight: 700; }
.pairs td.pair-win[data-jid] { box-shadow: inset 3px 0 0 #2a9d5c; }
.pairs .pair-lose { opacity: 0.55; }
.pairs .pair-bye { color: #8a97a3; font-style: italic; }
/* ranking 1. serii turnieju: przegrany w parze - czerwonawe tlo i przygaszony tekst; szczesliwy przegrany - zielonkawe tlo */
.rec-table tr.ko-lost td { background: #fbe9eb; color: #8c6a70; }
.rec-table tr.ko-lost td b { color: #7a4e57; }
.rec-table tr.ko-lost td:first-child { box-shadow: inset 4px 0 0 #e07a85; }
.rec-table tr.ko-ll td { background: #e8f6ee; }
.rec-table tr.ko-ll td:first-child { box-shadow: inset 4px 0 0 #2a9d5c; }
.rec-table tr.me.ko-lost td, .rec-table tr.me.ko-ll td { font-weight: 700; }
.ko-key { display: inline-block; width: 14px; height: 12px; border-radius: 3px; background: #fbe9eb; box-shadow: inset 3px 0 0 #e07a85; vertical-align: -1px; margin-right: 3px; }
.ll-chip {display: inline-block; margin-left: 4px; padding: 1px 6px; border-radius: 4px; background: #2a9d5c; color: #fff; font-size: 10.5px; font-weight: 800; vertical-align: 1px; }
.pair-line { margin: 4px 0 8px; }
.cab-item .eagle { font-size: 44px; line-height: 1; }
/* statuetka Zlotego Jastrzebia: w gablocie trofeow i przy napisach "Zloty Jastrzab" / "Zdobywasz Zlotego Jastrzebia" */
.cab-item .cup-img { display: block; width: auto; height: 54px; filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.35)); }   /* zloto_m / srebro_m / braz_m */
.cab-item .cab-falcon { display: block; width: auto; height: 54px; filter: drop-shadow(0 2px 3px rgba(16, 35, 58, 0.25)); }
.falcon-ico { width: auto; height: 34px; vertical-align: -10px; margin-right: 8px; filter: drop-shadow(0 2px 2px rgba(16, 35, 58, 0.25)); }
.eagle-win { margin: 6px 0 12px; padding: 10px 14px; border-radius: 10px; background: #eef4fa; border: 1px solid #c9d8e6; color: var(--navy); font-size: 16px; text-align: center; }

/* --- Sezon: konkursy Pucharu Mamutow i druzynowe w kalendarzu, trofea druzynowe, sekcje pucharow po Sezonie */
.cn-chip.loty { border-color: #ecc9bb; background: #fdf1ec; }
.cn-chip.loty.sel { background: #b5442b; border-color: #b5442b; color: #fff; }
.cn-chip.team { border-color: #bfe0c6; background: #eef6ee; }
.cn-chip.team.sel { background: #2e7d4a; border-color: #2e7d4a; color: #fff; }
.cab-team { position: relative; display: inline-block; }
.cab-team i { position: absolute; right: -6px; bottom: -2px; font-style: normal; font-size: 15px; filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.4)); }
.season-cup { margin-top: 28px; padding-top: 18px; border-top: 2px dashed #c9d6e2; }
.season-cup > h2 { display: flex; align-items: center; gap: 8px; }
.season-cup > h2 .tcs-ico.in { height: 30px; width: auto; }
