<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archiwa konserwacja ogrzewania - Projekt Ogrzewania</title>
	<atom:link href="https://projekt-ogrzewania.pl/tag/konserwacja-ogrzewania/feed/" rel="self" type="application/rss+xml" />
	<link>https://projekt-ogrzewania.pl/tag/konserwacja-ogrzewania/</link>
	<description>Twój partner w projektowaniu komfortu – profesjonalne ogrzewanie podłogowe dla Twojego domu.</description>
	<lastBuildDate>Sun, 14 Jun 2026 18:36:48 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.2</generator>

<image>
	<url>https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1-32x32.jpg</url>
	<title>Archiwa konserwacja ogrzewania - Projekt Ogrzewania</title>
	<link>https://projekt-ogrzewania.pl/tag/konserwacja-ogrzewania/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Czym napełnić instalację ogrzewania podłogowego?</title>
		<link>https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/</link>
					<comments>https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#comments</comments>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Fri, 31 Jan 2025 12:30:43 +0000</pubDate>
				<category><![CDATA[Bezpieczeństwo instalacji]]></category>
		<category><![CDATA[Budowa i remont]]></category>
		<category><![CDATA[Dom i wnętrze]]></category>
		<category><![CDATA[Instalacje grzewcze]]></category>
		<category><![CDATA[Konserwacja systemów grzewczych]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Poradniki budowlane]]></category>
		<category><![CDATA[Poradniki instalacyjne]]></category>
		<category><![CDATA[Technologie grzewcze]]></category>
		<category><![CDATA[efektywność grzewcza]]></category>
		<category><![CDATA[glikol etylenowy]]></category>
		<category><![CDATA[glikol propylenowy]]></category>
		<category><![CDATA[instalacje grzewcze]]></category>
		<category><![CDATA[konserwacja ogrzewania]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[płyny grzewcze]]></category>
		<category><![CDATA[płyny niezamarzające]]></category>
		<category><![CDATA[poradnik ogrzewanie]]></category>
		<category><![CDATA[woda w instalacji]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=2046</guid>

					<description><![CDATA[<p>Planujesz montaż ogrzewania podłogowego lub wymianę płynu w istniejącej instalacji? Dowiedz się, czym napełnić instalację ogrzewania podłogowego, aby zapewnić jej wydajność i trwałość. W artykule omawiamy różne opcje, takie jak woda z dodatkami czy płyny niezamarzające, oraz podpowiadamy, na co zwrócić uwagę przy wyborze płynu grzewczego. Sprawdź, jak uniknąć błędów i cieszyć się komfortem cieplnym przez lata!</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/">Czym napełnić instalację ogrzewania podłogowego?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
:root {
    --rk-intro-dark: #0f172a;
    --rk-intro-blue: #0284c7;
    --rk-intro-blue-light: #e0f2fe;
    --rk-intro-accent: #f59e0b;
    --rk-intro-accent-light: #fef3c7;
    --rk-intro-gray: #475569;
    --rk-intro-border: #e2e8f0;
    --rk-intro-bg: #ffffff;
    --rk-intro-green: #10b981;
    --rk-intro-shadow: 0 10px 30px -10px rgba(2, 132, 199, 0.15);
}

.rk-intro-container {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-intro-bg);
    border-radius: 20px;
    box-shadow: var(--rk-intro-shadow);
    border: 1px solid var(--rk-intro-blue);
    overflow: hidden;
}

/* Nagłówek i Hook */
.rk-intro-header {
    background: linear-gradient(135deg, var(--rk-intro-dark) 0%, #1e293b 100%);
    padding: 40px 50px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-intro-accent);
}

.rk-intro-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(245, 158, 11, 0.2);
    color: #fcd34d;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(253, 230, 138, 0.3);
}

.rk-intro-header h2 {
    font-size: 32px;
    font-weight: 900;
    margin: 0 0 20px 0;
    line-height: 1.2;
    color: #ffffff;
}

.rk-intro-hook {
    font-size: 18px;
    line-height: 1.6;
    color: #e2e8f0;
    margin: 0;
    padding-left: 20px;
    border-left: 4px solid var(--rk-intro-accent);
    font-weight: 600;
}

/* Zawartość Główna */
.rk-intro-content {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    background: #f8fafc;
}

.rk-intro-text-area {
    padding: 40px 50px;
    background: #ffffff;
    border-right: 1px solid var(--rk-intro-border);
}

.rk-intro-text-area p {
    font-size: 16px;
    line-height: 1.8;
    color: var(--rk-intro-gray);
    margin: 0 0 20px 0;
}

.rk-intro-text-area p:last-child {
    margin-bottom: 0;
}

.rk-intro-text-area strong {
    color: var(--rk-intro-dark);
}

.rk-intro-text-area a {
    color: var(--rk-intro-blue);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px dashed var(--rk-intro-blue);
    transition: color 0.2s, border-color 0.2s;
}

.rk-intro-text-area a:hover {
    color: #0369a1;
    border-bottom-style: solid;
}

/* Interaktywny Moduł (Quick Answer / Spis) */
.rk-intro-interactive {
    padding: 40px;
    display: flex;
    flex-direction: column;
}

.rk-intro-tabs {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}

.rk-intro-tab-btn {
    flex: 1;
    padding: 12px 15px;
    border-radius: 8px;
    border: 1px solid var(--rk-intro-border);
    background: #ffffff;
    font-size: 14px;
    font-weight: 800;
    color: var(--rk-intro-gray);
    cursor: pointer;
    text-align: center;
    transition: background 0.2s, color 0.2s;
}

.rk-intro-tab-btn.active {
    background: var(--rk-intro-blue);
    color: #ffffff;
    border-color: var(--rk-intro-blue);
}

.rk-intro-pane {
    display: none;
    background: #ffffff;
    border: 1px solid var(--rk-intro-border);
    border-radius: 12px;
    padding: 25px;
    flex: 1;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

.rk-intro-pane.active {
    display: block;
}

/* Pane 1: Szybka Odpowiedź */
.rk-qa-box {
    text-align: center;
}

.rk-qa-icon {
    margin: 0 auto 15px auto;
    width: 64px;
    height: 64px;
    background: var(--rk-intro-blue-light);
    color: var(--rk-intro-blue);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.rk-qa-box h3 {
    margin: 0 0 10px 0;
    font-size: 18px;
    color: var(--rk-intro-dark);
    font-weight: 900;
}

.rk-qa-box p {
    font-size: 15px;
    color: var(--rk-intro-gray);
    line-height: 1.6;
    margin: 0;
}

.rk-qa-highlight {
    display: inline-block;
    background: #d1fae5;
    color: #065f46;
    padding: 8px 16px;
    border-radius: 6px;
    font-weight: 800;
    margin-top: 15px;
    border: 1px solid #a7f3d0;
}

/* Pane 2: Narzędzia */
.rk-tools-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rk-tools-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #f1f5f9;
}

.rk-tools-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.rk-tools-icon {
    flex-shrink: 0;
    color: var(--rk-intro-accent);
}

.rk-tools-text h4 {
    margin: 0 0 4px 0;
    font-size: 14px;
    font-weight: 800;
    color: var(--rk-intro-dark);
}

.rk-tools-text p {
    margin: 0;
    font-size: 13px;
    color: var(--rk-intro-gray);
    line-height: 1.4;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-intro-content { grid-template-columns: 1fr; }
    .rk-intro-header, .rk-intro-text-area { padding: 30px 20px; }
    .rk-intro-header h2 { font-size: 26px; }
    .rk-intro-hook { font-size: 16px; padding-left: 15px; }
    .rk-intro-text-area { border-right: none; border-bottom: 1px solid var(--rk-intro-border); }
    .rk-intro-interactive { padding: 30px 20px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-wstep",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Czym napełnić instalację ogrzewania podłogowego?",
    "description": "Wydałeś majątek na pompę ciepła, a teraz chcesz zalać układ wodą z kranu? Dowiedz się, dlaczego woda demineralizowana z inhibitorem to jedyny bezpieczny wybór dla podłogówki.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-wstep",
    "name": "Rekomendowane medium grzewcze dla instalacji podłogowych",
    "description": "Zestawienie podstawowych wymogów technicznych dla czynnika grzewczego w nowoczesnych instalacjach płaszczyznowych opartych o pompy ciepła.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "czym napełnić instalację ogrzewania podłogowego",
      "woda do ogrzewania podłogowego",
      "jaki płyn do podłogówki",
      "zabezpieczenie pompy ciepła przed kamieniem",
      "woda demineralizowana do co"
    ],
    "measurementTechnique": "Określenie standardu inżynierskiego bazującego na wodzie demineralizowanej z dodatkiem inhibitora korozji (przewodność <100 µS/cm).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Rekomendacja 1: Woda demineralizowana z atestowanym inhibitorem korozji.",
        "Rekomendacja 2: Wykluczenie surowej wody z kranu ze względu na ryzyko utraty gwarancji."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-wstep",
    "name": "Asystent Szybkiej Odpowiedzi i Nawigator Narzędzi",
    "description": "Interaktywny moduł zakładkowy pozwalający użytkownikowi błyskawicznie sprawdzić rekomendowane medium grzewcze oraz przejrzeć listę kalkulatorów i symulatorów dostępnych w artykule.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-intro-container">
    <div class="rk-intro-header">
        <div class="rk-intro-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12.01" y2="8"></line></svg>
            Poradnik Eksperta HVAC
        </div>
        <h2>Czym napełnić instalację ogrzewania podłogowego?</h2>
        <div class="rk-intro-hook">
            Wydałeś 50 tysięcy na pompę ciepła i system podłogowy, a teraz chcesz zalać to wszystko zwykłą wodą ze szlaucha ogrodowego w ramach oszczędności? Uważaj – to najszybsza droga do utraty gwarancji i zatarcia sprężarki.
        </div>
    </div>

    <div class="rk-intro-content">
        <div class="rk-intro-text-area">
            <p>Napełnienie instalacji ogrzewania podłogowego to proces wprowadzenia medium grzewczego – najczęściej wody demineralizowanej z inhibitorami korozji – do pętli w celu zapewnienia efektywnego przekazywania ciepła i długowieczności systemu.</p>
            <p>Wybór medium decyduje o tym, czy Twoja <a href="https://projekt-ogrzewania.pl/pompa-ciepla/">pompa ciepła</a> osiągnie projektowaną wydajność, a rury pozostaną wolne od osadów wapiennych przez dekady. Jako projektant z ponad 1000 zrealizowanych instalacji, w ramach mojego standardu "Budowa bez ściemy" podkreślam z całą stanowczością: <strong>to, co wlejesz do rur, jest równie ważne, jak sama jakość użytej <a href="https://projekt-ogrzewania.pl/rura-z-bariera-antydyfuzyjna-evoh/">rury z barierą antydyfuzyjną EVOH</a></strong>.</p>
            <p>W tym kompletnym poradniku poznasz twarde normy, obliczenia oraz unikniesz bolesnych błędów finansowych, z którymi borykają się inwestorzy na etapie rozruchu.</p>
        </div>

        <div class="rk-intro-interactive">
            <div class="rk-intro-tabs">
                <button class="rk-intro-tab-btn active" data-tab="tab-qa">Szybka odpowiedź</button>
                <button class="rk-intro-tab-btn" data-tab="tab-tools">Co znajdziesz dalej?</button>
            </div>

            <div class="rk-intro-pane active" id="tab-qa">
                <div class="rk-qa-box">
                    <div class="rk-qa-icon">
                        <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
                    </div>
                    <h3>Tylko Woda Demineralizowana</h3>
                    <p>Zapomnij o kranówce. Jedynym bezpiecznym dla pomp ciepła i gwarancji wyborem jest woda poddana demineralizacji, uzupełniona o profesjonalny inhibitor korozji.</p>
                    <div class="rk-qa-highlight">Przewodność: &lt; 100 µS/cm</div>
                </div>
            </div>

            <div class="rk-intro-pane" id="tab-tools">
                <ul class="rk-tools-list">
                    <li class="rk-tools-item">
                        <div class="rk-tools-icon">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12.01" y2="8"></line></svg>
                        </div>
                        <div class="rk-tools-text">
                            <h4>Symulator Jakości Wody</h4>
                            <p>Zobacz pod mikroskopem, co kranówka robi z rurami i zaworami.</p>
                        </div>
                    </li>
                    <li class="rk-tools-item">
                        <div class="rk-tools-icon">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="16" height="16" rx="2" ry="2"></rect><line x1="9" y1="9" x2="15" y2="15"></line></svg>
                        </div>
                        <div class="rk-tools-text">
                            <h4>Kalkulator Zładu Wody</h4>
                            <p>Precyzyjne wyliczenie objętości cieczy dla Twojej długości pętli.</p>
                        </div>
                    </li>
                    <li class="rk-tools-item">
                        <div class="rk-tools-icon">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path></svg>
                        </div>
                        <div class="rk-tools-text">
                            <h4>Analiza Kosztów (Case Study)</h4>
                            <p>Oszczędności inżynieryjne na przykładzie domu 90 m².</p>
                        </div>
                    </li>
                </ul>
            </div>
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const tabs = document.querySelectorAll('.rk-intro-tab-btn');
    const panes = document.querySelectorAll('.rk-intro-pane');

    tabs.forEach(tab => {
        tab.addEventListener('click', function() {
            // Reset aktywnych stanów
            tabs.forEach(t => t.classList.remove('active'));
            panes.forEach(p => p.classList.remove('active'));

            // Ustawienie aktywnej zakładki (statyczne przełączanie)
            this.classList.add('active');
            const targetId = this.getAttribute('data-tab');
            document.getElementById(targetId).classList.add('active');
        });
    });
});
</script>



<style>
:root {
    --rk-wq-dark: #0f172a;
    --rk-wq-blue: #0284c7;
    --rk-wq-blue-light: #e0f2fe;
    --rk-wq-red: #ef4444;
    --rk-wq-red-light: #fef2f2;
    --rk-wq-yellow: #f59e0b;
    --rk-wq-yellow-light: #fef3c7;
    --rk-wq-green: #10b981;
    --rk-wq-gray: #475569;
    --rk-wq-border: #cbd5e1;
    --rk-wq-bg: #ffffff;
    --rk-wq-shadow: 0 15px 35px -10px rgba(15, 23, 42, 0.12);
}

.rk-wq-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-wq-bg);
    border-radius: 20px;
    box-shadow: var(--rk-wq-shadow);
    border: 1px solid var(--rk-wq-blue);
    overflow: hidden;
}

/* Nagłówek */
.rk-wq-header {
    padding: 40px 50px;
    background: linear-gradient(135deg, var(--rk-wq-dark) 0%, #1e293b 100%);
    color: #ffffff;
    border-bottom: 4px solid var(--rk-wq-blue);
}

.rk-wq-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(2, 132, 199, 0.2);
    color: #7dd3fc;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(125, 211, 252, 0.2);
}

.rk-wq-header h2 {
    font-size: 26px;
    font-weight: 900;
    margin: 0;
    line-height: 1.3;
}

/* Wstęp */
.rk-wq-intro {
    padding: 35px 50px 0 50px;
    font-size: 16px;
    line-height: 1.8;
    color: var(--rk-wq-gray);
}

.rk-wq-intro strong { color: var(--rk-wq-dark); }
.rk-wq-intro a {
    color: var(--rk-wq-blue);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px dashed var(--rk-wq-blue);
    transition: all 0.3s;
}
.rk-wq-intro a:hover {
    color: #0369a1;
    border-bottom-style: solid;
}

/* Interaktywny Symulator */
.rk-wq-simulator {
    padding: 30px 50px 40px 50px;
}

.rk-sim-panel {
    background: #f8fafc;
    border: 1px solid var(--rk-wq-border);
    border-radius: 16px;
    padding: 30px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
}

/* Kontrolki (Slider) */
.rk-sim-controls {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.rk-sim-controls h3 {
    margin: 0 0 10px 0;
    font-size: 18px;
    font-weight: 800;
    color: var(--rk-wq-dark);
}

.rk-slider-group {
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    border: 1px solid var(--rk-wq-border);
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

.rk-slider-label {
    display: flex;
    justify-content: space-between;
    font-weight: 700;
    color: var(--rk-wq-gray);
    margin-bottom: 15px;
    font-size: 14px;
}

.rk-slider-val {
    color: var(--rk-wq-red);
    font-size: 16px;
    font-weight: 900;
}

.rk-range-input {
    -webkit-appearance: none;
    width: 100%;
    height: 8px;
    background: #e2e8f0;
    border-radius: 4px;
    outline: none;
}

.rk-range-input::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--rk-wq-blue);
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(2, 132, 199, 0.4);
    transition: transform 0.1s, background 0.3s;
}
.rk-range-input::-webkit-slider-thumb:hover { transform: scale(1.15); }

/* Parametry na żywo */
.rk-live-stats {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.rk-stat-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 15px;
    border-radius: 8px;
    background: #ffffff;
    border: 1px solid var(--rk-wq-border);
    font-size: 14px;
    font-weight: 700;
    transition: all 0.3s ease;
}

.rk-stat-item span:last-child {
    font-size: 16px;
    font-weight: 900;
}

/* Wizualizacja SVG */
.rk-sim-visual {
    background: var(--rk-wq-dark);
    border-radius: 16px;
    height: 100%;
    min-height: 250px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 2px solid #334155;
}

