/* Ciemny motyw strony (html.pyn-dark, ustawiane przez site-chrome.js z zapisu
   "pynokio-theme" - tego samego co w platformie). Paleta jak w platformie:
   tlo rgb(6,6,7), karty #0d0d0f, linie rgba(255,255,255,.08), tekst #f5f5f3.
   Czesc ogolna + nadpisania kolorow regul strony (wygenerowane z jasnych
   regul, potem poprawione recznie - sekcja "Poprawki" na koncu pliku). */
html.pyn-dark, html.pyn-dark body { background-color: rgb(6, 6, 7); color: rgb(245, 245, 243); }
html.pyn-dark img[src*="logo-official"]:not(.pynmt-bar *):not(.pynmt-menu *) { filter: invert(1) !important; }
html.pyn-dark ::selection { background: rgba(57, 198, 255, 0.35); }

/* ===== Wygenerowane ===== */
html.pyn-dark { --bg-white: rgb(6, 6, 7); --bg-surface: rgb(11, 11, 12); --bg-card: rgb(16, 16, 17); --text-main: rgb(203, 209, 226); --text-body: rgb(186, 186, 186); --text-muted: rgb(144, 144, 144); --text-subtle: rgb(102, 102, 102); --border-light: rgba(255, 255, 255, 0.08); --border-subtle: rgba(255, 255, 255, 0.05); --border-dark: rgba(255, 255, 255, 0.15); --accent-dark: rgb(18, 24, 38); --accent-blue: rgb(37, 99, 235); --accent-emerald: rgb(5, 150, 105); --accent-badge: rgb(16, 16, 17); --pill-bg: rgb(20, 27, 34); }
html.pyn-dark, html.pyn-dark body { background-color: rgb(6, 6, 7) !important; }
html.pyn-dark .reading-progress-bar { background-color: rgb(236, 236, 236); }
html.pyn-dark .page > .nav .links a, html.pyn-dark .page > .nav .resource-trigger { color: rgb(172, 172, 172) !important; }
html.pyn-dark .page > .nav .links a:hover, html.pyn-dark .page > .nav .resource-trigger:hover { color: rgb(245, 245, 245) !important; }
html.pyn-dark .btn-back-link { background-color: rgb(19, 19, 22); color: rgb(200, 209, 229); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .btn-back-link:hover { background-color: rgb(236, 236, 236); color: rgb(25, 25, 25); }
html.pyn-dark .article-breadcrumb a:hover { color: rgb(245, 245, 245); }
html.pyn-dark .toc-heading { color: rgb(102, 102, 102); }
html.pyn-dark .toc-item a { color: rgb(142, 142, 142); }
html.pyn-dark .toc-item a:hover { color: rgb(197, 207, 232); background-color: rgb(11, 11, 12); }
html.pyn-dark .toc-item.active a { color: rgb(245, 245, 245); background-color: rgb(17, 25, 34); border-left-color: rgb(236, 236, 236); }
html.pyn-dark .toc-item.sub-item.active a { color: rgb(197, 207, 232); }
html.pyn-dark .sidebar-cta-card { background-color: rgb(19, 19, 22); border-top-color: rgba(255, 255, 255, 0.06); border-right-color: rgba(255, 255, 255, 0.06); border-bottom-color: rgba(255, 255, 255, 0.06); border-left-color: rgba(255, 255, 255, 0.06); }
html.pyn-dark .sidebar-cta-card h4 { color: rgb(197, 207, 232); }
html.pyn-dark .sidebar-cta-card p { color: rgb(142, 142, 142); }
html.pyn-dark .sidebar-cta-btn { background-color: rgb(236, 236, 236); color: rgb(25, 25, 25); }
html.pyn-dark .sidebar-cta-btn:hover { background-color: rgb(199, 199, 199); }
html.pyn-dark .article-title { color: rgb(199, 208, 230); }
html.pyn-dark .meta-badge { background-color: rgb(20, 27, 34); color: rgb(197, 207, 232); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .meta-info-item { color: rgb(142, 142, 142); }
html.pyn-dark .article-hero-media { background-color: rgb(16, 24, 41); box-shadow: rgba(0, 0, 0, 0.264) 0px 16px 36px -12px; }
html.pyn-dark .article-highlight-box { background-color: rgb(19, 19, 22); color: rgb(205, 213, 223); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .article-highlight-box a { color: rgb(197, 207, 232); }
html.pyn-dark .article-content p.lead { color: rgb(202, 211, 226); }
html.pyn-dark .article-content strong { color: rgb(197, 207, 232); }
html.pyn-dark .article-content h2 { color: rgb(199, 208, 230); }
html.pyn-dark .article-content h2 .step-num { background-color: rgb(236, 236, 236); color: rgb(25, 25, 25); }
html.pyn-dark .article-content h3 { color: rgb(202, 211, 226); }
html.pyn-dark .metric-card { background-color: rgb(19, 19, 22); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .metric-number { color: rgb(197, 207, 232); }
html.pyn-dark .metric-label { color: rgb(142, 142, 142); }
html.pyn-dark .code-snippet-box { background-color: rgb(16, 24, 41); }
html.pyn-dark .code-snippet-header { border-bottom-color: rgba(13, 13, 15, 0.1); }
html.pyn-dark .callout-card { background-color: rgb(9, 41, 18); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .callout-body { color: rgb(191, 238, 209); }
html.pyn-dark .callout-body strong { color: rgb(192, 237, 210); }
html.pyn-dark .article-author-card { background-color: rgb(19, 19, 22); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .author-avatar { background-color: rgb(236, 236, 236); color: rgb(25, 25, 25); }
html.pyn-dark .author-info h4 { color: rgb(197, 207, 232); }
html.pyn-dark .author-info p { color: rgb(142, 142, 142); }
html.pyn-dark .tag-link { background-color: rgb(17, 25, 34); color: rgb(169, 169, 169); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .tag-link:hover { background-color: rgb(23, 30, 40); color: rgb(197, 207, 232); }
html.pyn-dark .share-btn { background-color: rgb(17, 25, 34); color: rgb(205, 213, 223); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .share-btn:hover { background-color: rgb(23, 30, 40); color: rgb(197, 207, 232); }
html.pyn-dark .related-title { color: rgb(197, 207, 232); }
html.pyn-dark .related-card { background-color: rgb(19, 19, 22); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .related-card:hover { box-shadow: rgba(0, 0, 0, 0.132) 0px 12px 28px; }
html.pyn-dark .related-card-thumb { background-color: rgb(16, 24, 41); }
html.pyn-dark .related-card-tag { color: rgb(142, 142, 142); }
html.pyn-dark .related-card-heading { color: rgb(197, 207, 232); }
html.pyn-dark .toast-notification { background-color: rgb(16, 24, 41); box-shadow: rgba(0, 0, 0, 0.44) 0px 8px 24px; }
@media (max-width: 980px) { html.pyn-dark .article-sidebar { background-color: rgb(19, 19, 22); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; } }

/* ===== Poprawki (recznie) ===== */
/* Szablon artykulu z bazy (06.10.2026): gorny pasek jak na /blog, prawa
   kolumna, ramki w tresci, tabele, kod, cytaty. */
html.pyn-dark .zp-nav-center a { color: rgb(157, 157, 157); }
html.pyn-dark .zp-nav-center a:hover, html.pyn-dark .zp-nav-center a[aria-current="page"] { color: rgb(206, 210, 222); }
html.pyn-dark .zp-nav-btn { background-color: rgb(221, 221, 221); border-color: rgb(221, 221, 221); color: rgb(25, 25, 25) !important; -webkit-text-fill-color: rgb(25, 25, 25) !important; }
html.pyn-dark .zp-nav-btn:hover { background-color: rgb(198, 198, 198); border-color: rgb(198, 198, 198); }
html.pyn-dark .article-breadcrumb li + li::before { color: rgb(102, 102, 102); }
html.pyn-dark .rail-card { background-color: rgb(19, 19, 22); border-color: rgba(255, 255, 255, 0.06); }
html.pyn-dark .rail-card h2, html.pyn-dark .rail-heading { color: rgb(197, 207, 232); }
html.pyn-dark .rail-card p { color: rgb(142, 142, 142); }
html.pyn-dark .rail-list li + li { border-top-color: rgba(255, 255, 255, 0.08); }
html.pyn-dark .rail-list a { color: rgb(186, 186, 186); }
html.pyn-dark .rail-list a:hover { color: rgb(245, 245, 245); }
html.pyn-dark .article-hero-media { background-color: rgb(19, 19, 22); }
html.pyn-dark .article-content a { color: rgb(214, 222, 240); text-decoration-color: rgba(214, 222, 240, 0.35); }
html.pyn-dark .article-content a:hover { text-decoration-color: currentColor; }
html.pyn-dark .article-content h4 { color: rgb(202, 211, 226); }
html.pyn-dark .article-content blockquote { border-left-color: rgb(200, 200, 200); color: rgb(202, 211, 226); }
html.pyn-dark .article-content code { background-color: rgb(24, 24, 28); color: rgb(214, 222, 240); }
html.pyn-dark .article-content pre { background-color: rgb(16, 24, 41); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .article-content pre code { background: none; color: inherit; }
html.pyn-dark .article-content figcaption { color: rgb(142, 142, 142); }
html.pyn-dark .article-content hr { border-top-color: rgba(255, 255, 255, 0.08); }
html.pyn-dark .article-content mark { background-color: rgba(250, 204, 21, 0.25); }
html.pyn-dark .article-content .table-wrap { border-color: rgba(255, 255, 255, 0.08); }
html.pyn-dark .article-content th { background-color: rgb(19, 19, 22); color: rgb(214, 222, 240); }
html.pyn-dark .article-content th, html.pyn-dark .article-content td { border-bottom-color: rgba(255, 255, 255, 0.08); }
html.pyn-dark .article-content .note { background-color: rgb(9, 41, 18); color: rgb(191, 238, 209); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .article-content .note strong, html.pyn-dark .article-content .note a { color: rgb(220, 252, 231); }
html.pyn-dark .article-content .note.note-warn { background-color: rgb(45, 32, 6); color: rgb(253, 230, 170); }
html.pyn-dark .article-content .note.note-warn strong, html.pyn-dark .article-content .note.note-warn a { color: rgb(254, 243, 199); }
html.pyn-dark .article-content .takeaways { background-color: rgb(19, 19, 22); border-color: rgba(255, 255, 255, 0.08); }
html.pyn-dark .article-content .cta, html.pyn-dark .article-end-cta { background-color: rgb(19, 19, 22); outline: 1px solid rgba(255, 255, 255, 0.08); outline-offset: -1px; }
html.pyn-dark .article-content a.cta-btn, html.pyn-dark .article-end-cta a { background-color: rgb(236, 236, 236); color: rgb(25, 25, 25); }
html.pyn-dark .article-content a.cta-btn:hover, html.pyn-dark .article-end-cta a:hover { background-color: rgb(199, 199, 199); }
html.pyn-dark .related-card-thumb { background-color: rgb(19, 19, 22); }
@media (max-width: 980px) { html.pyn-dark .article-sidebar { border-color: rgba(255, 255, 255, 0.08); } }
html.pyn-dark .article-sidebar { scrollbar-color: rgba(255, 255, 255, 0.14) transparent; }
html.pyn-dark .article-sidebar::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.14); }
html.pyn-dark .author-info h2 { color: rgb(197, 207, 232); }
