.pk-program-container { 
    font-family: Poppins !important; 
    max-width: 1000px; 
    margin: 0 auto; 
    background-color: #ffffff; 
    padding: 20px;
    border-radius: 16px;
    color: #000000; 
}

.pk-tabs-nav { 
    display: flex; 
    gap: 12px; 
    margin-bottom: 40px; 
    justify-content: center; 
    flex-wrap: wrap;
}

.pk-tab-btn { 
    padding: 12px 30px; 
    border: 1px solid #E5E5E4; 
    background: #E5E5E4; 
    color: #000000;
    cursor: pointer; 
    border-radius: 12px; 
    font-weight: 700; 
    font-size: 14px; 
    letter-spacing: 0.5px;
    transition: all 0.3s ease; 
}

.pk-tab-btn.active, .pk-tab-btn:hover { 
    color: #ffffff; 
    border-color: var(--pk-kolor-przyciski); 
    background: var(--pk-kolor-przyciski); 
}

.pk-day-content { 
    display: none; 
}
.pk-day-content.active { 
    display: block;
    animation: fadeIn 0.4s ease;
 }

.pk-session-accordion { 
    margin-bottom: 20px; 
    border: 1px solid #AAAAAA;
    border-radius: 16px; 
    background: rgba(255, 255, 255, 0.03); 
    overflow: hidden; 
}
.pk-session-header { 
    display: flex; 
    align-items: center; 
    padding: 20px; 
    cursor: pointer; 
    background: #F9F9F9;
    transition: background 0.2s;
}

.pk-session-accordion.no-lectures .pk-session-header { 
    cursor: default; 
}

.pk-session-time-col, .pk-lecture-time-col { 
    min-width: 60px; 
    display: flex; 
    flex-direction: column;
    margin-right: 20px; 
    flex-shrink: 0; 
    padding-top: 6px;
    font-weight: 700;
    align-items: flex-end;
}

.pk-time-start { 
    font-size: 20px; 
    color: #000000; 
}

.pk-time-end {
    font-size: 16px;
    color: #9ca3af;
    font-weight: 500;
    margin-top: 4px; 
}

/* OKRĄGŁE IKONY */
.pk-session-icon-col, .pk-lecture-icon-col {
    width: 56px;           
    height: 56px;          
    min-width: 56px;       
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;        
    margin-right: 25px;    
}

.pk-session-icon-col svg, .pk-lecture-icon-col svg {
    width: 28px !important;
    height: 28px !important;
    flex-shrink: 0;
}

.pk-is-break .pk-session-icon-col, .pk-is-break .pk-lecture-icon-col { 
    background-color: var(--pk-kolor-sesje); 
    color: #ffffff;
}

.pk-is-break .pk-session-title, .pk-is-break .pk-lecture-title { 
    color: #000000;; 
}

.pk-is-lecture .pk-session-icon-col, .pk-is-lecture .pk-lecture-icon-col { 
    background-color: var(--pk-kolor-przerwy); 
    color:#ffffff;
}

.pk-is-lecture .pk-session-title { 
    color: #000000; 
}

.pk-session-info-col { 
    flex-grow: 1; 
    padding-top: 6px;
}

.pk-session-title { 
    margin: 0 0 6px 0; 
    font-size: 18px; 
    font-weight: 700; 
    line-height: 1.3; 
}

.pk-session-moderators { 
    font-size: 14px; 
    color: #000000; 
    line-height: 1.4; 
}

.pk-session-moderators strong {
    display: block !important;
    width: 100%;
    margin-bottom: 8px;
}

.pk-speaker-list {
    display: block !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    clear: both;
}

.pk-speaker-list li {
    display: block !important;
    line-height: 1 !important;
    margin-bottom: 4px !important;
}

.pk-session-toggle-col { 
    margin-left: 20px; 
    display: flex; 
    align-items: center; 
    padding-top: 15px; 
}
.pk-toggle-icon svg { 
    transition: transform 0.3s ease; 
}
.pk-session-accordion.open .pk-toggle-icon svg { 
    transform: rotate(180deg); 
}

.pk-session-body { 
    display: none; 
    border-top: 1px solid rgba(255, 255, 255, 0.08); 
    background: transparent; 
    padding: 0px 20px 25px 20px; 
}

.pk-session-accordion.open .pk-session-body { 
    display: block; 
}

.pk-lecture {
    display: flex;
    align-items: flex-start;
    padding: 30px 0px 30px 45px;
    border-bottom: 1px solid #AAAAAA;
}

.pk-lecture:first-child { 
    border-top: 1px solid #AAAAAA;
}

.pk-lecture:last-child { 
    border-bottom: none; 
    padding-bottom: 0; 
}

.pk-lecture-details { 
    flex-grow: 1; 
}

.pk-tag { 
    display: inline-block;  
    border-radius: 20px; 
    font-size: 11px; 
    font-weight: 800; 
    margin-bottom: 0px; 
    letter-spacing: 0.5px;
}

.pk-lecture-title { 
    margin: 0px; 
    font-size: 17px; 
    font-weight: 600; 
    color: #000000;
    line-height: 1.4; 
}
.pk-lecture-speaker { 
    font-size: 14px; 
    color: #000000;
    display: flex;
    align-items: center;
    gap: 8px;
}

.pk-sponsor-logo { 
    margin-top: 15px;
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: flex-end; 
}

.pk-sponsor-logo img {  
    max-width: 200px; 
    object-fit: contain; 
}

.pk-pdf-actions{
    display: flex;
    justify-content: center;
}

.pk-pdf-actions button{
    border-radius: 25px !important;
    padding: 10px 15px;
    background-color: var(--pk-kolor-przyciski);
    color: #ffffff;
    border: 0 !important;
}