.rk-vis-label {
    position: absolute;
    top: 15px;
    left: 20px;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.rk-svg-exchanger {
    width: 80%;
    max-width: 200px;
}

/* Elementy SVG */
.rk-plate { fill: #475569; }
.rk-flow-hot { stroke: #ef4444; stroke-width: 6; stroke-linecap: round; stroke-dasharray: 10 10; animation: flowMove 1.5s linear infinite; }
.rk-flow-cold { stroke: #3b82f6; stroke-width: 6; stroke-linecap: round; stroke-dasharray: 10 10; animation: flowMove 1.5s linear infinite reverse; }

@keyframes flowMove { to { stroke-dashoffset: -20; } }

/* Kamień Kotłowy w SVG */
.rk-scale-layer {
    fill: #fde047;
    transition: width 0.3s ease, x 0.3s ease, opacity 0.3s ease;
    opacity: 0;
}

/* Konsekwencje - Karty */
.rk-wq-consequences {
    padding: 0 50px 40px 50px;
}

.rk-wq-consequences h3 {
    font-size: 20px;
    font-weight: 900;
    color: var(--rk-wq-dark);
    margin: 0 0 20px 0;
    text-align: center;
}

.rk-cons-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.rk-cons-card {
    background: #ffffff;
    border: 1px solid var(--rk-wq-border);
    border-radius: 16px;
    padding: 25px 20px;
    text-align: center;
    transition: transform 0.3s, box-shadow 0.3s;
    position: relative;
    overflow: hidden;
}

.rk-cons-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; width: 100%; height: 4px;
}

.rk-cons-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px -5px rgba(0,0,0,0.1);
}

.rk-cons-card[data-type="corrosion"]::before { background: var(--rk-wq-yellow); }
.rk-cons-card[data-type="biofilm"]::before { background: var(--rk-wq-green); }
.rk-cons-card[data-type="warranty"]::before { background: var(--rk-wq-red); }

.rk-cons-icon {
    width: 48px;
    height: 48px;
    margin: 0 auto 15px auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.rk-cons-card[data-type="corrosion"] .rk-cons-icon { background: var(--rk-wq-yellow-light); color: #d97706; }
.rk-cons-card[data-type="biofilm"] .rk-cons-icon { background: #d1fae5; color: #059669; }
.rk-cons-card[data-type="warranty"] .rk-cons-icon { background: var(--rk-wq-red-light); color: #dc2626; }

.rk-cons-card h4 {
    margin: 0 0 10px 0;
    font-size: 16px;
    font-weight: 800;
    color: var(--rk-wq-dark);
}

.rk-cons-card p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: var(--rk-wq-gray);
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-wq-header, .rk-wq-intro, .rk-wq-simulator, .rk-wq-consequences { padding: 30px 20px; }
    .rk-wq-header h2 { font-size: 22px; }
    .rk-sim-panel { grid-template-columns: 1fr; gap: 20px; padding: 20px; }
    .rk-sim-visual { min-height: 200px; }
    .rk-cons-grid { grid-template-columns: 1fr; gap: 15px; }
    .rk-cons-card { padding: 20px 15px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-jakosc-wody",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Dlaczego jakość wody w instalacji ogrzewania podłogowego jest kluczowa dla żywotności pompy ciepła?",
    "description": "Zła jakość wody powoduje natychmiastowe osadzanie się kamienia kotłowego. Zgodnie z normą VDI 2035, 1 mm kamienia zwiększa zużycie prądu przez pompę ciepła o 10%.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-jakosc-wody",
    "name": "Wpływ grubości kamienia kotłowego na efektywność pompy ciepła",
    "description": "Kalkulacja techniczna określająca spadek współczynnika wymiany ciepła oraz wzrost poboru energii elektrycznej w zależności od warstwy osadów mineralnych w wymienniku.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "jakość wody w instalacji ogrzewania podłogowego",
      "norma VDI 2035 twardość wody do co",
      "kamień kotłowy w pompie ciepła",
      "utrata gwarancji na pompę ciepła",
      "zatkane rotametry biofilm"
    ],
    "measurementTechnique": "Algorytm oparty na normie VDI 2035 wykazujący, że każdy 1 mm osadu wapiennego w układach niskotemperaturowych zwiększa opory hydrauliczne i straty energii o ok. 10%.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Dopuszczalna twardość wody wg VDI 2035: Poniżej 0,11 mmol/l.",
        "Grubość osadu 1 mm: Wzrost zużycia energii o ok. 10%.",
        "Grubość osadu > 2 mm: Ryzyko krytycznego uszkodzenia sprężarki, utrata gwarancji producenckiej."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-jakosc-wody",
    "name": "Symulator Degradacji Wymiennika Ciepła (Pompa Ciepła)",
    "description": "Interaktywny panel obliczeniowy pozwalający inwestorowi przetestować wpływ twardej wody na koszty eksploatacji i stan prawny (gwarancję) pompy ciepła.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-wq-container">
    <div class="rk-wq-header">
        <div class="rk-wq-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 12h-4l-3 9L9 3l-3 9H2"></path></svg>
            Diagnostyka Awarii
        </div>
        <h2>Dlaczego jakość wody w instalacji ogrzewania podłogowego jest kluczowa dla żywotności pompy ciepła?</h2>
    </div>

    <div class="rk-wq-intro">
        <p>Właściwa jakość wody jest bezwzględnie kluczowa, ponieważ wg <strong>normy VDI 2035</strong> oraz zaleceń producentów urządzeń, przekroczenie dopuszczalnej twardości wody (zazwyczaj poniżej <strong>0,11 mmol/l</strong> dla instalacji powyżej 50 kW lub zgodnie z <a href="https://projekt-ogrzewania.pl/najczestsze-bledy-przy-montazu-ogrzewania-podlogowego-i-jak-ich-uniknac/">wymogami gwarancyjnymi instalacji</a>) prowadzi do natychmiastowego osadzania się kamienia kotłowego na <a href="https://projekt-ogrzewania.pl/zasada-dzialania-wymiennika-plytowego-w-ogrzewaniu-podlogowym/">płytowym wymienniku ciepła</a>.</p>
        <p>W układach podłogowych z <a href="https://projekt-ogrzewania.pl/pompa-ciepla/">pompą ciepła</a>, gdzie <a href="https://projekt-ogrzewania.pl/spadek-temperatury-%ce%b4t-roznica-miedzy-temperatura-zasilania-a-powrotu/">spadek temperatury (ΔT) wynosi zazwyczaj 5K</a>, każdy milimetr izolacji z kamienia drastycznie podnosi koszty pracy sprężarki.</p>
    </div>

    <div class="rk-wq-simulator">
        <div class="rk-sim-panel">
            
            <div class="rk-sim-controls">
                <h3>Symulator Kamienia Kotłowego</h3>
                
                <div class="rk-slider-group">
                    <div class="rk-slider-label">
                        <span>Grubość warstwy osadu</span>
                        <span class="rk-slider-val" id="rkScaleVal">0.0 mm</span>
                    </div>
                    <input type="range" min="0" max="3" step="0.1" value="0" class="rk-range-input" id="rkScaleSlider">
                </div>

                <div class="rk-live-stats">
                    <div class="rk-stat-item" id="statEnergy">
                        <span style="color: var(--rk-wq-gray);">Wzrost zużycia energii:</span>
                        <span style="color: var(--rk-wq-green);" id="valEnergy">+0%</span>
                    </div>
                    <div class="rk-stat-item" id="statFlow">
                        <span style="color: var(--rk-wq-gray);">Opory hydrauliczne:</span>
                        <span style="color: var(--rk-wq-green);" id="valFlow">Normatywne</span>
                    </div>
                    <div class="rk-stat-item" id="statWarranty">
                        <span style="color: var(--rk-wq-gray);">Status Gwarancji:</span>
                        <span style="color: var(--rk-wq-green);" id="valWarranty">Utrzymana</span>
                    </div>
                </div>
            </div>

            <div class="rk-sim-visual">
                <span class="rk-vis-label">Przekrój Wymiennika Płytowego</span>
                <svg class="rk-svg-exchanger" viewBox="0 0 100 100">
                    <rect class="rk-plate" x="20" y="10" width="4" height="80" rx="1"></rect>
                    <rect class="rk-plate" x="40" y="10" width="4" height="80" rx="1"></rect>
                    <rect class="rk-plate" x="60" y="10" width="4" height="80" rx="1"></rect>
                    <rect class="rk-plate" x="80" y="10" width="4" height="80" rx="1"></rect>

                    <line class="rk-flow-hot" x1="30" y1="15" x2="30" y2="85" id="animHot1"></line>
                    <line class="rk-flow-cold" x1="50" y1="15" x2="50" y2="85" id="animCold1"></line>
                    <line class="rk-flow-hot" x1="70" y1="15" x2="70" y2="85" id="animHot2"></line>

                    <rect class="rk-scale-layer" id="scale1L" x="24" y="15" width="0" height="70"></rect>
                    <rect class="rk-scale-layer" id="scale1R" x="40" y="15" width="0" height="70"></rect> <rect class="rk-scale-layer" id="scale2L" x="44" y="15" width="0" height="70"></rect>
                    <rect class="rk-scale-layer" id="scale2R" x="60" y="15" width="0" height="70"></rect>

                    <rect class="rk-scale-layer" id="scale3L" x="64" y="15" width="0" height="70"></rect>
                    <rect class="rk-scale-layer" id="scale3R" x="80" y="15" width="0" height="70"></rect>
                </svg>
            </div>

        </div>
    </div>

    <div class="rk-wq-consequences">
        <h3>Konsekwencje użycia nieuzdatnionej wody</h3>
        
        <div class="rk-cons-grid">
            <div class="rk-cons-card" data-type="corrosion">
                <div class="rk-cons-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M16 12l-4 4-4-4M12 8v7"></path></svg>
                </div>
                <h4>Korozja elektrochemiczna</h4>
                <p>Przy różnicy potencjałów między elementami mosiężnymi rozdzielacza a np. rurami stalowymi bez inhibitora, dochodzi do szybkiego utleniania i powstawania wżerów.</p>
            </div>

            <div class="rk-cons-card" data-type="biofilm">
                <div class="rk-cons-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.24 12.24a6 6 0 0 0-8.49-8.49L5 10.5V19h8.5z"></path><line x1="16" y1="8" x2="2" y2="22"></line><line x1="17.5" y1="15" x2="9" y2="6.5"></line></svg>
                </div>
                <h4>Zatory i Biofilm</h4>
                <p>Zwykła woda sieciowa zawiera tlen i mikroorganizmy, które w temperaturze pracy (30°C–40°C) tworzą tzw. biofilm, zatykający <a href="https://projekt-ogrzewania.pl/rotametr-wskaznik-przeplywu-w-rozdzielaczu-ogrzewania-podlogowego/">rotametry w rozdzielaczu</a>.</p>
            </div>

            <div class="rk-cons-card" data-type="warranty">
                <div class="rk-cons-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>
                </div>
                <h4>Utrata gwarancji</h4>
                <p>Większość producentów pomp ciepła wymaga przedstawienia protokołu pierwszego napełnienia instalacji z jednoznacznym potwierdzeniem demineralizacji i twardości wody.</p>
            </div>
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const slider = document.getElementById('rkScaleSlider');
    const valDisplay = document.getElementById('rkScaleVal');
    
    // Stats elements
    const valEnergy = document.getElementById('valEnergy');
    const valFlow = document.getElementById('valFlow');
    const valWarranty = document.getElementById('valWarranty');
    
    // SVG Scale Rects
    const layersLeft = [
        document.getElementById('scale1L'),
        document.getElementById('scale2L'),
        document.getElementById('scale3L')
    ];
    const layersRight = [
        document.getElementById('scale1R'),
        document.getElementById('scale2R'),
        document.getElementById('scale3R')
    ];

    // SVG Flow animations
    const flows = [
        document.getElementById('animHot1'),
        document.getElementById('animCold1'),
        document.getElementById('animHot2')
    ];

    slider.addEventListener('input', function() {
        const thickness = parseFloat(this.value);
        valDisplay.textContent = thickness.toFixed(1) + ' mm';
        
        // 1. Obliczenia Energii (1mm = 10%)
        const energyIncrease = Math.round(thickness * 10);
        valEnergy.textContent = '+' + energyIncrease + '%';

        // Koloryzacja i tekst statystyk
        if (thickness === 0) {
            valEnergy.style.color = 'var(--rk-wq-green)';
            
            valFlow.textContent = 'Normatywne';
            valFlow.style.color = 'var(--rk-wq-green)';
            
            valWarranty.textContent = 'Utrzymana';
            valWarranty.style.color = 'var(--rk-wq-green)';
            
            slider.style.background = 'var(--rk-wq-blue)';
        } else if (thickness <= 1.0) {
            valEnergy.style.color = 'var(--rk-wq-yellow)';
            
            valFlow.textContent = 'Lekko podwyższone';
            valFlow.style.color = 'var(--rk-wq-yellow)';
            
            valWarranty.textContent = 'Zagrożona';
            valWarranty.style.color = 'var(--rk-wq-yellow)';
            
            slider.style.background = 'var(--rk-wq-yellow)';
        } else {
            valEnergy.style.color = 'var(--rk-wq-red)';
            
            valFlow.textContent = 'Krytyczne (Ryzyko awarii)';
            valFlow.style.color = 'var(--rk-wq-red)';
            
            valWarranty.textContent = 'Odrzucona';
            valWarranty.style.color = 'var(--rk-wq-red)';
            
            slider.style.background = 'var(--rk-wq-red)';
        }

        // 2. Aktualizacja wizualizacji SVG (grubość kamienia w pikselach)
        // Max grubość osadu to powiedzmy 3px na ścianę (odwzorowanie 3mm)
        const svgThickness = thickness; 

        layersLeft.forEach(layer => {
            if (thickness === 0) {
                layer.style.opacity = '0';
            } else {
                layer.style.opacity = '1';
                layer.setAttribute('width', svgThickness);
            }
        });

        layersRight.forEach(layer => {
            if (thickness === 0) {
                layer.style.opacity = '0';
            } else {
                layer.style.opacity = '1';
                layer.setAttribute('width', svgThickness);
                // Musimy przesunąć X w lewo, żeby warstwa rosła "do środka" kanału
                const baseX = parseFloat(layer.getAttribute('data-basex') || layer.getAttribute('x'));
                if (!layer.getAttribute('data-basex')) layer.setAttribute('data-basex', baseX);
                layer.setAttribute('x', baseX - svgThickness);
            }
        });

        // 3. Spowolnienie przepływu (wzrost oporów hydraulicznych)
        // Domyślna animacja to 1.5s. Im grubszy kamień, tym wolniej.
        const animationSpeed = 1.5 + (thickness * 1.5); // Od 1.5s do 6s
        flows.forEach(flow => {
            flow.style.animationDuration = animationSpeed + 's';
        });
    });
});
</script>



<style>
:root {
    --rk-water-dark: #0f172a;
    --rk-water-blue: #0ea5e9;
    --rk-water-blue-light: #e0f2fe;
    --rk-water-red: #ef4444;
    --rk-water-red-light: #fef2f2;
    --rk-water-green: #10b981;
    --rk-water-gray: #475569;
    --rk-water-border: #cbd5e1;
    --rk-water-bg: #ffffff;
    --rk-water-shadow: 0 15px 35px -10px rgba(14, 165, 233, 0.15);
}

.rk-water-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    background: var(--rk-water-bg);
    border-radius: 20px;
    box-shadow: var(--rk-water-shadow);
    border: 1px solid var(--rk-water-blue);
    overflow: hidden;
    transition: all 0.4s ease;
}

/* Stan: Kranówka (Błąd) */
.rk-water-container.state-tap {
    border-color: var(--rk-water-red);
    box-shadow: 0 15px 35px -10px rgba(239, 68, 68, 0.15);
}

/* Nagłówek */
.rk-water-header {
    padding: 40px 50px;
    background: linear-gradient(135deg, var(--rk-water-dark) 0%, #1e293b 100%);
    color: #ffffff;
    border-bottom: 4px solid var(--rk-water-blue);
    transition: border-bottom-color 0.4s ease;
}

.rk-water-container.state-tap .rk-water-header {
    border-bottom-color: var(--rk-water-red);
}

.rk-water-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(14, 165, 233, 0.2);
    color: #7dd3fc;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(125, 211, 252, 0.3);
    transition: all 0.4s ease;
}

.rk-water-container.state-tap .rk-water-badge {
    background: rgba(239, 68, 68, 0.2);
    color: #fca5a5;
    border-color: rgba(252, 165, 165, 0.3);
}

.rk-water-header h2 {
    font-size: 26px;
    font-weight: 900;
    margin: 0;
    line-height: 1.3;
}

/* Tekst wprowadzający */
.rk-water-intro {
    padding: 35px 50px 10px 50px;
    font-size: 16px;
    line-height: 1.8;
    color: var(--rk-water-gray);
}

.rk-water-intro a {
    color: var(--rk-water-blue);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px dashed var(--rk-water-blue);
    transition: all 0.3s;
}

.rk-water-intro a:hover {
    color: #0369a1;
    border-bottom-style: solid;
}

/* Interaktywny Skaner Wody */
.rk-water-scanner {
    padding: 20px 50px 40px 50px;
}

.rk-scanner-box {
    background: #f8fafc;
    border: 1px solid var(--rk-water-border);
    border-radius: 16px;
    padding: 30px;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);
}

/* Przełącznik */
.rk-water-toggle {
    display: flex;
    gap: 15px;
    margin-bottom: 30px;
}

.rk-toggle-btn {
    flex: 1;
    padding: 16px;
    border-radius: 12px;
    border: 2px solid var(--rk-water-border);
    background: #ffffff;
    cursor: pointer;
    font-size: 15px;
    font-weight: 800;
    color: var(--rk-water-gray);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.rk-toggle-btn span.sub {
    font-size: 12px;
    font-weight: 600;
    opacity: 0.7;
    text-transform: uppercase;
}

.rk-toggle-btn:hover { background: #f1f5f9; }

/* Aktywne stany przełącznika */
.rk-water-container.state-demi .rk-toggle-btn[data-water="demi"] {
    background: var(--rk-water-blue-light);
    border-color: var(--rk-water-blue);
    color: #0369a1;
    box-shadow: 0 8px 16px -4px rgba(14, 165, 233, 0.2);
}

.rk-water-container.state-tap .rk-toggle-btn[data-water="tap"] {
    background: var(--rk-water-red-light);
    border-color: var(--rk-water-red);
    color: #991b1b;
    box-shadow: 0 8px 16px -4px rgba(239, 68, 68, 0.2);
}

/* Wizualizacja SVG (Mikroskop) */
.rk-microscope-view {
    background: var(--rk-water-dark);
    border-radius: 12px;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    margin-bottom: 30px;
    border: 2px solid #334155;
}

.rk-micro-label {
    position: absolute;
    top: 15px;
    left: 20px;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    z-index: 10;
}

.rk-svg-pipe {
    width: 100%;
    height: 100%;
    max-width: 400px;
}

/* SVG Animacje - Woda Demi */
.anim-water-flow {
    stroke-dasharray: 40 20;
    animation: flowBlue 2s linear infinite;
    transition: stroke 0.4s ease;
}

.state-demi .anim-water-flow { stroke: #38bdf8; }
.state-tap .anim-water-flow { stroke: #78350f; animation-duration: 4s; }

@keyframes flowBlue { to { stroke-dashoffset: -60; } }

/* SVG Animacje - Kranówka (Kamień i Korozja) */
.anim-calcium {
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.state-tap .anim-calcium {
    opacity: 1;
    transform: translateY(0);
}

.anim-pitting {
    opacity: 0;
    fill: #ef4444;
    transition: opacity 0.5s;
    animation: pulseCorrosion 2s infinite alternate;
}

.state-tap .anim-pitting { opacity: 1; }

@keyframes pulseCorrosion {
    from { filter: drop-shadow(0 0 2px #ef4444); }
    to { filter: drop-shadow(0 0 8px #ef4444); }
}

/* Wskaźnik Przewodności (Miernik) */
.rk-meter {
    position: absolute;
    bottom: 15px;
    right: 20px;
    background: rgba(255, 255, 255, 0.1);
    padding: 8px 12px;
    border-radius: 8px;
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    gap: 10px;
}

.rk-meter-value {
    font-family: monospace;
    font-size: 20px;
    font-weight: 900;
    color: var(--rk-water-green);
    transition: color 0.4s;
}

.state-tap .rk-meter-value { color: var(--rk-water-red); }

/* Parametry Diagnostyczne (Kafelki) */
.rk-diag-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.rk-diag-card {
    background: #ffffff;
    border: 1px solid var(--rk-water-border);
    padding: 15px 20px;
    border-radius: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.3s ease;
    border-left: 4px solid transparent;
}

.rk-diag-info h4 {
    margin: 0 0 4px 0;
    font-size: 13px;
    color: var(--rk-water-gray);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.rk-diag-info p {
    margin: 0;
    font-size: 15px;
    font-weight: 800;
    color: var(--rk-water-dark);
}

.rk-diag-status {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Karty w stanie Demi */
.state-demi .rk-diag-card { border-left-color: var(--rk-water-green); }
.state-demi .rk-diag-status { background: #d1fae5; color: #059669; }

/* Karty w stanie Tap */
.state-tap .rk-diag-card { border-left-color: var(--rk-water-red); background: #fef2f2; }
.state-tap .rk-diag-status { background: #fee2e2; color: #dc2626; }
.state-tap .rk-diag-info p { color: #991b1b; }

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-water-header, .rk-water-intro, .rk-water-scanner { padding: 25px 20px; }
    .rk-water-header h2 { font-size: 22px; }
    .rk-water-toggle { flex-direction: column; gap: 10px; }
    .rk-microscope-view { height: 150px; }
    .rk-diag-grid { grid-template-columns: 1fr; }
    .rk-diag-card { padding: 12px 15px; }
    .rk-meter { bottom: auto; top: 15px; right: 15px; }
    .rk-micro-label { display: none; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-woda-kranowa",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Czy można napełnić instalację ogrzewania podłogowego zwykłą wodą z kranu?",
    "description": "Kategorycznie odradzamy stosowanie zwykłej wody kranowej w ogrzewaniu podłogowym. Sprawdź wymagania normy PN-C-04607:1993 oraz ryzyko korozji wżerowej.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-woda",
    "name": "Parametry fizykochemiczne wody instalacyjnej wg normy PN-C-04607:1993",
    "description": "Zestawienie dopuszczalnych parametrów chemicznych dla czynnika grzewczego, definiujące ryzyko wytrącania soli wapnia i magnezu oraz zjawisko korozji wżerowej.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "woda z kranu w ogrzewaniu podłogowym",
      "norma PN-C-04607:1993",
      "korozja wżerowa w podłogówce",
      "przewodność elektryczna wody kotłowej",
      "demineralizacja wody do CO"
    ],
    "measurementTechnique": "Analiza spektralna i pomiar konduktometryczny (przewodność w µS/cm) dla wody sieciowej w zestawieniu z wymogami antykorozyjnymi instalacji CO.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Wymóg przewodności elektrycznej: Poniżej 100 µS/cm.",
        "Obecność chloru i tlenu w wodzie sieciowej: Inicjator korozji wżerowej elementów metalowych.",
        "Sole wapnia i magnezu: Bezpośrednia przyczyna zarastania instalacji kamieniem."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-woda",
    "name": "Symulator Korozji i Przewodności Wody (Kranówka vs Demi)",
    "description": "Interaktywny skaner diagnostyczny pokazujący mikroskopowy wpływ surowej wody na ściany rur i elementy mosiężne w porównaniu z wodą poddaną procesowi demineralizacji.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-water-container state-demi" id="rkWaterContainer">
    <div class="rk-water-header">
        <div class="rk-water-badge" id="rkWaterBadge">
            <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22a7 7 0 0 0 7-7c0-2-1-3.9-3-5.5s-3.5-4-4-6.5c-.5 2.5-2 4.9-4 6.5C6 11.1 5 13 5 15a7 7 0 0 0 7 7z"></path></svg>
            <span id="rkBadgeText">Zgodność z Normą</span>
        </div>
        <h2>Czy można napełnić instalację ogrzewania podłogowego zwykłą wodą z kranu?</h2>
    </div>

    <div class="rk-water-intro">
        <p>Kategorycznie odradzam napełnianie instalacji bezpośrednio wodą z kranu, ponieważ zawiera ona chlor, tlen oraz sole wapnia i magnezu. Związki te, według <strong>normy PN-C-04607:1993</strong>, drastycznie przekraczają dopuszczalne parametry dla nowoczesnych systemów grzewczych. To jeden z <a href="https://projekt-ogrzewania.pl/najczestsze-bledy-przy-montazu-ogrzewania-podlogowego-i-jak-ich-uniknac/">najczęstszych błędów przy montażu instalacji</a>.</p>
        <p>Woda sieciowa musi zostać poddana procesowi demineralizacji. Wykorzystanie <a href="https://projekt-ogrzewania.pl/woda-demineralizowana-z-inhibitorem-korozji-do-ogrzewania-podlogowego/">wody demineralizowanej z inhibitorem korozji</a> obniża jej przewodność elektryczną poniżej <strong>100 µS/cm</strong>, co jest kluczowe, aby zminimalizować ryzyko korozji wżerowej elementów metalowych, np. gdy wybierasz <a href="https://projekt-ogrzewania.pl/rozdzielacz-do-ogrzewania-podlogowego-mosiezny-czy-ze-stali-nierdzewnej/">mosiężny rozdzielacz do podłogówki</a>.</p>
    </div>

    <div class="rk-water-scanner">
        <div class="rk-scanner-box">
            
            <div class="rk-water-toggle">
                <button class="rk-toggle-btn" data-water="demi" style="border-color: var(--rk-water-blue); background: var(--rk-water-blue-light); color: #0369a1;">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
                    Woda Demineralizowana
                    <span class="sub">Standard Ekspercki</span>
                </button>
                <button class="rk-toggle-btn" data-water="tap">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>
                    Woda z Kranu (Sieciowa)
                    <span class="sub">Wysokie Ryzyko</span>
                </button>
            </div>

            <div class="rk-microscope-view">
                <span class="rk-micro-label">Widok przekroju rury PEX / Mosiądz</span>
                
                <svg class="rk-svg-pipe" viewBox="0 0 200 80" preserveAspectRatio="none">
                    <rect x="0" y="10" width="200" height="60" fill="rgba(255,255,255,0.05)" stroke="#64748b" stroke-width="4"></rect>
                    
                    <line x1="-50" y1="40" x2="250" y2="40" class="anim-water-flow" stroke-width="20" stroke-linecap="round"></line>
                    
                    <path class="anim-calcium" d="M 20 68 Q 30 55 40 68 T 60 68 T 80 68 T 100 68 T 120 68 T 140 68 T 160 68 T 180 68" fill="none" stroke="#fef08a" stroke-width="6" stroke-linecap="round"></path>
                    <path class="anim-calcium" d="M 30 12 Q 40 25 50 12 T 70 12 T 90 12 T 110 12 T 130 12 T 150 12 T 170 12" fill="none" stroke="#fde047" stroke-width="4" stroke-linecap="round"></path>
                    
                    <circle class="anim-pitting" cx="80" cy="68" r="4"></circle>
                    <circle class="anim-pitting" cx="130" cy="12" r="3"></circle>
                    <circle class="anim-pitting" cx="170" cy="68" r="5"></circle>
                </svg>

                <div class="rk-meter">
                    <span style="font-size: 10px; color: #94a3b8; text-transform: uppercase;">Przewodność:</span>
                    <span class="rk-meter-value" id="rkConductivity">&lt; 10 µS/cm</span>
                </div>
            </div>

            <div class="rk-diag-grid">
                <div class="rk-diag-card">
                    <div class="rk-diag-info">
                        <h4>Sole wapnia i magnezu</h4>
                        <p id="valSalts">Usunięte (Brak kamienia)</p>
                    </div>
                    <div class="rk-diag-status" id="iconSalts">
                        <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>
                    </div>
                </div>
                
                <div class="rk-diag-card">
                    <div class="rk-diag-info">
                        <h4>Chlor i Tlen aktywny</h4>
                        <p id="valOxygen">Brak (Ochrona metali)</p>
                    </div>
                    <div class="rk-diag-status" id="iconOxygen">
                        <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>
                    </div>
                </div>

                <div class="rk-diag-card">
                    <div class="rk-diag-info">
                        <h4>Korozja Wżerowa</h4>
                        <p id="valCorrosion">Zablokowana (Inhibitor)</p>
                    </div>
                    <div class="rk-diag-status" id="iconCorrosion">
                        <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>
                    </div>
                </div>

                <div class="rk-diag-card">
                    <div class="rk-diag-info">
                        <h4>Norma PN-C-04607:1993</h4>
                        <p id="valNorm">Spełniona w 100%</p>
                    </div>
                    <div class="rk-diag-status" id="iconNorm">
                        <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>
                    </div>
                </div>
            </div>
            
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const container = document.getElementById('rkWaterContainer');
    const btns = document.querySelectorAll('.rk-water-toggle .rk-toggle-btn');
    
    // Elementy tekstowe
    const badgeText = document.getElementById('rkBadgeText');
    const conductivity = document.getElementById('rkConductivity');
    
    const valSalts = document.getElementById('valSalts');
    const valOxygen = document.getElementById('valOxygen');
    const valCorrosion = document.getElementById('valCorrosion');
    const valNorm = document.getElementById('valNorm');

    const iconSuccess = '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>';
    const iconError = '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>';

    const updateIcons = (iconHtml) => {
        document.getElementById('iconSalts').innerHTML = iconHtml;
        document.getElementById('iconOxygen').innerHTML = iconHtml;
        document.getElementById('iconCorrosion').innerHTML = iconHtml;
        document.getElementById('iconNorm').innerHTML = iconHtml;
    };

    btns.forEach(btn => {
        btn.addEventListener('click', function() {
            const waterType = this.getAttribute('data-water');
            
            // Reset stylów przycisków
            btns.forEach(b => {
                b.style.borderColor = 'var(--rk-water-border)';
                b.style.background = '#ffffff';
                b.style.color = 'var(--rk-water-gray)';
                b.style.boxShadow = 'none';
            });

            if (waterType === 'demi') {
                container.className = 'rk-water-container state-demi';
                this.style.borderColor = 'var(--rk-water-blue)';
                this.style.background = 'var(--rk-water-blue-light)';
                this.style.color = '#0369a1';
                this.style.boxShadow = '0 8px 16px -4px rgba(14, 165, 233, 0.2)';
                
                badgeText.textContent = 'Zgodność z Normą';
                conductivity.textContent = '< 10 µS/cm';
                
                valSalts.textContent = 'Usunięte (Brak kamienia)';
                valOxygen.textContent = 'Brak (Ochrona metali)';
                valCorrosion.textContent = 'Zablokowana (Inhibitor)';
                valNorm.textContent = 'Spełniona w 100%';
                
                updateIcons(iconSuccess);
            } else {
                container.className = 'rk-water-container state-tap';
                this.style.borderColor = 'var(--rk-water-red)';
                this.style.background = 'var(--rk-water-red-light)';
                this.style.color = '#991b1b';
                this.style.boxShadow = '0 8px 16px -4px rgba(239, 68, 68, 0.2)';
                
                badgeText.textContent = 'Przekroczenie Normy';
                conductivity.textContent = '> 600 µS/cm';
                
                valSalts.textContent = 'Wytrącanie kamienia kotłowego';
                valOxygen.textContent = 'Obecny (Inicjacja utleniania)';
                valCorrosion.textContent = 'Wysokie ryzyko wżerów';
                valNorm.textContent = 'Przekroczone parametry';
                
                updateIcons(iconError);
            }
        });
    });
});
</script>



<style>
:root {
    --rk-fluid-dark: #0f172a;
    --rk-fluid-water-main: #0284c7;
    --rk-fluid-water-light: #e0f2fe;
    --rk-fluid-water-bg: #f0f9ff;
    --rk-fluid-glycol-main: #d97706;
    --rk-fluid-glycol-light: #fef3c7;
    --rk-fluid-glycol-bg: #fffbeb;
    --rk-fluid-gray: #475569;
    --rk-fluid-border: #cbd5e1;
    --rk-fluid-bg: #ffffff;
    --rk-fluid-shadow: 0 15px 35px -10px rgba(15, 23, 42, 0.1);
}

.rk-fluid-wrapper {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-fluid-bg);
    border-radius: 20px;
    box-shadow: var(--rk-fluid-shadow);
    border: 1px solid var(--rk-fluid-border);
    overflow: hidden;
    transition: border-color 0.4s ease;
}

.rk-fluid-wrapper.state-water { border-color: var(--rk-fluid-water-main); }
.rk-fluid-wrapper.state-glycol { border-color: var(--rk-fluid-glycol-main); }

/* Nagłówek */
.rk-fluid-header {
    padding: 40px 50px;
    background: linear-gradient(135deg, var(--rk-fluid-dark) 0%, #1e293b 100%);
    color: #ffffff;
    position: relative;
    border-bottom: 4px solid var(--rk-fluid-water-main);
    transition: border-bottom-color 0.4s ease;
}

.rk-fluid-wrapper.state-glycol .rk-fluid-header {
    border-bottom-color: var(--rk-fluid-glycol-main);
}

.rk-fluid-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.1);
    color: #e2e8f0;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.rk-fluid-header h2 {
    font-size: 26px;
    font-weight: 900;
    margin: 0;
    line-height: 1.3;
}

/* Wstęp tekstowy */
.rk-fluid-intro {
    padding: 35px 50px 20px 50px;
    font-size: 16px;
    line-height: 1.8;
    color: var(--rk-fluid-gray);
}

.rk-fluid-intro strong {
    color: var(--rk-fluid-dark);
}

.rk-fluid-intro a {
    color: var(--rk-fluid-water-main);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px dashed var(--rk-fluid-water-main);
    transition: all 0.3s;
}

.rk-fluid-intro a:hover {
    color: #0369a1;
    border-bottom-style: solid;
}

.rk-fluid-wrapper.state-glycol .rk-fluid-intro a {
    color: var(--rk-fluid-glycol-main);
    border-bottom-color: var(--rk-fluid-glycol-main);
}

/* Interaktywny Dashboard */
.rk-fluid-dashboard {
    padding: 0 50px 40px 50px;
}

/* Przełącznik (Toggle) */
.rk-fluid-switch-container {
    display: flex;
    background: #f1f5f9;
    border-radius: 16px;
    padding: 8px;
    margin-bottom: 35px;
    border: 1px solid var(--rk-fluid-border);
}

.rk-fluid-tab {
    flex: 1;
    text-align: center;
    padding: 16px 20px;
    font-size: 16px;
    font-weight: 800;
    color: var(--rk-fluid-gray);
    cursor: pointer;
    border-radius: 12px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.rk-fluid-wrapper.state-water .rk-fluid-tab[data-fluid="water"] {
    background: #ffffff;
    color: var(--rk-fluid-water-main);
    box-shadow: 0 4px 10px rgba(2, 132, 199, 0.15);
}

.rk-fluid-wrapper.state-glycol .rk-fluid-tab[data-fluid="glycol"] {
    background: #ffffff;
    color: var(--rk-fluid-glycol-main);
    box-shadow: 0 4px 10px rgba(217, 119, 6, 0.15);
}

/* Wizualizator SVG */
.rk-fluid-visualizer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 35px;
}

.rk-vis-box {
    background: var(--rk-fluid-dark);
    border-radius: 16px;
    padding: 25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    height: 180px;
}

.rk-vis-title {
    position: absolute;
    top: 15px;
    left: 20px;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 2;
}

.rk-vis-svg {
    width: 100%;
    height: 100%;
    max-width: 120px;
    z-index: 1;
}

/* Animacje SVG: Termometr */
.anim-thermo-fill {
    transition: height 0.6s cubic-bezier(0.4, 0, 0.2, 1), y 0.6s cubic-bezier(0.4, 0, 0.2, 1), fill 0.6s;
}
.state-water .anim-thermo-fill { fill: var(--rk-fluid-water-main); height: 50px; y: 30px; }
.state-glycol .anim-thermo-fill { fill: var(--rk-fluid-glycol-main); height: 20px; y: 60px; }

/* Animacje SVG: Przepływ (Lepkość) */
.anim-flow-dash {
    stroke-dasharray: 15 15;
    transition: stroke 0.6s;
}
.state-water .anim-flow-dash {
    stroke: var(--rk-fluid-water-main);
    animation: flowMove 1s linear infinite;
}
.state-glycol .anim-flow-dash {
    stroke: var(--rk-fluid-glycol-main);
    animation: flowMove 3s linear infinite; /* Zdecydowanie wolniej z powodu wysokiej lepkości */
}

@keyframes flowMove {
    to { stroke-dashoffset: -30; }
}

/* Karty Danych (Zamiast standardowej tabeli) */
.rk-fluid-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.rk-data-card {
    background: #f8fafc;
    border: 1px solid var(--rk-fluid-border);
    border-radius: 12px;
    padding: 20px;
    transition: all 0.4s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.state-water .rk-data-card { border-left: 4px solid var(--rk-fluid-water-main); }
.state-glycol .rk-data-card { border-left: 4px solid var(--rk-fluid-glycol-main); background: var(--rk-fluid-glycol-bg); }

.rk-card-label {
    font-size: 13px;
    color: var(--rk-fluid-gray);
    font-weight: 700;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.rk-card-value {
    font-size: 18px;
    font-weight: 900;
    color: var(--rk-fluid-dark);
    transition: color 0.3s;
}

.state-water .rk-card-value { color: var(--rk-fluid-water-main); }
.state-glycol .rk-card-value { color: var(--rk-fluid-glycol-main); }

.rk-card-desc {
    font-size: 13px;
    color: var(--rk-fluid-gray);
    margin-top: 5px;
    font-weight: 500;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-fluid-header, .rk-fluid-intro, .rk-fluid-dashboard { padding: 25px 20px; }
    .rk-fluid-header h2 { font-size: 22px; }
    .rk-fluid-switch-container { flex-direction: column; border-radius: 12px; padding: 5px; gap: 5px; }
    .rk-fluid-tab { padding: 12px; font-size: 14px; }
    .rk-fluid-visualizer { grid-template-columns: 1fr; gap: 15px; }
    .rk-vis-box { height: 140px; }
    .rk-fluid-grid { grid-template-columns: 1fr; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-parametry-plynu",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Jakie są parametry płynu niezamarzającego w ogrzewaniu podłogowym i kiedy go stosować?",
    "description": "Techniczne porównanie parametrów wody demineralizowanej i glikolu propylenowego (30%). Analiza przewodności cieplnej, lepkości i temperatur krzepnięcia w instalacjach podłogowych.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-parametry-plynu",
    "name": "Tabela porównawcza właściwości termodynamicznych: Woda vs Glikol",
    "description": "Zestawienie inżynierskie parametrów mediów grzewczych wykorzystywane do korekty obliczeń OZC i doboru pomp obiegowych.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "parametry glikolu w ogrzewaniu podłogowym",
      "lepkość kinematyczna płynu grzewczego",
      "przewodność cieplna glikolu a wody",
      "zamarzanie pompy ciepła monoblok",
      "temperatura krzepnięcia medium grzewczego"
    ],
    "measurementTechnique": "Porównanie wartości laboratoryjnych dla czystej wody demineralizowanej z inhibitorem oraz 30% roztworu glikolu propylenowego (zabezpieczenie do -15°C).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Przewodność cieplna: Woda ~0,6 W/mK | Glikol 30% ~0,45 W/mK (wymaga korekty OZC).",
        "Lepkość kinematyczna: Woda ~1 cSt | Glikol 30% ~3-4 cSt (wyższe opory tłoczenia).",
        "Temperatura krzepnięcia: Woda 0°C | Glikol 30% -15°C.",
        "Konserwacja: Woda (inhibitor co 5 lat) | Glikol (wymiana pełna co 3-5 lat)."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-parametry-plynu",
    "name": "Symulator Właściwości Termodynamicznych Medium",
    "description": "Interaktywny wizualizator ilustrujący różnice w lepkości kinematycznej (prędkość przepływu) oraz temperaturze krzepnięcia pomiędzy wodą a glikolem propylenowym.",
    "applicationCategory": "EngineeringApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-fluid-wrapper state-water" id="rkFluidWrapper">
    <div class="rk-fluid-header">
        <div class="rk-fluid-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z"></path></svg>
            Analiza Parametrów Medium
        </div>
        <h2>Jakie są parametry płynu niezamarzającego w ogrzewaniu podłogowym i kiedy go stosować?</h2>
    </div>

    <div class="rk-fluid-intro">
        <p>Płyn niezamarzający, zazwyczaj na bazie <a href="https://projekt-ogrzewania.pl/glikol-w-ogrzewaniu-podlogowym-prawda-i-mity-ktore-musi-znac-kazdy-inwestor/">glikolu propylenowego</a>, stosujemy wyłącznie w budynkach o charakterze sezonowym lub w układach z <a href="https://projekt-ogrzewania.pl/pompa-ciepla/">pompami ciepła typu monoblok</a>, gdzie istnieje realne ryzyko zamarznięcia medium w jednostce zewnętrznej przy awarii zasilania.</p>
        <p>Kluczowym inżynierskim problemem jest <strong>pojemność cieplna właściwa</strong>, która dla roztworu 30% glikolu jest o ok. 15-20% niższa niż dla czystej wody. Wymusza to obligatoryjną korektę <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">obliczeń przepływów w OZC</a> (Obliczeniowe Zapotrzebowanie na Ciepło), w przeciwnym razie system będzie trwale niedogrzany.</p>
    </div>

    <div class="rk-fluid-dashboard">
        
        <div class="rk-fluid-switch-container">
            <div class="rk-fluid-tab" data-fluid="water">
                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z"></path></svg>
                Woda Demineralizowana
            </div>
            <div class="rk-fluid-tab" data-fluid="glycol">
                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon></svg>
                Glikol Propylenowy (30%)
            </div>
        </div>

        <div class="rk-fluid-visualizer">
            <div class="rk-vis-box">
                <span class="rk-vis-title">Temp. Krzepnięcia</span>
                <svg class="rk-vis-svg" viewBox="0 0 100 100">
                    <rect x="40" y="10" width="20" height="60" rx="10" fill="none" stroke="#64748b" stroke-width="4"></rect>
                    <circle cx="50" cy="80" r="15" fill="none" stroke="#64748b" stroke-width="4"></circle>
                    <circle cx="50" cy="80" r="11" class="anim-thermo-fill"></circle>
                    <rect x="44" class="anim-thermo-fill" width="12" rx="6"></rect>
                    <line x1="25" y1="30" x2="35" y2="30" stroke="#cbd5e1" stroke-width="2"></line>
                    <text x="10" y="34" fill="#cbd5e1" font-size="12" font-family="sans-serif">0°</text>
                    <line x1="25" y1="60" x2="35" y2="60" stroke="#cbd5e1" stroke-width="2"></line>
                    <text x="5" y="64" fill="#cbd5e1" font-size="12" font-family="sans-serif">-15°</text>
                </svg>
            </div>

            <div class="rk-vis-box">
                <span class="rk-vis-title">Lepkość (Przepływ)</span>
                <svg class="rk-vis-svg" viewBox="0 0 100 100">
                    <rect x="10" y="35" width="80" height="30" rx="4" fill="none" stroke="#64748b" stroke-width="4"></rect>
                    <line x1="15" y1="50" x2="85" y2="50" class="anim-flow-dash" stroke-width="14" stroke-linecap="round"></line>
                </svg>
            </div>
        </div>

        <div class="rk-fluid-grid">
            <div class="rk-data-card">
                <span class="rk-card-label">Przewodność cieplna</span>
                <span class="rk-card-value" id="valThermo">Wysoka (ok. 0,6 W/mK)</span>
                <span class="rk-card-desc" id="descThermo">Optymalne przekazywanie ciepła.</span>
            </div>
            
            <div class="rk-data-card">
                <span class="rk-card-label">Lepkość kinematyczna</span>
                <span class="rk-card-value" id="valViscosity">Niska (1 cSt)</span>
                <span class="rk-card-desc" id="descViscosity">Minimalne obciążenie pompy obiegowej.</span>
            </div>
            
            <div class="rk-data-card">
                <span class="rk-card-label">Punkt krzepnięcia</span>
                <span class="rk-card-value" id="valFreeze">0°C</span>
                <span class="rk-card-desc" id="descFreeze">Brak ochrony przed mrozem.</span>
            </div>
            
            <div class="rk-data-card">
                <span class="rk-card-label">Interwał serwisowy</span>
                <span class="rk-card-value" id="valService">Wymiana inhibitora co 5 lat</span>
                <span class="rk-card-desc" id="descService">Tańsza i rzadsza eksploatacja.</span>
            </div>
        </div>

    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const wrapper = document.getElementById('rkFluidWrapper');
    const tabs = document.querySelectorAll('.rk-fluid-tab');
    
    // Obiekty DOM do podmiany danych
    const valThermo = document.getElementById('valThermo');
    const descThermo = document.getElementById('descThermo');
    const valViscosity = document.getElementById('valViscosity');
    const descViscosity = document.getElementById('descViscosity');
    const valFreeze = document.getElementById('valFreeze');
    const descFreeze = document.getElementById('descFreeze');
    const valService = document.getElementById('valService');
    const descService = document.getElementById('descService');

    // Baza danych dla kart
    const fluidData = {
        water: {
            thermo: "Wysoka (ok. 0,6 W/mK)",
            descThermo: "Optymalne i najszybsze przekazywanie ciepła z rur do jastrychu.",
            viscosity: "Niska (1 cSt)",
            descViscosity: "Minimalne obciążenie hydrauliczne dla pompy obiegowej.",
            freeze: "0°C",
            descFreeze: "Całkowity brak ochrony instalacji przed zjawiskiem zamarzania.",
            service: "Wymiana inhibitora co 5 lat",
            descService: "Niski koszt utrzymania zabezpieczenia antykorozyjnego."
        },
        glycol: {
            thermo: "Średnia (ok. 0,45 W/mK)",
            descThermo: "Spadek pojemności cieplnej o 15-20%. Wymaga korekty przepływów w OZC.",
            viscosity: "Wysoka (3-4 cSt)",
            descViscosity: "Silne opory. Wymaga większej średnicy rur lub mocniejszej pompy.",
            freeze: "ok. -15°C",
            descFreeze: "Pewna ochrona jednostek zewnętrznych (monoblok) przy awarii zasilania.",
            service: "Pełna wymiana płynu co 3-5 lat",
            descService: "Degradacja glikolu wymusza kosztowną, całkowitą wymianę medium."
        }
    };

    tabs.forEach(tab => {
        tab.addEventListener('click', function() {
            const selectedFluid = this.getAttribute('data-fluid');
            
            // Zmiana głównej klasy wrappera (uruchamia przejścia CSS i SVG)
            wrapper.className = 'rk-fluid-wrapper state-' + selectedFluid;

            // Zmiana tekstów w kartach (Fade efekt)
            const cards = document.querySelectorAll('.rk-data-card');
            cards.forEach(card => card.style.opacity = '0');
            
            setTimeout(() => {
                const data = fluidData[selectedFluid];
                valThermo.textContent = data.thermo;
                descThermo.textContent = data.descThermo;
                valViscosity.textContent = data.viscosity;
                descViscosity.textContent = data.descViscosity;
                valFreeze.textContent = data.freeze;
                descFreeze.textContent = data.descFreeze;
                valService.textContent = data.service;
                descService.textContent = data.descService;

                cards.forEach(card => card.style.opacity = '1');
            }, 200);
        });
    });
});
</script>



<style>
:root {
    --rk-calc-dark: #0f172a;
    --rk-calc-blue: #3b82f6;
    --rk-calc-blue-hover: #2563eb;
    --rk-calc-light: #eff6ff;
    --rk-calc-accent: #0ea5e9;
    --rk-calc-gray: #475569;
    --rk-calc-border: #cbd5e1;
    --rk-calc-bg: #ffffff;
    --rk-calc-shadow: 0 20px 40px -10px rgba(59, 130, 246, 0.15);
}

.rk-calc-wrapper {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-calc-bg);
    border-radius: 20px;
    box-shadow: var(--rk-calc-shadow);
    border: 1px solid var(--rk-calc-blue);
    overflow: hidden;
}

/* Nagłówek */
.rk-calc-header {
    padding: 40px 50px;
    background: linear-gradient(135deg, var(--rk-calc-dark) 0%, #1e293b 100%);
    color: #ffffff;
    border-bottom: 4px solid var(--rk-calc-accent);
}

.rk-calc-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(14, 165, 233, 0.2);
    color: #7dd3fc;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(125, 211, 252, 0.3);
}

.rk-calc-header h2 {
    font-size: 28px;
    font-weight: 900;
    margin: 0 0 15px 0;
    line-height: 1.3;
    color: #ffffff;
}

.rk-calc-header p {
    color: #cbd5e1;
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
    max-width: 750px;
}

.rk-calc-header a {
    color: #7dd3fc;
    text-decoration: underline;
    font-weight: 600;
}

/* Zawartość: Grid */
.rk-calc-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: #f8fafc;
}

/* Sekcja Lewa: Algorytm */
.rk-calc-algo {
    padding: 40px 50px;
    border-right: 1px solid var(--rk-calc-border);
    background: #ffffff;
}

.rk-calc-algo h3 {
    font-size: 20px;
    font-weight: 800;
    color: var(--rk-calc-dark);
    margin: 0 0 25px 0;
}

.rk-algo-step {
    display: flex;
    gap: 15px;
    margin-bottom: 25px;
}

.rk-algo-num {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    background: var(--rk-calc-light);
    color: var(--rk-calc-blue);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 16px;
    border: 2px solid #bfdbfe;
}

.rk-algo-text h4 {
    margin: 0 0 5px 0;
    font-size: 16px;
    font-weight: 800;
    color: var(--rk-calc-dark);
}

.rk-algo-text p {
    margin: 0;
    font-size: 15px;
    color: var(--rk-calc-gray);
    line-height: 1.6;
}

.rk-algo-formula {
    display: inline-block;
    background: #f1f5f9;
    padding: 8px 12px;
    border-radius: 8px;
    font-family: monospace;
    font-weight: 700;
    color: #0369a1;
    margin-top: 8px;
    border: 1px solid #e2e8f0;
}

/* Sekcja Prawa: Narzędzie */
.rk-calc-tool {
    padding: 40px 50px;
    display: flex;
    flex-direction: column;
}

/* Kontrolki narzędzia */
.rk-tool-control {
    background: #ffffff;
    border: 1px solid var(--rk-calc-border);
    border-radius: 16px;
    padding: 25px;
    margin-bottom: 25px;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05);
}

.rk-tool-label {
    display: flex;
    justify-content: space-between;
    font-weight: 800;
    color: var(--rk-calc-dark);
    margin-bottom: 15px;
    font-size: 15px;
}

.rk-tool-val {
    color: var(--rk-calc-blue);
}

/* Range Slider */
.rk-range-slider {
    -webkit-appearance: none;
    width: 100%;
    height: 8px;
    background: #e2e8f0;
    border-radius: 4px;
    outline: none;
    margin-bottom: 20px;
}

.rk-range-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--rk-calc-blue);
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(59, 130, 246, 0.4);
    transition: transform 0.1s;
}

.rk-range-slider::-webkit-slider-thumb:hover {
    transform: scale(1.15);
}

/* Toggle Switch */
.rk-toggle-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 15px;
    border-top: 1px dashed var(--rk-calc-border);
}

.rk-toggle-desc {
    font-size: 14px;
    font-weight: 700;
    color: var(--rk-calc-gray);
}

.rk-switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 28px;
}

.rk-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.rk-slider-round {
    position: absolute;
    cursor: pointer;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: #cbd5e1;
    transition: .4s;
    border-radius: 34px;
}

.rk-slider-round:before {
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
}

input:checked + .rk-slider-round { background-color: var(--rk-calc-blue); }
input:checked + .rk-slider-round:before { transform: translateX(22px); }

/* Wynik i SVG */
.rk-result-box {
    background: var(--rk-calc-dark);
    border-radius: 16px;
    padding: 30px;
    color: #ffffff;
    display: flex;
    align-items: center;
    gap: 25px;
    position: relative;
    overflow: hidden;
}

.rk-result-info {
    flex: 1;
    z-index: 2;
}

.rk-result-title {
    font-size: 14px;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 800;
    margin: 0 0 5px 0;
}

.rk-result-value {
    font-size: 38px;
    font-weight: 900;
    color: #7dd3fc;
    margin: 0;
    line-height: 1;
}

.rk-result-unit {
    font-size: 18px;
    color: #ffffff;
}

.rk-result-svg {
    width: 80px;
    height: 80px;
    z-index: 2;
}

/* Animacja wypełniania SVG */
#rkWaterFill {
    transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1), y 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.rk-bg-waves {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.1;
    z-index: 1;
    pointer-events: none;
}

@media (max-width: 768px) {
    .rk-calc-content { grid-template-columns: 1fr; }
    .rk-calc-algo { border-right: none; border-bottom: 1px solid var(--rk-calc-border); padding: 30px 20px; }
    .rk-calc-header { padding: 30px 20px; }
    .rk-calc-header h2 { font-size: 24px; }
    .rk-calc-tool { padding: 30px 20px; }
    .rk-result-box { flex-direction: column; text-align: center; gap: 15px; padding: 25px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-kalkulator",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Jak obliczyć ilość wody potrzebną do napełnienia instalacji podłogowej?",
    "description": "Poznaj algorytm i skorzystaj z interaktywnego kalkulatora, aby dokładnie obliczyć zład wody w instalacji. Dowiedz się, ile litrów mieści metr rury PEX 16x2.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-kalkulator",
    "name": "Parametry objętościowe rur PEX/PERT do ogrzewania podłogowego",
    "description": "Zestawienie pojemności wodnej dla standardowych średnic rur ogrzewania płaszczyznowego, wykorzystywane do precyzyjnego określania pojemności całkowitej układu CO.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "ile wody potrzeba do wypełnienia instalacji podłogówki kalkulator",
      "ile wody mieści się w 1 metrze rury pex pert 16",
      "większy czy mniejszy zład wody w ogrzewaniu podłogowym",
      "pojemność wodna podłogówki",
      "objętość pętli grzewczej"
    ],
    "measurementTechnique": "Algorytm oparty na pojemności jednostkowej rury (np. 0,113 l/mb dla 16x2) skorygowany o wskaźnik osprzętu dodatkowego (+20% dla bufora).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Pojemność rury 16x2: ~0,113 litra na metr bieżący.",
        "Wskaźnik zapasu na osprzęt kotłowni: +15% do +20%."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-kalkulator",
    "name": "Kalkulator Objętości Zładu Wody (Ogrzewanie Podłogowe)",
    "description": "Dynamiczne narzędzie suwakowe obliczające całkowite zapotrzebowanie na medium grzewcze (wodę demineralizowaną) na podstawie długości rur i opcjonalnego bufora.",
    "applicationCategory": "EngineeringApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-calc-wrapper">
    <div class="rk-calc-header">
        <div class="rk-calc-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="16" height="16" rx="2" ry="2"></rect><rect x="9" y="9" width="6" height="6"></rect><line x1="9" y1="1" x2="9" y2="4"></line><line x1="15" y1="1" x2="15" y2="4"></line><line x1="9" y1="20" x2="9" y2="23"></line><line x1="15" y1="20" x2="15" y2="23"></line><line x1="20" y1="9" x2="23" y2="9"></line><line x1="20" y1="14" x2="23" y2="14"></line><line x1="1" y1="9" x2="4" y2="9"></line><line x1="1" y1="14" x2="4" y2="14"></line></svg>
            Wymiarowanie układu
        </div>
        <h2>Jak obliczyć ilość wody potrzebną do napełnienia instalacji podłogowej?</h2>
        <p>Aby precyzyjnie określić ilość potrzebnego medium, należy zsumować objętość wszystkich pętli grzewczych oraz rur magistralnych. Wiedza o tym, <a href="https://projekt-ogrzewania.pl/ile-wody-miesci-sie-w-1-metrze-rury-pex-pert-16/">ile wody mieści się w 1 metrze rury PEX/PERT 16</a>, jest kluczowa: to dokładnie <strong>0,113 litra na metr bieżący</strong>.</p>
    </div>

    <div class="rk-calc-content">
        <div class="rk-calc-algo">
            <h3>Algorytm obliczeń krok po kroku</h3>
            
            <div class="rk-algo-step">
                <div class="rk-algo-num">1</div>
                <div class="rk-algo-text">
                    <h4>Długość rur</h4>
                    <p>Zsumuj długości wszystkich pętli z projektu (np. 10 pętli po 100 m = 1000 m długości całkowitej).</p>
                </div>
            </div>

            <div class="rk-algo-step">
                <div class="rk-algo-num">2</div>
                <div class="rk-algo-text">
                    <h4>Objętość rur podłogowych</h4>
                    <p>Pomnóż wynik przez jednostkową pojemność rury. Nie wiesz, czy <a href="https://projekt-ogrzewania.pl/wiekszy-czy-mniejszy-zlad-wody-w-ogrzewaniu-podlogowym/">większy czy mniejszy zład wody</a> jest lepszy? Trzymaj się wyliczeń:</p>
                    <div class="rk-algo-formula">V_rury = L_całkowita × 0,113 l/m</div>
                </div>
            </div>

            <div class="rk-algo-step">
                <div class="rk-algo-num">3</div>
                <div class="rk-algo-text">
                    <h4>Osprzęt i bufor ciepła</h4>
                    <p>Dodaj objętość naczynia wzbiorczego, <a href="https://projekt-ogrzewania.pl/bufor-ciepla-w-ogrzewaniu-podlogowym/">bufora w ogrzewaniu podłogowym</a> oraz samego kotła. Bez bufora przyrównuje się zazwyczaj dodatek rzędu <strong>+15-20%</strong> na rozdzielacze i magistrale.</p>
                </div>
            </div>
            
            <div style="padding: 15px; background: #e0f2fe; border-radius: 12px; margin-top: 30px; border-left: 4px solid #0284c7;">
                <p style="margin: 0; font-size: 14px; color: #0c4a6e;"><strong>Przykład dla domu 150 m²:</strong> Przy łącznej długości rur 1200 m (1200 × 0,113 = 135,6 l). Wraz z podstawową instalacją kotłową należy przygotować ok. 160-170 litrów wody demineralizowanej.</p>
            </div>
        </div>

        <div class="rk-calc-tool">
            <div class="rk-tool-control">
                <div class="rk-tool-label">
                    <span>Łączna długość rur PEX 16x2</span>
                    <span class="rk-tool-val" id="rkValLength">1000 m</span>
                </div>
                <input type="range" min="200" max="3000" step="50" value="1000" class="rk-range-slider" id="rkInputLength">
                
                <div class="rk-toggle-row">
                    <span class="rk-toggle-desc">Uwzględnij rezerwę na osprzęt kotłowni (+20%)</span>
                    <label class="rk-switch">
                        <input type="checkbox" id="rkInputBuffer" checked>
                        <span class="rk-slider-round"></span>
                    </label>
                </div>
            </div>

            <div class="rk-result-box">
                <svg class="rk-bg-waves" preserveAspectRatio="none" viewBox="0 0 1440 320">
                    <path fill="#38bdf8" fill-opacity="1" d="M0,160L48,170.7C96,181,192,203,288,208C384,213,480,203,576,176C672,149,768,107,864,101.3C960,96,1056,128,1152,149.3C1248,171,1344,181,1392,186.7L1440,192L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z"></path>
                </svg>

                <div class="rk-result-info">
                    <h4 class="rk-result-title">Wymagany zład wody:</h4>
                    <p class="rk-result-value"><span id="rkResultLiters">136</span> <span class="rk-result-unit">Litrów</span></p>
                </div>

                <svg class="rk-result-svg" viewBox="0 0 100 100">
                    <rect x="25" y="10" width="50" height="80" rx="10" fill="none" stroke="#64748b" stroke-width="4"></rect>
                    <rect id="rkWaterFill" x="27" y="50" width="46" height="38" rx="8" fill="#38bdf8"></rect>
                    <line x1="20" y1="30" x2="25" y2="30" stroke="#cbd5e1" stroke-width="2"></line>
                    <line x1="20" y1="50" x2="25" y2="50" stroke="#cbd5e1" stroke-width="2"></line>
                    <line x1="20" y1="70" x2="25" y2="70" stroke="#cbd5e1" stroke-width="2"></line>
                </svg>
            </div>
            <p style="text-align: center; margin-top: 15px; font-size: 13px; color: var(--rk-calc-gray);">
                Precyzyjne wyniki? Sprawdź nasz pełny <a href="https://projekt-ogrzewania.pl/ile-wody-potrzeba-do-wypelnienia-instalacji-podlogowki-kalkulator/" style="color: var(--rk-calc-blue); font-weight: 700; text-decoration: none;">kalkulator objętości zładu</a>.
            </p>
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const inputLength = document.getElementById('rkInputLength');
    const inputBuffer = document.getElementById('rkInputBuffer');
    const valLength = document.getElementById('rkValLength');
    const resultLiters = document.getElementById('rkResultLiters');
    const waterFill = document.getElementById('rkWaterFill');
    
    // Stała objętości 1mb rury 16x2
    const VOLUME_PER_METER = 0.113;

    function calculateVolume() {
        const length = parseInt(inputLength.value);
        const hasBuffer = inputBuffer.checked;
        
        valLength.textContent = length + ' m';

        // Obliczenia
        let totalLiters = length * VOLUME_PER_METER;
        if (hasBuffer) {
            totalLiters = totalLiters * 1.20; // +20% na osprzęt
        }

        // Animacja cyfr
        resultLiters.textContent = Math.round(totalLiters);

        // Animacja SVG zbiornika (wysokość wizualna zależna od % z max możliwej wartości)
        // Max objętość dla 3000m z buforem = ~407L
        const maxVol = 3000 * VOLUME_PER_METER * 1.2;
        const fillPercentage = totalLiters / maxVol;
        
        // Prostokąt SVG: max wysokość = 76 (od y=86 do y=10), max y=12
        const maxHeight = 76;
        const currentHeight = Math.max(10, maxHeight * fillPercentage);
        const currentY = 88 - currentHeight;

        waterFill.setAttribute('height', currentHeight);
        waterFill.setAttribute('y', currentY);
    }

    inputLength.addEventListener('input', calculateVolume);
    inputBuffer.addEventListener('change', calculateVolume);

    // Initial call
    calculateVolume();
});
</script>



<style>
:root {
    --rk-inst-dark: #0f172a;
    --rk-inst-blue: #2563eb;
    --rk-inst-blue-light: #dbeafe;
    --rk-inst-cyan: #06b6d4;
    --rk-inst-green: #059669;
    --rk-inst-green-light: #d1fae5;
    --rk-inst-gray: #475569;
    --rk-inst-border: #e2e8f0;
    --rk-inst-bg: #ffffff;
    --rk-shadow: 0 15px 35px -10px rgba(37, 99, 235, 0.15);
}

.rk-inst-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-inst-bg);
    border-radius: 20px;
    box-shadow: var(--rk-shadow);
    border: 1px solid var(--rk-inst-blue);
    overflow: hidden;
}

/* Nagłówek */
.rk-inst-header {
    padding: 40px 50px;
    background: linear-gradient(135deg, var(--rk-inst-dark) 0%, #1e293b 100%);
    color: #ffffff;
    border-bottom: 4px solid var(--rk-inst-blue);
}

.rk-inst-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(37, 99, 235, 0.2);
    color: #93c5fd;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(147, 197, 253, 0.3);
}

.rk-inst-header h2 {
    font-size: 28px;
    font-weight: 900;
    margin: 0 0 15px 0;
    line-height: 1.3;
}

.rk-inst-header p {
    color: #cbd5e1;
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
    max-width: 700px;
}

/* Sekcja Interaktywna */
.rk-inst-interactive {
    padding: 40px 50px;
    background: #f8fafc;
}

.rk-step-wrapper {
    display: flex;
    gap: 30px;
    background: #ffffff;
    border: 1px solid var(--rk-inst-border);
    border-radius: 16px;
    padding: 10px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

/* Menu Kroków (Lewa strona) */
.rk-step-nav {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 250px;
}

.rk-step-btn {
    padding: 16px 20px;
    border-radius: 12px;
    border: 2px solid transparent;
    background: transparent;
    cursor: pointer;
    text-align: left;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 15px;
    color: var(--rk-inst-gray);
}

.rk-step-btn:hover {
    background: #f1f5f9;
}

.rk-step-btn.active {
    background: var(--rk-inst-blue-light);
    border-color: var(--rk-inst-blue);
    color: #1e3a8a;
    box-shadow: 0 4px 10px rgba(37, 99, 235, 0.1);
}

.rk-step-num {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #e2e8f0;
    color: #64748b;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 14px;
    transition: all 0.3s;
}

.rk-step-btn.active .rk-step-num {
    background: var(--rk-inst-blue);
    color: #ffffff;
}

.rk-step-title {
    font-size: 15px;
    font-weight: 800;
}

/* Zawartość Kroku (Prawa strona) */
.rk-step-content-area {
    flex: 1;
    background: var(--rk-inst-dark);
    border-radius: 12px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
}

.rk-step-visual {
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    margin-bottom: 25px;
    padding-bottom: 15px;
}

/* SVG Animacje dla każdego kroku */
.rk-svg-stage {
    width: 100%;
    height: 100%;
    max-width: 250px;
    display: none;
}

/* Aktywacja SVG */
.state-stage1 #svg-stage1,
.state-stage2 #svg-stage2,
.state-stage3 #svg-stage3 {
    display: block;
}

/* Animacje Stage 1 (Płukanie) */
.anim-particle {
    animation: flowOut 2s linear infinite;
}
.anim-particle:nth-child(2) { animation-delay: 0.7s; }
.anim-particle:nth-child(3) { animation-delay: 1.4s; }

@keyframes flowOut {
    0% { transform: translateX(0); opacity: 1; }
    100% { transform: translateX(100px); opacity: 0; }
}

/* Animacje Stage 2 (Odpowietrzanie) */
.anim-bubble {
    animation: riseUp 2s ease-in infinite;
}
.anim-bubble:nth-child(2) { animation-delay: 0.5s; }
.anim-bubble:nth-child(3) { animation-delay: 1.2s; }

@keyframes riseUp {
    0% { transform: translateY(0) scale(1); opacity: 0; }
    20% { opacity: 1; }
    100% { transform: translateY(-60px) scale(1.5); opacity: 0; }
}

/* Animacje Stage 3 (Próba ciśnieniowa) */
.anim-needle {
    transform-origin: 50px 50px;
    transition: transform 1.5s cubic-bezier(0.34, 1.56, 0.64, 1);
    transform: rotate(-60deg); /* Start (0 bar) */
}
.state-stage3 .anim-needle {
    transform: rotate(60deg); /* Koniec (6 bar) */
}

/* Teksty */
.rk-step-text-box {
    display: none;
    color: #ffffff;
}

.state-stage1 #text-stage1,
.state-stage2 #text-stage2,
.state-stage3 #text-stage3 {
    display: block;
    animation: fadeIn 0.4s ease forwards;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.rk-step-text-box h3 {
    margin: 0 0 10px 0;
    font-size: 20px;
    font-weight: 800;
    color: #60a5fa;
}

.rk-step-text-box p {
    margin: 0 0 15px 0;
    font-size: 15px;
    line-height: 1.7;
    color: #cbd5e1;
}

.rk-step-text-box a {
    color: #38bdf8;
    text-decoration: none;
    border-bottom: 1px dashed #38bdf8;
    font-weight: 600;
    transition: all 0.3s;
}

.rk-step-text-box a:hover {
    color: #ffffff;
    border-bottom-style: solid;
}

.rk-tech-param {
    display: inline-block;
    background: rgba(56, 189, 248, 0.15);
    padding: 6px 12px;
    border-radius: 6px;
    border: 1px solid rgba(56, 189, 248, 0.3);
    font-size: 13px;
    font-weight: 700;
    color: #7dd3fc;
    margin-top: 5px;
}

.rk-tech-param.success {
    background: rgba(16, 185, 129, 0.15);
    border-color: rgba(16, 185, 129, 0.3);
    color: #6ee7b7;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-inst-header, .rk-inst-interactive { padding: 30px 20px; }
    .rk-inst-header h2 { font-size: 24px; }
    .rk-step-wrapper { flex-direction: column; gap: 15px; padding: 15px; }
    .rk-step-nav { min-width: 100%; flex-direction: column; }
    .rk-step-btn { padding: 12px 15px; }
    .rk-step-content-area { padding: 20px; }
    .rk-step-visual { height: 140px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-instrukcja",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Jak prawidłowo napełnić instalację ogrzewania podłogowego – instrukcja techniczna?",
    "description": "Poznaj 3-etapową, normatywną procedurę napełniania podłogówki: płukanie pętli, odpowietrzanie rozdzielacza oraz 24-godzinną próbę ciśnieniową na 6 bar.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-instrukcja",
    "name": "Parametry normatywne napełniania i próby szczelności instalacji podłogowej",
    "description": "Dokładne parametry techniczne dotyczące procedury pierwszego uruchomienia instalacji ogrzewania podłogowego, w tym wymagania normy PN-EN 1264-4.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "jak prawidłowo napełnić instalację ogrzewania podłogowego",
      "odpowietrzanie podłogówki",
      "płukanie pętli grzewczych",
      "próba ciśnieniowa 6 bar",
      "norma PN-EN 1264-4"
    ],
    "measurementTechnique": "Procedura 3-etapowa: Płukanie (5-10 min/pętla), Odpowietrzanie, Próba ciśnieniowa (6 bar, 24h).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Etap 1: Przepłukanie indywidualne pętli w celu usunięcia zanieczyszczeń.",
        "Etap 2: Odpowietrzenie układu przy wyłączonych siłownikach.",
        "Etap 3: Próba szczelności przy ciśnieniu 1,5x robocze (min. 6 bar) przez 24 godziny."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-instrukcja",
    "name": "Symulator Procedury Napełniania Instalacji",
    "description": "Interaktywne narzędzie edukacyjne ilustrujące 3 etapy normatywnego napełniania układu hydraulicznego: płukanie pętli, odpowietrzanie i próbę ciśnieniową.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-inst-container">
    <div class="rk-inst-header">
        <div class="rk-inst-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2v20M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
            Procedura Techniczna
        </div>
        <h2>Jak prawidłowo napełnić instalację ogrzewania podłogowego – instrukcja techniczna?</h2>
        <p>Prawidłowe napełnianie instalacji musi odbywać się od najniższego punktu do najwyższego z wykorzystaniem dedykowanej pompy do napełniania (tzw. "płuczki"), co pozwala na uzyskanie niezbędnego ciśnienia statycznego rzędu 1,5 - 2,0 bara. Przejdź przez 3 obowiązkowe kroki inżynierskie.</p>
    </div>

    <div class="rk-inst-interactive">
        <div class="rk-step-wrapper">
            
            <div class="rk-step-nav" id="rkStepNav">
                <button class="rk-step-btn active" data-stage="1">
                    <span class="rk-step-num">1</span>
                    <span class="rk-step-title">Indywidualne Przepłukanie</span>
                </button>
                <button class="rk-step-btn" data-stage="2">
                    <span class="rk-step-num">2</span>
                    <span class="rk-step-title">Pełne Odpowietrzenie</span>
                </button>
                <button class="rk-step-btn" data-stage="3">
                    <span class="rk-step-num">3</span>
                    <span class="rk-step-title">Próba Szczelności (6 bar)</span>
                </button>
            </div>

            <div class="rk-step-content-area state-stage1" id="rkStepContentArea">
                
                <div class="rk-step-visual">
                    <svg id="svg-stage1" class="rk-svg-stage" viewBox="0 0 100 100" fill="none" stroke="currentColor">
                        <path d="M 10 50 L 90 50" stroke="#3b82f6" stroke-width="12" stroke-linecap="round"/>
                        <circle class="anim-particle" cx="30" cy="50" r="4" fill="#94a3b8" stroke="none"/>
                        <circle class="anim-particle" cx="40" cy="48" r="3" fill="#64748b" stroke="none"/>
                        <circle class="anim-particle" cx="20" cy="52" r="5" fill="#475569" stroke="none"/>
                        <path d="M 80 40 L 90 50 L 80 60" stroke="#60a5fa" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
                    </svg>

                    <svg id="svg-stage2" class="rk-svg-stage" viewBox="0 0 100 100" fill="none" stroke="currentColor">
                        <path d="M 40 70 L 60 70 L 60 40 L 55 30 L 45 30 L 40 40 Z" fill="#334155" stroke="#94a3b8" stroke-width="2"/>
                        <circle class="anim-bubble" cx="50" cy="60" r="3" fill="#bae6fd" stroke="none"/>
                        <circle class="anim-bubble" cx="46" cy="50" r="4" fill="#e0f2fe" stroke="none"/>
                        <circle class="anim-bubble" cx="54" cy="55" r="2" fill="#7dd3fc" stroke="none"/>
                        <path d="M 50 30 L 50 15" stroke="#94a3b8" stroke-width="2" stroke-dasharray="2 2"/>
                    </svg>

                    <svg id="svg-stage3" class="rk-svg-stage" viewBox="0 0 100 100" fill="none" stroke="currentColor">
                        <circle cx="50" cy="50" r="40" fill="#1e293b" stroke="#cbd5e1" stroke-width="4"/>
                        <path d="M 20 50 A 30 30 0 0 1 80 50" stroke="#10b981" stroke-width="6" stroke-linecap="round"/>
                        <line class="anim-needle" x1="50" y1="50" x2="25" y2="25" stroke="#f87171" stroke-width="4" stroke-linecap="round"/>
                        <circle cx="50" cy="50" r="6" fill="#cbd5e1" stroke="none"/>
                    </svg>
                </div>

                <div id="text-stage1" class="rk-step-text-box">
                    <h3>1. Przepłukanie Instalacji</h3>
                    <p>Zanim woda trafi na stałe do układu, każda pętla grzewcza musi być płukana indywidualnie (przy zamkniętych pozostałych obwodach). Proces ten pozwala wyrzucić z rur opiłki, piasek i resztki montażowe.</p>
                    <div class="rk-tech-param">Zalecany czas: 5-10 minut / pętlę</div>
                </div>

                <div id="text-stage2" class="rk-step-text-box">
                    <h3>2. Odpowietrzenie Układu</h3>
                    <p>Po napełnieniu układu wodą lub glikolem, zablokowane powietrze musi zostać uwolnione. Instalacja musi pracować przy wyłączonych (otwartych) <a href="https://projekt-ogrzewania.pl/silowniki-termoelektryczne-na-rozdzielaczach/">siłownikach termoelektrycznych na rozdzielaczach</a>, wymuszając ruch cieczy i wypychając pęcherzyki przez odpowietrzniki automatyczne.</p>
                    <p>Zignorowanie tego kroku to gwarantowane <a href="https://projekt-ogrzewania.pl/objawy-zapowietrzenia-ogrzewania-podlogowego/">objawy zapowietrzenia ogrzewania podłogowego</a>, takie jak szumy i zimne strefy na podłodze.</p>
                </div>

                <div id="text-stage3" class="rk-step-text-box">
                    <h3>3. Normatywna Próba Szczelności</h3>
                    <p>Najważniejszy test przed wylaniem posadzki betonowej. Próbę wykonujemy z wykorzystaniem manometru i pompy kontrolnej, aby zagwarantować całkowity brak wycieków.</p>
                    <p>Zgodnie z wymaganiami technacyjnymi wytycznymi dla <a href="https://projekt-ogrzewania.pl/proba-szczelnosci-ogrzewania-podlogowego/">próby szczelności ogrzewania podłogowego</a>, test jest konieczny do ważności gwarancji.</p>
                    <div class="rk-tech-param success">Norma: PN-EN 1264-4</div>
                    <div class="rk-tech-param success">Ciśnienie: 1,5x robocze (min. 6 bar) przez 24h</div>
                </div>

            </div>
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const btns = document.querySelectorAll('.rk-step-btn');
    const contentArea = document.getElementById('rkStepContentArea');

    btns.forEach(btn => {
        btn.addEventListener('click', function() {
            // Usunięcie aktywnej klasy ze wszystkich przycisków
            btns.forEach(b => b.classList.remove('active'));
            // Dodanie aktywnej klasy do klikniętego
            this.classList.add('active');

            // Pobranie numeru etapu
            const stage = this.getAttribute('data-stage');

            // Aktualizacja klasy na kontenerze głównym (zmienia widoczność SVG i tekstów)
            contentArea.className = 'rk-step-content-area state-stage' + stage;
        });
    });
});
</script>



<style>
:root {
    --rk-base-dark: #1e293b;
    --rk-base-blue: #0ea5e9;
    --rk-base-light-blue: #e0f2fe;
    --rk-base-green: #059669;
    --rk-base-green-light: #d1fae5;
    --rk-base-red: #dc2626;
    --rk-base-red-light: #fee2e2;
    --rk-base-orange: #ea580c;
    --rk-base-gray: #475569;
    --rk-base-border: #cbd5e1;
    --rk-base-bg: #ffffff;
    --rk-shadow-lg: 0 20px 40px -10px rgba(14, 165, 233, 0.15);
}

.rk-final-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-base-bg);
    border-radius: 20px;
    box-shadow: var(--rk-shadow-lg);
    border: 1px solid var(--rk-base-blue);
    overflow: hidden;
}

