/* Poprawki dla kalkulatora i kategorii */

/* Globalne ustawienia zapobiegające problemom z przewijaniem */
html, body, .app-container {
    max-width: 100%;
    overflow-x: hidden;
    box-sizing: border-box;
}

/* ======== NAPRAWY DLA KATEGORII ======== */

/* Naprawiamy maksymalną wysokość kategorii */
.category-content {
    max-height: none !important; 
    overflow: visible !important;
    height: auto !important;
}

.category-content.active {
    display: block;
}

/* Poprawka dla elementów wykroczeń w kategoriach */
.offense-item {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    word-break: break-word;
    overflow-wrap: break-word;
    padding: 0.75rem;
}

.offense-name, .offense-details {
    width: 100%;
    max-width: 100%;
    word-break: break-word;
    overflow-wrap: break-word;
}

/* ======== NAPRAWY DLA KALKULATORA ======== */

/* Główny układ kalkulatora */
.calculator-layout {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

/* Wybrane wykroczenia */
.selected-offenses {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
}

/* Lista wykroczeń */
.offense-list {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
}

/* Pojedyncze wykroczenie w kalkulatorze */
.selected-offense {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    word-break: break-word;
    overflow-wrap: break-word;
    padding: 0.75rem;
    margin-bottom: 0.5rem;
}

.selected-offense-info {
    width: 100%;
    max-width: 100%;
    word-break: break-word;
    overflow-wrap: break-word;
}

.selected-offense-name, .selected-offense-details {
    width: 100%;
    max-width: 100%;
    word-break: break-word;
    overflow-wrap: break-word;
}

/* Podsumowanie */
.penalty-summary {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Adaptacja dla urządzeń mobilnych */
@media (max-width: 768px) {
    .selected-offense {
        padding: 0.5rem;
    }
}