@keyframes fadeIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 768px) {

    .pk-session-header{
        align-items: flex-start;
    }

    .pk-session-header, .pk-lecture { 
        flex-direction: column; 
        position: relative; 
    }
    
    .pk-session-time-col, .pk-lecture-time-col { 
        flex-direction: row; 
        align-items: center; 
        margin-bottom: 15px;
        min-width: 100%;
        gap: 8px;
    }
    .pk-time-end::before { 
        content: "- "; 
    }
    
    .pk-session-info-col, .pk-lecture-details { 
        width: 100%; 
    }

    .pk-session-icon-col, .pk-lecture-icon-col { 
        position: static; 
        margin-bottom: 15px;
    }
    
    .pk-session-toggle-col { 
        position: absolute; 
        right: 15px; 
        top: 20px; 
    }
}


/* =========================================
   KOLORY ZALEŻNE OD TYPU SESJI/WYKŁADU
   ========================================= */

/* 1. Wykłady i standardowe sesje) */
.pk-is-lecture .pk-session-icon-col,
.pk-is-lecture .pk-lecture-icon-col {
    background-color: var(--pk-kolor-sesje) !important;
}

/* 2. Przerwy, Kawa, Lunch */
.pk-is-break .pk-session-icon-col,
.pk-is-break .pk-lecture-icon-col {
    background-color: var(--pk-kolor-przerwy) !important;
}

/* 3. Inne atrakcje: Warsztaty, Rejestracja, Konkursy  */
.pk-is-other .pk-session-icon-col,
.pk-is-other .pk-lecture-icon-col {
    background-color: var(--pk-kolor-inne) !important;
}

/* Opcjonalnie: Jeśli używasz kolorowych krawędzi (np. border-left) przyklejonych do kafelków */
/* .pk-is-lecture.pk-session-accordion { border-left-color: var(--pk-kolor-sesje) !important; }
.pk-is-break.pk-session-accordion   { border-left-color: var(--pk-kolor-przerwy) !important; }
.pk-is-other.pk-session-accordion   { border-left-color: var(--pk-kolor-inne) !important; } */


/* =========================================
   ZAKŁADKI DNI (tylko dni, sale są w środku)
   ========================================= */
.pk-tab-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    line-height: 1.2;
}
.pk-tab-day  { font-size: 15px; font-weight: 700; }
.pk-tab-date { font-size: 12px; font-weight: 500; opacity: .85; }

/* =========================================
   SALE DANEGO DNIA
   ========================================= */
.pk-room-switch { display: none; }

.pk-rooms-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.pk-room-col { min-width: 0; }

.pk-room-header {
    background: var(--pk-kolor-przyciski, #333333);
    color: #ffffff;
    text-align: center;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 1px;
    padding: 12px 16px;
    border-radius: 12px;
    margin-bottom: 20px;
}

/* Desktop: sale obok siebie w kolumnach */
@media (min-width: 992px) {
    .pk-rooms-grid.pk-rooms-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pk-rooms-grid.pk-rooms-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .pk-rooms-grid.pk-rooms-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

    /* Kompaktowy układ kart w węższych kolumnach */
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-header { padding: 16px 14px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-time-col,
    .pk-rooms-grid:not(.pk-rooms-1) .pk-lecture-time-col { min-width: 48px; margin-right: 12px; padding-top: 2px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-time-start { font-size: 16px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-time-end { font-size: 13px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-icon-col,
    .pk-rooms-grid:not(.pk-rooms-1) .pk-lecture-icon-col { width: 44px; height: 44px; min-width: 44px; margin-right: 14px; border-radius: 10px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-icon-col svg,
    .pk-rooms-grid:not(.pk-rooms-1) .pk-lecture-icon-col svg { width: 22px !important; height: 22px !important; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-info-col { padding-top: 0; min-width: 0; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-title { font-size: 16px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-toggle-col { margin-left: 8px; padding-top: 0; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-body { padding: 0 14px 18px 14px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-lecture { padding: 20px 0; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-lecture-details { min-width: 0; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-lecture-title { font-size: 15px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-session-moderators,
    .pk-rooms-grid:not(.pk-rooms-1) .pk-lecture-speaker { font-size: 13px; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-sponsor-logo img { max-width: 140px; }
}

/* Tablet i telefon: przełącznik sal, widoczna jedna sala */
@media (max-width: 991px) {
    .pk-room-switch {
        display: flex;
        gap: 8px;
        margin-bottom: 20px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .pk-room-switch::-webkit-scrollbar { display: none; }

    .pk-room-btn {
        flex: 1 0 auto;
        padding: 10px 16px;
        border: 2px solid var(--pk-kolor-przyciski, #333333);
        background: #ffffff;
        color: var(--pk-kolor-przyciski, #333333);
        border-radius: 25px;
        font-weight: 700;
        font-size: 13px;
        letter-spacing: .5px;
        cursor: pointer;
        white-space: nowrap;
        transition: all .2s ease;
    }
    .pk-room-btn.active {
        background: var(--pk-kolor-przyciski, #333333);
        color: #ffffff;
    }

    .pk-rooms-grid:not(.pk-rooms-1) .pk-room-col:not(.active) { display: none; }
    .pk-rooms-grid:not(.pk-rooms-1) .pk-room-header { display: none; }
}

@media (max-width: 768px) {
    .pk-program-container { padding: 12px; }

    .pk-tabs-nav {
        flex-wrap: nowrap;
        gap: 8px;
        margin-bottom: 20px;
        justify-content: flex-start;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .pk-tabs-nav::-webkit-scrollbar { display: none; }

    .pk-tab-btn { flex: 1 0 90px; padding: 10px 6px; }
    .pk-tab-day  { font-size: 13px; }
    .pk-tab-date { font-size: 10px; }
}