/* Header Section */
.rk-final-header {
    padding: 40px 50px;
    background: linear-gradient(145deg, #0f172a 0%, var(--rk-base-dark) 100%);
    color: #ffffff;
    text-align: center;
    border-bottom: 4px solid var(--rk-base-blue);
}

.rk-final-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(14, 165, 233, 0.2);
    color: #7dd3fc;
    padding: 6px 18px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 25px;
    border: 1px solid rgba(125, 211, 252, 0.3);
}

.rk-final-header h2 {
    font-size: 28px;
    font-weight: 900;
    line-height: 1.3;
    margin: 0;
    color: #ffffff;
}

/* Content Section */
.rk-final-content {
    padding: 40px 50px;
    background: #f8fafc;
}

.rk-text-box {
    font-size: 16px;
    line-height: 1.8;
    color: var(--rk-base-gray);
    margin-bottom: 40px;
}

.rk-text-box strong {
    color: var(--rk-base-dark);
    font-weight: 700;
}

.rk-text-box a {
    color: var(--rk-base-blue);
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px dashed var(--rk-base-blue);
    transition: all 0.3s;
}

.rk-text-box a:hover {
    color: #0284c7;
    border-bottom-style: solid;
}

/* Interactive Simulator */
.rk-simulator-box {
    background: #ffffff;
    border: 1px solid var(--rk-base-border);
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.rk-simulator-box h3 {
    margin: 0 0 25px 0;
    font-size: 20px;
    font-weight: 800;
    color: var(--rk-base-dark);
    text-align: center;
}

.rk-sim-controls {
    display: flex;
    gap: 20px;
    margin-bottom: 30px;
}

.rk-sim-btn {
    flex: 1;
    padding: 18px 20px;
    border-radius: 12px;
    border: 2px solid var(--rk-base-border);
    background: #f1f5f9;
    cursor: pointer;
    font-size: 15px;
    font-weight: 700;
    color: var(--rk-base-gray);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.rk-sim-btn:hover {
    background: #e2e8f0;
}

.rk-sim-btn.active[data-medium="demi"] {
    background: var(--rk-base-light-blue);
    border-color: var(--rk-base-blue);
    color: #0369a1;
    box-shadow: 0 10px 15px -3px rgba(14, 165, 233, 0.2);
}

.rk-sim-btn.active[data-medium="kran"] {
    background: var(--rk-base-red-light);
    border-color: var(--rk-base-red);
    color: #991b1b;
    box-shadow: 0 10px 15px -3px rgba(220, 38, 38, 0.2);
}

/* Simulator Visuals */
.rk-sim-visual {
    position: relative;
    height: 200px;
    border-radius: 12px;
    background: #0f172a;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 2px solid #334155;
}

.rk-pipe {
    width: 80%;
    height: 60px;
    background: rgba(255, 255, 255, 0.1);
    border: 4px solid #475569;
    border-radius: 30px;
    position: relative;
    overflow: hidden;
}

.rk-water-flow {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 200%;
    background: repeating-linear-gradient(
        45deg,
        rgba(255,255,255,0.1),
        rgba(255,255,255,0.1) 20px,
        transparent 20px,
        transparent 40px
    );
    transition: all 0.5s ease;
}

/* States */
.state-demi .rk-pipe { border-color: var(--rk-base-blue); }
.state-demi .rk-water-flow {
    background-color: rgba(14, 165, 233, 0.6);
    animation: flowDemi 2s linear infinite;
}
.state-demi .rk-status-icon { color: var(--rk-base-green); }

.state-kran .rk-pipe { border-color: #78350f; }
.state-kran .rk-water-flow {
    background-color: rgba(180, 83, 9, 0.8);
    animation: flowKran 6s linear infinite;
}
.state-kran .rk-calc-buildup {
    opacity: 1;
}
.state-kran .rk-status-icon { color: var(--rk-base-red); }

@keyframes flowDemi { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
@keyframes flowKran { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

.rk-calc-buildup {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 25px;
    background: repeating-radial-gradient(circle at 10px 10px, #fde68a 0, #f59e0b 5px, transparent 6px);
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.rk-sim-feedback {
    margin-top: 25px;
    padding: 20px;
    border-radius: 12px;
    display: flex;
    align-items: flex-start;
    gap: 15px;
    background: #f8fafc;
    border-left: 4px solid transparent;
}

.state-demi .rk-sim-feedback { border-left-color: var(--rk-base-green); background: var(--rk-base-green-light); }
.state-kran .rk-sim-feedback { border-left-color: var(--rk-base-red); background: var(--rk-base-red-light); }

.rk-feedback-text h4 {
    margin: 0 0 5px 0;
    font-size: 16px;
    font-weight: 800;
}
.state-demi .rk-feedback-text h4 { color: #065f46; }
.state-kran .rk-feedback-text h4 { color: #991b1b; }

.rk-feedback-text p {
    margin: 0;
    font-size: 14px;
    color: var(--rk-base-gray);
    line-height: 1.5;
}

/* CTA Box */
.rk-cta-box {
    background: var(--rk-base-bg);
    padding: 40px 50px;
    text-align: center;
    border-top: 1px solid var(--rk-base-border);
}

.rk-cta-title {
    font-size: 22px;
    font-weight: 900;
    color: var(--rk-base-dark);
    margin: 0 0 15px 0;
}

.rk-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: var(--rk-base-dark);
    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
    padding: 18px 36px;
    border-radius: 12px;
    text-decoration: none;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    box-shadow: 0 10px 20px -5px rgba(30, 41, 59, 0.4);
}

.rk-btn-primary:hover {
    background: #0f172a;
    transform: translateY(-3px);
    box-shadow: 0 15px 25px -5px rgba(30, 41, 59, 0.5);
    border-color: var(--rk-base-blue);
}

.rk-btn-primary svg { transition: transform 0.3s; }
.rk-btn-primary:hover svg { transform: translateX(6px); }

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-final-header { padding: 30px 20px; }
    .rk-final-header h2 { font-size: 22px; }
    .rk-final-content, .rk-cta-box { padding: 30px 20px; }
    .rk-simulator-box { padding: 20px 15px; }
    
    .rk-sim-controls { flex-direction: column; gap: 12px; }
    .rk-sim-btn { padding: 15px; width: 100%; justify-content: flex-start; }
    
    .rk-pipe { width: 90%; }
    .rk-btn-primary { width: 100%; padding: 16px; font-size: 15px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Podsumowanie: Czym napełnić instalację ogrzewania podłogowego, by przetrwała lata?",
    "description": "Jakość napełnienia instalacji to kluczowy etap montażu. Zobacz, dlaczego woda demineralizowana z inhibitorem korozji to najlepsze zabezpieczenie instalacji ogrzewania podłogowego i pompy ciepła.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset",
    "name": "Analiza wpływu jakości medium grzewczego na żywotność pomp ciepła i instalacji",
    "description": "Zestawienie porównawcze degradacji układu hydraulicznego (opory przepływu, kamień kotłowy) w zależności od wybranego płynu do napełniania instalacji CO.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "czym napełnić instalację ogrzewania podłogowego",
      "woda demineralizowana z inhibitorem korozji do ogrzewania podłogowego",
      "płyn do napełniania instalacji co",
      "medium grzewcze do pompy ciepła",
      "zabezpieczenie instalacji ogrzewania podłogowego",
      "jak napełnić podłogówkę"
    ],
    "measurementTechnique": "Symulacja przyrostu osadów i korozji w cyklu 5-letnim dla wody sieciowej vs wody demineralizowanej z inhibitorami.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Woda z kranu: Ryzyko osadzania się kamienia i korozji wżerowej elementów mosiężnych.",
        "Woda demineralizowana z inhibitorem: Pełna ochrona antykorozyjna i stała wydajność (COP) urządzenia."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp",
    "name": "Symulator Jakości Medium Grzewczego",
    "description": "Interaktywny panel wizualizujący wpływ twardej wody w porównaniu do profesjonalnego zabezpieczenia instalacji ogrzewania podłogowego na przepływ hydrauliczny rur.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-final-container" id="rk-podsumowanie-app">
    <div class="rk-final-header">
        <div class="rk-final-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2v20M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
            Eksperckie Podsumowanie
        </div>
        <h2>Czym napełnić instalację ogrzewania podłogowego, by przetrwała lata?</h2>
    </div>

    <div class="rk-final-content">
        <div class="rk-text-box">
            <p>Jakość napełnienia instalacji to ostatni, a zarazem jeden z najważniejszych etapów montażu. Zastanawiając się, <strong>czym napełnić instalację ogrzewania podłogowego</strong>, pamiętaj, że to od tej decyzji zależy sprawność serca Twojego domu – pompy ciepła. Używając profesjonalnej <a href="https://projekt-ogrzewania.pl/woda-demineralizowana-w-ogrzewaniu-podlogowym-dlaczego-to-najlepszy-wybor-zamiast-zwyklej-wody-z-kranu/">wody demineralizowanej z inhibitorem korozji do ogrzewania podłogowego</a>, chronisz układ przed zatorami i utrzymujesz maksymalną efektywność energetyczną.</p>
            
            <p>Zwykła woda to najczęstszy błąd. Osad wapienny drastycznie niszczy <a href="https://projekt-ogrzewania.pl/pompa-obiegowa-w-instalacji-ogrzewania-podlogowego/">pompy obiegowe w instalacji</a>. Idealne <strong>medium grzewcze do pompy ciepła</strong> musi być wolne od tlenu i soli mineralnych. Jeśli chcesz dowiedzieć się <strong>jak napełnić podłogówkę</strong> bez narażania się na awarie, odpowiedź jest prosta: dedykowany <strong>płyn do napełniania instalacji CO</strong> (lub woda demi) to jedyne skuteczne <strong>zabezpieczenie instalacji ogrzewania podłogowego</strong> przed degradacją, co bezpośrednio przekłada się na to, <a href="https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/">jak często musisz serwisować system</a>.</p>
        </div>

        <div class="rk-simulator-box" id="rkSimBox">
            <h3>Wybierz medium grzewcze i sprawdź efekt po 5 latach:</h3>
            
            <div class="rk-sim-controls">
                <button class="rk-sim-btn active" data-medium="demi">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z"></path></svg>
                    Woda Demineralizowana + Inhibitor
                </button>
                <button class="rk-sim-btn" data-medium="kran">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2v6M12 18v4M4.93 10.93l-4.24 4.24M23.31 8.69l-4.24 4.24"></path><circle cx="12" cy="12" r="2"></circle></svg>
                    Zwykła woda z kranu (Surowa)
                </button>
            </div>

            <div class="rk-sim-visual state-demi" id="rkSimVisual">
                <div class="rk-pipe">
                    <div class="rk-water-flow"></div>
                    <div class="rk-calc-buildup"></div>
                </div>
            </div>

            <div class="rk-sim-feedback" id="rkSimFeedback">
                <div class="rk-status-icon">
                    <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
                </div>
                <div class="rk-feedback-text">
                    <h4>Czysta instalacja, 100% wydajności</h4>
                    <p id="rkFeedbackDesc">Brak osadów i korozji. Twój układ hydrauliczny pracuje na optymalnych przepływach, a rachunki za ogrzewanie pozostają na niezmiennie niskim poziomie. Pompa ciepła jest całkowicie bezpieczna.</p>
                </div>
            </div>
        </div>
    </div>

    <div class="rk-cta-box">
        <h3 class="rk-cta-title">Buduj dom z inżynierską precyzją</h3>
        <p style="color: var(--rk-base-gray); margin-bottom: 25px; font-size: 15px; line-height: 1.6;">Twoje ogrzewanie jest tak sprawne, jak jego najsłabsze ogniwo. Nie pozwól, by była nim zanieczyszczona woda. Unikaj „oszczędności”, które z czasem stają się potężnymi kosztami serwisowymi.</p>
        
        <a href="https://projekt-ogrzewania.pl/blog/" class="rk-btn-primary">
            CZYTAJ WIĘCEJ PORADNIKÓW EKSPERCKICH
            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg>
        </a>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const btns = document.querySelectorAll('.rk-sim-btn');
    const visual = document.getElementById('rkSimVisual');
    const feedbackIcon = document.querySelector('.rk-status-icon');
    const feedbackDesc = document.getElementById('rkFeedbackDesc');
    const feedbackTitle = document.querySelector('.rk-feedback-text h4');

    btns.forEach(btn => {
        btn.addEventListener('click', function() {
            btns.forEach(b => b.classList.remove('active'));
            this.classList.add('active');

            const medium = this.getAttribute('data-medium');

            if (medium === 'demi') {
                visual.className = 'rk-sim-visual state-demi';
                feedbackIcon.innerHTML = '<svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>';
                feedbackTitle.textContent = 'Czysta instalacja, 100% wydajności';
                feedbackDesc.textContent = 'Brak osadów i korozji. Twój układ hydrauliczny pracuje na optymalnych przepływach, a rachunki za ogrzewanie pozostają na niezmiennie niskim poziomie. Pompa ciepła jest całkowicie bezpieczna.';
            } else {
                visual.className = 'rk-sim-visual state-kran';
                feedbackIcon.innerHTML = '<svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12.01" y2="16"></line></svg>';
                feedbackTitle.textContent = 'Ryzyko awarii i spadku mocy';
                feedbackDesc.innerHTML = 'Wytrącający się kamień wapienny zmniejsza średnicę rur i obciąża rotametry. Każdy <strong>1 mm osadu</strong> to ogromny spadek współczynnika wymiany ciepła, wymuszający intensywniejszą i droższą pracę sprężarki.';
            }
        });
    });
});
</script>



<style>
:root {
    --rk-proj-dark: #0f172a;
    --rk-proj-blue: #0284c7;
    --rk-proj-blue-light: #e0f2fe;
    --rk-proj-cyan: #06b6d4;
    --rk-proj-accent: #f59e0b;
    --rk-proj-red: #ef4444;
    --rk-proj-green: #10b981;
    --rk-proj-gray: #475569;
    --rk-proj-border: #cbd5e1;
    --rk-proj-bg: #ffffff;
    --rk-shadow: 0 10px 30px -10px rgba(2, 132, 199, 0.15);
}

.rk-proj-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-proj-bg);
    border-radius: 20px;
    box-shadow: var(--rk-shadow);
    border: 1px solid var(--rk-proj-blue);
    overflow: hidden;
}

/* Nagłówek */
.rk-proj-header {
    padding: 40px 50px;
    background: linear-gradient(135deg, var(--rk-proj-dark) 0%, #1e293b 100%);
    color: #ffffff;
    border-bottom: 4px solid var(--rk-proj-cyan);
    position: relative;
}

.rk-proj-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(6, 182, 212, 0.2);
    color: #67e8f9;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
    border: 1px solid rgba(103, 232, 249, 0.3);
}

.rk-proj-header h2 {
    font-size: 26px;
    font-weight: 900;
    margin: 0;
    line-height: 1.3;
}

/* Treść główna */
.rk-proj-content {
    padding: 40px 50px;
    background: #f8fafc;
}

.rk-proj-text {
    font-size: 16px;
    line-height: 1.8;
    color: var(--rk-proj-gray);
    margin-bottom: 40px;
}

.rk-proj-text a {
    color: var(--rk-proj-blue);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px dashed var(--rk-proj-blue);
    transition: all 0.3s;
}

.rk-proj-text a:hover {
    color: var(--rk-proj-cyan);
    border-bottom-style: solid;
}

/* Interaktywny Kalkulator Oporów */
.rk-interactive-box {
    background: #ffffff;
    border: 1px solid var(--rk-proj-border);
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.rk-interactive-box h3 {
    margin: 0 0 25px 0;
    font-size: 18px;
    font-weight: 800;
    color: var(--rk-proj-dark);
    text-align: center;
}

/* Kontrolki (Toggle) */
.rk-toggle-group {
    display: flex;
    gap: 15px;
    margin-bottom: 30px;
}

.rk-toggle-btn {
    flex: 1;
    padding: 18px 20px;
    border-radius: 12px;
    border: 2px solid var(--rk-proj-border);
    background: #f1f5f9;
    cursor: pointer;
    font-size: 15px;
    font-weight: 700;
    color: var(--rk-proj-gray);
    transition: all 0.3s;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.rk-toggle-btn span.sub {
    font-size: 12px;
    font-weight: 500;
    opacity: 0.8;
}

.rk-toggle-btn:hover { background: #e2e8f0; }

.rk-toggle-btn.active[data-fluid="water"] {
    background: var(--rk-proj-blue-light);
    border-color: var(--rk-proj-blue);
    color: #0369a1;
    box-shadow: 0 10px 15px -3px rgba(2, 132, 199, 0.2);
}

.rk-toggle-btn.active[data-fluid="glycol"] {
    background: #fef3c7;
    border-color: var(--rk-proj-accent);
    color: #b45309;
    box-shadow: 0 10px 15px -3px rgba(245, 158, 11, 0.2);
}

/* Dashboard z danymi i SVG */
.rk-dashboard {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    background: var(--rk-proj-dark);
    border-radius: 12px;
    padding: 25px;
    color: #ffffff;
    align-items: center;
}

.rk-dash-visual {
    position: relative;
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* SVG Animacja Pompy i Rury */
.rk-svg-pump {
    width: 100%;
    height: 100%;
    max-width: 200px;
}

.anim-rotor {
    transform-origin: 50px 50px;
    transition: all 0.3s;
}

.state-water .anim-rotor { animation: spinRotor 3s linear infinite; }
.state-glycol .anim-rotor { animation: spinRotor 1s linear infinite; stroke: var(--rk-proj-red); }

.anim-pipe {
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.state-water .anim-pipe { stroke-width: 12; stroke: var(--rk-proj-cyan); }
.state-glycol .anim-pipe { stroke-width: 18; stroke: var(--rk-proj-accent); }

@keyframes spinRotor { 100% { transform: rotate(360deg); } }

/* Parametry */
.rk-dash-stats {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.rk-stat-row {
    background: rgba(255, 255, 255, 0.05);
    padding: 12px 15px;
    border-radius: 8px;
    border-left: 3px solid transparent;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.3s;
}

.rk-stat-label { font-size: 13px; color: #94a3b8; font-weight: 600; }
.rk-stat-value { font-size: 16px; font-weight: 800; }

.state-water .rk-stat-row { border-left-color: var(--rk-proj-cyan); }
.state-water .rk-stat-value { color: #67e8f9; }

.state-glycol .rk-stat-row { border-left-color: var(--rk-proj-accent); }
.state-glycol .rk-stat-value { color: #fcd34d; }
.state-glycol .rk-stat-row.warning { border-left-color: var(--rk-proj-red); }
.state-glycol .rk-stat-row.warning .rk-stat-value { color: #fca5a5; }

/* Ostrzeżenie */
.rk-warning-box {
    margin-top: 20px;
    padding: 15px;
    border-radius: 8px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    font-size: 14px;
    line-height: 1.5;
    display: none;
    align-items: flex-start;
    gap: 10px;
}

.rk-warning-box svg { flex-shrink: 0; margin-top: 2px; }
.state-glycol + .rk-warning-box { display: flex; }

/* CTA Box */
.rk-cta-wrapper {
    background: #ffffff;
    padding: 40px 50px;
    text-align: center;
    border-top: 1px solid var(--rk-proj-border);
}

.rk-cta-wrapper h3 {
    font-size: 22px;
    font-weight: 900;
    color: var(--rk-proj-dark);
    margin: 0 0 15px 0;
}

.rk-cta-wrapper p {
    color: var(--rk-proj-gray);
    margin: 0 auto 30px auto;
    font-size: 15px;
    line-height: 1.6;
    max-width: 600px;
}

.rk-btn-sell {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: var(--rk-proj-blue);
    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
    padding: 18px 36px;
    border-radius: 12px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 10px 20px -5px rgba(2, 132, 199, 0.4);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid transparent;
}

.rk-btn-sell:hover {
    transform: translateY(-3px);
    background: #0369a1;
    box-shadow: 0 15px 25px -5px rgba(2, 132, 199, 0.5);
    border-color: #7dd3fc;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-proj-header, .rk-proj-content, .rk-cta-wrapper { padding: 30px 20px; }
    .rk-proj-header h2 { font-size: 22px; }
    .rk-interactive-box { padding: 20px 15px; }
    .rk-toggle-group { flex-direction: column; gap: 10px; }
    .rk-dashboard { grid-template-columns: 1fr; gap: 30px; }
    .rk-dash-visual { height: 120px; }
    .rk-btn-sell { width: 100%; padding: 16px 20px; font-size: 14px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-projekt",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Jak wybór medium grzewczego wpływa na projekt ogrzewania podłogowego i dobór pompy ciepła?",
    "description": "Dowiedz się, dlaczego zastosowanie glikolu w podłogówce wymaga zmiany średnicy rur zasilających i większej mocy pompy obiegowej. Inżynierska analiza oporów hydraulicznych.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-projekt",
    "name": "Tabela wpływu medium grzewczego na opory hydrauliczne instalacji",
    "description": "Porównanie parametrów technicznych (lepkość, opór hydrauliczny, obciążenie pompy obiegowej) dla wody demineralizowanej i 30% roztworu glikolu propylenowego w systemach płaszczyznowych.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "projekt ogrzewania podłogowego",
      "OZC a medium grzewcze",
      "opory hydrauliczne glikolu",
      "dobór pompy ciepła do podłogówki",
      "średnica rur zasilających rozdzielacz"
    ],
    "measurementTechnique": "Algorytm kalkulacyjny OZC uwzględniający wyższą lepkość kinematyczną glikolu (wymagany +1 wymiar średnicy rury zasilającej).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Woda: Standardowe opory, optymalny dobór średnicy magistrali (np. 25x2.5).",
        "Glikol 30%: Wzrost oporów o ok. 20-30%, wymóg zwiększenia średnicy magistrali (np. 32x3.0) lub mocy pompy obiegowej."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-projekt",
    "name": "Kalkulator Oporów Hydraulicznych Medium",
    "description": "Interaktywny panel ilustrujący bezpośredni wpływ zmiany medium grzewczego z wody na glikol na konieczność korekty projektu i wymiarów rur w instalacji CO.",
    "applicationCategory": "EngineeringApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-proj-container">
    <div class="rk-proj-header">
        <div class="rk-proj-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="3" x2="9" y2="21"></line></svg>
            Wpływ na Inwestycję
        </div>
        <h2>Jak to wpływa na projekt ogrzewania podłogowego i dobór pompy ciepła?</h2>
    </div>

    <div class="rk-proj-content">
        <div class="rk-proj-text">
            <p>Wybór medium grzewczego ma fundamentalny wpływ na <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">obliczenia OZC</a> i finalny <a href="https://projekt-ogrzewania.pl/kalkulator-doboru-pompy-obiegowej-w-ogrzewaniu-podlogowym/">dobór pompy obiegowej</a> oraz samej pompy ciepła. Jeśli projekt zakłada użycie glikolu, musimy <strong>zwiększyć średnicę rur zasilających rozdzielacz o jeden wymiar</strong> lub zwiększyć moc pompy obiegowej ze względu na wyższe opory hydrauliczne (lepkość płynu). W moich projektach każdorazowo przeliczam straty ciśnienia dla konkretnego rodzaju medium – zaniedbanie tego elementu skutkuje szumami, hałasem w instalacji i niedogrzaniem stref końcowych w najdalszych pomieszczeniach.</p>
        </div>

        <div class="rk-interactive-box">
            <h3>Symulator Pracy Instalacji: Woda vs Glikol</h3>
            
            <div class="rk-toggle-group">
                <button class="rk-toggle-btn active" data-fluid="water">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z"></path></svg>
                    Woda Demineralizowana
                    <span class="sub">Standard projektowy</span>
                </button>
                <button class="rk-toggle-btn" data-fluid="glycol">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22a7 7 0 0 0 7-7c0-2-1-3.9-3-5.5s-3.5-4-4-6.5c-.5 2.5-2 4.9-4 6.5C6 11.1 5 13 5 15a7 7 0 0 0 7 7z"></path></svg>
                    Glikol (Roztwór 30%)
                    <span class="sub">Wymagana korekta OZC</span>
                </button>
            </div>

            <div id="rkDashboard" class="rk-dashboard state-water">
                <div class="rk-dash-visual">
                    <svg class="rk-svg-pump" viewBox="0 0 100 100" fill="none" stroke="currentColor">
                        <path class="anim-pipe" d="M 10 50 L 90 50" stroke-linecap="round"></path>
                        <circle cx="50" cy="50" r="25" fill="#1e293b" stroke="#cbd5e1" stroke-width="4"></circle>
                        <path class="anim-rotor" d="M 50 30 L 50 70 M 30 50 L 70 50" stroke="#67e8f9" stroke-width="6" stroke-linecap="round"></path>
                        <circle cx="50" cy="50" r="5" fill="#ffffff"></circle>
                    </svg>
                </div>
                
                <div class="rk-dash-stats">
                    <div class="rk-stat-row">
                        <span class="rk-stat-label">Opór hydrauliczny</span>
                        <span class="rk-stat-value" id="valResistance">Standardowy (1x)</span>
                    </div>
                    <div class="rk-stat-row">
                        <span class="rk-stat-label">Min. średnica zasilania</span>
                        <span class="rk-stat-value" id="valPipe">PEX 25x2.5 mm</span>
                    </div>
                    <div class="rk-stat-row" id="rowPump">
                        <span class="rk-stat-label">Praca pompy obiegowej</span>
                        <span class="rk-stat-value" id="valPump">Optymalna (Bieg I/II)</span>
                    </div>
                </div>
            </div>

            <div class="rk-warning-box">
                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>
                <span><strong>Uwaga Inwestorze!</strong> Brak <a href="https://projekt-ogrzewania.pl/srednice-rur-w-ogrzewaniu-podlogowym/" style="color: #7f1d1d; font-weight: 700; text-decoration: underline;">korekty średnic rur</a> przy glikolu spowoduje dławienie przepływu. Pompa będzie pracować na maksymalnych obrotach (III bieg), generując szumy w rozdzielaczach i wyższe rachunki za prąd.</span>
            </div>
        </div>
    </div>

    <div class="rk-cta-wrapper">
        <h3>Nie zgaduj średnic rur. Zleć to inżynierom.</h3>
        <p>Błędy hydrauliczne na etapie doboru magistrali są nieodwracalne po wylaniu posadzki. Wybierz profesjonalny projekt, w którym precyzyjnie uwzględniamy lepkość wybranego medium grzewczego i opory każdej pojedynczej pętli.</p>
        <a href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/" class="rk-btn-sell">
            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><polyline points="10 9 9 9 8 9"></polyline></svg>
            ZAMÓW PROJEKT OGRZEWANIA PODŁOGOWEGO
        </a>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const btns = document.querySelectorAll('.rk-toggle-btn');
    const dashboard = document.getElementById('rkDashboard');
    const rowPump = document.getElementById('rowPump');
    
    // Values
    const valResistance = document.getElementById('valResistance');
    const valPipe = document.getElementById('valPipe');
    const valPump = document.getElementById('valPump');

    btns.forEach(btn => {
        btn.addEventListener('click', function() {
            btns.forEach(b => b.classList.remove('active'));
            this.classList.add('active');

            const fluid = this.getAttribute('data-fluid');

            if (fluid === 'water') {
                dashboard.className = 'rk-dashboard state-water';
                valResistance.textContent = 'Standardowy (1x)';
                valPipe.textContent = 'PEX 25x2.5 mm';
                valPump.textContent = 'Optymalna (Bieg I/II)';
                rowPump.classList.remove('warning');
            } else {
                dashboard.className = 'rk-dashboard state-glycol';
                valResistance.textContent = 'Podwyższony (+30%)';
                valPipe.textContent = 'PEX 32x3.0 mm (+1 wymiar)';
                valPump.textContent = 'Przeciążenie (Bieg III)';
                rowPump.classList.add('warning');
            }
        });
    });
});
</script>



<style>
:root {
    --rk-tbl-dark: #0f172a;
    --rk-tbl-blue: #0284c7;
    --rk-tbl-blue-light: #e0f2fe;
    --rk-tbl-red: #ef4444;
    --rk-tbl-red-light: #fef2f2;
    --rk-tbl-green: #10b981;
    --rk-tbl-green-light: #d1fae5;
    --rk-tbl-purple: #8b5cf6;
    --rk-tbl-purple-light: #ede9fe;
    --rk-tbl-gray: #475569;
    --rk-tbl-border: #cbd5e1;
    --rk-tbl-bg: #ffffff;
    --rk-shadow-tbl: 0 15px 35px -10px rgba(15, 23, 42, 0.12);
}

.rk-tbl-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-tbl-bg);
    border-radius: 20px;
    box-shadow: var(--rk-shadow-tbl);
    border: 1px solid var(--rk-tbl-blue);
    overflow: hidden;
}

/* Nagłówek */
.rk-tbl-header {
    background: linear-gradient(135deg, var(--rk-tbl-dark) 0%, #1e293b 100%);
    padding: 40px 50px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-tbl-blue);
}

.rk-tbl-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(2, 132, 199, 0.2);
    color: #7dd3fc;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(125, 211, 252, 0.3);
}

.rk-tbl-header h2 {
    font-size: 28px;
    font-weight: 900;
    margin: 0 0 15px 0;
    line-height: 1.3;
}

.rk-tbl-header p {
    color: #cbd5e1;
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
}

/* Sekcja Interaktywnego Zestawienia */
.rk-tbl-interactive {
    padding: 40px 50px;
    background: #f8fafc;
}

/* Przełączniki (Zakładki) */
.rk-tbl-nav {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin-bottom: 30px;
}

.rk-tbl-btn {
    padding: 15px 10px;
    border-radius: 12px;
    border: 2px solid var(--rk-tbl-border);
    background: #ffffff;
    cursor: pointer;
    text-align: center;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.rk-tbl-btn:hover { background: #f1f5f9; }

.rk-tbl-btn-title {
    font-size: 14px;
    font-weight: 800;
    color: var(--rk-tbl-dark);
}

.rk-tbl-btn-sub {
    font-size: 12px;
    font-weight: 600;
    color: var(--rk-tbl-gray);
}

/* Aktywne stany zakładek */
.rk-tbl-btn.active[data-medium="tap"] { border-color: var(--rk-tbl-red); background: var(--rk-tbl-red-light); }
.rk-tbl-btn.active[data-medium="demi"] { border-color: var(--rk-tbl-green); background: var(--rk-tbl-green-light); }
.rk-tbl-btn.active[data-medium="pro"] { border-color: var(--rk-tbl-blue); background: var(--rk-tbl-blue-light); }
.rk-tbl-btn.active[data-medium="eth"] { border-color: var(--rk-tbl-purple); background: var(--rk-tbl-purple-light); }

/* Kontent Zestawienia */
.rk-tbl-content-area {
    background: #ffffff;
    border: 1px solid var(--rk-tbl-border);
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05);
}

.rk-medium-pane {
    display: none;
}
.rk-medium-pane.active {
    display: block;
}

/* Grid Wady i Zalety */
.rk-pros-cons-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-top: 20px;
}

.rk-list-box {
    padding: 20px;
    border-radius: 12px;
}

.rk-list-pros { background: #f0fdf4; border: 1px solid #bbf7d0; }
.rk-list-cons { background: #fef2f2; border: 1px solid #fecaca; }

.rk-list-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: 800;
}

.rk-list-pros .rk-list-header { color: #166534; }
.rk-list-cons .rk-list-header { color: #991b1b; }

.rk-list-items {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rk-list-items li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 15px;
    color: var(--rk-tbl-dark);
    margin-bottom: 10px;
    line-height: 1.5;
    font-weight: 600;
}
.rk-list-items li:last-child { margin-bottom: 0; }

.rk-list-items li svg { flex-shrink: 0; margin-top: 2px; }

/* SVG Statyczne Reprezentacje */
.rk-svg-static-header {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--rk-tbl-border);
}

.rk-svg-icon-box {
    width: 60px;
    height: 60px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Kolory ikon */
.pane-tap .rk-svg-icon-box { background: var(--rk-tbl-red-light); color: var(--rk-tbl-red); }
.pane-demi .rk-svg-icon-box { background: var(--rk-tbl-green-light); color: var(--rk-tbl-green); }
.pane-pro .rk-svg-icon-box { background: var(--rk-tbl-blue-light); color: var(--rk-tbl-blue); }
.pane-eth .rk-svg-icon-box { background: var(--rk-tbl-purple-light); color: var(--rk-tbl-purple); }

.rk-svg-static-header h3 {
    margin: 0 0 5px 0;
    font-size: 22px;
    font-weight: 900;
    color: var(--rk-tbl-dark);
}

.rk-svg-static-header p {
    margin: 0;
    font-size: 14px;
    color: var(--rk-tbl-gray);
    font-weight: 600;
}

/* Mobilność */
@media (max-width: 768px) {
    .rk-tbl-header, .rk-tbl-interactive { padding: 30px 20px; }
    .rk-tbl-header h2 { font-size: 24px; }
    .rk-tbl-nav { grid-template-columns: 1fr 1fr; gap: 10px; }
    .rk-tbl-btn { padding: 12px; }
    .rk-tbl-content-area { padding: 20px; }
    .rk-pros-cons-grid { grid-template-columns: 1fr; gap: 15px; }
    .rk-svg-static-header { flex-direction: column; text-align: center; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-tabela",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Zestawienie mediów grzewczych: Woda vs Glikol (Zalety i Wady)",
    "description": "Techniczne porównanie wady i zalet wody wodociągowej, demineralizowanej oraz glikolu propylenowego i etylenowego w instalacjach ogrzewania podłogowego.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-tabela",
    "name": "Porównanie mediów grzewczych w instalacjach podłogowych: Woda vs Glikol",
    "description": "Tabularyczne zestawienie wad i zalet czynników roboczych w układach hydraulicznych, uwzględniające koszty, parametry wymiany ciepła oraz bezpieczeństwo toksykologiczne.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "woda wodociągowa w podłogówce",
      "woda demineralizowana z inhibitorem",
      "glikol propylenowy a etylenowy",
      "wady i zalety glikolu w co",
      "toksyczność glikolu etylenowego"
    ],
    "measurementTechnique": "Weryfikacja właściwości fizykochemicznych mediów roboczych na podstawie norm branżowych i analiz inżynierskich.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Woda wodociągowa: Zalety - Tania. Wady - Kamień, korozja.",
        "Woda demineralizowana + inhibitor: Zalety - Najlepsza sprawność. Wady - Wyższy koszt początkowy.",
        "Glikol propylenowy: Zalety - Ochrona przed zamarzaniem. Wady - Niższa sprawność.",
        "Glikol etylenowy: Zalety - Bardzo dobra ochrona. Wady - Toksyczny."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-tabela",
    "name": "Interaktywne Zestawienie Właściwości Mediów Grzewczych",
    "description": "Kalkulator oparty na zakładkach, pozwalający na błyskawiczne porównanie zagrożeń (np. toksyczność) i korzyści płynących z zastosowania konkretnego płynu do napełnienia instalacji CO.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-tbl-container">
    <div class="rk-tbl-header">
        <div class="rk-tbl-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line><line x1="9" y1="21" x2="9" y2="9"></line></svg>
            Tabela Inżynierska
        </div>
        <h2>Czym napełnić instalację ogrzewania podłogowego? Zestawienie mediów</h2>
        <p>Wybierz nośnik ciepła z poniższej listy, aby sprawdzić jego realne wady i zalety z punktu widzenia projektanta HVAC. Dowiedz się, dlaczego tanie rozwiązania kosztują najwięcej.</p>
    </div>

    <div class="rk-tbl-interactive">
        
        <div class="rk-tbl-nav">
            <button class="rk-tbl-btn" data-medium="tap">
                <span class="rk-tbl-btn-title">Woda z kranu</span>
                <span class="rk-tbl-btn-sub">Surowa / Sieciowa</span>
            </button>
            <button class="rk-tbl-btn active" data-medium="demi">
                <span class="rk-tbl-btn-title">Woda Demi</span>
                <span class="rk-tbl-btn-sub">+ Inhibitor (Zalecane)</span>
            </button>
            <button class="rk-tbl-btn" data-medium="pro">
                <span class="rk-tbl-btn-title">Glikol Propylenowy</span>
                <span class="rk-tbl-btn-sub">Eko-ochrona (-15°C)</span>
            </button>
            <button class="rk-tbl-btn" data-medium="eth">
                <span class="rk-tbl-btn-title">Glikol Etylenowy</span>
                <span class="rk-tbl-btn-sub">Silnie toksyczny!</span>
            </button>
        </div>

        <div class="rk-tbl-content-area">
            
            <div class="rk-medium-pane pane-tap" id="pane-tap">
                <div class="rk-svg-static-header">
                    <div class="rk-svg-icon-box">
                        <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"></polygon></svg>
                    </div>
                    <div>
                        <h3>Woda wodociągowa (Kranówka)</h3>
                        <p>Zwykła woda prosto z sieci, niepoddana procesom demineralizacji.</p>
                    </div>
                </div>
                <div class="rk-pros-cons-grid">
                    <div class="rk-list-box rk-list-pros">
                        <div class="rk-list-header">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
                            Zalety
                        </div>
                        <ul class="rk-list-items">
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#166534" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg> Skrajnie tania i łatwo dostępna na budowie.</li>
                        </ul>
                    </div>
                    <div class="rk-list-box rk-list-cons">
                        <div class="rk-list-header">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line></svg>
                            Wady
                        </div>
                        <ul class="rk-list-items">
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> Powoduje osadzanie się kamienia kotłowego na wymiennikach.</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> Błyskawiczna korozja wżerowa elementów mosiężnych i stalowych.</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> Ryzyko natychmiastowej utraty gwarancji producenta pompy ciepła.</li>
                        </ul>
                    </div>
                </div>
            </div>

            <div class="rk-medium-pane pane-demi active" id="pane-demi">
                <div class="rk-svg-static-header">
                    <div class="rk-svg-icon-box">
                        <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path></svg>
                    </div>
                    <div>
                        <h3>Woda demineralizowana + Inhibitor</h3>
                        <p>Standard Inżynierski "Budowa bez ściemy". Medium pozbawione twardości i tlenu.</p>
                    </div>
                </div>
                <div class="rk-pros-cons-grid">
                    <div class="rk-list-box rk-list-pros">
                        <div class="rk-list-header">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
                            Zalety
                        </div>
                        <ul class="rk-list-items">
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#166534" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg> Najlepsza możliwa sprawność wymiany ciepła.</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#166534" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg> Całkowity brak osadów wapiennych (czyste rotametry).</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#166534" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg> Pełna ochrona gwarancyjna pompy ciepła (zgodność z VDI 2035).</li>
                        </ul>
                    </div>
                    <div class="rk-list-box rk-list-cons">
                        <div class="rk-list-header">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line></svg>
                            Wady
                        </div>
                        <ul class="rk-list-items">
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> Wyższy koszt początkowy inwestycji.</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> Brak ochrony przed zamarznięciem układu (wymaga prądu).</li>
                        </ul>
                    </div>
                </div>
            </div>

            <div class="rk-medium-pane pane-pro" id="pane-pro">
                <div class="rk-svg-static-header">
                    <div class="rk-svg-icon-box">
                        <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 12h4l3-9 5 18 3-9h5"></path></svg>
                    </div>
                    <div>
                        <h3>Glikol propylenowy (Roztwór)</h3>
                        <p>Niezamarzające medium polecane do domów letniskowych i pomp ciepła Monoblok.</p>
                    </div>
                </div>
                <div class="rk-pros-cons-grid">
                    <div class="rk-list-box rk-list-pros">
                        <div class="rk-list-header">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
                            Zalety
                        </div>
                        <ul class="rk-list-items">
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#166534" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg> Świetna ochrona przed zamarzaniem układu na zewnątrz.</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#166534" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg> Nietoksyczny – bezpieczny dla środowiska i domowników.</li>
                        </ul>
                    </div>
                    <div class="rk-list-box rk-list-cons">
                        <div class="rk-list-header">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line></svg>
                            Wady
                        </div>
                        <ul class="rk-list-items">
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> Niższa pojemność cieplna w stosunku do wody.</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> Wyższa lepkość kinematyczna (wymaga przeliczenia <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/" style="color: #991b1b; text-decoration: underline;">OZC</a>).</li>
                        </ul>
                    </div>
                </div>
            </div>

            <div class="rk-medium-pane pane-eth" id="pane-eth">
                <div class="rk-svg-static-header">
                    <div class="rk-svg-icon-box">
                        <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>
                    </div>
                    <div>
                        <h3>Glikol etylenowy (Ostrzeżenie)</h3>
                        <p>Tansza alternatywa dla instalacji przemysłowych, odradzana w domach.</p>
                    </div>
                </div>
                <div class="rk-pros-cons-grid">
                    <div class="rk-list-box rk-list-pros">
                        <div class="rk-list-header">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
                            Zalety
                        </div>
                        <ul class="rk-list-items">
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#166534" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg> Bardzo dobra ochrona przed ekstremalnym mrozem.</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#166534" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg> Tańszy od wersji propylenowej.</li>
                        </ul>
                    </div>
                    <div class="rk-list-box rk-list-cons" style="border-color: #fca5a5;">
                        <div class="rk-list-header">
                            <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line></svg>
                            Wady
                        </div>
                        <ul class="rk-list-items">
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> <strong>Silnie toksyczny!</strong> Grozi zatruciem wody użytkowej przy awarii np. w wężownicy zasobnika CWU.</li>
                            <li><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#991b1b" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg> Wymaga specjalistycznej utylizacji (niebezpieczny odpad).</li>
                        </ul>
                    </div>
                </div>
            </div>

        </div>
        
        <p style="text-align: center; margin-top: 25px; font-size: 14px; color: var(--rk-tbl-gray);">
            Zastanawiasz się, jakie to rodzi konsekwencje hydrauliczne? Sprawdź, dlaczego woda ma bezpośredni wpływ na <a href="https://projekt-ogrzewania.pl/kalkulator-doboru-pompy-obiegowej-w-ogrzewaniu-podlogowym/" style="color: var(--rk-tbl-blue); font-weight: 700;">dobór pompy obiegowej</a>.
        </p>

    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const btns = document.querySelectorAll('.rk-tbl-btn');
    const panes = document.querySelectorAll('.rk-medium-pane');

    btns.forEach(btn => {
        btn.addEventListener('click', function() {
            // Zresetuj wszystkie klasy
            btns.forEach(b => b.classList.remove('active'));
            panes.forEach(p => p.classList.remove('active'));

            // Dodaj klase aktywna do kliknietego
            this.classList.add('active');
            
            // Wyswietl odpowiednia zawartosc uzywajac data-medium (Brak animacji, natychmiastowe przejscie)
            const targetMedium = this.getAttribute('data-medium');
            const targetPane = document.getElementById('pane-' + targetMedium);
            targetPane.classList.add('active');
        });
    });
});
</script>



<style>
:root {
    --rk-case-dark: #0f172a;
    --rk-case-blue: #0284c7;
    --rk-case-blue-light: #e0f2fe;
    --rk-case-accent: #f59e0b;
    --rk-case-red: #dc2626;
    --rk-case-red-light: #fef2f2;
    --rk-case-green: #059669;
    --rk-case-green-light: #d1fae5;
    --rk-case-gray: #475569;
    --rk-case-border: #cbd5e1;
    --rk-case-bg: #ffffff;
    --rk-shadow-case: 0 20px 40px -10px rgba(2, 132, 199, 0.15);
}

.rk-case-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-case-bg);
    border-radius: 20px;
    box-shadow: var(--rk-shadow-case);
    border: 1px solid var(--rk-case-blue);
    overflow: hidden;
}

/* Nagłówek Case Study */
.rk-case-header {
    background: linear-gradient(135deg, var(--rk-case-dark) 0%, #1e293b 100%);
    padding: 40px 50px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-case-accent);
    position: relative;
}

.rk-case-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(245, 158, 11, 0.2);
    color: #fcd34d;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(253, 230, 138, 0.3);
}

.rk-case-header h2 {
    font-size: 28px;
    font-weight: 900;
    margin: 0 0 15px 0;
    line-height: 1.3;
}

/* Sekcja Fabularna (Story) */
.rk-case-story {
    padding: 35px 50px 20px 50px;
    background: #ffffff;
}

.rk-story-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 30px;
    align-items: center;
}

.rk-story-text {
    font-size: 16px;
    line-height: 1.7;
    color: var(--rk-case-gray);
}

.rk-story-text strong {
    color: var(--rk-case-dark);
}

.rk-story-text a {
    color: var(--rk-case-blue);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px dashed var(--rk-case-blue);
    transition: all 0.3s;
}

.rk-story-text a:hover {
    color: #0369a1;
    border-bottom-style: solid;
}

.rk-story-meta {
    background: #f8fafc;
    border: 1px solid var(--rk-case-border);
    border-radius: 12px;
    padding: 20px;
}

.rk-meta-item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
    font-size: 14px;
    border-bottom: 1px dashed #e2e8f0;
    padding-bottom: 8px;
}
.rk-meta-item:last-child { margin-bottom: 0; border-bottom: none; padding-bottom: 0; }
.rk-meta-label { color: var(--rk-case-gray); font-weight: 600; }
.rk-meta-value { color: var(--rk-case-dark); font-weight: 800; text-align: right; }

/* Interaktywny Symulator Decyzji */
.rk-case-interactive {
    padding: 0 50px 40px 50px;
}

.rk-case-interactive h3 {
    text-align: center;
    font-size: 22px;
    font-weight: 900;
    color: var(--rk-case-dark);
    margin: 0 0 30px 0;
}

.rk-decision-panel {
    background: #f8fafc;
    border: 1px solid var(--rk-case-border);
    border-radius: 16px;
    padding: 25px;
}

/* Przełączniki */
.rk-decision-toggles {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-bottom: 30px;
}

.rk-dec-btn {
    padding: 20px;
    border-radius: 12px;
    border: 2px solid var(--rk-case-border);
    background: #ffffff;
    cursor: pointer;
    text-align: center;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.rk-dec-btn:hover { background: #f1f5f9; }

.rk-dec-btn span.title { font-size: 16px; font-weight: 900; color: var(--rk-case-dark); }
.rk-dec-btn span.sub { font-size: 13px; font-weight: 600; color: var(--rk-case-gray); }

/* Stany Przełączników */
.rk-case-container.state-uncle .rk-dec-btn[data-choice="uncle"] {
    background: var(--rk-case-red-light);
    border-color: var(--rk-case-red);
    box-shadow: 0 8px 15px -3px rgba(220, 38, 38, 0.2);
}
.rk-case-container.state-uncle .rk-dec-btn[data-choice="uncle"] span.title { color: #991b1b; }

.rk-case-container.state-expert .rk-dec-btn[data-choice="expert"] {
    background: var(--rk-case-green-light);
    border-color: var(--rk-case-green);
    box-shadow: 0 8px 15px -3px rgba(5, 150, 105, 0.2);
}
.rk-case-container.state-expert .rk-dec-btn[data-choice="expert"] span.title { color: #065f46; }

/* Wizualizacja i Wyniki */
.rk-result-area {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    align-items: center;
}

.rk-result-svg-box {
    background: var(--rk-case-dark);
    border-radius: 12px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    border: 2px solid #334155;
}

/* SVG Animacje (Plan domu i rury) */
.rk-house-plan { width: 90%; height: 90%; max-width: 200px; }
.rk-pipe-loop { fill: none; stroke-width: 8; stroke-linecap: round; stroke-linejoin: round; transition: all 0.5s ease; }

.state-uncle .rk-pipe-loop {
    stroke: #b45309;
    stroke-dasharray: 20 5;
    animation: clogPipe 3s linear forwards;
}

.state-expert .rk-pipe-loop {
    stroke: #0ea5e9;
    stroke-dasharray: none;
    animation: flowSmooth 2s linear infinite;
}

@keyframes clogPipe {
    0% { stroke-dashoffset: 100; stroke-width: 8; }
    100% { stroke-dashoffset: 0; stroke-width: 4; stroke: #78350f; } /* Rura zarasta */
}
@keyframes flowSmooth {
    0% { filter: drop-shadow(0 0 2px #0ea5e9); }
    50% { filter: drop-shadow(0 0 8px #38bdf8); }
    100% { filter: drop-shadow(0 0 2px #0ea5e9); }
}

.rk-result-text-box {
    padding: 20px;
    border-radius: 12px;
    background: #ffffff;
    border: 1px solid var(--rk-case-border);
    transition: all 0.3s;
}

.state-uncle .rk-result-text-box { border-left: 5px solid var(--rk-case-red); }
.state-expert .rk-result-text-box { border-left: 5px solid var(--rk-case-green); }

.rk-result-text-box h4 {
    margin: 0 0 10px 0;
    font-size: 18px;
    font-weight: 800;
}

.state-uncle .rk-result-text-box h4 { color: #991b1b; }
.state-expert .rk-result-text-box h4 { color: #065f46; }

.rk-result-text-box p {
    margin: 0 0 15px 0;
    font-size: 14px;
    line-height: 1.6;
    color: var(--rk-case-gray);
}

.rk-result-cost {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 800;
}

.state-uncle .rk-result-cost { background: var(--rk-case-red-light); color: #b91c1c; }
.state-expert .rk-result-cost { background: var(--rk-case-green-light); color: #047857; }

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-case-header, .rk-case-story, .rk-case-interactive { padding: 25px 20px; }
    .rk-case-header h2 { font-size: 22px; }
    .rk-story-grid { grid-template-columns: 1fr; gap: 20px; }
    .rk-decision-toggles { grid-template-columns: 1fr; gap: 10px; }
    .rk-dec-btn { padding: 15px; }
    .rk-result-area { grid-template-columns: 1fr; }
    .rk-result-svg-box { height: 160px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-casestudy",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Case Study: Samodzielny montaż ogrzewania podłogowego w domu 90 m² – Wiktor z Przeworska",
    "description": "Budowa systemem gospodarczym i dylemat inwestora: posłuchać wujka i wlać kranówkę, czy postawić na inżynierski standard? Poznaj realne skutki obu decyzji dla domu 90 m2.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-casestudy",
    "name": "Porównanie kosztów eksploatacji ogrzewania podłogowego: System Gospodarczy vs Standard Inżynierski",
    "description": "Zestawienie obrazujące ryzyko finansowe i serwisowe w przypadku nieprawidłowego napełnienia instalacji w domu jednorodzinnym o powierzchni 90 m2.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "samodzielny montaż ogrzewania podłogowego",
      "ogrzewanie podłogowe systemem gospodarczym",
      "koszt ogrzewania domu 90m2",
      "woda z kranu czy demineralizowana",
      "błędy przy montażu podłogówki"
    ],
    "measurementTechnique": "Projekcja kosztów na przestrzeni 3 lat dla instalacji 90m2: brak kosztów serwisowych (woda demi) vs koszty płukania chemicznego i wymiany rotametrów (kranówka).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Porada Wujka (Woda z kranu): Koszt naprawczy po 3 latach ~2500 PLN (płukanie, rotametry, spadek COP).",
        "Standard Budowa Bez Ściemy (Woda demi): Koszt prewencyjny ~400 PLN, oszczędność na rachunkach z tytułu pełnej sprawności pompy ciepła."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-casestudy",
    "name": "Symulator Decyzji Inwestorskiej: System Gospodarczy",
    "description": "Narzędzie interaktywne ilustrujące zjawisko zarastania rur grzewczych (kamień) przy zastosowaniu nieuzdatnionej wody kontra stabilna praca układu zalanego wodą demineralizowaną.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-case-container state-expert" id="rkCaseContainer">
    <div class="rk-case-header">
        <div class="rk-case-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon></svg>
            Case Study: System Gospodarczy
        </div>
        <h2>Samodzielny montaż podłogówki w domu 90 m² – Dylemat Wiktora</h2>
    </div>

    <div class="rk-case-story">
        <div class="rk-story-grid">
            <div class="rk-story-text">
                <p>Wiktor buduje dom w Przeworsku. Zdecydował się na <a href="https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-czy-warto-robic-to-samemu/">samodzielny montaż ogrzewania podłogowego</a> z pomocą ojca i wujka – typowy polski system gospodarczy. Rozłożyli pętle, zamontowali mosiężny rozdzielacz i nadszedł kluczowy moment: <strong>napełnianie układu</strong>.</p>
                <p>Wujek radzi stanowczo: <em>"Wiktor, podłączaj szlauch do kranu. Zawsze tak robiliśmy, woda to woda, beton wszystko przykryje i będzie grzać"</em>. Wiktor jednak, czytając mój blog, miał wątpliwości. Czy wlanie kranówki to jeden z tych <a href="https://projekt-ogrzewania.pl/samodzielny-montaz-ogrzewania-podlogowego-5-bledow-ktorych-nie-naprawisz-po-wylewce/">5 błędów, których nie naprawisz po wylewce</a>?</p>
            </div>
            <div class="rk-story-meta">
                <div class="rk-meta-item">
                    <span class="rk-meta-label">Inwestor</span>
                    <span class="rk-meta-value">Wiktor, Przeworsk</span>
                </div>
                <div class="rk-meta-item">
                    <span class="rk-meta-label">Powierzchnia</span>
                    <span class="rk-meta-value">90 m²</span>
                </div>
                <div class="rk-meta-item">
                    <span class="rk-meta-label">Zład wody</span>
                    <span class="rk-meta-value">~80 Litrów</span>
                </div>
                <div class="rk-meta-item">
                    <span class="rk-meta-label">Metoda</span>
                    <span class="rk-meta-value">System gospodarczy</span>
                </div>
            </div>
        </div>
    </div>

    <div class="rk-case-interactive">
        <h3>Sprawdź, jak ta decyzja wpłynie na koszty Wiktora po 3 latach:</h3>
        
        <div class="rk-decision-panel">
            <div class="rk-decision-toggles">
                <button class="rk-dec-btn" data-choice="uncle">
                    <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>
                    <span class="title">Porada Wujka</span>
                    <span class="sub">Woda z kranu (0 PLN na start)</span>
                </button>
                <button class="rk-dec-btn" data-choice="expert">
                    <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
                    <span class="title">Standard Inżyniera</span>
                    <span class="sub">Woda Demi + Inhibitor (~400 PLN)</span>
                </button>
            </div>

            <div class="rk-result-area">
                <!-- SVG Wizualizacja -->
                <div class="rk-result-svg-box">
                    <svg class="rk-house-plan" viewBox="0 0 100 100">
                        <!-- Obrys domu -->
                        <rect x="10" y="10" width="80" height="80" fill="none" stroke="#475569" stroke-width="2" rx="4"></rect>
                        <!-- Pętle ogrzewania podłogowego (Ślimak) -->
                        <path class="rk-pipe-loop" d="M 20 20 L 80 20 L 80 80 L 30 80 L 30 40 L 60 40 L 60 60 L 40 60"></path>
                        <!-- Pompa ciepła ikona -->
                        <circle cx="90" cy="50" r="8" fill="#1e293b" stroke="#cbd5e1" stroke-width="2"></circle>
                    </svg>
                </div>

                <!-- Wynik tekstowy -->
                <div class="rk-result-text-box" id="rkResultText">
                    <!-- Treść podmieniana przez JS -->
                    <h4>Pełna sprawność hydrauliczna</h4>
                    <p>Instalacja pozostaje sterylnie czysta. Brak korozji, wymiennik pompy ciepła bez grama osadu. Oszczędność prądu pokrywa koszt zakupu wody demi już w pierwszym sezonie grzewczym.</p>
                    <span class="rk-result-cost">Bilans: +2500 PLN oszczędności vs awaria</span>
                </div>
            </div>
        </div>
        
        <p style="text-align: center; margin-top: 25px; font-size: 14px; color: var(--rk-case-gray);">
            Zastanawiasz się nad budżetem? Zobacz <a href="https://projekt-ogrzewania.pl/ile-kosztuje-100-m%c2%b2-ogrzewania-podlogowego/" style="color: var(--rk-case-blue); font-weight: 700;">ile realnie kosztuje 100 m² ogrzewania podłogowego</a> przy wykonaniu prawidłowym.
        </p>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const container = document.getElementById('rkCaseContainer');
    const btns = document.querySelectorAll('.rk-dec-btn');
    const textBox = document.getElementById('rkResultText');

    const contents = {
        uncle: `
            <h4>Katastrofa powolnego zarastania</h4>
            <p>Po 3 latach rotametry stają się czarne i nieczytelne. W twardej wodzie z kranu z wytrąconego wapnia tworzy się kamień kotłowy. Zmniejsza się średnica rur, a rachunki za prąd rosną o 15% z powodu izolacji wymiennika w pompie ciepła.</p>
            <span class="rk-result-cost">Koszty serwisu: ~2500 PLN (Płukanie chemiczne)</span>
        `,
        expert: `
            <h4>Pełna sprawność hydrauliczna</h4>
            <p>Instalacja "Budowa bez ściemy" pozostaje sterylnie czysta. Brak korozji, wymiennik pompy ciepła nie ma grama osadu. Oszczędność na poborze prądu pokrywa wydatek na wodę zdemineralizowaną już w pierwszym roku.</p>
            <span class="rk-result-cost">Bilans: 100% sprawności przez dekady</span>
        `
    };

    btns.forEach(btn => {
        btn.addEventListener('click', function() {
            const choice = this.getAttribute('data-choice');
            
            // Zmiana klasy kontenera dla CSS
            container.className = 'rk-case-container state-' + choice;
            
            // Delikatne zniknięcie tekstu i podmiana
            textBox.style.opacity = '0';
            setTimeout(() => {
                textBox.innerHTML = contents[choice];
                textBox.style.opacity = '1';
            }, 200);
        });
    });
});
</script>



<style>
:root {
    --rk-exp-dark: #0f172a;
    --rk-exp-blue: #0284c7;
    --rk-exp-blue-light: #e0f2fe;
    --rk-exp-gray: #475569;
    --rk-exp-gray-light: #f1f5f9;
    --rk-exp-border: #cbd5e1;
    --rk-exp-bg: #ffffff;
    --rk-exp-accent: #0ea5e9;
    --rk-exp-gold: #b45309;
    --rk-exp-gold-light: #fef3c7;
}

.rk-exp-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-exp-bg);
    border-radius: 20px;
    box-shadow: 0 15px 35px -10px rgba(2, 132, 199, 0.12);
    border: 1px solid var(--rk-exp-blue);
    overflow: hidden;
}

/* Nagłówek i Profil */
.rk-exp-header {
    background: linear-gradient(135deg, var(--rk-exp-dark) 0%, #1e293b 100%);
    padding: 0;
    border-bottom: 4px solid var(--rk-exp-blue);
    display: flex;
    flex-direction: column;
}

.rk-exp-title-bar {
    padding: 30px 40px 20px 40px;
}

.rk-exp-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(2, 132, 199, 0.2);
    color: #7dd3fc;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
    border: 1px solid rgba(125, 211, 252, 0.2);
}

.rk-exp-title-bar h2 {
    font-size: 26px;
    font-weight: 900;
    margin: 0;
    line-height: 1.3;
    color: #ffffff;
}

.rk-exp-profile-section {
    display: flex;
    align-items: stretch;
    background: rgba(255, 255, 255, 0.03);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.rk-exp-photo-box {
    padding: 30px 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.rk-exp-photo {
    width: 140px;
    height: 140px;
    border-radius: 12px;
    object-fit: cover;
    border: 3px solid var(--rk-exp-blue);
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}

.rk-exp-bio {
    padding: 30px 40px;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.rk-exp-quote {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.6;
    margin: 0 0 20px 0;
    font-style: italic;
}

.rk-exp-quote::before { content: '"'; color: var(--rk-exp-blue); font-size: 24px; }
.rk-exp-quote::after { content: '"'; color: var(--rk-exp-blue); font-size: 24px; }

.rk-exp-socials {
    display: flex;
    gap: 15px;
    align-items: center;
}

.rk-exp-social-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,0.1);
    color: #cbd5e1;
    padding: 8px 16px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    border: 1px solid rgba(255,255,255,0.1);
}

.rk-exp-social-link:hover {
    background: var(--rk-exp-blue);
    color: #ffffff;
    border-color: var(--rk-exp-blue);
}

/* Interaktywny Panel Eksperta (Brak animacji, natychmiastowe przełączanie) */
.rk-exp-interactive {
    padding: 40px;
    background: #f8fafc;
}

.rk-exp-interactive h3 {
    margin: 0 0 25px 0;
    font-size: 20px;
    font-weight: 900;
    color: var(--rk-exp-dark);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.rk-interactive-grid {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 20px;
    background: #ffffff;
    border: 1px solid var(--rk-exp-border);
    border-radius: 16px;
    padding: 15px;
}

/* Przyciski zakładek */
.rk-exp-tabs {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.rk-exp-tab-btn {
    padding: 18px 20px;
    text-align: left;
    background: var(--rk-exp-gray-light);
    border: 2px solid transparent;
    border-radius: 12px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 800;
    color: var(--rk-exp-gray);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.rk-exp-tab-btn.active {
    background: var(--rk-exp-blue-light);
    border-color: var(--rk-exp-blue);
    color: var(--rk-exp-dark);
}

.rk-exp-tab-btn svg { stroke: var(--rk-exp-gray); }
.rk-exp-tab-btn.active svg { stroke: var(--rk-exp-blue); }

/* Zawartość zakładek */
.rk-exp-content-area {
    background: var(--rk-exp-dark);
    border-radius: 12px;
    padding: 30px;
    color: #ffffff;
    display: flex;
    flex-direction: column;
}

.rk-exp-pane {
    display: none;
}

.rk-exp-pane.active {
    display: block;
}

.rk-pane-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.rk-pane-icon {
    width: 48px;
    height: 48px;
    background: rgba(255,255,255,0.1);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rk-exp-accent);
}

.rk-pane-title {
    font-size: 18px;
    font-weight: 800;
    margin: 0;
    color: #f1f5f9;
}

.rk-pane-text {
    font-size: 15px;
    line-height: 1.7;
    color: #cbd5e1;
    margin: 0 0 20px 0;
}

.rk-pane-text strong {
    color: #ffffff;
}

.rk-pane-verdict {
    background: rgba(14, 165, 233, 0.15);
    border-left: 4px solid var(--rk-exp-accent);
    padding: 15px 20px;
    border-radius: 0 8px 8px 0;
    font-size: 14px;
    font-weight: 700;
    color: #7dd3fc;
}

/* Statyczne SVG w zakładkach */
.rk-static-svg-box {
    margin-top: 20px;
    background: #1e293b;
    border-radius: 8px;
    padding: 20px;
    text-align: center;
    border: 1px solid #334155;
}

/* Mobile */
@media (max-width: 768px) {
    .rk-exp-title-bar { padding: 25px 20px; }
    .rk-exp-title-bar h2 { font-size: 22px; }
    .rk-exp-profile-section { flex-direction: column; }
    .rk-exp-photo-box { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.1); padding: 20px; }
    .rk-exp-bio { padding: 25px 20px; text-align: center; }
    .rk-exp-quote { font-size: 16px; }
    .rk-exp-socials { justify-content: center; flex-wrap: wrap; }
    .rk-exp-interactive { padding: 25px 20px; }
    .rk-interactive-grid { grid-template-columns: 1fr; padding: 10px; gap: 10px; }
    .rk-exp-tab-btn { padding: 15px; font-size: 14px; }
    .rk-exp-content-area { padding: 20px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-ekspert",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Okiem eksperta: Robert Kucharski o tym, czym napełnić instalację ogrzewania podłogowego",
    "description": "Autorskie zestawienie kluczowych parametrów i weryfikacja techniczna instalacji płaszczyznowych. Zobacz, na co zwraca uwagę inżynier HVAC przy napełnianiu podłogówki.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-ekspert",
    "name": "Karta Weryfikacji Technicznej Instalacji by Robert Kucharski",
    "description": "Baza danych z wytycznymi kontrolnymi (Budowa bez ściemy) obejmującymi normy jakości medium, parametry ciśnieniowe oraz zgodność projektową OZC.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "czym napełnić instalację ogrzewania podłogowego opinie",
      "robert kucharski projekt ogrzewania",
      "weryfikacja instalacji podłogowej",
      "budowa bez ściemy podłogówka",
      "zabezpieczenie instalacji co"
    ],
    "measurementTechnique": "Algorytm weryfikacyjny (Checklista) sprawdzająca trzy filary bezpieczeństwa: parametry medium (<100 µS/cm), test ciśnieniowy (6 bar / 24h) oraz korekty lepkości w OZC.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Weryfikacja Medium: Wymóg wody demineralizowanej z inhibitorem zamiast surowej kranówki.",
        "Weryfikacja Szczelności: Obligatoryjna próba 6 bar udokumentowana protokołem.",
        "Weryfikacja Projektowa: Sprawdzenie oporów hydraulicznych przy zastosowaniu glikolu w pompach monoblok."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-ekspert",
    "name": "Panel Diagnostyczny Eksperta (Budowa bez ściemy)",
    "description": "Interaktywne narzędzie edukacyjne prezentujące kluczowe punkty weryfikacji instalacji grzewczej przed zalaniem posadzki, opatrzone komentarzem inżynierskim.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-exp-container">
    <div class="rk-exp-header">
        <div class="rk-exp-title-bar">
            <div class="rk-exp-badge">
                <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path></svg>
                Weryfikacja Techniczna
            </div>
            <h2>Okiem eksperta: Robert Kucharski o tym, czym napełnić instalację ogrzewania podłogowego</h2>
        </div>
        
        <div class="rk-exp-profile-section">
            <div class="rk-exp-photo-box">
                <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski - CEO Projekt-Ogrzewania.pl" class="rk-exp-photo">
            </div>
            <div class="rk-exp-bio">
                <p class="rk-exp-quote">Zdaniem Roberta Kucharskiego: Decyzja o tym, co wlejesz do instalacji, to test Twojej świadomości technicznej. Oszczędność kilkuset złotych na wodzie demineralizowanej to wyrok na żywotność pompy ciepła wydany z opóźnionym zapłonem. Budowa bez ściemy wymaga przestrzegania norm, a nie improwizacji.</p>
                
                <div class="rk-exp-socials">
                    <a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="noopener nofollow" class="rk-exp-social-link">
                        <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path><rect x="2" y="9" width="4" height="12"></rect><circle cx="4" cy="4" r="2"></circle></svg>
                        Profil LinkedIn
                    </a>
                    <a href="https://www.facebook.com/projektogrzewaniapl/" target="_blank" rel="noopener nofollow" class="rk-exp-social-link">
                        <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z"></path></svg>
                        Projekt Ogrzewania
                    </a>
                </div>
            </div>
        </div>
    </div>

    <div class="rk-exp-interactive">
        <h3>
            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><polyline points="10 9 9 9 8 9"></polyline></svg>
            Karta Weryfikacji Inwestora
        </h3>
        
        <div class="rk-interactive-grid">
            <div class="rk-exp-tabs">
                <button class="rk-exp-tab-btn active" data-target="pane-water">
                    <span>1. Analiza Medium Grzewczego</span>
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>
                </button>
                <button class="rk-exp-tab-btn" data-target="pane-pressure">
                    <span>2. Rygor Próby Szczelności</span>
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>
                </button>
                <button class="rk-exp-tab-btn" data-target="pane-project">
                    <span>3. Korekta Projektu (Glikol)</span>
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>
                </button>
            </div>

            <div class="rk-exp-content-area">
                
                <div class="rk-exp-pane active" id="pane-water">
                    <div class="rk-pane-header">
                        <div class="rk-pane-icon">
                            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z"></path></svg>
                        </div>
                        <h4 class="rk-pane-title">Wymóg wody demineralizowanej</h4>
                    </div>
                    <p class="rk-pane-text">Norma VDI 2035 nie pozostawia złudzeń. Napełnienie układu twardą kranówką to prosta droga do utraty gwarancji na pompę ciepła. <strong>Zawsze weryfikuj, czy instalator używa stacji demineralizującej i dodaje inhibitor.</strong></p>
                    <div class="rk-pane-verdict">
                        Werdykt: Przewodność elektryczna zładu musi wynosić poniżej 100 µS/cm przed rozruchem.
                    </div>
                    <div class="rk-static-svg-box">
                        <svg width="120" height="40" viewBox="0 0 120 40">
                            <rect x="0" y="10" width="120" height="20" rx="10" fill="#334155"></rect>
                            <rect x="0" y="10" width="40" height="20" rx="10" fill="#10b981"></rect>
                            <text x="50" y="24" fill="#cbd5e1" font-size="12" font-family="sans-serif">Wynik: OK (Demi)</text>
                        </svg>
                    </div>
                </div>

                <div class="rk-exp-pane" id="pane-pressure">
                    <div class="rk-pane-header">
                        <div class="rk-pane-icon">
                            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>
                        </div>
                        <h4 class="rk-pane-title">Rygor próby ciśnieniowej</h4>
                    </div>
                    <p class="rk-pane-text">Wielu "fachowców" wykonuje próbę powietrzem przez 2 godziny. To błąd w sztuce. Prawidłowa kontrola wg PN-EN 1264 to woda, <strong>ciśnienie 6 bar i minimum 24 godziny obserwacji</strong> przed wylaniem posadzki.</p>
                    <div class="rk-pane-verdict">
                        Werdykt: Brak pisemnego protokołu z testu na 6 bar = brak odbioru technicznego.
                    </div>
                    <div class="rk-static-svg-box">
                        <svg width="80" height="80" viewBox="0 0 100 100">
                            <circle cx="50" cy="50" r="45" fill="none" stroke="#cbd5e1" stroke-width="4"></circle>
                            <path d="M 20 50 A 30 30 0 0 1 80 50" stroke="#10b981" stroke-width="6" stroke-linecap="round" fill="none"></path>
                            <line x1="50" y1="50" x2="80" y2="50" stroke="#ef4444" stroke-width="4" stroke-linecap="round"></line>
                            <circle cx="50" cy="50" r="6" fill="#cbd5e1"></circle>
                            <text x="36" y="80" fill="#94a3b8" font-size="14" font-weight="bold" font-family="sans-serif">6 BAR</text>
                        </svg>
                    </div>
                </div>

                <div class="rk-exp-pane" id="pane-project">
                    <div class="rk-pane-header">
                        <div class="rk-pane-icon">
                            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line><line x1="9" y1="21" x2="9" y2="9"></line></svg>
                        </div>
                        <h4 class="rk-pane-title">Uwzględnienie lepkości w OZC</h4>
                    </div>
                    <p class="rk-pane-text">Decydujesz się na roztwór glikolu propylenowego do pompy monoblok? Świetnie, ale pamiętaj: <strong>glikol jest gęstszy niż woda</strong>. Wymaga to przeliczenia średnicy rur magistralnych i doboru mocniejszej pompy obiegowej na etapie projektu.</p>
                    <div class="rk-pane-verdict">
                        Werdykt: Wlanie glikolu do instalacji policzonej pod wodę doprowadzi do dławienia przepływów.
                    </div>
                    <div class="rk-static-svg-box">
                        <svg width="180" height="40" viewBox="0 0 180 40">
                            <rect x="0" y="15" width="80" height="10" fill="#38bdf8"></rect>
                            <text x="10" y="10" fill="#cbd5e1" font-size="10" font-family="sans-serif">Woda: PEX 25</text>
                            
                            <rect x="100" y="10" width="80" height="20" fill="#f59e0b"></rect>
                            <text x="110" y="8" fill="#cbd5e1" font-size="10" font-family="sans-serif">Glikol: PEX 32</text>
                        </svg>
                    </div>
                </div>

            </div>
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const tabs = document.querySelectorAll('.rk-exp-tab-btn');
    const panes = document.querySelectorAll('.rk-exp-pane');

    tabs.forEach(tab => {
        tab.addEventListener('click', function() {
            // Usunięcie aktywnej klasy
            tabs.forEach(t => t.classList.remove('active'));
            panes.forEach(p => p.classList.remove('active'));

            // Aktywacja klikniętego elementu (Brak animacji, natychmiastowa zmiana display: block/none)
            this.classList.add('active');
            const targetId = this.getAttribute('data-target');
            document.getElementById(targetId).classList.add('active');
        });
    });
});
</script>



<style>
:root {
    --rk-faq-dark: #0f172a;
    --rk-faq-blue: #0284c7;
    --rk-faq-blue-hover: #0369a1;
    --rk-faq-light: #f8fafc;
    --rk-faq-border: #e2e8f0;
    --rk-faq-accent: #f59e0b;
    --rk-faq-green: #10b981;
    --rk-faq-text: #334155;
    --rk-faq-bg: #ffffff;
}

.rk-faq-wrapper {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    background: var(--rk-faq-bg);
    border-radius: 24px;
    box-shadow: 0 20px 40px -15px rgba(2, 132, 199, 0.12);
    border: 1px solid var(--rk-faq-blue);
    overflow: hidden;
}

/* Sekcja Nagłówkowa */
.rk-faq-header {
    padding: 45px 50px;
    background: linear-gradient(135deg, var(--rk-faq-dark) 0%, #1e293b 100%);
    position: relative;
    border-bottom: 5px solid var(--rk-faq-blue);
}

.rk-faq-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.1);
    color: #e2e8f0;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.rk-faq-header h2 {
    font-size: 28px;
    font-weight: 900;
    color: #ffffff;
    margin: 0 0 15px 0;
    line-height: 1.3;
}

.rk-faq-header p {
    color: #94a3b8;
    font-size: 16px;
    margin: 0;
    line-height: 1.6;
    max-width: 700px;
}

/* Interaktywny Akordeon (Lista pytań) */
.rk-faq-list {
    padding: 30px 50px;
    background: #f8fafc;
}

.rk-faq-item {
    background: #ffffff;
    border: 1px solid var(--rk-faq-border);
    border-radius: 16px;
    margin-bottom: 15px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
    overflow: hidden;
}

.rk-faq-item:hover {
    border-color: #bae6fd;
    box-shadow: 0 10px 15px -3px rgba(2, 132, 199, 0.1);
    transform: translateY(-2px);
}

.rk-faq-item.active {
    border-color: var(--rk-faq-blue);
    box-shadow: 0 10px 20px -5px rgba(2, 132, 199, 0.15);
}

.rk-faq-trigger {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 25px 30px;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    gap: 20px;
}

.rk-faq-trigger h3 {
    font-size: 18px;
    font-weight: 800;
    color: var(--rk-faq-dark);
    margin: 0;
    line-height: 1.4;
    transition: color 0.3s;
}

.rk-faq-item.active .rk-faq-trigger h3 {
    color: var(--rk-faq-blue);
}

.rk-faq-icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f1f5f9;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rk-faq-blue);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.rk-faq-item.active .rk-faq-icon {
    background: var(--rk-faq-blue);
    color: #ffffff;
    transform: rotate(180deg);
}

.rk-faq-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    background: #ffffff;
}

.rk-faq-inner {
    padding: 0 30px 30px 30px;
    border-top: 1px solid transparent;
}

.rk-faq-item.active .rk-faq-inner {
    border-top-color: #f1f5f9;
    padding-top: 25px;
}

.rk-faq-inner p {
    margin: 0;
    font-size: 16px;
    line-height: 1.7;
    color: var(--rk-faq-text);
}

.rk-faq-inner strong {
    color: var(--rk-faq-dark);
    font-weight: 700;
}

.rk-faq-inner a {
    color: var(--rk-faq-blue);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: all 0.3s;
}

.rk-faq-inner a:hover {
    border-bottom-color: var(--rk-faq-blue);
}

/* Wskaźniki techniczne (tagi) w odpowiedziach */
.rk-tech-tag {
    display: inline-block;
    background: #e0f2fe;
    color: #0369a1;
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 800;
    margin-top: 15px;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .rk-faq-header, .rk-faq-list { padding: 30px 20px; }
    .rk-faq-header h2 { font-size: 24px; }
    .rk-faq-trigger { padding: 20px; flex-direction: row; }
    .rk-faq-trigger h3 { font-size: 16px; }
    .rk-faq-inner { padding: 0 20px 20px 20px; }
    .rk-faq-item.active .rk-faq-inner { padding-top: 20px; }
    .rk-faq-icon { width: 32px; height: 32px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-faq",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "FAQ: Szybkie odpowiedzi dla inwestora – diagnoza i parametry",
    "description": "Najczęstsze pytania inwestorów dotyczące medium grzewczego. Dowiedz się, dlaczego rotametry mętnieją, jak dolewać glikol i jakie są optymalne temperatury zasilania dla pompy ciepła.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "FAQPage",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#faq",
    "mainEntity": [
      {
        "@type": "Question",
        "name": "Czy wodę z instalacji trzeba wymieniać?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Zaleca się wymianę medium lub uzupełnienie inhibitorów korozji co 3-5 lat, aby zachować skuteczność ochrony antykorozyjnej."
        }
      },
      {
        "@type": "Question",
        "name": "Dlaczego rotametry są mętne?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Zazwyczaj jest to wynik użycia twardej wody, która powoduje wytrącanie się osadów wapiennych, co wymaga czyszczenia lub wymiany wkładek rotametrów."
        }
      },
      {
        "@type": "Question",
        "name": "Jaka jest bezpieczna temperatura zasilania?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Dla podłogówki optymalna temperatura zasilania to 30-35°C, co zapewnia najwyższą efektywność (COP) pompy ciepła."
        }
      },
      {
        "@type": "Question",
        "name": "Czy można dolewać wody do instalacji z glikolem?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Nie, rozcieńczenie glikolu wodą obniża jego właściwości ochronne i zmienia temperaturę krzepnięcia, co może prowadzić do awarii przy ujemnych temperaturach."
        }
      },
      {
        "@type": "Question",
        "name": "Ile kosztuje profesjonalne przygotowanie wody?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Koszt zakupu demineralizatora lub specjalistycznego płynu z inhibitorem do średniej instalacji domowej to wydatek rzędu 400-800 PLN, co jest ułamkiem ceny awarii pompy ciepła."
        }
      }
    ]
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-faq",
    "name": "Zestawienie interwałów serwisowych i parametrów roboczych instalacji podłogowej",
    "description": "Baza wiedzy definiująca normatywne temperatury zasilania (30-35°C), koszty demineralizacji wody oraz ramy czasowe wymiany inhibitorów w pompach ciepła.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "wymiana wody w ogrzewaniu podłogowym",
      "czyszczenie mętnych rotametrów",
      "temperatura zasilania podłogówki COP",
      "dolewanie wody do glikolu",
      "cena demineralizatora do co"
    ],
    "measurementTechnique": "Analiza zapytań inwestorskich (FAQ) skorelowana z instrukcjami DTR producentów urządzeń grzewczych (interwały 3-5 lat, temp. 35°C).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Interwał wymiany inhibitora: 3 do 5 lat.",
        "Optymalna temperatura zasilania (Tz): 30°C - 35°C dla maksymalnego COP.",
        "Koszt prewencyjny (uzdatnienie): 400 - 800 PLN."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-faq",
    "name": "Interaktywna Baza Wiedzy (FAQ) – Diagnoza Instalacji",
    "description": "Dynamiczny komponent akordeonowy umożliwiający inwestorom szybką diagnozę problemów (np. mętne rotametry) i weryfikację parametrów roboczych.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-faq-wrapper">
    <div class="rk-faq-header">
        <div class="rk-faq-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>
            Baza Wiedzy Inwestora
        </div>
        <h2>FAQ: Szybkie odpowiedzi dla inwestora – diagnoza i parametry</h2>
        <p>Rozwiewamy techniczne mity. Poniżej znajdziesz konkretne, inżynierskie odpowiedzi na najczęstsze problemy zgłaszane po zalaniu jastrychu. Bez ściemy, same fakty.</p>
    </div>

    <div class="rk-faq-list" id="rkFaqAccordion">
        
        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Czy wodę z instalacji podłogowej trzeba wymieniać?</h3>
                <div class="rk-faq-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>
                </div>
            </button>
            <div class="rk-faq-content">
                <div class="rk-faq-inner">
                    <p>Zaleca się wymianę medium lub stanowcze uzupełnienie inhibitorów korozji <strong>co 3-5 lat</strong>. Proces ten jest niezbędny, aby zachować ciągłość ochrony antykorozyjnej w układzie, co chroni elementy mosiężne i stalowe przed utlenianiem.</p>
                    <div class="rk-tech-tag">Interwał serwisowy: 3-5 lat</div>
                </div>
            </div>
        </div>

        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Dlaczego rotametry na rozdzielaczu są mętne?</h3>
                <div class="rk-faq-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>
                </div>
            </button>
            <div class="rk-faq-content">
                <div class="rk-faq-inner">
                    <p>Zazwyczaj jest to bezpośredni wynik napełnienia układu twardą wodą sieciową. Prowadzi to do wytrącania się osadów wapiennych oraz powstawania biofilmu. W takiej sytuacji konieczne jest mechaniczne czyszczenie lub całkowita wymiana wkładek. Przeczytaj więcej o tym, jak działa <a href="https://projekt-ogrzewania.pl/rotametr-wskaznik-przeplywu-w-rozdzielaczu-ogrzewania-podlogowego/">rotametr i wskaźnik przepływu w rozdzielaczu</a>.</p>
                </div>
            </div>
        </div>

        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Jaka jest bezpieczna temperatura zasilania dla pompy ciepła?</h3>
                <div class="rk-faq-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>
                </div>
            </button>
            <div class="rk-faq-content">
                <div class="rk-faq-inner">
                    <p>Dla prawidłowo zaprojektowanej podłogówki optymalna i <a href="https://projekt-ogrzewania.pl/maksymalna-temperatura-zasilania-podlogowki/">bezpieczna temperatura zasilania to <strong>30-35°C</strong></a>. Utrzymanie tych parametrów roboczych gwarantuje najwyższą efektywność (wysoki wskaźnik COP) pompy ciepła i niższe rachunki za prąd.</p>
                    <div class="rk-tech-tag">Tz = 30°C - 35°C</div>
                </div>
            </div>
        </div>

        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Czy można bezpiecznie dolewać wody do instalacji napełnionej glikolem?</h3>
                <div class="rk-faq-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>
                </div>
            </button>
            <div class="rk-faq-content">
                <div class="rk-faq-inner">
                    <p><strong>Zdecydowanie nie.</strong> Rozcieńczenie glikolu zwykłą wodą drastycznie obniża jego właściwości ochronne (inhibitory) i zmienia punkt krzepnięcia. W efekcie może to doprowadzić do rozerwania wymiennika w pompie typu monoblok przy pierwszych silnych mrozach. Poznaj <a href="https://projekt-ogrzewania.pl/glikol-w-ogrzewaniu-podlogowym-prawda-i-mity-ktore-musi-znac-kazdy-inwestor/">fakty i mity o glikolu w podłogówce</a>.</p>
                </div>
            </div>
        </div>

        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Ile realnie kosztuje profesjonalne przygotowanie wody do instalacji?</h3>
                <div class="rk-faq-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>
                </div>
            </button>
            <div class="rk-faq-content">
                <div class="rk-faq-inner">
                    <p>Koszty są marginalne w stosunku do potencjalnych strat. Zakup demineralizatora stacjonarnego lub zlecenia napełnienia specjalistycznym płynem z inhibitorem dla średniego domu (ok. 150m²) to wydatek rzędu <strong>400 - 800 PLN</strong>. To zaledwie ułamek ceny ewentualnej wymiany zatartej sprężarki.</p>
                    <div class="rk-tech-tag">Koszt: 400-800 PLN</div>
                </div>
            </div>
        </div>

    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const faqItems = document.querySelectorAll('.rk-faq-item');

    faqItems.forEach(item => {
        const trigger = item.querySelector('.rk-faq-trigger');
        const content = item.querySelector('.rk-faq-content');

        trigger.addEventListener('click', () => {
            const isActive = item.classList.contains('active');
            
            // Zamknij wszystkie akordeony (opcjonalne, dla zachowania czystości interfejsu)
            faqItems.forEach(otherItem => {
                otherItem.classList.remove('active');
                otherItem.querySelector('.rk-faq-trigger').setAttribute('aria-expanded', 'false');
                otherItem.querySelector('.rk-faq-content').style.maxHeight = null;
            });

            // Jeśli kliknięty element nie był aktywny, otwórz go
            if (!isActive) {
                item.classList.add('active');
                trigger.setAttribute('aria-expanded', 'true');
                content.style.maxHeight = content.scrollHeight + "px";
            }
        });
    });
});
</script>



<style>
:root {
    --rk-dl-dark: #0f172a;
    --rk-dl-blue: #0284c7;
    --rk-dl-blue-light: #e0f2fe;
    --rk-dl-accent: #38bdf8;
    --rk-dl-gray: #475569;
    --rk-dl-border: #cbd5e1;
    --rk-dl-bg: #ffffff;
    --rk-shadow-dl: 0 10px 25px -5px rgba(2, 132, 199, 0.15);
}

.rk-dl-container {
    max-width: 950px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-dl-bg);
    border-radius: 20px;
    box-shadow: var(--rk-shadow-dl);
    border: 1px solid var(--rk-dl-blue);
    overflow: hidden;
}

/* Nagłówek */
.rk-dl-header {
    background: linear-gradient(135deg, var(--rk-dl-dark) 0%, #1e293b 100%);
    padding: 35px 50px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-dl-accent);
}

.rk-dl-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(56, 189, 248, 0.2);
    color: #7dd3fc;
    padding: 6px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
    border: 1px solid rgba(125, 211, 252, 0.3);
}

.rk-dl-header h2 {
    font-size: 26px;
    font-weight: 900;
    margin: 0 0 10px 0;
    line-height: 1.3;
}

.rk-dl-header p {
    color: #94a3b8;
    font-size: 15px;
    margin: 0;
    max-width: 700px;
    line-height: 1.6;
}

/* Sekcja Główna */
.rk-dl-content {
    display: grid;
    grid-template-columns: 1fr 350px;
    background: #f8fafc;
}

/* Lewa strona - Podgląd Infografiki */
.rk-dl-preview-box {
    padding: 40px;
    border-right: 1px solid var(--rk-dl-border);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.rk-preview-image-wrapper {
    width: 100%;
    max-width: 400px;
    background: var(--rk-dl-dark);
    border-radius: 12px;
    padding: 10px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    position: relative;
    cursor: pointer;
    border: 2px solid transparent;
    transition: border-color 0.2s;
}

.rk-preview-image-wrapper:hover {
    border-color: var(--rk-dl-accent);
}

.rk-preview-image-wrapper img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    display: block;
}

.rk-preview-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(15, 23, 42, 0.7);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.2s;
    color: #ffffff;
}

.rk-preview-image-wrapper:hover .rk-preview-overlay {
    opacity: 1;
}

.rk-preview-overlay svg {
    width: 48px;
    height: 48px;
    margin-bottom: 10px;
}

.rk-preview-overlay span {
    font-size: 15px;
    font-weight: 800;
}

/* Prawa strona - Przyciski Pobierania */
.rk-dl-action-box {
    padding: 40px;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.rk-dl-action-box h3 {
    margin: 0 0 20px 0;
    font-size: 18px;
    font-weight: 900;
    color: var(--rk-dl-dark);
}

.rk-btn-download {
    display: flex;
    align-items: center;
    gap: 15px;
    width: 100%;
    padding: 16px 20px;
    border-radius: 12px;
    text-decoration: none;
    margin-bottom: 15px;
    border: 2px solid transparent;
    transition: background 0.2s, border-color 0.2s, transform 0.1s;
}

.rk-btn-download:active { transform: scale(0.98); }

.rk-btn-pdf {
    background: var(--rk-dl-blue);
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(2, 132, 199, 0.3);
}

.rk-btn-pdf:hover {
    background: #0369a1;
}

.rk-btn-img {
    background: var(--rk-dl-blue-light);
    color: #0369a1;
    border-color: var(--rk-dl-blue);
}

.rk-btn-img:hover {
    background: #bae6fd;
}

.rk-btn-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.rk-btn-text {
    display: flex;
    flex-direction: column;
}

.rk-btn-title {
    font-size: 15px;
    font-weight: 800;
}

.rk-btn-sub {
    font-size: 12px;
    font-weight: 500;
    opacity: 0.9;
}

/* Nota prawna */
.rk-dl-copyright {
    margin-top: auto;
    padding-top: 25px;
    border-top: 1px solid var(--rk-dl-border);
    font-size: 11px;
    line-height: 1.5;
    color: #64748b;
}

.rk-dl-copyright strong {
    color: var(--rk-dl-dark);
}

/* Modal (Powiększenie zdjęcia) */
.rk-modal {
    display: none; /* Sterowane z JS */
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(15, 23, 42, 0.95);
    padding: 20px;
    box-sizing: border-box;
}

.rk-modal.active {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.rk-modal-content {
    max-width: 90%;
    max-height: 90vh;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.5);
    border: 2px solid var(--rk-dl-accent);
}

.rk-modal-close {
    position: absolute;
    top: 20px;
    right: 30px;
    color: #ffffff;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
    line-height: 1;
}

.rk-modal-close:hover {
    color: var(--rk-dl-accent);
}

@media (max-width: 768px) {
    .rk-dl-content { grid-template-columns: 1fr; }
    .rk-dl-header { padding: 30px 20px; }
    .rk-dl-header h2 { font-size: 22px; }
    .rk-dl-preview-box { padding: 30px 20px; border-right: none; border-bottom: 1px solid var(--rk-dl-border); }
    .rk-dl-action-box { padding: 30px 20px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#article-infografika",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/"
    },
    "headline": "Materiały do pobrania: Infografika i instrukcja napełniania krok po kroku",
    "description": "Zapisz bezpłatną infografikę PDF (Budowa bez ściemy) zawierającą 7 inżynierskich kroków napełniania instalacji podłogowej i parametry wody grzewczej.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Czym-napelnic-instalacje-ogrzewania-podlogowego.webp",
    "author": {
      "@type": "Person",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/",
      "sameAs": [
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://remont.biz.pl/",
        "https://sobir.pl/"
      ]
    },
    "publisher": {
      "@type": "Organization",
      "name": "Projekt-Ogrzewania.pl",
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg"
      }
    },
    "datePublished": "2026-06-14",
    "dateModified": "2026-06-14"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#dataset-infografika",
    "name": "Zestawienie mediów grzewczych i 7 kroków napełniania (Infografika PDF)",
    "description": "Zbiór wytycznych wizualnych dla instalatorów i inwestorów. Zawiera parametry dla 4 typów czynników grzewczych oraz 7-etapową instrukcję poprawnego napełniania układu.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "infografika ogrzewanie podłogowe",
      "instrukcja napełniania podłogówki pdf",
      "woda do instalacji co pdf",
      "7 kroków napełniania instalacji",
      "robert kucharski materiały instalacyjne"
    ],
    "measurementTechnique": "Agregacja danych normatywnych (VDI 2035) do postaci graficznej matrycy decyzyjnej z parametrami zładu, odpowietrzania i próby 6 bar.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Plik: Infografika-Czym-napelnic-instalacje-ogrzewania-podlogowego.pdf",
        "Zawartość 1: Analiza Woda Demi vs Woda Kranowa vs Glikole.",
        "Zawartość 2: Check-lista 7 kroków do próby szczelności."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/#webapp-infografika",
    "name": "Eksplorator Materiałów Technicznych (Infografika)",
    "description": "Interaktywna przeglądarka dokumentacji pozwalająca na bezpieczne pobranie pliku PDF i podgląd schematów napełniania w wysokiej rozdzielczości.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-dl-container">
    <div class="rk-dl-header">
        <div class="rk-dl-badge">
            <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" y1="15" x2="12" y2="3"></line></svg>
            Materiały do pobrania
        </div>
        <h2>Ściąga na budowę: 7 kroków napełniania instalacji</h2>
        <p>Pobierz darmową infografikę, wydrukuj lub zapisz na telefonie. Miej pod ręką wszystkie normy, wady mediów i procedurę napełniania, gdy hydraulik pojawi się na budowie.</p>
    </div>

    <div class="rk-dl-content">
        <div class="rk-dl-preview-box">
            <div class="rk-preview-image-wrapper" id="rkImgPreviewTrigger">
                <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Czym-napelnic-instalacje-ogrzewania-podlogowego.webp" alt="Miniatura Infografiki: Czym napełnić instalację ogrzewania podłogowego" onerror="this.src='https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg'">
                
                <div class="rk-preview-overlay">
                    <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="11" y1="8" x2="11" y2="14"></line><line x1="8" y1="11" x2="14" y2="11"></line></svg>
                    <span>Kliknij, aby powiększyć</span>
                </div>
            </div>
        </div>

        <div class="rk-dl-action-box">
            <h3>Wybierz format pliku:</h3>
            
            <a href="https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Czym-napelnic-instalacje-ogrzewania-podlogowego.pdf" target="_blank" rel="noopener noreferrer" class="rk-btn-download rk-btn-pdf">
                <svg class="rk-btn-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="12" y1="18" x2="12" y2="12"></line><polyline points="9 15 12 18 15 15"></polyline></svg>
                <div class="rk-btn-text">
                    <span class="rk-btn-title">Pobierz jako PDF</span>
                    <span class="rk-btn-sub">Wysoka jakość do druku (Wektor)</span>
                </div>
            </a>

            <button class="rk-btn-download rk-btn-img" id="rkBtnViewImg">
                <svg class="rk-btn-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><circle cx="8.5" cy="8.5" r="1.5"></circle><polyline points="21 15 16 10 5 21"></polyline></svg>
                <div class="rk-btn-text">
                    <span class="rk-btn-title">Wyświetl pełne zdjęcie</span>
                    <span class="rk-btn-sub">Szybki podgląd na ekranie</span>
                </div>
            </button>

            <div class="rk-dl-copyright">
                <strong>© 2026 Projekt-Ogrzewania.pl | Autor: Robert Kucharski.</strong><br>
                Udostępnianie materiału PDF dozwolone wyłącznie z zachowaniem logotypu portalu i bez modyfikacji pliku.
            </div>
        </div>
    </div>
</div>

<div class="rk-modal" id="rkImageModal">
    <button class="rk-modal-close" id="rkModalClose">&times;</button>
    <img decoding="async" class="rk-modal-content" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Czym-napelnic-instalacje-ogrzewania-podlogowego.webp" alt="Pełna Infografika: Napełnianie instalacji podłogowej" onerror="this.src='https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1.jpg'">
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const modal = document.getElementById('rkImageModal');
    const triggerBox = document.getElementById('rkImgPreviewTrigger');
    const triggerBtn = document.getElementById('rkBtnViewImg');
    const closeBtn = document.getElementById('rkModalClose');

    // Funkcja otwierająca modal
    const openModal = () => {
        modal.classList.add('active');
        document.body.style.overflow = 'hidden'; // Blokada przewijania strony
    };

    // Funkcja zamykająca modal
    const closeModal = () => {
        modal.classList.remove('active');
        document.body.style.overflow = ''; // Odblokowanie przewijania
    };

    // Nasłuchiwacze zdarzeń
    triggerBox.addEventListener('click', openModal);
    triggerBtn.addEventListener('click', openModal);
    closeBtn.addEventListener('click', closeModal);

    // Zamknięcie modala po kliknięciu w tło
    modal.addEventListener('click', function(e) {
        if (e.target === modal) {
            closeModal();
        }
    });

    // Zamknięcie na ESC
    document.addEventListener('keydown', function(e) {
        if (e.key === 'Escape' && modal.classList.contains('active')) {
            closeModal();
        }
    });
});
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/">Czym napełnić instalację ogrzewania podłogowego?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
