/* ==========================================================================
   HARMONOGRAM BRIDGE - CHILD THEME CUSTOM STYLES
   ========================================================================== */

/* --- ZMIENNE KOLORYSTYCZNE --- */
.cat-Open, .cat-Bam { --accent: #9e207f; --bg: #fbeaf9; }
.cat-Women { --accent: #e11d2b; --bg: #fdedee; }
.cat-Seniors { --accent: #b0c635; --bg: #f8faec; }
.cat-Mixed { --accent: #fbc724; --bg: #fffdf8; }
.cat-Swiss{
    --accent: #d6af60;
    --bg: #fefdfc;
}
.cat-blue { --accent: #71c7e1; --bg: #f3fafc; }
.cat-pink { --accent: #df1380; --bg: #fef3f9; }
/* --- STRUKTURA I RESET --- */
.bridge-wrapper { 
    margin: 20px 0; 
    overflow-x: auto; 
}

.bridge-table {
    border-collapse: collapse !important; /* Łączymy ramki, by tabela była stabilna */
    position: static !important;
}

.bridge-table thead, 
.bridge-table tr, 
.bridge-table th {
    position: static !important; /* Wyłącza wszelkie próby przyklejania */
    transform: none !important;  /* Usuwa ewentualne przesunięcia sprzętowe */
}

/* --- 1. RESET I USTAWIEŃIA OGÓLNE --- */
.bridge-table {
    border-collapse: separate;
    border-spacing: 0; /* Paski będą się stykać w pionie, tworząc ciągłą linię */
    width: 100%;
}

/* --- 2. WSPÓLNY STYL DLA WSZYSTKICH PASKÓW (Lewa krawędź) --- */
.bridge-table th:first-child, 
.bridge-table td:first-child,
.bridge-table th[class*="cat-"],
.bridge-table td[class*="cat-"] {
    box-sizing: border-box;
    /* Domyślny box-shadow, który będzie nadpisywany kolorami */
    box-shadow: inset 6px 0 0 0 #d1d1d1; 
    padding-left: 25px;
}

/* --- 3. PIERWSZA KOLUMNA (DZIEŃ) - POPRAWIONA SZEROKOŚĆ --- */
.bridge-table th:first-child, 
.bridge-table td:first-child {
    width: 26%; 
    min-width: 160px;
    background-color: #ffffff;
    box-shadow: inset 6px 0 0 0 #d1d1d1; /* Stabilny szary pasek */
}

/* --- 4. KOLUMNY SPORTOWE - TUTAJ SĄ TWOJE KOLORY --- */

.bridge-table td[class*="cat-"] {
    width: 37%; /* Dopasowanie szerokości */
    background-color: var(--bg);
    /* PRZYWRÓCENIE KOLORU: */
    box-shadow: inset 6px 0 0 0 var(--accent); 
}


/* Styl tekstu w nagłówkach kategorii */
.bridge-table th[class*="cat-"] {
	    width: 37%; /* Dopasowanie szerokości */
    background-color: var(--bg);
    /* PRZYWRÓCENIE KOLORU: */
    
    border-top: none !important;    /* Wyraźne usunięcie górnej ramki */
    border-left: none !important;   /* Usuwamy lewą (bo mamy tam box-shadow) */
    border-right: none !important;  /* Usuwamy prawą */
    
    /* Dodajemy tylko dolną ramkę w kolorze kategorii */
    border-bottom: 2px solid var(--accent) !important; 	
box-shadow: inset 6px 0 0 0 var(--accent);
    color: var(--accent);
    font-size: 20px;
    font-weight: 800;
    text-transform: uppercase;
    text-align: left;
    padding-top: 35px;
    padding-bottom: 15px;
}

/* --- 5. ZAOKRĄGLENIA (Tylko na rogach całej tabeli) --- */

/* Góra tabeli */
.bridge-table thead tr:first-child th:first-child { border-top-left-radius: 15px; }
.bridge-table thead tr:first-child th[class*="cat-"]:last-child { border-top-right-radius: 15px; }

/* Dół tabeli */
.bridge-table tbody tr:last-child td:first-child { border-bottom-left-radius: 15px; }
.bridge-table tbody tr:last-child td[class*="cat-"]:last-child { border-bottom-right-radius: 15px; }

/* --- 6. RESZTA DETALI --- */
.bridge-table td {
    padding: 20px 15px;
    vertical-align: top;
    border-bottom: 1px solid #f2f2f2; /* Subtelna linia pozioma między meczami */
}
/* Specjalny styl dla DATE (żeby pasował do reszty belki) */
.col-date {
    
    color:#4d4a4e !important;
    font-size: 0.95em !important;
    font-weight: 700;
    letter-spacing: 1px;
}

.date-cell { 
    width: 160px; 
    background-color: #fff !important;
}

.day-num { font-size: 15px; color: #aaa; font-weight: 800; text-transform: uppercase; }
.date-txt { font-weight: 700; font-size: 15px; color: #4d4a4e; margin: 2px 0; }

/* BADGE POD DATĄ */
.date-badge {
    display: block!important;
    background-color: #fff !important; /* Białe tło - lekkość */
    color: #4d4a4e !important;           /* Ciemny, bardzo czytelny tekst */
    
    font-size: 15px !important;       /* Duży font dla seniorów */
    font-weight: 800 !important;      /* Mocne pogrubienie */
    text-transform: uppercase;
    
    padding: 10px 0 !important;       /* Odstęp góra-dół */
    margin-top: 15px;
    
    /* Zamiast buttona - eleganckie obramowanie góra-dół */
    border-top: 2px solid #4d4a4e !important;
    border-bottom: 2px solid #4d4a4e !important;
    border-radius: 0 !important;      /* Koniec z zaokrąglonymi rogami */
    
    line-height: 1.3;
    text-align: center;
    box-shadow: none !important;      /* Usuwamy cień przycisku */
}
.badge-label {
    display: block;
    font-size: 10px !important;
    color: var(--accent, #71c7e1) !important;
    letter-spacing: 2px;
    margin-bottom: 6px;
    font-weight: 800;
}




.round-title { 
text-transform: uppercase !important; 
    font-weight: 600 !important;          /* Bardzo mocne pogrubienie */
    font-size: clamp(13px, 1.2vw + 1rem, 16px) !important;           /* Teraz to jest solidny rozmiar! */
    letter-spacing: 0.5px;                
    
    margin-bottom: 18px !important;       /* Dużo miejsca między wydarzeniami */
    line-height: 1.3 !important;          
    display: block;
    color: #4d4a4e !important;      /* Wymuszamy kolor kategorii, by był wyraźny */
}


.round-row { 
    display: flex; 
    flex-wrap: wrap; 
    gap: 6px; 
   
   margin-bottom: 25px !important;
    opacity: 0.9;
}

.round-row span {
    background: rgba(255,255,255,0.6);
    padding: 1px 5px;
    border-radius: 2px;
}

/* --- INTERAKCJA --- */
.bridge-table tbody tr:hover td { 
    background-color: #fafafa !important; 
}

/* Przywracamy kolor tła kategorii przy hover, żeby nie znikał */
.bridge-table tbody tr:hover td[class*="cat-"] { 
    background-color: var(--bg) !important;
    filter: brightness(0.98); 
}

/* --- SEKCYJNY DIVIDER (Nagłówek w środku) --- */
.section-divider th {
    padding-top: 40px !important; /* Większy odstęp od poprzedniej sekcji */
    border-bottom: 2px solid #ddd !important;
}

/* 1. Standardowa zebra dla kolumny z datą (i innych bez koloru) */
.bridge-table tbody tr:nth-child(even) td {
    background-color: #f9f9f9 !important;
}

/* 2. Zebra dla komórek kolorowych (Mixed, Seniors, itd.) */
/* Używamy filtra brightness, aby lekko przyciemnić bazowy kolor kategorii w co drugim wierszu */
.bridge-table tbody tr:nth-child(even) td[class*="cat-"] {
    background-color: var(--bg) !important; /* zachowujemy bazowy kolor */
    filter: brightness(0.96); /* delikatnie przyciemniamy co drugi wiersz */
}

/* 3. Poprawka dla efektu hover, aby był mocniejszy niż zebra */
.bridge-table tbody tr:hover td {
    background-color: #f2f2f2 !important;
    filter: none !important;
}

.bridge-table tbody tr:hover td[class*="cat-"] {
    filter: brightness(0.92) !important; /* wyraźniejsze podświetlenie przy najechaniu */
}

/* Jeśli chcesz, żeby tekst wewnątrz komórek (np. rundy) też miał kolor akcentowy */
td[class*="cat-"] .round-title {
    color: var(--accent);
	background-color: var(--bg) !important;
    font-weight: bold;
}


[class*="bg-teamy"]-head {
    background-color: var(--accent) !important; /* Ciemniejszy kolor akcentowy jako tło */
    color: #ffffff !important;                       /* Biały tekst */
    text-transform: uppercase;
    font-weight: bold;
}

/* ==========================================================================
   CENNIK - WERSJA OCZYSZCZONA
   ========================================================================== */

.packages-container { 
    display: flex; 
    flex-wrap: wrap; 
    gap: 20px; 
    align-items: stretch; 
    padding: 20px 0;
}

/* Pojedynczy boks */
.package-box { 
    position: relative; 
    background-color: var(--bg);
    border-radius: 15px; 
    padding: 25px; 
    flex: 1 1 calc(33.333% - 20px); 
    min-width: 320px; 
    max-width: 400px;
    display: flex;
    flex-direction: column; 
    box-sizing: border-box;
    /* Linia na górze w kolorze kategorii */
    border-top: 6px solid var(--accent) !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

/* Etykieta PAKIET / POJEDYNCZY TURNIEJ w prawym górnym rogu */
.package-head .head-oplata {
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--accent) !important;
    color: #ffffff !important;
    
    padding: 8px 20px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    
    /* Przywracamy zaokrąglenie lewego dolnego rogu */
    border-bottom-left-radius: 15px !important; 
    /* Górny i prawy róg musi mieć 15px, aby pasował do obramowania boxu */
    border-top-right-radius: 10px !important; 
    
    line-height: 1;
    z-index: 10;
}

/* Główny tytuł: Open, Women itd. */
.package-head .head-title {
    display: block;
    font-size: 38px;
    font-weight: 700;
    color: var(--accent);
    margin-top: 10px;
	text-transform: uppercase!important;
}

/* Napis OPŁATA/GRACZ */
.package-box h4 {
    font-size: 12px;
    color: #64748b;
    font-weight: 600;
    margin: 15px 0 20px 0;
    text-transform: uppercase;
    border: none !important; /* Usuwamy linię stąd, damy ją niżej */
}

/* SEKCJA CENOWA - Twoje zielone strzałki (linie) */
.package-body { 
    display: flex; 
    gap: 10px; 
    width: 100%;
    border-top: 1px solid var(--enfold-header-color-bg2);/* LINIA NAD CENAMI */
    padding-top: 15px;
    margin-bottom: 5px;
}

.price-col { 
    flex: 1; 
    display: flex;
    flex-direction: column;
	padding-top: 15px !important;    /* Wspólny odstęp od góry dla obu kolumn */
    padding-bottom: 15px !important; /* Wspólny odstęp od dołu */
}

/* Ramka dla Polaków */
.pl-zone { 
    background: white; 
    border: 1px solid var(--accent);
   
    border-radius: 10px; 
    padding-left: 7px;
    padding-right: 7px;
    display: flex;
    flex-direction: column;
    align-items: center;         /* Zapobiega zwężaniu się ramki na mobile */
}
.all-tag {color: #000!important;}
/* Etykiety ZAWODNIK, WPISOWE - Twoje czerwone podkreślenia (czarny kolor) */
.all-tag, .pl-tag {
    font-size: 11px;
    font-weight: bold;
    margin-bottom: 10px;
    display: flex;

    border-bottom: 1px solid var(--accent);
   
}

.pl-tag { color: #e53e3e !important; } /* Tag "Z Polski" zostawiamy czerwony dla widoczności */
.pl-tag::before { content: ""; width: 14px; height: 10px; background: linear-gradient(to bottom, #fff 50%, #f00 50%); border: 1px solid #ddd; margin-right: 6px; }

/* Elementy listy: Utytułowany, Bez tytułu */
.p-item { 
    display: flex; 
    justify-content: space-between; 
    align-items: center;
    margin-bottom: 8px;
    font-size: 14px;
}

.p-item span { 
    color: #000 !important; /* CZARNY DLA NAPISÓW */
    font-weight: 500;
}

.p-item strong { 
    font-size: clamp(14px, 1.2vw + 1rem, 17px) !important;  
    color: #000 !important; /* CZARNY DLA CEN */
    white-space: nowrap;
}

/* SEKCJA ZAWIERA - Druga zielona strzałka */
.card-includes {
    margin-top: auto;
    border-top: 1px solid var(--enfold-header-color-bg2);
    padding-top: 10px;
}

.card-includes h4 {
    font-size: 12px;
    font-weight: 700;
    color: #000 !important;
    text-transform: uppercase;
    margin-bottom: 10px;
    border: none !important;
}

.inc-item { 
    font-size: 13px; 
    margin-bottom: 6px; 
    display: flex; 
    align-items: center; 
    color: var(--accent); /* Tutaj zostawiamy kolor kategorii dla czytelności listy */
}

.inc-item i::before { 
    content: "✓"; 
    margin-right: 8px; 
    font-weight: bold; 
}

    .header-section {
        border-bottom: 2px solid #0056b3;
        margin-bottom: 25px;
        padding-bottom: 10px;
    }

    
    .promo-box {
        background-color: #e2f4f9;
        border: 1px solid #d2edf6;
        padding: 15px 20px;
        border-radius: 8px;
        margin: 20px 0;
    }
    .promo-box strong { color: #d32f2f; }
    
    .titles-list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        background: #f9f9f9;
        padding: 15px;
        border-radius: 8px;
    }
    .note { font-style: italic; font-size: 0.9em; color: #666; margin-top: 10px; }
/* Stylizacja sekcji rejestracji */
.wb-reg-box {
    background-color: #f8f9fa;
    padding: 25px;
    border-radius: 8px;
    border: 1px solid #dee2e6;
}
.wb-reg-box-white {
    background-color: #fff;
    padding: 25px;
    border-radius: 8px;
    border: 1px solid #dee2e6;
} 

.wb-reg-button {
    display: inline-block;
    background-color: #000;
    color: #fff !important;
    padding: 15px 30px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 4px;
    margin: 15px 0;
    transition: opacity 0.3s;
}

.wb-reg-button:hover {
    opacity: 0.8;
}

/* Stylizacja sekcji bazy danych */
.wb-db-check {
    border-left: 5px solid #0056b3;
    padding: 5px 0 5px 20px;
}

.wb-steps-list {
    list-style-type: decimal;
    padding-left: 20px;
    margin-top: 15px;
}

.wb-steps-list li {
    margin-bottom: 10px;
}

.wb-note-box {
    background-color: #fff3cd;
    padding: 12px;
    border-radius: 4px;
    font-size: 0.95em;
    margin-top: 15px;
    border: 1px solid #ffeeba;
}


/* 9. RESPONSYWNOŚĆ */
@media (max-width: 767px) {
    .bridge-table {  } /* Zapewnia czytelność kolumn na mobile */
 
}
@media (max-width: 768px) {
  /* 1. Zamieniamy tabelę na stos klocków */
     /* Robimy bloki ze wszystkiego OPRÓCZ wiersza z klasą section-divider */
    .bridge-table, 
    .bridge-table thead, 
    .bridge-table tbody, 
    .bridge-table th, 
    .bridge-table td, 
    .bridge-table tr:not(.section-divider) {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
    }


    /* 2. Ukrywamy nagłówki (thead), bo na mobile zwykle zajmują za dużo miejsca. 
       Zostawimy je tylko, jeśli są Ci absolutnie niezbędne, ale standardowo się je chowa. */
   /* Ukrywamy całą sekcję nagłówkową tabeli */
    .bridge-table thead, .bridge-table tr.section-divider {
        display: none !important;
    }
	

   
    /* 3. Każdy wiersz (TR) staje się osobną, białą kartą z odstępem */
    .bridge-table tr {
        background: #ffffff;
        margin-bottom: 25px; /* Odstęp między Dniem 1, Dniem 2 itd. */
        border-radius: 15px;
        overflow: hidden; /* Żeby paski nie wystawały poza zaokrąglenia */
        box-shadow: 0 4px 12px rgba(0,0,0,0.08); /* Delikatny cień karty */
    }

   /* 4. Wspólny styl dla wszystkich komórek wewnątrz karty */
    .bridge-table td {
        padding: 20px !important;
        border: none !important; /* Usuwamy stare linie tabeli */
        box-shadow: inset 6px 0 0 0 #d1d1d1; /* Domyślny szary pasek */
    }

    /* 5. Pierwsza komórka (Data / Dzień) */
    .bridge-table td:first-child {
        background-color: #fcfcfc;
        border-bottom: 1px solid #f2f2f2 !important;
    }

    /* 6. Komórki kategorii (Miksty, Seniorzy) - przywracamy kolory */
    .bridge-table td[class*="cat-"] {
        background-color: var(--bg) !important;
        box-shadow: inset 6px 0 0 0 var(--accent) !important; /* Kolorowy pasek */
        margin-top: 0;
    }

    /* Dodatkowy odstęp nad tekstem w kategoriach, aby nie był przyklejony do góry */
    .bridge-table td[class*="cat-"] {
        padding-top: 25px !important;
        padding-bottom: 25px !important;
    }

}
/* Przyciski */

.gblue a.avia-button {background-color:#71c7e1;border-color:#f3fafc!important;}
.gpink a.avia-button {background-color:#df1380;border-color:#fef3f9!important;}
.gswiss a.avia-button {background-color:#d6af60;border-color:#fefdfc!important;}

#top #wrap_all .avia-slideshow-button {background-color:#df1380;}
.gbutton a.avia-button {min-width:163px;}

/* moje */
.avia_codeblock_section .av-desktop-hide.avia_code_block_2 {
    width: 98% !important;
max-width: none !important;
}
.gfull .container, #gtak .container{
  width: 100% !important;
  max-width: none !important;
}
.entry-content-wrapper a:hover .alignright,.entry-content-wrapper a:hover .alignleft {

  margin:0px 0px 0px 0px;background:transparent;

}


.image-overlay.overlay-type-image {display:none!important}
.gtop {margin-top:-290px;margin-bottom:-280px;z-index:9000;}
/* 1. Cały pasek - wymuszamy niebieskie tło na kontenerze */
#top .av-submenu-container {
    background-color: #00a8e1 !important;
    border-bottom: 1px solid rgba(0,0,0,0.1) !important;
}

/* 2. Poprawa linków - UX i powierzchnia klikalności */
#top .av-submenu-container .av-subnav-menu li a {
    color: #ffffff !important;
    background-color: #00a8e1 !important; /* Spójne tło */
    font-weight: 600 !important;
    border: none !important;
    
    /* KLUCZ DO UX: sprawiamy, by link zajmował całą wysokość i był większy */
    padding: 20px 25px !important; 
    line-height: 1 !important;
    display: block !important;
    transition: all 0.3s ease; /* Płynny efekt */
}

/* 3. Wyraźny HOVER na dużej powierzchni */
#top .av-submenu-container .av-subnav-menu li a:hover {
    background-color: #0089b8 !important; /* Ciemniejszy niebieski na całości */
    color: #ffffff !important;
    text-decoration: none !important;
}

/* 4. Usunięcie zbędnych odstępów w liście */
#top .av-subnav-menu li {
    padding: 0 !important;
    margin: 0 !important;
}
/* Styl dla menu na mobile - teraz już naturalnie sticky dzięki skryptowi */
/* Ukrywamy na komputerach */
.custom-mobile-nav-wrapper { display: none; }

@media only screen and (max-width: 989px) {
	.responsive #top .slideshow_caption {top:-70px;}

	#top #full_slider_2 {margin-bottom:80px;}
	#top .av-submenu-container {display:none}


    .custom-mobile-nav-wrapper {
        display: block;
        width: 100%;
        clear: both;
    }

    .custom-mobile-nav {
        position: -webkit-sticky !important;
        position: sticky !important;
        /* Ustaw top na wysokość swojego logo, np. 80px lub 100px */
        top: 80px !important; 
        left: 0;
        width: 100vw !important; /* Wymusza szerokość całego ekranu */
        margin-left: calc(-50vw + 50%); /* Centruje pasek, jeśli jest w kontenerze */
        background-color: #00a8e1;
        z-index: 10000 !important;
        box-shadow: 0 4px 10px rgba(0,0,0,0.15);
    }

    .mobile-nav-inner {
        display: flex;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        padding: 0 10px;
    }

    /* Ukrywamy pasek przewijania */
    .mobile-nav-inner::-webkit-scrollbar { display: none; }

    .mobile-nav-inner a {
        display: inline-block;
        color: #ffffff !important;
        padding: 15px 20px;
        text-decoration: none !important;
        font-weight: 700;
        font-size: 13px;
        text-transform: uppercase;
    }

    /* Efekt kliknięcia */
    .mobile-nav-inner a:active {
        background-color: rgba(0, 0, 0, 0.1);
    }
}
