.bc-article { min-width: 0; }
.bc-article .bc-ref { font-size: .72em; margin-left: .16em; white-space: nowrap; }
.bc-article .bc-ref a { text-decoration: none; }
.bc-article .bc-table-scroll { max-width: 100%; overflow-x: auto; margin: 1.5rem 0; overscroll-behavior-inline: contain; }
.bc-article .bc-table-scroll:focus-visible { outline: 2px solid #267b88; outline-offset: 3px; }
.bc-article .bc-table-scroll .comp-table { min-width: 620px; width: 100%; margin: 0; table-layout: auto; }
.bc-article .bc-table-scroll .comp-table th,
.bc-article .bc-table-scroll .comp-table td { white-space: normal; overflow-wrap: break-word; font-size: .94rem; line-height: 1.55; min-width: 115px; padding: .8rem; }
.bc-article .bc-table-scroll .comp-table.bc-case-matrix { min-width: 940px; }
.bc-article .bc-table-scroll .comp-table caption { padding: .5rem 0 .8rem; text-align: left; font-weight: 600; line-height: 1.5; }
.bc-article .bc-model { margin: 1.6rem 0; padding: 1.2rem; border: 1px solid #88aeb5; border-left: 4px solid #267b88; border-radius: 6px; }
.bc-article .bc-model h4 { margin: 0 0 .8rem; font-size: 1.08rem; line-height: 1.4; }
.bc-article .bc-model .bc-formula { font-size: 1.06rem; }
.bc-article .bc-model-form fieldset { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; border: 0; margin: 1rem 0; padding: 0; }
.bc-article .bc-model-form legend { margin-bottom: .8rem; font-weight: 600; }
.bc-article .bc-model-form label { display: flex; flex-direction: column; gap: .35rem; font-size: .92rem; }
.bc-article .bc-model-form label:last-child { grid-column: 1 / -1; }
.bc-article .bc-model-form input,
.bc-article .bc-model-form select { width: 100%; box-sizing: border-box; min-height: 44px; border: 1px solid #829ca1; border-radius: 4px; padding: .55rem; font: inherit; color: #172d3a; background: #fff; }
.bc-article .bc-model-form input:focus-visible,
.bc-article .bc-model-form select:focus-visible { outline: 2px solid #267b88; outline-offset: 2px; }
.bc-article #bc-model-status { min-height: 3em; }
.bc-article .sources ol { padding-left: 1.5rem; }
.bc-article .sources li { margin: .7rem 0; overflow-wrap: anywhere; scroll-margin-top: 1.5rem; }
.bc-article .chart-inline svg { width: 100%; height: auto; }
.bc-article :is(h2, h3, h4) { scroll-margin-top: 1.5rem; }
@media (max-width: 600px) {
 .bc-article { box-sizing: border-box; padding: 0 1rem; }
 .bc-article .bc-table-scroll::before { content: "Przesuń tabelę w bok, aby zobaczyć wszystkie kolumny."; display: block; width: calc(100vw - 2rem); max-width: 100%; margin: 0 0 .5rem; font-size: .78rem; color: #526b7a; }
 .bc-article .bc-model { padding: .9rem; }
 .bc-article .bc-model-form fieldset { grid-template-columns: 1fr; }
 .bc-article .bc-model-form label:last-child { grid-column: auto; }
 .bc-article .bc-table-scroll .comp-table :is(th, td) { display: table-cell; }
 .bc-article .bc-table-scroll .comp-table thead { display: table-header-group; }
 .bc-article .bc-table-scroll .comp-table tr { display: table-row; }
 .bc-article .bc-table-scroll .comp-table td::before { display: none; }
}

/* The narrow layout keeps labels readable without JavaScript or horizontal scrolling. */
.bc-article .bc-diagram { container-type: inline-size; }
.bc-article .bc-diagram-heading { margin: 0 0 1rem; font-size: 1.12rem; font-weight: 700; line-height: 1.5; text-align: center; }
.bc-article .bc-diagram .bc-diagram--desktop { display: block; }
.bc-article .bc-diagram .bc-diagram--mobile { display: none; max-width: 380px; margin: 0 auto; }
.bc-article .bc-diagram figcaption { margin-top: 1rem; font-size: 1rem; line-height: 1.6; text-align: left; color: #294d5b; }
@container (max-width: 639px) {
 .bc-article .bc-diagram .bc-diagram--desktop { display: none; }
 .bc-article .bc-diagram .bc-diagram--mobile { display: block; }
}
@media (max-width: 600px) {
 .bc-article .bc-diagram .bc-diagram--desktop { display: none; }
 .bc-article .bc-diagram .bc-diagram--mobile { display: block; }
}
