body { background-color: #f4f7f6; font-family: 'Inter', system-ui, sans-serif; }
.pol-row { background-color: #fffde7 !important; font-weight: bold; border-left: 4px solid #fdd835 !important; }
.junior-tag { color: #30c025; font-size: 0.75rem; font-weight: bold; margin-left: 4px; vertical-align: top; }
.card { border: none; border-radius: 8px; margin-bottom: 2rem; }
.card-header { font-weight: bold; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.5px; padding: 12px 15px; border-bottom: none; }
.table thead th { background-color: #f1f3f5 !important; text-transform: uppercase; font-size: 0.72rem; color: #495057; border-bottom: 2px solid #dee2e6 !important; padding: 10px 8px !important; vertical-align: middle; }
.filter-section { background: white; border-radius: 8px; border: 1px solid #dee2e6; }
.small-prec { font-size: 0.8rem; color: #6c757d; font-weight: normal; margin-left: 3px; }

/* Styles for info.php */
.info-section { margin-bottom: 2.5rem; }
.info-section p { 
    text-align: justify; 
    text-justify: inter-word; /* Dla lepszego justowania, jeśli przeglądarka wspiera */
    overflow-wrap: break-word; 
    word-wrap: break-word; 
    word-break: break-word; 
}
.info-section a { /* Ensure links within info sections also break words */
    overflow-wrap: break-word; 
    word-wrap: break-word; 
    word-break: break-word; 
}
.info-section ul { text-align: left; } /* Ensure lists are left-aligned */
.info-header { border-bottom: 2px solid #dc3545; padding-bottom: 0.5rem; margin-bottom: 1.5rem; font-weight: bold; text-align: left; }
.feature-card { 
    border: none !important; 
    border-left: 4px solid #dc3545 !important; 
    background: #f8f9fa; 
    transition: transform 0.2s; 
}
.feature-card p { /* Apply justification to paragraphs inside feature cards */
    text-align: justify !important;
    text-justify: inter-word;
    overflow-wrap: break-word; 
    word-wrap: break-word; 
    word-break: break-word; 
}
.feature-card:hover { transform: translateX(5px); }

/* Personalizacja hamburgera */
.navbar-toggler { padding: 0.15rem 0.3rem; font-size: 0.75rem; border: none !important; margin-right: 0; } 
.navbar-toggler:focus, .navbar-toggler:active { box-shadow: none !important; outline: none !important; border: none !important; }
.navbar-toggler-icon { width: 1.25em; height: 1.25em; } /* Zmniejszona ikona do naturalnego rozmiaru */

/* Sticky columns for mobile scrolling */
.sticky-col { position: sticky; z-index: 10 !important; background-color: white !important; }
thead .sticky-col { background-color: #f1f3f5 !important; z-index: 11 !important; }
.pol-row .sticky-col { background-color: #fffde7 !important; }
tr.table-light .sticky-col { background-color: #f8f9fa !important; }
.table-hover tbody tr:hover .sticky-col { background-color: #ececec !important; }

/* Cień i granica dla ostatniej zamrożonej kolumny (Pozycja) */
.sticky-col-last { border-right: 2px solid #dee2e6 !important; box-shadow: 2px 0 5px -2px rgba(0,0,0,0.1); }