/* MSW Spawacz BATCH20 — page-specific enhancement, no external fonts */
.b20-article{max-width:780px;color:#192c42;font-size:1.05rem;line-height:1.83}
.b20-article h2{line-height:1.24;margin:2.2rem 0 .7rem;font-size:clamp(1.35rem,2vw,1.73rem);color:#123356;scroll-margin-top:7rem}
.b20-article h3{line-height:1.3;margin:1.6rem 0 .5rem;font-size:1.14rem;color:#1e4363;scroll-margin-top:7rem}
.b20-article p{margin:.8rem 0 1.25rem}
.b20-article em{color:#506279}
.b20-article a{text-decoration:underline;text-underline-offset:3px}
.b20-article ul,.b20-article ol{padding-left:1.3rem}
.b20-article strong{font-weight:700}
.b20-article .b20-toc{padding:1.1rem 1.4rem;border:1px solid #b8d3e9;background:#f3f8fc;border-radius:18px;margin:1.4rem 0 2.3rem}
.b20-toc summary{font-weight:750;cursor:pointer;color:#09375b;user-select:none}
.b20-toc ol{columns:2;column-gap:2rem;line-height:1.4;margin:.8rem 0 0}
.b20-toc li{break-inside:avoid;padding:.28rem 0;font-size:.89rem}
.b20-summary{border-left:5px solid #1e82b6;background:#eff8fd;padding:1rem 1.2rem;margin:1.8rem 0;border-radius:6px 12px 12px 6px}
.b20-gallery-pending{margin:2rem 0;padding:1rem 1.2rem;border:1px dashed #9ab7cc;border-radius:13px;background:#f8fbfd}
.b20-gallery-pending p{margin:.45rem 0}
.b20-form-wrap{max-width:1000px;margin:2rem auto;padding:1.3rem;border:1px solid #9fbdcf;border-radius:22px;background:#f1f8fd;color:#193550;box-shadow:0 18px 35px rgba(11,50,82,.07)}
.b20-form-wrap h2{margin:.2rem 0 1rem;color:#083f66}
.b20-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.b20-tool-grid label,.b20-tool-grid fieldset{display:block;margin:0}
.b20-tool-grid input,.b20-tool-grid select,.b20-tool-grid textarea{display:block;width:100%;min-height:44px;border:1px solid #a5bfcc;background:#fff;color:#18344e;border-radius:9px;padding:.65rem;margin:.4rem 0 .8rem;font:inherit}
.b20-tool-grid textarea{min-height:110px;resize:vertical}
.b20-tool-grid fieldset{border:1px solid #b4cbd9;border-radius:10px;background:#fff;padding:.9rem;grid-column:span 2}
.b20-tool-grid legend{font-weight:750;padding:0 .5rem}
.b20-tool-grid input[type=checkbox]{width:auto;display:inline;min-height:0;margin:0 .45rem .7rem 0;accent-color:#1778ae}
.b20-tool-grid fieldset label{display:flex;align-items:baseline;gap:.3rem}
.b20-span{grid-column:span 2}
.b20-output{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border:1px solid #b4cbd9;border-radius:11px;padding:1rem;font-size:.96rem;line-height:1.55}
.b20-alert{padding:.9rem 1.1rem;border-left:5px solid #ae4f21;background:#fff4e9;color:#663b1b;border-radius:7px}
.b20-neutral{padding:.9rem 1.1rem;border-left:5px solid #38789d;background:#e5f5fc;color:#173c55;border-radius:7px}
.b20-buttons{display:flex;flex-wrap:wrap;gap:.65rem;padding-top:.65rem}
.b20-buttons button,.b20-buttons a{border:0;border-radius:10px;background:#126b9f;color:white;padding:.67rem 1.1rem;cursor:pointer;font:inherit;font-weight:650;display:inline-block;text-decoration:none}
.b20-buttons button:focus-visible,.b20-buttons a:focus-visible{outline:3px solid #eaa432;outline-offset:3px}
.b20-buttons .b20-ghost{background:#d7ecf7;color:#123e58}
.b20-fine{font-size:.85rem;color:#435e73}
.b20-form-wrap [role=status]{min-height:1.2rem}
@media(max-width:750px){.b20-tool-grid{grid-template-columns:1fr}.b20-span,.b20-tool-grid fieldset{grid-column:span 1}.b20-toc ol{columns:1}.b20-form-wrap{margin:1.3rem .3rem;padding:.95rem}.b20-article{font-size:1rem}}
@media print{.b20-form-wrap .b20-buttons,.b20-toc{display:none}}

.b20-diagram{margin:1.8rem 0 2.2rem;padding:.8rem;background:#f3f9fd;border:1px solid #bcd7e8;border-radius:17px}.b20-diagram img,.b20-diagram svg{display:block;width:100%;height:auto;max-width:100%;border-radius:10px}.b20-diagram figcaption{font-size:.88rem;color:#415c72;padding:.55rem .2rem}.b20-diagram figcaption strong{color:#0c4163}
